Как обсуждалось в этом вопросе, С++ 11 оптимизирует бесконечные циклы.
Однако во встроенных устройствах, которые имеют одну цель, бесконечные циклы имеют смысл и на самом деле довольно часто используются. Даже пустой пуст while(1);
полезен для reset с поддержкой сторожевого таймера. Завершающие, но пустые петли также могут быть полезны во встроенной разработке.
Есть ли элегантный способ конкретно сказать компилятору не удалять пустые или бесконечные циклы, вообще не отключая оптимизацию?