source:
tests/enum.cfa@
c0458be3
Last change on this file since c0458be3 was 0edbdb2, checked in by , 3 years ago | |
---|---|
|
|
File size: 856 bytes |
Rev | Line | |
---|---|---|
[62edde5] | 1 | //Testing enum declaration |
[10dc7491] | 2 | enum Colours { |
[62edde5] | 3 | Red, |
4 | Yellow, | |
5 | Pink, | |
6 | Blue, | |
7 | Purple, | |
8 | Orange, | |
9 | Green | |
10 | }; | |
11 | ||
[10dc7491] | 12 | enum Colours c1; |
13 | Colours c2; | |
14 | ||
[62edde5] | 15 | void f( void ) { |
16 | enum Fruits { | |
17 | Apple, | |
18 | Banana, | |
19 | Pear, | |
20 | Mango | |
21 | } fruit = Mango; | |
[10dc7491] | 22 | enum Fruits f1; |
23 | Fruits f2; | |
[62edde5] | 24 | } |
25 | ||
[0edbdb2] | 26 | // test constant-expressions |
27 | ||
28 | struct S { | |
29 | int i; | |
30 | }; | |
31 | enum K { P = 3 + 4 }; | |
32 | enum Y { W = 9 + (3 && 4 || 7)}; | |
33 | int p[W]; | |
34 | enum { X = W + -3 + ~1 / 2 * (int)4 + sizeof(struct S) + _Alignof(struct S) || 3 && 5 + (3 ? 1 : 2 ) + __builtin_offsetof(struct S, i ) }; | |
35 | int x[X]; | |
36 | enum { B = 3 + 4 - 7 * 20 / 34 << 3 >> 4 > 8 < 9 <= 23 >= 42 == 12 != 13 & 4 ^ 2 | 8 + sizeof(struct S) + _Alignof(struct S) }; | |
37 | int y[B]; | |
38 | enum { J = +3 + -4 / ~20 * ! 0 }; | |
39 | int z[J] = { 1, 2, 3 }; | |
40 | int aa[41] @= { [3] : 3, [1] : 6 }; | |
41 | ||
[62edde5] | 42 | //Dummy main |
[10dc7491] | 43 | int main(int argc, char const *argv[]) { |
[66812dd] | 44 | printf( "done\n" ); // non-empty .expect file |
[62edde5] | 45 | } |
Note:
See TracBrowser
for help on using the repository browser.