Size: a a a

2020 March 11

p

polunin.ai in rust_offtopic
Arsenii Lyashenko
Опять эльфийский
Карантин на три месяца из-за одного случая коронавируса
источник

Т8

Т-34 85 in rust_offtopic
Gymmasssorla
Да, может у разработчиков стандарта спросишь понимают ли они о том, о чём пишут?
Что пишут?
источник

Т8

Т-34 85 in rust_offtopic
Emmanuel Goldstein
Компиляторы херово стандарту, поэтому хардкодят NULL в 0x0. В реальности значение NULL должно быть невозможно получить.
Чё?
источник

EG

Emmanuel Goldstein in rust_offtopic
NULL == 0x0 это implementation detail, причём с нарушением стандарта.
источник

EG

Emmanuel Goldstein in rust_offtopic
По традиции это так на большинстве систем, но стандарт этого не требует.
источник

Т8

Т-34 85 in rust_offtopic
Emmanuel Goldstein
Я его успешно разыменовал.
И получил UB, поздравляю
источник

EG

Emmanuel Goldstein in rust_offtopic
Т-34 85
И получил UB, поздравляю
Пруф?
источник

Т8

Т-34 85 in rust_offtopic
Emmanuel Goldstein
И получил значение.
ub ты получил
источник

EG

Emmanuel Goldstein in rust_offtopic
Я получил корректный указатель от ядра в результате системного вызова с корректными параметрами.
источник

EG

Emmanuel Goldstein in rust_offtopic
Если ты считаешь, что разыменование корректного указателя, полученного из системного вызова, завершившегося без задания errno, это UB — покажи пруф.
источник

Т8

Т-34 85 in rust_offtopic
Alex Zhukovsky
нельзя запихнуть значение другого типа, это не жс
В достаточно выразительных языках ты можешь скопировать память побитово. Но вообще, чем дальше от истоков, тем более дальше от исходного смысла
источник

Т8

Т-34 85 in rust_offtopic
Alex Zhukovsky
ок давай перефразируем: используя только i32 ты никогда не получишь nullref exception
Разумеется, ты же не разыменуешь его содержиемое
источник

Т8

Т-34 85 in rust_offtopic
Emmanuel Goldstein
По определению: null это указатель не равный ни одному валидному указателю
Плохо читал определение. Это макрос для 0
источник

EG

Emmanuel Goldstein in rust_offtopic
Документация по вызову mmap() в явном виде разрешает аллоцировать память на нулевом адресе:
> If the MAP_FIXED is specified, and addr is 0 (NULL), then the mapped address will be 0 (NULL).
источник

EG

Emmanuel Goldstein in rust_offtopic
Т-34 85
Плохо читал определение. Это макрос для 0
Ты заебал постить без пруфов.
источник

EG

Emmanuel Goldstein in rust_offtopic
Цитата из стандарта или не было.
источник

Т8

Т-34 85 in rust_offtopic
Emmanuel Goldstein
Компиляторы си постоянно не соответсвуют стандарту, это нормально
Ты-то знаешь стандарт, ага
источник

Т8

Т-34 85 in rust_offtopic
Emmanuel Goldstein
Я скинул гист.
Потом гляну
источник

EG

Emmanuel Goldstein in rust_offtopic
Да, у меня есть глаза и я умею читать.
Ссылку на стандарт сюда уже скидывали, продублирую для твоего удобства:
http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1570.pdf
источник

EG

Emmanuel Goldstein in rust_offtopic
Приводи к своим утверждениям аргументы.
источник