http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47796
qihua.dai at intel dot com changed: What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |UNCONFIRMED Resolution|INVALID | --- Comment #5 from qihua.dai at intel dot com 2011-02-21 07:02:55 UTC --- (In reply to comment #4) > (In reply to comment #3) > > If it's not a bug, why is there the different behavior for -O0 and -O2 > Because strict aliasing is not enabled at -O0, only at -O2 and above (-Os > included). Why no warning message for this volation using gcc 4.5.1 or gcc 4.4.0? And why is there the different behavior for gcc 4.4.0 -O2 and gcc 4.5.1 -O2? Why does gcc 4.4.0 -O2 have not this problem?