diff options
Diffstat (limited to 'gcc/testsuite/g++.old-deja/g++.mike/p7325.C')
-rw-r--r-- | gcc/testsuite/g++.old-deja/g++.mike/p7325.C | 55 |
1 files changed, 0 insertions, 55 deletions
diff --git a/gcc/testsuite/g++.old-deja/g++.mike/p7325.C b/gcc/testsuite/g++.old-deja/g++.mike/p7325.C deleted file mode 100644 index e6d76f5321e..00000000000 --- a/gcc/testsuite/g++.old-deja/g++.mike/p7325.C +++ /dev/null @@ -1,55 +0,0 @@ -// I hate this type of test case. I'm not sure how to code it better. -// See the PR for what this tests. -// prms-id: 7325 -// execution test - XFAIL *-*-* - -int fail = 0; - -struct A { - int i; - static const A* match_this; - static const A* match_arg; - A(): i(7) { - if (match_this) - if (match_this != this) - fail = 1; - } - A* get_this() { return this; } - A& operator = (const A& o) { - if (match_this) - if (match_this != this) - fail = 1; - if (match_arg) - if (match_arg != &o) - fail = 1; - match_arg = &o; - } -}; - -const A* A::match_this; -const A* A::match_arg; -A a; - -A foo() { return a; } -void f () -{ - A a; - A::match_this = &a; - a = foo (); - a = foo (); - A::match_this = 0; -} - -void g () -{ - A::match_this = A().get_this(); - A(); - A(); - A::match_this = 0; -} - -int main() { - f(); - g(); - return fail; -} |