Есть ли какой-нибудь инструмент для C ++, который будет проверять общее неопределенное поведение?

Часто кто-то делает предположения о конкретной платформе, на которой он кодирует, например, что целые числа со знаком используют хранилище дополнений до двух, или что (0xFFFFFFFF == -1) , или что-то в этом роде.

Существует ли инструмент, который может проверять базу кода на наиболее распространенные нарушения такого рода вещи (для тех из нас, кто хочет переносимый код, но не имеет странных машин, не дополняющих два)?

(Мои примеры выше относятся к целым числам со знаком, но меня интересуют другие ошибки (например, как выравнивание или порядок байтов))

10
задан Billy ONeal 29 November 2010 в 16:19
поделиться