Из того, что я могу сказать, стандарт только накладывает ограничения на
минимальная ширина типов, и не обязательно их ранг. Так на
архитектура, где int и short имеют ширину 16 бит,
Возможно, что int_least16_t может быть псевдонимом для int, несмотря на
факт, что шорт имеет меньшее звание?
Вы процитировали полный текст соответствующего стандарта. Да, если short
имеет тот же размер, что и int
, и не существует более узкого целочисленного типа по крайней мере с 16 битами, то int_least16_t
может быть int
.
Действительно, если реализация поддерживает только 64-битные целые числа, так что long long int
, long int
, int
и short int
были бы все 64-битными, тогда int_least16_t
может быть long long int
. Или, если signed char
имеет ширину 16 бит в той или иной реализации, тогда int_least16_t
может быть signed char
. В некоторых случаях это может быть расширенный целочисленный тип со знаком вместо любого из вышеперечисленных.