re PR c++/26572 (Invalid local class definition not diagnosed)
authorPaolo Carlini <paolo.carlini@oracle.com>
Fri, 24 May 2013 10:05:22 +0000 (10:05 +0000)
committerPaolo Carlini <paolo@gcc.gnu.org>
Fri, 24 May 2013 10:05:22 +0000 (10:05 +0000)
2013-05-24  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/26572
* g++.dg/template/error51.C: New.

2013-05-24  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/25503
* g++.dg/template/bitfield2.C: New.

From-SVN: r199288

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

index b8455ce21476a2240f93ceecbccaeac2e70fe62b..bb3b4997ae44ff021f09a65b035f8d9e68da0509 100644 (file)
@@ -1,3 +1,13 @@
+2013-05-24  Paolo Carlini  <paolo.carlini@oracle.com>
+
+       PR c++/26572
+       * g++.dg/template/error51.C: New.
+
+2013-05-24  Paolo Carlini  <paolo.carlini@oracle.com>
+
+       PR c++/25503
+       * g++.dg/template/bitfield2.C: New.
+
 2013-05-24  Eric Botcazou  <ebotcazou@adacore.com>
 
        * gnat.dg/specs/noinline1.ads: New test.
diff --git a/gcc/testsuite/g++.dg/template/bitfield2.C b/gcc/testsuite/g++.dg/template/bitfield2.C
new file mode 100644 (file)
index 0000000..e9a5320
--- /dev/null
@@ -0,0 +1,16 @@
+// PR c++/25503
+
+template<int N>
+struct Test
+{
+  Test()
+  {
+    typedef struct StaticAssert {unsigned condition : (N); } XXX; // { dg-error "zero width" }
+  }
+};
+
+int
+main()
+{
+  Test<0> T;
+}
diff --git a/gcc/testsuite/g++.dg/template/error51.C b/gcc/testsuite/g++.dg/template/error51.C
new file mode 100644 (file)
index 0000000..b3a6cfb
--- /dev/null
@@ -0,0 +1,9 @@
+// PR c++/26572
+
+template<int> void foo()
+{
+  struct A;                // { dg-error "declaration" }
+  struct B : A {};         // { dg-error "invalid use of incomplete" }
+}
+
+template void foo<0>();