gcc 3 manual 对于 -fstrict-aliasing参数的说明是:Allowsthe compiler to assume the strictest aliasing rules applicable tothe language being compiled. For C (and C++),this activates optimizations based on the type ofexpressions. In particular, an object of one typeis assumed never to reside at the same address as an object of adifferent type, unless the types are almost thesame. For example, an "unsigned int" can alias an"int", but not a "void*" or a "double". Acharacter type may alias any other type.