1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
| // Matching
enum E1 {
E1Enumerator1,
E1Enumerator2 = 3,
E1Enumerator3
} x1;
// Value mismatch
enum E2 {
E2Enumerator1,
E2Enumerator2 = 3,
E2Enumerator3
} x2;
// Name mismatch
enum E3 {
E3Enumerator1,
E3Enumerator2 = 3,
E3Enumerator3
} x3;
// Missing enumerator
enum E4 {
E4Enumerator1,
E4Enumerator2,
E4Enumerator3
} x4;
// Extra enumerator
enum E5 {
E5Enumerator1,
E5Enumerator2,
E5Enumerator3
} x5;
// Matching, with typedef
typedef enum {
E6Enumerator1,
E6Enumerator2
} E6;
E6 x6;
|