summaryrefslogtreecommitdiff
path: root/idlc/test/union.idl
blob: 8e9b5c5dedf871abfd4a50085260a561aefa32d5 (plain)
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
module idlc
{
module test
{

union UnionTest switch (long) {
  case 1: long x;
  case 2: byte y;
  case 3: string z;
  case 4:
  case 5: short w;
  case 6: long array[ 10 ][ 20 ];
  case 7: sequence<long> seq;
 default: any a;
};

typedef enum E {
  A,
  B
} EAlias;

// Union with no default label
union U2 switch(EAlias) {
  case E::A : long x;
  case E::B : short y;
};

union U3 switch(char) {
  case 2 : long x;
  case 4 : short y;
};

};
};