1 # $ANTLR 3.0.1 C.g 2010-02-23 09:58:53
4 from antlr3
.compat
import set, frozenset
7 # The file defines the parser for C source files.
9 # THIS FILE IS AUTO-GENENERATED. PLEASE DON NOT MODIFY THIS FILE.
10 # This file is generated by running:
11 # java org.antlr.Tool C.g
13 # Copyright (c) 2009 - 2010, Intel Corporation. All rights reserved.<BR>
15 # This program and the accompanying materials are licensed and made available
16 # under the terms and conditions of the BSD License which accompanies this
17 # distribution. The full text of the license may be found at:
18 # http://opensource.org/licenses/bsd-license.php
20 # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
21 # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
30 # for convenience in actions
31 HIDDEN
= BaseRecognizer
.HIDDEN
46 FLOATING_POINT_LITERAL
=10
59 "<invalid>", "<EOR>", "<DOWN>", "<UP>",
60 "IDENTIFIER", "HEX_LITERAL", "OCTAL_LITERAL", "DECIMAL_LITERAL", "CHARACTER_LITERAL",
61 "STRING_LITERAL", "FLOATING_POINT_LITERAL", "LETTER", "EscapeSequence",
62 "HexDigit", "IntegerTypeSuffix", "Exponent", "FloatTypeSuffix", "OctalEscape",
63 "UnicodeEscape", "WS", "BS", "UnicodeVocabulary", "COMMENT", "LINE_COMMENT",
64 "LINE_COMMAND", "';'", "'typedef'", "','", "'='", "'extern'", "'static'",
65 "'auto'", "'register'", "'STATIC'", "'void'", "'char'", "'short'", "'int'",
66 "'long'", "'float'", "'double'", "'signed'", "'unsigned'", "'{'", "'}'",
67 "'struct'", "'union'", "':'", "'enum'", "'const'", "'volatile'", "'IN'",
68 "'OUT'", "'OPTIONAL'", "'CONST'", "'UNALIGNED'", "'VOLATILE'", "'GLOBAL_REMOVE_IF_UNREFERENCED'",
69 "'EFIAPI'", "'EFI_BOOTSERVICE'", "'EFI_RUNTIMESERVICE'", "'PACKED'",
70 "'('", "')'", "'['", "']'", "'*'", "'...'", "'+'", "'-'", "'/'", "'%'",
71 "'++'", "'--'", "'sizeof'", "'.'", "'->'", "'&'", "'~'", "'!'", "'*='",
72 "'/='", "'%='", "'+='", "'-='", "'<<='", "'>>='", "'&='", "'^='", "'|='",
73 "'?'", "'||'", "'&&'", "'|'", "'^'", "'=='", "'!='", "'<'", "'>'", "'<='",
74 "'>='", "'<<'", "'>>'", "'__asm__'", "'_asm'", "'__asm'", "'case'",
75 "'default'", "'if'", "'else'", "'switch'", "'while'", "'do'", "'for'",
76 "'goto'", "'continue'", "'break'", "'return'"
80 class function_definition_scope(object):
82 self
.ModifierText
= None
87 self
.DeclOffset
= None
88 class postfix_expression_scope(object):
90 self
.FuncCallText
= None
93 class CParser(Parser
):
94 grammarFileName
= "C.g"
95 tokenNames
= tokenNames
97 def __init__(self
, input):
98 Parser
.__init
__(self
, input)
101 self
.function_definition_stack
= []
102 self
.postfix_expression_stack
= []
104 def printTokenInfo(self
, line
, offset
, tokenText
):
105 print str(line
)+ ',' + str(offset
) + ':' + str(tokenText
)
107 def StorePredicateExpression(self
, StartLine
, StartOffset
, EndLine
, EndOffset
, Text
):
108 PredExp
= CodeFragment
.PredicateExpression(Text
, (StartLine
, StartOffset
), (EndLine
, EndOffset
))
109 FileProfile
.PredicateExpressionList
.append(PredExp
)
111 def StoreEnumerationDefinition(self
, StartLine
, StartOffset
, EndLine
, EndOffset
, Text
):
112 EnumDef
= CodeFragment
.EnumerationDefinition(Text
, (StartLine
, StartOffset
), (EndLine
, EndOffset
))
113 FileProfile
.EnumerationDefinitionList
.append(EnumDef
)
115 def StoreStructUnionDefinition(self
, StartLine
, StartOffset
, EndLine
, EndOffset
, Text
):
116 SUDef
= CodeFragment
.StructUnionDefinition(Text
, (StartLine
, StartOffset
), (EndLine
, EndOffset
))
117 FileProfile
.StructUnionDefinitionList
.append(SUDef
)
119 def StoreTypedefDefinition(self
, StartLine
, StartOffset
, EndLine
, EndOffset
, FromText
, ToText
):
120 Tdef
= CodeFragment
.TypedefDefinition(FromText
, ToText
, (StartLine
, StartOffset
), (EndLine
, EndOffset
))
121 FileProfile
.TypedefDefinitionList
.append(Tdef
)
123 def StoreFunctionDefinition(self
, StartLine
, StartOffset
, EndLine
, EndOffset
, ModifierText
, DeclText
, LeftBraceLine
, LeftBraceOffset
, DeclLine
, DeclOffset
):
124 FuncDef
= CodeFragment
.FunctionDefinition(ModifierText
, DeclText
, (StartLine
, StartOffset
), (EndLine
, EndOffset
), (LeftBraceLine
, LeftBraceOffset
), (DeclLine
, DeclOffset
))
125 FileProfile
.FunctionDefinitionList
.append(FuncDef
)
127 def StoreVariableDeclaration(self
, StartLine
, StartOffset
, EndLine
, EndOffset
, ModifierText
, DeclText
):
128 VarDecl
= CodeFragment
.VariableDeclaration(ModifierText
, DeclText
, (StartLine
, StartOffset
), (EndLine
, EndOffset
))
129 FileProfile
.VariableDeclarationList
.append(VarDecl
)
131 def StoreFunctionCalling(self
, StartLine
, StartOffset
, EndLine
, EndOffset
, FuncName
, ParamList
):
132 FuncCall
= CodeFragment
.FunctionCalling(FuncName
, ParamList
, (StartLine
, StartOffset
), (EndLine
, EndOffset
))
133 FileProfile
.FunctionCallingList
.append(FuncCall
)
138 # $ANTLR start translation_unit
139 # C.g:102:1: translation_unit : ( external_declaration )* ;
140 def translation_unit(self
, ):
142 translation_unit_StartIndex
= self
.input.index()
145 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 1):
148 # C.g:103:2: ( ( external_declaration )* )
149 # C.g:103:4: ( external_declaration )*
150 # C.g:103:4: ( external_declaration )*
153 LA1_0
= self
.input.LA(1)
155 if (LA1_0
== IDENTIFIER
or LA1_0
== 26 or (29 <= LA1_0
<= 42) or (45 <= LA1_0
<= 46) or (48 <= LA1_0
<= 62) or LA1_0
== 66) :
160 # C.g:0:0: external_declaration
161 self
.following
.append(self
.FOLLOW_external_declaration_in_translation_unit74
)
162 self
.external_declaration()
176 except RecognitionException
, re
:
178 self
.recover(self
.input, re
)
180 if self
.backtracking
> 0:
181 self
.memoize(self
.input, 1, translation_unit_StartIndex
)
187 # $ANTLR end translation_unit
190 # $ANTLR start external_declaration
191 # C.g:114:1: external_declaration options {k=1; } : ( ( ( declaration_specifiers )? declarator ( declaration )* '{' )=> function_definition | declaration | macro_statement ( ';' )? );
192 def external_declaration(self
, ):
194 external_declaration_StartIndex
= self
.input.index()
197 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 2):
200 # C.g:119:2: ( ( ( declaration_specifiers )? declarator ( declaration )* '{' )=> function_definition | declaration | macro_statement ( ';' )? )
202 LA3_0
= self
.input.LA(1)
204 if ((29 <= LA3_0
<= 33)) :
205 LA3_1
= self
.input.LA(2)
207 if (self
.synpred4()) :
209 elif (self
.synpred5()) :
212 if self
.backtracking
> 0:
216 nvae
= NoViableAltException("114:1: external_declaration options {k=1; } : ( ( ( declaration_specifiers )? declarator ( declaration )* '{' )=> function_definition | declaration | macro_statement ( ';' )? );", 3, 1, self
.input)
221 LA3_2
= self
.input.LA(2)
223 if (self
.synpred4()) :
225 elif (self
.synpred5()) :
228 if self
.backtracking
> 0:
232 nvae
= NoViableAltException("114:1: external_declaration options {k=1; } : ( ( ( declaration_specifiers )? declarator ( declaration )* '{' )=> function_definition | declaration | macro_statement ( ';' )? );", 3, 2, self
.input)
237 LA3_3
= self
.input.LA(2)
239 if (self
.synpred4()) :
241 elif (self
.synpred5()) :
244 if self
.backtracking
> 0:
248 nvae
= NoViableAltException("114:1: external_declaration options {k=1; } : ( ( ( declaration_specifiers )? declarator ( declaration )* '{' )=> function_definition | declaration | macro_statement ( ';' )? );", 3, 3, self
.input)
253 LA3_4
= self
.input.LA(2)
255 if (self
.synpred4()) :
257 elif (self
.synpred5()) :
260 if self
.backtracking
> 0:
264 nvae
= NoViableAltException("114:1: external_declaration options {k=1; } : ( ( ( declaration_specifiers )? declarator ( declaration )* '{' )=> function_definition | declaration | macro_statement ( ';' )? );", 3, 4, self
.input)
269 LA3_5
= self
.input.LA(2)
271 if (self
.synpred4()) :
273 elif (self
.synpred5()) :
276 if self
.backtracking
> 0:
280 nvae
= NoViableAltException("114:1: external_declaration options {k=1; } : ( ( ( declaration_specifiers )? declarator ( declaration )* '{' )=> function_definition | declaration | macro_statement ( ';' )? );", 3, 5, self
.input)
285 LA3_6
= self
.input.LA(2)
287 if (self
.synpred4()) :
289 elif (self
.synpred5()) :
292 if self
.backtracking
> 0:
296 nvae
= NoViableAltException("114:1: external_declaration options {k=1; } : ( ( ( declaration_specifiers )? declarator ( declaration )* '{' )=> function_definition | declaration | macro_statement ( ';' )? );", 3, 6, self
.input)
301 LA3_7
= self
.input.LA(2)
303 if (self
.synpred4()) :
305 elif (self
.synpred5()) :
308 if self
.backtracking
> 0:
312 nvae
= NoViableAltException("114:1: external_declaration options {k=1; } : ( ( ( declaration_specifiers )? declarator ( declaration )* '{' )=> function_definition | declaration | macro_statement ( ';' )? );", 3, 7, self
.input)
317 LA3_8
= self
.input.LA(2)
319 if (self
.synpred4()) :
321 elif (self
.synpred5()) :
324 if self
.backtracking
> 0:
328 nvae
= NoViableAltException("114:1: external_declaration options {k=1; } : ( ( ( declaration_specifiers )? declarator ( declaration )* '{' )=> function_definition | declaration | macro_statement ( ';' )? );", 3, 8, self
.input)
333 LA3_9
= self
.input.LA(2)
335 if (self
.synpred4()) :
337 elif (self
.synpred5()) :
340 if self
.backtracking
> 0:
344 nvae
= NoViableAltException("114:1: external_declaration options {k=1; } : ( ( ( declaration_specifiers )? declarator ( declaration )* '{' )=> function_definition | declaration | macro_statement ( ';' )? );", 3, 9, self
.input)
349 LA3_10
= self
.input.LA(2)
351 if (self
.synpred4()) :
353 elif (self
.synpred5()) :
356 if self
.backtracking
> 0:
360 nvae
= NoViableAltException("114:1: external_declaration options {k=1; } : ( ( ( declaration_specifiers )? declarator ( declaration )* '{' )=> function_definition | declaration | macro_statement ( ';' )? );", 3, 10, self
.input)
364 elif ((45 <= LA3_0
<= 46)) :
365 LA3_11
= self
.input.LA(2)
367 if (self
.synpred4()) :
369 elif (self
.synpred5()) :
372 if self
.backtracking
> 0:
376 nvae
= NoViableAltException("114:1: external_declaration options {k=1; } : ( ( ( declaration_specifiers )? declarator ( declaration )* '{' )=> function_definition | declaration | macro_statement ( ';' )? );", 3, 11, self
.input)
381 LA3_12
= self
.input.LA(2)
383 if (self
.synpred4()) :
385 elif (self
.synpred5()) :
388 if self
.backtracking
> 0:
392 nvae
= NoViableAltException("114:1: external_declaration options {k=1; } : ( ( ( declaration_specifiers )? declarator ( declaration )* '{' )=> function_definition | declaration | macro_statement ( ';' )? );", 3, 12, self
.input)
396 elif (LA3_0
== IDENTIFIER
) :
397 LA3_13
= self
.input.LA(2)
399 if (self
.synpred4()) :
401 elif (self
.synpred5()) :
406 if self
.backtracking
> 0:
410 nvae
= NoViableAltException("114:1: external_declaration options {k=1; } : ( ( ( declaration_specifiers )? declarator ( declaration )* '{' )=> function_definition | declaration | macro_statement ( ';' )? );", 3, 13, self
.input)
415 LA3_14
= self
.input.LA(2)
417 if (self
.synpred4()) :
419 elif (self
.synpred5()) :
422 if self
.backtracking
> 0:
426 nvae
= NoViableAltException("114:1: external_declaration options {k=1; } : ( ( ( declaration_specifiers )? declarator ( declaration )* '{' )=> function_definition | declaration | macro_statement ( ';' )? );", 3, 14, self
.input)
430 elif (LA3_0
== 66) and (self
.synpred4()):
433 LA3_16
= self
.input.LA(2)
435 if (self
.synpred4()) :
437 elif (self
.synpred5()) :
440 if self
.backtracking
> 0:
444 nvae
= NoViableAltException("114:1: external_declaration options {k=1; } : ( ( ( declaration_specifiers )? declarator ( declaration )* '{' )=> function_definition | declaration | macro_statement ( ';' )? );", 3, 16, self
.input)
449 LA3_17
= self
.input.LA(2)
451 if (self
.synpred4()) :
453 elif (self
.synpred5()) :
456 if self
.backtracking
> 0:
460 nvae
= NoViableAltException("114:1: external_declaration options {k=1; } : ( ( ( declaration_specifiers )? declarator ( declaration )* '{' )=> function_definition | declaration | macro_statement ( ';' )? );", 3, 17, self
.input)
464 elif ((49 <= LA3_0
<= 57) or LA3_0
== 61) :
465 LA3_18
= self
.input.LA(2)
467 if (self
.synpred4()) :
469 elif (self
.synpred5()) :
472 if self
.backtracking
> 0:
476 nvae
= NoViableAltException("114:1: external_declaration options {k=1; } : ( ( ( declaration_specifiers )? declarator ( declaration )* '{' )=> function_definition | declaration | macro_statement ( ';' )? );", 3, 18, self
.input)
480 elif (LA3_0
== 62) and (self
.synpred4()):
485 if self
.backtracking
> 0:
489 nvae
= NoViableAltException("114:1: external_declaration options {k=1; } : ( ( ( declaration_specifiers )? declarator ( declaration )* '{' )=> function_definition | declaration | macro_statement ( ';' )? );", 3, 0, self
.input)
494 # C.g:119:4: ( ( declaration_specifiers )? declarator ( declaration )* '{' )=> function_definition
495 self
.following
.append(self
.FOLLOW_function_definition_in_external_declaration113
)
496 self
.function_definition()
503 # C.g:120:4: declaration
504 self
.following
.append(self
.FOLLOW_declaration_in_external_declaration118
)
512 # C.g:121:4: macro_statement ( ';' )?
513 self
.following
.append(self
.FOLLOW_macro_statement_in_external_declaration123
)
514 self
.macro_statement()
518 # C.g:121:20: ( ';' )?
520 LA2_0
= self
.input.LA(1)
526 self
.match(self
.input, 25, self
.FOLLOW_25_in_external_declaration126
)
535 except RecognitionException
, re
:
537 self
.recover(self
.input, re
)
539 if self
.backtracking
> 0:
540 self
.memoize(self
.input, 2, external_declaration_StartIndex
)
546 # $ANTLR end external_declaration
548 class function_definition_return(object):
555 # $ANTLR start function_definition
556 # C.g:126:1: function_definition : (d= declaration_specifiers )? declarator ( ( declaration )+ a= compound_statement | b= compound_statement ) ;
557 def function_definition(self
, ):
558 self
.function_definition_stack
.append(function_definition_scope())
559 retval
= self
.function_definition_return()
560 retval
.start
= self
.input.LT(1)
561 function_definition_StartIndex
= self
.input.index()
572 self
.function_definition_stack
[-1].ModifierText
= ''
573 self
.function_definition_stack
[-1].DeclText
= ''
574 self
.function_definition_stack
[-1].LBLine
= 0
575 self
.function_definition_stack
[-1].LBOffset
= 0
576 self
.function_definition_stack
[-1].DeclLine
= 0
577 self
.function_definition_stack
[-1].DeclOffset
= 0
581 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 3):
584 # C.g:146:2: ( (d= declaration_specifiers )? declarator ( ( declaration )+ a= compound_statement | b= compound_statement ) )
585 # C.g:146:4: (d= declaration_specifiers )? declarator ( ( declaration )+ a= compound_statement | b= compound_statement )
586 # C.g:146:5: (d= declaration_specifiers )?
588 LA4
= self
.input.LA(1)
589 if LA4
== 29 or LA4
== 30 or LA4
== 31 or LA4
== 32 or LA4
== 33 or LA4
== 34 or LA4
== 35 or LA4
== 36 or LA4
== 37 or LA4
== 38 or LA4
== 39 or LA4
== 40 or LA4
== 41 or LA4
== 42 or LA4
== 45 or LA4
== 46 or LA4
== 48 or LA4
== 49 or LA4
== 50 or LA4
== 51 or LA4
== 52 or LA4
== 53 or LA4
== 54 or LA4
== 55 or LA4
== 56 or LA4
== 57 or LA4
== 61:
591 elif LA4
== IDENTIFIER
:
592 LA4
= self
.input.LA(2)
596 LA4_21
= self
.input.LA(3)
598 if (self
.synpred7()) :
601 LA4_22
= self
.input.LA(3)
603 if (self
.synpred7()) :
606 LA4_23
= self
.input.LA(3)
608 if (self
.synpred7()) :
610 elif LA4
== IDENTIFIER
:
611 LA4_24
= self
.input.LA(3)
613 if (self
.synpred7()) :
616 LA4_25
= self
.input.LA(3)
618 if (self
.synpred7()) :
620 elif LA4
== 29 or LA4
== 30 or LA4
== 31 or LA4
== 32 or LA4
== 33:
621 LA4_26
= self
.input.LA(3)
623 if (self
.synpred7()) :
626 LA4_27
= self
.input.LA(3)
628 if (self
.synpred7()) :
631 LA4_28
= self
.input.LA(3)
633 if (self
.synpred7()) :
636 LA4_29
= self
.input.LA(3)
638 if (self
.synpred7()) :
641 LA4_30
= self
.input.LA(3)
643 if (self
.synpred7()) :
646 LA4_31
= self
.input.LA(3)
648 if (self
.synpred7()) :
651 LA4_32
= self
.input.LA(3)
653 if (self
.synpred7()) :
656 LA4_33
= self
.input.LA(3)
658 if (self
.synpred7()) :
661 LA4_34
= self
.input.LA(3)
663 if (self
.synpred7()) :
666 LA4_35
= self
.input.LA(3)
668 if (self
.synpred7()) :
670 elif LA4
== 45 or LA4
== 46:
671 LA4_36
= self
.input.LA(3)
673 if (self
.synpred7()) :
676 LA4_37
= self
.input.LA(3)
678 if (self
.synpred7()) :
680 elif LA4
== 49 or LA4
== 50 or LA4
== 51 or LA4
== 52 or LA4
== 53 or LA4
== 54 or LA4
== 55 or LA4
== 56 or LA4
== 57 or LA4
== 61:
681 LA4_38
= self
.input.LA(3)
683 if (self
.synpred7()) :
686 LA4_14
= self
.input.LA(2)
688 if (self
.synpred7()) :
691 LA4_16
= self
.input.LA(2)
693 if (self
.synpred7()) :
696 LA4_17
= self
.input.LA(2)
698 if (self
.synpred7()) :
701 # C.g:0:0: d= declaration_specifiers
702 self
.following
.append(self
.FOLLOW_declaration_specifiers_in_function_definition157
)
703 d
= self
.declaration_specifiers()
710 self
.following
.append(self
.FOLLOW_declarator_in_function_definition160
)
711 declarator1
= self
.declarator()
715 # C.g:147:3: ( ( declaration )+ a= compound_statement | b= compound_statement )
717 LA6_0
= self
.input.LA(1)
719 if (LA6_0
== IDENTIFIER
or LA6_0
== 26 or (29 <= LA6_0
<= 42) or (45 <= LA6_0
<= 46) or (48 <= LA6_0
<= 61)) :
724 if self
.backtracking
> 0:
728 nvae
= NoViableAltException("147:3: ( ( declaration )+ a= compound_statement | b= compound_statement )", 6, 0, self
.input)
733 # C.g:147:5: ( declaration )+ a= compound_statement
734 # C.g:147:5: ( declaration )+
738 LA5_0
= self
.input.LA(1)
740 if (LA5_0
== IDENTIFIER
or LA5_0
== 26 or (29 <= LA5_0
<= 42) or (45 <= LA5_0
<= 46) or (48 <= LA5_0
<= 61)) :
745 # C.g:0:0: declaration
746 self
.following
.append(self
.FOLLOW_declaration_in_function_definition166
)
757 if self
.backtracking
> 0:
761 eee
= EarlyExitException(5, self
.input)
767 self
.following
.append(self
.FOLLOW_compound_statement_in_function_definition171
)
768 a
= self
.compound_statement()
775 # C.g:148:5: b= compound_statement
776 self
.following
.append(self
.FOLLOW_compound_statement_in_function_definition180
)
777 b
= self
.compound_statement()
784 if self
.backtracking
== 0:
787 self
.function_definition_stack
[-1].ModifierText
= self
.input.toString(d
.start
,d
.stop
)
789 self
.function_definition_stack
[-1].ModifierText
= ''
790 self
.function_definition_stack
[-1].DeclText
= self
.input.toString(declarator1
.start
,declarator1
.stop
)
791 self
.function_definition_stack
[-1].DeclLine
= declarator1
.start
.line
792 self
.function_definition_stack
[-1].DeclOffset
= declarator1
.start
.charPositionInLine
794 self
.function_definition_stack
[-1].LBLine
= a
.start
.line
795 self
.function_definition_stack
[-1].LBOffset
= a
.start
.charPositionInLine
797 self
.function_definition_stack
[-1].LBLine
= b
.start
.line
798 self
.function_definition_stack
[-1].LBOffset
= b
.start
.charPositionInLine
804 retval
.stop
= self
.input.LT(-1)
806 if self
.backtracking
== 0:
808 self
.StoreFunctionDefinition(retval
.start
.line
, retval
.start
.charPositionInLine
, retval
.stop
.line
, retval
.stop
.charPositionInLine
, self
.function_definition_stack
[-1].ModifierText
, self
.function_definition_stack
[-1].DeclText
, self
.function_definition_stack
[-1].LBLine
, self
.function_definition_stack
[-1].LBOffset
, self
.function_definition_stack
[-1].DeclLine
, self
.function_definition_stack
[-1].DeclOffset
)
812 except RecognitionException
, re
:
814 self
.recover(self
.input, re
)
816 if self
.backtracking
> 0:
817 self
.memoize(self
.input, 3, function_definition_StartIndex
)
819 self
.function_definition_stack
.pop()
824 # $ANTLR end function_definition
827 # $ANTLR start declaration
828 # C.g:166:1: declaration : (a= 'typedef' (b= declaration_specifiers )? c= init_declarator_list d= ';' | s= declaration_specifiers (t= init_declarator_list )? e= ';' );
829 def declaration(self
, ):
831 declaration_StartIndex
= self
.input.index()
846 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 4):
849 # C.g:167:2: (a= 'typedef' (b= declaration_specifiers )? c= init_declarator_list d= ';' | s= declaration_specifiers (t= init_declarator_list )? e= ';' )
851 LA9_0
= self
.input.LA(1)
855 elif (LA9_0
== IDENTIFIER
or (29 <= LA9_0
<= 42) or (45 <= LA9_0
<= 46) or (48 <= LA9_0
<= 61)) :
858 if self
.backtracking
> 0:
862 nvae
= NoViableAltException("166:1: declaration : (a= 'typedef' (b= declaration_specifiers )? c= init_declarator_list d= ';' | s= declaration_specifiers (t= init_declarator_list )? e= ';' );", 9, 0, self
.input)
867 # C.g:167:4: a= 'typedef' (b= declaration_specifiers )? c= init_declarator_list d= ';'
869 self
.match(self
.input, 26, self
.FOLLOW_26_in_declaration203
)
872 # C.g:167:17: (b= declaration_specifiers )?
874 LA7
= self
.input.LA(1)
875 if LA7
== 29 or LA7
== 30 or LA7
== 31 or LA7
== 32 or LA7
== 33 or LA7
== 34 or LA7
== 35 or LA7
== 36 or LA7
== 37 or LA7
== 38 or LA7
== 39 or LA7
== 40 or LA7
== 41 or LA7
== 42 or LA7
== 45 or LA7
== 46 or LA7
== 48 or LA7
== 49 or LA7
== 50 or LA7
== 51 or LA7
== 52 or LA7
== 53 or LA7
== 54 or LA7
== 55 or LA7
== 56 or LA7
== 57 or LA7
== 61:
877 elif LA7
== IDENTIFIER
:
878 LA7_13
= self
.input.LA(2)
881 LA7_21
= self
.input.LA(3)
883 if (self
.synpred10()) :
885 elif (LA7_13
== IDENTIFIER
or (29 <= LA7_13
<= 42) or (45 <= LA7_13
<= 46) or (48 <= LA7_13
<= 61) or LA7_13
== 66) :
888 LA7_14
= self
.input.LA(2)
890 if (self
.synpred10()) :
893 LA7_16
= self
.input.LA(2)
895 if (self
.synpred10()) :
898 LA7_17
= self
.input.LA(2)
900 if (self
.synpred10()) :
903 # C.g:0:0: b= declaration_specifiers
904 self
.following
.append(self
.FOLLOW_declaration_specifiers_in_declaration207
)
905 b
= self
.declaration_specifiers()
912 self
.following
.append(self
.FOLLOW_init_declarator_list_in_declaration216
)
913 c
= self
.init_declarator_list()
918 self
.match(self
.input, 25, self
.FOLLOW_25_in_declaration220
)
921 if self
.backtracking
== 0:
924 self
.StoreTypedefDefinition(a
.line
, a
.charPositionInLine
, d
.line
, d
.charPositionInLine
, self
.input.toString(b
.start
,b
.stop
), self
.input.toString(c
.start
,c
.stop
))
926 self
.StoreTypedefDefinition(a
.line
, a
.charPositionInLine
, d
.line
, d
.charPositionInLine
, '', self
.input.toString(c
.start
,c
.stop
))
932 # C.g:175:4: s= declaration_specifiers (t= init_declarator_list )? e= ';'
933 self
.following
.append(self
.FOLLOW_declaration_specifiers_in_declaration234
)
934 s
= self
.declaration_specifiers()
938 # C.g:175:30: (t= init_declarator_list )?
940 LA8_0
= self
.input.LA(1)
942 if (LA8_0
== IDENTIFIER
or (58 <= LA8_0
<= 60) or LA8_0
== 62 or LA8_0
== 66) :
945 # C.g:0:0: t= init_declarator_list
946 self
.following
.append(self
.FOLLOW_init_declarator_list_in_declaration238
)
947 t
= self
.init_declarator_list()
955 self
.match(self
.input, 25, self
.FOLLOW_25_in_declaration243
)
958 if self
.backtracking
== 0:
961 self
.StoreVariableDeclaration(s
.start
.line
, s
.start
.charPositionInLine
, t
.start
.line
, t
.start
.charPositionInLine
, self
.input.toString(s
.start
,s
.stop
), self
.input.toString(t
.start
,t
.stop
))
967 except RecognitionException
, re
:
969 self
.recover(self
.input, re
)
971 if self
.backtracking
> 0:
972 self
.memoize(self
.input, 4, declaration_StartIndex
)
978 # $ANTLR end declaration
980 class declaration_specifiers_return(object):
987 # $ANTLR start declaration_specifiers
988 # C.g:182:1: declaration_specifiers : ( storage_class_specifier | type_specifier | type_qualifier )+ ;
989 def declaration_specifiers(self
, ):
991 retval
= self
.declaration_specifiers_return()
992 retval
.start
= self
.input.LT(1)
993 declaration_specifiers_StartIndex
= self
.input.index()
996 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 5):
999 # C.g:183:2: ( ( storage_class_specifier | type_specifier | type_qualifier )+ )
1000 # C.g:183:6: ( storage_class_specifier | type_specifier | type_qualifier )+
1001 # C.g:183:6: ( storage_class_specifier | type_specifier | type_qualifier )+
1005 LA10
= self
.input.LA(1)
1007 LA10_2
= self
.input.LA(2)
1009 if (self
.synpred15()) :
1014 LA10_3
= self
.input.LA(2)
1016 if (self
.synpred15()) :
1021 LA10_4
= self
.input.LA(2)
1023 if (self
.synpred15()) :
1027 elif LA10
== IDENTIFIER
:
1028 LA10_5
= self
.input.LA(2)
1030 if (self
.synpred14()) :
1035 LA10_9
= self
.input.LA(2)
1037 if (self
.synpred15()) :
1041 elif LA10
== 29 or LA10
== 30 or LA10
== 31 or LA10
== 32 or LA10
== 33:
1043 elif LA10
== 34 or LA10
== 35 or LA10
== 36 or LA10
== 37 or LA10
== 38 or LA10
== 39 or LA10
== 40 or LA10
== 41 or LA10
== 42 or LA10
== 45 or LA10
== 46 or LA10
== 48:
1045 elif LA10
== 49 or LA10
== 50 or LA10
== 51 or LA10
== 52 or LA10
== 54 or LA10
== 55 or LA10
== 56 or LA10
== 57 or LA10
== 61:
1049 # C.g:183:10: storage_class_specifier
1050 self
.following
.append(self
.FOLLOW_storage_class_specifier_in_declaration_specifiers264
)
1051 self
.storage_class_specifier()
1052 self
.following
.pop()
1058 # C.g:184:7: type_specifier
1059 self
.following
.append(self
.FOLLOW_type_specifier_in_declaration_specifiers272
)
1060 self
.type_specifier()
1061 self
.following
.pop()
1067 # C.g:185:13: type_qualifier
1068 self
.following
.append(self
.FOLLOW_type_qualifier_in_declaration_specifiers286
)
1069 self
.type_qualifier()
1070 self
.following
.pop()
1079 if self
.backtracking
> 0:
1083 eee
= EarlyExitException(10, self
.input)
1092 retval
.stop
= self
.input.LT(-1)
1095 except RecognitionException
, re
:
1096 self
.reportError(re
)
1097 self
.recover(self
.input, re
)
1099 if self
.backtracking
> 0:
1100 self
.memoize(self
.input, 5, declaration_specifiers_StartIndex
)
1106 # $ANTLR end declaration_specifiers
1108 class init_declarator_list_return(object):
1115 # $ANTLR start init_declarator_list
1116 # C.g:189:1: init_declarator_list : init_declarator ( ',' init_declarator )* ;
1117 def init_declarator_list(self
, ):
1119 retval
= self
.init_declarator_list_return()
1120 retval
.start
= self
.input.LT(1)
1121 init_declarator_list_StartIndex
= self
.input.index()
1124 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 6):
1127 # C.g:190:2: ( init_declarator ( ',' init_declarator )* )
1128 # C.g:190:4: init_declarator ( ',' init_declarator )*
1129 self
.following
.append(self
.FOLLOW_init_declarator_in_init_declarator_list308
)
1130 self
.init_declarator()
1131 self
.following
.pop()
1134 # C.g:190:20: ( ',' init_declarator )*
1137 LA11_0
= self
.input.LA(1)
1144 # C.g:190:21: ',' init_declarator
1145 self
.match(self
.input, 27, self
.FOLLOW_27_in_init_declarator_list311
)
1148 self
.following
.append(self
.FOLLOW_init_declarator_in_init_declarator_list313
)
1149 self
.init_declarator()
1150 self
.following
.pop()
1162 retval
.stop
= self
.input.LT(-1)
1165 except RecognitionException
, re
:
1166 self
.reportError(re
)
1167 self
.recover(self
.input, re
)
1169 if self
.backtracking
> 0:
1170 self
.memoize(self
.input, 6, init_declarator_list_StartIndex
)
1176 # $ANTLR end init_declarator_list
1179 # $ANTLR start init_declarator
1180 # C.g:193:1: init_declarator : declarator ( '=' initializer )? ;
1181 def init_declarator(self
, ):
1183 init_declarator_StartIndex
= self
.input.index()
1186 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 7):
1189 # C.g:194:2: ( declarator ( '=' initializer )? )
1190 # C.g:194:4: declarator ( '=' initializer )?
1191 self
.following
.append(self
.FOLLOW_declarator_in_init_declarator326
)
1193 self
.following
.pop()
1196 # C.g:194:15: ( '=' initializer )?
1198 LA12_0
= self
.input.LA(1)
1203 # C.g:194:16: '=' initializer
1204 self
.match(self
.input, 28, self
.FOLLOW_28_in_init_declarator329
)
1207 self
.following
.append(self
.FOLLOW_initializer_in_init_declarator331
)
1209 self
.following
.pop()
1219 except RecognitionException
, re
:
1220 self
.reportError(re
)
1221 self
.recover(self
.input, re
)
1223 if self
.backtracking
> 0:
1224 self
.memoize(self
.input, 7, init_declarator_StartIndex
)
1230 # $ANTLR end init_declarator
1233 # $ANTLR start storage_class_specifier
1234 # C.g:197:1: storage_class_specifier : ( 'extern' | 'static' | 'auto' | 'register' | 'STATIC' );
1235 def storage_class_specifier(self
, ):
1237 storage_class_specifier_StartIndex
= self
.input.index()
1240 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 8):
1243 # C.g:198:2: ( 'extern' | 'static' | 'auto' | 'register' | 'STATIC' )
1245 if (29 <= self
.input.LA(1) <= 33):
1246 self
.input.consume();
1247 self
.errorRecovery
= False
1251 if self
.backtracking
> 0:
1255 mse
= MismatchedSetException(None, self
.input)
1256 self
.recoverFromMismatchedSet(
1257 self
.input, mse
, self
.FOLLOW_set_in_storage_class_specifier0
1266 except RecognitionException
, re
:
1267 self
.reportError(re
)
1268 self
.recover(self
.input, re
)
1270 if self
.backtracking
> 0:
1271 self
.memoize(self
.input, 8, storage_class_specifier_StartIndex
)
1277 # $ANTLR end storage_class_specifier
1280 # $ANTLR start type_specifier
1281 # C.g:205:1: type_specifier : ( 'void' | 'char' | 'short' | 'int' | 'long' | 'float' | 'double' | 'signed' | 'unsigned' | s= struct_or_union_specifier | e= enum_specifier | ( IDENTIFIER ( type_qualifier )* declarator )=> type_id );
1282 def type_specifier(self
, ):
1284 type_specifier_StartIndex
= self
.input.index()
1292 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 9):
1295 # C.g:206:2: ( 'void' | 'char' | 'short' | 'int' | 'long' | 'float' | 'double' | 'signed' | 'unsigned' | s= struct_or_union_specifier | e= enum_specifier | ( IDENTIFIER ( type_qualifier )* declarator )=> type_id )
1297 LA13_0
= self
.input.LA(1)
1301 elif (LA13_0
== 35) :
1303 elif (LA13_0
== 36) :
1305 elif (LA13_0
== 37) :
1307 elif (LA13_0
== 38) :
1309 elif (LA13_0
== 39) :
1311 elif (LA13_0
== 40) :
1313 elif (LA13_0
== 41) :
1315 elif (LA13_0
== 42) :
1317 elif ((45 <= LA13_0
<= 46)) :
1319 elif (LA13_0
== 48) :
1321 elif (LA13_0
== IDENTIFIER
) and (self
.synpred34()):
1324 if self
.backtracking
> 0:
1328 nvae
= NoViableAltException("205:1: type_specifier : ( 'void' | 'char' | 'short' | 'int' | 'long' | 'float' | 'double' | 'signed' | 'unsigned' | s= struct_or_union_specifier | e= enum_specifier | ( IDENTIFIER ( type_qualifier )* declarator )=> type_id );", 13, 0, self
.input)
1334 self
.match(self
.input, 34, self
.FOLLOW_34_in_type_specifier376
)
1341 self
.match(self
.input, 35, self
.FOLLOW_35_in_type_specifier381
)
1347 # C.g:208:4: 'short'
1348 self
.match(self
.input, 36, self
.FOLLOW_36_in_type_specifier386
)
1355 self
.match(self
.input, 37, self
.FOLLOW_37_in_type_specifier391
)
1362 self
.match(self
.input, 38, self
.FOLLOW_38_in_type_specifier396
)
1368 # C.g:211:4: 'float'
1369 self
.match(self
.input, 39, self
.FOLLOW_39_in_type_specifier401
)
1375 # C.g:212:4: 'double'
1376 self
.match(self
.input, 40, self
.FOLLOW_40_in_type_specifier406
)
1382 # C.g:213:4: 'signed'
1383 self
.match(self
.input, 41, self
.FOLLOW_41_in_type_specifier411
)
1389 # C.g:214:4: 'unsigned'
1390 self
.match(self
.input, 42, self
.FOLLOW_42_in_type_specifier416
)
1396 # C.g:215:4: s= struct_or_union_specifier
1397 self
.following
.append(self
.FOLLOW_struct_or_union_specifier_in_type_specifier423
)
1398 s
= self
.struct_or_union_specifier()
1399 self
.following
.pop()
1402 if self
.backtracking
== 0:
1404 if s
.stop
is not None:
1405 self
.StoreStructUnionDefinition(s
.start
.line
, s
.start
.charPositionInLine
, s
.stop
.line
, s
.stop
.charPositionInLine
, self
.input.toString(s
.start
,s
.stop
))
1411 # C.g:220:4: e= enum_specifier
1412 self
.following
.append(self
.FOLLOW_enum_specifier_in_type_specifier433
)
1413 e
= self
.enum_specifier()
1414 self
.following
.pop()
1417 if self
.backtracking
== 0:
1419 if e
.stop
is not None:
1420 self
.StoreEnumerationDefinition(e
.start
.line
, e
.start
.charPositionInLine
, e
.stop
.line
, e
.stop
.charPositionInLine
, self
.input.toString(e
.start
,e
.stop
))
1426 # C.g:225:4: ( IDENTIFIER ( type_qualifier )* declarator )=> type_id
1427 self
.following
.append(self
.FOLLOW_type_id_in_type_specifier451
)
1429 self
.following
.pop()
1435 except RecognitionException
, re
:
1436 self
.reportError(re
)
1437 self
.recover(self
.input, re
)
1439 if self
.backtracking
> 0:
1440 self
.memoize(self
.input, 9, type_specifier_StartIndex
)
1446 # $ANTLR end type_specifier
1449 # $ANTLR start type_id
1450 # C.g:228:1: type_id : IDENTIFIER ;
1451 def type_id(self
, ):
1453 type_id_StartIndex
= self
.input.index()
1456 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 10):
1459 # C.g:229:5: ( IDENTIFIER )
1460 # C.g:229:9: IDENTIFIER
1461 self
.match(self
.input, IDENTIFIER
, self
.FOLLOW_IDENTIFIER_in_type_id467
)
1468 except RecognitionException
, re
:
1469 self
.reportError(re
)
1470 self
.recover(self
.input, re
)
1472 if self
.backtracking
> 0:
1473 self
.memoize(self
.input, 10, type_id_StartIndex
)
1479 # $ANTLR end type_id
1481 class struct_or_union_specifier_return(object):
1488 # $ANTLR start struct_or_union_specifier
1489 # C.g:233:1: struct_or_union_specifier options {k=3; } : ( struct_or_union ( IDENTIFIER )? '{' struct_declaration_list '}' | struct_or_union IDENTIFIER );
1490 def struct_or_union_specifier(self
, ):
1492 retval
= self
.struct_or_union_specifier_return()
1493 retval
.start
= self
.input.LT(1)
1494 struct_or_union_specifier_StartIndex
= self
.input.index()
1497 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 11):
1500 # C.g:235:2: ( struct_or_union ( IDENTIFIER )? '{' struct_declaration_list '}' | struct_or_union IDENTIFIER )
1502 LA15_0
= self
.input.LA(1)
1504 if ((45 <= LA15_0
<= 46)) :
1505 LA15_1
= self
.input.LA(2)
1507 if (LA15_1
== IDENTIFIER
) :
1508 LA15_2
= self
.input.LA(3)
1512 elif (LA15_2
== EOF
or LA15_2
== IDENTIFIER
or LA15_2
== 25 or LA15_2
== 27 or (29 <= LA15_2
<= 42) or (45 <= LA15_2
<= 64) or LA15_2
== 66) :
1515 if self
.backtracking
> 0:
1519 nvae
= NoViableAltException("233:1: struct_or_union_specifier options {k=3; } : ( struct_or_union ( IDENTIFIER )? '{' struct_declaration_list '}' | struct_or_union IDENTIFIER );", 15, 2, self
.input)
1523 elif (LA15_1
== 43) :
1526 if self
.backtracking
> 0:
1530 nvae
= NoViableAltException("233:1: struct_or_union_specifier options {k=3; } : ( struct_or_union ( IDENTIFIER )? '{' struct_declaration_list '}' | struct_or_union IDENTIFIER );", 15, 1, self
.input)
1535 if self
.backtracking
> 0:
1539 nvae
= NoViableAltException("233:1: struct_or_union_specifier options {k=3; } : ( struct_or_union ( IDENTIFIER )? '{' struct_declaration_list '}' | struct_or_union IDENTIFIER );", 15, 0, self
.input)
1544 # C.g:235:4: struct_or_union ( IDENTIFIER )? '{' struct_declaration_list '}'
1545 self
.following
.append(self
.FOLLOW_struct_or_union_in_struct_or_union_specifier494
)
1546 self
.struct_or_union()
1547 self
.following
.pop()
1550 # C.g:235:20: ( IDENTIFIER )?
1552 LA14_0
= self
.input.LA(1)
1554 if (LA14_0
== IDENTIFIER
) :
1557 # C.g:0:0: IDENTIFIER
1558 self
.match(self
.input, IDENTIFIER
, self
.FOLLOW_IDENTIFIER_in_struct_or_union_specifier496
)
1564 self
.match(self
.input, 43, self
.FOLLOW_43_in_struct_or_union_specifier499
)
1567 self
.following
.append(self
.FOLLOW_struct_declaration_list_in_struct_or_union_specifier501
)
1568 self
.struct_declaration_list()
1569 self
.following
.pop()
1572 self
.match(self
.input, 44, self
.FOLLOW_44_in_struct_or_union_specifier503
)
1578 # C.g:236:4: struct_or_union IDENTIFIER
1579 self
.following
.append(self
.FOLLOW_struct_or_union_in_struct_or_union_specifier508
)
1580 self
.struct_or_union()
1581 self
.following
.pop()
1584 self
.match(self
.input, IDENTIFIER
, self
.FOLLOW_IDENTIFIER_in_struct_or_union_specifier510
)
1589 retval
.stop
= self
.input.LT(-1)
1592 except RecognitionException
, re
:
1593 self
.reportError(re
)
1594 self
.recover(self
.input, re
)
1596 if self
.backtracking
> 0:
1597 self
.memoize(self
.input, 11, struct_or_union_specifier_StartIndex
)
1603 # $ANTLR end struct_or_union_specifier
1606 # $ANTLR start struct_or_union
1607 # C.g:239:1: struct_or_union : ( 'struct' | 'union' );
1608 def struct_or_union(self
, ):
1610 struct_or_union_StartIndex
= self
.input.index()
1613 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 12):
1616 # C.g:240:2: ( 'struct' | 'union' )
1618 if (45 <= self
.input.LA(1) <= 46):
1619 self
.input.consume();
1620 self
.errorRecovery
= False
1624 if self
.backtracking
> 0:
1628 mse
= MismatchedSetException(None, self
.input)
1629 self
.recoverFromMismatchedSet(
1630 self
.input, mse
, self
.FOLLOW_set_in_struct_or_union0
1639 except RecognitionException
, re
:
1640 self
.reportError(re
)
1641 self
.recover(self
.input, re
)
1643 if self
.backtracking
> 0:
1644 self
.memoize(self
.input, 12, struct_or_union_StartIndex
)
1650 # $ANTLR end struct_or_union
1653 # $ANTLR start struct_declaration_list
1654 # C.g:244:1: struct_declaration_list : ( struct_declaration )+ ;
1655 def struct_declaration_list(self
, ):
1657 struct_declaration_list_StartIndex
= self
.input.index()
1660 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 13):
1663 # C.g:245:2: ( ( struct_declaration )+ )
1664 # C.g:245:4: ( struct_declaration )+
1665 # C.g:245:4: ( struct_declaration )+
1669 LA16_0
= self
.input.LA(1)
1671 if (LA16_0
== IDENTIFIER
or (34 <= LA16_0
<= 42) or (45 <= LA16_0
<= 46) or (48 <= LA16_0
<= 61)) :
1676 # C.g:0:0: struct_declaration
1677 self
.following
.append(self
.FOLLOW_struct_declaration_in_struct_declaration_list537
)
1678 self
.struct_declaration()
1679 self
.following
.pop()
1688 if self
.backtracking
> 0:
1692 eee
= EarlyExitException(16, self
.input)
1702 except RecognitionException
, re
:
1703 self
.reportError(re
)
1704 self
.recover(self
.input, re
)
1706 if self
.backtracking
> 0:
1707 self
.memoize(self
.input, 13, struct_declaration_list_StartIndex
)
1713 # $ANTLR end struct_declaration_list
1716 # $ANTLR start struct_declaration
1717 # C.g:248:1: struct_declaration : specifier_qualifier_list struct_declarator_list ';' ;
1718 def struct_declaration(self
, ):
1720 struct_declaration_StartIndex
= self
.input.index()
1723 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 14):
1726 # C.g:249:2: ( specifier_qualifier_list struct_declarator_list ';' )
1727 # C.g:249:4: specifier_qualifier_list struct_declarator_list ';'
1728 self
.following
.append(self
.FOLLOW_specifier_qualifier_list_in_struct_declaration549
)
1729 self
.specifier_qualifier_list()
1730 self
.following
.pop()
1733 self
.following
.append(self
.FOLLOW_struct_declarator_list_in_struct_declaration551
)
1734 self
.struct_declarator_list()
1735 self
.following
.pop()
1738 self
.match(self
.input, 25, self
.FOLLOW_25_in_struct_declaration553
)
1745 except RecognitionException
, re
:
1746 self
.reportError(re
)
1747 self
.recover(self
.input, re
)
1749 if self
.backtracking
> 0:
1750 self
.memoize(self
.input, 14, struct_declaration_StartIndex
)
1756 # $ANTLR end struct_declaration
1759 # $ANTLR start specifier_qualifier_list
1760 # C.g:252:1: specifier_qualifier_list : ( type_qualifier | type_specifier )+ ;
1761 def specifier_qualifier_list(self
, ):
1763 specifier_qualifier_list_StartIndex
= self
.input.index()
1766 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 15):
1769 # C.g:253:2: ( ( type_qualifier | type_specifier )+ )
1770 # C.g:253:4: ( type_qualifier | type_specifier )+
1771 # C.g:253:4: ( type_qualifier | type_specifier )+
1775 LA17
= self
.input.LA(1)
1777 LA17_2
= self
.input.LA(2)
1779 if (self
.synpred39()) :
1784 LA17_3
= self
.input.LA(2)
1786 if (self
.synpred39()) :
1791 LA17_4
= self
.input.LA(2)
1793 if (self
.synpred39()) :
1797 elif LA17
== IDENTIFIER
:
1798 LA17
= self
.input.LA(2)
1799 if LA17
== EOF
or LA17
== IDENTIFIER
or LA17
== 34 or LA17
== 35 or LA17
== 36 or LA17
== 37 or LA17
== 38 or LA17
== 39 or LA17
== 40 or LA17
== 41 or LA17
== 42 or LA17
== 45 or LA17
== 46 or LA17
== 48 or LA17
== 49 or LA17
== 50 or LA17
== 51 or LA17
== 52 or LA17
== 53 or LA17
== 54 or LA17
== 55 or LA17
== 56 or LA17
== 57 or LA17
== 58 or LA17
== 59 or LA17
== 60 or LA17
== 61 or LA17
== 63 or LA17
== 66:
1802 LA17_94
= self
.input.LA(3)
1804 if (self
.synpred40()) :
1809 LA17_95
= self
.input.LA(3)
1811 if (self
.synpred40()) :
1816 LA17_96
= self
.input.LA(3)
1818 if (self
.synpred40()) :
1823 elif LA17
== 49 or LA17
== 50 or LA17
== 51 or LA17
== 52 or LA17
== 53 or LA17
== 54 or LA17
== 55 or LA17
== 56 or LA17
== 57 or LA17
== 61:
1825 elif LA17
== 34 or LA17
== 35 or LA17
== 36 or LA17
== 37 or LA17
== 38 or LA17
== 39 or LA17
== 40 or LA17
== 41 or LA17
== 42 or LA17
== 45 or LA17
== 46 or LA17
== 48:
1829 # C.g:253:6: type_qualifier
1830 self
.following
.append(self
.FOLLOW_type_qualifier_in_specifier_qualifier_list566
)
1831 self
.type_qualifier()
1832 self
.following
.pop()
1838 # C.g:253:23: type_specifier
1839 self
.following
.append(self
.FOLLOW_type_specifier_in_specifier_qualifier_list570
)
1840 self
.type_specifier()
1841 self
.following
.pop()
1850 if self
.backtracking
> 0:
1854 eee
= EarlyExitException(17, self
.input)
1864 except RecognitionException
, re
:
1865 self
.reportError(re
)
1866 self
.recover(self
.input, re
)
1868 if self
.backtracking
> 0:
1869 self
.memoize(self
.input, 15, specifier_qualifier_list_StartIndex
)
1875 # $ANTLR end specifier_qualifier_list
1878 # $ANTLR start struct_declarator_list
1879 # C.g:256:1: struct_declarator_list : struct_declarator ( ',' struct_declarator )* ;
1880 def struct_declarator_list(self
, ):
1882 struct_declarator_list_StartIndex
= self
.input.index()
1885 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 16):
1888 # C.g:257:2: ( struct_declarator ( ',' struct_declarator )* )
1889 # C.g:257:4: struct_declarator ( ',' struct_declarator )*
1890 self
.following
.append(self
.FOLLOW_struct_declarator_in_struct_declarator_list584
)
1891 self
.struct_declarator()
1892 self
.following
.pop()
1895 # C.g:257:22: ( ',' struct_declarator )*
1898 LA18_0
= self
.input.LA(1)
1905 # C.g:257:23: ',' struct_declarator
1906 self
.match(self
.input, 27, self
.FOLLOW_27_in_struct_declarator_list587
)
1909 self
.following
.append(self
.FOLLOW_struct_declarator_in_struct_declarator_list589
)
1910 self
.struct_declarator()
1911 self
.following
.pop()
1924 except RecognitionException
, re
:
1925 self
.reportError(re
)
1926 self
.recover(self
.input, re
)
1928 if self
.backtracking
> 0:
1929 self
.memoize(self
.input, 16, struct_declarator_list_StartIndex
)
1935 # $ANTLR end struct_declarator_list
1938 # $ANTLR start struct_declarator
1939 # C.g:260:1: struct_declarator : ( declarator ( ':' constant_expression )? | ':' constant_expression );
1940 def struct_declarator(self
, ):
1942 struct_declarator_StartIndex
= self
.input.index()
1945 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 17):
1948 # C.g:261:2: ( declarator ( ':' constant_expression )? | ':' constant_expression )
1950 LA20_0
= self
.input.LA(1)
1952 if (LA20_0
== IDENTIFIER
or (58 <= LA20_0
<= 60) or LA20_0
== 62 or LA20_0
== 66) :
1954 elif (LA20_0
== 47) :
1957 if self
.backtracking
> 0:
1961 nvae
= NoViableAltException("260:1: struct_declarator : ( declarator ( ':' constant_expression )? | ':' constant_expression );", 20, 0, self
.input)
1966 # C.g:261:4: declarator ( ':' constant_expression )?
1967 self
.following
.append(self
.FOLLOW_declarator_in_struct_declarator602
)
1969 self
.following
.pop()
1972 # C.g:261:15: ( ':' constant_expression )?
1974 LA19_0
= self
.input.LA(1)
1979 # C.g:261:16: ':' constant_expression
1980 self
.match(self
.input, 47, self
.FOLLOW_47_in_struct_declarator605
)
1983 self
.following
.append(self
.FOLLOW_constant_expression_in_struct_declarator607
)
1984 self
.constant_expression()
1985 self
.following
.pop()
1994 # C.g:262:4: ':' constant_expression
1995 self
.match(self
.input, 47, self
.FOLLOW_47_in_struct_declarator614
)
1998 self
.following
.append(self
.FOLLOW_constant_expression_in_struct_declarator616
)
1999 self
.constant_expression()
2000 self
.following
.pop()
2006 except RecognitionException
, re
:
2007 self
.reportError(re
)
2008 self
.recover(self
.input, re
)
2010 if self
.backtracking
> 0:
2011 self
.memoize(self
.input, 17, struct_declarator_StartIndex
)
2017 # $ANTLR end struct_declarator
2019 class enum_specifier_return(object):
2026 # $ANTLR start enum_specifier
2027 # C.g:265:1: enum_specifier options {k=3; } : ( 'enum' '{' enumerator_list ( ',' )? '}' | 'enum' IDENTIFIER '{' enumerator_list ( ',' )? '}' | 'enum' IDENTIFIER );
2028 def enum_specifier(self
, ):
2030 retval
= self
.enum_specifier_return()
2031 retval
.start
= self
.input.LT(1)
2032 enum_specifier_StartIndex
= self
.input.index()
2035 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 18):
2038 # C.g:267:2: ( 'enum' '{' enumerator_list ( ',' )? '}' | 'enum' IDENTIFIER '{' enumerator_list ( ',' )? '}' | 'enum' IDENTIFIER )
2040 LA23_0
= self
.input.LA(1)
2043 LA23_1
= self
.input.LA(2)
2045 if (LA23_1
== IDENTIFIER
) :
2046 LA23_2
= self
.input.LA(3)
2050 elif (LA23_2
== EOF
or LA23_2
== IDENTIFIER
or LA23_2
== 25 or LA23_2
== 27 or (29 <= LA23_2
<= 42) or (45 <= LA23_2
<= 64) or LA23_2
== 66) :
2053 if self
.backtracking
> 0:
2057 nvae
= NoViableAltException("265:1: enum_specifier options {k=3; } : ( 'enum' '{' enumerator_list ( ',' )? '}' | 'enum' IDENTIFIER '{' enumerator_list ( ',' )? '}' | 'enum' IDENTIFIER );", 23, 2, self
.input)
2061 elif (LA23_1
== 43) :
2064 if self
.backtracking
> 0:
2068 nvae
= NoViableAltException("265:1: enum_specifier options {k=3; } : ( 'enum' '{' enumerator_list ( ',' )? '}' | 'enum' IDENTIFIER '{' enumerator_list ( ',' )? '}' | 'enum' IDENTIFIER );", 23, 1, self
.input)
2073 if self
.backtracking
> 0:
2077 nvae
= NoViableAltException("265:1: enum_specifier options {k=3; } : ( 'enum' '{' enumerator_list ( ',' )? '}' | 'enum' IDENTIFIER '{' enumerator_list ( ',' )? '}' | 'enum' IDENTIFIER );", 23, 0, self
.input)
2082 # C.g:267:4: 'enum' '{' enumerator_list ( ',' )? '}'
2083 self
.match(self
.input, 48, self
.FOLLOW_48_in_enum_specifier634
)
2086 self
.match(self
.input, 43, self
.FOLLOW_43_in_enum_specifier636
)
2089 self
.following
.append(self
.FOLLOW_enumerator_list_in_enum_specifier638
)
2090 self
.enumerator_list()
2091 self
.following
.pop()
2094 # C.g:267:31: ( ',' )?
2096 LA21_0
= self
.input.LA(1)
2102 self
.match(self
.input, 27, self
.FOLLOW_27_in_enum_specifier640
)
2108 self
.match(self
.input, 44, self
.FOLLOW_44_in_enum_specifier643
)
2114 # C.g:268:4: 'enum' IDENTIFIER '{' enumerator_list ( ',' )? '}'
2115 self
.match(self
.input, 48, self
.FOLLOW_48_in_enum_specifier648
)
2118 self
.match(self
.input, IDENTIFIER
, self
.FOLLOW_IDENTIFIER_in_enum_specifier650
)
2121 self
.match(self
.input, 43, self
.FOLLOW_43_in_enum_specifier652
)
2124 self
.following
.append(self
.FOLLOW_enumerator_list_in_enum_specifier654
)
2125 self
.enumerator_list()
2126 self
.following
.pop()
2129 # C.g:268:42: ( ',' )?
2131 LA22_0
= self
.input.LA(1)
2137 self
.match(self
.input, 27, self
.FOLLOW_27_in_enum_specifier656
)
2143 self
.match(self
.input, 44, self
.FOLLOW_44_in_enum_specifier659
)
2149 # C.g:269:4: 'enum' IDENTIFIER
2150 self
.match(self
.input, 48, self
.FOLLOW_48_in_enum_specifier664
)
2153 self
.match(self
.input, IDENTIFIER
, self
.FOLLOW_IDENTIFIER_in_enum_specifier666
)
2158 retval
.stop
= self
.input.LT(-1)
2161 except RecognitionException
, re
:
2162 self
.reportError(re
)
2163 self
.recover(self
.input, re
)
2165 if self
.backtracking
> 0:
2166 self
.memoize(self
.input, 18, enum_specifier_StartIndex
)
2172 # $ANTLR end enum_specifier
2175 # $ANTLR start enumerator_list
2176 # C.g:272:1: enumerator_list : enumerator ( ',' enumerator )* ;
2177 def enumerator_list(self
, ):
2179 enumerator_list_StartIndex
= self
.input.index()
2182 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 19):
2185 # C.g:273:2: ( enumerator ( ',' enumerator )* )
2186 # C.g:273:4: enumerator ( ',' enumerator )*
2187 self
.following
.append(self
.FOLLOW_enumerator_in_enumerator_list677
)
2189 self
.following
.pop()
2192 # C.g:273:15: ( ',' enumerator )*
2195 LA24_0
= self
.input.LA(1)
2198 LA24_1
= self
.input.LA(2)
2200 if (LA24_1
== IDENTIFIER
) :
2207 # C.g:273:16: ',' enumerator
2208 self
.match(self
.input, 27, self
.FOLLOW_27_in_enumerator_list680
)
2211 self
.following
.append(self
.FOLLOW_enumerator_in_enumerator_list682
)
2213 self
.following
.pop()
2226 except RecognitionException
, re
:
2227 self
.reportError(re
)
2228 self
.recover(self
.input, re
)
2230 if self
.backtracking
> 0:
2231 self
.memoize(self
.input, 19, enumerator_list_StartIndex
)
2237 # $ANTLR end enumerator_list
2240 # $ANTLR start enumerator
2241 # C.g:276:1: enumerator : IDENTIFIER ( '=' constant_expression )? ;
2242 def enumerator(self
, ):
2244 enumerator_StartIndex
= self
.input.index()
2247 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 20):
2250 # C.g:277:2: ( IDENTIFIER ( '=' constant_expression )? )
2251 # C.g:277:4: IDENTIFIER ( '=' constant_expression )?
2252 self
.match(self
.input, IDENTIFIER
, self
.FOLLOW_IDENTIFIER_in_enumerator695
)
2255 # C.g:277:15: ( '=' constant_expression )?
2257 LA25_0
= self
.input.LA(1)
2262 # C.g:277:16: '=' constant_expression
2263 self
.match(self
.input, 28, self
.FOLLOW_28_in_enumerator698
)
2266 self
.following
.append(self
.FOLLOW_constant_expression_in_enumerator700
)
2267 self
.constant_expression()
2268 self
.following
.pop()
2278 except RecognitionException
, re
:
2279 self
.reportError(re
)
2280 self
.recover(self
.input, re
)
2282 if self
.backtracking
> 0:
2283 self
.memoize(self
.input, 20, enumerator_StartIndex
)
2289 # $ANTLR end enumerator
2292 # $ANTLR start type_qualifier
2293 # C.g:280:1: type_qualifier : ( 'const' | 'volatile' | 'IN' | 'OUT' | 'OPTIONAL' | 'CONST' | 'UNALIGNED' | 'VOLATILE' | 'GLOBAL_REMOVE_IF_UNREFERENCED' | 'EFIAPI' | 'EFI_BOOTSERVICE' | 'EFI_RUNTIMESERVICE' | 'PACKED' );
2294 def type_qualifier(self
, ):
2296 type_qualifier_StartIndex
= self
.input.index()
2299 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 21):
2302 # C.g:281:2: ( 'const' | 'volatile' | 'IN' | 'OUT' | 'OPTIONAL' | 'CONST' | 'UNALIGNED' | 'VOLATILE' | 'GLOBAL_REMOVE_IF_UNREFERENCED' | 'EFIAPI' | 'EFI_BOOTSERVICE' | 'EFI_RUNTIMESERVICE' | 'PACKED' )
2304 if (49 <= self
.input.LA(1) <= 61):
2305 self
.input.consume();
2306 self
.errorRecovery
= False
2310 if self
.backtracking
> 0:
2314 mse
= MismatchedSetException(None, self
.input)
2315 self
.recoverFromMismatchedSet(
2316 self
.input, mse
, self
.FOLLOW_set_in_type_qualifier0
2325 except RecognitionException
, re
:
2326 self
.reportError(re
)
2327 self
.recover(self
.input, re
)
2329 if self
.backtracking
> 0:
2330 self
.memoize(self
.input, 21, type_qualifier_StartIndex
)
2336 # $ANTLR end type_qualifier
2338 class declarator_return(object):
2345 # $ANTLR start declarator
2346 # C.g:296:1: declarator : ( ( pointer )? ( 'EFIAPI' )? ( 'EFI_BOOTSERVICE' )? ( 'EFI_RUNTIMESERVICE' )? direct_declarator | pointer );
2347 def declarator(self
, ):
2349 retval
= self
.declarator_return()
2350 retval
.start
= self
.input.LT(1)
2351 declarator_StartIndex
= self
.input.index()
2354 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 22):
2357 # C.g:297:2: ( ( pointer )? ( 'EFIAPI' )? ( 'EFI_BOOTSERVICE' )? ( 'EFI_RUNTIMESERVICE' )? direct_declarator | pointer )
2359 LA30_0
= self
.input.LA(1)
2362 LA30_1
= self
.input.LA(2)
2364 if (self
.synpred66()) :
2369 if self
.backtracking
> 0:
2373 nvae
= NoViableAltException("296:1: declarator : ( ( pointer )? ( 'EFIAPI' )? ( 'EFI_BOOTSERVICE' )? ( 'EFI_RUNTIMESERVICE' )? direct_declarator | pointer );", 30, 1, self
.input)
2377 elif (LA30_0
== IDENTIFIER
or (58 <= LA30_0
<= 60) or LA30_0
== 62) :
2380 if self
.backtracking
> 0:
2384 nvae
= NoViableAltException("296:1: declarator : ( ( pointer )? ( 'EFIAPI' )? ( 'EFI_BOOTSERVICE' )? ( 'EFI_RUNTIMESERVICE' )? direct_declarator | pointer );", 30, 0, self
.input)
2389 # C.g:297:4: ( pointer )? ( 'EFIAPI' )? ( 'EFI_BOOTSERVICE' )? ( 'EFI_RUNTIMESERVICE' )? direct_declarator
2390 # C.g:297:4: ( pointer )?
2392 LA26_0
= self
.input.LA(1)
2398 self
.following
.append(self
.FOLLOW_pointer_in_declarator784
)
2400 self
.following
.pop()
2406 # C.g:297:13: ( 'EFIAPI' )?
2408 LA27_0
= self
.input.LA(1)
2413 # C.g:297:14: 'EFIAPI'
2414 self
.match(self
.input, 58, self
.FOLLOW_58_in_declarator788
)
2420 # C.g:297:25: ( 'EFI_BOOTSERVICE' )?
2422 LA28_0
= self
.input.LA(1)
2427 # C.g:297:26: 'EFI_BOOTSERVICE'
2428 self
.match(self
.input, 59, self
.FOLLOW_59_in_declarator793
)
2434 # C.g:297:46: ( 'EFI_RUNTIMESERVICE' )?
2436 LA29_0
= self
.input.LA(1)
2441 # C.g:297:47: 'EFI_RUNTIMESERVICE'
2442 self
.match(self
.input, 60, self
.FOLLOW_60_in_declarator798
)
2448 self
.following
.append(self
.FOLLOW_direct_declarator_in_declarator802
)
2449 self
.direct_declarator()
2450 self
.following
.pop()
2456 # C.g:299:4: pointer
2457 self
.following
.append(self
.FOLLOW_pointer_in_declarator808
)
2459 self
.following
.pop()
2464 retval
.stop
= self
.input.LT(-1)
2467 except RecognitionException
, re
:
2468 self
.reportError(re
)
2469 self
.recover(self
.input, re
)
2471 if self
.backtracking
> 0:
2472 self
.memoize(self
.input, 22, declarator_StartIndex
)
2478 # $ANTLR end declarator
2481 # $ANTLR start direct_declarator
2482 # C.g:302:1: direct_declarator : ( IDENTIFIER ( declarator_suffix )* | '(' ( 'EFIAPI' )? declarator ')' ( declarator_suffix )+ );
2483 def direct_declarator(self
, ):
2485 direct_declarator_StartIndex
= self
.input.index()
2488 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 23):
2491 # C.g:303:2: ( IDENTIFIER ( declarator_suffix )* | '(' ( 'EFIAPI' )? declarator ')' ( declarator_suffix )+ )
2493 LA34_0
= self
.input.LA(1)
2495 if (LA34_0
== IDENTIFIER
) :
2497 elif (LA34_0
== 62) :
2500 if self
.backtracking
> 0:
2504 nvae
= NoViableAltException("302:1: direct_declarator : ( IDENTIFIER ( declarator_suffix )* | '(' ( 'EFIAPI' )? declarator ')' ( declarator_suffix )+ );", 34, 0, self
.input)
2509 # C.g:303:4: IDENTIFIER ( declarator_suffix )*
2510 self
.match(self
.input, IDENTIFIER
, self
.FOLLOW_IDENTIFIER_in_direct_declarator819
)
2513 # C.g:303:15: ( declarator_suffix )*
2516 LA31_0
= self
.input.LA(1)
2519 LA31
= self
.input.LA(2)
2521 LA31_30
= self
.input.LA(3)
2523 if (self
.synpred67()) :
2528 LA31_31
= self
.input.LA(3)
2530 if (self
.synpred67()) :
2535 LA31_32
= self
.input.LA(3)
2537 if (self
.synpred67()) :
2542 LA31_33
= self
.input.LA(3)
2544 if (self
.synpred67()) :
2549 LA31_34
= self
.input.LA(3)
2551 if (self
.synpred67()) :
2555 elif LA31
== IDENTIFIER
:
2556 LA31_35
= self
.input.LA(3)
2558 if (self
.synpred67()) :
2562 elif LA31
== 29 or LA31
== 30 or LA31
== 31 or LA31
== 32 or LA31
== 33:
2563 LA31_37
= self
.input.LA(3)
2565 if (self
.synpred67()) :
2570 LA31_38
= self
.input.LA(3)
2572 if (self
.synpred67()) :
2577 LA31_39
= self
.input.LA(3)
2579 if (self
.synpred67()) :
2584 LA31_40
= self
.input.LA(3)
2586 if (self
.synpred67()) :
2591 LA31_41
= self
.input.LA(3)
2593 if (self
.synpred67()) :
2598 LA31_42
= self
.input.LA(3)
2600 if (self
.synpred67()) :
2605 LA31_43
= self
.input.LA(3)
2607 if (self
.synpred67()) :
2612 LA31_44
= self
.input.LA(3)
2614 if (self
.synpred67()) :
2619 LA31_45
= self
.input.LA(3)
2621 if (self
.synpred67()) :
2626 LA31_46
= self
.input.LA(3)
2628 if (self
.synpred67()) :
2632 elif LA31
== 45 or LA31
== 46:
2633 LA31_47
= self
.input.LA(3)
2635 if (self
.synpred67()) :
2640 LA31_48
= self
.input.LA(3)
2642 if (self
.synpred67()) :
2646 elif LA31
== 49 or LA31
== 50 or LA31
== 51 or LA31
== 52 or LA31
== 53 or LA31
== 54 or LA31
== 55 or LA31
== 56 or LA31
== 57 or LA31
== 61:
2647 LA31_49
= self
.input.LA(3)
2649 if (self
.synpred67()) :
2654 elif (LA31_0
== 64) :
2655 LA31
= self
.input.LA(2)
2657 LA31_51
= self
.input.LA(3)
2659 if (self
.synpred67()) :
2664 LA31_52
= self
.input.LA(3)
2666 if (self
.synpred67()) :
2670 elif LA31
== IDENTIFIER
:
2671 LA31_53
= self
.input.LA(3)
2673 if (self
.synpred67()) :
2677 elif LA31
== HEX_LITERAL
:
2678 LA31_54
= self
.input.LA(3)
2680 if (self
.synpred67()) :
2684 elif LA31
== OCTAL_LITERAL
:
2685 LA31_55
= self
.input.LA(3)
2687 if (self
.synpred67()) :
2691 elif LA31
== DECIMAL_LITERAL
:
2692 LA31_56
= self
.input.LA(3)
2694 if (self
.synpred67()) :
2698 elif LA31
== CHARACTER_LITERAL
:
2699 LA31_57
= self
.input.LA(3)
2701 if (self
.synpred67()) :
2705 elif LA31
== STRING_LITERAL
:
2706 LA31_58
= self
.input.LA(3)
2708 if (self
.synpred67()) :
2712 elif LA31
== FLOATING_POINT_LITERAL
:
2713 LA31_59
= self
.input.LA(3)
2715 if (self
.synpred67()) :
2720 LA31_60
= self
.input.LA(3)
2722 if (self
.synpred67()) :
2727 LA31_61
= self
.input.LA(3)
2729 if (self
.synpred67()) :
2733 elif LA31
== 66 or LA31
== 68 or LA31
== 69 or LA31
== 77 or LA31
== 78 or LA31
== 79:
2734 LA31_62
= self
.input.LA(3)
2736 if (self
.synpred67()) :
2741 LA31_63
= self
.input.LA(3)
2743 if (self
.synpred67()) :
2751 # C.g:0:0: declarator_suffix
2752 self
.following
.append(self
.FOLLOW_declarator_suffix_in_direct_declarator821
)
2753 self
.declarator_suffix()
2754 self
.following
.pop()
2766 # C.g:304:4: '(' ( 'EFIAPI' )? declarator ')' ( declarator_suffix )+
2767 self
.match(self
.input, 62, self
.FOLLOW_62_in_direct_declarator827
)
2770 # C.g:304:8: ( 'EFIAPI' )?
2772 LA32_0
= self
.input.LA(1)
2775 LA32_1
= self
.input.LA(2)
2777 if (self
.synpred69()) :
2780 # C.g:304:9: 'EFIAPI'
2781 self
.match(self
.input, 58, self
.FOLLOW_58_in_direct_declarator830
)
2787 self
.following
.append(self
.FOLLOW_declarator_in_direct_declarator834
)
2789 self
.following
.pop()
2792 self
.match(self
.input, 63, self
.FOLLOW_63_in_direct_declarator836
)
2795 # C.g:304:35: ( declarator_suffix )+
2799 LA33_0
= self
.input.LA(1)
2802 LA33
= self
.input.LA(2)
2804 LA33_30
= self
.input.LA(3)
2806 if (self
.synpred70()) :
2811 LA33_31
= self
.input.LA(3)
2813 if (self
.synpred70()) :
2818 LA33_32
= self
.input.LA(3)
2820 if (self
.synpred70()) :
2825 LA33_33
= self
.input.LA(3)
2827 if (self
.synpred70()) :
2832 LA33_34
= self
.input.LA(3)
2834 if (self
.synpred70()) :
2838 elif LA33
== IDENTIFIER
:
2839 LA33_35
= self
.input.LA(3)
2841 if (self
.synpred70()) :
2845 elif LA33
== 29 or LA33
== 30 or LA33
== 31 or LA33
== 32 or LA33
== 33:
2846 LA33_37
= self
.input.LA(3)
2848 if (self
.synpred70()) :
2853 LA33_38
= self
.input.LA(3)
2855 if (self
.synpred70()) :
2860 LA33_39
= self
.input.LA(3)
2862 if (self
.synpred70()) :
2867 LA33_40
= self
.input.LA(3)
2869 if (self
.synpred70()) :
2874 LA33_41
= self
.input.LA(3)
2876 if (self
.synpred70()) :
2881 LA33_42
= self
.input.LA(3)
2883 if (self
.synpred70()) :
2888 LA33_43
= self
.input.LA(3)
2890 if (self
.synpred70()) :
2895 LA33_44
= self
.input.LA(3)
2897 if (self
.synpred70()) :
2902 LA33_45
= self
.input.LA(3)
2904 if (self
.synpred70()) :
2909 LA33_46
= self
.input.LA(3)
2911 if (self
.synpred70()) :
2915 elif LA33
== 45 or LA33
== 46:
2916 LA33_47
= self
.input.LA(3)
2918 if (self
.synpred70()) :
2923 LA33_48
= self
.input.LA(3)
2925 if (self
.synpred70()) :
2929 elif LA33
== 49 or LA33
== 50 or LA33
== 51 or LA33
== 52 or LA33
== 53 or LA33
== 54 or LA33
== 55 or LA33
== 56 or LA33
== 57 or LA33
== 61:
2930 LA33_49
= self
.input.LA(3)
2932 if (self
.synpred70()) :
2937 elif (LA33_0
== 64) :
2938 LA33
= self
.input.LA(2)
2940 LA33_51
= self
.input.LA(3)
2942 if (self
.synpred70()) :
2947 LA33_52
= self
.input.LA(3)
2949 if (self
.synpred70()) :
2953 elif LA33
== IDENTIFIER
:
2954 LA33_53
= self
.input.LA(3)
2956 if (self
.synpred70()) :
2960 elif LA33
== HEX_LITERAL
:
2961 LA33_54
= self
.input.LA(3)
2963 if (self
.synpred70()) :
2967 elif LA33
== OCTAL_LITERAL
:
2968 LA33_55
= self
.input.LA(3)
2970 if (self
.synpred70()) :
2974 elif LA33
== DECIMAL_LITERAL
:
2975 LA33_56
= self
.input.LA(3)
2977 if (self
.synpred70()) :
2981 elif LA33
== CHARACTER_LITERAL
:
2982 LA33_57
= self
.input.LA(3)
2984 if (self
.synpred70()) :
2988 elif LA33
== STRING_LITERAL
:
2989 LA33_58
= self
.input.LA(3)
2991 if (self
.synpred70()) :
2995 elif LA33
== FLOATING_POINT_LITERAL
:
2996 LA33_59
= self
.input.LA(3)
2998 if (self
.synpred70()) :
3003 LA33_60
= self
.input.LA(3)
3005 if (self
.synpred70()) :
3010 LA33_61
= self
.input.LA(3)
3012 if (self
.synpred70()) :
3016 elif LA33
== 66 or LA33
== 68 or LA33
== 69 or LA33
== 77 or LA33
== 78 or LA33
== 79:
3017 LA33_62
= self
.input.LA(3)
3019 if (self
.synpred70()) :
3024 LA33_63
= self
.input.LA(3)
3026 if (self
.synpred70()) :
3034 # C.g:0:0: declarator_suffix
3035 self
.following
.append(self
.FOLLOW_declarator_suffix_in_direct_declarator838
)
3036 self
.declarator_suffix()
3037 self
.following
.pop()
3046 if self
.backtracking
> 0:
3050 eee
= EarlyExitException(33, self
.input)
3059 except RecognitionException
, re
:
3060 self
.reportError(re
)
3061 self
.recover(self
.input, re
)
3063 if self
.backtracking
> 0:
3064 self
.memoize(self
.input, 23, direct_declarator_StartIndex
)
3070 # $ANTLR end direct_declarator
3073 # $ANTLR start declarator_suffix
3074 # C.g:307:1: declarator_suffix : ( '[' constant_expression ']' | '[' ']' | '(' parameter_type_list ')' | '(' identifier_list ')' | '(' ')' );
3075 def declarator_suffix(self
, ):
3077 declarator_suffix_StartIndex
= self
.input.index()
3080 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 24):
3083 # C.g:308:2: ( '[' constant_expression ']' | '[' ']' | '(' parameter_type_list ')' | '(' identifier_list ')' | '(' ')' )
3085 LA35_0
= self
.input.LA(1)
3088 LA35_1
= self
.input.LA(2)
3092 elif ((IDENTIFIER
<= LA35_1
<= FLOATING_POINT_LITERAL
) or LA35_1
== 62 or LA35_1
== 66 or (68 <= LA35_1
<= 69) or (72 <= LA35_1
<= 74) or (77 <= LA35_1
<= 79)) :
3095 if self
.backtracking
> 0:
3099 nvae
= NoViableAltException("307:1: declarator_suffix : ( '[' constant_expression ']' | '[' ']' | '(' parameter_type_list ')' | '(' identifier_list ')' | '(' ')' );", 35, 1, self
.input)
3103 elif (LA35_0
== 62) :
3104 LA35
= self
.input.LA(2)
3107 elif LA35
== 29 or LA35
== 30 or LA35
== 31 or LA35
== 32 or LA35
== 33 or LA35
== 34 or LA35
== 35 or LA35
== 36 or LA35
== 37 or LA35
== 38 or LA35
== 39 or LA35
== 40 or LA35
== 41 or LA35
== 42 or LA35
== 45 or LA35
== 46 or LA35
== 48 or LA35
== 49 or LA35
== 50 or LA35
== 51 or LA35
== 52 or LA35
== 53 or LA35
== 54 or LA35
== 55 or LA35
== 56 or LA35
== 57 or LA35
== 58 or LA35
== 59 or LA35
== 60 or LA35
== 61 or LA35
== 66:
3109 elif LA35
== IDENTIFIER
:
3110 LA35_29
= self
.input.LA(3)
3112 if (self
.synpred73()) :
3114 elif (self
.synpred74()) :
3117 if self
.backtracking
> 0:
3121 nvae
= NoViableAltException("307:1: declarator_suffix : ( '[' constant_expression ']' | '[' ']' | '(' parameter_type_list ')' | '(' identifier_list ')' | '(' ')' );", 35, 29, self
.input)
3126 if self
.backtracking
> 0:
3130 nvae
= NoViableAltException("307:1: declarator_suffix : ( '[' constant_expression ']' | '[' ']' | '(' parameter_type_list ')' | '(' identifier_list ')' | '(' ')' );", 35, 2, self
.input)
3135 if self
.backtracking
> 0:
3139 nvae
= NoViableAltException("307:1: declarator_suffix : ( '[' constant_expression ']' | '[' ']' | '(' parameter_type_list ')' | '(' identifier_list ')' | '(' ')' );", 35, 0, self
.input)
3144 # C.g:308:6: '[' constant_expression ']'
3145 self
.match(self
.input, 64, self
.FOLLOW_64_in_declarator_suffix852
)
3148 self
.following
.append(self
.FOLLOW_constant_expression_in_declarator_suffix854
)
3149 self
.constant_expression()
3150 self
.following
.pop()
3153 self
.match(self
.input, 65, self
.FOLLOW_65_in_declarator_suffix856
)
3159 # C.g:309:9: '[' ']'
3160 self
.match(self
.input, 64, self
.FOLLOW_64_in_declarator_suffix866
)
3163 self
.match(self
.input, 65, self
.FOLLOW_65_in_declarator_suffix868
)
3169 # C.g:310:9: '(' parameter_type_list ')'
3170 self
.match(self
.input, 62, self
.FOLLOW_62_in_declarator_suffix878
)
3173 self
.following
.append(self
.FOLLOW_parameter_type_list_in_declarator_suffix880
)
3174 self
.parameter_type_list()
3175 self
.following
.pop()
3178 self
.match(self
.input, 63, self
.FOLLOW_63_in_declarator_suffix882
)
3184 # C.g:311:9: '(' identifier_list ')'
3185 self
.match(self
.input, 62, self
.FOLLOW_62_in_declarator_suffix892
)
3188 self
.following
.append(self
.FOLLOW_identifier_list_in_declarator_suffix894
)
3189 self
.identifier_list()
3190 self
.following
.pop()
3193 self
.match(self
.input, 63, self
.FOLLOW_63_in_declarator_suffix896
)
3199 # C.g:312:9: '(' ')'
3200 self
.match(self
.input, 62, self
.FOLLOW_62_in_declarator_suffix906
)
3203 self
.match(self
.input, 63, self
.FOLLOW_63_in_declarator_suffix908
)
3209 except RecognitionException
, re
:
3210 self
.reportError(re
)
3211 self
.recover(self
.input, re
)
3213 if self
.backtracking
> 0:
3214 self
.memoize(self
.input, 24, declarator_suffix_StartIndex
)
3220 # $ANTLR end declarator_suffix
3223 # $ANTLR start pointer
3224 # C.g:315:1: pointer : ( '*' ( type_qualifier )+ ( pointer )? | '*' pointer | '*' );
3225 def pointer(self
, ):
3227 pointer_StartIndex
= self
.input.index()
3230 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 25):
3233 # C.g:316:2: ( '*' ( type_qualifier )+ ( pointer )? | '*' pointer | '*' )
3235 LA38_0
= self
.input.LA(1)
3238 LA38
= self
.input.LA(2)
3240 LA38_2
= self
.input.LA(3)
3242 if (self
.synpred78()) :
3247 if self
.backtracking
> 0:
3251 nvae
= NoViableAltException("315:1: pointer : ( '*' ( type_qualifier )+ ( pointer )? | '*' pointer | '*' );", 38, 2, self
.input)
3256 LA38_3
= self
.input.LA(3)
3258 if (self
.synpred77()) :
3263 if self
.backtracking
> 0:
3267 nvae
= NoViableAltException("315:1: pointer : ( '*' ( type_qualifier )+ ( pointer )? | '*' pointer | '*' );", 38, 3, self
.input)
3272 LA38_4
= self
.input.LA(3)
3274 if (self
.synpred77()) :
3279 if self
.backtracking
> 0:
3283 nvae
= NoViableAltException("315:1: pointer : ( '*' ( type_qualifier )+ ( pointer )? | '*' pointer | '*' );", 38, 4, self
.input)
3288 LA38_5
= self
.input.LA(3)
3290 if (self
.synpred77()) :
3295 if self
.backtracking
> 0:
3299 nvae
= NoViableAltException("315:1: pointer : ( '*' ( type_qualifier )+ ( pointer )? | '*' pointer | '*' );", 38, 5, self
.input)
3303 elif LA38
== EOF
or LA38
== IDENTIFIER
or LA38
== 25 or LA38
== 26 or LA38
== 27 or LA38
== 28 or LA38
== 29 or LA38
== 30 or LA38
== 31 or LA38
== 32 or LA38
== 33 or LA38
== 34 or LA38
== 35 or LA38
== 36 or LA38
== 37 or LA38
== 38 or LA38
== 39 or LA38
== 40 or LA38
== 41 or LA38
== 42 or LA38
== 43 or LA38
== 45 or LA38
== 46 or LA38
== 47 or LA38
== 48 or LA38
== 62 or LA38
== 63 or LA38
== 64:
3306 LA38_21
= self
.input.LA(3)
3308 if (self
.synpred77()) :
3313 if self
.backtracking
> 0:
3317 nvae
= NoViableAltException("315:1: pointer : ( '*' ( type_qualifier )+ ( pointer )? | '*' pointer | '*' );", 38, 21, self
.input)
3321 elif LA38
== 49 or LA38
== 50 or LA38
== 51 or LA38
== 52 or LA38
== 54 or LA38
== 55 or LA38
== 56 or LA38
== 57 or LA38
== 61:
3322 LA38_29
= self
.input.LA(3)
3324 if (self
.synpred77()) :
3329 if self
.backtracking
> 0:
3333 nvae
= NoViableAltException("315:1: pointer : ( '*' ( type_qualifier )+ ( pointer )? | '*' pointer | '*' );", 38, 29, self
.input)
3338 if self
.backtracking
> 0:
3342 nvae
= NoViableAltException("315:1: pointer : ( '*' ( type_qualifier )+ ( pointer )? | '*' pointer | '*' );", 38, 1, self
.input)
3347 if self
.backtracking
> 0:
3351 nvae
= NoViableAltException("315:1: pointer : ( '*' ( type_qualifier )+ ( pointer )? | '*' pointer | '*' );", 38, 0, self
.input)
3356 # C.g:316:4: '*' ( type_qualifier )+ ( pointer )?
3357 self
.match(self
.input, 66, self
.FOLLOW_66_in_pointer919
)
3360 # C.g:316:8: ( type_qualifier )+
3364 LA36
= self
.input.LA(1)
3366 LA36_2
= self
.input.LA(2)
3368 if (self
.synpred75()) :
3373 LA36_3
= self
.input.LA(2)
3375 if (self
.synpred75()) :
3380 LA36_4
= self
.input.LA(2)
3382 if (self
.synpred75()) :
3387 LA36_20
= self
.input.LA(2)
3389 if (self
.synpred75()) :
3393 elif LA36
== 49 or LA36
== 50 or LA36
== 51 or LA36
== 52 or LA36
== 54 or LA36
== 55 or LA36
== 56 or LA36
== 57 or LA36
== 61:
3394 LA36_28
= self
.input.LA(2)
3396 if (self
.synpred75()) :
3402 # C.g:0:0: type_qualifier
3403 self
.following
.append(self
.FOLLOW_type_qualifier_in_pointer921
)
3404 self
.type_qualifier()
3405 self
.following
.pop()
3414 if self
.backtracking
> 0:
3418 eee
= EarlyExitException(36, self
.input)
3424 # C.g:316:24: ( pointer )?
3426 LA37_0
= self
.input.LA(1)
3429 LA37_1
= self
.input.LA(2)
3431 if (self
.synpred76()) :
3435 self
.following
.append(self
.FOLLOW_pointer_in_pointer924
)
3437 self
.following
.pop()
3446 # C.g:317:4: '*' pointer
3447 self
.match(self
.input, 66, self
.FOLLOW_66_in_pointer930
)
3450 self
.following
.append(self
.FOLLOW_pointer_in_pointer932
)
3452 self
.following
.pop()
3459 self
.match(self
.input, 66, self
.FOLLOW_66_in_pointer937
)
3465 except RecognitionException
, re
:
3466 self
.reportError(re
)
3467 self
.recover(self
.input, re
)
3469 if self
.backtracking
> 0:
3470 self
.memoize(self
.input, 25, pointer_StartIndex
)
3476 # $ANTLR end pointer
3479 # $ANTLR start parameter_type_list
3480 # C.g:321:1: parameter_type_list : parameter_list ( ',' ( 'OPTIONAL' )? '...' )? ;
3481 def parameter_type_list(self
, ):
3483 parameter_type_list_StartIndex
= self
.input.index()
3486 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 26):
3489 # C.g:322:2: ( parameter_list ( ',' ( 'OPTIONAL' )? '...' )? )
3490 # C.g:322:4: parameter_list ( ',' ( 'OPTIONAL' )? '...' )?
3491 self
.following
.append(self
.FOLLOW_parameter_list_in_parameter_type_list948
)
3492 self
.parameter_list()
3493 self
.following
.pop()
3496 # C.g:322:19: ( ',' ( 'OPTIONAL' )? '...' )?
3498 LA40_0
= self
.input.LA(1)
3503 # C.g:322:20: ',' ( 'OPTIONAL' )? '...'
3504 self
.match(self
.input, 27, self
.FOLLOW_27_in_parameter_type_list951
)
3507 # C.g:322:24: ( 'OPTIONAL' )?
3509 LA39_0
= self
.input.LA(1)
3514 # C.g:322:25: 'OPTIONAL'
3515 self
.match(self
.input, 53, self
.FOLLOW_53_in_parameter_type_list954
)
3521 self
.match(self
.input, 67, self
.FOLLOW_67_in_parameter_type_list958
)
3531 except RecognitionException
, re
:
3532 self
.reportError(re
)
3533 self
.recover(self
.input, re
)
3535 if self
.backtracking
> 0:
3536 self
.memoize(self
.input, 26, parameter_type_list_StartIndex
)
3542 # $ANTLR end parameter_type_list
3545 # $ANTLR start parameter_list
3546 # C.g:325:1: parameter_list : parameter_declaration ( ',' ( 'OPTIONAL' )? parameter_declaration )* ;
3547 def parameter_list(self
, ):
3549 parameter_list_StartIndex
= self
.input.index()
3552 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 27):
3555 # C.g:326:2: ( parameter_declaration ( ',' ( 'OPTIONAL' )? parameter_declaration )* )
3556 # C.g:326:4: parameter_declaration ( ',' ( 'OPTIONAL' )? parameter_declaration )*
3557 self
.following
.append(self
.FOLLOW_parameter_declaration_in_parameter_list971
)
3558 self
.parameter_declaration()
3559 self
.following
.pop()
3562 # C.g:326:26: ( ',' ( 'OPTIONAL' )? parameter_declaration )*
3565 LA42_0
= self
.input.LA(1)
3568 LA42_1
= self
.input.LA(2)
3571 LA42_3
= self
.input.LA(3)
3573 if (self
.synpred82()) :
3577 elif (LA42_1
== IDENTIFIER
or (29 <= LA42_1
<= 42) or (45 <= LA42_1
<= 46) or (48 <= LA42_1
<= 52) or (54 <= LA42_1
<= 61) or LA42_1
== 66) :
3584 # C.g:326:27: ',' ( 'OPTIONAL' )? parameter_declaration
3585 self
.match(self
.input, 27, self
.FOLLOW_27_in_parameter_list974
)
3588 # C.g:326:31: ( 'OPTIONAL' )?
3590 LA41_0
= self
.input.LA(1)
3593 LA41_1
= self
.input.LA(2)
3595 if (self
.synpred81()) :
3598 # C.g:326:32: 'OPTIONAL'
3599 self
.match(self
.input, 53, self
.FOLLOW_53_in_parameter_list977
)
3605 self
.following
.append(self
.FOLLOW_parameter_declaration_in_parameter_list981
)
3606 self
.parameter_declaration()
3607 self
.following
.pop()
3620 except RecognitionException
, re
:
3621 self
.reportError(re
)
3622 self
.recover(self
.input, re
)
3624 if self
.backtracking
> 0:
3625 self
.memoize(self
.input, 27, parameter_list_StartIndex
)
3631 # $ANTLR end parameter_list
3634 # $ANTLR start parameter_declaration
3635 # C.g:329:1: parameter_declaration : ( declaration_specifiers ( declarator | abstract_declarator )* ( 'OPTIONAL' )? | ( pointer )* IDENTIFIER );
3636 def parameter_declaration(self
, ):
3638 parameter_declaration_StartIndex
= self
.input.index()
3641 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 28):
3644 # C.g:330:2: ( declaration_specifiers ( declarator | abstract_declarator )* ( 'OPTIONAL' )? | ( pointer )* IDENTIFIER )
3646 LA46
= self
.input.LA(1)
3647 if LA46
== 29 or LA46
== 30 or LA46
== 31 or LA46
== 32 or LA46
== 33 or LA46
== 34 or LA46
== 35 or LA46
== 36 or LA46
== 37 or LA46
== 38 or LA46
== 39 or LA46
== 40 or LA46
== 41 or LA46
== 42 or LA46
== 45 or LA46
== 46 or LA46
== 48 or LA46
== 49 or LA46
== 50 or LA46
== 51 or LA46
== 52 or LA46
== 53 or LA46
== 54 or LA46
== 55 or LA46
== 56 or LA46
== 57 or LA46
== 58 or LA46
== 59 or LA46
== 60 or LA46
== 61:
3649 elif LA46
== IDENTIFIER
:
3650 LA46_13
= self
.input.LA(2)
3652 if (self
.synpred86()) :
3657 if self
.backtracking
> 0:
3661 nvae
= NoViableAltException("329:1: parameter_declaration : ( declaration_specifiers ( declarator | abstract_declarator )* ( 'OPTIONAL' )? | ( pointer )* IDENTIFIER );", 46, 13, self
.input)
3668 if self
.backtracking
> 0:
3672 nvae
= NoViableAltException("329:1: parameter_declaration : ( declaration_specifiers ( declarator | abstract_declarator )* ( 'OPTIONAL' )? | ( pointer )* IDENTIFIER );", 46, 0, self
.input)
3677 # C.g:330:4: declaration_specifiers ( declarator | abstract_declarator )* ( 'OPTIONAL' )?
3678 self
.following
.append(self
.FOLLOW_declaration_specifiers_in_parameter_declaration994
)
3679 self
.declaration_specifiers()
3680 self
.following
.pop()
3683 # C.g:330:27: ( declarator | abstract_declarator )*
3686 LA43
= self
.input.LA(1)
3688 LA43_5
= self
.input.LA(2)
3690 if (self
.synpred83()) :
3692 elif (self
.synpred84()) :
3696 elif LA43
== IDENTIFIER
or LA43
== 58 or LA43
== 59 or LA43
== 60:
3699 LA43
= self
.input.LA(2)
3700 if LA43
== 29 or LA43
== 30 or LA43
== 31 or LA43
== 32 or LA43
== 33 or LA43
== 34 or LA43
== 35 or LA43
== 36 or LA43
== 37 or LA43
== 38 or LA43
== 39 or LA43
== 40 or LA43
== 41 or LA43
== 42 or LA43
== 45 or LA43
== 46 or LA43
== 48 or LA43
== 49 or LA43
== 50 or LA43
== 51 or LA43
== 52 or LA43
== 53 or LA43
== 54 or LA43
== 55 or LA43
== 56 or LA43
== 57 or LA43
== 61 or LA43
== 63 or LA43
== 64:
3702 elif LA43
== IDENTIFIER
:
3703 LA43_37
= self
.input.LA(3)
3705 if (self
.synpred83()) :
3707 elif (self
.synpred84()) :
3712 LA43_38
= self
.input.LA(3)
3714 if (self
.synpred83()) :
3716 elif (self
.synpred84()) :
3721 LA43_39
= self
.input.LA(3)
3723 if (self
.synpred83()) :
3725 elif (self
.synpred84()) :
3730 LA43_40
= self
.input.LA(3)
3732 if (self
.synpred83()) :
3734 elif (self
.synpred84()) :
3739 LA43_41
= self
.input.LA(3)
3741 if (self
.synpred83()) :
3743 elif (self
.synpred84()) :
3748 LA43_43
= self
.input.LA(3)
3750 if (self
.synpred83()) :
3752 elif (self
.synpred84()) :
3761 # C.g:330:28: declarator
3762 self
.following
.append(self
.FOLLOW_declarator_in_parameter_declaration997
)
3764 self
.following
.pop()
3770 # C.g:330:39: abstract_declarator
3771 self
.following
.append(self
.FOLLOW_abstract_declarator_in_parameter_declaration999
)
3772 self
.abstract_declarator()
3773 self
.following
.pop()
3782 # C.g:330:61: ( 'OPTIONAL' )?
3784 LA44_0
= self
.input.LA(1)
3789 # C.g:330:62: 'OPTIONAL'
3790 self
.match(self
.input, 53, self
.FOLLOW_53_in_parameter_declaration1004
)
3799 # C.g:332:4: ( pointer )* IDENTIFIER
3800 # C.g:332:4: ( pointer )*
3803 LA45_0
= self
.input.LA(1)
3811 self
.following
.append(self
.FOLLOW_pointer_in_parameter_declaration1013
)
3813 self
.following
.pop()
3822 self
.match(self
.input, IDENTIFIER
, self
.FOLLOW_IDENTIFIER_in_parameter_declaration1016
)
3828 except RecognitionException
, re
:
3829 self
.reportError(re
)
3830 self
.recover(self
.input, re
)
3832 if self
.backtracking
> 0:
3833 self
.memoize(self
.input, 28, parameter_declaration_StartIndex
)
3839 # $ANTLR end parameter_declaration
3842 # $ANTLR start identifier_list
3843 # C.g:335:1: identifier_list : IDENTIFIER ( ',' IDENTIFIER )* ;
3844 def identifier_list(self
, ):
3846 identifier_list_StartIndex
= self
.input.index()
3849 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 29):
3852 # C.g:336:2: ( IDENTIFIER ( ',' IDENTIFIER )* )
3853 # C.g:336:4: IDENTIFIER ( ',' IDENTIFIER )*
3854 self
.match(self
.input, IDENTIFIER
, self
.FOLLOW_IDENTIFIER_in_identifier_list1027
)
3857 # C.g:337:2: ( ',' IDENTIFIER )*
3860 LA47_0
= self
.input.LA(1)
3867 # C.g:337:3: ',' IDENTIFIER
3868 self
.match(self
.input, 27, self
.FOLLOW_27_in_identifier_list1031
)
3871 self
.match(self
.input, IDENTIFIER
, self
.FOLLOW_IDENTIFIER_in_identifier_list1033
)
3884 except RecognitionException
, re
:
3885 self
.reportError(re
)
3886 self
.recover(self
.input, re
)
3888 if self
.backtracking
> 0:
3889 self
.memoize(self
.input, 29, identifier_list_StartIndex
)
3895 # $ANTLR end identifier_list
3898 # $ANTLR start type_name
3899 # C.g:340:1: type_name : ( specifier_qualifier_list ( abstract_declarator )? | type_id );
3900 def type_name(self
, ):
3902 type_name_StartIndex
= self
.input.index()
3905 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 30):
3908 # C.g:341:2: ( specifier_qualifier_list ( abstract_declarator )? | type_id )
3910 LA49_0
= self
.input.LA(1)
3912 if ((34 <= LA49_0
<= 42) or (45 <= LA49_0
<= 46) or (48 <= LA49_0
<= 61)) :
3914 elif (LA49_0
== IDENTIFIER
) :
3915 LA49_13
= self
.input.LA(2)
3917 if (self
.synpred90()) :
3922 if self
.backtracking
> 0:
3926 nvae
= NoViableAltException("340:1: type_name : ( specifier_qualifier_list ( abstract_declarator )? | type_id );", 49, 13, self
.input)
3931 if self
.backtracking
> 0:
3935 nvae
= NoViableAltException("340:1: type_name : ( specifier_qualifier_list ( abstract_declarator )? | type_id );", 49, 0, self
.input)
3940 # C.g:341:4: specifier_qualifier_list ( abstract_declarator )?
3941 self
.following
.append(self
.FOLLOW_specifier_qualifier_list_in_type_name1046
)
3942 self
.specifier_qualifier_list()
3943 self
.following
.pop()
3946 # C.g:341:29: ( abstract_declarator )?
3948 LA48_0
= self
.input.LA(1)
3950 if (LA48_0
== 62 or LA48_0
== 64 or LA48_0
== 66) :
3953 # C.g:0:0: abstract_declarator
3954 self
.following
.append(self
.FOLLOW_abstract_declarator_in_type_name1048
)
3955 self
.abstract_declarator()
3956 self
.following
.pop()
3965 # C.g:342:4: type_id
3966 self
.following
.append(self
.FOLLOW_type_id_in_type_name1054
)
3968 self
.following
.pop()
3974 except RecognitionException
, re
:
3975 self
.reportError(re
)
3976 self
.recover(self
.input, re
)
3978 if self
.backtracking
> 0:
3979 self
.memoize(self
.input, 30, type_name_StartIndex
)
3985 # $ANTLR end type_name
3988 # $ANTLR start abstract_declarator
3989 # C.g:345:1: abstract_declarator : ( pointer ( direct_abstract_declarator )? | direct_abstract_declarator );
3990 def abstract_declarator(self
, ):
3992 abstract_declarator_StartIndex
= self
.input.index()
3995 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 31):
3998 # C.g:346:2: ( pointer ( direct_abstract_declarator )? | direct_abstract_declarator )
4000 LA51_0
= self
.input.LA(1)
4004 elif (LA51_0
== 62 or LA51_0
== 64) :
4007 if self
.backtracking
> 0:
4011 nvae
= NoViableAltException("345:1: abstract_declarator : ( pointer ( direct_abstract_declarator )? | direct_abstract_declarator );", 51, 0, self
.input)
4016 # C.g:346:4: pointer ( direct_abstract_declarator )?
4017 self
.following
.append(self
.FOLLOW_pointer_in_abstract_declarator1065
)
4019 self
.following
.pop()
4022 # C.g:346:12: ( direct_abstract_declarator )?
4024 LA50_0
= self
.input.LA(1)
4027 LA50
= self
.input.LA(2)
4029 LA50_12
= self
.input.LA(3)
4031 if (self
.synpred91()) :
4034 LA50_13
= self
.input.LA(3)
4036 if (self
.synpred91()) :
4039 LA50_14
= self
.input.LA(3)
4041 if (self
.synpred91()) :
4044 LA50_15
= self
.input.LA(3)
4046 if (self
.synpred91()) :
4049 LA50_16
= self
.input.LA(3)
4051 if (self
.synpred91()) :
4053 elif LA50
== IDENTIFIER
:
4054 LA50_17
= self
.input.LA(3)
4056 if (self
.synpred91()) :
4059 LA50_18
= self
.input.LA(3)
4061 if (self
.synpred91()) :
4064 LA50_19
= self
.input.LA(3)
4066 if (self
.synpred91()) :
4068 elif LA50
== 29 or LA50
== 30 or LA50
== 31 or LA50
== 32 or LA50
== 33:
4069 LA50_20
= self
.input.LA(3)
4071 if (self
.synpred91()) :
4074 LA50_21
= self
.input.LA(3)
4076 if (self
.synpred91()) :
4079 LA50_22
= self
.input.LA(3)
4081 if (self
.synpred91()) :
4084 LA50_23
= self
.input.LA(3)
4086 if (self
.synpred91()) :
4089 LA50_24
= self
.input.LA(3)
4091 if (self
.synpred91()) :
4094 LA50_25
= self
.input.LA(3)
4096 if (self
.synpred91()) :
4099 LA50_26
= self
.input.LA(3)
4101 if (self
.synpred91()) :
4104 LA50_27
= self
.input.LA(3)
4106 if (self
.synpred91()) :
4109 LA50_28
= self
.input.LA(3)
4111 if (self
.synpred91()) :
4114 LA50_29
= self
.input.LA(3)
4116 if (self
.synpred91()) :
4118 elif LA50
== 45 or LA50
== 46:
4119 LA50_30
= self
.input.LA(3)
4121 if (self
.synpred91()) :
4124 LA50_31
= self
.input.LA(3)
4126 if (self
.synpred91()) :
4128 elif LA50
== 49 or LA50
== 50 or LA50
== 51 or LA50
== 52 or LA50
== 53 or LA50
== 54 or LA50
== 55 or LA50
== 56 or LA50
== 57 or LA50
== 61:
4129 LA50_32
= self
.input.LA(3)
4131 if (self
.synpred91()) :
4133 elif (LA50_0
== 64) :
4134 LA50
= self
.input.LA(2)
4136 LA50_33
= self
.input.LA(3)
4138 if (self
.synpred91()) :
4141 LA50_34
= self
.input.LA(3)
4143 if (self
.synpred91()) :
4145 elif LA50
== IDENTIFIER
:
4146 LA50_35
= self
.input.LA(3)
4148 if (self
.synpred91()) :
4150 elif LA50
== HEX_LITERAL
:
4151 LA50_36
= self
.input.LA(3)
4153 if (self
.synpred91()) :
4155 elif LA50
== OCTAL_LITERAL
:
4156 LA50_37
= self
.input.LA(3)
4158 if (self
.synpred91()) :
4160 elif LA50
== DECIMAL_LITERAL
:
4161 LA50_38
= self
.input.LA(3)
4163 if (self
.synpred91()) :
4165 elif LA50
== CHARACTER_LITERAL
:
4166 LA50_39
= self
.input.LA(3)
4168 if (self
.synpred91()) :
4170 elif LA50
== STRING_LITERAL
:
4171 LA50_40
= self
.input.LA(3)
4173 if (self
.synpred91()) :
4175 elif LA50
== FLOATING_POINT_LITERAL
:
4176 LA50_41
= self
.input.LA(3)
4178 if (self
.synpred91()) :
4181 LA50_42
= self
.input.LA(3)
4183 if (self
.synpred91()) :
4186 LA50_43
= self
.input.LA(3)
4188 if (self
.synpred91()) :
4190 elif LA50
== 66 or LA50
== 68 or LA50
== 69 or LA50
== 77 or LA50
== 78 or LA50
== 79:
4191 LA50_44
= self
.input.LA(3)
4193 if (self
.synpred91()) :
4196 LA50_45
= self
.input.LA(3)
4198 if (self
.synpred91()) :
4201 # C.g:0:0: direct_abstract_declarator
4202 self
.following
.append(self
.FOLLOW_direct_abstract_declarator_in_abstract_declarator1067
)
4203 self
.direct_abstract_declarator()
4204 self
.following
.pop()
4213 # C.g:347:4: direct_abstract_declarator
4214 self
.following
.append(self
.FOLLOW_direct_abstract_declarator_in_abstract_declarator1073
)
4215 self
.direct_abstract_declarator()
4216 self
.following
.pop()
4222 except RecognitionException
, re
:
4223 self
.reportError(re
)
4224 self
.recover(self
.input, re
)
4226 if self
.backtracking
> 0:
4227 self
.memoize(self
.input, 31, abstract_declarator_StartIndex
)
4233 # $ANTLR end abstract_declarator
4236 # $ANTLR start direct_abstract_declarator
4237 # C.g:350:1: direct_abstract_declarator : ( '(' abstract_declarator ')' | abstract_declarator_suffix ) ( abstract_declarator_suffix )* ;
4238 def direct_abstract_declarator(self
, ):
4240 direct_abstract_declarator_StartIndex
= self
.input.index()
4243 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 32):
4246 # C.g:351:2: ( ( '(' abstract_declarator ')' | abstract_declarator_suffix ) ( abstract_declarator_suffix )* )
4247 # C.g:351:4: ( '(' abstract_declarator ')' | abstract_declarator_suffix ) ( abstract_declarator_suffix )*
4248 # C.g:351:4: ( '(' abstract_declarator ')' | abstract_declarator_suffix )
4250 LA52_0
= self
.input.LA(1)
4253 LA52
= self
.input.LA(2)
4254 if LA52
== IDENTIFIER
or LA52
== 29 or LA52
== 30 or LA52
== 31 or LA52
== 32 or LA52
== 33 or LA52
== 34 or LA52
== 35 or LA52
== 36 or LA52
== 37 or LA52
== 38 or LA52
== 39 or LA52
== 40 or LA52
== 41 or LA52
== 42 or LA52
== 45 or LA52
== 46 or LA52
== 48 or LA52
== 49 or LA52
== 50 or LA52
== 51 or LA52
== 52 or LA52
== 53 or LA52
== 54 or LA52
== 55 or LA52
== 56 or LA52
== 57 or LA52
== 58 or LA52
== 59 or LA52
== 60 or LA52
== 61 or LA52
== 63:
4257 LA52_18
= self
.input.LA(3)
4259 if (self
.synpred93()) :
4264 if self
.backtracking
> 0:
4268 nvae
= NoViableAltException("351:4: ( '(' abstract_declarator ')' | abstract_declarator_suffix )", 52, 18, self
.input)
4272 elif LA52
== 62 or LA52
== 64:
4275 if self
.backtracking
> 0:
4279 nvae
= NoViableAltException("351:4: ( '(' abstract_declarator ')' | abstract_declarator_suffix )", 52, 1, self
.input)
4283 elif (LA52_0
== 64) :
4286 if self
.backtracking
> 0:
4290 nvae
= NoViableAltException("351:4: ( '(' abstract_declarator ')' | abstract_declarator_suffix )", 52, 0, self
.input)
4295 # C.g:351:6: '(' abstract_declarator ')'
4296 self
.match(self
.input, 62, self
.FOLLOW_62_in_direct_abstract_declarator1086
)
4299 self
.following
.append(self
.FOLLOW_abstract_declarator_in_direct_abstract_declarator1088
)
4300 self
.abstract_declarator()
4301 self
.following
.pop()
4304 self
.match(self
.input, 63, self
.FOLLOW_63_in_direct_abstract_declarator1090
)
4310 # C.g:351:36: abstract_declarator_suffix
4311 self
.following
.append(self
.FOLLOW_abstract_declarator_suffix_in_direct_abstract_declarator1094
)
4312 self
.abstract_declarator_suffix()
4313 self
.following
.pop()
4319 # C.g:351:65: ( abstract_declarator_suffix )*
4322 LA53_0
= self
.input.LA(1)
4325 LA53
= self
.input.LA(2)
4327 LA53_12
= self
.input.LA(3)
4329 if (self
.synpred94()) :
4334 LA53_13
= self
.input.LA(3)
4336 if (self
.synpred94()) :
4341 LA53_14
= self
.input.LA(3)
4343 if (self
.synpred94()) :
4348 LA53_15
= self
.input.LA(3)
4350 if (self
.synpred94()) :
4355 LA53_16
= self
.input.LA(3)
4357 if (self
.synpred94()) :
4361 elif LA53
== IDENTIFIER
:
4362 LA53_17
= self
.input.LA(3)
4364 if (self
.synpred94()) :
4368 elif LA53
== 29 or LA53
== 30 or LA53
== 31 or LA53
== 32 or LA53
== 33:
4369 LA53_19
= self
.input.LA(3)
4371 if (self
.synpred94()) :
4376 LA53_20
= self
.input.LA(3)
4378 if (self
.synpred94()) :
4383 LA53_21
= self
.input.LA(3)
4385 if (self
.synpred94()) :
4390 LA53_22
= self
.input.LA(3)
4392 if (self
.synpred94()) :
4397 LA53_23
= self
.input.LA(3)
4399 if (self
.synpred94()) :
4404 LA53_24
= self
.input.LA(3)
4406 if (self
.synpred94()) :
4411 LA53_25
= self
.input.LA(3)
4413 if (self
.synpred94()) :
4418 LA53_26
= self
.input.LA(3)
4420 if (self
.synpred94()) :
4425 LA53_27
= self
.input.LA(3)
4427 if (self
.synpred94()) :
4432 LA53_28
= self
.input.LA(3)
4434 if (self
.synpred94()) :
4438 elif LA53
== 45 or LA53
== 46:
4439 LA53_29
= self
.input.LA(3)
4441 if (self
.synpred94()) :
4446 LA53_30
= self
.input.LA(3)
4448 if (self
.synpred94()) :
4452 elif LA53
== 49 or LA53
== 50 or LA53
== 51 or LA53
== 52 or LA53
== 53 or LA53
== 54 or LA53
== 55 or LA53
== 56 or LA53
== 57 or LA53
== 61:
4453 LA53_31
= self
.input.LA(3)
4455 if (self
.synpred94()) :
4460 elif (LA53_0
== 64) :
4461 LA53
= self
.input.LA(2)
4463 LA53_33
= self
.input.LA(3)
4465 if (self
.synpred94()) :
4470 LA53_34
= self
.input.LA(3)
4472 if (self
.synpred94()) :
4476 elif LA53
== IDENTIFIER
:
4477 LA53_35
= self
.input.LA(3)
4479 if (self
.synpred94()) :
4483 elif LA53
== HEX_LITERAL
:
4484 LA53_36
= self
.input.LA(3)
4486 if (self
.synpred94()) :
4490 elif LA53
== OCTAL_LITERAL
:
4491 LA53_37
= self
.input.LA(3)
4493 if (self
.synpred94()) :
4497 elif LA53
== DECIMAL_LITERAL
:
4498 LA53_38
= self
.input.LA(3)
4500 if (self
.synpred94()) :
4504 elif LA53
== CHARACTER_LITERAL
:
4505 LA53_39
= self
.input.LA(3)
4507 if (self
.synpred94()) :
4511 elif LA53
== STRING_LITERAL
:
4512 LA53_40
= self
.input.LA(3)
4514 if (self
.synpred94()) :
4518 elif LA53
== FLOATING_POINT_LITERAL
:
4519 LA53_41
= self
.input.LA(3)
4521 if (self
.synpred94()) :
4526 LA53_42
= self
.input.LA(3)
4528 if (self
.synpred94()) :
4533 LA53_43
= self
.input.LA(3)
4535 if (self
.synpred94()) :
4539 elif LA53
== 66 or LA53
== 68 or LA53
== 69 or LA53
== 77 or LA53
== 78 or LA53
== 79:
4540 LA53_44
= self
.input.LA(3)
4542 if (self
.synpred94()) :
4547 LA53_45
= self
.input.LA(3)
4549 if (self
.synpred94()) :
4557 # C.g:0:0: abstract_declarator_suffix
4558 self
.following
.append(self
.FOLLOW_abstract_declarator_suffix_in_direct_abstract_declarator1098
)
4559 self
.abstract_declarator_suffix()
4560 self
.following
.pop()
4573 except RecognitionException
, re
:
4574 self
.reportError(re
)
4575 self
.recover(self
.input, re
)
4577 if self
.backtracking
> 0:
4578 self
.memoize(self
.input, 32, direct_abstract_declarator_StartIndex
)
4584 # $ANTLR end direct_abstract_declarator
4587 # $ANTLR start abstract_declarator_suffix
4588 # C.g:354:1: abstract_declarator_suffix : ( '[' ']' | '[' constant_expression ']' | '(' ')' | '(' parameter_type_list ')' );
4589 def abstract_declarator_suffix(self
, ):
4591 abstract_declarator_suffix_StartIndex
= self
.input.index()
4594 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 33):
4597 # C.g:355:2: ( '[' ']' | '[' constant_expression ']' | '(' ')' | '(' parameter_type_list ')' )
4599 LA54_0
= self
.input.LA(1)
4602 LA54_1
= self
.input.LA(2)
4606 elif ((IDENTIFIER
<= LA54_1
<= FLOATING_POINT_LITERAL
) or LA54_1
== 62 or LA54_1
== 66 or (68 <= LA54_1
<= 69) or (72 <= LA54_1
<= 74) or (77 <= LA54_1
<= 79)) :
4609 if self
.backtracking
> 0:
4613 nvae
= NoViableAltException("354:1: abstract_declarator_suffix : ( '[' ']' | '[' constant_expression ']' | '(' ')' | '(' parameter_type_list ')' );", 54, 1, self
.input)
4617 elif (LA54_0
== 62) :
4618 LA54_2
= self
.input.LA(2)
4622 elif (LA54_2
== IDENTIFIER
or (29 <= LA54_2
<= 42) or (45 <= LA54_2
<= 46) or (48 <= LA54_2
<= 61) or LA54_2
== 66) :
4625 if self
.backtracking
> 0:
4629 nvae
= NoViableAltException("354:1: abstract_declarator_suffix : ( '[' ']' | '[' constant_expression ']' | '(' ')' | '(' parameter_type_list ')' );", 54, 2, self
.input)
4634 if self
.backtracking
> 0:
4638 nvae
= NoViableAltException("354:1: abstract_declarator_suffix : ( '[' ']' | '[' constant_expression ']' | '(' ')' | '(' parameter_type_list ')' );", 54, 0, self
.input)
4643 # C.g:355:4: '[' ']'
4644 self
.match(self
.input, 64, self
.FOLLOW_64_in_abstract_declarator_suffix1110
)
4647 self
.match(self
.input, 65, self
.FOLLOW_65_in_abstract_declarator_suffix1112
)
4653 # C.g:356:4: '[' constant_expression ']'
4654 self
.match(self
.input, 64, self
.FOLLOW_64_in_abstract_declarator_suffix1117
)
4657 self
.following
.append(self
.FOLLOW_constant_expression_in_abstract_declarator_suffix1119
)
4658 self
.constant_expression()
4659 self
.following
.pop()
4662 self
.match(self
.input, 65, self
.FOLLOW_65_in_abstract_declarator_suffix1121
)
4668 # C.g:357:4: '(' ')'
4669 self
.match(self
.input, 62, self
.FOLLOW_62_in_abstract_declarator_suffix1126
)
4672 self
.match(self
.input, 63, self
.FOLLOW_63_in_abstract_declarator_suffix1128
)
4678 # C.g:358:4: '(' parameter_type_list ')'
4679 self
.match(self
.input, 62, self
.FOLLOW_62_in_abstract_declarator_suffix1133
)
4682 self
.following
.append(self
.FOLLOW_parameter_type_list_in_abstract_declarator_suffix1135
)
4683 self
.parameter_type_list()
4684 self
.following
.pop()
4687 self
.match(self
.input, 63, self
.FOLLOW_63_in_abstract_declarator_suffix1137
)
4693 except RecognitionException
, re
:
4694 self
.reportError(re
)
4695 self
.recover(self
.input, re
)
4697 if self
.backtracking
> 0:
4698 self
.memoize(self
.input, 33, abstract_declarator_suffix_StartIndex
)
4704 # $ANTLR end abstract_declarator_suffix
4707 # $ANTLR start initializer
4708 # C.g:361:1: initializer : ( assignment_expression | '{' initializer_list ( ',' )? '}' );
4709 def initializer(self
, ):
4711 initializer_StartIndex
= self
.input.index()
4714 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 34):
4717 # C.g:363:2: ( assignment_expression | '{' initializer_list ( ',' )? '}' )
4719 LA56_0
= self
.input.LA(1)
4721 if ((IDENTIFIER
<= LA56_0
<= FLOATING_POINT_LITERAL
) or LA56_0
== 62 or LA56_0
== 66 or (68 <= LA56_0
<= 69) or (72 <= LA56_0
<= 74) or (77 <= LA56_0
<= 79)) :
4723 elif (LA56_0
== 43) :
4726 if self
.backtracking
> 0:
4730 nvae
= NoViableAltException("361:1: initializer : ( assignment_expression | '{' initializer_list ( ',' )? '}' );", 56, 0, self
.input)
4735 # C.g:363:4: assignment_expression
4736 self
.following
.append(self
.FOLLOW_assignment_expression_in_initializer1150
)
4737 self
.assignment_expression()
4738 self
.following
.pop()
4744 # C.g:364:4: '{' initializer_list ( ',' )? '}'
4745 self
.match(self
.input, 43, self
.FOLLOW_43_in_initializer1155
)
4748 self
.following
.append(self
.FOLLOW_initializer_list_in_initializer1157
)
4749 self
.initializer_list()
4750 self
.following
.pop()
4753 # C.g:364:25: ( ',' )?
4755 LA55_0
= self
.input.LA(1)
4761 self
.match(self
.input, 27, self
.FOLLOW_27_in_initializer1159
)
4767 self
.match(self
.input, 44, self
.FOLLOW_44_in_initializer1162
)
4773 except RecognitionException
, re
:
4774 self
.reportError(re
)
4775 self
.recover(self
.input, re
)
4777 if self
.backtracking
> 0:
4778 self
.memoize(self
.input, 34, initializer_StartIndex
)
4784 # $ANTLR end initializer
4787 # $ANTLR start initializer_list
4788 # C.g:367:1: initializer_list : initializer ( ',' initializer )* ;
4789 def initializer_list(self
, ):
4791 initializer_list_StartIndex
= self
.input.index()
4794 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 35):
4797 # C.g:368:2: ( initializer ( ',' initializer )* )
4798 # C.g:368:4: initializer ( ',' initializer )*
4799 self
.following
.append(self
.FOLLOW_initializer_in_initializer_list1173
)
4801 self
.following
.pop()
4804 # C.g:368:16: ( ',' initializer )*
4807 LA57_0
= self
.input.LA(1)
4810 LA57_1
= self
.input.LA(2)
4812 if ((IDENTIFIER
<= LA57_1
<= FLOATING_POINT_LITERAL
) or LA57_1
== 43 or LA57_1
== 62 or LA57_1
== 66 or (68 <= LA57_1
<= 69) or (72 <= LA57_1
<= 74) or (77 <= LA57_1
<= 79)) :
4819 # C.g:368:17: ',' initializer
4820 self
.match(self
.input, 27, self
.FOLLOW_27_in_initializer_list1176
)
4823 self
.following
.append(self
.FOLLOW_initializer_in_initializer_list1178
)
4825 self
.following
.pop()
4838 except RecognitionException
, re
:
4839 self
.reportError(re
)
4840 self
.recover(self
.input, re
)
4842 if self
.backtracking
> 0:
4843 self
.memoize(self
.input, 35, initializer_list_StartIndex
)
4849 # $ANTLR end initializer_list
4851 class argument_expression_list_return(object):
4858 # $ANTLR start argument_expression_list
4859 # C.g:373:1: argument_expression_list : assignment_expression ( 'OPTIONAL' )? ( ',' assignment_expression ( 'OPTIONAL' )? )* ;
4860 def argument_expression_list(self
, ):
4862 retval
= self
.argument_expression_list_return()
4863 retval
.start
= self
.input.LT(1)
4864 argument_expression_list_StartIndex
= self
.input.index()
4867 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 36):
4870 # C.g:374:2: ( assignment_expression ( 'OPTIONAL' )? ( ',' assignment_expression ( 'OPTIONAL' )? )* )
4871 # C.g:374:6: assignment_expression ( 'OPTIONAL' )? ( ',' assignment_expression ( 'OPTIONAL' )? )*
4872 self
.following
.append(self
.FOLLOW_assignment_expression_in_argument_expression_list1196
)
4873 self
.assignment_expression()
4874 self
.following
.pop()
4877 # C.g:374:28: ( 'OPTIONAL' )?
4879 LA58_0
= self
.input.LA(1)
4884 # C.g:374:29: 'OPTIONAL'
4885 self
.match(self
.input, 53, self
.FOLLOW_53_in_argument_expression_list1199
)
4891 # C.g:374:42: ( ',' assignment_expression ( 'OPTIONAL' )? )*
4894 LA60_0
= self
.input.LA(1)
4901 # C.g:374:43: ',' assignment_expression ( 'OPTIONAL' )?
4902 self
.match(self
.input, 27, self
.FOLLOW_27_in_argument_expression_list1204
)
4905 self
.following
.append(self
.FOLLOW_assignment_expression_in_argument_expression_list1206
)
4906 self
.assignment_expression()
4907 self
.following
.pop()
4910 # C.g:374:69: ( 'OPTIONAL' )?
4912 LA59_0
= self
.input.LA(1)
4917 # C.g:374:70: 'OPTIONAL'
4918 self
.match(self
.input, 53, self
.FOLLOW_53_in_argument_expression_list1209
)
4933 retval
.stop
= self
.input.LT(-1)
4936 except RecognitionException
, re
:
4937 self
.reportError(re
)
4938 self
.recover(self
.input, re
)
4940 if self
.backtracking
> 0:
4941 self
.memoize(self
.input, 36, argument_expression_list_StartIndex
)
4947 # $ANTLR end argument_expression_list
4950 # $ANTLR start additive_expression
4951 # C.g:377:1: additive_expression : ( multiplicative_expression ) ( '+' multiplicative_expression | '-' multiplicative_expression )* ;
4952 def additive_expression(self
, ):
4954 additive_expression_StartIndex
= self
.input.index()
4957 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 37):
4960 # C.g:378:2: ( ( multiplicative_expression ) ( '+' multiplicative_expression | '-' multiplicative_expression )* )
4961 # C.g:378:4: ( multiplicative_expression ) ( '+' multiplicative_expression | '-' multiplicative_expression )*
4962 # C.g:378:4: ( multiplicative_expression )
4963 # C.g:378:5: multiplicative_expression
4964 self
.following
.append(self
.FOLLOW_multiplicative_expression_in_additive_expression1225
)
4965 self
.multiplicative_expression()
4966 self
.following
.pop()
4972 # C.g:378:32: ( '+' multiplicative_expression | '-' multiplicative_expression )*
4975 LA61_0
= self
.input.LA(1)
4979 elif (LA61_0
== 69) :
4984 # C.g:378:33: '+' multiplicative_expression
4985 self
.match(self
.input, 68, self
.FOLLOW_68_in_additive_expression1229
)
4988 self
.following
.append(self
.FOLLOW_multiplicative_expression_in_additive_expression1231
)
4989 self
.multiplicative_expression()
4990 self
.following
.pop()
4996 # C.g:378:65: '-' multiplicative_expression
4997 self
.match(self
.input, 69, self
.FOLLOW_69_in_additive_expression1235
)
5000 self
.following
.append(self
.FOLLOW_multiplicative_expression_in_additive_expression1237
)
5001 self
.multiplicative_expression()
5002 self
.following
.pop()
5015 except RecognitionException
, re
:
5016 self
.reportError(re
)
5017 self
.recover(self
.input, re
)
5019 if self
.backtracking
> 0:
5020 self
.memoize(self
.input, 37, additive_expression_StartIndex
)
5026 # $ANTLR end additive_expression
5029 # $ANTLR start multiplicative_expression
5030 # C.g:381:1: multiplicative_expression : ( cast_expression ) ( '*' cast_expression | '/' cast_expression | '%' cast_expression )* ;
5031 def multiplicative_expression(self
, ):
5033 multiplicative_expression_StartIndex
= self
.input.index()
5036 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 38):
5039 # C.g:382:2: ( ( cast_expression ) ( '*' cast_expression | '/' cast_expression | '%' cast_expression )* )
5040 # C.g:382:4: ( cast_expression ) ( '*' cast_expression | '/' cast_expression | '%' cast_expression )*
5041 # C.g:382:4: ( cast_expression )
5042 # C.g:382:5: cast_expression
5043 self
.following
.append(self
.FOLLOW_cast_expression_in_multiplicative_expression1251
)
5044 self
.cast_expression()
5045 self
.following
.pop()
5051 # C.g:382:22: ( '*' cast_expression | '/' cast_expression | '%' cast_expression )*
5054 LA62
= self
.input.LA(1)
5063 # C.g:382:23: '*' cast_expression
5064 self
.match(self
.input, 66, self
.FOLLOW_66_in_multiplicative_expression1255
)
5067 self
.following
.append(self
.FOLLOW_cast_expression_in_multiplicative_expression1257
)
5068 self
.cast_expression()
5069 self
.following
.pop()
5075 # C.g:382:45: '/' cast_expression
5076 self
.match(self
.input, 70, self
.FOLLOW_70_in_multiplicative_expression1261
)
5079 self
.following
.append(self
.FOLLOW_cast_expression_in_multiplicative_expression1263
)
5080 self
.cast_expression()
5081 self
.following
.pop()
5087 # C.g:382:67: '%' cast_expression
5088 self
.match(self
.input, 71, self
.FOLLOW_71_in_multiplicative_expression1267
)
5091 self
.following
.append(self
.FOLLOW_cast_expression_in_multiplicative_expression1269
)
5092 self
.cast_expression()
5093 self
.following
.pop()
5106 except RecognitionException
, re
:
5107 self
.reportError(re
)
5108 self
.recover(self
.input, re
)
5110 if self
.backtracking
> 0:
5111 self
.memoize(self
.input, 38, multiplicative_expression_StartIndex
)
5117 # $ANTLR end multiplicative_expression
5120 # $ANTLR start cast_expression
5121 # C.g:385:1: cast_expression : ( '(' type_name ')' cast_expression | unary_expression );
5122 def cast_expression(self
, ):
5124 cast_expression_StartIndex
= self
.input.index()
5127 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 39):
5130 # C.g:386:2: ( '(' type_name ')' cast_expression | unary_expression )
5132 LA63_0
= self
.input.LA(1)
5135 LA63
= self
.input.LA(2)
5136 if LA63
== 34 or LA63
== 35 or LA63
== 36 or LA63
== 37 or LA63
== 38 or LA63
== 39 or LA63
== 40 or LA63
== 41 or LA63
== 42 or LA63
== 45 or LA63
== 46 or LA63
== 48 or LA63
== 49 or LA63
== 50 or LA63
== 51 or LA63
== 52 or LA63
== 53 or LA63
== 54 or LA63
== 55 or LA63
== 56 or LA63
== 57 or LA63
== 58 or LA63
== 59 or LA63
== 60 or LA63
== 61:
5138 elif LA63
== IDENTIFIER
:
5139 LA63_25
= self
.input.LA(3)
5141 if (self
.synpred109()) :
5146 if self
.backtracking
> 0:
5150 nvae
= NoViableAltException("385:1: cast_expression : ( '(' type_name ')' cast_expression | unary_expression );", 63, 25, self
.input)
5154 elif LA63
== HEX_LITERAL
or LA63
== OCTAL_LITERAL
or LA63
== DECIMAL_LITERAL
or LA63
== CHARACTER_LITERAL
or LA63
== STRING_LITERAL
or LA63
== FLOATING_POINT_LITERAL
or LA63
== 62 or LA63
== 66 or LA63
== 68 or LA63
== 69 or LA63
== 72 or LA63
== 73 or LA63
== 74 or LA63
== 77 or LA63
== 78 or LA63
== 79:
5157 if self
.backtracking
> 0:
5161 nvae
= NoViableAltException("385:1: cast_expression : ( '(' type_name ')' cast_expression | unary_expression );", 63, 1, self
.input)
5165 elif ((IDENTIFIER
<= LA63_0
<= FLOATING_POINT_LITERAL
) or LA63_0
== 66 or (68 <= LA63_0
<= 69) or (72 <= LA63_0
<= 74) or (77 <= LA63_0
<= 79)) :
5168 if self
.backtracking
> 0:
5172 nvae
= NoViableAltException("385:1: cast_expression : ( '(' type_name ')' cast_expression | unary_expression );", 63, 0, self
.input)
5177 # C.g:386:4: '(' type_name ')' cast_expression
5178 self
.match(self
.input, 62, self
.FOLLOW_62_in_cast_expression1282
)
5181 self
.following
.append(self
.FOLLOW_type_name_in_cast_expression1284
)
5183 self
.following
.pop()
5186 self
.match(self
.input, 63, self
.FOLLOW_63_in_cast_expression1286
)
5189 self
.following
.append(self
.FOLLOW_cast_expression_in_cast_expression1288
)
5190 self
.cast_expression()
5191 self
.following
.pop()
5197 # C.g:387:4: unary_expression
5198 self
.following
.append(self
.FOLLOW_unary_expression_in_cast_expression1293
)
5199 self
.unary_expression()
5200 self
.following
.pop()
5206 except RecognitionException
, re
:
5207 self
.reportError(re
)
5208 self
.recover(self
.input, re
)
5210 if self
.backtracking
> 0:
5211 self
.memoize(self
.input, 39, cast_expression_StartIndex
)
5217 # $ANTLR end cast_expression
5220 # $ANTLR start unary_expression
5221 # C.g:390:1: unary_expression : ( postfix_expression | '++' unary_expression | '--' unary_expression | unary_operator cast_expression | 'sizeof' unary_expression | 'sizeof' '(' type_name ')' );
5222 def unary_expression(self
, ):
5224 unary_expression_StartIndex
= self
.input.index()
5227 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 40):
5230 # C.g:391:2: ( postfix_expression | '++' unary_expression | '--' unary_expression | unary_operator cast_expression | 'sizeof' unary_expression | 'sizeof' '(' type_name ')' )
5232 LA64
= self
.input.LA(1)
5233 if LA64
== IDENTIFIER
or LA64
== HEX_LITERAL
or LA64
== OCTAL_LITERAL
or LA64
== DECIMAL_LITERAL
or LA64
== CHARACTER_LITERAL
or LA64
== STRING_LITERAL
or LA64
== FLOATING_POINT_LITERAL
or LA64
== 62:
5239 elif LA64
== 66 or LA64
== 68 or LA64
== 69 or LA64
== 77 or LA64
== 78 or LA64
== 79:
5242 LA64_12
= self
.input.LA(2)
5244 if (LA64_12
== 62) :
5245 LA64_13
= self
.input.LA(3)
5247 if (self
.synpred114()) :
5252 if self
.backtracking
> 0:
5256 nvae
= NoViableAltException("390:1: unary_expression : ( postfix_expression | '++' unary_expression | '--' unary_expression | unary_operator cast_expression | 'sizeof' unary_expression | 'sizeof' '(' type_name ')' );", 64, 13, self
.input)
5260 elif ((IDENTIFIER
<= LA64_12
<= FLOATING_POINT_LITERAL
) or LA64_12
== 66 or (68 <= LA64_12
<= 69) or (72 <= LA64_12
<= 74) or (77 <= LA64_12
<= 79)) :
5263 if self
.backtracking
> 0:
5267 nvae
= NoViableAltException("390:1: unary_expression : ( postfix_expression | '++' unary_expression | '--' unary_expression | unary_operator cast_expression | 'sizeof' unary_expression | 'sizeof' '(' type_name ')' );", 64, 12, self
.input)
5272 if self
.backtracking
> 0:
5276 nvae
= NoViableAltException("390:1: unary_expression : ( postfix_expression | '++' unary_expression | '--' unary_expression | unary_operator cast_expression | 'sizeof' unary_expression | 'sizeof' '(' type_name ')' );", 64, 0, self
.input)
5281 # C.g:391:4: postfix_expression
5282 self
.following
.append(self
.FOLLOW_postfix_expression_in_unary_expression1304
)
5283 self
.postfix_expression()
5284 self
.following
.pop()
5290 # C.g:392:4: '++' unary_expression
5291 self
.match(self
.input, 72, self
.FOLLOW_72_in_unary_expression1309
)
5294 self
.following
.append(self
.FOLLOW_unary_expression_in_unary_expression1311
)
5295 self
.unary_expression()
5296 self
.following
.pop()
5302 # C.g:393:4: '--' unary_expression
5303 self
.match(self
.input, 73, self
.FOLLOW_73_in_unary_expression1316
)
5306 self
.following
.append(self
.FOLLOW_unary_expression_in_unary_expression1318
)
5307 self
.unary_expression()
5308 self
.following
.pop()
5314 # C.g:394:4: unary_operator cast_expression
5315 self
.following
.append(self
.FOLLOW_unary_operator_in_unary_expression1323
)
5316 self
.unary_operator()
5317 self
.following
.pop()
5320 self
.following
.append(self
.FOLLOW_cast_expression_in_unary_expression1325
)
5321 self
.cast_expression()
5322 self
.following
.pop()
5328 # C.g:395:4: 'sizeof' unary_expression
5329 self
.match(self
.input, 74, self
.FOLLOW_74_in_unary_expression1330
)
5332 self
.following
.append(self
.FOLLOW_unary_expression_in_unary_expression1332
)
5333 self
.unary_expression()
5334 self
.following
.pop()
5340 # C.g:396:4: 'sizeof' '(' type_name ')'
5341 self
.match(self
.input, 74, self
.FOLLOW_74_in_unary_expression1337
)
5344 self
.match(self
.input, 62, self
.FOLLOW_62_in_unary_expression1339
)
5347 self
.following
.append(self
.FOLLOW_type_name_in_unary_expression1341
)
5349 self
.following
.pop()
5352 self
.match(self
.input, 63, self
.FOLLOW_63_in_unary_expression1343
)
5358 except RecognitionException
, re
:
5359 self
.reportError(re
)
5360 self
.recover(self
.input, re
)
5362 if self
.backtracking
> 0:
5363 self
.memoize(self
.input, 40, unary_expression_StartIndex
)
5369 # $ANTLR end unary_expression
5372 # $ANTLR start postfix_expression
5373 # C.g:399:1: postfix_expression : p= primary_expression ( '[' expression ']' | '(' a= ')' | '(' c= argument_expression_list b= ')' | '(' macro_parameter_list ')' | '.' x= IDENTIFIER | '*' y= IDENTIFIER | '->' z= IDENTIFIER | '++' | '--' )* ;
5374 def postfix_expression(self
, ):
5375 self
.postfix_expression_stack
.append(postfix_expression_scope())
5376 postfix_expression_StartIndex
= self
.input.index()
5388 self
.postfix_expression_stack
[-1].FuncCallText
= ''
5392 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 41):
5395 # C.g:406:2: (p= primary_expression ( '[' expression ']' | '(' a= ')' | '(' c= argument_expression_list b= ')' | '(' macro_parameter_list ')' | '.' x= IDENTIFIER | '*' y= IDENTIFIER | '->' z= IDENTIFIER | '++' | '--' )* )
5396 # C.g:406:6: p= primary_expression ( '[' expression ']' | '(' a= ')' | '(' c= argument_expression_list b= ')' | '(' macro_parameter_list ')' | '.' x= IDENTIFIER | '*' y= IDENTIFIER | '->' z= IDENTIFIER | '++' | '--' )*
5397 self
.following
.append(self
.FOLLOW_primary_expression_in_postfix_expression1367
)
5398 p
= self
.primary_expression()
5399 self
.following
.pop()
5402 if self
.backtracking
== 0:
5403 self
.postfix_expression_stack
[-1].FuncCallText
+= self
.input.toString(p
.start
,p
.stop
)
5405 # C.g:407:9: ( '[' expression ']' | '(' a= ')' | '(' c= argument_expression_list b= ')' | '(' macro_parameter_list ')' | '.' x= IDENTIFIER | '*' y= IDENTIFIER | '->' z= IDENTIFIER | '++' | '--' )*
5408 LA65
= self
.input.LA(1)
5410 LA65_1
= self
.input.LA(2)
5412 if (LA65_1
== IDENTIFIER
) :
5413 LA65_30
= self
.input.LA(3)
5415 if (self
.synpred120()) :
5424 LA65
= self
.input.LA(2)
5427 elif LA65
== 29 or LA65
== 30 or LA65
== 31 or LA65
== 32 or LA65
== 33 or LA65
== 34 or LA65
== 35 or LA65
== 36 or LA65
== 37 or LA65
== 38 or LA65
== 39 or LA65
== 40 or LA65
== 41 or LA65
== 42 or LA65
== 45 or LA65
== 46 or LA65
== 48 or LA65
== 49 or LA65
== 50 or LA65
== 51 or LA65
== 52 or LA65
== 53 or LA65
== 54 or LA65
== 55 or LA65
== 56 or LA65
== 57 or LA65
== 58 or LA65
== 59 or LA65
== 60 or LA65
== 61:
5429 elif LA65
== IDENTIFIER
:
5430 LA65_55
= self
.input.LA(3)
5432 if (self
.synpred117()) :
5434 elif (self
.synpred118()) :
5439 LA65_57
= self
.input.LA(3)
5441 if (self
.synpred117()) :
5443 elif (self
.synpred118()) :
5447 elif LA65
== HEX_LITERAL
or LA65
== OCTAL_LITERAL
or LA65
== DECIMAL_LITERAL
or LA65
== CHARACTER_LITERAL
or LA65
== STRING_LITERAL
or LA65
== FLOATING_POINT_LITERAL
or LA65
== 62 or LA65
== 68 or LA65
== 69 or LA65
== 72 or LA65
== 73 or LA65
== 74 or LA65
== 77 or LA65
== 78 or LA65
== 79:
5460 # C.g:407:13: '[' expression ']'
5461 self
.match(self
.input, 64, self
.FOLLOW_64_in_postfix_expression1383
)
5464 self
.following
.append(self
.FOLLOW_expression_in_postfix_expression1385
)
5466 self
.following
.pop()
5469 self
.match(self
.input, 65, self
.FOLLOW_65_in_postfix_expression1387
)
5475 # C.g:408:13: '(' a= ')'
5476 self
.match(self
.input, 62, self
.FOLLOW_62_in_postfix_expression1401
)
5479 a
= self
.input.LT(1)
5480 self
.match(self
.input, 63, self
.FOLLOW_63_in_postfix_expression1405
)
5483 if self
.backtracking
== 0:
5484 self
.StoreFunctionCalling(p
.start
.line
, p
.start
.charPositionInLine
, a
.line
, a
.charPositionInLine
, self
.postfix_expression_stack
[-1].FuncCallText
, '')
5489 # C.g:409:13: '(' c= argument_expression_list b= ')'
5490 self
.match(self
.input, 62, self
.FOLLOW_62_in_postfix_expression1420
)
5493 self
.following
.append(self
.FOLLOW_argument_expression_list_in_postfix_expression1424
)
5494 c
= self
.argument_expression_list()
5495 self
.following
.pop()
5498 b
= self
.input.LT(1)
5499 self
.match(self
.input, 63, self
.FOLLOW_63_in_postfix_expression1428
)
5502 if self
.backtracking
== 0:
5503 self
.StoreFunctionCalling(p
.start
.line
, p
.start
.charPositionInLine
, b
.line
, b
.charPositionInLine
, self
.postfix_expression_stack
[-1].FuncCallText
, self
.input.toString(c
.start
,c
.stop
))
5508 # C.g:410:13: '(' macro_parameter_list ')'
5509 self
.match(self
.input, 62, self
.FOLLOW_62_in_postfix_expression1444
)
5512 self
.following
.append(self
.FOLLOW_macro_parameter_list_in_postfix_expression1446
)
5513 self
.macro_parameter_list()
5514 self
.following
.pop()
5517 self
.match(self
.input, 63, self
.FOLLOW_63_in_postfix_expression1448
)
5523 # C.g:411:13: '.' x= IDENTIFIER
5524 self
.match(self
.input, 75, self
.FOLLOW_75_in_postfix_expression1462
)
5527 x
= self
.input.LT(1)
5528 self
.match(self
.input, IDENTIFIER
, self
.FOLLOW_IDENTIFIER_in_postfix_expression1466
)
5531 if self
.backtracking
== 0:
5532 self
.postfix_expression_stack
[-1].FuncCallText
+= '.' + x
.text
5537 # C.g:412:13: '*' y= IDENTIFIER
5538 self
.match(self
.input, 66, self
.FOLLOW_66_in_postfix_expression1482
)
5541 y
= self
.input.LT(1)
5542 self
.match(self
.input, IDENTIFIER
, self
.FOLLOW_IDENTIFIER_in_postfix_expression1486
)
5545 if self
.backtracking
== 0:
5546 self
.postfix_expression_stack
[-1].FuncCallText
= y
.text
5551 # C.g:413:13: '->' z= IDENTIFIER
5552 self
.match(self
.input, 76, self
.FOLLOW_76_in_postfix_expression1502
)
5555 z
= self
.input.LT(1)
5556 self
.match(self
.input, IDENTIFIER
, self
.FOLLOW_IDENTIFIER_in_postfix_expression1506
)
5559 if self
.backtracking
== 0:
5560 self
.postfix_expression_stack
[-1].FuncCallText
+= '->' + z
.text
5566 self
.match(self
.input, 72, self
.FOLLOW_72_in_postfix_expression1522
)
5573 self
.match(self
.input, 73, self
.FOLLOW_73_in_postfix_expression1536
)
5586 except RecognitionException
, re
:
5587 self
.reportError(re
)
5588 self
.recover(self
.input, re
)
5590 if self
.backtracking
> 0:
5591 self
.memoize(self
.input, 41, postfix_expression_StartIndex
)
5593 self
.postfix_expression_stack
.pop()
5598 # $ANTLR end postfix_expression
5601 # $ANTLR start macro_parameter_list
5602 # C.g:419:1: macro_parameter_list : parameter_declaration ( ',' parameter_declaration )* ;
5603 def macro_parameter_list(self
, ):
5605 macro_parameter_list_StartIndex
= self
.input.index()
5608 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 42):
5611 # C.g:420:2: ( parameter_declaration ( ',' parameter_declaration )* )
5612 # C.g:420:4: parameter_declaration ( ',' parameter_declaration )*
5613 self
.following
.append(self
.FOLLOW_parameter_declaration_in_macro_parameter_list1559
)
5614 self
.parameter_declaration()
5615 self
.following
.pop()
5618 # C.g:420:26: ( ',' parameter_declaration )*
5621 LA66_0
= self
.input.LA(1)
5628 # C.g:420:27: ',' parameter_declaration
5629 self
.match(self
.input, 27, self
.FOLLOW_27_in_macro_parameter_list1562
)
5632 self
.following
.append(self
.FOLLOW_parameter_declaration_in_macro_parameter_list1564
)
5633 self
.parameter_declaration()
5634 self
.following
.pop()
5647 except RecognitionException
, re
:
5648 self
.reportError(re
)
5649 self
.recover(self
.input, re
)
5651 if self
.backtracking
> 0:
5652 self
.memoize(self
.input, 42, macro_parameter_list_StartIndex
)
5658 # $ANTLR end macro_parameter_list
5661 # $ANTLR start unary_operator
5662 # C.g:423:1: unary_operator : ( '&' | '*' | '+' | '-' | '~' | '!' );
5663 def unary_operator(self
, ):
5665 unary_operator_StartIndex
= self
.input.index()
5668 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 43):
5671 # C.g:424:2: ( '&' | '*' | '+' | '-' | '~' | '!' )
5673 if self
.input.LA(1) == 66 or (68 <= self
.input.LA(1) <= 69) or (77 <= self
.input.LA(1) <= 79):
5674 self
.input.consume();
5675 self
.errorRecovery
= False
5679 if self
.backtracking
> 0:
5683 mse
= MismatchedSetException(None, self
.input)
5684 self
.recoverFromMismatchedSet(
5685 self
.input, mse
, self
.FOLLOW_set_in_unary_operator0
5694 except RecognitionException
, re
:
5695 self
.reportError(re
)
5696 self
.recover(self
.input, re
)
5698 if self
.backtracking
> 0:
5699 self
.memoize(self
.input, 43, unary_operator_StartIndex
)
5705 # $ANTLR end unary_operator
5707 class primary_expression_return(object):
5714 # $ANTLR start primary_expression
5715 # C.g:432:1: primary_expression : ( IDENTIFIER | constant | '(' expression ')' );
5716 def primary_expression(self
, ):
5718 retval
= self
.primary_expression_return()
5719 retval
.start
= self
.input.LT(1)
5720 primary_expression_StartIndex
= self
.input.index()
5723 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 44):
5726 # C.g:433:2: ( IDENTIFIER | constant | '(' expression ')' )
5728 LA67
= self
.input.LA(1)
5729 if LA67
== IDENTIFIER
:
5730 LA67_1
= self
.input.LA(2)
5732 if (LA67_1
== EOF
or LA67_1
== 25 or (27 <= LA67_1
<= 28) or LA67_1
== 44 or LA67_1
== 47 or LA67_1
== 53 or (62 <= LA67_1
<= 66) or (68 <= LA67_1
<= 73) or (75 <= LA67_1
<= 77) or (80 <= LA67_1
<= 102)) :
5734 elif (LA67_1
== IDENTIFIER
or LA67_1
== STRING_LITERAL
) :
5737 if self
.backtracking
> 0:
5741 nvae
= NoViableAltException("432:1: primary_expression : ( IDENTIFIER | constant | '(' expression ')' );", 67, 1, self
.input)
5745 elif LA67
== HEX_LITERAL
or LA67
== OCTAL_LITERAL
or LA67
== DECIMAL_LITERAL
or LA67
== CHARACTER_LITERAL
or LA67
== STRING_LITERAL
or LA67
== FLOATING_POINT_LITERAL
:
5750 if self
.backtracking
> 0:
5754 nvae
= NoViableAltException("432:1: primary_expression : ( IDENTIFIER | constant | '(' expression ')' );", 67, 0, self
.input)
5759 # C.g:433:4: IDENTIFIER
5760 self
.match(self
.input, IDENTIFIER
, self
.FOLLOW_IDENTIFIER_in_primary_expression1613
)
5766 # C.g:434:4: constant
5767 self
.following
.append(self
.FOLLOW_constant_in_primary_expression1618
)
5769 self
.following
.pop()
5775 # C.g:435:4: '(' expression ')'
5776 self
.match(self
.input, 62, self
.FOLLOW_62_in_primary_expression1623
)
5779 self
.following
.append(self
.FOLLOW_expression_in_primary_expression1625
)
5781 self
.following
.pop()
5784 self
.match(self
.input, 63, self
.FOLLOW_63_in_primary_expression1627
)
5789 retval
.stop
= self
.input.LT(-1)
5792 except RecognitionException
, re
:
5793 self
.reportError(re
)
5794 self
.recover(self
.input, re
)
5796 if self
.backtracking
> 0:
5797 self
.memoize(self
.input, 44, primary_expression_StartIndex
)
5803 # $ANTLR end primary_expression
5806 # $ANTLR start constant
5807 # C.g:438:1: constant : ( HEX_LITERAL | OCTAL_LITERAL | DECIMAL_LITERAL | CHARACTER_LITERAL | ( ( IDENTIFIER )* ( STRING_LITERAL )+ )+ ( IDENTIFIER )* | FLOATING_POINT_LITERAL );
5808 def constant(self
, ):
5810 constant_StartIndex
= self
.input.index()
5813 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 45):
5816 # C.g:439:5: ( HEX_LITERAL | OCTAL_LITERAL | DECIMAL_LITERAL | CHARACTER_LITERAL | ( ( IDENTIFIER )* ( STRING_LITERAL )+ )+ ( IDENTIFIER )* | FLOATING_POINT_LITERAL )
5818 LA72
= self
.input.LA(1)
5819 if LA72
== HEX_LITERAL
:
5821 elif LA72
== OCTAL_LITERAL
:
5823 elif LA72
== DECIMAL_LITERAL
:
5825 elif LA72
== CHARACTER_LITERAL
:
5827 elif LA72
== IDENTIFIER
or LA72
== STRING_LITERAL
:
5829 elif LA72
== FLOATING_POINT_LITERAL
:
5832 if self
.backtracking
> 0:
5836 nvae
= NoViableAltException("438:1: constant : ( HEX_LITERAL | OCTAL_LITERAL | DECIMAL_LITERAL | CHARACTER_LITERAL | ( ( IDENTIFIER )* ( STRING_LITERAL )+ )+ ( IDENTIFIER )* | FLOATING_POINT_LITERAL );", 72, 0, self
.input)
5841 # C.g:439:9: HEX_LITERAL
5842 self
.match(self
.input, HEX_LITERAL
, self
.FOLLOW_HEX_LITERAL_in_constant1643
)
5848 # C.g:440:9: OCTAL_LITERAL
5849 self
.match(self
.input, OCTAL_LITERAL
, self
.FOLLOW_OCTAL_LITERAL_in_constant1653
)
5855 # C.g:441:9: DECIMAL_LITERAL
5856 self
.match(self
.input, DECIMAL_LITERAL
, self
.FOLLOW_DECIMAL_LITERAL_in_constant1663
)
5862 # C.g:442:7: CHARACTER_LITERAL
5863 self
.match(self
.input, CHARACTER_LITERAL
, self
.FOLLOW_CHARACTER_LITERAL_in_constant1671
)
5869 # C.g:443:7: ( ( IDENTIFIER )* ( STRING_LITERAL )+ )+ ( IDENTIFIER )*
5870 # C.g:443:7: ( ( IDENTIFIER )* ( STRING_LITERAL )+ )+
5874 LA70_0
= self
.input.LA(1)
5876 if (LA70_0
== IDENTIFIER
) :
5877 LA70_1
= self
.input.LA(2)
5879 if (LA70_1
== STRING_LITERAL
) :
5881 elif (LA70_1
== IDENTIFIER
) :
5882 LA70_33
= self
.input.LA(3)
5884 if (self
.synpred138()) :
5890 elif (LA70_0
== STRING_LITERAL
) :
5895 # C.g:443:8: ( IDENTIFIER )* ( STRING_LITERAL )+
5896 # C.g:443:8: ( IDENTIFIER )*
5899 LA68_0
= self
.input.LA(1)
5901 if (LA68_0
== IDENTIFIER
) :
5906 # C.g:0:0: IDENTIFIER
5907 self
.match(self
.input, IDENTIFIER
, self
.FOLLOW_IDENTIFIER_in_constant1680
)
5916 # C.g:443:20: ( STRING_LITERAL )+
5920 LA69_0
= self
.input.LA(1)
5922 if (LA69_0
== STRING_LITERAL
) :
5923 LA69_31
= self
.input.LA(2)
5925 if (self
.synpred137()) :
5932 # C.g:0:0: STRING_LITERAL
5933 self
.match(self
.input, STRING_LITERAL
, self
.FOLLOW_STRING_LITERAL_in_constant1683
)
5942 if self
.backtracking
> 0:
5946 eee
= EarlyExitException(69, self
.input)
5958 if self
.backtracking
> 0:
5962 eee
= EarlyExitException(70, self
.input)
5968 # C.g:443:38: ( IDENTIFIER )*
5971 LA71_0
= self
.input.LA(1)
5973 if (LA71_0
== IDENTIFIER
) :
5978 # C.g:0:0: IDENTIFIER
5979 self
.match(self
.input, IDENTIFIER
, self
.FOLLOW_IDENTIFIER_in_constant1688
)
5991 # C.g:444:9: FLOATING_POINT_LITERAL
5992 self
.match(self
.input, FLOATING_POINT_LITERAL
, self
.FOLLOW_FLOATING_POINT_LITERAL_in_constant1699
)
5998 except RecognitionException
, re
:
5999 self
.reportError(re
)
6000 self
.recover(self
.input, re
)
6002 if self
.backtracking
> 0:
6003 self
.memoize(self
.input, 45, constant_StartIndex
)
6009 # $ANTLR end constant
6011 class expression_return(object):
6018 # $ANTLR start expression
6019 # C.g:449:1: expression : assignment_expression ( ',' assignment_expression )* ;
6020 def expression(self
, ):
6022 retval
= self
.expression_return()
6023 retval
.start
= self
.input.LT(1)
6024 expression_StartIndex
= self
.input.index()
6027 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 46):
6030 # C.g:450:2: ( assignment_expression ( ',' assignment_expression )* )
6031 # C.g:450:4: assignment_expression ( ',' assignment_expression )*
6032 self
.following
.append(self
.FOLLOW_assignment_expression_in_expression1715
)
6033 self
.assignment_expression()
6034 self
.following
.pop()
6037 # C.g:450:26: ( ',' assignment_expression )*
6040 LA73_0
= self
.input.LA(1)
6047 # C.g:450:27: ',' assignment_expression
6048 self
.match(self
.input, 27, self
.FOLLOW_27_in_expression1718
)
6051 self
.following
.append(self
.FOLLOW_assignment_expression_in_expression1720
)
6052 self
.assignment_expression()
6053 self
.following
.pop()
6065 retval
.stop
= self
.input.LT(-1)
6068 except RecognitionException
, re
:
6069 self
.reportError(re
)
6070 self
.recover(self
.input, re
)
6072 if self
.backtracking
> 0:
6073 self
.memoize(self
.input, 46, expression_StartIndex
)
6079 # $ANTLR end expression
6082 # $ANTLR start constant_expression
6083 # C.g:453:1: constant_expression : conditional_expression ;
6084 def constant_expression(self
, ):
6086 constant_expression_StartIndex
= self
.input.index()
6089 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 47):
6092 # C.g:454:2: ( conditional_expression )
6093 # C.g:454:4: conditional_expression
6094 self
.following
.append(self
.FOLLOW_conditional_expression_in_constant_expression1733
)
6095 self
.conditional_expression()
6096 self
.following
.pop()
6103 except RecognitionException
, re
:
6104 self
.reportError(re
)
6105 self
.recover(self
.input, re
)
6107 if self
.backtracking
> 0:
6108 self
.memoize(self
.input, 47, constant_expression_StartIndex
)
6114 # $ANTLR end constant_expression
6117 # $ANTLR start assignment_expression
6118 # C.g:457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );
6119 def assignment_expression(self
, ):
6121 assignment_expression_StartIndex
= self
.input.index()
6124 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 48):
6127 # C.g:458:2: ( lvalue assignment_operator assignment_expression | conditional_expression )
6129 LA74
= self
.input.LA(1)
6130 if LA74
== IDENTIFIER
:
6131 LA74
= self
.input.LA(2)
6133 LA74_13
= self
.input.LA(3)
6135 if (self
.synpred142()) :
6140 if self
.backtracking
> 0:
6144 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 13, self
.input)
6149 LA74_14
= self
.input.LA(3)
6151 if (self
.synpred142()) :
6156 if self
.backtracking
> 0:
6160 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 14, self
.input)
6165 LA74_15
= self
.input.LA(3)
6167 if (self
.synpred142()) :
6172 if self
.backtracking
> 0:
6176 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 15, self
.input)
6181 LA74_16
= self
.input.LA(3)
6183 if (self
.synpred142()) :
6188 if self
.backtracking
> 0:
6192 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 16, self
.input)
6197 LA74_17
= self
.input.LA(3)
6199 if (self
.synpred142()) :
6204 if self
.backtracking
> 0:
6208 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 17, self
.input)
6213 LA74_18
= self
.input.LA(3)
6215 if (self
.synpred142()) :
6220 if self
.backtracking
> 0:
6224 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 18, self
.input)
6229 LA74_19
= self
.input.LA(3)
6231 if (self
.synpred142()) :
6236 if self
.backtracking
> 0:
6240 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 19, self
.input)
6244 elif LA74
== 28 or LA74
== 80 or LA74
== 81 or LA74
== 82 or LA74
== 83 or LA74
== 84 or LA74
== 85 or LA74
== 86 or LA74
== 87 or LA74
== 88 or LA74
== 89:
6246 elif LA74
== STRING_LITERAL
:
6247 LA74_21
= self
.input.LA(3)
6249 if (self
.synpred142()) :
6254 if self
.backtracking
> 0:
6258 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 21, self
.input)
6262 elif LA74
== IDENTIFIER
:
6263 LA74_22
= self
.input.LA(3)
6265 if (self
.synpred142()) :
6270 if self
.backtracking
> 0:
6274 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 22, self
.input)
6278 elif LA74
== EOF
or LA74
== 25 or LA74
== 27 or LA74
== 44 or LA74
== 47 or LA74
== 53 or LA74
== 63 or LA74
== 65 or LA74
== 68 or LA74
== 69 or LA74
== 70 or LA74
== 71 or LA74
== 77 or LA74
== 90 or LA74
== 91 or LA74
== 92 or LA74
== 93 or LA74
== 94 or LA74
== 95 or LA74
== 96 or LA74
== 97 or LA74
== 98 or LA74
== 99 or LA74
== 100 or LA74
== 101 or LA74
== 102:
6281 if self
.backtracking
> 0:
6285 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 1, self
.input)
6289 elif LA74
== HEX_LITERAL
:
6290 LA74
= self
.input.LA(2)
6292 LA74_44
= self
.input.LA(3)
6294 if (self
.synpred142()) :
6299 if self
.backtracking
> 0:
6303 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 44, self
.input)
6308 LA74_45
= self
.input.LA(3)
6310 if (self
.synpred142()) :
6315 if self
.backtracking
> 0:
6319 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 45, self
.input)
6324 LA74_46
= self
.input.LA(3)
6326 if (self
.synpred142()) :
6331 if self
.backtracking
> 0:
6335 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 46, self
.input)
6340 LA74_47
= self
.input.LA(3)
6342 if (self
.synpred142()) :
6347 if self
.backtracking
> 0:
6351 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 47, self
.input)
6356 LA74_48
= self
.input.LA(3)
6358 if (self
.synpred142()) :
6363 if self
.backtracking
> 0:
6367 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 48, self
.input)
6372 LA74_49
= self
.input.LA(3)
6374 if (self
.synpred142()) :
6379 if self
.backtracking
> 0:
6383 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 49, self
.input)
6388 LA74_50
= self
.input.LA(3)
6390 if (self
.synpred142()) :
6395 if self
.backtracking
> 0:
6399 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 50, self
.input)
6403 elif LA74
== EOF
or LA74
== 25 or LA74
== 27 or LA74
== 44 or LA74
== 47 or LA74
== 53 or LA74
== 63 or LA74
== 65 or LA74
== 68 or LA74
== 69 or LA74
== 70 or LA74
== 71 or LA74
== 77 or LA74
== 90 or LA74
== 91 or LA74
== 92 or LA74
== 93 or LA74
== 94 or LA74
== 95 or LA74
== 96 or LA74
== 97 or LA74
== 98 or LA74
== 99 or LA74
== 100 or LA74
== 101 or LA74
== 102:
6405 elif LA74
== 28 or LA74
== 80 or LA74
== 81 or LA74
== 82 or LA74
== 83 or LA74
== 84 or LA74
== 85 or LA74
== 86 or LA74
== 87 or LA74
== 88 or LA74
== 89:
6408 if self
.backtracking
> 0:
6412 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 2, self
.input)
6416 elif LA74
== OCTAL_LITERAL
:
6417 LA74
= self
.input.LA(2)
6419 LA74_73
= self
.input.LA(3)
6421 if (self
.synpred142()) :
6426 if self
.backtracking
> 0:
6430 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 73, self
.input)
6435 LA74_74
= self
.input.LA(3)
6437 if (self
.synpred142()) :
6442 if self
.backtracking
> 0:
6446 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 74, self
.input)
6451 LA74_75
= self
.input.LA(3)
6453 if (self
.synpred142()) :
6458 if self
.backtracking
> 0:
6462 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 75, self
.input)
6467 LA74_76
= self
.input.LA(3)
6469 if (self
.synpred142()) :
6474 if self
.backtracking
> 0:
6478 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 76, self
.input)
6483 LA74_77
= self
.input.LA(3)
6485 if (self
.synpred142()) :
6490 if self
.backtracking
> 0:
6494 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 77, self
.input)
6499 LA74_78
= self
.input.LA(3)
6501 if (self
.synpred142()) :
6506 if self
.backtracking
> 0:
6510 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 78, self
.input)
6515 LA74_79
= self
.input.LA(3)
6517 if (self
.synpred142()) :
6522 if self
.backtracking
> 0:
6526 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 79, self
.input)
6530 elif LA74
== 28 or LA74
== 80 or LA74
== 81 or LA74
== 82 or LA74
== 83 or LA74
== 84 or LA74
== 85 or LA74
== 86 or LA74
== 87 or LA74
== 88 or LA74
== 89:
6532 elif LA74
== EOF
or LA74
== 25 or LA74
== 27 or LA74
== 44 or LA74
== 47 or LA74
== 53 or LA74
== 63 or LA74
== 65 or LA74
== 68 or LA74
== 69 or LA74
== 70 or LA74
== 71 or LA74
== 77 or LA74
== 90 or LA74
== 91 or LA74
== 92 or LA74
== 93 or LA74
== 94 or LA74
== 95 or LA74
== 96 or LA74
== 97 or LA74
== 98 or LA74
== 99 or LA74
== 100 or LA74
== 101 or LA74
== 102:
6535 if self
.backtracking
> 0:
6539 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 3, self
.input)
6543 elif LA74
== DECIMAL_LITERAL
:
6544 LA74
= self
.input.LA(2)
6546 LA74_102
= self
.input.LA(3)
6548 if (self
.synpred142()) :
6553 if self
.backtracking
> 0:
6557 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 102, self
.input)
6562 LA74_103
= self
.input.LA(3)
6564 if (self
.synpred142()) :
6569 if self
.backtracking
> 0:
6573 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 103, self
.input)
6578 LA74_104
= self
.input.LA(3)
6580 if (self
.synpred142()) :
6585 if self
.backtracking
> 0:
6589 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 104, self
.input)
6594 LA74_105
= self
.input.LA(3)
6596 if (self
.synpred142()) :
6601 if self
.backtracking
> 0:
6605 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 105, self
.input)
6610 LA74_106
= self
.input.LA(3)
6612 if (self
.synpred142()) :
6617 if self
.backtracking
> 0:
6621 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 106, self
.input)
6626 LA74_107
= self
.input.LA(3)
6628 if (self
.synpred142()) :
6633 if self
.backtracking
> 0:
6637 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 107, self
.input)
6642 LA74_108
= self
.input.LA(3)
6644 if (self
.synpred142()) :
6649 if self
.backtracking
> 0:
6653 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 108, self
.input)
6657 elif LA74
== EOF
or LA74
== 25 or LA74
== 27 or LA74
== 44 or LA74
== 47 or LA74
== 53 or LA74
== 63 or LA74
== 65 or LA74
== 68 or LA74
== 69 or LA74
== 70 or LA74
== 71 or LA74
== 77 or LA74
== 90 or LA74
== 91 or LA74
== 92 or LA74
== 93 or LA74
== 94 or LA74
== 95 or LA74
== 96 or LA74
== 97 or LA74
== 98 or LA74
== 99 or LA74
== 100 or LA74
== 101 or LA74
== 102:
6659 elif LA74
== 28 or LA74
== 80 or LA74
== 81 or LA74
== 82 or LA74
== 83 or LA74
== 84 or LA74
== 85 or LA74
== 86 or LA74
== 87 or LA74
== 88 or LA74
== 89:
6662 if self
.backtracking
> 0:
6666 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 4, self
.input)
6670 elif LA74
== CHARACTER_LITERAL
:
6671 LA74
= self
.input.LA(2)
6673 LA74_131
= self
.input.LA(3)
6675 if (self
.synpred142()) :
6680 if self
.backtracking
> 0:
6684 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 131, self
.input)
6689 LA74_132
= self
.input.LA(3)
6691 if (self
.synpred142()) :
6696 if self
.backtracking
> 0:
6700 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 132, self
.input)
6705 LA74_133
= self
.input.LA(3)
6707 if (self
.synpred142()) :
6712 if self
.backtracking
> 0:
6716 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 133, self
.input)
6721 LA74_134
= self
.input.LA(3)
6723 if (self
.synpred142()) :
6728 if self
.backtracking
> 0:
6732 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 134, self
.input)
6737 LA74_135
= self
.input.LA(3)
6739 if (self
.synpred142()) :
6744 if self
.backtracking
> 0:
6748 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 135, self
.input)
6753 LA74_136
= self
.input.LA(3)
6755 if (self
.synpred142()) :
6760 if self
.backtracking
> 0:
6764 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 136, self
.input)
6769 LA74_137
= self
.input.LA(3)
6771 if (self
.synpred142()) :
6776 if self
.backtracking
> 0:
6780 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 137, self
.input)
6784 elif LA74
== EOF
or LA74
== 25 or LA74
== 27 or LA74
== 44 or LA74
== 47 or LA74
== 53 or LA74
== 63 or LA74
== 65 or LA74
== 68 or LA74
== 69 or LA74
== 70 or LA74
== 71 or LA74
== 77 or LA74
== 90 or LA74
== 91 or LA74
== 92 or LA74
== 93 or LA74
== 94 or LA74
== 95 or LA74
== 96 or LA74
== 97 or LA74
== 98 or LA74
== 99 or LA74
== 100 or LA74
== 101 or LA74
== 102:
6786 elif LA74
== 28 or LA74
== 80 or LA74
== 81 or LA74
== 82 or LA74
== 83 or LA74
== 84 or LA74
== 85 or LA74
== 86 or LA74
== 87 or LA74
== 88 or LA74
== 89:
6789 if self
.backtracking
> 0:
6793 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 5, self
.input)
6797 elif LA74
== STRING_LITERAL
:
6798 LA74
= self
.input.LA(2)
6799 if LA74
== IDENTIFIER
:
6800 LA74_160
= self
.input.LA(3)
6802 if (self
.synpred142()) :
6807 if self
.backtracking
> 0:
6811 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 160, self
.input)
6816 LA74_161
= self
.input.LA(3)
6818 if (self
.synpred142()) :
6823 if self
.backtracking
> 0:
6827 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 161, self
.input)
6832 LA74_162
= self
.input.LA(3)
6834 if (self
.synpred142()) :
6839 if self
.backtracking
> 0:
6843 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 162, self
.input)
6848 LA74_163
= self
.input.LA(3)
6850 if (self
.synpred142()) :
6855 if self
.backtracking
> 0:
6859 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 163, self
.input)
6864 LA74_164
= self
.input.LA(3)
6866 if (self
.synpred142()) :
6871 if self
.backtracking
> 0:
6875 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 164, self
.input)
6880 LA74_165
= self
.input.LA(3)
6882 if (self
.synpred142()) :
6887 if self
.backtracking
> 0:
6891 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 165, self
.input)
6896 LA74_166
= self
.input.LA(3)
6898 if (self
.synpred142()) :
6903 if self
.backtracking
> 0:
6907 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 166, self
.input)
6912 LA74_167
= self
.input.LA(3)
6914 if (self
.synpred142()) :
6919 if self
.backtracking
> 0:
6923 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 167, self
.input)
6927 elif LA74
== EOF
or LA74
== 25 or LA74
== 27 or LA74
== 44 or LA74
== 47 or LA74
== 53 or LA74
== 63 or LA74
== 65 or LA74
== 68 or LA74
== 69 or LA74
== 70 or LA74
== 71 or LA74
== 77 or LA74
== 90 or LA74
== 91 or LA74
== 92 or LA74
== 93 or LA74
== 94 or LA74
== 95 or LA74
== 96 or LA74
== 97 or LA74
== 98 or LA74
== 99 or LA74
== 100 or LA74
== 101 or LA74
== 102:
6929 elif LA74
== STRING_LITERAL
:
6930 LA74_189
= self
.input.LA(3)
6932 if (self
.synpred142()) :
6937 if self
.backtracking
> 0:
6941 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 189, self
.input)
6945 elif LA74
== 28 or LA74
== 80 or LA74
== 81 or LA74
== 82 or LA74
== 83 or LA74
== 84 or LA74
== 85 or LA74
== 86 or LA74
== 87 or LA74
== 88 or LA74
== 89:
6948 if self
.backtracking
> 0:
6952 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 6, self
.input)
6956 elif LA74
== FLOATING_POINT_LITERAL
:
6957 LA74
= self
.input.LA(2)
6959 LA74_191
= self
.input.LA(3)
6961 if (self
.synpred142()) :
6966 if self
.backtracking
> 0:
6970 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 191, self
.input)
6975 LA74_192
= self
.input.LA(3)
6977 if (self
.synpred142()) :
6982 if self
.backtracking
> 0:
6986 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 192, self
.input)
6991 LA74_193
= self
.input.LA(3)
6993 if (self
.synpred142()) :
6998 if self
.backtracking
> 0:
7002 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 193, self
.input)
7007 LA74_194
= self
.input.LA(3)
7009 if (self
.synpred142()) :
7014 if self
.backtracking
> 0:
7018 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 194, self
.input)
7023 LA74_195
= self
.input.LA(3)
7025 if (self
.synpred142()) :
7030 if self
.backtracking
> 0:
7034 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 195, self
.input)
7039 LA74_196
= self
.input.LA(3)
7041 if (self
.synpred142()) :
7046 if self
.backtracking
> 0:
7050 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 196, self
.input)
7055 LA74_197
= self
.input.LA(3)
7057 if (self
.synpred142()) :
7062 if self
.backtracking
> 0:
7066 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 197, self
.input)
7070 elif LA74
== EOF
or LA74
== 25 or LA74
== 27 or LA74
== 44 or LA74
== 47 or LA74
== 53 or LA74
== 63 or LA74
== 65 or LA74
== 68 or LA74
== 69 or LA74
== 70 or LA74
== 71 or LA74
== 77 or LA74
== 90 or LA74
== 91 or LA74
== 92 or LA74
== 93 or LA74
== 94 or LA74
== 95 or LA74
== 96 or LA74
== 97 or LA74
== 98 or LA74
== 99 or LA74
== 100 or LA74
== 101 or LA74
== 102:
7072 elif LA74
== 28 or LA74
== 80 or LA74
== 81 or LA74
== 82 or LA74
== 83 or LA74
== 84 or LA74
== 85 or LA74
== 86 or LA74
== 87 or LA74
== 88 or LA74
== 89:
7075 if self
.backtracking
> 0:
7079 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 7, self
.input)
7084 LA74
= self
.input.LA(2)
7085 if LA74
== IDENTIFIER
:
7086 LA74_220
= self
.input.LA(3)
7088 if (self
.synpred142()) :
7093 if self
.backtracking
> 0:
7097 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 220, self
.input)
7101 elif LA74
== HEX_LITERAL
:
7102 LA74_221
= self
.input.LA(3)
7104 if (self
.synpred142()) :
7109 if self
.backtracking
> 0:
7113 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 221, self
.input)
7117 elif LA74
== OCTAL_LITERAL
:
7118 LA74_222
= self
.input.LA(3)
7120 if (self
.synpred142()) :
7125 if self
.backtracking
> 0:
7129 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 222, self
.input)
7133 elif LA74
== DECIMAL_LITERAL
:
7134 LA74_223
= self
.input.LA(3)
7136 if (self
.synpred142()) :
7141 if self
.backtracking
> 0:
7145 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 223, self
.input)
7149 elif LA74
== CHARACTER_LITERAL
:
7150 LA74_224
= self
.input.LA(3)
7152 if (self
.synpred142()) :
7157 if self
.backtracking
> 0:
7161 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 224, self
.input)
7165 elif LA74
== STRING_LITERAL
:
7166 LA74_225
= self
.input.LA(3)
7168 if (self
.synpred142()) :
7173 if self
.backtracking
> 0:
7177 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 225, self
.input)
7181 elif LA74
== FLOATING_POINT_LITERAL
:
7182 LA74_226
= self
.input.LA(3)
7184 if (self
.synpred142()) :
7189 if self
.backtracking
> 0:
7193 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 226, self
.input)
7198 LA74_227
= self
.input.LA(3)
7200 if (self
.synpred142()) :
7205 if self
.backtracking
> 0:
7209 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 227, self
.input)
7214 LA74_228
= self
.input.LA(3)
7216 if (self
.synpred142()) :
7221 if self
.backtracking
> 0:
7225 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 228, self
.input)
7230 LA74_229
= self
.input.LA(3)
7232 if (self
.synpred142()) :
7237 if self
.backtracking
> 0:
7241 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 229, self
.input)
7245 elif LA74
== 66 or LA74
== 68 or LA74
== 69 or LA74
== 77 or LA74
== 78 or LA74
== 79:
7246 LA74_230
= self
.input.LA(3)
7248 if (self
.synpred142()) :
7253 if self
.backtracking
> 0:
7257 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 230, self
.input)
7262 LA74_231
= self
.input.LA(3)
7264 if (self
.synpred142()) :
7269 if self
.backtracking
> 0:
7273 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 231, self
.input)
7277 elif LA74
== 34 or LA74
== 35 or LA74
== 36 or LA74
== 37 or LA74
== 38 or LA74
== 39 or LA74
== 40 or LA74
== 41 or LA74
== 42 or LA74
== 45 or LA74
== 46 or LA74
== 48 or LA74
== 49 or LA74
== 50 or LA74
== 51 or LA74
== 52 or LA74
== 53 or LA74
== 54 or LA74
== 55 or LA74
== 56 or LA74
== 57 or LA74
== 58 or LA74
== 59 or LA74
== 60 or LA74
== 61:
7280 if self
.backtracking
> 0:
7284 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 8, self
.input)
7289 LA74
= self
.input.LA(2)
7290 if LA74
== IDENTIFIER
:
7291 LA74_244
= self
.input.LA(3)
7293 if (self
.synpred142()) :
7298 if self
.backtracking
> 0:
7302 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 244, self
.input)
7306 elif LA74
== HEX_LITERAL
:
7307 LA74_245
= self
.input.LA(3)
7309 if (self
.synpred142()) :
7314 if self
.backtracking
> 0:
7318 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 245, self
.input)
7322 elif LA74
== OCTAL_LITERAL
:
7323 LA74_246
= self
.input.LA(3)
7325 if (self
.synpred142()) :
7330 if self
.backtracking
> 0:
7334 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 246, self
.input)
7338 elif LA74
== DECIMAL_LITERAL
:
7339 LA74_247
= self
.input.LA(3)
7341 if (self
.synpred142()) :
7346 if self
.backtracking
> 0:
7350 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 247, self
.input)
7354 elif LA74
== CHARACTER_LITERAL
:
7355 LA74_248
= self
.input.LA(3)
7357 if (self
.synpred142()) :
7362 if self
.backtracking
> 0:
7366 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 248, self
.input)
7370 elif LA74
== STRING_LITERAL
:
7371 LA74_249
= self
.input.LA(3)
7373 if (self
.synpred142()) :
7378 if self
.backtracking
> 0:
7382 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 249, self
.input)
7386 elif LA74
== FLOATING_POINT_LITERAL
:
7387 LA74_250
= self
.input.LA(3)
7389 if (self
.synpred142()) :
7394 if self
.backtracking
> 0:
7398 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 250, self
.input)
7403 LA74_251
= self
.input.LA(3)
7405 if (self
.synpred142()) :
7410 if self
.backtracking
> 0:
7414 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 251, self
.input)
7419 LA74_252
= self
.input.LA(3)
7421 if (self
.synpred142()) :
7426 if self
.backtracking
> 0:
7430 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 252, self
.input)
7435 LA74_253
= self
.input.LA(3)
7437 if (self
.synpred142()) :
7442 if self
.backtracking
> 0:
7446 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 253, self
.input)
7450 elif LA74
== 66 or LA74
== 68 or LA74
== 69 or LA74
== 77 or LA74
== 78 or LA74
== 79:
7451 LA74_254
= self
.input.LA(3)
7453 if (self
.synpred142()) :
7458 if self
.backtracking
> 0:
7462 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 254, self
.input)
7467 LA74_255
= self
.input.LA(3)
7469 if (self
.synpred142()) :
7474 if self
.backtracking
> 0:
7478 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 255, self
.input)
7483 if self
.backtracking
> 0:
7487 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 9, self
.input)
7492 LA74
= self
.input.LA(2)
7493 if LA74
== IDENTIFIER
:
7494 LA74_256
= self
.input.LA(3)
7496 if (self
.synpred142()) :
7501 if self
.backtracking
> 0:
7505 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 256, self
.input)
7509 elif LA74
== HEX_LITERAL
:
7510 LA74_257
= self
.input.LA(3)
7512 if (self
.synpred142()) :
7517 if self
.backtracking
> 0:
7521 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 257, self
.input)
7525 elif LA74
== OCTAL_LITERAL
:
7526 LA74_258
= self
.input.LA(3)
7528 if (self
.synpred142()) :
7533 if self
.backtracking
> 0:
7537 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 258, self
.input)
7541 elif LA74
== DECIMAL_LITERAL
:
7542 LA74_259
= self
.input.LA(3)
7544 if (self
.synpred142()) :
7549 if self
.backtracking
> 0:
7553 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 259, self
.input)
7557 elif LA74
== CHARACTER_LITERAL
:
7558 LA74_260
= self
.input.LA(3)
7560 if (self
.synpred142()) :
7565 if self
.backtracking
> 0:
7569 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 260, self
.input)
7573 elif LA74
== STRING_LITERAL
:
7574 LA74_261
= self
.input.LA(3)
7576 if (self
.synpred142()) :
7581 if self
.backtracking
> 0:
7585 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 261, self
.input)
7589 elif LA74
== FLOATING_POINT_LITERAL
:
7590 LA74_262
= self
.input.LA(3)
7592 if (self
.synpred142()) :
7597 if self
.backtracking
> 0:
7601 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 262, self
.input)
7606 LA74_263
= self
.input.LA(3)
7608 if (self
.synpred142()) :
7613 if self
.backtracking
> 0:
7617 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 263, self
.input)
7622 LA74_264
= self
.input.LA(3)
7624 if (self
.synpred142()) :
7629 if self
.backtracking
> 0:
7633 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 264, self
.input)
7638 LA74_265
= self
.input.LA(3)
7640 if (self
.synpred142()) :
7645 if self
.backtracking
> 0:
7649 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 265, self
.input)
7653 elif LA74
== 66 or LA74
== 68 or LA74
== 69 or LA74
== 77 or LA74
== 78 or LA74
== 79:
7654 LA74_266
= self
.input.LA(3)
7656 if (self
.synpred142()) :
7661 if self
.backtracking
> 0:
7665 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 266, self
.input)
7670 LA74_267
= self
.input.LA(3)
7672 if (self
.synpred142()) :
7677 if self
.backtracking
> 0:
7681 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 267, self
.input)
7686 if self
.backtracking
> 0:
7690 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 10, self
.input)
7694 elif LA74
== 66 or LA74
== 68 or LA74
== 69 or LA74
== 77 or LA74
== 78 or LA74
== 79:
7695 LA74
= self
.input.LA(2)
7697 LA74_268
= self
.input.LA(3)
7699 if (self
.synpred142()) :
7704 if self
.backtracking
> 0:
7708 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 268, self
.input)
7712 elif LA74
== IDENTIFIER
:
7713 LA74_269
= self
.input.LA(3)
7715 if (self
.synpred142()) :
7720 if self
.backtracking
> 0:
7724 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 269, self
.input)
7728 elif LA74
== HEX_LITERAL
:
7729 LA74_270
= self
.input.LA(3)
7731 if (self
.synpred142()) :
7736 if self
.backtracking
> 0:
7740 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 270, self
.input)
7744 elif LA74
== OCTAL_LITERAL
:
7745 LA74_271
= self
.input.LA(3)
7747 if (self
.synpred142()) :
7752 if self
.backtracking
> 0:
7756 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 271, self
.input)
7760 elif LA74
== DECIMAL_LITERAL
:
7761 LA74_272
= self
.input.LA(3)
7763 if (self
.synpred142()) :
7768 if self
.backtracking
> 0:
7772 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 272, self
.input)
7776 elif LA74
== CHARACTER_LITERAL
:
7777 LA74_273
= self
.input.LA(3)
7779 if (self
.synpred142()) :
7784 if self
.backtracking
> 0:
7788 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 273, self
.input)
7792 elif LA74
== STRING_LITERAL
:
7793 LA74_274
= self
.input.LA(3)
7795 if (self
.synpred142()) :
7800 if self
.backtracking
> 0:
7804 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 274, self
.input)
7808 elif LA74
== FLOATING_POINT_LITERAL
:
7809 LA74_275
= self
.input.LA(3)
7811 if (self
.synpred142()) :
7816 if self
.backtracking
> 0:
7820 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 275, self
.input)
7825 LA74_276
= self
.input.LA(3)
7827 if (self
.synpred142()) :
7832 if self
.backtracking
> 0:
7836 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 276, self
.input)
7841 LA74_277
= self
.input.LA(3)
7843 if (self
.synpred142()) :
7848 if self
.backtracking
> 0:
7852 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 277, self
.input)
7856 elif LA74
== 66 or LA74
== 68 or LA74
== 69 or LA74
== 77 or LA74
== 78 or LA74
== 79:
7857 LA74_278
= self
.input.LA(3)
7859 if (self
.synpred142()) :
7864 if self
.backtracking
> 0:
7868 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 278, self
.input)
7873 LA74_279
= self
.input.LA(3)
7875 if (self
.synpred142()) :
7880 if self
.backtracking
> 0:
7884 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 279, self
.input)
7889 if self
.backtracking
> 0:
7893 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 11, self
.input)
7898 LA74
= self
.input.LA(2)
7900 LA74_280
= self
.input.LA(3)
7902 if (self
.synpred142()) :
7907 if self
.backtracking
> 0:
7911 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 280, self
.input)
7915 elif LA74
== IDENTIFIER
:
7916 LA74_281
= self
.input.LA(3)
7918 if (self
.synpred142()) :
7923 if self
.backtracking
> 0:
7927 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 281, self
.input)
7931 elif LA74
== HEX_LITERAL
:
7932 LA74_282
= self
.input.LA(3)
7934 if (self
.synpred142()) :
7939 if self
.backtracking
> 0:
7943 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 282, self
.input)
7947 elif LA74
== OCTAL_LITERAL
:
7948 LA74_283
= self
.input.LA(3)
7950 if (self
.synpred142()) :
7955 if self
.backtracking
> 0:
7959 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 283, self
.input)
7963 elif LA74
== DECIMAL_LITERAL
:
7964 LA74_284
= self
.input.LA(3)
7966 if (self
.synpred142()) :
7971 if self
.backtracking
> 0:
7975 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 284, self
.input)
7979 elif LA74
== CHARACTER_LITERAL
:
7980 LA74_285
= self
.input.LA(3)
7982 if (self
.synpred142()) :
7987 if self
.backtracking
> 0:
7991 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 285, self
.input)
7995 elif LA74
== STRING_LITERAL
:
7996 LA74_286
= self
.input.LA(3)
7998 if (self
.synpred142()) :
8003 if self
.backtracking
> 0:
8007 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 286, self
.input)
8011 elif LA74
== FLOATING_POINT_LITERAL
:
8012 LA74_287
= self
.input.LA(3)
8014 if (self
.synpred142()) :
8019 if self
.backtracking
> 0:
8023 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 287, self
.input)
8028 LA74_288
= self
.input.LA(3)
8030 if (self
.synpred142()) :
8035 if self
.backtracking
> 0:
8039 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 288, self
.input)
8044 LA74_289
= self
.input.LA(3)
8046 if (self
.synpred142()) :
8051 if self
.backtracking
> 0:
8055 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 289, self
.input)
8059 elif LA74
== 66 or LA74
== 68 or LA74
== 69 or LA74
== 77 or LA74
== 78 or LA74
== 79:
8060 LA74_290
= self
.input.LA(3)
8062 if (self
.synpred142()) :
8067 if self
.backtracking
> 0:
8071 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 290, self
.input)
8076 LA74_291
= self
.input.LA(3)
8078 if (self
.synpred142()) :
8083 if self
.backtracking
> 0:
8087 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 291, self
.input)
8092 if self
.backtracking
> 0:
8096 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 12, self
.input)
8101 if self
.backtracking
> 0:
8105 nvae
= NoViableAltException("457:1: assignment_expression : ( lvalue assignment_operator assignment_expression | conditional_expression );", 74, 0, self
.input)
8110 # C.g:458:4: lvalue assignment_operator assignment_expression
8111 self
.following
.append(self
.FOLLOW_lvalue_in_assignment_expression1744
)
8113 self
.following
.pop()
8116 self
.following
.append(self
.FOLLOW_assignment_operator_in_assignment_expression1746
)
8117 self
.assignment_operator()
8118 self
.following
.pop()
8121 self
.following
.append(self
.FOLLOW_assignment_expression_in_assignment_expression1748
)
8122 self
.assignment_expression()
8123 self
.following
.pop()
8129 # C.g:459:4: conditional_expression
8130 self
.following
.append(self
.FOLLOW_conditional_expression_in_assignment_expression1753
)
8131 self
.conditional_expression()
8132 self
.following
.pop()
8138 except RecognitionException
, re
:
8139 self
.reportError(re
)
8140 self
.recover(self
.input, re
)
8142 if self
.backtracking
> 0:
8143 self
.memoize(self
.input, 48, assignment_expression_StartIndex
)
8149 # $ANTLR end assignment_expression
8152 # $ANTLR start lvalue
8153 # C.g:462:1: lvalue : unary_expression ;
8156 lvalue_StartIndex
= self
.input.index()
8159 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 49):
8162 # C.g:463:2: ( unary_expression )
8163 # C.g:463:4: unary_expression
8164 self
.following
.append(self
.FOLLOW_unary_expression_in_lvalue1765
)
8165 self
.unary_expression()
8166 self
.following
.pop()
8173 except RecognitionException
, re
:
8174 self
.reportError(re
)
8175 self
.recover(self
.input, re
)
8177 if self
.backtracking
> 0:
8178 self
.memoize(self
.input, 49, lvalue_StartIndex
)
8187 # $ANTLR start assignment_operator
8188 # C.g:466:1: assignment_operator : ( '=' | '*=' | '/=' | '%=' | '+=' | '-=' | '<<=' | '>>=' | '&=' | '^=' | '|=' );
8189 def assignment_operator(self
, ):
8191 assignment_operator_StartIndex
= self
.input.index()
8194 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 50):
8197 # C.g:467:2: ( '=' | '*=' | '/=' | '%=' | '+=' | '-=' | '<<=' | '>>=' | '&=' | '^=' | '|=' )
8199 if self
.input.LA(1) == 28 or (80 <= self
.input.LA(1) <= 89):
8200 self
.input.consume();
8201 self
.errorRecovery
= False
8205 if self
.backtracking
> 0:
8209 mse
= MismatchedSetException(None, self
.input)
8210 self
.recoverFromMismatchedSet(
8211 self
.input, mse
, self
.FOLLOW_set_in_assignment_operator0
8220 except RecognitionException
, re
:
8221 self
.reportError(re
)
8222 self
.recover(self
.input, re
)
8224 if self
.backtracking
> 0:
8225 self
.memoize(self
.input, 50, assignment_operator_StartIndex
)
8231 # $ANTLR end assignment_operator
8234 # $ANTLR start conditional_expression
8235 # C.g:480:1: conditional_expression : e= logical_or_expression ( '?' expression ':' conditional_expression )? ;
8236 def conditional_expression(self
, ):
8238 conditional_expression_StartIndex
= self
.input.index()
8244 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 51):
8247 # C.g:481:2: (e= logical_or_expression ( '?' expression ':' conditional_expression )? )
8248 # C.g:481:4: e= logical_or_expression ( '?' expression ':' conditional_expression )?
8249 self
.following
.append(self
.FOLLOW_logical_or_expression_in_conditional_expression1839
)
8250 e
= self
.logical_or_expression()
8251 self
.following
.pop()
8254 # C.g:481:28: ( '?' expression ':' conditional_expression )?
8256 LA75_0
= self
.input.LA(1)
8261 # C.g:481:29: '?' expression ':' conditional_expression
8262 self
.match(self
.input, 90, self
.FOLLOW_90_in_conditional_expression1842
)
8265 self
.following
.append(self
.FOLLOW_expression_in_conditional_expression1844
)
8267 self
.following
.pop()
8270 self
.match(self
.input, 47, self
.FOLLOW_47_in_conditional_expression1846
)
8273 self
.following
.append(self
.FOLLOW_conditional_expression_in_conditional_expression1848
)
8274 self
.conditional_expression()
8275 self
.following
.pop()
8278 if self
.backtracking
== 0:
8279 self
.StorePredicateExpression(e
.start
.line
, e
.start
.charPositionInLine
, e
.stop
.line
, e
.stop
.charPositionInLine
, self
.input.toString(e
.start
,e
.stop
))
8288 except RecognitionException
, re
:
8289 self
.reportError(re
)
8290 self
.recover(self
.input, re
)
8292 if self
.backtracking
> 0:
8293 self
.memoize(self
.input, 51, conditional_expression_StartIndex
)
8299 # $ANTLR end conditional_expression
8301 class logical_or_expression_return(object):
8308 # $ANTLR start logical_or_expression
8309 # C.g:484:1: logical_or_expression : logical_and_expression ( '||' logical_and_expression )* ;
8310 def logical_or_expression(self
, ):
8312 retval
= self
.logical_or_expression_return()
8313 retval
.start
= self
.input.LT(1)
8314 logical_or_expression_StartIndex
= self
.input.index()
8317 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 52):
8320 # C.g:485:2: ( logical_and_expression ( '||' logical_and_expression )* )
8321 # C.g:485:4: logical_and_expression ( '||' logical_and_expression )*
8322 self
.following
.append(self
.FOLLOW_logical_and_expression_in_logical_or_expression1863
)
8323 self
.logical_and_expression()
8324 self
.following
.pop()
8327 # C.g:485:27: ( '||' logical_and_expression )*
8330 LA76_0
= self
.input.LA(1)
8337 # C.g:485:28: '||' logical_and_expression
8338 self
.match(self
.input, 91, self
.FOLLOW_91_in_logical_or_expression1866
)
8341 self
.following
.append(self
.FOLLOW_logical_and_expression_in_logical_or_expression1868
)
8342 self
.logical_and_expression()
8343 self
.following
.pop()
8355 retval
.stop
= self
.input.LT(-1)
8358 except RecognitionException
, re
:
8359 self
.reportError(re
)
8360 self
.recover(self
.input, re
)
8362 if self
.backtracking
> 0:
8363 self
.memoize(self
.input, 52, logical_or_expression_StartIndex
)
8369 # $ANTLR end logical_or_expression
8372 # $ANTLR start logical_and_expression
8373 # C.g:488:1: logical_and_expression : inclusive_or_expression ( '&&' inclusive_or_expression )* ;
8374 def logical_and_expression(self
, ):
8376 logical_and_expression_StartIndex
= self
.input.index()
8379 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 53):
8382 # C.g:489:2: ( inclusive_or_expression ( '&&' inclusive_or_expression )* )
8383 # C.g:489:4: inclusive_or_expression ( '&&' inclusive_or_expression )*
8384 self
.following
.append(self
.FOLLOW_inclusive_or_expression_in_logical_and_expression1881
)
8385 self
.inclusive_or_expression()
8386 self
.following
.pop()
8389 # C.g:489:28: ( '&&' inclusive_or_expression )*
8392 LA77_0
= self
.input.LA(1)
8399 # C.g:489:29: '&&' inclusive_or_expression
8400 self
.match(self
.input, 92, self
.FOLLOW_92_in_logical_and_expression1884
)
8403 self
.following
.append(self
.FOLLOW_inclusive_or_expression_in_logical_and_expression1886
)
8404 self
.inclusive_or_expression()
8405 self
.following
.pop()
8418 except RecognitionException
, re
:
8419 self
.reportError(re
)
8420 self
.recover(self
.input, re
)
8422 if self
.backtracking
> 0:
8423 self
.memoize(self
.input, 53, logical_and_expression_StartIndex
)
8429 # $ANTLR end logical_and_expression
8432 # $ANTLR start inclusive_or_expression
8433 # C.g:492:1: inclusive_or_expression : exclusive_or_expression ( '|' exclusive_or_expression )* ;
8434 def inclusive_or_expression(self
, ):
8436 inclusive_or_expression_StartIndex
= self
.input.index()
8439 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 54):
8442 # C.g:493:2: ( exclusive_or_expression ( '|' exclusive_or_expression )* )
8443 # C.g:493:4: exclusive_or_expression ( '|' exclusive_or_expression )*
8444 self
.following
.append(self
.FOLLOW_exclusive_or_expression_in_inclusive_or_expression1899
)
8445 self
.exclusive_or_expression()
8446 self
.following
.pop()
8449 # C.g:493:28: ( '|' exclusive_or_expression )*
8452 LA78_0
= self
.input.LA(1)
8459 # C.g:493:29: '|' exclusive_or_expression
8460 self
.match(self
.input, 93, self
.FOLLOW_93_in_inclusive_or_expression1902
)
8463 self
.following
.append(self
.FOLLOW_exclusive_or_expression_in_inclusive_or_expression1904
)
8464 self
.exclusive_or_expression()
8465 self
.following
.pop()
8478 except RecognitionException
, re
:
8479 self
.reportError(re
)
8480 self
.recover(self
.input, re
)
8482 if self
.backtracking
> 0:
8483 self
.memoize(self
.input, 54, inclusive_or_expression_StartIndex
)
8489 # $ANTLR end inclusive_or_expression
8492 # $ANTLR start exclusive_or_expression
8493 # C.g:496:1: exclusive_or_expression : and_expression ( '^' and_expression )* ;
8494 def exclusive_or_expression(self
, ):
8496 exclusive_or_expression_StartIndex
= self
.input.index()
8499 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 55):
8502 # C.g:497:2: ( and_expression ( '^' and_expression )* )
8503 # C.g:497:4: and_expression ( '^' and_expression )*
8504 self
.following
.append(self
.FOLLOW_and_expression_in_exclusive_or_expression1917
)
8505 self
.and_expression()
8506 self
.following
.pop()
8509 # C.g:497:19: ( '^' and_expression )*
8512 LA79_0
= self
.input.LA(1)
8519 # C.g:497:20: '^' and_expression
8520 self
.match(self
.input, 94, self
.FOLLOW_94_in_exclusive_or_expression1920
)
8523 self
.following
.append(self
.FOLLOW_and_expression_in_exclusive_or_expression1922
)
8524 self
.and_expression()
8525 self
.following
.pop()
8538 except RecognitionException
, re
:
8539 self
.reportError(re
)
8540 self
.recover(self
.input, re
)
8542 if self
.backtracking
> 0:
8543 self
.memoize(self
.input, 55, exclusive_or_expression_StartIndex
)
8549 # $ANTLR end exclusive_or_expression
8552 # $ANTLR start and_expression
8553 # C.g:500:1: and_expression : equality_expression ( '&' equality_expression )* ;
8554 def and_expression(self
, ):
8556 and_expression_StartIndex
= self
.input.index()
8559 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 56):
8562 # C.g:501:2: ( equality_expression ( '&' equality_expression )* )
8563 # C.g:501:4: equality_expression ( '&' equality_expression )*
8564 self
.following
.append(self
.FOLLOW_equality_expression_in_and_expression1935
)
8565 self
.equality_expression()
8566 self
.following
.pop()
8569 # C.g:501:24: ( '&' equality_expression )*
8572 LA80_0
= self
.input.LA(1)
8579 # C.g:501:25: '&' equality_expression
8580 self
.match(self
.input, 77, self
.FOLLOW_77_in_and_expression1938
)
8583 self
.following
.append(self
.FOLLOW_equality_expression_in_and_expression1940
)
8584 self
.equality_expression()
8585 self
.following
.pop()
8598 except RecognitionException
, re
:
8599 self
.reportError(re
)
8600 self
.recover(self
.input, re
)
8602 if self
.backtracking
> 0:
8603 self
.memoize(self
.input, 56, and_expression_StartIndex
)
8609 # $ANTLR end and_expression
8612 # $ANTLR start equality_expression
8613 # C.g:503:1: equality_expression : relational_expression ( ( '==' | '!=' ) relational_expression )* ;
8614 def equality_expression(self
, ):
8616 equality_expression_StartIndex
= self
.input.index()
8619 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 57):
8622 # C.g:504:2: ( relational_expression ( ( '==' | '!=' ) relational_expression )* )
8623 # C.g:504:4: relational_expression ( ( '==' | '!=' ) relational_expression )*
8624 self
.following
.append(self
.FOLLOW_relational_expression_in_equality_expression1952
)
8625 self
.relational_expression()
8626 self
.following
.pop()
8629 # C.g:504:26: ( ( '==' | '!=' ) relational_expression )*
8632 LA81_0
= self
.input.LA(1)
8634 if ((95 <= LA81_0
<= 96)) :
8639 # C.g:504:27: ( '==' | '!=' ) relational_expression
8640 if (95 <= self
.input.LA(1) <= 96):
8641 self
.input.consume();
8642 self
.errorRecovery
= False
8646 if self
.backtracking
> 0:
8650 mse
= MismatchedSetException(None, self
.input)
8651 self
.recoverFromMismatchedSet(
8652 self
.input, mse
, self
.FOLLOW_set_in_equality_expression1955
8657 self
.following
.append(self
.FOLLOW_relational_expression_in_equality_expression1961
)
8658 self
.relational_expression()
8659 self
.following
.pop()
8672 except RecognitionException
, re
:
8673 self
.reportError(re
)
8674 self
.recover(self
.input, re
)
8676 if self
.backtracking
> 0:
8677 self
.memoize(self
.input, 57, equality_expression_StartIndex
)
8683 # $ANTLR end equality_expression
8686 # $ANTLR start relational_expression
8687 # C.g:507:1: relational_expression : shift_expression ( ( '<' | '>' | '<=' | '>=' ) shift_expression )* ;
8688 def relational_expression(self
, ):
8690 relational_expression_StartIndex
= self
.input.index()
8693 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 58):
8696 # C.g:508:2: ( shift_expression ( ( '<' | '>' | '<=' | '>=' ) shift_expression )* )
8697 # C.g:508:4: shift_expression ( ( '<' | '>' | '<=' | '>=' ) shift_expression )*
8698 self
.following
.append(self
.FOLLOW_shift_expression_in_relational_expression1975
)
8699 self
.shift_expression()
8700 self
.following
.pop()
8703 # C.g:508:21: ( ( '<' | '>' | '<=' | '>=' ) shift_expression )*
8706 LA82_0
= self
.input.LA(1)
8708 if ((97 <= LA82_0
<= 100)) :
8713 # C.g:508:22: ( '<' | '>' | '<=' | '>=' ) shift_expression
8714 if (97 <= self
.input.LA(1) <= 100):
8715 self
.input.consume();
8716 self
.errorRecovery
= False
8720 if self
.backtracking
> 0:
8724 mse
= MismatchedSetException(None, self
.input)
8725 self
.recoverFromMismatchedSet(
8726 self
.input, mse
, self
.FOLLOW_set_in_relational_expression1978
8731 self
.following
.append(self
.FOLLOW_shift_expression_in_relational_expression1988
)
8732 self
.shift_expression()
8733 self
.following
.pop()
8746 except RecognitionException
, re
:
8747 self
.reportError(re
)
8748 self
.recover(self
.input, re
)
8750 if self
.backtracking
> 0:
8751 self
.memoize(self
.input, 58, relational_expression_StartIndex
)
8757 # $ANTLR end relational_expression
8760 # $ANTLR start shift_expression
8761 # C.g:511:1: shift_expression : additive_expression ( ( '<<' | '>>' ) additive_expression )* ;
8762 def shift_expression(self
, ):
8764 shift_expression_StartIndex
= self
.input.index()
8767 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 59):
8770 # C.g:512:2: ( additive_expression ( ( '<<' | '>>' ) additive_expression )* )
8771 # C.g:512:4: additive_expression ( ( '<<' | '>>' ) additive_expression )*
8772 self
.following
.append(self
.FOLLOW_additive_expression_in_shift_expression2001
)
8773 self
.additive_expression()
8774 self
.following
.pop()
8777 # C.g:512:24: ( ( '<<' | '>>' ) additive_expression )*
8780 LA83_0
= self
.input.LA(1)
8782 if ((101 <= LA83_0
<= 102)) :
8787 # C.g:512:25: ( '<<' | '>>' ) additive_expression
8788 if (101 <= self
.input.LA(1) <= 102):
8789 self
.input.consume();
8790 self
.errorRecovery
= False
8794 if self
.backtracking
> 0:
8798 mse
= MismatchedSetException(None, self
.input)
8799 self
.recoverFromMismatchedSet(
8800 self
.input, mse
, self
.FOLLOW_set_in_shift_expression2004
8805 self
.following
.append(self
.FOLLOW_additive_expression_in_shift_expression2010
)
8806 self
.additive_expression()
8807 self
.following
.pop()
8820 except RecognitionException
, re
:
8821 self
.reportError(re
)
8822 self
.recover(self
.input, re
)
8824 if self
.backtracking
> 0:
8825 self
.memoize(self
.input, 59, shift_expression_StartIndex
)
8831 # $ANTLR end shift_expression
8834 # $ANTLR start statement
8835 # C.g:517:1: statement : ( labeled_statement | compound_statement | expression_statement | selection_statement | iteration_statement | jump_statement | macro_statement | asm2_statement | asm1_statement | asm_statement | declaration );
8836 def statement(self
, ):
8838 statement_StartIndex
= self
.input.index()
8841 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 60):
8844 # C.g:518:2: ( labeled_statement | compound_statement | expression_statement | selection_statement | iteration_statement | jump_statement | macro_statement | asm2_statement | asm1_statement | asm_statement | declaration )
8846 LA84
= self
.input.LA(1)
8847 if LA84
== IDENTIFIER
:
8848 LA84
= self
.input.LA(2)
8850 LA84_43
= self
.input.LA(3)
8852 if (self
.synpred169()) :
8854 elif (self
.synpred173()) :
8856 elif (self
.synpred174()) :
8861 if self
.backtracking
> 0:
8865 nvae
= NoViableAltException("517:1: statement : ( labeled_statement | compound_statement | expression_statement | selection_statement | iteration_statement | jump_statement | macro_statement | asm2_statement | asm1_statement | asm_statement | declaration );", 84, 43, self
.input)
8871 elif LA84
== STRING_LITERAL
or LA84
== 27 or LA84
== 28 or LA84
== 64 or LA84
== 68 or LA84
== 69 or LA84
== 70 or LA84
== 71 or LA84
== 72 or LA84
== 73 or LA84
== 75 or LA84
== 76 or LA84
== 77 or LA84
== 80 or LA84
== 81 or LA84
== 82 or LA84
== 83 or LA84
== 84 or LA84
== 85 or LA84
== 86 or LA84
== 87 or LA84
== 88 or LA84
== 89 or LA84
== 90 or LA84
== 91 or LA84
== 92 or LA84
== 93 or LA84
== 94 or LA84
== 95 or LA84
== 96 or LA84
== 97 or LA84
== 98 or LA84
== 99 or LA84
== 100 or LA84
== 101 or LA84
== 102:
8874 LA84_47
= self
.input.LA(3)
8876 if (self
.synpred169()) :
8881 if self
.backtracking
> 0:
8885 nvae
= NoViableAltException("517:1: statement : ( labeled_statement | compound_statement | expression_statement | selection_statement | iteration_statement | jump_statement | macro_statement | asm2_statement | asm1_statement | asm_statement | declaration );", 84, 47, self
.input)
8889 elif LA84
== IDENTIFIER
:
8890 LA84_53
= self
.input.LA(3)
8892 if (self
.synpred169()) :
8897 if self
.backtracking
> 0:
8901 nvae
= NoViableAltException("517:1: statement : ( labeled_statement | compound_statement | expression_statement | selection_statement | iteration_statement | jump_statement | macro_statement | asm2_statement | asm1_statement | asm_statement | declaration );", 84, 53, self
.input)
8906 LA84_68
= self
.input.LA(3)
8908 if (self
.synpred169()) :
8913 if self
.backtracking
> 0:
8917 nvae
= NoViableAltException("517:1: statement : ( labeled_statement | compound_statement | expression_statement | selection_statement | iteration_statement | jump_statement | macro_statement | asm2_statement | asm1_statement | asm_statement | declaration );", 84, 68, self
.input)
8921 elif LA84
== 29 or LA84
== 30 or LA84
== 31 or LA84
== 32 or LA84
== 33 or LA84
== 34 or LA84
== 35 or LA84
== 36 or LA84
== 37 or LA84
== 38 or LA84
== 39 or LA84
== 40 or LA84
== 41 or LA84
== 42 or LA84
== 45 or LA84
== 46 or LA84
== 48 or LA84
== 49 or LA84
== 50 or LA84
== 51 or LA84
== 52 or LA84
== 53 or LA84
== 54 or LA84
== 55 or LA84
== 56 or LA84
== 57 or LA84
== 58 or LA84
== 59 or LA84
== 60 or LA84
== 61:
8924 if self
.backtracking
> 0:
8928 nvae
= NoViableAltException("517:1: statement : ( labeled_statement | compound_statement | expression_statement | selection_statement | iteration_statement | jump_statement | macro_statement | asm2_statement | asm1_statement | asm_statement | declaration );", 84, 1, self
.input)
8932 elif LA84
== 106 or LA84
== 107:
8936 elif LA84
== HEX_LITERAL
or LA84
== OCTAL_LITERAL
or LA84
== DECIMAL_LITERAL
or LA84
== CHARACTER_LITERAL
or LA84
== STRING_LITERAL
or LA84
== FLOATING_POINT_LITERAL
or LA84
== 25 or LA84
== 62 or LA84
== 66 or LA84
== 68 or LA84
== 69 or LA84
== 72 or LA84
== 73 or LA84
== 74 or LA84
== 77 or LA84
== 78 or LA84
== 79:
8938 elif LA84
== 108 or LA84
== 110:
8940 elif LA84
== 111 or LA84
== 112 or LA84
== 113:
8942 elif LA84
== 114 or LA84
== 115 or LA84
== 116 or LA84
== 117:
8950 elif LA84
== 26 or LA84
== 29 or LA84
== 30 or LA84
== 31 or LA84
== 32 or LA84
== 33 or LA84
== 34 or LA84
== 35 or LA84
== 36 or LA84
== 37 or LA84
== 38 or LA84
== 39 or LA84
== 40 or LA84
== 41 or LA84
== 42 or LA84
== 45 or LA84
== 46 or LA84
== 48 or LA84
== 49 or LA84
== 50 or LA84
== 51 or LA84
== 52 or LA84
== 53 or LA84
== 54 or LA84
== 55 or LA84
== 56 or LA84
== 57 or LA84
== 58 or LA84
== 59 or LA84
== 60 or LA84
== 61:
8953 if self
.backtracking
> 0:
8957 nvae
= NoViableAltException("517:1: statement : ( labeled_statement | compound_statement | expression_statement | selection_statement | iteration_statement | jump_statement | macro_statement | asm2_statement | asm1_statement | asm_statement | declaration );", 84, 0, self
.input)
8962 # C.g:518:4: labeled_statement
8963 self
.following
.append(self
.FOLLOW_labeled_statement_in_statement2025
)
8964 self
.labeled_statement()
8965 self
.following
.pop()
8971 # C.g:519:4: compound_statement
8972 self
.following
.append(self
.FOLLOW_compound_statement_in_statement2030
)
8973 self
.compound_statement()
8974 self
.following
.pop()
8980 # C.g:520:4: expression_statement
8981 self
.following
.append(self
.FOLLOW_expression_statement_in_statement2035
)
8982 self
.expression_statement()
8983 self
.following
.pop()
8989 # C.g:521:4: selection_statement
8990 self
.following
.append(self
.FOLLOW_selection_statement_in_statement2040
)
8991 self
.selection_statement()
8992 self
.following
.pop()
8998 # C.g:522:4: iteration_statement
8999 self
.following
.append(self
.FOLLOW_iteration_statement_in_statement2045
)
9000 self
.iteration_statement()
9001 self
.following
.pop()
9007 # C.g:523:4: jump_statement
9008 self
.following
.append(self
.FOLLOW_jump_statement_in_statement2050
)
9009 self
.jump_statement()
9010 self
.following
.pop()
9016 # C.g:524:4: macro_statement
9017 self
.following
.append(self
.FOLLOW_macro_statement_in_statement2055
)
9018 self
.macro_statement()
9019 self
.following
.pop()
9025 # C.g:525:4: asm2_statement
9026 self
.following
.append(self
.FOLLOW_asm2_statement_in_statement2060
)
9027 self
.asm2_statement()
9028 self
.following
.pop()
9034 # C.g:526:4: asm1_statement
9035 self
.following
.append(self
.FOLLOW_asm1_statement_in_statement2065
)
9036 self
.asm1_statement()
9037 self
.following
.pop()
9043 # C.g:527:4: asm_statement
9044 self
.following
.append(self
.FOLLOW_asm_statement_in_statement2070
)
9045 self
.asm_statement()
9046 self
.following
.pop()
9052 # C.g:528:4: declaration
9053 self
.following
.append(self
.FOLLOW_declaration_in_statement2075
)
9055 self
.following
.pop()
9061 except RecognitionException
, re
:
9062 self
.reportError(re
)
9063 self
.recover(self
.input, re
)
9065 if self
.backtracking
> 0:
9066 self
.memoize(self
.input, 60, statement_StartIndex
)
9072 # $ANTLR end statement
9075 # $ANTLR start asm2_statement
9076 # C.g:531:1: asm2_statement : ( '__asm__' )? IDENTIFIER '(' (~ ( ';' ) )* ')' ';' ;
9077 def asm2_statement(self
, ):
9079 asm2_statement_StartIndex
= self
.input.index()
9082 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 61):
9085 # C.g:532:2: ( ( '__asm__' )? IDENTIFIER '(' (~ ( ';' ) )* ')' ';' )
9086 # C.g:532:4: ( '__asm__' )? IDENTIFIER '(' (~ ( ';' ) )* ')' ';'
9087 # C.g:532:4: ( '__asm__' )?
9089 LA85_0
= self
.input.LA(1)
9091 if (LA85_0
== 103) :
9094 # C.g:0:0: '__asm__'
9095 self
.match(self
.input, 103, self
.FOLLOW_103_in_asm2_statement2086
)
9101 self
.match(self
.input, IDENTIFIER
, self
.FOLLOW_IDENTIFIER_in_asm2_statement2089
)
9104 self
.match(self
.input, 62, self
.FOLLOW_62_in_asm2_statement2091
)
9107 # C.g:532:30: (~ ( ';' ) )*
9110 LA86_0
= self
.input.LA(1)
9113 LA86_1
= self
.input.LA(2)
9115 if ((IDENTIFIER
<= LA86_1
<= LINE_COMMAND
) or (26 <= LA86_1
<= 117)) :
9119 elif ((IDENTIFIER
<= LA86_0
<= LINE_COMMAND
) or (26 <= LA86_0
<= 62) or (64 <= LA86_0
<= 117)) :
9124 # C.g:532:31: ~ ( ';' )
9125 if (IDENTIFIER
<= self
.input.LA(1) <= LINE_COMMAND
) or (26 <= self
.input.LA(1) <= 117):
9126 self
.input.consume();
9127 self
.errorRecovery
= False
9131 if self
.backtracking
> 0:
9135 mse
= MismatchedSetException(None, self
.input)
9136 self
.recoverFromMismatchedSet(
9137 self
.input, mse
, self
.FOLLOW_set_in_asm2_statement2094
9148 self
.match(self
.input, 63, self
.FOLLOW_63_in_asm2_statement2101
)
9151 self
.match(self
.input, 25, self
.FOLLOW_25_in_asm2_statement2103
)
9158 except RecognitionException
, re
:
9159 self
.reportError(re
)
9160 self
.recover(self
.input, re
)
9162 if self
.backtracking
> 0:
9163 self
.memoize(self
.input, 61, asm2_statement_StartIndex
)
9169 # $ANTLR end asm2_statement
9172 # $ANTLR start asm1_statement
9173 # C.g:535:1: asm1_statement : '_asm' '{' (~ ( '}' ) )* '}' ;
9174 def asm1_statement(self
, ):
9176 asm1_statement_StartIndex
= self
.input.index()
9179 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 62):
9182 # C.g:536:2: ( '_asm' '{' (~ ( '}' ) )* '}' )
9183 # C.g:536:4: '_asm' '{' (~ ( '}' ) )* '}'
9184 self
.match(self
.input, 104, self
.FOLLOW_104_in_asm1_statement2115
)
9187 self
.match(self
.input, 43, self
.FOLLOW_43_in_asm1_statement2117
)
9190 # C.g:536:15: (~ ( '}' ) )*
9193 LA87_0
= self
.input.LA(1)
9195 if ((IDENTIFIER
<= LA87_0
<= 43) or (45 <= LA87_0
<= 117)) :
9200 # C.g:536:16: ~ ( '}' )
9201 if (IDENTIFIER
<= self
.input.LA(1) <= 43) or (45 <= self
.input.LA(1) <= 117):
9202 self
.input.consume();
9203 self
.errorRecovery
= False
9207 if self
.backtracking
> 0:
9211 mse
= MismatchedSetException(None, self
.input)
9212 self
.recoverFromMismatchedSet(
9213 self
.input, mse
, self
.FOLLOW_set_in_asm1_statement2120
9224 self
.match(self
.input, 44, self
.FOLLOW_44_in_asm1_statement2127
)
9231 except RecognitionException
, re
:
9232 self
.reportError(re
)
9233 self
.recover(self
.input, re
)
9235 if self
.backtracking
> 0:
9236 self
.memoize(self
.input, 62, asm1_statement_StartIndex
)
9242 # $ANTLR end asm1_statement
9245 # $ANTLR start asm_statement
9246 # C.g:539:1: asm_statement : '__asm' '{' (~ ( '}' ) )* '}' ;
9247 def asm_statement(self
, ):
9249 asm_statement_StartIndex
= self
.input.index()
9252 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 63):
9255 # C.g:540:2: ( '__asm' '{' (~ ( '}' ) )* '}' )
9256 # C.g:540:4: '__asm' '{' (~ ( '}' ) )* '}'
9257 self
.match(self
.input, 105, self
.FOLLOW_105_in_asm_statement2138
)
9260 self
.match(self
.input, 43, self
.FOLLOW_43_in_asm_statement2140
)
9263 # C.g:540:16: (~ ( '}' ) )*
9266 LA88_0
= self
.input.LA(1)
9268 if ((IDENTIFIER
<= LA88_0
<= 43) or (45 <= LA88_0
<= 117)) :
9273 # C.g:540:17: ~ ( '}' )
9274 if (IDENTIFIER
<= self
.input.LA(1) <= 43) or (45 <= self
.input.LA(1) <= 117):
9275 self
.input.consume();
9276 self
.errorRecovery
= False
9280 if self
.backtracking
> 0:
9284 mse
= MismatchedSetException(None, self
.input)
9285 self
.recoverFromMismatchedSet(
9286 self
.input, mse
, self
.FOLLOW_set_in_asm_statement2143
9297 self
.match(self
.input, 44, self
.FOLLOW_44_in_asm_statement2150
)
9304 except RecognitionException
, re
:
9305 self
.reportError(re
)
9306 self
.recover(self
.input, re
)
9308 if self
.backtracking
> 0:
9309 self
.memoize(self
.input, 63, asm_statement_StartIndex
)
9315 # $ANTLR end asm_statement
9318 # $ANTLR start macro_statement
9319 # C.g:543:1: macro_statement : IDENTIFIER '(' ( declaration )* ( statement_list )? ( expression )? ')' ;
9320 def macro_statement(self
, ):
9322 macro_statement_StartIndex
= self
.input.index()
9325 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 64):
9328 # C.g:544:2: ( IDENTIFIER '(' ( declaration )* ( statement_list )? ( expression )? ')' )
9329 # C.g:544:4: IDENTIFIER '(' ( declaration )* ( statement_list )? ( expression )? ')'
9330 self
.match(self
.input, IDENTIFIER
, self
.FOLLOW_IDENTIFIER_in_macro_statement2162
)
9333 self
.match(self
.input, 62, self
.FOLLOW_62_in_macro_statement2164
)
9336 # C.g:544:19: ( declaration )*
9339 LA89
= self
.input.LA(1)
9340 if LA89
== IDENTIFIER
:
9341 LA89
= self
.input.LA(2)
9343 LA89_45
= self
.input.LA(3)
9345 if (self
.synpred181()) :
9349 elif LA89
== IDENTIFIER
:
9350 LA89_47
= self
.input.LA(3)
9352 if (self
.synpred181()) :
9357 LA89_50
= self
.input.LA(3)
9359 if (self
.synpred181()) :
9364 LA89_68
= self
.input.LA(3)
9366 if (self
.synpred181()) :
9371 LA89_71
= self
.input.LA(3)
9373 if (self
.synpred181()) :
9378 LA89_72
= self
.input.LA(3)
9380 if (self
.synpred181()) :
9385 LA89_73
= self
.input.LA(3)
9387 if (self
.synpred181()) :
9391 elif LA89
== 29 or LA89
== 30 or LA89
== 31 or LA89
== 32 or LA89
== 33:
9392 LA89_74
= self
.input.LA(3)
9394 if (self
.synpred181()) :
9399 LA89_75
= self
.input.LA(3)
9401 if (self
.synpred181()) :
9406 LA89_76
= self
.input.LA(3)
9408 if (self
.synpred181()) :
9413 LA89_77
= self
.input.LA(3)
9415 if (self
.synpred181()) :
9420 LA89_78
= self
.input.LA(3)
9422 if (self
.synpred181()) :
9427 LA89_79
= self
.input.LA(3)
9429 if (self
.synpred181()) :
9434 LA89_80
= self
.input.LA(3)
9436 if (self
.synpred181()) :
9441 LA89_81
= self
.input.LA(3)
9443 if (self
.synpred181()) :
9448 LA89_82
= self
.input.LA(3)
9450 if (self
.synpred181()) :
9455 LA89_83
= self
.input.LA(3)
9457 if (self
.synpred181()) :
9461 elif LA89
== 45 or LA89
== 46:
9462 LA89_84
= self
.input.LA(3)
9464 if (self
.synpred181()) :
9469 LA89_85
= self
.input.LA(3)
9471 if (self
.synpred181()) :
9475 elif LA89
== 49 or LA89
== 50 or LA89
== 51 or LA89
== 52 or LA89
== 53 or LA89
== 54 or LA89
== 55 or LA89
== 56 or LA89
== 57 or LA89
== 61:
9476 LA89_86
= self
.input.LA(3)
9478 if (self
.synpred181()) :
9484 LA89
= self
.input.LA(2)
9485 if LA89
== 29 or LA89
== 30 or LA89
== 31 or LA89
== 32 or LA89
== 33:
9486 LA89_87
= self
.input.LA(3)
9488 if (self
.synpred181()) :
9493 LA89_88
= self
.input.LA(3)
9495 if (self
.synpred181()) :
9500 LA89_89
= self
.input.LA(3)
9502 if (self
.synpred181()) :
9507 LA89_90
= self
.input.LA(3)
9509 if (self
.synpred181()) :
9514 LA89_91
= self
.input.LA(3)
9516 if (self
.synpred181()) :
9521 LA89_92
= self
.input.LA(3)
9523 if (self
.synpred181()) :
9528 LA89_93
= self
.input.LA(3)
9530 if (self
.synpred181()) :
9535 LA89_94
= self
.input.LA(3)
9537 if (self
.synpred181()) :
9542 LA89_95
= self
.input.LA(3)
9544 if (self
.synpred181()) :
9549 LA89_96
= self
.input.LA(3)
9551 if (self
.synpred181()) :
9555 elif LA89
== 45 or LA89
== 46:
9556 LA89_97
= self
.input.LA(3)
9558 if (self
.synpred181()) :
9563 LA89_98
= self
.input.LA(3)
9565 if (self
.synpred181()) :
9569 elif LA89
== IDENTIFIER
:
9570 LA89_99
= self
.input.LA(3)
9572 if (self
.synpred181()) :
9577 LA89_100
= self
.input.LA(3)
9579 if (self
.synpred181()) :
9584 LA89_101
= self
.input.LA(3)
9586 if (self
.synpred181()) :
9591 LA89_102
= self
.input.LA(3)
9593 if (self
.synpred181()) :
9598 LA89_103
= self
.input.LA(3)
9600 if (self
.synpred181()) :
9604 elif LA89
== 49 or LA89
== 50 or LA89
== 51 or LA89
== 52 or LA89
== 53 or LA89
== 54 or LA89
== 55 or LA89
== 56 or LA89
== 57 or LA89
== 61:
9605 LA89_104
= self
.input.LA(3)
9607 if (self
.synpred181()) :
9612 LA89_105
= self
.input.LA(3)
9614 if (self
.synpred181()) :
9619 elif LA89
== 29 or LA89
== 30 or LA89
== 31 or LA89
== 32 or LA89
== 33:
9620 LA89
= self
.input.LA(2)
9622 LA89_106
= self
.input.LA(3)
9624 if (self
.synpred181()) :
9629 LA89_107
= self
.input.LA(3)
9631 if (self
.synpred181()) :
9636 LA89_108
= self
.input.LA(3)
9638 if (self
.synpred181()) :
9643 LA89_109
= self
.input.LA(3)
9645 if (self
.synpred181()) :
9649 elif LA89
== IDENTIFIER
:
9650 LA89_110
= self
.input.LA(3)
9652 if (self
.synpred181()) :
9657 LA89_111
= self
.input.LA(3)
9659 if (self
.synpred181()) :
9664 LA89_112
= self
.input.LA(3)
9666 if (self
.synpred181()) :
9670 elif LA89
== 29 or LA89
== 30 or LA89
== 31 or LA89
== 32 or LA89
== 33:
9671 LA89_113
= self
.input.LA(3)
9673 if (self
.synpred181()) :
9678 LA89_114
= self
.input.LA(3)
9680 if (self
.synpred181()) :
9685 LA89_115
= self
.input.LA(3)
9687 if (self
.synpred181()) :
9692 LA89_116
= self
.input.LA(3)
9694 if (self
.synpred181()) :
9699 LA89_117
= self
.input.LA(3)
9701 if (self
.synpred181()) :
9706 LA89_118
= self
.input.LA(3)
9708 if (self
.synpred181()) :
9713 LA89_119
= self
.input.LA(3)
9715 if (self
.synpred181()) :
9720 LA89_120
= self
.input.LA(3)
9722 if (self
.synpred181()) :
9727 LA89_121
= self
.input.LA(3)
9729 if (self
.synpred181()) :
9734 LA89_122
= self
.input.LA(3)
9736 if (self
.synpred181()) :
9740 elif LA89
== 45 or LA89
== 46:
9741 LA89_123
= self
.input.LA(3)
9743 if (self
.synpred181()) :
9748 LA89_124
= self
.input.LA(3)
9750 if (self
.synpred181()) :
9754 elif LA89
== 49 or LA89
== 50 or LA89
== 51 or LA89
== 52 or LA89
== 53 or LA89
== 54 or LA89
== 55 or LA89
== 56 or LA89
== 57 or LA89
== 61:
9755 LA89_125
= self
.input.LA(3)
9757 if (self
.synpred181()) :
9763 LA89
= self
.input.LA(2)
9765 LA89_126
= self
.input.LA(3)
9767 if (self
.synpred181()) :
9772 LA89_127
= self
.input.LA(3)
9774 if (self
.synpred181()) :
9779 LA89_128
= self
.input.LA(3)
9781 if (self
.synpred181()) :
9786 LA89_129
= self
.input.LA(3)
9788 if (self
.synpred181()) :
9792 elif LA89
== IDENTIFIER
:
9793 LA89_130
= self
.input.LA(3)
9795 if (self
.synpred181()) :
9800 LA89_131
= self
.input.LA(3)
9802 if (self
.synpred181()) :
9807 LA89_132
= self
.input.LA(3)
9809 if (self
.synpred181()) :
9813 elif LA89
== 29 or LA89
== 30 or LA89
== 31 or LA89
== 32 or LA89
== 33:
9814 LA89_133
= self
.input.LA(3)
9816 if (self
.synpred181()) :
9821 LA89_134
= self
.input.LA(3)
9823 if (self
.synpred181()) :
9828 LA89_135
= self
.input.LA(3)
9830 if (self
.synpred181()) :
9835 LA89_136
= self
.input.LA(3)
9837 if (self
.synpred181()) :
9842 LA89_137
= self
.input.LA(3)
9844 if (self
.synpred181()) :
9849 LA89_138
= self
.input.LA(3)
9851 if (self
.synpred181()) :
9856 LA89_139
= self
.input.LA(3)
9858 if (self
.synpred181()) :
9863 LA89_140
= self
.input.LA(3)
9865 if (self
.synpred181()) :
9870 LA89_141
= self
.input.LA(3)
9872 if (self
.synpred181()) :
9877 LA89_142
= self
.input.LA(3)
9879 if (self
.synpred181()) :
9883 elif LA89
== 45 or LA89
== 46:
9884 LA89_143
= self
.input.LA(3)
9886 if (self
.synpred181()) :
9891 LA89_144
= self
.input.LA(3)
9893 if (self
.synpred181()) :
9897 elif LA89
== 49 or LA89
== 50 or LA89
== 51 or LA89
== 52 or LA89
== 53 or LA89
== 54 or LA89
== 55 or LA89
== 56 or LA89
== 57 or LA89
== 61:
9898 LA89_145
= self
.input.LA(3)
9900 if (self
.synpred181()) :
9906 LA89
= self
.input.LA(2)
9908 LA89_146
= self
.input.LA(3)
9910 if (self
.synpred181()) :
9915 LA89_147
= self
.input.LA(3)
9917 if (self
.synpred181()) :
9922 LA89_148
= self
.input.LA(3)
9924 if (self
.synpred181()) :
9929 LA89_149
= self
.input.LA(3)
9931 if (self
.synpred181()) :
9935 elif LA89
== IDENTIFIER
:
9936 LA89_150
= self
.input.LA(3)
9938 if (self
.synpred181()) :
9943 LA89_151
= self
.input.LA(3)
9945 if (self
.synpred181()) :
9950 LA89_152
= self
.input.LA(3)
9952 if (self
.synpred181()) :
9956 elif LA89
== 29 or LA89
== 30 or LA89
== 31 or LA89
== 32 or LA89
== 33:
9957 LA89_153
= self
.input.LA(3)
9959 if (self
.synpred181()) :
9964 LA89_154
= self
.input.LA(3)
9966 if (self
.synpred181()) :
9971 LA89_155
= self
.input.LA(3)
9973 if (self
.synpred181()) :
9978 LA89_156
= self
.input.LA(3)
9980 if (self
.synpred181()) :
9985 LA89_157
= self
.input.LA(3)
9987 if (self
.synpred181()) :
9992 LA89_158
= self
.input.LA(3)
9994 if (self
.synpred181()) :
9999 LA89_159
= self
.input.LA(3)
10001 if (self
.synpred181()) :
10006 LA89_160
= self
.input.LA(3)
10008 if (self
.synpred181()) :
10013 LA89_161
= self
.input.LA(3)
10015 if (self
.synpred181()) :
10020 LA89_162
= self
.input.LA(3)
10022 if (self
.synpred181()) :
10026 elif LA89
== 45 or LA89
== 46:
10027 LA89_163
= self
.input.LA(3)
10029 if (self
.synpred181()) :
10034 LA89_164
= self
.input.LA(3)
10036 if (self
.synpred181()) :
10040 elif LA89
== 49 or LA89
== 50 or LA89
== 51 or LA89
== 52 or LA89
== 53 or LA89
== 54 or LA89
== 55 or LA89
== 56 or LA89
== 57 or LA89
== 61:
10041 LA89_165
= self
.input.LA(3)
10043 if (self
.synpred181()) :
10049 LA89
= self
.input.LA(2)
10051 LA89_166
= self
.input.LA(3)
10053 if (self
.synpred181()) :
10058 LA89_167
= self
.input.LA(3)
10060 if (self
.synpred181()) :
10065 LA89_168
= self
.input.LA(3)
10067 if (self
.synpred181()) :
10072 LA89_169
= self
.input.LA(3)
10074 if (self
.synpred181()) :
10078 elif LA89
== IDENTIFIER
:
10079 LA89_170
= self
.input.LA(3)
10081 if (self
.synpred181()) :
10086 LA89_171
= self
.input.LA(3)
10088 if (self
.synpred181()) :
10093 LA89_172
= self
.input.LA(3)
10095 if (self
.synpred181()) :
10099 elif LA89
== 29 or LA89
== 30 or LA89
== 31 or LA89
== 32 or LA89
== 33:
10100 LA89_173
= self
.input.LA(3)
10102 if (self
.synpred181()) :
10107 LA89_174
= self
.input.LA(3)
10109 if (self
.synpred181()) :
10114 LA89_175
= self
.input.LA(3)
10116 if (self
.synpred181()) :
10121 LA89_176
= self
.input.LA(3)
10123 if (self
.synpred181()) :
10128 LA89_177
= self
.input.LA(3)
10130 if (self
.synpred181()) :
10135 LA89_178
= self
.input.LA(3)
10137 if (self
.synpred181()) :
10142 LA89_179
= self
.input.LA(3)
10144 if (self
.synpred181()) :
10149 LA89_180
= self
.input.LA(3)
10151 if (self
.synpred181()) :
10156 LA89_181
= self
.input.LA(3)
10158 if (self
.synpred181()) :
10163 LA89_182
= self
.input.LA(3)
10165 if (self
.synpred181()) :
10169 elif LA89
== 45 or LA89
== 46:
10170 LA89_183
= self
.input.LA(3)
10172 if (self
.synpred181()) :
10177 LA89_184
= self
.input.LA(3)
10179 if (self
.synpred181()) :
10183 elif LA89
== 49 or LA89
== 50 or LA89
== 51 or LA89
== 52 or LA89
== 53 or LA89
== 54 or LA89
== 55 or LA89
== 56 or LA89
== 57 or LA89
== 61:
10184 LA89_185
= self
.input.LA(3)
10186 if (self
.synpred181()) :
10192 LA89
= self
.input.LA(2)
10194 LA89_186
= self
.input.LA(3)
10196 if (self
.synpred181()) :
10201 LA89_187
= self
.input.LA(3)
10203 if (self
.synpred181()) :
10208 LA89_188
= self
.input.LA(3)
10210 if (self
.synpred181()) :
10215 LA89_189
= self
.input.LA(3)
10217 if (self
.synpred181()) :
10221 elif LA89
== IDENTIFIER
:
10222 LA89_190
= self
.input.LA(3)
10224 if (self
.synpred181()) :
10229 LA89_191
= self
.input.LA(3)
10231 if (self
.synpred181()) :
10236 LA89_192
= self
.input.LA(3)
10238 if (self
.synpred181()) :
10242 elif LA89
== 29 or LA89
== 30 or LA89
== 31 or LA89
== 32 or LA89
== 33:
10243 LA89_193
= self
.input.LA(3)
10245 if (self
.synpred181()) :
10250 LA89_194
= self
.input.LA(3)
10252 if (self
.synpred181()) :
10257 LA89_195
= self
.input.LA(3)
10259 if (self
.synpred181()) :
10264 LA89_196
= self
.input.LA(3)
10266 if (self
.synpred181()) :
10271 LA89_197
= self
.input.LA(3)
10273 if (self
.synpred181()) :
10278 LA89_198
= self
.input.LA(3)
10280 if (self
.synpred181()) :
10285 LA89_199
= self
.input.LA(3)
10287 if (self
.synpred181()) :
10292 LA89_200
= self
.input.LA(3)
10294 if (self
.synpred181()) :
10299 LA89_201
= self
.input.LA(3)
10301 if (self
.synpred181()) :
10306 LA89_202
= self
.input.LA(3)
10308 if (self
.synpred181()) :
10312 elif LA89
== 45 or LA89
== 46:
10313 LA89_203
= self
.input.LA(3)
10315 if (self
.synpred181()) :
10320 LA89_204
= self
.input.LA(3)
10322 if (self
.synpred181()) :
10326 elif LA89
== 49 or LA89
== 50 or LA89
== 51 or LA89
== 52 or LA89
== 53 or LA89
== 54 or LA89
== 55 or LA89
== 56 or LA89
== 57 or LA89
== 61:
10327 LA89_205
= self
.input.LA(3)
10329 if (self
.synpred181()) :
10335 LA89
= self
.input.LA(2)
10337 LA89_206
= self
.input.LA(3)
10339 if (self
.synpred181()) :
10344 LA89_207
= self
.input.LA(3)
10346 if (self
.synpred181()) :
10351 LA89_208
= self
.input.LA(3)
10353 if (self
.synpred181()) :
10358 LA89_209
= self
.input.LA(3)
10360 if (self
.synpred181()) :
10364 elif LA89
== IDENTIFIER
:
10365 LA89_210
= self
.input.LA(3)
10367 if (self
.synpred181()) :
10372 LA89_211
= self
.input.LA(3)
10374 if (self
.synpred181()) :
10379 LA89_212
= self
.input.LA(3)
10381 if (self
.synpred181()) :
10385 elif LA89
== 29 or LA89
== 30 or LA89
== 31 or LA89
== 32 or LA89
== 33:
10386 LA89_213
= self
.input.LA(3)
10388 if (self
.synpred181()) :
10393 LA89_214
= self
.input.LA(3)
10395 if (self
.synpred181()) :
10400 LA89_215
= self
.input.LA(3)
10402 if (self
.synpred181()) :
10407 LA89_216
= self
.input.LA(3)
10409 if (self
.synpred181()) :
10414 LA89_217
= self
.input.LA(3)
10416 if (self
.synpred181()) :
10421 LA89_218
= self
.input.LA(3)
10423 if (self
.synpred181()) :
10428 LA89_219
= self
.input.LA(3)
10430 if (self
.synpred181()) :
10435 LA89_220
= self
.input.LA(3)
10437 if (self
.synpred181()) :
10442 LA89_221
= self
.input.LA(3)
10444 if (self
.synpred181()) :
10449 LA89_222
= self
.input.LA(3)
10451 if (self
.synpred181()) :
10455 elif LA89
== 45 or LA89
== 46:
10456 LA89_223
= self
.input.LA(3)
10458 if (self
.synpred181()) :
10463 LA89_224
= self
.input.LA(3)
10465 if (self
.synpred181()) :
10469 elif LA89
== 49 or LA89
== 50 or LA89
== 51 or LA89
== 52 or LA89
== 53 or LA89
== 54 or LA89
== 55 or LA89
== 56 or LA89
== 57 or LA89
== 61:
10470 LA89_225
= self
.input.LA(3)
10472 if (self
.synpred181()) :
10478 LA89
= self
.input.LA(2)
10480 LA89_226
= self
.input.LA(3)
10482 if (self
.synpred181()) :
10487 LA89_227
= self
.input.LA(3)
10489 if (self
.synpred181()) :
10494 LA89_228
= self
.input.LA(3)
10496 if (self
.synpred181()) :
10501 LA89_229
= self
.input.LA(3)
10503 if (self
.synpred181()) :
10507 elif LA89
== IDENTIFIER
:
10508 LA89_230
= self
.input.LA(3)
10510 if (self
.synpred181()) :
10515 LA89_231
= self
.input.LA(3)
10517 if (self
.synpred181()) :
10522 LA89_232
= self
.input.LA(3)
10524 if (self
.synpred181()) :
10528 elif LA89
== 29 or LA89
== 30 or LA89
== 31 or LA89
== 32 or LA89
== 33:
10529 LA89_233
= self
.input.LA(3)
10531 if (self
.synpred181()) :
10536 LA89_234
= self
.input.LA(3)
10538 if (self
.synpred181()) :
10543 LA89_235
= self
.input.LA(3)
10545 if (self
.synpred181()) :
10550 LA89_236
= self
.input.LA(3)
10552 if (self
.synpred181()) :
10557 LA89_237
= self
.input.LA(3)
10559 if (self
.synpred181()) :
10564 LA89_238
= self
.input.LA(3)
10566 if (self
.synpred181()) :
10571 LA89_239
= self
.input.LA(3)
10573 if (self
.synpred181()) :
10578 LA89_240
= self
.input.LA(3)
10580 if (self
.synpred181()) :
10585 LA89_241
= self
.input.LA(3)
10587 if (self
.synpred181()) :
10592 LA89_242
= self
.input.LA(3)
10594 if (self
.synpred181()) :
10598 elif LA89
== 45 or LA89
== 46:
10599 LA89_243
= self
.input.LA(3)
10601 if (self
.synpred181()) :
10606 LA89_244
= self
.input.LA(3)
10608 if (self
.synpred181()) :
10612 elif LA89
== 49 or LA89
== 50 or LA89
== 51 or LA89
== 52 or LA89
== 53 or LA89
== 54 or LA89
== 55 or LA89
== 56 or LA89
== 57 or LA89
== 61:
10613 LA89_245
= self
.input.LA(3)
10615 if (self
.synpred181()) :
10621 LA89
= self
.input.LA(2)
10623 LA89_246
= self
.input.LA(3)
10625 if (self
.synpred181()) :
10630 LA89_247
= self
.input.LA(3)
10632 if (self
.synpred181()) :
10637 LA89_248
= self
.input.LA(3)
10639 if (self
.synpred181()) :
10644 LA89_249
= self
.input.LA(3)
10646 if (self
.synpred181()) :
10650 elif LA89
== IDENTIFIER
:
10651 LA89_250
= self
.input.LA(3)
10653 if (self
.synpred181()) :
10658 LA89_251
= self
.input.LA(3)
10660 if (self
.synpred181()) :
10665 LA89_252
= self
.input.LA(3)
10667 if (self
.synpred181()) :
10671 elif LA89
== 29 or LA89
== 30 or LA89
== 31 or LA89
== 32 or LA89
== 33:
10672 LA89_253
= self
.input.LA(3)
10674 if (self
.synpred181()) :
10679 LA89_254
= self
.input.LA(3)
10681 if (self
.synpred181()) :
10686 LA89_255
= self
.input.LA(3)
10688 if (self
.synpred181()) :
10693 LA89_256
= self
.input.LA(3)
10695 if (self
.synpred181()) :
10700 LA89_257
= self
.input.LA(3)
10702 if (self
.synpred181()) :
10707 LA89_258
= self
.input.LA(3)
10709 if (self
.synpred181()) :
10714 LA89_259
= self
.input.LA(3)
10716 if (self
.synpred181()) :
10721 LA89_260
= self
.input.LA(3)
10723 if (self
.synpred181()) :
10728 LA89_261
= self
.input.LA(3)
10730 if (self
.synpred181()) :
10735 LA89_262
= self
.input.LA(3)
10737 if (self
.synpred181()) :
10741 elif LA89
== 45 or LA89
== 46:
10742 LA89_263
= self
.input.LA(3)
10744 if (self
.synpred181()) :
10749 LA89_264
= self
.input.LA(3)
10751 if (self
.synpred181()) :
10755 elif LA89
== 49 or LA89
== 50 or LA89
== 51 or LA89
== 52 or LA89
== 53 or LA89
== 54 or LA89
== 55 or LA89
== 56 or LA89
== 57 or LA89
== 61:
10756 LA89_265
= self
.input.LA(3)
10758 if (self
.synpred181()) :
10764 LA89
= self
.input.LA(2)
10766 LA89_266
= self
.input.LA(3)
10768 if (self
.synpred181()) :
10773 LA89_267
= self
.input.LA(3)
10775 if (self
.synpred181()) :
10780 LA89_268
= self
.input.LA(3)
10782 if (self
.synpred181()) :
10787 LA89_269
= self
.input.LA(3)
10789 if (self
.synpred181()) :
10793 elif LA89
== IDENTIFIER
:
10794 LA89_270
= self
.input.LA(3)
10796 if (self
.synpred181()) :
10801 LA89_271
= self
.input.LA(3)
10803 if (self
.synpred181()) :
10808 LA89_272
= self
.input.LA(3)
10810 if (self
.synpred181()) :
10814 elif LA89
== 29 or LA89
== 30 or LA89
== 31 or LA89
== 32 or LA89
== 33:
10815 LA89_273
= self
.input.LA(3)
10817 if (self
.synpred181()) :
10822 LA89_274
= self
.input.LA(3)
10824 if (self
.synpred181()) :
10829 LA89_275
= self
.input.LA(3)
10831 if (self
.synpred181()) :
10836 LA89_276
= self
.input.LA(3)
10838 if (self
.synpred181()) :
10843 LA89_277
= self
.input.LA(3)
10845 if (self
.synpred181()) :
10850 LA89_278
= self
.input.LA(3)
10852 if (self
.synpred181()) :
10857 LA89_279
= self
.input.LA(3)
10859 if (self
.synpred181()) :
10864 LA89_280
= self
.input.LA(3)
10866 if (self
.synpred181()) :
10871 LA89_281
= self
.input.LA(3)
10873 if (self
.synpred181()) :
10878 LA89_282
= self
.input.LA(3)
10880 if (self
.synpred181()) :
10884 elif LA89
== 45 or LA89
== 46:
10885 LA89_283
= self
.input.LA(3)
10887 if (self
.synpred181()) :
10892 LA89_284
= self
.input.LA(3)
10894 if (self
.synpred181()) :
10898 elif LA89
== 49 or LA89
== 50 or LA89
== 51 or LA89
== 52 or LA89
== 53 or LA89
== 54 or LA89
== 55 or LA89
== 56 or LA89
== 57 or LA89
== 61:
10899 LA89_285
= self
.input.LA(3)
10901 if (self
.synpred181()) :
10907 LA89
= self
.input.LA(2)
10909 LA89_286
= self
.input.LA(3)
10911 if (self
.synpred181()) :
10916 LA89_287
= self
.input.LA(3)
10918 if (self
.synpred181()) :
10923 LA89_288
= self
.input.LA(3)
10925 if (self
.synpred181()) :
10930 LA89_289
= self
.input.LA(3)
10932 if (self
.synpred181()) :
10936 elif LA89
== IDENTIFIER
:
10937 LA89_290
= self
.input.LA(3)
10939 if (self
.synpred181()) :
10944 LA89_291
= self
.input.LA(3)
10946 if (self
.synpred181()) :
10951 LA89_292
= self
.input.LA(3)
10953 if (self
.synpred181()) :
10957 elif LA89
== 29 or LA89
== 30 or LA89
== 31 or LA89
== 32 or LA89
== 33:
10958 LA89_293
= self
.input.LA(3)
10960 if (self
.synpred181()) :
10965 LA89_294
= self
.input.LA(3)
10967 if (self
.synpred181()) :
10972 LA89_295
= self
.input.LA(3)
10974 if (self
.synpred181()) :
10979 LA89_296
= self
.input.LA(3)
10981 if (self
.synpred181()) :
10986 LA89_297
= self
.input.LA(3)
10988 if (self
.synpred181()) :
10993 LA89_298
= self
.input.LA(3)
10995 if (self
.synpred181()) :
11000 LA89_299
= self
.input.LA(3)
11002 if (self
.synpred181()) :
11007 LA89_300
= self
.input.LA(3)
11009 if (self
.synpred181()) :
11014 LA89_301
= self
.input.LA(3)
11016 if (self
.synpred181()) :
11021 LA89_302
= self
.input.LA(3)
11023 if (self
.synpred181()) :
11027 elif LA89
== 45 or LA89
== 46:
11028 LA89_303
= self
.input.LA(3)
11030 if (self
.synpred181()) :
11035 LA89_304
= self
.input.LA(3)
11037 if (self
.synpred181()) :
11041 elif LA89
== 49 or LA89
== 50 or LA89
== 51 or LA89
== 52 or LA89
== 53 or LA89
== 54 or LA89
== 55 or LA89
== 56 or LA89
== 57 or LA89
== 61:
11042 LA89_305
= self
.input.LA(3)
11044 if (self
.synpred181()) :
11049 elif LA89
== 45 or LA89
== 46:
11050 LA89_40
= self
.input.LA(2)
11052 if (LA89_40
== IDENTIFIER
) :
11053 LA89_306
= self
.input.LA(3)
11055 if (self
.synpred181()) :
11059 elif (LA89_40
== 43) :
11060 LA89_307
= self
.input.LA(3)
11062 if (self
.synpred181()) :
11069 LA89_41
= self
.input.LA(2)
11071 if (LA89_41
== 43) :
11072 LA89_308
= self
.input.LA(3)
11074 if (self
.synpred181()) :
11078 elif (LA89_41
== IDENTIFIER
) :
11079 LA89_309
= self
.input.LA(3)
11081 if (self
.synpred181()) :
11087 elif LA89
== 49 or LA89
== 50 or LA89
== 51 or LA89
== 52 or LA89
== 53 or LA89
== 54 or LA89
== 55 or LA89
== 56 or LA89
== 57 or LA89
== 58 or LA89
== 59 or LA89
== 60 or LA89
== 61:
11088 LA89
= self
.input.LA(2)
11090 LA89_310
= self
.input.LA(3)
11092 if (self
.synpred181()) :
11097 LA89_311
= self
.input.LA(3)
11099 if (self
.synpred181()) :
11104 LA89_312
= self
.input.LA(3)
11106 if (self
.synpred181()) :
11111 LA89_313
= self
.input.LA(3)
11113 if (self
.synpred181()) :
11117 elif LA89
== IDENTIFIER
:
11118 LA89_314
= self
.input.LA(3)
11120 if (self
.synpred181()) :
11125 LA89_315
= self
.input.LA(3)
11127 if (self
.synpred181()) :
11132 LA89_316
= self
.input.LA(3)
11134 if (self
.synpred181()) :
11138 elif LA89
== 29 or LA89
== 30 or LA89
== 31 or LA89
== 32 or LA89
== 33:
11139 LA89_317
= self
.input.LA(3)
11141 if (self
.synpred181()) :
11146 LA89_318
= self
.input.LA(3)
11148 if (self
.synpred181()) :
11153 LA89_319
= self
.input.LA(3)
11155 if (self
.synpred181()) :
11160 LA89_320
= self
.input.LA(3)
11162 if (self
.synpred181()) :
11167 LA89_321
= self
.input.LA(3)
11169 if (self
.synpred181()) :
11174 LA89_322
= self
.input.LA(3)
11176 if (self
.synpred181()) :
11181 LA89_323
= self
.input.LA(3)
11183 if (self
.synpred181()) :
11188 LA89_324
= self
.input.LA(3)
11190 if (self
.synpred181()) :
11195 LA89_325
= self
.input.LA(3)
11197 if (self
.synpred181()) :
11202 LA89_326
= self
.input.LA(3)
11204 if (self
.synpred181()) :
11208 elif LA89
== 45 or LA89
== 46:
11209 LA89_327
= self
.input.LA(3)
11211 if (self
.synpred181()) :
11216 LA89_328
= self
.input.LA(3)
11218 if (self
.synpred181()) :
11222 elif LA89
== 49 or LA89
== 50 or LA89
== 51 or LA89
== 52 or LA89
== 53 or LA89
== 54 or LA89
== 55 or LA89
== 56 or LA89
== 57 or LA89
== 61:
11223 LA89_329
= self
.input.LA(3)
11225 if (self
.synpred181()) :
11232 # C.g:0:0: declaration
11233 self
.following
.append(self
.FOLLOW_declaration_in_macro_statement2166
)
11235 self
.following
.pop()
11244 # C.g:544:33: ( statement_list )?
11246 LA90
= self
.input.LA(1)
11247 if LA90
== IDENTIFIER
:
11248 LA90
= self
.input.LA(2)
11249 if LA90
== 25 or LA90
== 29 or LA90
== 30 or LA90
== 31 or LA90
== 32 or LA90
== 33 or LA90
== 34 or LA90
== 35 or LA90
== 36 or LA90
== 37 or LA90
== 38 or LA90
== 39 or LA90
== 40 or LA90
== 41 or LA90
== 42 or LA90
== 45 or LA90
== 46 or LA90
== 47 or LA90
== 48 or LA90
== 49 or LA90
== 50 or LA90
== 51 or LA90
== 52 or LA90
== 53 or LA90
== 54 or LA90
== 55 or LA90
== 56 or LA90
== 57 or LA90
== 58 or LA90
== 59 or LA90
== 60 or LA90
== 61:
11252 LA90_45
= self
.input.LA(3)
11254 if (self
.synpred182()) :
11256 elif LA90
== STRING_LITERAL
:
11257 LA90_46
= self
.input.LA(3)
11259 if (self
.synpred182()) :
11261 elif LA90
== IDENTIFIER
:
11262 LA90_47
= self
.input.LA(3)
11264 if (self
.synpred182()) :
11267 LA90_48
= self
.input.LA(3)
11269 if (self
.synpred182()) :
11272 LA90_49
= self
.input.LA(3)
11274 if (self
.synpred182()) :
11277 LA90_50
= self
.input.LA(3)
11279 if (self
.synpred182()) :
11282 LA90_51
= self
.input.LA(3)
11284 if (self
.synpred182()) :
11287 LA90_52
= self
.input.LA(3)
11289 if (self
.synpred182()) :
11292 LA90_53
= self
.input.LA(3)
11294 if (self
.synpred182()) :
11297 LA90_54
= self
.input.LA(3)
11299 if (self
.synpred182()) :
11302 LA90_55
= self
.input.LA(3)
11304 if (self
.synpred182()) :
11307 LA90_56
= self
.input.LA(3)
11309 if (self
.synpred182()) :
11312 LA90_57
= self
.input.LA(3)
11314 if (self
.synpred182()) :
11316 elif LA90
== 101 or LA90
== 102:
11317 LA90_58
= self
.input.LA(3)
11319 if (self
.synpred182()) :
11321 elif LA90
== 97 or LA90
== 98 or LA90
== 99 or LA90
== 100:
11322 LA90_59
= self
.input.LA(3)
11324 if (self
.synpred182()) :
11326 elif LA90
== 95 or LA90
== 96:
11327 LA90_60
= self
.input.LA(3)
11329 if (self
.synpred182()) :
11332 LA90_61
= self
.input.LA(3)
11334 if (self
.synpred182()) :
11337 LA90_62
= self
.input.LA(3)
11339 if (self
.synpred182()) :
11342 LA90_63
= self
.input.LA(3)
11344 if (self
.synpred182()) :
11347 LA90_64
= self
.input.LA(3)
11349 if (self
.synpred182()) :
11352 LA90_65
= self
.input.LA(3)
11354 if (self
.synpred182()) :
11357 LA90_66
= self
.input.LA(3)
11359 if (self
.synpred182()) :
11362 LA90_67
= self
.input.LA(3)
11364 if (self
.synpred182()) :
11366 elif LA90
== 28 or LA90
== 80 or LA90
== 81 or LA90
== 82 or LA90
== 83 or LA90
== 84 or LA90
== 85 or LA90
== 86 or LA90
== 87 or LA90
== 88 or LA90
== 89:
11367 LA90_70
= self
.input.LA(3)
11369 if (self
.synpred182()) :
11371 elif LA90
== 25 or LA90
== 26 or LA90
== 29 or LA90
== 30 or LA90
== 31 or LA90
== 32 or LA90
== 33 or LA90
== 34 or LA90
== 35 or LA90
== 36 or LA90
== 37 or LA90
== 38 or LA90
== 39 or LA90
== 40 or LA90
== 41 or LA90
== 42 or LA90
== 43 or LA90
== 45 or LA90
== 46 or LA90
== 48 or LA90
== 49 or LA90
== 50 or LA90
== 51 or LA90
== 52 or LA90
== 53 or LA90
== 54 or LA90
== 55 or LA90
== 56 or LA90
== 57 or LA90
== 58 or LA90
== 59 or LA90
== 60 or LA90
== 61 or LA90
== 103 or LA90
== 104 or LA90
== 105 or LA90
== 106 or LA90
== 107 or LA90
== 108 or LA90
== 110 or LA90
== 111 or LA90
== 112 or LA90
== 113 or LA90
== 114 or LA90
== 115 or LA90
== 116 or LA90
== 117:
11373 elif LA90
== HEX_LITERAL
:
11374 LA90
= self
.input.LA(2)
11376 LA90_87
= self
.input.LA(3)
11378 if (self
.synpred182()) :
11381 LA90_88
= self
.input.LA(3)
11383 if (self
.synpred182()) :
11386 LA90_89
= self
.input.LA(3)
11388 if (self
.synpred182()) :
11391 LA90_90
= self
.input.LA(3)
11393 if (self
.synpred182()) :
11396 LA90_91
= self
.input.LA(3)
11398 if (self
.synpred182()) :
11401 LA90_92
= self
.input.LA(3)
11403 if (self
.synpred182()) :
11406 LA90_93
= self
.input.LA(3)
11408 if (self
.synpred182()) :
11410 elif LA90
== 28 or LA90
== 80 or LA90
== 81 or LA90
== 82 or LA90
== 83 or LA90
== 84 or LA90
== 85 or LA90
== 86 or LA90
== 87 or LA90
== 88 or LA90
== 89:
11411 LA90_94
= self
.input.LA(3)
11413 if (self
.synpred182()) :
11416 LA90_95
= self
.input.LA(3)
11418 if (self
.synpred182()) :
11421 LA90_96
= self
.input.LA(3)
11423 if (self
.synpred182()) :
11426 LA90_97
= self
.input.LA(3)
11428 if (self
.synpred182()) :
11431 LA90_98
= self
.input.LA(3)
11433 if (self
.synpred182()) :
11435 elif LA90
== 101 or LA90
== 102:
11436 LA90_99
= self
.input.LA(3)
11438 if (self
.synpred182()) :
11440 elif LA90
== 97 or LA90
== 98 or LA90
== 99 or LA90
== 100:
11441 LA90_100
= self
.input.LA(3)
11443 if (self
.synpred182()) :
11445 elif LA90
== 95 or LA90
== 96:
11446 LA90_101
= self
.input.LA(3)
11448 if (self
.synpred182()) :
11451 LA90_102
= self
.input.LA(3)
11453 if (self
.synpred182()) :
11456 LA90_103
= self
.input.LA(3)
11458 if (self
.synpred182()) :
11461 LA90_104
= self
.input.LA(3)
11463 if (self
.synpred182()) :
11466 LA90_105
= self
.input.LA(3)
11468 if (self
.synpred182()) :
11471 LA90_106
= self
.input.LA(3)
11473 if (self
.synpred182()) :
11476 LA90_107
= self
.input.LA(3)
11478 if (self
.synpred182()) :
11481 LA90_108
= self
.input.LA(3)
11483 if (self
.synpred182()) :
11487 elif LA90
== OCTAL_LITERAL
:
11488 LA90
= self
.input.LA(2)
11490 LA90_111
= self
.input.LA(3)
11492 if (self
.synpred182()) :
11495 LA90_112
= self
.input.LA(3)
11497 if (self
.synpred182()) :
11500 LA90_113
= self
.input.LA(3)
11502 if (self
.synpred182()) :
11505 LA90_114
= self
.input.LA(3)
11507 if (self
.synpred182()) :
11510 LA90_115
= self
.input.LA(3)
11512 if (self
.synpred182()) :
11515 LA90_116
= self
.input.LA(3)
11517 if (self
.synpred182()) :
11520 LA90_117
= self
.input.LA(3)
11522 if (self
.synpred182()) :
11525 LA90_118
= self
.input.LA(3)
11527 if (self
.synpred182()) :
11530 LA90_119
= self
.input.LA(3)
11532 if (self
.synpred182()) :
11535 LA90_120
= self
.input.LA(3)
11537 if (self
.synpred182()) :
11540 LA90_121
= self
.input.LA(3)
11542 if (self
.synpred182()) :
11544 elif LA90
== 101 or LA90
== 102:
11545 LA90_122
= self
.input.LA(3)
11547 if (self
.synpred182()) :
11549 elif LA90
== 97 or LA90
== 98 or LA90
== 99 or LA90
== 100:
11550 LA90_123
= self
.input.LA(3)
11552 if (self
.synpred182()) :
11554 elif LA90
== 95 or LA90
== 96:
11555 LA90_124
= self
.input.LA(3)
11557 if (self
.synpred182()) :
11560 LA90_125
= self
.input.LA(3)
11562 if (self
.synpred182()) :
11565 LA90_126
= self
.input.LA(3)
11567 if (self
.synpred182()) :
11570 LA90_127
= self
.input.LA(3)
11572 if (self
.synpred182()) :
11575 LA90_128
= self
.input.LA(3)
11577 if (self
.synpred182()) :
11580 LA90_129
= self
.input.LA(3)
11582 if (self
.synpred182()) :
11585 LA90_130
= self
.input.LA(3)
11587 if (self
.synpred182()) :
11590 LA90_131
= self
.input.LA(3)
11592 if (self
.synpred182()) :
11596 elif LA90
== 28 or LA90
== 80 or LA90
== 81 or LA90
== 82 or LA90
== 83 or LA90
== 84 or LA90
== 85 or LA90
== 86 or LA90
== 87 or LA90
== 88 or LA90
== 89:
11597 LA90_134
= self
.input.LA(3)
11599 if (self
.synpred182()) :
11601 elif LA90
== DECIMAL_LITERAL
:
11602 LA90
= self
.input.LA(2)
11604 LA90_135
= self
.input.LA(3)
11606 if (self
.synpred182()) :
11609 LA90_136
= self
.input.LA(3)
11611 if (self
.synpred182()) :
11614 LA90_137
= self
.input.LA(3)
11616 if (self
.synpred182()) :
11619 LA90_138
= self
.input.LA(3)
11621 if (self
.synpred182()) :
11624 LA90_139
= self
.input.LA(3)
11626 if (self
.synpred182()) :
11629 LA90_140
= self
.input.LA(3)
11631 if (self
.synpred182()) :
11634 LA90_141
= self
.input.LA(3)
11636 if (self
.synpred182()) :
11638 elif LA90
== 28 or LA90
== 80 or LA90
== 81 or LA90
== 82 or LA90
== 83 or LA90
== 84 or LA90
== 85 or LA90
== 86 or LA90
== 87 or LA90
== 88 or LA90
== 89:
11639 LA90_142
= self
.input.LA(3)
11641 if (self
.synpred182()) :
11644 LA90_143
= self
.input.LA(3)
11646 if (self
.synpred182()) :
11649 LA90_144
= self
.input.LA(3)
11651 if (self
.synpred182()) :
11654 LA90_145
= self
.input.LA(3)
11656 if (self
.synpred182()) :
11659 LA90_146
= self
.input.LA(3)
11661 if (self
.synpred182()) :
11663 elif LA90
== 101 or LA90
== 102:
11664 LA90_147
= self
.input.LA(3)
11666 if (self
.synpred182()) :
11668 elif LA90
== 97 or LA90
== 98 or LA90
== 99 or LA90
== 100:
11669 LA90_148
= self
.input.LA(3)
11671 if (self
.synpred182()) :
11673 elif LA90
== 95 or LA90
== 96:
11674 LA90_149
= self
.input.LA(3)
11676 if (self
.synpred182()) :
11679 LA90_150
= self
.input.LA(3)
11681 if (self
.synpred182()) :
11684 LA90_151
= self
.input.LA(3)
11686 if (self
.synpred182()) :
11689 LA90_152
= self
.input.LA(3)
11691 if (self
.synpred182()) :
11694 LA90_153
= self
.input.LA(3)
11696 if (self
.synpred182()) :
11699 LA90_154
= self
.input.LA(3)
11701 if (self
.synpred182()) :
11704 LA90_155
= self
.input.LA(3)
11706 if (self
.synpred182()) :
11709 LA90_156
= self
.input.LA(3)
11711 if (self
.synpred182()) :
11715 elif LA90
== CHARACTER_LITERAL
:
11716 LA90
= self
.input.LA(2)
11718 LA90_159
= self
.input.LA(3)
11720 if (self
.synpred182()) :
11723 LA90_160
= self
.input.LA(3)
11725 if (self
.synpred182()) :
11728 LA90_161
= self
.input.LA(3)
11730 if (self
.synpred182()) :
11733 LA90_162
= self
.input.LA(3)
11735 if (self
.synpred182()) :
11738 LA90_163
= self
.input.LA(3)
11740 if (self
.synpred182()) :
11743 LA90_164
= self
.input.LA(3)
11745 if (self
.synpred182()) :
11748 LA90_165
= self
.input.LA(3)
11750 if (self
.synpred182()) :
11753 LA90_166
= self
.input.LA(3)
11755 if (self
.synpred182()) :
11758 LA90_167
= self
.input.LA(3)
11760 if (self
.synpred182()) :
11763 LA90_168
= self
.input.LA(3)
11765 if (self
.synpred182()) :
11768 LA90_169
= self
.input.LA(3)
11770 if (self
.synpred182()) :
11772 elif LA90
== 101 or LA90
== 102:
11773 LA90_170
= self
.input.LA(3)
11775 if (self
.synpred182()) :
11777 elif LA90
== 97 or LA90
== 98 or LA90
== 99 or LA90
== 100:
11778 LA90_171
= self
.input.LA(3)
11780 if (self
.synpred182()) :
11782 elif LA90
== 95 or LA90
== 96:
11783 LA90_172
= self
.input.LA(3)
11785 if (self
.synpred182()) :
11788 LA90_173
= self
.input.LA(3)
11790 if (self
.synpred182()) :
11793 LA90_174
= self
.input.LA(3)
11795 if (self
.synpred182()) :
11798 LA90_175
= self
.input.LA(3)
11800 if (self
.synpred182()) :
11803 LA90_176
= self
.input.LA(3)
11805 if (self
.synpred182()) :
11808 LA90_177
= self
.input.LA(3)
11810 if (self
.synpred182()) :
11813 LA90_178
= self
.input.LA(3)
11815 if (self
.synpred182()) :
11818 LA90_179
= self
.input.LA(3)
11820 if (self
.synpred182()) :
11824 elif LA90
== 28 or LA90
== 80 or LA90
== 81 or LA90
== 82 or LA90
== 83 or LA90
== 84 or LA90
== 85 or LA90
== 86 or LA90
== 87 or LA90
== 88 or LA90
== 89:
11825 LA90_181
= self
.input.LA(3)
11827 if (self
.synpred182()) :
11829 elif LA90
== STRING_LITERAL
:
11830 LA90
= self
.input.LA(2)
11831 if LA90
== IDENTIFIER
:
11832 LA90_183
= self
.input.LA(3)
11834 if (self
.synpred182()) :
11837 LA90_184
= self
.input.LA(3)
11839 if (self
.synpred182()) :
11842 LA90_185
= self
.input.LA(3)
11844 if (self
.synpred182()) :
11847 LA90_186
= self
.input.LA(3)
11849 if (self
.synpred182()) :
11852 LA90_187
= self
.input.LA(3)
11854 if (self
.synpred182()) :
11857 LA90_188
= self
.input.LA(3)
11859 if (self
.synpred182()) :
11862 LA90_189
= self
.input.LA(3)
11864 if (self
.synpred182()) :
11867 LA90_190
= self
.input.LA(3)
11869 if (self
.synpred182()) :
11871 elif LA90
== 28 or LA90
== 80 or LA90
== 81 or LA90
== 82 or LA90
== 83 or LA90
== 84 or LA90
== 85 or LA90
== 86 or LA90
== 87 or LA90
== 88 or LA90
== 89:
11872 LA90_191
= self
.input.LA(3)
11874 if (self
.synpred182()) :
11876 elif LA90
== STRING_LITERAL
:
11877 LA90_192
= self
.input.LA(3)
11879 if (self
.synpred182()) :
11882 LA90_193
= self
.input.LA(3)
11884 if (self
.synpred182()) :
11887 LA90_194
= self
.input.LA(3)
11889 if (self
.synpred182()) :
11892 LA90_195
= self
.input.LA(3)
11894 if (self
.synpred182()) :
11897 LA90_196
= self
.input.LA(3)
11899 if (self
.synpred182()) :
11901 elif LA90
== 101 or LA90
== 102:
11902 LA90_197
= self
.input.LA(3)
11904 if (self
.synpred182()) :
11906 elif LA90
== 97 or LA90
== 98 or LA90
== 99 or LA90
== 100:
11907 LA90_198
= self
.input.LA(3)
11909 if (self
.synpred182()) :
11911 elif LA90
== 95 or LA90
== 96:
11912 LA90_199
= self
.input.LA(3)
11914 if (self
.synpred182()) :
11917 LA90_200
= self
.input.LA(3)
11919 if (self
.synpred182()) :
11922 LA90_201
= self
.input.LA(3)
11924 if (self
.synpred182()) :
11927 LA90_202
= self
.input.LA(3)
11929 if (self
.synpred182()) :
11932 LA90_203
= self
.input.LA(3)
11934 if (self
.synpred182()) :
11937 LA90_204
= self
.input.LA(3)
11939 if (self
.synpred182()) :
11942 LA90_205
= self
.input.LA(3)
11944 if (self
.synpred182()) :
11947 LA90_206
= self
.input.LA(3)
11949 if (self
.synpred182()) :
11953 elif LA90
== FLOATING_POINT_LITERAL
:
11954 LA90
= self
.input.LA(2)
11956 LA90_209
= self
.input.LA(3)
11958 if (self
.synpred182()) :
11961 LA90_210
= self
.input.LA(3)
11963 if (self
.synpred182()) :
11966 LA90_211
= self
.input.LA(3)
11968 if (self
.synpred182()) :
11971 LA90_212
= self
.input.LA(3)
11973 if (self
.synpred182()) :
11976 LA90_213
= self
.input.LA(3)
11978 if (self
.synpred182()) :
11981 LA90_214
= self
.input.LA(3)
11983 if (self
.synpred182()) :
11986 LA90_215
= self
.input.LA(3)
11988 if (self
.synpred182()) :
11990 elif LA90
== 28 or LA90
== 80 or LA90
== 81 or LA90
== 82 or LA90
== 83 or LA90
== 84 or LA90
== 85 or LA90
== 86 or LA90
== 87 or LA90
== 88 or LA90
== 89:
11991 LA90_216
= self
.input.LA(3)
11993 if (self
.synpred182()) :
11996 LA90_217
= self
.input.LA(3)
11998 if (self
.synpred182()) :
12001 LA90_218
= self
.input.LA(3)
12003 if (self
.synpred182()) :
12006 LA90_219
= self
.input.LA(3)
12008 if (self
.synpred182()) :
12011 LA90_220
= self
.input.LA(3)
12013 if (self
.synpred182()) :
12015 elif LA90
== 101 or LA90
== 102:
12016 LA90_221
= self
.input.LA(3)
12018 if (self
.synpred182()) :
12020 elif LA90
== 97 or LA90
== 98 or LA90
== 99 or LA90
== 100:
12021 LA90_222
= self
.input.LA(3)
12023 if (self
.synpred182()) :
12025 elif LA90
== 95 or LA90
== 96:
12026 LA90_223
= self
.input.LA(3)
12028 if (self
.synpred182()) :
12031 LA90_224
= self
.input.LA(3)
12033 if (self
.synpred182()) :
12036 LA90_225
= self
.input.LA(3)
12038 if (self
.synpred182()) :
12041 LA90_226
= self
.input.LA(3)
12043 if (self
.synpred182()) :
12046 LA90_227
= self
.input.LA(3)
12048 if (self
.synpred182()) :
12051 LA90_228
= self
.input.LA(3)
12053 if (self
.synpred182()) :
12056 LA90_229
= self
.input.LA(3)
12058 if (self
.synpred182()) :
12061 LA90_230
= self
.input.LA(3)
12063 if (self
.synpred182()) :
12068 LA90
= self
.input.LA(2)
12069 if LA90
== IDENTIFIER
:
12070 LA90_233
= self
.input.LA(3)
12072 if (self
.synpred182()) :
12074 elif LA90
== HEX_LITERAL
:
12075 LA90_234
= self
.input.LA(3)
12077 if (self
.synpred182()) :
12079 elif LA90
== OCTAL_LITERAL
:
12080 LA90_235
= self
.input.LA(3)
12082 if (self
.synpred182()) :
12084 elif LA90
== DECIMAL_LITERAL
:
12085 LA90_236
= self
.input.LA(3)
12087 if (self
.synpred182()) :
12089 elif LA90
== CHARACTER_LITERAL
:
12090 LA90_237
= self
.input.LA(3)
12092 if (self
.synpred182()) :
12094 elif LA90
== STRING_LITERAL
:
12095 LA90_238
= self
.input.LA(3)
12097 if (self
.synpred182()) :
12099 elif LA90
== FLOATING_POINT_LITERAL
:
12100 LA90_239
= self
.input.LA(3)
12102 if (self
.synpred182()) :
12105 LA90_240
= self
.input.LA(3)
12107 if (self
.synpred182()) :
12110 LA90_241
= self
.input.LA(3)
12112 if (self
.synpred182()) :
12115 LA90_242
= self
.input.LA(3)
12117 if (self
.synpred182()) :
12119 elif LA90
== 66 or LA90
== 68 or LA90
== 69 or LA90
== 77 or LA90
== 78 or LA90
== 79:
12120 LA90_243
= self
.input.LA(3)
12122 if (self
.synpred182()) :
12125 LA90_244
= self
.input.LA(3)
12127 if (self
.synpred182()) :
12129 elif LA90
== 49 or LA90
== 50 or LA90
== 51 or LA90
== 52 or LA90
== 53 or LA90
== 54 or LA90
== 55 or LA90
== 56 or LA90
== 57 or LA90
== 58 or LA90
== 59 or LA90
== 60 or LA90
== 61:
12130 LA90_245
= self
.input.LA(3)
12132 if (self
.synpred182()) :
12135 LA90_246
= self
.input.LA(3)
12137 if (self
.synpred182()) :
12140 LA90_247
= self
.input.LA(3)
12142 if (self
.synpred182()) :
12145 LA90_248
= self
.input.LA(3)
12147 if (self
.synpred182()) :
12150 LA90_249
= self
.input.LA(3)
12152 if (self
.synpred182()) :
12155 LA90_250
= self
.input.LA(3)
12157 if (self
.synpred182()) :
12160 LA90_251
= self
.input.LA(3)
12162 if (self
.synpred182()) :
12165 LA90_252
= self
.input.LA(3)
12167 if (self
.synpred182()) :
12170 LA90_253
= self
.input.LA(3)
12172 if (self
.synpred182()) :
12175 LA90_254
= self
.input.LA(3)
12177 if (self
.synpred182()) :
12179 elif LA90
== 45 or LA90
== 46:
12180 LA90_255
= self
.input.LA(3)
12182 if (self
.synpred182()) :
12185 LA90_256
= self
.input.LA(3)
12187 if (self
.synpred182()) :
12190 LA90
= self
.input.LA(2)
12191 if LA90
== IDENTIFIER
:
12192 LA90_257
= self
.input.LA(3)
12194 if (self
.synpred182()) :
12196 elif LA90
== HEX_LITERAL
:
12197 LA90_258
= self
.input.LA(3)
12199 if (self
.synpred182()) :
12201 elif LA90
== OCTAL_LITERAL
:
12202 LA90_259
= self
.input.LA(3)
12204 if (self
.synpred182()) :
12206 elif LA90
== DECIMAL_LITERAL
:
12207 LA90_260
= self
.input.LA(3)
12209 if (self
.synpred182()) :
12211 elif LA90
== CHARACTER_LITERAL
:
12212 LA90_261
= self
.input.LA(3)
12214 if (self
.synpred182()) :
12216 elif LA90
== STRING_LITERAL
:
12217 LA90_262
= self
.input.LA(3)
12219 if (self
.synpred182()) :
12221 elif LA90
== FLOATING_POINT_LITERAL
:
12222 LA90_263
= self
.input.LA(3)
12224 if (self
.synpred182()) :
12227 LA90_264
= self
.input.LA(3)
12229 if (self
.synpred182()) :
12232 LA90_265
= self
.input.LA(3)
12234 if (self
.synpred182()) :
12237 LA90_266
= self
.input.LA(3)
12239 if (self
.synpred182()) :
12241 elif LA90
== 66 or LA90
== 68 or LA90
== 69 or LA90
== 77 or LA90
== 78 or LA90
== 79:
12242 LA90_267
= self
.input.LA(3)
12244 if (self
.synpred182()) :
12247 LA90_268
= self
.input.LA(3)
12249 if (self
.synpred182()) :
12252 LA90
= self
.input.LA(2)
12253 if LA90
== IDENTIFIER
:
12254 LA90_269
= self
.input.LA(3)
12256 if (self
.synpred182()) :
12258 elif LA90
== HEX_LITERAL
:
12259 LA90_270
= self
.input.LA(3)
12261 if (self
.synpred182()) :
12263 elif LA90
== OCTAL_LITERAL
:
12264 LA90_271
= self
.input.LA(3)
12266 if (self
.synpred182()) :
12268 elif LA90
== DECIMAL_LITERAL
:
12269 LA90_272
= self
.input.LA(3)
12271 if (self
.synpred182()) :
12273 elif LA90
== CHARACTER_LITERAL
:
12274 LA90_273
= self
.input.LA(3)
12276 if (self
.synpred182()) :
12278 elif LA90
== STRING_LITERAL
:
12279 LA90_274
= self
.input.LA(3)
12281 if (self
.synpred182()) :
12283 elif LA90
== FLOATING_POINT_LITERAL
:
12284 LA90_275
= self
.input.LA(3)
12286 if (self
.synpred182()) :
12289 LA90_276
= self
.input.LA(3)
12291 if (self
.synpred182()) :
12294 LA90_277
= self
.input.LA(3)
12296 if (self
.synpred182()) :
12299 LA90_278
= self
.input.LA(3)
12301 if (self
.synpred182()) :
12303 elif LA90
== 66 or LA90
== 68 or LA90
== 69 or LA90
== 77 or LA90
== 78 or LA90
== 79:
12304 LA90_279
= self
.input.LA(3)
12306 if (self
.synpred182()) :
12309 LA90_280
= self
.input.LA(3)
12311 if (self
.synpred182()) :
12313 elif LA90
== 66 or LA90
== 68 or LA90
== 69 or LA90
== 77 or LA90
== 78 or LA90
== 79:
12314 LA90
= self
.input.LA(2)
12316 LA90_281
= self
.input.LA(3)
12318 if (self
.synpred182()) :
12320 elif LA90
== IDENTIFIER
:
12321 LA90_282
= self
.input.LA(3)
12323 if (self
.synpred182()) :
12325 elif LA90
== HEX_LITERAL
:
12326 LA90_283
= self
.input.LA(3)
12328 if (self
.synpred182()) :
12330 elif LA90
== OCTAL_LITERAL
:
12331 LA90_284
= self
.input.LA(3)
12333 if (self
.synpred182()) :
12335 elif LA90
== DECIMAL_LITERAL
:
12336 LA90_285
= self
.input.LA(3)
12338 if (self
.synpred182()) :
12340 elif LA90
== CHARACTER_LITERAL
:
12341 LA90_286
= self
.input.LA(3)
12343 if (self
.synpred182()) :
12345 elif LA90
== STRING_LITERAL
:
12346 LA90_287
= self
.input.LA(3)
12348 if (self
.synpred182()) :
12350 elif LA90
== FLOATING_POINT_LITERAL
:
12351 LA90_288
= self
.input.LA(3)
12353 if (self
.synpred182()) :
12356 LA90_289
= self
.input.LA(3)
12358 if (self
.synpred182()) :
12361 LA90_290
= self
.input.LA(3)
12363 if (self
.synpred182()) :
12365 elif LA90
== 66 or LA90
== 68 or LA90
== 69 or LA90
== 77 or LA90
== 78 or LA90
== 79:
12366 LA90_291
= self
.input.LA(3)
12368 if (self
.synpred182()) :
12371 LA90_292
= self
.input.LA(3)
12373 if (self
.synpred182()) :
12376 LA90
= self
.input.LA(2)
12378 LA90_293
= self
.input.LA(3)
12380 if (self
.synpred182()) :
12382 elif LA90
== IDENTIFIER
:
12383 LA90_294
= self
.input.LA(3)
12385 if (self
.synpred182()) :
12387 elif LA90
== HEX_LITERAL
:
12388 LA90_295
= self
.input.LA(3)
12390 if (self
.synpred182()) :
12392 elif LA90
== OCTAL_LITERAL
:
12393 LA90_296
= self
.input.LA(3)
12395 if (self
.synpred182()) :
12397 elif LA90
== DECIMAL_LITERAL
:
12398 LA90_297
= self
.input.LA(3)
12400 if (self
.synpred182()) :
12402 elif LA90
== CHARACTER_LITERAL
:
12403 LA90_298
= self
.input.LA(3)
12405 if (self
.synpred182()) :
12407 elif LA90
== STRING_LITERAL
:
12408 LA90_299
= self
.input.LA(3)
12410 if (self
.synpred182()) :
12412 elif LA90
== FLOATING_POINT_LITERAL
:
12413 LA90_300
= self
.input.LA(3)
12415 if (self
.synpred182()) :
12418 LA90_301
= self
.input.LA(3)
12420 if (self
.synpred182()) :
12423 LA90_302
= self
.input.LA(3)
12425 if (self
.synpred182()) :
12427 elif LA90
== 66 or LA90
== 68 or LA90
== 69 or LA90
== 77 or LA90
== 78 or LA90
== 79:
12428 LA90_303
= self
.input.LA(3)
12430 if (self
.synpred182()) :
12433 LA90_304
= self
.input.LA(3)
12435 if (self
.synpred182()) :
12438 # C.g:0:0: statement_list
12439 self
.following
.append(self
.FOLLOW_statement_list_in_macro_statement2170
)
12440 self
.statement_list()
12441 self
.following
.pop()
12447 # C.g:544:49: ( expression )?
12449 LA91_0
= self
.input.LA(1)
12451 if ((IDENTIFIER
<= LA91_0
<= FLOATING_POINT_LITERAL
) or LA91_0
== 62 or LA91_0
== 66 or (68 <= LA91_0
<= 69) or (72 <= LA91_0
<= 74) or (77 <= LA91_0
<= 79)) :
12454 # C.g:0:0: expression
12455 self
.following
.append(self
.FOLLOW_expression_in_macro_statement2173
)
12457 self
.following
.pop()
12463 self
.match(self
.input, 63, self
.FOLLOW_63_in_macro_statement2176
)
12470 except RecognitionException
, re
:
12471 self
.reportError(re
)
12472 self
.recover(self
.input, re
)
12474 if self
.backtracking
> 0:
12475 self
.memoize(self
.input, 64, macro_statement_StartIndex
)
12481 # $ANTLR end macro_statement
12484 # $ANTLR start labeled_statement
12485 # C.g:547:1: labeled_statement : ( IDENTIFIER ':' statement | 'case' constant_expression ':' statement | 'default' ':' statement );
12486 def labeled_statement(self
, ):
12488 labeled_statement_StartIndex
= self
.input.index()
12491 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 65):
12494 # C.g:548:2: ( IDENTIFIER ':' statement | 'case' constant_expression ':' statement | 'default' ':' statement )
12496 LA92
= self
.input.LA(1)
12497 if LA92
== IDENTIFIER
:
12504 if self
.backtracking
> 0:
12508 nvae
= NoViableAltException("547:1: labeled_statement : ( IDENTIFIER ':' statement | 'case' constant_expression ':' statement | 'default' ':' statement );", 92, 0, self
.input)
12513 # C.g:548:4: IDENTIFIER ':' statement
12514 self
.match(self
.input, IDENTIFIER
, self
.FOLLOW_IDENTIFIER_in_labeled_statement2188
)
12517 self
.match(self
.input, 47, self
.FOLLOW_47_in_labeled_statement2190
)
12520 self
.following
.append(self
.FOLLOW_statement_in_labeled_statement2192
)
12522 self
.following
.pop()
12528 # C.g:549:4: 'case' constant_expression ':' statement
12529 self
.match(self
.input, 106, self
.FOLLOW_106_in_labeled_statement2197
)
12532 self
.following
.append(self
.FOLLOW_constant_expression_in_labeled_statement2199
)
12533 self
.constant_expression()
12534 self
.following
.pop()
12537 self
.match(self
.input, 47, self
.FOLLOW_47_in_labeled_statement2201
)
12540 self
.following
.append(self
.FOLLOW_statement_in_labeled_statement2203
)
12542 self
.following
.pop()
12548 # C.g:550:4: 'default' ':' statement
12549 self
.match(self
.input, 107, self
.FOLLOW_107_in_labeled_statement2208
)
12552 self
.match(self
.input, 47, self
.FOLLOW_47_in_labeled_statement2210
)
12555 self
.following
.append(self
.FOLLOW_statement_in_labeled_statement2212
)
12557 self
.following
.pop()
12563 except RecognitionException
, re
:
12564 self
.reportError(re
)
12565 self
.recover(self
.input, re
)
12567 if self
.backtracking
> 0:
12568 self
.memoize(self
.input, 65, labeled_statement_StartIndex
)
12574 # $ANTLR end labeled_statement
12576 class compound_statement_return(object):
12577 def __init__(self
):
12583 # $ANTLR start compound_statement
12584 # C.g:553:1: compound_statement : '{' ( declaration )* ( statement_list )? '}' ;
12585 def compound_statement(self
, ):
12587 retval
= self
.compound_statement_return()
12588 retval
.start
= self
.input.LT(1)
12589 compound_statement_StartIndex
= self
.input.index()
12592 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 66):
12595 # C.g:554:2: ( '{' ( declaration )* ( statement_list )? '}' )
12596 # C.g:554:4: '{' ( declaration )* ( statement_list )? '}'
12597 self
.match(self
.input, 43, self
.FOLLOW_43_in_compound_statement2223
)
12600 # C.g:554:8: ( declaration )*
12601 while True: #loop93
12603 LA93
= self
.input.LA(1)
12604 if LA93
== IDENTIFIER
:
12605 LA93
= self
.input.LA(2)
12607 LA93_44
= self
.input.LA(3)
12609 if (self
.synpred186()) :
12613 elif LA93
== IDENTIFIER
:
12614 LA93_47
= self
.input.LA(3)
12616 if (self
.synpred186()) :
12621 LA93_48
= self
.input.LA(3)
12623 if (self
.synpred186()) :
12628 LA93_49
= self
.input.LA(3)
12630 if (self
.synpred186()) :
12635 LA93_50
= self
.input.LA(3)
12637 if (self
.synpred186()) :
12642 LA93_51
= self
.input.LA(3)
12644 if (self
.synpred186()) :
12649 LA93_52
= self
.input.LA(3)
12651 if (self
.synpred186()) :
12655 elif LA93
== 29 or LA93
== 30 or LA93
== 31 or LA93
== 32 or LA93
== 33:
12656 LA93_53
= self
.input.LA(3)
12658 if (self
.synpred186()) :
12663 LA93_54
= self
.input.LA(3)
12665 if (self
.synpred186()) :
12670 LA93_55
= self
.input.LA(3)
12672 if (self
.synpred186()) :
12677 LA93_56
= self
.input.LA(3)
12679 if (self
.synpred186()) :
12684 LA93_57
= self
.input.LA(3)
12686 if (self
.synpred186()) :
12691 LA93_58
= self
.input.LA(3)
12693 if (self
.synpred186()) :
12698 LA93_59
= self
.input.LA(3)
12700 if (self
.synpred186()) :
12705 LA93_60
= self
.input.LA(3)
12707 if (self
.synpred186()) :
12712 LA93_61
= self
.input.LA(3)
12714 if (self
.synpred186()) :
12719 LA93_62
= self
.input.LA(3)
12721 if (self
.synpred186()) :
12725 elif LA93
== 45 or LA93
== 46:
12726 LA93_63
= self
.input.LA(3)
12728 if (self
.synpred186()) :
12733 LA93_64
= self
.input.LA(3)
12735 if (self
.synpred186()) :
12739 elif LA93
== 49 or LA93
== 50 or LA93
== 51 or LA93
== 52 or LA93
== 53 or LA93
== 54 or LA93
== 55 or LA93
== 56 or LA93
== 57 or LA93
== 61:
12740 LA93_65
= self
.input.LA(3)
12742 if (self
.synpred186()) :
12748 LA93
= self
.input.LA(2)
12749 if LA93
== 29 or LA93
== 30 or LA93
== 31 or LA93
== 32 or LA93
== 33:
12750 LA93_86
= self
.input.LA(3)
12752 if (self
.synpred186()) :
12757 LA93_87
= self
.input.LA(3)
12759 if (self
.synpred186()) :
12764 LA93_88
= self
.input.LA(3)
12766 if (self
.synpred186()) :
12771 LA93_89
= self
.input.LA(3)
12773 if (self
.synpred186()) :
12778 LA93_90
= self
.input.LA(3)
12780 if (self
.synpred186()) :
12785 LA93_91
= self
.input.LA(3)
12787 if (self
.synpred186()) :
12792 LA93_92
= self
.input.LA(3)
12794 if (self
.synpred186()) :
12799 LA93_93
= self
.input.LA(3)
12801 if (self
.synpred186()) :
12806 LA93_94
= self
.input.LA(3)
12808 if (self
.synpred186()) :
12813 LA93_95
= self
.input.LA(3)
12815 if (self
.synpred186()) :
12819 elif LA93
== 45 or LA93
== 46:
12820 LA93_96
= self
.input.LA(3)
12822 if (self
.synpred186()) :
12827 LA93_97
= self
.input.LA(3)
12829 if (self
.synpred186()) :
12833 elif LA93
== IDENTIFIER
:
12834 LA93_98
= self
.input.LA(3)
12836 if (self
.synpred186()) :
12841 LA93_99
= self
.input.LA(3)
12843 if (self
.synpred186()) :
12848 LA93_100
= self
.input.LA(3)
12850 if (self
.synpred186()) :
12855 LA93_101
= self
.input.LA(3)
12857 if (self
.synpred186()) :
12862 LA93_102
= self
.input.LA(3)
12864 if (self
.synpred186()) :
12868 elif LA93
== 49 or LA93
== 50 or LA93
== 51 or LA93
== 52 or LA93
== 53 or LA93
== 54 or LA93
== 55 or LA93
== 56 or LA93
== 57 or LA93
== 61:
12869 LA93_103
= self
.input.LA(3)
12871 if (self
.synpred186()) :
12876 LA93_104
= self
.input.LA(3)
12878 if (self
.synpred186()) :
12883 elif LA93
== 29 or LA93
== 30 or LA93
== 31 or LA93
== 32 or LA93
== 33:
12884 LA93
= self
.input.LA(2)
12886 LA93_105
= self
.input.LA(3)
12888 if (self
.synpred186()) :
12893 LA93_106
= self
.input.LA(3)
12895 if (self
.synpred186()) :
12900 LA93_107
= self
.input.LA(3)
12902 if (self
.synpred186()) :
12907 LA93_108
= self
.input.LA(3)
12909 if (self
.synpred186()) :
12913 elif LA93
== IDENTIFIER
:
12914 LA93_109
= self
.input.LA(3)
12916 if (self
.synpred186()) :
12921 LA93_110
= self
.input.LA(3)
12923 if (self
.synpred186()) :
12928 LA93_111
= self
.input.LA(3)
12930 if (self
.synpred186()) :
12934 elif LA93
== 29 or LA93
== 30 or LA93
== 31 or LA93
== 32 or LA93
== 33:
12935 LA93_112
= self
.input.LA(3)
12937 if (self
.synpred186()) :
12942 LA93_113
= self
.input.LA(3)
12944 if (self
.synpred186()) :
12949 LA93_114
= self
.input.LA(3)
12951 if (self
.synpred186()) :
12956 LA93_115
= self
.input.LA(3)
12958 if (self
.synpred186()) :
12963 LA93_116
= self
.input.LA(3)
12965 if (self
.synpred186()) :
12970 LA93_117
= self
.input.LA(3)
12972 if (self
.synpred186()) :
12977 LA93_118
= self
.input.LA(3)
12979 if (self
.synpred186()) :
12984 LA93_119
= self
.input.LA(3)
12986 if (self
.synpred186()) :
12991 LA93_120
= self
.input.LA(3)
12993 if (self
.synpred186()) :
12998 LA93_121
= self
.input.LA(3)
13000 if (self
.synpred186()) :
13004 elif LA93
== 45 or LA93
== 46:
13005 LA93_122
= self
.input.LA(3)
13007 if (self
.synpred186()) :
13012 LA93_123
= self
.input.LA(3)
13014 if (self
.synpred186()) :
13018 elif LA93
== 49 or LA93
== 50 or LA93
== 51 or LA93
== 52 or LA93
== 53 or LA93
== 54 or LA93
== 55 or LA93
== 56 or LA93
== 57 or LA93
== 61:
13019 LA93_124
= self
.input.LA(3)
13021 if (self
.synpred186()) :
13027 LA93
= self
.input.LA(2)
13029 LA93_125
= self
.input.LA(3)
13031 if (self
.synpred186()) :
13036 LA93_126
= self
.input.LA(3)
13038 if (self
.synpred186()) :
13043 LA93_127
= self
.input.LA(3)
13045 if (self
.synpred186()) :
13050 LA93_128
= self
.input.LA(3)
13052 if (self
.synpred186()) :
13056 elif LA93
== IDENTIFIER
:
13057 LA93_129
= self
.input.LA(3)
13059 if (self
.synpred186()) :
13064 LA93_130
= self
.input.LA(3)
13066 if (self
.synpred186()) :
13071 LA93_131
= self
.input.LA(3)
13073 if (self
.synpred186()) :
13077 elif LA93
== 29 or LA93
== 30 or LA93
== 31 or LA93
== 32 or LA93
== 33:
13078 LA93_132
= self
.input.LA(3)
13080 if (self
.synpred186()) :
13085 LA93_133
= self
.input.LA(3)
13087 if (self
.synpred186()) :
13092 LA93_134
= self
.input.LA(3)
13094 if (self
.synpred186()) :
13099 LA93_135
= self
.input.LA(3)
13101 if (self
.synpred186()) :
13106 LA93_136
= self
.input.LA(3)
13108 if (self
.synpred186()) :
13113 LA93_137
= self
.input.LA(3)
13115 if (self
.synpred186()) :
13120 LA93_138
= self
.input.LA(3)
13122 if (self
.synpred186()) :
13127 LA93_139
= self
.input.LA(3)
13129 if (self
.synpred186()) :
13134 LA93_140
= self
.input.LA(3)
13136 if (self
.synpred186()) :
13141 LA93_141
= self
.input.LA(3)
13143 if (self
.synpred186()) :
13147 elif LA93
== 45 or LA93
== 46:
13148 LA93_142
= self
.input.LA(3)
13150 if (self
.synpred186()) :
13155 LA93_143
= self
.input.LA(3)
13157 if (self
.synpred186()) :
13161 elif LA93
== 49 or LA93
== 50 or LA93
== 51 or LA93
== 52 or LA93
== 53 or LA93
== 54 or LA93
== 55 or LA93
== 56 or LA93
== 57 or LA93
== 61:
13162 LA93_144
= self
.input.LA(3)
13164 if (self
.synpred186()) :
13170 LA93
= self
.input.LA(2)
13172 LA93_145
= self
.input.LA(3)
13174 if (self
.synpred186()) :
13179 LA93_146
= self
.input.LA(3)
13181 if (self
.synpred186()) :
13186 LA93_147
= self
.input.LA(3)
13188 if (self
.synpred186()) :
13193 LA93_148
= self
.input.LA(3)
13195 if (self
.synpred186()) :
13199 elif LA93
== IDENTIFIER
:
13200 LA93_149
= self
.input.LA(3)
13202 if (self
.synpred186()) :
13207 LA93_150
= self
.input.LA(3)
13209 if (self
.synpred186()) :
13214 LA93_151
= self
.input.LA(3)
13216 if (self
.synpred186()) :
13220 elif LA93
== 29 or LA93
== 30 or LA93
== 31 or LA93
== 32 or LA93
== 33:
13221 LA93_152
= self
.input.LA(3)
13223 if (self
.synpred186()) :
13228 LA93_153
= self
.input.LA(3)
13230 if (self
.synpred186()) :
13235 LA93_154
= self
.input.LA(3)
13237 if (self
.synpred186()) :
13242 LA93_155
= self
.input.LA(3)
13244 if (self
.synpred186()) :
13249 LA93_156
= self
.input.LA(3)
13251 if (self
.synpred186()) :
13256 LA93_157
= self
.input.LA(3)
13258 if (self
.synpred186()) :
13263 LA93_158
= self
.input.LA(3)
13265 if (self
.synpred186()) :
13270 LA93_159
= self
.input.LA(3)
13272 if (self
.synpred186()) :
13277 LA93_160
= self
.input.LA(3)
13279 if (self
.synpred186()) :
13284 LA93_161
= self
.input.LA(3)
13286 if (self
.synpred186()) :
13290 elif LA93
== 45 or LA93
== 46:
13291 LA93_162
= self
.input.LA(3)
13293 if (self
.synpred186()) :
13298 LA93_163
= self
.input.LA(3)
13300 if (self
.synpred186()) :
13304 elif LA93
== 49 or LA93
== 50 or LA93
== 51 or LA93
== 52 or LA93
== 53 or LA93
== 54 or LA93
== 55 or LA93
== 56 or LA93
== 57 or LA93
== 61:
13305 LA93_164
= self
.input.LA(3)
13307 if (self
.synpred186()) :
13313 LA93
= self
.input.LA(2)
13315 LA93_165
= self
.input.LA(3)
13317 if (self
.synpred186()) :
13322 LA93_166
= self
.input.LA(3)
13324 if (self
.synpred186()) :
13329 LA93_167
= self
.input.LA(3)
13331 if (self
.synpred186()) :
13336 LA93_168
= self
.input.LA(3)
13338 if (self
.synpred186()) :
13342 elif LA93
== IDENTIFIER
:
13343 LA93_169
= self
.input.LA(3)
13345 if (self
.synpred186()) :
13350 LA93_170
= self
.input.LA(3)
13352 if (self
.synpred186()) :
13357 LA93_171
= self
.input.LA(3)
13359 if (self
.synpred186()) :
13363 elif LA93
== 29 or LA93
== 30 or LA93
== 31 or LA93
== 32 or LA93
== 33:
13364 LA93_172
= self
.input.LA(3)
13366 if (self
.synpred186()) :
13371 LA93_173
= self
.input.LA(3)
13373 if (self
.synpred186()) :
13378 LA93_174
= self
.input.LA(3)
13380 if (self
.synpred186()) :
13385 LA93_175
= self
.input.LA(3)
13387 if (self
.synpred186()) :
13392 LA93_176
= self
.input.LA(3)
13394 if (self
.synpred186()) :
13399 LA93_177
= self
.input.LA(3)
13401 if (self
.synpred186()) :
13406 LA93_178
= self
.input.LA(3)
13408 if (self
.synpred186()) :
13413 LA93_179
= self
.input.LA(3)
13415 if (self
.synpred186()) :
13420 LA93_180
= self
.input.LA(3)
13422 if (self
.synpred186()) :
13427 LA93_181
= self
.input.LA(3)
13429 if (self
.synpred186()) :
13433 elif LA93
== 45 or LA93
== 46:
13434 LA93_182
= self
.input.LA(3)
13436 if (self
.synpred186()) :
13441 LA93_183
= self
.input.LA(3)
13443 if (self
.synpred186()) :
13447 elif LA93
== 49 or LA93
== 50 or LA93
== 51 or LA93
== 52 or LA93
== 53 or LA93
== 54 or LA93
== 55 or LA93
== 56 or LA93
== 57 or LA93
== 61:
13448 LA93_184
= self
.input.LA(3)
13450 if (self
.synpred186()) :
13456 LA93
= self
.input.LA(2)
13458 LA93_185
= self
.input.LA(3)
13460 if (self
.synpred186()) :
13465 LA93_186
= self
.input.LA(3)
13467 if (self
.synpred186()) :
13472 LA93_187
= self
.input.LA(3)
13474 if (self
.synpred186()) :
13479 LA93_188
= self
.input.LA(3)
13481 if (self
.synpred186()) :
13485 elif LA93
== IDENTIFIER
:
13486 LA93_189
= self
.input.LA(3)
13488 if (self
.synpred186()) :
13493 LA93_190
= self
.input.LA(3)
13495 if (self
.synpred186()) :
13500 LA93_191
= self
.input.LA(3)
13502 if (self
.synpred186()) :
13506 elif LA93
== 29 or LA93
== 30 or LA93
== 31 or LA93
== 32 or LA93
== 33:
13507 LA93_192
= self
.input.LA(3)
13509 if (self
.synpred186()) :
13514 LA93_193
= self
.input.LA(3)
13516 if (self
.synpred186()) :
13521 LA93_194
= self
.input.LA(3)
13523 if (self
.synpred186()) :
13528 LA93_195
= self
.input.LA(3)
13530 if (self
.synpred186()) :
13535 LA93_196
= self
.input.LA(3)
13537 if (self
.synpred186()) :
13542 LA93_197
= self
.input.LA(3)
13544 if (self
.synpred186()) :
13549 LA93_198
= self
.input.LA(3)
13551 if (self
.synpred186()) :
13556 LA93_199
= self
.input.LA(3)
13558 if (self
.synpred186()) :
13563 LA93_200
= self
.input.LA(3)
13565 if (self
.synpred186()) :
13570 LA93_201
= self
.input.LA(3)
13572 if (self
.synpred186()) :
13576 elif LA93
== 45 or LA93
== 46:
13577 LA93_202
= self
.input.LA(3)
13579 if (self
.synpred186()) :
13584 LA93_203
= self
.input.LA(3)
13586 if (self
.synpred186()) :
13590 elif LA93
== 49 or LA93
== 50 or LA93
== 51 or LA93
== 52 or LA93
== 53 or LA93
== 54 or LA93
== 55 or LA93
== 56 or LA93
== 57 or LA93
== 61:
13591 LA93_204
= self
.input.LA(3)
13593 if (self
.synpred186()) :
13599 LA93
= self
.input.LA(2)
13601 LA93_205
= self
.input.LA(3)
13603 if (self
.synpred186()) :
13608 LA93_206
= self
.input.LA(3)
13610 if (self
.synpred186()) :
13615 LA93_207
= self
.input.LA(3)
13617 if (self
.synpred186()) :
13622 LA93_208
= self
.input.LA(3)
13624 if (self
.synpred186()) :
13628 elif LA93
== IDENTIFIER
:
13629 LA93_209
= self
.input.LA(3)
13631 if (self
.synpred186()) :
13636 LA93_210
= self
.input.LA(3)
13638 if (self
.synpred186()) :
13643 LA93_211
= self
.input.LA(3)
13645 if (self
.synpred186()) :
13649 elif LA93
== 29 or LA93
== 30 or LA93
== 31 or LA93
== 32 or LA93
== 33:
13650 LA93_212
= self
.input.LA(3)
13652 if (self
.synpred186()) :
13657 LA93_213
= self
.input.LA(3)
13659 if (self
.synpred186()) :
13664 LA93_214
= self
.input.LA(3)
13666 if (self
.synpred186()) :
13671 LA93_215
= self
.input.LA(3)
13673 if (self
.synpred186()) :
13678 LA93_216
= self
.input.LA(3)
13680 if (self
.synpred186()) :
13685 LA93_217
= self
.input.LA(3)
13687 if (self
.synpred186()) :
13692 LA93_218
= self
.input.LA(3)
13694 if (self
.synpred186()) :
13699 LA93_219
= self
.input.LA(3)
13701 if (self
.synpred186()) :
13706 LA93_220
= self
.input.LA(3)
13708 if (self
.synpred186()) :
13713 LA93_221
= self
.input.LA(3)
13715 if (self
.synpred186()) :
13719 elif LA93
== 45 or LA93
== 46:
13720 LA93_222
= self
.input.LA(3)
13722 if (self
.synpred186()) :
13727 LA93_223
= self
.input.LA(3)
13729 if (self
.synpred186()) :
13733 elif LA93
== 49 or LA93
== 50 or LA93
== 51 or LA93
== 52 or LA93
== 53 or LA93
== 54 or LA93
== 55 or LA93
== 56 or LA93
== 57 or LA93
== 61:
13734 LA93_224
= self
.input.LA(3)
13736 if (self
.synpred186()) :
13742 LA93
= self
.input.LA(2)
13744 LA93_225
= self
.input.LA(3)
13746 if (self
.synpred186()) :
13751 LA93_226
= self
.input.LA(3)
13753 if (self
.synpred186()) :
13758 LA93_227
= self
.input.LA(3)
13760 if (self
.synpred186()) :
13765 LA93_228
= self
.input.LA(3)
13767 if (self
.synpred186()) :
13771 elif LA93
== IDENTIFIER
:
13772 LA93_229
= self
.input.LA(3)
13774 if (self
.synpred186()) :
13779 LA93_230
= self
.input.LA(3)
13781 if (self
.synpred186()) :
13786 LA93_231
= self
.input.LA(3)
13788 if (self
.synpred186()) :
13792 elif LA93
== 29 or LA93
== 30 or LA93
== 31 or LA93
== 32 or LA93
== 33:
13793 LA93_232
= self
.input.LA(3)
13795 if (self
.synpred186()) :
13800 LA93_233
= self
.input.LA(3)
13802 if (self
.synpred186()) :
13807 LA93_234
= self
.input.LA(3)
13809 if (self
.synpred186()) :
13814 LA93_235
= self
.input.LA(3)
13816 if (self
.synpred186()) :
13821 LA93_236
= self
.input.LA(3)
13823 if (self
.synpred186()) :
13828 LA93_237
= self
.input.LA(3)
13830 if (self
.synpred186()) :
13835 LA93_238
= self
.input.LA(3)
13837 if (self
.synpred186()) :
13842 LA93_239
= self
.input.LA(3)
13844 if (self
.synpred186()) :
13849 LA93_240
= self
.input.LA(3)
13851 if (self
.synpred186()) :
13856 LA93_241
= self
.input.LA(3)
13858 if (self
.synpred186()) :
13862 elif LA93
== 45 or LA93
== 46:
13863 LA93_242
= self
.input.LA(3)
13865 if (self
.synpred186()) :
13870 LA93_243
= self
.input.LA(3)
13872 if (self
.synpred186()) :
13876 elif LA93
== 49 or LA93
== 50 or LA93
== 51 or LA93
== 52 or LA93
== 53 or LA93
== 54 or LA93
== 55 or LA93
== 56 or LA93
== 57 or LA93
== 61:
13877 LA93_244
= self
.input.LA(3)
13879 if (self
.synpred186()) :
13885 LA93
= self
.input.LA(2)
13887 LA93_245
= self
.input.LA(3)
13889 if (self
.synpred186()) :
13894 LA93_246
= self
.input.LA(3)
13896 if (self
.synpred186()) :
13901 LA93_247
= self
.input.LA(3)
13903 if (self
.synpred186()) :
13908 LA93_248
= self
.input.LA(3)
13910 if (self
.synpred186()) :
13914 elif LA93
== IDENTIFIER
:
13915 LA93_249
= self
.input.LA(3)
13917 if (self
.synpred186()) :
13922 LA93_250
= self
.input.LA(3)
13924 if (self
.synpred186()) :
13929 LA93_251
= self
.input.LA(3)
13931 if (self
.synpred186()) :
13935 elif LA93
== 29 or LA93
== 30 or LA93
== 31 or LA93
== 32 or LA93
== 33:
13936 LA93_252
= self
.input.LA(3)
13938 if (self
.synpred186()) :
13943 LA93_253
= self
.input.LA(3)
13945 if (self
.synpred186()) :
13950 LA93_254
= self
.input.LA(3)
13952 if (self
.synpred186()) :
13957 LA93_255
= self
.input.LA(3)
13959 if (self
.synpred186()) :
13964 LA93_256
= self
.input.LA(3)
13966 if (self
.synpred186()) :
13971 LA93_257
= self
.input.LA(3)
13973 if (self
.synpred186()) :
13978 LA93_258
= self
.input.LA(3)
13980 if (self
.synpred186()) :
13985 LA93_259
= self
.input.LA(3)
13987 if (self
.synpred186()) :
13992 LA93_260
= self
.input.LA(3)
13994 if (self
.synpred186()) :
13999 LA93_261
= self
.input.LA(3)
14001 if (self
.synpred186()) :
14005 elif LA93
== 45 or LA93
== 46:
14006 LA93_262
= self
.input.LA(3)
14008 if (self
.synpred186()) :
14013 LA93_263
= self
.input.LA(3)
14015 if (self
.synpred186()) :
14019 elif LA93
== 49 or LA93
== 50 or LA93
== 51 or LA93
== 52 or LA93
== 53 or LA93
== 54 or LA93
== 55 or LA93
== 56 or LA93
== 57 or LA93
== 61:
14020 LA93_264
= self
.input.LA(3)
14022 if (self
.synpred186()) :
14028 LA93
= self
.input.LA(2)
14030 LA93_265
= self
.input.LA(3)
14032 if (self
.synpred186()) :
14037 LA93_266
= self
.input.LA(3)
14039 if (self
.synpred186()) :
14044 LA93_267
= self
.input.LA(3)
14046 if (self
.synpred186()) :
14051 LA93_268
= self
.input.LA(3)
14053 if (self
.synpred186()) :
14057 elif LA93
== IDENTIFIER
:
14058 LA93_269
= self
.input.LA(3)
14060 if (self
.synpred186()) :
14065 LA93_270
= self
.input.LA(3)
14067 if (self
.synpred186()) :
14072 LA93_271
= self
.input.LA(3)
14074 if (self
.synpred186()) :
14078 elif LA93
== 29 or LA93
== 30 or LA93
== 31 or LA93
== 32 or LA93
== 33:
14079 LA93_272
= self
.input.LA(3)
14081 if (self
.synpred186()) :
14086 LA93_273
= self
.input.LA(3)
14088 if (self
.synpred186()) :
14093 LA93_274
= self
.input.LA(3)
14095 if (self
.synpred186()) :
14100 LA93_275
= self
.input.LA(3)
14102 if (self
.synpred186()) :
14107 LA93_276
= self
.input.LA(3)
14109 if (self
.synpred186()) :
14114 LA93_277
= self
.input.LA(3)
14116 if (self
.synpred186()) :
14121 LA93_278
= self
.input.LA(3)
14123 if (self
.synpred186()) :
14128 LA93_279
= self
.input.LA(3)
14130 if (self
.synpred186()) :
14135 LA93_280
= self
.input.LA(3)
14137 if (self
.synpred186()) :
14142 LA93_281
= self
.input.LA(3)
14144 if (self
.synpred186()) :
14148 elif LA93
== 45 or LA93
== 46:
14149 LA93_282
= self
.input.LA(3)
14151 if (self
.synpred186()) :
14156 LA93_283
= self
.input.LA(3)
14158 if (self
.synpred186()) :
14162 elif LA93
== 49 or LA93
== 50 or LA93
== 51 or LA93
== 52 or LA93
== 53 or LA93
== 54 or LA93
== 55 or LA93
== 56 or LA93
== 57 or LA93
== 61:
14163 LA93_284
= self
.input.LA(3)
14165 if (self
.synpred186()) :
14171 LA93
= self
.input.LA(2)
14173 LA93_285
= self
.input.LA(3)
14175 if (self
.synpred186()) :
14180 LA93_286
= self
.input.LA(3)
14182 if (self
.synpred186()) :
14187 LA93_287
= self
.input.LA(3)
14189 if (self
.synpred186()) :
14194 LA93_288
= self
.input.LA(3)
14196 if (self
.synpred186()) :
14200 elif LA93
== IDENTIFIER
:
14201 LA93_289
= self
.input.LA(3)
14203 if (self
.synpred186()) :
14208 LA93_290
= self
.input.LA(3)
14210 if (self
.synpred186()) :
14215 LA93_291
= self
.input.LA(3)
14217 if (self
.synpred186()) :
14221 elif LA93
== 29 or LA93
== 30 or LA93
== 31 or LA93
== 32 or LA93
== 33:
14222 LA93_292
= self
.input.LA(3)
14224 if (self
.synpred186()) :
14229 LA93_293
= self
.input.LA(3)
14231 if (self
.synpred186()) :
14236 LA93_294
= self
.input.LA(3)
14238 if (self
.synpred186()) :
14243 LA93_295
= self
.input.LA(3)
14245 if (self
.synpred186()) :
14250 LA93_296
= self
.input.LA(3)
14252 if (self
.synpred186()) :
14257 LA93_297
= self
.input.LA(3)
14259 if (self
.synpred186()) :
14264 LA93_298
= self
.input.LA(3)
14266 if (self
.synpred186()) :
14271 LA93_299
= self
.input.LA(3)
14273 if (self
.synpred186()) :
14278 LA93_300
= self
.input.LA(3)
14280 if (self
.synpred186()) :
14285 LA93_301
= self
.input.LA(3)
14287 if (self
.synpred186()) :
14291 elif LA93
== 45 or LA93
== 46:
14292 LA93_302
= self
.input.LA(3)
14294 if (self
.synpred186()) :
14299 LA93_303
= self
.input.LA(3)
14301 if (self
.synpred186()) :
14305 elif LA93
== 49 or LA93
== 50 or LA93
== 51 or LA93
== 52 or LA93
== 53 or LA93
== 54 or LA93
== 55 or LA93
== 56 or LA93
== 57 or LA93
== 61:
14306 LA93_304
= self
.input.LA(3)
14308 if (self
.synpred186()) :
14313 elif LA93
== 45 or LA93
== 46:
14314 LA93_40
= self
.input.LA(2)
14316 if (LA93_40
== IDENTIFIER
) :
14317 LA93_305
= self
.input.LA(3)
14319 if (self
.synpred186()) :
14323 elif (LA93_40
== 43) :
14324 LA93_306
= self
.input.LA(3)
14326 if (self
.synpred186()) :
14333 LA93_41
= self
.input.LA(2)
14335 if (LA93_41
== 43) :
14336 LA93_307
= self
.input.LA(3)
14338 if (self
.synpred186()) :
14342 elif (LA93_41
== IDENTIFIER
) :
14343 LA93_308
= self
.input.LA(3)
14345 if (self
.synpred186()) :
14351 elif LA93
== 49 or LA93
== 50 or LA93
== 51 or LA93
== 52 or LA93
== 53 or LA93
== 54 or LA93
== 55 or LA93
== 56 or LA93
== 57 or LA93
== 58 or LA93
== 59 or LA93
== 60 or LA93
== 61:
14352 LA93
= self
.input.LA(2)
14354 LA93_309
= self
.input.LA(3)
14356 if (self
.synpred186()) :
14361 LA93_310
= self
.input.LA(3)
14363 if (self
.synpred186()) :
14368 LA93_311
= self
.input.LA(3)
14370 if (self
.synpred186()) :
14375 LA93_312
= self
.input.LA(3)
14377 if (self
.synpred186()) :
14381 elif LA93
== IDENTIFIER
:
14382 LA93_313
= self
.input.LA(3)
14384 if (self
.synpred186()) :
14389 LA93_314
= self
.input.LA(3)
14391 if (self
.synpred186()) :
14396 LA93_315
= self
.input.LA(3)
14398 if (self
.synpred186()) :
14402 elif LA93
== 29 or LA93
== 30 or LA93
== 31 or LA93
== 32 or LA93
== 33:
14403 LA93_316
= self
.input.LA(3)
14405 if (self
.synpred186()) :
14410 LA93_317
= self
.input.LA(3)
14412 if (self
.synpred186()) :
14417 LA93_318
= self
.input.LA(3)
14419 if (self
.synpred186()) :
14424 LA93_319
= self
.input.LA(3)
14426 if (self
.synpred186()) :
14431 LA93_320
= self
.input.LA(3)
14433 if (self
.synpred186()) :
14438 LA93_321
= self
.input.LA(3)
14440 if (self
.synpred186()) :
14445 LA93_322
= self
.input.LA(3)
14447 if (self
.synpred186()) :
14452 LA93_323
= self
.input.LA(3)
14454 if (self
.synpred186()) :
14459 LA93_324
= self
.input.LA(3)
14461 if (self
.synpred186()) :
14466 LA93_325
= self
.input.LA(3)
14468 if (self
.synpred186()) :
14472 elif LA93
== 45 or LA93
== 46:
14473 LA93_326
= self
.input.LA(3)
14475 if (self
.synpred186()) :
14480 LA93_327
= self
.input.LA(3)
14482 if (self
.synpred186()) :
14486 elif LA93
== 49 or LA93
== 50 or LA93
== 51 or LA93
== 52 or LA93
== 53 or LA93
== 54 or LA93
== 55 or LA93
== 56 or LA93
== 57 or LA93
== 61:
14487 LA93_328
= self
.input.LA(3)
14489 if (self
.synpred186()) :
14496 # C.g:0:0: declaration
14497 self
.following
.append(self
.FOLLOW_declaration_in_compound_statement2225
)
14499 self
.following
.pop()
14508 # C.g:554:21: ( statement_list )?
14510 LA94_0
= self
.input.LA(1)
14512 if ((IDENTIFIER
<= LA94_0
<= FLOATING_POINT_LITERAL
) or (25 <= LA94_0
<= 26) or (29 <= LA94_0
<= 43) or (45 <= LA94_0
<= 46) or (48 <= LA94_0
<= 62) or LA94_0
== 66 or (68 <= LA94_0
<= 69) or (72 <= LA94_0
<= 74) or (77 <= LA94_0
<= 79) or (103 <= LA94_0
<= 108) or (110 <= LA94_0
<= 117)) :
14515 # C.g:0:0: statement_list
14516 self
.following
.append(self
.FOLLOW_statement_list_in_compound_statement2228
)
14517 self
.statement_list()
14518 self
.following
.pop()
14524 self
.match(self
.input, 44, self
.FOLLOW_44_in_compound_statement2231
)
14530 retval
.stop
= self
.input.LT(-1)
14533 except RecognitionException
, re
:
14534 self
.reportError(re
)
14535 self
.recover(self
.input, re
)
14537 if self
.backtracking
> 0:
14538 self
.memoize(self
.input, 66, compound_statement_StartIndex
)
14544 # $ANTLR end compound_statement
14547 # $ANTLR start statement_list
14548 # C.g:557:1: statement_list : ( statement )+ ;
14549 def statement_list(self
, ):
14551 statement_list_StartIndex
= self
.input.index()
14554 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 67):
14557 # C.g:558:2: ( ( statement )+ )
14558 # C.g:558:4: ( statement )+
14559 # C.g:558:4: ( statement )+
14561 while True: #loop95
14563 LA95
= self
.input.LA(1)
14564 if LA95
== IDENTIFIER
:
14565 LA95
= self
.input.LA(2)
14567 LA95_46
= self
.input.LA(3)
14569 if (self
.synpred188()) :
14573 elif LA95
== 25 or LA95
== 29 or LA95
== 30 or LA95
== 31 or LA95
== 32 or LA95
== 33 or LA95
== 34 or LA95
== 35 or LA95
== 36 or LA95
== 37 or LA95
== 38 or LA95
== 39 or LA95
== 40 or LA95
== 41 or LA95
== 42 or LA95
== 45 or LA95
== 46 or LA95
== 47 or LA95
== 48 or LA95
== 49 or LA95
== 50 or LA95
== 51 or LA95
== 52 or LA95
== 53 or LA95
== 54 or LA95
== 55 or LA95
== 56 or LA95
== 57 or LA95
== 58 or LA95
== 59 or LA95
== 60 or LA95
== 61:
14575 elif LA95
== STRING_LITERAL
:
14576 LA95_48
= self
.input.LA(3)
14578 if (self
.synpred188()) :
14582 elif LA95
== IDENTIFIER
:
14583 LA95_49
= self
.input.LA(3)
14585 if (self
.synpred188()) :
14590 LA95_50
= self
.input.LA(3)
14592 if (self
.synpred188()) :
14597 LA95_51
= self
.input.LA(3)
14599 if (self
.synpred188()) :
14604 LA95_52
= self
.input.LA(3)
14606 if (self
.synpred188()) :
14611 LA95_53
= self
.input.LA(3)
14613 if (self
.synpred188()) :
14618 LA95_54
= self
.input.LA(3)
14620 if (self
.synpred188()) :
14625 LA95_55
= self
.input.LA(3)
14627 if (self
.synpred188()) :
14632 LA95_56
= self
.input.LA(3)
14634 if (self
.synpred188()) :
14639 LA95_57
= self
.input.LA(3)
14641 if (self
.synpred188()) :
14646 LA95_58
= self
.input.LA(3)
14648 if (self
.synpred188()) :
14653 LA95_59
= self
.input.LA(3)
14655 if (self
.synpred188()) :
14659 elif LA95
== 101 or LA95
== 102:
14660 LA95_60
= self
.input.LA(3)
14662 if (self
.synpred188()) :
14666 elif LA95
== 97 or LA95
== 98 or LA95
== 99 or LA95
== 100:
14667 LA95_61
= self
.input.LA(3)
14669 if (self
.synpred188()) :
14673 elif LA95
== 95 or LA95
== 96:
14674 LA95_62
= self
.input.LA(3)
14676 if (self
.synpred188()) :
14681 LA95_63
= self
.input.LA(3)
14683 if (self
.synpred188()) :
14688 LA95_64
= self
.input.LA(3)
14690 if (self
.synpred188()) :
14695 LA95_65
= self
.input.LA(3)
14697 if (self
.synpred188()) :
14702 LA95_66
= self
.input.LA(3)
14704 if (self
.synpred188()) :
14709 LA95_67
= self
.input.LA(3)
14711 if (self
.synpred188()) :
14716 LA95_68
= self
.input.LA(3)
14718 if (self
.synpred188()) :
14723 LA95_69
= self
.input.LA(3)
14725 if (self
.synpred188()) :
14729 elif LA95
== 28 or LA95
== 80 or LA95
== 81 or LA95
== 82 or LA95
== 83 or LA95
== 84 or LA95
== 85 or LA95
== 86 or LA95
== 87 or LA95
== 88 or LA95
== 89:
14730 LA95_88
= self
.input.LA(3)
14732 if (self
.synpred188()) :
14737 elif LA95
== HEX_LITERAL
:
14738 LA95
= self
.input.LA(2)
14740 LA95_89
= self
.input.LA(3)
14742 if (self
.synpred188()) :
14747 LA95_90
= self
.input.LA(3)
14749 if (self
.synpred188()) :
14754 LA95_91
= self
.input.LA(3)
14756 if (self
.synpred188()) :
14761 LA95_92
= self
.input.LA(3)
14763 if (self
.synpred188()) :
14768 LA95_93
= self
.input.LA(3)
14770 if (self
.synpred188()) :
14775 LA95_94
= self
.input.LA(3)
14777 if (self
.synpred188()) :
14782 LA95_95
= self
.input.LA(3)
14784 if (self
.synpred188()) :
14788 elif LA95
== 28 or LA95
== 80 or LA95
== 81 or LA95
== 82 or LA95
== 83 or LA95
== 84 or LA95
== 85 or LA95
== 86 or LA95
== 87 or LA95
== 88 or LA95
== 89:
14789 LA95_96
= self
.input.LA(3)
14791 if (self
.synpred188()) :
14796 LA95_97
= self
.input.LA(3)
14798 if (self
.synpred188()) :
14803 LA95_98
= self
.input.LA(3)
14805 if (self
.synpred188()) :
14810 LA95_99
= self
.input.LA(3)
14812 if (self
.synpred188()) :
14817 LA95_100
= self
.input.LA(3)
14819 if (self
.synpred188()) :
14823 elif LA95
== 101 or LA95
== 102:
14824 LA95_101
= self
.input.LA(3)
14826 if (self
.synpred188()) :
14830 elif LA95
== 97 or LA95
== 98 or LA95
== 99 or LA95
== 100:
14831 LA95_102
= self
.input.LA(3)
14833 if (self
.synpred188()) :
14837 elif LA95
== 95 or LA95
== 96:
14838 LA95_103
= self
.input.LA(3)
14840 if (self
.synpred188()) :
14845 LA95_104
= self
.input.LA(3)
14847 if (self
.synpred188()) :
14852 LA95_105
= self
.input.LA(3)
14854 if (self
.synpred188()) :
14859 LA95_106
= self
.input.LA(3)
14861 if (self
.synpred188()) :
14866 LA95_107
= self
.input.LA(3)
14868 if (self
.synpred188()) :
14873 LA95_108
= self
.input.LA(3)
14875 if (self
.synpred188()) :
14880 LA95_109
= self
.input.LA(3)
14882 if (self
.synpred188()) :
14887 LA95_110
= self
.input.LA(3)
14889 if (self
.synpred188()) :
14896 elif LA95
== OCTAL_LITERAL
:
14897 LA95
= self
.input.LA(2)
14899 LA95_113
= self
.input.LA(3)
14901 if (self
.synpred188()) :
14906 LA95_114
= self
.input.LA(3)
14908 if (self
.synpred188()) :
14913 LA95_115
= self
.input.LA(3)
14915 if (self
.synpred188()) :
14920 LA95_116
= self
.input.LA(3)
14922 if (self
.synpred188()) :
14927 LA95_117
= self
.input.LA(3)
14929 if (self
.synpred188()) :
14934 LA95_118
= self
.input.LA(3)
14936 if (self
.synpred188()) :
14941 LA95_119
= self
.input.LA(3)
14943 if (self
.synpred188()) :
14948 LA95_120
= self
.input.LA(3)
14950 if (self
.synpred188()) :
14955 LA95_121
= self
.input.LA(3)
14957 if (self
.synpred188()) :
14962 LA95_122
= self
.input.LA(3)
14964 if (self
.synpred188()) :
14969 LA95_123
= self
.input.LA(3)
14971 if (self
.synpred188()) :
14975 elif LA95
== 101 or LA95
== 102:
14976 LA95_124
= self
.input.LA(3)
14978 if (self
.synpred188()) :
14982 elif LA95
== 97 or LA95
== 98 or LA95
== 99 or LA95
== 100:
14983 LA95_125
= self
.input.LA(3)
14985 if (self
.synpred188()) :
14989 elif LA95
== 95 or LA95
== 96:
14990 LA95_126
= self
.input.LA(3)
14992 if (self
.synpred188()) :
14997 LA95_127
= self
.input.LA(3)
14999 if (self
.synpred188()) :
15004 LA95_128
= self
.input.LA(3)
15006 if (self
.synpred188()) :
15011 LA95_129
= self
.input.LA(3)
15013 if (self
.synpred188()) :
15018 LA95_130
= self
.input.LA(3)
15020 if (self
.synpred188()) :
15025 LA95_131
= self
.input.LA(3)
15027 if (self
.synpred188()) :
15032 LA95_132
= self
.input.LA(3)
15034 if (self
.synpred188()) :
15039 LA95_133
= self
.input.LA(3)
15041 if (self
.synpred188()) :
15045 elif LA95
== 28 or LA95
== 80 or LA95
== 81 or LA95
== 82 or LA95
== 83 or LA95
== 84 or LA95
== 85 or LA95
== 86 or LA95
== 87 or LA95
== 88 or LA95
== 89:
15046 LA95_135
= self
.input.LA(3)
15048 if (self
.synpred188()) :
15055 elif LA95
== DECIMAL_LITERAL
:
15056 LA95
= self
.input.LA(2)
15058 LA95_137
= self
.input.LA(3)
15060 if (self
.synpred188()) :
15065 LA95_138
= self
.input.LA(3)
15067 if (self
.synpred188()) :
15072 LA95_139
= self
.input.LA(3)
15074 if (self
.synpred188()) :
15079 LA95_140
= self
.input.LA(3)
15081 if (self
.synpred188()) :
15086 LA95_141
= self
.input.LA(3)
15088 if (self
.synpred188()) :
15093 LA95_142
= self
.input.LA(3)
15095 if (self
.synpred188()) :
15100 LA95_143
= self
.input.LA(3)
15102 if (self
.synpred188()) :
15106 elif LA95
== 28 or LA95
== 80 or LA95
== 81 or LA95
== 82 or LA95
== 83 or LA95
== 84 or LA95
== 85 or LA95
== 86 or LA95
== 87 or LA95
== 88 or LA95
== 89:
15107 LA95_144
= self
.input.LA(3)
15109 if (self
.synpred188()) :
15114 LA95_145
= self
.input.LA(3)
15116 if (self
.synpred188()) :
15121 LA95_146
= self
.input.LA(3)
15123 if (self
.synpred188()) :
15128 LA95_147
= self
.input.LA(3)
15130 if (self
.synpred188()) :
15135 LA95_148
= self
.input.LA(3)
15137 if (self
.synpred188()) :
15141 elif LA95
== 101 or LA95
== 102:
15142 LA95_149
= self
.input.LA(3)
15144 if (self
.synpred188()) :
15148 elif LA95
== 97 or LA95
== 98 or LA95
== 99 or LA95
== 100:
15149 LA95_150
= self
.input.LA(3)
15151 if (self
.synpred188()) :
15155 elif LA95
== 95 or LA95
== 96:
15156 LA95_151
= self
.input.LA(3)
15158 if (self
.synpred188()) :
15163 LA95_152
= self
.input.LA(3)
15165 if (self
.synpred188()) :
15170 LA95_153
= self
.input.LA(3)
15172 if (self
.synpred188()) :
15177 LA95_154
= self
.input.LA(3)
15179 if (self
.synpred188()) :
15184 LA95_155
= self
.input.LA(3)
15186 if (self
.synpred188()) :
15191 LA95_156
= self
.input.LA(3)
15193 if (self
.synpred188()) :
15198 LA95_157
= self
.input.LA(3)
15200 if (self
.synpred188()) :
15205 LA95_158
= self
.input.LA(3)
15207 if (self
.synpred188()) :
15214 elif LA95
== CHARACTER_LITERAL
:
15215 LA95
= self
.input.LA(2)
15217 LA95_161
= self
.input.LA(3)
15219 if (self
.synpred188()) :
15224 LA95_162
= self
.input.LA(3)
15226 if (self
.synpred188()) :
15231 LA95_163
= self
.input.LA(3)
15233 if (self
.synpred188()) :
15238 LA95_164
= self
.input.LA(3)
15240 if (self
.synpred188()) :
15245 LA95_165
= self
.input.LA(3)
15247 if (self
.synpred188()) :
15252 LA95_166
= self
.input.LA(3)
15254 if (self
.synpred188()) :
15259 LA95_167
= self
.input.LA(3)
15261 if (self
.synpred188()) :
15265 elif LA95
== 28 or LA95
== 80 or LA95
== 81 or LA95
== 82 or LA95
== 83 or LA95
== 84 or LA95
== 85 or LA95
== 86 or LA95
== 87 or LA95
== 88 or LA95
== 89:
15266 LA95_168
= self
.input.LA(3)
15268 if (self
.synpred188()) :
15273 LA95_169
= self
.input.LA(3)
15275 if (self
.synpred188()) :
15280 LA95_170
= self
.input.LA(3)
15282 if (self
.synpred188()) :
15287 LA95_171
= self
.input.LA(3)
15289 if (self
.synpred188()) :
15294 LA95_172
= self
.input.LA(3)
15296 if (self
.synpred188()) :
15300 elif LA95
== 101 or LA95
== 102:
15301 LA95_173
= self
.input.LA(3)
15303 if (self
.synpred188()) :
15307 elif LA95
== 97 or LA95
== 98 or LA95
== 99 or LA95
== 100:
15308 LA95_174
= self
.input.LA(3)
15310 if (self
.synpred188()) :
15314 elif LA95
== 95 or LA95
== 96:
15315 LA95_175
= self
.input.LA(3)
15317 if (self
.synpred188()) :
15322 LA95_176
= self
.input.LA(3)
15324 if (self
.synpred188()) :
15329 LA95_177
= self
.input.LA(3)
15331 if (self
.synpred188()) :
15336 LA95_178
= self
.input.LA(3)
15338 if (self
.synpred188()) :
15343 LA95_179
= self
.input.LA(3)
15345 if (self
.synpred188()) :
15350 LA95_180
= self
.input.LA(3)
15352 if (self
.synpred188()) :
15357 LA95_181
= self
.input.LA(3)
15359 if (self
.synpred188()) :
15364 LA95_182
= self
.input.LA(3)
15366 if (self
.synpred188()) :
15373 elif LA95
== STRING_LITERAL
:
15374 LA95
= self
.input.LA(2)
15375 if LA95
== IDENTIFIER
:
15376 LA95_185
= self
.input.LA(3)
15378 if (self
.synpred188()) :
15383 LA95_186
= self
.input.LA(3)
15385 if (self
.synpred188()) :
15390 LA95_187
= self
.input.LA(3)
15392 if (self
.synpred188()) :
15397 LA95_188
= self
.input.LA(3)
15399 if (self
.synpred188()) :
15404 LA95_189
= self
.input.LA(3)
15406 if (self
.synpred188()) :
15411 LA95_190
= self
.input.LA(3)
15413 if (self
.synpred188()) :
15418 LA95_191
= self
.input.LA(3)
15420 if (self
.synpred188()) :
15425 LA95_192
= self
.input.LA(3)
15427 if (self
.synpred188()) :
15432 LA95_193
= self
.input.LA(3)
15434 if (self
.synpred188()) :
15439 LA95_194
= self
.input.LA(3)
15441 if (self
.synpred188()) :
15446 LA95_195
= self
.input.LA(3)
15448 if (self
.synpred188()) :
15453 LA95_196
= self
.input.LA(3)
15455 if (self
.synpred188()) :
15459 elif LA95
== 101 or LA95
== 102:
15460 LA95_197
= self
.input.LA(3)
15462 if (self
.synpred188()) :
15466 elif LA95
== 97 or LA95
== 98 or LA95
== 99 or LA95
== 100:
15467 LA95_198
= self
.input.LA(3)
15469 if (self
.synpred188()) :
15473 elif LA95
== 95 or LA95
== 96:
15474 LA95_199
= self
.input.LA(3)
15476 if (self
.synpred188()) :
15481 LA95_200
= self
.input.LA(3)
15483 if (self
.synpred188()) :
15488 LA95_201
= self
.input.LA(3)
15490 if (self
.synpred188()) :
15495 LA95_202
= self
.input.LA(3)
15497 if (self
.synpred188()) :
15502 LA95_203
= self
.input.LA(3)
15504 if (self
.synpred188()) :
15509 LA95_204
= self
.input.LA(3)
15511 if (self
.synpred188()) :
15516 LA95_205
= self
.input.LA(3)
15518 if (self
.synpred188()) :
15523 LA95_206
= self
.input.LA(3)
15525 if (self
.synpred188()) :
15531 elif LA95
== STRING_LITERAL
:
15532 LA95_208
= self
.input.LA(3)
15534 if (self
.synpred188()) :
15538 elif LA95
== 28 or LA95
== 80 or LA95
== 81 or LA95
== 82 or LA95
== 83 or LA95
== 84 or LA95
== 85 or LA95
== 86 or LA95
== 87 or LA95
== 88 or LA95
== 89:
15539 LA95_209
= self
.input.LA(3)
15541 if (self
.synpred188()) :
15546 elif LA95
== FLOATING_POINT_LITERAL
:
15547 LA95
= self
.input.LA(2)
15549 LA95_211
= self
.input.LA(3)
15551 if (self
.synpred188()) :
15556 LA95_212
= self
.input.LA(3)
15558 if (self
.synpred188()) :
15563 LA95_213
= self
.input.LA(3)
15565 if (self
.synpred188()) :
15570 LA95_214
= self
.input.LA(3)
15572 if (self
.synpred188()) :
15577 LA95_215
= self
.input.LA(3)
15579 if (self
.synpred188()) :
15584 LA95_216
= self
.input.LA(3)
15586 if (self
.synpred188()) :
15591 LA95_217
= self
.input.LA(3)
15593 if (self
.synpred188()) :
15598 LA95_218
= self
.input.LA(3)
15600 if (self
.synpred188()) :
15605 LA95_219
= self
.input.LA(3)
15607 if (self
.synpred188()) :
15612 LA95_220
= self
.input.LA(3)
15614 if (self
.synpred188()) :
15619 LA95_221
= self
.input.LA(3)
15621 if (self
.synpred188()) :
15625 elif LA95
== 101 or LA95
== 102:
15626 LA95_222
= self
.input.LA(3)
15628 if (self
.synpred188()) :
15632 elif LA95
== 97 or LA95
== 98 or LA95
== 99 or LA95
== 100:
15633 LA95_223
= self
.input.LA(3)
15635 if (self
.synpred188()) :
15639 elif LA95
== 95 or LA95
== 96:
15640 LA95_224
= self
.input.LA(3)
15642 if (self
.synpred188()) :
15647 LA95_225
= self
.input.LA(3)
15649 if (self
.synpred188()) :
15654 LA95_226
= self
.input.LA(3)
15656 if (self
.synpred188()) :
15661 LA95_227
= self
.input.LA(3)
15663 if (self
.synpred188()) :
15668 LA95_228
= self
.input.LA(3)
15670 if (self
.synpred188()) :
15675 LA95_229
= self
.input.LA(3)
15677 if (self
.synpred188()) :
15682 LA95_230
= self
.input.LA(3)
15684 if (self
.synpred188()) :
15689 LA95_231
= self
.input.LA(3)
15691 if (self
.synpred188()) :
15697 elif LA95
== 28 or LA95
== 80 or LA95
== 81 or LA95
== 82 or LA95
== 83 or LA95
== 84 or LA95
== 85 or LA95
== 86 or LA95
== 87 or LA95
== 88 or LA95
== 89:
15698 LA95_234
= self
.input.LA(3)
15700 if (self
.synpred188()) :
15706 LA95
= self
.input.LA(2)
15707 if LA95
== IDENTIFIER
:
15708 LA95_235
= self
.input.LA(3)
15710 if (self
.synpred188()) :
15714 elif LA95
== HEX_LITERAL
:
15715 LA95_236
= self
.input.LA(3)
15717 if (self
.synpred188()) :
15721 elif LA95
== OCTAL_LITERAL
:
15722 LA95_237
= self
.input.LA(3)
15724 if (self
.synpred188()) :
15728 elif LA95
== DECIMAL_LITERAL
:
15729 LA95_238
= self
.input.LA(3)
15731 if (self
.synpred188()) :
15735 elif LA95
== CHARACTER_LITERAL
:
15736 LA95_239
= self
.input.LA(3)
15738 if (self
.synpred188()) :
15742 elif LA95
== STRING_LITERAL
:
15743 LA95_240
= self
.input.LA(3)
15745 if (self
.synpred188()) :
15749 elif LA95
== FLOATING_POINT_LITERAL
:
15750 LA95_241
= self
.input.LA(3)
15752 if (self
.synpred188()) :
15757 LA95_242
= self
.input.LA(3)
15759 if (self
.synpred188()) :
15764 LA95_243
= self
.input.LA(3)
15766 if (self
.synpred188()) :
15771 LA95_244
= self
.input.LA(3)
15773 if (self
.synpred188()) :
15777 elif LA95
== 66 or LA95
== 68 or LA95
== 69 or LA95
== 77 or LA95
== 78 or LA95
== 79:
15778 LA95_245
= self
.input.LA(3)
15780 if (self
.synpred188()) :
15785 LA95_246
= self
.input.LA(3)
15787 if (self
.synpred188()) :
15791 elif LA95
== 49 or LA95
== 50 or LA95
== 51 or LA95
== 52 or LA95
== 53 or LA95
== 54 or LA95
== 55 or LA95
== 56 or LA95
== 57 or LA95
== 58 or LA95
== 59 or LA95
== 60 or LA95
== 61:
15792 LA95_247
= self
.input.LA(3)
15794 if (self
.synpred188()) :
15799 LA95_248
= self
.input.LA(3)
15801 if (self
.synpred188()) :
15806 LA95_249
= self
.input.LA(3)
15808 if (self
.synpred188()) :
15813 LA95_250
= self
.input.LA(3)
15815 if (self
.synpred188()) :
15820 LA95_251
= self
.input.LA(3)
15822 if (self
.synpred188()) :
15827 LA95_252
= self
.input.LA(3)
15829 if (self
.synpred188()) :
15834 LA95_253
= self
.input.LA(3)
15836 if (self
.synpred188()) :
15841 LA95_254
= self
.input.LA(3)
15843 if (self
.synpred188()) :
15848 LA95_255
= self
.input.LA(3)
15850 if (self
.synpred188()) :
15855 LA95_256
= self
.input.LA(3)
15857 if (self
.synpred188()) :
15861 elif LA95
== 45 or LA95
== 46:
15862 LA95_257
= self
.input.LA(3)
15864 if (self
.synpred188()) :
15869 LA95_258
= self
.input.LA(3)
15871 if (self
.synpred188()) :
15877 LA95
= self
.input.LA(2)
15878 if LA95
== IDENTIFIER
:
15879 LA95_259
= self
.input.LA(3)
15881 if (self
.synpred188()) :
15885 elif LA95
== HEX_LITERAL
:
15886 LA95_260
= self
.input.LA(3)
15888 if (self
.synpred188()) :
15892 elif LA95
== OCTAL_LITERAL
:
15893 LA95_261
= self
.input.LA(3)
15895 if (self
.synpred188()) :
15899 elif LA95
== DECIMAL_LITERAL
:
15900 LA95_262
= self
.input.LA(3)
15902 if (self
.synpred188()) :
15906 elif LA95
== CHARACTER_LITERAL
:
15907 LA95_263
= self
.input.LA(3)
15909 if (self
.synpred188()) :
15913 elif LA95
== STRING_LITERAL
:
15914 LA95_264
= self
.input.LA(3)
15916 if (self
.synpred188()) :
15920 elif LA95
== FLOATING_POINT_LITERAL
:
15921 LA95_265
= self
.input.LA(3)
15923 if (self
.synpred188()) :
15928 LA95_266
= self
.input.LA(3)
15930 if (self
.synpred188()) :
15935 LA95_267
= self
.input.LA(3)
15937 if (self
.synpred188()) :
15942 LA95_268
= self
.input.LA(3)
15944 if (self
.synpred188()) :
15948 elif LA95
== 66 or LA95
== 68 or LA95
== 69 or LA95
== 77 or LA95
== 78 or LA95
== 79:
15949 LA95_269
= self
.input.LA(3)
15951 if (self
.synpred188()) :
15956 LA95_270
= self
.input.LA(3)
15958 if (self
.synpred188()) :
15964 LA95
= self
.input.LA(2)
15965 if LA95
== IDENTIFIER
:
15966 LA95_271
= self
.input.LA(3)
15968 if (self
.synpred188()) :
15972 elif LA95
== HEX_LITERAL
:
15973 LA95_272
= self
.input.LA(3)
15975 if (self
.synpred188()) :
15979 elif LA95
== OCTAL_LITERAL
:
15980 LA95_273
= self
.input.LA(3)
15982 if (self
.synpred188()) :
15986 elif LA95
== DECIMAL_LITERAL
:
15987 LA95_274
= self
.input.LA(3)
15989 if (self
.synpred188()) :
15993 elif LA95
== CHARACTER_LITERAL
:
15994 LA95_275
= self
.input.LA(3)
15996 if (self
.synpred188()) :
16000 elif LA95
== STRING_LITERAL
:
16001 LA95_276
= self
.input.LA(3)
16003 if (self
.synpred188()) :
16007 elif LA95
== FLOATING_POINT_LITERAL
:
16008 LA95_277
= self
.input.LA(3)
16010 if (self
.synpred188()) :
16015 LA95_278
= self
.input.LA(3)
16017 if (self
.synpred188()) :
16022 LA95_279
= self
.input.LA(3)
16024 if (self
.synpred188()) :
16029 LA95_280
= self
.input.LA(3)
16031 if (self
.synpred188()) :
16035 elif LA95
== 66 or LA95
== 68 or LA95
== 69 or LA95
== 77 or LA95
== 78 or LA95
== 79:
16036 LA95_281
= self
.input.LA(3)
16038 if (self
.synpred188()) :
16043 LA95_282
= self
.input.LA(3)
16045 if (self
.synpred188()) :
16050 elif LA95
== 66 or LA95
== 68 or LA95
== 69 or LA95
== 77 or LA95
== 78 or LA95
== 79:
16051 LA95
= self
.input.LA(2)
16053 LA95_283
= self
.input.LA(3)
16055 if (self
.synpred188()) :
16059 elif LA95
== IDENTIFIER
:
16060 LA95_284
= self
.input.LA(3)
16062 if (self
.synpred188()) :
16066 elif LA95
== HEX_LITERAL
:
16067 LA95_285
= self
.input.LA(3)
16069 if (self
.synpred188()) :
16073 elif LA95
== OCTAL_LITERAL
:
16074 LA95_286
= self
.input.LA(3)
16076 if (self
.synpred188()) :
16080 elif LA95
== DECIMAL_LITERAL
:
16081 LA95_287
= self
.input.LA(3)
16083 if (self
.synpred188()) :
16087 elif LA95
== CHARACTER_LITERAL
:
16088 LA95_288
= self
.input.LA(3)
16090 if (self
.synpred188()) :
16094 elif LA95
== STRING_LITERAL
:
16095 LA95_289
= self
.input.LA(3)
16097 if (self
.synpred188()) :
16101 elif LA95
== FLOATING_POINT_LITERAL
:
16102 LA95_290
= self
.input.LA(3)
16104 if (self
.synpred188()) :
16109 LA95_291
= self
.input.LA(3)
16111 if (self
.synpred188()) :
16116 LA95_292
= self
.input.LA(3)
16118 if (self
.synpred188()) :
16122 elif LA95
== 66 or LA95
== 68 or LA95
== 69 or LA95
== 77 or LA95
== 78 or LA95
== 79:
16123 LA95_293
= self
.input.LA(3)
16125 if (self
.synpred188()) :
16130 LA95_294
= self
.input.LA(3)
16132 if (self
.synpred188()) :
16138 LA95
= self
.input.LA(2)
16140 LA95_295
= self
.input.LA(3)
16142 if (self
.synpred188()) :
16146 elif LA95
== IDENTIFIER
:
16147 LA95_296
= self
.input.LA(3)
16149 if (self
.synpred188()) :
16153 elif LA95
== HEX_LITERAL
:
16154 LA95_297
= self
.input.LA(3)
16156 if (self
.synpred188()) :
16160 elif LA95
== OCTAL_LITERAL
:
16161 LA95_298
= self
.input.LA(3)
16163 if (self
.synpred188()) :
16167 elif LA95
== DECIMAL_LITERAL
:
16168 LA95_299
= self
.input.LA(3)
16170 if (self
.synpred188()) :
16174 elif LA95
== CHARACTER_LITERAL
:
16175 LA95_300
= self
.input.LA(3)
16177 if (self
.synpred188()) :
16181 elif LA95
== STRING_LITERAL
:
16182 LA95_301
= self
.input.LA(3)
16184 if (self
.synpred188()) :
16188 elif LA95
== FLOATING_POINT_LITERAL
:
16189 LA95_302
= self
.input.LA(3)
16191 if (self
.synpred188()) :
16196 LA95_303
= self
.input.LA(3)
16198 if (self
.synpred188()) :
16203 LA95_304
= self
.input.LA(3)
16205 if (self
.synpred188()) :
16209 elif LA95
== 66 or LA95
== 68 or LA95
== 69 or LA95
== 77 or LA95
== 78 or LA95
== 79:
16210 LA95_305
= self
.input.LA(3)
16212 if (self
.synpred188()) :
16217 LA95_306
= self
.input.LA(3)
16219 if (self
.synpred188()) :
16224 elif LA95
== 25 or LA95
== 26 or LA95
== 29 or LA95
== 30 or LA95
== 31 or LA95
== 32 or LA95
== 33 or LA95
== 34 or LA95
== 35 or LA95
== 36 or LA95
== 37 or LA95
== 38 or LA95
== 39 or LA95
== 40 or LA95
== 41 or LA95
== 42 or LA95
== 43 or LA95
== 45 or LA95
== 46 or LA95
== 48 or LA95
== 49 or LA95
== 50 or LA95
== 51 or LA95
== 52 or LA95
== 53 or LA95
== 54 or LA95
== 55 or LA95
== 56 or LA95
== 57 or LA95
== 58 or LA95
== 59 or LA95
== 60 or LA95
== 61 or LA95
== 103 or LA95
== 104 or LA95
== 105 or LA95
== 106 or LA95
== 107 or LA95
== 108 or LA95
== 110 or LA95
== 111 or LA95
== 112 or LA95
== 113 or LA95
== 114 or LA95
== 115 or LA95
== 116 or LA95
== 117:
16228 # C.g:0:0: statement
16229 self
.following
.append(self
.FOLLOW_statement_in_statement_list2242
)
16231 self
.following
.pop()
16240 if self
.backtracking
> 0:
16244 eee
= EarlyExitException(95, self
.input)
16254 except RecognitionException
, re
:
16255 self
.reportError(re
)
16256 self
.recover(self
.input, re
)
16258 if self
.backtracking
> 0:
16259 self
.memoize(self
.input, 67, statement_list_StartIndex
)
16265 # $ANTLR end statement_list
16267 class expression_statement_return(object):
16268 def __init__(self
):
16274 # $ANTLR start expression_statement
16275 # C.g:561:1: expression_statement : ( ';' | expression ';' );
16276 def expression_statement(self
, ):
16278 retval
= self
.expression_statement_return()
16279 retval
.start
= self
.input.LT(1)
16280 expression_statement_StartIndex
= self
.input.index()
16283 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 68):
16286 # C.g:562:2: ( ';' | expression ';' )
16288 LA96_0
= self
.input.LA(1)
16290 if (LA96_0
== 25) :
16292 elif ((IDENTIFIER
<= LA96_0
<= FLOATING_POINT_LITERAL
) or LA96_0
== 62 or LA96_0
== 66 or (68 <= LA96_0
<= 69) or (72 <= LA96_0
<= 74) or (77 <= LA96_0
<= 79)) :
16295 if self
.backtracking
> 0:
16299 nvae
= NoViableAltException("561:1: expression_statement : ( ';' | expression ';' );", 96, 0, self
.input)
16305 self
.match(self
.input, 25, self
.FOLLOW_25_in_expression_statement2254
)
16311 # C.g:563:4: expression ';'
16312 self
.following
.append(self
.FOLLOW_expression_in_expression_statement2259
)
16314 self
.following
.pop()
16317 self
.match(self
.input, 25, self
.FOLLOW_25_in_expression_statement2261
)
16322 retval
.stop
= self
.input.LT(-1)
16325 except RecognitionException
, re
:
16326 self
.reportError(re
)
16327 self
.recover(self
.input, re
)
16329 if self
.backtracking
> 0:
16330 self
.memoize(self
.input, 68, expression_statement_StartIndex
)
16336 # $ANTLR end expression_statement
16339 # $ANTLR start selection_statement
16340 # C.g:566:1: selection_statement : ( 'if' '(' e= expression ')' statement ( options {k=1; backtrack=false; } : 'else' statement )? | 'switch' '(' expression ')' statement );
16341 def selection_statement(self
, ):
16343 selection_statement_StartIndex
= self
.input.index()
16349 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 69):
16352 # C.g:567:2: ( 'if' '(' e= expression ')' statement ( options {k=1; backtrack=false; } : 'else' statement )? | 'switch' '(' expression ')' statement )
16354 LA98_0
= self
.input.LA(1)
16356 if (LA98_0
== 108) :
16358 elif (LA98_0
== 110) :
16361 if self
.backtracking
> 0:
16365 nvae
= NoViableAltException("566:1: selection_statement : ( 'if' '(' e= expression ')' statement ( options {k=1; backtrack=false; } : 'else' statement )? | 'switch' '(' expression ')' statement );", 98, 0, self
.input)
16370 # C.g:567:4: 'if' '(' e= expression ')' statement ( options {k=1; backtrack=false; } : 'else' statement )?
16371 self
.match(self
.input, 108, self
.FOLLOW_108_in_selection_statement2272
)
16374 self
.match(self
.input, 62, self
.FOLLOW_62_in_selection_statement2274
)
16377 self
.following
.append(self
.FOLLOW_expression_in_selection_statement2278
)
16378 e
= self
.expression()
16379 self
.following
.pop()
16382 self
.match(self
.input, 63, self
.FOLLOW_63_in_selection_statement2280
)
16385 if self
.backtracking
== 0:
16386 self
.StorePredicateExpression(e
.start
.line
, e
.start
.charPositionInLine
, e
.stop
.line
, e
.stop
.charPositionInLine
, self
.input.toString(e
.start
,e
.stop
))
16388 self
.following
.append(self
.FOLLOW_statement_in_selection_statement2284
)
16390 self
.following
.pop()
16393 # C.g:567:167: ( options {k=1; backtrack=false; } : 'else' statement )?
16395 LA97_0
= self
.input.LA(1)
16397 if (LA97_0
== 109) :
16400 # C.g:567:200: 'else' statement
16401 self
.match(self
.input, 109, self
.FOLLOW_109_in_selection_statement2299
)
16404 self
.following
.append(self
.FOLLOW_statement_in_selection_statement2301
)
16406 self
.following
.pop()
16415 # C.g:568:4: 'switch' '(' expression ')' statement
16416 self
.match(self
.input, 110, self
.FOLLOW_110_in_selection_statement2308
)
16419 self
.match(self
.input, 62, self
.FOLLOW_62_in_selection_statement2310
)
16422 self
.following
.append(self
.FOLLOW_expression_in_selection_statement2312
)
16424 self
.following
.pop()
16427 self
.match(self
.input, 63, self
.FOLLOW_63_in_selection_statement2314
)
16430 self
.following
.append(self
.FOLLOW_statement_in_selection_statement2316
)
16432 self
.following
.pop()
16438 except RecognitionException
, re
:
16439 self
.reportError(re
)
16440 self
.recover(self
.input, re
)
16442 if self
.backtracking
> 0:
16443 self
.memoize(self
.input, 69, selection_statement_StartIndex
)
16449 # $ANTLR end selection_statement
16452 # $ANTLR start iteration_statement
16453 # C.g:571:1: iteration_statement : ( 'while' '(' e= expression ')' statement | 'do' statement 'while' '(' e= expression ')' ';' | 'for' '(' expression_statement e= expression_statement ( expression )? ')' statement );
16454 def iteration_statement(self
, ):
16456 iteration_statement_StartIndex
= self
.input.index()
16462 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 70):
16465 # C.g:572:2: ( 'while' '(' e= expression ')' statement | 'do' statement 'while' '(' e= expression ')' ';' | 'for' '(' expression_statement e= expression_statement ( expression )? ')' statement )
16467 LA100
= self
.input.LA(1)
16475 if self
.backtracking
> 0:
16479 nvae
= NoViableAltException("571:1: iteration_statement : ( 'while' '(' e= expression ')' statement | 'do' statement 'while' '(' e= expression ')' ';' | 'for' '(' expression_statement e= expression_statement ( expression )? ')' statement );", 100, 0, self
.input)
16484 # C.g:572:4: 'while' '(' e= expression ')' statement
16485 self
.match(self
.input, 111, self
.FOLLOW_111_in_iteration_statement2327
)
16488 self
.match(self
.input, 62, self
.FOLLOW_62_in_iteration_statement2329
)
16491 self
.following
.append(self
.FOLLOW_expression_in_iteration_statement2333
)
16492 e
= self
.expression()
16493 self
.following
.pop()
16496 self
.match(self
.input, 63, self
.FOLLOW_63_in_iteration_statement2335
)
16499 self
.following
.append(self
.FOLLOW_statement_in_iteration_statement2337
)
16501 self
.following
.pop()
16504 if self
.backtracking
== 0:
16505 self
.StorePredicateExpression(e
.start
.line
, e
.start
.charPositionInLine
, e
.stop
.line
, e
.stop
.charPositionInLine
, self
.input.toString(e
.start
,e
.stop
))
16510 # C.g:573:4: 'do' statement 'while' '(' e= expression ')' ';'
16511 self
.match(self
.input, 112, self
.FOLLOW_112_in_iteration_statement2344
)
16514 self
.following
.append(self
.FOLLOW_statement_in_iteration_statement2346
)
16516 self
.following
.pop()
16519 self
.match(self
.input, 111, self
.FOLLOW_111_in_iteration_statement2348
)
16522 self
.match(self
.input, 62, self
.FOLLOW_62_in_iteration_statement2350
)
16525 self
.following
.append(self
.FOLLOW_expression_in_iteration_statement2354
)
16526 e
= self
.expression()
16527 self
.following
.pop()
16530 self
.match(self
.input, 63, self
.FOLLOW_63_in_iteration_statement2356
)
16533 self
.match(self
.input, 25, self
.FOLLOW_25_in_iteration_statement2358
)
16536 if self
.backtracking
== 0:
16537 self
.StorePredicateExpression(e
.start
.line
, e
.start
.charPositionInLine
, e
.stop
.line
, e
.stop
.charPositionInLine
, self
.input.toString(e
.start
,e
.stop
))
16542 # C.g:574:4: 'for' '(' expression_statement e= expression_statement ( expression )? ')' statement
16543 self
.match(self
.input, 113, self
.FOLLOW_113_in_iteration_statement2365
)
16546 self
.match(self
.input, 62, self
.FOLLOW_62_in_iteration_statement2367
)
16549 self
.following
.append(self
.FOLLOW_expression_statement_in_iteration_statement2369
)
16550 self
.expression_statement()
16551 self
.following
.pop()
16554 self
.following
.append(self
.FOLLOW_expression_statement_in_iteration_statement2373
)
16555 e
= self
.expression_statement()
16556 self
.following
.pop()
16559 # C.g:574:58: ( expression )?
16561 LA99_0
= self
.input.LA(1)
16563 if ((IDENTIFIER
<= LA99_0
<= FLOATING_POINT_LITERAL
) or LA99_0
== 62 or LA99_0
== 66 or (68 <= LA99_0
<= 69) or (72 <= LA99_0
<= 74) or (77 <= LA99_0
<= 79)) :
16566 # C.g:0:0: expression
16567 self
.following
.append(self
.FOLLOW_expression_in_iteration_statement2375
)
16569 self
.following
.pop()
16575 self
.match(self
.input, 63, self
.FOLLOW_63_in_iteration_statement2378
)
16578 self
.following
.append(self
.FOLLOW_statement_in_iteration_statement2380
)
16580 self
.following
.pop()
16583 if self
.backtracking
== 0:
16584 self
.StorePredicateExpression(e
.start
.line
, e
.start
.charPositionInLine
, e
.stop
.line
, e
.stop
.charPositionInLine
, self
.input.toString(e
.start
,e
.stop
))
16589 except RecognitionException
, re
:
16590 self
.reportError(re
)
16591 self
.recover(self
.input, re
)
16593 if self
.backtracking
> 0:
16594 self
.memoize(self
.input, 70, iteration_statement_StartIndex
)
16600 # $ANTLR end iteration_statement
16603 # $ANTLR start jump_statement
16604 # C.g:577:1: jump_statement : ( 'goto' IDENTIFIER ';' | 'continue' ';' | 'break' ';' | 'return' ';' | 'return' expression ';' );
16605 def jump_statement(self
, ):
16607 jump_statement_StartIndex
= self
.input.index()
16610 if self
.backtracking
> 0 and self
.alreadyParsedRule(self
.input, 71):
16613 # C.g:578:2: ( 'goto' IDENTIFIER ';' | 'continue' ';' | 'break' ';' | 'return' ';' | 'return' expression ';' )
16615 LA101
= self
.input.LA(1)
16623 LA101_4
= self
.input.LA(2)
16625 if (LA101_4
== 25) :
16627 elif ((IDENTIFIER
<= LA101_4
<= FLOATING_POINT_LITERAL
) or LA101_4
== 62 or LA101_4
== 66 or (68 <= LA101_4
<= 69) or (72 <= LA101_4
<= 74) or (77 <= LA101_4
<= 79)) :
16630 if self
.backtracking
> 0:
16634 nvae
= NoViableAltException("577:1: jump_statement : ( 'goto' IDENTIFIER ';' | 'continue' ';' | 'break' ';' | 'return' ';' | 'return' expression ';' );", 101, 4, self
.input)
16639 if self
.backtracking
> 0:
16643 nvae
= NoViableAltException("577:1: jump_statement : ( 'goto' IDENTIFIER ';' | 'continue' ';' | 'break' ';' | 'return' ';' | 'return' expression ';' );", 101, 0, self
.input)
16648 # C.g:578:4: 'goto' IDENTIFIER ';'
16649 self
.match(self
.input, 114, self
.FOLLOW_114_in_jump_statement2393
)
16652 self
.match(self
.input, IDENTIFIER
, self
.FOLLOW_IDENTIFIER_in_jump_statement2395
)
16655 self
.match(self
.input, 25, self
.FOLLOW_25_in_jump_statement2397
)
16661 # C.g:579:4: 'continue' ';'
16662 self
.match(self
.input, 115, self
.FOLLOW_115_in_jump_statement2402
)
16665 self
.match(self
.input, 25, self
.FOLLOW_25_in_jump_statement2404
)
16671 # C.g:580:4: 'break' ';'
16672 self
.match(self
.input, 116, self
.FOLLOW_116_in_jump_statement2409
)
16675 self
.match(self
.input, 25, self
.FOLLOW_25_in_jump_statement2411
)
16681 # C.g:581:4: 'return' ';'
16682 self
.match(self
.input, 117, self
.FOLLOW_117_in_jump_statement2416
)
16685 self
.match(self
.input, 25, self
.FOLLOW_25_in_jump_statement2418
)
16691 # C.g:582:4: 'return' expression ';'
16692 self
.match(self
.input, 117, self
.FOLLOW_117_in_jump_statement2423
)
16695 self
.following
.append(self
.FOLLOW_expression_in_jump_statement2425
)
16697 self
.following
.pop()
16700 self
.match(self
.input, 25, self
.FOLLOW_25_in_jump_statement2427
)
16706 except RecognitionException
, re
:
16707 self
.reportError(re
)
16708 self
.recover(self
.input, re
)
16710 if self
.backtracking
> 0:
16711 self
.memoize(self
.input, 71, jump_statement_StartIndex
)
16717 # $ANTLR end jump_statement
16719 # $ANTLR start synpred2
16720 def synpred2_fragment(self
, ):
16721 # C.g:119:6: ( declaration_specifiers )
16722 # C.g:119:6: declaration_specifiers
16723 self
.following
.append(self
.FOLLOW_declaration_specifiers_in_synpred2100
)
16724 self
.declaration_specifiers()
16725 self
.following
.pop()
16730 # $ANTLR end synpred2
16734 # $ANTLR start synpred4
16735 def synpred4_fragment(self
, ):
16736 # C.g:119:4: ( ( declaration_specifiers )? declarator ( declaration )* '{' )
16737 # C.g:119:6: ( declaration_specifiers )? declarator ( declaration )* '{'
16738 # C.g:119:6: ( declaration_specifiers )?
16740 LA102
= self
.input.LA(1)
16741 if LA102
== 29 or LA102
== 30 or LA102
== 31 or LA102
== 32 or LA102
== 33 or LA102
== 34 or LA102
== 35 or LA102
== 36 or LA102
== 37 or LA102
== 38 or LA102
== 39 or LA102
== 40 or LA102
== 41 or LA102
== 42 or LA102
== 45 or LA102
== 46 or LA102
== 48 or LA102
== 49 or LA102
== 50 or LA102
== 51 or LA102
== 52 or LA102
== 53 or LA102
== 54 or LA102
== 55 or LA102
== 56 or LA102
== 57 or LA102
== 61:
16743 elif LA102
== IDENTIFIER
:
16744 LA102
= self
.input.LA(2)
16746 LA102_21
= self
.input.LA(3)
16748 if (self
.synpred2()) :
16750 elif LA102
== 29 or LA102
== 30 or LA102
== 31 or LA102
== 32 or LA102
== 33:
16751 LA102_23
= self
.input.LA(3)
16753 if (self
.synpred2()) :
16756 LA102_24
= self
.input.LA(3)
16758 if (self
.synpred2()) :
16761 LA102_25
= self
.input.LA(3)
16763 if (self
.synpred2()) :
16766 LA102_26
= self
.input.LA(3)
16768 if (self
.synpred2()) :
16771 LA102_27
= self
.input.LA(3)
16773 if (self
.synpred2()) :
16776 LA102_28
= self
.input.LA(3)
16778 if (self
.synpred2()) :
16781 LA102_29
= self
.input.LA(3)
16783 if (self
.synpred2()) :
16786 LA102_30
= self
.input.LA(3)
16788 if (self
.synpred2()) :
16791 LA102_31
= self
.input.LA(3)
16793 if (self
.synpred2()) :
16796 LA102_32
= self
.input.LA(3)
16798 if (self
.synpred2()) :
16800 elif LA102
== 45 or LA102
== 46:
16801 LA102_33
= self
.input.LA(3)
16803 if (self
.synpred2()) :
16806 LA102_34
= self
.input.LA(3)
16808 if (self
.synpred2()) :
16810 elif LA102
== IDENTIFIER
:
16811 LA102_35
= self
.input.LA(3)
16813 if (self
.synpred2()) :
16816 LA102_36
= self
.input.LA(3)
16818 if (self
.synpred2()) :
16823 LA102_39
= self
.input.LA(3)
16825 if (self
.synpred2()) :
16828 LA102_40
= self
.input.LA(3)
16830 if (self
.synpred2()) :
16832 elif LA102
== 49 or LA102
== 50 or LA102
== 51 or LA102
== 52 or LA102
== 53 or LA102
== 54 or LA102
== 55 or LA102
== 56 or LA102
== 57 or LA102
== 61:
16833 LA102_41
= self
.input.LA(3)
16835 if (self
.synpred2()) :
16838 LA102_14
= self
.input.LA(2)
16840 if (self
.synpred2()) :
16843 LA102_16
= self
.input.LA(2)
16845 if (self
.synpred2()) :
16848 LA102_17
= self
.input.LA(2)
16850 if (self
.synpred2()) :
16853 # C.g:0:0: declaration_specifiers
16854 self
.following
.append(self
.FOLLOW_declaration_specifiers_in_synpred4100
)
16855 self
.declaration_specifiers()
16856 self
.following
.pop()
16862 self
.following
.append(self
.FOLLOW_declarator_in_synpred4103
)
16864 self
.following
.pop()
16867 # C.g:119:41: ( declaration )*
16868 while True: #loop103
16870 LA103_0
= self
.input.LA(1)
16872 if (LA103_0
== IDENTIFIER
or LA103_0
== 26 or (29 <= LA103_0
<= 42) or (45 <= LA103_0
<= 46) or (48 <= LA103_0
<= 61)) :
16877 # C.g:0:0: declaration
16878 self
.following
.append(self
.FOLLOW_declaration_in_synpred4105
)
16880 self
.following
.pop()
16889 self
.match(self
.input, 43, self
.FOLLOW_43_in_synpred4108
)
16894 # $ANTLR end synpred4
16898 # $ANTLR start synpred5
16899 def synpred5_fragment(self
, ):
16900 # C.g:120:4: ( declaration )
16901 # C.g:120:4: declaration
16902 self
.following
.append(self
.FOLLOW_declaration_in_synpred5118
)
16904 self
.following
.pop()
16909 # $ANTLR end synpred5
16913 # $ANTLR start synpred7
16914 def synpred7_fragment(self
, ):
16915 # C.g:146:6: ( declaration_specifiers )
16916 # C.g:146:6: declaration_specifiers
16917 self
.following
.append(self
.FOLLOW_declaration_specifiers_in_synpred7157
)
16918 self
.declaration_specifiers()
16919 self
.following
.pop()
16924 # $ANTLR end synpred7
16928 # $ANTLR start synpred10
16929 def synpred10_fragment(self
, ):
16930 # C.g:167:18: ( declaration_specifiers )
16931 # C.g:167:18: declaration_specifiers
16932 self
.following
.append(self
.FOLLOW_declaration_specifiers_in_synpred10207
)
16933 self
.declaration_specifiers()
16934 self
.following
.pop()
16939 # $ANTLR end synpred10
16943 # $ANTLR start synpred14
16944 def synpred14_fragment(self
, ):
16945 # C.g:184:7: ( type_specifier )
16946 # C.g:184:7: type_specifier
16947 self
.following
.append(self
.FOLLOW_type_specifier_in_synpred14272
)
16948 self
.type_specifier()
16949 self
.following
.pop()
16954 # $ANTLR end synpred14
16958 # $ANTLR start synpred15
16959 def synpred15_fragment(self
, ):
16960 # C.g:185:13: ( type_qualifier )
16961 # C.g:185:13: type_qualifier
16962 self
.following
.append(self
.FOLLOW_type_qualifier_in_synpred15286
)
16963 self
.type_qualifier()
16964 self
.following
.pop()
16969 # $ANTLR end synpred15
16973 # $ANTLR start synpred33
16974 def synpred33_fragment(self
, ):
16975 # C.g:225:16: ( type_qualifier )
16976 # C.g:225:16: type_qualifier
16977 self
.following
.append(self
.FOLLOW_type_qualifier_in_synpred33444
)
16978 self
.type_qualifier()
16979 self
.following
.pop()
16984 # $ANTLR end synpred33
16988 # $ANTLR start synpred34
16989 def synpred34_fragment(self
, ):
16990 # C.g:225:4: ( IDENTIFIER ( type_qualifier )* declarator )
16991 # C.g:225:5: IDENTIFIER ( type_qualifier )* declarator
16992 self
.match(self
.input, IDENTIFIER
, self
.FOLLOW_IDENTIFIER_in_synpred34442
)
16995 # C.g:225:16: ( type_qualifier )*
16996 while True: #loop106
16998 LA106
= self
.input.LA(1)
17000 LA106_2
= self
.input.LA(2)
17002 if (self
.synpred33()) :
17007 LA106_3
= self
.input.LA(2)
17009 if (self
.synpred33()) :
17014 LA106_4
= self
.input.LA(2)
17016 if (self
.synpred33()) :
17020 elif LA106
== 49 or LA106
== 50 or LA106
== 51 or LA106
== 52 or LA106
== 53 or LA106
== 54 or LA106
== 55 or LA106
== 56 or LA106
== 57 or LA106
== 61:
17024 # C.g:0:0: type_qualifier
17025 self
.following
.append(self
.FOLLOW_type_qualifier_in_synpred34444
)
17026 self
.type_qualifier()
17027 self
.following
.pop()
17036 self
.following
.append(self
.FOLLOW_declarator_in_synpred34447
)
17038 self
.following
.pop()
17043 # $ANTLR end synpred34
17047 # $ANTLR start synpred39
17048 def synpred39_fragment(self
, ):
17049 # C.g:253:6: ( type_qualifier )
17050 # C.g:253:6: type_qualifier
17051 self
.following
.append(self
.FOLLOW_type_qualifier_in_synpred39566
)
17052 self
.type_qualifier()
17053 self
.following
.pop()
17058 # $ANTLR end synpred39
17062 # $ANTLR start synpred40
17063 def synpred40_fragment(self
, ):
17064 # C.g:253:23: ( type_specifier )
17065 # C.g:253:23: type_specifier
17066 self
.following
.append(self
.FOLLOW_type_specifier_in_synpred40570
)
17067 self
.type_specifier()
17068 self
.following
.pop()
17073 # $ANTLR end synpred40
17077 # $ANTLR start synpred66
17078 def synpred66_fragment(self
, ):
17079 # C.g:297:4: ( ( pointer )? ( 'EFIAPI' )? ( 'EFI_BOOTSERVICE' )? ( 'EFI_RUNTIMESERVICE' )? direct_declarator )
17080 # C.g:297:4: ( pointer )? ( 'EFIAPI' )? ( 'EFI_BOOTSERVICE' )? ( 'EFI_RUNTIMESERVICE' )? direct_declarator
17081 # C.g:297:4: ( pointer )?
17083 LA111_0
= self
.input.LA(1)
17085 if (LA111_0
== 66) :
17089 self
.following
.append(self
.FOLLOW_pointer_in_synpred66784
)
17091 self
.following
.pop()
17097 # C.g:297:13: ( 'EFIAPI' )?
17099 LA112_0
= self
.input.LA(1)
17101 if (LA112_0
== 58) :
17104 # C.g:297:14: 'EFIAPI'
17105 self
.match(self
.input, 58, self
.FOLLOW_58_in_synpred66788
)
17111 # C.g:297:25: ( 'EFI_BOOTSERVICE' )?
17113 LA113_0
= self
.input.LA(1)
17115 if (LA113_0
== 59) :
17118 # C.g:297:26: 'EFI_BOOTSERVICE'
17119 self
.match(self
.input, 59, self
.FOLLOW_59_in_synpred66793
)
17125 # C.g:297:46: ( 'EFI_RUNTIMESERVICE' )?
17127 LA114_0
= self
.input.LA(1)
17129 if (LA114_0
== 60) :
17132 # C.g:297:47: 'EFI_RUNTIMESERVICE'
17133 self
.match(self
.input, 60, self
.FOLLOW_60_in_synpred66798
)
17139 self
.following
.append(self
.FOLLOW_direct_declarator_in_synpred66802
)
17140 self
.direct_declarator()
17141 self
.following
.pop()
17146 # $ANTLR end synpred66
17150 # $ANTLR start synpred67
17151 def synpred67_fragment(self
, ):
17152 # C.g:303:15: ( declarator_suffix )
17153 # C.g:303:15: declarator_suffix
17154 self
.following
.append(self
.FOLLOW_declarator_suffix_in_synpred67821
)
17155 self
.declarator_suffix()
17156 self
.following
.pop()
17161 # $ANTLR end synpred67
17165 # $ANTLR start synpred69
17166 def synpred69_fragment(self
, ):
17167 # C.g:304:9: ( 'EFIAPI' )
17168 # C.g:304:9: 'EFIAPI'
17169 self
.match(self
.input, 58, self
.FOLLOW_58_in_synpred69830
)
17174 # $ANTLR end synpred69
17178 # $ANTLR start synpred70
17179 def synpred70_fragment(self
, ):
17180 # C.g:304:35: ( declarator_suffix )
17181 # C.g:304:35: declarator_suffix
17182 self
.following
.append(self
.FOLLOW_declarator_suffix_in_synpred70838
)
17183 self
.declarator_suffix()
17184 self
.following
.pop()
17189 # $ANTLR end synpred70
17193 # $ANTLR start synpred73
17194 def synpred73_fragment(self
, ):
17195 # C.g:310:9: ( '(' parameter_type_list ')' )
17196 # C.g:310:9: '(' parameter_type_list ')'
17197 self
.match(self
.input, 62, self
.FOLLOW_62_in_synpred73878
)
17200 self
.following
.append(self
.FOLLOW_parameter_type_list_in_synpred73880
)
17201 self
.parameter_type_list()
17202 self
.following
.pop()
17205 self
.match(self
.input, 63, self
.FOLLOW_63_in_synpred73882
)
17210 # $ANTLR end synpred73
17214 # $ANTLR start synpred74
17215 def synpred74_fragment(self
, ):
17216 # C.g:311:9: ( '(' identifier_list ')' )
17217 # C.g:311:9: '(' identifier_list ')'
17218 self
.match(self
.input, 62, self
.FOLLOW_62_in_synpred74892
)
17221 self
.following
.append(self
.FOLLOW_identifier_list_in_synpred74894
)
17222 self
.identifier_list()
17223 self
.following
.pop()
17226 self
.match(self
.input, 63, self
.FOLLOW_63_in_synpred74896
)
17231 # $ANTLR end synpred74
17235 # $ANTLR start synpred75
17236 def synpred75_fragment(self
, ):
17237 # C.g:316:8: ( type_qualifier )
17238 # C.g:316:8: type_qualifier
17239 self
.following
.append(self
.FOLLOW_type_qualifier_in_synpred75921
)
17240 self
.type_qualifier()
17241 self
.following
.pop()
17246 # $ANTLR end synpred75
17250 # $ANTLR start synpred76
17251 def synpred76_fragment(self
, ):
17252 # C.g:316:24: ( pointer )
17253 # C.g:316:24: pointer
17254 self
.following
.append(self
.FOLLOW_pointer_in_synpred76924
)
17256 self
.following
.pop()
17261 # $ANTLR end synpred76
17265 # $ANTLR start synpred77
17266 def synpred77_fragment(self
, ):
17267 # C.g:316:4: ( '*' ( type_qualifier )+ ( pointer )? )
17268 # C.g:316:4: '*' ( type_qualifier )+ ( pointer )?
17269 self
.match(self
.input, 66, self
.FOLLOW_66_in_synpred77919
)
17272 # C.g:316:8: ( type_qualifier )+
17274 while True: #loop116
17276 LA116_0
= self
.input.LA(1)
17278 if ((49 <= LA116_0
<= 61)) :
17283 # C.g:0:0: type_qualifier
17284 self
.following
.append(self
.FOLLOW_type_qualifier_in_synpred77921
)
17285 self
.type_qualifier()
17286 self
.following
.pop()
17295 if self
.backtracking
> 0:
17299 eee
= EarlyExitException(116, self
.input)
17305 # C.g:316:24: ( pointer )?
17307 LA117_0
= self
.input.LA(1)
17309 if (LA117_0
== 66) :
17313 self
.following
.append(self
.FOLLOW_pointer_in_synpred77924
)
17315 self
.following
.pop()
17323 # $ANTLR end synpred77
17327 # $ANTLR start synpred78
17328 def synpred78_fragment(self
, ):
17329 # C.g:317:4: ( '*' pointer )
17330 # C.g:317:4: '*' pointer
17331 self
.match(self
.input, 66, self
.FOLLOW_66_in_synpred78930
)
17334 self
.following
.append(self
.FOLLOW_pointer_in_synpred78932
)
17336 self
.following
.pop()
17341 # $ANTLR end synpred78
17345 # $ANTLR start synpred81
17346 def synpred81_fragment(self
, ):
17347 # C.g:326:32: ( 'OPTIONAL' )
17348 # C.g:326:32: 'OPTIONAL'
17349 self
.match(self
.input, 53, self
.FOLLOW_53_in_synpred81977
)
17354 # $ANTLR end synpred81
17358 # $ANTLR start synpred82
17359 def synpred82_fragment(self
, ):
17360 # C.g:326:27: ( ',' ( 'OPTIONAL' )? parameter_declaration )
17361 # C.g:326:27: ',' ( 'OPTIONAL' )? parameter_declaration
17362 self
.match(self
.input, 27, self
.FOLLOW_27_in_synpred82974
)
17365 # C.g:326:31: ( 'OPTIONAL' )?
17367 LA119_0
= self
.input.LA(1)
17369 if (LA119_0
== 53) :
17370 LA119_1
= self
.input.LA(2)
17372 if (self
.synpred81()) :
17375 # C.g:326:32: 'OPTIONAL'
17376 self
.match(self
.input, 53, self
.FOLLOW_53_in_synpred82977
)
17382 self
.following
.append(self
.FOLLOW_parameter_declaration_in_synpred82981
)
17383 self
.parameter_declaration()
17384 self
.following
.pop()
17389 # $ANTLR end synpred82
17393 # $ANTLR start synpred83
17394 def synpred83_fragment(self
, ):
17395 # C.g:330:28: ( declarator )
17396 # C.g:330:28: declarator
17397 self
.following
.append(self
.FOLLOW_declarator_in_synpred83997
)
17399 self
.following
.pop()
17404 # $ANTLR end synpred83
17408 # $ANTLR start synpred84
17409 def synpred84_fragment(self
, ):
17410 # C.g:330:39: ( abstract_declarator )
17411 # C.g:330:39: abstract_declarator
17412 self
.following
.append(self
.FOLLOW_abstract_declarator_in_synpred84999
)
17413 self
.abstract_declarator()
17414 self
.following
.pop()
17419 # $ANTLR end synpred84
17423 # $ANTLR start synpred86
17424 def synpred86_fragment(self
, ):
17425 # C.g:330:4: ( declaration_specifiers ( declarator | abstract_declarator )* ( 'OPTIONAL' )? )
17426 # C.g:330:4: declaration_specifiers ( declarator | abstract_declarator )* ( 'OPTIONAL' )?
17427 self
.following
.append(self
.FOLLOW_declaration_specifiers_in_synpred86994
)
17428 self
.declaration_specifiers()
17429 self
.following
.pop()
17432 # C.g:330:27: ( declarator | abstract_declarator )*
17433 while True: #loop120
17435 LA120
= self
.input.LA(1)
17437 LA120_3
= self
.input.LA(2)
17439 if (self
.synpred83()) :
17441 elif (self
.synpred84()) :
17445 elif LA120
== IDENTIFIER
or LA120
== 58 or LA120
== 59 or LA120
== 60:
17448 LA120
= self
.input.LA(2)
17449 if LA120
== 29 or LA120
== 30 or LA120
== 31 or LA120
== 32 or LA120
== 33 or LA120
== 34 or LA120
== 35 or LA120
== 36 or LA120
== 37 or LA120
== 38 or LA120
== 39 or LA120
== 40 or LA120
== 41 or LA120
== 42 or LA120
== 45 or LA120
== 46 or LA120
== 48 or LA120
== 49 or LA120
== 50 or LA120
== 51 or LA120
== 52 or LA120
== 53 or LA120
== 54 or LA120
== 55 or LA120
== 56 or LA120
== 57 or LA120
== 61 or LA120
== 63 or LA120
== 64:
17452 LA120_21
= self
.input.LA(3)
17454 if (self
.synpred83()) :
17456 elif (self
.synpred84()) :
17461 LA120_22
= self
.input.LA(3)
17463 if (self
.synpred83()) :
17465 elif (self
.synpred84()) :
17470 LA120_23
= self
.input.LA(3)
17472 if (self
.synpred83()) :
17474 elif (self
.synpred84()) :
17479 LA120_24
= self
.input.LA(3)
17481 if (self
.synpred83()) :
17483 elif (self
.synpred84()) :
17487 elif LA120
== IDENTIFIER
:
17488 LA120_25
= self
.input.LA(3)
17490 if (self
.synpred83()) :
17492 elif (self
.synpred84()) :
17497 LA120_26
= self
.input.LA(3)
17499 if (self
.synpred83()) :
17501 elif (self
.synpred84()) :
17510 # C.g:330:28: declarator
17511 self
.following
.append(self
.FOLLOW_declarator_in_synpred86997
)
17513 self
.following
.pop()
17519 # C.g:330:39: abstract_declarator
17520 self
.following
.append(self
.FOLLOW_abstract_declarator_in_synpred86999
)
17521 self
.abstract_declarator()
17522 self
.following
.pop()
17531 # C.g:330:61: ( 'OPTIONAL' )?
17533 LA121_0
= self
.input.LA(1)
17535 if (LA121_0
== 53) :
17538 # C.g:330:62: 'OPTIONAL'
17539 self
.match(self
.input, 53, self
.FOLLOW_53_in_synpred861004
)
17547 # $ANTLR end synpred86
17551 # $ANTLR start synpred90
17552 def synpred90_fragment(self
, ):
17553 # C.g:341:4: ( specifier_qualifier_list ( abstract_declarator )? )
17554 # C.g:341:4: specifier_qualifier_list ( abstract_declarator )?
17555 self
.following
.append(self
.FOLLOW_specifier_qualifier_list_in_synpred901046
)
17556 self
.specifier_qualifier_list()
17557 self
.following
.pop()
17560 # C.g:341:29: ( abstract_declarator )?
17562 LA122_0
= self
.input.LA(1)
17564 if (LA122_0
== 62 or LA122_0
== 64 or LA122_0
== 66) :
17567 # C.g:0:0: abstract_declarator
17568 self
.following
.append(self
.FOLLOW_abstract_declarator_in_synpred901048
)
17569 self
.abstract_declarator()
17570 self
.following
.pop()
17578 # $ANTLR end synpred90
17582 # $ANTLR start synpred91
17583 def synpred91_fragment(self
, ):
17584 # C.g:346:12: ( direct_abstract_declarator )
17585 # C.g:346:12: direct_abstract_declarator
17586 self
.following
.append(self
.FOLLOW_direct_abstract_declarator_in_synpred911067
)
17587 self
.direct_abstract_declarator()
17588 self
.following
.pop()
17593 # $ANTLR end synpred91
17597 # $ANTLR start synpred93
17598 def synpred93_fragment(self
, ):
17599 # C.g:351:6: ( '(' abstract_declarator ')' )
17600 # C.g:351:6: '(' abstract_declarator ')'
17601 self
.match(self
.input, 62, self
.FOLLOW_62_in_synpred931086
)
17604 self
.following
.append(self
.FOLLOW_abstract_declarator_in_synpred931088
)
17605 self
.abstract_declarator()
17606 self
.following
.pop()
17609 self
.match(self
.input, 63, self
.FOLLOW_63_in_synpred931090
)
17614 # $ANTLR end synpred93
17618 # $ANTLR start synpred94
17619 def synpred94_fragment(self
, ):
17620 # C.g:351:65: ( abstract_declarator_suffix )
17621 # C.g:351:65: abstract_declarator_suffix
17622 self
.following
.append(self
.FOLLOW_abstract_declarator_suffix_in_synpred941098
)
17623 self
.abstract_declarator_suffix()
17624 self
.following
.pop()
17629 # $ANTLR end synpred94
17633 # $ANTLR start synpred109
17634 def synpred109_fragment(self
, ):
17635 # C.g:386:4: ( '(' type_name ')' cast_expression )
17636 # C.g:386:4: '(' type_name ')' cast_expression
17637 self
.match(self
.input, 62, self
.FOLLOW_62_in_synpred1091282
)
17640 self
.following
.append(self
.FOLLOW_type_name_in_synpred1091284
)
17642 self
.following
.pop()
17645 self
.match(self
.input, 63, self
.FOLLOW_63_in_synpred1091286
)
17648 self
.following
.append(self
.FOLLOW_cast_expression_in_synpred1091288
)
17649 self
.cast_expression()
17650 self
.following
.pop()
17655 # $ANTLR end synpred109
17659 # $ANTLR start synpred114
17660 def synpred114_fragment(self
, ):
17661 # C.g:395:4: ( 'sizeof' unary_expression )
17662 # C.g:395:4: 'sizeof' unary_expression
17663 self
.match(self
.input, 74, self
.FOLLOW_74_in_synpred1141330
)
17666 self
.following
.append(self
.FOLLOW_unary_expression_in_synpred1141332
)
17667 self
.unary_expression()
17668 self
.following
.pop()
17673 # $ANTLR end synpred114
17677 # $ANTLR start synpred117
17678 def synpred117_fragment(self
, ):
17679 # C.g:409:13: ( '(' argument_expression_list ')' )
17680 # C.g:409:13: '(' argument_expression_list ')'
17681 self
.match(self
.input, 62, self
.FOLLOW_62_in_synpred1171420
)
17684 self
.following
.append(self
.FOLLOW_argument_expression_list_in_synpred1171424
)
17685 self
.argument_expression_list()
17686 self
.following
.pop()
17689 self
.match(self
.input, 63, self
.FOLLOW_63_in_synpred1171428
)
17694 # $ANTLR end synpred117
17698 # $ANTLR start synpred118
17699 def synpred118_fragment(self
, ):
17700 # C.g:410:13: ( '(' macro_parameter_list ')' )
17701 # C.g:410:13: '(' macro_parameter_list ')'
17702 self
.match(self
.input, 62, self
.FOLLOW_62_in_synpred1181444
)
17705 self
.following
.append(self
.FOLLOW_macro_parameter_list_in_synpred1181446
)
17706 self
.macro_parameter_list()
17707 self
.following
.pop()
17710 self
.match(self
.input, 63, self
.FOLLOW_63_in_synpred1181448
)
17715 # $ANTLR end synpred118
17719 # $ANTLR start synpred120
17720 def synpred120_fragment(self
, ):
17721 # C.g:412:13: ( '*' IDENTIFIER )
17722 # C.g:412:13: '*' IDENTIFIER
17723 self
.match(self
.input, 66, self
.FOLLOW_66_in_synpred1201482
)
17726 self
.match(self
.input, IDENTIFIER
, self
.FOLLOW_IDENTIFIER_in_synpred1201486
)
17731 # $ANTLR end synpred120
17735 # $ANTLR start synpred137
17736 def synpred137_fragment(self
, ):
17737 # C.g:443:20: ( STRING_LITERAL )
17738 # C.g:443:20: STRING_LITERAL
17739 self
.match(self
.input, STRING_LITERAL
, self
.FOLLOW_STRING_LITERAL_in_synpred1371683
)
17744 # $ANTLR end synpred137
17748 # $ANTLR start synpred138
17749 def synpred138_fragment(self
, ):
17750 # C.g:443:8: ( ( IDENTIFIER )* ( STRING_LITERAL )+ )
17751 # C.g:443:8: ( IDENTIFIER )* ( STRING_LITERAL )+
17752 # C.g:443:8: ( IDENTIFIER )*
17753 while True: #loop125
17755 LA125_0
= self
.input.LA(1)
17757 if (LA125_0
== IDENTIFIER
) :
17762 # C.g:0:0: IDENTIFIER
17763 self
.match(self
.input, IDENTIFIER
, self
.FOLLOW_IDENTIFIER_in_synpred1381680
)
17772 # C.g:443:20: ( STRING_LITERAL )+
17774 while True: #loop126
17776 LA126_0
= self
.input.LA(1)
17778 if (LA126_0
== STRING_LITERAL
) :
17783 # C.g:0:0: STRING_LITERAL
17784 self
.match(self
.input, STRING_LITERAL
, self
.FOLLOW_STRING_LITERAL_in_synpred1381683
)
17793 if self
.backtracking
> 0:
17797 eee
= EarlyExitException(126, self
.input)
17805 # $ANTLR end synpred138
17809 # $ANTLR start synpred142
17810 def synpred142_fragment(self
, ):
17811 # C.g:458:4: ( lvalue assignment_operator assignment_expression )
17812 # C.g:458:4: lvalue assignment_operator assignment_expression
17813 self
.following
.append(self
.FOLLOW_lvalue_in_synpred1421744
)
17815 self
.following
.pop()
17818 self
.following
.append(self
.FOLLOW_assignment_operator_in_synpred1421746
)
17819 self
.assignment_operator()
17820 self
.following
.pop()
17823 self
.following
.append(self
.FOLLOW_assignment_expression_in_synpred1421748
)
17824 self
.assignment_expression()
17825 self
.following
.pop()
17830 # $ANTLR end synpred142
17834 # $ANTLR start synpred169
17835 def synpred169_fragment(self
, ):
17836 # C.g:520:4: ( expression_statement )
17837 # C.g:520:4: expression_statement
17838 self
.following
.append(self
.FOLLOW_expression_statement_in_synpred1692035
)
17839 self
.expression_statement()
17840 self
.following
.pop()
17845 # $ANTLR end synpred169
17849 # $ANTLR start synpred173
17850 def synpred173_fragment(self
, ):
17851 # C.g:524:4: ( macro_statement )
17852 # C.g:524:4: macro_statement
17853 self
.following
.append(self
.FOLLOW_macro_statement_in_synpred1732055
)
17854 self
.macro_statement()
17855 self
.following
.pop()
17860 # $ANTLR end synpred173
17864 # $ANTLR start synpred174
17865 def synpred174_fragment(self
, ):
17866 # C.g:525:4: ( asm2_statement )
17867 # C.g:525:4: asm2_statement
17868 self
.following
.append(self
.FOLLOW_asm2_statement_in_synpred1742060
)
17869 self
.asm2_statement()
17870 self
.following
.pop()
17875 # $ANTLR end synpred174
17879 # $ANTLR start synpred181
17880 def synpred181_fragment(self
, ):
17881 # C.g:544:19: ( declaration )
17882 # C.g:544:19: declaration
17883 self
.following
.append(self
.FOLLOW_declaration_in_synpred1812166
)
17885 self
.following
.pop()
17890 # $ANTLR end synpred181
17894 # $ANTLR start synpred182
17895 def synpred182_fragment(self
, ):
17896 # C.g:544:33: ( statement_list )
17897 # C.g:544:33: statement_list
17898 self
.following
.append(self
.FOLLOW_statement_list_in_synpred1822170
)
17899 self
.statement_list()
17900 self
.following
.pop()
17905 # $ANTLR end synpred182
17909 # $ANTLR start synpred186
17910 def synpred186_fragment(self
, ):
17911 # C.g:554:8: ( declaration )
17912 # C.g:554:8: declaration
17913 self
.following
.append(self
.FOLLOW_declaration_in_synpred1862225
)
17915 self
.following
.pop()
17920 # $ANTLR end synpred186
17924 # $ANTLR start synpred188
17925 def synpred188_fragment(self
, ):
17926 # C.g:558:4: ( statement )
17927 # C.g:558:4: statement
17928 self
.following
.append(self
.FOLLOW_statement_in_synpred1882242
)
17930 self
.following
.pop()
17935 # $ANTLR end synpred188
17939 def synpred69(self
):
17940 self
.backtracking
+= 1
17941 start
= self
.input.mark()
17942 self
.synpred69_fragment()
17943 success
= not self
.failed
17944 self
.input.rewind(start
)
17945 self
.backtracking
-= 1
17946 self
.failed
= False
17949 def synpred81(self
):
17950 self
.backtracking
+= 1
17951 start
= self
.input.mark()
17952 self
.synpred81_fragment()
17953 success
= not self
.failed
17954 self
.input.rewind(start
)
17955 self
.backtracking
-= 1
17956 self
.failed
= False
17959 def synpred82(self
):
17960 self
.backtracking
+= 1
17961 start
= self
.input.mark()
17962 self
.synpred82_fragment()
17963 success
= not self
.failed
17964 self
.input.rewind(start
)
17965 self
.backtracking
-= 1
17966 self
.failed
= False
17969 def synpred66(self
):
17970 self
.backtracking
+= 1
17971 start
= self
.input.mark()
17972 self
.synpred66_fragment()
17973 success
= not self
.failed
17974 self
.input.rewind(start
)
17975 self
.backtracking
-= 1
17976 self
.failed
= False
17979 def synpred83(self
):
17980 self
.backtracking
+= 1
17981 start
= self
.input.mark()
17982 self
.synpred83_fragment()
17983 success
= not self
.failed
17984 self
.input.rewind(start
)
17985 self
.backtracking
-= 1
17986 self
.failed
= False
17989 def synpred84(self
):
17990 self
.backtracking
+= 1
17991 start
= self
.input.mark()
17992 self
.synpred84_fragment()
17993 success
= not self
.failed
17994 self
.input.rewind(start
)
17995 self
.backtracking
-= 1
17996 self
.failed
= False
17999 def synpred67(self
):
18000 self
.backtracking
+= 1
18001 start
= self
.input.mark()
18002 self
.synpred67_fragment()
18003 success
= not self
.failed
18004 self
.input.rewind(start
)
18005 self
.backtracking
-= 1
18006 self
.failed
= False
18009 def synpred86(self
):
18010 self
.backtracking
+= 1
18011 start
= self
.input.mark()
18012 self
.synpred86_fragment()
18013 success
= not self
.failed
18014 self
.input.rewind(start
)
18015 self
.backtracking
-= 1
18016 self
.failed
= False
18019 def synpred120(self
):
18020 self
.backtracking
+= 1
18021 start
= self
.input.mark()
18022 self
.synpred120_fragment()
18023 success
= not self
.failed
18024 self
.input.rewind(start
)
18025 self
.backtracking
-= 1
18026 self
.failed
= False
18029 def synpred40(self
):
18030 self
.backtracking
+= 1
18031 start
= self
.input.mark()
18032 self
.synpred40_fragment()
18033 success
= not self
.failed
18034 self
.input.rewind(start
)
18035 self
.backtracking
-= 1
18036 self
.failed
= False
18039 def synpred142(self
):
18040 self
.backtracking
+= 1
18041 start
= self
.input.mark()
18042 self
.synpred142_fragment()
18043 success
= not self
.failed
18044 self
.input.rewind(start
)
18045 self
.backtracking
-= 1
18046 self
.failed
= False
18049 def synpred182(self
):
18050 self
.backtracking
+= 1
18051 start
= self
.input.mark()
18052 self
.synpred182_fragment()
18053 success
= not self
.failed
18054 self
.input.rewind(start
)
18055 self
.backtracking
-= 1
18056 self
.failed
= False
18059 def synpred109(self
):
18060 self
.backtracking
+= 1
18061 start
= self
.input.mark()
18062 self
.synpred109_fragment()
18063 success
= not self
.failed
18064 self
.input.rewind(start
)
18065 self
.backtracking
-= 1
18066 self
.failed
= False
18069 def synpred181(self
):
18070 self
.backtracking
+= 1
18071 start
= self
.input.mark()
18072 self
.synpred181_fragment()
18073 success
= not self
.failed
18074 self
.input.rewind(start
)
18075 self
.backtracking
-= 1
18076 self
.failed
= False
18079 def synpred186(self
):
18080 self
.backtracking
+= 1
18081 start
= self
.input.mark()
18082 self
.synpred186_fragment()
18083 success
= not self
.failed
18084 self
.input.rewind(start
)
18085 self
.backtracking
-= 1
18086 self
.failed
= False
18089 def synpred188(self
):
18090 self
.backtracking
+= 1
18091 start
= self
.input.mark()
18092 self
.synpred188_fragment()
18093 success
= not self
.failed
18094 self
.input.rewind(start
)
18095 self
.backtracking
-= 1
18096 self
.failed
= False
18099 def synpred169(self
):
18100 self
.backtracking
+= 1
18101 start
= self
.input.mark()
18102 self
.synpred169_fragment()
18103 success
= not self
.failed
18104 self
.input.rewind(start
)
18105 self
.backtracking
-= 1
18106 self
.failed
= False
18109 def synpred117(self
):
18110 self
.backtracking
+= 1
18111 start
= self
.input.mark()
18112 self
.synpred117_fragment()
18113 success
= not self
.failed
18114 self
.input.rewind(start
)
18115 self
.backtracking
-= 1
18116 self
.failed
= False
18119 def synpred70(self
):
18120 self
.backtracking
+= 1
18121 start
= self
.input.mark()
18122 self
.synpred70_fragment()
18123 success
= not self
.failed
18124 self
.input.rewind(start
)
18125 self
.backtracking
-= 1
18126 self
.failed
= False
18129 def synpred118(self
):
18130 self
.backtracking
+= 1
18131 start
= self
.input.mark()
18132 self
.synpred118_fragment()
18133 success
= not self
.failed
18134 self
.input.rewind(start
)
18135 self
.backtracking
-= 1
18136 self
.failed
= False
18139 def synpred34(self
):
18140 self
.backtracking
+= 1
18141 start
= self
.input.mark()
18142 self
.synpred34_fragment()
18143 success
= not self
.failed
18144 self
.input.rewind(start
)
18145 self
.backtracking
-= 1
18146 self
.failed
= False
18149 def synpred33(self
):
18150 self
.backtracking
+= 1
18151 start
= self
.input.mark()
18152 self
.synpred33_fragment()
18153 success
= not self
.failed
18154 self
.input.rewind(start
)
18155 self
.backtracking
-= 1
18156 self
.failed
= False
18159 def synpred94(self
):
18160 self
.backtracking
+= 1
18161 start
= self
.input.mark()
18162 self
.synpred94_fragment()
18163 success
= not self
.failed
18164 self
.input.rewind(start
)
18165 self
.backtracking
-= 1
18166 self
.failed
= False
18169 def synpred39(self
):
18170 self
.backtracking
+= 1
18171 start
= self
.input.mark()
18172 self
.synpred39_fragment()
18173 success
= not self
.failed
18174 self
.input.rewind(start
)
18175 self
.backtracking
-= 1
18176 self
.failed
= False
18179 def synpred74(self
):
18180 self
.backtracking
+= 1
18181 start
= self
.input.mark()
18182 self
.synpred74_fragment()
18183 success
= not self
.failed
18184 self
.input.rewind(start
)
18185 self
.backtracking
-= 1
18186 self
.failed
= False
18189 def synpred114(self
):
18190 self
.backtracking
+= 1
18191 start
= self
.input.mark()
18192 self
.synpred114_fragment()
18193 success
= not self
.failed
18194 self
.input.rewind(start
)
18195 self
.backtracking
-= 1
18196 self
.failed
= False
18199 def synpred93(self
):
18200 self
.backtracking
+= 1
18201 start
= self
.input.mark()
18202 self
.synpred93_fragment()
18203 success
= not self
.failed
18204 self
.input.rewind(start
)
18205 self
.backtracking
-= 1
18206 self
.failed
= False
18209 def synpred75(self
):
18210 self
.backtracking
+= 1
18211 start
= self
.input.mark()
18212 self
.synpred75_fragment()
18213 success
= not self
.failed
18214 self
.input.rewind(start
)
18215 self
.backtracking
-= 1
18216 self
.failed
= False
18219 def synpred137(self
):
18220 self
.backtracking
+= 1
18221 start
= self
.input.mark()
18222 self
.synpred137_fragment()
18223 success
= not self
.failed
18224 self
.input.rewind(start
)
18225 self
.backtracking
-= 1
18226 self
.failed
= False
18229 def synpred90(self
):
18230 self
.backtracking
+= 1
18231 start
= self
.input.mark()
18232 self
.synpred90_fragment()
18233 success
= not self
.failed
18234 self
.input.rewind(start
)
18235 self
.backtracking
-= 1
18236 self
.failed
= False
18239 def synpred138(self
):
18240 self
.backtracking
+= 1
18241 start
= self
.input.mark()
18242 self
.synpred138_fragment()
18243 success
= not self
.failed
18244 self
.input.rewind(start
)
18245 self
.backtracking
-= 1
18246 self
.failed
= False
18249 def synpred91(self
):
18250 self
.backtracking
+= 1
18251 start
= self
.input.mark()
18252 self
.synpred91_fragment()
18253 success
= not self
.failed
18254 self
.input.rewind(start
)
18255 self
.backtracking
-= 1
18256 self
.failed
= False
18259 def synpred73(self
):
18260 self
.backtracking
+= 1
18261 start
= self
.input.mark()
18262 self
.synpred73_fragment()
18263 success
= not self
.failed
18264 self
.input.rewind(start
)
18265 self
.backtracking
-= 1
18266 self
.failed
= False
18269 def synpred5(self
):
18270 self
.backtracking
+= 1
18271 start
= self
.input.mark()
18272 self
.synpred5_fragment()
18273 success
= not self
.failed
18274 self
.input.rewind(start
)
18275 self
.backtracking
-= 1
18276 self
.failed
= False
18279 def synpred78(self
):
18280 self
.backtracking
+= 1
18281 start
= self
.input.mark()
18282 self
.synpred78_fragment()
18283 success
= not self
.failed
18284 self
.input.rewind(start
)
18285 self
.backtracking
-= 1
18286 self
.failed
= False
18289 def synpred7(self
):
18290 self
.backtracking
+= 1
18291 start
= self
.input.mark()
18292 self
.synpred7_fragment()
18293 success
= not self
.failed
18294 self
.input.rewind(start
)
18295 self
.backtracking
-= 1
18296 self
.failed
= False
18299 def synpred76(self
):
18300 self
.backtracking
+= 1
18301 start
= self
.input.mark()
18302 self
.synpred76_fragment()
18303 success
= not self
.failed
18304 self
.input.rewind(start
)
18305 self
.backtracking
-= 1
18306 self
.failed
= False
18309 def synpred77(self
):
18310 self
.backtracking
+= 1
18311 start
= self
.input.mark()
18312 self
.synpred77_fragment()
18313 success
= not self
.failed
18314 self
.input.rewind(start
)
18315 self
.backtracking
-= 1
18316 self
.failed
= False
18319 def synpred2(self
):
18320 self
.backtracking
+= 1
18321 start
= self
.input.mark()
18322 self
.synpred2_fragment()
18323 success
= not self
.failed
18324 self
.input.rewind(start
)
18325 self
.backtracking
-= 1
18326 self
.failed
= False
18329 def synpred4(self
):
18330 self
.backtracking
+= 1
18331 start
= self
.input.mark()
18332 self
.synpred4_fragment()
18333 success
= not self
.failed
18334 self
.input.rewind(start
)
18335 self
.backtracking
-= 1
18336 self
.failed
= False
18339 def synpred174(self
):
18340 self
.backtracking
+= 1
18341 start
= self
.input.mark()
18342 self
.synpred174_fragment()
18343 success
= not self
.failed
18344 self
.input.rewind(start
)
18345 self
.backtracking
-= 1
18346 self
.failed
= False
18349 def synpred173(self
):
18350 self
.backtracking
+= 1
18351 start
= self
.input.mark()
18352 self
.synpred173_fragment()
18353 success
= not self
.failed
18354 self
.input.rewind(start
)
18355 self
.backtracking
-= 1
18356 self
.failed
= False
18359 def synpred14(self
):
18360 self
.backtracking
+= 1
18361 start
= self
.input.mark()
18362 self
.synpred14_fragment()
18363 success
= not self
.failed
18364 self
.input.rewind(start
)
18365 self
.backtracking
-= 1
18366 self
.failed
= False
18369 def synpred15(self
):
18370 self
.backtracking
+= 1
18371 start
= self
.input.mark()
18372 self
.synpred15_fragment()
18373 success
= not self
.failed
18374 self
.input.rewind(start
)
18375 self
.backtracking
-= 1
18376 self
.failed
= False
18379 def synpred10(self
):
18380 self
.backtracking
+= 1
18381 start
= self
.input.mark()
18382 self
.synpred10_fragment()
18383 success
= not self
.failed
18384 self
.input.rewind(start
)
18385 self
.backtracking
-= 1
18386 self
.failed
= False
18393 FOLLOW_external_declaration_in_translation_unit74
= frozenset([1, 4, 26, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 45, 46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 66])
18394 FOLLOW_function_definition_in_external_declaration113
= frozenset([1])
18395 FOLLOW_declaration_in_external_declaration118
= frozenset([1])
18396 FOLLOW_macro_statement_in_external_declaration123
= frozenset([1, 25])
18397 FOLLOW_25_in_external_declaration126
= frozenset([1])
18398 FOLLOW_declaration_specifiers_in_function_definition157
= frozenset([4, 58, 59, 60, 62, 66])
18399 FOLLOW_declarator_in_function_definition160
= frozenset([4, 26, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 45, 46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61])
18400 FOLLOW_declaration_in_function_definition166
= frozenset([4, 26, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 45, 46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61])
18401 FOLLOW_compound_statement_in_function_definition171
= frozenset([1])
18402 FOLLOW_compound_statement_in_function_definition180
= frozenset([1])
18403 FOLLOW_26_in_declaration203
= frozenset([4, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 45, 46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 66])
18404 FOLLOW_declaration_specifiers_in_declaration207
= frozenset([4, 58, 59, 60, 62, 66])
18405 FOLLOW_init_declarator_list_in_declaration216
= frozenset([25])
18406 FOLLOW_25_in_declaration220
= frozenset([1])
18407 FOLLOW_declaration_specifiers_in_declaration234
= frozenset([4, 25, 58, 59, 60, 62, 66])
18408 FOLLOW_init_declarator_list_in_declaration238
= frozenset([25])
18409 FOLLOW_25_in_declaration243
= frozenset([1])
18410 FOLLOW_storage_class_specifier_in_declaration_specifiers264
= frozenset([1, 4, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 45, 46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61])
18411 FOLLOW_type_specifier_in_declaration_specifiers272
= frozenset([1, 4, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 45, 46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61])
18412 FOLLOW_type_qualifier_in_declaration_specifiers286
= frozenset([1, 4, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 45, 46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61])
18413 FOLLOW_init_declarator_in_init_declarator_list308
= frozenset([1, 27])
18414 FOLLOW_27_in_init_declarator_list311
= frozenset([4, 58, 59, 60, 62, 66])
18415 FOLLOW_init_declarator_in_init_declarator_list313
= frozenset([1, 27])
18416 FOLLOW_declarator_in_init_declarator326
= frozenset([1, 28])
18417 FOLLOW_28_in_init_declarator329
= frozenset([4, 5, 6, 7, 8, 9, 10, 43, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18418 FOLLOW_initializer_in_init_declarator331
= frozenset([1])
18419 FOLLOW_set_in_storage_class_specifier0
= frozenset([1])
18420 FOLLOW_34_in_type_specifier376
= frozenset([1])
18421 FOLLOW_35_in_type_specifier381
= frozenset([1])
18422 FOLLOW_36_in_type_specifier386
= frozenset([1])
18423 FOLLOW_37_in_type_specifier391
= frozenset([1])
18424 FOLLOW_38_in_type_specifier396
= frozenset([1])
18425 FOLLOW_39_in_type_specifier401
= frozenset([1])
18426 FOLLOW_40_in_type_specifier406
= frozenset([1])
18427 FOLLOW_41_in_type_specifier411
= frozenset([1])
18428 FOLLOW_42_in_type_specifier416
= frozenset([1])
18429 FOLLOW_struct_or_union_specifier_in_type_specifier423
= frozenset([1])
18430 FOLLOW_enum_specifier_in_type_specifier433
= frozenset([1])
18431 FOLLOW_type_id_in_type_specifier451
= frozenset([1])
18432 FOLLOW_IDENTIFIER_in_type_id467
= frozenset([1])
18433 FOLLOW_struct_or_union_in_struct_or_union_specifier494
= frozenset([4, 43])
18434 FOLLOW_IDENTIFIER_in_struct_or_union_specifier496
= frozenset([43])
18435 FOLLOW_43_in_struct_or_union_specifier499
= frozenset([4, 34, 35, 36, 37, 38, 39, 40, 41, 42, 45, 46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61])
18436 FOLLOW_struct_declaration_list_in_struct_or_union_specifier501
= frozenset([44])
18437 FOLLOW_44_in_struct_or_union_specifier503
= frozenset([1])
18438 FOLLOW_struct_or_union_in_struct_or_union_specifier508
= frozenset([4])
18439 FOLLOW_IDENTIFIER_in_struct_or_union_specifier510
= frozenset([1])
18440 FOLLOW_set_in_struct_or_union0
= frozenset([1])
18441 FOLLOW_struct_declaration_in_struct_declaration_list537
= frozenset([1, 4, 34, 35, 36, 37, 38, 39, 40, 41, 42, 45, 46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61])
18442 FOLLOW_specifier_qualifier_list_in_struct_declaration549
= frozenset([4, 47, 58, 59, 60, 62, 66])
18443 FOLLOW_struct_declarator_list_in_struct_declaration551
= frozenset([25])
18444 FOLLOW_25_in_struct_declaration553
= frozenset([1])
18445 FOLLOW_type_qualifier_in_specifier_qualifier_list566
= frozenset([1, 4, 34, 35, 36, 37, 38, 39, 40, 41, 42, 45, 46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61])
18446 FOLLOW_type_specifier_in_specifier_qualifier_list570
= frozenset([1, 4, 34, 35, 36, 37, 38, 39, 40, 41, 42, 45, 46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61])
18447 FOLLOW_struct_declarator_in_struct_declarator_list584
= frozenset([1, 27])
18448 FOLLOW_27_in_struct_declarator_list587
= frozenset([4, 47, 58, 59, 60, 62, 66])
18449 FOLLOW_struct_declarator_in_struct_declarator_list589
= frozenset([1, 27])
18450 FOLLOW_declarator_in_struct_declarator602
= frozenset([1, 47])
18451 FOLLOW_47_in_struct_declarator605
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18452 FOLLOW_constant_expression_in_struct_declarator607
= frozenset([1])
18453 FOLLOW_47_in_struct_declarator614
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18454 FOLLOW_constant_expression_in_struct_declarator616
= frozenset([1])
18455 FOLLOW_48_in_enum_specifier634
= frozenset([43])
18456 FOLLOW_43_in_enum_specifier636
= frozenset([4])
18457 FOLLOW_enumerator_list_in_enum_specifier638
= frozenset([27, 44])
18458 FOLLOW_27_in_enum_specifier640
= frozenset([44])
18459 FOLLOW_44_in_enum_specifier643
= frozenset([1])
18460 FOLLOW_48_in_enum_specifier648
= frozenset([4])
18461 FOLLOW_IDENTIFIER_in_enum_specifier650
= frozenset([43])
18462 FOLLOW_43_in_enum_specifier652
= frozenset([4])
18463 FOLLOW_enumerator_list_in_enum_specifier654
= frozenset([27, 44])
18464 FOLLOW_27_in_enum_specifier656
= frozenset([44])
18465 FOLLOW_44_in_enum_specifier659
= frozenset([1])
18466 FOLLOW_48_in_enum_specifier664
= frozenset([4])
18467 FOLLOW_IDENTIFIER_in_enum_specifier666
= frozenset([1])
18468 FOLLOW_enumerator_in_enumerator_list677
= frozenset([1, 27])
18469 FOLLOW_27_in_enumerator_list680
= frozenset([4])
18470 FOLLOW_enumerator_in_enumerator_list682
= frozenset([1, 27])
18471 FOLLOW_IDENTIFIER_in_enumerator695
= frozenset([1, 28])
18472 FOLLOW_28_in_enumerator698
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18473 FOLLOW_constant_expression_in_enumerator700
= frozenset([1])
18474 FOLLOW_set_in_type_qualifier0
= frozenset([1])
18475 FOLLOW_pointer_in_declarator784
= frozenset([4, 58, 59, 60, 62])
18476 FOLLOW_58_in_declarator788
= frozenset([4, 59, 60, 62])
18477 FOLLOW_59_in_declarator793
= frozenset([4, 60, 62])
18478 FOLLOW_60_in_declarator798
= frozenset([4, 62])
18479 FOLLOW_direct_declarator_in_declarator802
= frozenset([1])
18480 FOLLOW_pointer_in_declarator808
= frozenset([1])
18481 FOLLOW_IDENTIFIER_in_direct_declarator819
= frozenset([1, 62, 64])
18482 FOLLOW_declarator_suffix_in_direct_declarator821
= frozenset([1, 62, 64])
18483 FOLLOW_62_in_direct_declarator827
= frozenset([4, 58, 59, 60, 62, 66])
18484 FOLLOW_58_in_direct_declarator830
= frozenset([4, 58, 59, 60, 62, 66])
18485 FOLLOW_declarator_in_direct_declarator834
= frozenset([63])
18486 FOLLOW_63_in_direct_declarator836
= frozenset([62, 64])
18487 FOLLOW_declarator_suffix_in_direct_declarator838
= frozenset([1, 62, 64])
18488 FOLLOW_64_in_declarator_suffix852
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18489 FOLLOW_constant_expression_in_declarator_suffix854
= frozenset([65])
18490 FOLLOW_65_in_declarator_suffix856
= frozenset([1])
18491 FOLLOW_64_in_declarator_suffix866
= frozenset([65])
18492 FOLLOW_65_in_declarator_suffix868
= frozenset([1])
18493 FOLLOW_62_in_declarator_suffix878
= frozenset([4, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 45, 46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 66])
18494 FOLLOW_parameter_type_list_in_declarator_suffix880
= frozenset([63])
18495 FOLLOW_63_in_declarator_suffix882
= frozenset([1])
18496 FOLLOW_62_in_declarator_suffix892
= frozenset([4])
18497 FOLLOW_identifier_list_in_declarator_suffix894
= frozenset([63])
18498 FOLLOW_63_in_declarator_suffix896
= frozenset([1])
18499 FOLLOW_62_in_declarator_suffix906
= frozenset([63])
18500 FOLLOW_63_in_declarator_suffix908
= frozenset([1])
18501 FOLLOW_66_in_pointer919
= frozenset([49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61])
18502 FOLLOW_type_qualifier_in_pointer921
= frozenset([1, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 66])
18503 FOLLOW_pointer_in_pointer924
= frozenset([1])
18504 FOLLOW_66_in_pointer930
= frozenset([66])
18505 FOLLOW_pointer_in_pointer932
= frozenset([1])
18506 FOLLOW_66_in_pointer937
= frozenset([1])
18507 FOLLOW_parameter_list_in_parameter_type_list948
= frozenset([1, 27])
18508 FOLLOW_27_in_parameter_type_list951
= frozenset([53, 67])
18509 FOLLOW_53_in_parameter_type_list954
= frozenset([67])
18510 FOLLOW_67_in_parameter_type_list958
= frozenset([1])
18511 FOLLOW_parameter_declaration_in_parameter_list971
= frozenset([1, 27])
18512 FOLLOW_27_in_parameter_list974
= frozenset([4, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 45, 46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 66])
18513 FOLLOW_53_in_parameter_list977
= frozenset([4, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 45, 46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 66])
18514 FOLLOW_parameter_declaration_in_parameter_list981
= frozenset([1, 27])
18515 FOLLOW_declaration_specifiers_in_parameter_declaration994
= frozenset([1, 4, 53, 58, 59, 60, 62, 64, 66])
18516 FOLLOW_declarator_in_parameter_declaration997
= frozenset([1, 4, 53, 58, 59, 60, 62, 64, 66])
18517 FOLLOW_abstract_declarator_in_parameter_declaration999
= frozenset([1, 4, 53, 58, 59, 60, 62, 64, 66])
18518 FOLLOW_53_in_parameter_declaration1004
= frozenset([1])
18519 FOLLOW_pointer_in_parameter_declaration1013
= frozenset([4, 66])
18520 FOLLOW_IDENTIFIER_in_parameter_declaration1016
= frozenset([1])
18521 FOLLOW_IDENTIFIER_in_identifier_list1027
= frozenset([1, 27])
18522 FOLLOW_27_in_identifier_list1031
= frozenset([4])
18523 FOLLOW_IDENTIFIER_in_identifier_list1033
= frozenset([1, 27])
18524 FOLLOW_specifier_qualifier_list_in_type_name1046
= frozenset([1, 62, 64, 66])
18525 FOLLOW_abstract_declarator_in_type_name1048
= frozenset([1])
18526 FOLLOW_type_id_in_type_name1054
= frozenset([1])
18527 FOLLOW_pointer_in_abstract_declarator1065
= frozenset([1, 62, 64])
18528 FOLLOW_direct_abstract_declarator_in_abstract_declarator1067
= frozenset([1])
18529 FOLLOW_direct_abstract_declarator_in_abstract_declarator1073
= frozenset([1])
18530 FOLLOW_62_in_direct_abstract_declarator1086
= frozenset([62, 64, 66])
18531 FOLLOW_abstract_declarator_in_direct_abstract_declarator1088
= frozenset([63])
18532 FOLLOW_63_in_direct_abstract_declarator1090
= frozenset([1, 62, 64])
18533 FOLLOW_abstract_declarator_suffix_in_direct_abstract_declarator1094
= frozenset([1, 62, 64])
18534 FOLLOW_abstract_declarator_suffix_in_direct_abstract_declarator1098
= frozenset([1, 62, 64])
18535 FOLLOW_64_in_abstract_declarator_suffix1110
= frozenset([65])
18536 FOLLOW_65_in_abstract_declarator_suffix1112
= frozenset([1])
18537 FOLLOW_64_in_abstract_declarator_suffix1117
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18538 FOLLOW_constant_expression_in_abstract_declarator_suffix1119
= frozenset([65])
18539 FOLLOW_65_in_abstract_declarator_suffix1121
= frozenset([1])
18540 FOLLOW_62_in_abstract_declarator_suffix1126
= frozenset([63])
18541 FOLLOW_63_in_abstract_declarator_suffix1128
= frozenset([1])
18542 FOLLOW_62_in_abstract_declarator_suffix1133
= frozenset([4, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 45, 46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 66])
18543 FOLLOW_parameter_type_list_in_abstract_declarator_suffix1135
= frozenset([63])
18544 FOLLOW_63_in_abstract_declarator_suffix1137
= frozenset([1])
18545 FOLLOW_assignment_expression_in_initializer1150
= frozenset([1])
18546 FOLLOW_43_in_initializer1155
= frozenset([4, 5, 6, 7, 8, 9, 10, 43, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18547 FOLLOW_initializer_list_in_initializer1157
= frozenset([27, 44])
18548 FOLLOW_27_in_initializer1159
= frozenset([44])
18549 FOLLOW_44_in_initializer1162
= frozenset([1])
18550 FOLLOW_initializer_in_initializer_list1173
= frozenset([1, 27])
18551 FOLLOW_27_in_initializer_list1176
= frozenset([4, 5, 6, 7, 8, 9, 10, 43, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18552 FOLLOW_initializer_in_initializer_list1178
= frozenset([1, 27])
18553 FOLLOW_assignment_expression_in_argument_expression_list1196
= frozenset([1, 27, 53])
18554 FOLLOW_53_in_argument_expression_list1199
= frozenset([1, 27])
18555 FOLLOW_27_in_argument_expression_list1204
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18556 FOLLOW_assignment_expression_in_argument_expression_list1206
= frozenset([1, 27, 53])
18557 FOLLOW_53_in_argument_expression_list1209
= frozenset([1, 27])
18558 FOLLOW_multiplicative_expression_in_additive_expression1225
= frozenset([1, 68, 69])
18559 FOLLOW_68_in_additive_expression1229
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18560 FOLLOW_multiplicative_expression_in_additive_expression1231
= frozenset([1, 68, 69])
18561 FOLLOW_69_in_additive_expression1235
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18562 FOLLOW_multiplicative_expression_in_additive_expression1237
= frozenset([1, 68, 69])
18563 FOLLOW_cast_expression_in_multiplicative_expression1251
= frozenset([1, 66, 70, 71])
18564 FOLLOW_66_in_multiplicative_expression1255
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18565 FOLLOW_cast_expression_in_multiplicative_expression1257
= frozenset([1, 66, 70, 71])
18566 FOLLOW_70_in_multiplicative_expression1261
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18567 FOLLOW_cast_expression_in_multiplicative_expression1263
= frozenset([1, 66, 70, 71])
18568 FOLLOW_71_in_multiplicative_expression1267
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18569 FOLLOW_cast_expression_in_multiplicative_expression1269
= frozenset([1, 66, 70, 71])
18570 FOLLOW_62_in_cast_expression1282
= frozenset([4, 34, 35, 36, 37, 38, 39, 40, 41, 42, 45, 46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61])
18571 FOLLOW_type_name_in_cast_expression1284
= frozenset([63])
18572 FOLLOW_63_in_cast_expression1286
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18573 FOLLOW_cast_expression_in_cast_expression1288
= frozenset([1])
18574 FOLLOW_unary_expression_in_cast_expression1293
= frozenset([1])
18575 FOLLOW_postfix_expression_in_unary_expression1304
= frozenset([1])
18576 FOLLOW_72_in_unary_expression1309
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18577 FOLLOW_unary_expression_in_unary_expression1311
= frozenset([1])
18578 FOLLOW_73_in_unary_expression1316
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18579 FOLLOW_unary_expression_in_unary_expression1318
= frozenset([1])
18580 FOLLOW_unary_operator_in_unary_expression1323
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18581 FOLLOW_cast_expression_in_unary_expression1325
= frozenset([1])
18582 FOLLOW_74_in_unary_expression1330
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18583 FOLLOW_unary_expression_in_unary_expression1332
= frozenset([1])
18584 FOLLOW_74_in_unary_expression1337
= frozenset([62])
18585 FOLLOW_62_in_unary_expression1339
= frozenset([4, 34, 35, 36, 37, 38, 39, 40, 41, 42, 45, 46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61])
18586 FOLLOW_type_name_in_unary_expression1341
= frozenset([63])
18587 FOLLOW_63_in_unary_expression1343
= frozenset([1])
18588 FOLLOW_primary_expression_in_postfix_expression1367
= frozenset([1, 62, 64, 66, 72, 73, 75, 76])
18589 FOLLOW_64_in_postfix_expression1383
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18590 FOLLOW_expression_in_postfix_expression1385
= frozenset([65])
18591 FOLLOW_65_in_postfix_expression1387
= frozenset([1, 62, 64, 66, 72, 73, 75, 76])
18592 FOLLOW_62_in_postfix_expression1401
= frozenset([63])
18593 FOLLOW_63_in_postfix_expression1405
= frozenset([1, 62, 64, 66, 72, 73, 75, 76])
18594 FOLLOW_62_in_postfix_expression1420
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18595 FOLLOW_argument_expression_list_in_postfix_expression1424
= frozenset([63])
18596 FOLLOW_63_in_postfix_expression1428
= frozenset([1, 62, 64, 66, 72, 73, 75, 76])
18597 FOLLOW_62_in_postfix_expression1444
= frozenset([4, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 45, 46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 66])
18598 FOLLOW_macro_parameter_list_in_postfix_expression1446
= frozenset([63])
18599 FOLLOW_63_in_postfix_expression1448
= frozenset([1, 62, 64, 66, 72, 73, 75, 76])
18600 FOLLOW_75_in_postfix_expression1462
= frozenset([4])
18601 FOLLOW_IDENTIFIER_in_postfix_expression1466
= frozenset([1, 62, 64, 66, 72, 73, 75, 76])
18602 FOLLOW_66_in_postfix_expression1482
= frozenset([4])
18603 FOLLOW_IDENTIFIER_in_postfix_expression1486
= frozenset([1, 62, 64, 66, 72, 73, 75, 76])
18604 FOLLOW_76_in_postfix_expression1502
= frozenset([4])
18605 FOLLOW_IDENTIFIER_in_postfix_expression1506
= frozenset([1, 62, 64, 66, 72, 73, 75, 76])
18606 FOLLOW_72_in_postfix_expression1522
= frozenset([1, 62, 64, 66, 72, 73, 75, 76])
18607 FOLLOW_73_in_postfix_expression1536
= frozenset([1, 62, 64, 66, 72, 73, 75, 76])
18608 FOLLOW_parameter_declaration_in_macro_parameter_list1559
= frozenset([1, 27])
18609 FOLLOW_27_in_macro_parameter_list1562
= frozenset([4, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 45, 46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 66])
18610 FOLLOW_parameter_declaration_in_macro_parameter_list1564
= frozenset([1, 27])
18611 FOLLOW_set_in_unary_operator0
= frozenset([1])
18612 FOLLOW_IDENTIFIER_in_primary_expression1613
= frozenset([1])
18613 FOLLOW_constant_in_primary_expression1618
= frozenset([1])
18614 FOLLOW_62_in_primary_expression1623
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18615 FOLLOW_expression_in_primary_expression1625
= frozenset([63])
18616 FOLLOW_63_in_primary_expression1627
= frozenset([1])
18617 FOLLOW_HEX_LITERAL_in_constant1643
= frozenset([1])
18618 FOLLOW_OCTAL_LITERAL_in_constant1653
= frozenset([1])
18619 FOLLOW_DECIMAL_LITERAL_in_constant1663
= frozenset([1])
18620 FOLLOW_CHARACTER_LITERAL_in_constant1671
= frozenset([1])
18621 FOLLOW_IDENTIFIER_in_constant1680
= frozenset([4, 9])
18622 FOLLOW_STRING_LITERAL_in_constant1683
= frozenset([1, 4, 9])
18623 FOLLOW_IDENTIFIER_in_constant1688
= frozenset([1, 4])
18624 FOLLOW_FLOATING_POINT_LITERAL_in_constant1699
= frozenset([1])
18625 FOLLOW_assignment_expression_in_expression1715
= frozenset([1, 27])
18626 FOLLOW_27_in_expression1718
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18627 FOLLOW_assignment_expression_in_expression1720
= frozenset([1, 27])
18628 FOLLOW_conditional_expression_in_constant_expression1733
= frozenset([1])
18629 FOLLOW_lvalue_in_assignment_expression1744
= frozenset([28, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89])
18630 FOLLOW_assignment_operator_in_assignment_expression1746
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18631 FOLLOW_assignment_expression_in_assignment_expression1748
= frozenset([1])
18632 FOLLOW_conditional_expression_in_assignment_expression1753
= frozenset([1])
18633 FOLLOW_unary_expression_in_lvalue1765
= frozenset([1])
18634 FOLLOW_set_in_assignment_operator0
= frozenset([1])
18635 FOLLOW_logical_or_expression_in_conditional_expression1839
= frozenset([1, 90])
18636 FOLLOW_90_in_conditional_expression1842
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18637 FOLLOW_expression_in_conditional_expression1844
= frozenset([47])
18638 FOLLOW_47_in_conditional_expression1846
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18639 FOLLOW_conditional_expression_in_conditional_expression1848
= frozenset([1])
18640 FOLLOW_logical_and_expression_in_logical_or_expression1863
= frozenset([1, 91])
18641 FOLLOW_91_in_logical_or_expression1866
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18642 FOLLOW_logical_and_expression_in_logical_or_expression1868
= frozenset([1, 91])
18643 FOLLOW_inclusive_or_expression_in_logical_and_expression1881
= frozenset([1, 92])
18644 FOLLOW_92_in_logical_and_expression1884
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18645 FOLLOW_inclusive_or_expression_in_logical_and_expression1886
= frozenset([1, 92])
18646 FOLLOW_exclusive_or_expression_in_inclusive_or_expression1899
= frozenset([1, 93])
18647 FOLLOW_93_in_inclusive_or_expression1902
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18648 FOLLOW_exclusive_or_expression_in_inclusive_or_expression1904
= frozenset([1, 93])
18649 FOLLOW_and_expression_in_exclusive_or_expression1917
= frozenset([1, 94])
18650 FOLLOW_94_in_exclusive_or_expression1920
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18651 FOLLOW_and_expression_in_exclusive_or_expression1922
= frozenset([1, 94])
18652 FOLLOW_equality_expression_in_and_expression1935
= frozenset([1, 77])
18653 FOLLOW_77_in_and_expression1938
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18654 FOLLOW_equality_expression_in_and_expression1940
= frozenset([1, 77])
18655 FOLLOW_relational_expression_in_equality_expression1952
= frozenset([1, 95, 96])
18656 FOLLOW_set_in_equality_expression1955
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18657 FOLLOW_relational_expression_in_equality_expression1961
= frozenset([1, 95, 96])
18658 FOLLOW_shift_expression_in_relational_expression1975
= frozenset([1, 97, 98, 99, 100])
18659 FOLLOW_set_in_relational_expression1978
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18660 FOLLOW_shift_expression_in_relational_expression1988
= frozenset([1, 97, 98, 99, 100])
18661 FOLLOW_additive_expression_in_shift_expression2001
= frozenset([1, 101, 102])
18662 FOLLOW_set_in_shift_expression2004
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18663 FOLLOW_additive_expression_in_shift_expression2010
= frozenset([1, 101, 102])
18664 FOLLOW_labeled_statement_in_statement2025
= frozenset([1])
18665 FOLLOW_compound_statement_in_statement2030
= frozenset([1])
18666 FOLLOW_expression_statement_in_statement2035
= frozenset([1])
18667 FOLLOW_selection_statement_in_statement2040
= frozenset([1])
18668 FOLLOW_iteration_statement_in_statement2045
= frozenset([1])
18669 FOLLOW_jump_statement_in_statement2050
= frozenset([1])
18670 FOLLOW_macro_statement_in_statement2055
= frozenset([1])
18671 FOLLOW_asm2_statement_in_statement2060
= frozenset([1])
18672 FOLLOW_asm1_statement_in_statement2065
= frozenset([1])
18673 FOLLOW_asm_statement_in_statement2070
= frozenset([1])
18674 FOLLOW_declaration_in_statement2075
= frozenset([1])
18675 FOLLOW_103_in_asm2_statement2086
= frozenset([4])
18676 FOLLOW_IDENTIFIER_in_asm2_statement2089
= frozenset([62])
18677 FOLLOW_62_in_asm2_statement2091
= frozenset([4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117])
18678 FOLLOW_set_in_asm2_statement2094
= frozenset([4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117])
18679 FOLLOW_63_in_asm2_statement2101
= frozenset([25])
18680 FOLLOW_25_in_asm2_statement2103
= frozenset([1])
18681 FOLLOW_104_in_asm1_statement2115
= frozenset([43])
18682 FOLLOW_43_in_asm1_statement2117
= frozenset([4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117])
18683 FOLLOW_set_in_asm1_statement2120
= frozenset([4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117])
18684 FOLLOW_44_in_asm1_statement2127
= frozenset([1])
18685 FOLLOW_105_in_asm_statement2138
= frozenset([43])
18686 FOLLOW_43_in_asm_statement2140
= frozenset([4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117])
18687 FOLLOW_set_in_asm_statement2143
= frozenset([4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117])
18688 FOLLOW_44_in_asm_statement2150
= frozenset([1])
18689 FOLLOW_IDENTIFIER_in_macro_statement2162
= frozenset([62])
18690 FOLLOW_62_in_macro_statement2164
= frozenset([4, 5, 6, 7, 8, 9, 10, 25, 26, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 45, 46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 66, 68, 69, 72, 73, 74, 77, 78, 79, 103, 104, 105, 106, 107, 108, 110, 111, 112, 113, 114, 115, 116, 117])
18691 FOLLOW_declaration_in_macro_statement2166
= frozenset([4, 5, 6, 7, 8, 9, 10, 25, 26, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 45, 46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 66, 68, 69, 72, 73, 74, 77, 78, 79, 103, 104, 105, 106, 107, 108, 110, 111, 112, 113, 114, 115, 116, 117])
18692 FOLLOW_statement_list_in_macro_statement2170
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 63, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18693 FOLLOW_expression_in_macro_statement2173
= frozenset([63])
18694 FOLLOW_63_in_macro_statement2176
= frozenset([1])
18695 FOLLOW_IDENTIFIER_in_labeled_statement2188
= frozenset([47])
18696 FOLLOW_47_in_labeled_statement2190
= frozenset([4, 5, 6, 7, 8, 9, 10, 25, 26, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 45, 46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79, 103, 104, 105, 106, 107, 108, 110, 111, 112, 113, 114, 115, 116, 117])
18697 FOLLOW_statement_in_labeled_statement2192
= frozenset([1])
18698 FOLLOW_106_in_labeled_statement2197
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18699 FOLLOW_constant_expression_in_labeled_statement2199
= frozenset([47])
18700 FOLLOW_47_in_labeled_statement2201
= frozenset([4, 5, 6, 7, 8, 9, 10, 25, 26, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 45, 46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79, 103, 104, 105, 106, 107, 108, 110, 111, 112, 113, 114, 115, 116, 117])
18701 FOLLOW_statement_in_labeled_statement2203
= frozenset([1])
18702 FOLLOW_107_in_labeled_statement2208
= frozenset([47])
18703 FOLLOW_47_in_labeled_statement2210
= frozenset([4, 5, 6, 7, 8, 9, 10, 25, 26, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 45, 46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79, 103, 104, 105, 106, 107, 108, 110, 111, 112, 113, 114, 115, 116, 117])
18704 FOLLOW_statement_in_labeled_statement2212
= frozenset([1])
18705 FOLLOW_43_in_compound_statement2223
= frozenset([4, 5, 6, 7, 8, 9, 10, 25, 26, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79, 103, 104, 105, 106, 107, 108, 110, 111, 112, 113, 114, 115, 116, 117])
18706 FOLLOW_declaration_in_compound_statement2225
= frozenset([4, 5, 6, 7, 8, 9, 10, 25, 26, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79, 103, 104, 105, 106, 107, 108, 110, 111, 112, 113, 114, 115, 116, 117])
18707 FOLLOW_statement_list_in_compound_statement2228
= frozenset([44])
18708 FOLLOW_44_in_compound_statement2231
= frozenset([1])
18709 FOLLOW_statement_in_statement_list2242
= frozenset([1, 4, 5, 6, 7, 8, 9, 10, 25, 26, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 45, 46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79, 103, 104, 105, 106, 107, 108, 110, 111, 112, 113, 114, 115, 116, 117])
18710 FOLLOW_25_in_expression_statement2254
= frozenset([1])
18711 FOLLOW_expression_in_expression_statement2259
= frozenset([25])
18712 FOLLOW_25_in_expression_statement2261
= frozenset([1])
18713 FOLLOW_108_in_selection_statement2272
= frozenset([62])
18714 FOLLOW_62_in_selection_statement2274
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18715 FOLLOW_expression_in_selection_statement2278
= frozenset([63])
18716 FOLLOW_63_in_selection_statement2280
= frozenset([4, 5, 6, 7, 8, 9, 10, 25, 26, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 45, 46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79, 103, 104, 105, 106, 107, 108, 110, 111, 112, 113, 114, 115, 116, 117])
18717 FOLLOW_statement_in_selection_statement2284
= frozenset([1, 109])
18718 FOLLOW_109_in_selection_statement2299
= frozenset([4, 5, 6, 7, 8, 9, 10, 25, 26, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 45, 46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79, 103, 104, 105, 106, 107, 108, 110, 111, 112, 113, 114, 115, 116, 117])
18719 FOLLOW_statement_in_selection_statement2301
= frozenset([1])
18720 FOLLOW_110_in_selection_statement2308
= frozenset([62])
18721 FOLLOW_62_in_selection_statement2310
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18722 FOLLOW_expression_in_selection_statement2312
= frozenset([63])
18723 FOLLOW_63_in_selection_statement2314
= frozenset([4, 5, 6, 7, 8, 9, 10, 25, 26, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 45, 46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79, 103, 104, 105, 106, 107, 108, 110, 111, 112, 113, 114, 115, 116, 117])
18724 FOLLOW_statement_in_selection_statement2316
= frozenset([1])
18725 FOLLOW_111_in_iteration_statement2327
= frozenset([62])
18726 FOLLOW_62_in_iteration_statement2329
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18727 FOLLOW_expression_in_iteration_statement2333
= frozenset([63])
18728 FOLLOW_63_in_iteration_statement2335
= frozenset([4, 5, 6, 7, 8, 9, 10, 25, 26, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 45, 46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79, 103, 104, 105, 106, 107, 108, 110, 111, 112, 113, 114, 115, 116, 117])
18729 FOLLOW_statement_in_iteration_statement2337
= frozenset([1])
18730 FOLLOW_112_in_iteration_statement2344
= frozenset([4, 5, 6, 7, 8, 9, 10, 25, 26, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 45, 46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79, 103, 104, 105, 106, 107, 108, 110, 111, 112, 113, 114, 115, 116, 117])
18731 FOLLOW_statement_in_iteration_statement2346
= frozenset([111])
18732 FOLLOW_111_in_iteration_statement2348
= frozenset([62])
18733 FOLLOW_62_in_iteration_statement2350
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18734 FOLLOW_expression_in_iteration_statement2354
= frozenset([63])
18735 FOLLOW_63_in_iteration_statement2356
= frozenset([25])
18736 FOLLOW_25_in_iteration_statement2358
= frozenset([1])
18737 FOLLOW_113_in_iteration_statement2365
= frozenset([62])
18738 FOLLOW_62_in_iteration_statement2367
= frozenset([4, 5, 6, 7, 8, 9, 10, 25, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18739 FOLLOW_expression_statement_in_iteration_statement2369
= frozenset([4, 5, 6, 7, 8, 9, 10, 25, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18740 FOLLOW_expression_statement_in_iteration_statement2373
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 63, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18741 FOLLOW_expression_in_iteration_statement2375
= frozenset([63])
18742 FOLLOW_63_in_iteration_statement2378
= frozenset([4, 5, 6, 7, 8, 9, 10, 25, 26, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 45, 46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79, 103, 104, 105, 106, 107, 108, 110, 111, 112, 113, 114, 115, 116, 117])
18743 FOLLOW_statement_in_iteration_statement2380
= frozenset([1])
18744 FOLLOW_114_in_jump_statement2393
= frozenset([4])
18745 FOLLOW_IDENTIFIER_in_jump_statement2395
= frozenset([25])
18746 FOLLOW_25_in_jump_statement2397
= frozenset([1])
18747 FOLLOW_115_in_jump_statement2402
= frozenset([25])
18748 FOLLOW_25_in_jump_statement2404
= frozenset([1])
18749 FOLLOW_116_in_jump_statement2409
= frozenset([25])
18750 FOLLOW_25_in_jump_statement2411
= frozenset([1])
18751 FOLLOW_117_in_jump_statement2416
= frozenset([25])
18752 FOLLOW_25_in_jump_statement2418
= frozenset([1])
18753 FOLLOW_117_in_jump_statement2423
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18754 FOLLOW_expression_in_jump_statement2425
= frozenset([25])
18755 FOLLOW_25_in_jump_statement2427
= frozenset([1])
18756 FOLLOW_declaration_specifiers_in_synpred2100
= frozenset([1])
18757 FOLLOW_declaration_specifiers_in_synpred4100
= frozenset([4, 58, 59, 60, 62, 66])
18758 FOLLOW_declarator_in_synpred4103
= frozenset([4, 26, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 45, 46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61])
18759 FOLLOW_declaration_in_synpred4105
= frozenset([4, 26, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 45, 46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61])
18760 FOLLOW_43_in_synpred4108
= frozenset([1])
18761 FOLLOW_declaration_in_synpred5118
= frozenset([1])
18762 FOLLOW_declaration_specifiers_in_synpred7157
= frozenset([1])
18763 FOLLOW_declaration_specifiers_in_synpred10207
= frozenset([1])
18764 FOLLOW_type_specifier_in_synpred14272
= frozenset([1])
18765 FOLLOW_type_qualifier_in_synpred15286
= frozenset([1])
18766 FOLLOW_type_qualifier_in_synpred33444
= frozenset([1])
18767 FOLLOW_IDENTIFIER_in_synpred34442
= frozenset([4, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 66])
18768 FOLLOW_type_qualifier_in_synpred34444
= frozenset([4, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 66])
18769 FOLLOW_declarator_in_synpred34447
= frozenset([1])
18770 FOLLOW_type_qualifier_in_synpred39566
= frozenset([1])
18771 FOLLOW_type_specifier_in_synpred40570
= frozenset([1])
18772 FOLLOW_pointer_in_synpred66784
= frozenset([4, 58, 59, 60, 62])
18773 FOLLOW_58_in_synpred66788
= frozenset([4, 59, 60, 62])
18774 FOLLOW_59_in_synpred66793
= frozenset([4, 60, 62])
18775 FOLLOW_60_in_synpred66798
= frozenset([4, 62])
18776 FOLLOW_direct_declarator_in_synpred66802
= frozenset([1])
18777 FOLLOW_declarator_suffix_in_synpred67821
= frozenset([1])
18778 FOLLOW_58_in_synpred69830
= frozenset([1])
18779 FOLLOW_declarator_suffix_in_synpred70838
= frozenset([1])
18780 FOLLOW_62_in_synpred73878
= frozenset([4, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 45, 46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 66])
18781 FOLLOW_parameter_type_list_in_synpred73880
= frozenset([63])
18782 FOLLOW_63_in_synpred73882
= frozenset([1])
18783 FOLLOW_62_in_synpred74892
= frozenset([4])
18784 FOLLOW_identifier_list_in_synpred74894
= frozenset([63])
18785 FOLLOW_63_in_synpred74896
= frozenset([1])
18786 FOLLOW_type_qualifier_in_synpred75921
= frozenset([1])
18787 FOLLOW_pointer_in_synpred76924
= frozenset([1])
18788 FOLLOW_66_in_synpred77919
= frozenset([49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61])
18789 FOLLOW_type_qualifier_in_synpred77921
= frozenset([1, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 66])
18790 FOLLOW_pointer_in_synpred77924
= frozenset([1])
18791 FOLLOW_66_in_synpred78930
= frozenset([66])
18792 FOLLOW_pointer_in_synpred78932
= frozenset([1])
18793 FOLLOW_53_in_synpred81977
= frozenset([1])
18794 FOLLOW_27_in_synpred82974
= frozenset([4, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 45, 46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 66])
18795 FOLLOW_53_in_synpred82977
= frozenset([4, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 45, 46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 66])
18796 FOLLOW_parameter_declaration_in_synpred82981
= frozenset([1])
18797 FOLLOW_declarator_in_synpred83997
= frozenset([1])
18798 FOLLOW_abstract_declarator_in_synpred84999
= frozenset([1])
18799 FOLLOW_declaration_specifiers_in_synpred86994
= frozenset([1, 4, 53, 58, 59, 60, 62, 64, 66])
18800 FOLLOW_declarator_in_synpred86997
= frozenset([1, 4, 53, 58, 59, 60, 62, 64, 66])
18801 FOLLOW_abstract_declarator_in_synpred86999
= frozenset([1, 4, 53, 58, 59, 60, 62, 64, 66])
18802 FOLLOW_53_in_synpred861004
= frozenset([1])
18803 FOLLOW_specifier_qualifier_list_in_synpred901046
= frozenset([1, 62, 64, 66])
18804 FOLLOW_abstract_declarator_in_synpred901048
= frozenset([1])
18805 FOLLOW_direct_abstract_declarator_in_synpred911067
= frozenset([1])
18806 FOLLOW_62_in_synpred931086
= frozenset([62, 64, 66])
18807 FOLLOW_abstract_declarator_in_synpred931088
= frozenset([63])
18808 FOLLOW_63_in_synpred931090
= frozenset([1])
18809 FOLLOW_abstract_declarator_suffix_in_synpred941098
= frozenset([1])
18810 FOLLOW_62_in_synpred1091282
= frozenset([4, 34, 35, 36, 37, 38, 39, 40, 41, 42, 45, 46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61])
18811 FOLLOW_type_name_in_synpred1091284
= frozenset([63])
18812 FOLLOW_63_in_synpred1091286
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18813 FOLLOW_cast_expression_in_synpred1091288
= frozenset([1])
18814 FOLLOW_74_in_synpred1141330
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18815 FOLLOW_unary_expression_in_synpred1141332
= frozenset([1])
18816 FOLLOW_62_in_synpred1171420
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18817 FOLLOW_argument_expression_list_in_synpred1171424
= frozenset([63])
18818 FOLLOW_63_in_synpred1171428
= frozenset([1])
18819 FOLLOW_62_in_synpred1181444
= frozenset([4, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 45, 46, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 66])
18820 FOLLOW_macro_parameter_list_in_synpred1181446
= frozenset([63])
18821 FOLLOW_63_in_synpred1181448
= frozenset([1])
18822 FOLLOW_66_in_synpred1201482
= frozenset([4])
18823 FOLLOW_IDENTIFIER_in_synpred1201486
= frozenset([1])
18824 FOLLOW_STRING_LITERAL_in_synpred1371683
= frozenset([1])
18825 FOLLOW_IDENTIFIER_in_synpred1381680
= frozenset([4, 9])
18826 FOLLOW_STRING_LITERAL_in_synpred1381683
= frozenset([1, 9])
18827 FOLLOW_lvalue_in_synpred1421744
= frozenset([28, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89])
18828 FOLLOW_assignment_operator_in_synpred1421746
= frozenset([4, 5, 6, 7, 8, 9, 10, 62, 66, 68, 69, 72, 73, 74, 77, 78, 79])
18829 FOLLOW_assignment_expression_in_synpred1421748
= frozenset([1])
18830 FOLLOW_expression_statement_in_synpred1692035
= frozenset([1])
18831 FOLLOW_macro_statement_in_synpred1732055
= frozenset([1])
18832 FOLLOW_asm2_statement_in_synpred1742060
= frozenset([1])
18833 FOLLOW_declaration_in_synpred1812166
= frozenset([1])
18834 FOLLOW_statement_list_in_synpred1822170
= frozenset([1])
18835 FOLLOW_declaration_in_synpred1862225
= frozenset([1])
18836 FOLLOW_statement_in_synpred1882242
= frozenset([1])