GCC 10 Has C++20 Concepts Support In Order
The original C++ Concepts technical specification has been supported by the GNU Compiler Collection since GCC 6, but for GCC 10 the latest C++20 enablement is supporting that refined version of this feature.
Concepts is one of the big features of the forthcoming C++20 that extends the language's templates functionality to add type-checking to templates and other compile-time validation. The existing concepts support in GCC was updated to reflect differences between the years old technical specification and the version being introduced as part of C++20.
After review, that C++20 concepts support was merged earlier this month for GCC 10 as well as the libstdc++ updates.
The current state of C++ features overall in GCC can be found via this status page. The C++20 changes still in the works for GCC include consistent comparison, atomic compare-and-exchange with padding bits, immediate functions, some of the relaxations to constexpr restrictions, modules, coroutines, stronger unicode requirements, and other smaller requirements.
GCC 10 should be out around the end of Q1'2020, assuming no snafus in the release process.
Concepts is one of the big features of the forthcoming C++20 that extends the language's templates functionality to add type-checking to templates and other compile-time validation. The existing concepts support in GCC was updated to reflect differences between the years old technical specification and the version being introduced as part of C++20.
After review, that C++20 concepts support was merged earlier this month for GCC 10 as well as the libstdc++ updates.
The current state of C++ features overall in GCC can be found via this status page. The C++20 changes still in the works for GCC include consistent comparison, atomic compare-and-exchange with padding bits, immediate functions, some of the relaxations to constexpr restrictions, modules, coroutines, stronger unicode requirements, and other smaller requirements.
GCC 10 should be out around the end of Q1'2020, assuming no snafus in the release process.
26 Comments