If you compile the example from the GCC manual entry for "-Wmissing-braces" as C++, you aren't getting any warnings about this. If you compile it a C code everything warns fine.
I tried it with MinGW32 GCC 3.3.3, 3.4.2. I do get the warnings with a linux GCC 3.2: test.cpp:5: warning: aggregate has a partly bracketed initializer test.cpp:5: warning: aggregate has a partly bracketed initializer Specs of the linux GCC: Reading specs from /usr/lib/gcc-lib/i386-redhat-linux/3.2/specs Configured with: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --enable-shared --enable-threads=posix --disable-checking --host=i386-redhat-linux --with-system-zlib --enable-__cxa_atexit Thread model: posix gcc version 3.2 20020903 (Red Hat Linux 8.0 3.2-7) The MinGW ones are the binaries distributed on www.mingw.net -- Summary: -Wmissing-braces doesn't warn anymore Product: gcc Version: 3.4.2 Status: UNCONFIRMED Severity: normal Priority: P2 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: oliverst at online dot de CC: gcc-bugs at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19755