PellesC строго соответствует стандарту C99?
В http://en.wikipedia.org/wiki/C99 я обнаружил, что Pelles C полностью поддерживает C99.
Однако у меня есть сомнения.
Как вы, наверное, знаете, проект GCC еще не достиг полной поддержки C99. Детали, в которых GCC соответствует или нет, очень хорошо документированы. Тем не менее, я не могу понять, что именно означает, что Pelles C полностью соответствует.
Соответствует ли оно каждому компьютеру и операционной системе?
Например, GCC (в опции командной строки -std=c99) соответствует стандарту ISO/IEC IEEE 60559 (стандарт с плавающей запятой), если оборудование полностью совместимо.
http://gcc.gnu.org/c99status.html
Pelles C связан с этим уровнем детализации? Я не уверен в утверждениях, что Pelles C соответствует C99.
1 ответ
Согласно этой статье и Википедии, Pelles C полностью поддерживает C99 (и C11). Поэтому, если у вас нет доказательств того, что это не так, я думаю, можно сказать, что это соответствует стандарту C99.
Что касается поддержки арифметики с плавающей точкой в соответствии с IEC 60559, обратите внимание, что в C99 (и в C11) она является необязательной:
C99 §6.10.8 Предопределенные имена макросов
Следующие имена макросов определяются условно реализацией:
__STDC_IEC_559__
Целочисленная константа 1, предназначенная для указания соответствия спецификациям в приложении F (арифметика с плавающей точкой в МЭК 60559).
__STDC_IEC_559_COMPLEX__
Целочисленная константа 1, предназначенная для указания соответствия спецификациям в информативном приложении G (IEC 60559 совместимая комплексная арифметика).