thatâs true. there are constructs which are legal in c++03 but not c++11, and so on
however, what you wonât find is some cutover point where with release 3.5 of gcc or 2008 of MSVC you can no longer use X but have access to Y. thereâs no âx.0â releases in the sense used by semantic versioning of libraries, where an api is removed or replaced - there are standard versions, which implementations support to greater or lesser degrees (sometimes dropping support for old ones, but not as an immediate transition!)
rustc is an implementation which also serves as its own specification. unless serving quite a different set of users, it wonât be possible for it to go 1.x->2.0 in the traditional semver sense - not without experiencing exactly the same adoption problems as, say, python 3.
once an implementation is used in industry then a long term requirement for that implementation is support of older unchanged code. i say requirement rather than e.g. good idea because if this is not done, people will simply never upgrade.