https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65815
--- Comment #3 from andras.aszodi at csf dot ac.at --- (In reply to Marek Polacek from comment #1) > Hm? This compiles just fine for me: > > #include <array> > const std::array<double, 3> q1 = {1.0, -1.0, 1.0}; > const std::array<double, 3> q2{{1.0, -1.0, 1.0}}; > > So can you provide a complete test case? Thanks a lot. Yes, this works for me, too: #include <array> #include <iostream> int main(int argc, char *argv[]) { std::array<double, 2> a = {1.0, 2.0}; std::cout << a[0] << ", " << a[1] << std::endl; } The problem manifests itself if the array is a member variable in a class and initialised "inline". Details in my new comment below.