PR c++/51416
authorjason <jason@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 17 Dec 2011 03:28:39 +0000 (03:28 +0000)
committerjason <jason@138bc75d-0d04-0410-961f-82ee72b054a4>
Sat, 17 Dec 2011 03:28:39 +0000 (03:28 +0000)
* init.c (build_value_init_noctor): Check for incomplete type.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182430 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/cp/ChangeLog
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/cpp0x/auto31.C [new file with mode: 0644]
gcc/testsuite/g++.dg/cpp0x/variadic103.C

index 9c847d4..6ed8a03 100644 (file)
@@ -1,3 +1,8 @@
+2011-12-16  Jason Merrill  <jason@redhat.com>
+
+       PR c++/51416
+       * init.c (build_value_init_noctor): Check for incomplete type.
+
 2011-12-16  Richard Henderson  <rth@redhat.com>
 
        PR bootstrap/51072
index 0a22ca9..f2878ef 100644 (file)
@@ -1,3 +1,8 @@
+2011-12-16  Jason Merrill  <jason@redhat.com>
+
+       PR c++/51416
+       * g++.dg/cpp0x/auto31.C: New.
+
 2011-12-16  Ian Lance Taylor  <iant@google.com>
 
        PR middle-end/51592
diff --git a/gcc/testsuite/g++.dg/cpp0x/auto31.C b/gcc/testsuite/g++.dg/cpp0x/auto31.C
new file mode 100644 (file)
index 0000000..26a6560
--- /dev/null
@@ -0,0 +1,12 @@
+// PR c++/51416
+// { dg-do compile { target c++11 } }
+
+template<typename T, typename... U> void foo(T, U... u)
+{
+  auto foo(u...);              // { dg-error "auto" }
+}
+
+void bar()
+{
+  foo(0);
+}
index 6d12331..9d6b5ea 100644 (file)
@@ -5,7 +5,7 @@ T&& create();
 
 template<class T, class... Args>
 void test() {
-  T t(create<Args>()...);      // { dg-error "unknown bound" }
+  T t(create<Args>()...);      // { dg-error "incomplete" }
   (void) t;
 }