> On Sun, Jun 29, 2008 at 08:19:05PM +0100, Sjoerd Simons wrote: > > *((uint64_t *) h) = (uint64_t) 0; > > *((uint32_t *) h) = (uint32_t) 0xffffffff; > > Violation of aliasing rules. h points either to a uint32_t oder uint64_t > not both. > > > With -fschedule-insns -fstrict-aliasing: > > $ /usr/bin/gcc-4.3 -Wall /tmp/test.c -o /tmp/test -fschedule-insns > > -fstrict-aliasing > > $ /tmp/test > > 0 > > -fstrict-aliasing enables standard conforming aliasing handling. > > > This error causes the gstreamer testsuite to break on powerpc. > > You break the rules, gcc breaks your output. No bug.
But shouldn't gcc warn about this then? It already warns about breaking aliasing rules in many other situations.
signature.asc
Description: Dies ist ein digital signierter Nachrichtenteil