https://gcc.gnu.org/g:9fd4e414830bb84b1cf1a7df4945d26c078729c9

commit r15-7536-g9fd4e414830bb84b1cf1a7df4945d26c078729c9
Author: Marek Polacek <pola...@redhat.com>
Date:   Fri Feb 14 15:50:09 2025 -0500

    c++: add fixed test [PR70037]
    
    Fixed by r11-735 + r11-2417.
    
            PR c++/70037
    
    gcc/testsuite/ChangeLog:
    
            * g++.dg/cpp2a/concepts-pr70037.C: New test.

Diff:
---
 gcc/testsuite/g++.dg/cpp2a/concepts-pr70037.C | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git a/gcc/testsuite/g++.dg/cpp2a/concepts-pr70037.C 
b/gcc/testsuite/g++.dg/cpp2a/concepts-pr70037.C
new file mode 100644
index 000000000000..7382764ea01b
--- /dev/null
+++ b/gcc/testsuite/g++.dg/cpp2a/concepts-pr70037.C
@@ -0,0 +1,18 @@
+// PR c++/70037
+// { dg-do compile { target c++20 } }
+
+namespace std {
+  template<typename>
+  struct F {
+    static constexpr bool value = false;
+  };
+
+  template<typename T>
+  struct tuple {
+    constexpr tuple() requires (F<T>::value)  {}
+    explicit constexpr tuple() requires (F<T>::value) && (true) {}
+  };
+}
+
+using std::tuple;
+template struct std::tuple<tuple<int>>;

Reply via email to