re PR c++/28639 (ICE trying to print error on invalid template parameter)
authorPaolo Carlini <pcarlini@suse.de>
Tue, 16 Oct 2007 22:41:32 +0000 (22:41 +0000)
committerPaolo Carlini <paolo@gcc.gnu.org>
Tue, 16 Oct 2007 22:41:32 +0000 (22:41 +0000)
2007-10-16  Paolo Carlini  <pcarlini@suse.de>

PR c++/28639
PR c++/30299
* g++.dg/template/void12.C: New.
* g++.dg/template/void13.C: New.

From-SVN: r129392

gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/template/void12.C [new file with mode: 0644]
gcc/testsuite/g++.dg/template/void13.C [new file with mode: 0644]

index 34f8c0826c4fd5545a6d61349baba5930fb6f479..35adc95c321f937a166f18955516b4ae22eef8fa 100644 (file)
@@ -1,3 +1,10 @@
+2007-10-16  Paolo Carlini  <pcarlini@suse.de>
+
+       PR c++/28639
+       PR c++/30299
+       * g++.dg/template/void12.C: New.
+       * g++.dg/template/void13.C: New.
+
 2007-10-16  Paolo Carlini  <pcarlini@suse.de>
 
        PR c++/31446
diff --git a/gcc/testsuite/g++.dg/template/void12.C b/gcc/testsuite/g++.dg/template/void12.C
new file mode 100644 (file)
index 0000000..1d064b6
--- /dev/null
@@ -0,0 +1,7 @@
+// PR c++/28639
+
+template<void> struct A  // { dg-error "not a valid type" }
+{
+  static const int i = 1;
+  char a[i];
+};
diff --git a/gcc/testsuite/g++.dg/template/void13.C b/gcc/testsuite/g++.dg/template/void13.C
new file mode 100644 (file)
index 0000000..3f36735
--- /dev/null
@@ -0,0 +1,11 @@
+// PR c++/30299
+
+struct A
+{
+  int i;
+};
+
+template<void> struct B : A  // { dg-error "not a valid type" }
+{
+  B() { this->i; }
+};