summaryrefslogtreecommitdiff
path: root/cpp/test/Slice/errorDetection/IdentAsKeyword.ice
blob: 740add511ffe2afa360aca6ee7b3484bd8d17366 (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
// **********************************************************************
//
// Copyright (c) 2003-present ZeroC, Inc. All rights reserved.
//
// **********************************************************************

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

}