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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
|
// **********************************************************************
//
// Copyright (c) 2003-2017 ZeroC, Inc. All rights reserved.
//
// This copy of Ice is licensed to you under the terms described in the
// ICE_LICENSE file included in this distribution.
//
// **********************************************************************
module Test
{
INTERFACE i { void op(); };
exception Void {};
exception int {};
struct OUT { long l; };
struct double { long l; };
struct s1 { long Int; };
struct s2 { long byte; };
struct s3 { short Int; byte b; };
struct s4 { float byte; byte b; };
class inTERface;
class interface;
class MOdule { long l; };
class module { long l; };
class C { long extendS; };
class C { long extends; };
class D { long extends; };
interface local;
interface Local;
interface Object { void op(); };
interface object { void op(); };
interface long { void op(); };
sequence<long> impLEments;
sequence<long> implements;
sequence<long> short;
sequence<module> seq1;
sequence<moDule> seq2;
dictionary<long, long> throws;
dictionary<long, long> thRows;
dictionary<long, long> LOCALobject;
dictionary<module, long> d1;
dictionary<MODULE, long> d2;
dictionary<long, out> d3;
dictionary<long, OUT> d4;
dictionary<void, void> d5;
dictionary<VOID, VOID> d6;
enum local { a, b };
enum LOCAL { c, e };
enum e1 { long, byte, foo };
enum e2 { LONG, BYTE, bar }; // Ok as of 3.7
interface i1 { long module(); };
interface i2 { long mODule(); };
interface i3 { void exception(); };
interface i4 { void EXception(); };
interface i5 { out op(); };
interface i6 { OUT op(); };
interface i7 { void op(double byte); };
interface i8 { void op(double BYTE); };
interface i9 { void op(out double byte); };
interface i10 { void op(out double BYTE); };
interface \true {}; // OK, escaped keyword
interface _a; // Illegal leading underscore
interface _true; // Illegal leading underscore
interface \_true; // Illegal leading underscore
interface b_; // Illegal trailing underscore
interface b__c; // Illegal underscores
interface b___c; // Illegal underscores
interface a_b; // Illegal underscore
interface a_b_c; // Illegal underscores
};
|