summaryrefslogtreecommitdiff
path: root/gcc/testsuite
diff options
context:
space:
mode:
authorJason Merrill <jason@redhat.com>2013-01-02 14:03:04 -0500
committerJason Merrill <jason@gcc.gnu.org>2013-01-02 14:03:04 -0500
commite78167f298583c1770b2889cc49a2b31dd42c137 (patch)
tree9a488488943c24223d38fd70d5904cca475fa417 /gcc/testsuite
parentcc1863452c2ebf3696ac7247aa9e4ae9db633c49 (diff)
downloadgcc-e78167f298583c1770b2889cc49a2b31dd42c137.tar.gz
re PR c++/55804 (GCC omits required call to constructor)
PR c++/55804 PR c++/55032 PR c++/55245 * tree.c (build_array_type_1): Revert earlier change. * cp/tree.c (build_cplus_array_type): Copy layout information to main variant if necessary. From-SVN: r194811
Diffstat (limited to 'gcc/testsuite')
-rw-r--r--gcc/testsuite/g++.dg/init/array33.C22
1 files changed, 22 insertions, 0 deletions
diff --git a/gcc/testsuite/g++.dg/init/array33.C b/gcc/testsuite/g++.dg/init/array33.C
new file mode 100644
index 00000000000..4440d3d5432
--- /dev/null
+++ b/gcc/testsuite/g++.dg/init/array33.C
@@ -0,0 +1,22 @@
+// PR c++/55804
+// { dg-do run }
+
+int t = 0;
+template <typename> struct vector {
+ vector() { t++; }
+};
+
+typedef vector<int> Arrays[1];
+class C
+{
+ vector<int> v_;
+ void Foo(const Arrays &);
+};
+Arrays a;
+
+int main(void)
+{
+ if (t!=1)
+ __builtin_abort ();
+ return 0;
+}