diff options
author | Dan Albert <danalbert@google.com> | 2015-10-13 16:28:19 -0700 |
---|---|---|
committer | Dan Albert <danalbert@google.com> | 2015-10-13 16:28:19 -0700 |
commit | a8c075f72b231c37823661ba0d7d082a21cd39d9 (patch) | |
tree | 395aa3b848d56037292e50466643453485073018 /gcc-4.8/gcc/testsuite/g++.dg/init | |
parent | 5aff2e0142aca13849b4e51de503e71d5010efa6 (diff) | |
download | toolchain_gcc-a8c075f72b231c37823661ba0d7d082a21cd39d9.tar.gz toolchain_gcc-a8c075f72b231c37823661ba0d7d082a21cd39d9.tar.bz2 toolchain_gcc-a8c075f72b231c37823661ba0d7d082a21cd39d9.zip |
Remove gcc-4.8.
Change-Id: Iee9c6985c613f58c82e33a91722d371579eb290f
Diffstat (limited to 'gcc-4.8/gcc/testsuite/g++.dg/init')
249 files changed, 0 insertions, 5577 deletions
diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/addr-const1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/addr-const1.C deleted file mode 100644 index 3b4637a41..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/addr-const1.C +++ /dev/null @@ -1,38 +0,0 @@ -// { dg-do run } - -// Copyright (C) 2003 Free Software Foundation, Inc. -// Contributed by Nathan Sidwell 19 Apr 2003 <nathan@codesourcery.com> - -// PR 9881. address-constant-expression not static initialized - -struct bar { - double p; -}; // bar - -bar v; -static bool error = false; - -struct foo { - static double *a; - static double *b; - static double storage; -}; - -struct baz { - baz () { - if (foo::a != &v.p) - error = true; - if (foo::b != &foo::storage) - error = true; - } -}; - -baz f; // Get constructor to run before any other non-static initializers - -double *foo::a = &(((bar *)(&v))->p); -double *foo::b = &(((bar *)(&foo::storage))->p); -double foo::storage = 0.0; - -int main() { - return error; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/aggr1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/aggr1.C deleted file mode 100644 index c63f0b02c..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/aggr1.C +++ /dev/null @@ -1,19 +0,0 @@ -// Test that initializing an aggregate with complex copy constructor -// and assignment ops doesn't cause cp_expr_size to abort. - -struct A -{ - A(); - A(const A&); - A& operator=(const A&); -}; - -struct B -{ - A a; -}; - -int main () -{ - B b = { A() }; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/aggr2.C b/gcc-4.8/gcc/testsuite/g++.dg/init/aggr2.C deleted file mode 100644 index 97dbeb619..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/aggr2.C +++ /dev/null @@ -1,46 +0,0 @@ -// PR c++/15172 -// { dg-do run } - -extern "C" int printf (const char *, ...); -extern "C" void abort (); - -struct A { - static A* p; - - A() { p = this; } - A(const A&); - ~A() { if (this != p) abort (); } - void print () { } -}; - -A* A::p; - -struct B { - A a; -}; - -B b = { A () }; - -struct A2 { - static A2* p; - - A2() { p = this; } - A2(const A2&); - ~A2() { if (this != p) abort (); } - void print () { } -}; - -A2* A2::p; - -struct B2 { - A2 a2; -}; - -int main () { - b.a.print (); - { - B2 b2 = { A2() }; - b2.a2.print (); - } -} - diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/aggr3.C b/gcc-4.8/gcc/testsuite/g++.dg/init/aggr3.C deleted file mode 100644 index 3376897e1..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/aggr3.C +++ /dev/null @@ -1,16 +0,0 @@ -// PR c++/18793 - -struct S { - S(); - S(const S&); - void operator=(const S&); -}; - -struct X { - int a, b, c, d, e; - S s; -}; - -void foobar () { - X x = {0}; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/aggr4.C b/gcc-4.8/gcc/testsuite/g++.dg/init/aggr4.C deleted file mode 100644 index 7120e68cd..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/aggr4.C +++ /dev/null @@ -1,7 +0,0 @@ -struct A -{ - int i; -}; - -A a1 = { 1 }; // ok -A a2 = { a1 }; // { dg-error "cannot convert" } diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/aggr5.C b/gcc-4.8/gcc/testsuite/g++.dg/init/aggr5.C deleted file mode 100644 index c1844f8ff..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/aggr5.C +++ /dev/null @@ -1,11 +0,0 @@ -// Origin PR c++/40239 -// { dg-do compile } - -struct B { B() { } private: B(B const&); }; -struct A { int a; B b; }; - -int -main() -{ - A a = {0}; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/aggr6.C b/gcc-4.8/gcc/testsuite/g++.dg/init/aggr6.C deleted file mode 100644 index 98628d255..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/aggr6.C +++ /dev/null @@ -1,11 +0,0 @@ -// Origin PR c++/40239 -// { dg-do compile } - -struct B { B() { } private: B(B const&); }; -struct A { int a; B b; }; - -int -main() -{ - A a = {}; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/aggr7.C b/gcc-4.8/gcc/testsuite/g++.dg/init/aggr7.C deleted file mode 100644 index bec952c23..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/aggr7.C +++ /dev/null @@ -1,13 +0,0 @@ -// PR c++/50866 - -struct A { A(); ~A(); }; -struct B { B(const char *, const A& = A()); ~B(); }; -struct C { - B b1, b2; -}; -void f() -{ - C c = { - "a","b" - }; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/aggr8.C b/gcc-4.8/gcc/testsuite/g++.dg/init/aggr8.C deleted file mode 100644 index 7e6edc9ad..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/aggr8.C +++ /dev/null @@ -1,19 +0,0 @@ -// PR c++/51009 - -struct A -{ - ~A(); -}; - -struct B -{ - A a; - B(const A& = A()); -}; - -struct C -{ - B b1, b2; -}; - -C c = {}; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/aggr9.C b/gcc-4.8/gcc/testsuite/g++.dg/init/aggr9.C deleted file mode 100644 index 67d829912..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/aggr9.C +++ /dev/null @@ -1,9 +0,0 @@ -// PR c++/53661 - -enum Code { - SUCCESS = 0 -}; - -Code a; - -int r[] = {a}; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/array0.C b/gcc-4.8/gcc/testsuite/g++.dg/init/array0.C deleted file mode 100644 index 235cdf0de..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/array0.C +++ /dev/null @@ -1,12 +0,0 @@ -// { dg-do compile } -// { dg-options "" } -// PR C++/24138 - -void foo() -{ - typedef struct { - unsigned char dir; - int data[0]; - } yanito; - static const yanito horse = { 1, { 2, 3 } }; // { dg-error "too many" } -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/array1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/array1.C deleted file mode 100644 index 5847247c1..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/array1.C +++ /dev/null @@ -1,26 +0,0 @@ -// Test that completing an array declared with a typedef doesn't change -// the typedef. - -// { dg-do run } - -typedef int iArr[]; - -const iArr array4={ - 1, 2, 3, 4 -}; - -const iArr array3={ - 1, 2, 3 -}; - -const iArr array5={ - 1, 2, 3, 4, 5 -}; - -int main() -{ - if (sizeof (array4)/sizeof (array4[0]) != 4 - || sizeof (array3)/sizeof (array3[0]) != 3 - || sizeof (array5)/sizeof (array5[0]) != 5) - return 1; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/array10.C b/gcc-4.8/gcc/testsuite/g++.dg/init/array10.C deleted file mode 100644 index 41121055e..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/array10.C +++ /dev/null @@ -1,6 +0,0 @@ -// { dg-do compile } -// { dg-options "" } - -typedef int __attribute__((vector_size (8))) vec; - -vec foo[] = { (vec) {1, 2} }; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/array11.C b/gcc-4.8/gcc/testsuite/g++.dg/init/array11.C deleted file mode 100644 index e52effe9f..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/array11.C +++ /dev/null @@ -1,28 +0,0 @@ -/* PR 11665 - Orgin: jwhite@cse.unl.edu - The problem was in initializer_constant_valid_p, - "for a CONSTRUCTOR, only the last element - of the CONSTRUCTOR was being checked" - (from the email of the patch which fixed this). - This used to ICE because GCC thought gdt_table was a - constant value when it is not. */ - -int x; - -typedef __SIZE_TYPE__ size_t; - -struct gdt -{ -size_t a,b,c,d,e,f; -}; -void f() -{ -struct gdt gdt_table[2]= -{ - { - 0, - ( (((size_t)(&x))<<(24))&(-1<<(8)) ), - }, -}; -} - diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/array12.C b/gcc-4.8/gcc/testsuite/g++.dg/init/array12.C deleted file mode 100644 index 3bb480029..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/array12.C +++ /dev/null @@ -1,28 +0,0 @@ -// PR c++/12253 -// Bug: We were failing to destroy the temporary A passed to the -// constructor for b[0] before going on to construct b[1]. - -// { dg-do run } - -extern "C" int printf (const char *, ...); - -int c; -int r; - -struct A -{ - A() { printf ("A()\n"); if (c++) r = 1; } - A(const A&) { printf ("A(const A&)\n"); ++c; } - ~A() { printf ("~A()\n"); --c; } -}; - -struct B -{ - B(int, const A& = A()) { printf ("B()\n"); } -}; - -int main() -{ - B b[] = { 0, 0 }; - return r; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/array13.C b/gcc-4.8/gcc/testsuite/g++.dg/init/array13.C deleted file mode 100644 index aa66e33ac..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/array13.C +++ /dev/null @@ -1,9 +0,0 @@ -template <typename DisjointSet> -struct test_disjoint_set { - static void do_test() - { - unsigned int elts[] - = { 0, 1, 2, 3 }; - const int N = sizeof(elts)/sizeof(*elts); - } -}; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/array14.C b/gcc-4.8/gcc/testsuite/g++.dg/init/array14.C deleted file mode 100644 index 847bd1f20..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/array14.C +++ /dev/null @@ -1,21 +0,0 @@ -// PR c++/12883 -// Bug: Destructor of array object not called if no prior -// instantiation of the template has happened. - -// { dg-do run } - -int ret = 1; - -template <int> struct X -{ - X(int) { } - ~X() { ret = 0; } -}; - -int main() -{ - { - X<0> array[] = { 0 }; - } - return ret; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/array15.C b/gcc-4.8/gcc/testsuite/g++.dg/init/array15.C deleted file mode 100644 index 17160d076..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/array15.C +++ /dev/null @@ -1,46 +0,0 @@ -// { dg-do run } - -// Copyright (C) 2004 Free Software Foundation, Inc. -// Contributed by Nathan Sidwell 8 Dec 2004 <nathan@codesourcery.com> - -// PR 16681 too much memory used -// Origin: Matt LaFary <lafary@activmedia.com> - -struct foo { - unsigned char buffer[4111222]; - foo() ; - bool check () const; -}; - -foo::foo () - : buffer() -{} - -bool foo::check () const -{ - for (unsigned ix = sizeof (buffer); ix--;) - if (buffer[ix]) - return false; - return true; -} - -void *operator new (__SIZE_TYPE__ size, void *p) -{ - return p; -} - -char heap[5000000]; - -int main () -{ - for (unsigned ix = sizeof (heap); ix--;) - heap[ix] = ix; - - foo *f = new (heap) foo (); - - if (!f->check ()) - return 1; - return 0; -} - - diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/array16.C b/gcc-4.8/gcc/testsuite/g++.dg/init/array16.C deleted file mode 100644 index 188d1a84f..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/array16.C +++ /dev/null @@ -1,112 +0,0 @@ -// Causes timeout for the MMIX simulator on a 3GHz P4 and we can't -// have "compile" for some targets and "run" for others. -// { dg-do run { target { ! mmix-*-* } } } -// { dg-options "-mstructure-size-boundary=8" { target arm*-*-* } } - -// Copyright (C) 2004 Free Software Foundation, Inc. -// Contributed by Nathan Sidwell 8 Dec 2004 <nathan@codesourcery.com> - -// PR 16681 too much memory used -// Origin: Matt LaFary <lafary@activmedia.com> - -// NOTE: This test assumes that 4M instances of struct ELT can fit into -// a 5MB array. This isn't true, e.g., with the default -// arm-none-elf options. - -struct elt -{ - static int count; - static elt*ptr; - static int abort; - char c; - - elt (); - ~elt (); - -}; - -int elt::count; -elt *elt::ptr; -int elt::abort; - -elt::elt () - :c () -{ - if (count >= 0) - { - if (!ptr) - ptr = this; - if (count == 100) - throw 2; - if (this != ptr) - abort = 1; - count++; - ptr++; - } -} - -elt::~elt () -{ - if (count >= 0) - { - ptr--; - count--; - if (ptr != this) - abort = 2; - } -} - -struct foo { - elt buffer[4111222]; - foo() ; - bool check () const; -}; - -foo::foo () - : buffer() -{} - -bool foo::check () const -{ - for (unsigned ix = sizeof (buffer)/ sizeof (buffer[0]); ix--;) - if (buffer[ix].c) - return false; - return true; -} - -void *operator new (__SIZE_TYPE__ size, void *p) -{ - return p; -} - -char heap[5000000]; - -int main () -{ - for (unsigned ix = sizeof (heap); ix--;) - heap[ix] = ix; - - try - { - foo *f = new (heap) foo (); - return 1; - } - catch (...) - { - if (elt::count) - return 2; - if (elt::abort) - return elt::abort + 3; - } - - for (unsigned ix = sizeof (heap); ix--;) - heap[ix] = ix; - - elt::count = -1; - foo *f = new (heap) foo (); - if (!f->check ()) - return 3; - return 0; -} - - diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/array17.C b/gcc-4.8/gcc/testsuite/g++.dg/init/array17.C deleted file mode 100644 index 4240f7193..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/array17.C +++ /dev/null @@ -1,8 +0,0 @@ -// { dg-do compile } - - -class StringMap { - const char empty_str[1]; -public: - StringMap() : empty_str() {} -}; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/array18.C b/gcc-4.8/gcc/testsuite/g++.dg/init/array18.C deleted file mode 100644 index 154d03fcf..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/array18.C +++ /dev/null @@ -1,22 +0,0 @@ -// PR c++/20142 -// { dg-do run } - -int n=4; - -struct A -{ - A() {} - A& operator= (const A&) { --n; return *this; } -}; - -struct B -{ - A x[2][2]; -}; - -int main() -{ - B b; - b = b; - return n; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/array19.C b/gcc-4.8/gcc/testsuite/g++.dg/init/array19.C deleted file mode 100644 index a5f124e21..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/array19.C +++ /dev/null @@ -1,4 +0,0 @@ -// { dg-do compile } -// { dg-options "" } -double a[0] = { }; -const double b[0][1] = { }; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/array2.C b/gcc-4.8/gcc/testsuite/g++.dg/init/array2.C deleted file mode 100644 index ca03ff39c..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/array2.C +++ /dev/null @@ -1,8 +0,0 @@ -// Check that the type of an array is set correctly when flat initializers -// are used. - -// { dg-do compile } - -struct s { int a; int b; }; -struct s x[] = { 1, 2, 3, 4 }; -int y[sizeof (x) == 2 * sizeof (x[0])? 1 : -1]; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/array20.C b/gcc-4.8/gcc/testsuite/g++.dg/init/array20.C deleted file mode 100644 index 06a167596..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/array20.C +++ /dev/null @@ -1,5 +0,0 @@ -// PR c++/27385 - -struct A {}; -A a[] = { 0 }; // { dg-error "initializer" } - diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/array21.C b/gcc-4.8/gcc/testsuite/g++.dg/init/array21.C deleted file mode 100644 index fc6abab55..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/array21.C +++ /dev/null @@ -1,7 +0,0 @@ -// PR c++/27722 - -void foo() -{ - const int x[] = 0; // { dg-error "initializer" } - ++x; // { dg-error "read-only|operand" } -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/array22.C b/gcc-4.8/gcc/testsuite/g++.dg/init/array22.C deleted file mode 100644 index 0c5bb33da..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/array22.C +++ /dev/null @@ -1,6 +0,0 @@ -// PR C++/29002 -// We ICE trying to set the "zero" initializer on the incomplete -// array - -struct A {}; -int A::* x[]; // { dg-error "size" } diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/array23.C b/gcc-4.8/gcc/testsuite/g++.dg/init/array23.C deleted file mode 100644 index 80ffb0a98..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/array23.C +++ /dev/null @@ -1,6 +0,0 @@ -// PR C++/29002 -// We ICE trying to set the "zero" initializer on the incomplete -// array - -struct A {A();int A::* t;}; -A x[]; // { dg-error "size" } diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/array24.C b/gcc-4.8/gcc/testsuite/g++.dg/init/array24.C deleted file mode 100644 index ed4c1d881..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/array24.C +++ /dev/null @@ -1,7 +0,0 @@ -// PR c++/29175 -// { dg-options "" } - -void foo(int i) -{ - int x[][i] = { 0 }; // { dg-error "variable-sized|storage size" } -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/array25.C b/gcc-4.8/gcc/testsuite/g++.dg/init/array25.C deleted file mode 100644 index 1ab2725d7..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/array25.C +++ /dev/null @@ -1,49 +0,0 @@ -// related to PR c++/38233 -// test for value-init of a member array -// { dg-do run } - -struct elt -{ - virtual void f(); - char c; -}; - -void elt::f() { } - -struct foo { - elt buffer[500]; - foo() ; - bool check () const; -}; - -foo::foo () - : buffer() -{} - -bool foo::check () const -{ - for (unsigned ix = sizeof (buffer)/ sizeof (buffer[0]); ix--;) - if (buffer[ix].c) - return false; - return true; -} - -inline void *operator new (__SIZE_TYPE__ size, void *p) -{ - return p; -} - -char heap[sizeof(elt[500])]; - -int main () -{ - for (unsigned ix = sizeof (heap); ix--;) - heap[ix] = ix; - - foo *f = new (heap) foo (); - if (!f->check ()) - return 3; - return 0; -} - - diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/array26.C b/gcc-4.8/gcc/testsuite/g++.dg/init/array26.C deleted file mode 100644 index 83c4e0c4a..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/array26.C +++ /dev/null @@ -1,11 +0,0 @@ -// PR c++/42058 -// { dg-options "" } - -struct A; - -struct B -{ - A a; // { dg-error "incomplete type" } -}; - -B b[1] = (B[]) { 0 }; // { dg-error "initializer" } diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/array27.C b/gcc-4.8/gcc/testsuite/g++.dg/init/array27.C deleted file mode 100644 index 988501545..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/array27.C +++ /dev/null @@ -1,11 +0,0 @@ -// PR c++/42058 -// { dg-options "" } - -struct A {}; - -struct B -{ - A a; -}; - -B b[1] = (B[]) { 0 }; // { dg-error "initializer" } diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/array28.C b/gcc-4.8/gcc/testsuite/g++.dg/init/array28.C deleted file mode 100644 index 8cf19ba43..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/array28.C +++ /dev/null @@ -1,7 +0,0 @@ -// PR c++/49669 - -struct Foo { explicit Foo(int) { } }; -struct Goo { - Goo() : x(Foo(4), Foo(5)) { } // { dg-error "array" } - Foo x[2]; -}; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/array3.C b/gcc-4.8/gcc/testsuite/g++.dg/init/array3.C deleted file mode 100644 index 700b26389..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/array3.C +++ /dev/null @@ -1,23 +0,0 @@ -// PR c++/6331 -// Bug: we were generating a badly cv-qualified ARRAY_TYPE in the -// synthesized copy constructor for A, which then became the canonical -// version, confusing later uses. - -struct A { - virtual ~A(); - const float* f(); - float fa[3]; -}; - -struct B { - B(const A& ai) : a (ai) {} - A a; -}; - -void g (const float pos[3]); - -extern A& a; -void h() -{ - g (a.f()); -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/array30.C b/gcc-4.8/gcc/testsuite/g++.dg/init/array30.C deleted file mode 100644 index 696d9bf99..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/array30.C +++ /dev/null @@ -1,7 +0,0 @@ -// PR c++/54501 -// { dg-options "" } - -int main() -{ - int a[][0] = {0}; // { dg-error "too many" } -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/array31.C b/gcc-4.8/gcc/testsuite/g++.dg/init/array31.C deleted file mode 100644 index 9bb66a595..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/array31.C +++ /dev/null @@ -1,10 +0,0 @@ -// PR c++/54501 -// { dg-options "" } - -struct A -{ - int i[0]; - int j; -}; - -struct A a = { 1 }; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/array32.C b/gcc-4.8/gcc/testsuite/g++.dg/init/array32.C deleted file mode 100644 index 06b27a94a..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/array32.C +++ /dev/null @@ -1,7 +0,0 @@ -// PR c++/42315 - -extern int x[]; - -int i = x[0]; - -int x[] = 0; // { dg-error "" } diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/array33.C b/gcc-4.8/gcc/testsuite/g++.dg/init/array33.C deleted file mode 100644 index 4440d3d54..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/array33.C +++ /dev/null @@ -1,22 +0,0 @@ -// 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; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/array34.C b/gcc-4.8/gcc/testsuite/g++.dg/init/array34.C deleted file mode 100644 index 1c2e022e5..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/array34.C +++ /dev/null @@ -1,15 +0,0 @@ -// PR c++/53650 -// We should loop over array inits if they don't involve temporaries -// that need extending. -// { dg-options "-fdump-tree-gimple" } -// { dg-final { scan-tree-dump-times "Class::Class" 1 "gimple" } } -// { dg-final { cleanup-tree-dump "gimple" } } - -struct Class { - Class(); -}; - -int main() { - Class table [10] = {}; - return 0; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/array4.C b/gcc-4.8/gcc/testsuite/g++.dg/init/array4.C deleted file mode 100644 index 67519bf7c..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/array4.C +++ /dev/null @@ -1,27 +0,0 @@ -// { dg-do compile } -// Origin: Markus Breuer <markus.breuer@materna.de> - -// PR c++/6944 -// Fail to synthesize copy constructor of multi-dimensional -// array of class. - -#include <string> - -class Array -{ -public: - std::string m_array[10][20][30]; -}; - -Array func() -{ - Array result; - return result; // sorry, not implemented: cannot initialize multi-dimensional array with initializer -} - - -int main() -{ - Array arr = func(); -} - diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/array5.C b/gcc-4.8/gcc/testsuite/g++.dg/init/array5.C deleted file mode 100644 index aeacb31cf..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/array5.C +++ /dev/null @@ -1,52 +0,0 @@ -// { dg-do run } -// Copyright (C) 2002 Free Software Foundation -// Contributed by Kriang Lerdsuwanakij <lerdsuwa@users.sourceforge.net> - -// Incorrect construction and destruction of multi-dimensional -// array of class. - -extern "C" void abort(); -extern "C" int printf(const char *, ...); - -int count; -int num; - -struct A -{ - A() - { - if (count == num) - throw ""; - count++; -#ifdef PRINT - printf("ctor %p\n", static_cast<void *>(this)); -#endif - } - - ~A() - { - count--; -#ifdef PRINT - printf("dtor %p\n", static_cast<void *>(this)); -#endif - } -}; - -struct Array -{ - A array[2][2][2]; -}; - -int main() -{ - for (num = 0; num <= 8; ++num) { - count = 0; - try { - Array A; - } - catch (...) { - } - if (count != 0) - abort(); - } -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/array6.C b/gcc-4.8/gcc/testsuite/g++.dg/init/array6.C deleted file mode 100644 index 6181d02bf..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/array6.C +++ /dev/null @@ -1,7 +0,0 @@ -// { dg-do compile } - -char arr [][4] = { "one", "two" }; -const char arr2[][4] = { "one", "two" }; -signed char arr3[][4] = { "one", "two" }; -const unsigned char arr4[][4] = { "one", "two" }; -volatile wchar_t arr5[][4] = { L"one", L"two" }; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/array7.C b/gcc-4.8/gcc/testsuite/g++.dg/init/array7.C deleted file mode 100644 index 23c6a7098..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/array7.C +++ /dev/null @@ -1,15 +0,0 @@ -struct S { - virtual void v () {} - void f (const float g[3]); - float h[3]; -}; - -void g () { - S s1, s2; - s1 = s2; -} - -void S::f (const float g[3]) {} - - - diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/array8.C b/gcc-4.8/gcc/testsuite/g++.dg/init/array8.C deleted file mode 100644 index 5f28ca490..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/array8.C +++ /dev/null @@ -1,12 +0,0 @@ -struct A { - A (); -}; - -struct B { - A a1; - A a2; -}; - -A a; - -struct B b[] = { { a, a }, { a, a } }; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/array9.C b/gcc-4.8/gcc/testsuite/g++.dg/init/array9.C deleted file mode 100644 index d37e00e5b..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/array9.C +++ /dev/null @@ -1,9 +0,0 @@ -struct T { - T (); -}; - -void f () { - T t[2]; - for (int i = 0; i < 10; ++i); - int i = 0; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/assign1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/assign1.C deleted file mode 100644 index 690a48191..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/assign1.C +++ /dev/null @@ -1,30 +0,0 @@ -// PR c++/13009 -// { dg-do run } - -struct A { - char a; -}; - -struct B: public virtual A { - #if 0 // this piece of code works around the problem - B& operator= (const B& other) - { - A::operator= (other); - } - #endif -}; - -struct C: public B { - char c; -}; - -int main() { - B b; - b.a = 'b'; - C c; - c.a = c.c = 'c'; - - c.B::operator= (b); - if (c.a != 'b' || c.c != 'c') - return 1; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/attrib1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/attrib1.C deleted file mode 100644 index 839e4ce21..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/attrib1.C +++ /dev/null @@ -1,10 +0,0 @@ -// { dg-do run } - -void f() __attribute((__constructor__)); -int i; -void f() { i = 1; } - -int main(int, char **) -{ - return 1-i; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/bitfield1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/bitfield1.C deleted file mode 100644 index 70a06d0e1..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/bitfield1.C +++ /dev/null @@ -1,24 +0,0 @@ -// Check that we handle bitfields as complex lvalues properly. - -struct A -{ - int i: 2; - int j: 2; - int k: 2; -}; - -A a, a2; -bool b; -void f (); - -int main () -{ - (f(), a.j) = 1; - (f(), a).j = 2; // { dg-warning "overflow" } - (b ? a.j : a2.k) = 3; // { dg-warning "overflow" } - (b ? a : a2).j = 0; - ++(a.j) = 1; - (a.j = 2) = 3; // { dg-warning "overflow" } -} - - diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/bitfield2.C b/gcc-4.8/gcc/testsuite/g++.dg/init/bitfield2.C deleted file mode 100644 index e54b2e423..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/bitfield2.C +++ /dev/null @@ -1,33 +0,0 @@ -// PR c++/13371 -// Bug: We were failing to properly protect the lhs on the line marked -// "here" from multiple evaluation. - -// { dg-do run } - -extern "C" int printf (const char *, ...); - -enum E { E1, E2 }; - -struct A -{ - E e : 8; - unsigned char c; -}; - -A ar[2]; - -int c; - -int f() -{ - ++c; - printf ("f()\n"); - return 0; -} - -int main() -{ - ar[0].c = 0xff; - ar[f()].e = E1; // here - return (c != 1 || ar[0].c != 0xff); -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/bitfield3.C b/gcc-4.8/gcc/testsuite/g++.dg/init/bitfield3.C deleted file mode 100644 index 23db2d4a3..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/bitfield3.C +++ /dev/null @@ -1,11 +0,0 @@ -// PR c++/43663 - -struct S -{ - S(): i(0) {} - int i : 3; -}; - -S s; - -const int& cr(s.i); diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/bitfield4.C b/gcc-4.8/gcc/testsuite/g++.dg/init/bitfield4.C deleted file mode 100644 index 30041c435..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/bitfield4.C +++ /dev/null @@ -1,24 +0,0 @@ -// PR c++/56235 - -struct A -{ - A (const A &); -}; - -struct B -{ - A a; - enum Mode { }; - Mode m:8; -}; - -struct C -{ - C(); - B b; -}; - -C fn() -{ - return C(); -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/brace1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/brace1.C deleted file mode 100644 index a819fa258..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/brace1.C +++ /dev/null @@ -1,4 +0,0 @@ -// { dg-do compile } - -int i[4] = { { 3 } }; // { dg-error "brace" } - diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/brace2.C b/gcc-4.8/gcc/testsuite/g++.dg/init/brace2.C deleted file mode 100644 index fec9c6ce4..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/brace2.C +++ /dev/null @@ -1,8 +0,0 @@ -// { dg-do compile } -// [dcl.init] paragraph 13. -int x = { 2 }; -const char * y = { "hello" }; -int a = 2; -int b = { 2,3 }; // { dg-error "requires one element in initializer" } -int c = { { 2 } } ; // { dg-error "braces around scalar initializer" } -int d = {}; // { dg-error "initializer" "" { target c++98 } } diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/brace3.C b/gcc-4.8/gcc/testsuite/g++.dg/init/brace3.C deleted file mode 100644 index 0a1ee8f00..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/brace3.C +++ /dev/null @@ -1 +0,0 @@ -int array[2][1] = { {0} {1} }; // { dg-error "" } diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/brace4.C b/gcc-4.8/gcc/testsuite/g++.dg/init/brace4.C deleted file mode 100644 index 0c3790193..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/brace4.C +++ /dev/null @@ -1,5 +0,0 @@ -// PR c++/16859 -// { dg-do compile } -// { dg-options "-pedantic" } - -int a[] = { }; // { dg-error "zero-size array" } diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/brace5.C b/gcc-4.8/gcc/testsuite/g++.dg/init/brace5.C deleted file mode 100644 index 696bbd676..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/brace5.C +++ /dev/null @@ -1,7 +0,0 @@ -// PR c++/27491 -// { dg-do compile } -// { dg-options "" } - -int i = (int) { 0 }; -int j = (int) { i }; -int k = (int) { k }; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/brace6.C b/gcc-4.8/gcc/testsuite/g++.dg/init/brace6.C deleted file mode 100644 index ca39b0180..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/brace6.C +++ /dev/null @@ -1,25 +0,0 @@ -/* PR c++/30759 */ -/* { dg-do compile } */ - -struct A { - A(int) { } -}; - -struct B { - B(const B&); - int b; -}; - -struct C {}; - -struct D { int c; }; - -int main() -{ - int i = { 1 }; - int j = { 1, 2 }; /* { dg-error "requires one element" } */ - A a = { 6 }; /* { dg-error "initialize" "" { target c++98 } } */ - B b = { 6 }; /* { dg-error "" } */ - C c = { 6 }; /* { dg-error "too many initializers" } */ - D d = { 6 }; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/byval1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/byval1.C deleted file mode 100644 index 86c6e4683..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/byval1.C +++ /dev/null @@ -1,31 +0,0 @@ -// PR c++/3948 -// Test that the destructor call for a value parameter gets the -// right address. - -// { dg-do run } - -void *p[2]; -int i; -int r; - -struct C -{ - int m; - - C() { p[i++] = this; } - ~C() { if (p[--i] != this) r = 1; } -}; - - -void Foo (C c) -{ - p[i++] = &c; -} - -int main () -{ - C c; - - Foo (c); - return r; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/call1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/call1.C deleted file mode 100644 index d44b6dddc..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/call1.C +++ /dev/null @@ -1,35 +0,0 @@ -// Bug c++/16115 -// { dg-options "-O2" } - -extern "C" void abort(); - -int count = 0; - -struct T { - T() { count++; } - T(const T&) { count++; } - ~T() { if (count==0) abort(); --count; } -}; - -struct auto_ptr { - T* p; - - auto_ptr(T* __p) : p(__p) { } - ~auto_ptr() { delete p; } - - T* release() { - T* t = p; - p = 0; - return t; - } -}; - -void destroy (auto_ptr a) { - delete a.release(); -} - - -int main () -{ - destroy (new T); -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/cleanup1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/cleanup1.C deleted file mode 100644 index 517af15c6..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/cleanup1.C +++ /dev/null @@ -1,16 +0,0 @@ -// PR c++/13033 - -// We failed to treat the for increment expression as a full-expression, -// which broke gimplification. - -struct QDomNode { - virtual ~QDomNode(); - QDomNode nextSibling() const; - bool isNull() const; -}; - -void processNode(QDomNode n) -{ - for (; !n.isNull(); n = n.nextSibling()) - ; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/cleanup2.C b/gcc-4.8/gcc/testsuite/g++.dg/init/cleanup2.C deleted file mode 100644 index e62364be1..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/cleanup2.C +++ /dev/null @@ -1,19 +0,0 @@ -// PR c++/12526 - -// We decided that the call to strcmp has no side-effects because strcmp is -// pure, even though the first argument has side-effects. As a result, we -// stripped the CLEANUP_POINT_EXPR. Hilarity ensued. - -extern "C" int strcmp (const char *, const char *); - -struct A { - A(int); - const char *str(); - ~A(); -}; - -void printQueryI() -{ - if(!strcmp(A(1).str(), "foo")) - { } -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/cleanup3.C b/gcc-4.8/gcc/testsuite/g++.dg/init/cleanup3.C deleted file mode 100644 index da7e411ab..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/cleanup3.C +++ /dev/null @@ -1,22 +0,0 @@ -// Check that on targets with "__cxa_atexit" we use destructors, -// rather than cleanup functions, to destroy objects with static -// storage duration. - -// { dg-require-effective-target "cxa_atexit" } -// Cleanup functions generated by G++ have the "_tcf" prefix. -// { dg-final { scan-assembler-not "_tcf" } } - -struct S { - ~S(); -}; - -struct T { - S s; -}; - -S s; -T t; - -void f() { - static S s; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/complex1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/complex1.C deleted file mode 100644 index 3f88fd902..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/complex1.C +++ /dev/null @@ -1,7 +0,0 @@ -/* PR c++/21210 */ -/* { dg-do compile } */ -/* { dg-options "-O2" } */ - -typedef float __complex__ fcomplex; -fcomplex cplx = fcomplex(); - diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/const1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/const1.C deleted file mode 100644 index af4427d9a..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/const1.C +++ /dev/null @@ -1,8 +0,0 @@ -// PR c++/20073 - -template<int> struct A -{ - A(); -}; - -const A<0> x[] = { A<0>() }; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/const2.C b/gcc-4.8/gcc/testsuite/g++.dg/init/const2.C deleted file mode 100644 index 4fd631851..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/const2.C +++ /dev/null @@ -1,7 +0,0 @@ -// PR c++/19878 - -struct S { - char k; -}; -char const volatile S::* const p01 = &S::k; - diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/const3.C b/gcc-4.8/gcc/testsuite/g++.dg/init/const3.C deleted file mode 100644 index 96cb6f909..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/const3.C +++ /dev/null @@ -1,12 +0,0 @@ -// { dg-do run } - -struct S { - static const int i = 3; -}; - -const int S::i; - -int main () { - if (!S::i) - return 1; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/const4.C b/gcc-4.8/gcc/testsuite/g++.dg/init/const4.C deleted file mode 100644 index b99726b86..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/const4.C +++ /dev/null @@ -1,8 +0,0 @@ -// PR c++/27804 -// { dg-do compile } - -bool foo() -{ - const int i = X; // { dg-error "not declared" } - return i > 0; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/const5.C b/gcc-4.8/gcc/testsuite/g++.dg/init/const5.C deleted file mode 100644 index fa8d8fc23..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/const5.C +++ /dev/null @@ -1,11 +0,0 @@ -// PR c++/31449 - -class Foo {}; -class Bar : public Foo {}; -static const Foo *foo = 0; - -static Bar *bar = static_cast<const Bar*>(foo); // { dg-error "conversion" } - -void func(const Foo *foo) { - Bar *bar = static_cast<const Bar*>(foo); // { dg-error "conversion" } -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/const6.C b/gcc-4.8/gcc/testsuite/g++.dg/init/const6.C deleted file mode 100644 index e626bfeac..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/const6.C +++ /dev/null @@ -1,27 +0,0 @@ -// PR c++/36688 -// { dg-do run } -// { dg-options "-O2" } - -struct S -{ - long long a; - long long b; - long long c; -}; - -struct T -{ - S g; - long long h[12]; -}; - -static const S s = { 1, 2, 3 }; -static const T t = { s, 0 }; - -int -main () -{ - T x = t; - if (__builtin_memcmp (&x, &t, sizeof (T))) - __builtin_abort (); -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/const7.C b/gcc-4.8/gcc/testsuite/g++.dg/init/const7.C deleted file mode 100644 index 18d04625d..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/const7.C +++ /dev/null @@ -1,13 +0,0 @@ -// { dg-do compile } -// { dg-options "-fdump-tree-gimple" } - -struct s { int x, y; }; -short offsets[1] = { - ((char*) &(((struct s*)16)->y) - (char *)16), -}; - -// This ensures that we get a dump whether or not the bug is present. -void fn() { } - -// { dg-final { scan-tree-dump-not "initialization" "gimple" } } -// { dg-final { cleanup-tree-dump "gimple" } } diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/const8.C b/gcc-4.8/gcc/testsuite/g++.dg/init/const8.C deleted file mode 100644 index 4eb293d65..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/const8.C +++ /dev/null @@ -1,11 +0,0 @@ -// DR 234 - it should be OK to leave off the initializer of a const -// variable if the default constructor fully initializes the object. - -struct A { }; -const A a; - -struct B { A a; }; -const B b; - -struct C { virtual void f(); }; -const C c; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/const9.C b/gcc-4.8/gcc/testsuite/g++.dg/init/const9.C deleted file mode 100644 index ba1dfd4bc..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/const9.C +++ /dev/null @@ -1,12 +0,0 @@ -// PR c++/55893 -// { dg-final { scan-assembler-not "rodata" } } - -struct foo -{ - virtual ~foo (); -}; - -int main () -{ - static const foo tmp; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/constant1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/constant1.C deleted file mode 100644 index 386b92610..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/constant1.C +++ /dev/null @@ -1,17 +0,0 @@ -// PR c++/51554 - -typedef unsigned char uint8; -typedef unsigned int uint32; - -const uint32 XX[] = { 1, 3, 7 }; - -const uint8 V[] = { - *(((const uint8*)&XX[0]) + 0), - *(((const uint8*)&XX[0]) + 1), - *(((const uint8*)&XX[0]) + 2), - *(((const uint8*)&XX[0]) + 3), - *(((const uint8*)&XX[1]) + 0), - *(((const uint8*)&XX[1]) + 1), - *(((const uint8*)&XX[1]) + 2), - *(((const uint8*)&XX[1]) + 3), -}; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/copy1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/copy1.C deleted file mode 100644 index 91a84ae3e..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/copy1.C +++ /dev/null @@ -1,21 +0,0 @@ -// { dg-do compile } - -class A { -public: - A(){} - A( const A& a ){} -}; - -class B : public A -{ -public: - B( int& s) : s_(s){} - int& s_; -}; - -int main() -{ - int i; - B x1( i ); - B x2( x1 ); -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/copy2.C b/gcc-4.8/gcc/testsuite/g++.dg/init/copy2.C deleted file mode 100644 index 9a662d4cf..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/copy2.C +++ /dev/null @@ -1,5 +0,0 @@ -// { dg-do compile } - -struct S { S (); }; - -volatile S s[1] = { S () }; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/copy3.C b/gcc-4.8/gcc/testsuite/g++.dg/init/copy3.C deleted file mode 100644 index fa6a6ea18..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/copy3.C +++ /dev/null @@ -1,16 +0,0 @@ -// { dg-do run } -// { dg-options "-fno-elide-constructors" } - -int copies; - -struct S { - S () {} - S (const S&) { ++copies; } -}; - -S s[1] = { S () }; - -int main () { - if (copies != 1) - return 1; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/copy4.C b/gcc-4.8/gcc/testsuite/g++.dg/init/copy4.C deleted file mode 100644 index bfff68566..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/copy4.C +++ /dev/null @@ -1,19 +0,0 @@ -// PR c++/9342 -// We were failing to wrap def().user in a TARGET_EXPR, so copying it -// into the reference temp used a bitwise copy. - -struct QString -{ - QString( const QString & ); - QString &operator=( const QString & ); -}; -struct ServerSettings -{ - QString user; -}; -extern ServerSettings def(); -extern void arg( const QString& a ); -void startSession( bool b, QString s ) -{ - arg (b ? def().user : s); -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/copy5.C b/gcc-4.8/gcc/testsuite/g++.dg/init/copy5.C deleted file mode 100644 index cef5a2950..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/copy5.C +++ /dev/null @@ -1,29 +0,0 @@ -// { dg-options "-O2" } - -struct BOOL { - int nVal:1, bSet:1; - BOOL (int i) : nVal(i!=0), bSet(1) {} -}; -struct Fill { - void *d; - Fill() : d(0) {} - Fill( const Fill& ) {} -}; -struct SvMetaSlot { - Fill aGroupId; - BOOL a8; - SvMetaSlot() : - a8(1) {} - SvMetaSlot* MakeClone() const; -}; - -SvMetaSlot* SvMetaSlot::MakeClone() const { return new SvMetaSlot( *this ); } - -extern "C" void abort(void); -int main() -{ - SvMetaSlot s; SvMetaSlot s2(s); - if (s.a8.bSet != s2.a8.bSet) - abort (); - return 0; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/copy6.C b/gcc-4.8/gcc/testsuite/g++.dg/init/copy6.C deleted file mode 100644 index 136dc7830..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/copy6.C +++ /dev/null @@ -1,13 +0,0 @@ -// PR c++/11878 - -struct A -{ - virtual ~A(); -}; - -template<typename T> struct B -{ - T t; -}; - -void foo() { throw B<A>().t; } diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/ctor1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/ctor1.C deleted file mode 100644 index aeb509bfa..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/ctor1.C +++ /dev/null @@ -1,57 +0,0 @@ -// { dg-do run } - -// Copyright (C) 2002 Free Software Foundation, Inc. -// Contributed by Nathan Sidwell 12 Oct 2002 <nathan@codesourcery.com> - -// From WindRiver SPR 80797 -// We were inadvertently SAVE_EXPRing volatile arrays during delete[] - -struct A -{ - A *ptr; - static int ok; - - A () {ptr = this;} - ~A () {ok = ptr == this;} -}; -int A::ok = -1; - -struct B -{ - B *ptr; - static int ok; - - B () {ptr = this;} - ~B () {ok = ptr == this;} -}; -int B::ok = -1; - -struct C -{ - A volatile a; - B volatile b[1]; - - C (); -}; - -C::C () -{ - throw 1; -} - -int main () -{ - try - { - C c; - } - catch (...) - { - if (A::ok != 1) - return 1; - if (B::ok != 1) - return 2; - return 0; - } - return 3; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/ctor10.C b/gcc-4.8/gcc/testsuite/g++.dg/init/ctor10.C deleted file mode 100644 index 91cc25012..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/ctor10.C +++ /dev/null @@ -1,9 +0,0 @@ -// PR c++/48606 -// { dg-do compile } -// { dg-options "-fkeep-inline-functions" } - -struct S -{ - int &ref; - S() : ref() {}; // { dg-error "value-initialization of" } -}; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/ctor2.C b/gcc-4.8/gcc/testsuite/g++.dg/init/ctor2.C deleted file mode 100644 index cf426f2bf..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/ctor2.C +++ /dev/null @@ -1,34 +0,0 @@ -// { dg-do run } - -// Copyright (C) 2003 Free Software Foundation, Inc. -// Contributed by Nathan Sidwell 14 Mar 2003 <nathan@codesourcery.com> - -// PR 9629. The vtable is not set up until the base initializers have -// run. - -struct A { - static A *a; - A (); -}; -A *A::a; -A::A () {a = this;} - -struct B { - static A *a; - B (A *); -}; -A *B::a; -B::B(A *a_) {a = a_;} - -struct C : virtual public A, public B { - C(); -}; -C::C () : B(this) {} - -struct D : virtual public C {}; - -int main() -{ - new D(); - return A::a != B::a; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/ctor3.C b/gcc-4.8/gcc/testsuite/g++.dg/init/ctor3.C deleted file mode 100644 index 1678aaf2c..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/ctor3.C +++ /dev/null @@ -1,6 +0,0 @@ -// PR c++/14401 - -struct S { - S() {} // { dg-error "" } - const int i; -}; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/ctor4.C b/gcc-4.8/gcc/testsuite/g++.dg/init/ctor4.C deleted file mode 100644 index 1c92bb973..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/ctor4.C +++ /dev/null @@ -1,20 +0,0 @@ -// PR c++/17788 -// { dg-do compile } - -class foo { -public: - foo(); -}; - -class bar: public foo { // { dg-error "reference|bar::bar" } -private: - int &a; -}; - -foo::foo() { -} - -int main(int argc, char **argv) -{ - bar x; // { dg-message "synthesized|deleted" } -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/ctor5.C b/gcc-4.8/gcc/testsuite/g++.dg/init/ctor5.C deleted file mode 100644 index cc9331882..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/ctor5.C +++ /dev/null @@ -1,17 +0,0 @@ -// PR C++/21645 -// We were crashing because we forgot to update the type for -// the cloned argument for the cloned ctor. - -struct color { - ~color(); -}; -struct style { - color col; - style (color); -}; - -style::style(color c) - : col(c) -{ -} - diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/ctor6.C b/gcc-4.8/gcc/testsuite/g++.dg/init/ctor6.C deleted file mode 100644 index a25ecab1f..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/ctor6.C +++ /dev/null @@ -1,20 +0,0 @@ -// PR c++/21340 - -struct Base{}; -struct Iterator : virtual Base {}; -bool operator==(const Iterator&, const Iterator&); -struct IteratorI : Iterator {}; -struct Obj -{ - bool operator==(const Obj&) const; -}; -template <int>bool dummy() -{ - Obj lhs, rhs; - return lhs == rhs; -} -int -main(int argc, char** argv) -{ - IteratorI* it2 = new IteratorI(); -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/ctor7.C b/gcc-4.8/gcc/testsuite/g++.dg/init/ctor7.C deleted file mode 100644 index 3378a150e..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/ctor7.C +++ /dev/null @@ -1,51 +0,0 @@ -// { dg-do run } - -// Copyright (C) 2005 Free Software Foundation, Inc. -// Contributed by Nathan Sidwell 13 Oct 2005 <nathan@codesourcery.com> - -// PR 23984:ICE -// Origin: Andrew Pinski pinskia@gcc.gnu.org - -struct B -{ - virtual void Foo (); -}; - -void B::Foo () -{ -} - -struct D : virtual B -{ -}; - -struct E -{ - B *ptr; - - E (B *); -}; - -static B *ptr; - -E::E (B *ptr_) - :ptr (ptr_) -{ -} - -struct G : D, E -{ - G (); -}; - -G::G () - : E (this) -{ -} - -int main () -{ - G object; - - return object.ptr != &object; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/ctor8.C b/gcc-4.8/gcc/testsuite/g++.dg/init/ctor8.C deleted file mode 100644 index 3491f6a1d..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/ctor8.C +++ /dev/null @@ -1,9 +0,0 @@ -// PR c++/29039 - -typedef struct S { - int &r; -}; // { dg-warning "'typedef' was ignored" } - -S f () { - return S (); // { dg-error "reference" } -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/ctor9.C b/gcc-4.8/gcc/testsuite/g++.dg/init/ctor9.C deleted file mode 100644 index 02bb5700f..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/ctor9.C +++ /dev/null @@ -1,8 +0,0 @@ -// PR c++/38427 -// { dg-do compile } - -struct S -{ - int &ref; - S() : ref() {}; // { dg-error "value-initialization of" } -}; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/delete1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/delete1.C deleted file mode 100644 index 698b12771..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/delete1.C +++ /dev/null @@ -1,7 +0,0 @@ -// PR c++/19811 - -class C; // { dg-error "forward" } - -void foo(void *p) { - delete [] ((C*)p) ; // { dg-error "" } -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/delete2.C b/gcc-4.8/gcc/testsuite/g++.dg/init/delete2.C deleted file mode 100644 index 8a486beaa..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/delete2.C +++ /dev/null @@ -1,55 +0,0 @@ -// PR c++/15097 -// { dg-do run } - -typedef __SIZE_TYPE__ size_t; - -extern "C" void * malloc (size_t); -extern "C" void free (void *); -extern "C" void abort(void); - -void *saved; - -void * operator new (size_t size) -{ - void *p = malloc (size); - saved = p; - return p; -} - -void operator delete (void *p) -{ - if (p != saved) - abort (); - free (p); -} - -struct B1 -{ - virtual ~B1 () throw() {} - B1 (){} - int x; -}; -struct B2 -{ - virtual ~B2 () throw() {} - B2 (){} - int x; -}; -struct D : B1, B2 -{ - D (){} - ~D () throw() {} - int y; -}; -void f1 (D*); -void f2 (B2*); -void f3 (B1*); -int main (void) -{ - f1 (::new D); - f2 (::new D); - f3 (::new D); -} -void f1 ( D* p) { ::delete p; } -void f2 (B2* p) { ::delete p; } -void f3 (B1* p) { ::delete p; } diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/dso_handle1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/dso_handle1.C deleted file mode 100644 index 97f67cad8..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/dso_handle1.C +++ /dev/null @@ -1,11 +0,0 @@ -// PR c++/17042 -// { dg-do assemble } -/* { dg-require-weak "" } */ -// { dg-options "-fuse-cxa-atexit" } - -struct A -{ A(); ~A(); }; -A a; -extern "C" { void* __dso_handle __attribute__ ((__weak__)); } -void f() -{ __dso_handle = 0; } diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/dtor1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/dtor1.C deleted file mode 100644 index 624433897..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/dtor1.C +++ /dev/null @@ -1,43 +0,0 @@ -// { dg-do run } - -extern "C" void abort (); - -int d = 5; - -struct B -{ - int x; - B (int i) : x (i) { } - ~B () { if (d-- != x) abort (); } -}; - -struct C1 : public B { - C1 (int i) : B (i) {} -}; - -struct C2 : public B { - C2 (int i) : B (i) {} -}; - -struct D : public B { - D (int i) : B (i) {} -}; - -struct E : public B { - E (int i) : B (i) {} -}; - -struct A - : public C1, C2, virtual public D, virtual public E -{ - A () : D (0), E (1), C1 (2), C2 (3), x1(4), x2(5) {} - B x1; - B x2; -}; - - -int main () -{ - A a; - return 0; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/dtor2.C b/gcc-4.8/gcc/testsuite/g++.dg/init/dtor2.C deleted file mode 100644 index 56c7cac91..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/dtor2.C +++ /dev/null @@ -1,28 +0,0 @@ -// { dg-do run } - -extern "C" void abort (); - -struct A -{ - ~A(); -}; - -A::~A () { - abort (); -} - -struct B -{ - ~B(); -}; - -B::~B () { - if(true) return; - A a; -} - -int main() -{ - B b; - return 0; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/dtor3.C b/gcc-4.8/gcc/testsuite/g++.dg/init/dtor3.C deleted file mode 100644 index 2af1ffe46..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/dtor3.C +++ /dev/null @@ -1,21 +0,0 @@ -// PR c++/17976 -// { dg-do run } - -extern "C" void abort(); -struct A -{ - static int i; - A(){} - ~A(){i++;if(i>1)abort();} -}; - -int A::i = 0; - -A a; -extern A a; - -int main() -{ - return 0; -} - diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/dtor4.C b/gcc-4.8/gcc/testsuite/g++.dg/init/dtor4.C deleted file mode 100644 index 4bca69e4a..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/dtor4.C +++ /dev/null @@ -1,9 +0,0 @@ -// { dg-final { scan-assembler-not "_ZN1AD2Ev" } } - -struct A { }; - -int main() -{ - A a; - a.~A(); -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/elide1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/elide1.C deleted file mode 100644 index 24e81e387..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/elide1.C +++ /dev/null @@ -1,38 +0,0 @@ -// { dg-do run } - -// Test that the destructor for a temporary passed by value isn't run -// until end of full-expression, as per [class.copy]: - -// Whenever a temporary class object is copied using a copy constructor, -// and this object and the copy have the same cv-unqualified type, an -// implementation is permitted to treat the original and the copy as two -// different ways of referring to the same object and not perform a copy -// at all, even if the class copy constructor or destructor have side -// effects.... In these cases, the -// object is destroyed at the later of times when the original and the -// copy would have been destroyed without the optimization. - -// Here, the temporary would be destroyed later than the parm, so either we -// must suppress the optimization in this case or destroy value parms in the -// caller. - -int d; - -struct A { - A () { } - A (const A&) { } - ~A() { ++d; } -}; - -void f (A a) { } - -int main () -{ - int r; - f (A ()), r = d; - - if (r < d && d) - return 0; - else - return 1; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/elide2.C b/gcc-4.8/gcc/testsuite/g++.dg/init/elide2.C deleted file mode 100644 index e6d3300b5..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/elide2.C +++ /dev/null @@ -1,30 +0,0 @@ -// PR c++/8674 - -// Bug: Since B().a is an rvalue, we tried to treat it like a TARGET_EXPR -// and elide the copy. But that produces a bitwise copy, which causes us -// to abort in cp_expr_size. - -// Test that we actually run the A copy constructor when calling f(). - -// { dg-do run } - -int c; - -struct A -{ - A () { ++c; } - A (const A&) { ++c; } -}; - -struct B -{ - A a; -}; - -void f (A) { } - -int main () -{ - f (B().a); - return c < 2; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/empty1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/empty1.C deleted file mode 100644 index bba179f98..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/empty1.C +++ /dev/null @@ -1,30 +0,0 @@ -// { dg-do run } - -// Copyright (C) 2001 Free Software Foundation, Inc. -// Contributed by Nathan Sidwell 3 Sept 2001 <nathan@codesourcery.com> - -// Bug 4203. We were bit copying empty bases including the -// padding. Which clobbers whatever they overlay. - -class EmptyBase0 {}; -class EmptyBase1 : public EmptyBase0 {}; -class Base1 -{ -public: -unsigned int t_; -Base1(unsigned int t) : t_(t) {} -}; - -class PEPE : public Base1, public EmptyBase1 -{ -public: -PEPE(unsigned int t) - : Base1(t), EmptyBase1(EmptyBase1()) {} -}; - -int main() -{ - PEPE pepe(0xff); - - return pepe.t_ != 255; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/enum1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/enum1.C deleted file mode 100644 index 4876e4594..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/enum1.C +++ /dev/null @@ -1,18 +0,0 @@ -/* { dg-options "-Wno-overflow" } */ - -#ifndef __SIZEOF_INT128__ -#define UNACCEPT 0xffffffffffffffffLL -#else -#define UNACCEPT ~((unsigned __int128) 0) -#endif - -enum test { - acceptable = -1, - unacceptable = UNACCEPT -}; // { dg-error "" } - -enum test t = acceptable, u = unacceptable; - -int main() { - return 0; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/enum2.C b/gcc-4.8/gcc/testsuite/g++.dg/init/enum2.C deleted file mode 100644 index dea7dc17b..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/enum2.C +++ /dev/null @@ -1,9 +0,0 @@ -#include <limits.h> -enum test { - z = 0, - c = UINT_MAX + 1LL -} x = z; - -int main() { - return x != z; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/error1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/error1.C deleted file mode 100644 index bdd983f96..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/error1.C +++ /dev/null @@ -1,7 +0,0 @@ -// PR c++/12696 - -struct A { - static float b[10]; -} // { dg-error "after struct definition" } - -float A::b[] = {1,2,3}; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/error2.C b/gcc-4.8/gcc/testsuite/g++.dg/init/error2.C deleted file mode 100644 index 43d24f13b..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/error2.C +++ /dev/null @@ -1,15 +0,0 @@ -/* PR c++/29727 */ -/* { dg-do compile } */ - -template<int> struct A -{ - static int a[1]; -}; -template<int N> int A<N>::a[1] = { X:0 }; /* { dg-error "does not allow designated|was not declared|designated initializer for an array" } */ - -void foo() -{ - A<0>::a; -} - - diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/float1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/float1.C deleted file mode 100644 index d18ff3db0..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/float1.C +++ /dev/null @@ -1,19 +0,0 @@ -// PR c++/21089 -// { dg-do run } - -extern "C" void abort(); - -static const double a = 1.0; -struct S { - S(); -}; -static S s; -static const double b = a + 1.0; - -S::S() { - if (b < 1.9 || b > 2.1) - abort (); -} - -int main () { -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/for1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/for1.C deleted file mode 100644 index 420e85cff..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/for1.C +++ /dev/null @@ -1,30 +0,0 @@ -// PR c++/13865 -// Bug: We were destroying 'a' before executing the loop. - -// { dg-do run } - -#include <stdio.h> - -int i; -int r; - -class A -{ -public: - A() { printf("A ctor\n"); } - ~A() - { - printf("A dtor\n"); - if (i != 2) - r = 1; - } -}; - -int main(int argc, char **argv) -{ - for (A a; i < 2; ++i) { - printf("iteration %d\n", i); - } - - return r; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/for2.C b/gcc-4.8/gcc/testsuite/g++.dg/init/for2.C deleted file mode 100644 index d66fea30e..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/for2.C +++ /dev/null @@ -1,13 +0,0 @@ -// { dg-do compile } -// PR 16012: Got the scope of I incorrect in templates only. - -template<int> void foo() -{ - for (int i=0 ;;) ; - int i; -} - -void bar() -{ - foo<0>(); -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/for3.C b/gcc-4.8/gcc/testsuite/g++.dg/init/for3.C deleted file mode 100644 index c8ef3cc62..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/for3.C +++ /dev/null @@ -1,9 +0,0 @@ -// { dg-do compile } - -struct A { int i; A(); A(const A&); }; - -void bar() -{ - A a; - for ( ;; a=A() ) ; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/global1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/global1.C deleted file mode 100644 index 21f1cac06..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/global1.C +++ /dev/null @@ -1,16 +0,0 @@ -// PR c++/18416 - -class errarg { - enum { EMPTY } type; -public: - errarg(); -}; -extern errarg empty_errarg; -extern void errprint(const char *, - const errarg &arg1 = empty_errarg, - const errarg &arg2 = empty_errarg, - const errarg &arg3 = empty_errarg); -errarg::errarg() : type(EMPTY) -{ -} -errarg empty_errarg; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/goto1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/goto1.C deleted file mode 100644 index b0a0c5253..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/goto1.C +++ /dev/null @@ -1,23 +0,0 @@ -// PR c++/14724 -// { dg-do run } - -int j; - -template <class T> -struct C { - C() { ++j; } - ~C() { --j; } -}; - -int main(int, char **) { - { - int i = 0; - again: - C<int> v; - if (++i < 10) - goto again; - } - - return j; -} - diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/goto2.C b/gcc-4.8/gcc/testsuite/g++.dg/init/goto2.C deleted file mode 100644 index 3f4ecc04c..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/goto2.C +++ /dev/null @@ -1,11 +0,0 @@ -// PR c++/20721 - -bool f(); -void g(int i) -{ - if (i) goto bad; // { dg-error "from" } - bool a = f(); // { dg-error "initialization" } - bad: // { dg-error "jump" } - ; -} - diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/init-ref1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/init-ref1.C deleted file mode 100644 index d0170cd18..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/init-ref1.C +++ /dev/null @@ -1,45 +0,0 @@ -// Submitted by Erik Rozendaal <dlr@acm.org> -// Test case for GNATS bug 787. -// { dg-do run } - -#include <stdio.h> -#include <stdlib.h> - -static int calls; - -int &foo (int &arg) -{ - calls++; - arg=0; - return arg; -} - -int &identity (int &x) -{ - return x; -} - -int main() -{ - int a; - - calls = 0; - int &b = ++foo (a); - if (calls > 1) - abort (); - if (&a != &b) - abort (); - if (a != 1) - abort (); - - calls = 0; - int &c = ++identity (++foo (a)); - if (calls > 1) - abort (); - if (&a != &c) - abort (); - if (a != 2) - abort (); - - exit (0); -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/init-ref2.C b/gcc-4.8/gcc/testsuite/g++.dg/init/init-ref2.C deleted file mode 100644 index 6d9448a8e..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/init-ref2.C +++ /dev/null @@ -1,42 +0,0 @@ -// Submitted by Jason Merrill <jason_merrill@redhat.com> -// Test for proper handling of local static references. -// { dg-do run } - -int r; - -int c; -int f () -{ - // Test that we only initialize i once. - if (++c > 1) - ++r; - return 42; -} - -const int *p; -void g () -{ - static const int &i = f(); - - // Test that i points to the same place in both calls. - if (p && p != &i) - ++r; - // Test that if so, it points to static data. - if (i != 42) - ++r; - - p = &i; -} - -void h () -{ - int arr[] = { 1, 1, 1, 1, 1, 1, 1 }; - g (); -} - -int main () -{ - g (); - h (); - return r; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/init-ref3.C b/gcc-4.8/gcc/testsuite/g++.dg/init/init-ref3.C deleted file mode 100644 index e858fd74d..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/init-ref3.C +++ /dev/null @@ -1,47 +0,0 @@ -// Origin: Peter Schmid <schmid@snake.iap.physik.tu-darmstadt.de> - -// { dg-do link } - -template <class T> -class Ptr { -protected: - T * ptr; - -public: - - Ptr(void) : ptr(0) { } - Ptr(T * p) : ptr(p) { } - - ~Ptr(void) { delete ptr; } - - operator T & () { return *ptr; } -}; - -class base { -public: - base(void) { } - ~base(void) { } -}; - - -class foo : public base { -private: - foo(const foo & rv); - -public: - - foo(void) { } - ~foo(void) { } -}; - -void func2(base & b) { - // ... -} - -int main () { - Ptr<foo> f = new foo; - /* This should not result in a copy; the result of the conversion - operator should be bound directly to the reference argument to - `func2'. */ - func2(f); -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/init-ref4.C b/gcc-4.8/gcc/testsuite/g++.dg/init/init-ref4.C deleted file mode 100644 index 7cd6986ce..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/init-ref4.C +++ /dev/null @@ -1,21 +0,0 @@ -// Origin: dgregor@gcc.gnu.org -// PR c++/11384 -// foo<int>::_S_something was not being emitted (as a weak definition). - -// { dg-do run } -// { dg-require-weak "" } - -template<typename T> - struct foo - { - static const T _S_something; - }; - -template<typename T> - const T foo<T>::_S_something = T(); - -int main() -{ - const int* p = &foo<int>::_S_something; - return 0; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/inline1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/inline1.C deleted file mode 100644 index f3e323427..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/inline1.C +++ /dev/null @@ -1,14 +0,0 @@ -// PR c++/9167 -// { dg-options "-finline" } - -struct A { - ~A(); - A f(A) { } -}; - - -void f(void) -{ - A a; - a.f(a); -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/lifetime1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/lifetime1.C deleted file mode 100644 index 57f8c6217..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/lifetime1.C +++ /dev/null @@ -1,29 +0,0 @@ -// PR c++/48370 -// { dg-do run } - -extern "C" void abort(); - -int last = 4; - -struct A { - int i; - A(int i): i(i) { } - ~A() { if (i > last) abort(); last = i; } -}; - -struct D { int i; }; - -struct B: D, A { B(int i): A(i) { } }; -struct E: D, virtual A { E(int i): A(i) { } }; - -struct C -{ - const A& ar1; - const A& ar2; - const A& ar3; -}; - -int main() -{ - C c = { 1, B(2), E(3) }; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/lifetime2.C b/gcc-4.8/gcc/testsuite/g++.dg/init/lifetime2.C deleted file mode 100644 index 293bd692e..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/lifetime2.C +++ /dev/null @@ -1,23 +0,0 @@ -// PR c++/26714 -// { dg-do run } - -extern "C" void abort(); - -bool ok = false; -struct A -{ - A() { } - ~A() { if (!ok) abort(); } -}; - -struct B -{ - const A &a1; - const A &a2; - B() : a1(A()),a2(A()) { ok = true; } -}; - -int main() -{ - B b; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/lifetime3.C b/gcc-4.8/gcc/testsuite/g++.dg/init/lifetime3.C deleted file mode 100644 index d099699f8..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/lifetime3.C +++ /dev/null @@ -1,37 +0,0 @@ -// PR c++/26714 -// { dg-do run } - -extern "C" void abort(); - -bool ok = false; -struct A { - A() { } - ~A() { if (!ok) abort(); } -}; - -struct B { - static A foo() { return A(); } -}; - -B b_g; - -struct scoped_ptr { - B* operator->() const { return &b_g; } - B* get() const { return &b_g; } -}; - -B *get() { return &b_g; } - -int main() -{ - scoped_ptr f; - const A& ref1 = f->foo(); - const A& ref2 = f.get()->foo(); - const A& ref3 = get()->foo(); - const A& ref4 = B::foo(); - B *pf = f.get(); - const A& ref5 = pf->foo(); - - - ok = true; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/member1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/member1.C deleted file mode 100644 index 88f9b3134..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/member1.C +++ /dev/null @@ -1,21 +0,0 @@ -// Copyright (C) 2005 Free Software Foundation, Inc. -// Contributed by Nathan Sidwell 13 Jun 2005 <nathan@codesourcery.com> - -// Origin: Ivan Godard <igodard@pacbell.net> -// Bug 20789: ICE on invalid - -template<typename> struct A; - -template<int> struct B {}; - -template<typename T> struct C -{ - static const int i = A<T>::i; // { dg-error "incomplete" } - static const int j = i; - B<j> b; -}; - -C<int> c; - -int i = C<int>::i; -int j = C<int>::j; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/mutable1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/mutable1.C deleted file mode 100644 index af99ee0bf..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/mutable1.C +++ /dev/null @@ -1,20 +0,0 @@ -// PR c++/54026 -// { dg-final { scan-assembler-not "rodata" } } - -void non_const(int *); - -template <typename T> -struct Foo { - T x; - mutable int y; - void func() const { non_const(&y); } -}; - -struct Bar { - int x; - mutable int y; - void func() const { non_const(&y); } -}; - -const Foo<int> foo = { 1, 2 }; -const Bar bar = { 3, 4 }; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/new1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/new1.C deleted file mode 100644 index 5015d819f..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/new1.C +++ /dev/null @@ -1,19 +0,0 @@ -// Origin: asharji@uwaterloo.ca - -// { dg-do compile } - -typedef __SIZE_TYPE__ size_t; - -class bar { - int i; - public : - void * operator new ( size_t , void * storage ); -}; - -class foo { - int storage[ 5 ]; - public: - void mem ( ) { - bar *s = new ( ( void * ) & storage ) bar; - } -}; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/new10.C b/gcc-4.8/gcc/testsuite/g++.dg/init/new10.C deleted file mode 100644 index e19629bc0..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/new10.C +++ /dev/null @@ -1,8 +0,0 @@ -// PR c++/14452 -// We got confused trying to preevaluate the new-initializer. - -struct S {}; -void foo (bool b) -{ - new S(b ? S() : S()); -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/new11.C b/gcc-4.8/gcc/testsuite/g++.dg/init/new11.C deleted file mode 100644 index a13f262aa..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/new11.C +++ /dev/null @@ -1,25 +0,0 @@ -// PR c++/17670 -// { dg-do run } - -#include <cstdlib> -#include <new> - -bool abort_new; -void *operator new[](size_t bytes) -#if __cplusplus <= 199711L - throw (std::bad_alloc) -#endif -{ - if (abort_new) - abort(); - return operator new (bytes); -} - - -struct X {}; -int main () { - // Do not abort until main is running in case startup code uses - // operator new[]. - abort_new = true; - new (X); -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/new12.C b/gcc-4.8/gcc/testsuite/g++.dg/init/new12.C deleted file mode 100644 index ce2acb237..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/new12.C +++ /dev/null @@ -1,6 +0,0 @@ -// PR c++/18369 - -void breakme () -{ - int *v = new (int [5]); -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/new13.C b/gcc-4.8/gcc/testsuite/g++.dg/init/new13.C deleted file mode 100644 index 2ced6e3fe..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/new13.C +++ /dev/null @@ -1,11 +0,0 @@ -// PR c++/22508 -// ICE on invalid operator new -// Origin: Flash Sheridan <flash@pobox.com> -// { dg-do compile } - -struct A -{ - void* operator new(__SIZE_TYPE__) throw(X); // { dg-error "expected|type" } -}; - -A* p = new A; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/new14.C b/gcc-4.8/gcc/testsuite/g++.dg/init/new14.C deleted file mode 100644 index 5d13da20e..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/new14.C +++ /dev/null @@ -1,11 +0,0 @@ -// PR c++/23491 - -struct X -{ - int m; -}; - -void f(int n) -{ - const X *p = new const X[1] () ; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/new15.C b/gcc-4.8/gcc/testsuite/g++.dg/init/new15.C deleted file mode 100644 index b93b43c83..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/new15.C +++ /dev/null @@ -1,19 +0,0 @@ -// PR c++/9782 - -extern "C" void printf(const char*, ...); - -template <int> -struct A { - A() {printf("A::A()\n");} -}; - - -struct B { - B() {printf("B::B()\n");} -}; - - -int main () { - new A<0>[1][1]; - new B [1][1]; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/new16.C b/gcc-4.8/gcc/testsuite/g++.dg/init/new16.C deleted file mode 100644 index c49f13f83..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/new16.C +++ /dev/null @@ -1,38 +0,0 @@ -// { dg-do run } -// { dg-options "-O2 -fstrict-aliasing" } - -// Test that we don't let TBAA reorder an assignment across a -// placement new. -// See PR 29286. - -typedef __SIZE_TYPE__ size_t; - -inline void* operator new(size_t, void* __p) throw() { return __p; } - -void __attribute__((noinline)) bar() {} - -long __attribute__((noinline)) foo(double *p, int n) -{ - long *f; - for (int i=0; i<n; ++i) - { - int *l = (int *)p; - *l = 0; - f = new (p) long; - *f = -1; - } - bar (); - return *f; -} - -extern "C" void abort(void); -int main() -{ - union { - int i; - long l; - } u; - if (foo((double *)&u, 1) != -1) - abort (); - return 0; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/new17.C b/gcc-4.8/gcc/testsuite/g++.dg/init/new17.C deleted file mode 100644 index 42b9f077a..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/new17.C +++ /dev/null @@ -1,37 +0,0 @@ -// { dg-do compile } -// { dg-options "-O2 -fstrict-aliasing -fdump-tree-optimized" } - -// Test that placement new does not introduce an unnecessary memory -// barrier. -// See PR 29286. - -typedef __SIZE_TYPE__ size_t; - -inline void* operator new(size_t, void* __p) throw() { return __p; } - -template <class T, int D> -class Vector -{ -public: - Vector() - { - for (int i = 0; i < D; ++i) - new (&x_m[i]) T(); - } - T& operator[](int i) { return x_m[i]; } - -private: - T x_m[D]; -}; - -void foo(Vector<float, 3> *m) -{ - Vector<float, 3> v; - v[0] = 1.0; - v[1] = 2.0; - v[3] = 3.0; - *m = v; -} - -// { dg-final { scan-tree-dump-times "= 0\.0" 1 "optimized" } } -// { dg-final { cleanup-tree-dump "optimized" } } diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/new18.C b/gcc-4.8/gcc/testsuite/g++.dg/init/new18.C deleted file mode 100644 index 45f6e7a09..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/new18.C +++ /dev/null @@ -1,45 +0,0 @@ -// { dg-do compile } -// { dg-options "-O2 -fstrict-aliasing" } - -// This caused an ICE during placement new. - -namespace Pooma { - typedef int Context_t; - namespace Arch { - } - inline Context_t context() { - } - inline int contexts() { - } - } -template<class DomT, class T, class NewDom1T> struct DomainTraitsScalar { - }; -template<class T> struct DomainTraits : public DomainTraitsScalar<T, T, T> { - }; -template<int Dim> class Grid; -template<class DT> class DomainBase { - }; -template<int Dim, class DT> class Domain : public DomainBase<DT> { - }; -#include <vector> -template<> class Grid<1> : public Domain<1, DomainTraits<Grid<1> > > { - }; -namespace Pooma { - class PatchSizeSyncer { - typedef Grid<1> Grid_t; - PatchSizeSyncer(int contextKey, Grid_t &localGrid); - int myContext_m; - int numContexts_m; - int localKey_m; - Grid_t localGrid_m; - typedef std::pair<int,Grid_t *> Elem_t; - std::vector<Elem_t> gridList_m; - }; - } -namespace Pooma { - PatchSizeSyncer::PatchSizeSyncer(int contextKey, Grid_t &localGrid) : -myContext_m(Pooma::context()), numContexts_m(Pooma::contexts()), -localKey_m(contextKey), localGrid_m(localGrid) { - if (myContext_m == 0) gridList_m.reserve(numContexts_m); - } - } diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/new19.C b/gcc-4.8/gcc/testsuite/g++.dg/init/new19.C deleted file mode 100644 index a25be7da7..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/new19.C +++ /dev/null @@ -1,73 +0,0 @@ -// { dg-do compile } -// { dg-options "-O2 -fstrict-aliasing -fdump-tree-pre-details" } - -// Make sure we hoist invariants out of the loop even in the presence -// of placement new. This is similar to code in tramp3d. - -typedef __SIZE_TYPE__ size_t; - -inline void* operator new(size_t, void* __p) throw() { return __p; } - -template <class T, int D> -class Vector -{ -public: - Vector() - { - for (int i = 0; i < D; ++i) - new (&x_m[i]) T(); - } - T& operator[](int i) { return x_m[i]; } - -private: - T x_m[D]; -}; - -struct sia -{ - int ai[3]; -}; - -struct s -{ - struct si - { - sia* p; - } asi[3]; - float* pd; -}; - -class c -{ - int foo(int, int, int); - s sm; -}; - - -extern void bar(Vector<float, 3>*, int); -int c::foo(int f1, int f2, int f3) -{ - float sum = 0; - for (int i = 0; i < 3; ++i) - { - for (int j = 0; j < 3; ++j) - { - Vector<float, 3> v; - v[0] = 1.0; - v[1] = 2.0; - v[2] = 3.0; - for (int k = 0; k < 3; ++k) - { - float f = (f1 * this->sm.asi[0].p->ai[0] - + f2 * this->sm.asi[1].p->ai[0] - + f3 * this->sm.asi[2].p->ai[0]); - sum += f * v[k]; - } - *this->sm.pd = sum; - } - } - return sum; -} - -// { dg-final { scan-tree-dump "Replaced.*->ai\\\[0\\\]" "pre" } } -// { dg-final { cleanup-tree-dump "pre" } } diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/new2.C b/gcc-4.8/gcc/testsuite/g++.dg/init/new2.C deleted file mode 100644 index 8b207d0a0..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/new2.C +++ /dev/null @@ -1,17 +0,0 @@ -// Origin: asharji@uwaterloo.ca - -// { dg-do compile } - -class bar { - public : - bar() { } - void * operator new ( __SIZE_TYPE__ , void * storage ) - { return (void *)1;} -}; - -class foo { - public: - void mem ( ) { - new ( 0 ) bar; - } -}; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/new20.C b/gcc-4.8/gcc/testsuite/g++.dg/init/new20.C deleted file mode 100644 index 705c1be48..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/new20.C +++ /dev/null @@ -1,6 +0,0 @@ -// PR c++/31743
-typedef int A[];
-A* p = new A; // { dg-error "invalid use of array with unspecified bounds" }
-A* q = new (A); // { dg-error "invalid use of array with unspecified bounds" }
-
-
diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/new21.C b/gcc-4.8/gcc/testsuite/g++.dg/init/new21.C deleted file mode 100644 index 5797ea981..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/new21.C +++ /dev/null @@ -1,10 +0,0 @@ -// PR c++/32251 - -struct A { - A(); - void operator delete(void *, ...); -}; - -void foo () { - new A; // { dg-warning "deallocation" } -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/new22.C b/gcc-4.8/gcc/testsuite/g++.dg/init/new22.C deleted file mode 100644 index 2ce51ff28..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/new22.C +++ /dev/null @@ -1,3 +0,0 @@ -// PR c++/29001 - -void* operator new (__SIZE_TYPE__) { return; } // { dg-error "with no value" } diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/new23.C b/gcc-4.8/gcc/testsuite/g++.dg/init/new23.C deleted file mode 100644 index cedd898b3..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/new23.C +++ /dev/null @@ -1,20 +0,0 @@ -// PR c++/33025 -// { dg-do run } -// { dg-options "-O2" } - -typedef __SIZE_TYPE__ size_t; -inline void *operator new (size_t, void *p) throw () { return p; } -extern "C" void abort (); - -int -main() -{ - const unsigned num = 10; - unsigned *data = new unsigned[2 * num]; - unsigned *ptr = data; - for (unsigned i = 0; i < 2 * num; ++i) - (i % 2 == 0) ? new (ptr) unsigned (2) : new (ptr++) unsigned (1); - if (ptr - data != num) - abort (); - return 0; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/new24.C b/gcc-4.8/gcc/testsuite/g++.dg/init/new24.C deleted file mode 100644 index 6f5613be7..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/new24.C +++ /dev/null @@ -1,18 +0,0 @@ -// PR c++/33025 -// { dg-do compile } -// { dg-options "-O2" } - -typedef __SIZE_TYPE__ size_t; -inline void *operator new (size_t, void *p) throw () { return p; } -extern "C" void abort (); - -int -main() -{ - const unsigned num = 10; - unsigned *data = new unsigned[num]; - unsigned *ptr = new (data) unsigned (num); - static unsigned data2[10]; - unsigned *ptr2 = new (&data2[0]) unsigned (10); - return 0; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/new25.C b/gcc-4.8/gcc/testsuite/g++.dg/init/new25.C deleted file mode 100644 index 2d447f8f2..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/new25.C +++ /dev/null @@ -1,29 +0,0 @@ -// PR c++/31988 -#include <new> - -class C -{ -public: - void* operator new(std::size_t = 32) throw (std::bad_alloc); // { dg-error "first parameter" } - void* operator new[](std::size_t = 32) throw (std::bad_alloc); // { dg-error "first parameter" } - void* operator new(std::size_t = 32, const std::nothrow_t&) throw(); // { dg-error "first parameter" } - void* operator new[](std::size_t = 32, const std::nothrow_t&) throw(); // { dg-error "first parameter" } -}; - -class D -{ -public: - void* operator new(std::size_t, - const std::nothrow_t& = std::nothrow_t()) throw(); - void* operator new[](std::size_t, - const std::nothrow_t& = std::nothrow_t()) throw(); -}; - -class E -{ -public: - void* operator new(std::size_t = 0, - const std::nothrow_t& = std::nothrow_t()) throw(); // { dg-error "first parameter" } - void* operator new[](std::size_t = 0, - const std::nothrow_t& = std::nothrow_t()) throw(); // { dg-error "first parameter" } -}; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/new26.C b/gcc-4.8/gcc/testsuite/g++.dg/init/new26.C deleted file mode 100644 index 541de3058..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/new26.C +++ /dev/null @@ -1,44 +0,0 @@ -// PR c++/33407 -// { dg-do run } -// { dg-options "-O2 -fstrict-aliasing" } - -extern "C" void * malloc(__SIZE_TYPE__); -extern "C" void abort(void); - -void *p; -void __attribute__((noinline)) init(void) -{ - p = malloc(4); -} - -inline void *operator new(__SIZE_TYPE__) -{ - return p; -} - -inline void operator delete (void*) {} - -int * __attribute__((noinline)) doit(int n) -{ - float *q; - int *r; - - for (int i=0; i<n; ++i) - { - q = new float; - *q = 1.0; - delete q; - r = new int; - *r = 1; - } - - return r; -} - -int main() -{ - init(); - if (*doit(1) != 1) - abort(); - return 0; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/new27.C b/gcc-4.8/gcc/testsuite/g++.dg/init/new27.C deleted file mode 100644 index a6271c930..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/new27.C +++ /dev/null @@ -1,40 +0,0 @@ -// PR c++/34862 -// { dg-do run } -// { dg-options "-O2" } - -typedef __SIZE_TYPE__ size_t; -extern "C" void abort (); - -struct T -{ - void *operator new (size_t, char *&); - T () { i[0] = 1; i[1] = 2; } - int i[2]; -}; - -void * -T::operator new (size_t size, char *&p) -{ - void *o = (void *) p; - p += size; - return o; -} - -T * -f (char *&x) -{ - return new (x) T (); -} - -char buf[10 * sizeof (T)] __attribute__((aligned (__alignof (T)))); - -int -main () -{ - char *p = buf; - T *t = f (p); - if (p != buf + sizeof (T)) - abort (); - if (t->i[0] != 1 || t->i[1] != 2) - abort (); -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/new28.C b/gcc-4.8/gcc/testsuite/g++.dg/init/new28.C deleted file mode 100644 index 41a78be2a..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/new28.C +++ /dev/null @@ -1,27 +0,0 @@ -// PR c++/43951 -// { dg-do run } -// { dg-options "-O2" } - -extern "C" void abort (); - -class Foo -{ -public: - Foo () : xxx (1) {}; - const int xxx; -}; -Foo * -bar () -{ - return new Foo; -} - -int -main () -{ - Foo *p = bar (); - - if (p->xxx != 1) - abort (); - return 0; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/new29.C b/gcc-4.8/gcc/testsuite/g++.dg/init/new29.C deleted file mode 100644 index 1ca8ca06a..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/new29.C +++ /dev/null @@ -1,33 +0,0 @@ -// PR c++/43951 -// { dg-do run } -// { dg-options "-O2" } - -extern "C" void abort (); - -class Foo -{ -public: - Foo () : xxx (1) {}; - const int xxx; -}; - -struct Foo2 -{ - Foo foo; -}; - -Foo2 * -bar () -{ - return new Foo2; -} - -int -main () -{ - Foo2 *p = bar (); - - if (p->foo.xxx != 1) - abort (); - return 0; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/new3.C b/gcc-4.8/gcc/testsuite/g++.dg/init/new3.C deleted file mode 100644 index d0eab73cf..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/new3.C +++ /dev/null @@ -1,8 +0,0 @@ -// Test that new-expressions at file scope work properly. - -struct A { static char* p; }; - -int i = 1; -char* A::p = new char[i]; - -void foo() {} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/new30.C b/gcc-4.8/gcc/testsuite/g++.dg/init/new30.C deleted file mode 100644 index 24582d8fb..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/new30.C +++ /dev/null @@ -1,15 +0,0 @@ -// PR c++/40975 - -struct data_type -{ - // constructor required to reproduce compiler bug - data_type() {} -}; - -struct ptr_type -{ - // array new as default argument required to reproduce compiler bug - ptr_type (data_type* ptr = new data_type[1]) { delete[] ptr; } -}; - -ptr_type obj; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/new31.C b/gcc-4.8/gcc/testsuite/g++.dg/init/new31.C deleted file mode 100644 index 33c94aaab..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/new31.C +++ /dev/null @@ -1,18 +0,0 @@ -// PR c++/48834 -// { dg-options -Wuninitialized } -// { dg-do run } - -struct S -{ - S ():i (0) - { - } - int i; -}; - -int -main () -{ - S *s = new S[2]; - return 0; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/new32.C b/gcc-4.8/gcc/testsuite/g++.dg/init/new32.C deleted file mode 100644 index f82785749..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/new32.C +++ /dev/null @@ -1,16 +0,0 @@ -// PR c++/48873 - -#include <new> - -struct D { -private: - ~D(); -}; - -template<class T> -T& create(); - -void f() -{ - D* dp = new (((void*) 0)) D(create<D>()); // # -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/new33.C b/gcc-4.8/gcc/testsuite/g++.dg/init/new33.C deleted file mode 100644 index 18da79e7e..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/new33.C +++ /dev/null @@ -1,11 +0,0 @@ -// PR c++/53356 -// { dg-do compile } - -struct A {}; -struct B { operator const A & () const; }; -struct C { operator const A & () const; C (); }; -struct D { operator const A & () const; D (); ~D (); }; - -A *foo () { return new A (B ()); } -A *bar () { return new A (C ()); } -A *baz () { return new A (D ()); } diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/new34.C b/gcc-4.8/gcc/testsuite/g++.dg/init/new34.C deleted file mode 100644 index 9e67eb341..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/new34.C +++ /dev/null @@ -1,11 +0,0 @@ -// PR c++/53356 - -struct A { A(); ~A(); }; - -struct B { - operator const A () const; -}; - -A* cause_ICE() { - return new A((A(),A())); -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/new35.C b/gcc-4.8/gcc/testsuite/g++.dg/init/new35.C deleted file mode 100644 index c5f79aa2f..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/new35.C +++ /dev/null @@ -1,13 +0,0 @@ -// { dg-do compile } -// { dg-options "" } - -int -main (int argc, char **argv) -{ - typedef char A[argc]; - new A; // { dg-warning "variable-length array types|not a constant" } - new A[0]; // { dg-error "must be constant|not a constant" } - new A[5]; // { dg-error "must be constant|not a constant" } - new (A[0]); // { dg-error "must be constant|not a constant" } - new (A[5]); // { dg-error "must be constant|not a constant" } -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/new36.C b/gcc-4.8/gcc/testsuite/g++.dg/init/new36.C deleted file mode 100644 index c9b7af2d8..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/new36.C +++ /dev/null @@ -1,153 +0,0 @@ -// Testcase for invocation of constructors/destructors in operator new[]. -// { dg-do run } - -#include <stdlib.h> - -struct E { - virtual ~E() { } -}; - -struct S { - S(); - ~S(); -}; - -static int count; -static int max; -static int throwAfter = -1; -static S *pS; - -S::S() -{ - if (throwAfter >= 0 && count >= throwAfter) - throw E(); - if (pS) - { - ++pS; - if (this != pS) - abort(); - } - else - pS = this; - ++count; - max = count; -} - -S::~S() -{ - if (count > 1) - { - if (this != pS) - abort(); - --pS; - } - else - pS = 0; - --count; -} - -void __attribute__((noinline)) doit(int n) -{ - { - S *s = new S[n]; - if (count != n) - abort(); - if (pS != s + n - 1) - abort(); - delete [] s; - if (count != 0) - abort(); - } - throwAfter = 2; - max = 0; - try - { - new S[n]; - abort(); - } - catch (E) - { - if (max != 2) - abort(); - } - throwAfter = -1; -} - -int main() -{ - { - S s; - if (count != 1) - abort(); - if (pS != &s) - abort(); - } - if (count != 0) - abort(); - { - S *s = new S; - if (count != 1) - abort(); - if (pS != s) - abort(); - delete s; - if (count != 0) - abort(); - } - { - S *s = new S[1]; - if (count != 1) - abort(); - if (pS != s) - abort(); - delete [] s; - if (count != 0) - abort(); - } - { - S *s = new S[5]; - if (count != 5) - abort(); - if (pS != s + 4) - abort(); - delete [] s; - if (count != 0) - abort(); - } - typedef S A[5]; - { - S *s = new A; - if (count != 5) - abort(); - if (pS != s + 4) - abort(); - delete [] s; - if (count != 0) - abort(); - } - throwAfter = 2; - max = 0; - try - { - new S[5]; - abort(); - } - catch (E) - { - if (max != 2) - abort(); - } - max = 0; - try - { - new A; - abort(); - } - catch (E) - { - if (max != 2) - abort(); - } - throwAfter = -1; - doit(5); -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/new37.C b/gcc-4.8/gcc/testsuite/g++.dg/init/new37.C deleted file mode 100644 index 82ca18b7a..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/new37.C +++ /dev/null @@ -1,63 +0,0 @@ -// { dg-do compile } - -void -nonconst(int n) -{ - new (long[n][n]); // { dg-error "variable length|array size|not a constant" } - new long[n][n]; // { dg-error "variable length|array size|not a constant" } -} - -template <typename T> -void * -callnew(int n) -{ - return new long[n][T::n]; -} - -template <typename T> -void * -callnew_fail_1(int n) -{ - return new long[n][T::n]; // { dg-error "variable length|array size|usable in a constant" } -} - -template <typename T> -void * -callnew_fail_2() -{ - return new long[T::n]; // { dg-error "size in array new" } -} - -template <typename T> -void * -callnew_fail_3() -{ - return new T[2][T::n]; // { dg-error "size of array has non-integral type" } -} - -struct T1 { - static int n; -}; - -struct T2 { - static const double n = 2; // { dg-error "non-integral type" } -}; - -struct T3 { - static const int n = 2; -}; - -struct T4 { - enum { n = 3 }; -}; - -void -test_callnew(int n) -{ - new long[0.2]; // { dg-error "integral or enumeration type" } - callnew_fail_1<T1>(n); - callnew_fail_2<T2>(); - callnew_fail_3<T2>(); - callnew<T3>(n); - callnew<T4>(n); -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/new38.C b/gcc-4.8/gcc/testsuite/g++.dg/init/new38.C deleted file mode 100644 index 1672f229d..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/new38.C +++ /dev/null @@ -1,54 +0,0 @@ -// { dg-do compile } - -void -large_array_char(int n) -{ - new char[n] - [1ULL << (sizeof(void *) * 4)] - [1ULL << (sizeof(void *) * 4)]; // { dg-error "size of array" } -} - -template <typename T> -void -large_array_char_template(int n) -{ - new char[n] - [1ULL << (sizeof(void *) * 4)] - [1ULL << (sizeof(void *) * 4)]; // { dg-error "size of array" } -} - - -template <typename T> -void -large_array_template1(int n) -{ - new T[n] // { dg-error "size of array is too large" } - [(1ULL << (sizeof(void *) * 4)) / sizeof(T)] - [1ULL << (sizeof(void *) * 4)]; -} - -template <typename T> -void -large_array_template2(int n) -{ - new T[n] // { dg-error "size of array is too large" } - [(1ULL << (sizeof(void *) * 4)) / sizeof(T)] - [1ULL << (sizeof(void *) * 4)]; -} - -template <typename T> -void -large_array_template3(int n) -{ - new T[n] // { dg-error "size of array is too large" } - [(1ULL << (sizeof(void *) * 4)) / sizeof(T)] - [1ULL << (sizeof(void *) * 4)]; -} - -void -call_large_array_template(int n) -{ - large_array_template1<char>(n); - large_array_template2<int>(n); - large_array_template3<double>(n); -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/new39.C b/gcc-4.8/gcc/testsuite/g++.dg/init/new39.C deleted file mode 100644 index f274ebb7b..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/new39.C +++ /dev/null @@ -1,68 +0,0 @@ -// Testcase for overflow handling in operator new[]. -// { dg-do run } - -#include <stdlib.h> -#include <stdexcept> - -struct without_new { - char bar[256]; -}; - -struct with_new { - char bar[256]; - void *operator new[] (size_t sz) - { - if (sz != -1) - abort (); - throw std::bad_alloc(); - } -}; - -template <typename T> -inline void -test (size_t s) -{ - try { - new T[s]; - abort (); - } catch (std::bad_alloc &) { - } -} - -template <typename T> -void -test_noopt (size_t s) __attribute__((noinline)); - -template <typename T> -void -test_noopt (size_t s) -{ - __asm__ (""); - test<T> (s); -} - -template <typename T> -void -all_tests () -{ - test<T>(-1); - test<T>(size_t(-1) / sizeof (T) + 1); - test<T>(size_t(-1) / sizeof (T) + 2); - test_noopt<T>(-1); - test_noopt<T>(size_t(-1) / sizeof (T) + 1); - test_noopt<T>(size_t(-1) / sizeof (T) + 2); -} - -int -main () -{ - try { - ::operator new(size_t(-1)); - abort (); - } catch (std::bad_alloc &) { - } - all_tests<without_new> (); - all_tests<with_new> (); - return 0; -} - diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/new4.C b/gcc-4.8/gcc/testsuite/g++.dg/init/new4.C deleted file mode 100644 index ab2fe3131..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/new4.C +++ /dev/null @@ -1 +0,0 @@ -int *x = new int [2] (); diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/new40.C b/gcc-4.8/gcc/testsuite/g++.dg/init/new40.C deleted file mode 100644 index 4b283a445..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/new40.C +++ /dev/null @@ -1,112 +0,0 @@ -// Testcase for overflow handling in operator new[]. -// Optimization of unnecessary overflow checks. -// { dg-do run } - -#include <assert.h> -#include <stdlib.h> -#include <stdexcept> - -static size_t magic_allocation_size - = 1 + (size_t (1) << (sizeof (size_t) * 8 - 1)); - -struct exc : std::bad_alloc { -}; - -static size_t expected_size; - -struct pod_with_new { - char ch; - void *operator new[] (size_t sz) - { - if (sz != expected_size) - abort (); - throw exc (); - } -}; - -struct with_new { - char ch; - with_new () { } - ~with_new () { } - void *operator new[] (size_t sz) - { - if (sz != size_t (-1)) - abort (); - throw exc (); - } -}; - -struct non_pod { - char ch; - non_pod () { } - ~non_pod () { } -}; - -void * -operator new (size_t sz) _GLIBCXX_THROW (std::bad_alloc) -{ - if (sz != expected_size) - abort (); - throw exc (); -} - -int -main () -{ - if (sizeof (pod_with_new) == 1) - expected_size = magic_allocation_size; - else - expected_size = -1; - - try { - new pod_with_new[magic_allocation_size]; - abort (); - } catch (exc &) { - } - - if (sizeof (with_new) == 1) - expected_size = magic_allocation_size; - else - expected_size = -1; - - try { - new with_new[magic_allocation_size]; - abort (); - } catch (exc &) { - } - - expected_size = magic_allocation_size; - try { - new char[magic_allocation_size]; - abort (); - } catch (exc &) { - } - - expected_size = -1; - - try { - new pod_with_new[magic_allocation_size][2]; - abort (); - } catch (exc &) { - } - - try { - new with_new[magic_allocation_size][2]; - abort (); - } catch (exc &) { - } - - try { - new char[magic_allocation_size][2]; - abort (); - } catch (exc &) { - } - - try { - new non_pod[magic_allocation_size]; - abort (); - } catch (exc &) { - } - - return 0; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/new41.C b/gcc-4.8/gcc/testsuite/g++.dg/init/new41.C deleted file mode 100644 index 0559b1dac..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/new41.C +++ /dev/null @@ -1,22 +0,0 @@ -// PR c++/55446 -// { dg-do run } - -struct S -{ - S() { } -}; - -int n = 1; - -void* operator new[](__SIZE_TYPE__) -{ - n = -1; - return &n; -} - -int main() -{ - new S[0]; - if (n != -1) - __builtin_abort(); -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/new5.C b/gcc-4.8/gcc/testsuite/g++.dg/init/new5.C deleted file mode 100644 index 0d99f93c6..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/new5.C +++ /dev/null @@ -1,18 +0,0 @@ -// { dg-do run } - -#include <new> - -void * operator new[](std::size_t, std::nothrow_t const &) throw() -{ return 0; } - -struct X { - struct Inner { ~Inner() {} }; - - X() { - Inner * ic = new (std::nothrow) Inner[1]; // SegFault here - } -}; - -int main() { - X table; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/new6.C b/gcc-4.8/gcc/testsuite/g++.dg/init/new6.C deleted file mode 100644 index ecbafd13e..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/new6.C +++ /dev/null @@ -1,8 +0,0 @@ -// { dg-options "-fkeep-inline-functions" } - -struct B1 { virtual ~B1(); }; -struct B2 { virtual ~B2(); }; -struct D : B1, B2 {}; -struct X : D { X (); }; - -X::X () { new int; } diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/new7.C b/gcc-4.8/gcc/testsuite/g++.dg/init/new7.C deleted file mode 100644 index e07d22617..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/new7.C +++ /dev/null @@ -1,7 +0,0 @@ -template <class T> - struct Foo - {}; - - template <class T> - void Foo<T>::NON_EXISTENT(int* val = new int()) {} // { dg-error "" } - diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/new8.C b/gcc-4.8/gcc/testsuite/g++.dg/init/new8.C deleted file mode 100644 index 1fefc366b..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/new8.C +++ /dev/null @@ -1,17 +0,0 @@ -typedef __SIZE_TYPE__ size_t; - -enum Refcount_Type { - NO_REFCOUNT -}; - -struct d0_Unknown_Object -{ - void* operator new (size_t, size_t, Refcount_Type type); - void operator delete (void*, size_t, Refcount_Type); - d0_Unknown_Object (); -}; - -void make () -{ - new (10, NO_REFCOUNT) d0_Unknown_Object; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/new9.C b/gcc-4.8/gcc/testsuite/g++.dg/init/new9.C deleted file mode 100644 index 6729d76fd..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/new9.C +++ /dev/null @@ -1,22 +0,0 @@ -// PR 12337 - -class A {}; - -template <typename T> -class X : public A { -public: - X(T&); -}; - -class B { -public: - bool foo(A*); - template <typename T> - bool foo(T& t) { return foo(new X<T>(t)); } -}; - -int main() -{ - B x, y; - x.foo(y); -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/null1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/null1.C deleted file mode 100644 index a76ae2a25..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/null1.C +++ /dev/null @@ -1,7 +0,0 @@ -// PR c++/16489 -// { dg-do compile { target c++98 } } - -const int NULL = 0; -int main() { - double* p = NULL; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/placement1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/placement1.C deleted file mode 100644 index 382fae8ed..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/placement1.C +++ /dev/null @@ -1,10 +0,0 @@ -// PR c++/11266 -// We were expanding the same TARGET_EXPR twice, for placement new and -// delete. - -void* operator new (__SIZE_TYPE__, void*) throw(); -void operator delete (void*, void*) throw(); - -struct A { A(); }; - -void foo() { new(new A)A; } diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/placement2.C b/gcc-4.8/gcc/testsuite/g++.dg/init/placement2.C deleted file mode 100644 index 7a9d6d082..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/placement2.C +++ /dev/null @@ -1,22 +0,0 @@ -// Bug: We were calling f() twice, for both the placement new and placement -// delete calls. - -// { dg-do run } - -void* operator new (__SIZE_TYPE__ sz, void*) { return operator new (sz); } -void operator delete (void* p, void*) { operator delete (p); } - -struct A { A() { throw 1; } }; - -int c; -void *f() { ++c; return 0; } - -int main() -{ - try - { - new (f()) A; - } - catch (...) {} - return c != 1; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/placement3.C b/gcc-4.8/gcc/testsuite/g++.dg/init/placement3.C deleted file mode 100644 index 919e2a816..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/placement3.C +++ /dev/null @@ -1,30 +0,0 @@ -typedef __SIZE_TYPE__ size_t; -extern "C" void *malloc (size_t); - -int i; - -struct S { - S(int) { - throw 3; - } - - void *operator new(size_t s, int) { - ++i; - return malloc (s); - } - - void operator delete(void *, int) { - --i; - } - - void operator delete(void *, int, int) ; -}; - -int main () { - try { - new (7) S (12); - } catch (int) { - if (i) - return 1; - } -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/placement4.C b/gcc-4.8/gcc/testsuite/g++.dg/init/placement4.C deleted file mode 100644 index 3cfe27d63..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/placement4.C +++ /dev/null @@ -1,32 +0,0 @@ -// PR c++/34158 - -typedef __SIZE_TYPE__ size_t; -extern "C" void* malloc (size_t); -extern "C" void free (void *); - -template <class T> class undef; - -struct A { - A() { throw 1; } -}; - -template<typename T> class Pool { }; - -void *operator new(size_t size,Pool<int>& pool) -{ - return malloc(size); -} - -template<typename T> -void operator delete(void *p,Pool<T>& pool) -{ - undef<T> t; // { dg-error "incomplete" } - free(p); -} - -int main () -{ - Pool<int> pool; - new (pool) A(); // { dg-message "required" } - return 0; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/placement5.C b/gcc-4.8/gcc/testsuite/g++.dg/init/placement5.C deleted file mode 100644 index 1d540daca..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/placement5.C +++ /dev/null @@ -1,32 +0,0 @@ -// 5.3.4/19: If the lookup finds the two-parameter form of a usual -// deallocation function (3.7.4.2) and that function, considered as a -// placement deallocation function, would have been selected as a match for -// the allocation function, the program is ill-formed. - -// But we should only complain about using op delete (void *, size_t) for -// placement delete if it would also be selected for normal delete, not if -// there's also an op delete (void *). - -typedef __SIZE_TYPE__ size_t; - -struct A -{ - A(); - void* operator new (size_t, size_t); - void operator delete (void *, size_t); // { dg-error "non-placement" } -}; - -struct B -{ - B(); - void * operator new (size_t); - void * operator new (size_t, size_t); - void operator delete (void *); - void operator delete (void *, size_t); -}; - -int main() -{ - A* ap = new (24) A; // { dg-error "placement delete" } - B* bp = new (24) B; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/pm1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/pm1.C deleted file mode 100644 index c0aed2410..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/pm1.C +++ /dev/null @@ -1,88 +0,0 @@ -// { dg-do run } - -// Copyright 2002 Free Software Foundation -// Contributed by Jason Merrill and Alexandre Oliva - -// Test zero-initialization of pointers to data members. Their NULL -// value is represented with -1, not 0. - -#include <stdlib.h> - -struct A -{ - int i; -}; - -int A::* gp; - -typedef int A::* iApm; - -iApm gp_zero = 0; -iApm gp_dflt = iApm(); -iApm gp_cast = (iApm)0; -iApm gp_func = iApm(0); -iApm gp_stat = static_cast<iApm>(0); - -struct AD : A {}; - -int AD::* gp_impl = gp_dflt; -int AD::* gp_down = static_cast<int AD::*>(gp_stat); - -int A::* ga[2]; - -// Test use in a simple struct. -struct B -{ - int A::* mp; -}; - -B gb; - -struct D; -struct C; -extern D gd; -extern C gc; - -// Test that in a class with a constructor, the pointer to member is -// zero-initialized until the constructor is run. -struct C -{ - int A::* mp; - inline C (); -}; - -int fail; -struct D -{ - int count; - inline D (); -}; - -C::C() : mp (&A::i) { gd.count++; } - -D::D() : count (0) -{ - if (gc.mp != 0) - abort (); -} - -// The D must come first for this to work. -D gd; -C gc; - -int main() -{ - static int A::* slp; - static int A::* sla[2]; - static B slb; - - if (gp != 0 || slp != 0 - || gp_zero != 0 || gp_dflt != 0 || gp_cast != 0 - || gp_func != 0 || gp_stat != 0 - || gp_impl != 0 || gp_down != 0) - abort (); - if (ga[1] != 0 || sla[1] != 0) - abort (); - if (gb.mp != 0 || slb.mp != 0) - abort (); -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/pm2.C b/gcc-4.8/gcc/testsuite/g++.dg/init/pm2.C deleted file mode 100644 index 35b9b32fe..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/pm2.C +++ /dev/null @@ -1,7 +0,0 @@ -struct S { - S (); - int S::* sp; - int i; -}; - -S s[2] = {}; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/pm3.C b/gcc-4.8/gcc/testsuite/g++.dg/init/pm3.C deleted file mode 100644 index 980790db3..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/pm3.C +++ /dev/null @@ -1,10 +0,0 @@ -// PR c++/12218 -// { dg-do run } - -struct C { int i, j; }; -typedef int C::*mPtr; -extern const mPtr should_be_0 = &C::i; -extern const mPtr should_be_4 = &C::j; - -int main () { -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/pmf1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/pmf1.C deleted file mode 100644 index 93c67bdd7..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/pmf1.C +++ /dev/null @@ -1,17 +0,0 @@ -// PR c++/14089 -// { dg-do compile } -// -// C++ front end generated assignment between types that were not -// compatible in any sense visible to the optimizers. - -struct pair { - typedef void (pair::*fp)(); - int first; - pair::fp second; - pair(const int& a, const pair::fp& b) : first(a), second(b) {} - void f(const int& a, const pair::fp& b) { first = a; second = b; } -}; - -void op() { - pair(5, pair::fp()); -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/pr20039.C b/gcc-4.8/gcc/testsuite/g++.dg/init/pr20039.C deleted file mode 100644 index aaac8bd4e..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/pr20039.C +++ /dev/null @@ -1,20 +0,0 @@ -// PR c++/20039 -// { dg-do compile } - -struct M -{ - M() : m(0) { } - int m; -}; - -struct X -{ - M m; - int i; -}; - -int mymain() -{ - const X *p = new const X[2]; // { dg-error "uninitialized const" } - return 0; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/pr25811-3.C b/gcc-4.8/gcc/testsuite/g++.dg/init/pr25811-3.C deleted file mode 100644 index 631da5b4c..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/pr25811-3.C +++ /dev/null @@ -1,38 +0,0 @@ -// { dg-do compile } - -struct A { int const i; }; -struct B { int& i; }; -struct C { int i; }; - -template< class T > -class is_constructible_via_new_without_initializer -{ - template<int> class size {}; - - typedef char yes_type; - struct no_type { char data[2]; }; - - template <class U> - static yes_type sfinae (size< sizeof (new U) >*); - - template <class U> - static no_type sfinae (...); - -public: - static const bool value = sizeof (sfinae<T>(0)) == sizeof (yes_type); -}; - -#define JOIN( X, Y ) DO_JOIN( X, Y ) -#define DO_JOIN( X, Y ) DO_JOIN2(X,Y) -#define DO_JOIN2( X, Y ) X##Y - -#ifdef __GXX_EXPERIMENTAL_CXX0X__ -# define STATIC_ASSERT(Expr) static_assert(Expr, #Expr) -#else -# define STATIC_ASSERT(Expr) int JOIN(a,__LINE__)[Expr? 1 : -1] -#endif - -STATIC_ASSERT (!is_constructible_via_new_without_initializer<A>::value); -STATIC_ASSERT (!is_constructible_via_new_without_initializer<B>::value); -STATIC_ASSERT (is_constructible_via_new_without_initializer<C>::value); - diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/pr25811-4.C b/gcc-4.8/gcc/testsuite/g++.dg/init/pr25811-4.C deleted file mode 100644 index abfb3d9f3..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/pr25811-4.C +++ /dev/null @@ -1,38 +0,0 @@ -// { dg-do compile } -// { dg-options "-fpermissive" } - -struct A { int const i; }; -struct B { int& i; }; -struct C { int i; }; - -template< class T > -class is_constructible_via_new_without_initializer -{ - template<int> class size {}; - - typedef char yes_type; - struct no_type { char data[2]; }; - - template <class U> - static yes_type sfinae (size< sizeof (new U) >*); - - template <class U> - static no_type sfinae (...); - -public: - static const bool value = sizeof (sfinae<T>(0)) == sizeof (yes_type); -}; - -#define JOIN( X, Y ) DO_JOIN( X, Y ) -#define DO_JOIN( X, Y ) DO_JOIN2(X,Y) -#define DO_JOIN2( X, Y ) X##Y - -#ifdef __GXX_EXPERIMENTAL_CXX0X__ -# define STATIC_ASSERT(Expr) static_assert(Expr, #Expr) -#else -# define STATIC_ASSERT(Expr) int JOIN(a,__LINE__)[Expr? 1 : -1] -#endif - -STATIC_ASSERT (!is_constructible_via_new_without_initializer<A>::value); -STATIC_ASSERT (!is_constructible_via_new_without_initializer<B>::value); -STATIC_ASSERT (is_constructible_via_new_without_initializer<C>::value); diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/pr25811.C b/gcc-4.8/gcc/testsuite/g++.dg/init/pr25811.C deleted file mode 100644 index c906a9bbd..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/pr25811.C +++ /dev/null @@ -1,195 +0,0 @@ -// PR c++/25811 -// { dg-do compile } - -struct A1 -{ - int const j; // { dg-message "should be initialized" } -}; - -struct A2 -{ - int const volatile i; // { dg-message "should be initialized" } -}; - -struct A3 -{ - int& ref; // { dg-message "should be initialized" } -}; - -struct A4 -{ - int const& ref; // { dg-message "should be initialized" } -}; - -struct A5 -{ - int& ref; // { dg-message "should be initialized" } - int const i; // { dg-message "should be initialized" } -}; - -template <class T> struct S1 -{ - T const i; // { dg-message "should be initialized" } -}; - -template <class T> struct S2 -{ - T const volatile i; // { dg-message "should be initialized" } -}; - -template <class T> struct S3 -{ - T& ref; // { dg-message "should be initialized" } -}; - -template <class T> struct S4 -{ - T const i; // { dg-message "should be initialized" } - T& ref; // { dg-message "should be initialized" } -}; - -struct X -{ - X () : c (0), r (c) {} - int const c; - int const& r; -}; - -struct Y11 -{ - int const i; // { dg-message "should be initialized" } -}; - -struct Y1 -{ - Y11 a[1]; -}; - -struct Y22 -{ - int& ref; // { dg-message "should be initialized" } -}; - -struct Y2 -{ - Y22 a[1]; -}; - -struct Z1 -{ - int const i; // { dg-message "should be initialized" } -}; - -struct Z2 -{ - int& ref; // { dg-message "should be initialized" } -}; - -struct Z3 -{ - int const i; // { dg-message "should be initialized" } -}; - -struct Z4 -{ - int& ref; // { dg-message "should be initialized" } -}; - -struct Z5 -{ - int i; -}; - -struct Z -{ - Z1 z1; - Z2 z2; - Z3 z3; - Z4 z4; - Z5 z5; -}; - -union U -{ - int const i; // { dg-message "should be initialized" } -}; - -void f1 () -{ - new A1; // { dg-error "uninitialized const member" } -} - -void f2 () -{ - new A2; // { dg-error "uninitialized const member" } -} - -void f3 () -{ - new A3; // { dg-error "uninitialized reference member" } -} - -void f4 () -{ - new A4; // { dg-error "uninitialized reference member" } -} - -void f5 () -{ - new A5; // { dg-error "uninitialized reference member|uninitialized const member" } -} - -void f6 () -{ - new S1<int>; // { dg-error "uninitialized const member" } -} - -void f7 () -{ - new S2<int>; // { dg-error "uninitialized const member" } -} - -void f8 () -{ - new S3<int>; // { dg-error "uninitialized reference member" } -} - -void f9 () -{ - new S4<int>; // { dg-error "uninitialized reference member|uninitialized const member" } -} - -void f10 () -{ - new X; -} - -void f11 () -{ - new A1[1]; // { dg-error "uninitialized const member" } -} - -void f12 () -{ - new A3[1]; // { dg-error "uninitialized reference member" } -} - -void f13 () -{ - new Y1; // { dg-error "uninitialized const member" } -} - -void f14 () -{ - new Y2; // { dg-error "uninitialized reference member" } -} - -void f15 () -{ - new Z; // { dg-error "uninitialized reference member|uninitialized const member" } -} - -void f16 () -{ - new U; // { dg-error "uninitialized const member" } -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/pr29043.C b/gcc-4.8/gcc/testsuite/g++.dg/init/pr29043.C deleted file mode 100644 index 6ed31b5d6..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/pr29043.C +++ /dev/null @@ -1,52 +0,0 @@ -// PR c++/29043 -// { dg-do compile } - -struct S -{ - int const i; // { dg-message "should be initialized" } -}; - -class C -{ -public: - C() {} // { dg-error "uninitialized const member" } - S s; -}; - -struct S2 -{ - int& ref; // { dg-message "should be initialized" } -}; - -class C2 -{ -public: - C2() {} // { dg-error "uninitialized reference member" } - S2 s; -}; - -class C3 -{ - C3() { } - struct s { - const int i; - }; -}; - -struct S4 -{ - int const i; // { dg-message "should be initialized" } -}; - -struct C4 -{ - C4() {} // { dg-error "uninitialized const member" } - S4 s4[ 1 ]; -}; - -struct C5 -{ - C5() {} // { dg-message "uninitialized" } - int const iit[ 1 ]; -}; - diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/pr29571.C b/gcc-4.8/gcc/testsuite/g++.dg/init/pr29571.C deleted file mode 100644 index d0dc678cf..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/pr29571.C +++ /dev/null @@ -1,13 +0,0 @@ -// PR c++/29571 - -struct A -{ - static const int i = 0/0 + ""; // { dg-warning "division by zero" } - // { dg-error "constant|conversion|initializ" "" { target *-*-* } 5 } - static const int j = int(i); -}; - -// Currently G++ complains about a non-constant initializer for 'j' in -// C++11 mode, but not C++98. Either way is correct because it depends on -// the erroneous initializer for i, so don't require the error. -// { dg-prune-output ":7:" } diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/pr42556.C b/gcc-4.8/gcc/testsuite/g++.dg/init/pr42556.C deleted file mode 100644 index 27370af79..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/pr42556.C +++ /dev/null @@ -1,10 +0,0 @@ -// { dg-do compile } -// { dg-options "-fdump-tree-gimple" } - -void foo (int a, int b, int c, int d) -{ - int v[4] = {a, b, c, d}; -} - -// { dg-final { scan-tree-dump-not "v = {}" "gimple" } } -// { dg-final { cleanup-tree-dump "gimple" } } diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/pr42844.C b/gcc-4.8/gcc/testsuite/g++.dg/init/pr42844.C deleted file mode 100644 index 299a30a91..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/pr42844.C +++ /dev/null @@ -1,56 +0,0 @@ -// PR c++/42844 -// { dg-do compile } - -struct A -{ - A(){} -}; - -struct B : A { int i; }; // { dg-message "user-provided default constructor" } - -struct C : A { int i; }; // { dg-message "user-provided default constructor" } - -struct D : B { D() {} }; - -struct E { int i; }; // { dg-message "user-provided default constructor" } - -template <class T> -struct F : A { T t; }; // { dg-message "user-provided default constructor" } - -template <class T> -struct G { T t; }; // { dg-message "user-provided default constructor" } - -void f () -{ - B const b; // { dg-error "uninitialized const" } - extern B const bext; - - C const c[ 1 ]; // { dg-error "uninitialized const" } - extern C const cext[ 1 ]; - - D const d; - extern D const dext; - - E const e; // { dg-error "uninitialized const" } - extern E const eext; - - F<int> const f; // { dg-error "uninitialized const" } - extern F<int> const fext; - - G<int> const g; // { dg-error "uninitialized const" } - extern G<int> const gext; -} - -struct H { int i; }; // { dg-message "user-provided default constructor" } - -struct I : A { int i; }; // { dg-message "user-provided default constructor" } - -template <class T> -void g () -{ - T const t; // { dg-error "uninitialized const" } - extern T const text; -} - -template void g<H> (); -template void g<I> (); diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/pr43719.C b/gcc-4.8/gcc/testsuite/g++.dg/init/pr43719.C deleted file mode 100644 index d3487c94a..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/pr43719.C +++ /dev/null @@ -1,197 +0,0 @@ -// PR c++/43719 -// { dg-do compile } - -struct A1 -{ - int const j; // { dg-message "should be initialized" } -}; - -struct A2 -{ - int const volatile i; // { dg-message "should be initialized" } -}; - -struct A3 -{ - int& ref; // { dg-message "should be initialized" } -}; - -struct A4 -{ - int const& ref; // { dg-message "should be initialized" } -}; - -struct A5 -{ - int& ref; // { dg-message "should be initialized" } - int const i; // { dg-message "should be initialized" } -}; - -template <class T> struct S1 -{ - T const i; // { dg-message "should be initialized" } -}; - -template <class T> struct S2 -{ - T const volatile i; // { dg-message "should be initialized" } -}; - -template <class T> struct S3 -{ - T& ref; // { dg-message "should be initialized" } -}; - -template <class T> struct S4 -{ - T const i; // { dg-message "should be initialized" } - T& ref; // { dg-message "should be initialized" } -}; - -struct X -{ - X () : c (0), r (c) {} - int const c; - int const& r; -}; - -struct Y11 -{ - int const i; // { dg-message "should be initialized" } -}; - -struct Y1 -{ - Y11 a[1]; -}; - -struct Y22 -{ - int& ref; // { dg-message "should be initialized" } -}; - -struct Y2 -{ - Y22 a[1]; -}; - -struct Z1 -{ - int const i; // { dg-message "should be initialized" } -}; - -struct Z2 -{ - int& ref; // { dg-message "should be initialized" } -}; - -struct Z3 -{ - int const i; // { dg-message "should be initialized" } -}; - -struct Z4 -{ - int& ref; // { dg-message "should be initialized" } -}; - -struct Z5 -{ - int i; -}; - -struct Z -{ - Z1 z1; - Z2 z2; - Z3 z3; - Z4 z4; - Z5 z5; -}; - -union U -{ - int const i; // { dg-message "should be initialized" } -}; - - -void f1 () -{ - A1 a1; // { dg-error "uninitialized const member" } -} - -void f2 () -{ - A2 a2; // { dg-error "uninitialized const member" } -} - -void f3 () -{ - A3 a3; // { dg-error "uninitialized reference member" } -} - -void f4 () -{ - A4 a4; // { dg-error "uninitialized reference member" } -} - -void f5 () -{ - A5 a5; // { dg-error "uninitialized reference member|uninitialized const member" } -} - -void f6 () -{ - S1<int> s; // { dg-error "uninitialized const member" } -} - -void f7 () -{ - S2<int> s; // { dg-error "uninitialized const member" } -} - -void f8 () -{ - S3<int> s; // { dg-error "uninitialized reference member" } -} - -void f9 () -{ - S4<int> s; // { dg-error "uninitialized reference member|uninitialized const member" } -} - -void f10 () -{ - X x; -} - -void f11 () -{ - A1 a[ 1 ]; // { dg-error "uninitialized const member" } -} - -void f12 () -{ - A3 a[ 1 ]; // { dg-error "uninitialized reference member" } -} - -void f13 () -{ - Y1 y1; // { dg-error "uninitialized const member" } -} - -void f14 () -{ - Y2 y2; // { dg-error "uninitialized reference member" } -} - -void f15 () -{ - Z z; // { dg-error "uninitialized reference member|uninitialized const member" } -} - -void f16 () -{ - U u; // { dg-error "uninitialized const member" } -} - diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/pr43890.C b/gcc-4.8/gcc/testsuite/g++.dg/init/pr43890.C deleted file mode 100644 index 1b2807d0d..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/pr43890.C +++ /dev/null @@ -1,39 +0,0 @@ -// PR c++/43890 -// { dg-do compile } - -class Outer -{ - public: - Outer() - : i(*this) - { - } - - class Inner - { - public: - Inner(Outer& o) - : o(o) - , i(0) - { - } - - private: - Outer& o; - int const i; - }; - - private: - Inner i; -}; - -class A { - Outer o; -}; - -int main() -{ - A *a = new A; - - return 0; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/pr44086.C b/gcc-4.8/gcc/testsuite/g++.dg/init/pr44086.C deleted file mode 100644 index e3304f4a2..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/pr44086.C +++ /dev/null @@ -1,15 +0,0 @@ -// PR c++/44086 -// { dg-do compile } - -struct A -{ - int const i : 2; // { dg-message "should be initialized" } -}; - -void f() -{ - A a; // { dg-error "uninitialized const" } - new A; // { dg-error "uninitialized const" } - A(); - new A(); -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/pr48859.C b/gcc-4.8/gcc/testsuite/g++.dg/init/pr48859.C deleted file mode 100644 index 8ef5c2ee4..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/pr48859.C +++ /dev/null @@ -1,14 +0,0 @@ -// PR c++/48859 -// { dg-do compile } - -struct HasConstructor { - HasConstructor() {} -}; - -class ConstMember { - const HasConstructor empty_; -}; - -void foo() { - new ConstMember; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/pr55497.C b/gcc-4.8/gcc/testsuite/g++.dg/init/pr55497.C deleted file mode 100644 index b50f3fbdf..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/pr55497.C +++ /dev/null @@ -1,15 +0,0 @@ -// PR c++/55497 -// { dg-options "-g" } - -int get(); - -struct B -{ - B() - { - static const int v = get(); - char BUFFER[v]; - } -}; - -B b; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/ptrfn1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/ptrfn1.C deleted file mode 100644 index 0cbabbf80..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/ptrfn1.C +++ /dev/null @@ -1,12 +0,0 @@ -// PR c++/29016 -// { dg-options "-O2" } - -class A; -class B -{ - typedef void (*C[5]) (A *); - static C D; - static void E (A*) {} -}; -B::C B::D={E}; - diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/ptrfn2.C b/gcc-4.8/gcc/testsuite/g++.dg/init/ptrfn2.C deleted file mode 100644 index 0ca922b9c..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/ptrfn2.C +++ /dev/null @@ -1,14 +0,0 @@ -// { dg-options "" } -// { dg-do compile } -// C++/30221 -// We would ICE while trying to reshape the pointer to -// member function element which is not needed. - - -class abstract {}; -typedef void (abstract::*fptr1) (short & s ) const; -struct s {}; -s array[] = -{ - (fptr1)0 -};// { dg-error "" } diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/ptrfn3.C b/gcc-4.8/gcc/testsuite/g++.dg/init/ptrfn3.C deleted file mode 100644 index 960085063..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/ptrfn3.C +++ /dev/null @@ -1,14 +0,0 @@ -// { dg-options "" } -// { dg-do compile } -// C++/30221 -// We would ICE while trying to reshape the pointer to -// member function element which is not needed. - - -class abstract {}; -typedef void (abstract::*fptr1) (short & s ) const; -struct s {fptr1 f;}; -s array[] = -{ - (fptr1)0 -}; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/ptrmem1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/ptrmem1.C deleted file mode 100644 index 6f1604faf..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/ptrmem1.C +++ /dev/null @@ -1,7 +0,0 @@ -// PR c++/16853 - -struct A {}; -struct B {}; - -int B::* b; -int A::* a = b; // { dg-error "" } diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/ptrmem2.C b/gcc-4.8/gcc/testsuite/g++.dg/init/ptrmem2.C deleted file mode 100644 index 54b69215b..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/ptrmem2.C +++ /dev/null @@ -1,12 +0,0 @@ -// PR c++/19916 -// { dg-do run } - -struct S { - char k; -}; - -char const volatile S::* const p01 = &S::k; -int main(void) -{ - return 0; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/ptrmem3.C b/gcc-4.8/gcc/testsuite/g++.dg/init/ptrmem3.C deleted file mode 100644 index 95b60379b..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/ptrmem3.C +++ /dev/null @@ -1,8 +0,0 @@ -// PR c++/28148 - -struct foo { -public: - virtual int bar(int); -}; - -void (foo::*__Virtual__foo__Var1)() = (void (foo::*)())(&foo::bar); diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/ptrmem4.C b/gcc-4.8/gcc/testsuite/g++.dg/init/ptrmem4.C deleted file mode 100644 index 44ab8cf65..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/ptrmem4.C +++ /dev/null @@ -1,13 +0,0 @@ -// PR c++/32245 -// { dg-do run } - -struct foo { - int mem1; - int foo::* mem2; -}; - -int main () { - foo x = { 0 } ; - if (x.mem2 != foo().mem2) - return 1; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/ref1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/ref1.C deleted file mode 100644 index 12caff2d0..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/ref1.C +++ /dev/null @@ -1,5 +0,0 @@ -void f(void) -{ - short x = 0; - const int &y = x; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/ref10.C b/gcc-4.8/gcc/testsuite/g++.dg/init/ref10.C deleted file mode 100644 index 7a280dd41..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/ref10.C +++ /dev/null @@ -1,14 +0,0 @@ -// PR c++/13478 - -struct A {}; -struct B : protected A { - B() {} - B(const A& ) {} -private: - B(const B& ) {} -}; - -void foo(const A* ap) -{ - const B& br = *ap; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/ref11.C b/gcc-4.8/gcc/testsuite/g++.dg/init/ref11.C deleted file mode 100644 index b283e3a69..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/ref11.C +++ /dev/null @@ -1,13 +0,0 @@ -// PR c++/14230 - -struct A { - A (); - A (const A&); - A& operator= (const A&); -}; - -struct D { - A a; -}; - -const A& z = D().a; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/ref12.C b/gcc-4.8/gcc/testsuite/g++.dg/init/ref12.C deleted file mode 100644 index 4430e174b..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/ref12.C +++ /dev/null @@ -1,30 +0,0 @@ -// PR c++/17435 -// { dg-do run } - -extern "C" void abort (); - -bool ok; - -struct A -{ - void func() const - { - ok = 1; - } - - ~A() - { - if (!ok) - abort (); - } -}; - -struct B : public A -{ -}; - -int main() -{ - A const& r1 = B(); - r1.func(); -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/ref13.C b/gcc-4.8/gcc/testsuite/g++.dg/init/ref13.C deleted file mode 100644 index 6be57aa2e..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/ref13.C +++ /dev/null @@ -1,7 +0,0 @@ -// PR c++/28338 - -void foo() -{ - { static const int& i = 0; } - { static const int& i = 0; } -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/ref14.C b/gcc-4.8/gcc/testsuite/g++.dg/init/ref14.C deleted file mode 100644 index 212e6e95d..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/ref14.C +++ /dev/null @@ -1,11 +0,0 @@ -// PR c++/33459 - -union A -{ - int &i; // { dg-error "may not have reference type" } -}; - -void foo() -{ - A(); -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/ref15.C b/gcc-4.8/gcc/testsuite/g++.dg/init/ref15.C deleted file mode 100644 index bc9c01dc2..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/ref15.C +++ /dev/null @@ -1,34 +0,0 @@ -// PR c++/20416. We correctly constructed the temporary S in foo(), -// but incorrectly destroyed it every time foo() was called. -// When using a wrapped target, there is no way to override the exit -// code after returning from main. -// { dg-do run { target unwrapped } } -extern "C" void abort (void); -extern "C" void _exit (int); - -int c, exiting; -struct S { - S() { ++c; } - S(const S &) { ++c; } - ~S() - { - if (!exiting) abort (); - _exit (0); - } -}; -void -foo (void) -{ - static const S &s = S(); -} -int main () -{ - if (c != 0) - abort (); - foo (); - foo (); - if (c != 1) - abort (); - exiting = 1; - return 1; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/ref16.C b/gcc-4.8/gcc/testsuite/g++.dg/init/ref16.C deleted file mode 100644 index 2d56395cb..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/ref16.C +++ /dev/null @@ -1,23 +0,0 @@ -// PR c++/35548 -// { dg-do run } - -int c; -struct A -{ - A() { ++c; } - A(const A&) { ++c; } - ~A() { --c; } -}; - -A f() -{ - return A(); -} - -int i; -const A* ap; -int main() -{ - const A& ar = i ? *ap : f(); - return (c == 0); -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/ref17.C b/gcc-4.8/gcc/testsuite/g++.dg/init/ref17.C deleted file mode 100644 index 2c8c22b8d..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/ref17.C +++ /dev/null @@ -1,23 +0,0 @@ -// PR c++/35650 -// { dg-do compile } - -void f1 (); - -namespace N -{ - using::f1; - void f2 (); - void f3 (); -} - -using N::f3; - -void -test () -{ - void (&a) () = f1; - void (&b) () = N::f1; - void (&c) () = N::f2; - void (&d) () = f3; - void (&e) () = ::f3; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/ref18.C b/gcc-4.8/gcc/testsuite/g++.dg/init/ref18.C deleted file mode 100644 index e704077c2..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/ref18.C +++ /dev/null @@ -1,12 +0,0 @@ -// PR c++/49395 - -volatile int foo(); -struct A { volatile int i; }; -typedef volatile int vi; - -volatile int i; - -const int& ir1 = foo(); -//const int& ir2 = A().i; // line 8 -const int& ir3 = static_cast<volatile int>(i); -const int& ir4 = vi(); // line 10 diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/ref19.C b/gcc-4.8/gcc/testsuite/g++.dg/init/ref19.C deleted file mode 100644 index ed78c939b..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/ref19.C +++ /dev/null @@ -1,17 +0,0 @@ -// PR c++/49528 -// { dg-do run } - -int d; - -struct A -{ - int i; - ~A() { ++d; }; -}; - -int main() -{ - const int &r = A().i; - if (d != 1) - return 1; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/ref2.C b/gcc-4.8/gcc/testsuite/g++.dg/init/ref2.C deleted file mode 100644 index 231ea047f..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/ref2.C +++ /dev/null @@ -1,10 +0,0 @@ -struct Base { - Base(); - Base(const Base &); - Base & operator = (const Base &); -}; - -struct Derived : public Base {}; - -Derived derived(); -const Base &b = derived(); diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/ref20.C b/gcc-4.8/gcc/testsuite/g++.dg/init/ref20.C deleted file mode 100644 index b64cb57e0..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/ref20.C +++ /dev/null @@ -1,8 +0,0 @@ -// PR c++/50787 -// { dg-do run } - -int main() { - const int Ci = 0; - const int &rCi = Ci; - if (!(&Ci == &rCi)) __builtin_abort(); -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/ref21.C b/gcc-4.8/gcc/testsuite/g++.dg/init/ref21.C deleted file mode 100644 index db4ac4a30..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/ref21.C +++ /dev/null @@ -1,7 +0,0 @@ -struct A -{ - const int &i1; - const int &i2; -}; - -A a = { 1, 2 }; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/ref3.C b/gcc-4.8/gcc/testsuite/g++.dg/init/ref3.C deleted file mode 100644 index 776f2d0c5..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/ref3.C +++ /dev/null @@ -1,12 +0,0 @@ -struct Base { }; -struct Derived : public Base { }; -struct Choose { - operator Base&(); - operator Derived&(); -}; - -void f() -{ - Choose c; - Base& ref = c; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/ref4.C b/gcc-4.8/gcc/testsuite/g++.dg/init/ref4.C deleted file mode 100644 index 6b65d9925..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/ref4.C +++ /dev/null @@ -1,18 +0,0 @@ -// { dg-do run } - -int c; - -struct Base { - Base() {} - Base(const Base &) { ++c; } - Base & operator = (const Base &); -}; - -struct Derived : public Base {}; - -const Base &b = Derived(); - -int main() -{ - return c; // No copies should be required. -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/ref5.C b/gcc-4.8/gcc/testsuite/g++.dg/init/ref5.C deleted file mode 100644 index ad1c30c36..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/ref5.C +++ /dev/null @@ -1,12 +0,0 @@ -struct A { }; -struct B : public A { }; -struct X { - operator B(); -}; -X x; - -int main() -{ - const A& r = x; - return 0; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/ref6.C b/gcc-4.8/gcc/testsuite/g++.dg/init/ref6.C deleted file mode 100644 index 50a963603..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/ref6.C +++ /dev/null @@ -1,12 +0,0 @@ -struct B { - void g() { } -}; - -struct A { - void f() { - B &b = b; - b.g(); - } -}; - -int main(void) { } diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/ref7.C b/gcc-4.8/gcc/testsuite/g++.dg/init/ref7.C deleted file mode 100644 index 0832069e3..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/ref7.C +++ /dev/null @@ -1,9 +0,0 @@ -class hop -{ -public: - hop operator* () const; -}; -int main(void) -{ - const hop &x = *x; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/ref8.C b/gcc-4.8/gcc/testsuite/g++.dg/init/ref8.C deleted file mode 100644 index 406cc1040..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/ref8.C +++ /dev/null @@ -1,10 +0,0 @@ -struct A { - A operator=(const A&); -}; - -A operator*(A, A); - -A& operator+=(A& a, const A& b) -{ - return a = a * b; // { dg-error "non-const reference" } -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/ref9.C b/gcc-4.8/gcc/testsuite/g++.dg/init/ref9.C deleted file mode 100644 index 127b7d8e1..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/ref9.C +++ /dev/null @@ -1,36 +0,0 @@ -// { dg-do run } - -struct ex; -struct basic { - int refcount; - ex eval() const; - basic() : refcount(0) {} -}; - -struct ex { - basic *bp; - ex() : bp(0) { } - ex(const basic &); - virtual ~ex(); - void construct_from_basic(const basic &); -}; - -ex basic::eval() const { - throw 1; -} - -inline ex::ex(const basic &b) { construct_from_basic (b); } -inline ex::~ex() { if (--bp->refcount == 0) delete bp; } -void ex::construct_from_basic(const basic &b) { - const ex & tmpex = b.eval(); - bp = tmpex.bp; - bp->refcount++; -} - -ex pow() { return basic(); } - -int main() -{ - try { pow (); } catch (int) {} - return 0; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/reference1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/reference1.C deleted file mode 100644 index 7ce5f90fb..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/reference1.C +++ /dev/null @@ -1,11 +0,0 @@ -// { dg-do compile } -// This code used to be accepted but it is invalid as there is no -// value initialization of a reference type. -// PR c++/36695 - -int main() -{ - typedef int& T; - T a = T(); // { dg-error "value-initialization of reference" } -} - diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/reference2.C b/gcc-4.8/gcc/testsuite/g++.dg/init/reference2.C deleted file mode 100644 index 42f537426..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/reference2.C +++ /dev/null @@ -1,13 +0,0 @@ -// { dg-do compile } -// This code used to be accepted but it is invalid as there is no -// value initialization of a reference type. -// PR c++/36695 - -// We should we able to diagnostic this without instantiating the template -template <int a1> -int f() -{ - typedef int& T; - T a = T(); // { dg-error "value-initialization of reference" } -} - diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/reference3.C b/gcc-4.8/gcc/testsuite/g++.dg/init/reference3.C deleted file mode 100644 index 8cc5afd6f..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/reference3.C +++ /dev/null @@ -1,13 +0,0 @@ -// { dg-do compile } -// This code used to be accepted but it is invalid as there is no -// value initialization of a reference type. -// PR c++/36695 - -template <typename T> -T f() -{ - T a = T(); // { dg-error "value-initialization of reference" } -} - -int &a = f<int&>(); // { dg-message "required from here" } - diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/save1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/save1.C deleted file mode 100644 index 2358eb50c..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/save1.C +++ /dev/null @@ -1,20 +0,0 @@ -// PR c++/8748 -// We were wrapping the ARRAY_REF in a SAVE_EXPR, causing us to try to make a bitwise -// copy of b[0]. - -struct A -{ - int i; -}; - -struct B : A -{ - virtual ~B(); -}; - -struct C -{ - B b[1]; -}; - -void foo() { C().b[0].i; } diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/self1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/self1.C deleted file mode 100644 index dd37c8e60..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/self1.C +++ /dev/null @@ -1,19 +0,0 @@ -// PR c++/29106 -// { dg-do run } - -int i; - -void f(__SIZE_TYPE__) { - i = 3; -} - - -int main() -{ - int* const savepos = sizeof(*savepos) ? 0 : 0; - - f (sizeof (*savepos)); - - if (i != 3) - return 1; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/static-init1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/static-init1.C deleted file mode 100644 index 298d17140..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/static-init1.C +++ /dev/null @@ -1,5 +0,0 @@ -// Related to the patch for 38880. -// Make sure we don't think we can initialize a at compile time. - -char c; -short a[] = { (short)((__PTRDIFF_TYPE__)&c + (__PTRDIFF_TYPE__)&c) }; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/static-init2.C b/gcc-4.8/gcc/testsuite/g++.dg/init/static-init2.C deleted file mode 100644 index 34bf2b238..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/static-init2.C +++ /dev/null @@ -1,3 +0,0 @@ -// PR c++/36912 -// { dg-options -frounding-math } -const double c = .1, d = c+1; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/static-init3.C b/gcc-4.8/gcc/testsuite/g++.dg/init/static-init3.C deleted file mode 100644 index 9f89c3119..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/static-init3.C +++ /dev/null @@ -1,9 +0,0 @@ -// PR c++/55137 -// s should have constant initialization. -// { dg-final { scan-assembler-not "GLOBAL" } } - -struct S { - int b; -}; - -struct S s = { -1 + (int)(sizeof(int) - 1) }; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/static1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/static1.C deleted file mode 100644 index 7609215dd..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/static1.C +++ /dev/null @@ -1,4 +0,0 @@ -struct A { - static const int size = BOGUS; // { dg-error "" } -}; -const int A::size; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/static2.C b/gcc-4.8/gcc/testsuite/g++.dg/init/static2.C deleted file mode 100644 index b0344f480..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/static2.C +++ /dev/null @@ -1,25 +0,0 @@ -// PR 14804 -// { dg-do run } - -struct A { - virtual void foo() = 0; -}; - -struct B : public A { - virtual void bar() = 0; -}; - -typedef void (A::*mfptr)(); - -struct D { - mfptr p; -}; - -static const D ds[] = { - { reinterpret_cast<mfptr>(&B::bar) }, -}; - -int main() -{ - return 0; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/static3.C b/gcc-4.8/gcc/testsuite/g++.dg/init/static3.C deleted file mode 100644 index 8fac85fbc..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/static3.C +++ /dev/null @@ -1,26 +0,0 @@ -// { dg-do run } - -struct T -{ - static void (*handler)(); - static void func() {} -}; - -bool fail; - -struct S { - S() { - if (T::handler != T::func) - fail = true; - } -}; - -static S s; - -void (*T::handler)() = func; - -int main() -{ - if (fail) - return 1; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/static4.C b/gcc-4.8/gcc/testsuite/g++.dg/init/static4.C deleted file mode 100644 index 0cdc48b0e..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/static4.C +++ /dev/null @@ -1,6 +0,0 @@ -// PR c++/51461 - -struct A -{ - static const A a = 0; // { dg-error "incomplete|non-integral" } -}; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/string1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/string1.C deleted file mode 100644 index 597b8619e..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/string1.C +++ /dev/null @@ -1,8 +0,0 @@ -extern void f (char*); - -extern const char * const target = "foo"; - -void g () -{ - f (target); // { dg-error "conversion" } -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/struct1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/struct1.C deleted file mode 100644 index e23faef50..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/struct1.C +++ /dev/null @@ -1,6 +0,0 @@ -struct bug { - const char *name; - __SIZE_TYPE__ type; -}; - -struct bug s = { 0, (__SIZE_TYPE__) &s | 1 }; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/struct2.C b/gcc-4.8/gcc/testsuite/g++.dg/init/struct2.C deleted file mode 100644 index 85aacc6fa..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/struct2.C +++ /dev/null @@ -1,22 +0,0 @@ -/* PR c++/23180. */ -/* Initialize a local structure with an expression that attempts to use - pointer arithmetic to calculate another structure field offset. */ - -void saveLoadEntries(const void *); - -void saveOrLoad() { - struct Track { - char soundName[15]; - }; - struct SaveLoadEntry { - int offs; - int type; - int size; - }; - - SaveLoadEntry trackEntries = { - ((long) (__SIZE_TYPE__) (&((Track *) 42)->soundName[0])) - 42, - 0, 1 - }; - saveLoadEntries(&trackEntries); -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/struct3.C b/gcc-4.8/gcc/testsuite/g++.dg/init/struct3.C deleted file mode 100644 index 53804b3d1..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/struct3.C +++ /dev/null @@ -1,15 +0,0 @@ -/* PR c++/23180. */ -/* Initialize a global variable with an expression that attempts to use - pointer arithmetic to calculate a structure field offset. */ - -struct Track { - char soundName[15]; -}; - -struct SaveLoadEntry { - int offs; - int type; - int size; -}; - -int foobar = ((long) (__SIZE_TYPE__) (& ((Track *) 42)->soundName[0])) - 42; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/switch1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/switch1.C deleted file mode 100644 index b0b06b748..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/switch1.C +++ /dev/null @@ -1,8 +0,0 @@ -int f(int c) -{ - switch (c) - { - case d: /* { dg-error "'d' was not declared" } */ - int optBzip2 = true; - } -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/synth1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/synth1.C deleted file mode 100644 index 6c00bc022..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/synth1.C +++ /dev/null @@ -1,17 +0,0 @@ -// PR middle-end/17525 - -struct A -{ - ~A(); - int a; -}; - -struct B : public A -{ - virtual ~B(); -}; - -void run (B& b, B& b1) -{ - b1 = b; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/synth2.C b/gcc-4.8/gcc/testsuite/g++.dg/init/synth2.C deleted file mode 100644 index ed5046715..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/synth2.C +++ /dev/null @@ -1,18 +0,0 @@ -// PR c++/34180 - -struct G { - G(); // { dg-message "" "candidate" } - G(G&); // { dg-message "" "candidate" } -}; - -class A // { dg-error "" } -// { dg-message "candidate" "candidate note" { target *-*-* } 8 } -{ - const G g; -}; - -int main() -{ - A a; - A b = a; // { dg-message "required here|deleted" } -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/synth3.C b/gcc-4.8/gcc/testsuite/g++.dg/init/synth3.C deleted file mode 100644 index d656ddb2e..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/synth3.C +++ /dev/null @@ -1,21 +0,0 @@ -// Test that synthesizing the C copy constructor doesn't require B<int> to -// be complete. - -template <class T> -struct B -{ - typename T::NT nt; -}; - -struct A -{ - A (); - A (const A&); - A (const B<int>&); -}; - -struct C: A { }; - -C c; -C c2(c); - diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/synth4.C b/gcc-4.8/gcc/testsuite/g++.dg/init/synth4.C deleted file mode 100644 index 2b0b0b95a..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/synth4.C +++ /dev/null @@ -1,18 +0,0 @@ -// PR c++/45822 - -struct A -{ - A(int); -}; - -struct B -{ - B(A = 0); -}; - -struct C -{ - B b; -}; - -C c; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/union1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/union1.C deleted file mode 100644 index 0049f4429..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/union1.C +++ /dev/null @@ -1,5 +0,0 @@ -// PR c++/14401 - -union U { - int& i; // { dg-error "" } -}; diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/union2.C b/gcc-4.8/gcc/testsuite/g++.dg/init/union2.C deleted file mode 100644 index ac39f6092..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/union2.C +++ /dev/null @@ -1,13 +0,0 @@ -// PR c++/15938 -// { dg-do compile } -// { dg-options "" } - -typedef union -{ - struct { int i; }; - struct { char c; }; -} A; - -A a = { 0 }; -A b = {{ 0 }}; -A c = {{{ 0 }}}; // { dg-error "braces" } diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/value1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/value1.C deleted file mode 100644 index 9dbc2e067..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/value1.C +++ /dev/null @@ -1,22 +0,0 @@ -// Test that with value-initialization, i is initialized to 0 -// and the vtable pointer is properly initialized. - -// { dg-do run } - -struct A -{ - int i; - virtual void f() {} -}; - -void f (A& a) -{ - a.f(); -} - -int main() -{ - A a = A(); - f (a); - return a.i; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/value10.C b/gcc-4.8/gcc/testsuite/g++.dg/init/value10.C deleted file mode 100644 index 2066410a0..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/value10.C +++ /dev/null @@ -1,27 +0,0 @@ -// PR c++/51331 -// { dg-do run } - -struct A { - A(): x(10) {} - virtual ~A() {} - - int x; -}; - -struct B: public virtual A { -}; - -struct C: public virtual A { -}; - -struct D: public B, virtual public C { - D(): B(), C() {} // note an explicit call to C() which is auto-generated -}; - -int main() { - D* d = new D(); - - // Crashes here with the following message: - // *** glibc detected *** ./test: free(): invalid next size (fast) - delete d; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/value2.C b/gcc-4.8/gcc/testsuite/g++.dg/init/value2.C deleted file mode 100644 index fbe166471..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/value2.C +++ /dev/null @@ -1,23 +0,0 @@ -// PR c++/35116 -// Test that break_out_target_exprs works properly with complex -// value-initialization. - -struct A -{ - virtual void f (); -}; - -struct B -{ - A a; -}; - -struct C -{ - C (int, B = B()); -}; - -void f () -{ - C c (4); -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/value3.C b/gcc-4.8/gcc/testsuite/g++.dg/init/value3.C deleted file mode 100644 index 487baabec..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/value3.C +++ /dev/null @@ -1,31 +0,0 @@ -// Testcase for value-initialization in new-expressions. -// { dg-do run } - -#include <stdlib.h> -#include <string.h> - -// Make sure that we return memory that isn't already set to 0. -void *operator new(size_t s) -{ - void *p = malloc (s); - memset (p, 42, s); - return p; -} - -struct A { A() {} ~A() {} }; -struct B { A a; int i; }; - -int main() -{ - B *p = new B(); - if (p->i != 0) - abort(); - - p = new B[2](); - if (p[0].i != 0 || p[1].i != 0) - abort(); - - B(*p2)[2] = new B[2][2](); - if (p2[0][0].i != 0 || p2[0][1].i != 0) - abort(); -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/value4.C b/gcc-4.8/gcc/testsuite/g++.dg/init/value4.C deleted file mode 100644 index fa7a02cc7..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/value4.C +++ /dev/null @@ -1,35 +0,0 @@ -// PR c++/38233 - -template<class _T1, class _T2> - struct pair - { - _T1 first; - _T2 second; - - // _GLIBCXX_RESOLVE_LIB_DEFECTS - // 265. std::pair::pair() effects overly restrictive - /** The default constructor creates @c first and @c second using their - * respective default constructors. */ - pair() - : first(), second() { } -}; - -class a { - public: - a(); -}; - -class b { - public: - // implicit default ctor - bool operator<(const b& rhs) const; - - private: - a a_val; -}; - -typedef pair<const b, int> my_pair; - -void func() { - my_pair x; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/value5.C b/gcc-4.8/gcc/testsuite/g++.dg/init/value5.C deleted file mode 100644 index d705f87b6..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/value5.C +++ /dev/null @@ -1,17 +0,0 @@ -// PR c++/38232 - -class base { - public: - base(); - virtual ~base(); - - private: - int& int_ref; // initialized by base ctor, not visible here -}; - -class derived : public base { -}; - -base *make_derived() { - return new derived(); -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/value6.C b/gcc-4.8/gcc/testsuite/g++.dg/init/value6.C deleted file mode 100644 index d7d29bf0a..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/value6.C +++ /dev/null @@ -1,13 +0,0 @@ -// PR c++/39109 - -struct N -{ - private: - virtual ~N (); -}; - -N * -foo () -{ - return new N (); -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/value7.C b/gcc-4.8/gcc/testsuite/g++.dg/init/value7.C deleted file mode 100644 index c79de4a68..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/value7.C +++ /dev/null @@ -1,17 +0,0 @@ -// PR c++/30111 -// { dg-do run } - -struct pod { - int i; -}; - -struct inherit : pod { - inherit() : pod() {} -}; - -int main() -{ - inherit i; - return i.i != 0; -} - diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/value8.C b/gcc-4.8/gcc/testsuite/g++.dg/init/value8.C deleted file mode 100644 index 0a9b90b64..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/value8.C +++ /dev/null @@ -1,19 +0,0 @@ -// PR c++/45315 - -struct A -{ - A (); -}; - -template < int > struct B : A -{ - void foo () - { - new B < 0 > (); - } -}; - -int main() -{ - B<1>().foo(); -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/value9.C b/gcc-4.8/gcc/testsuite/g++.dg/init/value9.C deleted file mode 100644 index 4899bd810..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/value9.C +++ /dev/null @@ -1,32 +0,0 @@ -// PR c++/50793 -// { dg-do run } - -struct NonTrivial -{ - NonTrivial() { } -}; - -struct S -{ - NonTrivial nt; - int i; -}; - -int f(S s) -{ - s.i = 0xdeadbeef; - return s.i; -} - -int g(S s = S()) -{ - return s.i; -} - -int main() -{ - f(S()); // make stack dirty - - if ( g() ) - __builtin_abort(); -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/vbase1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/vbase1.C deleted file mode 100644 index bbfd58f5c..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/vbase1.C +++ /dev/null @@ -1,39 +0,0 @@ -// PR c++/50618 -// { dg-do run } - -struct Base -{ - const int text; - Base():text(1) {} - Base(int aText) - : text(aText) {} -}; -struct SubA : public virtual Base -{ -protected: - int x; -public: - SubA(int aX) - : x(aX) {} -}; -class SubB : public virtual Base -{}; -struct Diamond : public SubA, public SubB -{ - Diamond(int text) - : Base(text), SubA(5), SubB() {} - - void printText() - { - if(text != 2) - __builtin_abort(); - if(x!=5) - __builtin_abort(); - } -}; - -int main(int, char**) -{ - Diamond x(2); - x.printText(); -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/vector1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/vector1.C deleted file mode 100644 index f33df2a92..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/vector1.C +++ /dev/null @@ -1,79 +0,0 @@ -// PR c++/19263 -// { dg-do run } -// { dg-options "-O2 -fpermissive" } -// { dg-prune-output "narrowing" } - -typedef signed char v8qi __attribute__ ((vector_size (8))); - -extern "C" void abort (void); - -static unsigned char S[16]; - -struct A -{ - int i; - v8qi j, k; - int l; -}; - -void -foo (unsigned char v) -{ - A a = { 1, { v, v, v, v, v, v, v, v }, - { v + 1, v + 1, v + 1, v + 1, v + 1, v + 1, v + 1, v + 1 }, 3 }; - v8qi *s = (v8qi *) &S[0]; - *s = a.j; - s[1] = a.k; -} - -void -bar (unsigned char v) -{ - v8qi val8 = { v, v, v, v, v, v, v, v }; - v8qi *s = (v8qi *) &S[0]; - *s = val8; -} - -int n = 5, cnt; - -int -num (void) -{ - ++cnt; - return n; -} - -void -baz (void) -{ - static A a = { 0, { num (), num (), num (), num (), 6, 6, 6, 6 }, - { 7, 7, 7, 7, 8, 8, 8, 8 }, 0 }; - v8qi *s = (v8qi *) &S[0]; - *s = a.j; - s[1] = a.k; -} - -int -main () -{ - int i; - foo (1); - for (i = 0; i < 8; ++i) - if (S[i] != 1) - abort (); - for (; i < 16; ++i) - if (S[i] != 2) - abort (); - bar (3); - for (i = 0; i < 8; ++i) - if (S[i] != 3) - abort (); - return 0; - baz (); - if (cnt != 4) - abort (); - for (i = 0; i < 16; ++i) - if (S[i] != 5 + (i / 4)) - abort (); - return 0; -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/void1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/void1.C deleted file mode 100644 index ed41a90de..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/void1.C +++ /dev/null @@ -1,6 +0,0 @@ -// PR c++/48569 - -int main() -{ - void(); -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/volatile1.C b/gcc-4.8/gcc/testsuite/g++.dg/init/volatile1.C deleted file mode 100644 index 9080ed5dc..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/volatile1.C +++ /dev/null @@ -1,16 +0,0 @@ -// PR c++/26577 -// The call to bar() was causing an inappropriate dereference of *this, -// which led to an abort in cp_expr_size. - -struct A -{ - A(const A&); - A& operator=(const A&); - static void bar(); - void baz() volatile; -}; - -void A::baz() volatile -{ - bar(); -} diff --git a/gcc-4.8/gcc/testsuite/g++.dg/init/volatile2.C b/gcc-4.8/gcc/testsuite/g++.dg/init/volatile2.C deleted file mode 100644 index 036d5f162..000000000 --- a/gcc-4.8/gcc/testsuite/g++.dg/init/volatile2.C +++ /dev/null @@ -1,13 +0,0 @@ -// PR c++/47003 - -struct A -{ - A(int); -}; - -volatile int i; - -int main() -{ - A *q = new A (i); -} |