X-Git-Url: https://oss.titaniummirror.com/gitweb?a=blobdiff_plain;f=gcc%2Ftestsuite%2Fg%2B%2B.dg%2Fopt%2Fvtgc1.C;fp=gcc%2Ftestsuite%2Fg%2B%2B.dg%2Fopt%2Fvtgc1.C;h=0000000000000000000000000000000000000000;hb=6fed43773c9b0ce596dca5686f37ac3fc0fa11c0;hp=511d45b36e7194bb56c41bdd025afd31521a9a1a;hpb=27b11d56b743098deb193d510b337ba22dc52e5c;p=msp430-gcc.git diff --git a/gcc/testsuite/g++.dg/opt/vtgc1.C b/gcc/testsuite/g++.dg/opt/vtgc1.C deleted file mode 100644 index 511d45b3..00000000 --- a/gcc/testsuite/g++.dg/opt/vtgc1.C +++ /dev/null @@ -1,136 +0,0 @@ -// { dg-do compile } -// { dg-options "-fvtable-gc" } -// Origin: Hans-Peter Nilsson - -class Base0 -{ -public: - Base0(); virtual ~Base0(); - virtual void f1(); - virtual void f2(); -private: - int a_value; -}; - -class Base1 : public Base0 -{ -public: - Base1(); virtual ~Base1(); - virtual void f1(), f2(); - virtual void f3(); -}; - -class Base2 : public Base1 -{ -public: - Base2(); virtual ~Base2(); - virtual void f1(), f2(); - virtual void f4(); -}; - -class VbasedA : virtual public Base2 -{ -public: - VbasedA(); virtual ~VbasedA(); - virtual void f1(), f2(), f3(); - virtual void f6(); -}; - -class Side0 -{ -public: - Side0(); virtual ~Side0(); - virtual void x1(); - virtual void xx(); -private: - int ryan; -}; - -class Multisv0 : public Side0, virtual public Base2 -{ -public: - Multisv0(); virtual ~Multisv0(); - virtual void f1(), f2(); - virtual void f3(); - virtual void f6(); - virtual void xx(); -}; - -class Multivs1 : public Base2, virtual public Side0 -{ -public: - Multivs1(); virtual ~Multivs1(); virtual void f1(); virtual void fx2(); - virtual void fx4(), fx5(); - virtual void f6(); - virtual void xx(); -}; - -class Multiss2 : public Base2, public Side0 -{ -public: - Multiss2(); virtual ~Multiss2(); virtual void f1(); virtual void fx2(); - virtual void fx4(); - virtual void f6(); - virtual void xx(); -}; - -class Multivv3 : virtual public Base2, virtual public Side0 -{ -public: - Multivv3(); virtual ~Multivv3(); virtual void f1(); virtual void fx2(); - virtual void fx4(), fx5(); - virtual void f6(); - virtual void xx(); -}; - -Base0::Base0() {} -Base0::~Base0() {} -Base1::Base1() {} -Base1::~Base1() {} -Base2::Base2() {} -Base2::~Base2() {} -VbasedA::VbasedA() {} -VbasedA::~VbasedA() {} -Multisv0::Multisv0() {} -Multisv0::~Multisv0() {} -Multivs1::Multivs1() {} -Multivs1::~Multivs1() {} -Multiss2::Multiss2() {} -Multiss2::~Multiss2() {} -Multivv3::Multivv3() {} -Multivv3::~Multivv3() {} -Side0::Side0() {} -Side0::~Side0() {} - -extern void x (VbasedA *); -extern void x2 (Multisv0 *); -extern void x3 (Multivs1 *); -extern void x4 (Multiss2 *); -extern void x5 (Multivv3 *); -void y () { VbasedA ii; x(&ii);} -void y2 () { Multisv0 ii; x2(&ii);} -void y3 () { Multivs1 ii; x3(&ii);} -void y4 () { Multiss2 ii; x4(&ii);} -void y5 () { Multivv3 ii; x5(&ii);} -void x (VbasedA *ii) { ii->f2();} -void x2 (Multisv0 *ii) { ii->f2();} -void x3 (Multivs1 *ii) { ii->f2();} -void x4 (Multiss2 *ii) { ii->f2();} -void x5 (Multivv3 *ii) { ii->f2();} - -// Use .* because of ia64's convention of marking symbols with "#", which -// makes it through the c++filt. - -// { dg-final { scan-assembler-dem "\.vtable_inherit\[ \t\]*vtable for Multivv3.*0" } } -// { dg-final { scan-assembler-dem "\.vtable_inherit\[ \t\]*VTT for Multivv3.*0" } } -// { dg-final { scan-assembler-dem "\.vtable_inherit\[ \t\]*vtable for Multiss2.*vtable for Base2" } } -// { dg-final { scan-assembler-dem "\.vtable_inherit\[ \t\]*vtable for Multivs1.*vtable for Base2" } } -// { dg-final { scan-assembler-dem "\.vtable_inherit\[ \t\]*VTT for Multivs1.*vtable for Base2" } } -// { dg-final { scan-assembler-dem "\.vtable_inherit\[ \t\]*vtable for Multisv0.*vtable for Side0" } } -// { dg-final { scan-assembler-dem "\.vtable_inherit\[ \t\]*VTT for Multisv0.*vtable for Side0" } } -// { dg-final { scan-assembler-dem "\.vtable_inherit\[ \t\]*vtable for Side0.*0" } } -// { dg-final { scan-assembler-dem "\.vtable_inherit\[ \t\]*vtable for VbasedA.*0" } } -// { dg-final { scan-assembler-dem "\.vtable_inherit\[ \t\]*VTT for VbasedA.*0" } } -// { dg-final { scan-assembler-dem "\.vtable_inherit\[ \t\]*vtable for Base2.*vtable for Base1" } } -// { dg-final { scan-assembler-dem "\.vtable_inherit\[ \t\]*vtable for Base1.*vtable for Base0" } } -// { dg-final { scan-assembler-dem "\.vtable_inherit\[ \t\]*vtable for Base0.*0" } }