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