------- Comment #1 from schwab at suse dot de 2009-02-04 09:33 ------- > char* pw = (char*) bcAtomCompareExchange((void**) &px, py, pz);
This is violating the C aliasing rules. Declare px as void* to fix that. *** This bug has been marked as a duplicate of 21920 *** -- schwab at suse dot de changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution| |DUPLICATE Summary|inline code optimized wrong |inline code optimized wrong |with -O3 |with -O3 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39093