diff options
Diffstat (limited to 'gcc/testsuite/g++.old-deja/g++.mike/p16146.C')
-rw-r--r-- | gcc/testsuite/g++.old-deja/g++.mike/p16146.C | 89 |
1 files changed, 0 insertions, 89 deletions
diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p16146.C b/gcc/testsuite/g++.old-deja/g++.mike/p16146.C deleted file mode 100644 index 070dc2ea4b8..00000000000 --- a/gcc/testsuite/g++.old-deja/g++.mike/p16146.C +++ /dev/null @@ -1,89 +0,0 @@ -// prms-id: 16146 - -extern "C" int printf (const char *, ...); - -class myFoundation { -protected: - myFoundation () { count = 0; }; - virtual ~myFoundation () {}; - -public: - void addRef () { ++count; } - void removeRef () { if (count > 0) --count; } - -private: - long count; -}; - - -class firstIntermediate :virtual public myFoundation { -public: - firstIntermediate () {}; - ~firstIntermediate () {}; - - void bar () { printf ("Bar\n"); } -}; - - -class firstBase : public firstIntermediate { -public: - firstBase () {}; - ~firstBase () {}; - - virtual void g () {}; -}; - - -class secondIntermediate : virtual public myFoundation { -public: - secondIntermediate () {}; - ~secondIntermediate () {}; - - virtual void h () {}; -}; - - -class secondBase : public secondIntermediate { -public: - secondBase () {}; - ~secondBase () {}; - - virtual void h () {}; -}; - - -class typeInterface : virtual public firstBase { -public: - typeInterface () {}; - ~typeInterface () {}; - - virtual void i () {}; -}; - -class classServices : virtual public firstBase, - public secondBase { -public: - classServices () {}; - ~classServices () {}; - - virtual void j () {}; -}; - -class classImplementation : public typeInterface, - public classServices { -public: - classImplementation () {}; - ~classImplementation () {}; - - void g () {}; - void h () {}; - void i () {}; - void j () {}; -}; - -int main () { - firstBase* fbp = new classImplementation; - classImplementation* cip = dynamic_cast <classImplementation*> (fbp); - cip->addRef(); - myFoundation* mfp = cip; -} |