https://gcc.gnu.org/bugzilla/show_bug.cgi?id=36750
Daniel Sommermann <dcsommer at fb dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |dcsommer at fb dot com --- Comment #11 from Daniel Sommermann <dcsommer at fb dot com> --- Created attachment 33627 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=33627&action=edit Test case showing overly strict warning This still produces false positives in C++11. I attached a test case with several false positives. The compilation should be clean as there are no uninitialized members. Repros with g++ 4.9.1 Compile with "g++ test.cpp -std=c++11 -Wmissing-field-initializers`" Produces: dcsommer@dcsommer-ThinkPad-T440s:~/src/proxygen-oss-test/proxygen$ g++ test.cpp -Wmissing-field-initializers -std=c++11 test.cpp: In function ‘int main()’: test.cpp:7:10: warning: missing initializer for member ‘Foo::bar’ [-Wmissing-field-initializers] Foo f1{}; ^ test.cpp:7:10: warning: missing initializer for member ‘Foo::baz’ [-Wmissing-field-initializers] test.cpp:8:11: warning: missing initializer for member ‘Foo::baz’ [-Wmissing-field-initializers] Foo f2{0}; ^ test.cpp:9:14: warning: missing initializer for member ‘Foo::baz’ [-Wmissing-field-initializers] Foo f3 = {0}; ^ test.cpp:10:15: warning: missing initializer for member ‘Foo::baz’ [-Wmissing-field-initializers] Foo f4 = {0,}; ^