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)
        {

Reply via email to