aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarek Polacek <polacek@redhat.com>2019-06-18 20:55:46 +0000
committerMarek Polacek <mpolacek@gcc.gnu.org>2019-06-18 20:55:46 +0000
commit8797dd71e710120158a191ace6dbe769b2485cf0 (patch)
treeff4bde37229cdd2d6b6302d6c9066b6a97e3370c
parent987a3082f1fcb849992ffb7f9196fc0a1ea9e1bb (diff)
downloadgcc-8797dd71e710120158a191ace6dbe769b2485cf0.zip
gcc-8797dd71e710120158a191ace6dbe769b2485cf0.tar.gz
gcc-8797dd71e710120158a191ace6dbe769b2485cf0.tar.bz2
re PR c++/71548 (Invalid declaration involving template template param causes crash)
PR c++/71548 * g++.dg/cpp0x/variadic177.C: New test. From-SVN: r272438
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic177.C12
2 files changed, 17 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index cbbaacd..a348251 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2019-06-18 Marek Polacek <polacek@redhat.com>
+
+ PR c++/71548
+ * g++.dg/cpp0x/variadic177.C: New test.
+
2019-06-18 Richard Sandiford <richard.sandiford@arm.com>
* gcc.target/aarch64/sve/struct_vect_18.c: Allow branches to
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic177.C b/gcc/testsuite/g++.dg/cpp0x/variadic177.C
new file mode 100644
index 0000000..96736a0
--- /dev/null
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic177.C
@@ -0,0 +1,12 @@
+// PR c++/71548
+// { dg-do compile { target c++11 } }
+
+template<typename> class fl {};
+template<typename = void, template<class...> class = fl>
+struct S {};
+template<typename... T>
+void f(S<T...> ) {}
+void lol() {
+ S<> s;
+ f(s); // { dg-error "no matching function for call to" }
+}