shadowm@nanacore ~ % cat test.cpp #include struct Foo { int a, b, c; }; int main(int, char**) { Foo f = { .a = 42}; std::cerr << f.a << ' ' << f.b << '\n'; return 0; } shadowm@nanacore ~ % g++-6 test.cpp -o test -std=c++98 && echo OK OK shadowm@nanacore ~ % g++-5 test.cpp -o test -std=c++98 && echo OK OK shadowm@nanacore ~ % g++-4.4 test.cpp -o test -std=c++98 test.cpp: In function β€˜int main(int, char**)’: test.cpp:10: error: expected primary-expression before β€˜.’ token