X-Git-Url: https://oss.titaniummirror.com/gitweb?a=blobdiff_plain;f=gcc%2Ftestsuite%2Fg%2B%2B.old-deja%2Fg%2B%2B.law%2Fcvt7.C;fp=gcc%2Ftestsuite%2Fg%2B%2B.old-deja%2Fg%2B%2B.law%2Fcvt7.C;h=0000000000000000000000000000000000000000;hb=6fed43773c9b0ce596dca5686f37ac3fc0fa11c0;hp=0ea1d55fd43bf3f7b291aed82f0e739a505b8238;hpb=27b11d56b743098deb193d510b337ba22dc52e5c;p=msp430-gcc.git diff --git a/gcc/testsuite/g++.old-deja/g++.law/cvt7.C b/gcc/testsuite/g++.old-deja/g++.law/cvt7.C deleted file mode 100644 index 0ea1d55f..00000000 --- a/gcc/testsuite/g++.old-deja/g++.law/cvt7.C +++ /dev/null @@ -1,80 +0,0 @@ -// GROUPS passed conversions -// cvt file -// From: krste@icsi.berkeley.edu (Krste Asanovic) -// Date: Mon, 24 Aug 92 19:05:10 PDT -// Message-Id: <9208250205.AA26351@icsib43.ICSI.Berkeley.EDU> -// Subject: implicit int. convs. from member refs. in switch expressions - -#include - -class A -{ -public: - A(int j) { i = j; } - A(A& a) { i = a.i; } - operator int() { return i; } - - void assign(int v) { i = v; } - int i; -}; - -class B -{ -public: - B(A& inArg) : in(inArg), out(0) {} - - A& in; - A out; - - void run(); -}; - -void -B::run() -{ - // I get a "switch quantity not an integer" error for this statement. - switch (in) - // Replacing above with "switch (int(in))" removes the error. - { - case 0: - out = 1; - break; - default: - out = 0; - break; - } -} - -int main() -{ - A a(1); - - A& ar = a; - - A& ar2 = ar; - - // ....but no errors for this switch statement. - switch (ar2) - { - case 1: - std::printf ("PASS\n"); - break; - default: - { std::printf ("FAIL\n"); return 1; } - } - - B b(a); - a.assign(3); - b.run(); - a.assign(0); - b.run(); - - return 0; -} - - - - - - -