Согласно этому ответу, в стандарте описаны следующие точки последовательности:
Между оценками указателя функции и фактическими аргументами в вызове функции и фактическим вызовом;
Между вычислениями первого и второго операндов операторов &&, || и ,;
Между оценками первого операнда условного оператора ?: и независимо от того, какой из второго и третьего операндов оценивается;
Конец полного декларатора;
Между вычислением полного выражения и следующим вычисляемым полным выражением. Ниже приведены полные выражения:
- an initializer;
- выражение в операторе выражения;
- управляющее выражение оператора выбора (if или switch);
- управляющее выражение оператора while или do;
- каждое из выражений оператора for;
- выражение в операторе возврата.
Непосредственно перед возвратом из библиотечной функции;
После действий, связанных с каждым спецификатором преобразования функции форматированного ввода/вывода;
Непосредственно перед и сразу после каждого вызова функции сравнения, а также между любым вызовом функции сравнения и любым перемещением объектов, переданных в качестве аргументов этого вызова.
В стандарте никогда явно не упоминается, что точка с запятой является точкой следования, но различные указанные точки следования как бы подразумевают, что точка с запятой действительно является точкой следования.
Итак, является ли точка с запятой в break;
или continue;
точкой последовательности?
';'
. Не точка последовательности. Конец дискуссии ;) - person grek40   schedule 01.06.2021