X-Git-Url: https://oss.titaniummirror.com/gitweb?a=blobdiff_plain;f=gcc%2Ftestsuite%2Fg%2B%2B.old-deja%2Fg%2B%2B.other%2Fcast6.C;fp=gcc%2Ftestsuite%2Fg%2B%2B.old-deja%2Fg%2B%2B.other%2Fcast6.C;h=0000000000000000000000000000000000000000;hb=6fed43773c9b0ce596dca5686f37ac3fc0fa11c0;hp=23f63e7797b1f49995d2e9023a88aec2737ce917;hpb=27b11d56b743098deb193d510b337ba22dc52e5c;p=msp430-gcc.git diff --git a/gcc/testsuite/g++.old-deja/g++.other/cast6.C b/gcc/testsuite/g++.old-deja/g++.other/cast6.C deleted file mode 100644 index 23f63e77..00000000 --- a/gcc/testsuite/g++.old-deja/g++.other/cast6.C +++ /dev/null @@ -1,57 +0,0 @@ -// Build don't link: - -// Copyright (C) 2000 Free Software Foundation, Inc. -// Contributed by Nathan Sidwell 28 Nov 2000 - -// We failed to reject static_cast and implicit conversions of pointers to -// member that traversed a virtual base. - -struct bar -{ - int barm; - static void a(); -}; -struct filler1 {int fm;}; -struct filler2 {int fm;}; -struct filler3 {int fm;}; -struct filler4 {int fm;}; - -struct baz : filler1, bar, filler2 -{ - int bazm; -}; - -struct foo : filler3, virtual baz, filler4 -{ - static void a(); - void b() {}; - int m; -}; - -typedef void (bar::*barfPtr)(); -typedef void (foo::*foofPtr)(); -typedef int bar::*barmPtr; -typedef int foo::*foomPtr; - -struct X; -typedef void (X::*xfPtr) (); -typedef int X::*xmPtr; - -int main () -{ - { - foofPtr fp = &foo::b; - barfPtr bp = static_cast (fp); // ERROR - invalid static_cast - foofPtr fp2 = static_cast (bp); // ERROR - invalid static_cast - foofPtr fp3 = bp; // ERROR - cannot convert - fp3 = (foofPtr)bp; // WARNING - via virtual base - - foomPtr fmp = &foo::m; - barmPtr bmp = static_cast (fmp); // ERROR - invalid static_cast - foomPtr fmp2 = static_cast (bmp); // ERROR - invalid static_cast - foomPtr fmp3 = bmp; // ERROR - cannot convert - fmp3 = (foomPtr)bmp; // WARNING - via virtual base - } - - return 0; -}