diff options
author | Dan Albert <danalbert@google.com> | 2016-02-24 13:48:45 -0800 |
---|---|---|
committer | Dan Albert <danalbert@google.com> | 2016-02-24 13:51:18 -0800 |
commit | b9de1157289455b0ca26daff519d4a0ddcd1fa13 (patch) | |
tree | 4c56cc0a34b91f17033a40a455f26652304f7b8d /gcc-4.8.1/gcc/testsuite/g++.dg/inherit | |
parent | 098157a754787181cfa10e71325832448ddcea98 (diff) | |
download | toolchain_gcc-b9de1157289455b0ca26daff519d4a0ddcd1fa13.tar.gz toolchain_gcc-b9de1157289455b0ca26daff519d4a0ddcd1fa13.tar.bz2 toolchain_gcc-b9de1157289455b0ca26daff519d4a0ddcd1fa13.zip |
Update 4.8.1 to 4.8.3.
My previous drop was the wrong version. The platform mingw is
currently using 4.8.3, not 4.8.1 (not sure how I got that wrong).
From ftp://ftp.gnu.org/gnu/gcc/gcc-4.8.3/gcc-4.8.3.tar.bz2.
Bug: http://b/26523949
Change-Id: Id85f1bdcbbaf78c7d0b5a69e74c798a08f341c35
Diffstat (limited to 'gcc-4.8.1/gcc/testsuite/g++.dg/inherit')
96 files changed, 0 insertions, 2085 deletions
diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/access1.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/access1.C deleted file mode 100644 index 7f2ec6892..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/access1.C +++ /dev/null @@ -1,19 +0,0 @@ -// Test that we can access a member from an inaccessible base if it has -// been promoted with a using-declaration. - -// { dg-do compile } - -struct A -{ - int i; -}; - -struct B: private A -{ - using A::i; -}; - -struct C: public B -{ - void f () { B::i = 0; } -}; diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/access2.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/access2.C deleted file mode 100644 index 247799450..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/access2.C +++ /dev/null @@ -1,14 +0,0 @@ -// Test that a base doesn't get special rights to convert to itself. - -struct A { - void f (); -}; - -struct B: private A { }; - -B b; - -void A::f () -{ - A* ap = &b; // { dg-error "base|inherit" "" } -} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/access3.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/access3.C deleted file mode 100644 index 1862bfc34..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/access3.C +++ /dev/null @@ -1,19 +0,0 @@ -// { dg-do compile } - -class __new_alloc { -public: - static void allocate() {} -}; - -template <class _Alloc> -class __debug_alloc : public _Alloc { -public: - static void allocate(); -}; - -template <class _Alloc> -void __debug_alloc<_Alloc>::allocate() { - _Alloc::allocate(); -} - -template class __debug_alloc<__new_alloc>; diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/access4.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/access4.C deleted file mode 100644 index 33f991b66..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/access4.C +++ /dev/null @@ -1,8 +0,0 @@ -struct Container { int Count(); }; -struct List : private Container { - using Container::Count; -}; -struct INetContentTypeParameterList : private List { void Clear(); }; -void INetContentTypeParameterList::Clear() { - Count();//Calling non static but in a non-static method. -} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/access5.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/access5.C deleted file mode 100644 index 715a4a3b2..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/access5.C +++ /dev/null @@ -1,4 +0,0 @@ -struct S { ~S(); }; -struct T : virtual private S {}; -struct U : private T {}; -U u; diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/access6.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/access6.C deleted file mode 100644 index 7645c2d5e..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/access6.C +++ /dev/null @@ -1,15 +0,0 @@ -// PR c++/28588 - -class Foo { - static void f(); // { dg-error "private" } - static void f(int); - static void g(); // { dg-error "private" } -}; - -void h() -{ - Foo foo; - void (*f)(); - f = foo.f; // { dg-error "context" } - f = foo.g; // { dg-error "context" } -} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/access7.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/access7.C deleted file mode 100644 index 4e2db1479..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/access7.C +++ /dev/null @@ -1,15 +0,0 @@ -struct B { - static void f(); -}; - -template <typename T> -struct D : private B { - void g() { - f(); - } -}; - -void h() { - D<int> d; - d.g(); -} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/access8.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/access8.C deleted file mode 100644 index 310b7a01a..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/access8.C +++ /dev/null @@ -1,25 +0,0 @@ -// PR c++/29138 - -class A -{ -public: - int i; - class A1 - { - int j; - }; -}; - -class B : private A -{ -public: - A::i; // { dg-warning "deprecated" } - A::A1; // { dg-warning "deprecated" } -}; - -void -f () -{ - B b; - B::A1 a1; -} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/ambig1.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/ambig1.C deleted file mode 100644 index 3596bb598..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/ambig1.C +++ /dev/null @@ -1,14 +0,0 @@ -// PR c++/51614 - -struct A -{ - void foo(); -}; - -struct B : A {}; -struct C : A {}; - -struct D : B, C -{ - D() { A::foo(); } // { dg-error "ambiguous" } -}; diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/base1.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/base1.C deleted file mode 100644 index 952c6d20f..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/base1.C +++ /dev/null @@ -1,22 +0,0 @@ -// { dg-do compile } -// { dg-options "-pedantic-errors -w" } - -// Copyright (C) 2000 Free Software Foundation, Inc. -// Contributed by Nathan Sidwell 29 Nov 2001 <nathan@nathan@codesourcery.com> - -// PR 164 -// Although a direct base can be inaccessible due to ambiguity, that -// should not blow up synthesized methods. - -struct A {int m;}; -struct B : A {int m;}; -struct C : virtual A, B {int m;}; -struct D : B, C {int m;}; - -void foo2 () -{ - D d; - D e (d); - - e = d; -} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/base2.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/base2.C deleted file mode 100644 index 5c7d812c7..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/base2.C +++ /dev/null @@ -1,12 +0,0 @@ -// Copyright (C) 2004 Free Software Foundation, Inc. -// Contributed by Nathan Sidwell 23 Sep 2004 <nathan@codesourcery.com> - -// Origin: Wolfgang Bangerth <bangerth@dealii.org> -// Bug 17620. Bogus duplicate base error. - -struct S {}; - -typedef S B; - -struct D1 : B {}; -struct D2 : B {}; diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/base3.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/base3.C deleted file mode 100644 index 313d04242..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/base3.C +++ /dev/null @@ -1,8 +0,0 @@ -// PR c++/35985 -// { dg-do compile } - -template<typename T> struct A : T {}; // { dg-error "struct or class type" } - -struct B; - -A<void (B::*)()> a; // { dg-message "required" } diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/cond1.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/cond1.C deleted file mode 100644 index 843c72ca3..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/cond1.C +++ /dev/null @@ -1,10 +0,0 @@ -// Origin: jason@redhat.com -// { dg-do compile } - -struct A { A(); A(const A&); int i; }; -struct B: public A { }; - -int f (bool b, A& ar, B& br) -{ - return (b?ar:br).i; -} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/conv1.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/conv1.C deleted file mode 100644 index e16c489a2..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/conv1.C +++ /dev/null @@ -1,23 +0,0 @@ -typedef struct _A A; -typedef struct _A B; - -void some_function(B *b); - -class AClass { - -public: - operator A*() { return 0;} - -}; - -class BClass :public AClass { - -public: - operator B*() { return 0;} - -}; - -int main(int argc, char **argv) { - BClass b; - some_function(b); -} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/conv2.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/conv2.C deleted file mode 100644 index fd0083825..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/conv2.C +++ /dev/null @@ -1,22 +0,0 @@ -// PR c++/25895 -// { dg-do run } - -class base { -public: - base() {} -private: - int val_; -}; - -class derived : public base { -public: - derived() {} -}; - -static bool x = true ? (derived*)0 : (base*)0; - -int main () -{ - if (x) - return 1; -} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/conv3.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/conv3.C deleted file mode 100644 index 73d8c20f1..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/conv3.C +++ /dev/null @@ -1,31 +0,0 @@ -// PR 31074 -// Bug: The reference cast wasn't finding the desired static_cast followed by -// const_cast interpretation. - -struct Shape -{ - Shape() {} - virtual ~Shape() {} -}; - -struct Loop -{ - Loop() {} - virtual ~Loop() {} - virtual void func() {} -}; - -struct Rect : - public Shape, - public Loop -{ - Rect() {} - virtual ~Rect() {} -}; - -int main () -{ - const Rect* rect = new Rect(); - Loop &l = ((Loop&)(*rect)); - return (&l != (const Loop *)rect); -} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant1.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant1.C deleted file mode 100644 index 978c3e825..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant1.C +++ /dev/null @@ -1,33 +0,0 @@ -// PR c++/5607 - -// { dg-do run } - -class A { -public: - virtual A* getThis() { return this; } -}; - -class B { -int a; -public: - virtual B* getThis() { return this; } -}; - -class AB : public A, public B { -public: - virtual AB* getThis() { return this; } -}; - -int main () -{ - AB* ab = new AB(); - - A* a = ab; - B* b = ab; - - if (a->getThis() != a - || b->getThis() != b) - return 1; - - return 0; -} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant10.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant10.C deleted file mode 100644 index fe5d03c27..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant10.C +++ /dev/null @@ -1,22 +0,0 @@ -// { dg-do compile } - -// Contributed by Nathan Sidwell 23 Oct 2003 <nathan@codesourcery.com> -// Origin: grigory@stl.sarov.ru -// PR c++/12699 ICE with covariancy - -struct c1 { - virtual void f1() const {} -}; - -struct c5 {}; - -struct c6 : virtual c1 { - virtual c5* f33() const {} -}; - -struct c13 : virtual c5 { }; - -struct c17 : virtual c6 -{ - virtual c13* f33() const {} -}; diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant11.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant11.C deleted file mode 100644 index acba965f3..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant11.C +++ /dev/null @@ -1,29 +0,0 @@ -// { dg-do compile } - -// Contributed by Nathan Sidwell 23 Oct 2003 <nathan@codesourcery.com> -// Origin: grigory@stl.sarov.ru -// PR c++/12700 ICE with covariancy - -struct c2 { int i; }; - -struct c1 { - virtual c2& f8() {} -}; - -struct c3 : c1, c2 { - virtual c2& f8() {} -}; - -struct c11 : public c1 { - virtual c3& f8() {} -}; - -struct c15 : virtual c3 { - virtual c2& f8() {} -}; - -struct c18 : virtual c11 { - virtual c15& f8(); -}; - -c15& c18::f8() { throw 0; } diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant12.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant12.C deleted file mode 100644 index 434082abb..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant12.C +++ /dev/null @@ -1,18 +0,0 @@ -// Copyright (C) 2004 Free Software Foundation, Inc. -// Contributed by Nathan Sidwell 27 Feb 2005<nathan@codesourcery.com> - -// PR 20232: ICE on invalid - -struct T { }; - -struct S; - -struct B -{ - virtual T *Foo (); // { dg-error "overriding" "" } -}; - -struct D : B -{ - virtual S *Foo (); // { dg-error "invalid covariant" "" } -}; diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant13.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant13.C deleted file mode 100644 index af60840c8..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant13.C +++ /dev/null @@ -1,25 +0,0 @@ -// Copyright (C) 2004 Free Software Foundation, Inc. -// Contributed by Nathan Sidwell 8 May 2005<nathan@codesourcery.com> - -// Origin:Andrew Pinski: pinskia@gcc.gnu.org -// PR 21427: ICE on valid - -struct B1 { - public: - virtual void foo(); -}; - -struct B2 { - public: - virtual B2 & bar() = 0; -}; - -struct I : public B1, B2 { - public: - virtual ~I(); - virtual I & bar(); -}; - -struct D : public I { - virtual ~D(); -}; diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant14.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant14.C deleted file mode 100644 index 13ca877b4..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant14.C +++ /dev/null @@ -1,20 +0,0 @@ -// Copyright (C) 2005 Free Software Foundation, Inc. -// Contributed by Nathan Sidwell 18 Oct 2005 <nathan@codesourcery.com> - -// PR 22604 -// Origin: Volker Reichelt <reichelt@gcc.gnu.org> - -struct A; - -struct B -{ - virtual A* foo(); // { dg-error "overriding" "" } -}; - -namespace N -{ - struct A : B - { - virtual A* foo(); // { dg-error "invalid covariant" "" } - }; -} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant15.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant15.C deleted file mode 100644 index 4696cc633..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant15.C +++ /dev/null @@ -1,18 +0,0 @@ -/* This used to ICE (PR c++/27492) */ -/* { dg-do "compile" } */ - -struct A {}; - -class B : A -{ - virtual A* foo(); /* { dg-error "overriding" } */ -}; - -struct C : virtual B -{ - virtual C* foo(); /* { dg-error "invalid covariant return type" } */ -}; - -C* C::foo() { return 0; } - -struct D : C {}; diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant16.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant16.C deleted file mode 100644 index de9307e89..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant16.C +++ /dev/null @@ -1,17 +0,0 @@ -/* PR c++/28253 This used to ICE. */ -/* { dg-do compile } */ - -struct A -{ - virtual A* foo(); -}; - -struct B : virtual A -{ - virtual B* foo(); /* { dg-error "overriding" } */ -}; - -struct C : B -{ - virtual C& foo(); /* { dg-error "conflicting return type" } */ -}; diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant17.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant17.C deleted file mode 100644 index b2de15f7e..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant17.C +++ /dev/null @@ -1,43 +0,0 @@ -// PR c++/43120 -// { dg-do run } - -extern "C" void abort (); - -struct A { - int a; - - A(int a_) : a(a_) {} - - A(const A &other) { } - - virtual void dummy() {} -}; - -struct B { - virtual B *clone() const = 0; -}; - -struct C : public virtual B { - virtual C *clone() const = 0; -}; - -struct E* ep; -struct E : public A, public C { - E(int a_) : A(a_) { ep = this; } - - virtual E *clone() const { - if (this != ep) - abort(); - return 0; - } -}; - -int main() { - E *a = new E(123); - C *c = a; - B *b = a; - c->clone(); - b->clone(); - delete a; - return 0; -} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant18.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant18.C deleted file mode 100644 index 31e62165e..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant18.C +++ /dev/null @@ -1,41 +0,0 @@ -// PR c++/47873 -// { dg-do run } - -struct Base -{ - virtual ~Base(){} - - virtual Base& This() { return *this; } -}; - - -struct Ent : virtual Base -{ - void *m_Body; - - Ent& This() { return *this; } - - virtual Ent& body() - { - return This(); - } - -}; - - -struct Msg : virtual Ent -{ - Msg() - { - body(); - } - - Msg& This() { return *this; } -}; - -int main() -{ - Msg m; - - return 0; -} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant19.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant19.C deleted file mode 100644 index 22c2b0eb6..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant19.C +++ /dev/null @@ -1,14 +0,0 @@ -// PR c++/46220 -// According to the letter of the standard this is invalid, -// but that seems like a bug. - -class Baz; -class Foo { -public: - virtual const Baz* getBaz() = 0; -}; -class Bar : public Foo { -public: - Baz* getBaz(); -}; - diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant2.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant2.C deleted file mode 100644 index b6d93d6b5..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant2.C +++ /dev/null @@ -1,70 +0,0 @@ -// { dg-do run } - -// Copyright (C) 2002 Free Software Foundation, Inc. -// Contributed by Nathan Sidwell 27 Nov 2002 <nathan@codesourcery.com> - -// covariant returns. Fixed offset. - -struct B1; -struct B2; -struct D; - -struct B1 -{ - virtual B1 *foo1 () {return this;} - virtual B2 *foo2 (D *); -}; -struct B2 -{ - virtual B2 *baz1 () {return this;} - virtual B1 *baz2 (D *); -}; - -struct D : B1, B2 -{ - virtual D *foo1 () {return this;} - virtual D *foo2 (D *d) {return d;} - virtual D *baz1 () {return this;} - virtual D *baz2 (D *d) {return d;} -}; - -B2 *B1::foo2 (D *d) {return d;} -B1 *B2::baz2 (D *d) {return d;} - -int test (B1 *b1, B2 *b2, D *d) -{ - if (b1->foo1 () != b1) - return 1; - if (b2->baz1 () != b2) - return 2; - if (b1->foo2 (d) != b2) - return 3; - if (b2->baz2 (d) != b1) - return 4; - return 0; -} - -int test (D *d) -{ - if (d->foo2 (d) != d) - return 11; - if (d->baz2 (d) != d) - return 12; - if (d->foo1 () != d) - return 13; - if (d->baz1 () != d) - return 14; - return 0; -} - -int main () -{ - D d; - int r; - - if ((r = test (&d, &d, &d))) - return r; - if ((r = test (&d))) - return r; - return 0; -} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant20.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant20.C deleted file mode 100644 index cf7e196fe..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant20.C +++ /dev/null @@ -1,10 +0,0 @@ -// PR c++/51812 -// { dg-do link } - -class Object { - virtual Object* clone() const; -}; -class DNA: virtual public Object { - virtual DNA* clone() const {return new DNA(*this);} -}; -int main() { } diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant3.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant3.C deleted file mode 100644 index b7024c455..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant3.C +++ /dev/null @@ -1,70 +0,0 @@ -// { dg-do run } - -// Copyright (C) 2002 Free Software Foundation, Inc. -// Contributed by Nathan Sidwell 27 Nov 2002 <nathan@codesourcery.com> - -// covariant returns. Virtual offset. - -struct B1; -struct B2; -struct D; - -struct B1 -{ - virtual B1 *foo1 () {return this;} - virtual B2 *foo2 (D *); -}; -struct B2 -{ - virtual B2 *baz1 () {return this;} - virtual B1 *baz2 (D *); -}; - -struct D : virtual B1, virtual B2 -{ - virtual D *foo1 () {return this;} - virtual D *foo2 (D *d) {return d;} - virtual D *baz1 () {return this;} - virtual D *baz2 (D *d) {return d;} -}; - -B2 *B1::foo2 (D *d) {return d;} -B1 *B2::baz2 (D *d) {return d;} - -int test (B1 *b1, B2 *b2, D *d) -{ - if (b1->foo1 () != b1) - return 1; - if (b2->baz1 () != b2) - return 2; - if (b1->foo2 (d) != b2) - return 3; - if (b2->baz2 (d) != b1) - return 4; - return 0; -} - -int test (D *d) -{ - if (d->foo2 (d) != d) - return 11; - if (d->baz2 (d) != d) - return 12; - if (d->foo1 () != d) - return 13; - if (d->baz1 () != d) - return 14; - return 0; -} - -int main () -{ - D d; - int r; - - if ((r = test (&d, &d, &d))) - return r; - if ((r = test (&d))) - return r; - return 0; -} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant4.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant4.C deleted file mode 100644 index 8f6101b3f..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant4.C +++ /dev/null @@ -1,76 +0,0 @@ -// { dg-do run } - -// Copyright (C) 2002 Free Software Foundation, Inc. -// Contributed by Nathan Sidwell 27 Nov 2002 <nathan@codesourcery.com> - -// covariant returns. Fixed & virtual offset. - -struct B1; -struct B2; -struct D; - -struct B1 -{ - virtual B1 *foo1 () {return this;} - virtual B2 *foo2 (D *); -}; - -struct B2 -{ - virtual B2 *baz1 () {return this;} - virtual B1 *baz2 (D *); -}; - -struct Pad1 { virtual ~Pad1 (){}}; -struct Pad2 { virtual ~Pad2 (){}}; -struct Proxy1 : Pad1, B1 {}; -struct Proxy2 : Pad2, B2 {}; - -struct D : virtual Proxy1, virtual Proxy2 -{ - virtual D *foo1 () {return this;} - virtual D *foo2 (D *d) {return d;} - virtual D *baz1 () {return this;} - virtual D *baz2 (D *d) {return d;} -}; - -B2 *B1::foo2 (D *d) {return d;} -B1 *B2::baz2 (D *d) {return d;} - -int test (B1 *b1, B2 *b2, D *d) -{ - if (b1->foo1 () != b1) - return 1; - if (b2->baz1 () != b2) - return 2; - if (b1->foo2 (d) != b2) - return 3; - if (b2->baz2 (d) != b1) - return 4; - return 0; -} - -int test (D *d) -{ - if (d->foo2 (d) != d) - return 11; - if (d->baz2 (d) != d) - return 12; - if (d->foo1 () != d) - return 13; - if (d->baz1 () != d) - return 14; - return 0; -} - -int main () -{ - D d; - int r; - - if ((r = test (&d, &d, &d))) - return r; - if ((r = test (&d))) - return r; - return 0; -} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant5.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant5.C deleted file mode 100644 index a46b1bf20..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant5.C +++ /dev/null @@ -1,27 +0,0 @@ -// { dg-do compile } - -// Copyright (C) 2002 Free Software Foundation, Inc. -// Contributed by Nathan Sidwell 27 Dec 2002 <nathan@codesourcery.com> - -// We ICE'd - -struct c0 {}; - -struct c1 : virtual c0 -{ - virtual c0 &f2(); -}; - -struct c3 : c1 -{ - virtual c1 &f2(); -}; - -c1 &c3::f2() -{ - throw 0; -} - -struct c4 : virtual c3 -{ -}; diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant6.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant6.C deleted file mode 100644 index dc5597153..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant6.C +++ /dev/null @@ -1,27 +0,0 @@ -// { dg-do compile } - -// Copyright (C) 2002 Free Software Foundation, Inc. -// Contributed by Nathan Sidwell 27 Dec 2002 <nathan@codesourcery.com> - -// We ICE'd - -struct c0 {}; - -struct c1 : virtual c0 -{ - virtual c0 &f2(); -}; - -struct c3 : virtual c1 -{ - virtual c1 &f2(); -}; - -c1 &c3::f2() -{ - throw 0; -} - -struct c4 : virtual c3 -{ -}; diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant7.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant7.C deleted file mode 100644 index 4f0c7f7dd..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant7.C +++ /dev/null @@ -1,51 +0,0 @@ -// { dg-do compile } -// { dg-prune-output "direct base" } -// { dg-options "-fdump-class-hierarchy" } - -// Copyright (C) 2002 Free Software Foundation, Inc. -// Contributed by Nathan Sidwell 27 Dec 2002 <nathan@codesourcery.com> - -// We ICE'd - -struct c0 {}; - -struct c1 : virtual c0 -{ - virtual c0 &f2() volatile; -}; - -struct c2 -{ - int m; -}; - -struct c3 : virtual c0, virtual c1, c2 -{ - virtual c1 &f2() volatile; -}; - -struct c4 : virtual c3, virtual c0, virtual c1 -{ - int m; -}; - -struct c6 : c0, c3, c4 -{ - virtual c1 &f2() volatile; -}; - -// f2 appears four times in the c6 vtables: -// once in c1-in-c3-in-c6 - covariant, virtual base, uses c1 vcall offset and c0 vbase offset -// { dg-final { scan-tree-dump "24 .*c6::_ZTcv0_n16_v0_n12_NV2c62f2Ev" "class" { target ilp32 } } } -// { dg-final { scan-tree-dump "48 .*c6::_ZTcv0_n32_v0_n24_NV2c62f2Ev" "class" { target lp64 } } } -// once in c3-in-c6 - non-covariant, non-virtual base, calls f2 directly -// { dg-final { scan-tree-dump "28 .*c6::f2" "class" { target ilp32 } } } -// { dg-final { scan-tree-dump "56 .*c6::f2" "class" { target lp64 } } } -// once in c1-in-c3-in-c4-in-c6 - lost primary -// { dg-final { scan-tree-dump "80 .*0u" "class" { target ilp32 } } } -// { dg-final { scan-tree-dump "160 .*0u" "class" { target lp64 } } } -// once in c3-in-c4-in-c6 - c3 vcall offset -// { dg-final { scan-tree-dump "84 .*c6::_ZTv0_n16_NV2c62f2Ev" "class" { target ilp32 } } } -// { dg-final { scan-tree-dump "168 .*c6::_ZTv0_n32_NV2c62f2Ev" "class" { target lp64 } } } - -// { dg-final { cleanup-tree-dump "class" } } diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant8.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant8.C deleted file mode 100644 index 33dc43106..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant8.C +++ /dev/null @@ -1,34 +0,0 @@ -// { dg-do compile } - -// Copyright (C) 2002 Free Software Foundation, Inc. -// Contributed by Nathan Sidwell 31 Dec 2002 <nathan@codesourcery.com> - -// ICE with covariant thunks. - -struct c0 {}; - -struct c1 : virtual c0 -{ - virtual c0 &f2 (); -}; - -struct c2 -{ - int m; -}; - -struct c3 : virtual c0, virtual c1, c2 -{ - virtual c1 &f2 (); -}; - -c1 &c3::f2 () -{ - throw 0; -} - -struct c4 : virtual c3, virtual c0, virtual c1 {}; - -struct c8 : virtual c2, virtual c0 {}; - -struct c12 : virtual c4, virtual c3, virtual c8 {}; diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant9.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant9.C deleted file mode 100644 index 62c3a2202..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/covariant9.C +++ /dev/null @@ -1,32 +0,0 @@ -// { dg-do link } -// { dg-options "-w -ansi -pedantic" } - -// Contributed by Nathan Sidwell 23 Oct 2003 <nathan@codesourcery.com> -// Origin: grigory@stl.sarov.ru -// PR c++/12698. Duplicate covariant thunks emitted. - -struct c1 {}; - -struct c0 { - int i; - virtual c1& f10() {} -}; - -struct c2 : virtual c1, c0 { }; - -struct c6 : virtual c2, c0 { - virtual c2& f10() {} -}; - -struct c14 : virtual c2 { }; - -struct c19 : virtual ::c6 { - virtual class ::c14& f10() {} -}; - -int main () -{ - c19 obj; -} - - diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/crash1.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/crash1.C deleted file mode 100644 index d5eb7c26a..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/crash1.C +++ /dev/null @@ -1,6 +0,0 @@ -// PR c++/30298 - -union A {}; - -struct B : A {}; // { dg-error "fails to be a struct or class type" } -struct B : A {}; // { dg-error "redefinition" } diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/crash2.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/crash2.C deleted file mode 100644 index 0d82f773e..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/crash2.C +++ /dev/null @@ -1,6 +0,0 @@ -// PR c++/30298 - -struct A {}; - -struct B : A, A {}; // { dg-error "duplicate base type" } -struct B : A, A {}; // { dg-error "redefinition" } diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/crash3.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/crash3.C deleted file mode 100644 index e6094b04a..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/crash3.C +++ /dev/null @@ -1,11 +0,0 @@ -// PR c++/51326 - -struct A -{ - virtual int& foo(); // { dg-error "overriding" } -}; - -struct B : A -{ - B& foo(); // { dg-error "conflicting return type" } -}; diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/error1.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/error1.C deleted file mode 100644 index 1570bf11e..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/error1.C +++ /dev/null @@ -1,10 +0,0 @@ -// PR 12486 - -struct A { int ma; }; -struct B { }; - -void foo() -{ - B *b; - b->A::ma=0; // { dg-error "" } -} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/error2.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/error2.C deleted file mode 100644 index 7d5e2e5d6..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/error2.C +++ /dev/null @@ -1,16 +0,0 @@ -// PR c++/28259 -// { dg-do compile } - -struct A -{ - virtual A* foo(); // { dg-error "overriding" } -}; - -struct B : virtual A; // { dg-error "before" } - -struct C : A -{ - virtual B* foo(); // { dg-error "invalid covariant" } -}; - -B* C::foo() { return 0; } diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/error3.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/error3.C deleted file mode 100644 index 0b75b9dfb..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/error3.C +++ /dev/null @@ -1,11 +0,0 @@ -//PR c++/27316 - -struct A {}; - -struct B : A -! // { dg-error "token" } -{}; - -struct B : A -! // { dg-error "token" } -{}; diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/error4.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/error4.C deleted file mode 100644 index 4f6866ed8..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/error4.C +++ /dev/null @@ -1,10 +0,0 @@ -//PR c++/28740 - -struct A { virtual ~A(); }; - -struct B : A A {}; // { dg-error "expected|initializer|invalid" } - -A foo(const B &b) // { dg-error "" } -{ - return b; -} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/error5.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/error5.C deleted file mode 100644 index e38e106b1..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/error5.C +++ /dev/null @@ -1,14 +0,0 @@ -// PR c++/48489 - -struct Base{ }; - -struct Concrete : Base -{ - void setValue(); -}; - -int main() -{ - Concrete d; - d.Base::setValue(); // { dg-error "struct Base" } -} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/implicit-trivial1.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/implicit-trivial1.C deleted file mode 100644 index e63bd3435..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/implicit-trivial1.C +++ /dev/null @@ -1,23 +0,0 @@ -// PR c++/46807 -// { dg-options -std=c++98 } -// In C++98/03, B::B(const B&) is trivial because A::A(const A&) is trivial, -// even though doing overload resolution would mean calling the template -// constructor. In C++0x, we do overload resolution to determine triviality. - -struct A -{ - A() {} -private: - template <class T> A(T&); -}; - -struct B -{ - mutable A a; -}; - -int main() -{ - B b; - B b2(b); -} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/local1.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/local1.C deleted file mode 100644 index 3cb196c38..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/local1.C +++ /dev/null @@ -1,10 +0,0 @@ -// PR c++/17121 - -struct A { - virtual ~A() {} -}; - -void tsk_tsk() -{ - struct B : public A {}; -} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/local2.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/local2.C deleted file mode 100644 index 82d812ca2..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/local2.C +++ /dev/null @@ -1,16 +0,0 @@ -// PR c++/17155 -// { dg-do link } - -struct A { - virtual ~A() {} -}; - - -void tsk_tsk(void) -{ - struct B : public A { - B(int) {} - }; -} - -int main () {} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/local3.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/local3.C deleted file mode 100644 index b11646422..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/local3.C +++ /dev/null @@ -1,14 +0,0 @@ -// PR c++/13744 (ice-on-valid-code) -// Origin: Thom Harp <thomharp@charter.net> - -// { dg-do compile } - -template<int> void foo() -{ - struct A - { - virtual void bar() { A a(*this); } - } a; -} - -template void foo<0>(); diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/multiple1.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/multiple1.C deleted file mode 100644 index 3eb9fe763..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/multiple1.C +++ /dev/null @@ -1,20 +0,0 @@ -// { dg-options "-w" } - -struct Base { - int b; - - Base(int b) : b(b) { } -}; - -struct Derived : public Base { - Derived(int d) : Base(d) { } -}; - -struct Final : public Derived, public Base { - Final(int f) : Derived(f), Base(f-1) { } -}; - -int main() -{ - Final f(5); -} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/namespace-as-base.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/namespace-as-base.C deleted file mode 100644 index 041c18abc..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/namespace-as-base.C +++ /dev/null @@ -1,9 +0,0 @@ -// { dg-do compile } - -namespace Out { - namespace In { - } -} - -class Klasse : public Out::In { // { dg-error ".*" "" } -}; diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/null1.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/null1.C deleted file mode 100644 index 0908a01b9..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/null1.C +++ /dev/null @@ -1,15 +0,0 @@ -// PR c++/5453: Test that we don't assume that the pointer target of a -// reference is non-null just because we know the reference isn't. - -// { dg-do run } - -struct V { }; -struct A: virtual public V { }; - -A* ap; -A*& apr (ap); - -int main () -{ - V* vp = apr; -} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/operator1.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/operator1.C deleted file mode 100644 index 6ef669c21..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/operator1.C +++ /dev/null @@ -1,34 +0,0 @@ -// Test that conversions to base classes happen when calling -// operators. - -// { dg-do run } - -extern "C" void abort (); - -struct B1; -struct B2; - -B2* p; -B1* p2; - -struct B1 { - virtual void f () {} -}; - -struct B2 { - int i; - bool operator!() { if (this != p) abort (); return true; } - operator void*() { if (this != p) abort (); return this; } -}; - -struct B3 : public B1, public B2 { -}; - -int main () { - B3 b; - p = (B2*) &b; - p2 = (B1*) &b; - bool b1 = b; - bool b2 = !b; -} - diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/operator2.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/operator2.C deleted file mode 100644 index 09407e1b4..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/operator2.C +++ /dev/null @@ -1,22 +0,0 @@ -typedef int INT_TYPEDEF; - -template<class T> -class TypedIfc -{ -public: - virtual ~TypedIfc() { } - virtual operator const T&() const = 0; - virtual const T& operator= (const T& t) = 0; -}; - -template<class Tnative> -class NullIfc : public TypedIfc<Tnative> -{ -public: - const Tnative& operator= (const Tnative& t) { return t; } - operator const Tnative&() const { return *(Tnative *)0; } -}; - -typedef TypedIfc<INT_TYPEDEF> INT_TYPEDEFIfc; - -NullIfc<int> i32; diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/override-attribs.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/override-attribs.C deleted file mode 100644 index 6f5c9288e..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/override-attribs.C +++ /dev/null @@ -1,23 +0,0 @@ -// PR c++/14688 -// { dg-do compile { target { { i?86-*-* x86_64-*-* } && ia32 } } } - -class one -{ -public: - virtual void - test(void* value); // { dg-error "overriding" } -}; - -class two : public one -{ -public: - void __attribute__((regparm(2))) - test(void* value); // { dg-error "conflicting type attributes" } -}; - -class three : public one -{ -public: - void __attribute__ ((cdecl)) - test(void* value); // OK -}; diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/override1.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/override1.C deleted file mode 100644 index 8f8004641..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/override1.C +++ /dev/null @@ -1,20 +0,0 @@ -// { dg-options "-w" } - -struct c0 { virtual void f (); }; -struct c1 : public c0 {}; -struct c2 : public c0 {}; -struct c3 : virtual public c0, public c1, public c2 {}; -struct c5 {}; -struct c7 : virtual public c3 {}; -struct c8 : virtual public c1 { virtual void f (); }; -struct c9 {}; -struct c10 : virtual public c8, virtual public c7 {}; -struct c11 : virtual public c5 {}; -struct c12 : virtual public c8, public c7 {}; -struct c13 : public c9, public c3, virtual public c2 {}; -struct c14 : virtual public c1, virtual public c5, virtual public c0, - public c2 {}; -struct c15 : public c14, public c12, virtual public c3 {}; -struct c16 : public c12, public c10, public c2 { virtual void f (); }; -struct c17 : virtual public c13, public c15, virtual public c0, - virtual public c16 {}; diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/pr30297.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/pr30297.C deleted file mode 100644 index a8edf8485..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/pr30297.C +++ /dev/null @@ -1,11 +0,0 @@ -// Regression test for ICE from PR c++/30297. - -struct A -{ - int i; -}; - -extern "C" struct B : A -{ - A::i; // { dg-warning "deprecated" } -}; diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/pr48798.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/pr48798.C deleted file mode 100644 index cc9921e69..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/pr48798.C +++ /dev/null @@ -1,4 +0,0 @@ -// PR c++/48798 - -typedef struct A {} const t; -struct B : t {}; diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/ptrmem1.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/ptrmem1.C deleted file mode 100644 index 375efc811..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/ptrmem1.C +++ /dev/null @@ -1,21 +0,0 @@ -// PR c++/14803 -// { dg-options "-Werror" } - -struct sc_module { int member; }; - -struct sc_signal_in_if { bool state; }; - -typedef void (sc_module::*SC_ENTRY_FUNC)(); - -class sc_clock : public sc_signal_in_if, public sc_module -{ -public: - sc_clock(); - void posedge_action(); - SC_ENTRY_FUNC fptr; -}; - -sc_clock::sc_clock() -{ - fptr = static_cast<SC_ENTRY_FUNC>(&sc_clock::posedge_action); -} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/ptrmem2.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/ptrmem2.C deleted file mode 100644 index a13705576..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/ptrmem2.C +++ /dev/null @@ -1,25 +0,0 @@ -// PR c++/16810 - -struct C { - virtual void f() {} -}; - -struct B {virtual ~B() {} }; - -class D : public B, public C -{ -public: - virtual void f() {} -}; - -typedef void ( C::*FP)(); -typedef void ( D::*D_f)(); - -int main() { - D *d = new D(); - C *c = d; - - const FP fptr = (FP) &D::f;; - (d->* (D_f)fptr)(); -} - diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/ptrmem3.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/ptrmem3.C deleted file mode 100644 index 0c06c65df..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/ptrmem3.C +++ /dev/null @@ -1,17 +0,0 @@ -// Copyright (C) 2005 Free Software Foundation, Inc. -// Contributed by Nathan Sidwell 27 May 2005 <nathan@codesourcery.com> - -// Origin:Andrew Pinski pinskia@gcc.gnu.org -// PR 21455 bogus error with pointer to member of incomplete - -class XMLFile; - -typedef bool (XMLFile::*ParserFunctionPtr)(); - -struct ParserElement -{ - ParserFunctionPtr getPreFunc() const { return preFunc; } - ParserFunctionPtr getPostFunc() const { return postFunc; } - ParserFunctionPtr preFunc; - ParserFunctionPtr postFunc; -}; diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/pure1.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/pure1.C deleted file mode 100644 index ddd3cb332..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/pure1.C +++ /dev/null @@ -1,19 +0,0 @@ -// PR c++/23266 -// Origin: Volker Reichelt <reichelt@igpm.rwth-aachen.de> -// { dg-do compile } - -void foo0() = 0; // { dg-error "like a variable" } -virtual void foo1() = 0; // { dg-error "outside class|variable" } - -struct A -{ - void foo2() = 0; // { dg-error "non-virtual" } - static void foo3() = 0; // { dg-error "static member" } - virtual static void foo4() = 0; // { dg-error "both virtual and static" } - virtual void foo5() = 0; // { dg-error "base class" } -}; - -struct B : A -{ - static void foo5() = 0; // { dg-error "static member|declared" } -}; diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/sizeof1.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/sizeof1.C deleted file mode 100644 index 06d5c9993..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/sizeof1.C +++ /dev/null @@ -1,17 +0,0 @@ -// PR c++/35007 - -struct AffEntry -{ - union { - char base[256]; - } conds; -}; - -struct PfxEntry -: public AffEntry -{ - PfxEntry() - { - sizeof(conds.base[0]); - } -}; diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/template-as-base.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/template-as-base.C deleted file mode 100644 index 5d34b15d8..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/template-as-base.C +++ /dev/null @@ -1,9 +0,0 @@ -// Contributed by Gabriel Dos Reis <gdr@codesourcery.com> -// Distilled from PR C++/3656 - -namespace N -{ - template<typename> struct X { }; -} - -struct A : N::X { }; // { dg-error "expected class-name" "" } diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/thunk1.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/thunk1.C deleted file mode 100644 index 3bbd05069..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/thunk1.C +++ /dev/null @@ -1,41 +0,0 @@ -// { dg-do run { target i?86-*-* x86_64-*-* s390*-*-* alpha*-*-* ia64-*-* sparc*-*-* } } - -#include <stdarg.h> - -extern "C" void abort (); - -struct A { - virtual void f (int, ...) {} - int i; -}; - -struct B : virtual public A { -}; - -struct C : public B { - C (); - virtual void f (int, ...); -}; - -extern C* cp; - -C::C () { cp = this; } - -void C::f (int i, ...) { - if (this != cp) - abort (); - va_list ap; - if (i != 3) - abort (); - va_start (ap, i); - if (va_arg (ap, int) != 7) - abort (); - va_end (ap); -} - -C* cp = new C; - -int main () -{ - cp->f (3, 7); -} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/thunk10.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/thunk10.C deleted file mode 100644 index 702067749..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/thunk10.C +++ /dev/null @@ -1,60 +0,0 @@ -/* { dg-options "-mthumb" { target arm*-*-* } } */ -/* { dg-do run } */ -/* { dg-timeout 100 } */ - -/* PR middle-end/39378 */ -/* Check if the thunk target function is emitted correctly. */ -class B1 -{ -public: - virtual int foo1(void); - int b1; -}; - -class B2 -{ -public: - virtual int foo2 (void); - int b2; -}; - -class D : public B1, public B2 -{ - int foo1(void); - int foo2(void); - int d; -}; - -int B1::foo1(void) -{ - return 3; -} - -int B2::foo2(void) -{ - return 4; -} - -int D::foo1(void) -{ - return 1; -} - -int D::foo2(void) -{ - return 2; -} - -__attribute__((noinline)) int test(B2* bp) -{ - return bp->foo2(); -} - -int main() -{ - B2 *bp = new D(); - if (test(bp) == 2) - return 0; - else - return 1; -} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/thunk11-aux.cc b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/thunk11-aux.cc deleted file mode 100644 index 7009d6c50..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/thunk11-aux.cc +++ /dev/null @@ -1,4 +0,0 @@ -// { dg-do compile } -// { dg-options "-O2" } - -#include "thunk11.h" diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/thunk11.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/thunk11.C deleted file mode 100644 index 6e3bc329c..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/thunk11.C +++ /dev/null @@ -1,11 +0,0 @@ -// PR c++/42256 -// { dg-do link } -// { dg-additional-sources "thunk11-aux.cc" } -// { dg-options "-O2" } - -#include "thunk11.h" - -int -main () -{ -} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/thunk11.h b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/thunk11.h deleted file mode 100644 index 641f40e4e..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/thunk11.h +++ /dev/null @@ -1,16 +0,0 @@ -struct A -{ - A () {} - virtual ~A () {} -}; -struct B -{ - B () {} - virtual ~B () {} -}; -struct C : public A, public B -{ - virtual void foo (); - virtual ~C () {}; -}; -inline void C::foo () {} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/thunk2.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/thunk2.C deleted file mode 100644 index 094891c7a..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/thunk2.C +++ /dev/null @@ -1,19 +0,0 @@ -// PR c++/14108 - -class ClassC { -public: - ~ClassC(); -}; - -class ClassA { - virtual ClassC f(); -}; - -class ClassB : public virtual ClassA { - virtual ClassC f(); -}; - -ClassC ClassB::f() { - return ClassC(); -} - diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/thunk3.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/thunk3.C deleted file mode 100644 index 9787aa9c6..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/thunk3.C +++ /dev/null @@ -1,12 +0,0 @@ -// PR c++/18492 - -struct X{ ~X(); }; -struct B -{ - virtual void a( X ) = 0; -}; -struct D : public virtual B -{ - void a( X ); -}; -void D::a( X ){} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/thunk4.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/thunk4.C deleted file mode 100644 index a6e913e59..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/thunk4.C +++ /dev/null @@ -1,23 +0,0 @@ -// PR c++/21123 - -struct A -{ - A( const A &a); - const A& operator=( const A& a); -}; - -struct B -{ - virtual A f(); -}; - -struct C : virtual B -{ - virtual A f(); - A a; -}; - -A C::f() -{ - return a; -} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/thunk5.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/thunk5.C deleted file mode 100644 index 05dba3638..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/thunk5.C +++ /dev/null @@ -1,22 +0,0 @@ -// PR c++/21123 - -struct A -{ - A(const A &a); - const A& operator=(const A& a); -}; - -struct B -{ - virtual A f(A); -}; - -struct C : virtual B -{ - virtual A f(A); -}; - -A C::f(A a) -{ - return a; -} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/thunk6.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/thunk6.C deleted file mode 100644 index b8e316d08..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/thunk6.C +++ /dev/null @@ -1,16 +0,0 @@ -// PR c++/26957 - -struct LongDouble { - char ld[16]; -}; - -struct DynAny { - virtual void insert_longdouble(LongDouble value) = 0; -}; - -struct TAO_DynCommon : public virtual DynAny { - virtual void insert_longdouble (LongDouble value); -}; - -void TAO_DynCommon::insert_longdouble (LongDouble value) { } - diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/thunk7.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/thunk7.C deleted file mode 100644 index 0e16d8954..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/thunk7.C +++ /dev/null @@ -1,55 +0,0 @@ -// { dg-do run } - -#include <stdlib.h> - -class A -{ - int a, b; -public: - virtual void foo (int a, int b, int c, int d); -}; - -class B -{ - int c, d; -public: - virtual void bar (int a, int b, int c, int d); -}; - -class D : public virtual A, public virtual B -{ - int e, f; -}; - -void A::foo(int a, int b, int c, int d) -{ - if (a != 1 || b != 2 || c != 3 || d != 4) - abort (); -} - -void B::bar (int a, int b, int c, int d) -{ - if (a != 5 || b != 6 || c != 7 || d != 8) - abort (); -} - -class C: private D, public virtual A, public virtual B -{ -public: - virtual void foo (int a, int b, int c, int d) { A::foo (a, b, c, d); D::A::foo (a, b, c, d); } - virtual void bar (int a, int b, int c, int d) { B::bar (a, b, c, d); D::B::bar (a, b, c, d); } -}; - -C c1; -C *c2 = &c1; -A *c3 = &c1; -B *c4 = &c1; - -int main() -{ - c2->foo (1, 2, 3, 4); - c2->bar (5, 6, 7, 8); - c3->foo (1, 2, 3, 4); - c4->bar (5, 6, 7, 8); - return 0; -} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/thunk8.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/thunk8.C deleted file mode 100644 index ef6453568..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/thunk8.C +++ /dev/null @@ -1,26 +0,0 @@ -/* PR target/27387 - We used to generate a non-PIC thunk on thumb even with -fPIC. - Make sure that won't happen anymore. */ - -/* { dg-do compile } */ -/* { dg-require-effective-target arm_thumb1_ok } */ -/* { dg-options "-mthumb -fPIC" } */ - -struct A { - virtual void f (); -}; - -struct B { - virtual void g (); -}; - -struct C : public A, public B { - virtual void g(); -}; - -void -C::g() -{ -} - -/* { dg-final { scan-assembler "LTHUNKPC" } } */ diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/thunk9.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/thunk9.C deleted file mode 100644 index 9eb9999f3..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/thunk9.C +++ /dev/null @@ -1,14 +0,0 @@ -// PR tree-optimization/37095 -// { dg-options "-O" } - -struct A -{ - virtual A *foo (); -}; - -struct B : virtual A -{ - virtual B *foo () { return 0; } -}; - -B b; diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/typedef1.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/typedef1.C deleted file mode 100644 index 20da08b2c..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/typedef1.C +++ /dev/null @@ -1,8 +0,0 @@ -namespace NS { -class X {}; -typedef X Y; -} - -struct Base : virtual public NS::Y { - Base() : NS::Y() {} -}; diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/typeinfo1.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/typeinfo1.C deleted file mode 100644 index 794776ecb..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/typeinfo1.C +++ /dev/null @@ -1,18 +0,0 @@ -typedef struct { - virtual const char *blah() { - return "Heya::blah"; - } -} Heya; - -struct Grok : public Heya { - virtual const char *blah() { - return "Grok::blah"; - } -}; - -int main() { - Grok *g = new Grok(); - delete g; - return 0; -} - diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/union1.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/union1.C deleted file mode 100644 index da46096c8..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/union1.C +++ /dev/null @@ -1,14 +0,0 @@ -// PR c++/15507 - -struct A { - // empty -}; - -struct B : A { - int b; -}; - -union U { - A a; - B b; -}; diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/using1.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/using1.C deleted file mode 100644 index 03c9144e5..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/using1.C +++ /dev/null @@ -1,34 +0,0 @@ -// Test that overloading on 'this' quals works with class using-declarations. - -// { dg-do link } - -struct A { - void f() const; - void f() {} - void g() const {} - void g(); - void h() const; - void h(); - void i() const; - void i() {} -}; - -struct B: private A { - using A::f; - using A::g; - void h () const {} - using A::h; - void i () const {} - using A::i; -}; - -int main() -{ - B b1; - const B b2 = B(); - - b1.f (); - b2.g (); - b2.h (); - b1.i (); -} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/using2.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/using2.C deleted file mode 100644 index 19f06e9cc..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/using2.C +++ /dev/null @@ -1,25 +0,0 @@ -// { dg-do run } - -// Copyright (C) 2002 Free Software Foundation, Inc. -// Contributed by Nathan Sidwell 15 Sep 2002 <nathan@codesourcery.com> - -// PR 7919. Methods found via using decls didn't have their this -// pointers converted to the final base type. - -struct Base { - int m; - protected: - void *Return () { return this; } -}; - -struct Derived : Base { - using Base::Return; - virtual ~Derived () {} -}; - -int main () -{ - Derived d; - - return static_cast <Base *> (&d) != d.Return (); -} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/using3.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/using3.C deleted file mode 100644 index d2acf8009..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/using3.C +++ /dev/null @@ -1,19 +0,0 @@ -class A -{ -public: - typedef int T; - int a; -}; - -class B : virtual private A -{ -}; - -class C : virtual private A, public B -{ -public: - using A::a; - using A::T; -}; - -C::T x; diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/using4.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/using4.C deleted file mode 100644 index 4b7a28f0f..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/using4.C +++ /dev/null @@ -1,14 +0,0 @@ -// Copyright (C) 2005 Free Software Foundation, Inc. -// Contributed by Nathan Sidwell 6 Jun 2005 <nathan@codesourcery.com> - -// PR 20613:uninformative diagnostic -// Origin: Wolfgang Bangerth <bangerth@dealii.org> - -struct B { - void f(); -}; - -struct D : B { - using B::f; // { dg-message "previous declaration" } - using B::f; // { dg-error "redeclaration" } -}; diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/using5.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/using5.C deleted file mode 100644 index b8e51078f..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/using5.C +++ /dev/null @@ -1,17 +0,0 @@ -// Copyright (C) 2005 Free Software Foundation, Inc. -// Contributed by Nathan Sidwell 8 Jun 2005 <nathan@codesourcery.com> - -// PR 19496: Missing error during parsing. -// Origin: Volker Reichelt <reichelt@gcc.gnu.org> - -template<int> struct A -{ - A::A; // { dg-error "constructor|not a base" } -}; - -struct B -{ - void f (); - using B::f; // { dg-error "not a base" } -}; - diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/using6.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/using6.C deleted file mode 100644 index 1877d671a..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/using6.C +++ /dev/null @@ -1,15 +0,0 @@ -// Copyright (C) 2005 Free Software Foundation, Inc. -// Contributed by Nathan Sidwell 8 Jun 2005 <nathan@codesourcery.com> - -struct A -{ - operator int (); -}; - -template <typename T> struct TPL : A -{ - using A::operator T; // { dg-error "operator float" } -}; - -TPL<int> i; -TPL<float> j; // { dg-message "required" } diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/using7.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/using7.C deleted file mode 100644 index de177c91d..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/using7.C +++ /dev/null @@ -1,12 +0,0 @@ -// PR c++/51889 - -struct A { - void f(); -}; - -template <class T> -struct B: A -{ - using A::f; - void f(); -}; diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/virtual1.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/virtual1.C deleted file mode 100644 index 08bcbb143..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/virtual1.C +++ /dev/null @@ -1,12 +0,0 @@ -//PR c++/27952 - -struct A -{ - virtual ~A() {} -}; - -struct B : A, virtual A {}; // { dg-error "duplicate base|forward declaration" } - -struct C : A, B {}; // { dg-error "duplicate base|invalid use" } - -C c; // { dg-error "aggregate" } diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/virtual2.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/virtual2.C deleted file mode 100644 index 9769d4ab7..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/virtual2.C +++ /dev/null @@ -1,13 +0,0 @@ -//PR c++/29022 - -struct A -{ - operator int(); -}; - -struct B : virtual A, A<0> {}; // { dg-error "token" } - -int foo(B &b) -{ - return b; // { dg-error "cannot convert" } -} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/virtual3.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/virtual3.C deleted file mode 100644 index 65ae76c0b..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/virtual3.C +++ /dev/null @@ -1,13 +0,0 @@ -//PR c++/29022 - -struct A -{ - operator int(); -}; - -struct B : virtual A; // { dg-error "token" } - -int foo(B &b) -{ - return b; // { dg-error "cannot convert" } -} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/virtual4.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/virtual4.C deleted file mode 100644 index 5415fdb3c..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/virtual4.C +++ /dev/null @@ -1,24 +0,0 @@ -// PR c++/31027 - -struct A {}; - -template<typename T> -struct C: virtual A { - C() {} - template<typename T_OTHER> C(const C<T_OTHER>&) {} - C func(const class C<long>&) const; - operator bool() const; -}; - -template<typename T> -struct D: C<T> { - void func2() { - C<int>a; - a.func(a); - } -}; - -void func3() { - C<int>a; - a.func(a); -} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/virtual5.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/virtual5.C deleted file mode 100644 index bed0ef3a0..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/virtual5.C +++ /dev/null @@ -1,29 +0,0 @@ -// Test that a synthesized op= can override one from a base. -// { dg-do run } - -struct B; - -struct A -{ - virtual B& operator=(const B&); -}; - -struct B: A -{ - B(int i): i(i) { } - int i; - // implicitly-declared op= -}; - -B& A::operator=(const B& b) { return static_cast<B&>(*this); } - -int main() -{ - B b1 (123); - B b2 (0); - - A& ar = b1; - ar = b2; - - return b1.i; -} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/virtual6.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/virtual6.C deleted file mode 100644 index f03696993..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/virtual6.C +++ /dev/null @@ -1,15 +0,0 @@ -// PR c++/45473 - -struct A -{ - virtual void B (); -}; - -struct B : A -{ - B (); -}; - -struct C : B -{ -}; diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/virtual7.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/virtual7.C deleted file mode 100644 index 61f17fe63..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/virtual7.C +++ /dev/null @@ -1,27 +0,0 @@ -// Origin: PR c++/47666 -// { dg-do compile } - -template <typename T> -struct A -{ - int a; -}; - -template <typename T> -struct B : public A <T> -{ -}; - -class D : public B <D *> -{ - virtual D & operator= (const D &); -}; - -class E : virtual public D -{ -}; - -class F : public E -{ - virtual void foo (); -}; diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/virtual8.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/virtual8.C deleted file mode 100644 index 4f6a119b2..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/virtual8.C +++ /dev/null @@ -1,48 +0,0 @@ -// PR c++/48035 -// { dg-do run } - -#include <new> -#include <cstring> -#include <cstdlib> - -struct A -{ - virtual void foo (void) {} - virtual ~A () {} -}; - -struct B : public A -{ - virtual ~B () {} -}; - -struct C -{ - virtual ~C () {} - int c; -}; - -struct D : public virtual B, public C -{ - virtual ~D () {} -}; - -struct E : public virtual D -{ - virtual ~E () {} -}; - -int -main () -{ - char *v = new char[sizeof (E) + 16]; - memset (v, 0x55, sizeof (E) + 16); - E *e = new (v) E (); - e->~E (); - - for (unsigned i = sizeof (E); i < sizeof (E) + 16; ++i) - if (v[i] != 0x55) - abort (); - - delete[] v; -} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/virtual9.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/virtual9.C deleted file mode 100644 index 03342646f..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/virtual9.C +++ /dev/null @@ -1,44 +0,0 @@ -// { dg-do run } -// PR c++/11750 - -struct A -{ - virtual void f() const { __builtin_abort(); } - virtual void g() {} -}; - -struct B : virtual A -{ - virtual void f() const {} - virtual void g() { __builtin_abort(); } -}; - -struct C : B, virtual A -{ - using A::f; - using A::g; -}; - -int main() -{ - C c; - c.f(); // call B::f - - C c2; - c2.C::g(); // call A::g - - C* c3 = &c; - c3->f(); // call B::f - - C& c4 = c; - c4.f(); // call B::f - - C const* c5 = &c; - c5->f(); // call B::f - - C** c6 = &c3; - (*c6)->f(); // call B::f - - C const& c7 = c; - c7.f(); // call B::f -} diff --git a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/volatile1.C b/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/volatile1.C deleted file mode 100644 index 48df50ada..000000000 --- a/gcc-4.8.1/gcc/testsuite/g++.dg/inherit/volatile1.C +++ /dev/null @@ -1,14 +0,0 @@ -// PR c++/19299 -// Origin: Andrew Pinski <pinskia@gcc.gnu.org> - -// { dg-do compile } - -struct V -{ - virtual void foo() = 0; -}; - -void bar(V volatile* p) -{ - p->V::~V(); -} |