#undefined_behaviour — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #undefined_behaviour, aggregated by home.social.
-
C++29 — начало. Встреча ISO C++ в Брно
Привет! На связи Антон Полухин из Техплатформы Городских сервисов Яндекса. Недавно в Брно состоялась встреча международного комитета по стандартизации языка программирования C++, в которой я принимал активное участие. В этот раз началась работа над C++29 и как раз о новинках и хочется рассказать.
https://habr.com/ru/companies/yandex/articles/1067348/
#undefined_behavior #undefined_behaviour #tagged_pointers #format #fmt #standard #standard_library #thread #threads #c++29
-
Алиасинг памяти в C++: прошлое, настоящее, будущее
Привет, Хабр! Меня зовут Владислав, я разрабатываю компиляторы в YADRO. В этой статье я расскажу вам про алиасинг памяти в C++: как он развивался, к чему пришел сейчас и что комитет по стандартизации языка думает делать с алиасингом в будущем. По пути я немного затрону алиасинг в других языках, рассмотрю связанные случаи undefined behavior, а также пропозалы C++, которые, как ожидалось, проблемы с алиасингом решат.
https://habr.com/ru/companies/yadro/articles/1045947/
#Алиасинг #Компиляторы #C++ #C #Производительность #Undefined_behaviour
-
Разыменовываем NULL на RISC-V ядре scr1
Во время работы в ASIC дизайн центре я потратил немало времени на отладку ошибок и падений ядра, просматривая временные диаграммы на шинах AXI от процессора к памяти. Иногда оказывалось, что адрес чтения из памяти оказывался 0x00000000 - классический случай разыменования нулевого указателя в C. На системах с ОС это приводит к известному всем C программистам segfault-у. И в bare metal системах разыменование NULL может приводить к интересным ситуациям. В этой статье рассмотрим, что происходит при разыменовании NULL , используя для пример open source RISC-V ядро scr1 и open source инструмент симуляции RTL Verilator.
https://habr.com/ru/articles/851188/
#microcontrollers #undefined_behaviour #verilog #baremetal #riscv