TGViewer
DeVops Библиотека DeVops Библиотека @devops_teleg · 9.45K subscribers
Post #255 1.71K
👣 Твой код на Rust компилируется, проходит тесты и является UB. Ты просто об этом не знаешь

Если взять случайный крейт с crates.io, поставить на него Miri и подождать минут пять, шанс увидеть красное сообщение про undefined behavior где-то в зависимостях стремится к единице. Чаще всего виноват не автор хитрого unsafe-блока ради скорости, а вполне обычная библиотека, которой пять лет, у которой звёзд на гитхабе больше, чем у твоего пет-проекта строчек кода, и которая всё это время спокойно лежит в продакшене.

Самое неприятное в этой истории то, что компилятор ничего не скажет. Тесты пройдут. Бенчмарки покажут красивые наносекунды. А потом LLVM 19 обновится до LLVM 20, поменяет один проход оптимизации, и твой сервис начнёт ронять прод по понедельникам. Чтобы понять, почему так происходит, придётся залезть в три темы, которые в обычной жизни Rust-разработчика не встречаются: pointer provenance, Stacked Borrows и пришедшую им на смену Tree Borrows.

https://uproger.com/tvoj-kod-na-rust-kompiliruetsya-prohodit-testy-i-yavlyaetsya-ub-ty-prosto-ob-etom-ne-znaesh/
  • ❤ 3
  • 👍 2
  • 🔥 2
More from @devops_teleg
  1. Sep 23, 202620 примеров кода на Rust: чистый и идиоматичный код от функций до traits и многопоточности…
  2. Sep 13, 2026🔥 askWAM - инструмент для тихого получения Microsoft Entra access tokens через Windows We…
  3. Sep 13, 2026🔥 Хочешь быстрее расти в IT? Хватит учиться в одиночку Окружение решает больше, чем кажет…
  4. Sep 9, 2026📌 GPT-6 Astra прошла Portal за сутки Твиттерский пользователь cozyblaze запустил GPT-6 As…
  5. Sep 2, 2026Записал 1 ГБ, а SSD принял 10. Что такое write amplification В LSM-tree запись не ложится…
  6. Aug 24, 2026Физически корректный ray tracer всего в 99 строках C++ smallpt от Kevin Beason - один из с…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →