summaryrefslogtreecommitdiff
path: root/gcc/testsuite
diff options
context:
space:
mode:
authorjason <jason@138bc75d-0d04-0410-961f-82ee72b054a4>2010-07-27 22:06:03 +0000
committerjason <jason@138bc75d-0d04-0410-961f-82ee72b054a4>2010-07-27 22:06:03 +0000
commit76124e58d2662dc47ea660090bceedaa39a4a291 (patch)
tree006042e9b7977e67d56f3ee4b12aba0da516f847 /gcc/testsuite
parent3a55c112b92d0ef76f0a956b6c3b826037c1be8f (diff)
downloadgcc-76124e58d2662dc47ea660090bceedaa39a4a291.tar.gz
* pt.c (tsubst_expr) [DECL_EXPR]: Handle getting an AGGR_INIT_EXPR
from build_value_init. * init.c (build_value_init_noctor): Give error for unknown array bound. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@162603 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/testsuite')
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic102.C19
-rw-r--r--gcc/testsuite/g++.dg/cpp0x/variadic103.C14
3 files changed, 38 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 68b51d85a75..7a1a1759bab 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2010-07-27 Jason Merrill <jason@redhat.com>
+
+ * g++.dg/cpp0x/variadic102.C: New.
+ * g++.dg/cpp0x/variadic103.C: New.
+
2010-07-27 Maxim Kuvyrkov <maxim@codesourcery.com>
PR rtl-optimization/40956
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic102.C b/gcc/testsuite/g++.dg/cpp0x/variadic102.C
new file mode 100644
index 00000000000..dc9c4aea8cb
--- /dev/null
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic102.C
@@ -0,0 +1,19 @@
+// { dg-options "-std=c++0x" }
+
+struct nAny {
+ template<class... T>
+ nAny(T&&...);
+};
+
+template<class T>
+T&& create();
+
+template<class T, class... Args>
+void test() {
+ T t(create<Args>()...);
+ (void) t;
+}
+
+int main() {
+ test<nAny>();
+}
diff --git a/gcc/testsuite/g++.dg/cpp0x/variadic103.C b/gcc/testsuite/g++.dg/cpp0x/variadic103.C
new file mode 100644
index 00000000000..6d12331d000
--- /dev/null
+++ b/gcc/testsuite/g++.dg/cpp0x/variadic103.C
@@ -0,0 +1,14 @@
+// { dg-options "-std=c++0x" }
+
+template<class T>
+T&& create();
+
+template<class T, class... Args>
+void test() {
+ T t(create<Args>()...); // { dg-error "unknown bound" }
+ (void) t;
+}
+
+int main() {
+ test<int[]>();
+}