https://gcc.gnu.org/g:1c9b440bf6768c1053101c4a473f5fc9757f52a5
commit r15-4000-g1c9b440bf6768c1053101c4a473f5fc9757f52a5 Author: Jason Merrill <ja...@redhat.com> Date: Tue Oct 1 10:58:35 2024 -0400 c++: don't advertise C++20 concepts in C++14 There have been various problems with -std=c++14 -fconcepts; let's stop defining the feature test macro in that case. gcc/c-family/ChangeLog: * c-cppbuiltin.cc (c_cpp_builtins): Don't define __cpp_concepts before C++17. Diff: --- gcc/c-family/c-cppbuiltin.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gcc/c-family/c-cppbuiltin.cc b/gcc/c-family/c-cppbuiltin.cc index 73a07055a86e..b37a4c097922 100644 --- a/gcc/c-family/c-cppbuiltin.cc +++ b/gcc/c-family/c-cppbuiltin.cc @@ -1102,7 +1102,7 @@ c_cpp_builtins (cpp_reader *pfile) cpp_define (pfile, "__cpp_deleted_function=202403L"); cpp_define (pfile, "__cpp_variadic_friend=202403L"); } - if (flag_concepts) + if (flag_concepts && cxx_dialect > cxx14) cpp_define (pfile, "__cpp_concepts=202002L"); if (flag_contracts) {