http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52127
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution| |INVALID --- Comment #2 from Andrew Pinski <pinskia at gcc dot gnu.org> 2012-02-05 23:26:41 UTC --- > # 134 "/usr/include/asm/sigcontext.h" 3 4 > ... > union { > __u32 reserved3[12]; > struct _fpx_sw_bytes sw_reserved; > > }; This is expected as sigcontext.h is considered a system header. As mentioned if you want warnings/pedantic errors from system headers then use -Wsystem-headers . The main issue is that most system headers use GNU C extensions as they know they are being compiled with GCC.