diff options
author | No Author <no-author@gcc.gnu.org> | 2001-01-01 18:42:49 +0000 |
---|---|---|
committer | No Author <no-author@gcc.gnu.org> | 2001-01-01 18:42:49 +0000 |
commit | cc6b76b3086cad497e6b0bab8089ddc98ddf7159 (patch) | |
tree | c718d02b478193b76031ad0f9c225979f207eb59 /gcc/testsuite/g++.old-deja/g++.jason/thunk1.C | |
parent | 8353b540e6bf07bc4de944da9c3772c619f86a9c (diff) |
This commit was manufactured by cvs2svn to create tagprereleases/gcc-2.95.3-test1
'gcc-2_95_3-test1'.
From-SVN: r38596
Diffstat (limited to 'gcc/testsuite/g++.old-deja/g++.jason/thunk1.C')
-rw-r--r-- | gcc/testsuite/g++.old-deja/g++.jason/thunk1.C | 47 |
1 files changed, 0 insertions, 47 deletions
diff --git a/gcc/testsuite/g++.old-deja/g++.jason/thunk1.C b/gcc/testsuite/g++.old-deja/g++.jason/thunk1.C deleted file mode 100644 index 22c0516f1b3..00000000000 --- a/gcc/testsuite/g++.old-deja/g++.jason/thunk1.C +++ /dev/null @@ -1,47 +0,0 @@ -// Test that non-variadic function calls using thunks work right. -// Special g++ Options: -fvtable-thunks - -struct A { - void* p; - A (void* q): p (q) { } - A (const A& a): p (a.p) { } -}; - -class CBase { -public: - void BaseFunc(); -}; - -class MMixin { -public: - virtual A MixinFunc(int arg, A arg2) = 0; -}; - -class CExample : public CBase, public MMixin { -public: - A MixinFunc(int arg, A arg2); -}; - -void CBase::BaseFunc() -{ -} - -A CExample::MixinFunc(int arg, A arg2) -{ - if (arg != 1 || arg2.p != 0) - return 0; - return this; -} - -void* test(MMixin& anExample) -{ - return anExample.MixinFunc(1,A(0)).p; -} - -main () -{ - CExample c; - - if (test(c) != &c) - return 1; -} |