Re:What is your favorite C programming trick? (2009)
by vitus on Sunday November 22, 2020 @06:22PM
(#25182043)
C++20 designated initializers must be specified in definition order, whereas they don't in C99.
In your example,
Point point = {.z = 2.0, .x = 1.0};
produces a compilation error. This is annoying, but workable. And at least it's a compile-time error, rather than a bug that perniciously sneaks into production.
https://godbolt.org/z/GW59rM