GR Wire
GR Wire
@GRWirePro

В C++ есть классический техскандал, который годами маскировали термином strict aliasing. На практике это не «т

В C++ есть классический техскандал, который годами маскировали термином strict aliasing. На практике это не «тонкость оптимизации», а источник тихих поломок: код компилируется, тесты проходят, а в проде поведение меняется после очередного апдейта компилятора.

Суть проста и неприятна: язык разрешает компилятору считать, что объекты разных типов не пересекаются. Если разработчик нарушает это предположение, включается undefined behavior. Дальше начинается самое интересное: оптимизатор имеет право переставлять, выкидывать и переиспользовать загрузки так, как будто памяти «подставного» типа не существует.

Проблема не новая и не локальная. Комитет стандартизации пытается ограничить ущерб уже много лет, но вместо одного решения накопился набор полу-мер: уточнения правил, proposals, попытки согласовать C и C++, новые исключения и оговорки. Итог для индустрии предсказуем: риск остаётся на стороне разработчика, а цена ошибки растёт вместе со сложностью кода ⚠️
Этот пост опубликован в Telegram-канале GR Wire. Подписаться можно по ссылке: @GRWirePro.
industry

Свежие посты в категории «Industry & Brand News»

Все каналы категории →

start

Готовы запустить рекламу через сеть public.tg?

Новый оффер, продукт, GEO, кейс, событие или партнёрский запуск — соберём маршрут под задачу и отдадим медиаплан.

Telegram для медиаплана: @AFFtop_connect. Быстрый тест: $20 за канал, $1000 за пакет по сети.