TIL that, while C lets you initialize struct fields by name (struct Foo var = { .bar = 1, .baz = 2 };), standard C++ doesn’t support that syntax, because it guarantees member variables are set up and torn down in declaration order in the class. At least C++20 wants to fix that.