2003-12-26 Guilhem Lavaux <guilhem@kaffe.org>
[official-gcc.git] / gcc / testsuite / g++.old-deja / g++.jason / cond.C
blob0242088c6b194ecd1b65241e0f95cc6a0f429314
1 // { dg-do assemble  }
2 // GROUPS passed rtti
3 // Negative testcase for decls in conditions.
5 int main()
7   float i;
8   
9   if (int i = 1)                // { dg-error "" "" { xfail *-*-* } } , 
10     {
11       char i;                   // { dg-error "" "" { xfail *-*-* } } , 
12       char j;
13     }
14   else
15     {
16       short i;                  // { dg-error "" "" { xfail *-*-* } } , 
17       char j;
18     }
20   while (int i = 0)             // { dg-error "" "" { xfail *-*-* } } 
21     {
22       int i;                    // { dg-error "" "" { xfail *-*-* } } 
23     }
25   for (; int i = 0; )           // { dg-error "" "" { xfail *-*-* } } 
26     {
27       int i;                    // { dg-error "" "" { xfail *-*-* } } 
28     }
30   switch (int i = 0)            // { dg-error "" "" { xfail *-*-* } } 
31     {
32     default:
33       int i;                    // { dg-error "" "" { xfail *-*-* } } 
34     }
36   if (struct A { operator int () { return 1; } } *foo = new A) // { dg-error "" } 
37     ;
39   A bar;                        // { dg-error "" } 
40   
41   if (enum A { one, two, three } foo = one) // { dg-error "" } 
42     ;
44   struct B { operator int () { return 2; } };
46   if (struct B * foo = new B)
47     ;
49   if (int f () = 1)             // { dg-error "" } 
50     ;
51   
52   if (int a[2] = {1, 2})        // { dg-error "" } 
53     ;