причуды компиляторов. |
Здравствуйте, гость ( Вход | Регистрация )
причуды компиляторов. |
molchanoviv |
20.2.2009, 11:15
Сообщение
#1
|
Старейший участник Группа: Сомодератор Сообщений: 597 Регистрация: 18.7.2008 Из: Саратов Пользователь №: 238 Спасибо сказали: 41 раз(а) Репутация: 5 |
Сегодня на работе во время ожидания окончания очередной антивирусной проверки на просторах интернета наткнулся на такую штуку
При компиляции этого кода gcc выдает undefined behaviour и в кач-ве результата i=7, а интел хавает все без варнингов и результат i=6 Выводы делаем сами и желательно отписываем сюда. |
|
|
void* |
26.2.2009, 21:06
Сообщение
#2
|
Программист-самоучка Группа: Участник Сообщений: 429 Регистрация: 4.6.2008 Пользователь №: 193 Спасибо сказали: 28 раз(а) Репутация: 3 |
В стандарте динамических массивов нет - это расширение gcc. Ясно, спасибо буду теперь знать. Просто очень давно сталкивался с этим, вот и подзабыл детали этой проблемы. П.С. Кстати а может кто-нибудь привести реальные примеры непридерживания стандартов компилятором от Borland (интересно просто)? |
|
|
Tonal |
27.2.2009, 8:45
Сообщение
#3
|
Активный участник Группа: Участник Сообщений: 452 Регистрация: 6.12.2007 Из: Новосибирск Пользователь №: 34 Спасибо сказали: 69 раз(а) Репутация: 17 |
П.С. Кстати а может кто-нибудь привести реальные примеры непридерживания стандартов компилятором от Borland (интересно просто)? У меня была большая подборка багов для багланда. Основная масса в поддержке шаблонов и исключений. Не зря половина boost-а багландом не компилится. Насколько она актуальна сейчас - не в курсе - слез с него уже довольно давно. Мой любимый:
На bcc 5.6.4 (C++Builder 6 sp4) и раньше вызывается деструктор несозданного объекта... Причём эта кочующая бага. Я на неё нарывался со статическими объектами и с тернарным оператором. Как оно сейчас - просто не в курсе. |
|
|
Текстовая версия | Сейчас: 15.1.2025, 14:18 |