Tested x86_64-pc-linux-gnu, applying to trunk.

-- 8< --

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.
---
 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 73a07055a86..b37a4c09792 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)
        {

base-commit: 1b7cfa715c6c02db6ef587c87757d7792fc43423
-- 
2.46.2

Reply via email to