The language C++ and its library is is still developing. C/C++ supports two modern language standards (C++ 2017 and C++ 2020). The next standard version will be published soon.
In the code generation of the compiler we were able to maintain compatibility. A module produced with C++ 2017 can be linked with a module produced with C++ 2020.
Binary compatibility in the library was not possible. To support standard C++2020 we had to change the layout of a few classes. The next C++ standard may need further changes.
So we decided to deliver two versions of the modern C++ library. Version 1 corresponds to the library of the C++ 2017 standard. It is compatible with the library delivered with previous compiler versions.
Library version 2 contains some features from C++ 2020. This version was added in C/C++ V4.0B03.
Both library versions will continue to be maintained. Both library versions will be delivered in future versions of C/C++ and CRTE.
The versioning is restricted to modern C++. The libraries for language modes V2-COMPATIBLE and V3-COMPATIBLE are not affected.