c-next 0.2.12 → 0.2.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +80 -649
- package/dist/index.js +7387 -6211
- package/dist/index.js.map +4 -4
- package/grammar/C.g4 +9 -3
- package/package.json +1 -2
- package/src/__tests__/index.test.ts +1 -1
- package/src/cli/CleanCommand.ts +8 -12
- package/src/cli/Cli.ts +29 -6
- package/src/cli/Runner.ts +42 -62
- package/src/cli/__tests__/CleanCommand.test.ts +10 -10
- package/src/cli/__tests__/Cli.test.ts +59 -7
- package/src/cli/__tests__/ConfigPrinter.test.ts +12 -12
- package/src/cli/__tests__/PathNormalizer.test.ts +5 -5
- package/src/cli/__tests__/Runner.test.ts +108 -82
- package/src/cli/serve/ServeCommand.ts +1 -1
- package/src/cli/types/ICliConfig.ts +2 -2
- package/src/lib/parseWithSymbols.ts +21 -21
- package/src/transpiler/Transpiler.ts +88 -43
- package/src/transpiler/__tests__/DualCodePaths.test.ts +29 -29
- package/src/transpiler/__tests__/Transpiler.coverage.test.ts +244 -72
- package/src/transpiler/__tests__/Transpiler.test.ts +32 -72
- package/src/transpiler/__tests__/determineProjectRoot.test.ts +30 -28
- package/src/transpiler/__tests__/needsConditionalPreprocessing.test.ts +1 -1
- package/src/transpiler/data/CNextMarkerDetector.ts +34 -0
- package/src/transpiler/data/CppEntryPointScanner.ts +174 -0
- package/src/transpiler/data/FileDiscovery.ts +2 -105
- package/src/transpiler/data/InputExpansion.ts +37 -81
- package/src/transpiler/data/__tests__/CNextMarkerDetector.test.ts +62 -0
- package/src/transpiler/data/__tests__/CppEntryPointScanner.test.ts +239 -0
- package/src/transpiler/data/__tests__/FileDiscovery.test.ts +45 -191
- package/src/transpiler/data/__tests__/InputExpansion.test.ts +36 -204
- package/src/transpiler/logic/analysis/InitializationAnalyzer.ts +2 -2
- package/src/transpiler/logic/analysis/PassByValueAnalyzer.ts +4 -5
- package/src/transpiler/logic/parser/c/grammar/C.interp +19 -1
- package/src/transpiler/logic/parser/c/grammar/C.tokens +231 -213
- package/src/transpiler/logic/parser/c/grammar/CLexer.interp +28 -1
- package/src/transpiler/logic/parser/c/grammar/CLexer.tokens +231 -213
- package/src/transpiler/logic/parser/c/grammar/CLexer.ts +654 -600
- package/src/transpiler/logic/parser/c/grammar/CParser.ts +1175 -1099
- package/src/transpiler/logic/symbols/SymbolTable.ts +19 -7
- package/src/transpiler/logic/symbols/__tests__/SymbolTable.test.ts +78 -0
- package/src/transpiler/logic/symbols/cnext/__tests__/TSymbolInfoAdapter.test.ts +6 -6
- package/src/transpiler/logic/symbols/cnext/adapters/TSymbolInfoAdapter.ts +28 -27
- package/src/transpiler/logic/symbols/cnext/index.ts +4 -4
- package/src/transpiler/logic/symbols/cnext/utils/SymbolNameUtils.ts +5 -5
- package/src/transpiler/output/codegen/CodeGenerator.ts +7 -1
- package/src/transpiler/output/codegen/__tests__/CodeGenerator.test.ts +15 -0
- package/src/transpiler/output/codegen/__tests__/ExpressionWalker.test.ts +3 -3
- package/src/transpiler/output/codegen/__tests__/RequireInclude.test.ts +14 -14
- package/src/transpiler/output/codegen/__tests__/TrackVariableTypeHelpers.test.ts +2 -2
- package/src/transpiler/output/codegen/utils/QualifiedNameGenerator.ts +7 -7
- package/src/transpiler/output/codegen/utils/__tests__/QualifiedNameGenerator.test.ts +3 -3
- package/src/transpiler/output/headers/BaseHeaderGenerator.ts +10 -1
- package/src/transpiler/output/headers/HeaderGenerator.ts +3 -0
- package/src/transpiler/output/headers/HeaderGeneratorUtils.ts +6 -2
- package/src/transpiler/output/headers/__tests__/HeaderGeneratorUtils.test.ts +16 -0
- package/src/transpiler/output/headers/adapters/HeaderSymbolAdapter.ts +19 -19
- package/src/transpiler/output/headers/adapters/__tests__/HeaderSymbolAdapter.test.ts +5 -5
- package/src/transpiler/state/SymbolRegistry.ts +10 -12
- package/src/transpiler/state/__tests__/SymbolRegistry.test.ts +11 -13
- package/src/transpiler/types/IPipelineFile.ts +3 -0
- package/src/transpiler/types/ITranspilerConfig.ts +2 -2
- package/src/transpiler/types/symbols/IScopeSymbol.ts +1 -1
- package/src/utils/FunctionUtils.ts +3 -3
- package/src/utils/__tests__/FunctionUtils.test.ts +6 -4
- package/src/transpiler/data/types/IDiscoveryOptions.ts +0 -15
|
@@ -37,107 +37,116 @@ export class CParser extends antlr.Parser {
|
|
|
37
37
|
public static readonly T__22 = 23;
|
|
38
38
|
public static readonly T__23 = 24;
|
|
39
39
|
public static readonly T__24 = 25;
|
|
40
|
-
public static readonly
|
|
41
|
-
public static readonly
|
|
42
|
-
public static readonly
|
|
43
|
-
public static readonly
|
|
44
|
-
public static readonly
|
|
45
|
-
public static readonly
|
|
46
|
-
public static readonly
|
|
47
|
-
public static readonly
|
|
48
|
-
public static readonly
|
|
49
|
-
public static readonly
|
|
50
|
-
public static readonly
|
|
51
|
-
public static readonly
|
|
52
|
-
public static readonly
|
|
53
|
-
public static readonly
|
|
54
|
-
public static readonly
|
|
55
|
-
public static readonly
|
|
56
|
-
public static readonly
|
|
57
|
-
public static readonly
|
|
58
|
-
public static readonly
|
|
59
|
-
public static readonly
|
|
60
|
-
public static readonly
|
|
61
|
-
public static readonly
|
|
62
|
-
public static readonly
|
|
63
|
-
public static readonly
|
|
64
|
-
public static readonly
|
|
65
|
-
public static readonly
|
|
66
|
-
public static readonly
|
|
67
|
-
public static readonly
|
|
68
|
-
public static readonly
|
|
69
|
-
public static readonly
|
|
70
|
-
public static readonly
|
|
71
|
-
public static readonly
|
|
72
|
-
public static readonly
|
|
73
|
-
public static readonly
|
|
74
|
-
public static readonly
|
|
75
|
-
public static readonly
|
|
76
|
-
public static readonly
|
|
77
|
-
public static readonly
|
|
78
|
-
public static readonly
|
|
79
|
-
public static readonly
|
|
80
|
-
public static readonly
|
|
81
|
-
public static readonly
|
|
82
|
-
public static readonly
|
|
83
|
-
public static readonly
|
|
84
|
-
public static readonly
|
|
85
|
-
public static readonly
|
|
86
|
-
public static readonly
|
|
87
|
-
public static readonly
|
|
88
|
-
public static readonly
|
|
89
|
-
public static readonly
|
|
90
|
-
public static readonly
|
|
91
|
-
public static readonly
|
|
92
|
-
public static readonly
|
|
93
|
-
public static readonly
|
|
94
|
-
public static readonly
|
|
95
|
-
public static readonly
|
|
96
|
-
public static readonly
|
|
97
|
-
public static readonly
|
|
98
|
-
public static readonly
|
|
99
|
-
public static readonly
|
|
100
|
-
public static readonly
|
|
101
|
-
public static readonly
|
|
102
|
-
public static readonly
|
|
103
|
-
public static readonly
|
|
104
|
-
public static readonly
|
|
105
|
-
public static readonly
|
|
106
|
-
public static readonly
|
|
107
|
-
public static readonly
|
|
108
|
-
public static readonly
|
|
109
|
-
public static readonly
|
|
110
|
-
public static readonly
|
|
111
|
-
public static readonly
|
|
112
|
-
public static readonly
|
|
113
|
-
public static readonly
|
|
114
|
-
public static readonly
|
|
115
|
-
public static readonly
|
|
116
|
-
public static readonly
|
|
117
|
-
public static readonly
|
|
118
|
-
public static readonly
|
|
119
|
-
public static readonly
|
|
120
|
-
public static readonly
|
|
121
|
-
public static readonly
|
|
122
|
-
public static readonly
|
|
123
|
-
public static readonly
|
|
124
|
-
public static readonly
|
|
125
|
-
public static readonly
|
|
126
|
-
public static readonly
|
|
127
|
-
public static readonly
|
|
128
|
-
public static readonly
|
|
129
|
-
public static readonly
|
|
130
|
-
public static readonly
|
|
131
|
-
public static readonly
|
|
132
|
-
public static readonly
|
|
133
|
-
public static readonly
|
|
134
|
-
public static readonly
|
|
135
|
-
public static readonly
|
|
136
|
-
public static readonly
|
|
137
|
-
public static readonly
|
|
138
|
-
public static readonly
|
|
139
|
-
public static readonly
|
|
140
|
-
public static readonly
|
|
40
|
+
public static readonly T__25 = 26;
|
|
41
|
+
public static readonly T__26 = 27;
|
|
42
|
+
public static readonly T__27 = 28;
|
|
43
|
+
public static readonly T__28 = 29;
|
|
44
|
+
public static readonly T__29 = 30;
|
|
45
|
+
public static readonly T__30 = 31;
|
|
46
|
+
public static readonly T__31 = 32;
|
|
47
|
+
public static readonly T__32 = 33;
|
|
48
|
+
public static readonly T__33 = 34;
|
|
49
|
+
public static readonly Auto = 35;
|
|
50
|
+
public static readonly Break = 36;
|
|
51
|
+
public static readonly Case = 37;
|
|
52
|
+
public static readonly Char = 38;
|
|
53
|
+
public static readonly Const = 39;
|
|
54
|
+
public static readonly Continue = 40;
|
|
55
|
+
public static readonly Default = 41;
|
|
56
|
+
public static readonly Do = 42;
|
|
57
|
+
public static readonly Double = 43;
|
|
58
|
+
public static readonly Else = 44;
|
|
59
|
+
public static readonly Enum = 45;
|
|
60
|
+
public static readonly Extern = 46;
|
|
61
|
+
public static readonly Float = 47;
|
|
62
|
+
public static readonly For = 48;
|
|
63
|
+
public static readonly Goto = 49;
|
|
64
|
+
public static readonly If = 50;
|
|
65
|
+
public static readonly Inline = 51;
|
|
66
|
+
public static readonly Int = 52;
|
|
67
|
+
public static readonly Long = 53;
|
|
68
|
+
public static readonly Register = 54;
|
|
69
|
+
public static readonly Restrict = 55;
|
|
70
|
+
public static readonly Return = 56;
|
|
71
|
+
public static readonly Short = 57;
|
|
72
|
+
public static readonly Signed = 58;
|
|
73
|
+
public static readonly Sizeof = 59;
|
|
74
|
+
public static readonly Static = 60;
|
|
75
|
+
public static readonly Struct = 61;
|
|
76
|
+
public static readonly Switch = 62;
|
|
77
|
+
public static readonly Typedef = 63;
|
|
78
|
+
public static readonly Union = 64;
|
|
79
|
+
public static readonly Unsigned = 65;
|
|
80
|
+
public static readonly Void = 66;
|
|
81
|
+
public static readonly Volatile = 67;
|
|
82
|
+
public static readonly While = 68;
|
|
83
|
+
public static readonly Alignas = 69;
|
|
84
|
+
public static readonly Alignof = 70;
|
|
85
|
+
public static readonly Atomic = 71;
|
|
86
|
+
public static readonly Bool = 72;
|
|
87
|
+
public static readonly Complex = 73;
|
|
88
|
+
public static readonly Generic = 74;
|
|
89
|
+
public static readonly Imaginary = 75;
|
|
90
|
+
public static readonly Noreturn = 76;
|
|
91
|
+
public static readonly StaticAssert = 77;
|
|
92
|
+
public static readonly ThreadLocal = 78;
|
|
93
|
+
public static readonly LeftParen = 79;
|
|
94
|
+
public static readonly RightParen = 80;
|
|
95
|
+
public static readonly LeftBracket = 81;
|
|
96
|
+
public static readonly RightBracket = 82;
|
|
97
|
+
public static readonly LeftBrace = 83;
|
|
98
|
+
public static readonly RightBrace = 84;
|
|
99
|
+
public static readonly Less = 85;
|
|
100
|
+
public static readonly LessEqual = 86;
|
|
101
|
+
public static readonly Greater = 87;
|
|
102
|
+
public static readonly GreaterEqual = 88;
|
|
103
|
+
public static readonly LeftShift = 89;
|
|
104
|
+
public static readonly RightShift = 90;
|
|
105
|
+
public static readonly Plus = 91;
|
|
106
|
+
public static readonly PlusPlus = 92;
|
|
107
|
+
public static readonly Minus = 93;
|
|
108
|
+
public static readonly MinusMinus = 94;
|
|
109
|
+
public static readonly Star = 95;
|
|
110
|
+
public static readonly Div = 96;
|
|
111
|
+
public static readonly Mod = 97;
|
|
112
|
+
public static readonly And = 98;
|
|
113
|
+
public static readonly Or = 99;
|
|
114
|
+
public static readonly AndAnd = 100;
|
|
115
|
+
public static readonly OrOr = 101;
|
|
116
|
+
public static readonly Caret = 102;
|
|
117
|
+
public static readonly Not = 103;
|
|
118
|
+
public static readonly Tilde = 104;
|
|
119
|
+
public static readonly Question = 105;
|
|
120
|
+
public static readonly Colon = 106;
|
|
121
|
+
public static readonly Semi = 107;
|
|
122
|
+
public static readonly Comma = 108;
|
|
123
|
+
public static readonly Assign = 109;
|
|
124
|
+
public static readonly StarAssign = 110;
|
|
125
|
+
public static readonly DivAssign = 111;
|
|
126
|
+
public static readonly ModAssign = 112;
|
|
127
|
+
public static readonly PlusAssign = 113;
|
|
128
|
+
public static readonly MinusAssign = 114;
|
|
129
|
+
public static readonly LeftShiftAssign = 115;
|
|
130
|
+
public static readonly RightShiftAssign = 116;
|
|
131
|
+
public static readonly AndAssign = 117;
|
|
132
|
+
public static readonly XorAssign = 118;
|
|
133
|
+
public static readonly OrAssign = 119;
|
|
134
|
+
public static readonly Equal = 120;
|
|
135
|
+
public static readonly NotEqual = 121;
|
|
136
|
+
public static readonly Arrow = 122;
|
|
137
|
+
public static readonly Dot = 123;
|
|
138
|
+
public static readonly Ellipsis = 124;
|
|
139
|
+
public static readonly Identifier = 125;
|
|
140
|
+
public static readonly Constant = 126;
|
|
141
|
+
public static readonly DigitSequence = 127;
|
|
142
|
+
public static readonly StringLiteral = 128;
|
|
143
|
+
public static readonly MultiLineMacro = 129;
|
|
144
|
+
public static readonly Directive = 130;
|
|
145
|
+
public static readonly AsmBlock = 131;
|
|
146
|
+
public static readonly Whitespace = 132;
|
|
147
|
+
public static readonly Newline = 133;
|
|
148
|
+
public static readonly BlockComment = 134;
|
|
149
|
+
public static readonly LineComment = 135;
|
|
141
150
|
public static readonly RULE_primaryExpression = 0;
|
|
142
151
|
public static readonly RULE_genericSelection = 1;
|
|
143
152
|
public static readonly RULE_genericAssocList = 2;
|
|
@@ -228,10 +237,12 @@ export class CParser extends antlr.Parser {
|
|
|
228
237
|
|
|
229
238
|
public static readonly literalNames = [
|
|
230
239
|
null, "'__extension__'", "'__builtin_va_arg'", "'__builtin_offsetof'",
|
|
231
|
-
"'
|
|
232
|
-
"'
|
|
233
|
-
"'
|
|
234
|
-
"'
|
|
240
|
+
"'__alignof__'", "'__alignof'", "'__thread'", "'__signed'", "'__signed__'",
|
|
241
|
+
"'__m128'", "'__m128d'", "'__m128i'", "'__int128'", "'__int128_t'",
|
|
242
|
+
"'__uint128_t'", "'__typeof__'", "'__typeof'", "'__const'", "'__const__'",
|
|
243
|
+
"'__restrict'", "'__restrict__'", "'__volatile'", "'__volatile__'",
|
|
244
|
+
"'__inline'", "'__inline__'", "'__stdcall'", "'__declspec'", "'__cdecl'",
|
|
245
|
+
"'__clrcall'", "'__fastcall'", "'__thiscall'", "'__vectorcall'",
|
|
235
246
|
"'__asm'", "'__asm__'", "'__attribute__'", "'auto'", "'break'",
|
|
236
247
|
"'case'", "'char'", "'const'", "'continue'", "'default'", "'do'",
|
|
237
248
|
"'double'", "'else'", "'enum'", "'extern'", "'float'", "'for'",
|
|
@@ -251,23 +262,24 @@ export class CParser extends antlr.Parser {
|
|
|
251
262
|
public static readonly symbolicNames = [
|
|
252
263
|
null, null, null, null, null, null, null, null, null, null, null,
|
|
253
264
|
null, null, null, null, null, null, null, null, null, null, null,
|
|
254
|
-
null, null, null, null,
|
|
255
|
-
|
|
256
|
-
"
|
|
257
|
-
"
|
|
258
|
-
"
|
|
259
|
-
"
|
|
260
|
-
"
|
|
261
|
-
"
|
|
262
|
-
"
|
|
263
|
-
"
|
|
264
|
-
"
|
|
265
|
-
"
|
|
266
|
-
"
|
|
267
|
-
"
|
|
268
|
-
"
|
|
269
|
-
"
|
|
270
|
-
"
|
|
265
|
+
null, null, null, null, null, null, null, null, null, null, null,
|
|
266
|
+
null, null, "Auto", "Break", "Case", "Char", "Const", "Continue",
|
|
267
|
+
"Default", "Do", "Double", "Else", "Enum", "Extern", "Float", "For",
|
|
268
|
+
"Goto", "If", "Inline", "Int", "Long", "Register", "Restrict", "Return",
|
|
269
|
+
"Short", "Signed", "Sizeof", "Static", "Struct", "Switch", "Typedef",
|
|
270
|
+
"Union", "Unsigned", "Void", "Volatile", "While", "Alignas", "Alignof",
|
|
271
|
+
"Atomic", "Bool", "Complex", "Generic", "Imaginary", "Noreturn",
|
|
272
|
+
"StaticAssert", "ThreadLocal", "LeftParen", "RightParen", "LeftBracket",
|
|
273
|
+
"RightBracket", "LeftBrace", "RightBrace", "Less", "LessEqual",
|
|
274
|
+
"Greater", "GreaterEqual", "LeftShift", "RightShift", "Plus", "PlusPlus",
|
|
275
|
+
"Minus", "MinusMinus", "Star", "Div", "Mod", "And", "Or", "AndAnd",
|
|
276
|
+
"OrOr", "Caret", "Not", "Tilde", "Question", "Colon", "Semi", "Comma",
|
|
277
|
+
"Assign", "StarAssign", "DivAssign", "ModAssign", "PlusAssign",
|
|
278
|
+
"MinusAssign", "LeftShiftAssign", "RightShiftAssign", "AndAssign",
|
|
279
|
+
"XorAssign", "OrAssign", "Equal", "NotEqual", "Arrow", "Dot", "Ellipsis",
|
|
280
|
+
"Identifier", "Constant", "DigitSequence", "StringLiteral", "MultiLineMacro",
|
|
281
|
+
"Directive", "AsmBlock", "Whitespace", "Newline", "BlockComment",
|
|
282
|
+
"LineComment"
|
|
271
283
|
];
|
|
272
284
|
public static readonly ruleNames = [
|
|
273
285
|
"primaryExpression", "genericSelection", "genericAssocList", "genericAssociation",
|
|
@@ -348,7 +360,7 @@ export class CParser extends antlr.Parser {
|
|
|
348
360
|
this.state = 179;
|
|
349
361
|
this.errorHandler.sync(this);
|
|
350
362
|
_la = this.tokenStream.LA(1);
|
|
351
|
-
} while (_la ===
|
|
363
|
+
} while (_la === 128);
|
|
352
364
|
}
|
|
353
365
|
break;
|
|
354
366
|
case 4:
|
|
@@ -484,7 +496,7 @@ export class CParser extends antlr.Parser {
|
|
|
484
496
|
this.state = 221;
|
|
485
497
|
this.errorHandler.sync(this);
|
|
486
498
|
_la = this.tokenStream.LA(1);
|
|
487
|
-
while (_la ===
|
|
499
|
+
while (_la === 108) {
|
|
488
500
|
{
|
|
489
501
|
{
|
|
490
502
|
this.state = 217;
|
|
@@ -522,9 +534,6 @@ export class CParser extends antlr.Parser {
|
|
|
522
534
|
this.errorHandler.sync(this);
|
|
523
535
|
switch (this.tokenStream.LA(1)) {
|
|
524
536
|
case CParser.T__0:
|
|
525
|
-
case CParser.T__3:
|
|
526
|
-
case CParser.T__4:
|
|
527
|
-
case CParser.T__5:
|
|
528
537
|
case CParser.T__6:
|
|
529
538
|
case CParser.T__7:
|
|
530
539
|
case CParser.T__8:
|
|
@@ -533,6 +542,14 @@ export class CParser extends antlr.Parser {
|
|
|
533
542
|
case CParser.T__11:
|
|
534
543
|
case CParser.T__12:
|
|
535
544
|
case CParser.T__13:
|
|
545
|
+
case CParser.T__14:
|
|
546
|
+
case CParser.T__15:
|
|
547
|
+
case CParser.T__16:
|
|
548
|
+
case CParser.T__17:
|
|
549
|
+
case CParser.T__18:
|
|
550
|
+
case CParser.T__19:
|
|
551
|
+
case CParser.T__20:
|
|
552
|
+
case CParser.T__21:
|
|
536
553
|
case CParser.Char:
|
|
537
554
|
case CParser.Const:
|
|
538
555
|
case CParser.Double:
|
|
@@ -626,7 +643,7 @@ export class CParser extends antlr.Parser {
|
|
|
626
643
|
this.state = 241;
|
|
627
644
|
this.errorHandler.sync(this);
|
|
628
645
|
_la = this.tokenStream.LA(1);
|
|
629
|
-
if (_la ===
|
|
646
|
+
if (_la === 108) {
|
|
630
647
|
{
|
|
631
648
|
this.state = 240;
|
|
632
649
|
this.match(CParser.Comma);
|
|
@@ -641,7 +658,7 @@ export class CParser extends antlr.Parser {
|
|
|
641
658
|
this.state = 262;
|
|
642
659
|
this.errorHandler.sync(this);
|
|
643
660
|
_la = this.tokenStream.LA(1);
|
|
644
|
-
while (((((_la -
|
|
661
|
+
while (((((_la - 79)) & ~0x1F) === 0 && ((1 << (_la - 79)) & 40965) !== 0) || _la === 122 || _la === 123) {
|
|
645
662
|
{
|
|
646
663
|
this.state = 260;
|
|
647
664
|
this.errorHandler.sync(this);
|
|
@@ -663,7 +680,7 @@ export class CParser extends antlr.Parser {
|
|
|
663
680
|
this.state = 253;
|
|
664
681
|
this.errorHandler.sync(this);
|
|
665
682
|
_la = this.tokenStream.LA(1);
|
|
666
|
-
if ((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
683
|
+
if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 62) !== 0) || ((((_la - 59)) & ~0x1F) === 0 && ((1 << (_la - 59)) & 1083393) !== 0) || ((((_la - 91)) & ~0x1F) === 0 && ((1 << (_la - 91)) & 12959) !== 0) || ((((_la - 125)) & ~0x1F) === 0 && ((1 << (_la - 125)) & 15) !== 0)) {
|
|
667
684
|
{
|
|
668
685
|
this.state = 252;
|
|
669
686
|
this.argumentExpressionList();
|
|
@@ -679,7 +696,7 @@ export class CParser extends antlr.Parser {
|
|
|
679
696
|
{
|
|
680
697
|
this.state = 256;
|
|
681
698
|
_la = this.tokenStream.LA(1);
|
|
682
|
-
if(!(_la ===
|
|
699
|
+
if(!(_la === 122 || _la === 123)) {
|
|
683
700
|
this.errorHandler.recoverInline(this);
|
|
684
701
|
}
|
|
685
702
|
else {
|
|
@@ -737,7 +754,7 @@ export class CParser extends antlr.Parser {
|
|
|
737
754
|
this.state = 270;
|
|
738
755
|
this.errorHandler.sync(this);
|
|
739
756
|
_la = this.tokenStream.LA(1);
|
|
740
|
-
while (_la ===
|
|
757
|
+
while (_la === 108) {
|
|
741
758
|
{
|
|
742
759
|
{
|
|
743
760
|
this.state = 266;
|
|
@@ -782,7 +799,7 @@ export class CParser extends antlr.Parser {
|
|
|
782
799
|
{
|
|
783
800
|
this.state = 273;
|
|
784
801
|
_la = this.tokenStream.LA(1);
|
|
785
|
-
if(!(_la ===
|
|
802
|
+
if(!(_la === 59 || _la === 92 || _la === 94)) {
|
|
786
803
|
this.errorHandler.recoverInline(this);
|
|
787
804
|
}
|
|
788
805
|
else {
|
|
@@ -825,12 +842,14 @@ export class CParser extends antlr.Parser {
|
|
|
825
842
|
this.castExpression();
|
|
826
843
|
}
|
|
827
844
|
break;
|
|
845
|
+
case CParser.T__3:
|
|
846
|
+
case CParser.T__4:
|
|
828
847
|
case CParser.Sizeof:
|
|
829
848
|
case CParser.Alignof:
|
|
830
849
|
{
|
|
831
850
|
this.state = 283;
|
|
832
851
|
_la = this.tokenStream.LA(1);
|
|
833
|
-
if(!(_la ===
|
|
852
|
+
if(!(_la === 4 || _la === 5 || _la === 59 || _la === 70)) {
|
|
834
853
|
this.errorHandler.recoverInline(this);
|
|
835
854
|
}
|
|
836
855
|
else {
|
|
@@ -880,7 +899,7 @@ export class CParser extends antlr.Parser {
|
|
|
880
899
|
{
|
|
881
900
|
this.state = 292;
|
|
882
901
|
_la = this.tokenStream.LA(1);
|
|
883
|
-
if(!(((((_la -
|
|
902
|
+
if(!(((((_la - 91)) & ~0x1F) === 0 && ((1 << (_la - 91)) & 12437) !== 0))) {
|
|
884
903
|
this.errorHandler.recoverInline(this);
|
|
885
904
|
}
|
|
886
905
|
else {
|
|
@@ -974,12 +993,12 @@ export class CParser extends antlr.Parser {
|
|
|
974
993
|
this.state = 311;
|
|
975
994
|
this.errorHandler.sync(this);
|
|
976
995
|
_la = this.tokenStream.LA(1);
|
|
977
|
-
while (((((_la -
|
|
996
|
+
while (((((_la - 95)) & ~0x1F) === 0 && ((1 << (_la - 95)) & 7) !== 0)) {
|
|
978
997
|
{
|
|
979
998
|
{
|
|
980
999
|
this.state = 307;
|
|
981
1000
|
_la = this.tokenStream.LA(1);
|
|
982
|
-
if(!(((((_la -
|
|
1001
|
+
if(!(((((_la - 95)) & ~0x1F) === 0 && ((1 << (_la - 95)) & 7) !== 0))) {
|
|
983
1002
|
this.errorHandler.recoverInline(this);
|
|
984
1003
|
}
|
|
985
1004
|
else {
|
|
@@ -1021,12 +1040,12 @@ export class CParser extends antlr.Parser {
|
|
|
1021
1040
|
this.state = 319;
|
|
1022
1041
|
this.errorHandler.sync(this);
|
|
1023
1042
|
_la = this.tokenStream.LA(1);
|
|
1024
|
-
while (_la ===
|
|
1043
|
+
while (_la === 91 || _la === 93) {
|
|
1025
1044
|
{
|
|
1026
1045
|
{
|
|
1027
1046
|
this.state = 315;
|
|
1028
1047
|
_la = this.tokenStream.LA(1);
|
|
1029
|
-
if(!(_la ===
|
|
1048
|
+
if(!(_la === 91 || _la === 93)) {
|
|
1030
1049
|
this.errorHandler.recoverInline(this);
|
|
1031
1050
|
}
|
|
1032
1051
|
else {
|
|
@@ -1068,12 +1087,12 @@ export class CParser extends antlr.Parser {
|
|
|
1068
1087
|
this.state = 327;
|
|
1069
1088
|
this.errorHandler.sync(this);
|
|
1070
1089
|
_la = this.tokenStream.LA(1);
|
|
1071
|
-
while (_la ===
|
|
1090
|
+
while (_la === 89 || _la === 90) {
|
|
1072
1091
|
{
|
|
1073
1092
|
{
|
|
1074
1093
|
this.state = 323;
|
|
1075
1094
|
_la = this.tokenStream.LA(1);
|
|
1076
|
-
if(!(_la ===
|
|
1095
|
+
if(!(_la === 89 || _la === 90)) {
|
|
1077
1096
|
this.errorHandler.recoverInline(this);
|
|
1078
1097
|
}
|
|
1079
1098
|
else {
|
|
@@ -1115,12 +1134,12 @@ export class CParser extends antlr.Parser {
|
|
|
1115
1134
|
this.state = 335;
|
|
1116
1135
|
this.errorHandler.sync(this);
|
|
1117
1136
|
_la = this.tokenStream.LA(1);
|
|
1118
|
-
while (((((_la -
|
|
1137
|
+
while (((((_la - 85)) & ~0x1F) === 0 && ((1 << (_la - 85)) & 15) !== 0)) {
|
|
1119
1138
|
{
|
|
1120
1139
|
{
|
|
1121
1140
|
this.state = 331;
|
|
1122
1141
|
_la = this.tokenStream.LA(1);
|
|
1123
|
-
if(!(((((_la -
|
|
1142
|
+
if(!(((((_la - 85)) & ~0x1F) === 0 && ((1 << (_la - 85)) & 15) !== 0))) {
|
|
1124
1143
|
this.errorHandler.recoverInline(this);
|
|
1125
1144
|
}
|
|
1126
1145
|
else {
|
|
@@ -1162,12 +1181,12 @@ export class CParser extends antlr.Parser {
|
|
|
1162
1181
|
this.state = 343;
|
|
1163
1182
|
this.errorHandler.sync(this);
|
|
1164
1183
|
_la = this.tokenStream.LA(1);
|
|
1165
|
-
while (_la ===
|
|
1184
|
+
while (_la === 120 || _la === 121) {
|
|
1166
1185
|
{
|
|
1167
1186
|
{
|
|
1168
1187
|
this.state = 339;
|
|
1169
1188
|
_la = this.tokenStream.LA(1);
|
|
1170
|
-
if(!(_la ===
|
|
1189
|
+
if(!(_la === 120 || _la === 121)) {
|
|
1171
1190
|
this.errorHandler.recoverInline(this);
|
|
1172
1191
|
}
|
|
1173
1192
|
else {
|
|
@@ -1209,7 +1228,7 @@ export class CParser extends antlr.Parser {
|
|
|
1209
1228
|
this.state = 351;
|
|
1210
1229
|
this.errorHandler.sync(this);
|
|
1211
1230
|
_la = this.tokenStream.LA(1);
|
|
1212
|
-
while (_la ===
|
|
1231
|
+
while (_la === 98) {
|
|
1213
1232
|
{
|
|
1214
1233
|
{
|
|
1215
1234
|
this.state = 347;
|
|
@@ -1249,7 +1268,7 @@ export class CParser extends antlr.Parser {
|
|
|
1249
1268
|
this.state = 359;
|
|
1250
1269
|
this.errorHandler.sync(this);
|
|
1251
1270
|
_la = this.tokenStream.LA(1);
|
|
1252
|
-
while (_la ===
|
|
1271
|
+
while (_la === 102) {
|
|
1253
1272
|
{
|
|
1254
1273
|
{
|
|
1255
1274
|
this.state = 355;
|
|
@@ -1289,7 +1308,7 @@ export class CParser extends antlr.Parser {
|
|
|
1289
1308
|
this.state = 367;
|
|
1290
1309
|
this.errorHandler.sync(this);
|
|
1291
1310
|
_la = this.tokenStream.LA(1);
|
|
1292
|
-
while (_la ===
|
|
1311
|
+
while (_la === 99) {
|
|
1293
1312
|
{
|
|
1294
1313
|
{
|
|
1295
1314
|
this.state = 363;
|
|
@@ -1329,7 +1348,7 @@ export class CParser extends antlr.Parser {
|
|
|
1329
1348
|
this.state = 375;
|
|
1330
1349
|
this.errorHandler.sync(this);
|
|
1331
1350
|
_la = this.tokenStream.LA(1);
|
|
1332
|
-
while (_la ===
|
|
1351
|
+
while (_la === 100) {
|
|
1333
1352
|
{
|
|
1334
1353
|
{
|
|
1335
1354
|
this.state = 371;
|
|
@@ -1369,7 +1388,7 @@ export class CParser extends antlr.Parser {
|
|
|
1369
1388
|
this.state = 383;
|
|
1370
1389
|
this.errorHandler.sync(this);
|
|
1371
1390
|
_la = this.tokenStream.LA(1);
|
|
1372
|
-
while (_la ===
|
|
1391
|
+
while (_la === 101) {
|
|
1373
1392
|
{
|
|
1374
1393
|
{
|
|
1375
1394
|
this.state = 379;
|
|
@@ -1409,7 +1428,7 @@ export class CParser extends antlr.Parser {
|
|
|
1409
1428
|
this.state = 392;
|
|
1410
1429
|
this.errorHandler.sync(this);
|
|
1411
1430
|
_la = this.tokenStream.LA(1);
|
|
1412
|
-
if (_la ===
|
|
1431
|
+
if (_la === 105) {
|
|
1413
1432
|
{
|
|
1414
1433
|
this.state = 387;
|
|
1415
1434
|
this.match(CParser.Question);
|
|
@@ -1493,7 +1512,7 @@ export class CParser extends antlr.Parser {
|
|
|
1493
1512
|
{
|
|
1494
1513
|
this.state = 402;
|
|
1495
1514
|
_la = this.tokenStream.LA(1);
|
|
1496
|
-
if(!(((((_la -
|
|
1515
|
+
if(!(((((_la - 109)) & ~0x1F) === 0 && ((1 << (_la - 109)) & 2047) !== 0))) {
|
|
1497
1516
|
this.errorHandler.recoverInline(this);
|
|
1498
1517
|
}
|
|
1499
1518
|
else {
|
|
@@ -1527,7 +1546,7 @@ export class CParser extends antlr.Parser {
|
|
|
1527
1546
|
this.state = 409;
|
|
1528
1547
|
this.errorHandler.sync(this);
|
|
1529
1548
|
_la = this.tokenStream.LA(1);
|
|
1530
|
-
while (_la ===
|
|
1549
|
+
while (_la === 108) {
|
|
1531
1550
|
{
|
|
1532
1551
|
{
|
|
1533
1552
|
this.state = 405;
|
|
@@ -1587,8 +1606,6 @@ export class CParser extends antlr.Parser {
|
|
|
1587
1606
|
this.errorHandler.sync(this);
|
|
1588
1607
|
switch (this.tokenStream.LA(1)) {
|
|
1589
1608
|
case CParser.T__0:
|
|
1590
|
-
case CParser.T__3:
|
|
1591
|
-
case CParser.T__4:
|
|
1592
1609
|
case CParser.T__5:
|
|
1593
1610
|
case CParser.T__6:
|
|
1594
1611
|
case CParser.T__7:
|
|
@@ -1601,7 +1618,16 @@ export class CParser extends antlr.Parser {
|
|
|
1601
1618
|
case CParser.T__14:
|
|
1602
1619
|
case CParser.T__15:
|
|
1603
1620
|
case CParser.T__16:
|
|
1621
|
+
case CParser.T__17:
|
|
1622
|
+
case CParser.T__18:
|
|
1623
|
+
case CParser.T__19:
|
|
1624
|
+
case CParser.T__20:
|
|
1625
|
+
case CParser.T__21:
|
|
1626
|
+
case CParser.T__22:
|
|
1627
|
+
case CParser.T__23:
|
|
1604
1628
|
case CParser.T__24:
|
|
1629
|
+
case CParser.T__25:
|
|
1630
|
+
case CParser.T__33:
|
|
1605
1631
|
case CParser.Auto:
|
|
1606
1632
|
case CParser.Char:
|
|
1607
1633
|
case CParser.Const:
|
|
@@ -1637,7 +1663,7 @@ export class CParser extends antlr.Parser {
|
|
|
1637
1663
|
this.state = 416;
|
|
1638
1664
|
this.errorHandler.sync(this);
|
|
1639
1665
|
_la = this.tokenStream.LA(1);
|
|
1640
|
-
if ((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
1666
|
+
if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 4194304000) !== 0) || ((((_la - 79)) & ~0x1F) === 0 && ((1 << (_la - 79)) & 8454145) !== 0) || _la === 125) {
|
|
1641
1667
|
{
|
|
1642
1668
|
this.state = 415;
|
|
1643
1669
|
this.initDeclaratorList();
|
|
@@ -1734,7 +1760,7 @@ export class CParser extends antlr.Parser {
|
|
|
1734
1760
|
this.state = 431;
|
|
1735
1761
|
this.errorHandler.sync(this);
|
|
1736
1762
|
_la = this.tokenStream.LA(1);
|
|
1737
|
-
} while ((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
1763
|
+
} while ((((_la) & ~0x1F) === 0 && ((1 << _la) & 134217666) !== 0) || ((((_la - 34)) & ~0x1F) === 0 && ((1 << (_la - 34)) & 3988666931) !== 0) || ((((_la - 66)) & ~0x1F) === 0 && ((1 << (_la - 66)) & 5355) !== 0) || _la === 125);
|
|
1738
1764
|
}
|
|
1739
1765
|
}
|
|
1740
1766
|
catch (re) {
|
|
@@ -1819,7 +1845,7 @@ export class CParser extends antlr.Parser {
|
|
|
1819
1845
|
this.state = 445;
|
|
1820
1846
|
this.errorHandler.sync(this);
|
|
1821
1847
|
_la = this.tokenStream.LA(1);
|
|
1822
|
-
while (_la ===
|
|
1848
|
+
while (_la === 108) {
|
|
1823
1849
|
{
|
|
1824
1850
|
{
|
|
1825
1851
|
this.state = 441;
|
|
@@ -1859,7 +1885,7 @@ export class CParser extends antlr.Parser {
|
|
|
1859
1885
|
this.state = 451;
|
|
1860
1886
|
this.errorHandler.sync(this);
|
|
1861
1887
|
_la = this.tokenStream.LA(1);
|
|
1862
|
-
if (_la ===
|
|
1888
|
+
if (_la === 109) {
|
|
1863
1889
|
{
|
|
1864
1890
|
this.state = 449;
|
|
1865
1891
|
this.match(CParser.Assign);
|
|
@@ -1892,7 +1918,7 @@ export class CParser extends antlr.Parser {
|
|
|
1892
1918
|
{
|
|
1893
1919
|
this.state = 453;
|
|
1894
1920
|
_la = this.tokenStream.LA(1);
|
|
1895
|
-
if(!(((((_la -
|
|
1921
|
+
if(!(_la === 6 || ((((_la - 35)) & ~0x1F) === 0 && ((1 << (_la - 35)) & 302516225) !== 0) || _la === 78)) {
|
|
1896
1922
|
this.errorHandler.recoverInline(this);
|
|
1897
1923
|
}
|
|
1898
1924
|
else {
|
|
@@ -1919,7 +1945,7 @@ export class CParser extends antlr.Parser {
|
|
|
1919
1945
|
this.enterRule(localContext, 62, CParser.RULE_typeSpecifier);
|
|
1920
1946
|
let _la: number;
|
|
1921
1947
|
try {
|
|
1922
|
-
this.state =
|
|
1948
|
+
this.state = 487;
|
|
1923
1949
|
this.errorHandler.sync(this);
|
|
1924
1950
|
switch (this.tokenStream.LA(1)) {
|
|
1925
1951
|
case CParser.Void:
|
|
@@ -1978,114 +2004,150 @@ export class CParser extends antlr.Parser {
|
|
|
1978
2004
|
this.match(CParser.Signed);
|
|
1979
2005
|
}
|
|
1980
2006
|
break;
|
|
1981
|
-
case CParser.
|
|
2007
|
+
case CParser.T__6:
|
|
1982
2008
|
this.enterOuterAlt(localContext, 9);
|
|
1983
2009
|
{
|
|
1984
2010
|
this.state = 463;
|
|
1985
|
-
this.match(CParser.
|
|
2011
|
+
this.match(CParser.T__6);
|
|
1986
2012
|
}
|
|
1987
2013
|
break;
|
|
1988
|
-
case CParser.
|
|
2014
|
+
case CParser.T__7:
|
|
1989
2015
|
this.enterOuterAlt(localContext, 10);
|
|
1990
2016
|
{
|
|
1991
2017
|
this.state = 464;
|
|
1992
|
-
this.match(CParser.
|
|
2018
|
+
this.match(CParser.T__7);
|
|
1993
2019
|
}
|
|
1994
2020
|
break;
|
|
1995
|
-
case CParser.
|
|
2021
|
+
case CParser.Unsigned:
|
|
1996
2022
|
this.enterOuterAlt(localContext, 11);
|
|
1997
2023
|
{
|
|
1998
2024
|
this.state = 465;
|
|
1999
|
-
this.match(CParser.
|
|
2025
|
+
this.match(CParser.Unsigned);
|
|
2000
2026
|
}
|
|
2001
2027
|
break;
|
|
2002
|
-
case CParser.
|
|
2028
|
+
case CParser.Bool:
|
|
2003
2029
|
this.enterOuterAlt(localContext, 12);
|
|
2004
2030
|
{
|
|
2005
2031
|
this.state = 466;
|
|
2006
|
-
this.match(CParser.
|
|
2032
|
+
this.match(CParser.Bool);
|
|
2007
2033
|
}
|
|
2008
2034
|
break;
|
|
2009
|
-
case CParser.
|
|
2035
|
+
case CParser.Complex:
|
|
2010
2036
|
this.enterOuterAlt(localContext, 13);
|
|
2011
2037
|
{
|
|
2012
2038
|
this.state = 467;
|
|
2013
|
-
this.match(CParser.
|
|
2039
|
+
this.match(CParser.Complex);
|
|
2014
2040
|
}
|
|
2015
2041
|
break;
|
|
2016
|
-
case CParser.
|
|
2042
|
+
case CParser.T__8:
|
|
2017
2043
|
this.enterOuterAlt(localContext, 14);
|
|
2018
2044
|
{
|
|
2019
2045
|
this.state = 468;
|
|
2020
|
-
this.match(CParser.
|
|
2046
|
+
this.match(CParser.T__8);
|
|
2021
2047
|
}
|
|
2022
2048
|
break;
|
|
2023
|
-
case CParser.
|
|
2049
|
+
case CParser.T__9:
|
|
2024
2050
|
this.enterOuterAlt(localContext, 15);
|
|
2025
2051
|
{
|
|
2026
2052
|
this.state = 469;
|
|
2027
|
-
this.match(CParser.
|
|
2053
|
+
this.match(CParser.T__9);
|
|
2028
2054
|
}
|
|
2029
2055
|
break;
|
|
2030
|
-
case CParser.
|
|
2056
|
+
case CParser.T__10:
|
|
2031
2057
|
this.enterOuterAlt(localContext, 16);
|
|
2032
2058
|
{
|
|
2033
2059
|
this.state = 470;
|
|
2034
|
-
this.match(CParser.
|
|
2060
|
+
this.match(CParser.T__10);
|
|
2061
|
+
}
|
|
2062
|
+
break;
|
|
2063
|
+
case CParser.T__11:
|
|
2064
|
+
this.enterOuterAlt(localContext, 17);
|
|
2065
|
+
{
|
|
2035
2066
|
this.state = 471;
|
|
2036
|
-
this.match(CParser.
|
|
2067
|
+
this.match(CParser.T__11);
|
|
2068
|
+
}
|
|
2069
|
+
break;
|
|
2070
|
+
case CParser.T__12:
|
|
2071
|
+
this.enterOuterAlt(localContext, 18);
|
|
2072
|
+
{
|
|
2037
2073
|
this.state = 472;
|
|
2074
|
+
this.match(CParser.T__12);
|
|
2075
|
+
}
|
|
2076
|
+
break;
|
|
2077
|
+
case CParser.T__13:
|
|
2078
|
+
this.enterOuterAlt(localContext, 19);
|
|
2079
|
+
{
|
|
2080
|
+
this.state = 473;
|
|
2081
|
+
this.match(CParser.T__13);
|
|
2082
|
+
}
|
|
2083
|
+
break;
|
|
2084
|
+
case CParser.T__0:
|
|
2085
|
+
this.enterOuterAlt(localContext, 20);
|
|
2086
|
+
{
|
|
2087
|
+
this.state = 474;
|
|
2088
|
+
this.match(CParser.T__0);
|
|
2089
|
+
this.state = 475;
|
|
2090
|
+
this.match(CParser.LeftParen);
|
|
2091
|
+
this.state = 476;
|
|
2038
2092
|
_la = this.tokenStream.LA(1);
|
|
2039
|
-
if(!((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
2093
|
+
if(!((((_la) & ~0x1F) === 0 && ((1 << _la) & 3584) !== 0))) {
|
|
2040
2094
|
this.errorHandler.recoverInline(this);
|
|
2041
2095
|
}
|
|
2042
2096
|
else {
|
|
2043
2097
|
this.errorHandler.reportMatch(this);
|
|
2044
2098
|
this.consume();
|
|
2045
2099
|
}
|
|
2046
|
-
this.state =
|
|
2100
|
+
this.state = 477;
|
|
2047
2101
|
this.match(CParser.RightParen);
|
|
2048
2102
|
}
|
|
2049
2103
|
break;
|
|
2050
2104
|
case CParser.Atomic:
|
|
2051
|
-
this.enterOuterAlt(localContext,
|
|
2105
|
+
this.enterOuterAlt(localContext, 21);
|
|
2052
2106
|
{
|
|
2053
|
-
this.state =
|
|
2107
|
+
this.state = 478;
|
|
2054
2108
|
this.atomicTypeSpecifier();
|
|
2055
2109
|
}
|
|
2056
2110
|
break;
|
|
2057
2111
|
case CParser.Struct:
|
|
2058
2112
|
case CParser.Union:
|
|
2059
|
-
this.enterOuterAlt(localContext,
|
|
2113
|
+
this.enterOuterAlt(localContext, 22);
|
|
2060
2114
|
{
|
|
2061
|
-
this.state =
|
|
2115
|
+
this.state = 479;
|
|
2062
2116
|
this.structOrUnionSpecifier();
|
|
2063
2117
|
}
|
|
2064
2118
|
break;
|
|
2065
2119
|
case CParser.Enum:
|
|
2066
|
-
this.enterOuterAlt(localContext,
|
|
2120
|
+
this.enterOuterAlt(localContext, 23);
|
|
2067
2121
|
{
|
|
2068
|
-
this.state =
|
|
2122
|
+
this.state = 480;
|
|
2069
2123
|
this.enumSpecifier();
|
|
2070
2124
|
}
|
|
2071
2125
|
break;
|
|
2072
2126
|
case CParser.Identifier:
|
|
2073
|
-
this.enterOuterAlt(localContext,
|
|
2127
|
+
this.enterOuterAlt(localContext, 24);
|
|
2074
2128
|
{
|
|
2075
|
-
this.state =
|
|
2129
|
+
this.state = 481;
|
|
2076
2130
|
this.typedefName();
|
|
2077
2131
|
}
|
|
2078
2132
|
break;
|
|
2079
|
-
case CParser.
|
|
2080
|
-
|
|
2133
|
+
case CParser.T__14:
|
|
2134
|
+
case CParser.T__15:
|
|
2135
|
+
this.enterOuterAlt(localContext, 25);
|
|
2081
2136
|
{
|
|
2082
|
-
this.state =
|
|
2083
|
-
this.
|
|
2084
|
-
|
|
2137
|
+
this.state = 482;
|
|
2138
|
+
_la = this.tokenStream.LA(1);
|
|
2139
|
+
if(!(_la === 15 || _la === 16)) {
|
|
2140
|
+
this.errorHandler.recoverInline(this);
|
|
2141
|
+
}
|
|
2142
|
+
else {
|
|
2143
|
+
this.errorHandler.reportMatch(this);
|
|
2144
|
+
this.consume();
|
|
2145
|
+
}
|
|
2146
|
+
this.state = 483;
|
|
2085
2147
|
this.match(CParser.LeftParen);
|
|
2086
|
-
this.state =
|
|
2148
|
+
this.state = 484;
|
|
2087
2149
|
this.constantExpression();
|
|
2088
|
-
this.state =
|
|
2150
|
+
this.state = 485;
|
|
2089
2151
|
this.match(CParser.RightParen);
|
|
2090
2152
|
}
|
|
2091
2153
|
break;
|
|
@@ -2111,38 +2173,38 @@ export class CParser extends antlr.Parser {
|
|
|
2111
2173
|
this.enterRule(localContext, 64, CParser.RULE_structOrUnionSpecifier);
|
|
2112
2174
|
let _la: number;
|
|
2113
2175
|
try {
|
|
2114
|
-
this.state =
|
|
2176
|
+
this.state = 500;
|
|
2115
2177
|
this.errorHandler.sync(this);
|
|
2116
2178
|
switch (this.interpreter.adaptivePredict(this.tokenStream, 38, this.context) ) {
|
|
2117
2179
|
case 1:
|
|
2118
2180
|
this.enterOuterAlt(localContext, 1);
|
|
2119
2181
|
{
|
|
2120
|
-
this.state =
|
|
2182
|
+
this.state = 489;
|
|
2121
2183
|
this.structOrUnion();
|
|
2122
|
-
this.state =
|
|
2184
|
+
this.state = 491;
|
|
2123
2185
|
this.errorHandler.sync(this);
|
|
2124
2186
|
_la = this.tokenStream.LA(1);
|
|
2125
|
-
if (_la ===
|
|
2187
|
+
if (_la === 125) {
|
|
2126
2188
|
{
|
|
2127
|
-
this.state =
|
|
2189
|
+
this.state = 490;
|
|
2128
2190
|
this.match(CParser.Identifier);
|
|
2129
2191
|
}
|
|
2130
2192
|
}
|
|
2131
2193
|
|
|
2132
|
-
this.state =
|
|
2194
|
+
this.state = 493;
|
|
2133
2195
|
this.match(CParser.LeftBrace);
|
|
2134
|
-
this.state =
|
|
2196
|
+
this.state = 494;
|
|
2135
2197
|
this.structDeclarationList();
|
|
2136
|
-
this.state =
|
|
2198
|
+
this.state = 495;
|
|
2137
2199
|
this.match(CParser.RightBrace);
|
|
2138
2200
|
}
|
|
2139
2201
|
break;
|
|
2140
2202
|
case 2:
|
|
2141
2203
|
this.enterOuterAlt(localContext, 2);
|
|
2142
2204
|
{
|
|
2143
|
-
this.state =
|
|
2205
|
+
this.state = 497;
|
|
2144
2206
|
this.structOrUnion();
|
|
2145
|
-
this.state =
|
|
2207
|
+
this.state = 498;
|
|
2146
2208
|
this.match(CParser.Identifier);
|
|
2147
2209
|
}
|
|
2148
2210
|
break;
|
|
@@ -2168,9 +2230,9 @@ export class CParser extends antlr.Parser {
|
|
|
2168
2230
|
try {
|
|
2169
2231
|
this.enterOuterAlt(localContext, 1);
|
|
2170
2232
|
{
|
|
2171
|
-
this.state =
|
|
2233
|
+
this.state = 502;
|
|
2172
2234
|
_la = this.tokenStream.LA(1);
|
|
2173
|
-
if(!(_la ===
|
|
2235
|
+
if(!(_la === 61 || _la === 64)) {
|
|
2174
2236
|
this.errorHandler.recoverInline(this);
|
|
2175
2237
|
}
|
|
2176
2238
|
else {
|
|
@@ -2199,20 +2261,20 @@ export class CParser extends antlr.Parser {
|
|
|
2199
2261
|
try {
|
|
2200
2262
|
this.enterOuterAlt(localContext, 1);
|
|
2201
2263
|
{
|
|
2202
|
-
this.state =
|
|
2264
|
+
this.state = 505;
|
|
2203
2265
|
this.errorHandler.sync(this);
|
|
2204
2266
|
_la = this.tokenStream.LA(1);
|
|
2205
2267
|
do {
|
|
2206
2268
|
{
|
|
2207
2269
|
{
|
|
2208
|
-
this.state =
|
|
2270
|
+
this.state = 504;
|
|
2209
2271
|
this.structDeclaration();
|
|
2210
2272
|
}
|
|
2211
2273
|
}
|
|
2212
|
-
this.state =
|
|
2274
|
+
this.state = 507;
|
|
2213
2275
|
this.errorHandler.sync(this);
|
|
2214
2276
|
_la = this.tokenStream.LA(1);
|
|
2215
|
-
} while ((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
2277
|
+
} while ((((_la) & ~0x1F) === 0 && ((1 << _la) & 8388482) !== 0) || ((((_la - 38)) & ~0x1F) === 0 && ((1 << (_la - 38)) & 1016775331) !== 0) || ((((_la - 71)) & ~0x1F) === 0 && ((1 << (_la - 71)) & 71) !== 0) || _la === 125);
|
|
2216
2278
|
}
|
|
2217
2279
|
}
|
|
2218
2280
|
catch (re) {
|
|
@@ -2232,33 +2294,33 @@ export class CParser extends antlr.Parser {
|
|
|
2232
2294
|
let localContext = new StructDeclarationContext(this.context, this.state);
|
|
2233
2295
|
this.enterRule(localContext, 70, CParser.RULE_structDeclaration);
|
|
2234
2296
|
try {
|
|
2235
|
-
this.state =
|
|
2297
|
+
this.state = 517;
|
|
2236
2298
|
this.errorHandler.sync(this);
|
|
2237
2299
|
switch (this.interpreter.adaptivePredict(this.tokenStream, 40, this.context) ) {
|
|
2238
2300
|
case 1:
|
|
2239
2301
|
this.enterOuterAlt(localContext, 1);
|
|
2240
2302
|
{
|
|
2241
|
-
this.state =
|
|
2303
|
+
this.state = 509;
|
|
2242
2304
|
this.specifierQualifierList();
|
|
2243
|
-
this.state =
|
|
2305
|
+
this.state = 510;
|
|
2244
2306
|
this.structDeclaratorList();
|
|
2245
|
-
this.state =
|
|
2307
|
+
this.state = 511;
|
|
2246
2308
|
this.match(CParser.Semi);
|
|
2247
2309
|
}
|
|
2248
2310
|
break;
|
|
2249
2311
|
case 2:
|
|
2250
2312
|
this.enterOuterAlt(localContext, 2);
|
|
2251
2313
|
{
|
|
2252
|
-
this.state =
|
|
2314
|
+
this.state = 513;
|
|
2253
2315
|
this.specifierQualifierList();
|
|
2254
|
-
this.state =
|
|
2316
|
+
this.state = 514;
|
|
2255
2317
|
this.match(CParser.Semi);
|
|
2256
2318
|
}
|
|
2257
2319
|
break;
|
|
2258
2320
|
case 3:
|
|
2259
2321
|
this.enterOuterAlt(localContext, 3);
|
|
2260
2322
|
{
|
|
2261
|
-
this.state =
|
|
2323
|
+
this.state = 516;
|
|
2262
2324
|
this.staticAssertDeclaration();
|
|
2263
2325
|
}
|
|
2264
2326
|
break;
|
|
@@ -2283,28 +2345,28 @@ export class CParser extends antlr.Parser {
|
|
|
2283
2345
|
try {
|
|
2284
2346
|
this.enterOuterAlt(localContext, 1);
|
|
2285
2347
|
{
|
|
2286
|
-
this.state =
|
|
2348
|
+
this.state = 521;
|
|
2287
2349
|
this.errorHandler.sync(this);
|
|
2288
2350
|
switch (this.interpreter.adaptivePredict(this.tokenStream, 41, this.context) ) {
|
|
2289
2351
|
case 1:
|
|
2290
2352
|
{
|
|
2291
|
-
this.state =
|
|
2353
|
+
this.state = 519;
|
|
2292
2354
|
this.typeSpecifier();
|
|
2293
2355
|
}
|
|
2294
2356
|
break;
|
|
2295
2357
|
case 2:
|
|
2296
2358
|
{
|
|
2297
|
-
this.state =
|
|
2359
|
+
this.state = 520;
|
|
2298
2360
|
this.typeQualifier();
|
|
2299
2361
|
}
|
|
2300
2362
|
break;
|
|
2301
2363
|
}
|
|
2302
|
-
this.state =
|
|
2364
|
+
this.state = 524;
|
|
2303
2365
|
this.errorHandler.sync(this);
|
|
2304
2366
|
switch (this.interpreter.adaptivePredict(this.tokenStream, 42, this.context) ) {
|
|
2305
2367
|
case 1:
|
|
2306
2368
|
{
|
|
2307
|
-
this.state =
|
|
2369
|
+
this.state = 523;
|
|
2308
2370
|
this.specifierQualifierList();
|
|
2309
2371
|
}
|
|
2310
2372
|
break;
|
|
@@ -2331,21 +2393,21 @@ export class CParser extends antlr.Parser {
|
|
|
2331
2393
|
try {
|
|
2332
2394
|
this.enterOuterAlt(localContext, 1);
|
|
2333
2395
|
{
|
|
2334
|
-
this.state =
|
|
2396
|
+
this.state = 526;
|
|
2335
2397
|
this.structDeclarator();
|
|
2336
|
-
this.state =
|
|
2398
|
+
this.state = 531;
|
|
2337
2399
|
this.errorHandler.sync(this);
|
|
2338
2400
|
_la = this.tokenStream.LA(1);
|
|
2339
|
-
while (_la ===
|
|
2401
|
+
while (_la === 108) {
|
|
2340
2402
|
{
|
|
2341
2403
|
{
|
|
2342
|
-
this.state =
|
|
2404
|
+
this.state = 527;
|
|
2343
2405
|
this.match(CParser.Comma);
|
|
2344
|
-
this.state =
|
|
2406
|
+
this.state = 528;
|
|
2345
2407
|
this.structDeclarator();
|
|
2346
2408
|
}
|
|
2347
2409
|
}
|
|
2348
|
-
this.state =
|
|
2410
|
+
this.state = 533;
|
|
2349
2411
|
this.errorHandler.sync(this);
|
|
2350
2412
|
_la = this.tokenStream.LA(1);
|
|
2351
2413
|
}
|
|
@@ -2369,32 +2431,32 @@ export class CParser extends antlr.Parser {
|
|
|
2369
2431
|
this.enterRule(localContext, 76, CParser.RULE_structDeclarator);
|
|
2370
2432
|
let _la: number;
|
|
2371
2433
|
try {
|
|
2372
|
-
this.state =
|
|
2434
|
+
this.state = 540;
|
|
2373
2435
|
this.errorHandler.sync(this);
|
|
2374
2436
|
switch (this.interpreter.adaptivePredict(this.tokenStream, 45, this.context) ) {
|
|
2375
2437
|
case 1:
|
|
2376
2438
|
this.enterOuterAlt(localContext, 1);
|
|
2377
2439
|
{
|
|
2378
|
-
this.state =
|
|
2440
|
+
this.state = 534;
|
|
2379
2441
|
this.declarator();
|
|
2380
2442
|
}
|
|
2381
2443
|
break;
|
|
2382
2444
|
case 2:
|
|
2383
2445
|
this.enterOuterAlt(localContext, 2);
|
|
2384
2446
|
{
|
|
2385
|
-
this.state =
|
|
2447
|
+
this.state = 536;
|
|
2386
2448
|
this.errorHandler.sync(this);
|
|
2387
2449
|
_la = this.tokenStream.LA(1);
|
|
2388
|
-
if ((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
2450
|
+
if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 4194304000) !== 0) || ((((_la - 79)) & ~0x1F) === 0 && ((1 << (_la - 79)) & 8454145) !== 0) || _la === 125) {
|
|
2389
2451
|
{
|
|
2390
|
-
this.state =
|
|
2452
|
+
this.state = 535;
|
|
2391
2453
|
this.declarator();
|
|
2392
2454
|
}
|
|
2393
2455
|
}
|
|
2394
2456
|
|
|
2395
|
-
this.state =
|
|
2457
|
+
this.state = 538;
|
|
2396
2458
|
this.match(CParser.Colon);
|
|
2397
|
-
this.state =
|
|
2459
|
+
this.state = 539;
|
|
2398
2460
|
this.constantExpression();
|
|
2399
2461
|
}
|
|
2400
2462
|
break;
|
|
@@ -2418,48 +2480,48 @@ export class CParser extends antlr.Parser {
|
|
|
2418
2480
|
this.enterRule(localContext, 78, CParser.RULE_enumSpecifier);
|
|
2419
2481
|
let _la: number;
|
|
2420
2482
|
try {
|
|
2421
|
-
this.state =
|
|
2483
|
+
this.state = 555;
|
|
2422
2484
|
this.errorHandler.sync(this);
|
|
2423
2485
|
switch (this.interpreter.adaptivePredict(this.tokenStream, 48, this.context) ) {
|
|
2424
2486
|
case 1:
|
|
2425
2487
|
this.enterOuterAlt(localContext, 1);
|
|
2426
2488
|
{
|
|
2427
|
-
this.state =
|
|
2489
|
+
this.state = 542;
|
|
2428
2490
|
this.match(CParser.Enum);
|
|
2429
|
-
this.state =
|
|
2491
|
+
this.state = 544;
|
|
2430
2492
|
this.errorHandler.sync(this);
|
|
2431
2493
|
_la = this.tokenStream.LA(1);
|
|
2432
|
-
if (_la ===
|
|
2494
|
+
if (_la === 125) {
|
|
2433
2495
|
{
|
|
2434
|
-
this.state =
|
|
2496
|
+
this.state = 543;
|
|
2435
2497
|
this.match(CParser.Identifier);
|
|
2436
2498
|
}
|
|
2437
2499
|
}
|
|
2438
2500
|
|
|
2439
|
-
this.state =
|
|
2501
|
+
this.state = 546;
|
|
2440
2502
|
this.match(CParser.LeftBrace);
|
|
2441
|
-
this.state =
|
|
2503
|
+
this.state = 547;
|
|
2442
2504
|
this.enumeratorList();
|
|
2443
|
-
this.state =
|
|
2505
|
+
this.state = 549;
|
|
2444
2506
|
this.errorHandler.sync(this);
|
|
2445
2507
|
_la = this.tokenStream.LA(1);
|
|
2446
|
-
if (_la ===
|
|
2508
|
+
if (_la === 108) {
|
|
2447
2509
|
{
|
|
2448
|
-
this.state =
|
|
2510
|
+
this.state = 548;
|
|
2449
2511
|
this.match(CParser.Comma);
|
|
2450
2512
|
}
|
|
2451
2513
|
}
|
|
2452
2514
|
|
|
2453
|
-
this.state =
|
|
2515
|
+
this.state = 551;
|
|
2454
2516
|
this.match(CParser.RightBrace);
|
|
2455
2517
|
}
|
|
2456
2518
|
break;
|
|
2457
2519
|
case 2:
|
|
2458
2520
|
this.enterOuterAlt(localContext, 2);
|
|
2459
2521
|
{
|
|
2460
|
-
this.state =
|
|
2522
|
+
this.state = 553;
|
|
2461
2523
|
this.match(CParser.Enum);
|
|
2462
|
-
this.state =
|
|
2524
|
+
this.state = 554;
|
|
2463
2525
|
this.match(CParser.Identifier);
|
|
2464
2526
|
}
|
|
2465
2527
|
break;
|
|
@@ -2485,23 +2547,23 @@ export class CParser extends antlr.Parser {
|
|
|
2485
2547
|
let alternative: number;
|
|
2486
2548
|
this.enterOuterAlt(localContext, 1);
|
|
2487
2549
|
{
|
|
2488
|
-
this.state =
|
|
2550
|
+
this.state = 557;
|
|
2489
2551
|
this.enumerator();
|
|
2490
|
-
this.state =
|
|
2552
|
+
this.state = 562;
|
|
2491
2553
|
this.errorHandler.sync(this);
|
|
2492
2554
|
alternative = this.interpreter.adaptivePredict(this.tokenStream, 49, this.context);
|
|
2493
2555
|
while (alternative !== 2 && alternative !== antlr.ATN.INVALID_ALT_NUMBER) {
|
|
2494
2556
|
if (alternative === 1) {
|
|
2495
2557
|
{
|
|
2496
2558
|
{
|
|
2497
|
-
this.state =
|
|
2559
|
+
this.state = 558;
|
|
2498
2560
|
this.match(CParser.Comma);
|
|
2499
|
-
this.state =
|
|
2561
|
+
this.state = 559;
|
|
2500
2562
|
this.enumerator();
|
|
2501
2563
|
}
|
|
2502
2564
|
}
|
|
2503
2565
|
}
|
|
2504
|
-
this.state =
|
|
2566
|
+
this.state = 564;
|
|
2505
2567
|
this.errorHandler.sync(this);
|
|
2506
2568
|
alternative = this.interpreter.adaptivePredict(this.tokenStream, 49, this.context);
|
|
2507
2569
|
}
|
|
@@ -2527,16 +2589,16 @@ export class CParser extends antlr.Parser {
|
|
|
2527
2589
|
try {
|
|
2528
2590
|
this.enterOuterAlt(localContext, 1);
|
|
2529
2591
|
{
|
|
2530
|
-
this.state =
|
|
2592
|
+
this.state = 565;
|
|
2531
2593
|
this.enumerationConstant();
|
|
2532
|
-
this.state =
|
|
2594
|
+
this.state = 568;
|
|
2533
2595
|
this.errorHandler.sync(this);
|
|
2534
2596
|
_la = this.tokenStream.LA(1);
|
|
2535
|
-
if (_la ===
|
|
2597
|
+
if (_la === 109) {
|
|
2536
2598
|
{
|
|
2537
|
-
this.state =
|
|
2599
|
+
this.state = 566;
|
|
2538
2600
|
this.match(CParser.Assign);
|
|
2539
|
-
this.state =
|
|
2601
|
+
this.state = 567;
|
|
2540
2602
|
this.constantExpression();
|
|
2541
2603
|
}
|
|
2542
2604
|
}
|
|
@@ -2562,7 +2624,7 @@ export class CParser extends antlr.Parser {
|
|
|
2562
2624
|
try {
|
|
2563
2625
|
this.enterOuterAlt(localContext, 1);
|
|
2564
2626
|
{
|
|
2565
|
-
this.state =
|
|
2627
|
+
this.state = 570;
|
|
2566
2628
|
this.match(CParser.Identifier);
|
|
2567
2629
|
}
|
|
2568
2630
|
}
|
|
@@ -2585,13 +2647,13 @@ export class CParser extends antlr.Parser {
|
|
|
2585
2647
|
try {
|
|
2586
2648
|
this.enterOuterAlt(localContext, 1);
|
|
2587
2649
|
{
|
|
2588
|
-
this.state =
|
|
2650
|
+
this.state = 572;
|
|
2589
2651
|
this.match(CParser.Atomic);
|
|
2590
|
-
this.state =
|
|
2652
|
+
this.state = 573;
|
|
2591
2653
|
this.match(CParser.LeftParen);
|
|
2592
|
-
this.state =
|
|
2654
|
+
this.state = 574;
|
|
2593
2655
|
this.typeName();
|
|
2594
|
-
this.state =
|
|
2656
|
+
this.state = 575;
|
|
2595
2657
|
this.match(CParser.RightParen);
|
|
2596
2658
|
}
|
|
2597
2659
|
}
|
|
@@ -2615,9 +2677,9 @@ export class CParser extends antlr.Parser {
|
|
|
2615
2677
|
try {
|
|
2616
2678
|
this.enterOuterAlt(localContext, 1);
|
|
2617
2679
|
{
|
|
2618
|
-
this.state =
|
|
2680
|
+
this.state = 577;
|
|
2619
2681
|
_la = this.tokenStream.LA(1);
|
|
2620
|
-
if(!((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
2682
|
+
if(!(((((_la - 17)) & ~0x1F) === 0 && ((1 << (_la - 17)) & 4194367) !== 0) || ((((_la - 55)) & ~0x1F) === 0 && ((1 << (_la - 55)) & 69633) !== 0))) {
|
|
2621
2683
|
this.errorHandler.recoverInline(this);
|
|
2622
2684
|
}
|
|
2623
2685
|
else {
|
|
@@ -2643,54 +2705,61 @@ export class CParser extends antlr.Parser {
|
|
|
2643
2705
|
let localContext = new FunctionSpecifierContext(this.context, this.state);
|
|
2644
2706
|
this.enterRule(localContext, 90, CParser.RULE_functionSpecifier);
|
|
2645
2707
|
try {
|
|
2646
|
-
this.state =
|
|
2708
|
+
this.state = 589;
|
|
2647
2709
|
this.errorHandler.sync(this);
|
|
2648
2710
|
switch (this.tokenStream.LA(1)) {
|
|
2649
2711
|
case CParser.Inline:
|
|
2650
2712
|
this.enterOuterAlt(localContext, 1);
|
|
2651
2713
|
{
|
|
2652
|
-
this.state =
|
|
2714
|
+
this.state = 579;
|
|
2653
2715
|
this.match(CParser.Inline);
|
|
2654
2716
|
}
|
|
2655
2717
|
break;
|
|
2656
2718
|
case CParser.Noreturn:
|
|
2657
2719
|
this.enterOuterAlt(localContext, 2);
|
|
2658
2720
|
{
|
|
2659
|
-
this.state =
|
|
2721
|
+
this.state = 580;
|
|
2660
2722
|
this.match(CParser.Noreturn);
|
|
2661
2723
|
}
|
|
2662
2724
|
break;
|
|
2663
|
-
case CParser.
|
|
2725
|
+
case CParser.T__22:
|
|
2664
2726
|
this.enterOuterAlt(localContext, 3);
|
|
2665
2727
|
{
|
|
2666
|
-
this.state =
|
|
2667
|
-
this.match(CParser.
|
|
2728
|
+
this.state = 581;
|
|
2729
|
+
this.match(CParser.T__22);
|
|
2668
2730
|
}
|
|
2669
2731
|
break;
|
|
2670
|
-
case CParser.
|
|
2732
|
+
case CParser.T__23:
|
|
2671
2733
|
this.enterOuterAlt(localContext, 4);
|
|
2672
2734
|
{
|
|
2673
|
-
this.state =
|
|
2674
|
-
this.match(CParser.
|
|
2735
|
+
this.state = 582;
|
|
2736
|
+
this.match(CParser.T__23);
|
|
2675
2737
|
}
|
|
2676
2738
|
break;
|
|
2677
2739
|
case CParser.T__24:
|
|
2678
2740
|
this.enterOuterAlt(localContext, 5);
|
|
2679
2741
|
{
|
|
2680
|
-
this.state =
|
|
2681
|
-
this.
|
|
2742
|
+
this.state = 583;
|
|
2743
|
+
this.match(CParser.T__24);
|
|
2682
2744
|
}
|
|
2683
2745
|
break;
|
|
2684
|
-
case CParser.
|
|
2746
|
+
case CParser.T__33:
|
|
2685
2747
|
this.enterOuterAlt(localContext, 6);
|
|
2686
2748
|
{
|
|
2687
|
-
this.state =
|
|
2688
|
-
this.
|
|
2689
|
-
|
|
2749
|
+
this.state = 584;
|
|
2750
|
+
this.gccAttributeSpecifier();
|
|
2751
|
+
}
|
|
2752
|
+
break;
|
|
2753
|
+
case CParser.T__25:
|
|
2754
|
+
this.enterOuterAlt(localContext, 7);
|
|
2755
|
+
{
|
|
2756
|
+
this.state = 585;
|
|
2757
|
+
this.match(CParser.T__25);
|
|
2758
|
+
this.state = 586;
|
|
2690
2759
|
this.match(CParser.LeftParen);
|
|
2691
|
-
this.state =
|
|
2760
|
+
this.state = 587;
|
|
2692
2761
|
this.match(CParser.Identifier);
|
|
2693
|
-
this.state =
|
|
2762
|
+
this.state = 588;
|
|
2694
2763
|
this.match(CParser.RightParen);
|
|
2695
2764
|
}
|
|
2696
2765
|
break;
|
|
@@ -2717,27 +2786,27 @@ export class CParser extends antlr.Parser {
|
|
|
2717
2786
|
try {
|
|
2718
2787
|
this.enterOuterAlt(localContext, 1);
|
|
2719
2788
|
{
|
|
2720
|
-
this.state =
|
|
2789
|
+
this.state = 591;
|
|
2721
2790
|
this.match(CParser.Alignas);
|
|
2722
|
-
this.state =
|
|
2791
|
+
this.state = 592;
|
|
2723
2792
|
this.match(CParser.LeftParen);
|
|
2724
|
-
this.state =
|
|
2793
|
+
this.state = 595;
|
|
2725
2794
|
this.errorHandler.sync(this);
|
|
2726
2795
|
switch (this.interpreter.adaptivePredict(this.tokenStream, 52, this.context) ) {
|
|
2727
2796
|
case 1:
|
|
2728
2797
|
{
|
|
2729
|
-
this.state =
|
|
2798
|
+
this.state = 593;
|
|
2730
2799
|
this.typeName();
|
|
2731
2800
|
}
|
|
2732
2801
|
break;
|
|
2733
2802
|
case 2:
|
|
2734
2803
|
{
|
|
2735
|
-
this.state =
|
|
2804
|
+
this.state = 594;
|
|
2736
2805
|
this.constantExpression();
|
|
2737
2806
|
}
|
|
2738
2807
|
break;
|
|
2739
2808
|
}
|
|
2740
|
-
this.state =
|
|
2809
|
+
this.state = 597;
|
|
2741
2810
|
this.match(CParser.RightParen);
|
|
2742
2811
|
}
|
|
2743
2812
|
}
|
|
@@ -2762,31 +2831,31 @@ export class CParser extends antlr.Parser {
|
|
|
2762
2831
|
let alternative: number;
|
|
2763
2832
|
this.enterOuterAlt(localContext, 1);
|
|
2764
2833
|
{
|
|
2765
|
-
this.state =
|
|
2834
|
+
this.state = 600;
|
|
2766
2835
|
this.errorHandler.sync(this);
|
|
2767
2836
|
_la = this.tokenStream.LA(1);
|
|
2768
|
-
if (_la ===
|
|
2837
|
+
if (_la === 95 || _la === 102) {
|
|
2769
2838
|
{
|
|
2770
|
-
this.state =
|
|
2839
|
+
this.state = 599;
|
|
2771
2840
|
this.pointer();
|
|
2772
2841
|
}
|
|
2773
2842
|
}
|
|
2774
2843
|
|
|
2775
|
-
this.state =
|
|
2844
|
+
this.state = 602;
|
|
2776
2845
|
this.directDeclarator(0);
|
|
2777
|
-
this.state =
|
|
2846
|
+
this.state = 606;
|
|
2778
2847
|
this.errorHandler.sync(this);
|
|
2779
2848
|
alternative = this.interpreter.adaptivePredict(this.tokenStream, 54, this.context);
|
|
2780
2849
|
while (alternative !== 2 && alternative !== antlr.ATN.INVALID_ALT_NUMBER) {
|
|
2781
2850
|
if (alternative === 1) {
|
|
2782
2851
|
{
|
|
2783
2852
|
{
|
|
2784
|
-
this.state =
|
|
2853
|
+
this.state = 603;
|
|
2785
2854
|
this.gccDeclaratorExtension();
|
|
2786
2855
|
}
|
|
2787
2856
|
}
|
|
2788
2857
|
}
|
|
2789
|
-
this.state =
|
|
2858
|
+
this.state = 608;
|
|
2790
2859
|
this.errorHandler.sync(this);
|
|
2791
2860
|
alternative = this.interpreter.adaptivePredict(this.tokenStream, 54, this.context);
|
|
2792
2861
|
}
|
|
@@ -2824,58 +2893,58 @@ export class CParser extends antlr.Parser {
|
|
|
2824
2893
|
let alternative: number;
|
|
2825
2894
|
this.enterOuterAlt(localContext, 1);
|
|
2826
2895
|
{
|
|
2827
|
-
this.state =
|
|
2896
|
+
this.state = 626;
|
|
2828
2897
|
this.errorHandler.sync(this);
|
|
2829
2898
|
switch (this.interpreter.adaptivePredict(this.tokenStream, 55, this.context) ) {
|
|
2830
2899
|
case 1:
|
|
2831
2900
|
{
|
|
2832
|
-
this.state =
|
|
2901
|
+
this.state = 610;
|
|
2833
2902
|
this.match(CParser.Identifier);
|
|
2834
2903
|
}
|
|
2835
2904
|
break;
|
|
2836
2905
|
case 2:
|
|
2837
2906
|
{
|
|
2838
|
-
this.state =
|
|
2907
|
+
this.state = 611;
|
|
2839
2908
|
this.match(CParser.LeftParen);
|
|
2840
|
-
this.state =
|
|
2909
|
+
this.state = 612;
|
|
2841
2910
|
this.declarator();
|
|
2842
|
-
this.state =
|
|
2911
|
+
this.state = 613;
|
|
2843
2912
|
this.match(CParser.RightParen);
|
|
2844
2913
|
}
|
|
2845
2914
|
break;
|
|
2846
2915
|
case 3:
|
|
2847
2916
|
{
|
|
2848
|
-
this.state =
|
|
2917
|
+
this.state = 615;
|
|
2849
2918
|
this.match(CParser.Identifier);
|
|
2850
|
-
this.state =
|
|
2919
|
+
this.state = 616;
|
|
2851
2920
|
this.match(CParser.Colon);
|
|
2852
|
-
this.state =
|
|
2921
|
+
this.state = 617;
|
|
2853
2922
|
this.match(CParser.DigitSequence);
|
|
2854
2923
|
}
|
|
2855
2924
|
break;
|
|
2856
2925
|
case 4:
|
|
2857
2926
|
{
|
|
2858
|
-
this.state =
|
|
2927
|
+
this.state = 618;
|
|
2859
2928
|
this.vcSpecificModifer();
|
|
2860
|
-
this.state =
|
|
2929
|
+
this.state = 619;
|
|
2861
2930
|
this.match(CParser.Identifier);
|
|
2862
2931
|
}
|
|
2863
2932
|
break;
|
|
2864
2933
|
case 5:
|
|
2865
2934
|
{
|
|
2866
|
-
this.state =
|
|
2935
|
+
this.state = 621;
|
|
2867
2936
|
this.match(CParser.LeftParen);
|
|
2868
|
-
this.state =
|
|
2937
|
+
this.state = 622;
|
|
2869
2938
|
this.vcSpecificModifer();
|
|
2870
|
-
this.state =
|
|
2939
|
+
this.state = 623;
|
|
2871
2940
|
this.declarator();
|
|
2872
|
-
this.state =
|
|
2941
|
+
this.state = 624;
|
|
2873
2942
|
this.match(CParser.RightParen);
|
|
2874
2943
|
}
|
|
2875
2944
|
break;
|
|
2876
2945
|
}
|
|
2877
2946
|
this.context!.stop = this.tokenStream.LT(-1);
|
|
2878
|
-
this.state =
|
|
2947
|
+
this.state = 673;
|
|
2879
2948
|
this.errorHandler.sync(this);
|
|
2880
2949
|
alternative = this.interpreter.adaptivePredict(this.tokenStream, 62, this.context);
|
|
2881
2950
|
while (alternative !== 2 && alternative !== antlr.ATN.INVALID_ALT_NUMBER) {
|
|
@@ -2885,40 +2954,40 @@ export class CParser extends antlr.Parser {
|
|
|
2885
2954
|
}
|
|
2886
2955
|
previousContext = localContext;
|
|
2887
2956
|
{
|
|
2888
|
-
this.state =
|
|
2957
|
+
this.state = 671;
|
|
2889
2958
|
this.errorHandler.sync(this);
|
|
2890
2959
|
switch (this.interpreter.adaptivePredict(this.tokenStream, 61, this.context) ) {
|
|
2891
2960
|
case 1:
|
|
2892
2961
|
{
|
|
2893
2962
|
localContext = new DirectDeclaratorContext(parentContext, parentState);
|
|
2894
2963
|
this.pushNewRecursionContext(localContext, _startState, CParser.RULE_directDeclarator);
|
|
2895
|
-
this.state =
|
|
2964
|
+
this.state = 628;
|
|
2896
2965
|
if (!(this.precpred(this.context, 9))) {
|
|
2897
2966
|
throw this.createFailedPredicateException("this.precpred(this.context, 9)");
|
|
2898
2967
|
}
|
|
2899
|
-
this.state =
|
|
2968
|
+
this.state = 629;
|
|
2900
2969
|
this.match(CParser.LeftBracket);
|
|
2901
|
-
this.state =
|
|
2970
|
+
this.state = 631;
|
|
2902
2971
|
this.errorHandler.sync(this);
|
|
2903
2972
|
_la = this.tokenStream.LA(1);
|
|
2904
|
-
if ((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
2973
|
+
if (((((_la - 17)) & ~0x1F) === 0 && ((1 << (_la - 17)) & 4194367) !== 0) || ((((_la - 55)) & ~0x1F) === 0 && ((1 << (_la - 55)) & 69633) !== 0)) {
|
|
2905
2974
|
{
|
|
2906
|
-
this.state =
|
|
2975
|
+
this.state = 630;
|
|
2907
2976
|
this.typeQualifierList();
|
|
2908
2977
|
}
|
|
2909
2978
|
}
|
|
2910
2979
|
|
|
2911
|
-
this.state =
|
|
2980
|
+
this.state = 634;
|
|
2912
2981
|
this.errorHandler.sync(this);
|
|
2913
2982
|
_la = this.tokenStream.LA(1);
|
|
2914
|
-
if ((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
2983
|
+
if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 62) !== 0) || ((((_la - 59)) & ~0x1F) === 0 && ((1 << (_la - 59)) & 1083393) !== 0) || ((((_la - 91)) & ~0x1F) === 0 && ((1 << (_la - 91)) & 12959) !== 0) || ((((_la - 125)) & ~0x1F) === 0 && ((1 << (_la - 125)) & 15) !== 0)) {
|
|
2915
2984
|
{
|
|
2916
|
-
this.state =
|
|
2985
|
+
this.state = 633;
|
|
2917
2986
|
this.assignmentExpression();
|
|
2918
2987
|
}
|
|
2919
2988
|
}
|
|
2920
2989
|
|
|
2921
|
-
this.state =
|
|
2990
|
+
this.state = 636;
|
|
2922
2991
|
this.match(CParser.RightBracket);
|
|
2923
2992
|
}
|
|
2924
2993
|
break;
|
|
@@ -2926,27 +2995,27 @@ export class CParser extends antlr.Parser {
|
|
|
2926
2995
|
{
|
|
2927
2996
|
localContext = new DirectDeclaratorContext(parentContext, parentState);
|
|
2928
2997
|
this.pushNewRecursionContext(localContext, _startState, CParser.RULE_directDeclarator);
|
|
2929
|
-
this.state =
|
|
2998
|
+
this.state = 637;
|
|
2930
2999
|
if (!(this.precpred(this.context, 8))) {
|
|
2931
3000
|
throw this.createFailedPredicateException("this.precpred(this.context, 8)");
|
|
2932
3001
|
}
|
|
2933
|
-
this.state =
|
|
3002
|
+
this.state = 638;
|
|
2934
3003
|
this.match(CParser.LeftBracket);
|
|
2935
|
-
this.state =
|
|
3004
|
+
this.state = 639;
|
|
2936
3005
|
this.match(CParser.Static);
|
|
2937
|
-
this.state =
|
|
3006
|
+
this.state = 641;
|
|
2938
3007
|
this.errorHandler.sync(this);
|
|
2939
3008
|
_la = this.tokenStream.LA(1);
|
|
2940
|
-
if ((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
3009
|
+
if (((((_la - 17)) & ~0x1F) === 0 && ((1 << (_la - 17)) & 4194367) !== 0) || ((((_la - 55)) & ~0x1F) === 0 && ((1 << (_la - 55)) & 69633) !== 0)) {
|
|
2941
3010
|
{
|
|
2942
|
-
this.state =
|
|
3011
|
+
this.state = 640;
|
|
2943
3012
|
this.typeQualifierList();
|
|
2944
3013
|
}
|
|
2945
3014
|
}
|
|
2946
3015
|
|
|
2947
|
-
this.state =
|
|
3016
|
+
this.state = 643;
|
|
2948
3017
|
this.assignmentExpression();
|
|
2949
|
-
this.state =
|
|
3018
|
+
this.state = 644;
|
|
2950
3019
|
this.match(CParser.RightBracket);
|
|
2951
3020
|
}
|
|
2952
3021
|
break;
|
|
@@ -2954,19 +3023,19 @@ export class CParser extends antlr.Parser {
|
|
|
2954
3023
|
{
|
|
2955
3024
|
localContext = new DirectDeclaratorContext(parentContext, parentState);
|
|
2956
3025
|
this.pushNewRecursionContext(localContext, _startState, CParser.RULE_directDeclarator);
|
|
2957
|
-
this.state =
|
|
3026
|
+
this.state = 646;
|
|
2958
3027
|
if (!(this.precpred(this.context, 7))) {
|
|
2959
3028
|
throw this.createFailedPredicateException("this.precpred(this.context, 7)");
|
|
2960
3029
|
}
|
|
2961
|
-
this.state =
|
|
3030
|
+
this.state = 647;
|
|
2962
3031
|
this.match(CParser.LeftBracket);
|
|
2963
|
-
this.state =
|
|
3032
|
+
this.state = 648;
|
|
2964
3033
|
this.typeQualifierList();
|
|
2965
|
-
this.state =
|
|
3034
|
+
this.state = 649;
|
|
2966
3035
|
this.match(CParser.Static);
|
|
2967
|
-
this.state =
|
|
3036
|
+
this.state = 650;
|
|
2968
3037
|
this.assignmentExpression();
|
|
2969
|
-
this.state =
|
|
3038
|
+
this.state = 651;
|
|
2970
3039
|
this.match(CParser.RightBracket);
|
|
2971
3040
|
}
|
|
2972
3041
|
break;
|
|
@@ -2974,25 +3043,25 @@ export class CParser extends antlr.Parser {
|
|
|
2974
3043
|
{
|
|
2975
3044
|
localContext = new DirectDeclaratorContext(parentContext, parentState);
|
|
2976
3045
|
this.pushNewRecursionContext(localContext, _startState, CParser.RULE_directDeclarator);
|
|
2977
|
-
this.state =
|
|
3046
|
+
this.state = 653;
|
|
2978
3047
|
if (!(this.precpred(this.context, 6))) {
|
|
2979
3048
|
throw this.createFailedPredicateException("this.precpred(this.context, 6)");
|
|
2980
3049
|
}
|
|
2981
|
-
this.state =
|
|
3050
|
+
this.state = 654;
|
|
2982
3051
|
this.match(CParser.LeftBracket);
|
|
2983
|
-
this.state =
|
|
3052
|
+
this.state = 656;
|
|
2984
3053
|
this.errorHandler.sync(this);
|
|
2985
3054
|
_la = this.tokenStream.LA(1);
|
|
2986
|
-
if ((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
3055
|
+
if (((((_la - 17)) & ~0x1F) === 0 && ((1 << (_la - 17)) & 4194367) !== 0) || ((((_la - 55)) & ~0x1F) === 0 && ((1 << (_la - 55)) & 69633) !== 0)) {
|
|
2987
3056
|
{
|
|
2988
|
-
this.state =
|
|
3057
|
+
this.state = 655;
|
|
2989
3058
|
this.typeQualifierList();
|
|
2990
3059
|
}
|
|
2991
3060
|
}
|
|
2992
3061
|
|
|
2993
|
-
this.state =
|
|
3062
|
+
this.state = 658;
|
|
2994
3063
|
this.match(CParser.Star);
|
|
2995
|
-
this.state =
|
|
3064
|
+
this.state = 659;
|
|
2996
3065
|
this.match(CParser.RightBracket);
|
|
2997
3066
|
}
|
|
2998
3067
|
break;
|
|
@@ -3000,15 +3069,15 @@ export class CParser extends antlr.Parser {
|
|
|
3000
3069
|
{
|
|
3001
3070
|
localContext = new DirectDeclaratorContext(parentContext, parentState);
|
|
3002
3071
|
this.pushNewRecursionContext(localContext, _startState, CParser.RULE_directDeclarator);
|
|
3003
|
-
this.state =
|
|
3072
|
+
this.state = 660;
|
|
3004
3073
|
if (!(this.precpred(this.context, 5))) {
|
|
3005
3074
|
throw this.createFailedPredicateException("this.precpred(this.context, 5)");
|
|
3006
3075
|
}
|
|
3007
|
-
this.state =
|
|
3076
|
+
this.state = 661;
|
|
3008
3077
|
this.match(CParser.LeftParen);
|
|
3009
|
-
this.state =
|
|
3078
|
+
this.state = 662;
|
|
3010
3079
|
this.parameterTypeList();
|
|
3011
|
-
this.state =
|
|
3080
|
+
this.state = 663;
|
|
3012
3081
|
this.match(CParser.RightParen);
|
|
3013
3082
|
}
|
|
3014
3083
|
break;
|
|
@@ -3016,30 +3085,30 @@ export class CParser extends antlr.Parser {
|
|
|
3016
3085
|
{
|
|
3017
3086
|
localContext = new DirectDeclaratorContext(parentContext, parentState);
|
|
3018
3087
|
this.pushNewRecursionContext(localContext, _startState, CParser.RULE_directDeclarator);
|
|
3019
|
-
this.state =
|
|
3088
|
+
this.state = 665;
|
|
3020
3089
|
if (!(this.precpred(this.context, 4))) {
|
|
3021
3090
|
throw this.createFailedPredicateException("this.precpred(this.context, 4)");
|
|
3022
3091
|
}
|
|
3023
|
-
this.state =
|
|
3092
|
+
this.state = 666;
|
|
3024
3093
|
this.match(CParser.LeftParen);
|
|
3025
|
-
this.state =
|
|
3094
|
+
this.state = 668;
|
|
3026
3095
|
this.errorHandler.sync(this);
|
|
3027
3096
|
_la = this.tokenStream.LA(1);
|
|
3028
|
-
if (_la ===
|
|
3097
|
+
if (_la === 125) {
|
|
3029
3098
|
{
|
|
3030
|
-
this.state =
|
|
3099
|
+
this.state = 667;
|
|
3031
3100
|
this.identifierList();
|
|
3032
3101
|
}
|
|
3033
3102
|
}
|
|
3034
3103
|
|
|
3035
|
-
this.state =
|
|
3104
|
+
this.state = 670;
|
|
3036
3105
|
this.match(CParser.RightParen);
|
|
3037
3106
|
}
|
|
3038
3107
|
break;
|
|
3039
3108
|
}
|
|
3040
3109
|
}
|
|
3041
3110
|
}
|
|
3042
|
-
this.state =
|
|
3111
|
+
this.state = 675;
|
|
3043
3112
|
this.errorHandler.sync(this);
|
|
3044
3113
|
alternative = this.interpreter.adaptivePredict(this.tokenStream, 62, this.context);
|
|
3045
3114
|
}
|
|
@@ -3065,9 +3134,9 @@ export class CParser extends antlr.Parser {
|
|
|
3065
3134
|
try {
|
|
3066
3135
|
this.enterOuterAlt(localContext, 1);
|
|
3067
3136
|
{
|
|
3068
|
-
this.state =
|
|
3137
|
+
this.state = 676;
|
|
3069
3138
|
_la = this.tokenStream.LA(1);
|
|
3070
|
-
if(!((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
3139
|
+
if(!((((_la) & ~0x1F) === 0 && ((1 << _la) & 4194304000) !== 0))) {
|
|
3071
3140
|
this.errorHandler.recoverInline(this);
|
|
3072
3141
|
}
|
|
3073
3142
|
else {
|
|
@@ -3094,46 +3163,46 @@ export class CParser extends antlr.Parser {
|
|
|
3094
3163
|
this.enterRule(localContext, 100, CParser.RULE_gccDeclaratorExtension);
|
|
3095
3164
|
let _la: number;
|
|
3096
3165
|
try {
|
|
3097
|
-
this.state =
|
|
3166
|
+
this.state = 687;
|
|
3098
3167
|
this.errorHandler.sync(this);
|
|
3099
3168
|
switch (this.tokenStream.LA(1)) {
|
|
3100
|
-
case CParser.
|
|
3101
|
-
case CParser.
|
|
3169
|
+
case CParser.T__31:
|
|
3170
|
+
case CParser.T__32:
|
|
3102
3171
|
this.enterOuterAlt(localContext, 1);
|
|
3103
3172
|
{
|
|
3104
|
-
this.state =
|
|
3173
|
+
this.state = 678;
|
|
3105
3174
|
_la = this.tokenStream.LA(1);
|
|
3106
|
-
if(!(_la ===
|
|
3175
|
+
if(!(_la === 32 || _la === 33)) {
|
|
3107
3176
|
this.errorHandler.recoverInline(this);
|
|
3108
3177
|
}
|
|
3109
3178
|
else {
|
|
3110
3179
|
this.errorHandler.reportMatch(this);
|
|
3111
3180
|
this.consume();
|
|
3112
3181
|
}
|
|
3113
|
-
this.state =
|
|
3182
|
+
this.state = 679;
|
|
3114
3183
|
this.match(CParser.LeftParen);
|
|
3115
|
-
this.state =
|
|
3184
|
+
this.state = 681;
|
|
3116
3185
|
this.errorHandler.sync(this);
|
|
3117
3186
|
_la = this.tokenStream.LA(1);
|
|
3118
3187
|
do {
|
|
3119
3188
|
{
|
|
3120
3189
|
{
|
|
3121
|
-
this.state =
|
|
3190
|
+
this.state = 680;
|
|
3122
3191
|
this.match(CParser.StringLiteral);
|
|
3123
3192
|
}
|
|
3124
3193
|
}
|
|
3125
|
-
this.state =
|
|
3194
|
+
this.state = 683;
|
|
3126
3195
|
this.errorHandler.sync(this);
|
|
3127
3196
|
_la = this.tokenStream.LA(1);
|
|
3128
|
-
} while (_la ===
|
|
3129
|
-
this.state =
|
|
3197
|
+
} while (_la === 128);
|
|
3198
|
+
this.state = 685;
|
|
3130
3199
|
this.match(CParser.RightParen);
|
|
3131
3200
|
}
|
|
3132
3201
|
break;
|
|
3133
|
-
case CParser.
|
|
3202
|
+
case CParser.T__33:
|
|
3134
3203
|
this.enterOuterAlt(localContext, 2);
|
|
3135
3204
|
{
|
|
3136
|
-
this.state =
|
|
3205
|
+
this.state = 686;
|
|
3137
3206
|
this.gccAttributeSpecifier();
|
|
3138
3207
|
}
|
|
3139
3208
|
break;
|
|
@@ -3160,17 +3229,17 @@ export class CParser extends antlr.Parser {
|
|
|
3160
3229
|
try {
|
|
3161
3230
|
this.enterOuterAlt(localContext, 1);
|
|
3162
3231
|
{
|
|
3163
|
-
this.state =
|
|
3164
|
-
this.match(CParser.
|
|
3165
|
-
this.state =
|
|
3232
|
+
this.state = 689;
|
|
3233
|
+
this.match(CParser.T__33);
|
|
3234
|
+
this.state = 690;
|
|
3166
3235
|
this.match(CParser.LeftParen);
|
|
3167
|
-
this.state =
|
|
3236
|
+
this.state = 691;
|
|
3168
3237
|
this.match(CParser.LeftParen);
|
|
3169
|
-
this.state =
|
|
3238
|
+
this.state = 692;
|
|
3170
3239
|
this.gccAttributeList();
|
|
3171
|
-
this.state =
|
|
3240
|
+
this.state = 693;
|
|
3172
3241
|
this.match(CParser.RightParen);
|
|
3173
|
-
this.state =
|
|
3242
|
+
this.state = 694;
|
|
3174
3243
|
this.match(CParser.RightParen);
|
|
3175
3244
|
}
|
|
3176
3245
|
}
|
|
@@ -3194,37 +3263,37 @@ export class CParser extends antlr.Parser {
|
|
|
3194
3263
|
try {
|
|
3195
3264
|
this.enterOuterAlt(localContext, 1);
|
|
3196
3265
|
{
|
|
3197
|
-
this.state =
|
|
3266
|
+
this.state = 697;
|
|
3198
3267
|
this.errorHandler.sync(this);
|
|
3199
3268
|
_la = this.tokenStream.LA(1);
|
|
3200
|
-
if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 4294967294) !== 0) || ((((_la - 32)) & ~0x1F) === 0 && ((1 << (_la - 32)) & 4294967295) !== 0) || ((((_la - 64)) & ~0x1F) === 0 && ((1 << (_la - 64)) &
|
|
3269
|
+
if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 4294967294) !== 0) || ((((_la - 32)) & ~0x1F) === 0 && ((1 << (_la - 32)) & 4294967295) !== 0) || ((((_la - 64)) & ~0x1F) === 0 && ((1 << (_la - 64)) & 4294868991) !== 0) || ((((_la - 96)) & ~0x1F) === 0 && ((1 << (_la - 96)) & 4294963199) !== 0) || ((((_la - 128)) & ~0x1F) === 0 && ((1 << (_la - 128)) & 255) !== 0)) {
|
|
3201
3270
|
{
|
|
3202
|
-
this.state =
|
|
3271
|
+
this.state = 696;
|
|
3203
3272
|
this.gccAttribute();
|
|
3204
3273
|
}
|
|
3205
3274
|
}
|
|
3206
3275
|
|
|
3207
|
-
this.state =
|
|
3276
|
+
this.state = 705;
|
|
3208
3277
|
this.errorHandler.sync(this);
|
|
3209
3278
|
_la = this.tokenStream.LA(1);
|
|
3210
|
-
while (_la ===
|
|
3279
|
+
while (_la === 108) {
|
|
3211
3280
|
{
|
|
3212
3281
|
{
|
|
3213
|
-
this.state =
|
|
3282
|
+
this.state = 699;
|
|
3214
3283
|
this.match(CParser.Comma);
|
|
3215
|
-
this.state =
|
|
3284
|
+
this.state = 701;
|
|
3216
3285
|
this.errorHandler.sync(this);
|
|
3217
3286
|
_la = this.tokenStream.LA(1);
|
|
3218
|
-
if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 4294967294) !== 0) || ((((_la - 32)) & ~0x1F) === 0 && ((1 << (_la - 32)) & 4294967295) !== 0) || ((((_la - 64)) & ~0x1F) === 0 && ((1 << (_la - 64)) &
|
|
3287
|
+
if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 4294967294) !== 0) || ((((_la - 32)) & ~0x1F) === 0 && ((1 << (_la - 32)) & 4294967295) !== 0) || ((((_la - 64)) & ~0x1F) === 0 && ((1 << (_la - 64)) & 4294868991) !== 0) || ((((_la - 96)) & ~0x1F) === 0 && ((1 << (_la - 96)) & 4294963199) !== 0) || ((((_la - 128)) & ~0x1F) === 0 && ((1 << (_la - 128)) & 255) !== 0)) {
|
|
3219
3288
|
{
|
|
3220
|
-
this.state =
|
|
3289
|
+
this.state = 700;
|
|
3221
3290
|
this.gccAttribute();
|
|
3222
3291
|
}
|
|
3223
3292
|
}
|
|
3224
3293
|
|
|
3225
3294
|
}
|
|
3226
3295
|
}
|
|
3227
|
-
this.state =
|
|
3296
|
+
this.state = 707;
|
|
3228
3297
|
this.errorHandler.sync(this);
|
|
3229
3298
|
_la = this.tokenStream.LA(1);
|
|
3230
3299
|
}
|
|
@@ -3250,33 +3319,33 @@ export class CParser extends antlr.Parser {
|
|
|
3250
3319
|
try {
|
|
3251
3320
|
this.enterOuterAlt(localContext, 1);
|
|
3252
3321
|
{
|
|
3253
|
-
this.state =
|
|
3322
|
+
this.state = 708;
|
|
3254
3323
|
_la = this.tokenStream.LA(1);
|
|
3255
|
-
if(_la<=0 || ((((_la -
|
|
3324
|
+
if(_la<=0 || ((((_la - 79)) & ~0x1F) === 0 && ((1 << (_la - 79)) & 536870915) !== 0)) {
|
|
3256
3325
|
this.errorHandler.recoverInline(this);
|
|
3257
3326
|
}
|
|
3258
3327
|
else {
|
|
3259
3328
|
this.errorHandler.reportMatch(this);
|
|
3260
3329
|
this.consume();
|
|
3261
3330
|
}
|
|
3262
|
-
this.state =
|
|
3331
|
+
this.state = 714;
|
|
3263
3332
|
this.errorHandler.sync(this);
|
|
3264
3333
|
_la = this.tokenStream.LA(1);
|
|
3265
|
-
if (_la ===
|
|
3334
|
+
if (_la === 79) {
|
|
3266
3335
|
{
|
|
3267
|
-
this.state =
|
|
3336
|
+
this.state = 709;
|
|
3268
3337
|
this.match(CParser.LeftParen);
|
|
3269
|
-
this.state =
|
|
3338
|
+
this.state = 711;
|
|
3270
3339
|
this.errorHandler.sync(this);
|
|
3271
3340
|
_la = this.tokenStream.LA(1);
|
|
3272
|
-
if ((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
3341
|
+
if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 62) !== 0) || ((((_la - 59)) & ~0x1F) === 0 && ((1 << (_la - 59)) & 1083393) !== 0) || ((((_la - 91)) & ~0x1F) === 0 && ((1 << (_la - 91)) & 12959) !== 0) || ((((_la - 125)) & ~0x1F) === 0 && ((1 << (_la - 125)) & 15) !== 0)) {
|
|
3273
3342
|
{
|
|
3274
|
-
this.state =
|
|
3343
|
+
this.state = 710;
|
|
3275
3344
|
this.argumentExpressionList();
|
|
3276
3345
|
}
|
|
3277
3346
|
}
|
|
3278
3347
|
|
|
3279
|
-
this.state =
|
|
3348
|
+
this.state = 713;
|
|
3280
3349
|
this.match(CParser.RightParen);
|
|
3281
3350
|
}
|
|
3282
3351
|
}
|
|
@@ -3303,37 +3372,37 @@ export class CParser extends antlr.Parser {
|
|
|
3303
3372
|
try {
|
|
3304
3373
|
this.enterOuterAlt(localContext, 1);
|
|
3305
3374
|
{
|
|
3306
|
-
this.state =
|
|
3375
|
+
this.state = 720;
|
|
3307
3376
|
this.errorHandler.sync(this);
|
|
3308
3377
|
_la = this.tokenStream.LA(1);
|
|
3309
3378
|
do {
|
|
3310
3379
|
{
|
|
3311
3380
|
{
|
|
3312
|
-
this.state =
|
|
3381
|
+
this.state = 716;
|
|
3313
3382
|
_la = this.tokenStream.LA(1);
|
|
3314
|
-
if(!(_la ===
|
|
3383
|
+
if(!(_la === 95 || _la === 102)) {
|
|
3315
3384
|
this.errorHandler.recoverInline(this);
|
|
3316
3385
|
}
|
|
3317
3386
|
else {
|
|
3318
3387
|
this.errorHandler.reportMatch(this);
|
|
3319
3388
|
this.consume();
|
|
3320
3389
|
}
|
|
3321
|
-
this.state =
|
|
3390
|
+
this.state = 718;
|
|
3322
3391
|
this.errorHandler.sync(this);
|
|
3323
3392
|
_la = this.tokenStream.LA(1);
|
|
3324
|
-
if ((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
3393
|
+
if (((((_la - 17)) & ~0x1F) === 0 && ((1 << (_la - 17)) & 4194367) !== 0) || ((((_la - 55)) & ~0x1F) === 0 && ((1 << (_la - 55)) & 69633) !== 0)) {
|
|
3325
3394
|
{
|
|
3326
|
-
this.state =
|
|
3395
|
+
this.state = 717;
|
|
3327
3396
|
this.typeQualifierList();
|
|
3328
3397
|
}
|
|
3329
3398
|
}
|
|
3330
3399
|
|
|
3331
3400
|
}
|
|
3332
3401
|
}
|
|
3333
|
-
this.state =
|
|
3402
|
+
this.state = 722;
|
|
3334
3403
|
this.errorHandler.sync(this);
|
|
3335
3404
|
_la = this.tokenStream.LA(1);
|
|
3336
|
-
} while (_la ===
|
|
3405
|
+
} while (_la === 95 || _la === 102);
|
|
3337
3406
|
}
|
|
3338
3407
|
}
|
|
3339
3408
|
catch (re) {
|
|
@@ -3356,20 +3425,20 @@ export class CParser extends antlr.Parser {
|
|
|
3356
3425
|
try {
|
|
3357
3426
|
this.enterOuterAlt(localContext, 1);
|
|
3358
3427
|
{
|
|
3359
|
-
this.state =
|
|
3428
|
+
this.state = 725;
|
|
3360
3429
|
this.errorHandler.sync(this);
|
|
3361
3430
|
_la = this.tokenStream.LA(1);
|
|
3362
3431
|
do {
|
|
3363
3432
|
{
|
|
3364
3433
|
{
|
|
3365
|
-
this.state =
|
|
3434
|
+
this.state = 724;
|
|
3366
3435
|
this.typeQualifier();
|
|
3367
3436
|
}
|
|
3368
3437
|
}
|
|
3369
|
-
this.state =
|
|
3438
|
+
this.state = 727;
|
|
3370
3439
|
this.errorHandler.sync(this);
|
|
3371
3440
|
_la = this.tokenStream.LA(1);
|
|
3372
|
-
} while ((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
3441
|
+
} while (((((_la - 17)) & ~0x1F) === 0 && ((1 << (_la - 17)) & 4194367) !== 0) || ((((_la - 55)) & ~0x1F) === 0 && ((1 << (_la - 55)) & 69633) !== 0));
|
|
3373
3442
|
}
|
|
3374
3443
|
}
|
|
3375
3444
|
catch (re) {
|
|
@@ -3392,16 +3461,16 @@ export class CParser extends antlr.Parser {
|
|
|
3392
3461
|
try {
|
|
3393
3462
|
this.enterOuterAlt(localContext, 1);
|
|
3394
3463
|
{
|
|
3395
|
-
this.state =
|
|
3464
|
+
this.state = 729;
|
|
3396
3465
|
this.parameterList();
|
|
3397
|
-
this.state =
|
|
3466
|
+
this.state = 732;
|
|
3398
3467
|
this.errorHandler.sync(this);
|
|
3399
3468
|
_la = this.tokenStream.LA(1);
|
|
3400
|
-
if (_la ===
|
|
3469
|
+
if (_la === 108) {
|
|
3401
3470
|
{
|
|
3402
|
-
this.state =
|
|
3471
|
+
this.state = 730;
|
|
3403
3472
|
this.match(CParser.Comma);
|
|
3404
|
-
this.state =
|
|
3473
|
+
this.state = 731;
|
|
3405
3474
|
this.match(CParser.Ellipsis);
|
|
3406
3475
|
}
|
|
3407
3476
|
}
|
|
@@ -3428,23 +3497,23 @@ export class CParser extends antlr.Parser {
|
|
|
3428
3497
|
let alternative: number;
|
|
3429
3498
|
this.enterOuterAlt(localContext, 1);
|
|
3430
3499
|
{
|
|
3431
|
-
this.state = 729;
|
|
3432
|
-
this.parameterDeclaration();
|
|
3433
3500
|
this.state = 734;
|
|
3501
|
+
this.parameterDeclaration();
|
|
3502
|
+
this.state = 739;
|
|
3434
3503
|
this.errorHandler.sync(this);
|
|
3435
3504
|
alternative = this.interpreter.adaptivePredict(this.tokenStream, 74, this.context);
|
|
3436
3505
|
while (alternative !== 2 && alternative !== antlr.ATN.INVALID_ALT_NUMBER) {
|
|
3437
3506
|
if (alternative === 1) {
|
|
3438
3507
|
{
|
|
3439
3508
|
{
|
|
3440
|
-
this.state =
|
|
3509
|
+
this.state = 735;
|
|
3441
3510
|
this.match(CParser.Comma);
|
|
3442
|
-
this.state =
|
|
3511
|
+
this.state = 736;
|
|
3443
3512
|
this.parameterDeclaration();
|
|
3444
3513
|
}
|
|
3445
3514
|
}
|
|
3446
3515
|
}
|
|
3447
|
-
this.state =
|
|
3516
|
+
this.state = 741;
|
|
3448
3517
|
this.errorHandler.sync(this);
|
|
3449
3518
|
alternative = this.interpreter.adaptivePredict(this.tokenStream, 74, this.context);
|
|
3450
3519
|
}
|
|
@@ -3468,29 +3537,29 @@ export class CParser extends antlr.Parser {
|
|
|
3468
3537
|
this.enterRule(localContext, 116, CParser.RULE_parameterDeclaration);
|
|
3469
3538
|
let _la: number;
|
|
3470
3539
|
try {
|
|
3471
|
-
this.state =
|
|
3540
|
+
this.state = 749;
|
|
3472
3541
|
this.errorHandler.sync(this);
|
|
3473
3542
|
switch (this.interpreter.adaptivePredict(this.tokenStream, 76, this.context) ) {
|
|
3474
3543
|
case 1:
|
|
3475
3544
|
this.enterOuterAlt(localContext, 1);
|
|
3476
3545
|
{
|
|
3477
|
-
this.state =
|
|
3546
|
+
this.state = 742;
|
|
3478
3547
|
this.declarationSpecifiers();
|
|
3479
|
-
this.state =
|
|
3548
|
+
this.state = 743;
|
|
3480
3549
|
this.declarator();
|
|
3481
3550
|
}
|
|
3482
3551
|
break;
|
|
3483
3552
|
case 2:
|
|
3484
3553
|
this.enterOuterAlt(localContext, 2);
|
|
3485
3554
|
{
|
|
3486
|
-
this.state =
|
|
3555
|
+
this.state = 745;
|
|
3487
3556
|
this.declarationSpecifiers2();
|
|
3488
|
-
this.state =
|
|
3557
|
+
this.state = 747;
|
|
3489
3558
|
this.errorHandler.sync(this);
|
|
3490
3559
|
_la = this.tokenStream.LA(1);
|
|
3491
|
-
if (((((_la -
|
|
3560
|
+
if (((((_la - 79)) & ~0x1F) === 0 && ((1 << (_la - 79)) & 8454149) !== 0)) {
|
|
3492
3561
|
{
|
|
3493
|
-
this.state =
|
|
3562
|
+
this.state = 746;
|
|
3494
3563
|
this.abstractDeclarator();
|
|
3495
3564
|
}
|
|
3496
3565
|
}
|
|
@@ -3519,21 +3588,21 @@ export class CParser extends antlr.Parser {
|
|
|
3519
3588
|
try {
|
|
3520
3589
|
this.enterOuterAlt(localContext, 1);
|
|
3521
3590
|
{
|
|
3522
|
-
this.state = 746;
|
|
3523
|
-
this.match(CParser.Identifier);
|
|
3524
3591
|
this.state = 751;
|
|
3592
|
+
this.match(CParser.Identifier);
|
|
3593
|
+
this.state = 756;
|
|
3525
3594
|
this.errorHandler.sync(this);
|
|
3526
3595
|
_la = this.tokenStream.LA(1);
|
|
3527
|
-
while (_la ===
|
|
3596
|
+
while (_la === 108) {
|
|
3528
3597
|
{
|
|
3529
3598
|
{
|
|
3530
|
-
this.state =
|
|
3599
|
+
this.state = 752;
|
|
3531
3600
|
this.match(CParser.Comma);
|
|
3532
|
-
this.state =
|
|
3601
|
+
this.state = 753;
|
|
3533
3602
|
this.match(CParser.Identifier);
|
|
3534
3603
|
}
|
|
3535
3604
|
}
|
|
3536
|
-
this.state =
|
|
3605
|
+
this.state = 758;
|
|
3537
3606
|
this.errorHandler.sync(this);
|
|
3538
3607
|
_la = this.tokenStream.LA(1);
|
|
3539
3608
|
}
|
|
@@ -3559,14 +3628,14 @@ export class CParser extends antlr.Parser {
|
|
|
3559
3628
|
try {
|
|
3560
3629
|
this.enterOuterAlt(localContext, 1);
|
|
3561
3630
|
{
|
|
3562
|
-
this.state =
|
|
3631
|
+
this.state = 759;
|
|
3563
3632
|
this.specifierQualifierList();
|
|
3564
|
-
this.state =
|
|
3633
|
+
this.state = 761;
|
|
3565
3634
|
this.errorHandler.sync(this);
|
|
3566
3635
|
_la = this.tokenStream.LA(1);
|
|
3567
|
-
if (((((_la -
|
|
3636
|
+
if (((((_la - 79)) & ~0x1F) === 0 && ((1 << (_la - 79)) & 8454149) !== 0)) {
|
|
3568
3637
|
{
|
|
3569
|
-
this.state =
|
|
3638
|
+
this.state = 760;
|
|
3570
3639
|
this.abstractDeclarator();
|
|
3571
3640
|
}
|
|
3572
3641
|
}
|
|
@@ -3591,42 +3660,42 @@ export class CParser extends antlr.Parser {
|
|
|
3591
3660
|
this.enterRule(localContext, 122, CParser.RULE_abstractDeclarator);
|
|
3592
3661
|
let _la: number;
|
|
3593
3662
|
try {
|
|
3594
|
-
this.state =
|
|
3663
|
+
this.state = 774;
|
|
3595
3664
|
this.errorHandler.sync(this);
|
|
3596
3665
|
switch (this.interpreter.adaptivePredict(this.tokenStream, 81, this.context) ) {
|
|
3597
3666
|
case 1:
|
|
3598
3667
|
this.enterOuterAlt(localContext, 1);
|
|
3599
3668
|
{
|
|
3600
|
-
this.state =
|
|
3669
|
+
this.state = 763;
|
|
3601
3670
|
this.pointer();
|
|
3602
3671
|
}
|
|
3603
3672
|
break;
|
|
3604
3673
|
case 2:
|
|
3605
3674
|
this.enterOuterAlt(localContext, 2);
|
|
3606
3675
|
{
|
|
3607
|
-
this.state =
|
|
3676
|
+
this.state = 765;
|
|
3608
3677
|
this.errorHandler.sync(this);
|
|
3609
3678
|
_la = this.tokenStream.LA(1);
|
|
3610
|
-
if (_la ===
|
|
3679
|
+
if (_la === 95 || _la === 102) {
|
|
3611
3680
|
{
|
|
3612
|
-
this.state =
|
|
3681
|
+
this.state = 764;
|
|
3613
3682
|
this.pointer();
|
|
3614
3683
|
}
|
|
3615
3684
|
}
|
|
3616
3685
|
|
|
3617
|
-
this.state =
|
|
3686
|
+
this.state = 767;
|
|
3618
3687
|
this.directAbstractDeclarator(0);
|
|
3619
|
-
this.state =
|
|
3688
|
+
this.state = 771;
|
|
3620
3689
|
this.errorHandler.sync(this);
|
|
3621
3690
|
_la = this.tokenStream.LA(1);
|
|
3622
|
-
while ((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
3691
|
+
while (((((_la - 32)) & ~0x1F) === 0 && ((1 << (_la - 32)) & 7) !== 0)) {
|
|
3623
3692
|
{
|
|
3624
3693
|
{
|
|
3625
|
-
this.state =
|
|
3694
|
+
this.state = 768;
|
|
3626
3695
|
this.gccDeclaratorExtension();
|
|
3627
3696
|
}
|
|
3628
3697
|
}
|
|
3629
|
-
this.state =
|
|
3698
|
+
this.state = 773;
|
|
3630
3699
|
this.errorHandler.sync(this);
|
|
3631
3700
|
_la = this.tokenStream.LA(1);
|
|
3632
3701
|
}
|
|
@@ -3666,30 +3735,30 @@ export class CParser extends antlr.Parser {
|
|
|
3666
3735
|
let alternative: number;
|
|
3667
3736
|
this.enterOuterAlt(localContext, 1);
|
|
3668
3737
|
{
|
|
3669
|
-
this.state =
|
|
3738
|
+
this.state = 822;
|
|
3670
3739
|
this.errorHandler.sync(this);
|
|
3671
3740
|
switch (this.interpreter.adaptivePredict(this.tokenStream, 88, this.context) ) {
|
|
3672
3741
|
case 1:
|
|
3673
3742
|
{
|
|
3674
|
-
this.state =
|
|
3743
|
+
this.state = 777;
|
|
3675
3744
|
this.match(CParser.LeftParen);
|
|
3676
|
-
this.state =
|
|
3745
|
+
this.state = 778;
|
|
3677
3746
|
this.abstractDeclarator();
|
|
3678
|
-
this.state =
|
|
3747
|
+
this.state = 779;
|
|
3679
3748
|
this.match(CParser.RightParen);
|
|
3680
|
-
this.state =
|
|
3749
|
+
this.state = 783;
|
|
3681
3750
|
this.errorHandler.sync(this);
|
|
3682
3751
|
alternative = this.interpreter.adaptivePredict(this.tokenStream, 82, this.context);
|
|
3683
3752
|
while (alternative !== 2 && alternative !== antlr.ATN.INVALID_ALT_NUMBER) {
|
|
3684
3753
|
if (alternative === 1) {
|
|
3685
3754
|
{
|
|
3686
3755
|
{
|
|
3687
|
-
this.state =
|
|
3756
|
+
this.state = 780;
|
|
3688
3757
|
this.gccDeclaratorExtension();
|
|
3689
3758
|
}
|
|
3690
3759
|
}
|
|
3691
3760
|
}
|
|
3692
|
-
this.state =
|
|
3761
|
+
this.state = 785;
|
|
3693
3762
|
this.errorHandler.sync(this);
|
|
3694
3763
|
alternative = this.interpreter.adaptivePredict(this.tokenStream, 82, this.context);
|
|
3695
3764
|
}
|
|
@@ -3697,107 +3766,107 @@ export class CParser extends antlr.Parser {
|
|
|
3697
3766
|
break;
|
|
3698
3767
|
case 2:
|
|
3699
3768
|
{
|
|
3700
|
-
this.state =
|
|
3769
|
+
this.state = 786;
|
|
3701
3770
|
this.match(CParser.LeftBracket);
|
|
3702
|
-
this.state =
|
|
3771
|
+
this.state = 788;
|
|
3703
3772
|
this.errorHandler.sync(this);
|
|
3704
3773
|
_la = this.tokenStream.LA(1);
|
|
3705
|
-
if ((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
3774
|
+
if (((((_la - 17)) & ~0x1F) === 0 && ((1 << (_la - 17)) & 4194367) !== 0) || ((((_la - 55)) & ~0x1F) === 0 && ((1 << (_la - 55)) & 69633) !== 0)) {
|
|
3706
3775
|
{
|
|
3707
|
-
this.state =
|
|
3776
|
+
this.state = 787;
|
|
3708
3777
|
this.typeQualifierList();
|
|
3709
3778
|
}
|
|
3710
3779
|
}
|
|
3711
3780
|
|
|
3712
|
-
this.state =
|
|
3781
|
+
this.state = 791;
|
|
3713
3782
|
this.errorHandler.sync(this);
|
|
3714
3783
|
_la = this.tokenStream.LA(1);
|
|
3715
|
-
if ((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
3784
|
+
if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 62) !== 0) || ((((_la - 59)) & ~0x1F) === 0 && ((1 << (_la - 59)) & 1083393) !== 0) || ((((_la - 91)) & ~0x1F) === 0 && ((1 << (_la - 91)) & 12959) !== 0) || ((((_la - 125)) & ~0x1F) === 0 && ((1 << (_la - 125)) & 15) !== 0)) {
|
|
3716
3785
|
{
|
|
3717
|
-
this.state =
|
|
3786
|
+
this.state = 790;
|
|
3718
3787
|
this.assignmentExpression();
|
|
3719
3788
|
}
|
|
3720
3789
|
}
|
|
3721
3790
|
|
|
3722
|
-
this.state =
|
|
3791
|
+
this.state = 793;
|
|
3723
3792
|
this.match(CParser.RightBracket);
|
|
3724
3793
|
}
|
|
3725
3794
|
break;
|
|
3726
3795
|
case 3:
|
|
3727
3796
|
{
|
|
3728
|
-
this.state =
|
|
3797
|
+
this.state = 794;
|
|
3729
3798
|
this.match(CParser.LeftBracket);
|
|
3730
|
-
this.state =
|
|
3799
|
+
this.state = 795;
|
|
3731
3800
|
this.match(CParser.Static);
|
|
3732
|
-
this.state =
|
|
3801
|
+
this.state = 797;
|
|
3733
3802
|
this.errorHandler.sync(this);
|
|
3734
3803
|
_la = this.tokenStream.LA(1);
|
|
3735
|
-
if ((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
3804
|
+
if (((((_la - 17)) & ~0x1F) === 0 && ((1 << (_la - 17)) & 4194367) !== 0) || ((((_la - 55)) & ~0x1F) === 0 && ((1 << (_la - 55)) & 69633) !== 0)) {
|
|
3736
3805
|
{
|
|
3737
|
-
this.state =
|
|
3806
|
+
this.state = 796;
|
|
3738
3807
|
this.typeQualifierList();
|
|
3739
3808
|
}
|
|
3740
3809
|
}
|
|
3741
3810
|
|
|
3742
|
-
this.state =
|
|
3811
|
+
this.state = 799;
|
|
3743
3812
|
this.assignmentExpression();
|
|
3744
|
-
this.state =
|
|
3813
|
+
this.state = 800;
|
|
3745
3814
|
this.match(CParser.RightBracket);
|
|
3746
3815
|
}
|
|
3747
3816
|
break;
|
|
3748
3817
|
case 4:
|
|
3749
3818
|
{
|
|
3750
|
-
this.state =
|
|
3819
|
+
this.state = 802;
|
|
3751
3820
|
this.match(CParser.LeftBracket);
|
|
3752
|
-
this.state =
|
|
3821
|
+
this.state = 803;
|
|
3753
3822
|
this.typeQualifierList();
|
|
3754
|
-
this.state =
|
|
3823
|
+
this.state = 804;
|
|
3755
3824
|
this.match(CParser.Static);
|
|
3756
|
-
this.state =
|
|
3825
|
+
this.state = 805;
|
|
3757
3826
|
this.assignmentExpression();
|
|
3758
|
-
this.state =
|
|
3827
|
+
this.state = 806;
|
|
3759
3828
|
this.match(CParser.RightBracket);
|
|
3760
3829
|
}
|
|
3761
3830
|
break;
|
|
3762
3831
|
case 5:
|
|
3763
3832
|
{
|
|
3764
|
-
this.state =
|
|
3833
|
+
this.state = 808;
|
|
3765
3834
|
this.match(CParser.LeftBracket);
|
|
3766
|
-
this.state =
|
|
3835
|
+
this.state = 809;
|
|
3767
3836
|
this.match(CParser.Star);
|
|
3768
|
-
this.state =
|
|
3837
|
+
this.state = 810;
|
|
3769
3838
|
this.match(CParser.RightBracket);
|
|
3770
3839
|
}
|
|
3771
3840
|
break;
|
|
3772
3841
|
case 6:
|
|
3773
3842
|
{
|
|
3774
|
-
this.state =
|
|
3843
|
+
this.state = 811;
|
|
3775
3844
|
this.match(CParser.LeftParen);
|
|
3776
|
-
this.state =
|
|
3845
|
+
this.state = 813;
|
|
3777
3846
|
this.errorHandler.sync(this);
|
|
3778
3847
|
_la = this.tokenStream.LA(1);
|
|
3779
|
-
if ((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
3848
|
+
if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 134217666) !== 0) || ((((_la - 34)) & ~0x1F) === 0 && ((1 << (_la - 34)) & 3988666931) !== 0) || ((((_la - 66)) & ~0x1F) === 0 && ((1 << (_la - 66)) & 5355) !== 0) || _la === 125) {
|
|
3780
3849
|
{
|
|
3781
|
-
this.state =
|
|
3850
|
+
this.state = 812;
|
|
3782
3851
|
this.parameterTypeList();
|
|
3783
3852
|
}
|
|
3784
3853
|
}
|
|
3785
3854
|
|
|
3786
|
-
this.state =
|
|
3855
|
+
this.state = 815;
|
|
3787
3856
|
this.match(CParser.RightParen);
|
|
3788
|
-
this.state =
|
|
3857
|
+
this.state = 819;
|
|
3789
3858
|
this.errorHandler.sync(this);
|
|
3790
3859
|
alternative = this.interpreter.adaptivePredict(this.tokenStream, 87, this.context);
|
|
3791
3860
|
while (alternative !== 2 && alternative !== antlr.ATN.INVALID_ALT_NUMBER) {
|
|
3792
3861
|
if (alternative === 1) {
|
|
3793
3862
|
{
|
|
3794
3863
|
{
|
|
3795
|
-
this.state =
|
|
3864
|
+
this.state = 816;
|
|
3796
3865
|
this.gccDeclaratorExtension();
|
|
3797
3866
|
}
|
|
3798
3867
|
}
|
|
3799
3868
|
}
|
|
3800
|
-
this.state =
|
|
3869
|
+
this.state = 821;
|
|
3801
3870
|
this.errorHandler.sync(this);
|
|
3802
3871
|
alternative = this.interpreter.adaptivePredict(this.tokenStream, 87, this.context);
|
|
3803
3872
|
}
|
|
@@ -3805,7 +3874,7 @@ export class CParser extends antlr.Parser {
|
|
|
3805
3874
|
break;
|
|
3806
3875
|
}
|
|
3807
3876
|
this.context!.stop = this.tokenStream.LT(-1);
|
|
3808
|
-
this.state =
|
|
3877
|
+
this.state = 867;
|
|
3809
3878
|
this.errorHandler.sync(this);
|
|
3810
3879
|
alternative = this.interpreter.adaptivePredict(this.tokenStream, 95, this.context);
|
|
3811
3880
|
while (alternative !== 2 && alternative !== antlr.ATN.INVALID_ALT_NUMBER) {
|
|
@@ -3815,40 +3884,40 @@ export class CParser extends antlr.Parser {
|
|
|
3815
3884
|
}
|
|
3816
3885
|
previousContext = localContext;
|
|
3817
3886
|
{
|
|
3818
|
-
this.state =
|
|
3887
|
+
this.state = 865;
|
|
3819
3888
|
this.errorHandler.sync(this);
|
|
3820
3889
|
switch (this.interpreter.adaptivePredict(this.tokenStream, 94, this.context) ) {
|
|
3821
3890
|
case 1:
|
|
3822
3891
|
{
|
|
3823
3892
|
localContext = new DirectAbstractDeclaratorContext(parentContext, parentState);
|
|
3824
3893
|
this.pushNewRecursionContext(localContext, _startState, CParser.RULE_directAbstractDeclarator);
|
|
3825
|
-
this.state =
|
|
3894
|
+
this.state = 824;
|
|
3826
3895
|
if (!(this.precpred(this.context, 5))) {
|
|
3827
3896
|
throw this.createFailedPredicateException("this.precpred(this.context, 5)");
|
|
3828
3897
|
}
|
|
3829
|
-
this.state =
|
|
3898
|
+
this.state = 825;
|
|
3830
3899
|
this.match(CParser.LeftBracket);
|
|
3831
|
-
this.state =
|
|
3900
|
+
this.state = 827;
|
|
3832
3901
|
this.errorHandler.sync(this);
|
|
3833
3902
|
_la = this.tokenStream.LA(1);
|
|
3834
|
-
if ((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
3903
|
+
if (((((_la - 17)) & ~0x1F) === 0 && ((1 << (_la - 17)) & 4194367) !== 0) || ((((_la - 55)) & ~0x1F) === 0 && ((1 << (_la - 55)) & 69633) !== 0)) {
|
|
3835
3904
|
{
|
|
3836
|
-
this.state =
|
|
3905
|
+
this.state = 826;
|
|
3837
3906
|
this.typeQualifierList();
|
|
3838
3907
|
}
|
|
3839
3908
|
}
|
|
3840
3909
|
|
|
3841
|
-
this.state =
|
|
3910
|
+
this.state = 830;
|
|
3842
3911
|
this.errorHandler.sync(this);
|
|
3843
3912
|
_la = this.tokenStream.LA(1);
|
|
3844
|
-
if ((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
3913
|
+
if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 62) !== 0) || ((((_la - 59)) & ~0x1F) === 0 && ((1 << (_la - 59)) & 1083393) !== 0) || ((((_la - 91)) & ~0x1F) === 0 && ((1 << (_la - 91)) & 12959) !== 0) || ((((_la - 125)) & ~0x1F) === 0 && ((1 << (_la - 125)) & 15) !== 0)) {
|
|
3845
3914
|
{
|
|
3846
|
-
this.state =
|
|
3915
|
+
this.state = 829;
|
|
3847
3916
|
this.assignmentExpression();
|
|
3848
3917
|
}
|
|
3849
3918
|
}
|
|
3850
3919
|
|
|
3851
|
-
this.state =
|
|
3920
|
+
this.state = 832;
|
|
3852
3921
|
this.match(CParser.RightBracket);
|
|
3853
3922
|
}
|
|
3854
3923
|
break;
|
|
@@ -3856,27 +3925,27 @@ export class CParser extends antlr.Parser {
|
|
|
3856
3925
|
{
|
|
3857
3926
|
localContext = new DirectAbstractDeclaratorContext(parentContext, parentState);
|
|
3858
3927
|
this.pushNewRecursionContext(localContext, _startState, CParser.RULE_directAbstractDeclarator);
|
|
3859
|
-
this.state =
|
|
3928
|
+
this.state = 833;
|
|
3860
3929
|
if (!(this.precpred(this.context, 4))) {
|
|
3861
3930
|
throw this.createFailedPredicateException("this.precpred(this.context, 4)");
|
|
3862
3931
|
}
|
|
3863
|
-
this.state =
|
|
3932
|
+
this.state = 834;
|
|
3864
3933
|
this.match(CParser.LeftBracket);
|
|
3865
|
-
this.state =
|
|
3934
|
+
this.state = 835;
|
|
3866
3935
|
this.match(CParser.Static);
|
|
3867
|
-
this.state =
|
|
3936
|
+
this.state = 837;
|
|
3868
3937
|
this.errorHandler.sync(this);
|
|
3869
3938
|
_la = this.tokenStream.LA(1);
|
|
3870
|
-
if ((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
3939
|
+
if (((((_la - 17)) & ~0x1F) === 0 && ((1 << (_la - 17)) & 4194367) !== 0) || ((((_la - 55)) & ~0x1F) === 0 && ((1 << (_la - 55)) & 69633) !== 0)) {
|
|
3871
3940
|
{
|
|
3872
|
-
this.state =
|
|
3941
|
+
this.state = 836;
|
|
3873
3942
|
this.typeQualifierList();
|
|
3874
3943
|
}
|
|
3875
3944
|
}
|
|
3876
3945
|
|
|
3877
|
-
this.state =
|
|
3946
|
+
this.state = 839;
|
|
3878
3947
|
this.assignmentExpression();
|
|
3879
|
-
this.state =
|
|
3948
|
+
this.state = 840;
|
|
3880
3949
|
this.match(CParser.RightBracket);
|
|
3881
3950
|
}
|
|
3882
3951
|
break;
|
|
@@ -3884,19 +3953,19 @@ export class CParser extends antlr.Parser {
|
|
|
3884
3953
|
{
|
|
3885
3954
|
localContext = new DirectAbstractDeclaratorContext(parentContext, parentState);
|
|
3886
3955
|
this.pushNewRecursionContext(localContext, _startState, CParser.RULE_directAbstractDeclarator);
|
|
3887
|
-
this.state =
|
|
3956
|
+
this.state = 842;
|
|
3888
3957
|
if (!(this.precpred(this.context, 3))) {
|
|
3889
3958
|
throw this.createFailedPredicateException("this.precpred(this.context, 3)");
|
|
3890
3959
|
}
|
|
3891
|
-
this.state =
|
|
3960
|
+
this.state = 843;
|
|
3892
3961
|
this.match(CParser.LeftBracket);
|
|
3893
|
-
this.state =
|
|
3962
|
+
this.state = 844;
|
|
3894
3963
|
this.typeQualifierList();
|
|
3895
|
-
this.state =
|
|
3964
|
+
this.state = 845;
|
|
3896
3965
|
this.match(CParser.Static);
|
|
3897
|
-
this.state =
|
|
3966
|
+
this.state = 846;
|
|
3898
3967
|
this.assignmentExpression();
|
|
3899
|
-
this.state =
|
|
3968
|
+
this.state = 847;
|
|
3900
3969
|
this.match(CParser.RightBracket);
|
|
3901
3970
|
}
|
|
3902
3971
|
break;
|
|
@@ -3904,15 +3973,15 @@ export class CParser extends antlr.Parser {
|
|
|
3904
3973
|
{
|
|
3905
3974
|
localContext = new DirectAbstractDeclaratorContext(parentContext, parentState);
|
|
3906
3975
|
this.pushNewRecursionContext(localContext, _startState, CParser.RULE_directAbstractDeclarator);
|
|
3907
|
-
this.state =
|
|
3976
|
+
this.state = 849;
|
|
3908
3977
|
if (!(this.precpred(this.context, 2))) {
|
|
3909
3978
|
throw this.createFailedPredicateException("this.precpred(this.context, 2)");
|
|
3910
3979
|
}
|
|
3911
|
-
this.state =
|
|
3980
|
+
this.state = 850;
|
|
3912
3981
|
this.match(CParser.LeftBracket);
|
|
3913
|
-
this.state =
|
|
3982
|
+
this.state = 851;
|
|
3914
3983
|
this.match(CParser.Star);
|
|
3915
|
-
this.state =
|
|
3984
|
+
this.state = 852;
|
|
3916
3985
|
this.match(CParser.RightBracket);
|
|
3917
3986
|
}
|
|
3918
3987
|
break;
|
|
@@ -3920,37 +3989,37 @@ export class CParser extends antlr.Parser {
|
|
|
3920
3989
|
{
|
|
3921
3990
|
localContext = new DirectAbstractDeclaratorContext(parentContext, parentState);
|
|
3922
3991
|
this.pushNewRecursionContext(localContext, _startState, CParser.RULE_directAbstractDeclarator);
|
|
3923
|
-
this.state =
|
|
3992
|
+
this.state = 853;
|
|
3924
3993
|
if (!(this.precpred(this.context, 1))) {
|
|
3925
3994
|
throw this.createFailedPredicateException("this.precpred(this.context, 1)");
|
|
3926
3995
|
}
|
|
3927
|
-
this.state =
|
|
3996
|
+
this.state = 854;
|
|
3928
3997
|
this.match(CParser.LeftParen);
|
|
3929
|
-
this.state =
|
|
3998
|
+
this.state = 856;
|
|
3930
3999
|
this.errorHandler.sync(this);
|
|
3931
4000
|
_la = this.tokenStream.LA(1);
|
|
3932
|
-
if ((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
4001
|
+
if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 134217666) !== 0) || ((((_la - 34)) & ~0x1F) === 0 && ((1 << (_la - 34)) & 3988666931) !== 0) || ((((_la - 66)) & ~0x1F) === 0 && ((1 << (_la - 66)) & 5355) !== 0) || _la === 125) {
|
|
3933
4002
|
{
|
|
3934
|
-
this.state =
|
|
4003
|
+
this.state = 855;
|
|
3935
4004
|
this.parameterTypeList();
|
|
3936
4005
|
}
|
|
3937
4006
|
}
|
|
3938
4007
|
|
|
3939
|
-
this.state =
|
|
4008
|
+
this.state = 858;
|
|
3940
4009
|
this.match(CParser.RightParen);
|
|
3941
|
-
this.state =
|
|
4010
|
+
this.state = 862;
|
|
3942
4011
|
this.errorHandler.sync(this);
|
|
3943
4012
|
alternative = this.interpreter.adaptivePredict(this.tokenStream, 93, this.context);
|
|
3944
4013
|
while (alternative !== 2 && alternative !== antlr.ATN.INVALID_ALT_NUMBER) {
|
|
3945
4014
|
if (alternative === 1) {
|
|
3946
4015
|
{
|
|
3947
4016
|
{
|
|
3948
|
-
this.state =
|
|
4017
|
+
this.state = 859;
|
|
3949
4018
|
this.gccDeclaratorExtension();
|
|
3950
4019
|
}
|
|
3951
4020
|
}
|
|
3952
4021
|
}
|
|
3953
|
-
this.state =
|
|
4022
|
+
this.state = 864;
|
|
3954
4023
|
this.errorHandler.sync(this);
|
|
3955
4024
|
alternative = this.interpreter.adaptivePredict(this.tokenStream, 93, this.context);
|
|
3956
4025
|
}
|
|
@@ -3959,7 +4028,7 @@ export class CParser extends antlr.Parser {
|
|
|
3959
4028
|
}
|
|
3960
4029
|
}
|
|
3961
4030
|
}
|
|
3962
|
-
this.state =
|
|
4031
|
+
this.state = 869;
|
|
3963
4032
|
this.errorHandler.sync(this);
|
|
3964
4033
|
alternative = this.interpreter.adaptivePredict(this.tokenStream, 95, this.context);
|
|
3965
4034
|
}
|
|
@@ -3984,7 +4053,7 @@ export class CParser extends antlr.Parser {
|
|
|
3984
4053
|
try {
|
|
3985
4054
|
this.enterOuterAlt(localContext, 1);
|
|
3986
4055
|
{
|
|
3987
|
-
this.state =
|
|
4056
|
+
this.state = 870;
|
|
3988
4057
|
this.match(CParser.Identifier);
|
|
3989
4058
|
}
|
|
3990
4059
|
}
|
|
@@ -4006,12 +4075,14 @@ export class CParser extends antlr.Parser {
|
|
|
4006
4075
|
this.enterRule(localContext, 128, CParser.RULE_initializer);
|
|
4007
4076
|
let _la: number;
|
|
4008
4077
|
try {
|
|
4009
|
-
this.state =
|
|
4078
|
+
this.state = 880;
|
|
4010
4079
|
this.errorHandler.sync(this);
|
|
4011
4080
|
switch (this.tokenStream.LA(1)) {
|
|
4012
4081
|
case CParser.T__0:
|
|
4013
4082
|
case CParser.T__1:
|
|
4014
4083
|
case CParser.T__2:
|
|
4084
|
+
case CParser.T__3:
|
|
4085
|
+
case CParser.T__4:
|
|
4015
4086
|
case CParser.Sizeof:
|
|
4016
4087
|
case CParser.Alignof:
|
|
4017
4088
|
case CParser.Generic:
|
|
@@ -4031,28 +4102,28 @@ export class CParser extends antlr.Parser {
|
|
|
4031
4102
|
case CParser.StringLiteral:
|
|
4032
4103
|
this.enterOuterAlt(localContext, 1);
|
|
4033
4104
|
{
|
|
4034
|
-
this.state =
|
|
4105
|
+
this.state = 872;
|
|
4035
4106
|
this.assignmentExpression();
|
|
4036
4107
|
}
|
|
4037
4108
|
break;
|
|
4038
4109
|
case CParser.LeftBrace:
|
|
4039
4110
|
this.enterOuterAlt(localContext, 2);
|
|
4040
4111
|
{
|
|
4041
|
-
this.state =
|
|
4112
|
+
this.state = 873;
|
|
4042
4113
|
this.match(CParser.LeftBrace);
|
|
4043
|
-
this.state =
|
|
4114
|
+
this.state = 874;
|
|
4044
4115
|
this.initializerList();
|
|
4045
|
-
this.state =
|
|
4116
|
+
this.state = 876;
|
|
4046
4117
|
this.errorHandler.sync(this);
|
|
4047
4118
|
_la = this.tokenStream.LA(1);
|
|
4048
|
-
if (_la ===
|
|
4119
|
+
if (_la === 108) {
|
|
4049
4120
|
{
|
|
4050
|
-
this.state =
|
|
4121
|
+
this.state = 875;
|
|
4051
4122
|
this.match(CParser.Comma);
|
|
4052
4123
|
}
|
|
4053
4124
|
}
|
|
4054
4125
|
|
|
4055
|
-
this.state =
|
|
4126
|
+
this.state = 878;
|
|
4056
4127
|
this.match(CParser.RightBrace);
|
|
4057
4128
|
}
|
|
4058
4129
|
break;
|
|
@@ -4081,43 +4152,43 @@ export class CParser extends antlr.Parser {
|
|
|
4081
4152
|
let alternative: number;
|
|
4082
4153
|
this.enterOuterAlt(localContext, 1);
|
|
4083
4154
|
{
|
|
4084
|
-
this.state =
|
|
4155
|
+
this.state = 883;
|
|
4085
4156
|
this.errorHandler.sync(this);
|
|
4086
4157
|
_la = this.tokenStream.LA(1);
|
|
4087
|
-
if (_la ===
|
|
4158
|
+
if (_la === 81 || _la === 123) {
|
|
4088
4159
|
{
|
|
4089
|
-
this.state =
|
|
4160
|
+
this.state = 882;
|
|
4090
4161
|
this.designation();
|
|
4091
4162
|
}
|
|
4092
4163
|
}
|
|
4093
4164
|
|
|
4094
|
-
this.state =
|
|
4165
|
+
this.state = 885;
|
|
4095
4166
|
this.initializer();
|
|
4096
|
-
this.state =
|
|
4167
|
+
this.state = 893;
|
|
4097
4168
|
this.errorHandler.sync(this);
|
|
4098
4169
|
alternative = this.interpreter.adaptivePredict(this.tokenStream, 100, this.context);
|
|
4099
4170
|
while (alternative !== 2 && alternative !== antlr.ATN.INVALID_ALT_NUMBER) {
|
|
4100
4171
|
if (alternative === 1) {
|
|
4101
4172
|
{
|
|
4102
4173
|
{
|
|
4103
|
-
this.state =
|
|
4174
|
+
this.state = 886;
|
|
4104
4175
|
this.match(CParser.Comma);
|
|
4105
|
-
this.state =
|
|
4176
|
+
this.state = 888;
|
|
4106
4177
|
this.errorHandler.sync(this);
|
|
4107
4178
|
_la = this.tokenStream.LA(1);
|
|
4108
|
-
if (_la ===
|
|
4179
|
+
if (_la === 81 || _la === 123) {
|
|
4109
4180
|
{
|
|
4110
|
-
this.state =
|
|
4181
|
+
this.state = 887;
|
|
4111
4182
|
this.designation();
|
|
4112
4183
|
}
|
|
4113
4184
|
}
|
|
4114
4185
|
|
|
4115
|
-
this.state =
|
|
4186
|
+
this.state = 890;
|
|
4116
4187
|
this.initializer();
|
|
4117
4188
|
}
|
|
4118
4189
|
}
|
|
4119
4190
|
}
|
|
4120
|
-
this.state =
|
|
4191
|
+
this.state = 895;
|
|
4121
4192
|
this.errorHandler.sync(this);
|
|
4122
4193
|
alternative = this.interpreter.adaptivePredict(this.tokenStream, 100, this.context);
|
|
4123
4194
|
}
|
|
@@ -4142,9 +4213,9 @@ export class CParser extends antlr.Parser {
|
|
|
4142
4213
|
try {
|
|
4143
4214
|
this.enterOuterAlt(localContext, 1);
|
|
4144
4215
|
{
|
|
4145
|
-
this.state =
|
|
4216
|
+
this.state = 896;
|
|
4146
4217
|
this.designatorList();
|
|
4147
|
-
this.state =
|
|
4218
|
+
this.state = 897;
|
|
4148
4219
|
this.match(CParser.Assign);
|
|
4149
4220
|
}
|
|
4150
4221
|
}
|
|
@@ -4168,20 +4239,20 @@ export class CParser extends antlr.Parser {
|
|
|
4168
4239
|
try {
|
|
4169
4240
|
this.enterOuterAlt(localContext, 1);
|
|
4170
4241
|
{
|
|
4171
|
-
this.state =
|
|
4242
|
+
this.state = 900;
|
|
4172
4243
|
this.errorHandler.sync(this);
|
|
4173
4244
|
_la = this.tokenStream.LA(1);
|
|
4174
4245
|
do {
|
|
4175
4246
|
{
|
|
4176
4247
|
{
|
|
4177
|
-
this.state =
|
|
4248
|
+
this.state = 899;
|
|
4178
4249
|
this.designator();
|
|
4179
4250
|
}
|
|
4180
4251
|
}
|
|
4181
|
-
this.state =
|
|
4252
|
+
this.state = 902;
|
|
4182
4253
|
this.errorHandler.sync(this);
|
|
4183
4254
|
_la = this.tokenStream.LA(1);
|
|
4184
|
-
} while (_la ===
|
|
4255
|
+
} while (_la === 81 || _la === 123);
|
|
4185
4256
|
}
|
|
4186
4257
|
}
|
|
4187
4258
|
catch (re) {
|
|
@@ -4201,26 +4272,26 @@ export class CParser extends antlr.Parser {
|
|
|
4201
4272
|
let localContext = new DesignatorContext(this.context, this.state);
|
|
4202
4273
|
this.enterRule(localContext, 136, CParser.RULE_designator);
|
|
4203
4274
|
try {
|
|
4204
|
-
this.state =
|
|
4275
|
+
this.state = 910;
|
|
4205
4276
|
this.errorHandler.sync(this);
|
|
4206
4277
|
switch (this.tokenStream.LA(1)) {
|
|
4207
4278
|
case CParser.LeftBracket:
|
|
4208
4279
|
this.enterOuterAlt(localContext, 1);
|
|
4209
4280
|
{
|
|
4210
|
-
this.state =
|
|
4281
|
+
this.state = 904;
|
|
4211
4282
|
this.match(CParser.LeftBracket);
|
|
4212
|
-
this.state =
|
|
4283
|
+
this.state = 905;
|
|
4213
4284
|
this.constantExpression();
|
|
4214
|
-
this.state =
|
|
4285
|
+
this.state = 906;
|
|
4215
4286
|
this.match(CParser.RightBracket);
|
|
4216
4287
|
}
|
|
4217
4288
|
break;
|
|
4218
4289
|
case CParser.Dot:
|
|
4219
4290
|
this.enterOuterAlt(localContext, 2);
|
|
4220
4291
|
{
|
|
4221
|
-
this.state =
|
|
4292
|
+
this.state = 908;
|
|
4222
4293
|
this.match(CParser.Dot);
|
|
4223
|
-
this.state =
|
|
4294
|
+
this.state = 909;
|
|
4224
4295
|
this.match(CParser.Identifier);
|
|
4225
4296
|
}
|
|
4226
4297
|
break;
|
|
@@ -4248,31 +4319,31 @@ export class CParser extends antlr.Parser {
|
|
|
4248
4319
|
try {
|
|
4249
4320
|
this.enterOuterAlt(localContext, 1);
|
|
4250
4321
|
{
|
|
4251
|
-
this.state =
|
|
4322
|
+
this.state = 912;
|
|
4252
4323
|
this.match(CParser.StaticAssert);
|
|
4253
|
-
this.state =
|
|
4324
|
+
this.state = 913;
|
|
4254
4325
|
this.match(CParser.LeftParen);
|
|
4255
|
-
this.state =
|
|
4326
|
+
this.state = 914;
|
|
4256
4327
|
this.constantExpression();
|
|
4257
|
-
this.state =
|
|
4328
|
+
this.state = 915;
|
|
4258
4329
|
this.match(CParser.Comma);
|
|
4259
|
-
this.state =
|
|
4330
|
+
this.state = 917;
|
|
4260
4331
|
this.errorHandler.sync(this);
|
|
4261
4332
|
_la = this.tokenStream.LA(1);
|
|
4262
4333
|
do {
|
|
4263
4334
|
{
|
|
4264
4335
|
{
|
|
4265
|
-
this.state =
|
|
4336
|
+
this.state = 916;
|
|
4266
4337
|
this.match(CParser.StringLiteral);
|
|
4267
4338
|
}
|
|
4268
4339
|
}
|
|
4269
|
-
this.state =
|
|
4340
|
+
this.state = 919;
|
|
4270
4341
|
this.errorHandler.sync(this);
|
|
4271
4342
|
_la = this.tokenStream.LA(1);
|
|
4272
|
-
} while (_la ===
|
|
4273
|
-
this.state =
|
|
4343
|
+
} while (_la === 128);
|
|
4344
|
+
this.state = 921;
|
|
4274
4345
|
this.match(CParser.RightParen);
|
|
4275
|
-
this.state =
|
|
4346
|
+
this.state = 922;
|
|
4276
4347
|
this.match(CParser.Semi);
|
|
4277
4348
|
}
|
|
4278
4349
|
}
|
|
@@ -4294,128 +4365,128 @@ export class CParser extends antlr.Parser {
|
|
|
4294
4365
|
this.enterRule(localContext, 140, CParser.RULE_statement);
|
|
4295
4366
|
let _la: number;
|
|
4296
4367
|
try {
|
|
4297
|
-
this.state =
|
|
4368
|
+
this.state = 961;
|
|
4298
4369
|
this.errorHandler.sync(this);
|
|
4299
4370
|
switch (this.interpreter.adaptivePredict(this.tokenStream, 109, this.context) ) {
|
|
4300
4371
|
case 1:
|
|
4301
4372
|
this.enterOuterAlt(localContext, 1);
|
|
4302
4373
|
{
|
|
4303
|
-
this.state =
|
|
4374
|
+
this.state = 924;
|
|
4304
4375
|
this.labeledStatement();
|
|
4305
4376
|
}
|
|
4306
4377
|
break;
|
|
4307
4378
|
case 2:
|
|
4308
4379
|
this.enterOuterAlt(localContext, 2);
|
|
4309
4380
|
{
|
|
4310
|
-
this.state =
|
|
4381
|
+
this.state = 925;
|
|
4311
4382
|
this.compoundStatement();
|
|
4312
4383
|
}
|
|
4313
4384
|
break;
|
|
4314
4385
|
case 3:
|
|
4315
4386
|
this.enterOuterAlt(localContext, 3);
|
|
4316
4387
|
{
|
|
4317
|
-
this.state =
|
|
4388
|
+
this.state = 926;
|
|
4318
4389
|
this.expressionStatement();
|
|
4319
4390
|
}
|
|
4320
4391
|
break;
|
|
4321
4392
|
case 4:
|
|
4322
4393
|
this.enterOuterAlt(localContext, 4);
|
|
4323
4394
|
{
|
|
4324
|
-
this.state =
|
|
4395
|
+
this.state = 927;
|
|
4325
4396
|
this.selectionStatement();
|
|
4326
4397
|
}
|
|
4327
4398
|
break;
|
|
4328
4399
|
case 5:
|
|
4329
4400
|
this.enterOuterAlt(localContext, 5);
|
|
4330
4401
|
{
|
|
4331
|
-
this.state =
|
|
4402
|
+
this.state = 928;
|
|
4332
4403
|
this.iterationStatement();
|
|
4333
4404
|
}
|
|
4334
4405
|
break;
|
|
4335
4406
|
case 6:
|
|
4336
4407
|
this.enterOuterAlt(localContext, 6);
|
|
4337
4408
|
{
|
|
4338
|
-
this.state =
|
|
4409
|
+
this.state = 929;
|
|
4339
4410
|
this.jumpStatement();
|
|
4340
4411
|
}
|
|
4341
4412
|
break;
|
|
4342
4413
|
case 7:
|
|
4343
4414
|
this.enterOuterAlt(localContext, 7);
|
|
4344
4415
|
{
|
|
4345
|
-
this.state =
|
|
4416
|
+
this.state = 930;
|
|
4346
4417
|
_la = this.tokenStream.LA(1);
|
|
4347
|
-
if(!(_la ===
|
|
4418
|
+
if(!(_la === 32 || _la === 33)) {
|
|
4348
4419
|
this.errorHandler.recoverInline(this);
|
|
4349
4420
|
}
|
|
4350
4421
|
else {
|
|
4351
4422
|
this.errorHandler.reportMatch(this);
|
|
4352
4423
|
this.consume();
|
|
4353
4424
|
}
|
|
4354
|
-
this.state =
|
|
4425
|
+
this.state = 931;
|
|
4355
4426
|
_la = this.tokenStream.LA(1);
|
|
4356
|
-
if(!(_la ===
|
|
4427
|
+
if(!(_la === 21 || _la === 22 || _la === 67)) {
|
|
4357
4428
|
this.errorHandler.recoverInline(this);
|
|
4358
4429
|
}
|
|
4359
4430
|
else {
|
|
4360
4431
|
this.errorHandler.reportMatch(this);
|
|
4361
4432
|
this.consume();
|
|
4362
4433
|
}
|
|
4363
|
-
this.state =
|
|
4434
|
+
this.state = 932;
|
|
4364
4435
|
this.match(CParser.LeftParen);
|
|
4365
|
-
this.state =
|
|
4436
|
+
this.state = 941;
|
|
4366
4437
|
this.errorHandler.sync(this);
|
|
4367
4438
|
_la = this.tokenStream.LA(1);
|
|
4368
|
-
if ((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
4439
|
+
if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 62) !== 0) || ((((_la - 59)) & ~0x1F) === 0 && ((1 << (_la - 59)) & 1083393) !== 0) || ((((_la - 91)) & ~0x1F) === 0 && ((1 << (_la - 91)) & 12959) !== 0) || ((((_la - 125)) & ~0x1F) === 0 && ((1 << (_la - 125)) & 15) !== 0)) {
|
|
4369
4440
|
{
|
|
4370
|
-
this.state = 928;
|
|
4371
|
-
this.logicalOrExpression();
|
|
4372
4441
|
this.state = 933;
|
|
4442
|
+
this.logicalOrExpression();
|
|
4443
|
+
this.state = 938;
|
|
4373
4444
|
this.errorHandler.sync(this);
|
|
4374
4445
|
_la = this.tokenStream.LA(1);
|
|
4375
|
-
while (_la ===
|
|
4446
|
+
while (_la === 108) {
|
|
4376
4447
|
{
|
|
4377
4448
|
{
|
|
4378
|
-
this.state =
|
|
4449
|
+
this.state = 934;
|
|
4379
4450
|
this.match(CParser.Comma);
|
|
4380
|
-
this.state =
|
|
4451
|
+
this.state = 935;
|
|
4381
4452
|
this.logicalOrExpression();
|
|
4382
4453
|
}
|
|
4383
4454
|
}
|
|
4384
|
-
this.state =
|
|
4455
|
+
this.state = 940;
|
|
4385
4456
|
this.errorHandler.sync(this);
|
|
4386
4457
|
_la = this.tokenStream.LA(1);
|
|
4387
4458
|
}
|
|
4388
4459
|
}
|
|
4389
4460
|
}
|
|
4390
4461
|
|
|
4391
|
-
this.state =
|
|
4462
|
+
this.state = 956;
|
|
4392
4463
|
this.errorHandler.sync(this);
|
|
4393
4464
|
_la = this.tokenStream.LA(1);
|
|
4394
|
-
while (_la ===
|
|
4465
|
+
while (_la === 106) {
|
|
4395
4466
|
{
|
|
4396
4467
|
{
|
|
4397
|
-
this.state =
|
|
4468
|
+
this.state = 943;
|
|
4398
4469
|
this.match(CParser.Colon);
|
|
4399
|
-
this.state =
|
|
4470
|
+
this.state = 952;
|
|
4400
4471
|
this.errorHandler.sync(this);
|
|
4401
4472
|
_la = this.tokenStream.LA(1);
|
|
4402
|
-
if ((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
4473
|
+
if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 62) !== 0) || ((((_la - 59)) & ~0x1F) === 0 && ((1 << (_la - 59)) & 1083393) !== 0) || ((((_la - 91)) & ~0x1F) === 0 && ((1 << (_la - 91)) & 12959) !== 0) || ((((_la - 125)) & ~0x1F) === 0 && ((1 << (_la - 125)) & 15) !== 0)) {
|
|
4403
4474
|
{
|
|
4404
|
-
this.state = 939;
|
|
4405
|
-
this.logicalOrExpression();
|
|
4406
4475
|
this.state = 944;
|
|
4476
|
+
this.logicalOrExpression();
|
|
4477
|
+
this.state = 949;
|
|
4407
4478
|
this.errorHandler.sync(this);
|
|
4408
4479
|
_la = this.tokenStream.LA(1);
|
|
4409
|
-
while (_la ===
|
|
4480
|
+
while (_la === 108) {
|
|
4410
4481
|
{
|
|
4411
4482
|
{
|
|
4412
|
-
this.state =
|
|
4483
|
+
this.state = 945;
|
|
4413
4484
|
this.match(CParser.Comma);
|
|
4414
|
-
this.state =
|
|
4485
|
+
this.state = 946;
|
|
4415
4486
|
this.logicalOrExpression();
|
|
4416
4487
|
}
|
|
4417
4488
|
}
|
|
4418
|
-
this.state =
|
|
4489
|
+
this.state = 951;
|
|
4419
4490
|
this.errorHandler.sync(this);
|
|
4420
4491
|
_la = this.tokenStream.LA(1);
|
|
4421
4492
|
}
|
|
@@ -4424,13 +4495,13 @@ export class CParser extends antlr.Parser {
|
|
|
4424
4495
|
|
|
4425
4496
|
}
|
|
4426
4497
|
}
|
|
4427
|
-
this.state =
|
|
4498
|
+
this.state = 958;
|
|
4428
4499
|
this.errorHandler.sync(this);
|
|
4429
4500
|
_la = this.tokenStream.LA(1);
|
|
4430
4501
|
}
|
|
4431
|
-
this.state =
|
|
4502
|
+
this.state = 959;
|
|
4432
4503
|
this.match(CParser.RightParen);
|
|
4433
|
-
this.state =
|
|
4504
|
+
this.state = 960;
|
|
4434
4505
|
this.match(CParser.Semi);
|
|
4435
4506
|
}
|
|
4436
4507
|
break;
|
|
@@ -4453,22 +4524,22 @@ export class CParser extends antlr.Parser {
|
|
|
4453
4524
|
let localContext = new LabeledStatementContext(this.context, this.state);
|
|
4454
4525
|
this.enterRule(localContext, 142, CParser.RULE_labeledStatement);
|
|
4455
4526
|
try {
|
|
4456
|
-
this.state =
|
|
4527
|
+
this.state = 976;
|
|
4457
4528
|
this.errorHandler.sync(this);
|
|
4458
4529
|
switch (this.tokenStream.LA(1)) {
|
|
4459
4530
|
case CParser.Identifier:
|
|
4460
4531
|
this.enterOuterAlt(localContext, 1);
|
|
4461
4532
|
{
|
|
4462
|
-
this.state =
|
|
4533
|
+
this.state = 963;
|
|
4463
4534
|
this.match(CParser.Identifier);
|
|
4464
|
-
this.state =
|
|
4535
|
+
this.state = 964;
|
|
4465
4536
|
this.match(CParser.Colon);
|
|
4466
|
-
this.state =
|
|
4537
|
+
this.state = 966;
|
|
4467
4538
|
this.errorHandler.sync(this);
|
|
4468
4539
|
switch (this.interpreter.adaptivePredict(this.tokenStream, 110, this.context) ) {
|
|
4469
4540
|
case 1:
|
|
4470
4541
|
{
|
|
4471
|
-
this.state =
|
|
4542
|
+
this.state = 965;
|
|
4472
4543
|
this.statement();
|
|
4473
4544
|
}
|
|
4474
4545
|
break;
|
|
@@ -4478,24 +4549,24 @@ export class CParser extends antlr.Parser {
|
|
|
4478
4549
|
case CParser.Case:
|
|
4479
4550
|
this.enterOuterAlt(localContext, 2);
|
|
4480
4551
|
{
|
|
4481
|
-
this.state =
|
|
4552
|
+
this.state = 968;
|
|
4482
4553
|
this.match(CParser.Case);
|
|
4483
|
-
this.state =
|
|
4554
|
+
this.state = 969;
|
|
4484
4555
|
this.constantExpression();
|
|
4485
|
-
this.state =
|
|
4556
|
+
this.state = 970;
|
|
4486
4557
|
this.match(CParser.Colon);
|
|
4487
|
-
this.state =
|
|
4558
|
+
this.state = 971;
|
|
4488
4559
|
this.statement();
|
|
4489
4560
|
}
|
|
4490
4561
|
break;
|
|
4491
4562
|
case CParser.Default:
|
|
4492
4563
|
this.enterOuterAlt(localContext, 3);
|
|
4493
4564
|
{
|
|
4494
|
-
this.state =
|
|
4565
|
+
this.state = 973;
|
|
4495
4566
|
this.match(CParser.Default);
|
|
4496
|
-
this.state =
|
|
4567
|
+
this.state = 974;
|
|
4497
4568
|
this.match(CParser.Colon);
|
|
4498
|
-
this.state =
|
|
4569
|
+
this.state = 975;
|
|
4499
4570
|
this.statement();
|
|
4500
4571
|
}
|
|
4501
4572
|
break;
|
|
@@ -4523,19 +4594,19 @@ export class CParser extends antlr.Parser {
|
|
|
4523
4594
|
try {
|
|
4524
4595
|
this.enterOuterAlt(localContext, 1);
|
|
4525
4596
|
{
|
|
4526
|
-
this.state =
|
|
4597
|
+
this.state = 978;
|
|
4527
4598
|
this.match(CParser.LeftBrace);
|
|
4528
|
-
this.state =
|
|
4599
|
+
this.state = 980;
|
|
4529
4600
|
this.errorHandler.sync(this);
|
|
4530
4601
|
_la = this.tokenStream.LA(1);
|
|
4531
|
-
if ((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
4602
|
+
if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 134217726) !== 0) || ((((_la - 32)) & ~0x1F) === 0 && ((1 << (_la - 32)) & 4294963199) !== 0) || ((((_la - 64)) & ~0x1F) === 0 && ((1 << (_la - 64)) & 4161337343) !== 0) || ((((_la - 98)) & ~0x1F) === 0 && ((1 << (_la - 98)) & 2013266533) !== 0)) {
|
|
4532
4603
|
{
|
|
4533
|
-
this.state =
|
|
4604
|
+
this.state = 979;
|
|
4534
4605
|
this.blockItemList();
|
|
4535
4606
|
}
|
|
4536
4607
|
}
|
|
4537
4608
|
|
|
4538
|
-
this.state =
|
|
4609
|
+
this.state = 982;
|
|
4539
4610
|
this.match(CParser.RightBrace);
|
|
4540
4611
|
}
|
|
4541
4612
|
}
|
|
@@ -4559,20 +4630,20 @@ export class CParser extends antlr.Parser {
|
|
|
4559
4630
|
try {
|
|
4560
4631
|
this.enterOuterAlt(localContext, 1);
|
|
4561
4632
|
{
|
|
4562
|
-
this.state =
|
|
4633
|
+
this.state = 985;
|
|
4563
4634
|
this.errorHandler.sync(this);
|
|
4564
4635
|
_la = this.tokenStream.LA(1);
|
|
4565
4636
|
do {
|
|
4566
4637
|
{
|
|
4567
4638
|
{
|
|
4568
|
-
this.state =
|
|
4639
|
+
this.state = 984;
|
|
4569
4640
|
this.blockItem();
|
|
4570
4641
|
}
|
|
4571
4642
|
}
|
|
4572
|
-
this.state =
|
|
4643
|
+
this.state = 987;
|
|
4573
4644
|
this.errorHandler.sync(this);
|
|
4574
4645
|
_la = this.tokenStream.LA(1);
|
|
4575
|
-
} while ((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
4646
|
+
} while ((((_la) & ~0x1F) === 0 && ((1 << _la) & 134217726) !== 0) || ((((_la - 32)) & ~0x1F) === 0 && ((1 << (_la - 32)) & 4294963199) !== 0) || ((((_la - 64)) & ~0x1F) === 0 && ((1 << (_la - 64)) & 4161337343) !== 0) || ((((_la - 98)) & ~0x1F) === 0 && ((1 << (_la - 98)) & 2013266533) !== 0));
|
|
4576
4647
|
}
|
|
4577
4648
|
}
|
|
4578
4649
|
catch (re) {
|
|
@@ -4592,20 +4663,20 @@ export class CParser extends antlr.Parser {
|
|
|
4592
4663
|
let localContext = new BlockItemContext(this.context, this.state);
|
|
4593
4664
|
this.enterRule(localContext, 148, CParser.RULE_blockItem);
|
|
4594
4665
|
try {
|
|
4595
|
-
this.state =
|
|
4666
|
+
this.state = 991;
|
|
4596
4667
|
this.errorHandler.sync(this);
|
|
4597
4668
|
switch (this.interpreter.adaptivePredict(this.tokenStream, 114, this.context) ) {
|
|
4598
4669
|
case 1:
|
|
4599
4670
|
this.enterOuterAlt(localContext, 1);
|
|
4600
4671
|
{
|
|
4601
|
-
this.state =
|
|
4672
|
+
this.state = 989;
|
|
4602
4673
|
this.statement();
|
|
4603
4674
|
}
|
|
4604
4675
|
break;
|
|
4605
4676
|
case 2:
|
|
4606
4677
|
this.enterOuterAlt(localContext, 2);
|
|
4607
4678
|
{
|
|
4608
|
-
this.state =
|
|
4679
|
+
this.state = 990;
|
|
4609
4680
|
this.declaration();
|
|
4610
4681
|
}
|
|
4611
4682
|
break;
|
|
@@ -4631,17 +4702,17 @@ export class CParser extends antlr.Parser {
|
|
|
4631
4702
|
try {
|
|
4632
4703
|
this.enterOuterAlt(localContext, 1);
|
|
4633
4704
|
{
|
|
4634
|
-
this.state =
|
|
4705
|
+
this.state = 994;
|
|
4635
4706
|
this.errorHandler.sync(this);
|
|
4636
4707
|
_la = this.tokenStream.LA(1);
|
|
4637
|
-
if ((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
4708
|
+
if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 62) !== 0) || ((((_la - 59)) & ~0x1F) === 0 && ((1 << (_la - 59)) & 1083393) !== 0) || ((((_la - 91)) & ~0x1F) === 0 && ((1 << (_la - 91)) & 12959) !== 0) || ((((_la - 125)) & ~0x1F) === 0 && ((1 << (_la - 125)) & 15) !== 0)) {
|
|
4638
4709
|
{
|
|
4639
|
-
this.state =
|
|
4710
|
+
this.state = 993;
|
|
4640
4711
|
this.expression();
|
|
4641
4712
|
}
|
|
4642
4713
|
}
|
|
4643
4714
|
|
|
4644
|
-
this.state =
|
|
4715
|
+
this.state = 996;
|
|
4645
4716
|
this.match(CParser.Semi);
|
|
4646
4717
|
}
|
|
4647
4718
|
}
|
|
@@ -4662,30 +4733,30 @@ export class CParser extends antlr.Parser {
|
|
|
4662
4733
|
let localContext = new SelectionStatementContext(this.context, this.state);
|
|
4663
4734
|
this.enterRule(localContext, 152, CParser.RULE_selectionStatement);
|
|
4664
4735
|
try {
|
|
4665
|
-
this.state =
|
|
4736
|
+
this.state = 1013;
|
|
4666
4737
|
this.errorHandler.sync(this);
|
|
4667
4738
|
switch (this.tokenStream.LA(1)) {
|
|
4668
4739
|
case CParser.If:
|
|
4669
4740
|
this.enterOuterAlt(localContext, 1);
|
|
4670
4741
|
{
|
|
4671
|
-
this.state =
|
|
4742
|
+
this.state = 998;
|
|
4672
4743
|
this.match(CParser.If);
|
|
4673
|
-
this.state =
|
|
4744
|
+
this.state = 999;
|
|
4674
4745
|
this.match(CParser.LeftParen);
|
|
4675
|
-
this.state =
|
|
4746
|
+
this.state = 1000;
|
|
4676
4747
|
this.expression();
|
|
4677
|
-
this.state =
|
|
4748
|
+
this.state = 1001;
|
|
4678
4749
|
this.match(CParser.RightParen);
|
|
4679
|
-
this.state =
|
|
4750
|
+
this.state = 1002;
|
|
4680
4751
|
this.statement();
|
|
4681
|
-
this.state =
|
|
4752
|
+
this.state = 1005;
|
|
4682
4753
|
this.errorHandler.sync(this);
|
|
4683
4754
|
switch (this.interpreter.adaptivePredict(this.tokenStream, 116, this.context) ) {
|
|
4684
4755
|
case 1:
|
|
4685
4756
|
{
|
|
4686
|
-
this.state =
|
|
4757
|
+
this.state = 1003;
|
|
4687
4758
|
this.match(CParser.Else);
|
|
4688
|
-
this.state =
|
|
4759
|
+
this.state = 1004;
|
|
4689
4760
|
this.statement();
|
|
4690
4761
|
}
|
|
4691
4762
|
break;
|
|
@@ -4695,15 +4766,15 @@ export class CParser extends antlr.Parser {
|
|
|
4695
4766
|
case CParser.Switch:
|
|
4696
4767
|
this.enterOuterAlt(localContext, 2);
|
|
4697
4768
|
{
|
|
4698
|
-
this.state =
|
|
4769
|
+
this.state = 1007;
|
|
4699
4770
|
this.match(CParser.Switch);
|
|
4700
|
-
this.state =
|
|
4771
|
+
this.state = 1008;
|
|
4701
4772
|
this.match(CParser.LeftParen);
|
|
4702
|
-
this.state =
|
|
4773
|
+
this.state = 1009;
|
|
4703
4774
|
this.expression();
|
|
4704
|
-
this.state =
|
|
4775
|
+
this.state = 1010;
|
|
4705
4776
|
this.match(CParser.RightParen);
|
|
4706
|
-
this.state =
|
|
4777
|
+
this.state = 1011;
|
|
4707
4778
|
this.statement();
|
|
4708
4779
|
}
|
|
4709
4780
|
break;
|
|
@@ -4728,55 +4799,55 @@ export class CParser extends antlr.Parser {
|
|
|
4728
4799
|
let localContext = new IterationStatementContext(this.context, this.state);
|
|
4729
4800
|
this.enterRule(localContext, 154, CParser.RULE_iterationStatement);
|
|
4730
4801
|
try {
|
|
4731
|
-
this.state =
|
|
4802
|
+
this.state = 1035;
|
|
4732
4803
|
this.errorHandler.sync(this);
|
|
4733
4804
|
switch (this.tokenStream.LA(1)) {
|
|
4734
4805
|
case CParser.While:
|
|
4735
4806
|
this.enterOuterAlt(localContext, 1);
|
|
4736
4807
|
{
|
|
4737
|
-
this.state =
|
|
4808
|
+
this.state = 1015;
|
|
4738
4809
|
this.match(CParser.While);
|
|
4739
|
-
this.state =
|
|
4810
|
+
this.state = 1016;
|
|
4740
4811
|
this.match(CParser.LeftParen);
|
|
4741
|
-
this.state =
|
|
4812
|
+
this.state = 1017;
|
|
4742
4813
|
this.expression();
|
|
4743
|
-
this.state =
|
|
4814
|
+
this.state = 1018;
|
|
4744
4815
|
this.match(CParser.RightParen);
|
|
4745
|
-
this.state =
|
|
4816
|
+
this.state = 1019;
|
|
4746
4817
|
this.statement();
|
|
4747
4818
|
}
|
|
4748
4819
|
break;
|
|
4749
4820
|
case CParser.Do:
|
|
4750
4821
|
this.enterOuterAlt(localContext, 2);
|
|
4751
4822
|
{
|
|
4752
|
-
this.state =
|
|
4823
|
+
this.state = 1021;
|
|
4753
4824
|
this.match(CParser.Do);
|
|
4754
|
-
this.state =
|
|
4825
|
+
this.state = 1022;
|
|
4755
4826
|
this.statement();
|
|
4756
|
-
this.state =
|
|
4827
|
+
this.state = 1023;
|
|
4757
4828
|
this.match(CParser.While);
|
|
4758
|
-
this.state =
|
|
4829
|
+
this.state = 1024;
|
|
4759
4830
|
this.match(CParser.LeftParen);
|
|
4760
|
-
this.state =
|
|
4831
|
+
this.state = 1025;
|
|
4761
4832
|
this.expression();
|
|
4762
|
-
this.state =
|
|
4833
|
+
this.state = 1026;
|
|
4763
4834
|
this.match(CParser.RightParen);
|
|
4764
|
-
this.state =
|
|
4835
|
+
this.state = 1027;
|
|
4765
4836
|
this.match(CParser.Semi);
|
|
4766
4837
|
}
|
|
4767
4838
|
break;
|
|
4768
4839
|
case CParser.For:
|
|
4769
4840
|
this.enterOuterAlt(localContext, 3);
|
|
4770
4841
|
{
|
|
4771
|
-
this.state =
|
|
4842
|
+
this.state = 1029;
|
|
4772
4843
|
this.match(CParser.For);
|
|
4773
|
-
this.state =
|
|
4844
|
+
this.state = 1030;
|
|
4774
4845
|
this.match(CParser.LeftParen);
|
|
4775
|
-
this.state =
|
|
4846
|
+
this.state = 1031;
|
|
4776
4847
|
this.forCondition();
|
|
4777
|
-
this.state =
|
|
4848
|
+
this.state = 1032;
|
|
4778
4849
|
this.match(CParser.RightParen);
|
|
4779
|
-
this.state =
|
|
4850
|
+
this.state = 1033;
|
|
4780
4851
|
this.statement();
|
|
4781
4852
|
}
|
|
4782
4853
|
break;
|
|
@@ -4804,23 +4875,23 @@ export class CParser extends antlr.Parser {
|
|
|
4804
4875
|
try {
|
|
4805
4876
|
this.enterOuterAlt(localContext, 1);
|
|
4806
4877
|
{
|
|
4807
|
-
this.state =
|
|
4878
|
+
this.state = 1041;
|
|
4808
4879
|
this.errorHandler.sync(this);
|
|
4809
4880
|
switch (this.interpreter.adaptivePredict(this.tokenStream, 120, this.context) ) {
|
|
4810
4881
|
case 1:
|
|
4811
4882
|
{
|
|
4812
|
-
this.state =
|
|
4883
|
+
this.state = 1037;
|
|
4813
4884
|
this.forDeclaration();
|
|
4814
4885
|
}
|
|
4815
4886
|
break;
|
|
4816
4887
|
case 2:
|
|
4817
4888
|
{
|
|
4818
|
-
this.state =
|
|
4889
|
+
this.state = 1039;
|
|
4819
4890
|
this.errorHandler.sync(this);
|
|
4820
4891
|
_la = this.tokenStream.LA(1);
|
|
4821
|
-
if ((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
4892
|
+
if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 62) !== 0) || ((((_la - 59)) & ~0x1F) === 0 && ((1 << (_la - 59)) & 1083393) !== 0) || ((((_la - 91)) & ~0x1F) === 0 && ((1 << (_la - 91)) & 12959) !== 0) || ((((_la - 125)) & ~0x1F) === 0 && ((1 << (_la - 125)) & 15) !== 0)) {
|
|
4822
4893
|
{
|
|
4823
|
-
this.state =
|
|
4894
|
+
this.state = 1038;
|
|
4824
4895
|
this.expression();
|
|
4825
4896
|
}
|
|
4826
4897
|
}
|
|
@@ -4828,26 +4899,26 @@ export class CParser extends antlr.Parser {
|
|
|
4828
4899
|
}
|
|
4829
4900
|
break;
|
|
4830
4901
|
}
|
|
4831
|
-
this.state =
|
|
4902
|
+
this.state = 1043;
|
|
4832
4903
|
this.match(CParser.Semi);
|
|
4833
|
-
this.state =
|
|
4904
|
+
this.state = 1045;
|
|
4834
4905
|
this.errorHandler.sync(this);
|
|
4835
4906
|
_la = this.tokenStream.LA(1);
|
|
4836
|
-
if ((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
4907
|
+
if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 62) !== 0) || ((((_la - 59)) & ~0x1F) === 0 && ((1 << (_la - 59)) & 1083393) !== 0) || ((((_la - 91)) & ~0x1F) === 0 && ((1 << (_la - 91)) & 12959) !== 0) || ((((_la - 125)) & ~0x1F) === 0 && ((1 << (_la - 125)) & 15) !== 0)) {
|
|
4837
4908
|
{
|
|
4838
|
-
this.state =
|
|
4909
|
+
this.state = 1044;
|
|
4839
4910
|
this.forExpression();
|
|
4840
4911
|
}
|
|
4841
4912
|
}
|
|
4842
4913
|
|
|
4843
|
-
this.state =
|
|
4914
|
+
this.state = 1047;
|
|
4844
4915
|
this.match(CParser.Semi);
|
|
4845
|
-
this.state =
|
|
4916
|
+
this.state = 1049;
|
|
4846
4917
|
this.errorHandler.sync(this);
|
|
4847
4918
|
_la = this.tokenStream.LA(1);
|
|
4848
|
-
if ((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
4919
|
+
if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 62) !== 0) || ((((_la - 59)) & ~0x1F) === 0 && ((1 << (_la - 59)) & 1083393) !== 0) || ((((_la - 91)) & ~0x1F) === 0 && ((1 << (_la - 91)) & 12959) !== 0) || ((((_la - 125)) & ~0x1F) === 0 && ((1 << (_la - 125)) & 15) !== 0)) {
|
|
4849
4920
|
{
|
|
4850
|
-
this.state =
|
|
4921
|
+
this.state = 1048;
|
|
4851
4922
|
this.forExpression();
|
|
4852
4923
|
}
|
|
4853
4924
|
}
|
|
@@ -4874,14 +4945,14 @@ export class CParser extends antlr.Parser {
|
|
|
4874
4945
|
try {
|
|
4875
4946
|
this.enterOuterAlt(localContext, 1);
|
|
4876
4947
|
{
|
|
4877
|
-
this.state =
|
|
4948
|
+
this.state = 1051;
|
|
4878
4949
|
this.declarationSpecifiers();
|
|
4879
|
-
this.state =
|
|
4950
|
+
this.state = 1053;
|
|
4880
4951
|
this.errorHandler.sync(this);
|
|
4881
4952
|
_la = this.tokenStream.LA(1);
|
|
4882
|
-
if ((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
4953
|
+
if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 4194304000) !== 0) || ((((_la - 79)) & ~0x1F) === 0 && ((1 << (_la - 79)) & 8454145) !== 0) || _la === 125) {
|
|
4883
4954
|
{
|
|
4884
|
-
this.state =
|
|
4955
|
+
this.state = 1052;
|
|
4885
4956
|
this.initDeclaratorList();
|
|
4886
4957
|
}
|
|
4887
4958
|
}
|
|
@@ -4908,21 +4979,21 @@ export class CParser extends antlr.Parser {
|
|
|
4908
4979
|
try {
|
|
4909
4980
|
this.enterOuterAlt(localContext, 1);
|
|
4910
4981
|
{
|
|
4911
|
-
this.state = 1050;
|
|
4912
|
-
this.assignmentExpression();
|
|
4913
4982
|
this.state = 1055;
|
|
4983
|
+
this.assignmentExpression();
|
|
4984
|
+
this.state = 1060;
|
|
4914
4985
|
this.errorHandler.sync(this);
|
|
4915
4986
|
_la = this.tokenStream.LA(1);
|
|
4916
|
-
while (_la ===
|
|
4987
|
+
while (_la === 108) {
|
|
4917
4988
|
{
|
|
4918
4989
|
{
|
|
4919
|
-
this.state =
|
|
4990
|
+
this.state = 1056;
|
|
4920
4991
|
this.match(CParser.Comma);
|
|
4921
|
-
this.state =
|
|
4992
|
+
this.state = 1057;
|
|
4922
4993
|
this.assignmentExpression();
|
|
4923
4994
|
}
|
|
4924
4995
|
}
|
|
4925
|
-
this.state =
|
|
4996
|
+
this.state = 1062;
|
|
4926
4997
|
this.errorHandler.sync(this);
|
|
4927
4998
|
_la = this.tokenStream.LA(1);
|
|
4928
4999
|
}
|
|
@@ -4948,39 +5019,39 @@ export class CParser extends antlr.Parser {
|
|
|
4948
5019
|
try {
|
|
4949
5020
|
this.enterOuterAlt(localContext, 1);
|
|
4950
5021
|
{
|
|
4951
|
-
this.state =
|
|
5022
|
+
this.state = 1073;
|
|
4952
5023
|
this.errorHandler.sync(this);
|
|
4953
5024
|
switch (this.interpreter.adaptivePredict(this.tokenStream, 126, this.context) ) {
|
|
4954
5025
|
case 1:
|
|
4955
5026
|
{
|
|
4956
|
-
this.state =
|
|
5027
|
+
this.state = 1063;
|
|
4957
5028
|
this.match(CParser.Goto);
|
|
4958
|
-
this.state =
|
|
5029
|
+
this.state = 1064;
|
|
4959
5030
|
this.match(CParser.Identifier);
|
|
4960
5031
|
}
|
|
4961
5032
|
break;
|
|
4962
5033
|
case 2:
|
|
4963
5034
|
{
|
|
4964
|
-
this.state =
|
|
5035
|
+
this.state = 1065;
|
|
4965
5036
|
this.match(CParser.Continue);
|
|
4966
5037
|
}
|
|
4967
5038
|
break;
|
|
4968
5039
|
case 3:
|
|
4969
5040
|
{
|
|
4970
|
-
this.state =
|
|
5041
|
+
this.state = 1066;
|
|
4971
5042
|
this.match(CParser.Break);
|
|
4972
5043
|
}
|
|
4973
5044
|
break;
|
|
4974
5045
|
case 4:
|
|
4975
5046
|
{
|
|
4976
|
-
this.state =
|
|
5047
|
+
this.state = 1067;
|
|
4977
5048
|
this.match(CParser.Return);
|
|
4978
|
-
this.state =
|
|
5049
|
+
this.state = 1069;
|
|
4979
5050
|
this.errorHandler.sync(this);
|
|
4980
5051
|
_la = this.tokenStream.LA(1);
|
|
4981
|
-
if ((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
5052
|
+
if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 62) !== 0) || ((((_la - 59)) & ~0x1F) === 0 && ((1 << (_la - 59)) & 1083393) !== 0) || ((((_la - 91)) & ~0x1F) === 0 && ((1 << (_la - 91)) & 12959) !== 0) || ((((_la - 125)) & ~0x1F) === 0 && ((1 << (_la - 125)) & 15) !== 0)) {
|
|
4982
5053
|
{
|
|
4983
|
-
this.state =
|
|
5054
|
+
this.state = 1068;
|
|
4984
5055
|
this.expression();
|
|
4985
5056
|
}
|
|
4986
5057
|
}
|
|
@@ -4989,14 +5060,14 @@ export class CParser extends antlr.Parser {
|
|
|
4989
5060
|
break;
|
|
4990
5061
|
case 5:
|
|
4991
5062
|
{
|
|
4992
|
-
this.state =
|
|
5063
|
+
this.state = 1071;
|
|
4993
5064
|
this.match(CParser.Goto);
|
|
4994
|
-
this.state =
|
|
5065
|
+
this.state = 1072;
|
|
4995
5066
|
this.unaryExpression();
|
|
4996
5067
|
}
|
|
4997
5068
|
break;
|
|
4998
5069
|
}
|
|
4999
|
-
this.state =
|
|
5070
|
+
this.state = 1075;
|
|
5000
5071
|
this.match(CParser.Semi);
|
|
5001
5072
|
}
|
|
5002
5073
|
}
|
|
@@ -5020,17 +5091,17 @@ export class CParser extends antlr.Parser {
|
|
|
5020
5091
|
try {
|
|
5021
5092
|
this.enterOuterAlt(localContext, 1);
|
|
5022
5093
|
{
|
|
5023
|
-
this.state =
|
|
5094
|
+
this.state = 1078;
|
|
5024
5095
|
this.errorHandler.sync(this);
|
|
5025
5096
|
_la = this.tokenStream.LA(1);
|
|
5026
|
-
if ((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
5097
|
+
if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 4294967234) !== 0) || ((((_la - 34)) & ~0x1F) === 0 && ((1 << (_la - 34)) & 3988666931) !== 0) || ((((_la - 66)) & ~0x1F) === 0 && ((1 << (_la - 66)) & 536886507) !== 0) || ((((_la - 102)) & ~0x1F) === 0 && ((1 << (_la - 102)) & 8388641) !== 0)) {
|
|
5027
5098
|
{
|
|
5028
|
-
this.state =
|
|
5099
|
+
this.state = 1077;
|
|
5029
5100
|
this.translationUnit();
|
|
5030
5101
|
}
|
|
5031
5102
|
}
|
|
5032
5103
|
|
|
5033
|
-
this.state =
|
|
5104
|
+
this.state = 1080;
|
|
5034
5105
|
this.match(CParser.EOF);
|
|
5035
5106
|
}
|
|
5036
5107
|
}
|
|
@@ -5054,20 +5125,20 @@ export class CParser extends antlr.Parser {
|
|
|
5054
5125
|
try {
|
|
5055
5126
|
this.enterOuterAlt(localContext, 1);
|
|
5056
5127
|
{
|
|
5057
|
-
this.state =
|
|
5128
|
+
this.state = 1083;
|
|
5058
5129
|
this.errorHandler.sync(this);
|
|
5059
5130
|
_la = this.tokenStream.LA(1);
|
|
5060
5131
|
do {
|
|
5061
5132
|
{
|
|
5062
5133
|
{
|
|
5063
|
-
this.state =
|
|
5134
|
+
this.state = 1082;
|
|
5064
5135
|
this.externalDeclaration();
|
|
5065
5136
|
}
|
|
5066
5137
|
}
|
|
5067
|
-
this.state =
|
|
5138
|
+
this.state = 1085;
|
|
5068
5139
|
this.errorHandler.sync(this);
|
|
5069
5140
|
_la = this.tokenStream.LA(1);
|
|
5070
|
-
} while ((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
5141
|
+
} while ((((_la) & ~0x1F) === 0 && ((1 << _la) & 4294967234) !== 0) || ((((_la - 34)) & ~0x1F) === 0 && ((1 << (_la - 34)) & 3988666931) !== 0) || ((((_la - 66)) & ~0x1F) === 0 && ((1 << (_la - 66)) & 536886507) !== 0) || ((((_la - 102)) & ~0x1F) === 0 && ((1 << (_la - 102)) & 8388641) !== 0));
|
|
5071
5142
|
}
|
|
5072
5143
|
}
|
|
5073
5144
|
catch (re) {
|
|
@@ -5087,27 +5158,27 @@ export class CParser extends antlr.Parser {
|
|
|
5087
5158
|
let localContext = new ExternalDeclarationContext(this.context, this.state);
|
|
5088
5159
|
this.enterRule(localContext, 168, CParser.RULE_externalDeclaration);
|
|
5089
5160
|
try {
|
|
5090
|
-
this.state =
|
|
5161
|
+
this.state = 1090;
|
|
5091
5162
|
this.errorHandler.sync(this);
|
|
5092
5163
|
switch (this.interpreter.adaptivePredict(this.tokenStream, 129, this.context) ) {
|
|
5093
5164
|
case 1:
|
|
5094
5165
|
this.enterOuterAlt(localContext, 1);
|
|
5095
5166
|
{
|
|
5096
|
-
this.state =
|
|
5167
|
+
this.state = 1087;
|
|
5097
5168
|
this.functionDefinition();
|
|
5098
5169
|
}
|
|
5099
5170
|
break;
|
|
5100
5171
|
case 2:
|
|
5101
5172
|
this.enterOuterAlt(localContext, 2);
|
|
5102
5173
|
{
|
|
5103
|
-
this.state =
|
|
5174
|
+
this.state = 1088;
|
|
5104
5175
|
this.declaration();
|
|
5105
5176
|
}
|
|
5106
5177
|
break;
|
|
5107
5178
|
case 3:
|
|
5108
5179
|
this.enterOuterAlt(localContext, 3);
|
|
5109
5180
|
{
|
|
5110
|
-
this.state =
|
|
5181
|
+
this.state = 1089;
|
|
5111
5182
|
this.match(CParser.Semi);
|
|
5112
5183
|
}
|
|
5113
5184
|
break;
|
|
@@ -5133,29 +5204,29 @@ export class CParser extends antlr.Parser {
|
|
|
5133
5204
|
try {
|
|
5134
5205
|
this.enterOuterAlt(localContext, 1);
|
|
5135
5206
|
{
|
|
5136
|
-
this.state =
|
|
5207
|
+
this.state = 1093;
|
|
5137
5208
|
this.errorHandler.sync(this);
|
|
5138
5209
|
switch (this.interpreter.adaptivePredict(this.tokenStream, 130, this.context) ) {
|
|
5139
5210
|
case 1:
|
|
5140
5211
|
{
|
|
5141
|
-
this.state =
|
|
5212
|
+
this.state = 1092;
|
|
5142
5213
|
this.declarationSpecifiers();
|
|
5143
5214
|
}
|
|
5144
5215
|
break;
|
|
5145
5216
|
}
|
|
5146
|
-
this.state =
|
|
5217
|
+
this.state = 1095;
|
|
5147
5218
|
this.declarator();
|
|
5148
|
-
this.state =
|
|
5219
|
+
this.state = 1097;
|
|
5149
5220
|
this.errorHandler.sync(this);
|
|
5150
5221
|
_la = this.tokenStream.LA(1);
|
|
5151
|
-
if ((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
5222
|
+
if ((((_la) & ~0x1F) === 0 && ((1 << _la) & 134217666) !== 0) || ((((_la - 34)) & ~0x1F) === 0 && ((1 << (_la - 34)) & 3988666931) !== 0) || ((((_la - 66)) & ~0x1F) === 0 && ((1 << (_la - 66)) & 7403) !== 0) || _la === 125) {
|
|
5152
5223
|
{
|
|
5153
|
-
this.state =
|
|
5224
|
+
this.state = 1096;
|
|
5154
5225
|
this.declarationList();
|
|
5155
5226
|
}
|
|
5156
5227
|
}
|
|
5157
5228
|
|
|
5158
|
-
this.state =
|
|
5229
|
+
this.state = 1099;
|
|
5159
5230
|
this.compoundStatement();
|
|
5160
5231
|
}
|
|
5161
5232
|
}
|
|
@@ -5179,20 +5250,20 @@ export class CParser extends antlr.Parser {
|
|
|
5179
5250
|
try {
|
|
5180
5251
|
this.enterOuterAlt(localContext, 1);
|
|
5181
5252
|
{
|
|
5182
|
-
this.state =
|
|
5253
|
+
this.state = 1102;
|
|
5183
5254
|
this.errorHandler.sync(this);
|
|
5184
5255
|
_la = this.tokenStream.LA(1);
|
|
5185
5256
|
do {
|
|
5186
5257
|
{
|
|
5187
5258
|
{
|
|
5188
|
-
this.state =
|
|
5259
|
+
this.state = 1101;
|
|
5189
5260
|
this.declaration();
|
|
5190
5261
|
}
|
|
5191
5262
|
}
|
|
5192
|
-
this.state =
|
|
5263
|
+
this.state = 1104;
|
|
5193
5264
|
this.errorHandler.sync(this);
|
|
5194
5265
|
_la = this.tokenStream.LA(1);
|
|
5195
|
-
} while ((((_la) & ~0x1F) === 0 && ((1 << _la) &
|
|
5266
|
+
} while ((((_la) & ~0x1F) === 0 && ((1 << _la) & 134217666) !== 0) || ((((_la - 34)) & ~0x1F) === 0 && ((1 << (_la - 34)) & 3988666931) !== 0) || ((((_la - 66)) & ~0x1F) === 0 && ((1 << (_la - 66)) & 7403) !== 0) || _la === 125);
|
|
5196
5267
|
}
|
|
5197
5268
|
}
|
|
5198
5269
|
catch (re) {
|
|
@@ -5252,7 +5323,7 @@ export class CParser extends antlr.Parser {
|
|
|
5252
5323
|
}
|
|
5253
5324
|
|
|
5254
5325
|
public static readonly _serializedATN: number[] = [
|
|
5255
|
-
4,1,
|
|
5326
|
+
4,1,135,1107,2,0,7,0,2,1,7,1,2,2,7,2,2,3,7,3,2,4,7,4,2,5,7,5,2,6,
|
|
5256
5327
|
7,6,2,7,7,7,2,8,7,8,2,9,7,9,2,10,7,10,2,11,7,11,2,12,7,12,2,13,7,
|
|
5257
5328
|
13,2,14,7,14,2,15,7,15,2,16,7,16,2,17,7,17,2,18,7,18,2,19,7,19,2,
|
|
5258
5329
|
20,7,20,2,21,7,21,2,22,7,22,2,23,7,23,2,24,7,24,2,25,7,25,2,26,7,
|
|
@@ -5291,393 +5362,398 @@ export class CParser extends antlr.Parser {
|
|
|
5291
5362
|
12,28,447,9,28,1,29,1,29,1,29,3,29,452,8,29,1,30,1,30,1,31,1,31,
|
|
5292
5363
|
1,31,1,31,1,31,1,31,1,31,1,31,1,31,1,31,1,31,1,31,1,31,1,31,1,31,
|
|
5293
5364
|
1,31,1,31,1,31,1,31,1,31,1,31,1,31,1,31,1,31,1,31,1,31,1,31,1,31,
|
|
5294
|
-
|
|
5295
|
-
32,1,32,3,32,
|
|
5296
|
-
|
|
5297
|
-
|
|
5298
|
-
37,
|
|
5299
|
-
|
|
5300
|
-
39,1,39,3,39,
|
|
5301
|
-
9,40,1,41,1,41,1,41,3,41,
|
|
5302
|
-
1,43,1,
|
|
5303
|
-
|
|
5304
|
-
|
|
5305
|
-
|
|
5306
|
-
1,48,
|
|
5307
|
-
48,
|
|
5308
|
-
48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,
|
|
5309
|
-
48,
|
|
5310
|
-
48,
|
|
5311
|
-
|
|
5312
|
-
1,51,1,51,1,51,1,
|
|
5313
|
-
|
|
5314
|
-
|
|
5315
|
-
|
|
5316
|
-
|
|
5317
|
-
58,1,58,
|
|
5318
|
-
|
|
5319
|
-
8,
|
|
5320
|
-
|
|
5321
|
-
|
|
5322
|
-
|
|
5323
|
-
1,62,1,62,
|
|
5324
|
-
|
|
5325
|
-
62,
|
|
5326
|
-
|
|
5327
|
-
62,
|
|
5328
|
-
|
|
5329
|
-
|
|
5330
|
-
65,884,8,65,1,65,
|
|
5331
|
-
|
|
5332
|
-
|
|
5333
|
-
69,
|
|
5334
|
-
70,1,70,1,70,1,70,
|
|
5335
|
-
|
|
5336
|
-
8,70,
|
|
5337
|
-
|
|
5338
|
-
1,71,
|
|
5339
|
-
|
|
5340
|
-
|
|
5341
|
-
1,76,1,76,1,76,
|
|
5342
|
-
|
|
5343
|
-
1,77,1,77,
|
|
5344
|
-
1,78,
|
|
5345
|
-
|
|
5346
|
-
|
|
5347
|
-
81,
|
|
5348
|
-
|
|
5349
|
-
|
|
5350
|
-
|
|
5351
|
-
28,30,32,34,36,38,40,42,44,46,48,
|
|
5352
|
-
72,74,76,78,80,82,84,86,88,90,92,
|
|
5353
|
-
112,114,116,118,120,122,124,126,
|
|
5354
|
-
144,146,148,150,152,154,156,158,
|
|
5355
|
-
|
|
5356
|
-
|
|
5357
|
-
|
|
5358
|
-
|
|
5359
|
-
|
|
5360
|
-
|
|
5361
|
-
|
|
5362
|
-
|
|
5363
|
-
0,
|
|
5364
|
-
|
|
5365
|
-
1,0,0,0,
|
|
5366
|
-
0,0,
|
|
5367
|
-
|
|
5368
|
-
1,0,0,0,
|
|
5369
|
-
0,0,
|
|
5370
|
-
|
|
5371
|
-
1,0,0,0,
|
|
5372
|
-
0,0,
|
|
5373
|
-
0,
|
|
5374
|
-
0,
|
|
5375
|
-
0,
|
|
5376
|
-
0,
|
|
5377
|
-
0,
|
|
5378
|
-
0,0,0,
|
|
5379
|
-
|
|
5380
|
-
|
|
5381
|
-
|
|
5365
|
+
1,31,1,31,1,31,1,31,3,31,488,8,31,1,32,1,32,3,32,492,8,32,1,32,1,
|
|
5366
|
+
32,1,32,1,32,1,32,1,32,1,32,3,32,501,8,32,1,33,1,33,1,34,4,34,506,
|
|
5367
|
+
8,34,11,34,12,34,507,1,35,1,35,1,35,1,35,1,35,1,35,1,35,1,35,3,35,
|
|
5368
|
+
518,8,35,1,36,1,36,3,36,522,8,36,1,36,3,36,525,8,36,1,37,1,37,1,
|
|
5369
|
+
37,5,37,530,8,37,10,37,12,37,533,9,37,1,38,1,38,3,38,537,8,38,1,
|
|
5370
|
+
38,1,38,3,38,541,8,38,1,39,1,39,3,39,545,8,39,1,39,1,39,1,39,3,39,
|
|
5371
|
+
550,8,39,1,39,1,39,1,39,1,39,3,39,556,8,39,1,40,1,40,1,40,5,40,561,
|
|
5372
|
+
8,40,10,40,12,40,564,9,40,1,41,1,41,1,41,3,41,569,8,41,1,42,1,42,
|
|
5373
|
+
1,43,1,43,1,43,1,43,1,43,1,44,1,44,1,45,1,45,1,45,1,45,1,45,1,45,
|
|
5374
|
+
1,45,1,45,1,45,1,45,3,45,590,8,45,1,46,1,46,1,46,1,46,3,46,596,8,
|
|
5375
|
+
46,1,46,1,46,1,47,3,47,601,8,47,1,47,1,47,5,47,605,8,47,10,47,12,
|
|
5376
|
+
47,608,9,47,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,
|
|
5377
|
+
48,1,48,1,48,1,48,1,48,1,48,1,48,3,48,627,8,48,1,48,1,48,1,48,3,
|
|
5378
|
+
48,632,8,48,1,48,3,48,635,8,48,1,48,1,48,1,48,1,48,1,48,3,48,642,
|
|
5379
|
+
8,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,
|
|
5380
|
+
1,48,3,48,657,8,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,1,48,
|
|
5381
|
+
1,48,3,48,669,8,48,1,48,5,48,672,8,48,10,48,12,48,675,9,48,1,49,
|
|
5382
|
+
1,49,1,50,1,50,1,50,4,50,682,8,50,11,50,12,50,683,1,50,1,50,3,50,
|
|
5383
|
+
688,8,50,1,51,1,51,1,51,1,51,1,51,1,51,1,51,1,52,3,52,698,8,52,1,
|
|
5384
|
+
52,1,52,3,52,702,8,52,5,52,704,8,52,10,52,12,52,707,9,52,1,53,1,
|
|
5385
|
+
53,1,53,3,53,712,8,53,1,53,3,53,715,8,53,1,54,1,54,3,54,719,8,54,
|
|
5386
|
+
4,54,721,8,54,11,54,12,54,722,1,55,4,55,726,8,55,11,55,12,55,727,
|
|
5387
|
+
1,56,1,56,1,56,3,56,733,8,56,1,57,1,57,1,57,5,57,738,8,57,10,57,
|
|
5388
|
+
12,57,741,9,57,1,58,1,58,1,58,1,58,1,58,3,58,748,8,58,3,58,750,8,
|
|
5389
|
+
58,1,59,1,59,1,59,5,59,755,8,59,10,59,12,59,758,9,59,1,60,1,60,3,
|
|
5390
|
+
60,762,8,60,1,61,1,61,3,61,766,8,61,1,61,1,61,5,61,770,8,61,10,61,
|
|
5391
|
+
12,61,773,9,61,3,61,775,8,61,1,62,1,62,1,62,1,62,1,62,5,62,782,8,
|
|
5392
|
+
62,10,62,12,62,785,9,62,1,62,1,62,3,62,789,8,62,1,62,3,62,792,8,
|
|
5393
|
+
62,1,62,1,62,1,62,1,62,3,62,798,8,62,1,62,1,62,1,62,1,62,1,62,1,
|
|
5394
|
+
62,1,62,1,62,1,62,1,62,1,62,1,62,1,62,1,62,3,62,814,8,62,1,62,1,
|
|
5395
|
+
62,5,62,818,8,62,10,62,12,62,821,9,62,3,62,823,8,62,1,62,1,62,1,
|
|
5396
|
+
62,3,62,828,8,62,1,62,3,62,831,8,62,1,62,1,62,1,62,1,62,1,62,3,62,
|
|
5397
|
+
838,8,62,1,62,1,62,1,62,1,62,1,62,1,62,1,62,1,62,1,62,1,62,1,62,
|
|
5398
|
+
1,62,1,62,1,62,1,62,1,62,1,62,3,62,857,8,62,1,62,1,62,5,62,861,8,
|
|
5399
|
+
62,10,62,12,62,864,9,62,5,62,866,8,62,10,62,12,62,869,9,62,1,63,
|
|
5400
|
+
1,63,1,64,1,64,1,64,1,64,3,64,877,8,64,1,64,1,64,3,64,881,8,64,1,
|
|
5401
|
+
65,3,65,884,8,65,1,65,1,65,1,65,3,65,889,8,65,1,65,5,65,892,8,65,
|
|
5402
|
+
10,65,12,65,895,9,65,1,66,1,66,1,66,1,67,4,67,901,8,67,11,67,12,
|
|
5403
|
+
67,902,1,68,1,68,1,68,1,68,1,68,1,68,3,68,911,8,68,1,69,1,69,1,69,
|
|
5404
|
+
1,69,1,69,4,69,918,8,69,11,69,12,69,919,1,69,1,69,1,69,1,70,1,70,
|
|
5405
|
+
1,70,1,70,1,70,1,70,1,70,1,70,1,70,1,70,1,70,1,70,5,70,937,8,70,
|
|
5406
|
+
10,70,12,70,940,9,70,3,70,942,8,70,1,70,1,70,1,70,1,70,5,70,948,
|
|
5407
|
+
8,70,10,70,12,70,951,9,70,3,70,953,8,70,5,70,955,8,70,10,70,12,70,
|
|
5408
|
+
958,9,70,1,70,1,70,3,70,962,8,70,1,71,1,71,1,71,3,71,967,8,71,1,
|
|
5409
|
+
71,1,71,1,71,1,71,1,71,1,71,1,71,1,71,3,71,977,8,71,1,72,1,72,3,
|
|
5410
|
+
72,981,8,72,1,72,1,72,1,73,4,73,986,8,73,11,73,12,73,987,1,74,1,
|
|
5411
|
+
74,3,74,992,8,74,1,75,3,75,995,8,75,1,75,1,75,1,76,1,76,1,76,1,76,
|
|
5412
|
+
1,76,1,76,1,76,3,76,1006,8,76,1,76,1,76,1,76,1,76,1,76,1,76,3,76,
|
|
5413
|
+
1014,8,76,1,77,1,77,1,77,1,77,1,77,1,77,1,77,1,77,1,77,1,77,1,77,
|
|
5414
|
+
1,77,1,77,1,77,1,77,1,77,1,77,1,77,1,77,1,77,3,77,1036,8,77,1,78,
|
|
5415
|
+
1,78,3,78,1040,8,78,3,78,1042,8,78,1,78,1,78,3,78,1046,8,78,1,78,
|
|
5416
|
+
1,78,3,78,1050,8,78,1,79,1,79,3,79,1054,8,79,1,80,1,80,1,80,5,80,
|
|
5417
|
+
1059,8,80,10,80,12,80,1062,9,80,1,81,1,81,1,81,1,81,1,81,1,81,3,
|
|
5418
|
+
81,1070,8,81,1,81,1,81,3,81,1074,8,81,1,81,1,81,1,82,3,82,1079,8,
|
|
5419
|
+
82,1,82,1,82,1,83,4,83,1084,8,83,11,83,12,83,1085,1,84,1,84,1,84,
|
|
5420
|
+
3,84,1091,8,84,1,85,3,85,1094,8,85,1,85,1,85,3,85,1098,8,85,1,85,
|
|
5421
|
+
1,85,1,86,4,86,1103,8,86,11,86,12,86,1104,1,86,0,2,96,124,87,0,2,
|
|
5422
|
+
4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,34,36,38,40,42,44,46,48,
|
|
5423
|
+
50,52,54,56,58,60,62,64,66,68,70,72,74,76,78,80,82,84,86,88,90,92,
|
|
5424
|
+
94,96,98,100,102,104,106,108,110,112,114,116,118,120,122,124,126,
|
|
5425
|
+
128,130,132,134,136,138,140,142,144,146,148,150,152,154,156,158,
|
|
5426
|
+
160,162,164,166,168,170,172,0,20,1,0,122,123,3,0,59,59,92,92,94,
|
|
5427
|
+
94,3,0,4,5,59,59,70,70,5,0,91,91,93,93,95,95,98,98,103,104,1,0,95,
|
|
5428
|
+
97,2,0,91,91,93,93,1,0,89,90,1,0,85,88,1,0,120,121,1,0,109,119,7,
|
|
5429
|
+
0,6,6,35,35,46,46,54,54,60,60,63,63,78,78,1,0,9,11,1,0,15,16,2,0,
|
|
5430
|
+
61,61,64,64,5,0,17,22,39,39,55,55,67,67,71,71,2,0,25,25,27,31,1,
|
|
5431
|
+
0,32,33,2,0,79,80,108,108,2,0,95,95,102,102,2,0,21,22,67,67,1222,
|
|
5432
|
+
0,207,1,0,0,0,2,209,1,0,0,0,4,216,1,0,0,0,6,226,1,0,0,0,8,245,1,
|
|
5433
|
+
0,0,0,10,265,1,0,0,0,12,276,1,0,0,0,14,292,1,0,0,0,16,304,1,0,0,
|
|
5434
|
+
0,18,306,1,0,0,0,20,314,1,0,0,0,22,322,1,0,0,0,24,330,1,0,0,0,26,
|
|
5435
|
+
338,1,0,0,0,28,346,1,0,0,0,30,354,1,0,0,0,32,362,1,0,0,0,34,370,
|
|
5436
|
+
1,0,0,0,36,378,1,0,0,0,38,386,1,0,0,0,40,400,1,0,0,0,42,402,1,0,
|
|
5437
|
+
0,0,44,404,1,0,0,0,46,412,1,0,0,0,48,421,1,0,0,0,50,424,1,0,0,0,
|
|
5438
|
+
52,429,1,0,0,0,54,438,1,0,0,0,56,440,1,0,0,0,58,448,1,0,0,0,60,453,
|
|
5439
|
+
1,0,0,0,62,487,1,0,0,0,64,500,1,0,0,0,66,502,1,0,0,0,68,505,1,0,
|
|
5440
|
+
0,0,70,517,1,0,0,0,72,521,1,0,0,0,74,526,1,0,0,0,76,540,1,0,0,0,
|
|
5441
|
+
78,555,1,0,0,0,80,557,1,0,0,0,82,565,1,0,0,0,84,570,1,0,0,0,86,572,
|
|
5442
|
+
1,0,0,0,88,577,1,0,0,0,90,589,1,0,0,0,92,591,1,0,0,0,94,600,1,0,
|
|
5443
|
+
0,0,96,626,1,0,0,0,98,676,1,0,0,0,100,687,1,0,0,0,102,689,1,0,0,
|
|
5444
|
+
0,104,697,1,0,0,0,106,708,1,0,0,0,108,720,1,0,0,0,110,725,1,0,0,
|
|
5445
|
+
0,112,729,1,0,0,0,114,734,1,0,0,0,116,749,1,0,0,0,118,751,1,0,0,
|
|
5446
|
+
0,120,759,1,0,0,0,122,774,1,0,0,0,124,822,1,0,0,0,126,870,1,0,0,
|
|
5447
|
+
0,128,880,1,0,0,0,130,883,1,0,0,0,132,896,1,0,0,0,134,900,1,0,0,
|
|
5448
|
+
0,136,910,1,0,0,0,138,912,1,0,0,0,140,961,1,0,0,0,142,976,1,0,0,
|
|
5449
|
+
0,144,978,1,0,0,0,146,985,1,0,0,0,148,991,1,0,0,0,150,994,1,0,0,
|
|
5450
|
+
0,152,1013,1,0,0,0,154,1035,1,0,0,0,156,1041,1,0,0,0,158,1051,1,
|
|
5451
|
+
0,0,0,160,1055,1,0,0,0,162,1073,1,0,0,0,164,1078,1,0,0,0,166,1083,
|
|
5452
|
+
1,0,0,0,168,1090,1,0,0,0,170,1093,1,0,0,0,172,1102,1,0,0,0,174,208,
|
|
5453
|
+
5,125,0,0,175,208,5,126,0,0,176,178,5,128,0,0,177,176,1,0,0,0,178,
|
|
5382
5454
|
179,1,0,0,0,179,177,1,0,0,0,179,180,1,0,0,0,180,208,1,0,0,0,181,
|
|
5383
|
-
182,5,
|
|
5455
|
+
182,5,79,0,0,182,183,3,44,22,0,183,184,5,80,0,0,184,208,1,0,0,0,
|
|
5384
5456
|
185,208,3,2,1,0,186,188,5,1,0,0,187,186,1,0,0,0,187,188,1,0,0,0,
|
|
5385
|
-
188,189,1,0,0,0,189,190,5,
|
|
5386
|
-
0,0,192,208,1,0,0,0,193,194,5,2,0,0,194,195,5,
|
|
5387
|
-
6,0,196,197,5,
|
|
5388
|
-
1,0,0,0,200,201,5,3,0,0,201,202,5,
|
|
5389
|
-
204,5,
|
|
5390
|
-
174,1,0,0,0,207,175,1,0,0,0,207,177,1,0,0,0,207,181,1,0,0,0,
|
|
5391
|
-
185,1,0,0,0,207,187,1,0,0,0,207,193,1,0,0,0,207,200,1,0,0,0,
|
|
5392
|
-
1,1,0,0,0,209,210,5,
|
|
5393
|
-
213,5,
|
|
5394
|
-
221,3,6,3,0,217,218,5,
|
|
5395
|
-
223,1,0,0,0,221,219,1,0,0,0,221,222,1,0,0,0,222,5,1,0,0,
|
|
5396
|
-
1,0,0,0,224,227,3,120,60,0,225,227,5,
|
|
5397
|
-
225,1,0,0,0,227,228,1,0,0,0,228,229,5,
|
|
5398
|
-
7,1,0,0,0,231,246,3,0,0,0,232,234,5,1,0,0,233,232,
|
|
5399
|
-
1,0,0,0,234,235,1,0,0,0,235,236,5,
|
|
5400
|
-
238,5,
|
|
5401
|
-
0,241,240,1,0,0,0,241,242,1,0,0,0,242,243,1,0,0,
|
|
5402
|
-
0,244,
|
|
5403
|
-
0,247,248,5,
|
|
5404
|
-
0,0,0,251,253,5,
|
|
5405
|
-
1,0,0,0,254,255,1,0,0,0,255,261,5,
|
|
5406
|
-
|
|
5407
|
-
|
|
5408
|
-
|
|
5409
|
-
1,0,0,0,265,270,3,40,20,0,266,267,5,
|
|
5410
|
-
266,1,0,0,0,269,272,1,0,0,0,270,268,1,0,0,0,270,271,
|
|
5411
|
-
11,1,0,0,0,272,270,1,0,0,0,273,275,7,1,0,0,274,273,1,
|
|
5412
|
-
|
|
5413
|
-
1,0,0,0,279,291,3,8,4,0,280,281,3,14,7,0,281,282,3,
|
|
5414
|
-
1,0,0,0,283,284,7,2,0,0,284,285,5,
|
|
5415
|
-
287,5,
|
|
5416
|
-
|
|
5417
|
-
291,13,1,0,0,0,292,293,7,3,0,0,293,15,1,0,0,0,294,296,
|
|
5418
|
-
294,1,0,0,0,295,296,1,0,0,0,296,297,1,0,0,0,297,298,
|
|
5419
|
-
299,3,120,60,0,299,300,5,
|
|
5420
|
-
302,305,3,12,6,0,303,305,5,
|
|
5421
|
-
0,304,303,1,0,0,0,305,17,1,0,0,0,306,311,3,16,8,0,307,
|
|
5422
|
-
0,308,310,3,16,8,0,309,307,1,0,0,0,310,313,1,0,0,0,311,
|
|
5423
|
-
0,311,312,1,0,0,0,312,19,1,0,0,0,313,311,1,0,0,0,314,319,
|
|
5424
|
-
0,315,316,7,5,0,0,316,318,3,18,9,0,317,315,1,0,0,0,318,321,
|
|
5425
|
-
0,319,317,1,0,0,0,319,320,1,0,0,0,320,21,1,0,0,0,321,319,1,
|
|
5426
|
-
322,327,3,20,10,0,323,324,7,6,0,0,324,326,3,20,10,0,325,323,
|
|
5427
|
-
0,0,326,329,1,0,0,0,327,325,1,0,0,0,327,328,1,0,0,0,328,23,1,
|
|
5428
|
-
0,329,327,1,0,0,0,330,335,3,22,11,0,331,332,7,7,0,0,332,334,
|
|
5429
|
-
11,0,333,331,1,0,0,0,334,337,1,0,0,0,335,333,1,0,0,0,335,336,
|
|
5430
|
-
0,0,336,25,1,0,0,0,337,335,1,0,0,0,338,343,3,24,12,0,339,340,
|
|
5431
|
-
0,0,340,342,3,24,12,0,341,339,1,0,0,0,342,345,1,0,0,0,343,341,
|
|
5432
|
-
0,0,0,343,344,1,0,0,0,344,27,1,0,0,0,345,343,1,0,0,0,346,351,3,
|
|
5433
|
-
13,0,347,348,5,
|
|
5457
|
+
188,189,1,0,0,0,189,190,5,79,0,0,190,191,3,144,72,0,191,192,5,80,
|
|
5458
|
+
0,0,192,208,1,0,0,0,193,194,5,2,0,0,194,195,5,79,0,0,195,196,3,12,
|
|
5459
|
+
6,0,196,197,5,108,0,0,197,198,3,120,60,0,198,199,5,80,0,0,199,208,
|
|
5460
|
+
1,0,0,0,200,201,5,3,0,0,201,202,5,79,0,0,202,203,3,120,60,0,203,
|
|
5461
|
+
204,5,108,0,0,204,205,3,12,6,0,205,206,5,80,0,0,206,208,1,0,0,0,
|
|
5462
|
+
207,174,1,0,0,0,207,175,1,0,0,0,207,177,1,0,0,0,207,181,1,0,0,0,
|
|
5463
|
+
207,185,1,0,0,0,207,187,1,0,0,0,207,193,1,0,0,0,207,200,1,0,0,0,
|
|
5464
|
+
208,1,1,0,0,0,209,210,5,74,0,0,210,211,5,79,0,0,211,212,3,40,20,
|
|
5465
|
+
0,212,213,5,108,0,0,213,214,3,4,2,0,214,215,5,80,0,0,215,3,1,0,0,
|
|
5466
|
+
0,216,221,3,6,3,0,217,218,5,108,0,0,218,220,3,6,3,0,219,217,1,0,
|
|
5467
|
+
0,0,220,223,1,0,0,0,221,219,1,0,0,0,221,222,1,0,0,0,222,5,1,0,0,
|
|
5468
|
+
0,223,221,1,0,0,0,224,227,3,120,60,0,225,227,5,41,0,0,226,224,1,
|
|
5469
|
+
0,0,0,226,225,1,0,0,0,227,228,1,0,0,0,228,229,5,106,0,0,229,230,
|
|
5470
|
+
3,40,20,0,230,7,1,0,0,0,231,246,3,0,0,0,232,234,5,1,0,0,233,232,
|
|
5471
|
+
1,0,0,0,233,234,1,0,0,0,234,235,1,0,0,0,235,236,5,79,0,0,236,237,
|
|
5472
|
+
3,120,60,0,237,238,5,80,0,0,238,239,5,83,0,0,239,241,3,130,65,0,
|
|
5473
|
+
240,242,5,108,0,0,241,240,1,0,0,0,241,242,1,0,0,0,242,243,1,0,0,
|
|
5474
|
+
0,243,244,5,84,0,0,244,246,1,0,0,0,245,231,1,0,0,0,245,233,1,0,0,
|
|
5475
|
+
0,246,262,1,0,0,0,247,248,5,81,0,0,248,249,3,44,22,0,249,250,5,82,
|
|
5476
|
+
0,0,250,261,1,0,0,0,251,253,5,79,0,0,252,254,3,10,5,0,253,252,1,
|
|
5477
|
+
0,0,0,253,254,1,0,0,0,254,255,1,0,0,0,255,261,5,80,0,0,256,257,7,
|
|
5478
|
+
0,0,0,257,261,5,125,0,0,258,261,5,92,0,0,259,261,5,94,0,0,260,247,
|
|
5479
|
+
1,0,0,0,260,251,1,0,0,0,260,256,1,0,0,0,260,258,1,0,0,0,260,259,
|
|
5480
|
+
1,0,0,0,261,264,1,0,0,0,262,260,1,0,0,0,262,263,1,0,0,0,263,9,1,
|
|
5481
|
+
0,0,0,264,262,1,0,0,0,265,270,3,40,20,0,266,267,5,108,0,0,267,269,
|
|
5482
|
+
3,40,20,0,268,266,1,0,0,0,269,272,1,0,0,0,270,268,1,0,0,0,270,271,
|
|
5483
|
+
1,0,0,0,271,11,1,0,0,0,272,270,1,0,0,0,273,275,7,1,0,0,274,273,1,
|
|
5484
|
+
0,0,0,275,278,1,0,0,0,276,274,1,0,0,0,276,277,1,0,0,0,277,290,1,
|
|
5485
|
+
0,0,0,278,276,1,0,0,0,279,291,3,8,4,0,280,281,3,14,7,0,281,282,3,
|
|
5486
|
+
16,8,0,282,291,1,0,0,0,283,284,7,2,0,0,284,285,5,79,0,0,285,286,
|
|
5487
|
+
3,120,60,0,286,287,5,80,0,0,287,291,1,0,0,0,288,289,5,100,0,0,289,
|
|
5488
|
+
291,5,125,0,0,290,279,1,0,0,0,290,280,1,0,0,0,290,283,1,0,0,0,290,
|
|
5489
|
+
288,1,0,0,0,291,13,1,0,0,0,292,293,7,3,0,0,293,15,1,0,0,0,294,296,
|
|
5490
|
+
5,1,0,0,295,294,1,0,0,0,295,296,1,0,0,0,296,297,1,0,0,0,297,298,
|
|
5491
|
+
5,79,0,0,298,299,3,120,60,0,299,300,5,80,0,0,300,301,3,16,8,0,301,
|
|
5492
|
+
305,1,0,0,0,302,305,3,12,6,0,303,305,5,127,0,0,304,295,1,0,0,0,304,
|
|
5493
|
+
302,1,0,0,0,304,303,1,0,0,0,305,17,1,0,0,0,306,311,3,16,8,0,307,
|
|
5494
|
+
308,7,4,0,0,308,310,3,16,8,0,309,307,1,0,0,0,310,313,1,0,0,0,311,
|
|
5495
|
+
309,1,0,0,0,311,312,1,0,0,0,312,19,1,0,0,0,313,311,1,0,0,0,314,319,
|
|
5496
|
+
3,18,9,0,315,316,7,5,0,0,316,318,3,18,9,0,317,315,1,0,0,0,318,321,
|
|
5497
|
+
1,0,0,0,319,317,1,0,0,0,319,320,1,0,0,0,320,21,1,0,0,0,321,319,1,
|
|
5498
|
+
0,0,0,322,327,3,20,10,0,323,324,7,6,0,0,324,326,3,20,10,0,325,323,
|
|
5499
|
+
1,0,0,0,326,329,1,0,0,0,327,325,1,0,0,0,327,328,1,0,0,0,328,23,1,
|
|
5500
|
+
0,0,0,329,327,1,0,0,0,330,335,3,22,11,0,331,332,7,7,0,0,332,334,
|
|
5501
|
+
3,22,11,0,333,331,1,0,0,0,334,337,1,0,0,0,335,333,1,0,0,0,335,336,
|
|
5502
|
+
1,0,0,0,336,25,1,0,0,0,337,335,1,0,0,0,338,343,3,24,12,0,339,340,
|
|
5503
|
+
7,8,0,0,340,342,3,24,12,0,341,339,1,0,0,0,342,345,1,0,0,0,343,341,
|
|
5504
|
+
1,0,0,0,343,344,1,0,0,0,344,27,1,0,0,0,345,343,1,0,0,0,346,351,3,
|
|
5505
|
+
26,13,0,347,348,5,98,0,0,348,350,3,26,13,0,349,347,1,0,0,0,350,353,
|
|
5434
5506
|
1,0,0,0,351,349,1,0,0,0,351,352,1,0,0,0,352,29,1,0,0,0,353,351,1,
|
|
5435
|
-
0,0,0,354,359,3,28,14,0,355,356,5,
|
|
5436
|
-
1,0,0,0,358,361,1,0,0,0,359,357,1,0,0,0,359,360,1,0,0,0,360,
|
|
5437
|
-
0,0,0,361,359,1,0,0,0,362,367,3,30,15,0,363,364,5,
|
|
5438
|
-
3,30,15,0,365,363,1,0,0,0,366,369,1,0,0,0,367,365,1,0,0,0,367,
|
|
5439
|
-
1,0,0,0,368,33,1,0,0,0,369,367,1,0,0,0,370,375,3,32,16,0,371,
|
|
5440
|
-
5,
|
|
5441
|
-
1,0,0,0,375,376,1,0,0,0,376,35,1,0,0,0,377,375,1,0,0,0,378,
|
|
5442
|
-
34,17,0,379,380,5,
|
|
5443
|
-
1,0,0,0,383,381,1,0,0,0,383,384,1,0,0,0,384,37,1,0,0,0,
|
|
5444
|
-
0,0,0,386,392,3,36,18,0,387,388,5,
|
|
5445
|
-
5,
|
|
5446
|
-
1,0,0,0,393,39,1,0,0,0,394,401,3,38,19,0,395,396,
|
|
5447
|
-
3,42,21,0,397,398,3,40,20,0,398,401,1,0,0,0,399,
|
|
5448
|
-
|
|
5449
|
-
7,9,0,0,403,43,1,0,0,0,404,409,3,40,20,0,405,
|
|
5450
|
-
3,40,20,0,407,405,1,0,0,0,408,411,1,0,0,0,
|
|
5451
|
-
1,0,0,0,410,
|
|
5452
|
-
1,0,0,0,414,416,3,50,25,0,415,417,3,56,28,0,
|
|
5453
|
-
|
|
5454
|
-
422,
|
|
5455
|
-
|
|
5456
|
-
|
|
5457
|
-
|
|
5458
|
-
|
|
5459
|
-
|
|
5460
|
-
0,438,
|
|
5461
|
-
|
|
5462
|
-
|
|
5463
|
-
|
|
5464
|
-
|
|
5465
|
-
0,0,
|
|
5466
|
-
|
|
5467
|
-
|
|
5468
|
-
|
|
5469
|
-
|
|
5470
|
-
|
|
5471
|
-
|
|
5472
|
-
|
|
5473
|
-
|
|
5474
|
-
|
|
5475
|
-
|
|
5476
|
-
|
|
5477
|
-
|
|
5478
|
-
|
|
5479
|
-
1,0,0,0,
|
|
5480
|
-
|
|
5481
|
-
|
|
5482
|
-
|
|
5483
|
-
|
|
5484
|
-
|
|
5485
|
-
|
|
5486
|
-
|
|
5487
|
-
|
|
5488
|
-
|
|
5489
|
-
1,0,0,0,522,
|
|
5490
|
-
|
|
5491
|
-
|
|
5492
|
-
|
|
5493
|
-
|
|
5494
|
-
|
|
5495
|
-
|
|
5496
|
-
|
|
5497
|
-
|
|
5498
|
-
|
|
5499
|
-
|
|
5500
|
-
0,0,0,
|
|
5501
|
-
|
|
5502
|
-
1,0,0,0,
|
|
5503
|
-
|
|
5504
|
-
|
|
5505
|
-
|
|
5506
|
-
0,
|
|
5507
|
-
|
|
5508
|
-
|
|
5509
|
-
0,
|
|
5510
|
-
|
|
5511
|
-
|
|
5512
|
-
|
|
5513
|
-
|
|
5514
|
-
1,0,0,0,
|
|
5515
|
-
|
|
5516
|
-
|
|
5517
|
-
0,0,
|
|
5518
|
-
94,47,0,
|
|
5519
|
-
|
|
5520
|
-
|
|
5521
|
-
|
|
5522
|
-
|
|
5523
|
-
|
|
5524
|
-
|
|
5525
|
-
|
|
5526
|
-
0,0,
|
|
5527
|
-
|
|
5528
|
-
|
|
5529
|
-
|
|
5530
|
-
|
|
5531
|
-
|
|
5532
|
-
0,0,
|
|
5533
|
-
|
|
5534
|
-
|
|
5535
|
-
0,670,
|
|
5536
|
-
0,
|
|
5537
|
-
0,0,
|
|
5538
|
-
0,
|
|
5539
|
-
0,
|
|
5540
|
-
|
|
5541
|
-
|
|
5542
|
-
|
|
5543
|
-
|
|
5544
|
-
|
|
5545
|
-
|
|
5546
|
-
|
|
5547
|
-
0,
|
|
5548
|
-
|
|
5549
|
-
0,0,0,
|
|
5550
|
-
|
|
5551
|
-
|
|
5552
|
-
|
|
5553
|
-
|
|
5554
|
-
|
|
5555
|
-
0,
|
|
5556
|
-
|
|
5557
|
-
|
|
5558
|
-
|
|
5559
|
-
|
|
5560
|
-
|
|
5561
|
-
|
|
5562
|
-
0,
|
|
5563
|
-
0,
|
|
5564
|
-
|
|
5565
|
-
|
|
5566
|
-
|
|
5567
|
-
|
|
5568
|
-
|
|
5569
|
-
|
|
5570
|
-
|
|
5571
|
-
|
|
5572
|
-
0,
|
|
5573
|
-
0,
|
|
5574
|
-
|
|
5575
|
-
|
|
5576
|
-
|
|
5577
|
-
|
|
5578
|
-
|
|
5579
|
-
|
|
5580
|
-
|
|
5581
|
-
|
|
5582
|
-
0,0,
|
|
5583
|
-
0,0,0,
|
|
5584
|
-
|
|
5585
|
-
1,0,0,0,
|
|
5586
|
-
|
|
5587
|
-
|
|
5588
|
-
|
|
5589
|
-
|
|
5590
|
-
|
|
5591
|
-
|
|
5592
|
-
|
|
5593
|
-
|
|
5594
|
-
0,
|
|
5595
|
-
0,0,
|
|
5596
|
-
|
|
5597
|
-
|
|
5598
|
-
|
|
5599
|
-
|
|
5600
|
-
|
|
5601
|
-
0,
|
|
5602
|
-
0,0,
|
|
5603
|
-
|
|
5604
|
-
|
|
5605
|
-
1,0,0,0,
|
|
5606
|
-
|
|
5607
|
-
|
|
5608
|
-
|
|
5609
|
-
|
|
5610
|
-
|
|
5611
|
-
|
|
5612
|
-
|
|
5613
|
-
0,
|
|
5614
|
-
|
|
5615
|
-
|
|
5616
|
-
|
|
5617
|
-
5,
|
|
5618
|
-
|
|
5619
|
-
|
|
5620
|
-
|
|
5621
|
-
|
|
5622
|
-
|
|
5623
|
-
|
|
5624
|
-
|
|
5625
|
-
0,
|
|
5626
|
-
0,
|
|
5627
|
-
|
|
5628
|
-
|
|
5629
|
-
|
|
5630
|
-
|
|
5631
|
-
0,
|
|
5632
|
-
0,
|
|
5633
|
-
0,0,0,
|
|
5634
|
-
1,0,0,0,
|
|
5635
|
-
1,0,0,0,
|
|
5636
|
-
|
|
5637
|
-
|
|
5638
|
-
5,
|
|
5639
|
-
|
|
5640
|
-
|
|
5641
|
-
|
|
5642
|
-
|
|
5643
|
-
0,
|
|
5644
|
-
|
|
5645
|
-
0,
|
|
5646
|
-
|
|
5647
|
-
|
|
5648
|
-
0,
|
|
5649
|
-
|
|
5650
|
-
|
|
5651
|
-
|
|
5652
|
-
|
|
5653
|
-
|
|
5654
|
-
|
|
5655
|
-
|
|
5656
|
-
|
|
5657
|
-
0,
|
|
5658
|
-
|
|
5659
|
-
0,
|
|
5660
|
-
|
|
5661
|
-
0,
|
|
5662
|
-
|
|
5663
|
-
|
|
5664
|
-
1,0,0,0,
|
|
5665
|
-
|
|
5666
|
-
|
|
5667
|
-
|
|
5668
|
-
0,0,
|
|
5669
|
-
1091,
|
|
5670
|
-
|
|
5671
|
-
|
|
5672
|
-
0,
|
|
5673
|
-
|
|
5674
|
-
|
|
5675
|
-
|
|
5676
|
-
|
|
5677
|
-
|
|
5678
|
-
|
|
5679
|
-
|
|
5680
|
-
|
|
5507
|
+
0,0,0,354,359,3,28,14,0,355,356,5,102,0,0,356,358,3,28,14,0,357,
|
|
5508
|
+
355,1,0,0,0,358,361,1,0,0,0,359,357,1,0,0,0,359,360,1,0,0,0,360,
|
|
5509
|
+
31,1,0,0,0,361,359,1,0,0,0,362,367,3,30,15,0,363,364,5,99,0,0,364,
|
|
5510
|
+
366,3,30,15,0,365,363,1,0,0,0,366,369,1,0,0,0,367,365,1,0,0,0,367,
|
|
5511
|
+
368,1,0,0,0,368,33,1,0,0,0,369,367,1,0,0,0,370,375,3,32,16,0,371,
|
|
5512
|
+
372,5,100,0,0,372,374,3,32,16,0,373,371,1,0,0,0,374,377,1,0,0,0,
|
|
5513
|
+
375,373,1,0,0,0,375,376,1,0,0,0,376,35,1,0,0,0,377,375,1,0,0,0,378,
|
|
5514
|
+
383,3,34,17,0,379,380,5,101,0,0,380,382,3,34,17,0,381,379,1,0,0,
|
|
5515
|
+
0,382,385,1,0,0,0,383,381,1,0,0,0,383,384,1,0,0,0,384,37,1,0,0,0,
|
|
5516
|
+
385,383,1,0,0,0,386,392,3,36,18,0,387,388,5,105,0,0,388,389,3,44,
|
|
5517
|
+
22,0,389,390,5,106,0,0,390,391,3,38,19,0,391,393,1,0,0,0,392,387,
|
|
5518
|
+
1,0,0,0,392,393,1,0,0,0,393,39,1,0,0,0,394,401,3,38,19,0,395,396,
|
|
5519
|
+
3,12,6,0,396,397,3,42,21,0,397,398,3,40,20,0,398,401,1,0,0,0,399,
|
|
5520
|
+
401,5,127,0,0,400,394,1,0,0,0,400,395,1,0,0,0,400,399,1,0,0,0,401,
|
|
5521
|
+
41,1,0,0,0,402,403,7,9,0,0,403,43,1,0,0,0,404,409,3,40,20,0,405,
|
|
5522
|
+
406,5,108,0,0,406,408,3,40,20,0,407,405,1,0,0,0,408,411,1,0,0,0,
|
|
5523
|
+
409,407,1,0,0,0,409,410,1,0,0,0,410,45,1,0,0,0,411,409,1,0,0,0,412,
|
|
5524
|
+
413,3,38,19,0,413,47,1,0,0,0,414,416,3,50,25,0,415,417,3,56,28,0,
|
|
5525
|
+
416,415,1,0,0,0,416,417,1,0,0,0,417,418,1,0,0,0,418,419,5,107,0,
|
|
5526
|
+
0,419,422,1,0,0,0,420,422,3,138,69,0,421,414,1,0,0,0,421,420,1,0,
|
|
5527
|
+
0,0,422,49,1,0,0,0,423,425,3,54,27,0,424,423,1,0,0,0,425,426,1,0,
|
|
5528
|
+
0,0,426,424,1,0,0,0,426,427,1,0,0,0,427,51,1,0,0,0,428,430,3,54,
|
|
5529
|
+
27,0,429,428,1,0,0,0,430,431,1,0,0,0,431,429,1,0,0,0,431,432,1,0,
|
|
5530
|
+
0,0,432,53,1,0,0,0,433,439,3,60,30,0,434,439,3,62,31,0,435,439,3,
|
|
5531
|
+
88,44,0,436,439,3,90,45,0,437,439,3,92,46,0,438,433,1,0,0,0,438,
|
|
5532
|
+
434,1,0,0,0,438,435,1,0,0,0,438,436,1,0,0,0,438,437,1,0,0,0,439,
|
|
5533
|
+
55,1,0,0,0,440,445,3,58,29,0,441,442,5,108,0,0,442,444,3,58,29,0,
|
|
5534
|
+
443,441,1,0,0,0,444,447,1,0,0,0,445,443,1,0,0,0,445,446,1,0,0,0,
|
|
5535
|
+
446,57,1,0,0,0,447,445,1,0,0,0,448,451,3,94,47,0,449,450,5,109,0,
|
|
5536
|
+
0,450,452,3,128,64,0,451,449,1,0,0,0,451,452,1,0,0,0,452,59,1,0,
|
|
5537
|
+
0,0,453,454,7,10,0,0,454,61,1,0,0,0,455,488,5,66,0,0,456,488,5,38,
|
|
5538
|
+
0,0,457,488,5,57,0,0,458,488,5,52,0,0,459,488,5,53,0,0,460,488,5,
|
|
5539
|
+
47,0,0,461,488,5,43,0,0,462,488,5,58,0,0,463,488,5,7,0,0,464,488,
|
|
5540
|
+
5,8,0,0,465,488,5,65,0,0,466,488,5,72,0,0,467,488,5,73,0,0,468,488,
|
|
5541
|
+
5,9,0,0,469,488,5,10,0,0,470,488,5,11,0,0,471,488,5,12,0,0,472,488,
|
|
5542
|
+
5,13,0,0,473,488,5,14,0,0,474,475,5,1,0,0,475,476,5,79,0,0,476,477,
|
|
5543
|
+
7,11,0,0,477,488,5,80,0,0,478,488,3,86,43,0,479,488,3,64,32,0,480,
|
|
5544
|
+
488,3,78,39,0,481,488,3,126,63,0,482,483,7,12,0,0,483,484,5,79,0,
|
|
5545
|
+
0,484,485,3,46,23,0,485,486,5,80,0,0,486,488,1,0,0,0,487,455,1,0,
|
|
5546
|
+
0,0,487,456,1,0,0,0,487,457,1,0,0,0,487,458,1,0,0,0,487,459,1,0,
|
|
5547
|
+
0,0,487,460,1,0,0,0,487,461,1,0,0,0,487,462,1,0,0,0,487,463,1,0,
|
|
5548
|
+
0,0,487,464,1,0,0,0,487,465,1,0,0,0,487,466,1,0,0,0,487,467,1,0,
|
|
5549
|
+
0,0,487,468,1,0,0,0,487,469,1,0,0,0,487,470,1,0,0,0,487,471,1,0,
|
|
5550
|
+
0,0,487,472,1,0,0,0,487,473,1,0,0,0,487,474,1,0,0,0,487,478,1,0,
|
|
5551
|
+
0,0,487,479,1,0,0,0,487,480,1,0,0,0,487,481,1,0,0,0,487,482,1,0,
|
|
5552
|
+
0,0,488,63,1,0,0,0,489,491,3,66,33,0,490,492,5,125,0,0,491,490,1,
|
|
5553
|
+
0,0,0,491,492,1,0,0,0,492,493,1,0,0,0,493,494,5,83,0,0,494,495,3,
|
|
5554
|
+
68,34,0,495,496,5,84,0,0,496,501,1,0,0,0,497,498,3,66,33,0,498,499,
|
|
5555
|
+
5,125,0,0,499,501,1,0,0,0,500,489,1,0,0,0,500,497,1,0,0,0,501,65,
|
|
5556
|
+
1,0,0,0,502,503,7,13,0,0,503,67,1,0,0,0,504,506,3,70,35,0,505,504,
|
|
5557
|
+
1,0,0,0,506,507,1,0,0,0,507,505,1,0,0,0,507,508,1,0,0,0,508,69,1,
|
|
5558
|
+
0,0,0,509,510,3,72,36,0,510,511,3,74,37,0,511,512,5,107,0,0,512,
|
|
5559
|
+
518,1,0,0,0,513,514,3,72,36,0,514,515,5,107,0,0,515,518,1,0,0,0,
|
|
5560
|
+
516,518,3,138,69,0,517,509,1,0,0,0,517,513,1,0,0,0,517,516,1,0,0,
|
|
5561
|
+
0,518,71,1,0,0,0,519,522,3,62,31,0,520,522,3,88,44,0,521,519,1,0,
|
|
5562
|
+
0,0,521,520,1,0,0,0,522,524,1,0,0,0,523,525,3,72,36,0,524,523,1,
|
|
5563
|
+
0,0,0,524,525,1,0,0,0,525,73,1,0,0,0,526,531,3,76,38,0,527,528,5,
|
|
5564
|
+
108,0,0,528,530,3,76,38,0,529,527,1,0,0,0,530,533,1,0,0,0,531,529,
|
|
5565
|
+
1,0,0,0,531,532,1,0,0,0,532,75,1,0,0,0,533,531,1,0,0,0,534,541,3,
|
|
5566
|
+
94,47,0,535,537,3,94,47,0,536,535,1,0,0,0,536,537,1,0,0,0,537,538,
|
|
5567
|
+
1,0,0,0,538,539,5,106,0,0,539,541,3,46,23,0,540,534,1,0,0,0,540,
|
|
5568
|
+
536,1,0,0,0,541,77,1,0,0,0,542,544,5,45,0,0,543,545,5,125,0,0,544,
|
|
5569
|
+
543,1,0,0,0,544,545,1,0,0,0,545,546,1,0,0,0,546,547,5,83,0,0,547,
|
|
5570
|
+
549,3,80,40,0,548,550,5,108,0,0,549,548,1,0,0,0,549,550,1,0,0,0,
|
|
5571
|
+
550,551,1,0,0,0,551,552,5,84,0,0,552,556,1,0,0,0,553,554,5,45,0,
|
|
5572
|
+
0,554,556,5,125,0,0,555,542,1,0,0,0,555,553,1,0,0,0,556,79,1,0,0,
|
|
5573
|
+
0,557,562,3,82,41,0,558,559,5,108,0,0,559,561,3,82,41,0,560,558,
|
|
5574
|
+
1,0,0,0,561,564,1,0,0,0,562,560,1,0,0,0,562,563,1,0,0,0,563,81,1,
|
|
5575
|
+
0,0,0,564,562,1,0,0,0,565,568,3,84,42,0,566,567,5,109,0,0,567,569,
|
|
5576
|
+
3,46,23,0,568,566,1,0,0,0,568,569,1,0,0,0,569,83,1,0,0,0,570,571,
|
|
5577
|
+
5,125,0,0,571,85,1,0,0,0,572,573,5,71,0,0,573,574,5,79,0,0,574,575,
|
|
5578
|
+
3,120,60,0,575,576,5,80,0,0,576,87,1,0,0,0,577,578,7,14,0,0,578,
|
|
5579
|
+
89,1,0,0,0,579,590,5,51,0,0,580,590,5,76,0,0,581,590,5,23,0,0,582,
|
|
5580
|
+
590,5,24,0,0,583,590,5,25,0,0,584,590,3,102,51,0,585,586,5,26,0,
|
|
5581
|
+
0,586,587,5,79,0,0,587,588,5,125,0,0,588,590,5,80,0,0,589,579,1,
|
|
5582
|
+
0,0,0,589,580,1,0,0,0,589,581,1,0,0,0,589,582,1,0,0,0,589,583,1,
|
|
5583
|
+
0,0,0,589,584,1,0,0,0,589,585,1,0,0,0,590,91,1,0,0,0,591,592,5,69,
|
|
5584
|
+
0,0,592,595,5,79,0,0,593,596,3,120,60,0,594,596,3,46,23,0,595,593,
|
|
5585
|
+
1,0,0,0,595,594,1,0,0,0,596,597,1,0,0,0,597,598,5,80,0,0,598,93,
|
|
5586
|
+
1,0,0,0,599,601,3,108,54,0,600,599,1,0,0,0,600,601,1,0,0,0,601,602,
|
|
5587
|
+
1,0,0,0,602,606,3,96,48,0,603,605,3,100,50,0,604,603,1,0,0,0,605,
|
|
5588
|
+
608,1,0,0,0,606,604,1,0,0,0,606,607,1,0,0,0,607,95,1,0,0,0,608,606,
|
|
5589
|
+
1,0,0,0,609,610,6,48,-1,0,610,627,5,125,0,0,611,612,5,79,0,0,612,
|
|
5590
|
+
613,3,94,47,0,613,614,5,80,0,0,614,627,1,0,0,0,615,616,5,125,0,0,
|
|
5591
|
+
616,617,5,106,0,0,617,627,5,127,0,0,618,619,3,98,49,0,619,620,5,
|
|
5592
|
+
125,0,0,620,627,1,0,0,0,621,622,5,79,0,0,622,623,3,98,49,0,623,624,
|
|
5593
|
+
3,94,47,0,624,625,5,80,0,0,625,627,1,0,0,0,626,609,1,0,0,0,626,611,
|
|
5594
|
+
1,0,0,0,626,615,1,0,0,0,626,618,1,0,0,0,626,621,1,0,0,0,627,673,
|
|
5595
|
+
1,0,0,0,628,629,10,9,0,0,629,631,5,81,0,0,630,632,3,110,55,0,631,
|
|
5596
|
+
630,1,0,0,0,631,632,1,0,0,0,632,634,1,0,0,0,633,635,3,40,20,0,634,
|
|
5597
|
+
633,1,0,0,0,634,635,1,0,0,0,635,636,1,0,0,0,636,672,5,82,0,0,637,
|
|
5598
|
+
638,10,8,0,0,638,639,5,81,0,0,639,641,5,60,0,0,640,642,3,110,55,
|
|
5599
|
+
0,641,640,1,0,0,0,641,642,1,0,0,0,642,643,1,0,0,0,643,644,3,40,20,
|
|
5600
|
+
0,644,645,5,82,0,0,645,672,1,0,0,0,646,647,10,7,0,0,647,648,5,81,
|
|
5601
|
+
0,0,648,649,3,110,55,0,649,650,5,60,0,0,650,651,3,40,20,0,651,652,
|
|
5602
|
+
5,82,0,0,652,672,1,0,0,0,653,654,10,6,0,0,654,656,5,81,0,0,655,657,
|
|
5603
|
+
3,110,55,0,656,655,1,0,0,0,656,657,1,0,0,0,657,658,1,0,0,0,658,659,
|
|
5604
|
+
5,95,0,0,659,672,5,82,0,0,660,661,10,5,0,0,661,662,5,79,0,0,662,
|
|
5605
|
+
663,3,112,56,0,663,664,5,80,0,0,664,672,1,0,0,0,665,666,10,4,0,0,
|
|
5606
|
+
666,668,5,79,0,0,667,669,3,118,59,0,668,667,1,0,0,0,668,669,1,0,
|
|
5607
|
+
0,0,669,670,1,0,0,0,670,672,5,80,0,0,671,628,1,0,0,0,671,637,1,0,
|
|
5608
|
+
0,0,671,646,1,0,0,0,671,653,1,0,0,0,671,660,1,0,0,0,671,665,1,0,
|
|
5609
|
+
0,0,672,675,1,0,0,0,673,671,1,0,0,0,673,674,1,0,0,0,674,97,1,0,0,
|
|
5610
|
+
0,675,673,1,0,0,0,676,677,7,15,0,0,677,99,1,0,0,0,678,679,7,16,0,
|
|
5611
|
+
0,679,681,5,79,0,0,680,682,5,128,0,0,681,680,1,0,0,0,682,683,1,0,
|
|
5612
|
+
0,0,683,681,1,0,0,0,683,684,1,0,0,0,684,685,1,0,0,0,685,688,5,80,
|
|
5613
|
+
0,0,686,688,3,102,51,0,687,678,1,0,0,0,687,686,1,0,0,0,688,101,1,
|
|
5614
|
+
0,0,0,689,690,5,34,0,0,690,691,5,79,0,0,691,692,5,79,0,0,692,693,
|
|
5615
|
+
3,104,52,0,693,694,5,80,0,0,694,695,5,80,0,0,695,103,1,0,0,0,696,
|
|
5616
|
+
698,3,106,53,0,697,696,1,0,0,0,697,698,1,0,0,0,698,705,1,0,0,0,699,
|
|
5617
|
+
701,5,108,0,0,700,702,3,106,53,0,701,700,1,0,0,0,701,702,1,0,0,0,
|
|
5618
|
+
702,704,1,0,0,0,703,699,1,0,0,0,704,707,1,0,0,0,705,703,1,0,0,0,
|
|
5619
|
+
705,706,1,0,0,0,706,105,1,0,0,0,707,705,1,0,0,0,708,714,8,17,0,0,
|
|
5620
|
+
709,711,5,79,0,0,710,712,3,10,5,0,711,710,1,0,0,0,711,712,1,0,0,
|
|
5621
|
+
0,712,713,1,0,0,0,713,715,5,80,0,0,714,709,1,0,0,0,714,715,1,0,0,
|
|
5622
|
+
0,715,107,1,0,0,0,716,718,7,18,0,0,717,719,3,110,55,0,718,717,1,
|
|
5623
|
+
0,0,0,718,719,1,0,0,0,719,721,1,0,0,0,720,716,1,0,0,0,721,722,1,
|
|
5624
|
+
0,0,0,722,720,1,0,0,0,722,723,1,0,0,0,723,109,1,0,0,0,724,726,3,
|
|
5625
|
+
88,44,0,725,724,1,0,0,0,726,727,1,0,0,0,727,725,1,0,0,0,727,728,
|
|
5626
|
+
1,0,0,0,728,111,1,0,0,0,729,732,3,114,57,0,730,731,5,108,0,0,731,
|
|
5627
|
+
733,5,124,0,0,732,730,1,0,0,0,732,733,1,0,0,0,733,113,1,0,0,0,734,
|
|
5628
|
+
739,3,116,58,0,735,736,5,108,0,0,736,738,3,116,58,0,737,735,1,0,
|
|
5629
|
+
0,0,738,741,1,0,0,0,739,737,1,0,0,0,739,740,1,0,0,0,740,115,1,0,
|
|
5630
|
+
0,0,741,739,1,0,0,0,742,743,3,50,25,0,743,744,3,94,47,0,744,750,
|
|
5631
|
+
1,0,0,0,745,747,3,52,26,0,746,748,3,122,61,0,747,746,1,0,0,0,747,
|
|
5632
|
+
748,1,0,0,0,748,750,1,0,0,0,749,742,1,0,0,0,749,745,1,0,0,0,750,
|
|
5633
|
+
117,1,0,0,0,751,756,5,125,0,0,752,753,5,108,0,0,753,755,5,125,0,
|
|
5634
|
+
0,754,752,1,0,0,0,755,758,1,0,0,0,756,754,1,0,0,0,756,757,1,0,0,
|
|
5635
|
+
0,757,119,1,0,0,0,758,756,1,0,0,0,759,761,3,72,36,0,760,762,3,122,
|
|
5636
|
+
61,0,761,760,1,0,0,0,761,762,1,0,0,0,762,121,1,0,0,0,763,775,3,108,
|
|
5637
|
+
54,0,764,766,3,108,54,0,765,764,1,0,0,0,765,766,1,0,0,0,766,767,
|
|
5638
|
+
1,0,0,0,767,771,3,124,62,0,768,770,3,100,50,0,769,768,1,0,0,0,770,
|
|
5639
|
+
773,1,0,0,0,771,769,1,0,0,0,771,772,1,0,0,0,772,775,1,0,0,0,773,
|
|
5640
|
+
771,1,0,0,0,774,763,1,0,0,0,774,765,1,0,0,0,775,123,1,0,0,0,776,
|
|
5641
|
+
777,6,62,-1,0,777,778,5,79,0,0,778,779,3,122,61,0,779,783,5,80,0,
|
|
5642
|
+
0,780,782,3,100,50,0,781,780,1,0,0,0,782,785,1,0,0,0,783,781,1,0,
|
|
5643
|
+
0,0,783,784,1,0,0,0,784,823,1,0,0,0,785,783,1,0,0,0,786,788,5,81,
|
|
5644
|
+
0,0,787,789,3,110,55,0,788,787,1,0,0,0,788,789,1,0,0,0,789,791,1,
|
|
5645
|
+
0,0,0,790,792,3,40,20,0,791,790,1,0,0,0,791,792,1,0,0,0,792,793,
|
|
5646
|
+
1,0,0,0,793,823,5,82,0,0,794,795,5,81,0,0,795,797,5,60,0,0,796,798,
|
|
5647
|
+
3,110,55,0,797,796,1,0,0,0,797,798,1,0,0,0,798,799,1,0,0,0,799,800,
|
|
5648
|
+
3,40,20,0,800,801,5,82,0,0,801,823,1,0,0,0,802,803,5,81,0,0,803,
|
|
5649
|
+
804,3,110,55,0,804,805,5,60,0,0,805,806,3,40,20,0,806,807,5,82,0,
|
|
5650
|
+
0,807,823,1,0,0,0,808,809,5,81,0,0,809,810,5,95,0,0,810,823,5,82,
|
|
5651
|
+
0,0,811,813,5,79,0,0,812,814,3,112,56,0,813,812,1,0,0,0,813,814,
|
|
5652
|
+
1,0,0,0,814,815,1,0,0,0,815,819,5,80,0,0,816,818,3,100,50,0,817,
|
|
5653
|
+
816,1,0,0,0,818,821,1,0,0,0,819,817,1,0,0,0,819,820,1,0,0,0,820,
|
|
5654
|
+
823,1,0,0,0,821,819,1,0,0,0,822,776,1,0,0,0,822,786,1,0,0,0,822,
|
|
5655
|
+
794,1,0,0,0,822,802,1,0,0,0,822,808,1,0,0,0,822,811,1,0,0,0,823,
|
|
5656
|
+
867,1,0,0,0,824,825,10,5,0,0,825,827,5,81,0,0,826,828,3,110,55,0,
|
|
5657
|
+
827,826,1,0,0,0,827,828,1,0,0,0,828,830,1,0,0,0,829,831,3,40,20,
|
|
5658
|
+
0,830,829,1,0,0,0,830,831,1,0,0,0,831,832,1,0,0,0,832,866,5,82,0,
|
|
5659
|
+
0,833,834,10,4,0,0,834,835,5,81,0,0,835,837,5,60,0,0,836,838,3,110,
|
|
5660
|
+
55,0,837,836,1,0,0,0,837,838,1,0,0,0,838,839,1,0,0,0,839,840,3,40,
|
|
5661
|
+
20,0,840,841,5,82,0,0,841,866,1,0,0,0,842,843,10,3,0,0,843,844,5,
|
|
5662
|
+
81,0,0,844,845,3,110,55,0,845,846,5,60,0,0,846,847,3,40,20,0,847,
|
|
5663
|
+
848,5,82,0,0,848,866,1,0,0,0,849,850,10,2,0,0,850,851,5,81,0,0,851,
|
|
5664
|
+
852,5,95,0,0,852,866,5,82,0,0,853,854,10,1,0,0,854,856,5,79,0,0,
|
|
5665
|
+
855,857,3,112,56,0,856,855,1,0,0,0,856,857,1,0,0,0,857,858,1,0,0,
|
|
5666
|
+
0,858,862,5,80,0,0,859,861,3,100,50,0,860,859,1,0,0,0,861,864,1,
|
|
5667
|
+
0,0,0,862,860,1,0,0,0,862,863,1,0,0,0,863,866,1,0,0,0,864,862,1,
|
|
5668
|
+
0,0,0,865,824,1,0,0,0,865,833,1,0,0,0,865,842,1,0,0,0,865,849,1,
|
|
5669
|
+
0,0,0,865,853,1,0,0,0,866,869,1,0,0,0,867,865,1,0,0,0,867,868,1,
|
|
5670
|
+
0,0,0,868,125,1,0,0,0,869,867,1,0,0,0,870,871,5,125,0,0,871,127,
|
|
5671
|
+
1,0,0,0,872,881,3,40,20,0,873,874,5,83,0,0,874,876,3,130,65,0,875,
|
|
5672
|
+
877,5,108,0,0,876,875,1,0,0,0,876,877,1,0,0,0,877,878,1,0,0,0,878,
|
|
5673
|
+
879,5,84,0,0,879,881,1,0,0,0,880,872,1,0,0,0,880,873,1,0,0,0,881,
|
|
5674
|
+
129,1,0,0,0,882,884,3,132,66,0,883,882,1,0,0,0,883,884,1,0,0,0,884,
|
|
5675
|
+
885,1,0,0,0,885,893,3,128,64,0,886,888,5,108,0,0,887,889,3,132,66,
|
|
5676
|
+
0,888,887,1,0,0,0,888,889,1,0,0,0,889,890,1,0,0,0,890,892,3,128,
|
|
5677
|
+
64,0,891,886,1,0,0,0,892,895,1,0,0,0,893,891,1,0,0,0,893,894,1,0,
|
|
5678
|
+
0,0,894,131,1,0,0,0,895,893,1,0,0,0,896,897,3,134,67,0,897,898,5,
|
|
5679
|
+
109,0,0,898,133,1,0,0,0,899,901,3,136,68,0,900,899,1,0,0,0,901,902,
|
|
5680
|
+
1,0,0,0,902,900,1,0,0,0,902,903,1,0,0,0,903,135,1,0,0,0,904,905,
|
|
5681
|
+
5,81,0,0,905,906,3,46,23,0,906,907,5,82,0,0,907,911,1,0,0,0,908,
|
|
5682
|
+
909,5,123,0,0,909,911,5,125,0,0,910,904,1,0,0,0,910,908,1,0,0,0,
|
|
5683
|
+
911,137,1,0,0,0,912,913,5,77,0,0,913,914,5,79,0,0,914,915,3,46,23,
|
|
5684
|
+
0,915,917,5,108,0,0,916,918,5,128,0,0,917,916,1,0,0,0,918,919,1,
|
|
5685
|
+
0,0,0,919,917,1,0,0,0,919,920,1,0,0,0,920,921,1,0,0,0,921,922,5,
|
|
5686
|
+
80,0,0,922,923,5,107,0,0,923,139,1,0,0,0,924,962,3,142,71,0,925,
|
|
5687
|
+
962,3,144,72,0,926,962,3,150,75,0,927,962,3,152,76,0,928,962,3,154,
|
|
5688
|
+
77,0,929,962,3,162,81,0,930,931,7,16,0,0,931,932,7,19,0,0,932,941,
|
|
5689
|
+
5,79,0,0,933,938,3,36,18,0,934,935,5,108,0,0,935,937,3,36,18,0,936,
|
|
5690
|
+
934,1,0,0,0,937,940,1,0,0,0,938,936,1,0,0,0,938,939,1,0,0,0,939,
|
|
5691
|
+
942,1,0,0,0,940,938,1,0,0,0,941,933,1,0,0,0,941,942,1,0,0,0,942,
|
|
5692
|
+
956,1,0,0,0,943,952,5,106,0,0,944,949,3,36,18,0,945,946,5,108,0,
|
|
5693
|
+
0,946,948,3,36,18,0,947,945,1,0,0,0,948,951,1,0,0,0,949,947,1,0,
|
|
5694
|
+
0,0,949,950,1,0,0,0,950,953,1,0,0,0,951,949,1,0,0,0,952,944,1,0,
|
|
5695
|
+
0,0,952,953,1,0,0,0,953,955,1,0,0,0,954,943,1,0,0,0,955,958,1,0,
|
|
5696
|
+
0,0,956,954,1,0,0,0,956,957,1,0,0,0,957,959,1,0,0,0,958,956,1,0,
|
|
5697
|
+
0,0,959,960,5,80,0,0,960,962,5,107,0,0,961,924,1,0,0,0,961,925,1,
|
|
5698
|
+
0,0,0,961,926,1,0,0,0,961,927,1,0,0,0,961,928,1,0,0,0,961,929,1,
|
|
5699
|
+
0,0,0,961,930,1,0,0,0,962,141,1,0,0,0,963,964,5,125,0,0,964,966,
|
|
5700
|
+
5,106,0,0,965,967,3,140,70,0,966,965,1,0,0,0,966,967,1,0,0,0,967,
|
|
5701
|
+
977,1,0,0,0,968,969,5,37,0,0,969,970,3,46,23,0,970,971,5,106,0,0,
|
|
5702
|
+
971,972,3,140,70,0,972,977,1,0,0,0,973,974,5,41,0,0,974,975,5,106,
|
|
5703
|
+
0,0,975,977,3,140,70,0,976,963,1,0,0,0,976,968,1,0,0,0,976,973,1,
|
|
5704
|
+
0,0,0,977,143,1,0,0,0,978,980,5,83,0,0,979,981,3,146,73,0,980,979,
|
|
5705
|
+
1,0,0,0,980,981,1,0,0,0,981,982,1,0,0,0,982,983,5,84,0,0,983,145,
|
|
5706
|
+
1,0,0,0,984,986,3,148,74,0,985,984,1,0,0,0,986,987,1,0,0,0,987,985,
|
|
5707
|
+
1,0,0,0,987,988,1,0,0,0,988,147,1,0,0,0,989,992,3,140,70,0,990,992,
|
|
5708
|
+
3,48,24,0,991,989,1,0,0,0,991,990,1,0,0,0,992,149,1,0,0,0,993,995,
|
|
5709
|
+
3,44,22,0,994,993,1,0,0,0,994,995,1,0,0,0,995,996,1,0,0,0,996,997,
|
|
5710
|
+
5,107,0,0,997,151,1,0,0,0,998,999,5,50,0,0,999,1000,5,79,0,0,1000,
|
|
5711
|
+
1001,3,44,22,0,1001,1002,5,80,0,0,1002,1005,3,140,70,0,1003,1004,
|
|
5712
|
+
5,44,0,0,1004,1006,3,140,70,0,1005,1003,1,0,0,0,1005,1006,1,0,0,
|
|
5713
|
+
0,1006,1014,1,0,0,0,1007,1008,5,62,0,0,1008,1009,5,79,0,0,1009,1010,
|
|
5714
|
+
3,44,22,0,1010,1011,5,80,0,0,1011,1012,3,140,70,0,1012,1014,1,0,
|
|
5715
|
+
0,0,1013,998,1,0,0,0,1013,1007,1,0,0,0,1014,153,1,0,0,0,1015,1016,
|
|
5716
|
+
5,68,0,0,1016,1017,5,79,0,0,1017,1018,3,44,22,0,1018,1019,5,80,0,
|
|
5717
|
+
0,1019,1020,3,140,70,0,1020,1036,1,0,0,0,1021,1022,5,42,0,0,1022,
|
|
5718
|
+
1023,3,140,70,0,1023,1024,5,68,0,0,1024,1025,5,79,0,0,1025,1026,
|
|
5719
|
+
3,44,22,0,1026,1027,5,80,0,0,1027,1028,5,107,0,0,1028,1036,1,0,0,
|
|
5720
|
+
0,1029,1030,5,48,0,0,1030,1031,5,79,0,0,1031,1032,3,156,78,0,1032,
|
|
5721
|
+
1033,5,80,0,0,1033,1034,3,140,70,0,1034,1036,1,0,0,0,1035,1015,1,
|
|
5722
|
+
0,0,0,1035,1021,1,0,0,0,1035,1029,1,0,0,0,1036,155,1,0,0,0,1037,
|
|
5723
|
+
1042,3,158,79,0,1038,1040,3,44,22,0,1039,1038,1,0,0,0,1039,1040,
|
|
5724
|
+
1,0,0,0,1040,1042,1,0,0,0,1041,1037,1,0,0,0,1041,1039,1,0,0,0,1042,
|
|
5725
|
+
1043,1,0,0,0,1043,1045,5,107,0,0,1044,1046,3,160,80,0,1045,1044,
|
|
5726
|
+
1,0,0,0,1045,1046,1,0,0,0,1046,1047,1,0,0,0,1047,1049,5,107,0,0,
|
|
5727
|
+
1048,1050,3,160,80,0,1049,1048,1,0,0,0,1049,1050,1,0,0,0,1050,157,
|
|
5728
|
+
1,0,0,0,1051,1053,3,50,25,0,1052,1054,3,56,28,0,1053,1052,1,0,0,
|
|
5729
|
+
0,1053,1054,1,0,0,0,1054,159,1,0,0,0,1055,1060,3,40,20,0,1056,1057,
|
|
5730
|
+
5,108,0,0,1057,1059,3,40,20,0,1058,1056,1,0,0,0,1059,1062,1,0,0,
|
|
5731
|
+
0,1060,1058,1,0,0,0,1060,1061,1,0,0,0,1061,161,1,0,0,0,1062,1060,
|
|
5732
|
+
1,0,0,0,1063,1064,5,49,0,0,1064,1074,5,125,0,0,1065,1074,5,40,0,
|
|
5733
|
+
0,1066,1074,5,36,0,0,1067,1069,5,56,0,0,1068,1070,3,44,22,0,1069,
|
|
5734
|
+
1068,1,0,0,0,1069,1070,1,0,0,0,1070,1074,1,0,0,0,1071,1072,5,49,
|
|
5735
|
+
0,0,1072,1074,3,12,6,0,1073,1063,1,0,0,0,1073,1065,1,0,0,0,1073,
|
|
5736
|
+
1066,1,0,0,0,1073,1067,1,0,0,0,1073,1071,1,0,0,0,1074,1075,1,0,0,
|
|
5737
|
+
0,1075,1076,5,107,0,0,1076,163,1,0,0,0,1077,1079,3,166,83,0,1078,
|
|
5738
|
+
1077,1,0,0,0,1078,1079,1,0,0,0,1079,1080,1,0,0,0,1080,1081,5,0,0,
|
|
5739
|
+
1,1081,165,1,0,0,0,1082,1084,3,168,84,0,1083,1082,1,0,0,0,1084,1085,
|
|
5740
|
+
1,0,0,0,1085,1083,1,0,0,0,1085,1086,1,0,0,0,1086,167,1,0,0,0,1087,
|
|
5741
|
+
1091,3,170,85,0,1088,1091,3,48,24,0,1089,1091,5,107,0,0,1090,1087,
|
|
5742
|
+
1,0,0,0,1090,1088,1,0,0,0,1090,1089,1,0,0,0,1091,169,1,0,0,0,1092,
|
|
5743
|
+
1094,3,50,25,0,1093,1092,1,0,0,0,1093,1094,1,0,0,0,1094,1095,1,0,
|
|
5744
|
+
0,0,1095,1097,3,94,47,0,1096,1098,3,172,86,0,1097,1096,1,0,0,0,1097,
|
|
5745
|
+
1098,1,0,0,0,1098,1099,1,0,0,0,1099,1100,3,144,72,0,1100,171,1,0,
|
|
5746
|
+
0,0,1101,1103,3,48,24,0,1102,1101,1,0,0,0,1103,1104,1,0,0,0,1104,
|
|
5747
|
+
1102,1,0,0,0,1104,1105,1,0,0,0,1105,173,1,0,0,0,133,179,187,207,
|
|
5748
|
+
221,226,233,241,245,253,260,262,270,276,290,295,304,311,319,327,
|
|
5749
|
+
335,343,351,359,367,375,383,392,400,409,416,421,426,431,438,445,
|
|
5750
|
+
451,487,491,500,507,517,521,524,531,536,540,544,549,555,562,568,
|
|
5751
|
+
589,595,600,606,626,631,634,641,656,668,671,673,683,687,697,701,
|
|
5752
|
+
705,711,714,718,722,727,732,739,747,749,756,761,765,771,774,783,
|
|
5753
|
+
788,791,797,813,819,822,827,830,837,856,862,865,867,876,880,883,
|
|
5754
|
+
888,893,902,910,919,938,941,949,952,956,961,966,976,980,987,991,
|
|
5755
|
+
994,1005,1013,1035,1039,1041,1045,1049,1053,1060,1069,1073,1078,
|
|
5756
|
+
1085,1090,1093,1097,1104
|
|
5681
5757
|
];
|
|
5682
5758
|
|
|
5683
5759
|
private static __ATN: antlr.ATN;
|