diff options
Diffstat (limited to 'gcc/testsuite/g++.old-deja/g++.jason/overload33.C')
-rw-r--r-- | gcc/testsuite/g++.old-deja/g++.jason/overload33.C | 78 |
1 files changed, 0 insertions, 78 deletions
diff --git a/gcc/testsuite/g++.old-deja/g++.jason/overload33.C b/gcc/testsuite/g++.old-deja/g++.jason/overload33.C deleted file mode 100644 index 8b5bb4a34ae..00000000000 --- a/gcc/testsuite/g++.old-deja/g++.jason/overload33.C +++ /dev/null @@ -1,78 +0,0 @@ -// PRMS ID: 7507 -// Build don't link: - -/* ------------------------------------------------------------ */ - -class Base0 -{ -public: - Base0() {} - virtual ~Base0() {} -}; - -class Base1 -{ -public: - Base1() {} - virtual ~Base1() {} -}; - -class Derived : public Base0, public Base1 -{ -public: - Derived() {} - virtual ~Derived() {} -}; - -/* ------------------------------------------------------------ */ - -class Dummy -{ - public: - Dummy(Base0 * theBase) {} - ~Dummy() {} -}; - -/* ------------------------------------------------------------ */ - -template<class T> -class ConstSmartPtr -{ - T* myItem; // private - - public: - ConstSmartPtr(T const* theItem); - - operator T const*() const - { return myItem; } - protected: - T* _item() const - { return myItem; } -}; - -template<class T> -class SmartPtr : public ConstSmartPtr<T> -{ - public: - SmartPtr(T* theItem) - : ConstSmartPtr<T>(theItem) {} - - T* item() const - { return _item(); } - - operator T*() const - { return _item(); } -}; - -/* ------------------------------------------------------------ */ - -void -function() -{ - SmartPtr<Derived> myObj = new Derived(); - - Dummy th1(myObj); // Doesn't work under Cygnus - Dummy th2((Base0 *) myObj); // Doesn't work either -} - -/* ------------------------------------------------------------ */ |