But also you’re wrong about C/C++, new versions of those compilers often uncover dormant undefined behavior when the compiler slightly changes behavior in certain areas.
But also you’re wrong about C/C++, new versions of those compilers often uncover dormant undefined behavior when the compiler slightly changes behavior in certain areas.
If your program does not compile anymore because it was relying on undefined behaviour, it was wrong from the beginning and deserved it.
It is completely different of old sane codebase not compiling anymore due to syntactic sugar change in the language.
That is a stronger guarantee being made by Rust than C or C++ have made.
That is not very common with Rust.
If you just download some project off of Github (or using some dependency) from 2015, it is very very likely to "just work" even with a new compiler, due to how editions work.
A more likely way to encounter issues is by pasting some code from Stackoverflow into a Rust project that is using a different edition. Yes, that can happen, but it's not anywhere close to as big of a problem.
I never say it is. You guys are quite on defensive stance :)
By and large, this has not happened to rust.
This:
> If your program does not compile anymore because it was relying on undefined behaviour, it was wrong from the beginning and deserved it.
Has sort-of happened in that soundness fixes are allowed to break BC.