🍊 C++26 приручил бесконечный цикл: почему `while (true);` больше не ведёт к неопределённому поведению
Крошечная конструкция `while (true);` выглядит предельно однозначно: программа должна войти в цикл и остаться там навсегда. Однако до C++26 стандарт языка допускал совсем другой исход. Компилятор мог удалить цикл, решить, что выполнение продолжится дальше, и породить программу, поведение которой совершенно не похоже на написанный код. Это не отвлечённая придирка составителей стандарта. Такие циклы встречаются в микроконтроллерах, ядрах операционных систем, загрузчиках и обработчиках неисправимых ошибок...