X-Git-Url: https://oss.titaniummirror.com/gitweb?a=blobdiff_plain;f=gcc%2Ftestsuite%2Fg%2B%2B.old-deja%2Fg%2B%2B.other%2Fstore-expr2.C;fp=gcc%2Ftestsuite%2Fg%2B%2B.old-deja%2Fg%2B%2B.other%2Fstore-expr2.C;h=0000000000000000000000000000000000000000;hb=6fed43773c9b0ce596dca5686f37ac3fc0fa11c0;hp=8724e19fdb5b0f7718a2a96f2d464ea32bf91e4e;hpb=27b11d56b743098deb193d510b337ba22dc52e5c;p=msp430-gcc.git diff --git a/gcc/testsuite/g++.old-deja/g++.other/store-expr2.C b/gcc/testsuite/g++.old-deja/g++.other/store-expr2.C deleted file mode 100644 index 8724e19f..00000000 --- a/gcc/testsuite/g++.old-deja/g++.other/store-expr2.C +++ /dev/null @@ -1,87 +0,0 @@ -// Skip if not target: i?86-*-* -// Special g++ Options: -mcpu=i686 -O2 -class G {}; - -struct N { - N *a; -}; - -struct V { - typedef N *W; - W *m, *n; - int s() const { return int(n - m); } - const W &operator[](int x) const { return *(m + x); } -}; - -struct H; - -struct J { - N *c; - H *d; - J(N *x, H *y) : c(x), d(y) {} -}; - -struct K { - const N *c; - const H *d; - K(const N *x, const H *y) : c(x), d(y) {} - K(const J &x) : c(x.c), d(x.d) {} -}; - -struct H { - V e; - int f; - - J u() - { - for (int x = 0; x < e.s(); ++x) - if (e[x]) - return J(e[x], this); - return v(); - } - J v() { return J((N*)64, this); } -}; - -struct I { - H d; - J u() { return d.u(); } - J v() { return d.v(); } -}; - -struct bar { - virtual ~bar() {} -}; - -struct E { - K g; - E(K x) : g(x) {} -}; - -struct foo : public bar { - K h; - E i; - foo(const K x, const E &y) : h(x), i(y) {} -}; - -struct A { - I *l; - foo *baz() const; -}; - -foo *A::baz() const -{ - return new foo(l->u(), E(l->v())); -} - -A x; -I i; -foo *f; - -int main () -{ - x.l = &i; - f = x.baz(); - if (f->h.c != f->i.g.c || f->h.d != f->i.g.d) - return 1; - return 0; -}