Remove old autovect-branch by moving to "dead" directory.
[official-gcc.git] / old-autovect-branch / gcc / testsuite / g++.old-deja / g++.jason / opeq.C
blob741b977489b3c6ac98653a893445a49c63513f36
1 // { dg-do run  }
2 // PRMS Id: 4297 (related to 3525)
3 // Bug: Generating default op= didn't set TYPE_HAS_ASSIGNMENT, so it wasn't
4 // found.
6 extern "C" int printf (const char *, ...);
8 class Y 
10 public:
11     Y(char*) {}
12     Y& operator = (const Y&) { return *this; }
14     
16 class X
18 public:
19     X(int v, char* m) : _v(v), _m (m) {}
20     X () : _v(0), _m("Unknown") {}
21     // Defining our own op= here makes things work correctly.
23 private:
24     int _v;
25     int _m4;
26     // Adding more members here increases the count on u.
27     Y _m;
30 const X sPassed (1, "Passed"), sFailed (-1, "Failed");
32 int main (int, char**)
34     X result;
35     int u = 0;
36     result = (u++ ? sPassed : sFailed);
37     if (u == 1)
38       return 0;
39     return 1;