Я думаю, что мы здесь потеряли семантику.Спецификация - это определение, прямо или бездействие.Большая часть неопределенного поведения была оставлена, чтобы позволить оптимизацию через поведение, определяемое реализацией, что приводит к неопределенному поведению, по крайней мере, если вы перемещаете свой код на другие компиляторы или оборудование, поэтому ваш код теряет универсальность, а также, вероятно, теряет ясность и простоту.Как также говорит Брайан Керниган, код, который пытается использовать потенциальные «побочные эффекты», часто не является хорошим стилем.Но было забавно видеть, что кто-то указывает Бьярну Страуструпу на «ошибки».:)