LINUX.ORG.RU
ФорумTalks

Откуда это «user don't care»?


0

4

Что то в последние годы все чаще стало это проскакивать в качестве аргументации. адоб не прочитал доки и использовал memcpy неправильно - выбегает Линус и говорит «users don't care», и требует вернуть все как было, nvidia использовала какой-то deprecated интерфейс, так что на новых ядрах не заводится, опять куча людей орут «users don't care». Покажите мне этого юзера, не входящего в множество быдла, который бы перекладывал с больной головы на здоровую?

★★★★★
Ответ на: комментарий от cvs-255

Интерфейсы библиотеки не должны изменять результат своей работы, только внутреннюю логику. Если раньше метод plus(1,1) выдавал 3, а потом это обнаружили, то нужно сделать plusNew(1,1), который выдает 2, а первый объявить устаревшим. Но менять результат первого метода — нельзя.

vurdalak ★★★★★
()
Ответ на: комментарий от vurdalak

Если раньше метод plus(1,1) выдавал 3

раньше выдавал UB. Теперь тоже выдает UB, как и заявлено в спецификации.

cvs-255 ★★★★★
() автор топика
Ответ на: комментарий от vurdalak

Если раньше метод plus(1,1) выдавал 3, а потом это обнаружили, то нужно сделать plusNew(1,1), который выдает 2, а первый объявить устаревшим. Но менять результат первого метода — нельзя.

И получим виндообразное API - нагромождение костылей. Линус прав.

Suigintou ★★★★★
()
Ответ на: комментарий от Suigintou

Линус прав.

Точнее Дреппер.

cvs-255 ★★★★★
() автор топика
Ответ на: комментарий от cvs-255

Я описывал ситуацию в вакууме. С работой флешплеера не сталкивался и подробностей не знаю. Если в обоих случаях UB, то да, можно ломать-убивать и использовать антивирус Бабушкина на гусях.

vurdalak ★★★★★
()
Ответ на: комментарий от vurdalak

Если в обоих случаях UB

Да, и до и после изменения в стандарте языка C для memcpy было написано UB при перекрывающихся регионах.

cvs-255 ★★★★★
() автор топика
Ответ на: комментарий от Suigintou

А иначе получаем, что сначала все пишут хаки на баги, а потом эти хаки с треском взрываются. И все в мыле, но поделать никто ничего не может :}

Deleted
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.