Опция g ++ -Wall включает в себя -Wreorder. Что эта опция делает, описано ниже. Для меня не очевидно, почему кого-то это волнует (особенно достаточно, чтобы включить это по умолчанию в -Wall).
-Заказ (только C ++) Предупреждать, когда порядок инициализаторов членов, указанный в коде, не соответствовать порядку, в котором они должны быть выполнены. Например: структура А { int i; int j; A (): j (0), i (1) {} }; Компилятор переставит инициализаторы членов для i и j в соответствовать порядку декларации членов, выдавая предупреждение эффект. Это предупреждение включено -Wall.
-Werror=reorder