Re[3]: каждый раз, когда вы пишете i++ + ++i...
От: watchmaker  
Дата: 18.06.14 21:06
Оценка:
Здравствуйте, netch80, Вы писали:

N>Непонятно, почему это UB вообще ломает всё, а не только одно вычисленное выражение.

Так это же суть UB. Или ты не видел тот пример с форматированием диска и clang?

N>Вот за такие шутки авторов gcc бить по наглым рыжим мордам.

Какой-то невероятно нелогичный выбор кого бить
Это же комитет сделал в этом месте UB.
А вот gcc наоборот сделал implementation defined вместо undefined, предоставив тот же -fno-strict-overflow. Ну или упомянутый -fwrapv с ещё более строгим поведением.

N>Ну или требовать -fwrapv в обязательные опции по умолчанию.

Ну это же легко исправляется. Собственно, всё равно же в makefile всё вот это нужно писать.
Уж лучше требуй чтобы -Wall включили, или чтобы -std= со стандартным языком включили по умолчанию (а не с той дикой смесью из нескольких стандартов и расширений, что активна по-умолчанию сейчас) — вот где боль.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.