summaryrefslogtreecommitdiff
path: root/cpp/test/Slice/errorDetection/IdentAsKeyword.ice
blob: a0df4c5f7bcc3e703805c894fcfe34b566cb8b68 (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
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-2016 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 };

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

};