diff --git a/lrparser/org.eclipse.cdt.core.lrparser.tests/src/org/eclipse/cdt/core/lrparser/tests/c99/ParseHelper.java b/lrparser/org.eclipse.cdt.core.lrparser.tests/src/org/eclipse/cdt/core/lrparser/tests/c99/ParseHelper.java
index bdf2420fd5b..3c2acd8173d 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser.tests/src/org/eclipse/cdt/core/lrparser/tests/c99/ParseHelper.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser.tests/src/org/eclipse/cdt/core/lrparser/tests/c99/ParseHelper.java
@@ -46,15 +46,15 @@ public class ParseHelper {
@Override
public int visit( IASTName name ){
- System.out.println("Visit Name: '" + name.toString() + "'");
+ //System.out.println("Visit Name: '" + name.toString() + "'");
IBinding binding = name.resolveBinding();
if (binding instanceof IProblemBinding) {
numProblemBindings++;
- System.out.println("Problem Binding: " + name);
+ //System.out.println("Problem Binding: " + name);
}
if (binding == null) {
numNullBindings++;
- System.out.println("Null Binding: " + name);
+ //System.out.println("Null Binding: " + name);
}
return PROCESS_CONTINUE;
}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/grammar/build.xml b/lrparser/org.eclipse.cdt.core.lrparser/grammar/build.xml
index 21fc2186baf..5a05cd1f945 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/grammar/build.xml
+++ b/lrparser/org.eclipse.cdt.core.lrparser/grammar/build.xml
@@ -23,6 +23,17 @@
This property must be set to the full path to the LPG templates folder.
+
+
+
+
+
+
+
+
+
+
+
Generates the C99 and C++ parsers
@@ -33,19 +44,19 @@
Generate the C99 parser
-
+
-
+
-
+
-
+
@@ -53,33 +64,33 @@
Generate the C++ parser
-
+
-
+
-
+
-
+
-
+
-
+
-
+
@@ -97,7 +108,7 @@
-
+
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/grammar/c99/C99Grammar.g b/lrparser/org.eclipse.cdt.core.lrparser/grammar/c99/C99Grammar.g
index 16430d49a6d..2391edd0b7d 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/grammar/c99/C99Grammar.g
+++ b/lrparser/org.eclipse.cdt.core.lrparser/grammar/c99/C99Grammar.g
@@ -639,6 +639,8 @@ struct_declaration
/. $Build consumeStructDeclaration(true); $EndBuild ./
| specifier_qualifier_list ';'
/. $Build consumeStructDeclaration(false); $EndBuild ./
+ | ERROR_TOKEN
+ /. $Build consumeDeclarationProblem(); $EndBuild ./
-- just reuse declaration_specifiers, makes grammar a bit more lenient but thats OK
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPGrammar.g b/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPGrammar.g
index 6ebcb26fa0b..4c45a0cd662 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPGrammar.g
+++ b/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPGrammar.g
@@ -350,15 +350,27 @@ $Rules
-- Basic Concepts
------------------------------------------------------------------------------------------
--- TODO declaration errors need to be caught
--- TODO in C99 as well, nested declarations should be able to have errors
+-- The extra external declaration rules are there just so that ERROR_TOKEN can be
+-- caught at the top level.
translation_unit
- ::= declaration_seq
+ ::= external_declaration_list
/. $Build consumeTranslationUnit(); $EndBuild ./
| $empty
/. $Build consumeTranslationUnit(); $EndBuild ./
+
+external_declaration_list
+ ::= external_declaration
+ | external_declaration_list external_declaration
+
+
+external_declaration
+ ::= declaration
+ | ERROR_TOKEN
+ /. $Build consumeDeclarationProblem(); $EndBuild ./
+
+
--expression_as_translation_unit
-- ::= expression
-- /. $Build consumeExpressionAsTranslationUnit(); $EndBuild ./
@@ -1505,15 +1517,15 @@ member_declaration
/. $Build consumeDeclarationSimple(true); $EndBuild ./
| declaration_specifiers_opt ';'
/. $Build consumeDeclarationSimple(false); $EndBuild ./
- | function_definition ';' -- done
- | function_definition -- done
+ | function_definition ';'
+ | function_definition
| dcolon_opt nested_name_specifier template_opt unqualified_id_name ';'
/. $Build consumeMemberDeclarationQualifiedId(); $EndBuild ./
- | using_declaration -- done
+ | using_declaration
| template_declaration
- | visibility_label -- done
-
-
+ | visibility_label
+ | ERROR_TOKEN
+ /. $Build consumeDeclarationProblem(); $EndBuild ./
member_declaration_list
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/c99/C99BuildASTParserAction.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/c99/C99BuildASTParserAction.java
index b9e4835e9fc..957d2a1d83a 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/c99/C99BuildASTParserAction.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/c99/C99BuildASTParserAction.java
@@ -557,9 +557,6 @@ public class C99BuildASTParserAction extends BuildASTParserAction {
if(asC99Kind(parser.getLeftIToken()) == C99Parsersym.TK_EndOfCompletion)
return;
- List tokens = parser.getRuleTokens();
-
- System.out.println("what: " + parser.getLeftIToken().getKind());
IASTDeclSpecifier declSpecifier = nodeFactory.newCSimpleDeclSpecifier();
IASTSimpleDeclaration declaration = nodeFactory.newSimpleDeclaration(declSpecifier);
setOffsetAndLength(declSpecifier);
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionStatementParser.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionStatementParser.java
index 04b1018709a..1875cd1d6ef 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionStatementParser.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionStatementParser.java
@@ -835,411 +835,417 @@ public C99ExpressionStatementParser(String[] mapFrom) { // constructor
}
//
- // Rule 200: struct_declarator ::= : constant_expression
+ // Rule 195: struct_declaration ::= ERROR_TOKEN
//
- case 200: { action. consumeBitField(false); break;
+ case 195: { action. consumeDeclarationProblem(); break;
}
//
- // Rule 201: struct_declarator ::= declarator : constant_expression
+ // Rule 201: struct_declarator ::= : constant_expression
//
- case 201: { action. consumeBitField(true); break;
+ case 201: { action. consumeBitField(false); break;
}
//
- // Rule 202: enum_specifier ::= enum { enumerator_list_opt comma_opt }
+ // Rule 202: struct_declarator ::= declarator : constant_expression
//
- case 202: { action. consumeTypeSpecifierEnumeration(false); break;
+ case 202: { action. consumeBitField(true); break;
}
//
- // Rule 203: enum_specifier ::= enum identifier_or_typedefname { enumerator_list_opt comma_opt }
+ // Rule 203: enum_specifier ::= enum { enumerator_list_opt comma_opt }
//
- case 203: { action. consumeTypeSpecifierEnumeration(true); break;
+ case 203: { action. consumeTypeSpecifierEnumeration(false); break;
}
//
- // Rule 208: enumerator ::= identifier_or_typedefname
+ // Rule 204: enum_specifier ::= enum identifier_or_typedefname { enumerator_list_opt comma_opt }
//
- case 208: { action. consumeEnumerator(false); break;
+ case 204: { action. consumeTypeSpecifierEnumeration(true); break;
}
//
- // Rule 209: enumerator ::= identifier_or_typedefname = constant_expression
+ // Rule 209: enumerator ::= identifier_or_typedefname
//
- case 209: { action. consumeEnumerator(true); break;
+ case 209: { action. consumeEnumerator(false); break;
}
//
- // Rule 210: type_qualifier ::= type_qualifier_token
+ // Rule 210: enumerator ::= identifier_or_typedefname = constant_expression
//
- case 210: { action. consumeDeclSpecToken(); break;
+ case 210: { action. consumeEnumerator(true); break;
}
//
- // Rule 214: function_specifier ::= inline
+ // Rule 211: type_qualifier ::= type_qualifier_token
//
- case 214: { action. consumeDeclSpecToken(); break;
+ case 211: { action. consumeDeclSpecToken(); break;
}
//
- // Rule 216: declarator ::= pointer_seq direct_declarator
+ // Rule 215: function_specifier ::= inline
//
- case 216: { action. consumeDeclaratorWithPointer(true); break;
+ case 215: { action. consumeDeclSpecToken(); break;
}
//
- // Rule 221: basic_direct_declarator ::= declarator_id_name
+ // Rule 217: declarator ::= pointer_seq direct_declarator
//
- case 221: { action. consumeDirectDeclaratorIdentifier(); break;
+ case 217: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 222: basic_direct_declarator ::= ( declarator )
+ // Rule 222: basic_direct_declarator ::= declarator_id_name
//
- case 222: { action. consumeDirectDeclaratorBracketed(); break;
+ case 222: { action. consumeDirectDeclaratorIdentifier(); break;
}
//
- // Rule 223: declarator_id_name ::= identifier
+ // Rule 223: basic_direct_declarator ::= ( declarator )
//
- case 223: { action. consumeIdentifierName(); break;
+ case 223: { action. consumeDirectDeclaratorBracketed(); break;
}
//
- // Rule 224: array_direct_declarator ::= basic_direct_declarator array_modifier
+ // Rule 224: declarator_id_name ::= identifier
//
- case 224: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ case 224: { action. consumeIdentifierName(); break;
}
//
- // Rule 225: array_direct_declarator ::= array_direct_declarator array_modifier
+ // Rule 225: array_direct_declarator ::= basic_direct_declarator array_modifier
//
case 225: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 227: function_direct_declarator ::= basic_direct_declarator ( parameter_type_list )
+ // Rule 226: array_direct_declarator ::= array_direct_declarator array_modifier
//
- case 227: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
+ case 226: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 228: function_direct_declarator ::= basic_direct_declarator ( )
+ // Rule 228: function_direct_declarator ::= basic_direct_declarator ( parameter_type_list )
//
- case 228: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
+ case 228: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
}
//
- // Rule 230: function_declarator ::= pointer_seq function_direct_declarator
+ // Rule 229: function_direct_declarator ::= basic_direct_declarator ( )
//
- case 230: { action. consumeDeclaratorWithPointer(true); break;
+ case 229: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
}
//
- // Rule 231: knr_direct_declarator ::= basic_direct_declarator ( identifier_list )
+ // Rule 231: function_declarator ::= pointer_seq function_direct_declarator
//
- case 231: { action. consumeDirectDeclaratorFunctionDeclaratorKnR(); break;
+ case 231: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 233: knr_function_declarator ::= pointer_seq knr_direct_declarator
+ // Rule 232: knr_direct_declarator ::= basic_direct_declarator ( identifier_list )
//
- case 233: { action. consumeDeclaratorWithPointer(true); break;
+ case 232: { action. consumeDirectDeclaratorFunctionDeclaratorKnR(); break;
}
//
- // Rule 234: identifier_list ::= identifier
+ // Rule 234: knr_function_declarator ::= pointer_seq knr_direct_declarator
//
- case 234: { action. consumeIdentifierKnR(); break;
+ case 234: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 235: identifier_list ::= identifier_list , identifier
+ // Rule 235: identifier_list ::= identifier
//
case 235: { action. consumeIdentifierKnR(); break;
}
//
- // Rule 236: array_modifier ::= [ ]
+ // Rule 236: identifier_list ::= identifier_list , identifier
//
- case 236: { action. consumeDirectDeclaratorArrayModifier(false); break;
+ case 236: { action. consumeIdentifierKnR(); break;
}
//
- // Rule 237: array_modifier ::= [ array_modifier_type_qualifiers ]
+ // Rule 237: array_modifier ::= [ ]
//
- case 237: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, false); break;
+ case 237: { action. consumeDirectDeclaratorArrayModifier(false); break;
}
//
- // Rule 238: array_modifier ::= [ assignment_expression ]
+ // Rule 238: array_modifier ::= [ array_modifier_type_qualifiers ]
//
- case 238: { action. consumeDirectDeclaratorArrayModifier(true); break;
+ case 238: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, false); break;
}
//
- // Rule 239: array_modifier ::= [ array_modifier_type_qualifiers assignment_expression ]
+ // Rule 239: array_modifier ::= [ assignment_expression ]
//
- case 239: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, true); break;
+ case 239: { action. consumeDirectDeclaratorArrayModifier(true); break;
}
//
- // Rule 240: array_modifier ::= [ static assignment_expression ]
+ // Rule 240: array_modifier ::= [ array_modifier_type_qualifiers assignment_expression ]
//
- case 240: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, false, true); break;
+ case 240: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, true); break;
}
//
- // Rule 241: array_modifier ::= [ static array_modifier_type_qualifiers assignment_expression ]
+ // Rule 241: array_modifier ::= [ static assignment_expression ]
//
- case 241: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break;
+ case 241: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, false, true); break;
}
//
- // Rule 242: array_modifier ::= [ array_modifier_type_qualifiers static assignment_expression ]
+ // Rule 242: array_modifier ::= [ static array_modifier_type_qualifiers assignment_expression ]
//
case 242: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break;
}
//
- // Rule 243: array_modifier ::= [ * ]
+ // Rule 243: array_modifier ::= [ array_modifier_type_qualifiers static assignment_expression ]
//
- case 243: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, false, false); break;
+ case 243: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break;
}
//
- // Rule 244: array_modifier ::= [ array_modifier_type_qualifiers * ]
+ // Rule 244: array_modifier ::= [ * ]
//
- case 244: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, true, false); break;
+ case 244: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, false, false); break;
}
//
- // Rule 246: pointer_seq ::= *
+ // Rule 245: array_modifier ::= [ array_modifier_type_qualifiers * ]
//
- case 246: { action. consumePointer(); break;
+ case 245: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, true, false); break;
}
//
- // Rule 247: pointer_seq ::= pointer_seq *
+ // Rule 247: pointer_seq ::= *
//
case 247: { action. consumePointer(); break;
}
//
- // Rule 248: pointer_seq ::= * type_qualifier_list
+ // Rule 248: pointer_seq ::= pointer_seq *
//
- case 248: { action. consumePointerTypeQualifierList(); break;
+ case 248: { action. consumePointer(); break;
}
//
- // Rule 249: pointer_seq ::= pointer_seq * type_qualifier_list
+ // Rule 249: pointer_seq ::= * type_qualifier_list
//
case 249: { action. consumePointerTypeQualifierList(); break;
}
//
- // Rule 252: parameter_type_list ::= parameter_list
+ // Rule 250: pointer_seq ::= pointer_seq * type_qualifier_list
//
- case 252: { action. consumeEmpty(); break;
+ case 250: { action. consumePointerTypeQualifierList(); break;
}
//
- // Rule 253: parameter_type_list ::= parameter_list , ...
+ // Rule 253: parameter_type_list ::= parameter_list
//
- case 253: { action. consumePlaceHolder(); break;
+ case 253: { action. consumeEmpty(); break;
}
//
- // Rule 254: parameter_type_list ::= ...
+ // Rule 254: parameter_type_list ::= parameter_list , ...
//
case 254: { action. consumePlaceHolder(); break;
}
//
- // Rule 257: parameter_declaration ::= declaration_specifiers complete_parameter_declarator
+ // Rule 255: parameter_type_list ::= ...
//
- case 257: { action. consumeParameterDeclaration(); break;
+ case 255: { action. consumePlaceHolder(); break;
}
//
- // Rule 258: parameter_declaration ::= declaration_specifiers
+ // Rule 258: parameter_declaration ::= declaration_specifiers complete_parameter_declarator
//
- case 258: { action. consumeParameterDeclarationWithoutDeclarator(); break;
+ case 258: { action. consumeParameterDeclaration(); break;
}
//
- // Rule 261: type_name ::= specifier_qualifier_list
+ // Rule 259: parameter_declaration ::= declaration_specifiers
//
- case 261: { action. consumeTypeId(false); break;
+ case 259: { action. consumeParameterDeclarationWithoutDeclarator(); break;
}
//
- // Rule 262: type_name ::= specifier_qualifier_list abstract_declarator
+ // Rule 262: type_name ::= specifier_qualifier_list
//
- case 262: { action. consumeTypeId(true); break;
+ case 262: { action. consumeTypeId(false); break;
}
//
- // Rule 264: abstract_declarator ::= pointer_seq
+ // Rule 263: type_name ::= specifier_qualifier_list abstract_declarator
//
- case 264: { action. consumeDeclaratorWithPointer(false); break;
+ case 263: { action. consumeTypeId(true); break;
}
//
- // Rule 265: abstract_declarator ::= pointer_seq direct_abstract_declarator
+ // Rule 265: abstract_declarator ::= pointer_seq
//
case 265: { action. consumeDeclaratorWithPointer(false); break;
}
//
- // Rule 269: basic_direct_abstract_declarator ::= ( abstract_declarator )
+ // Rule 266: abstract_declarator ::= pointer_seq direct_abstract_declarator
//
- case 269: { action. consumeDirectDeclaratorBracketed(); break;
+ case 266: { action. consumeDeclaratorWithPointer(false); break;
}
//
- // Rule 270: array_direct_abstract_declarator ::= array_modifier
+ // Rule 270: basic_direct_abstract_declarator ::= ( abstract_declarator )
//
- case 270: { action. consumeDirectDeclaratorArrayDeclarator(false); break;
+ case 270: { action. consumeDirectDeclaratorBracketed(); break;
}
//
- // Rule 271: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier
+ // Rule 271: array_direct_abstract_declarator ::= array_modifier
//
- case 271: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ case 271: { action. consumeDirectDeclaratorArrayDeclarator(false); break;
}
//
- // Rule 272: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier
+ // Rule 272: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier
//
case 272: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 273: function_direct_abstract_declarator ::= ( )
+ // Rule 273: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier
//
- case 273: { action. consumeDirectDeclaratorFunctionDeclarator(false, false); break;
+ case 273: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ }
+
+ //
+ // Rule 274: function_direct_abstract_declarator ::= ( )
+ //
+ case 274: { action. consumeDirectDeclaratorFunctionDeclarator(false, false); break;
}
//
- // Rule 274: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( )
+ // Rule 275: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( )
//
- case 274: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
+ case 275: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
}
//
- // Rule 275: function_direct_abstract_declarator ::= ( parameter_type_list )
+ // Rule 276: function_direct_abstract_declarator ::= ( parameter_type_list )
//
- case 275: { action. consumeDirectDeclaratorFunctionDeclarator(false, true); break;
+ case 276: { action. consumeDirectDeclaratorFunctionDeclarator(false, true); break;
}
//
- // Rule 276: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( parameter_type_list )
+ // Rule 277: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( parameter_type_list )
//
- case 276: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
+ case 277: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
}
//
- // Rule 277: initializer ::= assignment_expression
+ // Rule 278: initializer ::= assignment_expression
//
- case 277: { action. consumeInitializer(); break;
+ case 278: { action. consumeInitializer(); break;
}
//
- // Rule 278: initializer ::= { initializer_list comma_opt }
+ // Rule 279: initializer ::= { initializer_list comma_opt }
//
- case 278: { action. consumeInitializerList(); break;
+ case 279: { action. consumeInitializerList(); break;
}
//
- // Rule 283: designated_initializer ::= designation = initializer
+ // Rule 284: designated_initializer ::= designation = initializer
//
- case 283: { action. consumeInitializerDesignated(); break;
+ case 284: { action. consumeInitializerDesignated(); break;
}
//
- // Rule 287: designator_base ::= [ constant_expression ]
+ // Rule 288: designator_base ::= [ constant_expression ]
//
- case 287: { action. consumeDesignatorArray(); break;
+ case 288: { action. consumeDesignatorArray(); break;
}
//
- // Rule 288: designator_base ::= . identifier_or_typedefname
+ // Rule 289: designator_base ::= . identifier_or_typedefname
//
- case 288: { action. consumeDesignatorField(); break;
+ case 289: { action. consumeDesignatorField(); break;
}
//
- // Rule 289: designator ::= [ constant_expression ]
+ // Rule 290: designator ::= [ constant_expression ]
//
- case 289: { action. consumeDesignatorArray(); break;
+ case 290: { action. consumeDesignatorArray(); break;
}
//
- // Rule 290: designator ::= . identifier_or_typedefname
+ // Rule 291: designator ::= . identifier_or_typedefname
//
- case 290: { action. consumeDesignatorField(); break;
+ case 291: { action. consumeDesignatorField(); break;
}
//
- // Rule 291: translation_unit ::= external_declaration_list
- //
- case 291: { action. consumeTranslationUnit(); break;
- }
-
- //
- // Rule 292: translation_unit ::= $Empty
+ // Rule 292: translation_unit ::= external_declaration_list
//
case 292: { action. consumeTranslationUnit(); break;
+ }
+
+ //
+ // Rule 293: translation_unit ::= $Empty
+ //
+ case 293: { action. consumeTranslationUnit(); break;
}
//
- // Rule 297: external_declaration ::= ;
+ // Rule 298: external_declaration ::= ;
//
- case 297: { action. consumeDeclarationEmpty(); break;
+ case 298: { action. consumeDeclarationEmpty(); break;
}
//
- // Rule 298: external_declaration ::= ERROR_TOKEN
+ // Rule 299: external_declaration ::= ERROR_TOKEN
//
- case 298: { action. consumeDeclarationProblem(); break;
+ case 299: { action. consumeDeclarationProblem(); break;
}
//
- // Rule 301: function_definition ::= declaration_specifiers function_declarator function_body
+ // Rule 302: function_definition ::= declaration_specifiers function_declarator function_body
//
- case 301: { action. consumeFunctionDefinition(true); break;
+ case 302: { action. consumeFunctionDefinition(true); break;
}
//
- // Rule 302: function_definition ::= function_declarator function_body
+ // Rule 303: function_definition ::= function_declarator function_body
//
- case 302: { action. consumeFunctionDefinition(false); break;
+ case 303: { action. consumeFunctionDefinition(false); break;
}
//
- // Rule 303: function_definition ::= declaration_specifiers knr_function_declarator declaration_list compound_statement
+ // Rule 304: function_definition ::= declaration_specifiers knr_function_declarator declaration_list compound_statement
//
- case 303: { action. consumeFunctionDefinitionKnR(); break;
+ case 304: { action. consumeFunctionDefinitionKnR(); break;
}
//
- // Rule 304: function_body ::= { }
+ // Rule 305: function_body ::= { }
//
- case 304: { action. consumeStatementCompoundStatement(false); break;
+ case 305: { action. consumeStatementCompoundStatement(false); break;
}
//
- // Rule 305: function_body ::= { block_item_list }
+ // Rule 306: function_body ::= { block_item_list }
//
- case 305: { action. consumeStatementCompoundStatement(true); break;
+ case 306: { action. consumeStatementCompoundStatement(true); break;
}
//
- // Rule 307: expression_parser_start ::= ERROR_TOKEN
+ // Rule 308: expression_parser_start ::= ERROR_TOKEN
//
- case 307: { action. consumeExpressionProblem(); break;
+ case 308: { action. consumeExpressionProblem(); break;
}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionStatementParserprs.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionStatementParserprs.java
index 9daa5d2a4ad..871a8943444 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionStatementParserprs.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionStatementParserprs.java
@@ -53,157 +53,157 @@ public class C99ExpressionStatementParserprs implements lpg.lpgjavaruntime.Parse
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,5,5,6,6,2,2,2,1,0,
- 1,2,4,2,1,1,3,1,1,2,
- 3,6,7,1,0,1,3,1,3,1,
- 1,1,1,1,1,3,1,1,1,1,
- 1,3,1,2,2,1,5,3,1,3,
- 5,1,3,1,3,2,4,3,5,4,
- 6,6,3,5,1,1,2,3,4,1,
- 2,1,3,1,1,3,2,1,1,1,
- 1,2,1,2,3,1,1,1,3,1,
- 2,2,2,3,4,5,1,5,1,1,
- 3,3,4,1,1,2,3,2,3,2,
- 1,0,1,2,1,1,1,1,1,2,
- 4,3,6,2,4,2,1,-38,0,0,
- 0,0,0,0,0,-3,0,0,0,0,
- 0,0,0,0,0,0,0,-2,0,0,
- -5,-15,-31,-82,-17,0,0,0,0,-125,
+ 1,2,4,2,1,1,1,3,1,1,
+ 2,3,6,7,1,0,1,3,1,3,
+ 1,1,1,1,1,1,3,1,1,1,
+ 1,1,3,1,2,2,1,5,3,1,
+ 3,5,1,3,1,3,2,4,3,5,
+ 4,6,6,3,5,1,1,2,3,4,
+ 1,2,1,3,1,1,3,2,1,1,
+ 1,1,2,1,2,3,1,1,1,3,
+ 1,2,2,2,3,4,5,1,5,1,
+ 1,3,3,4,1,1,2,3,2,3,
+ 2,1,0,1,2,1,1,1,1,1,
+ 2,4,3,6,2,4,2,1,-38,0,
+ 0,0,0,0,0,0,-3,0,0,0,
+ 0,0,0,0,0,0,0,0,-2,0,
+ 0,-5,-15,-31,-82,-17,0,0,0,0,
+ -125,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-39,0,0,0,0,0,0,
+ 0,0,0,0,0,-18,-19,0,-20,0,
+ 0,0,0,0,0,0,-7,0,0,0,
+ 0,0,0,0,-54,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-32,
+ 0,-174,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-39,0,0,0,0,0,0,0,
- 0,0,0,0,-18,-19,0,-20,0,0,
- 0,0,0,0,0,-7,0,0,0,0,
- 0,0,0,-54,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-32,0,
- -174,0,0,0,0,0,0,0,0,0,
+ 0,-169,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -169,0,0,0,0,0,0,0,0,0,
+ 0,-181,-21,-22,-23,-187,-4,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -181,-21,-22,-23,-187,-4,0,0,0,0,
+ 0,0,0,0,0,0,0,-35,0,0,
+ -144,0,0,-24,0,0,0,0,0,0,
+ 0,0,-25,0,0,0,0,0,-77,0,
+ -75,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-35,0,0,-144,
- 0,0,-24,0,0,0,0,0,0,0,
- 0,-25,0,0,0,0,0,-77,0,-75,
+ -143,-26,0,0,0,-173,-27,0,-111,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-143,
- -26,0,0,0,-173,-27,0,-111,0,0,
+ 0,0,0,0,0,0,0,0,-130,0,
+ 0,0,0,0,0,0,-195,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-130,0,0,
- 0,0,0,0,0,-195,0,0,0,0,
+ 0,0,0,-189,0,0,0,0,0,0,
+ 0,-36,0,0,0,0,0,0,0,0,
+ 0,0,0,-28,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-189,0,0,0,0,0,0,0,
- -36,0,0,0,0,0,0,0,0,0,
- 0,0,-28,0,0,0,0,0,0,0,
+ 0,0,0,-88,-89,-90,0,0,-58,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-88,-89,-90,0,0,-58,0,0,
+ 0,0,0,0,0,0,0,0,-59,0,
+ 0,0,0,0,0,0,-69,0,0,0,
+ 0,0,0,0,0,0,0,0,-60,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-59,0,0,
- 0,0,0,0,0,-69,0,0,0,0,
- 0,0,0,0,0,0,0,-60,0,0,
+ 0,0,0,0,0,0,0,0,-61,0,
+ 0,0,0,0,0,0,-70,0,0,0,
+ 0,0,0,0,0,0,0,0,-62,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-61,0,0,
- 0,0,0,0,0,-70,0,0,0,0,
- 0,0,0,0,0,0,0,-62,0,0,
+ 0,0,0,0,0,0,0,0,-63,0,
+ 0,0,0,0,0,0,-71,0,0,0,
+ 0,0,0,0,0,0,0,0,-64,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-63,0,0,
- 0,0,0,0,0,-71,0,0,0,0,
- 0,0,0,0,0,0,0,-64,0,0,
+ 0,0,0,0,0,0,0,0,-65,0,
+ 0,0,0,0,0,0,-115,0,0,0,
+ 0,0,0,0,0,0,0,0,-66,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-65,0,0,
- 0,0,0,0,0,-115,0,0,0,0,
- 0,0,0,0,0,0,0,-66,0,0,
+ 0,0,0,0,0,0,0,0,-67,0,
+ 0,0,0,0,0,0,-91,0,0,0,
+ 0,0,0,0,0,0,0,0,-68,0,
+ 0,0,0,0,0,0,-134,0,0,0,
+ 0,0,0,0,0,0,0,0,-40,0,
+ 0,0,0,0,0,0,-74,0,0,-92,
+ -93,-94,-83,-95,0,0,0,0,-148,0,
+ 0,0,0,0,0,0,-85,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-67,0,0,
- 0,0,0,0,0,-91,0,0,0,0,
- 0,0,0,0,0,0,0,-68,0,0,
- 0,0,0,0,0,-134,0,0,0,0,
- 0,0,0,0,0,0,0,-40,0,0,
- 0,0,0,0,0,-74,0,0,-92,-93,
- -94,-83,-95,0,0,0,0,-148,0,0,
- 0,0,0,0,0,-85,0,0,0,0,
+ 0,-8,0,0,0,0,0,0,-72,0,
+ 0,0,0,0,-96,0,-97,-98,0,0,
+ 0,0,0,0,-149,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -8,0,0,0,0,0,0,-72,0,0,
- 0,0,0,-96,0,-97,-98,0,0,0,
- 0,0,0,-149,0,0,0,0,0,0,
+ 0,0,0,0,-172,0,0,0,0,0,
+ 0,0,-99,0,0,0,0,0,0,0,
+ 0,0,0,-186,0,0,0,0,0,0,
+ 0,-100,0,0,0,0,0,0,0,0,
+ 0,0,-192,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-172,0,0,0,0,0,0,
- 0,-99,0,0,0,0,0,0,0,0,
- 0,0,-186,0,0,0,0,0,0,0,
- -100,0,0,0,0,0,0,0,0,0,
- 0,-192,0,0,0,0,0,0,0,0,
+ 0,-196,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -196,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-206,
+ -206,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-124,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-124,0,
+ 0,0,0,0,0,0,0,0,-101,-133,
+ -6,0,0,0,0,0,0,0,-57,0,
+ 0,0,0,0,0,0,-102,0,0,0,
+ 0,0,0,0,0,-114,0,0,0,0,
+ 0,0,-152,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-117,0,-108,-78,0,
+ -110,-171,0,0,-33,0,-112,0,0,0,
+ -80,-103,0,-131,-104,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-101,-133,-6,
- 0,0,0,0,0,0,0,-57,0,0,
- 0,0,0,0,0,-102,0,0,0,0,
- 0,0,0,0,-114,0,0,0,0,0,
- 0,-152,0,0,0,0,0,0,0,0,
- 0,0,0,0,-117,0,-108,-78,0,-110,
- -171,0,0,-33,0,-112,0,0,0,-80,
- -103,0,-131,-104,0,0,0,0,0,0,
+ 0,0,0,-105,0,0,0,0,0,0,
+ 0,0,0,-56,0,0,0,0,0,0,
+ 0,-129,0,0,0,0,0,0,0,0,
+ -53,0,0,0,0,0,0,0,-87,0,
+ 0,0,0,0,0,0,-183,-9,0,0,
+ 0,0,0,0,0,-119,-121,-122,0,0,
+ 0,-191,-153,0,0,0,0,0,0,0,
+ -48,0,0,0,0,0,0,0,-164,0,
+ 0,0,0,0,0,0,0,0,0,-106,
+ 0,-107,0,0,-151,0,0,0,0,0,
+ 0,0,0,0,0,-50,0,0,0,0,
+ 0,0,0,-205,0,0,0,0,0,-126,
+ -180,0,-137,-127,0,0,-132,0,0,0,
+ 0,0,-51,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-105,0,0,0,0,0,0,0,
- 0,0,-56,0,0,0,0,0,0,0,
- -129,0,0,0,0,0,0,0,0,-53,
- 0,0,0,0,0,0,0,-87,0,0,
- 0,0,0,0,0,-183,-9,0,0,0,
- 0,0,0,0,-119,-121,-122,0,0,0,
- -191,-153,0,0,0,0,0,0,0,-48,
- 0,0,0,0,0,0,0,-164,0,0,
- 0,0,0,0,0,0,0,0,-106,0,
- -107,0,0,-151,0,0,0,0,0,0,
- 0,0,0,0,-50,0,0,0,0,0,
- 0,0,-205,0,0,0,0,0,-126,-180,
- 0,-137,-127,0,0,-132,0,0,0,0,
- 0,-51,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-13,0,0,0,0,0,0,
- -52,0,0,0,0,0,0,0,-118,0,
- 0,0,-44,0,0,0,0,0,0,0,
- 0,0,0,-10,0,0,0,0,0,0,
- 0,0,-45,0,0,0,0,0,0,0,
- -154,0,0,-46,0,0,0,0,0,0,
- 0,-120,0,0,-47,0,0,0,0,0,
- 0,0,-198,0,0,0,-123,-155,-150,-135,
- 0,-49,0,0,0,0,0,0,0,-37,
- 0,-159,-139,-76,-79,-142,-145,0,-165,-81,
- 0,0,0,0,0,-207,0,0,0,0,
+ 0,0,0,0,-13,0,0,0,0,0,
+ 0,-52,0,0,0,0,0,0,0,-118,
+ 0,0,0,-44,0,0,0,0,0,0,
+ 0,0,0,0,-10,0,0,0,0,0,
+ 0,0,0,-45,0,0,0,0,0,0,
+ 0,-154,0,0,-46,0,0,0,0,0,
+ 0,0,-120,0,0,-47,0,0,0,0,
+ 0,0,0,-198,0,0,0,-123,-155,-150,
+ -135,0,-49,0,0,0,0,0,0,0,
+ -37,0,-159,-139,-76,-79,-142,-145,0,-165,
+ -81,0,0,0,0,0,-207,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-188,0,0,
- -166,-157,-146,0,-11,0,0,0,0,0,
- 0,-12,0,0,0,0,0,0,-16,-178,
- -29,0,-30,0,0,-147,0,-170,0,-197,
- 0,-41,0,0,0,0,0,0,-176,0,
- -208,0,0,0,0,0,0,0,0,-160,
+ 0,0,0,0,0,0,0,0,-188,0,
+ 0,-166,-157,-146,0,-11,0,0,0,0,
+ 0,0,-12,0,0,0,0,0,0,-16,
+ -178,-29,0,-30,0,0,-147,0,-170,0,
+ -197,0,-41,0,0,0,0,0,0,-176,
+ 0,-208,0,0,0,0,0,0,0,0,
+ -160,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-42,0,0,0,0,
+ 0,0,-43,0,0,0,0,0,0,-84,
+ -193,0,0,0,-86,0,-73,0,0,0,
+ 0,0,0,-199,-116,-163,-1,-168,-113,-182,
+ 0,0,0,-177,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-138,0,-140,0,
+ 0,0,-158,0,0,0,0,0,0,0,
+ 0,0,-179,-184,0,0,-128,0,-194,0,
+ 0,0,0,0,0,0,0,-175,0,-141,
+ 0,0,-162,0,0,0,0,0,0,0,
+ 0,0,-190,-201,0,-203,0,-109,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-42,0,0,0,0,0,
- 0,-43,0,0,0,0,0,0,-84,-193,
- 0,0,0,-86,0,-73,0,0,0,0,
- 0,0,-199,-116,-163,-1,-168,-113,-182,0,
- 0,0,-177,0,0,0,0,0,0,0,
- 0,0,0,0,0,-138,0,-140,0,0,
- 0,-158,0,0,0,0,0,0,0,0,
- 0,-179,-184,0,0,-128,0,-194,0,0,
- 0,0,0,0,0,0,-175,0,-141,0,
- 0,-162,0,0,0,0,0,0,0,0,
- 0,-190,-201,0,-203,0,-109,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-136,
- 0,0,-167,0,0,0,0,0,0,0,
- -14,0,0,0,0,0,0,0,0,0,
- 0,0,0,-161,-34,0,-55,0,-156,0,
- -204,0,0,0,0,-185,0,-200,0,0,
- -202,0,0,0,0,0,0,0,0,0,
+ -136,0,0,-167,0,0,0,0,0,0,
+ 0,-14,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-161,-34,0,-55,0,-156,
+ 0,-204,0,0,0,0,-185,0,-200,0,
+ 0,-202,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0
+ 0,0,0,0,0,0
};
};
public final static short baseCheck[] = BaseCheck.baseCheck;
@@ -232,158 +232,158 @@ public class C99ExpressionStatementParserprs implements lpg.lpgjavaruntime.Parse
31,31,31,31,31,52,54,54,54,54,
54,54,54,54,54,54,54,54,66,66,
27,27,63,63,63,63,64,64,64,55,
- 55,56,56,48,48,32,85,85,78,79,
- 79,79,65,65,80,80,81,81,67,67,
- 21,22,22,22,30,47,47,34,34,34,
- 34,37,37,39,35,35,36,40,40,108,
- 108,38,109,109,86,86,25,25,25,25,
- 25,25,25,25,25,82,49,49,49,49,
- 58,58,57,57,57,59,59,50,50,87,
- 87,62,62,60,60,60,42,42,42,43,
- 44,44,44,45,45,45,45,53,53,70,
- 70,70,70,68,88,89,89,90,90,91,
- 91,110,110,111,111,112,112,112,112,114,
- 114,113,113,113,115,115,83,83,1,14,
- 19,15,332,526,44,375,539,335,378,376,
- 453,452,483,454,521,492,74,91,480,134,
- 210,6,433,570,30,465,136,133,135,159,
- 295,14,19,15,332,526,44,375,480,335,
- 378,376,453,452,483,454,521,492,74,277,
- 138,1289,165,341,14,19,15,332,42,44,
- 615,142,145,148,151,53,32,306,249,331,
- 1365,1100,1370,1499,1504,1158,341,14,19,15,
- 332,42,39,279,341,14,19,15,332,42,
- 44,375,23,335,378,376,453,1056,280,570,
- 520,295,14,19,15,332,526,44,375,480,
- 335,378,376,453,452,483,454,521,492,74,
- 277,203,14,19,15,332,526,44,375,480,
- 335,378,376,453,452,483,454,521,492,74,
- 277,552,23,104,137,649,341,14,19,15,
- 332,526,44,375,279,335,378,376,453,452,
- 483,454,521,492,74,91,270,323,22,280,
- 619,1500,1369,163,281,216,1182,218,1321,220,
- 221,226,259,265,1088,498,268,1506,177,282,
- 155,14,19,15,332,526,44,375,1518,335,
- 378,376,453,452,483,454,521,492,74,1096,
- 645,235,207,271,236,647,49,331,407,14,
- 19,15,332,526,44,375,1556,335,378,376,
- 453,452,483,454,521,492,74,1141,179,14,
- 19,15,332,526,44,375,443,335,378,376,
- 453,452,483,454,521,492,74,1349,1448,525,
- 285,1517,237,318,14,19,15,332,526,44,
- 375,323,335,378,376,453,452,483,454,521,
- 492,74,277,341,14,19,15,332,526,44,
- 375,16,335,378,376,453,452,483,454,521,
- 492,74,92,429,459,187,286,193,341,14,
- 19,15,332,526,44,375,283,335,378,376,
- 453,452,483,454,521,492,74,85,341,14,
- 19,15,332,526,44,375,323,335,378,376,
- 453,452,483,454,521,492,74,84,341,14,
- 19,15,332,526,44,375,1209,335,378,376,
- 453,452,483,454,521,492,74,83,341,14,
- 19,15,332,526,44,375,323,335,378,376,
- 453,452,483,454,521,492,74,82,341,14,
- 19,15,332,526,44,375,1211,335,378,376,
- 453,452,483,454,521,492,74,81,341,14,
- 19,15,332,526,44,375,323,335,378,376,
- 453,452,483,454,521,492,74,80,341,14,
- 19,15,332,526,44,375,21,335,378,376,
- 453,452,483,454,521,492,74,79,341,14,
- 19,15,332,526,44,375,323,335,378,376,
- 453,452,483,454,521,492,74,78,341,14,
- 19,15,332,526,44,375,269,335,378,376,
- 453,452,483,454,521,492,74,77,341,14,
- 19,15,332,526,44,375,255,335,378,376,
- 453,452,483,454,521,492,74,76,341,14,
- 19,15,332,526,44,375,54,335,378,376,
- 453,452,483,454,521,492,74,75,341,14,
- 19,15,332,42,44,806,211,134,210,591,
- 601,606,441,608,136,133,135,159,341,14,
- 19,15,332,526,44,375,558,335,378,376,
- 453,452,483,454,521,492,74,1459,138,1332,
- 165,341,14,19,15,332,42,38,597,142,
- 145,148,151,1347,506,1587,607,416,1365,1100,
- 1370,1499,1504,1158,341,14,19,15,332,526,
- 44,375,20,335,378,376,453,452,483,454,
- 521,492,74,1523,341,14,19,15,332,42,
- 44,375,57,335,378,376,453,452,483,454,
- 521,492,93,341,14,19,15,332,42,44,
- 375,87,335,378,376,453,452,483,454,521,
- 492,93,341,14,19,15,332,42,44,375,
- 1582,335,378,376,453,452,483,454,521,492,
- 93,341,14,19,15,332,42,44,375,209,
- 335,378,376,453,452,483,454,521,492,93,
- 341,14,19,15,332,42,44,375,1583,335,
- 378,376,453,452,483,454,521,492,93,341,
- 14,19,15,332,42,44,375,200,335,378,
- 376,453,452,483,454,521,492,73,283,65,
- 363,14,19,15,332,40,201,1348,341,14,
- 19,15,332,42,44,375,496,335,378,376,
- 453,452,483,1123,270,227,14,19,15,332,
- 42,35,536,215,1182,218,1321,220,221,226,
- 1552,263,1088,498,268,615,259,12,449,243,
- 568,649,273,1610,277,340,597,270,1243,260,
- 466,33,456,584,303,274,215,1182,218,1321,
- 220,221,226,272,263,1088,498,268,288,1440,
- 238,134,210,372,251,210,257,89,144,133,
- 135,159,766,341,14,19,15,332,42,44,
- 375,597,335,378,376,453,452,483,454,1104,
- 341,14,19,15,332,42,44,375,54,335,
- 378,376,453,452,1038,240,73,341,14,19,
- 15,332,42,37,1513,12,12,12,726,134,
- 210,649,654,1536,1538,1569,137,133,135,159,
- 341,14,19,15,332,42,44,375,656,894,
- 215,1182,218,1321,220,221,226,225,290,142,
- 139,371,165,1450,227,14,19,15,332,42,
- 35,143,146,149,152,341,14,19,15,332,
- 42,44,375,73,335,378,376,897,244,579,
- 615,1513,12,573,196,198,323,1423,1558,1646,
- 1542,556,341,14,19,15,332,42,44,375,
- 228,335,378,932,250,210,275,215,1182,218,
- 1321,220,221,226,385,14,19,15,332,33,
- 1450,341,14,19,15,332,42,44,375,373,
- 335,378,951,341,14,19,15,332,42,44,
- 375,1446,335,849,341,14,19,15,332,42,
- 36,197,198,341,14,19,15,332,42,44,
- 375,624,335,850,341,14,19,15,332,42,
- 44,375,374,335,851,341,14,19,15,332,
- 42,44,375,349,335,853,224,390,211,597,
- 106,1513,341,14,19,15,332,42,44,375,
- 546,896,629,12,540,107,12,12,846,610,
- 495,1572,1514,239,1613,411,69,215,1182,218,
- 1321,220,221,226,273,270,134,210,183,270,
- 1440,134,210,141,133,135,159,451,147,133,
- 135,159,263,1088,498,268,263,1088,498,268,
- 216,1182,218,1321,220,221,226,140,656,165,
- 262,657,323,573,766,341,14,19,15,332,
- 42,35,341,14,19,15,332,42,34,12,
- 323,12,276,12,250,210,590,308,625,308,
- 659,308,341,14,19,15,332,42,47,597,
- 222,50,195,1709,195,1709,195,251,210,1648,
- 636,1360,87,1360,87,1360,87,1709,1166,1709,
- 581,1567,581,241,581,341,14,19,15,332,
- 42,46,341,14,19,15,332,42,45,501,
- 645,477,1709,646,507,686,272,14,19,15,
- 332,42,43,211,609,629,250,629,573,629,
- 134,210,826,597,456,134,210,150,133,135,
- 159,194,153,133,135,159,611,1039,611,250,
- 210,182,611,26,826,185,826,242,1709,87,
- 826,1651,609,629,1709,1709,573,316,417,195,
- 826,195,1376,1587,255,195,826,595,1470,617,
- 1470,1246,611,1350,1470,1039,1103,250,210,184,
- 826,1039,597,597,191,323,191,564,251,210,
- 191,1362,1634,1515,1634,195,1369,1519,1634,328,
- 548,451,255,1709,1470,227,287,289,255,1246,
- 627,1350,270,617,1103,1585,1709,1350,826,1709,
- 191,385,14,19,15,332,32,1553,1634,265,
- 1088,498,268,1039,643,12,206,12,858,628,
- 1369,556,826,456,1641,456,629,826,629,1198,
- 1421,629,1709,1709,1709,1709,1709,195,1709,1709,
- 255,231,1039,1709,1709,1709,1470,1422,87,1350,
- 87,1709,202,1709,203,1709,888,278,1101,1709,
- 206,1709,192,1709,1709,1709,1709,1709,1709,256,
- 1709,1709,1709,1418,1421,1709,0,17,179,0,
- 18,178,0,1,1932,0,1,1943,0
+ 55,56,56,48,48,48,32,85,85,78,
+ 79,79,79,65,65,80,80,81,81,67,
+ 67,21,22,22,22,30,47,47,34,34,
+ 34,34,37,37,39,35,35,36,40,40,
+ 108,108,38,109,109,86,86,25,25,25,
+ 25,25,25,25,25,25,82,49,49,49,
+ 49,58,58,57,57,57,59,59,50,50,
+ 87,87,62,62,60,60,60,42,42,42,
+ 43,44,44,44,45,45,45,45,53,53,
+ 70,70,70,70,68,88,89,89,90,90,
+ 91,91,110,110,111,111,112,112,112,112,
+ 114,114,113,113,113,115,115,83,83,1,
+ 14,19,15,333,527,44,376,139,336,379,
+ 377,454,453,484,455,522,493,74,91,155,
+ 134,211,42,831,415,118,192,136,133,135,
+ 159,554,14,19,15,333,527,44,376,481,
+ 336,379,377,454,453,484,455,522,493,74,
+ 278,138,1290,165,612,14,19,15,333,42,
+ 44,616,142,145,148,151,209,13,307,56,
+ 332,1366,1101,1371,1500,1505,1159,612,14,19,
+ 15,333,42,39,280,612,14,19,15,333,
+ 42,44,376,23,336,379,377,454,1057,281,
+ 415,521,554,14,19,15,333,527,44,376,
+ 481,336,379,377,454,453,484,455,522,493,
+ 74,278,434,14,19,15,333,527,44,376,
+ 481,336,379,377,454,453,484,455,522,493,
+ 74,278,429,107,187,183,626,612,14,19,
+ 15,333,527,44,376,280,336,379,377,454,
+ 453,484,455,522,493,74,91,271,472,22,
+ 281,673,1501,1370,537,282,217,1183,219,1322,
+ 221,222,227,374,266,1089,499,269,1507,279,
+ 283,368,14,19,15,333,527,44,376,1519,
+ 336,379,377,454,453,484,455,522,493,74,
+ 1097,479,135,208,272,237,754,702,332,696,
+ 14,19,15,333,527,44,376,1557,336,379,
+ 377,454,453,484,455,522,493,74,1142,401,
+ 14,19,15,333,527,44,376,708,336,379,
+ 377,454,453,484,455,522,493,74,1350,1449,
+ 526,286,1518,238,583,14,19,15,333,527,
+ 44,376,472,336,379,377,454,453,484,455,
+ 522,493,74,278,612,14,19,15,333,527,
+ 44,376,16,336,379,377,454,453,484,455,
+ 522,493,74,92,724,743,212,287,193,612,
+ 14,19,15,333,527,44,376,284,336,379,
+ 377,454,453,484,455,522,493,74,85,612,
+ 14,19,15,333,527,44,376,472,336,379,
+ 377,454,453,484,455,522,493,74,84,612,
+ 14,19,15,333,527,44,376,1210,336,379,
+ 377,454,453,484,455,522,493,74,83,612,
+ 14,19,15,333,527,44,376,472,336,379,
+ 377,454,453,484,455,522,493,74,82,612,
+ 14,19,15,333,527,44,376,1212,336,379,
+ 377,454,453,484,455,522,493,74,81,612,
+ 14,19,15,333,527,44,376,472,336,379,
+ 377,454,453,484,455,522,493,74,80,612,
+ 14,19,15,333,527,44,376,21,336,379,
+ 377,454,453,484,455,522,493,74,79,612,
+ 14,19,15,333,527,44,376,472,336,379,
+ 377,454,453,484,455,522,493,74,78,612,
+ 14,19,15,333,527,44,376,270,336,379,
+ 377,454,453,484,455,522,493,74,77,612,
+ 14,19,15,333,527,44,376,257,336,379,
+ 377,454,453,484,455,522,493,74,76,612,
+ 14,19,15,333,527,44,376,286,336,379,
+ 377,454,453,484,455,522,493,74,75,612,
+ 14,19,15,333,42,44,807,260,134,211,
+ 210,492,512,166,569,136,133,135,159,612,
+ 14,19,15,333,527,44,376,214,336,379,
+ 377,454,453,484,455,522,493,74,1460,138,
+ 1333,165,612,14,19,15,333,42,38,117,
+ 142,145,148,151,1348,375,1588,440,508,1366,
+ 1101,1371,1500,1505,1159,612,14,19,15,333,
+ 527,44,376,20,336,379,377,454,453,484,
+ 455,522,493,74,1524,612,14,19,15,333,
+ 42,44,376,58,336,379,377,454,453,484,
+ 455,522,493,93,612,14,19,15,333,42,
+ 44,376,106,336,379,377,454,453,484,455,
+ 522,493,93,612,14,19,15,333,42,44,
+ 376,1583,336,379,377,454,453,484,455,522,
+ 493,93,612,14,19,15,333,42,44,376,
+ 210,336,379,377,454,453,484,455,522,493,
+ 93,612,14,19,15,333,42,44,376,1584,
+ 336,379,377,454,453,484,455,522,493,93,
+ 612,14,19,15,333,42,44,376,201,336,
+ 379,377,454,453,484,455,522,493,73,592,
+ 396,640,14,19,15,333,40,202,1349,612,
+ 14,19,15,333,42,44,376,218,336,379,
+ 377,454,453,484,1124,271,463,14,19,15,
+ 333,42,35,840,216,1183,219,1322,221,222,
+ 227,1553,264,1089,499,269,705,260,6,469,
+ 244,59,626,274,1611,470,341,117,271,1244,
+ 261,782,562,457,331,380,275,216,1183,219,
+ 1322,221,222,227,273,264,1089,499,269,289,
+ 1441,239,134,211,413,252,211,258,89,144,
+ 133,135,159,767,612,14,19,15,333,42,
+ 44,376,117,336,379,377,454,453,484,455,
+ 1105,612,14,19,15,333,42,44,376,286,
+ 336,379,377,454,453,1039,241,152,612,14,
+ 19,15,333,42,37,1514,6,6,6,727,
+ 134,211,626,646,1537,1539,1570,137,133,135,
+ 159,612,14,19,15,333,42,44,376,630,
+ 895,216,1183,219,1322,221,222,227,226,291,
+ 29,139,531,165,1451,463,14,19,15,333,
+ 42,35,143,146,149,152,612,14,19,15,
+ 333,42,44,376,152,336,379,377,898,245,
+ 299,705,1514,6,290,197,199,472,1424,1559,
+ 1647,1543,557,612,14,19,15,333,42,44,
+ 376,229,336,379,933,251,211,276,216,1183,
+ 219,1322,221,222,227,668,14,19,15,333,
+ 33,1451,612,14,19,15,333,42,44,376,
+ 563,336,379,952,612,14,19,15,333,42,
+ 44,376,1447,336,850,612,14,19,15,333,
+ 42,36,198,199,612,14,19,15,333,42,
+ 44,376,588,336,851,612,14,19,15,333,
+ 42,44,376,620,336,852,612,14,19,15,
+ 333,42,44,376,72,336,854,225,624,260,
+ 117,449,1514,612,14,19,15,333,42,44,
+ 376,491,897,309,6,844,327,6,6,847,
+ 568,795,1573,1515,240,1614,412,350,216,1183,
+ 219,1322,221,222,227,274,271,134,211,183,
+ 271,1441,134,211,141,133,135,159,452,147,
+ 133,135,159,264,1089,499,269,264,1089,499,
+ 269,217,1183,219,1322,221,222,227,140,630,
+ 165,263,682,472,290,767,612,14,19,15,
+ 333,42,35,612,14,19,15,333,42,34,
+ 6,472,6,277,6,251,211,340,309,674,
+ 309,676,309,612,14,19,15,333,42,47,
+ 117,223,683,196,1710,196,1710,196,252,211,
+ 1649,505,1361,87,1361,87,1361,87,1710,1167,
+ 1710,582,1568,582,242,582,612,14,19,15,
+ 333,42,46,612,14,19,15,333,42,45,
+ 808,479,478,1710,647,821,687,525,14,19,
+ 15,333,42,43,260,595,309,496,309,290,
+ 309,134,211,827,117,457,134,211,150,133,
+ 135,159,194,153,133,135,159,46,1040,94,
+ 251,211,182,142,26,827,185,827,243,1710,
+ 87,827,1652,595,309,1710,1710,290,317,597,
+ 196,827,196,1377,1588,256,196,827,376,1471,
+ 501,1471,1247,238,1351,1471,1040,1104,251,211,
+ 184,827,1040,117,117,191,472,191,530,252,
+ 211,191,1363,1635,1516,1635,196,1370,1520,1635,
+ 329,549,452,256,1710,1471,228,288,290,256,
+ 1247,48,1351,271,501,1104,1586,1710,1351,827,
+ 1710,191,668,14,19,15,333,32,1554,1635,
+ 266,1089,499,269,1040,190,6,207,6,859,
+ 539,1370,308,827,457,1642,457,309,827,309,
+ 1199,1422,309,1710,1710,1710,1710,1710,196,1710,
+ 1710,256,232,1040,1710,1710,1710,1471,1423,87,
+ 1351,87,1710,203,1710,204,1710,889,279,1102,
+ 1710,207,1710,192,1710,1710,1710,1710,1710,1710,
+ 257,1710,1710,1710,1419,1422,1710,0,17,179,
+ 0,18,178,0,1,1934,0,1,1945,0
};
};
public final static char baseAction[] = BaseAction.baseAction;
@@ -394,81 +394,99 @@ public class C99ExpressionStatementParserprs implements lpg.lpgjavaruntime.Parse
public interface TermCheck {
public final static byte termCheck[] = {0,
0,1,2,3,4,0,6,7,8,9,
- 10,0,12,13,14,15,16,17,18,19,
- 20,21,0,23,24,25,26,27,28,0,
- 1,0,0,4,12,30,36,37,38,39,
- 40,41,42,43,44,45,46,47,0,0,
- 1,22,0,0,1,3,0,4,58,59,
- 60,8,9,10,0,1,2,3,0,1,
- 2,3,0,1,2,11,23,24,25,26,
- 27,28,51,52,53,54,0,55,0,36,
- 37,38,39,40,41,42,43,44,45,46,
- 47,49,50,0,56,0,0,51,52,53,
- 54,58,59,60,8,9,10,69,70,71,
- 72,73,74,75,76,77,78,55,0,23,
- 24,25,26,27,28,30,0,51,52,53,
- 54,0,36,37,38,39,40,41,42,43,
- 44,45,46,47,0,1,2,3,4,5,
- 6,7,0,22,61,62,12,13,14,15,
- 16,17,18,19,20,21,0,23,0,1,
- 2,3,4,5,6,7,0,11,34,3,
- 12,13,14,15,16,17,18,19,20,21,
- 64,23,0,1,2,3,4,5,6,7,
- 0,0,34,3,12,13,14,15,16,17,
- 18,19,20,21,22,63,0,1,2,3,
- 4,5,6,7,0,49,50,35,12,13,
- 14,15,16,17,18,19,20,21,0,0,
- 1,2,3,4,0,6,7,3,0,0,
- 34,12,13,14,15,16,17,18,19,20,
- 21,0,1,2,3,4,0,6,7,31,
- 32,5,0,12,13,14,15,16,17,18,
- 19,20,21,22,0,1,2,3,4,65,
- 6,7,0,49,50,29,12,13,14,15,
- 16,17,18,19,20,21,22,0,1,2,
- 3,4,0,6,7,67,68,5,79,12,
- 13,14,15,16,17,18,19,20,21,22,
- 0,1,2,3,4,63,6,7,0,1,
- 2,29,12,13,14,15,16,17,18,19,
- 20,21,0,1,2,3,4,65,6,7,
- 0,0,0,0,12,13,14,15,16,17,
- 18,19,20,21,0,1,2,3,4,0,
- 6,7,22,0,22,22,12,13,14,15,
- 16,17,18,19,20,21,0,1,2,3,
- 4,22,6,7,0,0,0,1,12,13,
- 14,15,16,17,18,19,20,21,0,0,
- 2,3,0,5,2,64,8,9,10,11,
- 0,1,0,11,4,13,14,5,0,33,
- 2,23,24,25,26,27,28,29,0,11,
- 2,3,22,5,0,0,8,9,10,11,
- 6,7,30,8,9,10,61,62,0,0,
- 48,23,24,25,26,27,28,29,23,24,
- 25,26,27,28,0,0,0,0,66,57,
- 0,0,8,9,10,0,0,12,8,9,
- 10,6,7,0,8,9,10,23,24,25,
- 26,27,28,23,24,25,26,27,28,23,
- 24,25,26,27,28,0,1,2,0,0,
- 5,2,0,5,5,0,11,2,3,0,
- 11,0,1,2,3,0,11,0,1,80,
- 5,4,11,0,29,2,3,0,29,0,
- 1,0,0,4,11,8,9,10,0,22,
- 8,9,10,0,29,30,8,9,10,0,
- 0,8,9,10,0,57,0,8,9,10,
- 0,5,8,9,10,0,0,0,0,0,
- 0,3,6,7,0,5,0,1,0,5,
- 4,31,32,0,0,2,0,0,0,11,
- 34,31,32,5,11,0,31,32,31,32,
- 5,33,0,29,0,35,0,5,0,1,
- 0,1,4,0,4,0,0,11,0,33,
- 33,0,0,35,11,56,48,0,0,0,
- 0,0,0,0,30,0,0,35,0,0,
- 56,0,0,0,0,30,30,0,0,0,
- 0,0,57,0,48,0,0,0,0,0,
+ 10,11,0,13,14,15,16,17,18,19,
+ 20,21,22,23,24,25,26,27,0,29,
+ 30,31,32,33,34,35,36,37,38,39,
+ 40,0,42,43,44,0,1,0,3,0,
+ 5,6,7,8,9,0,28,0,0,14,
+ 15,16,17,18,6,7,8,55,56,57,
+ 58,0,1,2,29,30,31,32,33,34,
+ 35,36,37,38,39,40,45,42,43,44,
+ 0,46,47,0,1,0,3,50,5,6,
+ 7,8,9,48,49,0,0,14,15,16,
+ 17,18,55,56,57,58,0,0,1,13,
+ 3,5,29,30,31,32,33,34,35,36,
+ 37,38,39,40,0,42,43,44,0,46,
+ 47,0,1,5,3,28,5,6,7,8,
+ 9,0,1,2,0,14,15,16,17,18,
+ 55,56,57,58,0,0,1,51,3,0,
+ 29,30,31,32,33,34,35,36,37,38,
+ 39,40,0,42,43,44,0,46,47,0,
+ 1,0,3,28,5,6,7,8,9,61,
+ 66,10,11,14,15,16,17,18,0,0,
+ 59,0,4,0,1,4,3,0,29,30,
+ 31,32,33,34,35,36,37,38,39,40,
+ 13,42,43,44,80,46,47,0,1,0,
+ 3,28,5,6,7,8,9,65,62,63,
+ 0,14,15,16,17,18,0,48,49,0,
+ 4,53,54,4,53,54,29,30,31,32,
+ 33,34,35,36,37,38,39,40,0,42,
+ 43,44,0,46,47,0,1,0,3,0,
+ 12,6,7,8,9,6,7,8,0,14,
+ 15,16,17,18,6,7,8,0,0,53,
+ 54,0,5,5,29,30,31,32,33,34,
+ 35,36,37,38,39,40,0,42,43,44,
+ 0,0,6,7,8,9,6,7,8,0,
+ 14,15,16,17,18,6,7,8,41,0,
+ 1,2,45,4,46,29,30,31,32,33,
+ 34,35,36,37,38,39,40,0,1,2,
+ 3,4,5,0,0,0,9,10,11,0,
+ 13,6,7,8,10,11,19,20,21,22,
+ 23,24,25,26,27,0,1,2,0,4,
+ 0,1,2,3,4,5,0,12,0,9,
+ 10,11,0,13,0,1,0,3,51,19,
+ 20,21,22,23,24,25,26,27,0,1,
+ 2,0,4,0,1,2,3,4,5,0,
+ 12,68,69,10,11,66,13,0,0,10,
+ 11,51,19,20,21,22,23,24,25,26,
+ 27,28,0,1,2,3,4,5,0,0,
+ 2,0,10,11,5,13,5,65,0,46,
+ 12,19,20,21,22,23,24,25,26,27,
+ 0,0,2,45,4,0,1,2,3,4,
+ 0,1,12,3,0,10,11,0,13,5,
+ 41,0,41,51,19,20,21,22,23,24,
+ 25,26,27,45,0,1,2,3,4,0,
+ 0,2,0,4,10,11,0,13,0,48,
+ 49,12,47,19,20,21,22,23,24,25,
+ 26,27,28,0,1,2,3,4,28,48,
+ 49,0,0,10,11,61,13,0,0,62,
+ 63,0,19,20,21,22,23,24,25,26,
+ 27,28,0,1,2,3,4,0,50,2,
+ 28,0,10,11,0,13,0,1,4,12,
+ 64,19,20,21,22,23,24,25,26,27,
+ 28,0,1,2,3,4,48,49,0,0,
+ 59,10,11,0,13,0,1,60,3,0,
+ 19,20,21,22,23,24,25,26,27,0,
+ 1,2,3,4,50,0,50,28,0,10,
+ 11,28,13,0,1,64,3,12,19,20,
+ 21,22,23,24,25,26,27,0,1,2,
+ 3,4,0,0,45,0,0,10,11,0,
+ 13,0,0,1,12,0,19,20,21,22,
+ 23,24,25,26,27,0,1,2,3,4,
+ 0,0,0,0,0,10,11,0,13,5,
+ 0,0,5,0,19,20,21,22,23,24,
+ 25,26,27,0,52,2,45,4,5,6,
+ 7,8,9,60,59,12,0,14,15,16,
+ 17,18,0,0,2,41,4,5,6,7,
+ 8,9,45,0,12,0,14,15,16,17,
+ 18,60,0,0,41,12,0,0,61,0,
+ 0,70,71,72,73,74,75,76,77,78,
+ 79,0,0,41,0,0,0,6,7,8,
+ 9,0,0,0,0,14,15,16,17,18,
+ 6,7,8,9,0,52,0,0,14,15,
+ 16,17,18,6,7,8,9,0,0,0,
+ 0,14,15,16,17,18,6,7,8,9,
+ 0,0,2,0,14,15,16,17,18,0,
+ 1,2,12,0,5,2,0,0,5,19,
+ 20,12,0,0,0,12,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,55,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 41,0,52,0,41,0,0,0,0,0,
+ 0,0,0,0,0,0,0,67,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0
+ 0,0,0,0,0,0,0
};
};
public final static byte termCheck[] = TermCheck.termCheck;
@@ -476,78 +494,96 @@ public class C99ExpressionStatementParserprs implements lpg.lpgjavaruntime.Parse
public interface TermAction {
public final static char termAction[] = {0,
- 1709,613,1439,1425,614,88,1304,1167,1920,1921,
- 1922,1,1432,1621,1274,1040,1719,1720,1721,1722,
- 881,386,64,1871,1872,1870,1923,1873,1869,1709,
- 1889,59,1709,1890,1225,593,1876,1881,1880,1878,
- 1879,1877,1882,1883,1875,1884,1885,1886,42,1709,
- 1944,1175,48,1709,1888,1492,61,1887,866,852,
- 334,1920,1921,1922,258,1932,1072,1,1709,1932,
- 1343,1239,1,1932,1343,500,1871,1872,1870,1923,
- 1873,1869,1335,1324,1313,1293,60,1019,1709,1876,
- 1881,1880,1878,1879,1877,1882,1883,1875,1884,1885,
- 1886,1485,1452,62,818,252,128,1335,1324,1313,
- 1293,866,852,334,1920,1921,1922,798,778,758,
- 738,718,678,698,658,638,618,981,1709,1871,
- 1872,1870,1923,1873,1869,1639,68,1335,1324,1313,
- 1293,41,1876,1881,1880,1878,1879,1877,1882,1883,
- 1875,1884,1885,1886,1,1726,1439,1065,1727,1712,
- 1304,1167,66,1087,1281,1252,1432,1621,1274,1040,
- 1719,1720,1721,1722,881,386,267,528,1709,1726,
- 1439,1214,1727,1712,1304,1167,50,500,1711,1492,
- 1432,1621,1274,1040,1719,1720,1721,1722,881,386,
- 1150,904,1,1726,1439,1425,1727,27,1304,1167,
- 1709,1709,1711,1090,1432,1621,1274,1040,1719,1720,
- 1721,1722,881,386,1367,394,1709,1726,1439,1425,
- 1727,1712,1304,1167,70,1485,1452,27,1432,1621,
- 1274,1040,1719,1720,1721,1722,881,386,54,1709,
- 1,1,1,1,49,1,1,1492,72,1709,
- 1711,1,1,1,1,1,1,1,1,1,
- 1,1709,1726,1439,1425,1727,1,1304,1167,1190,
- 1352,90,67,1432,1621,1274,1040,1719,1720,1721,
- 1722,881,386,1087,1,1726,1439,1425,1727,1048,
- 1304,1167,71,1485,1452,90,1432,1621,1274,1040,
- 1719,1720,1721,1722,881,386,1367,1709,1726,1439,
- 1425,1727,1709,1304,1167,1133,1637,1714,2016,1432,
- 1621,1274,1040,1719,1720,1721,1722,881,386,1367,
- 1709,1726,1439,1425,1727,394,1304,1167,1,1932,
- 1343,1713,1432,1621,1274,1040,1719,1720,1721,1722,
- 881,386,1709,1726,1441,1425,1727,1048,1304,1167,
- 1709,69,187,186,1432,1621,1274,1040,1719,1720,
- 1721,1722,881,386,1709,1726,1443,1425,1727,188,
- 1304,1167,1087,1709,1242,1363,1432,1621,1274,1040,
- 1719,1720,1721,1722,881,386,1,1726,1439,1425,
- 1727,1366,1304,1167,1709,63,1,1706,1432,1621,
- 1274,1040,1719,1720,1721,1722,881,386,17,1709,
- 1697,1697,31,1697,1094,1150,179,179,179,1697,
- 1709,1889,1709,1635,1890,1733,1734,1718,266,1963,
- 1085,179,179,179,179,179,179,1697,18,500,
- 1700,1700,1176,1700,51,129,178,178,178,1700,
- 838,363,1233,1920,1921,1922,1281,1252,1709,1709,
- 409,178,178,178,178,178,178,1700,1871,1872,
- 1870,1923,1873,1869,130,65,1709,1709,333,1717,
- 131,1709,1920,1921,1922,53,132,1225,1920,1921,
- 1922,838,363,1709,1920,1921,1922,1871,1872,1870,
- 1923,1873,1869,1871,1872,1870,1923,1873,1869,1871,
- 1872,1870,1923,1873,1869,1,1703,1072,1709,1,
- 1714,1364,1709,1718,1714,261,500,1364,1,1709,
- 500,264,1932,1072,1239,1709,500,1709,1889,1696,
- 1714,1890,500,264,1713,1364,1239,246,1713,1709,
- 1738,1709,1709,1739,500,1,1,1,247,1177,
- 1920,1921,1922,245,1713,1461,1,1,1,248,
- 58,1920,1921,1922,249,1717,1709,1920,1921,1922,
- 57,1712,1920,1921,1922,56,52,55,1,208,
- 1,1090,838,363,1,190,205,1889,1709,1714,
- 1890,1190,1352,219,1709,1240,1,1,1709,924,
- 1711,1190,1352,1716,500,1,1190,1352,1190,1352,
- 1718,1963,1,1713,28,190,284,189,1709,1889,
- 204,455,1890,217,455,28,204,962,199,1963,
- 1962,1709,1709,1715,500,943,1091,1709,1709,1709,
- 1709,1709,1709,1709,431,1709,1709,189,1709,1709,
- 573,1709,1709,1709,1709,1736,2667,1709,1709,1709,
- 1709,1709,1717,1709,1181,1709,1709,1709,1709,1709,
- 1709,1709,1709,1709,1709,1709,1709,1709,1709,1709,
- 1709,1709,1709,1000
+ 1710,614,1440,615,1426,1,1922,1923,1924,1872,
+ 1305,1168,59,1433,1873,1871,1925,1874,1870,1622,
+ 1275,1041,1720,1721,1722,1723,882,387,41,1877,
+ 1882,1881,1879,1880,1878,1883,1884,1876,1885,1886,
+ 1887,88,867,853,335,1710,1,1,1,1710,
+ 190,1,1,1,1,54,1088,61,247,1,
+ 1,1,1,1,1,1,1,1336,1325,1314,
+ 1294,1,1934,1344,1,1,1,1,1,1,
+ 1,1,1,1,1,1,594,1,1,1,
+ 1710,190,1905,1710,1,1710,1,1965,190,1,
+ 1,1,1,1191,1353,60,64,1,1,1,
+ 1,1,1336,1325,1314,1294,1710,1710,1890,1226,
+ 1891,1713,1,1,1,1,1,1,1,1,
+ 1,1,1,1,70,1,1,1,1710,190,
+ 1905,1710,1,1719,1,1176,190,1,1,1,
+ 1,1,1934,1344,1710,1,1,1,1,1,
+ 1336,1325,1314,1294,1710,1710,1890,1712,1891,1710,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,68,1,1,1,62,190,1905,1710,
+ 1,51,1,1177,189,1,1,1,1,1718,
+ 1049,839,364,1,1,1,1,1,48,58,
+ 982,50,1493,1710,1890,1493,1891,65,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1226,1,1,1,1697,189,1905,1710,1,1710,
+ 1,1178,190,1,1,1,1,1151,1282,1253,
+ 1710,1,1,1,1,1,49,1191,1353,1710,
+ 1493,1486,1453,1091,1486,1453,1,1,1,1,
+ 1,1,1,1,1,1,1,1,268,1,
+ 1,1,1710,190,1905,1710,1889,1710,1888,1710,
+ 501,1922,1923,1924,1872,1922,1923,1924,248,1873,
+ 1871,1925,1874,1870,1,1,1,1710,1710,1486,
+ 1453,1710,1715,1717,1877,1882,1881,1879,1880,1878,
+ 1883,1884,1876,1885,1886,1887,128,867,853,335,
+ 246,1710,1922,1923,1924,1872,1922,1923,1924,249,
+ 1873,1871,1925,1874,1870,1922,1923,1924,1714,1710,
+ 1934,1344,1462,1240,1716,1877,1882,1881,1879,1880,
+ 1878,1883,1884,1876,1885,1886,1887,1,1727,1440,
+ 1728,1066,1713,72,53,250,529,1305,1168,71,
+ 1433,1922,1923,1924,839,364,1622,1275,1041,1720,
+ 1721,1722,1723,882,387,259,1934,1073,1710,1,
+ 1710,1727,1440,1728,1215,1713,1710,501,1710,905,
+ 1305,1168,69,1433,1710,1739,1710,1740,1712,1622,
+ 1275,1041,1720,1721,1722,1723,882,387,265,1934,
+ 1073,1710,1240,1,1727,1440,1728,1426,27,52,
+ 501,1134,1638,1305,1168,1049,1433,1710,253,839,
+ 364,1712,1622,1275,1041,1720,1721,1722,1723,882,
+ 387,1368,1710,1727,1440,1728,1426,1713,267,1,
+ 1086,1710,1305,1168,90,1433,1715,1151,28,27,
+ 501,1622,1275,1041,1720,1721,1722,1723,882,387,
+ 262,57,1365,1640,1,1710,1,1,1,1,
+ 206,1890,501,1891,1,1,1,63,1,1719,
+ 90,56,1714,1712,1,1,1,1,1,1,
+ 1,1,1,432,1710,1727,1440,1728,1426,265,
+ 1710,1365,1710,1240,1305,1168,66,1433,1,1191,
+ 1353,501,2018,1622,1275,1041,1720,1721,1722,1723,
+ 882,387,1088,1,1727,1440,1728,1426,1088,1191,
+ 1353,1710,187,1305,1168,1718,1433,209,55,1282,
+ 1253,1710,1622,1275,1041,1720,1721,1722,1723,882,
+ 387,1368,1710,1727,1440,1728,1426,220,1964,1241,
+ 1243,67,1305,1168,1,1433,1,1707,1091,501,
+ 395,1622,1275,1041,1720,1721,1722,1723,882,387,
+ 1368,1710,1727,1440,1728,1426,1191,1353,1710,186,
+ 1020,1305,1168,188,1433,1710,1890,944,1891,28,
+ 1622,1275,1041,1720,1721,1722,1723,882,387,1710,
+ 1727,1442,1728,1426,1965,218,1965,1364,1710,1305,
+ 1168,1367,1433,205,456,395,456,501,1622,1275,
+ 1041,1720,1721,1722,1723,882,387,1710,1727,1444,
+ 1728,1426,1710,1710,1737,200,1710,1305,1168,1710,
+ 1433,205,1710,1946,925,1710,1622,1275,1041,1720,
+ 1721,1722,1723,882,387,1,1727,1440,1728,1426,
+ 1710,42,1710,1710,1,1305,1168,1710,1433,1715,
+ 1710,1710,1719,1710,1622,1275,1041,1720,1721,1722,
+ 1723,882,387,17,1092,1698,2672,1698,1698,179,
+ 179,179,179,574,1001,1698,1710,179,179,179,
+ 179,179,18,1710,1701,1714,1701,1701,178,178,
+ 178,178,1234,285,1701,1710,178,178,178,178,
+ 178,819,1710,1710,1698,963,1710,1710,1718,1710,
+ 1710,799,779,759,739,719,679,699,659,639,
+ 619,129,1710,1701,1710,1710,1710,1922,1923,1924,
+ 1872,1710,1710,1710,130,1873,1871,1925,1874,1870,
+ 1922,1923,1924,1872,1710,1182,1710,131,1873,1871,
+ 1925,1874,1870,1922,1923,1924,1872,1710,1710,1710,
+ 132,1873,1871,1925,1874,1870,1922,1923,1924,1872,
+ 31,1710,1095,1710,1873,1871,1925,1874,1870,1,
+ 1704,1073,1636,1,1715,1365,1710,1710,1715,1734,
+ 1735,501,1710,1710,1710,501,1710,1710,1710,1710,
+ 1710,1710,1710,1710,1710,1710,1710,1710,1710,1710,
+ 1710,1710,1710,1710,1710,1710,1710,1710,1710,1710,
+ 1714,1710,410,1710,1714,1710,1710,1710,1710,1710,
+ 1710,1710,1710,1710,1710,1710,1710,334
};
};
public final static char termAction[] = TermAction.termAction;
@@ -555,27 +591,27 @@ public class C99ExpressionStatementParserprs implements lpg.lpgjavaruntime.Parse
public interface Asb {
public final static char asb[] = {0,
- 424,1,44,75,40,75,75,75,75,75,
- 75,75,75,75,3,345,23,20,27,25,
- 33,31,35,34,37,36,9,75,345,345,
- 311,311,168,75,162,162,339,345,75,75,
+ 425,1,44,75,40,75,75,75,75,75,
+ 75,75,75,75,3,346,23,20,27,25,
+ 33,31,35,34,37,36,9,75,346,346,
+ 312,312,168,75,162,162,340,346,75,75,
75,75,75,75,75,75,75,75,75,75,
75,75,75,75,75,75,75,75,75,75,
75,75,75,75,75,75,75,75,162,162,
- 162,165,51,343,69,281,160,159,314,326,
- 326,65,65,326,65,326,359,116,116,20,
+ 162,165,51,344,69,282,160,159,315,327,
+ 327,65,65,327,65,327,360,116,116,20,
20,25,25,25,25,23,23,31,27,27,
- 34,33,279,36,35,222,67,49,339,334,
- 96,165,382,73,162,395,284,261,187,261,
- 187,216,261,75,49,334,382,382,165,72,
- 69,162,337,359,161,286,187,187,187,187,
- 216,216,257,93,49,382,334,75,75,165,
- 73,281,274,273,343,286,162,187,258,388,
- 187,187,258,257,256,257,216,258,47,386,
- 311,75,92,49,334,165,165,162,395,284,
- 337,258,390,258,258,75,311,257,51,165,
- 311,75,257,286,43,75,42,88,343,258,
- 165,258,162,161,390,75,88,312
+ 34,33,280,36,35,223,67,49,340,335,
+ 96,165,383,73,162,396,285,262,187,262,
+ 187,217,262,75,49,335,383,383,165,72,
+ 69,162,338,360,161,287,187,187,187,187,
+ 217,217,258,93,49,383,335,75,75,165,
+ 73,282,275,274,344,287,162,187,259,389,
+ 187,187,259,258,257,258,217,259,47,387,
+ 312,75,92,49,335,165,165,162,396,285,
+ 338,259,391,259,259,75,312,258,51,165,
+ 312,75,258,287,43,75,42,88,344,259,
+ 165,259,162,161,391,75,88,313
};
};
public final static char asb[] = Asb.asb;
@@ -583,51 +619,51 @@ public class C99ExpressionStatementParserprs implements lpg.lpgjavaruntime.Parse
public interface Asr {
public final static byte asr[] = {0,
- 80,0,11,2,48,66,13,14,56,69,
- 70,71,72,73,75,74,76,77,78,3,
- 49,50,6,7,32,31,51,52,53,54,
- 61,62,12,63,64,65,35,67,68,34,
- 29,55,30,57,5,0,5,35,11,48,
- 13,14,12,3,6,7,20,21,15,2,
- 16,17,18,19,1,4,22,0,8,9,
- 10,23,34,5,16,17,18,19,4,13,
- 14,12,6,7,20,21,15,3,2,1,
- 0,56,11,48,0,8,9,10,2,16,
- 17,18,19,1,4,13,14,12,3,6,
- 7,20,21,15,0,9,23,28,10,27,
- 26,25,8,24,48,66,13,14,12,6,
- 7,49,50,31,32,51,52,53,54,61,
- 62,63,64,65,67,68,56,69,70,71,
- 72,73,74,75,76,77,78,3,2,11,
- 30,29,5,0,34,5,0,5,29,15,
- 16,17,18,19,1,4,2,13,14,12,
- 3,6,7,20,21,0,24,36,8,37,
- 58,25,38,26,39,40,27,9,41,42,
- 23,59,28,60,43,44,10,45,46,47,
- 1,4,5,35,0,1,4,5,30,35,
- 0,12,3,6,7,49,50,31,32,51,
- 52,53,54,61,62,63,64,65,67,68,
- 55,69,70,71,72,73,74,75,76,77,
- 78,34,29,57,22,56,30,35,5,0,
- 24,8,25,26,27,9,23,28,10,1,
- 3,22,2,5,30,29,57,11,55,0,
- 3,2,11,29,5,24,36,8,37,58,
- 25,38,26,39,40,27,9,41,42,23,
- 59,28,60,43,44,10,45,46,47,33,
- 4,1,0,44,36,41,39,40,38,37,
- 42,43,45,46,47,55,57,28,25,23,
- 24,27,26,8,9,10,30,1,5,29,
- 2,11,3,0,15,16,17,18,19,2,
- 13,14,12,3,6,7,20,21,4,1,
- 58,59,60,44,36,41,39,40,38,37,
- 42,43,45,46,47,28,25,23,24,27,
- 26,8,9,10,0,56,0,57,5,3,
- 1,2,55,0,24,36,8,37,58,25,
- 38,26,39,40,27,9,41,42,23,59,
- 28,60,43,44,10,45,46,47,1,4,
- 33,3,0,15,16,17,18,19,1,4,
- 2,13,14,12,3,6,7,20,21,79,
- 0
+ 80,0,12,2,52,67,19,20,60,70,
+ 71,72,73,74,76,75,77,78,79,4,
+ 53,54,10,11,49,48,55,56,57,58,
+ 62,63,13,64,65,66,46,68,69,51,
+ 41,59,45,61,5,0,5,46,12,52,
+ 19,20,13,4,10,11,26,27,21,2,
+ 22,23,24,25,1,3,28,0,6,7,
+ 8,9,51,5,22,23,24,25,3,19,
+ 20,13,10,11,26,27,21,4,2,1,
+ 0,60,12,52,0,6,7,8,2,22,
+ 23,24,25,1,3,19,20,13,4,10,
+ 11,26,27,21,0,7,9,18,8,17,
+ 16,15,6,14,52,67,19,20,13,10,
+ 11,53,54,48,49,55,56,57,58,62,
+ 63,64,65,66,68,69,60,70,71,72,
+ 73,74,75,76,77,78,79,4,2,12,
+ 45,41,5,0,51,5,0,5,41,21,
+ 22,23,24,25,1,3,2,19,20,13,
+ 4,10,11,26,27,0,14,29,6,30,
+ 42,15,31,16,32,33,17,7,34,35,
+ 9,43,18,44,36,37,8,38,39,40,
+ 1,3,5,46,47,0,1,3,5,45,
+ 46,0,13,4,10,11,53,54,48,49,
+ 55,56,57,58,62,63,64,65,66,68,
+ 69,59,70,71,72,73,74,75,76,77,
+ 78,79,51,41,61,28,60,45,46,5,
+ 0,14,6,15,16,17,7,9,18,8,
+ 1,4,28,2,5,45,41,61,12,59,
+ 0,4,2,12,41,5,14,29,6,30,
+ 42,15,31,16,32,33,17,7,34,35,
+ 9,43,18,44,36,37,8,38,39,40,
+ 50,3,1,0,37,29,34,32,33,31,
+ 30,35,36,38,39,40,59,61,18,15,
+ 9,14,17,16,6,7,8,45,1,5,
+ 41,2,12,4,0,21,22,23,24,25,
+ 2,19,20,13,4,10,11,26,27,3,
+ 1,42,43,44,37,29,34,32,33,31,
+ 30,35,36,38,39,40,18,15,9,14,
+ 17,16,6,7,8,0,60,0,61,5,
+ 4,1,2,59,0,14,29,6,30,42,
+ 15,31,16,32,33,17,7,34,35,9,
+ 43,18,44,36,37,8,38,39,40,1,
+ 3,50,4,0,21,22,23,24,25,1,
+ 3,2,19,20,13,4,10,11,26,27,
+ 47,0
};
};
public final static byte asr[] = Asr.asr;
@@ -679,14 +715,14 @@ public class C99ExpressionStatementParserprs implements lpg.lpgjavaruntime.Parse
public interface TerminalIndex {
public final static char terminalIndex[] = {0,
- 85,2,9,86,87,10,11,48,64,76,
- 1,8,6,7,68,81,82,83,84,12,
- 13,3,69,44,55,60,63,72,90,42,
- 16,17,30,89,91,47,52,56,61,62,
- 66,67,74,75,78,79,80,4,14,15,
- 18,19,20,21,29,31,92,54,70,73,
- 22,23,24,25,26,5,27,28,32,33,
- 34,35,36,37,38,39,40,41,93,94,
+ 85,2,86,9,87,48,64,76,69,10,
+ 11,1,8,44,55,60,63,72,6,7,
+ 68,81,82,83,84,12,13,3,47,52,
+ 56,61,62,66,67,74,75,78,79,80,
+ 90,54,70,73,42,91,93,16,17,30,
+ 89,4,14,15,18,19,20,21,29,31,
+ 92,22,23,24,25,26,5,27,28,32,
+ 33,34,35,36,37,38,39,40,41,94,
45,46,49,50,51,53,57,58,59,65,
71,77,88
};
@@ -748,10 +784,10 @@ public class C99ExpressionStatementParserprs implements lpg.lpgjavaruntime.Parse
public interface ScopeLa {
public final static byte scopeLa[] = {
- 35,35,34,34,35,35,35,86,35,29,
- 34,29,35,35,29,34,57,29,29,34,
- 55,34,34,29,34,29,29,56,1,29,
- 92,29,57,2,2,2
+ 46,46,51,51,46,46,46,86,46,41,
+ 51,41,46,46,41,51,61,41,41,51,
+ 59,51,51,41,51,41,41,60,1,41,
+ 92,41,61,2,2,2
};
};
public final static byte scopeLa[] = ScopeLa.scopeLa;
@@ -770,25 +806,25 @@ public class C99ExpressionStatementParserprs implements lpg.lpgjavaruntime.Parse
public interface ScopeRhs {
public final static char scopeRhs[] = {0,
- 139,11,0,96,0,181,101,0,31,136,
- 0,144,163,101,22,0,98,0,150,101,
+ 139,12,0,96,0,181,101,0,31,136,
+ 0,144,163,101,28,0,98,0,150,101,
2,136,0,97,0,150,101,2,0,153,
- 2,0,112,23,175,101,11,0,112,175,
- 101,23,11,0,112,23,11,0,112,175,
- 101,11,0,112,11,0,130,0,2,0,
+ 2,0,112,9,175,101,12,0,112,175,
+ 101,9,12,0,112,9,12,0,112,175,
+ 101,12,0,112,12,0,130,0,2,0,
151,97,0,2,97,0,150,101,2,130,
0,2,0,150,97,0,140,2,0,144,
- 173,101,22,120,58,0,144,173,101,22,
- 58,0,125,0,99,0,178,101,125,0,
- 101,125,0,141,99,0,148,101,22,120,
- 60,0,148,101,22,120,59,0,148,101,
- 22,60,0,148,101,22,59,0,187,85,
+ 173,101,28,120,42,0,144,173,101,28,
+ 42,0,125,0,99,0,178,101,125,0,
+ 101,125,0,141,99,0,148,101,28,120,
+ 44,0,148,101,28,120,43,0,148,101,
+ 28,44,0,148,101,28,43,0,187,85,
0,77,2,100,97,99,0,187,113,134,
- 2,89,0,53,0,0,134,68,110,0,
+ 2,89,0,53,0,0,134,69,110,0,
29,117,0,155,2,0,97,106,0,155,
- 2,15,0,144,163,101,22,113,155,2,
+ 2,21,0,144,163,101,28,113,155,2,
0,97,3,0,104,0,98,0,177,2,
- 97,0,134,11,97,0,134,2,0
+ 97,0,134,12,97,0,134,2,0
};
};
public final static char scopeRhs[] = ScopeRhs.scopeRhs;
@@ -796,16 +832,16 @@ public class C99ExpressionStatementParserprs implements lpg.lpgjavaruntime.Parse
public interface ScopeState {
public final static char scopeState[] = {0,
- 525,0,480,0,1572,1634,1542,1538,1536,0,
- 1376,1233,1343,1166,451,1072,1039,0,826,1158,
- 308,0,1321,1182,1088,498,451,1072,1039,1587,
- 1364,1360,0,1621,1274,1040,1214,1065,1506,1048,
- 1133,394,1150,1281,1252,1225,1352,1190,1335,1324,
- 1313,1293,1492,1485,1452,838,363,1432,1425,1304,
- 1167,881,386,1000,981,962,943,924,904,858,
- 548,1019,528,500,818,798,778,758,738,718,
- 698,678,658,638,618,308,593,456,573,411,
- 431,340,0
+ 526,0,481,0,1573,1635,1543,1539,1537,0,
+ 1377,1234,1344,1167,452,1073,1040,0,827,1159,
+ 309,0,1322,1183,1089,499,452,1073,1040,1588,
+ 1365,1361,0,1622,1275,1041,1215,1066,1507,1049,
+ 1134,395,1151,1282,1253,1226,1353,1191,1336,1325,
+ 1314,1294,1493,1486,1453,839,364,1433,1426,1305,
+ 1168,882,387,1001,982,963,944,925,905,859,
+ 549,1020,529,501,819,799,779,759,739,719,
+ 699,679,659,639,619,309,594,457,574,412,
+ 432,341,0
};
};
public final static char scopeState[] = ScopeState.scopeState;
@@ -813,27 +849,27 @@ public class C99ExpressionStatementParserprs implements lpg.lpgjavaruntime.Parse
public interface InSymb {
public final static char inSymb[] = {0,
- 0,176,134,101,164,15,21,20,7,6,
- 3,12,14,13,97,2,102,100,104,103,
- 106,105,108,107,110,109,98,30,2,2,
- 66,48,2,11,155,134,125,101,7,6,
- 50,49,3,54,53,52,51,31,32,12,
- 62,61,64,63,68,67,65,78,77,76,
- 74,75,73,72,71,70,69,56,155,155,
- 177,134,113,101,11,2,137,136,165,166,
- 167,60,59,168,58,169,170,1,4,100,
+ 0,176,134,101,164,21,27,26,11,10,
+ 4,13,20,19,97,2,102,100,104,103,
+ 106,105,108,107,110,109,98,45,2,2,
+ 67,52,2,12,155,134,125,101,11,10,
+ 54,53,4,58,57,56,55,48,49,13,
+ 63,62,65,64,69,68,66,79,78,77,
+ 75,76,74,73,72,71,70,60,155,155,
+ 177,134,113,101,12,2,137,136,165,166,
+ 167,44,43,168,42,169,170,1,3,100,
100,103,103,103,103,102,102,105,104,104,
- 107,106,134,109,108,113,113,22,142,3,
- 23,112,101,3,153,101,2,120,22,120,
- 22,22,120,55,101,3,101,101,112,175,
- 151,150,116,101,152,101,22,101,22,101,
- 101,22,163,101,22,101,151,175,23,112,
- 3,2,128,130,101,30,150,101,148,125,
- 149,101,148,173,120,174,101,144,30,181,
- 48,11,182,101,151,112,112,140,101,2,
- 142,148,101,148,144,56,30,173,56,139,
- 48,11,163,101,178,55,140,2,101,144,
- 139,144,150,179,30,55,142,30
+ 107,106,134,109,108,113,113,28,142,4,
+ 9,112,101,4,153,101,2,120,28,120,
+ 28,28,120,59,101,4,101,101,112,175,
+ 151,150,116,101,152,101,28,101,28,101,
+ 101,28,163,101,28,101,151,175,9,112,
+ 4,2,128,130,101,45,150,101,148,125,
+ 149,101,148,173,120,174,101,144,45,181,
+ 52,12,182,101,151,112,112,140,101,2,
+ 142,148,101,148,144,60,45,173,60,139,
+ 52,12,163,101,178,59,140,2,101,144,
+ 139,144,150,179,45,59,142,45
};
};
public final static char inSymb[] = InSymb.inSymb;
@@ -1017,7 +1053,7 @@ public class C99ExpressionStatementParserprs implements lpg.lpgjavaruntime.Parse
public final String name(int index) { return name[index]; }
public final static int
- ERROR_SYMBOL = 79,
+ ERROR_SYMBOL = 47,
SCOPE_UBOUND = 35,
SCOPE_SIZE = 36,
MAX_NAME_LENGTH = 38;
@@ -1030,18 +1066,18 @@ public class C99ExpressionStatementParserprs implements lpg.lpgjavaruntime.Parse
public final static int
NUM_STATES = 208,
NT_OFFSET = 93,
- LA_STATE_OFFSET = 2016,
+ LA_STATE_OFFSET = 2018,
MAX_LA = 2,
- NUM_RULES = 307,
+ NUM_RULES = 308,
NUM_NONTERMINALS = 115,
NUM_SYMBOLS = 208,
SEGMENT_SIZE = 8192,
- START_STATE = 1516,
+ START_STATE = 1517,
IDENTIFIER_SYMBOL = 0,
EOFT_SYMBOL = 80,
EOLT_SYMBOL = 80,
- ACCEPT_ACTION = 1696,
- ERROR_ACTION = 1709;
+ ACCEPT_ACTION = 1697,
+ ERROR_ACTION = 1710;
public final static boolean BACKTRACK = true;
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionStatementParsersym.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionStatementParsersym.java
index 8edc95759b1..51d60650cb2 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionStatementParsersym.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionStatementParsersym.java
@@ -15,114 +15,120 @@ package org.eclipse.cdt.internal.core.dom.lrparser.c99;
public interface C99ExpressionStatementParsersym {
public final static int
- TK_auto = 24,
+ TK_auto = 14,
TK_break = 81,
TK_case = 82,
- TK_char = 36,
- TK_const = 8,
+ TK_char = 29,
+ TK_const = 6,
TK_continue = 83,
TK_default = 84,
TK_do = 85,
- TK_double = 37,
+ TK_double = 30,
TK_else = 86,
- TK_enum = 58,
- TK_extern = 25,
- TK_float = 38,
+ TK_enum = 42,
+ TK_extern = 15,
+ TK_float = 31,
TK_for = 87,
TK_goto = 88,
TK_if = 89,
- TK_inline = 26,
- TK_int = 39,
- TK_long = 40,
- TK_register = 27,
- TK_restrict = 9,
+ TK_inline = 16,
+ TK_int = 32,
+ TK_long = 33,
+ TK_register = 17,
+ TK_restrict = 7,
TK_return = 90,
- TK_short = 41,
- TK_signed = 42,
- TK_sizeof = 15,
- TK_static = 23,
- TK_struct = 59,
+ TK_short = 34,
+ TK_signed = 35,
+ TK_sizeof = 21,
+ TK_static = 9,
+ TK_struct = 43,
TK_switch = 91,
- TK_typedef = 28,
- TK_union = 60,
- TK_unsigned = 43,
- TK_void = 44,
- TK_volatile = 10,
+ TK_typedef = 18,
+ TK_union = 44,
+ TK_unsigned = 36,
+ TK_void = 37,
+ TK_volatile = 8,
TK_while = 92,
- TK__Bool = 45,
- TK__Complex = 46,
- TK__Imaginary = 47,
- TK_integer = 16,
- TK_floating = 17,
- TK_charconst = 18,
- TK_stringlit = 19,
+ TK__Bool = 38,
+ TK__Complex = 39,
+ TK__Imaginary = 40,
+ TK_integer = 22,
+ TK_floating = 23,
+ TK_charconst = 24,
+ TK_stringlit = 25,
TK_identifier = 1,
- TK_Completion = 4,
+ TK_Completion = 3,
TK_EndOfCompletion = 5,
TK_Invalid = 93,
- TK_LeftBracket = 11,
+ TK_LeftBracket = 12,
TK_LeftParen = 2,
- TK_LeftBrace = 22,
- TK_Dot = 48,
- TK_Arrow = 66,
- TK_PlusPlus = 13,
- TK_MinusMinus = 14,
- TK_And = 12,
- TK_Star = 3,
- TK_Plus = 6,
- TK_Minus = 7,
- TK_Tilde = 20,
- TK_Bang = 21,
- TK_Slash = 49,
- TK_Percent = 50,
- TK_RightShift = 31,
- TK_LeftShift = 32,
- TK_LT = 51,
- TK_GT = 52,
- TK_LE = 53,
- TK_GE = 54,
- TK_EQ = 61,
- TK_NE = 62,
- TK_Caret = 63,
- TK_Or = 64,
- TK_AndAnd = 65,
- TK_OrOr = 67,
- TK_Question = 68,
- TK_Colon = 55,
- TK_DotDotDot = 33,
- TK_Assign = 56,
- TK_StarAssign = 69,
- TK_SlashAssign = 70,
- TK_PercentAssign = 71,
- TK_PlusAssign = 72,
- TK_MinusAssign = 73,
- TK_RightShiftAssign = 74,
- TK_LeftShiftAssign = 75,
- TK_AndAssign = 76,
- TK_CaretAssign = 77,
- TK_OrAssign = 78,
- TK_Comma = 30,
- TK_RightBracket = 34,
- TK_RightParen = 29,
- TK_RightBrace = 35,
- TK_SemiColon = 57,
- TK_ERROR_TOKEN = 79,
+ TK_LeftBrace = 28,
+ TK_Dot = 52,
+ TK_Arrow = 67,
+ TK_PlusPlus = 19,
+ TK_MinusMinus = 20,
+ TK_And = 13,
+ TK_Star = 4,
+ TK_Plus = 10,
+ TK_Minus = 11,
+ TK_Tilde = 26,
+ TK_Bang = 27,
+ TK_Slash = 53,
+ TK_Percent = 54,
+ TK_RightShift = 48,
+ TK_LeftShift = 49,
+ TK_LT = 55,
+ TK_GT = 56,
+ TK_LE = 57,
+ TK_GE = 58,
+ TK_EQ = 62,
+ TK_NE = 63,
+ TK_Caret = 64,
+ TK_Or = 65,
+ TK_AndAnd = 66,
+ TK_OrOr = 68,
+ TK_Question = 69,
+ TK_Colon = 59,
+ TK_DotDotDot = 50,
+ TK_Assign = 60,
+ TK_StarAssign = 70,
+ TK_SlashAssign = 71,
+ TK_PercentAssign = 72,
+ TK_PlusAssign = 73,
+ TK_MinusAssign = 74,
+ TK_RightShiftAssign = 75,
+ TK_LeftShiftAssign = 76,
+ TK_AndAssign = 77,
+ TK_CaretAssign = 78,
+ TK_OrAssign = 79,
+ TK_Comma = 45,
+ TK_RightBracket = 51,
+ TK_RightParen = 41,
+ TK_RightBrace = 46,
+ TK_SemiColon = 61,
+ TK_ERROR_TOKEN = 47,
TK_EOF_TOKEN = 80;
public final static String orderedTerminalSymbols[] = {
"",
"identifier",
"LeftParen",
- "Star",
"Completion",
+ "Star",
"EndOfCompletion",
- "Plus",
- "Minus",
"const",
"restrict",
"volatile",
+ "static",
+ "Plus",
+ "Minus",
"LeftBracket",
"And",
+ "auto",
+ "extern",
+ "inline",
+ "register",
+ "typedef",
"PlusPlus",
"MinusMinus",
"sizeof",
@@ -133,19 +139,6 @@ public interface C99ExpressionStatementParsersym {
"Tilde",
"Bang",
"LeftBrace",
- "static",
- "auto",
- "extern",
- "inline",
- "register",
- "typedef",
- "RightParen",
- "Comma",
- "RightShift",
- "LeftShift",
- "DotDotDot",
- "RightBracket",
- "RightBrace",
"char",
"double",
"float",
@@ -158,6 +151,17 @@ public interface C99ExpressionStatementParsersym {
"_Bool",
"_Complex",
"_Imaginary",
+ "RightParen",
+ "enum",
+ "struct",
+ "union",
+ "Comma",
+ "RightBrace",
+ "ERROR_TOKEN",
+ "RightShift",
+ "LeftShift",
+ "DotDotDot",
+ "RightBracket",
"Dot",
"Slash",
"Percent",
@@ -168,9 +172,6 @@ public interface C99ExpressionStatementParsersym {
"Colon",
"Assign",
"SemiColon",
- "enum",
- "struct",
- "union",
"EQ",
"NE",
"Caret",
@@ -189,7 +190,6 @@ public interface C99ExpressionStatementParsersym {
"AndAssign",
"CaretAssign",
"OrAssign",
- "ERROR_TOKEN",
"EOF_TOKEN",
"break",
"case",
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99NoCastExpressionParser.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99NoCastExpressionParser.java
index a7b73eff9d2..7de63328cd8 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99NoCastExpressionParser.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99NoCastExpressionParser.java
@@ -829,411 +829,417 @@ public C99NoCastExpressionParser(String[] mapFrom) { // constructor
}
//
- // Rule 199: struct_declarator ::= : constant_expression
+ // Rule 194: struct_declaration ::= ERROR_TOKEN
//
- case 199: { action. consumeBitField(false); break;
+ case 194: { action. consumeDeclarationProblem(); break;
}
//
- // Rule 200: struct_declarator ::= declarator : constant_expression
+ // Rule 200: struct_declarator ::= : constant_expression
//
- case 200: { action. consumeBitField(true); break;
+ case 200: { action. consumeBitField(false); break;
}
//
- // Rule 201: enum_specifier ::= enum { enumerator_list_opt comma_opt }
+ // Rule 201: struct_declarator ::= declarator : constant_expression
//
- case 201: { action. consumeTypeSpecifierEnumeration(false); break;
+ case 201: { action. consumeBitField(true); break;
}
//
- // Rule 202: enum_specifier ::= enum identifier_or_typedefname { enumerator_list_opt comma_opt }
+ // Rule 202: enum_specifier ::= enum { enumerator_list_opt comma_opt }
//
- case 202: { action. consumeTypeSpecifierEnumeration(true); break;
+ case 202: { action. consumeTypeSpecifierEnumeration(false); break;
}
//
- // Rule 207: enumerator ::= identifier_or_typedefname
+ // Rule 203: enum_specifier ::= enum identifier_or_typedefname { enumerator_list_opt comma_opt }
//
- case 207: { action. consumeEnumerator(false); break;
+ case 203: { action. consumeTypeSpecifierEnumeration(true); break;
}
//
- // Rule 208: enumerator ::= identifier_or_typedefname = constant_expression
+ // Rule 208: enumerator ::= identifier_or_typedefname
//
- case 208: { action. consumeEnumerator(true); break;
+ case 208: { action. consumeEnumerator(false); break;
}
//
- // Rule 209: type_qualifier ::= type_qualifier_token
+ // Rule 209: enumerator ::= identifier_or_typedefname = constant_expression
//
- case 209: { action. consumeDeclSpecToken(); break;
+ case 209: { action. consumeEnumerator(true); break;
}
//
- // Rule 213: function_specifier ::= inline
+ // Rule 210: type_qualifier ::= type_qualifier_token
//
- case 213: { action. consumeDeclSpecToken(); break;
+ case 210: { action. consumeDeclSpecToken(); break;
}
//
- // Rule 215: declarator ::= pointer_seq direct_declarator
+ // Rule 214: function_specifier ::= inline
//
- case 215: { action. consumeDeclaratorWithPointer(true); break;
+ case 214: { action. consumeDeclSpecToken(); break;
}
//
- // Rule 220: basic_direct_declarator ::= declarator_id_name
+ // Rule 216: declarator ::= pointer_seq direct_declarator
//
- case 220: { action. consumeDirectDeclaratorIdentifier(); break;
+ case 216: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 221: basic_direct_declarator ::= ( declarator )
+ // Rule 221: basic_direct_declarator ::= declarator_id_name
//
- case 221: { action. consumeDirectDeclaratorBracketed(); break;
+ case 221: { action. consumeDirectDeclaratorIdentifier(); break;
}
//
- // Rule 222: declarator_id_name ::= identifier
+ // Rule 222: basic_direct_declarator ::= ( declarator )
//
- case 222: { action. consumeIdentifierName(); break;
+ case 222: { action. consumeDirectDeclaratorBracketed(); break;
}
//
- // Rule 223: array_direct_declarator ::= basic_direct_declarator array_modifier
+ // Rule 223: declarator_id_name ::= identifier
//
- case 223: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ case 223: { action. consumeIdentifierName(); break;
}
//
- // Rule 224: array_direct_declarator ::= array_direct_declarator array_modifier
+ // Rule 224: array_direct_declarator ::= basic_direct_declarator array_modifier
//
case 224: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 226: function_direct_declarator ::= basic_direct_declarator ( parameter_type_list )
+ // Rule 225: array_direct_declarator ::= array_direct_declarator array_modifier
//
- case 226: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
+ case 225: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 227: function_direct_declarator ::= basic_direct_declarator ( )
+ // Rule 227: function_direct_declarator ::= basic_direct_declarator ( parameter_type_list )
//
- case 227: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
+ case 227: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
}
//
- // Rule 229: function_declarator ::= pointer_seq function_direct_declarator
+ // Rule 228: function_direct_declarator ::= basic_direct_declarator ( )
//
- case 229: { action. consumeDeclaratorWithPointer(true); break;
+ case 228: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
}
//
- // Rule 230: knr_direct_declarator ::= basic_direct_declarator ( identifier_list )
+ // Rule 230: function_declarator ::= pointer_seq function_direct_declarator
//
- case 230: { action. consumeDirectDeclaratorFunctionDeclaratorKnR(); break;
+ case 230: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 232: knr_function_declarator ::= pointer_seq knr_direct_declarator
+ // Rule 231: knr_direct_declarator ::= basic_direct_declarator ( identifier_list )
//
- case 232: { action. consumeDeclaratorWithPointer(true); break;
+ case 231: { action. consumeDirectDeclaratorFunctionDeclaratorKnR(); break;
}
//
- // Rule 233: identifier_list ::= identifier
+ // Rule 233: knr_function_declarator ::= pointer_seq knr_direct_declarator
//
- case 233: { action. consumeIdentifierKnR(); break;
+ case 233: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 234: identifier_list ::= identifier_list , identifier
+ // Rule 234: identifier_list ::= identifier
//
case 234: { action. consumeIdentifierKnR(); break;
}
//
- // Rule 235: array_modifier ::= [ ]
+ // Rule 235: identifier_list ::= identifier_list , identifier
//
- case 235: { action. consumeDirectDeclaratorArrayModifier(false); break;
+ case 235: { action. consumeIdentifierKnR(); break;
}
//
- // Rule 236: array_modifier ::= [ array_modifier_type_qualifiers ]
+ // Rule 236: array_modifier ::= [ ]
//
- case 236: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, false); break;
+ case 236: { action. consumeDirectDeclaratorArrayModifier(false); break;
}
//
- // Rule 237: array_modifier ::= [ assignment_expression ]
+ // Rule 237: array_modifier ::= [ array_modifier_type_qualifiers ]
//
- case 237: { action. consumeDirectDeclaratorArrayModifier(true); break;
+ case 237: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, false); break;
}
//
- // Rule 238: array_modifier ::= [ array_modifier_type_qualifiers assignment_expression ]
+ // Rule 238: array_modifier ::= [ assignment_expression ]
//
- case 238: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, true); break;
+ case 238: { action. consumeDirectDeclaratorArrayModifier(true); break;
}
//
- // Rule 239: array_modifier ::= [ static assignment_expression ]
+ // Rule 239: array_modifier ::= [ array_modifier_type_qualifiers assignment_expression ]
//
- case 239: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, false, true); break;
+ case 239: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, true); break;
}
//
- // Rule 240: array_modifier ::= [ static array_modifier_type_qualifiers assignment_expression ]
+ // Rule 240: array_modifier ::= [ static assignment_expression ]
//
- case 240: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break;
+ case 240: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, false, true); break;
}
//
- // Rule 241: array_modifier ::= [ array_modifier_type_qualifiers static assignment_expression ]
+ // Rule 241: array_modifier ::= [ static array_modifier_type_qualifiers assignment_expression ]
//
case 241: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break;
}
//
- // Rule 242: array_modifier ::= [ * ]
+ // Rule 242: array_modifier ::= [ array_modifier_type_qualifiers static assignment_expression ]
//
- case 242: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, false, false); break;
+ case 242: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break;
}
//
- // Rule 243: array_modifier ::= [ array_modifier_type_qualifiers * ]
+ // Rule 243: array_modifier ::= [ * ]
//
- case 243: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, true, false); break;
+ case 243: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, false, false); break;
}
//
- // Rule 245: pointer_seq ::= *
+ // Rule 244: array_modifier ::= [ array_modifier_type_qualifiers * ]
//
- case 245: { action. consumePointer(); break;
+ case 244: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, true, false); break;
}
//
- // Rule 246: pointer_seq ::= pointer_seq *
+ // Rule 246: pointer_seq ::= *
//
case 246: { action. consumePointer(); break;
}
//
- // Rule 247: pointer_seq ::= * type_qualifier_list
+ // Rule 247: pointer_seq ::= pointer_seq *
//
- case 247: { action. consumePointerTypeQualifierList(); break;
+ case 247: { action. consumePointer(); break;
}
//
- // Rule 248: pointer_seq ::= pointer_seq * type_qualifier_list
+ // Rule 248: pointer_seq ::= * type_qualifier_list
//
case 248: { action. consumePointerTypeQualifierList(); break;
}
//
- // Rule 251: parameter_type_list ::= parameter_list
+ // Rule 249: pointer_seq ::= pointer_seq * type_qualifier_list
//
- case 251: { action. consumeEmpty(); break;
+ case 249: { action. consumePointerTypeQualifierList(); break;
}
//
- // Rule 252: parameter_type_list ::= parameter_list , ...
+ // Rule 252: parameter_type_list ::= parameter_list
//
- case 252: { action. consumePlaceHolder(); break;
+ case 252: { action. consumeEmpty(); break;
}
//
- // Rule 253: parameter_type_list ::= ...
+ // Rule 253: parameter_type_list ::= parameter_list , ...
//
case 253: { action. consumePlaceHolder(); break;
}
//
- // Rule 256: parameter_declaration ::= declaration_specifiers complete_parameter_declarator
+ // Rule 254: parameter_type_list ::= ...
//
- case 256: { action. consumeParameterDeclaration(); break;
+ case 254: { action. consumePlaceHolder(); break;
}
//
- // Rule 257: parameter_declaration ::= declaration_specifiers
+ // Rule 257: parameter_declaration ::= declaration_specifiers complete_parameter_declarator
//
- case 257: { action. consumeParameterDeclarationWithoutDeclarator(); break;
+ case 257: { action. consumeParameterDeclaration(); break;
}
//
- // Rule 260: type_name ::= specifier_qualifier_list
+ // Rule 258: parameter_declaration ::= declaration_specifiers
//
- case 260: { action. consumeTypeId(false); break;
+ case 258: { action. consumeParameterDeclarationWithoutDeclarator(); break;
}
//
- // Rule 261: type_name ::= specifier_qualifier_list abstract_declarator
+ // Rule 261: type_name ::= specifier_qualifier_list
//
- case 261: { action. consumeTypeId(true); break;
+ case 261: { action. consumeTypeId(false); break;
}
//
- // Rule 263: abstract_declarator ::= pointer_seq
+ // Rule 262: type_name ::= specifier_qualifier_list abstract_declarator
//
- case 263: { action. consumeDeclaratorWithPointer(false); break;
+ case 262: { action. consumeTypeId(true); break;
}
//
- // Rule 264: abstract_declarator ::= pointer_seq direct_abstract_declarator
+ // Rule 264: abstract_declarator ::= pointer_seq
//
case 264: { action. consumeDeclaratorWithPointer(false); break;
}
//
- // Rule 268: basic_direct_abstract_declarator ::= ( abstract_declarator )
+ // Rule 265: abstract_declarator ::= pointer_seq direct_abstract_declarator
//
- case 268: { action. consumeDirectDeclaratorBracketed(); break;
+ case 265: { action. consumeDeclaratorWithPointer(false); break;
}
//
- // Rule 269: array_direct_abstract_declarator ::= array_modifier
+ // Rule 269: basic_direct_abstract_declarator ::= ( abstract_declarator )
//
- case 269: { action. consumeDirectDeclaratorArrayDeclarator(false); break;
+ case 269: { action. consumeDirectDeclaratorBracketed(); break;
}
//
- // Rule 270: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier
+ // Rule 270: array_direct_abstract_declarator ::= array_modifier
//
- case 270: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ case 270: { action. consumeDirectDeclaratorArrayDeclarator(false); break;
}
//
- // Rule 271: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier
+ // Rule 271: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier
//
case 271: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 272: function_direct_abstract_declarator ::= ( )
+ // Rule 272: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier
//
- case 272: { action. consumeDirectDeclaratorFunctionDeclarator(false, false); break;
+ case 272: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ }
+
+ //
+ // Rule 273: function_direct_abstract_declarator ::= ( )
+ //
+ case 273: { action. consumeDirectDeclaratorFunctionDeclarator(false, false); break;
}
//
- // Rule 273: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( )
+ // Rule 274: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( )
//
- case 273: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
+ case 274: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
}
//
- // Rule 274: function_direct_abstract_declarator ::= ( parameter_type_list )
+ // Rule 275: function_direct_abstract_declarator ::= ( parameter_type_list )
//
- case 274: { action. consumeDirectDeclaratorFunctionDeclarator(false, true); break;
+ case 275: { action. consumeDirectDeclaratorFunctionDeclarator(false, true); break;
}
//
- // Rule 275: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( parameter_type_list )
+ // Rule 276: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( parameter_type_list )
//
- case 275: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
+ case 276: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
}
//
- // Rule 276: initializer ::= assignment_expression
+ // Rule 277: initializer ::= assignment_expression
//
- case 276: { action. consumeInitializer(); break;
+ case 277: { action. consumeInitializer(); break;
}
//
- // Rule 277: initializer ::= { initializer_list comma_opt }
+ // Rule 278: initializer ::= { initializer_list comma_opt }
//
- case 277: { action. consumeInitializerList(); break;
+ case 278: { action. consumeInitializerList(); break;
}
//
- // Rule 282: designated_initializer ::= designation = initializer
+ // Rule 283: designated_initializer ::= designation = initializer
//
- case 282: { action. consumeInitializerDesignated(); break;
+ case 283: { action. consumeInitializerDesignated(); break;
}
//
- // Rule 286: designator_base ::= [ constant_expression ]
+ // Rule 287: designator_base ::= [ constant_expression ]
//
- case 286: { action. consumeDesignatorArray(); break;
+ case 287: { action. consumeDesignatorArray(); break;
}
//
- // Rule 287: designator_base ::= . identifier_or_typedefname
+ // Rule 288: designator_base ::= . identifier_or_typedefname
//
- case 287: { action. consumeDesignatorField(); break;
+ case 288: { action. consumeDesignatorField(); break;
}
//
- // Rule 288: designator ::= [ constant_expression ]
+ // Rule 289: designator ::= [ constant_expression ]
//
- case 288: { action. consumeDesignatorArray(); break;
+ case 289: { action. consumeDesignatorArray(); break;
}
//
- // Rule 289: designator ::= . identifier_or_typedefname
+ // Rule 290: designator ::= . identifier_or_typedefname
//
- case 289: { action. consumeDesignatorField(); break;
+ case 290: { action. consumeDesignatorField(); break;
}
//
- // Rule 290: translation_unit ::= external_declaration_list
- //
- case 290: { action. consumeTranslationUnit(); break;
- }
-
- //
- // Rule 291: translation_unit ::= $Empty
+ // Rule 291: translation_unit ::= external_declaration_list
//
case 291: { action. consumeTranslationUnit(); break;
+ }
+
+ //
+ // Rule 292: translation_unit ::= $Empty
+ //
+ case 292: { action. consumeTranslationUnit(); break;
}
//
- // Rule 296: external_declaration ::= ;
+ // Rule 297: external_declaration ::= ;
//
- case 296: { action. consumeDeclarationEmpty(); break;
+ case 297: { action. consumeDeclarationEmpty(); break;
}
//
- // Rule 297: external_declaration ::= ERROR_TOKEN
+ // Rule 298: external_declaration ::= ERROR_TOKEN
//
- case 297: { action. consumeDeclarationProblem(); break;
+ case 298: { action. consumeDeclarationProblem(); break;
}
//
- // Rule 300: function_definition ::= declaration_specifiers function_declarator function_body
+ // Rule 301: function_definition ::= declaration_specifiers function_declarator function_body
//
- case 300: { action. consumeFunctionDefinition(true); break;
+ case 301: { action. consumeFunctionDefinition(true); break;
}
//
- // Rule 301: function_definition ::= function_declarator function_body
+ // Rule 302: function_definition ::= function_declarator function_body
//
- case 301: { action. consumeFunctionDefinition(false); break;
+ case 302: { action. consumeFunctionDefinition(false); break;
}
//
- // Rule 302: function_definition ::= declaration_specifiers knr_function_declarator declaration_list compound_statement
+ // Rule 303: function_definition ::= declaration_specifiers knr_function_declarator declaration_list compound_statement
//
- case 302: { action. consumeFunctionDefinitionKnR(); break;
+ case 303: { action. consumeFunctionDefinitionKnR(); break;
}
//
- // Rule 303: function_body ::= { }
+ // Rule 304: function_body ::= { }
//
- case 303: { action. consumeStatementCompoundStatement(false); break;
+ case 304: { action. consumeStatementCompoundStatement(false); break;
}
//
- // Rule 304: function_body ::= { block_item_list }
+ // Rule 305: function_body ::= { block_item_list }
//
- case 304: { action. consumeStatementCompoundStatement(true); break;
+ case 305: { action. consumeStatementCompoundStatement(true); break;
}
//
- // Rule 306: no_cast_start ::= ERROR_TOKEN
+ // Rule 307: no_cast_start ::= ERROR_TOKEN
//
- case 306: { action. consumeExpressionProblem(); break;
+ case 307: { action. consumeExpressionProblem(); break;
}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99NoCastExpressionParserprs.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99NoCastExpressionParserprs.java
index d8b087d5425..e9c233ad498 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99NoCastExpressionParserprs.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99NoCastExpressionParserprs.java
@@ -53,155 +53,156 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
5,5,6,6,2,2,2,1,0,1,
- 2,4,2,1,1,3,1,1,2,3,
- 6,7,1,0,1,3,1,3,1,1,
- 1,1,1,1,3,1,1,1,1,1,
- 3,1,2,2,1,5,3,1,3,5,
- 1,3,1,3,2,4,3,5,4,6,
- 6,3,5,1,1,2,3,4,1,2,
- 1,3,1,1,3,2,1,1,1,1,
- 2,1,2,3,1,1,1,3,1,2,
- 2,2,3,4,5,1,5,1,1,3,
- 3,4,1,1,2,3,2,3,2,1,
- 0,1,2,1,1,1,1,1,2,4,
- 3,6,2,4,1,1,-32,0,0,0,
- 0,0,0,0,0,-2,0,0,0,0,
- 0,0,0,0,0,0,0,0,-5,0,
- 0,0,0,0,0,0,0,0,-121,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-177,
- 0,-12,0,0,0,0,0,0,0,0,
- 0,-13,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-127,-4,-15,-140,-169,
- -104,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-16,0,-170,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-165,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-33,
- -34,-29,-30,-3,0,0,0,0,0,0,
+ 2,4,2,1,1,1,3,1,1,2,
+ 3,6,7,1,0,1,3,1,3,1,
+ 1,1,1,1,1,3,1,1,1,1,
+ 1,3,1,2,2,1,5,3,1,3,
+ 5,1,3,1,3,2,4,3,5,4,
+ 6,6,3,5,1,1,2,3,4,1,
+ 2,1,3,1,1,3,2,1,1,1,
+ 1,2,1,2,3,1,1,1,3,1,
+ 2,2,2,3,4,5,1,5,1,1,
+ 3,3,4,1,1,2,3,2,3,2,
+ 1,0,1,2,1,1,1,1,1,2,
+ 4,3,6,2,4,1,1,-32,0,0,
+ 0,0,0,0,0,0,-2,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-5,
+ 0,0,0,0,0,0,0,0,0,-121,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-17,0,-49,0,0,0,0,0,0,
- 0,0,-18,0,0,0,-70,0,0,0,
+ -177,0,-12,0,0,0,0,0,0,0,
+ 0,0,-13,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-127,-4,-15,-140,
+ -169,-104,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-16,0,
+ -170,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-69,0,0,0,
- -19,-20,-21,-22,0,-107,0,0,0,0,
+ -165,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-126,0,0,0,0,
- 0,0,0,0,-23,0,0,0,0,0,
- 0,0,0,0,0,0,-24,-25,0,-185,
- 0,0,0,0,0,0,0,0,-26,0,
- 0,0,0,0,0,0,0,0,0,-27,
- 0,0,0,0,0,0,0,0,-68,0,
- 0,0,0,0,0,0,0,0,0,-83,
- -84,-139,-87,-56,0,0,0,0,0,0,
+ -33,-34,-29,-30,-3,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-57,0,0,0,0,0,0,
- 0,0,-88,0,0,0,0,0,0,0,
- 0,0,0,-58,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-59,0,0,0,0,0,0,
- 0,0,-89,0,0,0,0,0,0,0,
- 0,0,0,-60,0,0,0,0,0,0,
- 0,0,-90,0,0,0,0,0,0,0,
- 0,0,0,-61,0,0,0,0,0,0,
- 0,0,-91,0,0,0,0,0,0,0,
- 0,0,0,-62,0,0,0,0,0,0,
- 0,0,-92,0,0,0,0,0,0,0,
- 0,0,0,-63,0,0,0,0,0,0,
- 0,0,-93,0,0,0,0,0,0,0,
- 0,0,0,-64,0,0,0,0,0,0,
- 0,0,-191,0,0,0,0,0,0,0,
- 0,0,0,-65,0,0,0,0,0,0,
- 0,0,-94,0,0,0,0,0,0,0,
- 0,0,0,-66,0,0,0,0,0,0,
- 0,0,-130,0,0,0,0,0,0,0,
- 0,0,0,-46,0,0,0,0,0,0,
- 0,0,0,0,-95,-96,-97,-98,-77,0,
- 0,0,0,0,-144,0,0,0,0,0,
- 0,0,0,-99,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-100,-101,-102,
- -151,-103,-78,0,0,0,0,-6,0,0,
+ 0,0,-17,0,-49,0,0,0,0,0,
+ 0,0,0,-18,0,0,0,-70,0,0,
0,0,0,0,0,0,0,0,0,0,
- -145,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-69,0,0,
+ 0,-19,-20,-21,-22,0,-107,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -168,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-182,
- 0,0,0,0,0,0,0,0,-114,0,
- 0,0,0,0,0,0,0,0,-37,0,
- 0,0,0,0,0,0,0,-47,0,0,
- 0,0,0,0,0,0,-188,0,0,0,
+ 0,0,0,0,0,0,-126,0,0,0,
+ 0,0,0,0,0,-23,0,0,0,0,
+ 0,0,0,0,0,0,0,-24,-25,0,
+ -185,0,0,0,0,0,0,0,0,-26,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-192,0,0,0,0,
- 0,0,0,0,-80,0,0,0,0,0,
- 0,0,0,0,-38,0,0,0,0,0,
- 0,0,0,-7,0,0,0,0,0,0,
- -116,0,-202,0,0,0,0,0,0,0,
+ -27,0,0,0,0,0,0,0,0,-68,
0,0,0,0,0,0,0,0,0,0,
- 0,-120,0,0,0,0,0,0,0,0,
- -119,0,0,0,0,0,0,0,0,0,
- -129,-8,0,0,0,0,0,0,0,0,
- -51,0,0,0,0,0,0,0,0,-155,
- 0,0,0,0,0,0,-131,-72,-123,-161,
- -142,-148,-73,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-203,0,0,0,
- 0,0,0,0,-113,-67,0,0,-162,-166,
- 0,-193,-106,0,0,0,0,0,0,0,
+ -83,-84,-139,-87,-56,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-204,
- 0,0,-54,0,0,0,0,0,0,0,
- 0,-160,0,0,0,0,0,0,0,-55,
+ 0,0,0,0,-57,0,0,0,0,0,
+ 0,0,0,-88,0,0,0,0,0,0,
+ 0,0,0,0,-58,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-52,0,0,0,0,
- 0,0,0,0,-82,0,0,0,0,-74,
- -179,-9,0,0,0,0,0,0,-115,0,
- 0,-143,0,0,0,0,-167,0,-85,0,
- 0,-171,0,0,0,0,-86,0,0,0,
+ 0,0,0,0,-59,0,0,0,0,0,
+ 0,0,0,-89,0,0,0,0,0,0,
+ 0,0,0,0,-60,0,0,0,0,0,
+ 0,0,0,-90,0,0,0,0,0,0,
+ 0,0,0,0,-61,0,0,0,0,0,
+ 0,0,0,-91,0,0,0,0,0,0,
+ 0,0,0,0,-62,0,0,0,0,0,
+ 0,0,0,-92,0,0,0,0,0,0,
+ 0,0,0,0,-63,0,0,0,0,0,
+ 0,0,0,-93,0,0,0,0,0,0,
+ 0,0,0,0,-64,0,0,0,0,0,
+ 0,0,0,-191,0,0,0,0,0,0,
+ 0,0,0,0,-65,0,0,0,0,0,
+ 0,0,0,-94,0,0,0,0,0,0,
+ 0,0,0,0,-66,0,0,0,0,0,
+ 0,0,0,-130,0,0,0,0,0,0,
+ 0,0,0,0,-46,0,0,0,0,0,
+ 0,0,0,0,0,-95,-96,-97,-98,-77,
+ 0,0,0,0,0,-144,0,0,0,0,
+ 0,0,0,0,-99,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-100,-101,
+ -102,-151,-103,-78,0,0,0,0,-6,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-184,0,0,0,0,0,
- 0,0,-75,0,-111,0,0,0,0,-48,
- 0,0,0,0,0,0,0,0,-201,0,
- 0,0,0,0,-159,-152,0,0,0,0,
- 0,0,0,0,0,0,-50,0,0,0,
+ 0,-145,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-10,0,
- 0,0,0,0,0,0,-42,0,0,0,
- 0,0,0,0,0,0,0,-43,0,0,
- 0,0,0,0,0,0,-117,0,-11,0,
- 0,0,0,0,0,0,0,0,-44,0,
- 0,0,0,0,0,0,0,-108,0,-45,
- 0,0,0,0,0,0,0,0,-194,0,
- -71,-187,-156,-109,-118,-31,-124,0,0,0,
- 0,0,0,0,0,-110,0,0,0,0,
+ 0,-168,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ -182,0,0,0,0,0,0,0,0,-114,
+ 0,0,0,0,0,0,0,0,0,-37,
+ 0,0,0,0,0,0,0,0,-47,0,
+ 0,0,0,0,0,0,0,-188,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-192,0,0,0,
+ 0,0,0,0,0,-80,0,0,0,0,
+ 0,0,0,0,0,-38,0,0,0,0,
+ 0,0,0,0,-7,0,0,0,0,0,
+ 0,-116,0,-202,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,-120,0,0,0,0,0,0,0,
+ 0,-119,0,0,0,0,0,0,0,0,
+ 0,-129,-8,0,0,0,0,0,0,0,
+ 0,-51,0,0,0,0,0,0,0,0,
+ -155,0,0,0,0,0,0,-131,-72,-123,
+ -161,-142,-148,-73,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-203,0,0,
+ 0,0,0,0,0,-113,-67,0,0,-162,
+ -166,0,-193,-106,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ -204,0,0,-54,0,0,0,0,0,0,
+ 0,0,-160,0,0,0,0,0,0,0,
+ -55,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-52,0,0,0,
+ 0,0,0,0,0,-82,0,0,0,0,
+ -74,-179,-9,0,0,0,0,0,0,-115,
+ 0,0,-143,0,0,0,0,-167,0,-85,
+ 0,0,-171,0,0,0,0,-86,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-184,0,0,0,0,
+ 0,0,0,-75,0,-111,0,0,0,0,
+ -48,0,0,0,0,0,0,0,0,-201,
+ 0,0,0,0,0,-159,-152,0,0,0,
+ 0,0,0,0,0,0,0,-50,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-10,
+ 0,0,0,0,0,0,0,-42,0,0,
+ 0,0,0,0,0,0,0,0,-43,0,
+ 0,0,0,0,0,0,0,-117,0,-11,
+ 0,0,0,0,0,0,0,0,0,-44,
+ 0,0,0,0,0,0,0,0,-108,0,
+ -45,0,0,0,0,0,0,0,0,-194,
+ 0,-71,-187,-156,-109,-118,-31,-124,0,0,
+ 0,0,0,0,0,0,-110,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -147,0,0,0,0,0,0,-14,-28,-35,
- 0,0,-122,-76,0,0,0,0,0,0,
- 0,0,0,0,-39,0,0,0,0,0,
- 0,0,0,0,0,0,-189,0,0,0,
- 0,0,0,0,0,-183,-125,0,0,0,
- -79,-128,0,0,-40,0,0,0,0,0,
- 0,-41,0,0,0,0,0,0,-81,0,
- 0,0,0,0,-133,-36,0,0,0,0,
- 0,0,-112,0,0,-153,-135,0,0,0,
- 0,0,-134,0,-136,0,0,0,0,0,
- -176,0,-138,0,-154,-174,0,0,-137,0,
- 0,0,-105,0,-158,0,0,0,0,-149,
- 0,-190,0,0,0,-164,0,0,0,0,
- 0,0,0,0,-175,0,0,0,0,0,
+ 0,-147,0,0,0,0,0,0,-14,-28,
+ -35,0,0,-122,-76,0,0,0,0,0,
+ 0,0,0,0,0,-39,0,0,0,0,
+ 0,0,0,0,0,0,0,-189,0,0,
+ 0,0,0,0,0,0,-183,-125,0,0,
+ 0,-79,-128,0,0,-40,0,0,0,0,
+ 0,0,-41,0,0,0,0,0,0,-81,
+ 0,0,0,0,0,-133,-36,0,0,0,
+ 0,0,0,-112,0,0,-153,-135,0,0,
+ 0,0,0,-134,0,-136,0,0,0,0,
+ 0,-176,0,-138,0,-154,-174,0,0,-137,
+ 0,0,0,-105,0,-158,0,0,0,0,
+ -149,0,-190,0,0,0,-164,0,0,0,
+ 0,0,0,0,0,-175,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-1,0,0,
- 0,-150,0,-132,-178,-53,0,-163,-157,0,
- 0,0,0,0,0,-146,-141,0,0,-195,
- 0,-172,-180,0,0,0,0,0,0,0,
- 0,0,0,0,0,-173,-186,0,0,-181,
- 0,-196,0,-197,0,0,0,0,0,-198,
- 0,-199,-200,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-1,0,
+ 0,0,-150,0,-132,-178,-53,0,-163,-157,
+ 0,0,0,0,0,0,-146,-141,0,0,
+ -195,0,-172,-180,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-173,-186,0,0,
+ -181,0,-196,0,-197,0,0,0,0,0,
+ -198,0,-199,-200,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0
+ 0,0,0,0,0,0,0,0,0,0,
+ 0
};
};
public final static short baseCheck[] = BaseCheck.baseCheck;
@@ -230,157 +231,157 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
31,31,31,31,52,54,54,54,54,54,
54,54,54,54,54,54,54,64,64,27,
27,61,61,61,61,62,62,62,55,55,
- 56,56,48,48,32,85,85,78,79,79,
- 79,63,63,80,80,81,81,65,65,20,
- 21,21,21,30,47,47,33,33,33,33,
- 36,36,38,34,34,35,39,39,108,108,
- 37,109,109,86,86,25,25,25,25,25,
- 25,25,25,25,82,49,49,49,49,58,
- 58,57,57,57,59,59,50,50,87,87,
- 69,69,60,60,60,41,41,41,42,43,
- 43,43,44,44,44,44,53,53,70,70,
- 70,70,66,88,89,89,90,90,91,91,
- 110,110,111,111,112,112,112,112,114,114,
- 113,113,113,115,115,83,83,1,14,19,
- 15,388,579,43,482,408,219,521,493,523,
- 522,555,524,568,567,73,90,133,209,342,
- 14,19,15,388,40,135,132,134,158,270,
- 14,19,15,388,579,43,482,408,389,521,
- 493,523,522,555,524,568,567,73,276,137,
- 432,164,318,14,19,15,388,33,141,144,
- 147,150,318,14,19,15,388,32,387,1210,
- 1263,1444,1481,1499,1205,269,549,371,496,580,
- 597,6,278,215,1550,217,1592,219,220,225,
- 339,264,1103,1098,267,279,250,209,191,612,
- 270,14,19,15,388,579,43,482,408,389,
- 521,493,523,522,555,524,568,567,73,276,
- 195,14,19,15,388,579,43,482,408,389,
- 521,493,523,522,555,524,568,567,73,276,
- 98,98,334,334,318,14,19,15,388,579,
- 43,482,408,278,521,493,523,522,555,524,
- 568,567,73,90,599,16,279,1130,390,284,
- 1467,285,51,280,318,14,19,15,388,42,
- 43,482,408,10,521,846,281,145,14,19,
- 15,388,579,43,482,408,1384,521,493,523,
- 522,555,524,568,567,73,1368,166,23,22,
- 235,36,22,476,115,387,366,14,19,15,
- 388,579,43,482,408,1387,521,493,523,522,
- 555,524,568,567,73,1477,170,14,19,15,
- 388,579,43,482,408,286,521,493,523,522,
- 555,524,568,567,73,1606,1543,211,262,236,
- 294,14,19,15,388,579,43,482,408,382,
- 521,493,523,522,555,524,568,567,73,276,
- 318,14,19,15,388,579,43,482,408,373,
- 521,493,523,522,555,524,568,567,73,91,
- 390,420,609,127,318,14,19,15,388,579,
- 43,482,408,282,521,493,523,522,555,524,
- 568,567,73,84,318,14,19,15,388,579,
- 43,482,408,251,521,493,523,522,555,524,
- 568,567,73,83,318,14,19,15,388,579,
- 43,482,408,1556,521,493,523,522,555,524,
- 568,567,73,82,318,14,19,15,388,579,
- 43,482,408,245,521,493,523,522,555,524,
- 568,567,73,81,318,14,19,15,388,579,
- 43,482,408,408,521,493,523,522,555,524,
- 568,567,73,80,318,14,19,15,388,579,
- 43,482,408,550,521,493,523,522,555,524,
- 568,567,73,79,318,14,19,15,388,579,
- 43,482,408,554,521,493,523,522,555,524,
- 568,567,73,78,318,14,19,15,388,579,
- 43,482,408,564,521,493,523,522,555,524,
- 568,567,73,77,318,14,19,15,388,579,
- 43,482,408,237,521,493,523,522,555,524,
- 568,567,73,76,318,14,19,15,388,579,
- 43,482,408,573,521,493,523,522,555,524,
- 568,567,73,75,318,14,19,15,388,579,
- 43,482,408,49,521,493,523,522,555,524,
- 568,567,73,74,318,14,19,15,388,42,
- 43,482,763,133,209,518,30,66,350,31,
- 192,135,132,134,158,318,14,19,15,388,
- 579,43,482,408,598,521,493,523,522,555,
- 524,568,567,73,1612,137,949,164,220,310,
- 387,166,400,110,141,144,147,150,318,14,
- 19,15,388,42,39,1210,1263,1444,1481,1499,
- 1205,318,14,19,15,388,579,43,482,408,
- 1031,521,493,523,522,555,524,568,567,73,
- 1626,318,14,19,15,388,42,43,482,408,
- 360,521,493,523,522,555,524,568,567,92,
- 318,14,19,15,388,42,43,482,408,442,
- 521,493,523,522,555,524,568,567,92,318,
- 14,19,15,388,42,43,613,1627,318,14,
- 19,15,388,42,43,482,803,318,14,19,
- 15,388,42,43,482,408,208,521,493,523,
- 522,555,524,568,567,92,318,14,19,15,
- 388,42,43,482,408,409,521,493,523,522,
- 555,524,568,567,92,318,14,19,15,388,
- 42,43,643,1634,318,14,19,15,388,42,
- 38,591,1061,318,14,19,15,388,42,43,
- 482,408,199,521,493,523,522,555,524,568,
- 567,92,318,14,19,15,388,42,43,482,
- 408,608,521,493,523,522,555,524,568,567,
- 72,69,318,14,19,15,388,42,37,200,
- 881,318,14,19,15,388,42,43,482,408,
- 590,521,493,523,522,848,269,607,194,540,
- 504,540,402,349,214,1550,217,1592,219,220,
- 225,1565,262,1103,1098,267,182,151,258,249,
- 209,249,209,270,272,587,334,269,271,617,
- 576,259,615,535,1594,214,1550,217,1592,219,
- 220,225,1099,262,1103,1098,267,273,882,1536,
- 215,1550,217,1592,219,220,225,1222,256,1232,
- 252,1694,1265,318,14,19,15,388,42,43,
- 482,408,614,521,493,523,522,555,524,879,
- 318,14,19,15,388,42,43,482,408,1694,
- 521,493,523,522,555,880,318,14,19,15,
- 388,42,43,482,408,49,521,493,523,864,
- 97,513,318,14,19,15,388,42,36,6,
- 1610,1694,559,1630,1694,133,209,323,1523,334,
- 133,209,563,136,132,134,158,478,140,132,
- 134,158,250,209,214,1550,217,1592,219,220,
- 225,21,250,209,287,614,1694,138,1132,164,
- 20,1694,139,461,164,334,142,145,148,151,
- 318,14,19,15,388,42,43,482,408,513,
- 521,493,845,133,209,590,613,268,1610,195,
- 197,143,132,134,158,823,783,318,14,19,
- 15,388,42,43,482,408,1632,521,847,1694,
- 1071,181,214,1550,217,1592,219,220,225,318,
- 14,19,15,388,42,35,1132,318,14,19,
- 15,388,42,43,482,408,255,683,318,14,
- 19,15,388,42,43,482,408,6,703,318,
- 14,19,15,388,42,34,1525,196,197,318,
- 14,19,15,388,42,43,482,408,478,723,
- 318,14,19,15,388,42,43,482,408,227,
- 743,529,323,599,540,6,462,540,1610,1694,
- 1513,237,1211,1694,1539,517,221,14,19,15,
- 388,42,35,272,249,209,269,249,209,289,
- 1694,269,214,1550,217,1592,219,220,225,242,
- 1694,1694,262,1103,1098,267,1536,262,1103,1098,
- 267,221,14,19,15,388,42,35,6,6,
- 470,1265,386,545,466,386,261,307,307,454,
- 193,1694,1101,1694,243,318,14,19,15,388,
- 42,46,194,194,133,209,546,609,1694,855,
- 1386,1386,146,132,134,158,323,478,86,86,
- 88,495,334,453,453,318,14,19,15,388,
- 42,45,318,14,19,15,388,42,44,500,
- 239,133,209,1100,274,6,6,452,1126,149,
- 132,134,158,372,1535,454,334,6,1640,133,
- 209,1694,823,588,1229,588,1545,152,132,134,
- 158,587,823,6,823,588,334,1071,275,128,
- 1552,206,1598,530,823,588,86,194,1694,194,
- 611,1237,79,227,823,1383,590,1383,221,194,
- 1694,823,1543,254,1694,372,1100,1383,269,194,
- 1482,190,1097,190,823,224,1071,1383,1090,1599,
- 1285,1599,26,190,264,1103,1098,267,246,1071,
- 1595,1599,594,190,391,590,6,454,128,600,
- 1613,1599,254,823,205,454,478,6,823,1642,
- 166,1097,478,590,360,254,410,223,1071,1172,
- 1129,184,1482,194,1097,1100,478,478,86,238,
- 590,1383,590,305,478,240,86,1694,1643,183,
- 590,878,334,572,254,1694,1694,191,1694,241,
- 286,1516,1694,1097,1694,1694,201,288,202,1117,
- 1694,1694,1694,205,226,230,277,1694,1694,1694,
- 1694,316,1694,1694,1694,1694,1694,1694,1255,1129,
- 1694,0,17,178,0,18,177,0,1,1916,
- 0,1,1927,0
+ 56,56,48,48,48,32,85,85,78,79,
+ 79,79,63,63,80,80,81,81,65,65,
+ 20,21,21,21,30,47,47,33,33,33,
+ 33,36,36,38,34,34,35,39,39,108,
+ 108,37,109,109,86,86,25,25,25,25,
+ 25,25,25,25,25,82,49,49,49,49,
+ 58,58,57,57,57,59,59,50,50,87,
+ 87,69,69,60,60,60,41,41,41,42,
+ 43,43,43,44,44,44,44,53,53,70,
+ 70,70,70,66,88,89,89,90,90,91,
+ 91,110,110,111,111,112,112,112,112,114,
+ 114,113,113,113,115,115,83,83,1,14,
+ 19,15,389,580,43,483,409,11,522,494,
+ 524,523,556,525,569,568,73,90,133,210,
+ 626,14,19,15,389,40,135,132,134,158,
+ 539,14,19,15,389,580,43,483,409,390,
+ 522,494,524,523,556,525,569,568,73,277,
+ 137,573,164,597,14,19,15,389,33,141,
+ 144,147,150,597,14,19,15,389,32,388,
+ 1211,1264,1445,1482,1500,1206,270,210,42,740,
+ 719,745,6,279,216,1551,218,1593,220,221,
+ 226,340,265,1104,1099,268,280,251,210,242,
+ 613,539,14,19,15,389,580,43,483,409,
+ 390,522,494,524,523,556,525,569,568,73,
+ 277,440,14,19,15,389,580,43,483,409,
+ 390,522,494,524,523,556,525,569,568,73,
+ 277,516,516,397,397,597,14,19,15,389,
+ 580,43,483,409,279,522,494,524,523,556,
+ 525,569,568,73,90,600,16,280,1131,391,
+ 285,1468,286,347,281,597,14,19,15,389,
+ 42,43,483,409,248,522,847,282,368,14,
+ 19,15,389,580,43,483,409,1385,522,494,
+ 524,523,556,525,569,568,73,1369,135,23,
+ 22,236,283,261,439,291,388,655,14,19,
+ 15,389,580,43,483,409,1388,522,494,524,
+ 523,556,525,569,568,73,1478,404,14,19,
+ 15,389,580,43,483,409,450,522,494,524,
+ 523,556,525,569,568,73,1607,1544,446,314,
+ 237,568,14,19,15,389,580,43,483,409,
+ 660,522,494,524,523,556,525,569,568,73,
+ 277,597,14,19,15,389,580,43,483,409,
+ 550,522,494,524,523,556,525,569,568,73,
+ 91,684,700,758,394,597,14,19,15,389,
+ 580,43,483,409,283,522,494,524,523,556,
+ 525,569,568,73,84,597,14,19,15,389,
+ 580,43,483,409,430,522,494,524,523,556,
+ 525,569,568,73,83,597,14,19,15,389,
+ 580,43,483,409,1557,522,494,524,523,556,
+ 525,569,568,73,82,597,14,19,15,389,
+ 580,43,483,409,433,522,494,524,523,556,
+ 525,569,568,73,81,597,14,19,15,389,
+ 580,43,483,409,533,522,494,524,523,556,
+ 525,569,568,73,80,597,14,19,15,389,
+ 580,43,483,409,724,522,494,524,523,556,
+ 525,569,568,73,79,597,14,19,15,389,
+ 580,43,483,409,727,522,494,524,523,556,
+ 525,569,568,73,78,597,14,19,15,389,
+ 580,43,483,409,453,522,494,524,523,556,
+ 525,569,568,73,77,597,14,19,15,389,
+ 580,43,483,409,717,522,494,524,523,556,
+ 525,569,568,73,76,597,14,19,15,389,
+ 580,43,483,409,623,522,494,524,523,556,
+ 525,569,568,73,75,597,14,19,15,389,
+ 580,43,483,409,286,522,494,524,523,556,
+ 525,569,568,73,74,597,14,19,15,389,
+ 42,43,483,764,133,210,518,254,288,605,
+ 349,192,135,132,134,158,597,14,19,15,
+ 389,580,43,483,409,634,522,494,524,523,
+ 556,525,569,568,73,1613,137,950,164,231,
+ 636,685,135,552,411,141,144,147,150,597,
+ 14,19,15,389,42,39,1211,1264,1445,1482,
+ 1500,1206,597,14,19,15,389,580,43,483,
+ 409,1032,522,494,524,523,556,525,569,568,
+ 73,1627,597,14,19,15,389,42,43,483,
+ 409,361,522,494,524,523,556,525,569,568,
+ 92,597,14,19,15,389,42,43,483,409,
+ 661,522,494,524,523,556,525,569,568,92,
+ 597,14,19,15,389,42,43,614,1628,597,
+ 14,19,15,389,42,43,483,804,597,14,
+ 19,15,389,42,43,483,409,209,522,494,
+ 524,523,556,525,569,568,92,597,14,19,
+ 15,389,42,43,483,409,451,522,494,524,
+ 523,556,525,569,568,92,597,14,19,15,
+ 389,42,43,644,1635,597,14,19,15,389,
+ 42,38,752,1062,597,14,19,15,389,42,
+ 43,483,409,200,522,494,524,523,556,525,
+ 569,568,92,597,14,19,15,389,42,43,
+ 483,409,753,522,494,524,523,556,525,569,
+ 568,72,502,597,14,19,15,389,42,37,
+ 201,882,597,14,19,15,389,42,43,483,
+ 409,308,522,494,524,523,849,270,756,751,
+ 114,765,114,255,536,215,1551,218,1593,220,
+ 221,226,1566,263,1104,1099,268,182,262,259,
+ 250,210,250,210,271,273,743,397,270,272,
+ 766,769,260,747,66,1595,215,1551,218,1593,
+ 220,221,226,1100,263,1104,1099,268,274,883,
+ 1537,216,1551,218,1593,220,221,226,1223,257,
+ 1233,520,1695,1266,597,14,19,15,389,42,
+ 43,483,409,763,522,494,524,523,556,525,
+ 880,597,14,19,15,389,42,43,483,409,
+ 1695,522,494,524,523,556,881,597,14,19,
+ 15,389,42,43,483,409,286,522,494,524,
+ 865,327,478,597,14,19,15,389,42,36,
+ 6,1611,1695,374,1631,1695,133,210,548,1524,
+ 397,133,210,410,136,132,134,158,302,140,
+ 132,134,158,251,210,215,1551,218,1593,220,
+ 221,226,21,251,210,288,763,1695,138,1133,
+ 164,20,1695,139,56,164,397,142,145,148,
+ 151,597,14,19,15,389,42,43,483,409,
+ 478,522,494,846,133,210,308,96,269,1611,
+ 196,198,143,132,134,158,824,784,597,14,
+ 19,15,389,42,43,483,409,1633,522,848,
+ 1695,1072,181,215,1551,218,1593,220,221,226,
+ 597,14,19,15,389,42,35,1133,597,14,
+ 19,15,389,42,43,483,409,256,684,597,
+ 14,19,15,389,42,43,483,409,6,704,
+ 597,14,19,15,389,42,34,1526,197,198,
+ 597,14,19,15,389,42,43,483,409,302,
+ 724,597,14,19,15,389,42,43,483,409,
+ 609,744,716,548,603,114,6,602,114,1611,
+ 1695,1514,238,1212,1695,1540,518,471,14,19,
+ 15,389,42,35,273,250,210,270,250,210,
+ 290,1695,270,215,1551,218,1593,220,221,226,
+ 243,1695,1695,263,1104,1099,268,1537,263,1104,
+ 1099,268,471,14,19,15,389,42,35,6,
+ 6,662,1266,387,162,104,387,262,308,308,
+ 455,193,1695,1102,1695,244,597,14,19,15,
+ 389,42,46,195,195,133,210,547,758,1695,
+ 856,1387,1387,146,132,134,158,548,302,86,
+ 86,88,152,397,454,454,597,14,19,15,
+ 389,42,45,597,14,19,15,389,42,44,
+ 200,240,133,210,1101,275,6,6,453,1127,
+ 149,132,134,158,399,1536,455,397,6,1641,
+ 133,210,1695,824,46,1230,94,1546,152,132,
+ 134,158,743,824,6,824,142,397,1072,276,
+ 544,1553,207,1599,631,824,238,86,195,1695,
+ 195,767,1238,435,228,824,1384,308,1384,222,
+ 195,1695,824,1544,255,1695,399,1101,1384,270,
+ 195,1483,190,1098,190,824,225,1072,1384,1091,
+ 1600,1286,1600,26,190,265,1104,1099,268,507,
+ 1072,1596,1600,744,190,48,308,6,455,544,
+ 190,1614,1600,255,824,206,455,302,6,824,
+ 1643,135,1098,302,308,361,255,411,224,1072,
+ 1173,1130,184,1483,195,1098,1101,302,302,86,
+ 239,308,1384,308,306,302,241,86,1695,1644,
+ 183,308,879,397,723,255,1695,1695,191,1695,
+ 242,287,1517,1695,1098,1695,1695,202,289,203,
+ 1118,1695,1695,1695,206,227,231,278,1695,1695,
+ 1695,1695,317,1695,1695,1695,1695,1695,1695,1256,
+ 1130,1695,0,17,178,0,18,177,0,1,
+ 1918,0,1,1929,0
};
};
public final static char baseAction[] = BaseAction.baseAction;
@@ -390,77 +391,93 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface TermCheck {
public final static byte termCheck[] = {0,
- 0,1,2,3,4,0,6,7,8,0,
- 10,11,12,13,14,15,16,17,18,19,
- 20,0,22,23,24,25,26,27,28,0,
- 0,1,0,12,4,0,36,37,38,39,
- 40,41,42,43,44,45,46,47,0,1,
- 0,21,4,3,6,7,8,57,58,59,
- 51,52,53,54,16,0,31,32,0,1,
- 2,3,24,25,26,27,28,9,0,1,
- 51,52,53,54,36,37,38,39,40,41,
- 42,43,44,45,46,47,0,0,1,49,
- 50,4,6,7,8,57,58,59,0,0,
- 1,33,16,4,0,0,51,52,53,54,
- 24,25,26,27,28,0,0,0,1,3,
- 21,4,36,37,38,39,40,41,42,43,
- 44,45,46,47,0,1,2,3,4,5,
- 0,1,2,3,10,11,12,13,14,15,
- 16,17,18,19,20,0,22,23,3,0,
- 1,2,3,4,5,49,50,63,34,10,
- 11,12,13,14,15,16,17,18,19,20,
- 0,22,23,0,0,1,2,3,4,5,
- 10,11,9,34,10,11,12,13,14,15,
- 0,17,18,19,20,21,22,23,0,0,
- 0,1,2,3,4,5,0,1,2,35,
- 10,11,12,13,14,15,0,17,18,19,
- 20,5,22,23,0,0,1,2,3,4,
- 0,0,1,3,34,10,11,12,13,14,
- 15,0,17,18,19,20,30,22,23,0,
- 1,2,3,4,55,31,32,67,68,10,
- 11,12,13,14,15,0,17,18,19,20,
- 21,22,23,0,1,2,3,4,80,49,
- 50,65,0,10,11,12,13,14,15,0,
- 17,18,19,20,21,22,23,0,1,2,
- 3,4,0,1,79,64,4,10,11,12,
- 13,14,15,0,17,18,19,20,5,22,
- 23,0,1,2,3,4,0,62,0,0,
- 2,10,11,12,13,14,15,9,17,18,
- 19,20,29,22,23,0,1,2,3,4,
- 0,0,0,64,3,10,11,12,13,14,
- 15,0,17,18,19,20,0,22,23,0,
- 0,2,3,21,5,6,7,8,9,0,
- 30,0,1,2,33,16,5,0,0,1,
- 9,62,4,24,25,26,27,28,29,0,
- 21,2,3,33,5,6,7,8,9,21,
- 29,0,1,2,3,16,0,56,31,32,
- 9,0,0,24,25,26,27,28,29,63,
- 69,70,71,72,73,74,75,76,77,78,
- 0,0,21,2,3,0,6,7,8,0,
- 9,6,7,8,5,0,16,0,0,0,
- 1,16,5,4,24,25,26,27,28,24,
- 25,26,27,28,0,0,0,2,29,0,
- 6,7,8,0,9,6,7,8,13,14,
- 16,34,0,1,2,16,0,0,24,25,
- 26,27,28,24,25,26,27,28,0,0,
- 2,2,3,5,0,60,61,9,9,0,
- 6,7,8,48,0,6,7,8,0,0,
- 6,7,8,0,6,7,8,29,0,56,
- 0,66,0,0,6,7,8,55,6,7,
- 8,0,0,10,11,0,5,60,61,0,
- 31,32,10,11,31,32,0,0,9,0,
- 0,5,5,0,5,2,0,0,0,0,
- 29,30,9,5,5,9,0,0,0,12,
- 0,21,0,0,0,29,0,0,0,9,
- 0,0,35,0,35,0,0,48,21,0,
- 0,56,0,0,35,0,30,0,30,0,
- 0,0,0,30,48,33,30,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,65,0,0,0,0,0,55,
+ 0,1,2,3,4,0,6,7,8,9,
+ 0,11,12,13,14,15,16,17,18,19,
+ 20,21,22,23,24,25,0,27,28,29,
+ 30,31,32,33,34,35,36,37,38,39,
+ 40,0,42,43,44,0,1,0,3,0,
+ 5,6,7,8,9,0,11,12,13,14,
+ 15,6,7,8,9,0,11,12,13,14,
+ 15,6,7,8,29,30,31,32,33,34,
+ 35,36,37,38,39,40,45,42,43,44,
+ 80,46,47,0,1,0,3,50,5,6,
+ 7,8,9,0,11,12,13,14,15,6,
+ 7,8,9,0,11,12,13,14,15,6,
+ 7,8,29,30,31,32,33,34,35,36,
+ 37,38,39,40,0,42,43,44,4,46,
+ 47,0,1,0,3,50,5,6,7,8,
+ 9,0,11,12,13,14,15,6,7,8,
+ 9,0,11,12,13,14,15,6,7,8,
+ 29,30,31,32,33,34,35,36,37,38,
+ 39,40,0,42,43,44,0,46,47,0,
+ 1,0,3,0,5,6,7,8,9,0,
+ 11,12,13,14,15,6,7,8,9,0,
+ 11,12,13,14,15,6,7,8,29,30,
+ 31,32,33,34,35,36,37,38,39,40,
+ 0,42,43,44,0,46,47,0,1,0,
+ 3,0,5,6,7,8,9,0,11,12,
+ 13,14,15,0,0,1,2,16,17,5,
+ 0,0,1,2,10,4,29,30,31,32,
+ 33,34,35,36,37,38,39,40,18,42,
+ 43,44,0,46,47,0,1,0,3,59,
+ 0,6,7,8,9,41,11,12,13,14,
+ 15,0,55,56,57,58,5,0,55,56,
+ 57,58,5,0,29,30,31,32,33,34,
+ 35,36,37,38,39,40,0,42,43,44,
+ 48,49,6,7,8,9,0,11,12,13,
+ 14,15,55,56,57,58,0,0,0,1,
+ 4,3,51,46,64,29,30,31,32,33,
+ 34,35,36,37,38,39,40,0,1,2,
+ 3,4,5,0,26,0,9,0,65,6,
+ 7,8,0,16,17,18,19,20,21,22,
+ 23,24,25,0,27,28,0,4,0,53,
+ 54,5,4,0,1,2,3,4,5,0,
+ 0,1,9,3,0,6,7,8,51,16,
+ 17,18,19,20,21,22,23,24,25,0,
+ 27,28,0,4,0,1,26,41,0,0,
+ 1,2,3,4,5,0,53,54,50,0,
+ 0,1,0,3,51,16,17,18,19,20,
+ 21,22,23,24,25,26,27,28,16,17,
+ 0,1,2,3,4,5,26,0,1,2,
+ 48,49,53,54,50,46,16,17,18,19,
+ 20,21,22,23,24,25,0,27,28,61,
+ 62,0,1,2,0,4,0,1,2,3,
+ 4,10,63,68,69,0,1,0,3,0,
+ 1,51,16,17,18,19,20,21,22,23,
+ 24,25,0,27,28,0,59,2,0,1,
+ 2,3,4,0,1,10,3,0,1,0,
+ 3,0,0,47,16,17,18,19,20,21,
+ 22,23,24,25,26,27,28,0,1,2,
+ 3,4,0,1,2,26,4,26,61,62,
+ 48,49,10,16,17,18,19,20,21,22,
+ 23,24,25,26,27,28,0,1,2,3,
+ 4,0,0,2,0,4,0,5,0,1,
+ 2,10,16,17,18,19,20,21,22,23,
+ 24,25,0,27,28,0,1,2,3,4,
+ 0,0,2,0,4,0,0,0,16,17,
+ 10,16,17,18,19,20,21,22,23,24,
+ 25,18,27,28,0,1,2,3,4,0,
+ 0,0,0,1,0,3,5,63,66,0,
+ 16,17,18,19,20,21,22,23,24,25,
+ 0,27,28,0,0,2,26,4,5,6,
+ 7,8,9,10,11,12,13,14,15,0,
+ 65,2,41,4,5,6,7,8,9,10,
+ 11,12,13,14,15,0,0,2,0,60,
+ 5,5,0,0,41,10,0,5,10,70,
+ 71,72,73,74,75,76,77,78,79,0,
+ 41,2,0,0,0,2,0,5,64,10,
+ 0,0,0,10,10,0,41,0,19,20,
+ 10,45,0,41,0,0,0,45,0,0,
+ 52,48,49,0,48,49,10,26,26,0,
+ 0,0,66,41,0,0,0,0,0,0,
+ 0,52,0,0,0,0,52,0,0,0,
+ 45,0,45,0,0,59,67,45,0,0,
+ 45,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,60,0,0,0,60,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0
+ 0,0
};
};
public final static byte termCheck[] = TermCheck.termCheck;
@@ -468,73 +485,89 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface TermAction {
public final static char termAction[] = {0,
- 1694,610,1438,1319,611,1,1904,1905,1906,58,
- 1212,1072,1349,372,362,329,1855,1704,1705,1706,
- 1707,63,1024,888,1856,1854,1907,1857,1853,60,
- 1694,1873,1694,1270,1874,53,1860,1865,1864,1862,
- 1863,1861,1866,1867,1859,1868,1869,1870,1694,1872,
- 47,1219,1871,1492,1904,1905,1906,1005,883,849,
- 1370,1359,1338,1327,1855,59,834,968,257,1916,
- 1102,1,1856,1854,1907,1857,1853,497,1,1691,
- 1370,1359,1338,1327,1860,1865,1864,1862,1863,1861,
- 1866,1867,1859,1868,1869,1870,127,1694,1723,1485,
- 1455,1724,1904,1905,1906,1005,883,849,1694,1694,
- 1873,1947,1855,1874,67,1694,1370,1359,1338,1327,
- 1856,1854,1907,1857,1853,1694,49,204,1873,1492,
- 1347,1874,1860,1865,1864,1862,1863,1861,1866,1867,
- 1859,1868,1869,1870,1,1711,1438,1396,1712,1697,
- 1694,1916,1379,1443,1212,1072,1349,372,362,329,
- 526,1704,1705,1706,1707,1694,1024,888,1133,1694,
- 1711,1438,1431,1712,1697,1485,1455,1081,1696,1212,
- 1072,1349,372,362,329,901,1704,1705,1706,1707,
- 50,1024,888,266,1,1711,1438,1319,1712,27,
- 1015,959,497,1696,1212,1072,1349,372,362,329,
- 71,1704,1705,1706,1707,1607,1024,888,1694,1694,
- 1694,1711,1438,1319,1712,1697,1,1916,1379,27,
- 1212,1072,1349,372,362,329,1694,1704,1705,1706,
- 1707,1703,1024,888,57,1694,1,1,1,1,
- 48,1694,1928,1492,1696,1,1,1,1,1,
- 1,69,1,1,1,1,1279,1,1,1,
- 1711,1438,1319,1712,1052,834,968,1163,1596,1212,
- 1072,1349,372,362,329,65,1704,1705,1706,1707,
- 1607,1024,888,1694,1711,1438,1319,1712,1681,1485,
- 1455,1702,1694,1212,1072,1349,372,362,329,70,
- 1704,1705,1706,1707,1607,1024,888,1694,1711,1438,
- 1319,1712,1694,1873,2000,1180,1874,1212,1072,1349,
- 372,362,329,1694,1704,1705,1706,1707,1699,1024,
- 888,1694,1711,1439,1319,1712,1694,1196,265,66,
- 1125,1212,1072,1349,372,362,329,497,1704,1705,
- 1706,1707,1698,1024,888,1,1711,1438,1319,1712,
- 87,1,1694,1180,1133,1212,1072,1349,372,362,
- 329,42,1704,1705,1706,1707,68,1024,888,17,
- 1,1682,1682,391,1682,178,178,178,1682,41,
- 590,1,1688,1102,1947,178,1699,56,1694,1873,
- 497,1196,1874,178,178,178,178,178,1682,18,
- 391,1685,1685,1947,1685,177,177,177,1685,1385,
- 1698,263,1916,1102,1443,177,1694,814,834,968,
- 497,186,1694,177,177,177,177,177,1685,1081,
- 794,774,754,734,714,674,694,654,634,614,
- 128,260,1505,1381,1,129,1904,1905,1906,1,
- 497,1904,1905,1906,89,61,1855,1694,1694,203,
- 1476,1855,1697,1476,1856,1854,1907,1857,1853,1856,
- 1854,1907,1857,1853,130,31,1694,1440,89,131,
- 1904,1905,1906,207,1506,1904,1905,1906,1718,1719,
- 1855,1696,1,1916,1379,1855,1694,62,1856,1854,
- 1907,1857,1853,1856,1854,1907,1857,1853,1,263,
- 1381,1381,1443,1699,245,1297,484,497,497,1694,
- 1,1,1,451,246,1904,1905,1906,244,55,
- 1,1,1,54,1904,1905,1906,1698,247,940,
- 1694,450,248,52,1904,1905,1906,996,1904,1905,
- 1906,1694,51,1015,959,1694,1699,1297,484,1694,
- 834,968,1015,959,834,968,1,1,921,1694,
- 185,1699,189,218,1701,1531,283,64,1,1,
- 1698,1160,497,1703,188,977,251,187,28,1270,
- 216,1517,1,28,198,1698,203,1694,1694,497,
- 1694,1694,189,1694,1700,1694,1694,1227,1533,1694,
- 1694,570,1694,1694,188,1694,1286,1694,430,1694,
- 1694,1694,1694,1721,1382,1946,2480,1694,1694,1694,
- 1694,1694,1694,1694,1694,1694,1694,1694,1694,1694,
- 1694,1694,1694,1702,1694,1694,1694,1694,1694,1033
+ 1695,611,1439,612,1320,1,1906,1907,1908,1856,
+ 1695,1857,1855,1909,1858,1854,1213,1073,1350,373,
+ 363,330,1705,1706,1707,1708,1695,1025,889,1861,
+ 1866,1865,1863,1864,1862,1867,1868,1860,1869,1870,
+ 1871,87,1006,884,850,1695,1,1,1,1695,
+ 189,1,1,1,1,128,1,1,1,1,
+ 1,1906,1907,1908,1856,246,1857,1855,1909,1858,
+ 1854,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,591,1,1,1,
+ 1682,189,1889,1695,1,1,1,1949,189,1,
+ 1,1,1,129,1,1,1,1,1,1906,
+ 1907,1908,1856,1695,1857,1855,1909,1858,1854,1906,
+ 1907,1908,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1695,1,1,1,1134,189,
+ 1889,1695,1,1695,1,1948,189,1,1,1,
+ 1,130,1,1,1,1,1,1906,1907,1908,
+ 1856,247,1857,1855,1909,1858,1854,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1695,1,1,1,1695,189,1889,1695,
+ 1,1695,1,1695,188,1,1,1,1,131,
+ 1,1,1,1,1,1906,1907,1908,1856,245,
+ 1857,1855,1909,1858,1854,1906,1907,1908,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1695,1,1,1,1695,188,1889,1695,1,1695,
+ 1,50,189,1,1,1,1,58,1,1,
+ 1,1,1,60,1,1689,1103,1016,960,1700,
+ 63,1695,1918,1380,498,1444,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1271,1,
+ 1,1,53,189,1889,1695,1873,59,1872,1053,
+ 67,1906,1907,1908,1856,1699,1857,1855,1909,1858,
+ 1854,1695,1371,1360,1339,1328,1698,1695,1371,1360,
+ 1339,1328,1702,69,1861,1866,1865,1863,1864,1862,
+ 1867,1868,1860,1869,1870,1871,127,1006,884,850,
+ 835,969,1906,1907,1908,1856,1695,1857,1855,1909,
+ 1858,1854,1371,1360,1339,1328,47,1695,1695,1874,
+ 1493,1875,1697,1701,1082,1861,1866,1865,1863,1864,
+ 1862,1867,1868,1860,1869,1870,1871,1,1712,1439,
+ 1713,1397,1698,248,1220,1695,527,1695,1181,1906,
+ 1907,1908,1695,1213,1073,1350,373,363,330,1705,
+ 1706,1707,1708,49,1025,889,1695,1493,1,1486,
+ 1456,1700,1134,1695,1712,1439,1713,1432,1698,249,
+ 1695,1874,902,1875,1695,1906,1907,1908,1697,1213,
+ 1073,1350,373,363,330,1705,1706,1707,1708,48,
+ 1025,889,57,1493,1,1692,1348,1699,61,1,
+ 1712,1439,1713,1320,27,71,1486,1456,1949,65,
+ 1695,1874,52,1875,1697,1213,1073,1350,373,363,
+ 330,1705,1706,1707,1708,1608,1025,889,1016,960,
+ 1695,1712,1439,1713,1320,1698,1386,1,1918,1380,
+ 835,969,1486,1456,1949,27,1213,1073,1350,373,
+ 363,330,1705,1706,1707,1708,1695,1025,889,1298,
+ 485,258,1918,1103,1695,1,1695,1,1,1,
+ 1,498,1197,1164,1597,1695,1724,62,1725,1695,
+ 1930,1697,1,1,1,1,1,1,1,1,
+ 1,1,56,1,1,266,997,1126,1,1712,
+ 1439,1713,1320,205,1874,498,1875,1695,1874,1695,
+ 1875,41,1695,2002,1213,1073,1350,373,363,330,
+ 1705,1706,1707,1708,1608,1025,889,1695,1712,1439,
+ 1713,1320,264,1918,1103,392,1444,392,1298,485,
+ 835,969,498,1213,1073,1350,373,363,330,1705,
+ 1706,1707,1708,1608,1025,889,1695,1712,1439,1713,
+ 1320,261,1,1382,66,1,1695,1704,1,1918,
+ 1380,498,1213,1073,1350,373,363,330,1705,1706,
+ 1707,1708,51,1025,889,1695,1712,1440,1713,1320,
+ 264,1695,1382,64,1444,70,1695,1695,1016,960,
+ 498,1213,1073,1350,373,363,330,1705,1706,1707,
+ 1708,1271,1025,889,1,1712,1439,1713,1320,42,
+ 186,1,204,1477,1695,1477,89,1197,1703,1695,
+ 1213,1073,1350,373,363,330,1705,1706,1707,1708,
+ 1695,1025,889,17,68,1683,1506,1683,1683,178,
+ 178,178,178,1683,178,178,178,178,178,18,
+ 1181,1686,89,1686,1686,177,177,177,177,1686,
+ 177,177,177,177,177,1,1695,1382,1695,815,
+ 1700,1704,1695,55,1683,498,54,1700,922,795,
+ 775,755,735,715,675,695,655,635,615,31,
+ 1686,1441,1,219,284,1532,199,1700,1082,1507,
+ 267,185,187,498,978,252,1699,28,1719,1720,
+ 498,1280,28,1699,208,204,217,1161,1695,1695,
+ 1228,835,969,1695,835,969,498,1518,1534,1695,
+ 1695,1695,1703,1699,1695,1695,1695,1695,1695,1695,
+ 1695,452,1695,1695,1695,1695,1383,1695,1695,1695,
+ 1287,1695,431,1695,1695,1034,451,1722,1695,1695,
+ 2665,1695,1695,1695,1695,1695,1695,1695,1695,1695,
+ 1695,1695,1695,1695,941,1695,1695,1695,571
};
};
public final static char termAction[] = TermAction.termAction;
@@ -542,27 +575,27 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface Asb {
public final static char asb[] = {0,
- 426,1,80,41,80,80,80,80,80,80,
- 80,80,80,337,3,181,178,185,183,191,
- 189,193,192,195,194,10,80,337,163,163,
- 256,337,321,321,378,80,80,80,80,80,
+ 427,1,80,41,80,80,80,80,80,80,
+ 80,80,80,338,3,181,178,185,183,191,
+ 189,193,192,195,194,10,80,338,163,163,
+ 256,338,322,322,379,80,80,80,80,80,
80,80,80,80,80,80,80,80,80,80,
80,80,80,80,80,80,80,80,80,80,
80,80,80,80,80,80,163,72,260,74,
- 291,161,160,231,243,243,70,70,243,70,
- 243,351,117,117,163,45,178,178,183,183,
+ 292,161,160,231,243,243,70,70,243,70,
+ 243,352,117,117,163,45,178,178,183,183,
183,183,181,181,189,185,185,192,191,224,
- 194,193,166,54,256,251,97,45,374,78,
- 163,397,294,206,262,206,262,331,206,80,
- 54,251,374,374,45,77,74,163,254,351,
- 162,296,262,262,262,262,331,331,333,49,
- 54,374,251,80,80,45,78,291,219,218,
- 260,296,163,262,288,324,262,262,288,333,
- 226,333,331,288,52,229,321,80,48,54,
- 251,45,45,163,397,294,254,288,326,288,
- 288,80,321,333,56,45,321,80,333,296,
- 202,80,201,93,260,288,45,288,163,162,
- 326,80,93,322
+ 194,193,166,54,256,251,97,45,375,78,
+ 163,398,295,206,262,206,262,332,206,80,
+ 54,251,375,375,45,77,74,163,254,352,
+ 162,297,262,262,262,262,332,332,334,49,
+ 54,375,251,80,80,45,78,292,219,218,
+ 260,297,163,262,289,325,262,262,289,334,
+ 226,334,332,289,52,229,322,80,48,54,
+ 251,45,45,163,398,295,254,289,327,289,
+ 289,80,322,334,56,45,322,80,334,297,
+ 202,80,201,93,260,289,45,289,163,162,
+ 327,80,93,323
};
};
public final static char asb[] = Asb.asb;
@@ -570,51 +603,51 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface Asr {
public final static byte asr[] = {0,
- 80,0,65,9,2,48,66,13,14,12,
- 3,10,11,49,50,31,32,51,52,53,
- 54,60,61,62,63,64,67,68,35,56,
- 69,70,71,72,73,75,74,76,77,78,
- 55,29,80,30,34,5,0,56,9,48,
- 0,5,35,9,48,13,14,12,3,10,
- 11,22,23,15,2,17,18,19,20,1,
- 4,21,0,6,7,8,16,34,5,17,
- 18,19,20,4,13,14,12,10,11,22,
- 23,15,3,2,1,0,6,7,8,2,
- 17,18,19,20,1,4,13,14,12,3,
- 10,11,22,23,15,0,7,16,28,8,
- 27,26,25,6,24,48,66,13,14,12,
- 10,11,49,50,31,32,51,52,53,54,
- 60,61,62,63,64,67,68,56,69,70,
- 71,72,73,74,75,76,77,78,3,2,
- 9,30,29,5,0,56,69,70,71,72,
- 73,74,75,76,77,78,21,3,49,50,
- 10,11,32,31,51,52,53,54,60,61,
- 12,62,63,64,34,29,35,80,67,68,
- 55,65,5,30,0,24,6,25,26,27,
- 7,16,28,8,1,3,21,2,5,30,
- 29,65,9,55,0,5,30,35,56,0,
- 44,36,41,39,40,38,37,42,43,45,
- 46,47,55,65,28,25,16,24,27,26,
- 6,7,8,30,1,5,29,2,9,3,
- 0,24,36,6,37,57,25,38,26,39,
- 40,27,7,41,42,16,58,28,59,43,
- 44,8,45,46,47,1,4,35,5,0,
- 3,2,9,29,5,24,36,6,37,57,
- 25,38,26,39,40,27,7,41,42,16,
- 58,28,59,43,44,8,45,46,47,33,
- 4,1,0,65,5,3,1,2,55,0,
- 1,4,5,35,30,0,15,17,18,19,
- 20,2,13,14,12,3,10,11,22,23,
- 4,1,57,58,59,44,36,41,39,40,
- 38,37,42,43,45,46,47,28,25,16,
- 24,27,26,6,7,8,0,5,29,15,
- 17,18,19,20,1,4,2,13,14,12,
- 3,10,11,22,23,0,24,36,6,37,
- 57,25,38,26,39,40,27,7,41,42,
- 16,58,28,59,43,44,8,45,46,47,
- 1,4,33,3,0,15,17,18,19,20,
- 1,4,2,13,14,12,3,10,11,22,
- 23,79,0
+ 80,0,66,10,2,52,67,19,20,18,
+ 4,16,17,53,54,48,49,55,56,57,
+ 58,61,62,63,64,65,68,69,46,60,
+ 70,71,72,73,74,76,75,77,78,79,
+ 59,41,80,45,51,5,0,60,10,52,
+ 0,5,46,10,52,19,20,18,4,16,
+ 17,27,28,21,2,22,23,24,25,1,
+ 3,26,0,6,7,8,9,51,5,22,
+ 23,24,25,3,19,20,18,16,17,27,
+ 28,21,4,2,1,0,6,7,8,2,
+ 22,23,24,25,1,3,19,20,18,4,
+ 16,17,27,28,21,0,7,9,15,8,
+ 14,13,12,6,11,52,67,19,20,18,
+ 16,17,53,54,48,49,55,56,57,58,
+ 61,62,63,64,65,68,69,60,70,71,
+ 72,73,74,75,76,77,78,79,4,2,
+ 10,45,41,5,0,60,70,71,72,73,
+ 74,75,76,77,78,79,26,4,53,54,
+ 16,17,49,48,55,56,57,58,61,62,
+ 18,63,64,65,51,41,46,80,68,69,
+ 59,66,5,45,0,11,6,12,13,14,
+ 7,9,15,8,1,4,26,2,5,45,
+ 41,66,10,59,0,5,45,46,60,0,
+ 37,29,34,32,33,31,30,35,36,38,
+ 39,40,59,66,15,12,9,11,14,13,
+ 6,7,8,45,1,5,41,2,10,4,
+ 0,11,29,6,30,42,12,31,13,32,
+ 33,14,7,34,35,9,43,15,44,36,
+ 37,8,38,39,40,1,3,47,46,5,
+ 0,4,2,10,41,5,11,29,6,30,
+ 42,12,31,13,32,33,14,7,34,35,
+ 9,43,15,44,36,37,8,38,39,40,
+ 50,3,1,0,66,5,4,1,2,59,
+ 0,1,3,5,46,45,0,21,22,23,
+ 24,25,2,19,20,18,4,16,17,27,
+ 28,3,1,42,43,44,37,29,34,32,
+ 33,31,30,35,36,38,39,40,15,12,
+ 9,11,14,13,6,7,8,0,5,41,
+ 21,22,23,24,25,1,3,2,19,20,
+ 18,4,16,17,27,28,0,11,29,6,
+ 30,42,12,31,13,32,33,14,7,34,
+ 35,9,43,15,44,36,37,8,38,39,
+ 40,1,3,50,4,0,21,22,23,24,
+ 25,1,3,2,19,20,18,4,16,17,
+ 27,28,47,0
};
};
public final static byte asr[] = Asr.asr;
@@ -666,14 +699,14 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface TerminalIndex {
public final static char terminalIndex[] = {0,
- 85,2,9,86,87,48,64,76,1,10,
- 11,8,6,7,68,69,81,82,83,84,
- 3,12,13,44,55,60,63,72,90,42,
- 16,17,30,89,91,47,52,56,61,62,
- 66,67,74,75,78,79,80,4,14,15,
- 18,19,20,21,29,31,54,70,73,22,
- 23,24,25,26,92,5,27,28,32,33,
- 34,35,36,37,38,39,40,41,93,94,
+ 85,2,86,9,87,48,64,76,69,1,
+ 44,55,60,63,72,10,11,8,6,7,
+ 68,81,82,83,84,3,12,13,47,52,
+ 56,61,62,66,67,74,75,78,79,80,
+ 90,54,70,73,42,91,93,16,17,30,
+ 89,4,14,15,18,19,20,21,29,31,
+ 22,23,24,25,26,92,5,27,28,32,
+ 33,34,35,36,37,38,39,40,41,94,
45,46,49,50,51,53,57,58,59,65,
71,77,88
};
@@ -735,10 +768,10 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface ScopeLa {
public final static byte scopeLa[] = {
- 35,35,34,34,35,35,35,86,35,29,
- 34,29,35,35,29,34,65,29,29,34,
- 55,34,34,29,34,29,29,56,1,92,
- 29,65,2,2,2
+ 46,46,51,51,46,46,46,86,46,41,
+ 51,41,46,46,41,51,66,41,41,51,
+ 59,51,51,41,51,41,41,60,1,92,
+ 41,66,2,2,2
};
};
public final static byte scopeLa[] = ScopeLa.scopeLa;
@@ -757,25 +790,25 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface ScopeRhs {
public final static char scopeRhs[] = {0,
- 139,9,0,96,0,181,102,0,31,136,
- 0,144,163,102,21,0,98,0,150,102,
+ 139,10,0,96,0,181,102,0,31,136,
+ 0,144,163,102,26,0,98,0,150,102,
2,135,0,97,0,150,102,2,0,153,
- 2,0,112,16,175,102,9,0,112,175,
- 102,16,9,0,112,16,9,0,112,175,
- 102,9,0,112,9,0,129,0,2,0,
+ 2,0,112,9,175,102,10,0,112,175,
+ 102,9,10,0,112,9,10,0,112,175,
+ 102,10,0,112,10,0,129,0,2,0,
151,97,0,2,97,0,150,102,2,129,
0,2,0,150,97,0,140,2,0,144,
- 173,102,21,120,57,0,144,173,102,21,
- 57,0,125,0,99,0,178,102,125,0,
- 102,125,0,141,99,0,148,102,21,120,
- 59,0,148,102,21,120,58,0,148,102,
- 21,59,0,148,102,21,58,0,187,85,
+ 173,102,26,120,42,0,144,173,102,26,
+ 42,0,125,0,99,0,178,102,125,0,
+ 102,125,0,141,99,0,148,102,26,120,
+ 44,0,148,102,26,120,43,0,148,102,
+ 26,44,0,148,102,26,43,0,187,85,
0,77,2,100,97,99,0,187,115,138,
- 2,89,0,53,0,0,138,68,110,0,
- 29,117,0,162,2,15,0,144,163,102,
- 21,115,162,2,0,162,2,0,97,3,
+ 2,89,0,53,0,0,138,69,110,0,
+ 29,117,0,162,2,21,0,144,163,102,
+ 26,115,162,2,0,162,2,0,97,3,
0,104,0,98,0,177,2,97,0,138,
- 9,97,0,138,2,0
+ 10,97,0,138,2,0
};
};
public final static char scopeRhs[] = ScopeRhs.scopeRhs;
@@ -783,16 +816,16 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface ScopeState {
public final static char scopeState[] = {0,
- 390,0,389,0,1545,1599,1535,1525,1523,0,
- 1117,1279,1379,1211,360,1102,1071,0,823,1205,
- 307,0,1592,1550,1103,1098,360,1102,1071,1543,
- 1381,1386,0,1431,1396,1180,1163,1196,1081,1297,
- 484,1270,968,834,1370,1359,1338,1327,1492,1485,
- 1455,1015,959,372,362,1349,1319,1212,1072,1024,
- 888,329,1033,996,977,940,921,901,855,546,
- 1052,526,497,814,794,774,754,734,714,694,
- 674,654,634,614,307,590,454,570,410,430,
- 339,0
+ 391,0,390,0,1546,1600,1536,1526,1524,0,
+ 1118,1280,1380,1212,361,1103,1072,0,824,1206,
+ 308,0,1593,1551,1104,1099,361,1103,1072,1544,
+ 1382,1387,0,1432,1397,1181,1164,1197,1082,1298,
+ 485,1271,969,835,1371,1360,1339,1328,1493,1486,
+ 1456,1016,960,373,363,1350,1320,1213,1073,1025,
+ 889,330,1034,997,978,941,922,902,856,547,
+ 1053,527,498,815,795,775,755,735,715,695,
+ 675,655,635,615,308,591,455,571,411,431,
+ 340,0
};
};
public final static char scopeState[] = ScopeState.scopeState;
@@ -800,27 +833,27 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface InSymb {
public final static char inSymb[] = {0,
- 0,176,102,164,15,23,22,11,10,3,
- 12,14,13,2,97,101,100,104,103,106,
- 105,108,107,110,109,98,30,2,162,138,
- 125,102,66,48,2,9,11,10,50,49,
- 3,54,53,52,51,31,32,12,61,60,
- 63,62,68,67,64,78,77,76,74,75,
- 73,72,71,70,69,56,162,115,102,9,
- 2,136,135,165,166,167,59,58,168,57,
- 169,170,1,4,177,138,100,100,103,103,
+ 0,176,102,164,21,28,27,17,16,4,
+ 18,20,19,2,97,101,100,104,103,106,
+ 105,108,107,110,109,98,45,2,162,138,
+ 125,102,67,52,2,10,17,16,54,53,
+ 4,58,57,56,55,48,49,18,62,61,
+ 64,63,69,68,65,79,78,77,75,76,
+ 74,73,72,71,70,60,162,115,102,10,
+ 2,136,135,165,166,167,44,43,168,42,
+ 169,170,1,3,177,138,100,100,103,103,
103,103,101,101,105,104,104,107,106,138,
- 109,108,115,21,142,3,16,112,102,3,
- 153,102,2,120,21,120,21,21,120,55,
- 102,3,102,102,112,175,151,150,117,102,
- 152,102,21,102,21,102,102,21,163,102,
- 21,102,151,175,16,112,3,2,127,129,
- 102,30,150,102,148,125,149,102,148,173,
- 120,174,102,144,30,181,48,9,182,102,
+ 109,108,115,26,142,4,9,112,102,4,
+ 153,102,2,120,26,120,26,26,120,59,
+ 102,4,102,102,112,175,151,150,117,102,
+ 152,102,26,102,26,102,102,26,163,102,
+ 26,102,151,175,9,112,4,2,127,129,
+ 102,45,150,102,148,125,149,102,148,173,
+ 120,174,102,144,45,181,52,10,182,102,
151,112,112,140,102,2,142,148,102,148,
- 144,56,30,173,56,139,48,9,163,102,
- 178,55,140,2,102,144,139,144,150,179,
- 30,55,142,30
+ 144,60,45,173,60,139,52,10,163,102,
+ 178,59,140,2,102,144,139,144,150,179,
+ 45,59,142,45
};
};
public final static char inSymb[] = InSymb.inSymb;
@@ -1004,7 +1037,7 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public final String name(int index) { return name[index]; }
public final static int
- ERROR_SYMBOL = 79,
+ ERROR_SYMBOL = 47,
SCOPE_UBOUND = 34,
SCOPE_SIZE = 35,
MAX_NAME_LENGTH = 38;
@@ -1017,18 +1050,18 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public final static int
NUM_STATES = 204,
NT_OFFSET = 93,
- LA_STATE_OFFSET = 2000,
+ LA_STATE_OFFSET = 2002,
MAX_LA = 2,
- NUM_RULES = 306,
+ NUM_RULES = 307,
NUM_NONTERMINALS = 115,
NUM_SYMBOLS = 208,
SEGMENT_SIZE = 8192,
- START_STATE = 1588,
+ START_STATE = 1589,
IDENTIFIER_SYMBOL = 0,
EOFT_SYMBOL = 80,
EOLT_SYMBOL = 80,
- ACCEPT_ACTION = 1681,
- ERROR_ACTION = 1694;
+ ACCEPT_ACTION = 1682,
+ ERROR_ACTION = 1695;
public final static boolean BACKTRACK = true;
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99NoCastExpressionParsersym.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99NoCastExpressionParsersym.java
index 777d2a8bc82..8a71a575cc3 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99NoCastExpressionParsersym.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99NoCastExpressionParsersym.java
@@ -15,118 +15,123 @@ package org.eclipse.cdt.internal.core.dom.lrparser.c99;
public interface C99NoCastExpressionParsersym {
public final static int
- TK_auto = 24,
+ TK_auto = 11,
TK_break = 81,
TK_case = 82,
- TK_char = 36,
+ TK_char = 29,
TK_const = 6,
TK_continue = 83,
TK_default = 84,
TK_do = 85,
- TK_double = 37,
+ TK_double = 30,
TK_else = 86,
- TK_enum = 57,
- TK_extern = 25,
- TK_float = 38,
+ TK_enum = 42,
+ TK_extern = 12,
+ TK_float = 31,
TK_for = 87,
TK_goto = 88,
TK_if = 89,
- TK_inline = 26,
- TK_int = 39,
- TK_long = 40,
- TK_register = 27,
+ TK_inline = 13,
+ TK_int = 32,
+ TK_long = 33,
+ TK_register = 14,
TK_restrict = 7,
TK_return = 90,
- TK_short = 41,
- TK_signed = 42,
- TK_sizeof = 15,
- TK_static = 16,
- TK_struct = 58,
+ TK_short = 34,
+ TK_signed = 35,
+ TK_sizeof = 21,
+ TK_static = 9,
+ TK_struct = 43,
TK_switch = 91,
- TK_typedef = 28,
- TK_union = 59,
- TK_unsigned = 43,
- TK_void = 44,
+ TK_typedef = 15,
+ TK_union = 44,
+ TK_unsigned = 36,
+ TK_void = 37,
TK_volatile = 8,
TK_while = 92,
- TK__Bool = 45,
- TK__Complex = 46,
- TK__Imaginary = 47,
- TK_integer = 17,
- TK_floating = 18,
- TK_charconst = 19,
- TK_stringlit = 20,
+ TK__Bool = 38,
+ TK__Complex = 39,
+ TK__Imaginary = 40,
+ TK_integer = 22,
+ TK_floating = 23,
+ TK_charconst = 24,
+ TK_stringlit = 25,
TK_identifier = 1,
- TK_Completion = 4,
+ TK_Completion = 3,
TK_EndOfCompletion = 5,
TK_Invalid = 93,
- TK_LeftBracket = 9,
+ TK_LeftBracket = 10,
TK_LeftParen = 2,
- TK_LeftBrace = 21,
- TK_Dot = 48,
- TK_Arrow = 66,
- TK_PlusPlus = 13,
- TK_MinusMinus = 14,
- TK_And = 12,
- TK_Star = 3,
- TK_Plus = 10,
- TK_Minus = 11,
- TK_Tilde = 22,
- TK_Bang = 23,
- TK_Slash = 49,
- TK_Percent = 50,
- TK_RightShift = 31,
- TK_LeftShift = 32,
- TK_LT = 51,
- TK_GT = 52,
- TK_LE = 53,
- TK_GE = 54,
- TK_EQ = 60,
- TK_NE = 61,
- TK_Caret = 62,
- TK_Or = 63,
- TK_AndAnd = 64,
- TK_OrOr = 67,
- TK_Question = 68,
- TK_Colon = 55,
- TK_DotDotDot = 33,
- TK_Assign = 56,
- TK_StarAssign = 69,
- TK_SlashAssign = 70,
- TK_PercentAssign = 71,
- TK_PlusAssign = 72,
- TK_MinusAssign = 73,
- TK_RightShiftAssign = 74,
- TK_LeftShiftAssign = 75,
- TK_AndAssign = 76,
- TK_CaretAssign = 77,
- TK_OrAssign = 78,
- TK_Comma = 30,
- TK_RightBracket = 34,
- TK_RightParen = 29,
- TK_RightBrace = 35,
- TK_SemiColon = 65,
- TK_ERROR_TOKEN = 79,
+ TK_LeftBrace = 26,
+ TK_Dot = 52,
+ TK_Arrow = 67,
+ TK_PlusPlus = 19,
+ TK_MinusMinus = 20,
+ TK_And = 18,
+ TK_Star = 4,
+ TK_Plus = 16,
+ TK_Minus = 17,
+ TK_Tilde = 27,
+ TK_Bang = 28,
+ TK_Slash = 53,
+ TK_Percent = 54,
+ TK_RightShift = 48,
+ TK_LeftShift = 49,
+ TK_LT = 55,
+ TK_GT = 56,
+ TK_LE = 57,
+ TK_GE = 58,
+ TK_EQ = 61,
+ TK_NE = 62,
+ TK_Caret = 63,
+ TK_Or = 64,
+ TK_AndAnd = 65,
+ TK_OrOr = 68,
+ TK_Question = 69,
+ TK_Colon = 59,
+ TK_DotDotDot = 50,
+ TK_Assign = 60,
+ TK_StarAssign = 70,
+ TK_SlashAssign = 71,
+ TK_PercentAssign = 72,
+ TK_PlusAssign = 73,
+ TK_MinusAssign = 74,
+ TK_RightShiftAssign = 75,
+ TK_LeftShiftAssign = 76,
+ TK_AndAssign = 77,
+ TK_CaretAssign = 78,
+ TK_OrAssign = 79,
+ TK_Comma = 45,
+ TK_RightBracket = 51,
+ TK_RightParen = 41,
+ TK_RightBrace = 46,
+ TK_SemiColon = 66,
+ TK_ERROR_TOKEN = 47,
TK_EOF_TOKEN = 80;
public final static String orderedTerminalSymbols[] = {
"",
"identifier",
"LeftParen",
- "Star",
"Completion",
+ "Star",
"EndOfCompletion",
"const",
"restrict",
"volatile",
+ "static",
"LeftBracket",
+ "auto",
+ "extern",
+ "inline",
+ "register",
+ "typedef",
"Plus",
"Minus",
"And",
"PlusPlus",
"MinusMinus",
"sizeof",
- "static",
"integer",
"floating",
"charconst",
@@ -134,18 +139,6 @@ public interface C99NoCastExpressionParsersym {
"LeftBrace",
"Tilde",
"Bang",
- "auto",
- "extern",
- "inline",
- "register",
- "typedef",
- "RightParen",
- "Comma",
- "RightShift",
- "LeftShift",
- "DotDotDot",
- "RightBracket",
- "RightBrace",
"char",
"double",
"float",
@@ -158,6 +151,17 @@ public interface C99NoCastExpressionParsersym {
"_Bool",
"_Complex",
"_Imaginary",
+ "RightParen",
+ "enum",
+ "struct",
+ "union",
+ "Comma",
+ "RightBrace",
+ "ERROR_TOKEN",
+ "RightShift",
+ "LeftShift",
+ "DotDotDot",
+ "RightBracket",
"Dot",
"Slash",
"Percent",
@@ -167,9 +171,6 @@ public interface C99NoCastExpressionParsersym {
"GE",
"Colon",
"Assign",
- "enum",
- "struct",
- "union",
"EQ",
"NE",
"Caret",
@@ -189,7 +190,6 @@ public interface C99NoCastExpressionParsersym {
"AndAssign",
"CaretAssign",
"OrAssign",
- "ERROR_TOKEN",
"EOF_TOKEN",
"break",
"case",
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99Parser.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99Parser.java
index c1f5c6363ba..2b56eedd292 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99Parser.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99Parser.java
@@ -835,405 +835,411 @@ public C99Parser(String[] mapFrom) { // constructor
}
//
- // Rule 200: struct_declarator ::= : constant_expression
+ // Rule 195: struct_declaration ::= ERROR_TOKEN
//
- case 200: { action. consumeBitField(false); break;
+ case 195: { action. consumeDeclarationProblem(); break;
}
//
- // Rule 201: struct_declarator ::= declarator : constant_expression
+ // Rule 201: struct_declarator ::= : constant_expression
//
- case 201: { action. consumeBitField(true); break;
+ case 201: { action. consumeBitField(false); break;
}
//
- // Rule 202: enum_specifier ::= enum { enumerator_list_opt comma_opt }
+ // Rule 202: struct_declarator ::= declarator : constant_expression
//
- case 202: { action. consumeTypeSpecifierEnumeration(false); break;
+ case 202: { action. consumeBitField(true); break;
}
//
- // Rule 203: enum_specifier ::= enum identifier_or_typedefname { enumerator_list_opt comma_opt }
+ // Rule 203: enum_specifier ::= enum { enumerator_list_opt comma_opt }
//
- case 203: { action. consumeTypeSpecifierEnumeration(true); break;
+ case 203: { action. consumeTypeSpecifierEnumeration(false); break;
}
//
- // Rule 208: enumerator ::= identifier_or_typedefname
+ // Rule 204: enum_specifier ::= enum identifier_or_typedefname { enumerator_list_opt comma_opt }
//
- case 208: { action. consumeEnumerator(false); break;
+ case 204: { action. consumeTypeSpecifierEnumeration(true); break;
}
//
- // Rule 209: enumerator ::= identifier_or_typedefname = constant_expression
+ // Rule 209: enumerator ::= identifier_or_typedefname
//
- case 209: { action. consumeEnumerator(true); break;
+ case 209: { action. consumeEnumerator(false); break;
}
//
- // Rule 210: type_qualifier ::= type_qualifier_token
+ // Rule 210: enumerator ::= identifier_or_typedefname = constant_expression
//
- case 210: { action. consumeDeclSpecToken(); break;
+ case 210: { action. consumeEnumerator(true); break;
}
//
- // Rule 214: function_specifier ::= inline
+ // Rule 211: type_qualifier ::= type_qualifier_token
//
- case 214: { action. consumeDeclSpecToken(); break;
+ case 211: { action. consumeDeclSpecToken(); break;
}
//
- // Rule 216: declarator ::= pointer_seq direct_declarator
+ // Rule 215: function_specifier ::= inline
//
- case 216: { action. consumeDeclaratorWithPointer(true); break;
+ case 215: { action. consumeDeclSpecToken(); break;
}
//
- // Rule 221: basic_direct_declarator ::= declarator_id_name
+ // Rule 217: declarator ::= pointer_seq direct_declarator
//
- case 221: { action. consumeDirectDeclaratorIdentifier(); break;
+ case 217: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 222: basic_direct_declarator ::= ( declarator )
+ // Rule 222: basic_direct_declarator ::= declarator_id_name
//
- case 222: { action. consumeDirectDeclaratorBracketed(); break;
+ case 222: { action. consumeDirectDeclaratorIdentifier(); break;
}
//
- // Rule 223: declarator_id_name ::= identifier
+ // Rule 223: basic_direct_declarator ::= ( declarator )
//
- case 223: { action. consumeIdentifierName(); break;
+ case 223: { action. consumeDirectDeclaratorBracketed(); break;
}
//
- // Rule 224: array_direct_declarator ::= basic_direct_declarator array_modifier
+ // Rule 224: declarator_id_name ::= identifier
//
- case 224: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ case 224: { action. consumeIdentifierName(); break;
}
//
- // Rule 225: array_direct_declarator ::= array_direct_declarator array_modifier
+ // Rule 225: array_direct_declarator ::= basic_direct_declarator array_modifier
//
case 225: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 227: function_direct_declarator ::= basic_direct_declarator ( parameter_type_list )
+ // Rule 226: array_direct_declarator ::= array_direct_declarator array_modifier
//
- case 227: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
+ case 226: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 228: function_direct_declarator ::= basic_direct_declarator ( )
+ // Rule 228: function_direct_declarator ::= basic_direct_declarator ( parameter_type_list )
//
- case 228: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
+ case 228: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
}
//
- // Rule 230: function_declarator ::= pointer_seq function_direct_declarator
+ // Rule 229: function_direct_declarator ::= basic_direct_declarator ( )
//
- case 230: { action. consumeDeclaratorWithPointer(true); break;
+ case 229: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
}
//
- // Rule 231: knr_direct_declarator ::= basic_direct_declarator ( identifier_list )
+ // Rule 231: function_declarator ::= pointer_seq function_direct_declarator
//
- case 231: { action. consumeDirectDeclaratorFunctionDeclaratorKnR(); break;
+ case 231: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 233: knr_function_declarator ::= pointer_seq knr_direct_declarator
+ // Rule 232: knr_direct_declarator ::= basic_direct_declarator ( identifier_list )
//
- case 233: { action. consumeDeclaratorWithPointer(true); break;
+ case 232: { action. consumeDirectDeclaratorFunctionDeclaratorKnR(); break;
}
//
- // Rule 234: identifier_list ::= identifier
+ // Rule 234: knr_function_declarator ::= pointer_seq knr_direct_declarator
//
- case 234: { action. consumeIdentifierKnR(); break;
+ case 234: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 235: identifier_list ::= identifier_list , identifier
+ // Rule 235: identifier_list ::= identifier
//
case 235: { action. consumeIdentifierKnR(); break;
}
//
- // Rule 236: array_modifier ::= [ ]
+ // Rule 236: identifier_list ::= identifier_list , identifier
//
- case 236: { action. consumeDirectDeclaratorArrayModifier(false); break;
+ case 236: { action. consumeIdentifierKnR(); break;
}
//
- // Rule 237: array_modifier ::= [ array_modifier_type_qualifiers ]
+ // Rule 237: array_modifier ::= [ ]
//
- case 237: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, false); break;
+ case 237: { action. consumeDirectDeclaratorArrayModifier(false); break;
}
//
- // Rule 238: array_modifier ::= [ assignment_expression ]
+ // Rule 238: array_modifier ::= [ array_modifier_type_qualifiers ]
//
- case 238: { action. consumeDirectDeclaratorArrayModifier(true); break;
+ case 238: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, false); break;
}
//
- // Rule 239: array_modifier ::= [ array_modifier_type_qualifiers assignment_expression ]
+ // Rule 239: array_modifier ::= [ assignment_expression ]
//
- case 239: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, true); break;
+ case 239: { action. consumeDirectDeclaratorArrayModifier(true); break;
}
//
- // Rule 240: array_modifier ::= [ static assignment_expression ]
+ // Rule 240: array_modifier ::= [ array_modifier_type_qualifiers assignment_expression ]
//
- case 240: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, false, true); break;
+ case 240: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, true); break;
}
//
- // Rule 241: array_modifier ::= [ static array_modifier_type_qualifiers assignment_expression ]
+ // Rule 241: array_modifier ::= [ static assignment_expression ]
//
- case 241: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break;
+ case 241: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, false, true); break;
}
//
- // Rule 242: array_modifier ::= [ array_modifier_type_qualifiers static assignment_expression ]
+ // Rule 242: array_modifier ::= [ static array_modifier_type_qualifiers assignment_expression ]
//
case 242: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break;
}
//
- // Rule 243: array_modifier ::= [ * ]
+ // Rule 243: array_modifier ::= [ array_modifier_type_qualifiers static assignment_expression ]
//
- case 243: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, false, false); break;
+ case 243: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break;
}
//
- // Rule 244: array_modifier ::= [ array_modifier_type_qualifiers * ]
+ // Rule 244: array_modifier ::= [ * ]
//
- case 244: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, true, false); break;
+ case 244: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, false, false); break;
}
//
- // Rule 246: pointer_seq ::= *
+ // Rule 245: array_modifier ::= [ array_modifier_type_qualifiers * ]
//
- case 246: { action. consumePointer(); break;
+ case 245: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, true, false); break;
}
//
- // Rule 247: pointer_seq ::= pointer_seq *
+ // Rule 247: pointer_seq ::= *
//
case 247: { action. consumePointer(); break;
}
//
- // Rule 248: pointer_seq ::= * type_qualifier_list
+ // Rule 248: pointer_seq ::= pointer_seq *
//
- case 248: { action. consumePointerTypeQualifierList(); break;
+ case 248: { action. consumePointer(); break;
}
//
- // Rule 249: pointer_seq ::= pointer_seq * type_qualifier_list
+ // Rule 249: pointer_seq ::= * type_qualifier_list
//
case 249: { action. consumePointerTypeQualifierList(); break;
}
//
- // Rule 252: parameter_type_list ::= parameter_list
+ // Rule 250: pointer_seq ::= pointer_seq * type_qualifier_list
//
- case 252: { action. consumeEmpty(); break;
+ case 250: { action. consumePointerTypeQualifierList(); break;
}
//
- // Rule 253: parameter_type_list ::= parameter_list , ...
+ // Rule 253: parameter_type_list ::= parameter_list
//
- case 253: { action. consumePlaceHolder(); break;
+ case 253: { action. consumeEmpty(); break;
}
//
- // Rule 254: parameter_type_list ::= ...
+ // Rule 254: parameter_type_list ::= parameter_list , ...
//
case 254: { action. consumePlaceHolder(); break;
}
//
- // Rule 257: parameter_declaration ::= declaration_specifiers complete_parameter_declarator
+ // Rule 255: parameter_type_list ::= ...
//
- case 257: { action. consumeParameterDeclaration(); break;
+ case 255: { action. consumePlaceHolder(); break;
}
//
- // Rule 258: parameter_declaration ::= declaration_specifiers
+ // Rule 258: parameter_declaration ::= declaration_specifiers complete_parameter_declarator
//
- case 258: { action. consumeParameterDeclarationWithoutDeclarator(); break;
+ case 258: { action. consumeParameterDeclaration(); break;
}
//
- // Rule 261: type_name ::= specifier_qualifier_list
+ // Rule 259: parameter_declaration ::= declaration_specifiers
//
- case 261: { action. consumeTypeId(false); break;
+ case 259: { action. consumeParameterDeclarationWithoutDeclarator(); break;
}
//
- // Rule 262: type_name ::= specifier_qualifier_list abstract_declarator
+ // Rule 262: type_name ::= specifier_qualifier_list
//
- case 262: { action. consumeTypeId(true); break;
+ case 262: { action. consumeTypeId(false); break;
}
//
- // Rule 264: abstract_declarator ::= pointer_seq
+ // Rule 263: type_name ::= specifier_qualifier_list abstract_declarator
//
- case 264: { action. consumeDeclaratorWithPointer(false); break;
+ case 263: { action. consumeTypeId(true); break;
}
//
- // Rule 265: abstract_declarator ::= pointer_seq direct_abstract_declarator
+ // Rule 265: abstract_declarator ::= pointer_seq
//
case 265: { action. consumeDeclaratorWithPointer(false); break;
}
//
- // Rule 269: basic_direct_abstract_declarator ::= ( abstract_declarator )
+ // Rule 266: abstract_declarator ::= pointer_seq direct_abstract_declarator
//
- case 269: { action. consumeDirectDeclaratorBracketed(); break;
+ case 266: { action. consumeDeclaratorWithPointer(false); break;
}
//
- // Rule 270: array_direct_abstract_declarator ::= array_modifier
+ // Rule 270: basic_direct_abstract_declarator ::= ( abstract_declarator )
//
- case 270: { action. consumeDirectDeclaratorArrayDeclarator(false); break;
+ case 270: { action. consumeDirectDeclaratorBracketed(); break;
}
//
- // Rule 271: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier
+ // Rule 271: array_direct_abstract_declarator ::= array_modifier
//
- case 271: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ case 271: { action. consumeDirectDeclaratorArrayDeclarator(false); break;
}
//
- // Rule 272: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier
+ // Rule 272: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier
//
case 272: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 273: function_direct_abstract_declarator ::= ( )
+ // Rule 273: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier
//
- case 273: { action. consumeDirectDeclaratorFunctionDeclarator(false, false); break;
+ case 273: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ }
+
+ //
+ // Rule 274: function_direct_abstract_declarator ::= ( )
+ //
+ case 274: { action. consumeDirectDeclaratorFunctionDeclarator(false, false); break;
}
//
- // Rule 274: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( )
+ // Rule 275: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( )
//
- case 274: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
+ case 275: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
}
//
- // Rule 275: function_direct_abstract_declarator ::= ( parameter_type_list )
+ // Rule 276: function_direct_abstract_declarator ::= ( parameter_type_list )
//
- case 275: { action. consumeDirectDeclaratorFunctionDeclarator(false, true); break;
+ case 276: { action. consumeDirectDeclaratorFunctionDeclarator(false, true); break;
}
//
- // Rule 276: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( parameter_type_list )
+ // Rule 277: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( parameter_type_list )
//
- case 276: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
+ case 277: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
}
//
- // Rule 277: initializer ::= assignment_expression
+ // Rule 278: initializer ::= assignment_expression
//
- case 277: { action. consumeInitializer(); break;
+ case 278: { action. consumeInitializer(); break;
}
//
- // Rule 278: initializer ::= { initializer_list comma_opt }
+ // Rule 279: initializer ::= { initializer_list comma_opt }
//
- case 278: { action. consumeInitializerList(); break;
+ case 279: { action. consumeInitializerList(); break;
}
//
- // Rule 283: designated_initializer ::= designation = initializer
+ // Rule 284: designated_initializer ::= designation = initializer
//
- case 283: { action. consumeInitializerDesignated(); break;
+ case 284: { action. consumeInitializerDesignated(); break;
}
//
- // Rule 287: designator_base ::= [ constant_expression ]
+ // Rule 288: designator_base ::= [ constant_expression ]
//
- case 287: { action. consumeDesignatorArray(); break;
+ case 288: { action. consumeDesignatorArray(); break;
}
//
- // Rule 288: designator_base ::= . identifier_or_typedefname
+ // Rule 289: designator_base ::= . identifier_or_typedefname
//
- case 288: { action. consumeDesignatorField(); break;
+ case 289: { action. consumeDesignatorField(); break;
}
//
- // Rule 289: designator ::= [ constant_expression ]
+ // Rule 290: designator ::= [ constant_expression ]
//
- case 289: { action. consumeDesignatorArray(); break;
+ case 290: { action. consumeDesignatorArray(); break;
}
//
- // Rule 290: designator ::= . identifier_or_typedefname
+ // Rule 291: designator ::= . identifier_or_typedefname
//
- case 290: { action. consumeDesignatorField(); break;
+ case 291: { action. consumeDesignatorField(); break;
}
//
- // Rule 291: translation_unit ::= external_declaration_list
- //
- case 291: { action. consumeTranslationUnit(); break;
- }
-
- //
- // Rule 292: translation_unit ::= $Empty
+ // Rule 292: translation_unit ::= external_declaration_list
//
case 292: { action. consumeTranslationUnit(); break;
+ }
+
+ //
+ // Rule 293: translation_unit ::= $Empty
+ //
+ case 293: { action. consumeTranslationUnit(); break;
}
//
- // Rule 297: external_declaration ::= ;
+ // Rule 298: external_declaration ::= ;
//
- case 297: { action. consumeDeclarationEmpty(); break;
+ case 298: { action. consumeDeclarationEmpty(); break;
}
//
- // Rule 298: external_declaration ::= ERROR_TOKEN
+ // Rule 299: external_declaration ::= ERROR_TOKEN
//
- case 298: { action. consumeDeclarationProblem(); break;
+ case 299: { action. consumeDeclarationProblem(); break;
}
//
- // Rule 301: function_definition ::= declaration_specifiers function_declarator function_body
+ // Rule 302: function_definition ::= declaration_specifiers function_declarator function_body
//
- case 301: { action. consumeFunctionDefinition(true); break;
+ case 302: { action. consumeFunctionDefinition(true); break;
}
//
- // Rule 302: function_definition ::= function_declarator function_body
+ // Rule 303: function_definition ::= function_declarator function_body
//
- case 302: { action. consumeFunctionDefinition(false); break;
+ case 303: { action. consumeFunctionDefinition(false); break;
}
//
- // Rule 303: function_definition ::= declaration_specifiers knr_function_declarator declaration_list compound_statement
+ // Rule 304: function_definition ::= declaration_specifiers knr_function_declarator declaration_list compound_statement
//
- case 303: { action. consumeFunctionDefinitionKnR(); break;
+ case 304: { action. consumeFunctionDefinitionKnR(); break;
}
//
- // Rule 304: function_body ::= { }
+ // Rule 305: function_body ::= { }
//
- case 304: { action. consumeStatementCompoundStatement(false); break;
+ case 305: { action. consumeStatementCompoundStatement(false); break;
}
//
- // Rule 305: function_body ::= { block_item_list }
+ // Rule 306: function_body ::= { block_item_list }
//
- case 305: { action. consumeStatementCompoundStatement(true); break;
+ case 306: { action. consumeStatementCompoundStatement(true); break;
}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99Parserprs.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99Parserprs.java
index 217930d3169..a371a9f1103 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99Parserprs.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99Parserprs.java
@@ -53,204 +53,204 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
1,5,5,6,6,2,2,2,1,0,
- 1,2,4,2,1,1,3,1,1,2,
- 3,6,7,1,0,1,3,1,3,1,
- 1,1,1,1,1,3,1,1,1,1,
- 1,3,1,2,2,1,5,3,1,3,
- 5,1,3,1,3,2,4,3,5,4,
- 6,6,3,5,1,1,2,3,4,1,
- 2,1,3,1,1,3,2,1,1,1,
- 1,2,1,2,3,1,1,1,3,1,
- 2,2,2,3,4,5,1,5,1,1,
- 3,3,4,1,1,2,3,2,3,2,
- 1,0,1,2,1,1,1,1,1,2,
- 4,3,6,2,4,-75,-240,0,0,0,
+ 1,2,4,2,1,1,1,3,1,1,
+ 2,3,6,7,1,0,1,3,1,3,
+ 1,1,1,1,1,1,3,1,1,1,
+ 1,1,3,1,2,2,1,5,3,1,
+ 3,5,1,3,1,3,2,4,3,5,
+ 4,6,6,3,5,1,1,2,3,4,
+ 1,2,1,3,1,1,3,2,1,1,
+ 1,1,2,1,2,3,1,1,1,3,
+ 1,2,2,2,3,4,5,1,5,1,
+ 1,3,3,4,1,1,2,3,2,3,
+ 2,1,0,1,2,1,1,1,1,1,
+ 2,4,3,6,2,4,-75,-240,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-2,-16,0,-4,0,-6,
- 0,0,-8,-30,-50,0,0,0,-23,0,
- -77,-170,0,-47,-79,-18,0,0,0,0,
+ 0,0,0,0,0,-2,-16,0,-4,0,
+ -6,0,0,-8,-30,-50,0,0,0,-23,
+ 0,-77,-170,0,-47,-79,-18,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-3,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-5,
- 0,0,0,0,0,0,0,0,-21,0,
- 0,0,0,-70,0,0,-19,0,0,0,
- -115,0,-82,0,0,0,0,-28,0,0,
- 0,0,0,0,0,0,0,0,-22,0,
- 0,0,0,0,0,0,0,-37,0,0,
+ 0,0,-3,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-186,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-196,
+ -5,0,0,0,0,0,0,0,0,-21,
+ 0,0,0,0,-70,0,0,-19,0,0,
+ 0,-115,0,-82,0,0,0,0,-28,0,
+ 0,0,0,0,0,0,0,0,0,-22,
+ 0,0,0,0,0,0,0,0,-37,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-186,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ -196,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,-271,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,-32,-57,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,-24,0,0,-262,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-27,0,0,0,0,-187,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-38,-74,0,-39,0,
+ -188,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-53,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-25,0,0,-36,
+ -177,0,0,0,0,0,0,0,0,0,
+ -90,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-41,
+ -125,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-64,
+ -150,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-31,
+ -181,0,0,0,0,0,0,0,0,0,
+ 0,-273,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,-72,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,-143,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ -26,0,-179,0,0,0,0,0,0,0,
+ 0,0,0,0,-65,0,-152,-67,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-153,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-68,-154,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-71,-155,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-73,-156,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-84,-157,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-85,-158,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-93,-159,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-104,-160,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-105,-161,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-106,-162,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-107,-204,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-108,-206,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-210,-109,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-110,-185,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-211,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-40,-250,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-265,-61,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-180,0,0,
+ 0,0,0,0,0,0,0,0,0,-29,
+ 0,0,-276,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,-258,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ -42,0,-182,-10,0,0,0,0,0,0,
+ 0,0,0,-78,0,-111,0,-87,-112,0,
+ 0,-113,0,-114,0,-59,0,0,0,-62,
+ -44,0,0,-11,0,0,0,0,0,0,
+ 0,-88,0,0,0,0,0,0,0,0,
+ -35,0,0,0,-116,0,-83,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-117,
+ -183,0,0,0,0,0,0,0,0,0,
+ 0,-33,0,0,0,0,-43,0,-60,0,
+ -13,0,0,0,0,0,0,0,0,0,
+ -132,0,-69,0,0,0,-15,0,0,-86,
+ 0,0,0,0,0,0,-45,0,-121,0,
+ 0,0,0,0,0,-122,0,-123,0,-145,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,-193,0,-55,0,-96,0,0,0,0,
+ 0,0,0,0,0,0,0,-195,0,-48,
+ 0,0,-49,0,0,0,-144,0,0,0,
+ 0,0,0,-129,-242,0,0,0,0,0,
+ -34,0,0,0,0,0,0,-203,0,0,
+ 0,0,0,-92,-124,0,0,0,0,0,
+ 0,-119,0,0,0,0,0,0,-147,0,
+ -241,0,0,0,-194,0,-133,0,0,0,
+ 0,0,0,0,0,0,0,0,-20,0,
+ -126,0,-190,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ -52,0,0,-54,0,0,0,0,0,0,
+ -266,-66,0,-135,0,-80,0,0,0,0,
+ 0,0,0,0,-136,0,-137,0,-139,0,
+ 0,0,0,0,0,0,-138,0,-200,0,
+ -141,0,0,0,0,0,0,0,0,0,
+ 0,0,-134,0,0,0,0,0,0,-239,
+ 0,0,0,0,0,-140,0,0,0,0,
+ 0,0,0,0,-207,0,0,-146,-209,0,
+ 0,0,-168,-91,0,-151,0,0,0,0,
+ 0,0,0,-63,0,0,0,0,0,-245,
+ 0,-51,0,0,-221,0,0,0,0,0,
+ 0,0,0,-142,0,0,0,0,0,0,
+ -169,0,-198,0,0,0,-163,0,-247,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ -191,0,0,0,0,0,0,0,0,0,
+ -222,-164,0,-248,0,-192,0,-9,0,0,
+ -223,-199,0,0,0,0,0,0,0,0,
+ 0,-215,0,0,0,-280,0,0,-224,-237,
+ 0,0,0,0,0,0,-149,0,0,0,
+ 0,0,0,0,0,0,-212,-283,0,0,
+ 0,-12,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-286,
+ 0,0,-225,-201,0,0,0,0,0,-202,
+ -220,0,0,0,0,0,0,0,0,0,
+ -56,0,-205,0,-249,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ -226,0,0,-17,0,-208,-253,0,-251,0,
+ 0,0,-281,0,0,0,-197,0,-243,-217,
+ -252,0,0,0,0,0,0,0,0,-1,
+ 0,0,0,0,0,0,0,0,0,-58,
+ 0,-7,0,0,0,0,0,0,0,-218,
+ -219,0,0,-184,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,-227,0,0,-228,0,0,0,0,0,
+ 0,0,0,0,-229,-230,-231,-232,0,0,
+ 0,0,-175,-238,0,0,0,0,0,0,
+ 0,0,0,-176,0,0,0,0,0,0,
+ 0,0,0,-216,0,-100,0,0,0,0,
+ 0,0,0,-165,0,-268,-233,-234,0,0,
+ -235,0,-260,-236,-261,-256,0,-257,-263,-270,
+ 0,0,0,0,0,-274,-178,0,0,0,
+ 0,0,0,0,0,0,-89,0,0,-213,
+ -14,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-46,0,-76,0,0,0,0,
+ 0,0,0,-269,0,0,0,0,-282,0,
+ -285,0,-81,0,-264,0,-254,0,-97,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,-118,0,0,0,-94,0,0,-272,
+ 0,0,0,0,0,0,-98,0,0,0,
+ 0,0,0,0,0,-275,0,0,0,0,
+ 0,0,0,0,0,-279,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-99,0,0,
+ 0,0,0,0,0,-101,0,0,0,0,
+ 0,0,0,-120,-277,0,0,0,0,0,
+ 0,-127,0,0,-166,0,0,-167,0,-172,
+ 0,0,0,0,0,0,0,0,-284,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-173,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-174,0,0,0,
+ 0,0,0,0,-255,0,0,-259,0,0,
+ -214,0,0,0,0,0,0,0,-95,0,
+ 0,0,0,0,0,-148,0,-244,0,0,
+ 0,0,0,-102,0,0,0,0,0,0,
+ -103,0,0,0,0,0,0,0,-267,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-278,0,-128,0,0,0,
+ 0,0,0,0,0,0,-130,0,-131,0,
+ 0,0,-171,0,0,0,0,0,0,0,
+ 0,0,0,0,-189,0,0,0,0,0,
+ 0,0,0,0,0,0,-246,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-271,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- -32,-57,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- -24,0,0,-262,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,-27,0,0,0,0,-187,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-38,-74,0,-39,0,-188,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-53,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-25,0,0,-36,-177,
- 0,0,0,0,0,0,0,0,0,-90,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-41,-125,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-64,-150,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-31,-181,
- 0,0,0,0,0,0,0,0,0,0,
- -273,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- -72,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- -143,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-26,
- 0,-179,0,0,0,0,0,0,0,0,
- 0,0,0,-65,0,-152,-67,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-153,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-68,-154,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-71,-155,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-73,-156,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-84,-157,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-85,-158,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-93,-159,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-104,-160,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-105,-161,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-106,-162,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-107,-204,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-108,-206,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-210,-109,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-110,-185,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-211,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-40,-250,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-265,-61,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-180,0,0,0,
- 0,0,0,0,0,0,0,0,-29,0,
- 0,-276,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- -258,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-42,
- 0,-182,-10,0,0,0,0,0,0,0,
- 0,0,-78,0,-111,0,-87,-112,0,0,
- -113,0,-114,0,-59,0,0,0,-62,-44,
- 0,0,-11,0,0,0,0,0,0,0,
- -88,0,0,0,0,0,0,0,0,-35,
- 0,0,0,-116,0,-83,0,0,0,0,
- 0,0,0,0,0,0,0,0,-117,-183,
- 0,0,0,0,0,0,0,0,0,0,
- -33,0,0,0,0,-43,0,-60,0,-13,
- 0,0,0,0,0,0,0,0,0,-132,
- 0,-69,0,0,0,-15,0,0,-86,0,
- 0,0,0,0,0,-45,0,-121,0,0,
- 0,0,0,0,-122,0,-123,0,-145,0,
- 0,0,0,0,0,0,0,0,0,0,
- -193,0,-55,0,-96,0,0,0,0,0,
- 0,0,0,0,0,0,-195,0,-48,0,
- 0,-49,0,0,0,-144,0,0,0,0,
- 0,0,-129,-242,0,0,0,0,0,-34,
- 0,0,0,0,0,0,-203,0,0,0,
- 0,0,-92,-124,0,0,0,0,0,0,
- -119,0,0,0,0,0,0,-147,0,-241,
- 0,0,0,-194,0,-133,0,0,0,0,
- 0,0,0,0,0,0,0,-20,0,-126,
- 0,-190,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-52,
- 0,0,-54,0,0,0,0,0,0,-266,
- -66,0,-135,0,-80,0,0,0,0,0,
- 0,0,0,-136,0,-137,0,-139,0,0,
- 0,0,0,0,0,-138,0,-200,0,-141,
- 0,0,0,0,0,0,0,0,0,0,
- 0,-134,0,0,0,0,0,0,-239,0,
- 0,0,0,0,-140,0,0,0,0,0,
- 0,0,0,-207,0,0,-146,-209,0,0,
- 0,-168,-91,0,-151,0,0,0,0,0,
- 0,0,-63,0,0,0,0,0,-245,0,
- -51,0,0,-221,0,0,0,0,0,0,
- 0,0,-142,0,0,0,0,0,0,-169,
- 0,-198,0,0,0,-163,0,-247,0,0,
- 0,0,0,0,0,0,0,0,0,-191,
- 0,0,0,0,0,0,0,0,0,-222,
- -164,0,-248,0,-192,0,-9,0,0,-223,
- -199,0,0,0,0,0,0,0,0,0,
- -215,0,0,0,-280,0,0,-224,-237,0,
- 0,0,0,0,0,-149,0,0,0,0,
- 0,0,0,0,0,-212,-283,0,0,0,
- -12,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-286,0,
- 0,-225,-201,0,0,0,0,0,-202,-220,
- 0,0,0,0,0,0,0,0,0,-56,
- 0,-205,0,-249,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-226,
- 0,0,-17,0,-208,-253,0,-251,0,0,
- 0,-281,0,0,0,-197,0,-243,-217,-252,
- 0,0,0,0,0,0,0,0,-1,0,
- 0,0,0,0,0,0,0,0,-58,0,
- -7,0,0,0,0,0,0,0,-218,-219,
- 0,0,-184,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- -227,0,0,-228,0,0,0,0,0,0,
- 0,0,0,-229,-230,-231,-232,0,0,0,
- 0,-175,-238,0,0,0,0,0,0,0,
- 0,0,-176,0,0,0,0,0,0,0,
- 0,0,-216,0,-100,0,0,0,0,0,
- 0,0,-165,0,-268,-233,-234,0,0,-235,
- 0,-260,-236,-261,-256,0,-257,-263,-270,0,
- 0,0,0,0,-274,-178,0,0,0,0,
- 0,0,0,0,0,-89,0,0,-213,-14,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,-46,0,-76,0,0,0,0,0,
- 0,0,-269,0,0,0,0,-282,0,-285,
- 0,-81,0,-264,0,-254,0,-97,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,-118,0,0,0,-94,0,0,-272,0,
- 0,0,0,0,0,-98,0,0,0,0,
- 0,0,0,0,-275,0,0,0,0,0,
- 0,0,0,0,-279,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-99,0,0,0,
- 0,0,0,0,-101,0,0,0,0,0,
- 0,0,-120,-277,0,0,0,0,0,0,
- -127,0,0,-166,0,0,-167,0,-172,0,
- 0,0,0,0,0,0,0,-284,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,-173,0,0,0,0,0,0,0,
- 0,0,0,0,0,-174,0,0,0,0,
- 0,0,0,-255,0,0,-259,0,0,-214,
- 0,0,0,0,0,0,0,-95,0,0,
- 0,0,0,0,-148,0,-244,0,0,0,
- 0,0,-102,0,0,0,0,0,0,-103,
- 0,0,0,0,0,0,0,-267,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-278,0,-128,0,0,0,0,
- 0,0,0,0,0,-130,0,-131,0,0,
- 0,-171,0,0,0,0,0,0,0,0,
- 0,0,0,-189,0,0,0,0,0,0,
- 0,0,0,0,0,-246,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0
+ 0,0,0,0,0
};
};
public final static short baseCheck[] = BaseCheck.baseCheck;
@@ -279,206 +279,207 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym
50,50,50,50,50,61,63,63,63,63,
63,63,63,63,63,63,63,63,72,72,
24,24,69,69,69,69,70,70,70,73,
- 73,74,74,64,64,52,104,104,93,94,
- 94,94,71,71,95,95,96,96,86,86,
- 25,26,26,26,49,51,51,41,41,41,
- 41,29,29,30,42,42,43,31,31,97,
- 97,44,106,106,105,105,45,45,45,45,
- 45,45,45,45,45,98,53,53,53,53,
- 75,75,65,65,65,66,66,55,55,107,
- 107,77,77,76,76,76,56,56,56,57,
- 58,58,58,59,59,59,59,62,62,89,
- 89,89,89,87,108,109,109,110,110,111,
- 111,102,102,112,112,99,99,99,99,113,
- 113,100,100,100,101,101,298,480,14,19,
- 15,935,915,44,955,995,975,1036,1015,1195,
- 1054,1201,1198,1203,74,767,472,91,1293,1408,
- 330,134,210,1072,363,1227,511,221,226,152,
- 1210,1298,1304,650,632,859,120,126,216,1261,
- 218,220,270,136,133,135,159,222,134,210,
- 250,210,89,265,1570,1585,268,138,875,165,
- 134,210,802,326,183,142,145,148,151,418,
- 144,133,135,159,1731,333,1587,1631,1850,1286,
- 412,372,136,133,135,159,1454,134,210,835,
- 1180,407,221,229,835,1280,138,338,165,297,
- 1221,363,328,1298,142,145,148,151,327,136,
- 133,135,159,1731,333,1587,1631,1850,1286,717,
- 206,302,304,138,227,165,296,104,1124,1236,
- 895,142,145,148,151,1740,182,407,221,230,
- 1731,333,1587,1631,1850,1286,1121,127,14,19,
- 15,935,42,44,955,995,975,1036,1777,330,
- 1073,1354,14,19,15,935,915,44,955,995,
- 975,1036,1015,1195,1054,1201,1198,1203,74,294,
- 295,277,1073,1354,14,19,15,935,915,44,
- 955,995,975,1036,1015,1195,1054,1201,1198,1203,
- 74,477,994,277,14,19,15,935,915,44,
- 955,995,975,1036,1015,1195,1054,1201,1198,1203,
- 74,719,279,277,1016,1354,14,19,15,935,
- 915,44,955,995,975,1036,1015,1195,1054,1201,
- 1198,1203,74,758,279,277,224,280,1121,1390,
- 14,19,15,935,42,44,955,995,975,1036,
- 1015,1195,1054,1816,157,30,1293,1443,759,280,
- 1121,1702,14,19,15,935,42,44,955,995,
- 975,1036,1015,1195,1817,126,281,950,1373,14,
- 19,15,935,915,44,955,995,975,1036,1015,
- 1195,1054,1201,1198,1203,74,152,1863,1513,330,
- 1121,282,14,19,15,935,42,44,1590,236,
- 1140,2055,14,19,15,935,915,44,955,995,
- 975,1036,1015,1195,1054,1201,1198,1203,74,869,
- 1121,1616,14,19,15,935,915,44,955,995,
- 975,1036,1015,1195,1054,1201,1198,1203,74,429,
- 974,91,14,19,15,935,915,44,955,995,
- 975,1036,1015,1195,1054,1201,1198,1203,74,472,
- 1121,1626,14,19,15,935,42,44,955,995,
- 1761,994,237,14,19,15,935,915,44,955,
- 995,975,1036,1015,1195,1054,1201,1198,1203,74,
- 301,1121,277,14,19,15,935,42,44,955,
- 995,975,1036,1015,1195,1054,1201,1198,1203,93,
- 1454,1121,1531,14,19,15,935,42,44,955,
- 995,975,1036,1015,1195,1054,1201,1198,1203,93,
- 152,344,1121,283,14,19,15,935,42,44,
- 955,995,975,1652,514,1396,1121,556,14,19,
- 15,935,915,44,955,995,975,1036,1015,1195,
- 1054,1201,1198,1203,74,209,1121,85,14,19,
- 15,935,915,44,955,995,975,1036,1015,1195,
- 1054,1201,1198,1203,74,593,1121,84,14,19,
- 15,935,915,44,955,995,975,1036,1015,1195,
- 1054,1201,1198,1203,74,384,1121,83,14,19,
- 15,935,915,44,955,995,975,1036,1015,1195,
- 1054,1201,1198,1203,74,809,1121,82,14,19,
- 15,935,915,44,955,995,975,1036,1015,1195,
- 1054,1201,1198,1203,74,806,1121,81,14,19,
- 15,935,915,44,955,995,975,1036,1015,1195,
- 1054,1201,1198,1203,74,1013,1121,80,14,19,
- 15,935,915,44,955,995,975,1036,1015,1195,
- 1054,1201,1198,1203,74,361,1121,79,14,19,
- 15,935,915,44,955,995,975,1036,1015,1195,
- 1054,1201,1198,1203,74,1243,1121,78,14,19,
- 15,935,915,44,955,995,975,1036,1015,1195,
- 1054,1201,1198,1203,74,866,1121,77,14,19,
- 15,935,915,44,955,995,975,1036,1015,1195,
- 1054,1201,1198,1203,74,119,1121,76,14,19,
- 15,935,915,44,955,995,975,1036,1015,1195,
- 1054,1201,1198,1203,74,365,1121,75,14,19,
- 15,935,915,44,955,995,975,1036,1015,1195,
- 1054,1201,1198,1203,74,1231,1121,92,14,19,
- 15,935,42,44,955,995,975,1036,1015,1195,
- 1054,1201,1198,1203,93,1121,441,14,19,15,
- 935,915,44,955,995,975,1036,1015,1195,1054,
- 1201,1198,1203,74,724,1121,1698,14,19,15,
- 935,42,44,955,995,975,1036,1015,1776,1121,
- 200,14,19,15,935,915,44,955,995,975,
- 1036,1015,1195,1054,1201,1198,1203,74,472,1121,
- 1710,14,19,15,935,42,44,955,995,975,
- 1036,1015,1195,1054,1201,1198,1203,93,1121,1294,
- 14,19,15,935,42,44,955,995,975,1036,
- 1015,1195,1054,1201,1198,1203,93,1121,123,14,
- 19,15,935,42,44,955,995,975,1690,877,
- 335,1729,1121,201,14,19,15,935,42,44,
- 955,995,975,1036,1015,1195,1054,1201,1198,1203,
- 93,1121,1835,14,19,15,935,42,44,955,
- 995,975,1036,1015,1195,1054,1201,1198,1203,73,
- 184,306,1121,418,14,19,15,935,42,44,
- 955,995,1764,1293,1495,971,1878,1227,891,110,
- 86,893,576,426,855,1,306,429,95,1294,
- 875,345,194,469,1282,108,94,96,97,98,
- 99,1230,250,210,110,86,109,576,122,855,
- 152,1323,195,95,333,1394,213,531,305,1282,
- 108,94,96,97,98,99,251,210,106,1014,
- 1121,109,14,19,15,935,42,44,955,995,
- 1774,1314,1193,511,221,226,152,1865,1293,650,
- 590,1205,1507,107,191,215,1261,218,220,270,
- 241,306,1294,341,1445,259,859,124,87,632,
- 263,1570,1585,268,553,1374,152,1882,871,110,
- 86,111,576,1543,855,1059,225,62,95,213,
- 260,134,210,875,1282,108,94,96,97,98,
- 99,831,1489,152,345,1121,109,14,19,15,
- 935,42,39,137,133,135,159,1319,345,152,
- 1289,257,1046,1197,273,576,633,139,106,165,
- 511,221,226,301,927,143,146,149,152,1234,
- 1258,1433,215,1261,218,220,270,123,306,299,
- 875,1367,334,1227,1294,206,1695,263,1570,1585,
- 268,152,470,228,1309,895,110,86,805,576,
- 1329,855,256,125,472,95,1317,1783,250,210,
- 105,1282,108,94,96,97,98,99,58,1088,
- 1294,231,1121,109,14,19,15,935,42,44,
- 955,995,975,1036,1015,1195,1054,1201,1823,121,
- 1258,1846,207,1037,345,107,1902,511,221,578,
- 1289,486,650,58,689,1299,345,307,1515,215,
- 1261,218,649,228,1146,1234,367,1824,1298,158,
- 110,86,1828,1440,285,855,1197,195,639,95,
- 1298,670,511,221,226,1282,1353,94,96,97,
- 98,99,528,650,215,1261,218,220,255,1311,
- 345,185,154,575,158,841,689,1193,411,1249,
- 438,110,86,184,1321,619,855,1256,678,192,
- 95,1234,674,1300,1230,1259,1282,101,94,96,
- 97,98,99,633,511,221,226,154,575,570,
- 650,327,251,210,591,438,215,1261,218,220,
- 251,210,307,1298,255,238,1504,1410,110,86,
- 674,286,1294,855,1822,1249,363,95,612,650,
- 511,221,226,1282,118,94,96,97,98,99,
- 1035,2057,216,1261,218,220,202,110,86,2040,
- 675,363,855,654,650,1324,95,1184,196,198,
- 1282,363,1282,114,94,96,97,98,99,1672,
- 23,472,110,86,16,696,650,855,1284,1258,
- 2037,95,134,210,1529,272,1300,1282,1829,94,
- 96,97,98,99,110,86,1300,738,650,855,
- 271,1213,274,95,147,133,135,159,22,1282,
- 113,94,96,97,98,99,110,86,240,780,
- 650,855,479,363,1886,95,134,210,239,363,
- 1300,1282,120,94,96,97,98,99,110,86,
- 58,689,1271,855,841,689,1558,95,150,133,
- 135,159,1583,1282,119,94,96,97,98,99,
- 483,193,20,58,689,1298,152,492,1300,511,
- 221,226,1329,511,221,226,873,650,1294,363,
- 1300,215,1261,218,220,215,1261,218,220,355,
- 372,158,511,221,226,1504,87,2078,203,327,
- 241,896,1825,115,215,1261,218,220,297,363,
- 363,328,242,1121,334,14,19,15,935,42,
- 44,955,995,1775,155,575,134,210,511,221,
- 1305,1283,1827,21,1285,296,1708,197,198,1880,
- 216,1261,218,1298,1308,1310,1060,1260,141,133,
- 135,159,1121,363,14,19,15,935,42,44,
- 955,1534,140,1121,165,14,19,15,935,42,
- 44,955,1580,836,2034,1040,269,14,19,15,
- 935,42,35,1228,1601,1294,1245,1287,293,295,
- 1325,325,363,1326,1298,1327,273,1330,1331,641,
- 2190,390,2190,2190,2094,1300,1121,243,14,19,
- 15,935,42,44,1608,275,1273,345,270,1040,
- 1242,14,19,15,935,42,35,278,270,263,
- 1570,1585,268,875,345,875,345,287,1234,263,
- 1570,1585,268,363,2190,134,210,2190,1300,1783,
- 1298,244,875,345,633,195,1291,195,1121,262,
- 14,19,15,935,42,38,1935,153,133,135,
- 159,255,760,345,195,2190,152,306,288,363,
- 289,411,1249,26,2190,1193,1121,1193,14,19,
- 15,935,42,37,576,633,87,191,195,191,
- 303,270,276,1581,1193,1294,413,1445,1458,1445,
- 2190,2190,265,1570,1585,268,191,2190,300,290,
- 2190,1388,2190,2190,117,1470,1445,1121,1813,14,
- 19,15,935,42,36,1121,2190,14,19,15,
- 935,42,34,1121,363,14,19,15,935,42,
- 35,873,306,1556,152,306,2190,152,306,1121,
- 2190,14,19,15,935,42,47,1627,363,2190,
- 2190,87,2190,576,87,2190,195,87,115,195,
- 2190,1581,2190,1121,1581,14,19,15,935,42,
- 46,1649,2190,2190,2190,2190,1121,1706,14,19,
- 15,935,42,45,1311,345,1813,1037,345,1813,
- 1102,1552,14,19,15,935,42,43,1159,2190,
- 14,19,15,935,40,1227,1234,873,650,1234,
- 2190,1709,2190,1178,1739,14,19,15,935,33,
- 1178,2190,14,19,15,935,32,87,873,650,
- 250,210,2190,2190,115,2190,2190,1886,2190,255,
- 2190,2190,255,2190,873,650,152,650,87,1822,
- 1249,2190,1909,1249,2190,115,152,650,152,650,
- 2190,2190,152,650,87,2190,87,1815,2190,2190,
- 2190,115,2190,1591,152,650,87,2190,87,2190,
- 1515,2190,87,1653,2190,1659,152,650,1974,1660,
- 2190,2190,2190,2190,87,2190,2190,2190,2190,2190,
- 2190,1820,2190,1035,1998,2190,87,2190,2190,2190,
- 2190,2190,2190,1873,2190,0,179,223,0,2197,
- 1,0,1,2424,0,7,9,0,179,17,
- 0,178,18,0,1,2413,0,112,1605,0
+ 73,74,74,64,64,64,52,104,104,93,
+ 94,94,94,71,71,95,95,96,96,86,
+ 86,25,26,26,26,49,51,51,41,41,
+ 41,41,29,29,30,42,42,43,31,31,
+ 97,97,44,106,106,105,105,45,45,45,
+ 45,45,45,45,45,45,98,53,53,53,
+ 53,75,75,65,65,65,66,66,55,55,
+ 107,107,77,77,76,76,76,56,56,56,
+ 57,58,58,58,59,59,59,59,62,62,
+ 89,89,89,89,87,108,109,109,110,110,
+ 111,111,102,102,112,112,99,99,99,99,
+ 113,113,100,100,100,101,101,289,693,14,
+ 19,15,936,916,44,956,996,976,1037,1016,
+ 1196,1055,1202,1199,1204,74,380,510,91,700,
+ 1409,340,134,211,1528,573,636,512,222,227,
+ 277,1211,858,957,651,685,1135,578,126,217,
+ 1262,219,221,271,136,133,135,159,223,134,
+ 211,251,211,89,266,1571,1586,269,138,876,
+ 165,134,211,1090,327,183,142,145,148,151,
+ 419,144,133,135,159,1732,334,1588,1632,1851,
+ 1287,386,373,136,133,135,159,1455,134,211,
+ 398,1181,408,222,230,398,1281,138,609,165,
+ 298,1222,573,329,858,142,145,148,151,456,
+ 136,133,135,159,1732,334,1588,1632,1851,1287,
+ 970,207,303,305,138,228,165,297,104,473,
+ 1237,896,142,145,148,151,1741,182,408,222,
+ 231,1732,334,1588,1632,1851,1287,1401,127,14,
+ 19,15,936,42,44,956,996,976,1037,1778,
+ 331,1357,1355,14,19,15,936,916,44,956,
+ 996,976,1037,1016,1196,1055,1202,1199,1204,74,
+ 295,296,278,1357,1355,14,19,15,936,916,
+ 44,956,996,976,1037,1016,1196,1055,1202,1199,
+ 1204,74,812,1326,278,14,19,15,936,916,
+ 44,956,996,976,1037,1016,1196,1055,1202,1199,
+ 1204,74,1005,280,278,1278,1355,14,19,15,
+ 936,916,44,956,996,976,1037,1016,1196,1055,
+ 1202,1199,1204,74,1013,280,278,225,281,1401,
+ 1391,14,19,15,936,42,44,956,996,976,
+ 1037,1016,1196,1055,1817,157,569,700,1444,1014,
+ 281,1401,1703,14,19,15,936,42,44,956,
+ 996,976,1037,1016,1196,1818,126,282,1222,1374,
+ 14,19,15,936,916,44,956,996,976,1037,
+ 1016,1196,1055,1202,1199,1204,74,277,1864,1514,
+ 340,1401,283,14,19,15,936,42,44,1591,
+ 237,1423,2056,14,19,15,936,916,44,956,
+ 996,976,1037,1016,1196,1055,1202,1199,1204,74,
+ 472,1401,1617,14,19,15,936,916,44,956,
+ 996,976,1037,1016,1196,1055,1202,1199,1204,74,
+ 666,1245,91,14,19,15,936,916,44,956,
+ 996,976,1037,1016,1196,1055,1202,1199,1204,74,
+ 510,1401,1627,14,19,15,936,42,44,956,
+ 996,1762,1326,238,14,19,15,936,916,44,
+ 956,996,976,1037,1016,1196,1055,1202,1199,1204,
+ 74,302,1401,278,14,19,15,936,42,44,
+ 956,996,976,1037,1016,1196,1055,1202,1199,1204,
+ 93,1455,1401,1532,14,19,15,936,42,44,
+ 956,996,976,1037,1016,1196,1055,1202,1199,1204,
+ 93,277,345,1401,284,14,19,15,936,42,
+ 44,956,996,976,1653,837,1397,1401,931,14,
+ 19,15,936,916,44,956,996,976,1037,1016,
+ 1196,1055,1202,1199,1204,74,210,1401,85,14,
+ 19,15,936,916,44,956,996,976,1037,1016,
+ 1196,1055,1202,1199,1204,74,1015,1401,84,14,
+ 19,15,936,916,44,956,996,976,1037,1016,
+ 1196,1055,1202,1199,1204,74,637,1401,83,14,
+ 19,15,936,916,44,956,996,976,1037,1016,
+ 1196,1055,1202,1199,1204,74,1006,1401,82,14,
+ 19,15,936,916,44,956,996,976,1037,1016,
+ 1196,1055,1202,1199,1204,74,1050,1401,81,14,
+ 19,15,936,916,44,956,996,976,1037,1016,
+ 1196,1055,1202,1199,1204,74,162,1401,80,14,
+ 19,15,936,916,44,956,996,976,1037,1016,
+ 1196,1055,1202,1199,1204,74,379,1401,79,14,
+ 19,15,936,916,44,956,996,976,1037,1016,
+ 1196,1055,1202,1199,1204,74,1590,1401,78,14,
+ 19,15,936,916,44,956,996,976,1037,1016,
+ 1196,1055,1202,1199,1204,74,521,1401,77,14,
+ 19,15,936,916,44,956,996,976,1037,1016,
+ 1196,1055,1202,1199,1204,74,292,1401,76,14,
+ 19,15,936,916,44,956,996,976,1037,1016,
+ 1196,1055,1202,1199,1204,74,860,1401,75,14,
+ 19,15,936,916,44,956,996,976,1037,1016,
+ 1196,1055,1202,1199,1204,74,724,1401,92,14,
+ 19,15,936,42,44,956,996,976,1037,1016,
+ 1196,1055,1202,1199,1204,93,1401,312,14,19,
+ 15,936,916,44,956,996,976,1037,1016,1196,
+ 1055,1202,1199,1204,74,1062,1401,1699,14,19,
+ 15,936,42,44,956,996,976,1037,1016,1777,
+ 1401,201,14,19,15,936,916,44,956,996,
+ 976,1037,1016,1196,1055,1202,1199,1204,74,510,
+ 1401,1711,14,19,15,936,42,44,956,996,
+ 976,1037,1016,1196,1055,1202,1199,1204,93,1401,
+ 852,14,19,15,936,42,44,956,996,976,
+ 1037,1016,1196,1055,1202,1199,1204,93,1401,123,
+ 14,19,15,936,42,44,956,996,976,1691,
+ 344,336,1730,1401,202,14,19,15,936,42,
+ 44,956,996,976,1037,1016,1196,1055,1202,1199,
+ 1204,93,1401,1836,14,19,15,936,42,44,
+ 956,996,976,1037,1016,1196,1055,1202,1199,1204,
+ 73,175,307,1401,396,14,19,15,936,42,
+ 44,956,996,1765,700,1496,1051,1879,636,647,
+ 110,86,1018,577,438,856,1,307,430,95,
+ 852,865,346,194,512,1283,108,94,96,97,
+ 98,99,683,251,211,110,86,109,577,122,
+ 856,277,1324,196,95,522,1395,46,532,306,
+ 1283,108,94,96,97,98,99,252,211,106,
+ 439,1401,109,14,19,15,936,42,44,956,
+ 996,1775,701,1194,512,222,227,277,1866,700,
+ 651,571,1206,1508,107,191,216,1262,219,221,
+ 271,232,307,852,342,1446,260,1135,124,87,
+ 685,264,1571,1586,269,554,1375,277,1883,529,
+ 110,86,111,577,1544,856,1140,226,59,95,
+ 46,261,134,211,876,1283,108,94,96,97,
+ 98,99,347,1490,277,346,1401,109,14,19,
+ 15,936,42,39,137,133,135,159,1190,346,
+ 277,1290,258,626,1198,274,577,803,139,106,
+ 165,512,222,227,1058,1137,143,146,149,152,
+ 1235,805,1434,216,1262,219,221,271,117,307,
+ 300,876,1368,335,636,852,207,1696,264,1571,
+ 1586,269,277,471,229,1310,896,110,86,696,
+ 577,1195,856,257,125,510,95,1141,1784,251,
+ 211,105,1283,108,94,96,97,98,99,403,
+ 1089,852,232,1401,109,14,19,15,936,42,
+ 44,956,996,976,1037,1016,1196,1055,1202,1824,
+ 121,805,1847,208,1145,346,107,1903,512,222,
+ 579,1185,431,651,403,690,1000,346,308,1516,
+ 216,1262,219,650,229,1010,1235,1489,1825,858,
+ 158,110,86,1829,1441,286,856,1499,196,1021,
+ 95,858,671,512,222,227,1283,1354,94,96,
+ 97,98,99,488,651,216,1262,219,221,256,
+ 1100,346,185,154,576,158,627,690,1194,412,
+ 1250,439,110,86,184,1192,620,856,741,553,
+ 192,95,1235,920,1093,1231,744,1283,101,94,
+ 96,97,98,99,803,512,222,227,154,576,
+ 545,651,456,252,211,916,439,216,1262,219,
+ 221,252,211,308,858,256,239,1505,1411,110,
+ 86,920,287,852,856,1823,1250,573,95,602,
+ 651,512,222,227,1283,118,94,96,97,98,
+ 99,923,2058,217,1262,219,221,203,110,86,
+ 2041,961,573,856,659,651,928,95,1538,197,
+ 199,742,573,1283,114,94,96,97,98,99,
+ 1673,23,510,110,86,16,716,651,856,795,
+ 805,2038,95,134,211,1530,273,1093,1283,1830,
+ 94,96,97,98,99,110,86,1093,773,651,
+ 856,272,1561,275,95,147,133,135,159,22,
+ 1283,113,94,96,97,98,99,110,86,241,
+ 830,651,856,514,573,1887,95,134,211,240,
+ 573,1093,1283,120,94,96,97,98,99,110,
+ 86,403,690,757,856,627,690,1559,95,150,
+ 133,135,159,1584,1283,119,94,96,97,98,
+ 99,570,193,20,403,690,858,277,493,1093,
+ 512,222,227,1195,512,222,227,681,651,852,
+ 573,1093,216,1262,219,221,216,1262,219,221,
+ 334,373,158,512,222,227,1505,87,2079,204,
+ 456,242,1180,1826,115,216,1262,219,221,298,
+ 573,573,329,243,1401,335,14,19,15,936,
+ 42,44,956,996,1776,155,576,134,211,512,
+ 222,1306,867,1828,21,912,297,1709,198,199,
+ 1881,217,1262,219,1299,1002,1047,1181,743,141,
+ 133,135,159,1401,573,14,19,15,936,42,
+ 44,956,1535,140,1401,165,14,19,15,936,
+ 42,44,956,1581,579,2035,1301,270,14,19,
+ 15,936,42,35,756,1602,852,1106,1108,294,
+ 296,1269,326,573,1113,858,1147,274,1148,1272,
+ 702,2191,391,2191,2191,2095,1093,1401,244,14,
+ 19,15,936,42,44,1609,276,1055,346,271,
+ 1301,1571,14,19,15,936,42,35,279,271,
+ 264,1571,1586,269,910,346,955,346,288,1235,
+ 264,1571,1586,269,573,2191,134,211,2191,1093,
+ 1784,858,245,1045,346,803,196,811,196,1401,
+ 263,14,19,15,936,42,38,1936,153,133,
+ 135,159,256,1101,346,196,2191,277,307,289,
+ 573,290,412,1250,26,2191,1194,1401,1194,14,
+ 19,15,936,42,37,577,803,87,191,196,
+ 191,304,271,277,1582,1194,852,414,1446,1459,
+ 1446,2191,2191,266,1571,1586,269,191,2191,301,
+ 291,2191,1389,2191,2191,117,1471,1446,1401,1814,
+ 14,19,15,936,42,36,1401,2191,14,19,
+ 15,936,42,34,1401,573,14,19,15,936,
+ 42,35,681,307,1557,277,307,2191,277,307,
+ 1401,2191,14,19,15,936,42,47,1628,573,
+ 2191,2191,87,2191,577,87,2191,196,87,115,
+ 196,2191,1582,2191,1401,1582,14,19,15,936,
+ 42,46,1650,2191,2191,2191,2191,1401,1707,14,
+ 19,15,936,42,45,1100,346,1814,1145,346,
+ 1814,1379,1553,14,19,15,936,42,43,1445,
+ 2191,14,19,15,936,40,636,1235,681,651,
+ 1235,2191,1710,2191,1467,1740,14,19,15,936,
+ 33,1467,2191,14,19,15,936,32,87,681,
+ 651,251,211,2191,2191,115,2191,2191,1887,2191,
+ 256,2191,2191,256,2191,681,651,277,651,87,
+ 1823,1250,2191,1910,1250,2191,115,277,651,277,
+ 651,2191,2191,277,651,87,2191,87,1816,2191,
+ 2191,2191,115,2191,1592,277,651,87,2191,87,
+ 2191,1516,2191,87,1654,2191,1660,277,651,1975,
+ 1661,2191,2191,2191,2191,87,2191,2191,2191,2191,
+ 2191,2191,1821,2191,1036,1999,2191,87,2191,2191,
+ 2191,2191,2191,2191,1874,2191,0,179,224,0,
+ 2198,1,0,1,2426,0,7,9,0,179,
+ 17,0,178,18,0,1,2415,0,112,1606,
+ 0
};
};
public final static char baseAction[] = BaseAction.baseAction;
@@ -490,148 +491,173 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym
public final static byte termCheck[] = {0,
0,1,2,3,4,5,6,7,8,9,
10,11,12,13,14,15,16,17,18,19,
- 20,21,22,23,24,25,26,27,28,0,
+ 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,0,1,2,
- 60,0,1,2,3,4,5,6,7,8,
- 9,10,11,12,13,14,15,16,17,18,
- 19,20,21,22,23,24,25,26,27,28,
- 61,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,0,0,
- 1,60,0,1,2,3,4,5,6,7,
- 8,9,10,11,12,13,14,15,16,17,
- 18,19,20,21,22,23,24,25,26,27,
- 28,0,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,0,
- 62,63,60,0,1,2,3,4,5,6,
- 7,8,9,10,11,12,13,14,15,16,
- 17,18,19,20,21,22,23,24,25,26,
- 27,28,0,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,
- 0,1,2,3,4,5,6,7,8,9,
- 10,11,12,13,14,15,16,17,18,19,
- 20,21,22,23,24,25,26,27,28,57,
- 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,0,1,2,
- 0,4,5,0,7,8,9,10,11,12,
- 13,14,15,16,17,18,0,20,21,22,
- 23,24,25,26,27,28,0,1,2,0,
- 4,31,0,1,2,6,4,0,1,42,
- 43,44,45,46,47,48,49,50,51,52,
- 53,54,55,56,0,1,2,3,4,5,
- 0,29,0,0,0,3,0,1,2,3,
- 4,7,8,19,20,21,22,23,24,25,
- 26,27,28,0,30,19,20,21,22,23,
- 24,25,26,27,28,29,42,43,44,45,
+ 40,41,42,43,44,0,46,47,48,49,
+ 50,51,52,53,54,55,56,57,0,1,
+ 2,3,4,5,6,7,8,9,10,11,
+ 12,13,14,15,16,17,18,19,20,21,
+ 22,23,24,25,26,27,28,29,30,31,
+ 32,33,34,35,36,37,38,39,40,41,
+ 42,43,44,58,46,47,48,49,50,51,
+ 52,53,54,55,56,57,0,1,2,3,
+ 4,5,6,7,8,9,10,11,12,13,
+ 14,15,16,17,18,19,20,21,22,23,
+ 24,25,26,27,28,29,30,31,32,33,
+ 34,35,36,37,38,39,40,41,42,43,
+ 44,0,46,47,48,49,50,51,52,53,
+ 54,55,56,57,0,1,2,3,4,5,
+ 6,7,8,9,10,11,12,13,14,15,
+ 16,17,18,19,20,21,22,23,24,25,
+ 26,27,28,29,30,31,32,33,34,35,
+ 36,37,38,39,40,41,42,43,44,58,
46,47,48,49,50,51,52,53,54,55,
- 56,0,1,2,3,4,5,0,0,2,
- 58,61,5,6,58,0,0,73,0,1,
+ 56,0,1,2,3,4,5,6,7,8,
+ 9,10,11,12,13,14,15,16,17,18,
19,20,21,22,23,24,25,26,27,28,
- 0,30,59,83,84,85,86,87,88,89,
- 90,91,92,42,43,44,45,46,47,48,
- 49,50,51,52,53,54,55,56,0,0,
- 2,0,0,5,6,4,0,1,0,0,
- 1,2,0,4,73,0,1,2,3,4,
- 5,6,7,8,9,10,11,12,13,14,
- 15,16,17,18,19,29,81,82,29,69,
- 70,71,72,0,1,30,31,32,33,34,
- 35,36,37,38,39,40,41,0,1,2,
- 3,4,5,6,7,8,9,10,11,12,
- 13,14,15,16,17,18,19,69,70,71,
- 72,69,70,71,72,0,1,30,31,32,
- 33,34,35,36,37,38,39,40,41,0,
- 1,2,3,4,5,6,7,8,9,10,
- 11,12,13,14,15,16,17,18,19,0,
- 0,2,0,1,5,6,0,7,8,30,
- 31,32,33,34,35,36,37,38,39,40,
- 41,0,1,2,3,4,5,6,7,8,
- 9,10,11,12,13,14,15,16,17,18,
- 19,0,0,2,2,0,5,5,0,1,
- 0,30,31,32,33,34,35,36,37,38,
- 39,40,41,0,1,2,3,4,5,6,
- 7,8,9,10,11,12,13,14,15,16,
- 17,18,19,0,0,2,0,0,5,2,
- 0,7,8,30,31,32,33,34,35,36,
- 37,38,39,40,41,0,1,2,3,4,
- 5,6,7,8,9,10,11,12,13,14,
- 15,16,17,18,19,0,0,2,0,79,
- 5,0,6,0,6,30,31,32,33,34,
- 35,36,37,38,39,40,41,0,1,2,
- 3,4,5,6,7,8,9,10,11,12,
- 13,14,15,16,17,18,19,0,0,0,
- 0,0,0,6,6,6,0,30,31,32,
- 33,34,35,36,37,38,39,40,41,0,
- 1,2,3,4,5,6,7,8,9,10,
- 11,12,13,14,15,16,17,18,19,76,
- 0,0,1,2,0,0,5,3,0,30,
- 31,32,33,34,35,36,37,38,39,40,
- 41,20,21,22,23,24,25,26,27,28,
- 0,1,2,3,0,0,1,3,3,73,
- 0,1,2,42,43,44,45,46,47,48,
- 49,50,51,52,53,54,55,56,0,29,
- 2,57,58,5,29,0,61,59,0,4,
- 0,3,0,3,0,3,0,3,20,21,
- 22,23,24,25,26,27,28,19,58,19,
- 0,19,0,58,60,0,20,21,22,59,
- 42,43,44,45,46,47,48,49,50,51,
- 52,53,54,55,56,20,21,22,23,24,
- 25,26,27,28,0,57,0,57,0,61,
- 58,61,67,68,60,0,0,42,43,44,
- 45,46,47,48,49,50,51,52,53,0,
- 1,2,3,4,5,29,7,8,9,10,
- 11,12,13,14,15,16,17,18,78,77,
- 0,0,23,0,1,2,3,4,5,9,
- 7,8,9,10,11,12,13,14,15,16,
- 17,18,66,0,1,2,23,4,5,6,
- 7,8,9,10,11,12,13,14,15,16,
- 17,18,0,0,65,0,1,2,3,4,
- 5,6,7,8,9,10,11,12,13,14,
- 15,16,17,18,0,1,0,0,65,0,
- 1,2,3,4,5,0,7,8,9,10,
- 11,12,13,14,15,16,17,18,0,0,
- 0,0,0,29,6,20,21,22,9,57,
- 57,0,0,1,2,60,4,5,6,7,
- 8,9,10,11,12,13,14,15,16,17,
- 18,20,21,22,23,24,25,26,27,28,
- 64,0,1,2,65,4,5,6,7,8,
- 9,10,11,12,13,14,15,16,17,18,
- 0,1,2,0,4,5,3,7,8,9,
- 10,11,12,13,14,15,16,17,18,0,
- 1,2,19,4,5,0,7,8,9,10,
- 11,12,13,14,15,16,17,18,0,1,
+ 29,30,31,32,33,34,35,36,37,38,
+ 39,40,41,42,43,44,0,46,47,48,
+ 49,50,51,52,53,54,55,56,0,1,
2,0,4,5,0,7,8,9,10,11,
- 12,13,14,15,16,17,18,0,1,2,
- 57,4,5,0,7,8,9,10,11,12,
- 13,14,15,16,17,18,0,1,2,3,
- 4,0,57,20,21,22,23,24,25,26,
- 27,28,0,0,0,19,20,21,22,23,
- 24,25,26,27,28,29,0,0,1,0,
- 0,4,20,21,22,23,24,25,26,27,
- 28,0,0,1,0,0,20,21,22,20,
- 21,22,10,11,58,0,29,0,0,0,
- 3,20,21,22,23,24,25,26,27,28,
- 0,29,0,3,2,20,21,22,20,21,
- 22,0,0,0,0,4,0,4,0,19,
- 0,1,0,0,4,3,3,0,0,0,
- 3,3,3,0,74,75,3,0,66,0,
- 0,19,19,0,4,58,0,29,0,29,
- 0,77,80,0,0,0,0,57,0,0,
- 0,0,6,74,75,6,64,0,0,0,
- 0,0,29,0,62,63,62,63,67,68,
- 67,68,29,0,66,0,0,60,60,0,
- 0,58,76,0,65,0,0,0,0,62,
- 63,62,63,0,64,59,0,0,0,59,
- 0,0,64,59,0,57,0,0,0,0,
- 59,61,0,0,0,0,59,0,0,0,
- 0,0,0,78,0,0,0,0,0,0,
+ 12,13,14,15,16,17,18,19,20,21,
+ 22,0,24,25,26,27,28,0,30,31,
+ 32,33,34,35,36,37,38,39,40,41,
+ 42,43,44,0,1,2,3,4,5,0,
+ 7,8,9,0,0,6,0,1,2,3,
+ 7,8,9,62,63,22,23,24,25,26,
+ 27,28,29,30,31,32,33,34,35,36,
+ 37,38,39,40,41,42,43,44,0,0,
+ 69,70,71,72,0,0,1,2,3,4,
+ 5,45,7,8,9,0,1,0,0,4,
+ 3,6,0,1,2,59,73,22,23,24,
+ 25,26,27,28,29,30,31,32,33,34,
+ 35,36,37,38,39,40,41,42,43,44,
+ 0,1,2,3,4,5,6,0,0,61,
+ 10,11,12,13,14,15,16,17,18,19,
+ 20,21,73,23,57,0,1,2,73,29,
+ 5,83,84,85,86,87,88,89,90,91,
+ 92,0,0,0,3,3,46,47,48,49,
+ 50,51,52,53,54,55,56,0,1,2,
+ 3,4,5,6,23,23,58,10,11,12,
+ 13,14,15,16,17,18,19,20,21,0,
+ 23,0,1,0,5,4,29,6,81,82,
+ 0,0,1,2,0,5,5,0,0,58,
+ 58,3,61,46,47,48,49,50,51,52,
+ 53,54,55,56,0,1,2,3,4,5,
+ 6,23,0,1,10,11,12,13,14,15,
+ 16,17,18,19,20,21,45,23,0,0,
+ 0,1,0,29,4,3,6,0,0,2,
+ 2,3,69,70,71,72,58,67,68,61,
+ 46,47,48,49,50,51,52,53,54,55,
+ 56,0,1,2,3,4,5,6,0,0,
+ 2,10,11,12,13,14,15,16,17,18,
+ 19,20,21,45,23,0,0,1,2,61,
+ 29,59,7,8,9,0,0,59,69,70,
+ 71,72,7,8,9,0,0,46,47,48,
+ 49,50,51,52,53,54,55,56,0,1,
+ 2,3,4,5,6,0,0,2,10,11,
+ 12,13,14,15,16,17,18,19,20,21,
+ 0,23,0,3,0,1,60,29,4,7,
+ 8,9,0,1,2,0,60,5,3,0,
+ 0,0,3,23,46,47,48,49,50,51,
+ 52,53,54,55,56,0,1,2,3,4,
+ 5,6,23,0,78,10,11,12,13,14,
+ 15,16,17,18,19,20,21,45,23,59,
+ 0,0,0,0,29,45,5,7,8,9,
+ 7,8,9,58,59,0,0,2,0,3,
+ 5,46,47,48,49,50,51,52,53,54,
+ 55,56,0,1,2,3,4,5,6,23,
+ 79,0,10,11,12,13,14,15,16,17,
+ 18,19,20,21,0,23,0,74,75,5,
+ 45,29,0,1,0,0,4,3,67,68,
+ 0,0,2,2,58,5,74,75,46,47,
+ 48,49,50,51,52,53,54,55,56,0,
+ 1,2,3,4,5,6,0,0,2,10,
+ 11,12,13,14,15,16,17,18,19,20,
+ 21,0,23,0,3,45,45,0,29,0,
+ 3,67,68,59,0,1,0,3,4,10,
+ 11,7,8,9,23,46,47,48,49,50,
+ 51,52,53,54,55,56,22,0,24,25,
+ 26,27,28,29,30,31,32,33,34,35,
+ 36,37,38,39,40,41,42,43,44,0,
+ 1,0,3,4,57,0,7,8,9,0,
+ 1,57,0,4,2,10,11,0,62,63,
+ 0,22,2,24,25,26,27,28,29,30,
+ 31,32,33,34,35,36,37,38,39,40,
+ 41,42,43,44,0,1,0,3,4,3,
+ 0,7,8,9,0,1,57,45,4,0,
+ 10,11,45,62,63,6,22,0,24,25,
+ 26,27,28,29,30,31,32,33,34,35,
+ 36,37,38,39,40,41,42,43,44,0,
+ 1,0,3,4,0,0,7,8,9,0,
+ 6,57,0,0,0,59,2,0,6,6,
+ 0,22,2,24,25,26,27,28,29,30,
+ 31,32,33,34,35,36,37,38,39,40,
+ 41,42,43,44,0,1,0,3,4,0,
+ 0,7,8,9,0,1,57,0,0,0,
+ 0,0,12,62,63,60,22,58,24,25,
+ 26,27,28,29,30,31,32,33,34,35,
+ 36,37,38,39,40,41,42,43,44,0,
+ 1,2,0,4,77,3,7,8,9,0,
+ 0,57,0,46,5,0,6,0,62,63,
+ 61,22,0,24,25,26,27,28,64,30,
+ 31,32,33,34,35,36,37,38,39,40,
+ 41,42,43,44,0,1,0,76,4,0,
+ 0,7,8,9,0,6,0,0,0,0,
+ 0,0,6,6,0,0,22,65,24,25,
+ 26,27,28,64,30,31,32,33,34,35,
+ 36,37,38,39,40,41,42,43,44,0,
+ 0,45,77,76,0,0,7,8,9,0,
+ 78,0,12,0,0,0,0,0,0,0,
+ 60,22,66,24,25,26,27,28,64,30,
+ 31,32,33,34,35,36,37,38,39,40,
+ 41,0,1,2,3,4,5,0,0,45,
+ 0,10,11,12,13,14,15,16,17,18,
+ 19,20,21,22,0,1,2,3,4,5,
+ 66,60,58,64,10,11,12,13,14,15,
+ 16,17,18,19,20,21,22,0,0,0,
+ 0,0,0,0,0,0,0,0,1,2,
+ 3,4,5,6,0,0,65,10,11,12,
+ 13,14,15,16,17,18,19,20,21,0,
+ 0,1,2,3,4,5,0,0,0,65,
+ 10,11,12,13,14,15,16,17,18,19,
+ 20,21,0,0,0,0,1,2,60,4,
+ 5,6,61,60,57,10,11,12,13,14,
+ 15,16,17,18,19,20,21,0,0,0,
+ 0,0,0,0,0,0,0,1,2,60,
+ 4,5,6,0,0,65,10,11,12,13,
+ 14,15,16,17,18,19,20,21,0,1,
+ 2,0,4,5,6,0,0,0,10,11,
+ 12,13,14,15,16,17,18,19,20,21,
+ 0,1,2,0,4,5,0,0,0,0,
+ 10,11,12,13,14,15,16,17,18,19,
+ 20,21,0,1,2,0,4,5,0,0,
+ 0,0,10,11,12,13,14,15,16,17,
+ 18,19,20,21,0,1,2,0,4,5,
+ 0,0,0,0,10,11,12,13,14,15,
+ 16,17,18,19,20,21,0,1,2,0,
+ 4,5,0,0,0,0,10,11,12,13,
+ 14,15,16,17,18,19,20,21,0,1,
+ 2,3,0,5,0,7,8,9,0,1,
+ 2,3,0,5,0,7,8,9,0,0,
+ 22,23,24,25,26,27,28,0,0,0,
+ 22,23,24,25,26,27,28,0,0,0,
+ 0,0,0,45,7,8,9,0,0,0,
+ 0,0,0,45,7,8,9,59,0,22,
+ 0,24,25,26,27,28,0,59,0,22,
+ 0,24,25,26,27,28,0,7,8,9,
+ 0,0,0,0,0,0,0,7,8,9,
+ 0,0,22,0,24,25,26,27,28,0,
+ 0,2,22,0,24,25,26,27,28,0,
+ 0,0,13,14,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0
+ 0,0,0,0,45,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,66,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,80,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0
};
};
public final static byte termCheck[] = TermCheck.termCheck;
@@ -639,147 +665,173 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym
public interface TermAction {
public final static char termAction[] = {0,
- 2190,1,3833,1307,1,3827,404,1,1,1,
- 1,1,1,1,1,1,1,1,1,2198,
- 1,1,1,1,1,1,1,1,1,156,
- 2290,774,1109,721,1209,835,1441,669,1523,815,
- 1268,777,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1693,2413,
- 2196,7,2175,2175,2175,2175,2175,2175,2175,2175,
- 2175,2175,2175,2175,2175,2175,2175,2175,2175,2175,
- 2175,2175,2175,2175,2175,2175,2175,2175,2175,2175,
- 512,2175,2175,2175,2175,2175,2175,2175,2175,2175,
- 2175,2175,2175,2175,2175,2175,2175,2175,2175,2175,
- 2175,2175,2175,2175,2175,2175,2175,2175,54,179,
- 2166,2175,2190,1,3833,1307,1,3827,404,1,
+ 2191,3797,1,1308,3771,1,405,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,2198,1,1,1,1,1,1,1,1,
- 1,1,2290,774,1109,721,1209,835,1441,669,
- 1523,815,1268,777,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,2190,
- 1782,1793,2196,2190,1,3833,2199,1,3827,404,
+ 1,1,1,2199,1,1,1,1,1,2291,
1,1,1,1,1,1,1,1,1,1,
- 1,1,2198,1,1,1,1,1,1,1,
- 1,1,28,2290,774,1109,721,1209,835,1441,
- 669,1523,815,1268,777,1,1,1,1,1,
+ 1,1,1,1,1,28,775,1110,722,1210,
+ 836,1442,670,1524,816,1269,778,2197,7,2176,
+ 2176,2176,2176,2176,2176,2176,2176,2176,2176,2176,
+ 2176,2176,2176,2176,2176,2176,2176,2176,2176,2176,
+ 2176,2176,2176,2176,2176,2176,2176,2176,2176,2176,
+ 2176,2176,2176,2176,2176,2176,2176,2176,2176,2176,
+ 2176,2176,2176,2218,2176,2176,2176,2176,2176,2176,
+ 2176,2176,2176,2176,2176,2176,2191,3797,1,1308,
+ 3771,1,405,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,2199,
+ 1,1,1,1,1,2291,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 2190,1,3833,2199,1,3827,404,1,1,1,
- 1,1,1,1,1,1,1,1,1,2198,
- 1,1,1,1,1,1,1,1,1,2217,
- 2290,774,1109,721,1209,835,1441,669,1523,815,
- 1268,777,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,2190,1906,1456,
- 2190,1973,1466,2190,1957,1916,1965,2070,2063,2048,
- 2200,2201,2202,2203,1888,1325,2190,2401,2402,2403,
- 2352,2353,2351,2404,2354,2350,2190,1693,2413,2190,
- 1342,1468,258,1321,2413,399,1,2190,1360,2357,
- 2362,2361,2359,2360,2358,2363,2364,2356,2365,2366,
- 2367,1270,1213,1183,2190,1,1,2199,1,1,
- 42,597,2190,2190,51,2195,17,2178,179,2178,
- 2178,1836,620,2198,1,1,1,1,1,1,
- 1,1,1,2190,2488,2178,179,179,179,179,
- 179,179,179,179,179,2178,1,1,1,1,
+ 1,205,775,1110,722,1210,836,1442,670,1524,
+ 816,1269,778,2197,2191,3797,1,2200,3771,1,
+ 405,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,2199,1,1,
+ 1,1,1,2291,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,3462,
+ 775,1110,722,1210,836,1442,670,1524,816,1269,
+ 778,2191,3797,1,2200,3771,1,405,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,2190,1,1,2199,1,1,2190,2190,2370,
- 2194,976,2371,339,2178,72,2190,292,2190,1981,
- 2198,1,1,1,1,1,1,1,1,1,
- 59,2488,2293,956,936,916,896,876,836,856,
- 816,796,776,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,2190,2190,
- 2370,2190,2190,2371,616,1139,219,1430,61,264,
- 1321,2413,60,1342,291,2190,1,3833,2199,1,
- 3827,404,1,1,1,1,1,1,1,1,
- 1,1,1,1,2198,597,1412,2124,597,1743,
- 1250,1182,690,2190,2096,2290,774,1109,721,1209,
- 835,1441,669,1523,815,1268,777,2190,1,3833,
- 2199,1,3827,404,1,1,1,1,1,1,
- 1,1,1,1,1,1,2198,1743,1250,1182,
- 690,1743,1250,1182,690,2190,2106,2290,774,1109,
- 721,1209,835,1441,669,1523,815,1268,777,2190,
- 1,3833,2199,1,3827,404,1,1,1,1,
- 1,1,1,1,1,1,1,1,2198,2190,
- 53,2370,2190,2108,2371,760,2190,1836,620,2290,
- 774,1109,721,1209,835,1441,669,1523,815,1268,
- 777,2190,1,3833,2199,1,3827,404,1,1,
+ 1,1,1,1,2199,1,1,1,1,1,
+ 2291,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,775,1110,722,
+ 1210,836,1442,670,1524,816,1269,778,2191,1457,
+ 1907,54,1467,1974,2191,2403,2404,2405,1958,1917,
+ 1966,2071,2064,2049,2201,2202,2203,2204,1889,1326,
+ 2353,59,2354,2352,2406,2355,2351,2191,2358,2363,
+ 2362,2360,2361,2359,2364,2365,2357,2366,2367,2368,
+ 1271,1214,1184,2191,1,1,2200,1,1,2191,
+ 1,1,1,247,2191,400,1,2185,1322,2196,
+ 1,1,1,1783,1794,1,2199,1,1,1,
+ 1,1,2490,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,42,2191,
+ 1744,1251,1183,691,2191,2191,1,1,2200,1,
+ 1,598,1,1,1,2191,2371,1,2191,2372,
+ 2170,340,1,2415,1694,2195,293,1,2199,1,
+ 1,1,1,1,2490,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 2198,205,2190,2370,2370,2190,2371,2371,2190,2136,
- 112,2290,774,1109,721,1209,835,1441,669,1523,
- 815,1268,777,2190,1,3833,2199,1,3827,404,
+ 2191,3797,1,2200,3771,1,405,72,253,977,
1,1,1,1,1,1,1,1,1,1,
- 1,1,2198,2190,52,2219,2190,2190,2220,2425,
- 2190,1836,620,2290,774,1109,721,1209,835,1441,
- 669,1523,815,1268,777,2190,1,3833,2199,1,
- 3827,404,1,1,1,1,1,1,1,1,
- 1,1,1,1,2198,204,187,1346,186,2187,
- 1346,2190,1266,66,1296,2290,774,1109,721,1209,
- 835,1441,669,1523,815,1268,777,2190,1,3833,
- 2199,1,3827,404,1,1,1,1,1,1,
- 1,1,1,1,1,1,2198,188,226,1,
- 2190,2190,2190,1339,229,404,2190,2290,774,1109,
- 721,1209,835,1441,669,1523,815,1268,777,2190,
- 1,3833,2199,1,3827,404,1,1,1,1,
- 1,1,1,1,1,1,1,1,2198,1055,
- 2190,1,1693,346,2190,208,2368,2195,2190,2290,
- 774,1109,721,1209,835,1441,669,1523,815,1268,
- 777,2401,2402,2403,2352,2353,2351,2404,2354,2350,
- 1,1321,2184,2195,1,1,1803,2169,2195,2165,
- 1,1693,2413,2357,2362,2361,2359,2360,2358,2363,
- 2364,2356,2365,2366,2367,1270,1213,1183,2190,597,
- 2369,1508,2194,2368,597,48,741,1482,232,2026,
- 233,220,1,220,1,116,246,190,2401,2402,
- 2403,2352,2353,2351,2404,2354,2350,220,2194,220,
- 70,116,68,2194,2196,128,1,1,1,1016,
- 2357,2362,2361,2359,2360,2358,2363,2364,2356,2365,
- 2366,2367,1270,1213,1183,2401,2402,2403,2352,2353,
- 2351,2404,2354,2350,2190,220,2190,220,2190,220,
- 116,220,2013,1989,190,2190,2190,2357,2362,2361,
- 2359,2360,2358,2363,2364,2356,2365,2366,2367,1,
- 1906,2207,2193,1805,2208,1108,1957,1916,1965,2070,
- 2063,2048,2200,2201,2202,2203,1888,1325,558,580,
- 64,2190,630,2190,1906,2207,2193,1849,2208,456,
- 1957,1916,1965,2070,2063,2048,2200,2201,2202,2203,
- 1888,1325,1884,2190,1906,2207,1069,1973,2208,1381,
- 1957,1916,1965,2070,2063,2048,2200,2201,2202,2203,
- 1888,1325,204,252,2192,1,1906,2207,27,1973,
- 2208,1381,1957,1916,1965,2070,2063,2048,2200,2201,
- 2202,2203,1888,1325,266,1609,1,2190,2192,2190,
- 1906,2207,2193,1973,2208,247,1957,1916,1965,2070,
- 2063,2048,2200,2201,2202,2203,1888,1325,226,65,
- 2190,2190,2190,597,230,1,1,1,456,3211,
- 1337,129,1,1906,2207,27,1973,2208,1381,1957,
- 1916,1965,2070,2063,2048,2200,2201,2202,2203,1888,
- 1325,2401,2402,2403,2352,2353,2351,2404,2354,2350,
- 2444,2190,1906,2207,2192,1973,2208,1696,1957,1916,
- 1965,2070,2063,2048,2200,2201,2202,2203,1888,1325,
- 2190,1906,2207,2190,1973,2208,2199,1957,1916,1965,
- 2070,2063,2048,2200,2201,2202,2203,1888,1325,1,
- 1906,2207,2198,1973,2208,88,1957,1916,1965,2070,
- 2063,2048,2200,2201,2202,2203,1888,1325,2190,1984,
- 2207,2190,1973,2208,2190,1957,1916,1965,2070,2063,
- 2048,2200,2201,2202,2203,1888,1325,2190,1987,2207,
- 1670,1973,2208,130,1957,1916,1965,2070,2063,2048,
- 2200,2201,2202,2203,1888,1325,18,2181,178,2181,
- 2181,2190,996,2401,2402,2403,2352,2353,2351,2404,
- 2354,2350,131,2190,2190,2181,178,178,178,178,
- 178,178,178,178,178,2181,2190,261,1803,248,
- 62,1,2401,2402,2403,2352,2353,2351,2404,2354,
- 2350,132,31,342,69,2190,2401,2402,2403,2401,
- 2402,2403,2214,2215,2181,249,597,1,245,63,
- 2195,2401,2402,2403,2352,2353,2351,2404,2354,2350,
- 2190,2112,1,2199,2172,2401,2402,2403,2401,2402,
- 2403,50,58,49,57,2026,67,2026,284,2198,
- 264,1803,1,2190,1342,2199,2199,2190,1,2190,
- 2197,189,2193,1,1127,762,90,56,1550,55,
- 1,2198,2198,217,1139,2194,2190,1142,1,597,
- 199,580,1512,267,2190,71,41,1674,28,2190,
- 2190,1,1696,1127,762,1696,2444,1,2190,2190,
- 2190,2190,597,2190,1782,1793,1782,1793,2013,1989,
- 2013,1989,597,2190,1925,2190,2190,2196,189,2190,
- 2190,90,1055,2190,2192,2190,2190,2190,2190,1782,
- 1793,1782,1793,2190,2444,2292,2190,2190,2190,1089,
- 2190,2190,2443,1161,2190,534,2190,2190,2190,2190,
- 2371,701,2190,2190,2190,2190,2370,2190,2190,2190,
- 2190,2190,2190,558
+ 1,1,2166,2199,2197,2191,2415,1694,292,2291,
+ 1343,957,937,917,897,877,837,857,817,797,
+ 777,233,2191,2191,221,2200,775,1110,722,1210,
+ 836,1442,670,1524,816,1269,778,2191,3797,1,
+ 2200,3771,1,405,221,2199,1338,1,1,1,
+ 1,1,1,1,1,1,1,1,1,2191,
+ 2199,2191,2371,61,1140,2372,2291,617,1413,2125,
+ 48,259,2415,1322,2191,2027,1,2191,234,221,
+ 1671,221,221,775,1110,722,1210,836,1442,670,
+ 1524,816,1269,778,2191,3797,1,2200,3771,1,
+ 405,221,2191,2427,1,1,1,1,1,1,
+ 1,1,1,1,1,1,598,2199,156,60,
+ 2191,2371,2191,2291,2372,2196,761,179,1,2167,
+ 1804,2196,1744,1251,1183,691,221,2014,1990,221,
+ 775,1110,722,1210,836,1442,670,1524,816,1269,
+ 778,2191,3797,1,2200,3771,1,405,2191,2191,
+ 1361,1,1,1,1,1,1,1,1,1,
+ 1,1,1,598,2199,248,1,2415,1694,513,
+ 2291,2195,1,1,1,2191,2191,2195,1744,1251,
+ 1183,691,2403,2404,2405,2191,70,775,1110,722,
+ 1210,836,1442,670,1524,816,1269,778,2191,3797,
+ 1,2200,3771,1,405,2191,2191,1982,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,2199,249,116,206,2371,1017,2291,2372,2403,
+ 2404,2405,265,2415,1322,2191,2294,1343,2196,1,
+ 218,112,2200,116,775,1110,722,1210,836,1442,
+ 670,1524,816,1269,778,2191,3797,1,2200,3771,
+ 1,405,2199,62,559,1,1,1,1,1,
+ 1,1,1,1,1,1,1,598,2199,116,
+ 250,50,63,246,2291,598,2027,2403,2404,2405,
+ 2403,2404,2405,1509,2195,262,2191,1804,2191,2200,
+ 1,775,1110,722,1210,836,1442,670,1524,816,
+ 1269,778,2191,3797,1,2200,3771,1,405,2199,
+ 2188,2191,1,1,1,1,1,1,1,1,
+ 1,1,1,1,49,2199,2191,1128,763,2027,
+ 598,2291,2191,2371,1,2191,2372,2196,2014,1990,
+ 265,220,1804,1431,1675,1343,1128,763,775,1110,
+ 722,1210,836,1442,670,1524,816,1269,778,2191,
+ 3797,1,2200,3771,1,405,2191,2191,2097,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,2191,2199,2191,2200,598,598,2191,2291,51,
+ 2198,2014,1990,2195,2191,1,58,190,1,1837,
+ 621,1,1,1,2199,775,1110,722,1210,836,
+ 1442,670,1524,816,1269,778,1,2191,1,1,
+ 1,1,1,2386,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,2191,
+ 1,57,190,1,2197,53,1,1,1,2191,
+ 2220,190,267,2221,1610,1837,621,268,1783,1794,
+ 2191,1,2107,1,1,1,1,1,2386,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,2191,1,1,190,1,90,
+ 52,1,1,1,205,1347,190,598,1347,187,
+ 1837,621,598,1783,1794,1267,1,2191,1,1,
+ 1,1,1,2386,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,2191,
+ 1,56,189,1,186,2191,1,1,1,88,
+ 1297,190,188,227,2191,90,2109,68,1340,230,
+ 2191,1,2137,1,1,1,1,1,2386,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,2191,1,55,190,1,209,
+ 64,1,1,1,1,2173,189,2191,2191,2191,
+ 2191,66,457,1783,1794,1483,1,997,1,1,
+ 1,1,1,2386,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 347,1694,2191,2369,581,2194,2403,2404,2405,1,
+ 1,190,2191,1469,1140,69,405,67,1783,1794,
+ 742,2353,71,2354,2352,2406,2355,2351,2446,2358,
+ 2363,2362,2360,2361,2359,2364,2365,2357,2366,2367,
+ 2368,1271,1214,1184,2191,2370,2191,1056,2369,227,
+ 2191,2403,2404,2405,1,231,41,2191,2191,2191,
+ 2191,2191,1697,1697,2191,2191,2353,2193,2354,2352,
+ 2406,2355,2351,2446,2358,2363,2362,2360,2361,2359,
+ 2364,2365,2357,2366,2367,2368,1271,1214,1184,128,
+ 65,1109,581,1056,285,2191,2403,2404,2405,1,
+ 559,200,457,2191,28,2191,2191,2191,2191,2191,
+ 2293,2353,1885,2354,2352,2406,2355,2351,2446,2358,
+ 2363,2362,2360,2361,2359,2364,2365,2357,2366,2367,
+ 2368,1,2208,1907,2194,2209,1806,2191,2191,1143,
+ 2191,1958,1917,1966,2071,2064,2049,2201,2202,2203,
+ 2204,1889,1326,631,2191,2208,1907,2194,2209,1850,
+ 1926,1090,535,2445,1958,1917,1966,2071,2064,2049,
+ 2201,2202,2203,2204,1889,1326,1070,2191,2191,2191,
+ 2191,2191,2191,1,2191,2191,2191,1,2208,1907,
+ 27,2209,1974,1382,2191,2191,2193,1958,1917,1966,
+ 2071,2064,2049,2201,2202,2203,2204,1889,1326,1,
+ 2191,2208,1907,2194,2209,1974,2191,2191,2191,2193,
+ 1958,1917,1966,2071,2064,2049,2201,2202,2203,2204,
+ 1889,1326,2191,2191,2191,2191,2208,1907,1162,2209,
+ 1974,1382,702,2372,27,1958,1917,1966,2071,2064,
+ 2049,2201,2202,2203,2204,1889,1326,2191,2191,2191,
+ 2191,2191,2191,2191,2191,2191,1,2208,1907,2371,
+ 2209,1974,1382,2191,2191,2193,1958,1917,1966,2071,
+ 2064,2049,2201,2202,2203,2204,1889,1326,2191,2208,
+ 1907,2191,2209,1974,1697,2191,2191,2191,1958,1917,
+ 1966,2071,2064,2049,2201,2202,2203,2204,1889,1326,
+ 2191,2208,1907,2191,2209,1974,2191,2191,2191,2191,
+ 1958,1917,1966,2071,2064,2049,2201,2202,2203,2204,
+ 1889,1326,1,2208,1907,2191,2209,1974,2191,2191,
+ 2191,2191,1958,1917,1966,2071,2064,2049,2201,2202,
+ 2203,2204,1889,1326,2191,2208,1985,2191,2209,1974,
+ 2191,2191,2191,2191,1958,1917,1966,2071,2064,2049,
+ 2201,2202,2203,2204,1889,1326,2191,2208,1988,2191,
+ 2209,1974,2191,2191,2191,2191,1958,1917,1966,2071,
+ 2064,2049,2201,2202,2203,2204,1889,1326,17,179,
+ 2179,2179,2191,2179,2191,179,179,179,18,178,
+ 2182,2182,2191,2182,2191,178,178,178,2191,2191,
+ 179,2179,179,179,179,179,179,2191,2191,2191,
+ 178,2182,178,178,178,178,178,129,2191,2191,
+ 2191,2191,2191,2179,2403,2404,2405,130,2191,2191,
+ 2191,2191,2191,2182,2403,2404,2405,2179,2191,2353,
+ 2191,2354,2352,2406,2355,2351,2191,2182,2191,2353,
+ 131,2354,2352,2406,2355,2351,2191,2403,2404,2405,
+ 132,2191,2191,2191,2191,2191,2191,2403,2404,2405,
+ 2191,2191,2353,2191,2354,2352,2406,2355,2351,31,
+ 2191,343,2353,2191,2354,2352,2406,2355,2351,2191,
+ 2191,2191,2215,2216,2191,2191,2191,2191,2191,2191,
+ 2191,2191,2191,2191,2191,2191,2191,2191,2191,2191,
+ 2191,2191,2191,2191,2191,2191,2191,2191,2191,2191,
+ 2191,2191,2191,2191,2113,2191,2191,2191,2191,2191,
+ 2191,2191,2191,2191,2191,2191,2191,2191,2191,2191,
+ 2191,2191,2191,2191,2191,1551,2191,2191,2191,2191,
+ 2191,2191,2191,2191,2191,2191,2191,2191,2191,1513
};
};
public final static char termAction[] = TermAction.termAction;
@@ -787,35 +839,35 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym
public interface Asb {
public final static char asb[] = {0,
- 441,1,261,406,441,576,474,486,486,574,
- 574,486,574,486,263,359,408,397,472,408,
- 233,51,3,51,3,176,51,408,494,502,
- 359,71,72,293,263,576,227,545,544,359,
- 145,234,3,3,3,3,176,176,494,286,
- 408,293,102,295,263,408,84,408,233,342,
- 228,228,320,472,472,329,472,472,228,233,
- 69,344,69,406,249,3,29,64,263,3,
- 3,29,178,182,178,176,286,494,295,125,
- 122,286,193,249,344,344,344,344,344,106,
- 344,344,344,187,204,209,207,215,211,218,
- 217,220,219,221,502,497,501,550,82,344,
- 145,544,231,228,344,228,247,344,323,344,
- 344,234,69,329,408,224,361,361,29,66,
- 29,29,344,320,178,494,501,286,122,105,
- 102,344,344,344,344,344,344,344,344,344,
- 344,344,502,502,505,249,249,320,320,32,
- 344,344,344,344,344,344,344,344,344,344,
- 344,344,344,344,344,344,344,344,344,344,
- 499,500,290,359,295,82,342,228,502,472,
- 502,502,233,344,227,344,226,29,410,344,
- 344,122,106,84,359,290,502,502,502,122,
- 207,207,204,204,211,211,209,209,209,209,
- 217,215,219,218,69,220,293,502,412,497,
- 178,326,228,342,329,344,329,329,66,344,
- 122,122,82,505,412,511,576,344,295,502,
- 29,80,548,320,344,325,32,228,502,232,
- 82,502,84,122,320,344,502,32,228,329,
- 178,122,329,502,29,329
+ 442,1,262,407,442,577,475,487,487,575,
+ 575,487,575,487,264,360,409,398,473,409,
+ 234,52,3,52,3,177,52,409,495,503,
+ 360,72,73,294,264,577,228,546,545,360,
+ 146,235,3,3,3,3,177,177,495,287,
+ 409,294,103,296,264,409,85,409,234,343,
+ 229,229,321,473,473,330,473,473,229,234,
+ 70,345,70,407,250,3,30,65,264,3,
+ 3,30,179,183,179,177,287,495,296,126,
+ 123,287,194,250,345,345,345,345,345,107,
+ 345,345,345,188,205,210,208,216,212,219,
+ 218,221,220,222,503,498,502,551,83,345,
+ 146,545,232,229,345,229,248,345,324,345,
+ 345,235,70,330,409,225,362,362,30,67,
+ 30,30,345,321,179,495,502,287,123,106,
+ 103,345,345,345,345,345,345,345,345,345,
+ 345,345,503,503,506,250,250,321,321,33,
+ 345,345,345,345,345,345,345,345,345,345,
+ 345,345,345,345,345,345,345,345,345,345,
+ 500,501,291,360,296,83,343,229,503,473,
+ 503,503,234,345,228,345,227,30,411,345,
+ 345,123,107,85,360,291,503,503,503,123,
+ 208,208,205,205,212,212,210,210,210,210,
+ 218,216,220,219,70,221,294,503,413,498,
+ 179,327,229,343,330,345,330,330,67,345,
+ 123,123,83,506,413,512,577,345,296,503,
+ 30,81,549,321,345,326,33,229,503,233,
+ 83,503,85,123,321,345,503,33,229,330,
+ 179,123,330,503,30,330
};
};
public final static char asb[] = Asb.asb;
@@ -823,64 +875,64 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym
public interface Asr {
public final static byte asr[] = {0,
- 73,0,24,42,20,43,54,25,44,26,
- 45,46,27,21,47,48,23,55,28,56,
- 49,50,22,51,52,53,2,5,60,3,
- 0,3,58,12,13,14,15,16,2,5,
- 1,10,11,9,4,7,8,17,18,0,
- 24,20,25,26,27,21,23,28,22,29,
- 57,58,6,19,3,4,2,1,59,0,
- 1,3,59,61,57,58,19,29,0,3,
- 60,29,66,1,13,14,15,16,2,5,
- 10,11,9,4,7,8,17,18,12,6,
- 0,20,21,22,23,10,11,9,4,7,
- 8,17,18,12,1,2,5,13,14,15,
- 16,65,3,0,20,21,22,10,11,9,
- 4,7,8,17,18,12,1,2,5,13,
- 14,15,16,0,24,42,20,43,54,25,
- 44,26,45,46,27,21,47,48,23,55,
- 28,56,49,50,22,51,52,53,2,5,
- 3,61,57,19,0,2,5,3,60,57,
- 0,3,57,60,61,0,29,1,66,80,
- 10,11,61,83,84,85,86,87,89,88,
- 90,91,92,4,67,68,7,8,63,62,
- 69,70,71,72,74,75,9,76,77,78,
- 60,81,82,65,58,59,57,19,3,0,
- 73,79,60,33,35,6,39,41,36,31,
- 37,38,34,32,40,30,3,19,13,14,
- 15,16,10,11,9,7,8,17,18,12,
- 4,1,5,2,54,55,56,50,42,47,
- 45,46,44,43,48,49,51,52,53,28,
- 25,23,24,27,26,20,21,22,0,4,
- 1,29,58,3,24,42,20,43,54,25,
- 44,26,45,46,27,21,47,48,23,55,
- 28,56,49,50,22,51,52,53,64,2,
- 5,0,31,0,61,29,66,0,33,35,
- 6,39,41,36,31,37,38,34,32,40,
- 30,19,3,10,11,9,7,8,17,18,
- 12,1,2,5,13,14,15,16,4,0,
- 66,80,10,11,9,7,8,67,68,62,
- 63,69,70,71,72,74,75,76,77,78,
- 81,82,61,83,84,85,86,87,88,89,
- 90,91,92,57,29,58,24,20,25,26,
- 27,21,23,28,22,19,3,4,1,2,
- 0,24,42,20,43,54,25,44,26,45,
- 46,27,21,47,48,23,55,28,56,49,
- 50,22,51,52,53,2,5,64,4,0,
- 73,24,42,20,43,54,25,44,26,45,
- 46,27,21,47,48,23,55,28,56,49,
- 50,22,51,52,53,2,5,4,19,3,
- 30,1,0,50,42,47,45,46,44,43,
- 48,49,51,52,53,59,19,28,25,23,
- 24,27,26,20,21,22,4,2,1,29,
- 57,58,3,0,3,58,4,1,29,0,
- 9,4,7,8,67,68,62,63,69,70,
- 71,72,74,75,76,77,78,81,82,59,
- 83,84,85,86,87,88,89,90,91,92,
- 65,58,60,6,3,57,19,61,0,24,
- 42,20,43,54,25,44,26,45,46,27,
- 21,47,48,23,55,28,56,49,50,22,
- 51,52,53,2,5,6,0
+ 73,0,24,30,7,31,42,25,32,26,
+ 33,34,27,8,35,36,22,43,28,44,
+ 37,38,9,39,40,41,1,4,29,57,
+ 3,0,3,59,15,16,17,18,19,1,
+ 4,2,13,14,12,5,10,11,20,21,
+ 0,24,7,25,26,27,8,22,28,9,
+ 45,58,59,6,23,3,5,1,2,60,
+ 0,2,3,60,61,58,59,23,45,0,
+ 3,57,45,66,2,16,17,18,19,1,
+ 4,13,14,12,5,10,11,20,21,15,
+ 6,0,7,8,9,22,13,14,12,5,
+ 10,11,20,21,15,2,1,4,16,17,
+ 18,19,65,3,0,7,8,9,13,14,
+ 12,5,10,11,20,21,15,2,1,4,
+ 16,17,18,19,0,24,30,7,31,42,
+ 25,32,26,33,34,27,8,35,36,22,
+ 43,28,44,37,38,9,39,40,41,1,
+ 4,3,61,58,23,0,1,4,3,57,
+ 58,0,3,58,57,61,0,45,2,66,
+ 80,13,14,61,83,84,85,86,87,89,
+ 88,90,91,92,5,67,68,10,11,63,
+ 62,69,70,71,72,74,75,12,76,77,
+ 78,57,81,82,65,59,60,58,23,3,
+ 0,73,79,57,48,50,6,54,56,51,
+ 46,52,53,49,47,55,29,3,23,16,
+ 17,18,19,13,14,12,10,11,20,21,
+ 15,5,2,4,1,42,43,44,38,30,
+ 35,33,34,32,31,36,37,39,40,41,
+ 28,25,22,24,27,26,7,8,9,0,
+ 5,2,45,59,3,24,30,7,31,42,
+ 25,32,26,33,34,27,8,35,36,22,
+ 43,28,44,37,38,9,39,40,41,64,
+ 1,4,0,46,0,61,45,66,0,48,
+ 50,6,54,56,51,46,52,53,49,47,
+ 55,29,23,3,13,14,12,10,11,20,
+ 21,15,2,1,4,16,17,18,19,5,
+ 0,66,80,13,14,12,10,11,67,68,
+ 62,63,69,70,71,72,74,75,76,77,
+ 78,81,82,61,83,84,85,86,87,88,
+ 89,90,91,92,58,45,59,24,7,25,
+ 26,27,8,22,28,9,23,3,5,2,
+ 1,0,24,30,7,31,42,25,32,26,
+ 33,34,27,8,35,36,22,43,28,44,
+ 37,38,9,39,40,41,1,4,64,5,
+ 0,73,24,30,7,31,42,25,32,26,
+ 33,34,27,8,35,36,22,43,28,44,
+ 37,38,9,39,40,41,1,4,5,23,
+ 3,29,2,0,38,30,35,33,34,32,
+ 31,36,37,39,40,41,60,23,28,25,
+ 22,24,27,26,7,8,9,5,1,2,
+ 45,58,59,3,0,3,59,5,2,45,
+ 0,12,5,10,11,67,68,62,63,69,
+ 70,71,72,74,75,76,77,78,81,82,
+ 60,83,84,85,86,87,88,89,90,91,
+ 92,65,59,57,6,3,58,23,61,0,
+ 24,30,7,31,42,25,32,26,33,34,
+ 27,8,35,36,22,43,28,44,37,38,
+ 9,39,40,41,1,4,6,0
};
};
public final static byte asr[] = Asr.asr;
@@ -946,12 +998,12 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym
public interface TerminalIndex {
public final static char terminalIndex[] = {0,
- 2,85,87,9,86,3,10,11,8,6,
- 7,68,81,82,83,84,12,13,92,48,
- 64,76,69,44,55,60,63,72,1,93,
- 77,45,46,49,50,51,57,58,59,65,
- 71,47,52,56,61,62,66,67,74,75,
- 78,79,80,54,70,73,42,90,29,91,
+ 85,2,87,86,9,3,48,64,76,10,
+ 11,8,6,7,68,81,82,83,84,12,
+ 13,69,92,44,55,60,63,72,93,47,
+ 52,56,61,62,66,67,74,75,78,79,
+ 80,54,70,73,1,77,45,46,49,50,
+ 51,57,58,59,65,71,91,42,90,29,
31,16,17,30,89,4,14,15,18,19,
20,21,94,22,23,24,25,26,53,5,
27,28,32,33,34,35,36,37,38,39,
@@ -1015,10 +1067,10 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym
public interface ScopeLa {
public final static byte scopeLa[] = {
- 60,60,65,65,60,60,60,79,60,58,
- 65,58,60,60,58,65,19,60,58,58,
- 65,59,65,65,58,65,58,58,61,2,
- 58,31,58,19,1,1,1
+ 57,57,65,65,57,57,57,79,57,59,
+ 65,59,57,57,59,65,23,57,59,59,
+ 65,60,65,65,59,65,59,59,61,1,
+ 59,46,59,23,2,2,2
};
};
public final static byte scopeLa[] = ScopeLa.scopeLa;
@@ -1037,26 +1089,26 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym
public interface ScopeRhs {
public final static char scopeRhs[] = {0,
- 147,29,0,95,0,201,94,0,31,144,
+ 147,45,0,95,0,201,94,0,31,144,
0,160,182,94,6,0,97,0,158,94,
- 1,150,0,96,0,158,94,1,0,169,
- 1,0,114,23,191,94,29,0,114,191,
- 94,23,29,0,114,23,29,0,114,191,
- 94,29,0,114,29,0,122,0,2,0,
- 162,96,0,2,96,0,158,94,1,122,
- 0,2,0,160,96,0,144,1,0,160,
- 188,94,6,117,54,0,160,188,94,6,
- 54,0,145,0,98,0,197,94,145,0,
+ 2,150,0,96,0,158,94,2,0,169,
+ 2,0,114,22,191,94,45,0,114,191,
+ 94,22,45,0,114,22,45,0,114,191,
+ 94,45,0,114,45,0,122,0,2,0,
+ 162,96,0,2,96,0,158,94,2,122,
+ 0,2,0,160,96,0,144,2,0,160,
+ 188,94,6,117,42,0,160,188,94,6,
+ 42,0,145,0,98,0,197,94,145,0,
94,145,0,149,98,0,166,94,6,117,
- 56,0,166,94,6,117,55,0,166,94,
- 6,56,0,166,94,6,55,0,128,36,
+ 44,0,166,94,6,117,43,0,166,94,
+ 6,44,0,166,94,6,43,0,128,51,
0,77,2,99,96,98,0,128,116,120,
- 1,39,0,53,121,0,184,94,6,0,
- 120,82,110,0,29,116,0,170,1,0,
- 96,105,0,170,1,12,0,160,182,94,
- 6,116,170,1,0,96,3,0,103,0,
- 97,0,196,1,98,0,120,29,98,0,
- 120,1,0
+ 2,54,0,53,121,0,184,94,6,0,
+ 120,82,110,0,29,116,0,170,2,0,
+ 96,105,0,170,2,15,0,160,182,94,
+ 6,116,170,2,0,96,3,0,103,0,
+ 97,0,196,2,98,0,120,45,98,0,
+ 120,2,0
};
};
public final static char scopeRhs[] = ScopeRhs.scopeRhs;
@@ -1064,18 +1116,18 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym
public interface ScopeState {
public final static char scopeState[] = {0,
- 1440,0,1354,0,2070,2063,2048,2040,1849,1412,
- 580,558,456,1055,1743,1250,1182,690,1127,762,
- 1836,620,1793,1782,2026,2013,1989,1973,1965,1805,
- 1957,1916,1888,1325,1142,1108,1161,1089,1069,1035,
- 1016,996,976,956,936,916,896,876,856,836,
- 816,796,776,670,741,650,630,306,721,597,
- 701,512,492,534,470,0,1882,1445,1865,1863,
- 1210,0,1902,1649,1627,1605,1583,1558,1529,1367,
- 1482,1280,1441,1205,1180,0,1585,1570,1261,511,
- 1886,307,1803,1321,1813,1234,0,418,372,1674,
- 307,1321,1495,1443,1234,1729,1670,1531,1408,1693,
- 0,345,306,1286,372,0
+ 1441,0,1355,0,2071,2064,2049,2041,1850,1413,
+ 581,559,457,1056,1744,1251,1183,691,1128,763,
+ 1837,621,1794,1783,2027,2014,1990,1974,1966,1806,
+ 1958,1917,1889,1326,1143,1109,1162,1090,1070,1036,
+ 1017,997,977,957,937,917,897,877,857,837,
+ 817,797,777,671,742,651,631,307,722,598,
+ 702,513,493,535,471,0,1883,1446,1866,1864,
+ 1211,0,1903,1650,1628,1606,1584,1559,1530,1368,
+ 1483,1281,1442,1206,1181,0,1586,1571,1262,512,
+ 1887,308,1804,1322,1814,1235,0,419,373,1675,
+ 308,1322,1496,1444,1235,1730,1671,1532,1409,1694,
+ 0,346,307,1287,373,0
};
};
public final static char scopeState[] = ScopeState.scopeState;
@@ -1083,34 +1135,34 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym
public interface InSymb {
public final static char inSymb[] = {0,
- 0,195,94,115,205,190,171,172,173,56,
- 55,174,54,175,176,94,1,2,122,94,
- 6,117,6,117,6,6,117,146,4,144,
- 94,122,135,1,199,190,185,178,124,94,
- 137,94,6,94,6,94,94,6,4,94,
- 146,1,29,94,94,57,61,146,184,40,
- 32,34,38,37,31,36,41,39,127,6,
- 35,33,117,115,94,94,166,145,94,167,
- 94,166,188,117,189,94,94,168,94,23,
- 114,94,99,1,12,18,17,8,7,4,
- 9,11,10,98,101,103,102,105,104,107,
- 106,109,108,110,158,115,159,206,6,4,
- 137,124,3,120,94,117,1,1,128,1,
- 1,94,147,59,94,183,2,5,166,94,
- 166,160,61,57,188,168,198,94,114,191,
+ 0,195,94,115,205,190,171,172,173,44,
+ 43,174,42,175,176,94,2,1,122,94,
+ 6,117,6,117,6,6,117,146,5,144,
+ 94,122,135,2,199,190,185,178,124,94,
+ 137,94,6,94,6,94,94,6,5,94,
+ 146,2,45,94,94,58,61,146,184,55,
+ 47,49,53,52,46,51,56,54,127,6,
+ 50,48,117,115,94,94,166,145,94,167,
+ 94,166,188,117,189,94,94,168,94,22,
+ 114,94,99,2,15,21,20,11,10,5,
+ 12,14,13,98,101,103,102,105,104,107,
+ 106,109,108,110,158,115,159,206,6,5,
+ 137,124,3,120,94,117,2,2,128,2,
+ 2,94,147,60,94,183,1,4,166,94,
+ 166,160,61,58,188,168,198,94,114,191,
168,92,91,90,88,89,87,86,85,84,
- 83,61,170,120,145,1,1,80,66,1,
- 29,68,67,4,62,63,8,7,75,74,
- 72,71,70,69,76,9,78,77,82,81,
- 150,151,1,94,57,94,139,153,120,31,
- 120,120,184,57,197,59,144,160,57,191,
- 23,114,4,116,94,1,170,170,196,120,
+ 83,61,170,120,145,2,2,80,66,2,
+ 45,68,67,5,62,63,11,10,75,74,
+ 72,71,70,69,76,12,78,77,82,81,
+ 150,151,2,94,58,94,139,153,120,46,
+ 120,120,184,58,197,60,144,160,58,191,
+ 22,114,5,116,94,2,170,170,196,120,
102,102,101,101,104,104,103,103,103,103,
- 106,105,108,107,120,109,1,169,94,146,
- 182,94,153,112,116,1,116,116,57,59,
- 114,114,6,146,94,116,116,59,94,158,
- 160,57,201,66,29,202,112,153,120,128,
- 94,158,61,147,66,29,153,112,116,79,
+ 106,105,108,107,120,109,2,169,94,146,
+ 182,94,153,112,116,2,116,116,58,60,
+ 114,114,6,146,94,116,116,60,94,158,
+ 160,58,201,66,45,202,112,153,120,128,
+ 94,158,61,147,66,45,153,112,116,79,
182,147,116,153,160,116
};
};
@@ -1311,7 +1363,7 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym
public final String name(int index) { return name[index]; }
public final static int
- ERROR_SYMBOL = 30,
+ ERROR_SYMBOL = 29,
SCOPE_UBOUND = 36,
SCOPE_SIZE = 37,
MAX_NAME_LENGTH = 38;
@@ -1324,18 +1376,18 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym
public final static int
NUM_STATES = 286,
NT_OFFSET = 93,
- LA_STATE_OFFSET = 2495,
+ LA_STATE_OFFSET = 2497,
MAX_LA = 2147483647,
- NUM_RULES = 305,
+ NUM_RULES = 306,
NUM_NONTERMINALS = 114,
NUM_SYMBOLS = 207,
SEGMENT_SIZE = 8192,
- START_STATE = 1719,
+ START_STATE = 1720,
IDENTIFIER_SYMBOL = 0,
EOFT_SYMBOL = 73,
EOLT_SYMBOL = 73,
- ACCEPT_ACTION = 2165,
- ERROR_ACTION = 2190;
+ ACCEPT_ACTION = 2166,
+ ERROR_ACTION = 2191;
public final static boolean BACKTRACK = true;
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99Parsersym.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99Parsersym.java
index 76e4707d4fb..0628df87b5f 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99Parsersym.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99Parsersym.java
@@ -16,63 +16,63 @@ package org.eclipse.cdt.internal.core.dom.lrparser.c99;
public interface C99Parsersym {
public final static int
TK_auto = 24,
- TK_break = 32,
- TK_case = 33,
- TK_char = 42,
- TK_const = 20,
- TK_continue = 34,
- TK_default = 35,
- TK_do = 36,
- TK_double = 43,
+ TK_break = 47,
+ TK_case = 48,
+ TK_char = 30,
+ TK_const = 7,
+ TK_continue = 49,
+ TK_default = 50,
+ TK_do = 51,
+ TK_double = 31,
TK_else = 79,
- TK_enum = 54,
+ TK_enum = 42,
TK_extern = 25,
- TK_float = 44,
- TK_for = 37,
- TK_goto = 38,
- TK_if = 39,
+ TK_float = 32,
+ TK_for = 52,
+ TK_goto = 53,
+ TK_if = 54,
TK_inline = 26,
- TK_int = 45,
- TK_long = 46,
+ TK_int = 33,
+ TK_long = 34,
TK_register = 27,
- TK_restrict = 21,
- TK_return = 40,
- TK_short = 47,
- TK_signed = 48,
- TK_sizeof = 12,
- TK_static = 23,
- TK_struct = 55,
- TK_switch = 41,
+ TK_restrict = 8,
+ TK_return = 55,
+ TK_short = 35,
+ TK_signed = 36,
+ TK_sizeof = 15,
+ TK_static = 22,
+ TK_struct = 43,
+ TK_switch = 56,
TK_typedef = 28,
- TK_union = 56,
- TK_unsigned = 49,
- TK_void = 50,
- TK_volatile = 22,
- TK_while = 31,
- TK__Bool = 51,
- TK__Complex = 52,
- TK__Imaginary = 53,
- TK_integer = 13,
- TK_floating = 14,
- TK_charconst = 15,
- TK_stringlit = 16,
- TK_identifier = 2,
- TK_Completion = 5,
+ TK_union = 44,
+ TK_unsigned = 37,
+ TK_void = 38,
+ TK_volatile = 9,
+ TK_while = 46,
+ TK__Bool = 39,
+ TK__Complex = 40,
+ TK__Imaginary = 41,
+ TK_integer = 16,
+ TK_floating = 17,
+ TK_charconst = 18,
+ TK_stringlit = 19,
+ TK_identifier = 1,
+ TK_Completion = 4,
TK_EndOfCompletion = 3,
TK_Invalid = 93,
- TK_LeftBracket = 29,
- TK_LeftParen = 1,
+ TK_LeftBracket = 45,
+ TK_LeftParen = 2,
TK_LeftBrace = 6,
TK_Dot = 66,
TK_Arrow = 80,
- TK_PlusPlus = 10,
- TK_MinusMinus = 11,
- TK_And = 9,
- TK_Star = 4,
- TK_Plus = 7,
- TK_Minus = 8,
- TK_Tilde = 17,
- TK_Bang = 18,
+ TK_PlusPlus = 13,
+ TK_MinusMinus = 14,
+ TK_And = 12,
+ TK_Star = 5,
+ TK_Plus = 10,
+ TK_Minus = 11,
+ TK_Tilde = 20,
+ TK_Bang = 21,
TK_Slash = 67,
TK_Percent = 68,
TK_RightShift = 62,
@@ -88,7 +88,7 @@ public interface C99Parsersym {
TK_AndAnd = 78,
TK_OrOr = 81,
TK_Question = 82,
- TK_Colon = 59,
+ TK_Colon = 60,
TK_DotDotDot = 64,
TK_Assign = 61,
TK_StarAssign = 83,
@@ -101,22 +101,25 @@ public interface C99Parsersym {
TK_AndAssign = 90,
TK_CaretAssign = 91,
TK_OrAssign = 92,
- TK_Comma = 57,
+ TK_Comma = 58,
TK_RightBracket = 65,
- TK_RightParen = 58,
- TK_RightBrace = 60,
- TK_SemiColon = 19,
- TK_ERROR_TOKEN = 30,
+ TK_RightParen = 59,
+ TK_RightBrace = 57,
+ TK_SemiColon = 23,
+ TK_ERROR_TOKEN = 29,
TK_EOF_TOKEN = 73;
public final static String orderedTerminalSymbols[] = {
"",
- "LeftParen",
"identifier",
+ "LeftParen",
"EndOfCompletion",
- "Star",
"Completion",
+ "Star",
"LeftBrace",
+ "const",
+ "restrict",
+ "volatile",
"Plus",
"Minus",
"And",
@@ -129,29 +132,14 @@ public interface C99Parsersym {
"stringlit",
"Tilde",
"Bang",
- "SemiColon",
- "const",
- "restrict",
- "volatile",
"static",
+ "SemiColon",
"auto",
"extern",
"inline",
"register",
"typedef",
- "LeftBracket",
"ERROR_TOKEN",
- "while",
- "break",
- "case",
- "continue",
- "default",
- "do",
- "for",
- "goto",
- "if",
- "return",
- "switch",
"char",
"double",
"float",
@@ -167,10 +155,22 @@ public interface C99Parsersym {
"enum",
"struct",
"union",
+ "LeftBracket",
+ "while",
+ "break",
+ "case",
+ "continue",
+ "default",
+ "do",
+ "for",
+ "goto",
+ "if",
+ "return",
+ "switch",
+ "RightBrace",
"Comma",
"RightParen",
"Colon",
- "RightBrace",
"Assign",
"RightShift",
"LeftShift",
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99SizeofExpressionParser.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99SizeofExpressionParser.java
index 5723868677c..4441a63d246 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99SizeofExpressionParser.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99SizeofExpressionParser.java
@@ -829,411 +829,417 @@ public C99SizeofExpressionParser(String[] mapFrom) { // constructor
}
//
- // Rule 199: struct_declarator ::= : constant_expression
+ // Rule 194: struct_declaration ::= ERROR_TOKEN
//
- case 199: { action. consumeBitField(false); break;
+ case 194: { action. consumeDeclarationProblem(); break;
}
//
- // Rule 200: struct_declarator ::= declarator : constant_expression
+ // Rule 200: struct_declarator ::= : constant_expression
//
- case 200: { action. consumeBitField(true); break;
+ case 200: { action. consumeBitField(false); break;
}
//
- // Rule 201: enum_specifier ::= enum { enumerator_list_opt comma_opt }
+ // Rule 201: struct_declarator ::= declarator : constant_expression
//
- case 201: { action. consumeTypeSpecifierEnumeration(false); break;
+ case 201: { action. consumeBitField(true); break;
}
//
- // Rule 202: enum_specifier ::= enum identifier_or_typedefname { enumerator_list_opt comma_opt }
+ // Rule 202: enum_specifier ::= enum { enumerator_list_opt comma_opt }
//
- case 202: { action. consumeTypeSpecifierEnumeration(true); break;
+ case 202: { action. consumeTypeSpecifierEnumeration(false); break;
}
//
- // Rule 207: enumerator ::= identifier_or_typedefname
+ // Rule 203: enum_specifier ::= enum identifier_or_typedefname { enumerator_list_opt comma_opt }
//
- case 207: { action. consumeEnumerator(false); break;
+ case 203: { action. consumeTypeSpecifierEnumeration(true); break;
}
//
- // Rule 208: enumerator ::= identifier_or_typedefname = constant_expression
+ // Rule 208: enumerator ::= identifier_or_typedefname
//
- case 208: { action. consumeEnumerator(true); break;
+ case 208: { action. consumeEnumerator(false); break;
}
//
- // Rule 209: type_qualifier ::= type_qualifier_token
+ // Rule 209: enumerator ::= identifier_or_typedefname = constant_expression
//
- case 209: { action. consumeDeclSpecToken(); break;
+ case 209: { action. consumeEnumerator(true); break;
}
//
- // Rule 213: function_specifier ::= inline
+ // Rule 210: type_qualifier ::= type_qualifier_token
//
- case 213: { action. consumeDeclSpecToken(); break;
+ case 210: { action. consumeDeclSpecToken(); break;
}
//
- // Rule 215: declarator ::= pointer_seq direct_declarator
+ // Rule 214: function_specifier ::= inline
//
- case 215: { action. consumeDeclaratorWithPointer(true); break;
+ case 214: { action. consumeDeclSpecToken(); break;
}
//
- // Rule 220: basic_direct_declarator ::= declarator_id_name
+ // Rule 216: declarator ::= pointer_seq direct_declarator
//
- case 220: { action. consumeDirectDeclaratorIdentifier(); break;
+ case 216: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 221: basic_direct_declarator ::= ( declarator )
+ // Rule 221: basic_direct_declarator ::= declarator_id_name
//
- case 221: { action. consumeDirectDeclaratorBracketed(); break;
+ case 221: { action. consumeDirectDeclaratorIdentifier(); break;
}
//
- // Rule 222: declarator_id_name ::= identifier
+ // Rule 222: basic_direct_declarator ::= ( declarator )
//
- case 222: { action. consumeIdentifierName(); break;
+ case 222: { action. consumeDirectDeclaratorBracketed(); break;
}
//
- // Rule 223: array_direct_declarator ::= basic_direct_declarator array_modifier
+ // Rule 223: declarator_id_name ::= identifier
//
- case 223: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ case 223: { action. consumeIdentifierName(); break;
}
//
- // Rule 224: array_direct_declarator ::= array_direct_declarator array_modifier
+ // Rule 224: array_direct_declarator ::= basic_direct_declarator array_modifier
//
case 224: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 226: function_direct_declarator ::= basic_direct_declarator ( parameter_type_list )
+ // Rule 225: array_direct_declarator ::= array_direct_declarator array_modifier
//
- case 226: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
+ case 225: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 227: function_direct_declarator ::= basic_direct_declarator ( )
+ // Rule 227: function_direct_declarator ::= basic_direct_declarator ( parameter_type_list )
//
- case 227: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
+ case 227: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
}
//
- // Rule 229: function_declarator ::= pointer_seq function_direct_declarator
+ // Rule 228: function_direct_declarator ::= basic_direct_declarator ( )
//
- case 229: { action. consumeDeclaratorWithPointer(true); break;
+ case 228: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
}
//
- // Rule 230: knr_direct_declarator ::= basic_direct_declarator ( identifier_list )
+ // Rule 230: function_declarator ::= pointer_seq function_direct_declarator
//
- case 230: { action. consumeDirectDeclaratorFunctionDeclaratorKnR(); break;
+ case 230: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 232: knr_function_declarator ::= pointer_seq knr_direct_declarator
+ // Rule 231: knr_direct_declarator ::= basic_direct_declarator ( identifier_list )
//
- case 232: { action. consumeDeclaratorWithPointer(true); break;
+ case 231: { action. consumeDirectDeclaratorFunctionDeclaratorKnR(); break;
}
//
- // Rule 233: identifier_list ::= identifier
+ // Rule 233: knr_function_declarator ::= pointer_seq knr_direct_declarator
//
- case 233: { action. consumeIdentifierKnR(); break;
+ case 233: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 234: identifier_list ::= identifier_list , identifier
+ // Rule 234: identifier_list ::= identifier
//
case 234: { action. consumeIdentifierKnR(); break;
}
//
- // Rule 235: array_modifier ::= [ ]
+ // Rule 235: identifier_list ::= identifier_list , identifier
//
- case 235: { action. consumeDirectDeclaratorArrayModifier(false); break;
+ case 235: { action. consumeIdentifierKnR(); break;
}
//
- // Rule 236: array_modifier ::= [ array_modifier_type_qualifiers ]
+ // Rule 236: array_modifier ::= [ ]
//
- case 236: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, false); break;
+ case 236: { action. consumeDirectDeclaratorArrayModifier(false); break;
}
//
- // Rule 237: array_modifier ::= [ assignment_expression ]
+ // Rule 237: array_modifier ::= [ array_modifier_type_qualifiers ]
//
- case 237: { action. consumeDirectDeclaratorArrayModifier(true); break;
+ case 237: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, false); break;
}
//
- // Rule 238: array_modifier ::= [ array_modifier_type_qualifiers assignment_expression ]
+ // Rule 238: array_modifier ::= [ assignment_expression ]
//
- case 238: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, true); break;
+ case 238: { action. consumeDirectDeclaratorArrayModifier(true); break;
}
//
- // Rule 239: array_modifier ::= [ static assignment_expression ]
+ // Rule 239: array_modifier ::= [ array_modifier_type_qualifiers assignment_expression ]
//
- case 239: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, false, true); break;
+ case 239: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, true); break;
}
//
- // Rule 240: array_modifier ::= [ static array_modifier_type_qualifiers assignment_expression ]
+ // Rule 240: array_modifier ::= [ static assignment_expression ]
//
- case 240: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break;
+ case 240: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, false, true); break;
}
//
- // Rule 241: array_modifier ::= [ array_modifier_type_qualifiers static assignment_expression ]
+ // Rule 241: array_modifier ::= [ static array_modifier_type_qualifiers assignment_expression ]
//
case 241: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break;
}
//
- // Rule 242: array_modifier ::= [ * ]
+ // Rule 242: array_modifier ::= [ array_modifier_type_qualifiers static assignment_expression ]
//
- case 242: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, false, false); break;
+ case 242: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break;
}
//
- // Rule 243: array_modifier ::= [ array_modifier_type_qualifiers * ]
+ // Rule 243: array_modifier ::= [ * ]
//
- case 243: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, true, false); break;
+ case 243: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, false, false); break;
}
//
- // Rule 245: pointer_seq ::= *
+ // Rule 244: array_modifier ::= [ array_modifier_type_qualifiers * ]
//
- case 245: { action. consumePointer(); break;
+ case 244: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, true, false); break;
}
//
- // Rule 246: pointer_seq ::= pointer_seq *
+ // Rule 246: pointer_seq ::= *
//
case 246: { action. consumePointer(); break;
}
//
- // Rule 247: pointer_seq ::= * type_qualifier_list
+ // Rule 247: pointer_seq ::= pointer_seq *
//
- case 247: { action. consumePointerTypeQualifierList(); break;
+ case 247: { action. consumePointer(); break;
}
//
- // Rule 248: pointer_seq ::= pointer_seq * type_qualifier_list
+ // Rule 248: pointer_seq ::= * type_qualifier_list
//
case 248: { action. consumePointerTypeQualifierList(); break;
}
//
- // Rule 251: parameter_type_list ::= parameter_list
+ // Rule 249: pointer_seq ::= pointer_seq * type_qualifier_list
//
- case 251: { action. consumeEmpty(); break;
+ case 249: { action. consumePointerTypeQualifierList(); break;
}
//
- // Rule 252: parameter_type_list ::= parameter_list , ...
+ // Rule 252: parameter_type_list ::= parameter_list
//
- case 252: { action. consumePlaceHolder(); break;
+ case 252: { action. consumeEmpty(); break;
}
//
- // Rule 253: parameter_type_list ::= ...
+ // Rule 253: parameter_type_list ::= parameter_list , ...
//
case 253: { action. consumePlaceHolder(); break;
}
//
- // Rule 256: parameter_declaration ::= declaration_specifiers complete_parameter_declarator
+ // Rule 254: parameter_type_list ::= ...
//
- case 256: { action. consumeParameterDeclaration(); break;
+ case 254: { action. consumePlaceHolder(); break;
}
//
- // Rule 257: parameter_declaration ::= declaration_specifiers
+ // Rule 257: parameter_declaration ::= declaration_specifiers complete_parameter_declarator
//
- case 257: { action. consumeParameterDeclarationWithoutDeclarator(); break;
+ case 257: { action. consumeParameterDeclaration(); break;
}
//
- // Rule 260: type_name ::= specifier_qualifier_list
+ // Rule 258: parameter_declaration ::= declaration_specifiers
//
- case 260: { action. consumeTypeId(false); break;
+ case 258: { action. consumeParameterDeclarationWithoutDeclarator(); break;
}
//
- // Rule 261: type_name ::= specifier_qualifier_list abstract_declarator
+ // Rule 261: type_name ::= specifier_qualifier_list
//
- case 261: { action. consumeTypeId(true); break;
+ case 261: { action. consumeTypeId(false); break;
}
//
- // Rule 263: abstract_declarator ::= pointer_seq
+ // Rule 262: type_name ::= specifier_qualifier_list abstract_declarator
//
- case 263: { action. consumeDeclaratorWithPointer(false); break;
+ case 262: { action. consumeTypeId(true); break;
}
//
- // Rule 264: abstract_declarator ::= pointer_seq direct_abstract_declarator
+ // Rule 264: abstract_declarator ::= pointer_seq
//
case 264: { action. consumeDeclaratorWithPointer(false); break;
}
//
- // Rule 268: basic_direct_abstract_declarator ::= ( abstract_declarator )
+ // Rule 265: abstract_declarator ::= pointer_seq direct_abstract_declarator
//
- case 268: { action. consumeDirectDeclaratorBracketed(); break;
+ case 265: { action. consumeDeclaratorWithPointer(false); break;
}
//
- // Rule 269: array_direct_abstract_declarator ::= array_modifier
+ // Rule 269: basic_direct_abstract_declarator ::= ( abstract_declarator )
//
- case 269: { action. consumeDirectDeclaratorArrayDeclarator(false); break;
+ case 269: { action. consumeDirectDeclaratorBracketed(); break;
}
//
- // Rule 270: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier
+ // Rule 270: array_direct_abstract_declarator ::= array_modifier
//
- case 270: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ case 270: { action. consumeDirectDeclaratorArrayDeclarator(false); break;
}
//
- // Rule 271: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier
+ // Rule 271: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier
//
case 271: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 272: function_direct_abstract_declarator ::= ( )
+ // Rule 272: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier
//
- case 272: { action. consumeDirectDeclaratorFunctionDeclarator(false, false); break;
+ case 272: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ }
+
+ //
+ // Rule 273: function_direct_abstract_declarator ::= ( )
+ //
+ case 273: { action. consumeDirectDeclaratorFunctionDeclarator(false, false); break;
}
//
- // Rule 273: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( )
+ // Rule 274: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( )
//
- case 273: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
+ case 274: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
}
//
- // Rule 274: function_direct_abstract_declarator ::= ( parameter_type_list )
+ // Rule 275: function_direct_abstract_declarator ::= ( parameter_type_list )
//
- case 274: { action. consumeDirectDeclaratorFunctionDeclarator(false, true); break;
+ case 275: { action. consumeDirectDeclaratorFunctionDeclarator(false, true); break;
}
//
- // Rule 275: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( parameter_type_list )
+ // Rule 276: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( parameter_type_list )
//
- case 275: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
+ case 276: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
}
//
- // Rule 276: initializer ::= assignment_expression
+ // Rule 277: initializer ::= assignment_expression
//
- case 276: { action. consumeInitializer(); break;
+ case 277: { action. consumeInitializer(); break;
}
//
- // Rule 277: initializer ::= { initializer_list comma_opt }
+ // Rule 278: initializer ::= { initializer_list comma_opt }
//
- case 277: { action. consumeInitializerList(); break;
+ case 278: { action. consumeInitializerList(); break;
}
//
- // Rule 282: designated_initializer ::= designation = initializer
+ // Rule 283: designated_initializer ::= designation = initializer
//
- case 282: { action. consumeInitializerDesignated(); break;
+ case 283: { action. consumeInitializerDesignated(); break;
}
//
- // Rule 286: designator_base ::= [ constant_expression ]
+ // Rule 287: designator_base ::= [ constant_expression ]
//
- case 286: { action. consumeDesignatorArray(); break;
+ case 287: { action. consumeDesignatorArray(); break;
}
//
- // Rule 287: designator_base ::= . identifier_or_typedefname
+ // Rule 288: designator_base ::= . identifier_or_typedefname
//
- case 287: { action. consumeDesignatorField(); break;
+ case 288: { action. consumeDesignatorField(); break;
}
//
- // Rule 288: designator ::= [ constant_expression ]
+ // Rule 289: designator ::= [ constant_expression ]
//
- case 288: { action. consumeDesignatorArray(); break;
+ case 289: { action. consumeDesignatorArray(); break;
}
//
- // Rule 289: designator ::= . identifier_or_typedefname
+ // Rule 290: designator ::= . identifier_or_typedefname
//
- case 289: { action. consumeDesignatorField(); break;
+ case 290: { action. consumeDesignatorField(); break;
}
//
- // Rule 290: translation_unit ::= external_declaration_list
- //
- case 290: { action. consumeTranslationUnit(); break;
- }
-
- //
- // Rule 291: translation_unit ::= $Empty
+ // Rule 291: translation_unit ::= external_declaration_list
//
case 291: { action. consumeTranslationUnit(); break;
+ }
+
+ //
+ // Rule 292: translation_unit ::= $Empty
+ //
+ case 292: { action. consumeTranslationUnit(); break;
}
//
- // Rule 296: external_declaration ::= ;
+ // Rule 297: external_declaration ::= ;
//
- case 296: { action. consumeDeclarationEmpty(); break;
+ case 297: { action. consumeDeclarationEmpty(); break;
}
//
- // Rule 297: external_declaration ::= ERROR_TOKEN
+ // Rule 298: external_declaration ::= ERROR_TOKEN
//
- case 297: { action. consumeDeclarationProblem(); break;
+ case 298: { action. consumeDeclarationProblem(); break;
}
//
- // Rule 300: function_definition ::= declaration_specifiers function_declarator function_body
+ // Rule 301: function_definition ::= declaration_specifiers function_declarator function_body
//
- case 300: { action. consumeFunctionDefinition(true); break;
+ case 301: { action. consumeFunctionDefinition(true); break;
}
//
- // Rule 301: function_definition ::= function_declarator function_body
+ // Rule 302: function_definition ::= function_declarator function_body
//
- case 301: { action. consumeFunctionDefinition(false); break;
+ case 302: { action. consumeFunctionDefinition(false); break;
}
//
- // Rule 302: function_definition ::= declaration_specifiers knr_function_declarator declaration_list compound_statement
+ // Rule 303: function_definition ::= declaration_specifiers knr_function_declarator declaration_list compound_statement
//
- case 302: { action. consumeFunctionDefinitionKnR(); break;
+ case 303: { action. consumeFunctionDefinitionKnR(); break;
}
//
- // Rule 303: function_body ::= { }
+ // Rule 304: function_body ::= { }
//
- case 303: { action. consumeStatementCompoundStatement(false); break;
+ case 304: { action. consumeStatementCompoundStatement(false); break;
}
//
- // Rule 304: function_body ::= { block_item_list }
+ // Rule 305: function_body ::= { block_item_list }
//
- case 304: { action. consumeStatementCompoundStatement(true); break;
+ case 305: { action. consumeStatementCompoundStatement(true); break;
}
//
- // Rule 306: no_sizeof_type_name_start ::= ERROR_TOKEN
+ // Rule 307: no_sizeof_type_name_start ::= ERROR_TOKEN
//
- case 306: { action. consumeExpressionProblem(); break;
+ case 307: { action. consumeExpressionProblem(); break;
}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99SizeofExpressionParserprs.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99SizeofExpressionParserprs.java
index 93cdeb5af3d..eda74da1cd7 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99SizeofExpressionParserprs.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99SizeofExpressionParserprs.java
@@ -53,156 +53,156 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
5,5,6,6,2,2,2,1,0,1,
- 2,4,2,1,1,3,1,1,2,3,
- 6,7,1,0,1,3,1,3,1,1,
- 1,1,1,1,3,1,1,1,1,1,
- 3,1,2,2,1,5,3,1,3,5,
- 1,3,1,3,2,4,3,5,4,6,
- 6,3,5,1,1,2,3,4,1,2,
- 1,3,1,1,3,2,1,1,1,1,
- 2,1,2,3,1,1,1,3,1,2,
- 2,2,3,4,5,1,5,1,1,3,
- 3,4,1,1,2,3,2,3,2,1,
- 0,1,2,1,1,1,1,1,2,4,
- 3,6,2,4,1,1,-36,0,0,0,
- 0,0,0,0,0,-2,0,0,0,0,
- 0,0,0,0,0,0,0,0,-5,0,
- 0,0,0,0,0,0,0,0,-121,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-177,
- 0,-12,0,0,0,0,0,0,0,0,
- 0,-13,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-127,-4,-14,-140,-169,
- -104,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-16,0,-170,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-165,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-29,
- -30,-33,-34,-3,0,0,0,0,0,0,
+ 2,4,2,1,1,1,3,1,1,2,
+ 3,6,7,1,0,1,3,1,3,1,
+ 1,1,1,1,1,3,1,1,1,1,
+ 1,3,1,2,2,1,5,3,1,3,
+ 5,1,3,1,3,2,4,3,5,4,
+ 6,6,3,5,1,1,2,3,4,1,
+ 2,1,3,1,1,3,2,1,1,1,
+ 1,2,1,2,3,1,1,1,3,1,
+ 2,2,2,3,4,5,1,5,1,1,
+ 3,3,4,1,1,2,3,2,3,2,
+ 1,0,1,2,1,1,1,1,1,2,
+ 4,3,6,2,4,1,1,-36,0,0,
+ 0,0,0,0,0,0,-2,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-5,
+ 0,0,0,0,0,0,0,0,0,-121,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-17,0,-49,0,0,0,0,0,0,
- 0,0,-18,0,0,0,-72,0,0,0,
+ -177,0,-12,0,0,0,0,0,0,0,
+ 0,0,-13,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-127,-4,-14,-140,
+ -169,-104,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-16,0,
+ -170,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-71,0,0,0,
- -19,-20,-21,-22,0,-107,0,0,0,0,
+ -165,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-126,0,0,0,0,
- 0,0,0,0,-23,0,0,0,0,0,
- 0,0,0,0,0,0,-24,-25,0,-185,
- 0,0,0,0,0,0,0,0,-26,0,
- 0,0,0,0,0,0,0,0,0,-27,
- 0,0,0,0,0,0,0,0,-85,0,
- 0,0,0,0,0,0,0,0,0,-86,
- -87,-139,-88,-56,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-57,0,0,0,0,0,0,
- 0,0,-89,0,0,0,0,0,0,0,
- 0,0,0,-58,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-59,0,0,0,0,0,0,
- 0,0,-90,0,0,0,0,0,0,0,
- 0,0,0,-60,0,0,0,0,0,0,
- 0,0,-91,0,0,0,0,0,0,0,
- 0,0,0,-61,0,0,0,0,0,0,
- 0,0,-92,0,0,0,0,0,0,0,
- 0,0,0,-62,0,0,0,0,0,0,
- 0,0,-93,0,0,0,0,0,0,0,
- 0,0,0,-63,0,0,0,0,0,0,
- 0,0,-94,0,0,0,0,0,0,0,
- 0,0,0,-64,0,0,0,0,0,0,
- 0,0,-191,0,0,0,0,0,0,0,
- 0,0,0,-65,0,0,0,0,0,0,
- 0,0,-95,0,0,0,0,0,0,0,
- 0,0,0,-66,0,0,0,0,0,0,
- 0,0,-130,0,0,0,0,0,0,0,
- 0,0,0,-46,0,0,0,0,0,0,
- 0,0,0,0,-96,-97,-98,-99,-79,0,
- 0,0,0,0,-144,0,0,0,0,0,
- 0,0,0,-100,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-101,-102,-103,
- -151,-114,-80,0,0,0,0,-6,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- -145,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- -168,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-182,
- 0,0,0,0,0,0,0,0,-116,0,
- 0,0,0,0,0,0,0,0,-37,0,
- 0,0,0,0,0,0,0,-47,0,0,
- 0,0,0,0,0,0,-188,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-192,0,0,0,0,
- 0,0,0,0,-82,0,0,0,0,0,
- 0,0,0,0,-38,0,0,0,0,0,
- 0,0,0,-7,0,0,0,0,0,0,
- -119,0,-202,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,-120,0,0,0,0,0,0,0,0,
- -131,0,0,0,0,0,0,0,0,0,
- -129,-8,0,0,0,0,0,0,0,0,
- -51,0,0,0,0,0,0,0,0,-155,
- 0,0,0,0,0,0,-161,-162,-123,-69,
- -142,-148,-74,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-203,0,0,0,
- 0,0,0,0,-113,-67,0,0,-166,-193,
- 0,-204,-106,0,0,0,0,0,0,0,
+ -29,-30,-33,-34,-3,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-54,0,0,0,0,0,0,0,
- 0,-160,0,0,0,0,0,0,0,-55,
+ 0,0,-17,0,-49,0,0,0,0,0,
+ 0,0,0,-18,0,0,0,-72,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-52,0,0,0,0,
- 0,0,0,0,-84,0,0,0,0,-76,
- -179,-9,0,0,0,0,0,0,-115,0,
- 0,-143,0,0,0,0,-167,0,-68,0,
- 0,-171,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-71,0,0,
+ 0,-19,-20,-21,-22,0,-107,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-184,0,0,0,0,-75,
- 0,0,-77,0,-111,0,0,0,0,-48,
- 0,0,0,0,0,0,0,0,-201,0,
- 0,0,0,0,0,-152,0,0,0,0,
- 0,0,0,0,0,0,-50,0,0,0,
+ 0,0,0,0,0,0,-126,0,0,0,
+ 0,0,0,0,0,-23,0,0,0,0,
+ 0,0,0,0,0,0,0,-24,-25,0,
+ -185,0,0,0,0,0,0,0,0,-26,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-10,0,
- 0,0,0,0,0,0,-42,0,0,0,
- 0,0,0,0,0,0,0,-43,0,0,
- 0,0,0,0,0,0,-117,0,-11,0,
- 0,0,0,0,0,0,0,0,-44,0,
- 0,0,0,0,0,0,0,-108,0,-45,
- 0,0,0,0,0,0,0,0,-194,0,
- -73,-187,-156,-109,-118,-35,-124,0,0,0,
- 0,0,0,0,0,-110,0,0,0,0,
+ -27,0,0,0,0,0,0,0,0,-85,
+ 0,0,0,0,0,0,0,0,0,0,
+ -86,-87,-139,-88,-56,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-57,0,0,0,0,0,
+ 0,0,0,-89,0,0,0,0,0,0,
+ 0,0,0,0,-58,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-59,0,0,0,0,0,
+ 0,0,0,-90,0,0,0,0,0,0,
+ 0,0,0,0,-60,0,0,0,0,0,
+ 0,0,0,-91,0,0,0,0,0,0,
+ 0,0,0,0,-61,0,0,0,0,0,
+ 0,0,0,-92,0,0,0,0,0,0,
+ 0,0,0,0,-62,0,0,0,0,0,
+ 0,0,0,-93,0,0,0,0,0,0,
+ 0,0,0,0,-63,0,0,0,0,0,
+ 0,0,0,-94,0,0,0,0,0,0,
+ 0,0,0,0,-64,0,0,0,0,0,
+ 0,0,0,-191,0,0,0,0,0,0,
+ 0,0,0,0,-65,0,0,0,0,0,
+ 0,0,0,-95,0,0,0,0,0,0,
+ 0,0,0,0,-66,0,0,0,0,0,
+ 0,0,0,-130,0,0,0,0,0,0,
+ 0,0,0,0,-46,0,0,0,0,0,
+ 0,0,0,0,0,-96,-97,-98,-99,-79,
+ 0,0,0,0,0,-144,0,0,0,0,
+ 0,0,0,0,-100,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-101,-102,
+ -103,-151,-114,-80,0,0,0,0,-6,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,-145,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,-168,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ -182,0,0,0,0,0,0,0,0,-116,
+ 0,0,0,0,0,0,0,0,0,-37,
+ 0,0,0,0,0,0,0,0,-47,0,
+ 0,0,0,0,0,0,0,-188,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-192,0,0,0,
+ 0,0,0,0,0,-82,0,0,0,0,
+ 0,0,0,0,0,-38,0,0,0,0,
+ 0,0,0,0,-7,0,0,0,0,0,
+ 0,-119,0,-202,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,-120,0,0,0,0,0,0,0,
+ 0,-131,0,0,0,0,0,0,0,0,
+ 0,-129,-8,0,0,0,0,0,0,0,
+ 0,-51,0,0,0,0,0,0,0,0,
+ -155,0,0,0,0,0,0,-161,-162,-123,
+ -69,-142,-148,-74,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-203,0,0,
+ 0,0,0,0,0,-113,-67,0,0,-166,
+ -193,0,-204,-106,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-54,0,0,0,0,0,0,
+ 0,0,-160,0,0,0,0,0,0,0,
+ -55,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-52,0,0,0,
+ 0,0,0,0,0,-84,0,0,0,0,
+ -76,-179,-9,0,0,0,0,0,0,-115,
+ 0,0,-143,0,0,0,0,-167,0,-68,
+ 0,0,-171,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-184,0,0,0,0,
+ -75,0,0,-77,0,-111,0,0,0,0,
+ -48,0,0,0,0,0,0,0,0,-201,
+ 0,0,0,0,0,0,-152,0,0,0,
+ 0,0,0,0,0,0,0,-50,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-10,
+ 0,0,0,0,0,0,0,-42,0,0,
+ 0,0,0,0,0,0,0,0,-43,0,
+ 0,0,0,0,0,0,0,-117,0,-11,
+ 0,0,0,0,0,0,0,0,0,-44,
+ 0,0,0,0,0,0,0,0,-108,0,
+ -45,0,0,0,0,0,0,0,0,-194,
+ 0,-73,-187,-156,-109,-118,-35,-124,0,0,
+ 0,0,0,0,0,0,-110,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -147,0,0,0,0,0,0,-15,-28,-31,
- 0,0,-122,-78,0,0,0,0,0,0,
- 0,0,-125,0,-39,0,0,0,0,0,
- 0,0,0,0,0,0,0,-133,0,0,
+ 0,-147,0,0,0,0,0,0,-15,-28,
+ -31,0,0,-122,-78,0,0,0,0,0,
+ 0,0,0,-125,0,-39,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-133,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-40,0,0,0,0,0,
- 0,-41,0,0,0,0,0,0,-70,0,
- 0,0,0,0,0,-81,0,0,-112,-83,
- 0,-135,0,-195,0,-138,0,0,-134,-176,
- 0,-128,-136,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-40,0,0,0,0,
+ 0,0,-41,0,0,0,0,0,0,-70,
+ 0,0,0,0,0,0,-81,0,0,-112,
+ -83,0,-135,0,-195,0,-138,0,0,-134,
+ -176,0,-128,-136,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-154,0,0,-158,0,0,
- 0,0,-141,0,0,-149,0,0,0,-137,
- -175,0,0,-190,-105,0,0,0,0,0,
- 0,0,0,0,0,-146,0,0,0,0,
- 0,-1,0,0,0,-32,0,0,-132,0,
- 0,-150,0,-153,0,0,-163,0,0,0,
- 0,-189,0,0,-183,0,0,0,0,0,
- 0,-172,0,0,-174,0,0,0,-157,0,
- 0,0,0,0,0,0,0,0,-53,-159,
- 0,0,-164,-173,0,-199,0,0,0,0,
- 0,-178,0,-200,-180,0,-181,0,-186,0,
- 0,-197,0,-196,-198,0,0,0,0,0,
+ 0,0,0,0,0,-154,0,0,-158,0,
+ 0,0,0,-141,0,0,-149,0,0,0,
+ -137,-175,0,0,-190,-105,0,0,0,0,
+ 0,0,0,0,0,0,-146,0,0,0,
+ 0,0,-1,0,0,0,-32,0,0,-132,
+ 0,0,-150,0,-153,0,0,-163,0,0,
+ 0,0,-189,0,0,-183,0,0,0,0,
+ 0,0,-172,0,0,-174,0,0,0,-157,
+ 0,0,0,0,0,0,0,0,0,-53,
+ -159,0,0,-164,-173,0,-199,0,0,0,
+ 0,0,-178,0,-200,-180,0,-181,0,-186,
+ 0,0,-197,0,-196,-198,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0
+ 0,0,0
};
};
public final static short baseCheck[] = BaseCheck.baseCheck;
@@ -231,157 +231,157 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
31,31,31,31,52,54,54,54,54,54,
54,54,54,54,54,54,54,64,64,27,
27,61,61,61,61,62,62,62,55,55,
- 56,56,48,48,32,85,85,78,79,79,
- 79,63,63,80,80,81,81,65,65,20,
- 21,21,21,30,47,47,33,33,33,33,
- 36,36,38,34,34,35,39,39,108,108,
- 37,109,109,86,86,25,25,25,25,25,
- 25,25,25,25,82,49,49,49,49,58,
- 58,57,57,57,59,59,50,50,87,87,
- 69,69,60,60,60,41,41,41,42,43,
- 43,43,44,44,44,44,53,53,70,70,
- 70,70,66,88,89,89,90,90,91,91,
- 110,110,111,111,112,112,112,112,114,114,
- 113,113,113,115,115,83,83,1,14,19,
- 15,388,579,43,482,408,194,521,493,523,
- 522,555,524,568,567,73,90,133,209,362,
- 14,19,15,388,40,135,132,134,158,292,
- 14,19,15,388,579,43,482,408,389,521,
- 493,523,522,555,524,568,567,73,276,137,
- 480,164,362,14,19,15,388,33,141,144,
- 147,150,362,14,19,15,388,32,387,1210,
- 1263,1444,1506,1510,1205,269,556,407,52,290,
- 490,24,278,215,1556,217,1592,219,220,225,
- 339,264,1260,1103,267,279,250,209,69,612,
- 292,14,19,15,388,579,43,482,408,389,
- 521,493,523,522,555,524,568,567,73,276,
- 195,14,19,15,388,579,43,482,408,389,
- 521,493,523,522,555,524,568,567,73,276,
- 98,98,578,578,340,14,19,15,388,579,
- 43,482,408,278,521,493,523,522,555,524,
- 568,567,73,90,1499,16,279,1129,390,284,
- 1602,285,251,280,340,14,19,15,388,41,
- 43,482,408,30,521,845,281,145,14,19,
- 15,388,579,43,482,408,1384,521,493,523,
- 522,555,524,568,567,73,1368,389,23,22,
- 235,36,622,51,347,387,384,14,19,15,
- 388,579,43,482,408,1387,521,493,523,522,
- 555,524,568,567,73,1453,170,14,19,15,
- 388,579,43,482,408,10,521,493,523,522,
- 555,524,568,567,73,1576,1565,101,6,236,
- 316,14,19,15,388,579,43,482,408,390,
- 521,493,523,522,555,524,568,567,73,276,
- 340,14,19,15,388,579,43,482,408,406,
- 521,493,523,522,555,524,568,567,73,91,
- 416,273,640,321,340,14,19,15,388,579,
- 43,482,408,282,521,493,523,522,555,524,
- 568,567,73,84,340,14,19,15,388,579,
- 43,482,408,566,521,493,523,522,555,524,
- 568,567,73,83,340,14,19,15,388,579,
- 43,482,408,1633,521,493,523,522,555,524,
- 568,567,73,82,340,14,19,15,388,579,
- 43,482,408,570,521,493,523,522,555,524,
- 568,567,73,81,340,14,19,15,388,579,
- 43,482,408,581,521,493,523,522,555,524,
- 568,567,73,80,340,14,19,15,388,579,
- 43,482,408,584,521,493,523,522,555,524,
- 568,567,73,79,340,14,19,15,388,579,
- 43,482,408,217,521,493,523,522,555,524,
- 568,567,73,78,340,14,19,15,388,579,
- 43,482,408,582,521,493,523,522,555,524,
- 568,567,73,77,340,14,19,15,388,579,
- 43,482,408,574,521,493,523,522,555,524,
- 568,567,73,76,340,14,19,15,388,579,
- 43,482,408,117,521,493,523,522,555,524,
- 568,567,73,75,340,14,19,15,388,579,
- 43,482,408,49,521,493,523,522,555,524,
- 568,567,73,74,340,14,19,15,388,41,
- 43,482,743,133,209,62,78,587,624,345,
- 192,135,132,134,158,340,14,19,15,388,
- 579,43,482,408,314,521,493,523,522,555,
- 524,568,567,73,1612,137,882,164,420,393,
- 500,389,609,521,141,144,147,150,340,14,
- 19,15,388,41,39,1210,1263,1444,1506,1510,
- 1205,340,14,19,15,388,579,43,482,408,
- 949,521,493,523,522,555,524,568,567,73,
- 1634,340,14,19,15,388,41,43,482,408,
- 360,521,493,523,522,555,524,568,567,92,
- 340,14,19,15,388,41,43,482,408,635,
- 521,493,523,522,555,524,568,567,92,340,
- 14,19,15,388,41,43,611,1649,340,14,
- 19,15,388,41,43,482,763,340,14,19,
- 15,388,41,43,482,408,208,521,493,523,
- 522,555,524,568,567,92,340,14,19,15,
- 388,41,43,482,408,545,521,493,523,522,
- 555,524,568,567,92,340,14,19,15,388,
- 41,43,613,1652,340,14,19,15,388,41,
- 38,637,1031,340,14,19,15,388,41,43,
- 482,408,199,521,493,523,522,555,524,568,
- 567,92,340,14,19,15,388,41,43,482,
- 408,638,521,493,523,522,555,524,568,567,
- 72,448,340,14,19,15,388,41,37,200,
- 881,340,14,19,15,388,41,43,482,408,
- 606,521,493,523,522,847,269,588,646,547,
- 580,547,511,193,214,1556,217,1592,219,220,
- 225,1561,262,1260,1103,267,182,31,258,249,
- 209,249,209,20,272,591,578,269,270,594,
- 645,259,63,120,1589,214,1556,217,1592,219,
- 220,225,1099,262,1260,1103,267,273,880,1615,
- 215,1556,217,1592,219,220,225,1222,256,1232,
- 1696,1696,1265,340,14,19,15,388,41,43,
- 482,408,643,521,493,523,522,555,524,878,
- 340,14,19,15,388,41,43,482,408,1696,
- 521,493,523,522,555,879,340,14,19,15,
- 388,41,43,482,408,49,521,493,523,848,
- 97,243,340,14,19,15,388,41,36,24,
- 1514,1696,565,1647,1696,133,209,627,1519,578,
- 133,209,569,136,132,134,158,1696,140,132,
- 134,158,250,209,214,1556,217,1592,219,220,
- 225,21,250,209,287,643,1696,138,1130,164,
- 427,1696,139,447,164,578,142,145,148,151,
- 340,14,19,15,388,41,43,482,408,243,
- 521,493,803,133,209,271,642,268,1514,195,
- 197,143,132,134,158,823,783,340,14,19,
- 15,388,41,43,482,408,1654,521,846,1696,
- 1071,1696,214,1556,217,1592,219,220,225,340,
- 14,19,15,388,41,35,1130,340,14,19,
- 15,388,41,43,482,408,255,643,340,14,
- 19,15,388,41,43,482,408,24,683,340,
- 14,19,15,388,41,34,1523,196,197,340,
- 14,19,15,388,41,43,482,408,580,703,
- 340,14,19,15,388,41,43,482,408,151,
- 723,532,627,618,547,24,533,547,1514,1696,
- 1509,237,1211,1696,1560,517,221,14,19,15,
- 388,41,35,272,249,209,269,249,209,289,
- 1696,269,214,1556,217,1592,219,220,225,242,
- 1696,1696,262,1260,1103,267,1615,262,1260,1103,
- 267,221,14,19,15,388,41,35,24,24,
- 514,1265,386,552,470,386,261,307,307,454,
- 193,1696,1101,580,243,340,14,19,15,388,
- 41,46,194,194,133,209,546,1696,24,855,
- 1386,1386,146,132,134,158,239,1545,86,86,
- 88,1696,1696,453,453,340,14,19,15,388,
- 41,45,340,14,19,15,388,41,44,268,
- 14,19,15,388,41,42,479,452,1126,586,
- 502,1696,24,1696,389,1696,24,1696,823,590,
- 591,1548,578,590,1229,1597,133,209,823,1564,
- 133,209,823,1071,149,132,134,158,152,132,
- 134,158,227,194,274,590,1696,194,590,1696,
- 1696,1383,1696,24,823,1383,417,823,1565,254,
- 599,586,410,1117,219,548,1522,190,1061,194,
- 823,190,194,823,1090,1619,580,1383,1630,1619,
- 1383,224,246,1696,1696,1071,24,1097,1071,458,
- 269,454,608,190,578,454,190,599,823,238,
- 1642,1619,640,1645,1619,627,264,1260,1103,267,
- 360,254,580,1071,254,578,275,223,1522,621,
- 1061,1636,86,1061,1097,205,86,305,823,24,
- 606,1100,1097,606,580,240,578,221,454,254,
- 1172,1098,606,194,488,606,1594,606,1061,580,
- 1644,1383,580,1655,606,606,181,241,226,26,
- 1696,1696,205,1696,1696,316,230,191,184,86,
- 206,183,286,201,864,288,1696,1255,1098,1696,
- 202,277,1696,0,17,178,0,18,177,0,
- 1,1918,0,1,1929,0
+ 56,56,48,48,48,32,85,85,78,79,
+ 79,79,63,63,80,80,81,81,65,65,
+ 20,21,21,21,30,47,47,33,33,33,
+ 33,36,36,38,34,34,35,39,39,108,
+ 108,37,109,109,86,86,25,25,25,25,
+ 25,25,25,25,25,82,49,49,49,49,
+ 58,58,57,57,57,59,59,50,50,87,
+ 87,69,69,60,60,60,41,41,41,42,
+ 43,43,43,44,44,44,44,53,53,70,
+ 70,70,70,66,88,89,89,90,90,91,
+ 91,110,110,111,111,112,112,112,112,114,
+ 114,113,113,113,115,115,83,83,1,14,
+ 19,15,389,580,43,483,409,42,522,494,
+ 524,523,556,525,569,568,73,90,133,210,
+ 644,14,19,15,389,40,135,132,134,158,
+ 558,14,19,15,389,580,43,483,409,390,
+ 522,494,524,523,556,525,569,568,73,277,
+ 137,345,164,644,14,19,15,389,33,141,
+ 144,147,150,644,14,19,15,389,32,388,
+ 1211,1264,1445,1507,1511,1206,270,331,118,803,
+ 649,678,29,279,216,1557,218,1593,220,221,
+ 226,340,265,1261,1104,268,280,251,210,433,
+ 613,558,14,19,15,389,580,43,483,409,
+ 390,522,494,524,523,556,525,569,568,73,
+ 277,436,14,19,15,389,580,43,483,409,
+ 390,522,494,524,523,556,525,569,568,73,
+ 277,471,471,504,504,616,14,19,15,389,
+ 580,43,483,409,279,522,494,524,523,556,
+ 525,569,568,73,90,1500,16,280,1130,391,
+ 285,1603,286,67,281,616,14,19,15,389,
+ 41,43,483,409,57,522,846,282,368,14,
+ 19,15,389,580,43,483,409,1385,522,494,
+ 524,523,556,525,569,568,73,1369,135,23,
+ 22,236,350,261,11,6,388,672,14,19,
+ 15,389,580,43,483,409,1388,522,494,524,
+ 523,556,525,569,568,73,1454,402,14,19,
+ 15,389,580,43,483,409,91,522,494,524,
+ 523,556,525,569,568,73,1577,1566,332,87,
+ 237,587,14,19,15,389,580,43,483,409,
+ 677,522,494,524,523,556,525,569,568,73,
+ 277,616,14,19,15,389,580,43,483,409,
+ 700,522,494,524,523,556,525,569,568,73,
+ 91,718,164,746,381,616,14,19,15,389,
+ 580,43,483,409,283,522,494,524,523,556,
+ 525,569,568,73,84,616,14,19,15,389,
+ 580,43,483,409,382,522,494,524,523,556,
+ 525,569,568,73,83,616,14,19,15,389,
+ 580,43,483,409,1634,522,494,524,523,556,
+ 525,569,568,73,82,616,14,19,15,389,
+ 580,43,483,409,446,522,494,524,523,556,
+ 525,569,568,73,81,616,14,19,15,389,
+ 580,43,483,409,515,522,494,524,523,556,
+ 525,569,568,73,80,616,14,19,15,389,
+ 580,43,483,409,544,522,494,524,523,556,
+ 525,569,568,73,79,616,14,19,15,389,
+ 580,43,483,409,496,522,494,524,523,556,
+ 525,569,568,73,78,616,14,19,15,389,
+ 580,43,483,409,527,522,494,524,523,556,
+ 525,569,568,73,77,616,14,19,15,389,
+ 580,43,483,409,811,522,494,524,523,556,
+ 525,569,568,73,76,616,14,19,15,389,
+ 580,43,483,409,452,522,494,524,523,556,
+ 525,569,568,73,75,616,14,19,15,389,
+ 580,43,483,409,286,522,494,524,523,556,
+ 525,569,568,73,74,616,14,19,15,389,
+ 41,43,483,744,133,210,153,202,288,265,
+ 116,192,135,132,134,158,616,14,19,15,
+ 389,580,43,483,409,622,522,494,524,523,
+ 556,525,569,568,73,1613,137,883,164,596,
+ 625,603,135,626,166,141,144,147,150,616,
+ 14,19,15,389,41,39,1211,1264,1445,1507,
+ 1511,1206,616,14,19,15,389,580,43,483,
+ 409,950,522,494,524,523,556,525,569,568,
+ 73,1635,616,14,19,15,389,41,43,483,
+ 409,361,522,494,524,523,556,525,569,568,
+ 92,616,14,19,15,389,41,43,483,409,
+ 651,522,494,524,523,556,525,569,568,92,
+ 616,14,19,15,389,41,43,612,1650,616,
+ 14,19,15,389,41,43,483,764,616,14,
+ 19,15,389,41,43,483,409,209,522,494,
+ 524,523,556,525,569,568,92,616,14,19,
+ 15,389,41,43,483,409,212,522,494,524,
+ 523,556,525,569,568,92,616,14,19,15,
+ 389,41,43,614,1653,616,14,19,15,389,
+ 41,38,658,1032,616,14,19,15,389,41,
+ 43,483,409,200,522,494,524,523,556,525,
+ 569,568,92,616,14,19,15,389,41,43,
+ 483,409,497,522,494,524,523,556,525,569,
+ 568,72,304,616,14,19,15,389,41,37,
+ 201,882,616,14,19,15,389,41,43,483,
+ 409,812,522,494,524,523,848,270,231,780,
+ 256,652,256,64,432,215,1557,218,1593,220,
+ 221,226,1562,263,1261,1104,268,182,309,259,
+ 250,210,250,210,20,273,680,504,270,271,
+ 475,653,260,353,242,1590,215,1557,218,1593,
+ 220,221,226,1100,263,1261,1104,268,274,881,
+ 1616,216,1557,218,1593,220,221,226,1223,257,
+ 1233,1697,1697,1266,616,14,19,15,389,41,
+ 43,483,409,779,522,494,524,523,556,525,
+ 879,616,14,19,15,389,41,43,483,409,
+ 1697,522,494,524,523,556,880,616,14,19,
+ 15,389,41,43,483,409,286,522,494,524,
+ 849,327,478,616,14,19,15,389,41,36,
+ 29,1515,1697,409,1648,1697,133,210,594,1520,
+ 504,133,210,443,136,132,134,158,1697,140,
+ 132,134,158,251,210,215,1557,218,1593,220,
+ 221,226,21,251,210,288,779,1697,138,1131,
+ 164,48,1697,139,757,164,504,142,145,148,
+ 151,616,14,19,15,389,41,43,483,409,
+ 478,522,494,804,133,210,272,711,269,1515,
+ 196,198,143,132,134,158,824,784,616,14,
+ 19,15,389,41,43,483,409,1655,522,847,
+ 1697,1072,1697,215,1557,218,1593,220,221,226,
+ 616,14,19,15,389,41,35,1131,616,14,
+ 19,15,389,41,43,483,409,256,644,616,
+ 14,19,15,389,41,43,483,409,29,684,
+ 616,14,19,15,389,41,34,1524,197,198,
+ 616,14,19,15,389,41,43,483,409,652,
+ 704,616,14,19,15,389,41,43,483,409,
+ 600,724,160,594,567,256,29,374,256,1515,
+ 1697,1510,238,1212,1697,1561,518,465,14,19,
+ 15,389,41,35,273,250,210,270,250,210,
+ 290,1697,270,215,1557,218,1593,220,221,226,
+ 243,1697,1697,263,1261,1104,268,1616,263,1261,
+ 1104,268,465,14,19,15,389,41,35,29,
+ 29,493,1266,387,290,769,387,262,308,308,
+ 455,193,1697,1102,652,244,616,14,19,15,
+ 389,41,46,195,195,133,210,547,1697,29,
+ 856,1387,1387,146,132,134,158,240,1546,86,
+ 86,88,1697,1697,454,454,616,14,19,15,
+ 389,41,45,616,14,19,15,389,41,44,
+ 529,14,19,15,389,41,42,781,453,1127,
+ 571,793,1697,29,1697,135,1697,29,1697,824,
+ 46,680,1549,504,94,1230,1598,133,210,824,
+ 1565,133,210,824,1072,149,132,134,158,152,
+ 132,134,158,228,195,275,142,1697,195,238,
+ 1697,1697,1384,1697,29,824,1384,650,824,1566,
+ 255,565,571,411,1118,573,408,1523,190,1062,
+ 195,824,190,195,824,1091,1620,652,1384,1631,
+ 1620,1384,225,499,1697,1697,1072,29,1098,1072,
+ 216,270,455,96,190,504,455,190,565,824,
+ 239,1643,1620,746,1646,1620,594,265,1261,1104,
+ 268,361,255,652,1072,255,504,276,224,1523,
+ 190,1062,1637,86,1062,1098,206,86,306,824,
+ 29,812,1101,1098,812,652,241,504,222,455,
+ 255,1173,1099,812,195,307,812,1595,812,1062,
+ 652,1645,1384,652,1656,812,812,181,242,227,
+ 26,1697,1697,206,1697,1697,317,231,191,184,
+ 86,207,183,287,202,865,289,1697,1256,1099,
+ 1697,203,278,1697,0,17,178,0,18,177,
+ 0,1,1920,0,1,1931,0
};
};
public final static char baseAction[] = BaseAction.baseAction;
@@ -391,80 +391,97 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface TermCheck {
public final static byte termCheck[] = {0,
- 0,1,2,3,4,0,6,7,8,0,
- 10,11,12,13,14,15,16,17,18,19,
- 20,21,22,0,24,25,26,27,28,0,
- 0,1,2,3,0,0,36,37,38,39,
- 40,41,42,43,44,45,46,47,0,1,
- 0,0,4,2,6,7,8,57,58,59,
- 9,0,0,1,13,14,31,32,0,64,
- 22,62,24,25,26,27,28,0,10,11,
- 51,52,53,54,36,37,38,39,40,41,
- 42,43,44,45,46,47,0,0,1,48,
- 0,4,6,7,8,57,58,59,0,0,
- 60,61,51,52,53,54,0,66,22,0,
- 24,25,26,27,28,6,7,8,51,52,
- 53,54,36,37,38,39,40,41,42,43,
- 44,45,46,47,0,1,2,3,4,5,
- 0,1,2,0,10,11,12,13,14,15,
- 16,17,18,19,20,21,22,67,68,0,
- 1,2,3,4,5,0,60,61,34,10,
- 11,12,13,14,15,16,17,18,19,20,
- 21,22,0,0,0,1,2,3,4,5,
- 0,9,0,34,10,11,12,13,14,15,
- 16,17,18,19,20,21,0,23,0,1,
- 0,1,2,3,4,5,10,11,0,35,
- 10,11,12,13,14,15,16,17,18,19,
- 20,21,0,1,2,0,1,2,3,4,
- 0,33,0,3,34,10,11,12,13,14,
- 15,16,17,18,19,20,21,0,1,2,
- 3,4,0,80,0,3,0,10,11,12,
- 13,14,15,16,17,18,19,20,21,0,
- 23,0,1,2,3,4,0,55,9,49,
- 50,10,11,12,13,14,15,16,17,18,
- 19,20,21,0,23,0,1,2,3,4,
- 0,49,50,3,79,10,11,12,13,14,
- 15,16,17,18,19,20,21,48,23,0,
- 1,2,3,4,0,1,0,0,4,10,
- 11,12,13,14,15,16,17,18,19,20,
- 21,0,1,2,3,4,0,23,55,49,
- 50,10,11,12,13,14,15,16,17,18,
- 19,20,21,0,1,2,3,4,0,0,
- 0,3,0,10,11,12,13,14,15,16,
- 17,18,19,20,21,0,0,2,3,63,
- 5,6,7,8,9,0,0,2,3,0,
- 5,6,7,8,9,9,0,22,2,24,
- 25,26,27,28,29,9,30,22,0,24,
- 25,26,27,28,29,56,0,0,1,2,
- 3,0,6,7,8,63,9,0,69,70,
- 71,72,73,74,75,76,77,78,22,0,
- 24,25,26,27,28,6,7,8,0,0,
- 1,2,3,64,6,7,8,0,9,0,
- 33,22,5,24,25,26,27,28,9,0,
- 22,0,24,25,26,27,28,6,7,8,
- 0,1,2,0,0,5,29,30,5,9,
- 0,1,23,22,4,24,25,26,27,28,
- 0,0,0,2,2,3,5,48,0,29,
- 9,9,29,23,0,1,0,0,4,2,
- 3,0,6,7,8,0,9,6,7,8,
- 29,6,7,8,0,0,0,23,0,0,
- 6,7,8,0,6,7,8,0,5,0,
- 0,0,5,0,5,0,0,0,3,0,
- 0,10,11,0,5,5,31,32,0,1,
- 31,32,4,30,0,0,29,0,0,2,
- 5,31,32,34,31,32,9,0,33,29,
- 0,0,5,0,35,5,0,1,0,1,
- 4,23,4,12,0,12,0,0,65,0,
- 35,0,0,56,0,0,0,0,62,56,
- 0,0,0,0,0,35,0,23,0,23,
- 0,0,0,0,0,0,0,30,0,30,
- 0,0,30,0,33,30,0,0,0,0,
- 0,0,65,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,55,
+ 0,1,2,3,4,0,6,7,8,9,
+ 0,11,12,13,14,15,16,17,18,19,
+ 20,21,22,23,24,25,26,27,0,29,
+ 30,31,32,33,34,35,36,37,38,39,
+ 40,0,42,43,44,0,1,0,3,2,
+ 5,6,7,8,9,0,0,10,13,14,
+ 15,16,17,0,1,2,0,0,5,64,
+ 4,61,62,10,29,30,31,32,33,34,
+ 35,36,37,38,39,40,0,42,43,44,
+ 0,46,47,0,1,0,3,2,5,6,
+ 7,8,9,0,41,10,13,14,15,16,
+ 17,55,56,57,58,0,1,0,3,53,
+ 54,80,29,30,31,32,33,34,35,36,
+ 37,38,39,40,0,42,43,44,4,46,
+ 47,0,1,28,3,0,5,6,7,8,
+ 9,65,0,63,13,14,15,16,17,0,
+ 0,2,45,0,5,0,1,4,3,10,
+ 29,30,31,32,33,34,35,36,37,38,
+ 39,40,0,42,43,44,0,46,47,0,
+ 1,0,3,28,5,6,7,8,9,0,
+ 41,0,13,14,15,16,17,55,56,57,
+ 58,0,1,0,3,0,53,54,29,30,
+ 31,32,33,34,35,36,37,38,39,40,
+ 0,42,43,44,0,46,47,0,1,28,
+ 3,0,5,6,7,8,9,6,7,8,
+ 13,14,15,16,17,0,55,56,57,58,
+ 0,6,7,8,0,50,29,30,31,32,
+ 33,34,35,36,37,38,39,40,18,42,
+ 43,44,18,46,47,0,1,0,3,0,
+ 60,6,7,8,9,6,7,8,13,14,
+ 15,16,17,0,1,2,0,4,0,1,
+ 2,5,4,10,29,30,31,32,33,34,
+ 35,36,37,38,39,40,0,42,43,44,
+ 0,0,6,7,8,9,6,7,8,13,
+ 14,15,16,17,0,1,2,41,4,0,
+ 63,45,0,1,10,29,30,31,32,33,
+ 34,35,36,37,38,39,40,0,1,2,
+ 3,4,5,0,0,2,9,4,11,12,
+ 0,0,0,10,4,18,19,20,21,22,
+ 23,24,25,26,27,0,0,48,49,68,
+ 69,0,1,2,3,4,5,0,0,2,
+ 9,4,11,12,6,7,8,10,51,18,
+ 19,20,21,22,23,24,25,26,27,48,
+ 49,0,0,53,54,0,1,2,3,4,
+ 5,10,0,11,12,0,11,12,6,7,
+ 8,0,51,18,19,20,21,22,23,24,
+ 25,26,27,28,0,1,2,3,4,5,
+ 0,1,0,3,0,11,12,0,1,2,
+ 0,46,18,19,20,21,22,23,24,25,
+ 26,27,0,48,49,0,0,5,0,1,
+ 2,3,4,0,0,0,11,12,5,11,
+ 12,0,61,62,0,51,18,19,20,21,
+ 22,23,24,25,26,27,0,0,0,1,
+ 2,3,4,41,60,0,59,11,12,11,
+ 12,45,0,0,41,47,18,19,20,21,
+ 22,23,24,25,26,27,28,0,1,2,
+ 3,4,48,49,0,1,0,3,11,12,
+ 0,5,0,1,4,18,19,20,21,22,
+ 23,24,25,26,27,28,0,1,2,3,
+ 4,48,49,0,1,0,3,11,12,0,
+ 1,2,0,0,18,19,20,21,22,23,
+ 24,25,26,27,28,0,1,2,3,4,
+ 50,0,50,0,0,0,11,12,0,1,
+ 28,3,66,18,19,20,21,22,23,24,
+ 25,26,27,0,1,2,3,4,0,0,
+ 0,0,0,28,11,12,5,0,10,10,
+ 65,18,19,20,21,22,23,24,25,26,
+ 27,0,1,2,3,4,0,0,28,0,
+ 59,0,11,12,5,28,0,10,64,18,
+ 19,20,21,22,23,24,25,26,27,0,
+ 52,2,51,4,5,6,7,8,9,10,
+ 0,59,13,14,15,16,17,0,0,2,
+ 41,4,5,6,7,8,9,10,0,52,
+ 13,14,15,16,17,0,60,0,0,0,
+ 41,0,0,0,0,0,70,71,72,73,
+ 74,75,76,77,78,79,0,0,41,0,
+ 50,0,6,7,8,9,0,0,0,13,
+ 14,15,16,17,6,7,8,9,0,0,
+ 0,13,14,15,16,17,6,7,8,9,
+ 45,0,0,13,14,15,16,17,6,7,
+ 8,9,0,0,2,13,14,15,16,17,
+ 0,0,10,0,0,5,5,0,0,0,
+ 0,19,20,45,45,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,52,45,0,46,0,0,
+ 0,0,0,0,0,0,0,0,0,67,
+ 0,0,0,0,0,0,66,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0
};
};
public final static byte termCheck[] = TermCheck.termCheck;
@@ -472,76 +489,94 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface TermAction {
public final static char termAction[] = {0,
- 1696,599,1438,1319,610,69,1906,1907,1908,65,
- 1212,1072,1349,372,362,329,1706,1707,1708,1709,
- 1024,888,1857,1,1858,1856,1909,1859,1855,58,
- 1696,1918,1379,1443,1696,53,1862,1867,1866,1864,
- 1865,1863,1868,1869,1861,1870,1871,1872,1696,1874,
- 61,31,1873,1440,1906,1907,1908,1005,883,849,
- 1586,60,1696,1930,1720,1721,834,968,50,1180,
- 1857,1196,1858,1856,1909,1859,1855,59,1015,959,
- 1370,1359,1338,1327,1862,1867,1866,1864,1865,1863,
- 1868,1869,1861,1870,1871,1872,127,1696,1725,451,
- 71,1726,1906,1907,1908,1005,883,849,1696,1696,
- 1297,484,1370,1359,1338,1327,62,450,1857,245,
- 1858,1856,1909,1859,1855,1,1,1,1370,1359,
- 1338,1327,1862,1867,1866,1864,1865,1863,1868,1869,
- 1861,1870,1871,1872,1,1713,1438,1396,1714,1699,
- 1,1918,1379,1696,1212,1072,1349,372,362,329,
- 1706,1707,1708,1709,1024,888,526,1163,1629,1696,
- 1713,1438,1431,1714,1699,1696,1297,484,1698,1212,
- 1072,1349,372,362,329,1706,1707,1708,1709,1024,
- 888,901,266,1696,1,1713,1438,1319,1714,27,
- 1696,497,1696,1698,1212,1072,1349,372,362,329,
- 1706,1707,1708,1709,1024,888,52,1553,1,1693,
- 1696,1713,1438,1319,1714,1699,1015,959,1696,27,
- 1212,1072,1349,372,362,329,1706,1707,1708,1709,
- 1024,888,1,1918,1379,1696,1,1,1,1,
- 47,1949,1696,1492,1698,1,1,1,1,1,
- 1,1,1,1,1,1,1,1696,1713,1438,
- 1319,1714,49,1683,1696,1492,1696,1212,1072,1349,
- 372,362,329,1706,1707,1708,1709,1024,888,1696,
- 391,1,1713,1438,1319,1714,1696,996,921,1485,
- 1455,1212,1072,1349,372,362,329,1706,1707,1708,
- 1709,1024,888,1696,1553,1696,1713,1438,1319,1714,
- 48,1485,1455,1492,2002,1212,1072,1349,372,362,
- 329,1706,1707,1708,1709,1024,888,1227,1553,1696,
- 1713,1438,1319,1714,1696,1875,67,1696,1876,1212,
- 1072,1349,372,362,329,1706,1707,1708,1709,1024,
- 888,1696,1713,1439,1319,1714,1696,1219,1052,1485,
- 1455,1212,1072,1349,372,362,329,1706,1707,1708,
- 1709,1024,888,1,1713,1438,1319,1714,1696,41,
- 1696,1133,68,1212,1072,1349,372,362,329,1706,
- 1707,1708,1709,1024,888,17,87,1684,1684,1081,
- 1684,178,178,178,1684,18,216,1687,1687,70,
- 1687,177,177,177,1687,497,265,178,1125,178,
- 178,178,178,178,1684,497,590,177,1696,177,
- 177,177,177,177,1687,814,128,257,1918,1102,
- 1,1696,1906,1907,1908,1081,497,1,794,774,
- 754,734,714,674,694,654,634,614,1857,129,
- 1858,1856,1909,1859,1855,1906,1907,1908,130,263,
- 1918,1102,1443,1180,1906,1907,1908,1696,497,283,
- 1949,1857,1701,1858,1856,1909,1859,1855,977,1696,
- 1857,131,1858,1856,1909,1859,1855,1906,1907,1908,
- 1,1690,1102,1,1696,1701,1700,1132,89,497,
- 1696,1875,391,1857,1876,1858,1856,1909,1859,1855,
- 1696,1,260,1381,1381,1,1701,1382,1696,1700,
- 497,497,89,1347,1696,1875,1696,263,1876,1381,
- 1443,246,1906,1907,1908,244,497,1,1,1,
- 1700,1906,1907,1908,247,57,1696,1385,248,56,
- 1906,1907,1908,1696,1906,1907,1908,1696,1705,1696,
- 55,51,1701,54,1699,1,66,207,1133,1,
- 1,1015,959,1696,189,1701,834,968,204,1875,
- 834,968,1876,1279,1696,1696,1700,218,186,1520,
- 1703,834,968,1698,834,968,497,1,1949,1700,
- 1,63,1705,64,189,188,1696,1875,203,1605,
- 1876,1468,1605,1270,185,1270,187,251,1704,28,
- 1702,1,28,940,198,203,1696,1696,1196,570,
- 1696,1696,1696,1696,1696,188,1696,1512,1696,1516,
- 1696,1696,1696,1696,1696,1696,1696,1286,1696,430,
- 1696,1696,1723,1696,1948,2631,1696,1696,1696,1696,
- 1696,1696,1704,1696,1696,1696,1696,1696,1696,1696,
- 1696,1696,1696,1696,1696,1696,1696,1696,1696,1033
+ 1697,600,1439,611,1320,67,1908,1909,1910,1858,
+ 61,1213,1073,1859,1857,1911,1860,1856,1350,373,
+ 363,330,1707,1708,1709,1710,1025,889,1,1863,
+ 1868,1867,1865,1866,1864,1869,1870,1862,1871,1872,
+ 1873,1697,1006,884,850,1697,1,266,1,1126,
+ 189,1,1,1,1,1697,58,498,1,1,
+ 1,1,1,1,1691,1103,47,1697,1702,1082,
+ 1493,1298,485,498,1,1,1,1,1,1,
+ 1,1,1,1,1,1,69,1,1,1,
+ 65,189,1891,1697,1,219,1,1521,189,1,
+ 1,1,1,1697,1701,498,1,1,1,1,
+ 1,1371,1360,1339,1328,1697,1876,87,1877,1486,
+ 1456,1684,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1697,1,1,1,1134,189,
+ 1891,1697,1,1220,1,1697,189,1,1,1,
+ 1,1181,60,1197,1,1,1,1,1,1,
+ 1697,1382,591,49,1702,1697,1876,1493,1877,498,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1697,1,1,1,1697,189,1891,1697,
+ 1,1697,1,1348,188,1,1,1,1,1697,
+ 1701,59,1,1,1,1,1,1371,1360,1339,
+ 1328,1697,1876,1697,1877,1,1486,1456,1,1,
+ 1,1,1,1,1,1,1,1,1,1,
+ 208,1,1,1,1697,188,1891,1697,1,1386,
+ 1,246,189,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1697,1371,1360,1339,1328,
+ 63,1908,1909,1910,64,1951,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1271,1,
+ 1,1,1271,189,1891,1697,1875,66,1874,247,
+ 941,1908,1909,1910,1858,1,1,1,1859,1857,
+ 1911,1860,1856,258,1920,1103,1697,1,1697,1920,
+ 1380,1702,1444,498,1863,1868,1867,1865,1866,1864,
+ 1869,1870,1862,1871,1872,1873,127,1006,884,850,
+ 245,71,1908,1909,1910,1858,1908,1909,1910,1859,
+ 1857,1911,1860,1856,264,1920,1103,1701,1444,53,
+ 1197,1133,1697,1932,498,1863,1868,1867,1865,1866,
+ 1864,1869,1870,1862,1871,1872,1873,1,1714,1439,
+ 1715,1397,1700,261,1697,1382,527,1,1213,1073,
+ 48,57,1697,498,1493,1350,373,363,330,1707,
+ 1708,1709,1710,1025,889,1697,1697,835,969,1164,
+ 1630,1697,1714,1439,1715,1432,1700,264,248,1382,
+ 902,1444,1213,1073,1908,1909,1910,498,1699,1350,
+ 373,363,330,1707,1708,1709,1710,1025,889,835,
+ 969,267,50,1486,1456,1,1714,1439,1715,1320,
+ 27,498,249,1016,960,56,1213,1073,1908,1909,
+ 1910,62,1699,1350,373,363,330,1707,1708,1709,
+ 1710,1025,889,1554,1697,1714,1439,1715,1320,1700,
+ 1697,1726,1697,1727,1697,1213,1073,1,1920,1380,
+ 1697,27,1350,373,363,330,1707,1708,1709,1710,
+ 1025,889,1,835,969,52,252,89,1697,1,
+ 1,1,1,1697,1697,1697,1016,960,1702,1,
+ 1,1697,1298,485,55,1699,1,1,1,1,
+ 1,1,1,1,1,1,51,1697,1697,1714,
+ 1439,1715,1320,89,571,1697,997,1016,960,1213,
+ 1073,1287,1697,54,1701,2004,1350,373,363,330,
+ 1707,1708,1709,1710,1025,889,392,1,1714,1439,
+ 1715,1320,835,969,205,1876,1,1877,1213,1073,
+ 1,1706,1,1694,1134,1350,373,363,330,1707,
+ 1708,1709,1710,1025,889,1554,1697,1714,1439,1715,
+ 1320,835,969,1697,1876,70,1877,1213,1073,1,
+ 1920,1380,1697,1697,1350,373,363,330,1707,1708,
+ 1709,1710,1025,889,1554,1697,1714,1439,1715,1320,
+ 1951,1697,1951,1697,68,186,1213,1073,204,1606,
+ 392,1606,1705,1350,373,363,330,1707,1708,1709,
+ 1710,1025,889,1697,1714,1440,1715,1320,1697,217,
+ 185,1697,199,1469,1213,1073,1700,187,922,498,
+ 1181,1350,373,363,330,1707,1708,1709,1710,1025,
+ 889,1,1714,1439,1715,1320,41,284,1513,1,
+ 1053,1697,1213,1073,1702,1517,1697,978,1082,1350,
+ 373,363,330,1707,1708,1709,1710,1025,889,17,
+ 1228,1685,1699,1685,1685,178,178,178,178,1685,
+ 1,1034,178,178,178,178,178,18,1697,1688,
+ 1701,1688,1688,177,177,177,177,1688,1697,1383,
+ 177,177,177,177,177,1697,815,1697,1697,1697,
+ 1685,1697,1697,1697,1697,28,795,775,755,735,
+ 715,675,695,655,635,615,128,1697,1688,1697,
+ 1950,1697,1908,1909,1910,1858,1697,1697,129,1859,
+ 1857,1911,1860,1856,1908,1909,1910,1858,28,204,
+ 130,1859,1857,1911,1860,1856,1908,1909,1910,1858,
+ 431,1697,131,1859,1857,1911,1860,1856,1908,1909,
+ 1910,1858,31,1697,1441,1859,1857,1911,1860,1856,
+ 1697,1697,1587,1697,1697,1706,1704,1697,1697,1697,
+ 1697,1721,1722,1724,2633,1697,1697,1697,1697,1697,
+ 1697,1697,1697,1697,1697,1697,1697,1697,1697,1697,
+ 1697,1697,1697,1697,1697,1697,1697,1697,1697,1697,
+ 1697,1697,1697,1697,452,1280,1697,1703,1697,1697,
+ 1697,1697,1697,1697,1697,1697,1697,1697,1697,451,
+ 1697,1697,1697,1697,1697,1697,1705
};
};
public final static char termAction[] = TermAction.termAction;
@@ -549,27 +584,27 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface Asb {
public final static char asb[] = {0,
- 414,1,108,41,108,108,108,108,108,108,
- 108,108,108,3,325,77,74,81,79,87,
- 85,89,88,91,90,10,108,325,309,309,
- 366,108,191,191,244,325,108,108,108,108,
+ 415,1,108,41,108,108,108,108,108,108,
+ 108,108,108,3,326,77,74,81,79,87,
+ 85,89,88,91,90,10,108,326,310,310,
+ 367,108,191,191,244,326,108,108,108,108,
108,108,108,108,108,108,108,108,108,108,
108,108,108,108,108,108,108,108,108,108,
108,108,108,108,108,108,191,191,45,56,
- 248,102,279,189,188,219,231,231,70,70,
- 231,70,231,339,145,145,74,74,79,79,
+ 248,102,280,189,188,219,231,231,70,70,
+ 231,70,231,340,145,145,74,74,79,79,
79,79,77,77,85,81,81,88,87,212,
- 90,89,72,54,244,239,125,45,362,106,
- 191,385,282,194,250,194,250,319,194,108,
- 54,239,362,362,45,105,102,191,242,339,
- 190,284,250,250,250,250,319,319,321,49,
- 54,362,239,108,108,45,106,279,207,206,
- 248,284,191,250,276,312,250,250,276,321,
- 214,321,319,276,52,217,309,108,48,54,
- 239,45,45,191,385,282,242,276,314,276,
- 276,108,309,321,56,45,309,108,321,284,
- 98,108,97,121,248,276,45,276,191,190,
- 314,108,121,310
+ 90,89,72,54,244,239,125,45,363,106,
+ 191,386,283,194,250,194,250,320,194,108,
+ 54,239,363,363,45,105,102,191,242,340,
+ 190,285,250,250,250,250,320,320,322,49,
+ 54,363,239,108,108,45,106,280,207,206,
+ 248,285,191,250,277,313,250,250,277,322,
+ 214,322,320,277,52,217,310,108,48,54,
+ 239,45,45,191,386,283,242,277,315,277,
+ 277,108,310,322,56,45,310,108,322,285,
+ 98,108,97,121,248,277,45,277,191,190,
+ 315,108,121,311
};
};
public final static char asb[] = Asb.asb;
@@ -577,50 +612,50 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface Asr {
public final static byte asr[] = {0,
- 80,0,65,9,2,48,66,13,14,12,
- 3,10,11,49,50,31,32,51,52,53,
- 54,60,61,62,63,64,67,68,35,56,
- 69,70,71,72,73,75,74,76,77,78,
- 55,29,80,30,34,5,0,56,9,48,
- 0,5,35,9,48,13,14,12,3,10,
- 11,20,21,15,2,16,17,18,19,1,
- 4,23,0,3,49,50,10,11,32,31,
- 51,52,53,54,60,61,12,62,63,64,
- 34,29,35,80,67,68,55,65,5,30,
- 0,6,7,8,22,34,5,16,17,18,
- 19,4,13,14,12,10,11,20,21,15,
- 3,2,1,0,6,7,8,2,16,17,
- 18,19,1,4,13,14,12,3,10,11,
- 20,21,15,0,7,22,28,8,27,26,
- 25,6,24,48,66,13,14,12,10,11,
- 49,50,31,32,51,52,53,54,60,61,
- 62,63,64,67,68,56,69,70,71,72,
- 73,74,75,76,77,78,3,2,9,30,
- 29,5,0,24,6,25,26,27,7,22,
- 28,8,1,3,23,2,5,30,29,65,
- 9,55,0,5,30,35,56,0,44,36,
- 41,39,40,38,37,42,43,45,46,47,
- 55,65,28,25,22,24,27,26,6,7,
- 8,30,1,5,29,2,9,3,0,24,
- 36,6,37,57,25,38,26,39,40,27,
- 7,41,42,22,58,28,59,43,44,8,
- 45,46,47,1,4,35,5,0,3,2,
- 9,29,5,24,36,6,37,57,25,38,
- 26,39,40,27,7,41,42,22,58,28,
- 59,43,44,8,45,46,47,33,4,1,
- 0,65,5,3,1,2,55,0,1,4,
- 5,35,30,0,15,16,17,18,19,2,
- 13,14,12,3,10,11,20,21,4,1,
- 57,58,59,44,36,41,39,40,38,37,
- 42,43,45,46,47,28,25,22,24,27,
- 26,6,7,8,0,5,29,15,16,17,
- 18,19,1,4,2,13,14,12,3,10,
- 11,20,21,0,24,36,6,37,57,25,
- 38,26,39,40,27,7,41,42,22,58,
- 28,59,43,44,8,45,46,47,1,4,
- 33,3,0,15,16,17,18,19,1,4,
- 2,13,14,12,3,10,11,20,21,79,
- 0
+ 80,0,66,10,2,52,67,19,20,18,
+ 4,11,12,53,54,48,49,55,56,57,
+ 58,61,62,63,64,65,68,69,46,60,
+ 70,71,72,73,74,76,75,77,78,79,
+ 59,41,80,45,51,5,0,60,10,52,
+ 0,5,46,10,52,19,20,18,4,11,
+ 12,26,27,21,2,22,23,24,25,1,
+ 3,28,0,4,53,54,11,12,49,48,
+ 55,56,57,58,61,62,18,63,64,65,
+ 51,41,46,80,68,69,59,66,5,45,
+ 0,6,7,8,9,51,5,22,23,24,
+ 25,3,19,20,18,11,12,26,27,21,
+ 4,2,1,0,6,7,8,2,22,23,
+ 24,25,1,3,19,20,18,4,11,12,
+ 26,27,21,0,7,9,17,8,16,15,
+ 14,6,13,52,67,19,20,18,11,12,
+ 53,54,48,49,55,56,57,58,61,62,
+ 63,64,65,68,69,60,70,71,72,73,
+ 74,75,76,77,78,79,4,2,10,45,
+ 41,5,0,13,6,14,15,16,7,9,
+ 17,8,1,4,28,2,5,45,41,66,
+ 10,59,0,5,45,46,60,0,37,29,
+ 34,32,33,31,30,35,36,38,39,40,
+ 59,66,17,14,9,13,16,15,6,7,
+ 8,45,1,5,41,2,10,4,0,13,
+ 29,6,30,42,14,31,15,32,33,16,
+ 7,34,35,9,43,17,44,36,37,8,
+ 38,39,40,1,3,47,46,5,0,4,
+ 2,10,41,5,13,29,6,30,42,14,
+ 31,15,32,33,16,7,34,35,9,43,
+ 17,44,36,37,8,38,39,40,50,3,
+ 1,0,66,5,4,1,2,59,0,1,
+ 3,5,46,45,0,21,22,23,24,25,
+ 2,19,20,18,4,11,12,26,27,3,
+ 1,42,43,44,37,29,34,32,33,31,
+ 30,35,36,38,39,40,17,14,9,13,
+ 16,15,6,7,8,0,5,41,21,22,
+ 23,24,25,1,3,2,19,20,18,4,
+ 11,12,26,27,0,13,29,6,30,42,
+ 14,31,15,32,33,16,7,34,35,9,
+ 43,17,44,36,37,8,38,39,40,1,
+ 3,50,4,0,21,22,23,24,25,1,
+ 3,2,19,20,18,4,11,12,26,27,
+ 47,0
};
};
public final static byte asr[] = Asr.asr;
@@ -672,14 +707,14 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface TerminalIndex {
public final static char terminalIndex[] = {0,
- 85,2,9,86,87,48,64,76,1,10,
- 11,8,6,7,68,81,82,83,84,12,
- 13,69,3,44,55,60,63,72,90,42,
- 16,17,30,89,91,47,52,56,61,62,
- 66,67,74,75,78,79,80,4,14,15,
- 18,19,20,21,29,31,54,70,73,22,
- 23,24,25,26,92,5,27,28,32,33,
- 34,35,36,37,38,39,40,41,93,94,
+ 85,2,86,9,87,48,64,76,69,1,
+ 10,11,44,55,60,63,72,8,6,7,
+ 68,81,82,83,84,12,13,3,47,52,
+ 56,61,62,66,67,74,75,78,79,80,
+ 90,54,70,73,42,91,93,16,17,30,
+ 89,4,14,15,18,19,20,21,29,31,
+ 22,23,24,25,26,92,5,27,28,32,
+ 33,34,35,36,37,38,39,40,41,94,
45,46,49,50,51,53,57,58,59,65,
71,77,88
};
@@ -741,10 +776,10 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface ScopeLa {
public final static byte scopeLa[] = {
- 35,35,34,34,35,35,35,86,35,29,
- 34,29,35,35,29,34,65,29,34,55,
- 34,34,29,34,29,29,56,1,29,92,
- 29,65,2,2,2
+ 46,46,51,51,46,46,46,86,46,41,
+ 51,41,46,46,41,51,66,41,51,59,
+ 51,51,41,51,41,41,60,1,41,92,
+ 41,66,2,2,2
};
};
public final static byte scopeLa[] = ScopeLa.scopeLa;
@@ -763,24 +798,24 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface ScopeRhs {
public final static char scopeRhs[] = {0,
- 139,9,0,96,0,181,102,0,31,136,
- 0,144,163,102,23,0,98,0,150,102,
+ 139,10,0,96,0,181,102,0,31,136,
+ 0,144,163,102,28,0,98,0,150,102,
2,135,0,97,0,150,102,2,0,153,
- 2,0,112,22,175,102,9,0,112,175,
- 102,22,9,0,112,22,9,0,112,175,
- 102,9,0,112,9,0,129,0,2,0,
+ 2,0,112,9,175,102,10,0,112,175,
+ 102,9,10,0,112,9,10,0,112,175,
+ 102,10,0,112,10,0,129,0,2,0,
151,97,0,2,97,0,150,102,2,129,
0,2,0,150,97,0,140,2,0,144,
- 173,102,23,120,57,0,144,173,102,23,
- 57,0,125,0,99,0,178,102,125,0,
- 102,125,0,141,99,0,148,102,23,120,
- 59,0,148,102,23,120,58,0,148,102,
- 23,59,0,148,102,23,58,0,187,85,
+ 173,102,28,120,42,0,144,173,102,28,
+ 42,0,125,0,99,0,178,102,125,0,
+ 102,125,0,141,99,0,148,102,28,120,
+ 44,0,148,102,28,120,43,0,148,102,
+ 28,44,0,148,102,28,43,0,187,85,
0,77,2,100,97,99,0,187,115,138,
- 2,89,0,53,0,0,138,68,110,0,
+ 2,89,0,53,0,0,138,69,110,0,
29,117,0,162,2,0,97,106,0,144,
- 163,102,23,115,162,2,0,97,3,0,
- 104,0,98,0,177,2,97,0,138,9,
+ 163,102,28,115,162,2,0,97,3,0,
+ 104,0,98,0,177,2,97,0,138,10,
97,0,138,2,0
};
};
@@ -789,16 +824,16 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface ScopeState {
public final static char scopeState[] = {0,
- 390,0,389,0,1548,1619,1545,1523,1519,0,
- 1117,1279,1379,1211,360,1102,1071,0,823,1205,
- 307,0,1592,1556,1260,1103,360,1102,1071,1565,
- 1381,1386,0,372,362,329,1431,1396,1499,1180,
- 1163,1196,1081,1297,484,1270,968,834,1370,1359,
- 1338,1327,1492,1485,1455,1015,959,1349,1319,1212,
- 1072,1024,888,1033,996,977,940,921,901,855,
- 546,1052,526,497,814,794,774,754,734,714,
- 694,674,654,634,614,307,590,454,570,410,
- 430,339,0
+ 391,0,390,0,1549,1620,1546,1524,1520,0,
+ 1118,1280,1380,1212,361,1103,1072,0,824,1206,
+ 308,0,1593,1557,1261,1104,361,1103,1072,1566,
+ 1382,1387,0,373,363,330,1432,1397,1500,1181,
+ 1164,1197,1082,1298,485,1271,969,835,1371,1360,
+ 1339,1328,1493,1486,1456,1016,960,1350,1320,1213,
+ 1073,1025,889,1034,997,978,941,922,902,856,
+ 547,1053,527,498,815,795,775,755,735,715,
+ 695,675,655,635,615,308,591,455,571,411,
+ 431,340,0
};
};
public final static char scopeState[] = ScopeState.scopeState;
@@ -806,27 +841,27 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface InSymb {
public final static char inSymb[] = {0,
- 0,176,102,164,15,21,20,11,10,3,
- 12,14,13,97,2,101,100,104,103,106,
- 105,108,107,110,109,98,30,2,66,48,
- 2,9,162,138,125,102,11,10,50,49,
- 3,54,53,52,51,31,32,12,61,60,
- 63,62,68,67,64,78,77,76,74,75,
- 73,72,71,70,69,56,162,177,138,115,
- 102,9,2,136,135,165,166,167,59,58,
- 168,57,169,170,1,4,100,100,103,103,
+ 0,176,102,164,21,27,26,12,11,4,
+ 18,20,19,97,2,101,100,104,103,106,
+ 105,108,107,110,109,98,45,2,67,52,
+ 2,10,162,138,125,102,12,11,54,53,
+ 4,58,57,56,55,48,49,18,62,61,
+ 64,63,69,68,65,79,78,77,75,76,
+ 74,73,72,71,70,60,162,177,138,115,
+ 102,10,2,136,135,165,166,167,44,43,
+ 168,42,169,170,1,3,100,100,103,103,
103,103,101,101,105,104,104,107,106,138,
- 109,108,115,23,142,3,22,112,102,3,
- 153,102,2,120,23,120,23,23,120,55,
- 102,3,102,102,112,175,151,150,117,102,
- 152,102,23,102,23,102,102,23,163,102,
- 23,102,151,175,22,112,3,2,127,129,
- 102,30,150,102,148,125,149,102,148,173,
- 120,174,102,144,30,181,48,9,182,102,
+ 109,108,115,28,142,4,9,112,102,4,
+ 153,102,2,120,28,120,28,28,120,59,
+ 102,4,102,102,112,175,151,150,117,102,
+ 152,102,28,102,28,102,102,28,163,102,
+ 28,102,151,175,9,112,4,2,127,129,
+ 102,45,150,102,148,125,149,102,148,173,
+ 120,174,102,144,45,181,52,10,182,102,
151,112,112,140,102,2,142,148,102,148,
- 144,56,30,173,56,139,48,9,163,102,
- 178,55,140,2,102,144,139,144,150,179,
- 30,55,142,30
+ 144,60,45,173,60,139,52,10,163,102,
+ 178,59,140,2,102,144,139,144,150,179,
+ 45,59,142,45
};
};
public final static char inSymb[] = InSymb.inSymb;
@@ -1010,7 +1045,7 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public final String name(int index) { return name[index]; }
public final static int
- ERROR_SYMBOL = 79,
+ ERROR_SYMBOL = 47,
SCOPE_UBOUND = 34,
SCOPE_SIZE = 35,
MAX_NAME_LENGTH = 38;
@@ -1023,18 +1058,18 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public final static int
NUM_STATES = 204,
NT_OFFSET = 93,
- LA_STATE_OFFSET = 2002,
+ LA_STATE_OFFSET = 2004,
MAX_LA = 2,
- NUM_RULES = 306,
+ NUM_RULES = 307,
NUM_NONTERMINALS = 115,
NUM_SYMBOLS = 208,
SEGMENT_SIZE = 8192,
- START_STATE = 1582,
+ START_STATE = 1583,
IDENTIFIER_SYMBOL = 0,
EOFT_SYMBOL = 80,
EOLT_SYMBOL = 80,
- ACCEPT_ACTION = 1683,
- ERROR_ACTION = 1696;
+ ACCEPT_ACTION = 1684,
+ ERROR_ACTION = 1697;
public final static boolean BACKTRACK = true;
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99SizeofExpressionParsersym.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99SizeofExpressionParsersym.java
index 887a39f5ed3..5ddcbebbd7c 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99SizeofExpressionParsersym.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99SizeofExpressionParsersym.java
@@ -15,113 +15,119 @@ package org.eclipse.cdt.internal.core.dom.lrparser.c99;
public interface C99SizeofExpressionParsersym {
public final static int
- TK_auto = 24,
+ TK_auto = 13,
TK_break = 81,
TK_case = 82,
- TK_char = 36,
+ TK_char = 29,
TK_const = 6,
TK_continue = 83,
TK_default = 84,
TK_do = 85,
- TK_double = 37,
+ TK_double = 30,
TK_else = 86,
- TK_enum = 57,
- TK_extern = 25,
- TK_float = 38,
+ TK_enum = 42,
+ TK_extern = 14,
+ TK_float = 31,
TK_for = 87,
TK_goto = 88,
TK_if = 89,
- TK_inline = 26,
- TK_int = 39,
- TK_long = 40,
- TK_register = 27,
+ TK_inline = 15,
+ TK_int = 32,
+ TK_long = 33,
+ TK_register = 16,
TK_restrict = 7,
TK_return = 90,
- TK_short = 41,
- TK_signed = 42,
- TK_sizeof = 15,
- TK_static = 22,
- TK_struct = 58,
+ TK_short = 34,
+ TK_signed = 35,
+ TK_sizeof = 21,
+ TK_static = 9,
+ TK_struct = 43,
TK_switch = 91,
- TK_typedef = 28,
- TK_union = 59,
- TK_unsigned = 43,
- TK_void = 44,
+ TK_typedef = 17,
+ TK_union = 44,
+ TK_unsigned = 36,
+ TK_void = 37,
TK_volatile = 8,
TK_while = 92,
- TK__Bool = 45,
- TK__Complex = 46,
- TK__Imaginary = 47,
- TK_integer = 16,
- TK_floating = 17,
- TK_charconst = 18,
- TK_stringlit = 19,
+ TK__Bool = 38,
+ TK__Complex = 39,
+ TK__Imaginary = 40,
+ TK_integer = 22,
+ TK_floating = 23,
+ TK_charconst = 24,
+ TK_stringlit = 25,
TK_identifier = 1,
- TK_Completion = 4,
+ TK_Completion = 3,
TK_EndOfCompletion = 5,
TK_Invalid = 93,
- TK_LeftBracket = 9,
+ TK_LeftBracket = 10,
TK_LeftParen = 2,
- TK_LeftBrace = 23,
- TK_Dot = 48,
- TK_Arrow = 66,
- TK_PlusPlus = 13,
- TK_MinusMinus = 14,
- TK_And = 12,
- TK_Star = 3,
- TK_Plus = 10,
- TK_Minus = 11,
- TK_Tilde = 20,
- TK_Bang = 21,
- TK_Slash = 49,
- TK_Percent = 50,
- TK_RightShift = 31,
- TK_LeftShift = 32,
- TK_LT = 51,
- TK_GT = 52,
- TK_LE = 53,
- TK_GE = 54,
- TK_EQ = 60,
- TK_NE = 61,
- TK_Caret = 62,
- TK_Or = 63,
- TK_AndAnd = 64,
- TK_OrOr = 67,
- TK_Question = 68,
- TK_Colon = 55,
- TK_DotDotDot = 33,
- TK_Assign = 56,
- TK_StarAssign = 69,
- TK_SlashAssign = 70,
- TK_PercentAssign = 71,
- TK_PlusAssign = 72,
- TK_MinusAssign = 73,
- TK_RightShiftAssign = 74,
- TK_LeftShiftAssign = 75,
- TK_AndAssign = 76,
- TK_CaretAssign = 77,
- TK_OrAssign = 78,
- TK_Comma = 30,
- TK_RightBracket = 34,
- TK_RightParen = 29,
- TK_RightBrace = 35,
- TK_SemiColon = 65,
- TK_ERROR_TOKEN = 79,
+ TK_LeftBrace = 28,
+ TK_Dot = 52,
+ TK_Arrow = 67,
+ TK_PlusPlus = 19,
+ TK_MinusMinus = 20,
+ TK_And = 18,
+ TK_Star = 4,
+ TK_Plus = 11,
+ TK_Minus = 12,
+ TK_Tilde = 26,
+ TK_Bang = 27,
+ TK_Slash = 53,
+ TK_Percent = 54,
+ TK_RightShift = 48,
+ TK_LeftShift = 49,
+ TK_LT = 55,
+ TK_GT = 56,
+ TK_LE = 57,
+ TK_GE = 58,
+ TK_EQ = 61,
+ TK_NE = 62,
+ TK_Caret = 63,
+ TK_Or = 64,
+ TK_AndAnd = 65,
+ TK_OrOr = 68,
+ TK_Question = 69,
+ TK_Colon = 59,
+ TK_DotDotDot = 50,
+ TK_Assign = 60,
+ TK_StarAssign = 70,
+ TK_SlashAssign = 71,
+ TK_PercentAssign = 72,
+ TK_PlusAssign = 73,
+ TK_MinusAssign = 74,
+ TK_RightShiftAssign = 75,
+ TK_LeftShiftAssign = 76,
+ TK_AndAssign = 77,
+ TK_CaretAssign = 78,
+ TK_OrAssign = 79,
+ TK_Comma = 45,
+ TK_RightBracket = 51,
+ TK_RightParen = 41,
+ TK_RightBrace = 46,
+ TK_SemiColon = 66,
+ TK_ERROR_TOKEN = 47,
TK_EOF_TOKEN = 80;
public final static String orderedTerminalSymbols[] = {
"",
"identifier",
"LeftParen",
- "Star",
"Completion",
+ "Star",
"EndOfCompletion",
"const",
"restrict",
"volatile",
+ "static",
"LeftBracket",
"Plus",
"Minus",
+ "auto",
+ "extern",
+ "inline",
+ "register",
+ "typedef",
"And",
"PlusPlus",
"MinusMinus",
@@ -132,20 +138,7 @@ public interface C99SizeofExpressionParsersym {
"stringlit",
"Tilde",
"Bang",
- "static",
"LeftBrace",
- "auto",
- "extern",
- "inline",
- "register",
- "typedef",
- "RightParen",
- "Comma",
- "RightShift",
- "LeftShift",
- "DotDotDot",
- "RightBracket",
- "RightBrace",
"char",
"double",
"float",
@@ -158,6 +151,17 @@ public interface C99SizeofExpressionParsersym {
"_Bool",
"_Complex",
"_Imaginary",
+ "RightParen",
+ "enum",
+ "struct",
+ "union",
+ "Comma",
+ "RightBrace",
+ "ERROR_TOKEN",
+ "RightShift",
+ "LeftShift",
+ "DotDotDot",
+ "RightBracket",
"Dot",
"Slash",
"Percent",
@@ -167,9 +171,6 @@ public interface C99SizeofExpressionParsersym {
"GE",
"Colon",
"Assign",
- "enum",
- "struct",
- "union",
"EQ",
"NE",
"Caret",
@@ -189,7 +190,6 @@ public interface C99SizeofExpressionParsersym {
"AndAssign",
"CaretAssign",
"OrAssign",
- "ERROR_TOKEN",
"EOF_TOKEN",
"break",
"case",
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionStatementParser.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionStatementParser.java
index b4b58f398e3..b72c2562fe5 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionStatementParser.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionStatementParser.java
@@ -286,7 +286,7 @@ public CPPExpressionStatementParser(String[] mapFrom) { // constructor
}
//
- // Rule 10: translation_unit ::= declaration_seq
+ // Rule 10: translation_unit ::= external_declaration_list
//
case 10: { action.builder.
consumeTranslationUnit(); break;
@@ -300,1738 +300,1752 @@ public CPPExpressionStatementParser(String[] mapFrom) { // constructor
}
//
- // Rule 12: literal ::= integer
+ // Rule 15: external_declaration ::= ERROR_TOKEN
//
- case 12: { action.builder.
+ case 15: { action.builder.
+ consumeDeclarationProblem(); break;
+ }
+
+ //
+ // Rule 16: literal ::= integer
+ //
+ case 16: { action.builder.
consumeExpressionLiteral(ICPPASTLiteralExpression.lk_integer_constant); break;
}
//
- // Rule 13: literal ::= 0
+ // Rule 17: literal ::= 0
//
- case 13: { action.builder.
+ case 17: { action.builder.
consumeExpressionLiteral(ICPPASTLiteralExpression.lk_integer_constant); break;
}
//
- // Rule 14: literal ::= floating
+ // Rule 18: literal ::= floating
//
- case 14: { action.builder.
+ case 18: { action.builder.
consumeExpressionLiteral(ICPPASTLiteralExpression.lk_float_constant); break;
}
//
- // Rule 15: literal ::= charconst
+ // Rule 19: literal ::= charconst
//
- case 15: { action.builder.
+ case 19: { action.builder.
consumeExpressionLiteral(ICPPASTLiteralExpression.lk_char_constant); break;
}
//
- // Rule 16: literal ::= stringlit
+ // Rule 20: literal ::= stringlit
//
- case 16: { action.builder.
+ case 20: { action.builder.
consumeExpressionLiteral(ICPPASTLiteralExpression.lk_string_literal); break;
}
//
- // Rule 17: literal ::= true
+ // Rule 21: literal ::= true
//
- case 17: { action.builder.
+ case 21: { action.builder.
consumeExpressionLiteral(ICPPASTLiteralExpression.lk_true); break;
}
//
- // Rule 18: literal ::= false
+ // Rule 22: literal ::= false
//
- case 18: { action.builder.
+ case 22: { action.builder.
consumeExpressionLiteral(ICPPASTLiteralExpression.lk_false); break;
}
//
- // Rule 19: literal ::= this
+ // Rule 23: literal ::= this
//
- case 19: { action.builder.
+ case 23: { action.builder.
consumeExpressionLiteral(ICPPASTLiteralExpression.lk_this); break;
}
//
- // Rule 21: primary_expression ::= ( expression )
+ // Rule 25: primary_expression ::= ( expression )
//
- case 21: { action.builder.
+ case 25: { action.builder.
consumeExpressionBracketed(); break;
}
//
- // Rule 23: id_expression ::= qualified_or_unqualified_name
+ // Rule 27: id_expression ::= qualified_or_unqualified_name
//
- case 23: { action.builder.
+ case 27: { action.builder.
consumeExpressionName(); break;
}
//
- // Rule 30: unqualified_id_name ::= ~ class_name
+ // Rule 34: unqualified_id_name ::= ~ class_name
//
- case 30: { action.builder.
+ case 34: { action.builder.
consumeDestructorName(); break;
}
//
- // Rule 31: identifier_name ::= identifier
+ // Rule 35: identifier_name ::= identifier
//
- case 31: { action.builder.
+ case 35: { action.builder.
consumeIdentifierName(); break;
}
//
- // Rule 32: template_opt ::= template
- //
- case 32: { action.builder.
- consumePlaceHolder(); break;
- }
-
- //
- // Rule 33: template_opt ::= $Empty
- //
- case 33: { action.builder.
- consumeEmpty(); break;
- }
-
- //
- // Rule 34: dcolon_opt ::= ::
- //
- case 34: { action.builder.
- consumePlaceHolder(); break;
- }
-
- //
- // Rule 35: dcolon_opt ::= $Empty
- //
- case 35: { action.builder.
- consumeEmpty(); break;
- }
-
- //
- // Rule 36: qualified_id_name ::= dcolon_opt nested_name_specifier template_opt unqualified_id_name
+ // Rule 36: template_opt ::= template
//
case 36: { action.builder.
+ consumePlaceHolder(); break;
+ }
+
+ //
+ // Rule 37: template_opt ::= $Empty
+ //
+ case 37: { action.builder.
+ consumeEmpty(); break;
+ }
+
+ //
+ // Rule 38: dcolon_opt ::= ::
+ //
+ case 38: { action.builder.
+ consumePlaceHolder(); break;
+ }
+
+ //
+ // Rule 39: dcolon_opt ::= $Empty
+ //
+ case 39: { action.builder.
+ consumeEmpty(); break;
+ }
+
+ //
+ // Rule 40: qualified_id_name ::= dcolon_opt nested_name_specifier template_opt unqualified_id_name
+ //
+ case 40: { action.builder.
consumeQualifiedId(true); break;
}
//
- // Rule 37: qualified_id_name ::= :: identifier_name
- //
- case 37: { action.builder.
- consumeGlobalQualifiedId(); break;
- }
-
- //
- // Rule 38: qualified_id_name ::= :: operator_function_id_name
- //
- case 38: { action.builder.
- consumeGlobalQualifiedId(); break;
- }
-
- //
- // Rule 39: qualified_id_name ::= :: template_id_name
- //
- case 39: { action.builder.
- consumeGlobalQualifiedId(); break;
- }
-
- //
- // Rule 40: nested_name_specifier ::= class_or_namespace_name :: nested_name_specifier_with_template
- //
- case 40: { action.builder.
- consumeNestedNameSpecifier(true); break;
- }
-
- //
- // Rule 41: nested_name_specifier ::= class_or_namespace_name ::
+ // Rule 41: qualified_id_name ::= :: identifier_name
//
case 41: { action.builder.
- consumeNestedNameSpecifier(false); break;
+ consumeGlobalQualifiedId(); break;
}
//
- // Rule 42: nested_name_specifier_with_template ::= class_or_namespace_name_with_template :: nested_name_specifier_with_template
+ // Rule 42: qualified_id_name ::= :: operator_function_id_name
//
case 42: { action.builder.
+ consumeGlobalQualifiedId(); break;
+ }
+
+ //
+ // Rule 43: qualified_id_name ::= :: template_id_name
+ //
+ case 43: { action.builder.
+ consumeGlobalQualifiedId(); break;
+ }
+
+ //
+ // Rule 44: nested_name_specifier ::= class_or_namespace_name :: nested_name_specifier_with_template
+ //
+ case 44: { action.builder.
consumeNestedNameSpecifier(true); break;
}
//
- // Rule 43: nested_name_specifier_with_template ::= class_or_namespace_name_with_template ::
+ // Rule 45: nested_name_specifier ::= class_or_namespace_name ::
//
- case 43: { action.builder.
+ case 45: { action.builder.
consumeNestedNameSpecifier(false); break;
}
//
- // Rule 44: class_or_namespace_name_with_template ::= template_opt class_or_namespace_name
+ // Rule 46: nested_name_specifier_with_template ::= class_or_namespace_name_with_template :: nested_name_specifier_with_template
//
- case 44: { action.builder.
+ case 46: { action.builder.
+ consumeNestedNameSpecifier(true); break;
+ }
+
+ //
+ // Rule 47: nested_name_specifier_with_template ::= class_or_namespace_name_with_template ::
+ //
+ case 47: { action.builder.
+ consumeNestedNameSpecifier(false); break;
+ }
+
+ //
+ // Rule 48: class_or_namespace_name_with_template ::= template_opt class_or_namespace_name
+ //
+ case 48: { action.builder.
consumeNameWithTemplateKeyword(); break;
}
//
- // Rule 46: nested_name_specifier_opt ::= $Empty
+ // Rule 50: nested_name_specifier_opt ::= $Empty
//
- case 46: { action.builder.
+ case 50: { action.builder.
consumeNestedNameSpecifierEmpty(); break;
}
//
- // Rule 50: postfix_expression ::= postfix_expression [ expression ]
+ // Rule 54: postfix_expression ::= postfix_expression [ expression ]
//
- case 50: { action.builder.
+ case 54: { action.builder.
consumeExpressionArraySubscript(); break;
}
//
- // Rule 51: postfix_expression ::= postfix_expression ( expression_list_opt )
+ // Rule 55: postfix_expression ::= postfix_expression ( expression_list_opt )
//
- case 51: { action.builder.
+ case 55: { action.builder.
consumeExpressionFunctionCall(); break;
}
//
- // Rule 52: postfix_expression ::= simple_type_specifier ( expression_list_opt )
+ // Rule 56: postfix_expression ::= simple_type_specifier ( expression_list_opt )
//
- case 52: { action.builder.
+ case 56: { action.builder.
consumeExpressionSimpleTypeConstructor(); break;
}
//
- // Rule 53: postfix_expression ::= typename dcolon_opt nested_name_specifier identifier_name ( expression_list_opt )
- //
- case 53: { action.builder.
- consumeExpressionTypeName(); break;
- }
-
- //
- // Rule 54: postfix_expression ::= typename dcolon_opt nested_name_specifier template_opt template_id_name ( expression_list_opt )
- //
- case 54: { action.builder.
- consumeExpressionTypeName(); break;
- }
-
- //
- // Rule 55: postfix_expression ::= postfix_expression . qualified_or_unqualified_name
- //
- case 55: { action.builder.
- consumeExpressionFieldReference(false, false); break;
- }
-
- //
- // Rule 56: postfix_expression ::= postfix_expression -> qualified_or_unqualified_name
- //
- case 56: { action.builder.
- consumeExpressionFieldReference(true, false); break;
- }
-
- //
- // Rule 57: postfix_expression ::= postfix_expression . template qualified_or_unqualified_name
+ // Rule 57: postfix_expression ::= typename dcolon_opt nested_name_specifier identifier_name ( expression_list_opt )
//
case 57: { action.builder.
- consumeExpressionFieldReference(false, true); break;
+ consumeExpressionTypeName(); break;
}
//
- // Rule 58: postfix_expression ::= postfix_expression -> template qualified_or_unqualified_name
+ // Rule 58: postfix_expression ::= typename dcolon_opt nested_name_specifier template_opt template_id_name ( expression_list_opt )
//
case 58: { action.builder.
- consumeExpressionFieldReference(true, true); break;
+ consumeExpressionTypeName(); break;
}
//
- // Rule 59: postfix_expression ::= postfix_expression . pseudo_destructor_name
+ // Rule 59: postfix_expression ::= postfix_expression . qualified_or_unqualified_name
//
case 59: { action.builder.
consumeExpressionFieldReference(false, false); break;
}
//
- // Rule 60: postfix_expression ::= postfix_expression -> pseudo_destructor_name
+ // Rule 60: postfix_expression ::= postfix_expression -> qualified_or_unqualified_name
//
case 60: { action.builder.
consumeExpressionFieldReference(true, false); break;
}
//
- // Rule 61: postfix_expression ::= postfix_expression ++
+ // Rule 61: postfix_expression ::= postfix_expression . template qualified_or_unqualified_name
//
case 61: { action.builder.
+ consumeExpressionFieldReference(false, true); break;
+ }
+
+ //
+ // Rule 62: postfix_expression ::= postfix_expression -> template qualified_or_unqualified_name
+ //
+ case 62: { action.builder.
+ consumeExpressionFieldReference(true, true); break;
+ }
+
+ //
+ // Rule 63: postfix_expression ::= postfix_expression . pseudo_destructor_name
+ //
+ case 63: { action.builder.
+ consumeExpressionFieldReference(false, false); break;
+ }
+
+ //
+ // Rule 64: postfix_expression ::= postfix_expression -> pseudo_destructor_name
+ //
+ case 64: { action.builder.
+ consumeExpressionFieldReference(true, false); break;
+ }
+
+ //
+ // Rule 65: postfix_expression ::= postfix_expression ++
+ //
+ case 65: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_postFixIncr); break;
}
//
- // Rule 62: postfix_expression ::= postfix_expression --
+ // Rule 66: postfix_expression ::= postfix_expression --
//
- case 62: { action.builder.
+ case 66: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_postFixDecr); break;
}
//
- // Rule 63: postfix_expression ::= dynamic_cast < type_id > ( expression )
+ // Rule 67: postfix_expression ::= dynamic_cast < type_id > ( expression )
//
- case 63: { action.builder.
+ case 67: { action.builder.
consumeExpressionCast(ICPPASTCastExpression.op_dynamic_cast); break;
}
//
- // Rule 64: postfix_expression ::= static_cast < type_id > ( expression )
+ // Rule 68: postfix_expression ::= static_cast < type_id > ( expression )
//
- case 64: { action.builder.
+ case 68: { action.builder.
consumeExpressionCast(ICPPASTCastExpression.op_static_cast); break;
}
//
- // Rule 65: postfix_expression ::= reinterpret_cast < type_id > ( expression )
+ // Rule 69: postfix_expression ::= reinterpret_cast < type_id > ( expression )
//
- case 65: { action.builder.
+ case 69: { action.builder.
consumeExpressionCast(ICPPASTCastExpression.op_reinterpret_cast); break;
}
//
- // Rule 66: postfix_expression ::= const_cast < type_id > ( expression )
+ // Rule 70: postfix_expression ::= const_cast < type_id > ( expression )
//
- case 66: { action.builder.
+ case 70: { action.builder.
consumeExpressionCast(ICPPASTCastExpression.op_const_cast); break;
}
//
- // Rule 67: postfix_expression ::= typeid ( expression )
+ // Rule 71: postfix_expression ::= typeid ( expression )
//
- case 67: { action.builder.
+ case 71: { action.builder.
consumeExpressionUnaryOperator(ICPPASTUnaryExpression.op_typeid); break;
}
//
- // Rule 68: postfix_expression ::= typeid ( type_id )
+ // Rule 72: postfix_expression ::= typeid ( type_id )
//
- case 68: { action.builder.
+ case 72: { action.builder.
consumeExpressionTypeId(ICPPASTTypeIdExpression.op_typeid); break;
}
//
- // Rule 69: pseudo_destructor_name ::= dcolon_opt nested_name_specifier_opt type_name :: ~ type_name
+ // Rule 73: pseudo_destructor_name ::= dcolon_opt nested_name_specifier_opt type_name :: ~ type_name
//
- case 69: { action.builder.
+ case 73: { action.builder.
consumePsudoDestructorName(true); break;
}
//
- // Rule 70: pseudo_destructor_name ::= dcolon_opt nested_name_specifier template template_id_name :: ~ type_name
+ // Rule 74: pseudo_destructor_name ::= dcolon_opt nested_name_specifier template template_id_name :: ~ type_name
//
- case 70: { action.builder.
+ case 74: { action.builder.
consumePsudoDestructorName(true); break;
}
//
- // Rule 71: pseudo_destructor_name ::= dcolon_opt nested_name_specifier_opt ~ type_name
+ // Rule 75: pseudo_destructor_name ::= dcolon_opt nested_name_specifier_opt ~ type_name
//
- case 71: { action.builder.
+ case 75: { action.builder.
consumePsudoDestructorName(false); break;
}
//
- // Rule 75: unary_expression ::= ++ cast_expression
+ // Rule 79: unary_expression ::= ++ cast_expression
//
- case 75: { action.builder.
+ case 79: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_prefixIncr); break;
}
//
- // Rule 76: unary_expression ::= -- cast_expression
+ // Rule 80: unary_expression ::= -- cast_expression
//
- case 76: { action.builder.
+ case 80: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_prefixDecr); break;
}
//
- // Rule 77: unary_expression ::= & cast_expression
+ // Rule 81: unary_expression ::= & cast_expression
//
- case 77: { action.builder.
+ case 81: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_amper); break;
}
//
- // Rule 78: unary_expression ::= * cast_expression
+ // Rule 82: unary_expression ::= * cast_expression
//
- case 78: { action.builder.
+ case 82: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_star); break;
}
//
- // Rule 79: unary_expression ::= + cast_expression
+ // Rule 83: unary_expression ::= + cast_expression
//
- case 79: { action.builder.
+ case 83: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_plus); break;
}
//
- // Rule 80: unary_expression ::= - cast_expression
+ // Rule 84: unary_expression ::= - cast_expression
//
- case 80: { action.builder.
+ case 84: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_minus); break;
}
//
- // Rule 81: unary_expression ::= ~ cast_expression
+ // Rule 85: unary_expression ::= ~ cast_expression
//
- case 81: { action.builder.
+ case 85: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_tilde); break;
}
//
- // Rule 82: unary_expression ::= ! cast_expression
+ // Rule 86: unary_expression ::= ! cast_expression
//
- case 82: { action.builder.
+ case 86: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_not); break;
}
//
- // Rule 83: unary_expression ::= sizeof unary_expression
+ // Rule 87: unary_expression ::= sizeof unary_expression
//
- case 83: { action.builder.
+ case 87: { action.builder.
consumeExpressionUnaryOperator(IASTUnaryExpression.op_sizeof); break;
}
//
- // Rule 84: unary_expression ::= sizeof ( type_id )
+ // Rule 88: unary_expression ::= sizeof ( type_id )
//
- case 84: { action.builder.
+ case 88: { action.builder.
consumeExpressionTypeId(ICPPASTTypeIdExpression.op_sizeof); break;
}
//
- // Rule 85: new_expression ::= dcolon_opt new new_placement_opt new_type_id new_array_expressions_opt new_initializer_opt
+ // Rule 89: new_expression ::= dcolon_opt new new_placement_opt new_type_id new_array_expressions_opt new_initializer_opt
//
- case 85: { action.builder.
+ case 89: { action.builder.
consumeExpressionNew(true); break;
}
//
- // Rule 86: new_expression ::= dcolon_opt new new_placement_opt ( type_id ) new_initializer_opt
+ // Rule 90: new_expression ::= dcolon_opt new new_placement_opt ( type_id ) new_initializer_opt
//
- case 86: { action.builder.
+ case 90: { action.builder.
consumeExpressionNew(false); break;
}
//
- // Rule 89: new_placement_opt ::= $Empty
+ // Rule 93: new_placement_opt ::= $Empty
//
- case 89: { action.builder.
+ case 93: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 90: new_type_id ::= type_specifier_seq
+ // Rule 94: new_type_id ::= type_specifier_seq
//
- case 90: { action.builder.
+ case 94: { action.builder.
consumeTypeId(false); break;
}
//
- // Rule 91: new_type_id ::= type_specifier_seq new_declarator
+ // Rule 95: new_type_id ::= type_specifier_seq new_declarator
//
- case 91: { action.builder.
+ case 95: { action.builder.
consumeTypeId(true); break;
}
//
- // Rule 92: new_declarator ::= new_pointer_operators
+ // Rule 96: new_declarator ::= new_pointer_operators
//
- case 92: { action.builder.
+ case 96: { action.builder.
consumeNewDeclarator(); break;
}
//
- // Rule 101: new_initializer_opt ::= $Empty
+ // Rule 105: new_initializer_opt ::= $Empty
//
- case 101: { action.builder.
+ case 105: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 102: delete_expression ::= dcolon_opt delete cast_expression
+ // Rule 106: delete_expression ::= dcolon_opt delete cast_expression
//
- case 102: { action.builder.
+ case 106: { action.builder.
consumeExpressionDelete(false); break;
}
//
- // Rule 103: delete_expression ::= dcolon_opt delete [ ] cast_expression
+ // Rule 107: delete_expression ::= dcolon_opt delete [ ] cast_expression
//
- case 103: { action.builder.
+ case 107: { action.builder.
consumeExpressionDelete(true); break;
}
//
- // Rule 105: cast_expression ::= ( type_id ) cast_expression
+ // Rule 109: cast_expression ::= ( type_id ) cast_expression
//
- case 105: { action.builder.
+ case 109: { action.builder.
consumeExpressionCast(ICPPASTCastExpression.op_cast); break;
}
//
- // Rule 107: pm_expression ::= pm_expression .* cast_expression
+ // Rule 111: pm_expression ::= pm_expression .* cast_expression
//
- case 107: { action.builder.
+ case 111: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_pmdot); break;
}
//
- // Rule 108: pm_expression ::= pm_expression ->* cast_expression
+ // Rule 112: pm_expression ::= pm_expression ->* cast_expression
//
- case 108: { action.builder.
+ case 112: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_pmarrow); break;
}
//
- // Rule 110: multiplicative_expression ::= multiplicative_expression * pm_expression
+ // Rule 114: multiplicative_expression ::= multiplicative_expression * pm_expression
//
- case 110: { action.builder.
+ case 114: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_multiply); break;
}
//
- // Rule 111: multiplicative_expression ::= multiplicative_expression / pm_expression
+ // Rule 115: multiplicative_expression ::= multiplicative_expression / pm_expression
//
- case 111: { action.builder.
+ case 115: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_divide); break;
}
//
- // Rule 112: multiplicative_expression ::= multiplicative_expression % pm_expression
+ // Rule 116: multiplicative_expression ::= multiplicative_expression % pm_expression
//
- case 112: { action.builder.
+ case 116: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_modulo); break;
}
//
- // Rule 114: additive_expression ::= additive_expression + multiplicative_expression
+ // Rule 118: additive_expression ::= additive_expression + multiplicative_expression
//
- case 114: { action.builder.
+ case 118: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_plus); break;
}
//
- // Rule 115: additive_expression ::= additive_expression - multiplicative_expression
+ // Rule 119: additive_expression ::= additive_expression - multiplicative_expression
//
- case 115: { action.builder.
+ case 119: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_minus); break;
}
//
- // Rule 117: shift_expression ::= shift_expression << additive_expression
+ // Rule 121: shift_expression ::= shift_expression << additive_expression
//
- case 117: { action.builder.
+ case 121: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_shiftLeft); break;
}
//
- // Rule 118: shift_expression ::= shift_expression >> additive_expression
+ // Rule 122: shift_expression ::= shift_expression >> additive_expression
//
- case 118: { action.builder.
+ case 122: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_shiftRight); break;
}
//
- // Rule 120: relational_expression ::= relational_expression < shift_expression
+ // Rule 124: relational_expression ::= relational_expression < shift_expression
//
- case 120: { action.builder.
+ case 124: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_lessThan); break;
}
//
- // Rule 121: relational_expression ::= relational_expression > shift_expression
+ // Rule 125: relational_expression ::= relational_expression > shift_expression
//
- case 121: { action.builder.
+ case 125: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_greaterThan); break;
}
//
- // Rule 122: relational_expression ::= relational_expression <= shift_expression
+ // Rule 126: relational_expression ::= relational_expression <= shift_expression
//
- case 122: { action.builder.
+ case 126: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_lessEqual); break;
}
//
- // Rule 123: relational_expression ::= relational_expression >= shift_expression
+ // Rule 127: relational_expression ::= relational_expression >= shift_expression
//
- case 123: { action.builder.
+ case 127: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_greaterEqual); break;
}
//
- // Rule 125: equality_expression ::= equality_expression == relational_expression
+ // Rule 129: equality_expression ::= equality_expression == relational_expression
//
- case 125: { action.builder.
+ case 129: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_equals); break;
}
//
- // Rule 126: equality_expression ::= equality_expression != relational_expression
+ // Rule 130: equality_expression ::= equality_expression != relational_expression
//
- case 126: { action.builder.
+ case 130: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_notequals); break;
}
//
- // Rule 128: and_expression ::= and_expression & equality_expression
+ // Rule 132: and_expression ::= and_expression & equality_expression
//
- case 128: { action.builder.
+ case 132: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryAnd); break;
}
//
- // Rule 130: exclusive_or_expression ::= exclusive_or_expression ^ and_expression
+ // Rule 134: exclusive_or_expression ::= exclusive_or_expression ^ and_expression
//
- case 130: { action.builder.
+ case 134: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryXor); break;
}
//
- // Rule 132: inclusive_or_expression ::= inclusive_or_expression | exclusive_or_expression
+ // Rule 136: inclusive_or_expression ::= inclusive_or_expression | exclusive_or_expression
//
- case 132: { action.builder.
+ case 136: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryOr); break;
}
//
- // Rule 134: logical_and_expression ::= logical_and_expression && inclusive_or_expression
+ // Rule 138: logical_and_expression ::= logical_and_expression && inclusive_or_expression
//
- case 134: { action.builder.
+ case 138: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_logicalAnd); break;
}
//
- // Rule 136: logical_or_expression ::= logical_or_expression || logical_and_expression
+ // Rule 140: logical_or_expression ::= logical_or_expression || logical_and_expression
//
- case 136: { action.builder.
+ case 140: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_logicalOr); break;
}
//
- // Rule 138: conditional_expression ::= logical_or_expression ? expression : assignment_expression
+ // Rule 142: conditional_expression ::= logical_or_expression ? expression : assignment_expression
//
- case 138: { action.builder.
+ case 142: { action.builder.
consumeExpressionConditional(); break;
}
//
- // Rule 139: throw_expression ::= throw
+ // Rule 143: throw_expression ::= throw
//
- case 139: { action.builder.
+ case 143: { action.builder.
consumeExpressionThrow(false); break;
}
//
- // Rule 140: throw_expression ::= throw assignment_expression
+ // Rule 144: throw_expression ::= throw assignment_expression
//
- case 140: { action.builder.
+ case 144: { action.builder.
consumeExpressionThrow(true); break;
}
//
- // Rule 143: assignment_expression ::= logical_or_expression = assignment_expression
+ // Rule 147: assignment_expression ::= logical_or_expression = assignment_expression
//
- case 143: { action.builder.
+ case 147: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_assign); break;
}
//
- // Rule 144: assignment_expression ::= logical_or_expression *= assignment_expression
+ // Rule 148: assignment_expression ::= logical_or_expression *= assignment_expression
//
- case 144: { action.builder.
+ case 148: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_multiplyAssign); break;
}
//
- // Rule 145: assignment_expression ::= logical_or_expression /= assignment_expression
+ // Rule 149: assignment_expression ::= logical_or_expression /= assignment_expression
//
- case 145: { action.builder.
+ case 149: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_divideAssign); break;
}
//
- // Rule 146: assignment_expression ::= logical_or_expression %= assignment_expression
+ // Rule 150: assignment_expression ::= logical_or_expression %= assignment_expression
//
- case 146: { action.builder.
+ case 150: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_moduloAssign); break;
}
//
- // Rule 147: assignment_expression ::= logical_or_expression += assignment_expression
+ // Rule 151: assignment_expression ::= logical_or_expression += assignment_expression
//
- case 147: { action.builder.
+ case 151: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_plusAssign); break;
}
//
- // Rule 148: assignment_expression ::= logical_or_expression -= assignment_expression
+ // Rule 152: assignment_expression ::= logical_or_expression -= assignment_expression
//
- case 148: { action.builder.
+ case 152: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_minusAssign); break;
}
//
- // Rule 149: assignment_expression ::= logical_or_expression >>= assignment_expression
+ // Rule 153: assignment_expression ::= logical_or_expression >>= assignment_expression
//
- case 149: { action.builder.
+ case 153: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_shiftRightAssign); break;
}
//
- // Rule 150: assignment_expression ::= logical_or_expression <<= assignment_expression
+ // Rule 154: assignment_expression ::= logical_or_expression <<= assignment_expression
//
- case 150: { action.builder.
+ case 154: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_shiftLeftAssign); break;
}
//
- // Rule 151: assignment_expression ::= logical_or_expression &= assignment_expression
+ // Rule 155: assignment_expression ::= logical_or_expression &= assignment_expression
//
- case 151: { action.builder.
+ case 155: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryAndAssign); break;
}
//
- // Rule 152: assignment_expression ::= logical_or_expression ^= assignment_expression
+ // Rule 156: assignment_expression ::= logical_or_expression ^= assignment_expression
//
- case 152: { action.builder.
+ case 156: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryXorAssign); break;
}
//
- // Rule 153: assignment_expression ::= logical_or_expression |= assignment_expression
+ // Rule 157: assignment_expression ::= logical_or_expression |= assignment_expression
//
- case 153: { action.builder.
+ case 157: { action.builder.
consumeExpressionBinaryOperator(ICPPASTBinaryExpression.op_binaryOrAssign); break;
}
//
- // Rule 155: expression ::= ERROR_TOKEN
+ // Rule 159: expression ::= ERROR_TOKEN
//
- case 155: { action.builder.
+ case 159: { action.builder.
consumeExpressionProblem(); break;
}
//
- // Rule 156: expression_list ::= expression_list_actual
+ // Rule 160: expression_list ::= expression_list_actual
//
- case 156: { action.builder.
+ case 160: { action.builder.
consumeExpressionList(); break;
}
//
- // Rule 160: expression_list_opt ::= $Empty
+ // Rule 164: expression_list_opt ::= $Empty
//
- case 160: { action.builder.
+ case 164: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 162: expression_opt ::= $Empty
+ // Rule 166: expression_opt ::= $Empty
//
- case 162: { action.builder.
+ case 166: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 165: constant_expression_opt ::= $Empty
+ // Rule 169: constant_expression_opt ::= $Empty
//
- case 165: { action.builder.
+ case 169: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 174: statement ::= ERROR_TOKEN
+ // Rule 178: statement ::= ERROR_TOKEN
//
- case 174: { action.builder.
+ case 178: { action.builder.
consumeStatementProblem(); break;
}
//
- // Rule 175: labeled_statement ::= identifier : statement
+ // Rule 179: labeled_statement ::= identifier : statement
//
- case 175: { action.builder.
+ case 179: { action.builder.
consumeStatementLabeled(); break;
}
//
- // Rule 176: labeled_statement ::= case constant_expression :
+ // Rule 180: labeled_statement ::= case constant_expression :
//
- case 176: { action.builder.
+ case 180: { action.builder.
consumeStatementCase(); break;
}
//
- // Rule 177: labeled_statement ::= default :
+ // Rule 181: labeled_statement ::= default :
//
- case 177: { action.builder.
+ case 181: { action.builder.
consumeStatementDefault(); break;
}
//
- // Rule 178: expression_statement ::= expression ;
+ // Rule 182: expression_statement ::= expression ;
//
- case 178: { action.builder.
+ case 182: { action.builder.
consumeStatementExpression(); break;
}
//
- // Rule 179: expression_statement ::= ;
+ // Rule 183: expression_statement ::= ;
//
- case 179: { action.builder.
+ case 183: { action.builder.
consumeStatementNull(); break;
}
//
- // Rule 180: compound_statement ::= { statement_seq }
+ // Rule 184: compound_statement ::= { statement_seq }
//
- case 180: { action.builder.
+ case 184: { action.builder.
consumeStatementCompoundStatement(true); break;
}
//
- // Rule 181: compound_statement ::= { }
+ // Rule 185: compound_statement ::= { }
//
- case 181: { action.builder.
+ case 185: { action.builder.
consumeStatementCompoundStatement(false); break;
}
//
- // Rule 184: selection_statement ::= if ( condition ) statement
+ // Rule 188: selection_statement ::= if ( condition ) statement
//
- case 184: { action.builder.
+ case 188: { action.builder.
consumeStatementIf(false); break;
}
//
- // Rule 185: selection_statement ::= if ( condition ) statement else statement
+ // Rule 189: selection_statement ::= if ( condition ) statement else statement
//
- case 185: { action.builder.
+ case 189: { action.builder.
consumeStatementIf(true); break;
}
//
- // Rule 186: selection_statement ::= switch ( condition ) statement
+ // Rule 190: selection_statement ::= switch ( condition ) statement
//
- case 186: { action.builder.
+ case 190: { action.builder.
consumeStatementSwitch(); break;
}
//
- // Rule 188: condition ::= type_specifier_seq declarator = assignment_expression
+ // Rule 192: condition ::= type_specifier_seq declarator = assignment_expression
//
- case 188: { action.builder.
+ case 192: { action.builder.
consumeConditionDeclaration(); break;
}
//
- // Rule 189: iteration_statement ::= while ( condition ) statement
+ // Rule 193: iteration_statement ::= while ( condition ) statement
//
- case 189: { action.builder.
+ case 193: { action.builder.
consumeStatementWhileLoop(); break;
}
//
- // Rule 190: iteration_statement ::= do statement while ( expression ) ;
+ // Rule 194: iteration_statement ::= do statement while ( expression ) ;
//
- case 190: { action.builder.
+ case 194: { action.builder.
consumeStatementDoLoop(); break;
}
//
- // Rule 191: iteration_statement ::= for ( expression_opt ; expression_opt ; expression_opt ) statement
+ // Rule 195: iteration_statement ::= for ( expression_opt ; expression_opt ; expression_opt ) statement
//
- case 191: { action.builder.
+ case 195: { action.builder.
consumeStatementForLoop(); break;
}
//
- // Rule 192: iteration_statement ::= for ( simple_declaration expression_opt ; expression_opt ) statement
+ // Rule 196: iteration_statement ::= for ( simple_declaration expression_opt ; expression_opt ) statement
//
- case 192: { action.builder.
+ case 196: { action.builder.
consumeStatementForLoop(); break;
}
//
- // Rule 193: jump_statement ::= break ;
+ // Rule 197: jump_statement ::= break ;
//
- case 193: { action.builder.
+ case 197: { action.builder.
consumeStatementBreak(); break;
}
//
- // Rule 194: jump_statement ::= continue ;
+ // Rule 198: jump_statement ::= continue ;
//
- case 194: { action.builder.
+ case 198: { action.builder.
consumeStatementContinue(); break;
}
//
- // Rule 195: jump_statement ::= return expression ;
+ // Rule 199: jump_statement ::= return expression ;
//
- case 195: { action.builder.
+ case 199: { action.builder.
consumeStatementReturn(true); break;
}
//
- // Rule 196: jump_statement ::= return ;
+ // Rule 200: jump_statement ::= return ;
//
- case 196: { action.builder.
+ case 200: { action.builder.
consumeStatementReturn(false); break;
}
//
- // Rule 197: jump_statement ::= goto identifier ;
+ // Rule 201: jump_statement ::= goto identifier ;
//
- case 197: { action.builder.
+ case 201: { action.builder.
consumeStatementGoto(); break;
}
//
- // Rule 198: declaration_statement ::= block_declaration
+ // Rule 202: declaration_statement ::= block_declaration
//
- case 198: { action.builder.
+ case 202: { action.builder.
consumeStatementDeclaration(); break;
}
//
- // Rule 215: simple_declaration ::= declaration_specifiers_opt init_declarator_list_opt ;
+ // Rule 219: simple_declaration ::= declaration_specifiers_opt init_declarator_list_opt ;
//
- case 215: { action.builder.
+ case 219: { action.builder.
consumeDeclarationSimple(true); break;
}
//
- // Rule 216: declaration_specifiers ::= simple_declaration_specifiers
+ // Rule 220: declaration_specifiers ::= simple_declaration_specifiers
//
- case 216: { action.builder.
+ case 220: { action.builder.
consumeDeclarationSpecifiersSimple(); break;
}
//
- // Rule 217: declaration_specifiers ::= class_declaration_specifiers
+ // Rule 221: declaration_specifiers ::= class_declaration_specifiers
//
- case 217: { action.builder.
+ case 221: { action.builder.
consumeDeclarationSpecifiersComposite(); break;
}
//
- // Rule 218: declaration_specifiers ::= elaborated_declaration_specifiers
+ // Rule 222: declaration_specifiers ::= elaborated_declaration_specifiers
//
- case 218: { action.builder.
+ case 222: { action.builder.
consumeDeclarationSpecifiersComposite(); break;
}
//
- // Rule 219: declaration_specifiers ::= enum_declaration_specifiers
+ // Rule 223: declaration_specifiers ::= enum_declaration_specifiers
//
- case 219: { action.builder.
+ case 223: { action.builder.
consumeDeclarationSpecifiersComposite(); break;
}
//
- // Rule 220: declaration_specifiers ::= type_name_declaration_specifiers
+ // Rule 224: declaration_specifiers ::= type_name_declaration_specifiers
//
- case 220: { action.builder.
+ case 224: { action.builder.
consumeDeclarationSpecifiersTypeName(); break;
}
//
- // Rule 222: declaration_specifiers_opt ::= $Empty
+ // Rule 226: declaration_specifiers_opt ::= $Empty
//
- case 222: { action.builder.
+ case 226: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 226: no_type_declaration_specifier ::= friend
+ // Rule 230: no_type_declaration_specifier ::= friend
//
- case 226: { action.builder.
+ case 230: { action.builder.
consumeDeclSpecToken(); break;
}
//
- // Rule 227: no_type_declaration_specifier ::= typedef
+ // Rule 231: no_type_declaration_specifier ::= typedef
//
- case 227: { action.builder.
+ case 231: { action.builder.
consumeDeclSpecToken(); break;
}
//
- // Rule 255: simple_type_specifier ::= simple_type_specifier_token
+ // Rule 259: simple_type_specifier ::= simple_type_specifier_token
//
- case 255: { action.builder.
+ case 259: { action.builder.
consumeDeclSpecToken(); break;
}
//
- // Rule 271: type_name_specifier ::= dcolon_opt nested_name_specifier_opt type_name
+ // Rule 275: type_name_specifier ::= dcolon_opt nested_name_specifier_opt type_name
//
- case 271: { action.builder.
+ case 275: { action.builder.
consumeQualifiedId(false); break;
}
//
- // Rule 272: type_name_specifier ::= dcolon_opt nested_name_specifier template template_id_name
+ // Rule 276: type_name_specifier ::= dcolon_opt nested_name_specifier template template_id_name
//
- case 272: { action.builder.
+ case 276: { action.builder.
consumeQualifiedId(false); break;
}
//
- // Rule 273: type_name_specifier ::= typename dcolon_opt nested_name_specifier identifier_name
+ // Rule 277: type_name_specifier ::= typename dcolon_opt nested_name_specifier identifier_name
//
- case 273: { action.builder.
+ case 277: { action.builder.
consumeQualifiedId(false); break;
}
//
- // Rule 274: type_name_specifier ::= typename dcolon_opt nested_name_specifier template_opt template_id_name
+ // Rule 278: type_name_specifier ::= typename dcolon_opt nested_name_specifier template_opt template_id_name
//
- case 274: { action.builder.
+ case 278: { action.builder.
consumeQualifiedId(true); break;
}
//
- // Rule 275: elaborated_type_specifier ::= class_keyword dcolon_opt nested_name_specifier_opt identifier_name
+ // Rule 279: elaborated_type_specifier ::= class_keyword dcolon_opt nested_name_specifier_opt identifier_name
//
- case 275: { action.builder.
+ case 279: { action.builder.
consumeTypeSpecifierElaborated(false); break;
}
//
- // Rule 276: elaborated_type_specifier ::= class_keyword dcolon_opt nested_name_specifier_opt template_opt template_id_name
+ // Rule 280: elaborated_type_specifier ::= class_keyword dcolon_opt nested_name_specifier_opt template_opt template_id_name
//
- case 276: { action.builder.
+ case 280: { action.builder.
consumeTypeSpecifierElaborated(true); break;
}
//
- // Rule 277: elaborated_type_specifier ::= enum dcolon_opt nested_name_specifier_opt identifier_name
+ // Rule 281: elaborated_type_specifier ::= enum dcolon_opt nested_name_specifier_opt identifier_name
//
- case 277: { action.builder.
+ case 281: { action.builder.
consumeTypeSpecifierElaborated(false); break;
}
//
- // Rule 279: enum_specifier ::= enum { enumerator_list_opt }
+ // Rule 283: enum_specifier ::= enum { enumerator_list_opt }
//
- case 279: { action.builder.
+ case 283: { action.builder.
consumeTypeSpecifierEnumeration(false); break;
}
//
- // Rule 280: enum_specifier ::= enum identifier { enumerator_list_opt }
+ // Rule 284: enum_specifier ::= enum identifier { enumerator_list_opt }
//
- case 280: { action.builder.
+ case 284: { action.builder.
consumeTypeSpecifierEnumeration(true); break;
}
//
- // Rule 285: enumerator_definition ::= enumerator
+ // Rule 289: enumerator_definition ::= enumerator
//
- case 285: { action.builder.
+ case 289: { action.builder.
consumeEnumerator(false); break;
}
//
- // Rule 286: enumerator_definition ::= enumerator = constant_expression
+ // Rule 290: enumerator_definition ::= enumerator = constant_expression
//
- case 286: { action.builder.
+ case 290: { action.builder.
consumeEnumerator(true); break;
}
//
- // Rule 295: original_namespace_definition ::= namespace identifier_name { declaration_seq_opt }
+ // Rule 299: original_namespace_definition ::= namespace identifier_name { declaration_seq_opt }
//
- case 295: { action.builder.
+ case 299: { action.builder.
consumeNamespaceDefinition(true); break;
}
//
- // Rule 296: extension_namespace_definition ::= namespace original_namespace_name { declaration_seq_opt }
+ // Rule 300: extension_namespace_definition ::= namespace original_namespace_name { declaration_seq_opt }
//
- case 296: { action.builder.
+ case 300: { action.builder.
consumeNamespaceDefinition(true); break;
}
//
- // Rule 297: unnamed_namespace_definition ::= namespace { declaration_seq_opt }
+ // Rule 301: unnamed_namespace_definition ::= namespace { declaration_seq_opt }
//
- case 297: { action.builder.
+ case 301: { action.builder.
consumeNamespaceDefinition(false); break;
}
//
- // Rule 299: namespace_alias_definition ::= namespace identifier = dcolon_opt nested_name_specifier_opt namespace_name ;
+ // Rule 303: namespace_alias_definition ::= namespace identifier = dcolon_opt nested_name_specifier_opt namespace_name ;
//
- case 299: { action.builder.
+ case 303: { action.builder.
consumeNamespaceAliasDefinition(); break;
}
//
- // Rule 300: using_declaration ::= using typename_opt dcolon_opt nested_name_specifier_opt unqualified_id_name ;
+ // Rule 304: using_declaration ::= using typename_opt dcolon_opt nested_name_specifier_opt unqualified_id_name ;
//
- case 300: { action.builder.
+ case 304: { action.builder.
consumeUsingDeclaration(); break;
}
//
- // Rule 301: typename_opt ::= typename
+ // Rule 305: typename_opt ::= typename
//
- case 301: { action.builder.
+ case 305: { action.builder.
consumePlaceHolder(); break;
}
//
- // Rule 302: typename_opt ::= $Empty
+ // Rule 306: typename_opt ::= $Empty
//
- case 302: { action.builder.
+ case 306: { action.builder.
consumeEmpty(); break;
}
//
- // Rule 303: using_directive ::= using namespace dcolon_opt nested_name_specifier_opt namespace_name ;
+ // Rule 307: using_directive ::= using namespace dcolon_opt nested_name_specifier_opt namespace_name ;
//
- case 303: { action.builder.
+ case 307: { action.builder.
consumeUsingDirective(); break;
}
//
- // Rule 304: asm_definition ::= asm ( stringlit ) ;
+ // Rule 308: asm_definition ::= asm ( stringlit ) ;
//
- case 304: { action.builder.
+ case 308: { action.builder.
consumeDeclarationASM(); break;
}
//
- // Rule 305: linkage_specification ::= extern stringlit { declaration_seq_opt }
+ // Rule 309: linkage_specification ::= extern stringlit { declaration_seq_opt }
//
- case 305: { action.builder.
+ case 309: { action.builder.
consumeLinkageSpecification(); break;
}
//
- // Rule 306: linkage_specification ::= extern stringlit declaration
+ // Rule 310: linkage_specification ::= extern stringlit declaration
//
- case 306: { action.builder.
+ case 310: { action.builder.
consumeLinkageSpecification(); break;
}
//
- // Rule 312: init_declarator ::= declarator initializer
+ // Rule 316: init_declarator ::= declarator initializer
//
- case 312: { action.builder.
+ case 316: { action.builder.
consumeDeclaratorWithInitializer(true); break;
}
//
- // Rule 314: declarator ::= ptr_operator_seq direct_declarator
+ // Rule 318: declarator ::= ptr_operator_seq direct_declarator
//
- case 314: { action.builder.
+ case 318: { action.builder.
consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 318: basic_direct_declarator ::= declarator_id_name
+ // Rule 322: basic_direct_declarator ::= declarator_id_name
//
- case 318: { action.builder.
+ case 322: { action.builder.
consumeDirectDeclaratorIdentifier(); break;
}
//
- // Rule 319: basic_direct_declarator ::= ( declarator )
+ // Rule 323: basic_direct_declarator ::= ( declarator )
//
- case 319: { action.builder.
+ case 323: { action.builder.
consumeDirectDeclaratorBracketed(); break;
}
//
- // Rule 320: function_direct_declarator ::= basic_direct_declarator ( parameter_declaration_clause ) cv_qualifier_seq_opt exception_specification_opt
+ // Rule 324: function_direct_declarator ::= basic_direct_declarator ( parameter_declaration_clause ) cv_qualifier_seq_opt exception_specification_opt
//
- case 320: { action.builder.
+ case 324: { action.builder.
consumeDirectDeclaratorFunctionDeclarator(true); break;
}
//
- // Rule 321: array_direct_declarator ::= array_direct_declarator array_modifier
+ // Rule 325: array_direct_declarator ::= array_direct_declarator array_modifier
//
- case 321: { action.builder.
+ case 325: { action.builder.
consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 322: array_direct_declarator ::= basic_direct_declarator array_modifier
+ // Rule 326: array_direct_declarator ::= basic_direct_declarator array_modifier
//
- case 322: { action.builder.
+ case 326: { action.builder.
consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 323: array_modifier ::= [ constant_expression ]
+ // Rule 327: array_modifier ::= [ constant_expression ]
//
- case 323: { action.builder.
+ case 327: { action.builder.
consumeDirectDeclaratorArrayModifier(true); break;
}
//
- // Rule 324: array_modifier ::= [ ]
+ // Rule 328: array_modifier ::= [ ]
//
- case 324: { action.builder.
+ case 328: { action.builder.
consumeDirectDeclaratorArrayModifier(false); break;
}
//
- // Rule 325: ptr_operator ::= * cv_qualifier_seq_opt
+ // Rule 329: ptr_operator ::= * cv_qualifier_seq_opt
//
- case 325: { action.builder.
+ case 329: { action.builder.
consumePointer(); break;
}
//
- // Rule 326: ptr_operator ::= &
+ // Rule 330: ptr_operator ::= &
//
- case 326: { action.builder.
+ case 330: { action.builder.
consumeReferenceOperator(); break;
}
//
- // Rule 327: ptr_operator ::= dcolon_opt nested_name_specifier * cv_qualifier_seq_opt
+ // Rule 331: ptr_operator ::= dcolon_opt nested_name_specifier * cv_qualifier_seq_opt
//
- case 327: { action.builder.
+ case 331: { action.builder.
consumePointerToMember(); break;
}
//
- // Rule 333: cv_qualifier ::= const
+ // Rule 337: cv_qualifier ::= const
//
- case 333: { action.builder.
+ case 337: { action.builder.
consumeDeclSpecToken(); break;
}
//
- // Rule 334: cv_qualifier ::= volatile
+ // Rule 338: cv_qualifier ::= volatile
//
- case 334: { action.builder.
+ case 338: { action.builder.
consumeDeclSpecToken(); break;
}
//
- // Rule 336: declarator_id_name ::= dcolon_opt nested_name_specifier_opt type_name
+ // Rule 340: declarator_id_name ::= dcolon_opt nested_name_specifier_opt type_name
//
- case 336: { action.builder.
+ case 340: { action.builder.
consumeQualifiedId(false); break;
}
//
- // Rule 337: type_id ::= type_specifier_seq
+ // Rule 341: type_id ::= type_specifier_seq
//
- case 337: { action.builder.
+ case 341: { action.builder.
consumeTypeId(false); break;
}
//
- // Rule 338: type_id ::= type_specifier_seq abstract_declarator
+ // Rule 342: type_id ::= type_specifier_seq abstract_declarator
//
- case 338: { action.builder.
+ case 342: { action.builder.
consumeTypeId(true); break;
}
//
- // Rule 341: abstract_declarator ::=