The OpenNET Project / Index page

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



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

Исходное сообщение
"Релиз ядра Linux 5.11"
Отправлено Аноним, 18-Фев-21 14:09 
> Пошли отмазки в лучших традициях Великих Гуру. Правда опять мимо темы. Для
> Великих Гуру, еще раз - NULL указатель != физ. адрес 0.

Таки если я его явно задефайнил как таковой - он именно это. А то что он в общем случае не обязан быть таким я в курсе и без ваших соплей.

> Разименовывание null-pointer "undefined behaviour" по стандарту, без исключений даже
> для Великих.

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

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

В упомянутом случае это вообще совсем никак не привязано к компиляторе - тулчайн шпарит в "naked" режиме, как тупой кодогенератор. Задефайнено только то что задефайнил я. Так как задефайнил я. Девайн NULL тоже мой и указывает на 0.

Это не зависит от версии тулчайна. И от либ не зависит. И от хидеров. Это "freestanding", некий субсет оного. И все с нуля определено. Вот так оно таки "implementation defined" и этот implementation - таки лично мой и по другому его собрать тупо не получится.

>> Когда я это сам задефайнил - это очень даже defined behavior :)
> Сколько пафосы и понтов, при этом "неламо" опять не различает null pointer-ы,
>  и pointer-ы на _адрес_ 0x0,

Таки для тупарей, еще раз.
1) Понятие null pointer в этом случае явно задефайнено лично мное, как указатель на адрес 0.
2) Это сделано специально и имеет физический смысл. При попытке дереференса такой штуки железо немедленно отсыпет Hard Fault, как оказалось. Фирма ARM прям в железе проверку вкатила на это дело. И такой дизайн железа подразумевает что null должен указывать на 0. Иначе фича железа в пролете.

> поняло сути проблемы (хинт: компилятор для сборки тоже сам "задефайнил",

Почти. Он в режиме тупого кодогенератора - не предоставляет вообще ничего, даже стартап лично мой. Поэтому оперирует только тем что я ему подсуну.

> Все равно плохие - UB от этого не становится не-UB)

Таки в этом случае это well defined behavior. Оно при сборке явно дефайнит себе понятие NULL до того как вообще сможет им воспользоваться. И при компиле хоть там чем, если это в принципе способно собрать код, оно кроме всего прочего и это задефайнит, куда оно денется.

Про confirmance уже можно поспорить. Но во первых не с растищками от данона, у которых вообще этого нет нигде и никак :P. Во вторых conformance мелкого бутлоадера заведомо только относительно своей железки. Он на гвозди к ее специфике прибит, от и до.

>> Я на вас пистолет не наставлял, моим кодом пользоваться не требовал.
> Какой занимательный спрыг с темы, с кучей пафоса и понтов ... никто
> "вашими программами" тут пользоваться и не собирался

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

 

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



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

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