[gcc/devel/gccgo] c++: Add abbreviated fn template test for [PR78752]

Ian Lance Taylor ian@gcc.gnu.org
Sun Jul 12 18:11:14 GMT 2020


https://gcc.gnu.org/g:fa31a3cdbf1571286671d8d3a83e31676862583e

commit fa31a3cdbf1571286671d8d3a83e31676862583e
Author: Patrick Palka <ppalka@redhat.com>
Date:   Tue May 12 12:20:55 2020 -0400

    c++: Add abbreviated fn template test for [PR78752]
    
    This adds an abbreviated function template version of the testcase in
    PR78752, which seems to already be fixed.
    
    gcc/testsuite/ChangeLog:
    
            PR c++/78752
            * g++.dg/cpp2a/concepts-pr78752-2.C: New test.

Diff:
---
 gcc/testsuite/ChangeLog                         |  5 +++++
 gcc/testsuite/g++.dg/cpp2a/concepts-pr78752-2.C | 21 +++++++++++++++++++++
 2 files changed, 26 insertions(+)

diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 79572742409..ac5bead5030 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2020-05-12  Patrick Palka  <ppalka@redhat.com>
+
+	PR c++/78752
+	* g++.dg/cpp2a/concepts-pr78752-2.C: New test.
+
 2020-05-12  Uroš Bizjak  <ubizjak@gmail.com>
 
 	PR target/95046
diff --git a/gcc/testsuite/g++.dg/cpp2a/concepts-pr78752-2.C b/gcc/testsuite/g++.dg/cpp2a/concepts-pr78752-2.C
new file mode 100644
index 00000000000..6777054285d
--- /dev/null
+++ b/gcc/testsuite/g++.dg/cpp2a/concepts-pr78752-2.C
@@ -0,0 +1,21 @@
+// { dg-do compile { target c++2a } }
+// { dg-additional-options "-fconcepts-ts" }
+
+template <class T, class U>
+concept bool Same = __is_same(T, U);
+
+struct test {
+  void func(Same<int>... ints) {}
+};
+
+void func(Same<int>... ints) {}
+
+int main()
+{
+  test t;
+  t.func(1, 2, 3);
+  func(1, 2, 3);
+
+  t.func(1, 2, ""); // { dg-error "no match" }
+  func(1, 2, ""); // { dg-error "unsatisfied constraints" }
+}


More information about the Gcc-cvs mailing list