[devel] slang

Dmitry V. Levin ldv на altlinux.org
Пн Апр 8 21:58:15 MSK 2019


On Mon, Apr 08, 2019 at 10:39:20PM +0400, Sergey Y. Afonin wrote:
> On Monday 08 April 2019, Sergey Y. Afonin wrote:
> 
> > > В slang'е был и остаётся UB, т.е. он полагался на undefined behaviour.
> > > По хорошему, slang не должен был собираться раньше, и мне очень жаль,
> > > что slang в таком виде вообще кем-то используется.
> > 
> > То есть, аргумент majioa@, что в новом Руби починили загрузку so - это
> > плохой аргумент? Или он не прав в том, что починили?
>  
> И да, я не отрицаю, что UB в Slang - это не хоршо.

Вы не поняли.  UB - это не просто нехорошо, UB - это смертельно.

Компилятор вправе определить результат UB так, как ему будет удобно,
и применить к результату оптимизацию, которая превратит ваш исходный код
в бинарный мусор.

Почитайте на досуге https://bugzilla.altlinux.org/36038

> Но я не вижу различий
> в конечной аргументации вида "после обновления A сломалось B, которое раньше
> работало -> обновление A - это плохо".

Утверждение "UB работало" звучит довольно странно.

Есть разница между "должно работать, но не работает" и
"не должно было работать, но повезло и работало".

Результат применения следующей версии компилятора к UB - это примерно
то же самое, что и получение следующего псевдослучайного числа.
Не стоит полагаться на то, что источник псевдослучайных чисел
будет всегда выдавать вам подходящие числа.


-- 
ldv
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : signature.asc
Тип     : application/pgp-signature
Размер  : 801 байтов
Описание: отсутствует
Url     : <http://lists.altlinux.org/pipermail/devel/attachments/20190408/bbac5d2b/attachment.bin>


Подробная информация о списке рассылки Devel