может выяснить, что он может реализовать это поведение с помощью одной команды сдвига, но я не понимаю, как это на самом деле улучшение по сравнению с

ользователь Tonyуказывает на то  в пункте 1.3.12 стандарта C ++ есть [Примечание]допустимое неопределенное поведение варьируется от полного игнорирования ситуации с непредсказуемыми результатами до поведения во время перевода или выполнения программы документированным образом, характерным для среды ...

Разве это не противоречит определению UB о том, что

... этот международный стандарт не предъявляет никаких требований? Я имею в виду, что они говорят «нет требований», а затем говорят «допустимый UB» - прямо в том же пункте.Как следует интерпретировать это примечание? Это действительно ограничивает UB в любом случае?

Из §6.5.1 из

Ответы на вопрос(3)

Ваш ответ на вопрос