Hacker News new | ask | show | jobs
by yeputons 1368 days ago
No doubt. For starters, UBsan does not check for any invalid memory access.

In my C++ course, I require that the code runs correctly under 5 different compilers (GCC, LLVM Clang, Apple Clang, MSVC, Intel C++ Compiler Classic) on 3 OS (Ubuntu, Windows, macOS) in Release, Debug+Valgrind, Debug+Sanitizers modes, and students still get UB quite often.

Extra reading: http://evan.nemerson.com/2021/05/04/portability-is-reliabili... and discussion at https://news.ycombinator.com/item?id=27044419

1 comments

Why even write C++ at that point? Wouldn’t changing over to Rust save you at least a couple of those steps?
Tooling, libraries, OS vendor support, IDEs, work force availability,...

Many of us write C and C++, because we have to, not because we want to.

Rust will eventually reach there, however many of us want to deliver a product, not build an ecosystem from scratch.