The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Red Hat представил Nova, драйвер для GPU NVIDIA, написанный ..."
Отправлено C00l_ni66a, 22-Мрт-24 15:13 
>Я тебе даже номера искомых пунктов из "стандарта" си дал.

...которые ничего не пруфают. Хорошо, давай разжую для самых маленьких. Тезис "Спецификация бесполезна если там куча оговорок", в данном контексте, по сути состоит из следующих двух тезисов:
1. В спецификации КУЧА оговорок -> требуется пруф, что их действительно КУЧА, а не полтора частных случая. Тебе также следует привести конкретное определение, что вообще считается КУЧЕЙ, а что нет. В противном случае, я вынужден констатировать, что куча тут только у тебя в штанах.
2. Если в спецификации есть <некое количество> оговорок, то она бесполезна -> требуется пруф, что заданное количество оговорок коррелирует с полезностью спецификации.

>Ну-ну. А на выходе всё равно получается хз как))

А ещё можно научиться читать. Советую лично тебе воспользоваться этим советом. По первой ссылке:

>>Status:     RESOLVED INVALID

И предъява там вообще не к гцц, а к шлангу. К тому самому шлангу, который от ллвм-проджект, да-да. То есть, халатность по отношению к разработке LLVM вполне можно выставлять как упущение ржавчинолюбов, которые пользуются, как ни странно, поделием основанным именно на б-гомерзком фронте плюсового LLVM API. Ну и, кстати:

>>Our implementation-defined behavior is defined by our implementation

То есть, получается, что не "хз как", а вполне себе implementation-defined. А следующие две ссылки на стак вообще ничего нового не демонстрируют и, как следствие, не пруфают. Ты солгал, получается.

>А потом у тебя "переносимый код" спокойно себе компилируется, но результат получаешь другой))

Используешь IDB/UB = ССЗБ, ответственность за действия целиком на тебе. А если всё-же следовать стандарту, то код действительно получается переносимым и компилируется в предсказуемый вид на любой архитектуре, которой больше чем одна (если кто-то вдруг не знал). Что там кстати с поддержкой архитектур в rustc? А, точно, в tier 1 по прежнему полторы калеки, как жаль...

>Ох сколько уязвимойстей было из-за того что в сришечке переполнение signed это UB)))

Спасибо за демонстрацию столь феноменальных навыков построения причинно-следственных связей, но в реальности причиной уязвимостей является некомпетентность/невнимательность программиста, а не дизайн инструмента. Или ты уже бежишь призывать отказываться от экскаваторов, потому что на нём можно случайно переехать человека? Впрочем, как *показывает практика*... github[dot]com/Speykious/cve-rs

>И компилятор, по хорошему, может просто заменить UB на noop.

Может, но не должен. На то оно и UNDEFINED.

>Но разрабы компиляторов конечно так не сделали, потому что

в отличии от опеннетных экспертов понимают, зачем вообще оно существует. Это тебе домашнее задание, узнать предназначение UB. Предвосхищая доводы в стиле "чтобы сделать плохо миру, ведь сишники ненавидят человечество": нет, это ложный ответ.

>На самом деле, если знать историю си и то, как принимался этот "стандарт", то сразу понятно почему так сделали.

Тебе - нет, не понятно. Иначе бы занялся делом, а не позорился в комментариях.

>О, так оказывается в Стандарте есть обязательное к исполнению и не обязательные))

Фантазировать прекрати или хотя бы читать научись.

>Причем сам стандарт это не определяет, это решают имплементирующие его.

Имплементирующие стандарт решают что имплементировать, а что нет. Для тебя это неожиданность?

>Да, штука неприятная, не спорю.

Ахах, понимаю, UB в C - это "ужас, срочно переписать весь код на другом языке!", а ФУНДАМЕНТАЛЬНАЯ недоработка в дизайне - это "ну, штука неприятная, гхм пук". Сектанты такие сектанты.
Не волнуйся, в расте ещё множество подобных весёлых "неприятных штук", например, протекющий унсейф контекст в сейф через лямбды: play[dot]rust-lang[dot]org/?version=stable&mode=debug&edition=2021&gist=9d167c7dd188c2995d550474fa28107e

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, [email protected] (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
  Введите код, изображенный на картинке: КОД
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру