From ba9a7cbcfd9efa25ff92cc8ebce98cc960757767 Mon Sep 17 00:00:00 2001 From: Mike Kucera Date: Wed, 1 Apr 2009 15:03:01 +0000 Subject: [PATCH] added support for nested functions GNU extension to LR parser, added tests suites --- .../tests/LRCPPImplicitNameTests.java | 53 + .../tests/LRDigraphTrigraphTests.java | 2 +- .../LRGCCCompleteParseExtensionsTest.java | 51 + .../lrparser/tests/LRInactiveCodeTests.java | 53 + .../lrparser/tests/LRParserTestSuite.java | 3 + .../cdt/core/lrparser/tests/LRTests.java | 10 + .../grammar/c99/C99Grammar.g | 8 +- .../grammar/gcc/GCCGrammar.g | 6 + .../org.eclipse.cdt.core.lrparser/plugin.xml | 17 - .../dom/lrparser/c99/C99ExpressionParser.java | 92 +- .../lrparser/c99/C99ExpressionParserprs.java | 1266 +++++---- .../lrparser/c99/C99ExpressionParsersym.java | 28 +- .../c99/C99NoCastExpressionParser.java | 92 +- .../c99/C99NoCastExpressionParserprs.java | 1254 +++++---- .../c99/C99NoCastExpressionParsersym.java | 50 +- .../core/dom/lrparser/c99/C99Parser.java | 84 +- .../core/dom/lrparser/c99/C99Parserprs.java | 1702 ++++++------ .../c99/C99SizeofExpressionParser.java | 92 +- .../c99/C99SizeofExpressionParserprs.java | 1237 ++++----- .../c99/C99SizeofExpressionParsersym.java | 18 +- .../core/dom/lrparser/gcc/GCCParser.java | 98 +- .../core/dom/lrparser/gcc/GCCParserprs.java | 2412 ++++++++-------- .../gcc/GCCSizeofExpressionParser.java | 94 +- .../gcc/GCCSizeofExpressionParserprs.java | 2471 +++++++++-------- .../gcc/GCCSizeofExpressionParsersym.java | 50 +- .../plugin.xml | 3 - 26 files changed, 5728 insertions(+), 5518 deletions(-) create mode 100644 lrparser/org.eclipse.cdt.core.lrparser.tests/src/org/eclipse/cdt/core/lrparser/tests/LRCPPImplicitNameTests.java create mode 100644 lrparser/org.eclipse.cdt.core.lrparser.tests/src/org/eclipse/cdt/core/lrparser/tests/LRGCCCompleteParseExtensionsTest.java create mode 100644 lrparser/org.eclipse.cdt.core.lrparser.tests/src/org/eclipse/cdt/core/lrparser/tests/LRInactiveCodeTests.java diff --git a/lrparser/org.eclipse.cdt.core.lrparser.tests/src/org/eclipse/cdt/core/lrparser/tests/LRCPPImplicitNameTests.java b/lrparser/org.eclipse.cdt.core.lrparser.tests/src/org/eclipse/cdt/core/lrparser/tests/LRCPPImplicitNameTests.java new file mode 100644 index 00000000000..613f2bd7c5d --- /dev/null +++ b/lrparser/org.eclipse.cdt.core.lrparser.tests/src/org/eclipse/cdt/core/lrparser/tests/LRCPPImplicitNameTests.java @@ -0,0 +1,53 @@ +/******************************************************************************* + * Copyright (c) 2009 IBM Corporation and others. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * IBM Corporation - initial API and implementation + *******************************************************************************/ +package org.eclipse.cdt.core.lrparser.tests; + +import junit.framework.TestSuite; + +import org.eclipse.cdt.core.dom.ast.IASTTranslationUnit; +import org.eclipse.cdt.core.dom.lrparser.gnu.GCCLanguage; +import org.eclipse.cdt.core.dom.lrparser.gnu.GPPLanguage; +import org.eclipse.cdt.core.model.ILanguage; +import org.eclipse.cdt.core.parser.ParserLanguage; +import org.eclipse.cdt.core.parser.tests.ast2.AST2CPPImplicitNameTests; + +public class LRCPPImplicitNameTests extends AST2CPPImplicitNameTests { + + public static TestSuite suite() { + return suite(LRCPPImplicitNameTests.class); + } + + public LRCPPImplicitNameTests() { + } + + public LRCPPImplicitNameTests(String name) { + super(name); + } + + + @Override + protected IASTTranslationUnit parse( String code, ParserLanguage lang, @SuppressWarnings("unused") boolean useGNUExtensions, boolean expectNoProblems, boolean skipTrivialInitializers) { + ILanguage language = lang.isCPP() ? getCPPLanguage() : getCLanguage(); + ParseHelper.Options options = new ParseHelper.Options(); + options.setCheckSyntaxProblems(expectNoProblems); + options.setCheckPreprocessorProblems(expectNoProblems); + options.setSkipTrivialInitializers(skipTrivialInitializers); + return ParseHelper.parse(code, language, options); + } + + protected ILanguage getCLanguage() { + return GCCLanguage.getDefault(); + } + + protected ILanguage getCPPLanguage() { + return GPPLanguage.getDefault(); + } +} diff --git a/lrparser/org.eclipse.cdt.core.lrparser.tests/src/org/eclipse/cdt/core/lrparser/tests/LRDigraphTrigraphTests.java b/lrparser/org.eclipse.cdt.core.lrparser.tests/src/org/eclipse/cdt/core/lrparser/tests/LRDigraphTrigraphTests.java index 54bec0941be..272d9ee97fb 100644 --- a/lrparser/org.eclipse.cdt.core.lrparser.tests/src/org/eclipse/cdt/core/lrparser/tests/LRDigraphTrigraphTests.java +++ b/lrparser/org.eclipse.cdt.core.lrparser.tests/src/org/eclipse/cdt/core/lrparser/tests/LRDigraphTrigraphTests.java @@ -43,7 +43,7 @@ import org.eclipse.cdt.core.model.ILanguage; public class LRDigraphTrigraphTests extends TestCase { public static TestSuite suite() { - return new TestSuite(LRCSpecTests.class); + return new TestSuite(LRDigraphTrigraphTests.class); } diff --git a/lrparser/org.eclipse.cdt.core.lrparser.tests/src/org/eclipse/cdt/core/lrparser/tests/LRGCCCompleteParseExtensionsTest.java b/lrparser/org.eclipse.cdt.core.lrparser.tests/src/org/eclipse/cdt/core/lrparser/tests/LRGCCCompleteParseExtensionsTest.java new file mode 100644 index 00000000000..71a43559c0c --- /dev/null +++ b/lrparser/org.eclipse.cdt.core.lrparser.tests/src/org/eclipse/cdt/core/lrparser/tests/LRGCCCompleteParseExtensionsTest.java @@ -0,0 +1,51 @@ +/******************************************************************************* + * Copyright (c) 2006, 2008 IBM Corporation and others. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * IBM Corporation - initial API and implementation + *******************************************************************************/ +package org.eclipse.cdt.core.lrparser.tests; + +import junit.framework.TestSuite; + +import org.eclipse.cdt.core.dom.ast.IASTTranslationUnit; +import org.eclipse.cdt.core.dom.lrparser.gnu.GCCLanguage; +import org.eclipse.cdt.core.dom.lrparser.gnu.GPPLanguage; +import org.eclipse.cdt.core.model.ILanguage; +import org.eclipse.cdt.core.parser.ParserLanguage; +import org.eclipse.cdt.core.parser.tests.ast2.GCCCompleteParseExtensionsTest; +import org.eclipse.cdt.internal.core.parser.ParserException; + +@SuppressWarnings("restriction") +public class LRGCCCompleteParseExtensionsTest extends GCCCompleteParseExtensionsTest { + + public static TestSuite suite() { + return suite(LRGCCCompleteParseExtensionsTest.class); + } + + public LRGCCCompleteParseExtensionsTest() {} + public LRGCCCompleteParseExtensionsTest(String name) { super(name); } + + + @Override + @SuppressWarnings("unused") + protected IASTTranslationUnit parse( String code, ParserLanguage lang, boolean useGNUExtensions, boolean expectNoProblems ) throws ParserException { + ILanguage language = lang.isCPP() ? getCPPLanguage() : getCLanguage(); + ParseHelper.Options options = new ParseHelper.Options().setCheckSyntaxProblems(expectNoProblems).setCheckPreprocessorProblems(expectNoProblems); + return ParseHelper.parse(code, language, options); + } + + + protected ILanguage getCLanguage() { + return GCCLanguage.getDefault(); + } + + protected ILanguage getCPPLanguage() { + return GPPLanguage.getDefault(); + } + +} diff --git a/lrparser/org.eclipse.cdt.core.lrparser.tests/src/org/eclipse/cdt/core/lrparser/tests/LRInactiveCodeTests.java b/lrparser/org.eclipse.cdt.core.lrparser.tests/src/org/eclipse/cdt/core/lrparser/tests/LRInactiveCodeTests.java new file mode 100644 index 00000000000..e6930d2c29a --- /dev/null +++ b/lrparser/org.eclipse.cdt.core.lrparser.tests/src/org/eclipse/cdt/core/lrparser/tests/LRInactiveCodeTests.java @@ -0,0 +1,53 @@ +/******************************************************************************* + * Copyright (c) 2009 IBM Corporation and others. + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Eclipse Public License v1.0 + * which accompanies this distribution, and is available at + * http://www.eclipse.org/legal/epl-v10.html + * + * Contributors: + * IBM Corporation - initial API and implementation + *******************************************************************************/ +package org.eclipse.cdt.core.lrparser.tests; + +import junit.framework.TestSuite; + +import org.eclipse.cdt.core.dom.ast.IASTTranslationUnit; +import org.eclipse.cdt.core.dom.lrparser.gnu.GCCLanguage; +import org.eclipse.cdt.core.dom.lrparser.gnu.GPPLanguage; +import org.eclipse.cdt.core.model.ILanguage; +import org.eclipse.cdt.core.parser.ParserLanguage; +import org.eclipse.cdt.core.parser.tests.ast2.ASTInactiveCodeTests; + +public class LRInactiveCodeTests extends ASTInactiveCodeTests { + + public static TestSuite suite() { + return suite(LRInactiveCodeTests.class); + } + + public LRInactiveCodeTests() { + } + + public LRInactiveCodeTests(String name) { + super(name); + } + + + @Override + protected IASTTranslationUnit parse( String code, ParserLanguage lang, @SuppressWarnings("unused") boolean useGNUExtensions, boolean expectNoProblems, boolean skipTrivialInitializers) { + ILanguage language = lang.isCPP() ? getCPPLanguage() : getCLanguage(); + ParseHelper.Options options = new ParseHelper.Options(); + options.setCheckSyntaxProblems(expectNoProblems); + options.setCheckPreprocessorProblems(expectNoProblems); + options.setSkipTrivialInitializers(skipTrivialInitializers); + return ParseHelper.parse(code, language, options); + } + + protected ILanguage getCLanguage() { + return GCCLanguage.getDefault(); + } + + protected ILanguage getCPPLanguage() { + return GPPLanguage.getDefault(); + } +} diff --git a/lrparser/org.eclipse.cdt.core.lrparser.tests/src/org/eclipse/cdt/core/lrparser/tests/LRParserTestSuite.java b/lrparser/org.eclipse.cdt.core.lrparser.tests/src/org/eclipse/cdt/core/lrparser/tests/LRParserTestSuite.java index bb74a3074ec..2b3c05843cc 100644 --- a/lrparser/org.eclipse.cdt.core.lrparser.tests/src/org/eclipse/cdt/core/lrparser/tests/LRParserTestSuite.java +++ b/lrparser/org.eclipse.cdt.core.lrparser.tests/src/org/eclipse/cdt/core/lrparser/tests/LRParserTestSuite.java @@ -43,6 +43,7 @@ public class LRParserTestSuite extends TestSuite { addTest(LRDOMLocationTests.suite()); addTest(LRDOMPreprocessorInformationTest.suite()); addTest(LRGCCTests.suite()); + addTest(LRGCCCompleteParseExtensionsTest.suite()); addTest(LRImageLocationTests.suite()); addTest(LRKnRTests.suite()); // mostly fail due to ambiguities addTest(LRNodeSelectorTest.suite()); @@ -54,6 +55,8 @@ public class LRParserTestSuite extends TestSuite { addTest(LRTests.suite()); // has some tests that do fail addTest(LRUtilOldTests.suite()); addTest(LRUtilTests.suite()); + addTest(LRCPPImplicitNameTests.suite()); + //addTest(LRInactiveCodeTests.suite()); }}; } diff --git a/lrparser/org.eclipse.cdt.core.lrparser.tests/src/org/eclipse/cdt/core/lrparser/tests/LRTests.java b/lrparser/org.eclipse.cdt.core.lrparser.tests/src/org/eclipse/cdt/core/lrparser/tests/LRTests.java index 24a297126d0..e9ad575582f 100644 --- a/lrparser/org.eclipse.cdt.core.lrparser.tests/src/org/eclipse/cdt/core/lrparser/tests/LRTests.java +++ b/lrparser/org.eclipse.cdt.core.lrparser.tests/src/org/eclipse/cdt/core/lrparser/tests/LRTests.java @@ -154,5 +154,15 @@ public class LRTests extends AST2Tests { public void _testCastVsFunctionCallAmbiguities_Bug237057() throws Exception { super.testCastVsFunctionCallAmbiguities_Bug237057(); } + + + /* The LR parser generates the AST for switch statements + * differently than the DOM parser. + */ + @Override + public void testCaseRange_Bug211882() { } + public void _testCaseRange_Bug211882() throws Exception { + super.testCaseRange_Bug211882(); + } } 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 4e76de9747e..bdacb5b9b1d 100644 --- a/lrparser/org.eclipse.cdt.core.lrparser/grammar/c99/C99Grammar.g +++ b/lrparser/org.eclipse.cdt.core.lrparser/grammar/c99/C99Grammar.g @@ -979,15 +979,17 @@ declaration_list -- to avoid a shift/reduce error with the rule for declaration. -- The symbol table scoped is opened in the rule for function_direct_declarator function_definition - ::= declaration_specifiers function_declarator function_body - /. $Build consumeFunctionDefinition(true); $EndBuild ./ + ::= normal_function_definition -- this rule is here as a special case (its not C99 spec) just to support implicit int in function definitions | function_declarator function_body /. $Build consumeFunctionDefinition(false); $EndBuild ./ | declaration_specifiers knr_function_declarator declaration_list compound_statement /. $Build consumeFunctionDefinitionKnR(); $EndBuild ./ - +normal_function_definition + ::= declaration_specifiers function_declarator function_body + /. $Build consumeFunctionDefinition(true); $EndBuild ./ + -- same syntax as compound_statement but a symbol table scope isn't opened function_body ::= '{' '}' diff --git a/lrparser/org.eclipse.cdt.core.lrparser/grammar/gcc/GCCGrammar.g b/lrparser/org.eclipse.cdt.core.lrparser/grammar/gcc/GCCGrammar.g index 5c3d4fd484e..be071f53086 100644 --- a/lrparser/org.eclipse.cdt.core.lrparser/grammar/gcc/GCCGrammar.g +++ b/lrparser/org.eclipse.cdt.core.lrparser/grammar/gcc/GCCGrammar.g @@ -103,4 +103,10 @@ designated_initializer +-- Nested functions + +block_item + ::= normal_function_definition + /. $Build consumeStatementDeclaration(); $EndBuild ./ + $End \ No newline at end of file diff --git a/lrparser/org.eclipse.cdt.core.lrparser/plugin.xml b/lrparser/org.eclipse.cdt.core.lrparser/plugin.xml index 7bc4a334eeb..2a503eed13b 100644 --- a/lrparser/org.eclipse.cdt.core.lrparser/plugin.xml +++ b/lrparser/org.eclipse.cdt.core.lrparser/plugin.xml @@ -24,23 +24,6 @@ id="gpp" name="LR GPP"> - - - - - - - - - \ No newline at end of file diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionParser.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionParser.java index a72b879f6cb..a1e8be35ff6 100644 --- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionParser.java +++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionParser.java @@ -17,17 +17,17 @@ import lpg.lpgjavaruntime.*; import java.util.*; import org.eclipse.cdt.core.dom.ast.*; -import org.eclipse.cdt.core.dom.lrparser.CPreprocessorAdapter; import org.eclipse.cdt.core.dom.lrparser.IDOMTokenMap; import org.eclipse.cdt.core.dom.lrparser.IParser; import org.eclipse.cdt.core.dom.lrparser.ITokenCollector; +import org.eclipse.cdt.core.dom.lrparser.CPreprocessorAdapter; +import org.eclipse.cdt.core.dom.lrparser.action.ITokenStream; import org.eclipse.cdt.core.dom.lrparser.lpgextensions.FixedBacktrackingParser; import org.eclipse.cdt.core.dom.lrparser.action.ScopedStack; import org.eclipse.cdt.core.parser.IScanner; import org.eclipse.cdt.core.dom.parser.IBuiltinBindingsProvider; import org.eclipse.cdt.core.index.IIndex; -import org.eclipse.cdt.core.dom.lrparser.action.ITokenStream; import org.eclipse.cdt.core.dom.lrparser.action.ITokenMap; import org.eclipse.cdt.core.dom.lrparser.action.TokenMap; import org.eclipse.cdt.core.dom.lrparser.ISecondaryParser; @@ -244,9 +244,9 @@ public void setTokens(List tokens) { addToken(new Token(null, 0, 0, C99ExpressionParsersym.TK_EOF_TOKEN)); } -public C99ExpressionParser(ITokenStream parser, Set options) { // constructor for creating secondary parser +public C99ExpressionParser(ITokenStream stream, Set options) { // constructor for creating secondary parser initActions(options); - tokenMap = new TokenMap(C99ExpressionParsersym.orderedTerminalSymbols, parser.getOrderedTerminalSymbols()); + tokenMap = new TokenMap(C99ExpressionParsersym.orderedTerminalSymbols, stream.getOrderedTerminalSymbols()); } @@ -340,7 +340,7 @@ public C99ExpressionParser(ITokenStream parser, Set options) { } // - // Rule 28: postfix_expression ::= ( type_id ) { initializer_list comma_opt } + // Rule 28: postfix_expression ::= ( type_id ) initializer_list // case 28: { action. consumeExpressionTypeIdInitializer(); break; } @@ -1162,117 +1162,117 @@ public C99ExpressionParser(ITokenStream parser, Set options) { } // - // Rule 282: initializer ::= start_initializer_list { initializer_list comma_opt } end_initializer_list - // - case 282: { action. consumeInitializerList(); break; - } - - // - // Rule 283: initializer ::= { } + // Rule 283: initializer_list ::= start_initializer_list { initializer_seq comma_opt } end_initializer_list // case 283: { action. consumeInitializerList(); break; } // - // Rule 284: start_initializer_list ::= $Empty + // Rule 284: initializer_list ::= { } // - case 284: { action. initializerListStart(); break; + case 284: { action. consumeInitializerList(); break; } // - // Rule 285: end_initializer_list ::= $Empty + // Rule 285: start_initializer_list ::= $Empty // - case 285: { action. initializerListEnd(); break; + case 285: { action. initializerListStart(); break; } // - // Rule 290: designated_initializer ::= designation = initializer + // Rule 286: end_initializer_list ::= $Empty // - case 290: { action. consumeInitializerDesignated(); break; + case 286: { action. initializerListEnd(); break; } // - // Rule 294: designator_base ::= [ constant_expression ] + // Rule 291: designated_initializer ::= designation = initializer // - case 294: { action. consumeDesignatorArray(); break; + case 291: { action. consumeInitializerDesignated(); break; } // - // Rule 295: designator_base ::= . identifier_token + // Rule 295: designator_base ::= [ constant_expression ] // - case 295: { action. consumeDesignatorField(); break; + case 295: { action. consumeDesignatorArray(); break; } // - // Rule 296: designator ::= [ constant_expression ] + // Rule 296: designator_base ::= . identifier_token // - case 296: { action. consumeDesignatorArray(); break; + case 296: { action. consumeDesignatorField(); break; } // - // Rule 297: designator ::= . identifier_token + // Rule 297: designator ::= [ constant_expression ] // - case 297: { action. consumeDesignatorField(); break; + case 297: { action. consumeDesignatorArray(); break; } // - // Rule 298: translation_unit ::= external_declaration_list + // Rule 298: designator ::= . identifier_token // - case 298: { action. consumeTranslationUnit(); break; + case 298: { action. consumeDesignatorField(); break; + } + + // + // Rule 299: translation_unit ::= external_declaration_list + // + case 299: { action. consumeTranslationUnit(); break; } // - // Rule 299: translation_unit ::= $Empty + // Rule 300: translation_unit ::= $Empty // - case 299: { action. consumeTranslationUnit(); break; + case 300: { action. consumeTranslationUnit(); break; } // - // Rule 304: external_declaration ::= ; + // Rule 305: external_declaration ::= ; // - case 304: { action. consumeDeclarationEmpty(); break; + case 305: { action. consumeDeclarationEmpty(); break; } // - // Rule 305: external_declaration ::= ERROR_TOKEN + // Rule 306: external_declaration ::= ERROR_TOKEN // - case 305: { action. consumeDeclarationProblem(); break; + case 306: { action. consumeDeclarationProblem(); break; } // - // Rule 308: function_definition ::= declaration_specifiers function_declarator function_body + // Rule 310: function_definition ::= function_declarator function_body // - case 308: { action. consumeFunctionDefinition(true); break; + case 310: { action. consumeFunctionDefinition(false); break; } // - // Rule 309: function_definition ::= function_declarator function_body + // Rule 311: function_definition ::= declaration_specifiers knr_function_declarator declaration_list compound_statement // - case 309: { action. consumeFunctionDefinition(false); break; + case 311: { action. consumeFunctionDefinitionKnR(); break; } // - // Rule 310: function_definition ::= declaration_specifiers knr_function_declarator declaration_list compound_statement + // Rule 312: normal_function_definition ::= declaration_specifiers function_declarator function_body // - case 310: { action. consumeFunctionDefinitionKnR(); break; + case 312: { action. consumeFunctionDefinition(true); break; } // - // Rule 311: function_body ::= { } + // Rule 313: function_body ::= { } // - case 311: { action. consumeStatementCompoundStatement(false); break; + case 313: { action. consumeStatementCompoundStatement(false); break; } // - // Rule 312: function_body ::= { block_item_list } + // Rule 314: function_body ::= { block_item_list } // - case 312: { action. consumeStatementCompoundStatement(true); break; + case 314: { action. consumeStatementCompoundStatement(true); break; } // - // Rule 314: expression_parser_start ::= ERROR_TOKEN + // Rule 316: expression_parser_start ::= ERROR_TOKEN // - case 314: { action. consumeEmpty(); break; + case 316: { action. consumeEmpty(); break; } diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionParserprs.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionParserprs.java index ec33f1d5a73..89658c582bf 100644 --- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionParserprs.java +++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionParserprs.java @@ -36,7 +36,7 @@ public class C99ExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C9 public final static short baseCheck[] = {0, 0,0,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,3,1, - 1,4,4,3,3,2,2,8,1,0, + 1,4,4,3,3,2,2,4,1,0, 1,1,2,2,2,2,2,2,2,2, 2,4,1,4,1,3,3,3,1,3, 3,1,3,3,1,3,3,3,3,1, @@ -62,152 +62,149 @@ public class C99ExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C9 5,6,0,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,7,3,0,0,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,-37,0,0,0,0,0, - 0,0,0,0,0,-159,0,0,0,0, - 0,0,0,0,0,-2,0,0,-4,-76, - -71,-77,0,0,0,0,-55,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,-117, - 0,-118,0,-140,-14,0,0,0,0,0, - -5,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-123,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,-187,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-56,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-38,0,0,0,0,0, - 0,0,0,0,-196,0,0,-16,0,0, - 0,0,-30,0,0,-39,0,0,0,0, - 0,0,0,0,0,-31,0,0,-160,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,-74, + 1,1,7,3,0,0,1,1,3,3, + 4,1,1,2,3,2,3,2,1,0, + 1,2,1,1,1,1,1,2,1,3, + 6,4,2,4,1,1,-37,0,0,0, + 0,0,0,0,0,0,0,-2,0,0, + 0,0,0,0,0,0,0,-137,0,0, + -4,-159,-118,0,0,0,0,0,-74,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - -17,-107,0,0,-12,0,0,0,0,0, - 0,0,0,0,-119,0,-18,0,-6,0, - 0,0,0,0,0,0,0,0,-183,0, - 0,0,0,0,0,0,0,0,0,-34, - 0,0,0,0,0,0,0,0,0,-3, + 0,-14,0,-30,0,-31,0,0,0,0, + 0,-16,0,-80,-119,0,-120,0,0,0, + 0,0,0,0,0,-141,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,0,0,0,0,0,0, - -52,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-85,0,-110,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,-82, - -19,-128,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,-132,0,-129,0,-53,0,0,0, - 0,0,0,0,0,0,0,-20,0,0, - 0,-165,0,-125,0,0,0,0,-35,-79, - 0,0,0,0,-49,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,-21,0,0,0,0, - 0,-120,0,0,0,0,0,0,-7,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,-27,0,0,0,0,0,0,0, - 0,0,0,-68,0,0,0,0,0,0, - 0,0,0,-57,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-58,0,0,0,0,0, - 0,0,0,0,0,-69,0,0,0,0, - 0,0,0,0,0,-59,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-60,0,0,0, - 0,0,0,0,0,0,0,-70,0,0, - 0,0,0,0,0,0,0,-61,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-62,0, - 0,0,0,0,0,0,0,0,0,-114, - 0,0,0,0,0,0,0,0,0,-63, + 0,-105,-124,0,0,-191,0,-17,-131,-130, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - -64,0,0,0,0,0,0,0,0,0, - 0,-130,0,0,0,0,0,0,0,0, - 0,-65,0,0,0,0,0,0,0,0, + 0,0,0,0,-5,0,0,0,0,0, + 0,0,0,0,-121,0,-122,0,0,0, + 0,-177,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,-154,0,0,0,0,0,0, - 0,0,0,-67,0,0,0,0,0,0, + 0,0,-111,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-122,0,0,0,0,0, - 0,0,0,0,0,-171,0,0,0,0, - 0,0,0,0,0,-145,0,0,0,0, + 0,0,0,0,-179,0,-194,0,-18,0, + -19,0,-20,-21,-22,-192,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-146,0,0,0, - 0,0,0,0,0,0,0,-22,0,0, - 0,0,0,0,0,0,0,-163,0,0, - 0,0,0,0,0,0,0,0,-80,0, - 0,0,0,0,0,0,0,-186,0,0, - 0,0,0,0,0,0,0,0,-83,0, - 0,0,0,0,0,0,0,-13,0,0, - 0,0,0,0,0,-8,0,0,0,0, - 0,0,0,-195,0,0,0,0,0,0, + 0,0,0,0,0,0,-134,0,-38,0, + 0,0,0,0,0,0,0,0,-39,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-204,0,0,0,0,0,0, - 0,0,0,0,-139,0,0,0,0,0, - 0,0,0,-135,0,-121,0,0,-162,0, - 0,-23,-164,-185,0,-73,-24,-174,-78,-212, + -23,-109,-24,0,0,0,0,0,-71,-55, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,-131, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-25,-143, - 0,0,0,0,0,0,0,-152,-200,-149, - 0,-207,0,0,0,0,0,0,0,0, - 0,-177,0,0,0,0,0,0,-136,0, - 0,-33,0,0,0,0,-189,0,0,0, - -87,0,0,0,0,0,0,0,0,0, - -192,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,-176,-203,0,0,0, - 0,0,0,0,-47,0,0,0,0,0, + 0,-25,0,-107,-26,-88,-89,0,0,0, + 0,-90,0,-91,0,0,0,0,0,0, + 0,0,0,0,0,-27,0,0,0,0, + 0,0,0,0,0,0,-34,0,0,0, + 0,0,0,0,0,0,-57,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-180,0,-26,-88,0,0,-89, - -90,0,0,0,0,0,-50,0,0,0, - 0,0,0,0,0,0,0,-199,0,-51, + 0,0,0,0,0,0,0,-58,0,0, + 0,0,0,0,0,0,0,0,-35,0, + 0,0,0,0,0,0,0,0,-59,0, 0,0,0,0,0,0,0,0,0,0, - -193,0,0,0,-211,-91,0,-92,-93,0, - 0,0,-94,-194,0,0,-43,0,0,0, - 0,0,0,0,0,0,0,-44,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,-198,-158,0,-95, - -96,0,0,-45,0,0,0,0,0,0, - 0,0,0,0,-46,0,0,0,0,0, - 0,0,0,0,0,-48,0,0,0,0, - 0,0,0,0,0,-206,0,0,-138,-111, - -116,-75,-127,-201,-147,-97,0,0,-98,0, - -150,0,0,-113,0,0,0,0,0,0, + -68,0,0,0,0,0,0,0,0,0, + -61,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,-151,-213, - -81,0,0,0,0,0,0,0,-148,0, - 0,0,0,0,0,0,-141,-99,-100,0, - -101,-102,0,0,0,-103,0,0,0,0, + 0,-62,0,0,0,0,0,0,0,0, + 0,0,-69,0,0,0,0,0,0,0, + 0,0,-63,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - -9,0,0,0,0,0,0,0,-10,0, - 0,0,0,0,0,0,-11,0,0,0, - 0,0,0,0,-36,-40,0,0,0,0, - 0,0,0,-144,-157,0,-41,0,0,0, - 0,0,0,0,0,0,-104,-169,-105,-106, - 0,-42,0,0,0,0,0,0,0,-72, + 0,0,0,-64,0,0,0,0,0,0, + 0,0,0,0,-70,0,0,0,0,0, + 0,0,0,0,-65,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,-115,-15,-173,-172,-28,-166,-29,-167, - -32,-170,0,0,0,0,0,0,0,0, - 0,0,-184,-175,-202,0,-208,0,0,0, - 0,0,0,0,0,0,0,-214,-109,0, - -124,0,-84,0,0,0,0,0,0,0, - 0,0,0,-86,0,0,0,0,0,0, - 0,-108,0,0,0,0,0,-156,0,-190, - 0,0,0,0,-191,0,0,-133,0,-1, - 0,0,0,0,0,0,-178,0,0,-134, - 0,-197,0,-137,0,-112,-142,0,0,0, - 0,-179,0,-155,0,0,0,0,-126,0, - -209,0,0,-161,0,0,0,0,0,0, - 0,-181,-182,-205,0,-153,0,-54,0,-210, - 0,0,0,0,0,-168,0,0,0,0, - 0,0,0,0,0,0,0,0,0,-188, + 0,0,0,0,0,-66,0,0,0,0, + 0,0,0,0,0,0,-115,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,-123,0,0, + 0,0,0,0,0,0,0,0,-132,0, + 0,0,0,0,0,0,0,0,-144,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,-145, + 0,0,0,0,0,0,0,0,0,0, + -153,0,0,0,0,0,0,0,0,0, + -180,0,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,0,0, + 0,-92,0,0,0,0,0,0,0,0, + -6,0,0,0,0,0,0,0,-93,0, + -7,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,-201,0, + 0,0,0,0,0,0,0,0,0,-94, + 0,0,0,0,0,0,0,0,-8,0, + 0,0,0,0,0,0,-200,0,-9,0, + 0,0,0,0,0,0,-209,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,-133,-47,0,0, + 0,0,0,0,0,0,0,0,-49,0, + 0,0,0,0,0,0,0,0,0,-76, + 0,0,0,-95,-73,0,-148,-78,-125,0, + 0,0,0,0,0,0,0,0,-96,0, + 0,0,0,0,-112,0,0,0,-77,0, + 0,0,0,-149,0,0,0,0,0,0, + 0,0,0,0,0,0,-117,-166,0,-97, + 0,0,0,0,0,0,0,0,0,0, + 0,0,-157,0,0,-158,-98,0,0,-82, + 0,-56,0,0,0,0,0,0,0,0, + 0,0,-106,0,0,0,0,0,-52,0, + 0,0,0,0,0,0,0,0,0,-183, + 0,0,0,0,-87,0,-53,0,0,0, + 0,0,0,0,0,0,0,-167,0,0, + 0,0,0,-129,0,0,0,0,-1,-138, + 0,0,0,0,0,0,0,-99,-186,0, + 0,-181,-100,0,0,0,0,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,0,0,0,0,-48,0, + 0,0,0,0,0,0,0,0,0,-50, + 0,0,0,0,0,0,0,0,0,0, + -196,0,-51,0,0,0,0,0,0,0, + 0,0,0,-208,0,0,-127,-140,0,0, + 0,-146,0,0,0,-101,-102,-103,0,0, + -43,0,0,0,0,0,0,0,0,0, + 0,0,-104,0,-108,0,0,0,0,0, + 0,0,0,-10,0,0,0,0,0,0, + 0,-110,-83,0,-44,0,0,0,0,0, + 0,0,0,0,0,-45,0,0,0,0, + 0,0,0,0,0,0,-72,0,0,0, + 0,0,0,0,0,0,-46,0,0,0, + 0,0,0,0,0,0,0,-203,-171,-75, + -11,0,0,0,0,0,0,0,0,0, + 0,-12,0,0,0,0,0,0,0,0, + 0,-126,-135,0,0,0,-143,-156,-160,-142, + 0,0,0,0,0,0,0,0,0,0, + -210,0,-150,0,0,0,0,0,-114,0, + 0,0,0,0,0,0,0,0,-147,0, + 0,0,0,0,0,0,0,0,0,-36, + -113,-139,0,0,0,0,0,0,0,0, + 0,-169,0,-40,0,0,0,0,0,0, + 0,-151,0,0,-154,0,-41,0,0,0, + 0,0,0,0,-42,0,0,0,0,0, + 0,0,-116,0,0,0,0,-162,0,-165, + -168,0,-164,0,-32,-173,0,0,-187,-174, + 0,0,-190,0,-15,0,-163,0,-176,0, + -175,0,0,0,0,0,0,-13,0,0, + 0,0,0,0,-28,0,0,-29,-178,0, + 0,-128,-155,0,0,0,0,0,0,0, + 0,0,-202,0,0,0,0,0,0,0, + -79,-207,0,0,0,0,0,0,0,0, + -172,0,-81,0,-85,0,-84,0,0,0, + 0,0,0,0,0,0,-86,-188,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,-197,-184,-185,0,0,0,0,-136,-33, + -54,0,0,0,0,-152,0,0,-204,0, + 0,0,0,0,-199,-161,0,0,0,0, + -182,0,-205,0,-193,0,0,-206,0,0, + 0,0,0,0,0,0,0,0,0,-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,0, @@ -222,186 +219,183 @@ public class C99ExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C9 public interface BaseAction { public final static char baseAction[] = { - 87,11,101,24,24,21,21,32,32,70, + 87,11,102,24,24,21,21,40,40,70, 70,1,1,2,2,2,2,3,3,3, - 4,5,5,5,5,5,5,5,5,51, - 51,71,6,6,6,6,6,6,6,6, + 4,5,5,5,5,5,5,5,5,60, + 60,71,6,6,6,6,6,6,6,6, 6,6,6,7,7,8,8,8,8,9, 9,9,10,10,10,12,12,12,12,12, 13,13,13,14,14,15,15,16,16,17, 17,18,18,19,19,20,20,20,20,20, - 20,20,20,20,20,20,20,102,41,33, - 88,88,73,73,47,103,103,103,103,103, - 103,103,104,104,104,105,105,110,110,111, - 111,106,106,107,107,107,113,113,108,108, - 108,108,109,109,109,109,109,112,112,25, - 25,25,25,25,28,28,28,79,79,74, - 74,74,74,75,75,75,76,76,76,77, - 77,77,78,78,78,114,114,115,115,116, - 29,31,31,31,31,31,52,54,54,54, + 20,20,20,20,20,20,20,103,41,32, + 88,88,72,72,49,104,104,104,104,104, + 104,104,105,105,105,106,106,111,111,112, + 112,107,107,108,108,108,114,114,109,109, + 109,109,110,110,110,110,110,113,113,25, + 25,25,25,25,28,28,28,78,78,73, + 73,73,73,74,74,74,75,75,75,76, + 76,76,77,77,77,115,115,116,116,117, + 29,31,31,31,31,31,53,54,54,54, 54,54,54,54,54,54,54,54,54,64, - 61,61,89,90,65,65,62,62,62,66, - 80,80,81,81,67,67,67,42,91,91, - 82,83,83,83,63,63,92,84,84,85, - 85,68,68,22,23,23,23,30,48,48, - 34,34,34,34,37,37,39,35,35,36, - 40,40,117,117,38,118,118,93,93,26, - 26,26,26,26,26,26,26,26,86,49, - 49,49,49,27,56,56,55,55,55,57, - 57,50,50,94,94,60,60,58,58,58, - 43,43,43,44,45,45,45,46,46,46, - 46,53,53,53,59,95,72,72,72,72, - 69,96,97,97,98,98,99,99,119,119, - 120,120,121,121,121,121,123,123,122,122, - 122,124,124,87,87,1,1307,17,21,18, - 375,1306,45,531,468,641,738,547,716,678, - 1162,1048,1209,1167,75,92,44,135,213,172, - 365,282,673,137,134,136,160,501,20,17, - 21,18,375,43,45,531,468,641,28,547, - 716,678,1162,1048,1496,22,275,139,276,166, - 65,1154,161,187,694,663,143,146,149,152, - 1069,524,20,17,21,18,375,41,339,1169, - 690,1471,1623,1634,1251,432,20,17,21,18, - 375,1306,45,531,468,641,374,547,716,678, - 1162,1048,1209,1167,75,281,478,20,17,21, - 18,375,1306,45,531,468,641,374,547,716, - 678,1162,1048,1209,1167,75,281,501,20,17, - 21,18,375,43,45,531,468,641,286,547, - 716,678,1162,1557,1677,501,20,17,21,18, - 375,43,45,1310,287,161,1702,1145,21,286, - 1694,1163,292,161,31,1677,501,20,17,21, - 18,375,43,45,1311,287,161,31,1387,326, - 20,17,21,18,375,1306,45,531,468,641, - 374,547,716,678,1162,1048,1209,1167,75,281, - 275,20,17,21,18,375,1306,45,531,468, - 641,1676,547,716,678,1162,1048,1209,1167,75, - 1430,154,13,210,239,547,20,17,21,18, - 375,34,288,395,25,161,186,6,1677,501, - 20,17,21,18,375,43,40,24,289,455, - 20,17,21,18,375,1306,45,531,468,641, - 727,547,716,678,1162,1048,1209,1167,75,281, - 501,20,17,21,18,375,1306,45,531,468, - 641,1570,547,716,678,1162,1048,1209,1167,75, - 92,501,20,17,21,18,375,43,45,531, - 468,641,290,547,716,678,1489,437,1677,570, - 20,17,21,18,375,1306,45,531,468,641, - 1689,547,716,678,1162,1048,1209,1167,75,1433, - 250,69,299,20,17,21,18,375,1306,45, - 531,468,641,339,547,716,678,1162,1048,1209, - 1167,75,1435,189,179,596,240,501,20,17, - 21,18,375,43,45,531,468,641,67,547, - 716,1491,738,1156,70,135,213,255,213,727, - 634,137,134,136,160,501,20,17,21,18, - 375,43,45,531,468,641,372,547,1436,722, - 19,1544,135,213,283,139,144,166,145,134, - 136,160,352,1674,143,146,149,152,1069,501, - 20,17,21,18,375,43,39,1169,690,1471, - 1623,1634,1251,501,20,17,21,18,375,1306, - 45,531,468,641,727,547,716,678,1162,1048, - 1209,1167,75,93,501,20,17,21,18,375, - 1306,45,531,468,641,1559,547,716,678,1162, - 1048,1209,1167,75,86,501,20,17,21,18, - 375,1306,45,531,468,641,727,547,716,678, - 1162,1048,1209,1167,75,85,501,20,17,21, - 18,375,1306,45,531,468,641,1560,547,716, - 678,1162,1048,1209,1167,75,84,501,20,17, - 21,18,375,1306,45,531,468,641,727,547, - 716,678,1162,1048,1209,1167,75,83,501,20, - 17,21,18,375,1306,45,531,468,641,23, - 547,716,678,1162,1048,1209,1167,75,82,501, - 20,17,21,18,375,1306,45,531,468,641, - 727,547,716,678,1162,1048,1209,1167,75,81, - 501,20,17,21,18,375,1306,45,531,468, - 641,273,547,716,678,1162,1048,1209,1167,75, - 80,501,20,17,21,18,375,1306,45,531, - 468,641,727,547,716,678,1162,1048,1209,1167, - 75,79,501,20,17,21,18,375,1306,45, - 531,468,641,279,547,716,678,1162,1048,1209, - 1167,75,78,501,20,17,21,18,375,1306, - 45,531,468,641,727,547,716,678,1162,1048, - 1209,1167,75,77,501,20,17,21,18,375, - 1306,45,531,468,641,280,547,716,678,1162, - 1048,1209,1167,75,76,501,20,17,21,18, - 375,1306,45,531,468,641,727,547,716,678, - 1162,1048,1209,1167,75,74,501,20,17,21, - 18,375,1306,45,531,468,641,225,547,716, - 678,1162,1048,1209,1167,75,1558,501,20,17, - 21,18,375,1306,45,531,468,641,219,547, - 716,678,1162,1048,1209,1167,75,1592,501,20, - 17,21,18,375,43,45,531,468,641,125, - 547,716,678,1162,1048,1209,1167,94,501,20, - 17,21,18,375,43,45,531,468,641,413, - 547,716,678,1162,1048,1209,1167,94,547,20, - 17,21,18,375,33,1603,501,20,17,21, - 18,375,43,38,501,20,17,21,18,375, - 43,45,531,468,641,1672,547,716,678,1162, - 1048,1209,1167,94,501,20,17,21,18,375, - 43,45,531,468,641,742,547,716,678,1162, - 1048,1209,1167,94,157,545,161,188,370,161, - 295,212,191,736,161,297,70,319,198,232, - 501,20,17,21,18,375,43,45,531,468, - 641,202,547,716,678,1162,1048,1209,1167,94, - 151,135,213,1619,274,1621,326,142,134,136, - 160,1218,219,1441,221,1469,223,224,229,281, - 70,269,342,340,272,1642,274,203,70,727, - 711,141,70,166,218,1441,221,1469,223,224, - 229,1586,739,267,342,340,272,1590,263,13, - 230,277,13,1261,1684,1619,274,684,264,1619, - 1648,189,179,580,218,1441,221,1469,223,224, - 229,247,293,267,342,340,272,1168,1006,255, - 213,1470,1222,135,213,88,738,723,880,138, - 134,136,160,341,261,501,20,17,21,18, - 375,43,45,531,1390,218,1441,221,1469,223, - 224,229,195,140,745,166,554,593,180,1704, - 156,350,144,147,150,153,1069,501,20,17, - 21,18,375,43,45,531,468,641,718,1439, - 501,20,17,21,18,375,43,45,531,468, - 641,745,1488,198,200,247,415,194,460,483, - 255,213,1277,686,738,1354,1222,501,20,17, - 21,18,375,43,45,531,468,1346,501,20, - 17,21,18,375,43,45,531,468,1348,218, - 1441,221,1469,223,224,229,204,742,552,1702, - 194,324,1607,1704,501,20,17,21,18,375, - 43,45,531,468,1349,501,20,17,21,18, - 375,43,45,531,468,1353,501,20,17,21, - 18,375,43,45,531,1391,484,199,200,13, - 282,735,717,282,577,282,575,1222,1691,50, - 1388,682,1670,1583,357,20,17,21,18,375, - 43,36,278,277,241,234,209,243,274,242, - 218,1441,221,1469,223,224,229,228,246,701, - 748,643,1304,1703,1006,267,342,340,272,357, - 20,17,21,18,375,43,36,13,57,323, - 880,428,104,135,213,227,513,1621,682,148, - 134,136,160,247,219,1441,221,1469,223,224, - 229,501,20,17,21,18,375,43,37,501, - 20,17,21,18,375,43,36,501,20,17, - 21,18,375,43,35,241,501,20,17,21, - 18,375,43,48,638,13,1166,501,20,17, - 21,18,375,43,47,1716,1682,656,282,97, - 351,274,501,20,17,21,18,375,43,46, - 408,20,17,21,18,375,43,44,267,342, - 340,272,244,307,13,735,307,13,13,13, - 647,605,282,266,663,315,1650,663,315,416, - 315,1730,580,282,13,738,231,738,1190,197, - 1619,1190,197,1619,197,1655,245,88,211,532, - 88,590,88,672,90,689,1535,294,689,1535, - 689,1535,1642,259,681,1168,259,181,922,205, - 1658,922,242,1658,570,135,213,754,48,796, - 110,151,134,136,160,142,135,213,377,663, - 380,663,154,134,136,160,663,95,274,1621, - 615,580,282,197,509,1190,52,751,663,838, - 197,663,552,1702,754,269,342,340,272,52, - 1232,738,197,88,392,1190,296,1232,254,213, - 259,313,755,761,236,1219,710,1658,13,1232, - 767,254,213,282,1798,192,52,663,1798,580, - 259,1798,192,1618,1798,964,1798,1658,1276,1667, - 52,1190,665,1798,193,1605,1667,1798,254,213, - 1798,88,1798,1434,1798,665,1798,336,1798,1492, - 209,1798,254,213,1798,1798,260,1798,1798,1798, - 1798,1798,642,1798,1798,1798,1341,1703,1798,1798, - 1798,1798,1247,1798,1798,1016,1798,1798,1798,1798, - 1798,1798,1798,1798,1798,1798,1328,1798,0,20, - 179,0,1,2024,0,1,2035,0 + 61,61,89,90,66,66,62,62,62,67, + 79,79,80,80,68,68,68,43,91,91, + 81,82,82,82,63,63,92,83,83,84, + 84,69,69,22,23,23,23,30,50,50, + 33,33,33,33,36,36,38,34,34,35, + 39,39,118,118,37,119,119,93,93,26, + 26,26,26,26,26,26,26,26,85,51, + 51,51,51,27,56,56,55,55,55,57, + 57,52,52,94,94,59,59,58,58,58, + 44,44,44,45,46,46,46,47,47,47, + 47,65,65,42,42,48,96,95,95,95, + 95,86,97,98,98,99,99,100,100,120, + 120,121,121,122,122,122,122,124,124,123, + 123,123,125,126,126,87,87,1,626,17, + 21,18,372,625,45,448,382,541,31,539, + 544,543,591,545,622,593,75,92,124,135, + 213,670,629,596,338,137,134,136,160,275, + 20,17,21,18,372,625,45,448,382,541, + 1501,539,544,543,591,545,622,593,75,1145, + 139,166,579,239,201,31,201,31,143,146, + 149,152,57,384,118,201,187,201,186,341, + 1128,1611,1623,1627,1637,1225,434,20,17,21, + 18,372,625,45,448,382,541,342,539,544, + 543,591,545,622,593,75,281,482,20,17, + 21,18,372,625,45,448,382,541,1525,539, + 544,543,591,545,622,593,75,92,282,1589, + 1262,293,97,518,1365,25,158,24,157,695, + 299,20,17,21,18,372,625,45,448,382, + 541,287,539,544,543,591,545,622,593,75, + 1342,255,213,343,240,506,20,17,21,18, + 372,41,288,284,28,662,1502,201,188,341, + 1365,1186,332,20,17,21,18,372,625,45, + 448,382,541,342,539,544,543,591,545,622, + 593,75,281,554,20,17,21,18,372,625, + 45,448,382,541,1592,539,544,543,591,545, + 622,593,75,1244,282,201,296,201,298,6, + 1365,30,283,589,200,191,458,20,17,21, + 18,372,625,45,448,382,541,289,539,544, + 543,591,545,622,593,75,281,189,179,482, + 20,17,21,18,372,43,45,627,290,482, + 20,17,21,18,372,43,45,632,282,135, + 213,344,242,243,1365,137,134,136,160,104, + 482,20,17,21,18,372,43,45,448,382, + 541,291,539,544,543,591,545,1348,274,1452, + 139,166,171,22,14,547,578,194,143,146, + 149,152,199,384,416,443,269,1149,1120,272, + 1128,1611,1623,1627,1637,1225,482,20,17,21, + 18,372,625,45,448,382,541,489,539,544, + 543,591,545,622,593,75,93,482,20,17, + 21,18,372,625,45,448,382,541,1407,539, + 544,543,591,545,622,593,75,86,482,20, + 17,21,18,372,625,45,448,382,541,489, + 539,544,543,591,545,622,593,75,85,482, + 20,17,21,18,372,625,45,448,382,541, + 19,539,544,543,591,545,622,593,75,84, + 482,20,17,21,18,372,625,45,448,382, + 541,489,539,544,543,591,545,622,593,75, + 83,482,20,17,21,18,372,625,45,448, + 382,541,442,539,544,543,591,545,622,593, + 75,82,482,20,17,21,18,372,625,45, + 448,382,541,489,539,544,543,591,545,622, + 593,75,81,482,20,17,21,18,372,625, + 45,448,382,541,1203,539,544,543,591,545, + 622,593,75,80,482,20,17,21,18,372, + 625,45,448,382,541,489,539,544,543,591, + 545,622,593,75,79,482,20,17,21,18, + 372,625,45,448,382,541,23,539,544,543, + 591,545,622,593,75,78,482,20,17,21, + 18,372,625,45,448,382,541,489,539,544, + 543,591,545,622,593,75,77,482,20,17, + 21,18,372,625,45,448,382,541,273,539, + 544,543,591,545,622,593,75,76,482,20, + 17,21,18,372,625,45,448,382,541,489, + 539,544,543,591,545,622,593,75,74,482, + 20,17,21,18,372,625,45,448,382,541, + 279,539,544,543,591,545,622,593,75,1548, + 482,20,17,21,18,372,625,45,448,382, + 541,489,539,544,543,591,545,622,593,75, + 1567,482,20,17,21,18,372,43,45,448, + 382,541,280,539,544,543,591,545,622,593, + 94,482,20,17,21,18,372,43,45,448, + 382,541,466,539,544,543,591,545,622,593, + 94,482,20,17,21,18,372,43,40,488, + 1695,482,20,17,21,18,372,43,39,482, + 20,17,21,18,372,43,45,448,382,541, + 212,539,544,543,591,545,622,593,94,482, + 20,17,21,18,372,43,45,448,382,541, + 490,539,544,543,591,545,622,593,94,482, + 20,17,21,18,372,43,38,446,1698,482, + 20,17,21,18,372,43,37,482,20,17, + 21,18,372,43,45,448,382,541,202,539, + 544,543,591,545,622,593,94,113,482,20, + 17,21,18,372,43,45,448,1124,1522,482, + 20,17,21,18,372,43,45,448,382,541, + 144,539,1170,274,241,44,203,207,232,14, + 218,1154,221,1473,223,224,229,194,1550,601, + 396,267,1149,1120,272,104,275,263,277,327, + 135,213,1382,274,499,264,142,134,136,160, + 218,1154,221,1473,223,224,229,679,679,241, + 245,267,1149,1120,272,276,592,1553,1669,1663, + 228,141,166,559,1560,867,712,13,278,231, + 387,261,482,20,17,21,18,372,43,45, + 448,382,541,205,539,544,543,591,1363,482, + 20,17,21,18,372,43,45,448,382,541, + 710,539,544,543,1263,189,179,482,20,17, + 21,18,372,43,45,448,382,541,151,539, + 544,1346,255,213,104,28,1569,135,213,382, + 14,1365,209,138,134,136,160,385,50,281, + 417,1593,630,637,274,1452,1556,1571,243,421, + 1679,219,1154,221,1473,223,224,229,140,166, + 1259,88,269,1149,1120,272,144,147,150,153, + 315,384,218,1154,221,1473,223,224,229,482, + 20,17,21,18,372,43,45,448,1139,1603, + 482,20,17,21,18,372,43,45,448,382, + 541,719,1187,482,20,17,21,18,372,43, + 45,448,382,541,281,1258,328,44,14,195, + 198,200,104,255,213,1679,697,305,324,1183, + 1067,482,20,17,21,18,372,43,45,448, + 382,634,294,671,1457,615,242,218,1154,221, + 1473,223,224,229,482,20,17,21,18,372, + 43,36,676,414,1603,482,20,17,21,18, + 372,43,45,448,382,992,482,20,17,21, + 18,372,43,45,448,382,1009,409,20,17, + 21,18,372,43,44,199,200,482,20,17, + 21,18,372,43,45,448,382,1050,612,95, + 326,482,20,17,21,18,372,43,35,1679, + 567,1543,530,20,17,21,18,372,34,28, + 387,277,733,711,197,1365,274,698,14,707, + 44,218,1154,221,1473,223,224,229,1686,1621, + 1691,728,1269,720,267,1149,1120,272,1553,358, + 20,17,21,18,372,43,36,1459,867,358, + 20,17,21,18,372,43,36,193,1452,227, + 160,52,664,246,219,1154,221,1473,223,224, + 229,1125,518,247,482,20,17,21,18,372, + 43,48,44,254,213,721,274,482,20,17, + 21,18,372,43,47,482,20,17,21,18, + 372,43,46,567,267,1149,1120,272,104,1382, + 567,14,180,489,567,465,723,449,266,723, + 696,567,1664,201,1560,14,417,104,1097,518, + 1382,724,244,1238,225,1097,317,1382,530,20, + 17,21,18,372,33,14,450,90,14,738, + 197,245,52,48,592,259,317,88,909,317, + 1453,1238,259,742,567,909,699,1453,1500,446, + 197,627,287,197,254,213,1638,88,197,1693, + 88,559,1560,632,657,439,699,661,1500,699, + 1768,1500,210,135,213,1768,1269,666,518,145, + 134,136,160,825,741,135,213,783,449,135, + 213,148,134,136,160,151,134,136,160,135, + 213,192,489,587,142,154,134,136,160,116, + 14,14,1512,1429,567,567,357,919,204,44, + 567,417,417,230,1768,518,52,567,1097,197, + 209,52,487,518,1097,104,1768,1768,104,1768, + 1768,1097,88,88,1559,1571,1382,1269,254,213, + 365,599,1347,254,213,259,1768,485,1662,295, + 1453,259,297,1768,951,181,1453,1768,260,1768, + 1471,234,192,205,1768,1768,1768,1768,1768,1768, + 1768,1768,1220,1685,1429,1768,1768,1321,1768,1768, + 1768,1768,1768,1768,1768,1768,1710,1768,0,20, + 179,0,1,1994,0,1,2005,0 }; }; public final static char baseAction[] = BaseAction.baseAction; @@ -412,92 +406,89 @@ public class C99ExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C9 public interface TermCheck { public final static byte termCheck[] = {0, 0,1,2,3,4,0,6,7,8,9, - 10,11,0,13,14,15,16,17,18,19, - 0,21,22,23,24,25,26,27,28,9, - 10,31,32,33,34,35,36,37,38,39, + 10,11,0,0,14,15,16,17,18,19, + 20,21,22,23,24,25,26,27,28,0, + 0,31,32,33,34,35,36,37,38,39, 40,41,42,0,44,45,46,0,1,0, 3,0,5,6,7,8,0,6,7,8, - 55,56,57,58,0,1,0,3,0,0, - 23,24,25,26,27,28,12,11,31,32, + 55,56,57,58,17,9,10,55,56,57, + 58,24,25,26,27,28,47,48,31,32, 33,34,35,36,37,38,39,40,41,42, 43,44,45,46,0,1,0,3,51,5, - 6,7,8,0,55,56,57,58,12,0, - 1,55,56,57,58,47,48,23,24,25, - 26,27,28,80,0,31,32,33,34,35, + 6,7,8,0,55,56,57,58,5,13, + 80,17,0,1,2,0,4,0,24,25, + 26,27,28,0,12,31,32,33,34,35, 36,37,38,39,40,41,42,43,44,45, 46,0,1,0,3,51,5,6,7,8, - 0,1,2,0,4,0,0,4,49,4, - 0,1,59,3,23,24,25,26,27,28, - 20,0,31,32,33,34,35,36,37,38, + 0,1,2,50,4,12,0,0,17,0, + 4,2,12,4,49,24,25,26,27,28, + 0,12,31,32,33,34,35,36,37,38, 39,40,41,42,43,44,45,46,0,1, - 0,3,51,0,6,7,8,0,1,2, - 29,4,9,10,61,62,53,54,53,54, - 0,23,24,25,26,27,28,20,0,31, + 0,3,51,0,6,7,8,4,0,0, + 0,1,4,3,0,17,0,1,2,53, + 54,5,24,25,26,27,28,13,12,31, 32,33,34,35,36,37,38,39,40,41, - 42,0,44,45,46,0,0,6,7,8, - 0,0,2,2,4,4,0,1,2,0, - 1,0,3,63,23,24,25,26,27,28, - 20,20,31,32,33,34,35,36,37,38, + 42,0,44,45,46,65,30,6,7,8, + 0,0,0,2,0,4,53,54,17,9, + 10,53,54,12,64,24,25,26,27,28, + 61,62,31,32,33,34,35,36,37,38, 39,40,41,42,0,1,2,3,4,5, - 0,0,64,9,10,11,5,13,14,15, - 16,17,18,19,59,21,22,23,0,1, - 2,3,4,5,0,59,0,9,10,11, - 4,13,14,15,16,17,18,19,0,21, - 22,23,0,0,50,0,1,2,3,4, - 5,50,9,10,9,10,11,12,13,14, - 15,16,17,18,19,65,21,22,50,0, - 0,0,1,4,3,49,0,1,2,3, - 4,5,12,12,0,9,10,11,43,13, - 14,15,16,17,18,19,0,21,22,0, - 1,2,3,4,20,63,68,69,9,10, - 11,0,13,14,15,16,17,18,19,0, - 21,22,53,54,0,29,50,0,1,2, - 3,4,0,1,0,3,9,10,11,12, - 13,14,15,16,17,18,19,0,21,22, - 51,0,1,2,3,4,0,1,11,3, - 9,10,11,12,13,14,15,16,17,18, - 19,60,21,22,0,1,2,3,4,0, - 0,47,48,9,10,11,12,13,14,15, - 16,17,18,19,0,21,22,0,1,2, - 3,4,0,0,1,2,9,10,11,12, - 13,14,15,16,17,18,19,0,21,22, - 0,1,2,3,4,0,47,48,0,9, - 10,11,0,13,14,15,16,17,18,19, - 12,21,22,0,1,2,3,4,0,47, - 48,0,9,10,11,4,13,14,15,16, - 17,18,19,0,21,22,0,1,2,3, - 4,0,1,0,3,9,10,11,0,13, - 14,15,16,17,18,19,0,21,22,0, - 1,2,3,4,0,0,0,65,9,10, - 11,5,13,14,15,16,17,18,19,0, - 21,22,0,4,2,0,4,5,6,7, - 8,6,7,8,0,29,30,0,1,5, - 3,0,20,60,0,23,24,25,26,27, - 28,0,30,70,71,72,73,74,75,76, - 77,78,79,0,30,61,62,0,0,6, - 7,8,0,6,7,8,0,0,6,7, - 8,0,6,7,8,0,23,24,25,26, - 27,28,0,49,2,23,24,25,26,27, - 28,0,0,0,2,13,14,6,7,8, - 0,0,20,0,0,0,6,7,8,6, - 7,8,20,0,23,24,25,26,27,28, - 0,20,2,23,24,25,26,27,28,0, - 0,1,2,20,52,5,0,0,2,64, - 20,5,0,6,7,8,0,5,0,67, - 20,5,47,48,0,0,20,0,0,5, - 30,0,5,5,0,52,30,0,1,2, - 0,29,0,0,0,20,30,5,49,0, - 0,0,12,0,30,12,0,1,0,0, - 29,12,0,29,0,12,0,0,0,0, - 43,12,0,0,0,0,0,52,66,29, - 0,0,0,0,0,43,0,0,0,0, - 0,0,0,0,66,0,0,0,0,0, - 0,0,0,0,60,0,0,0,0,0, + 0,1,2,9,10,11,0,1,14,15, + 16,17,18,19,20,21,22,23,0,1, + 2,3,4,5,0,61,62,9,10,11, + 68,69,14,15,16,17,18,19,20,21, + 22,23,0,0,50,0,0,2,2,0, + 5,0,1,2,3,4,5,12,12,59, + 9,10,11,0,13,14,15,16,50,18, + 19,20,21,22,23,30,0,0,1,2, + 3,4,5,59,0,0,9,10,11,5, + 0,14,15,16,43,18,19,20,21,22, + 23,0,1,2,3,4,0,1,65,3, + 9,10,11,29,30,14,15,16,0,18, + 19,20,21,22,23,49,63,50,0,1, + 2,3,4,0,1,0,3,9,10,11, + 0,13,14,15,16,5,18,19,20,21, + 22,23,51,0,1,2,3,4,0,1, + 0,3,9,10,11,0,13,14,15,16, + 5,18,19,20,21,22,23,0,1,2, + 3,4,47,48,0,0,9,10,11,5, + 13,14,15,16,29,18,19,20,21,22, + 23,0,1,2,3,4,66,0,0,0, + 9,10,11,5,30,14,15,16,0,18, + 19,20,21,22,23,0,1,2,3,4, + 12,66,47,48,9,10,11,0,30,14, + 15,16,5,18,19,20,21,22,23,0, + 1,2,3,4,47,48,47,48,9,10, + 11,0,0,14,15,16,0,18,19,20, + 21,22,23,0,1,2,3,4,0,1, + 43,3,9,10,11,0,0,14,15,16, + 4,18,19,20,21,22,23,0,0,2, + 2,4,5,6,7,8,0,1,0,12, + 12,0,14,15,17,0,1,0,3,11, + 0,24,25,26,27,28,60,30,13,9, + 10,0,1,2,0,49,70,71,72,73, + 74,75,76,77,78,79,0,13,0,0, + 52,0,6,7,8,49,0,6,7,8, + 12,12,0,17,0,67,0,1,17,3, + 24,25,26,27,28,24,25,26,27,28, + 0,0,1,0,3,0,6,7,8,0, + 0,6,7,8,13,0,13,17,0,4, + 52,52,17,5,24,25,26,27,28,24, + 25,26,27,28,0,0,0,0,29,63, + 6,7,8,6,7,8,0,11,30,0, + 0,0,6,7,8,6,7,8,0,0, + 0,2,0,0,6,7,8,0,1,2, + 0,12,0,13,64,5,4,0,0,29, + 29,0,0,0,0,0,0,0,0,0, + 0,29,29,0,0,60,13,13,13,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,43,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,60,0,0, + 59,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, - 0,0,0 + 0,0,0,0,0,0,0,0,0 }; }; public final static byte termCheck[] = TermCheck.termCheck; @@ -505,88 +496,87 @@ public class C99ExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C9 public interface TermAction { public final static char termAction[] = {0, - 1798,1809,1584,1810,1519,60,2012,2013,2014,1511, - 1106,1527,1,1098,535,381,1811,1812,1813,1814, - 52,729,549,1961,1962,1960,2015,1963,1959,476, - 455,1966,1971,1970,1968,1969,1967,1972,1973,1965, - 1974,1975,1976,1798,617,1089,640,1798,1,62, - 1,1798,191,1,1,1,61,2012,2013,2014, - 1405,1394,1368,1357,1798,1809,65,1810,55,253, - 1,1,1,1,1,1,1239,695,1,1, + 1768,1779,1565,1780,1374,60,1982,1983,1984,1069, + 1059,1431,62,1,1578,1442,475,1931,1781,1782, + 1783,1784,1011,1001,1932,1930,1985,1933,1929,55, + 1768,1936,1941,1940,1938,1939,1937,1942,1943,1935, + 1944,1945,1946,253,1625,1383,1190,1768,1,61, + 1,1768,191,1,1,1,52,1982,1983,1984, + 1417,1396,1385,1351,1,579,569,1417,1396,1385, + 1351,1,1,1,1,1,1098,1299,1,1, 1,1,1,1,1,1,1,1,1,1, - 191,1,1,1,1798,1,42,1,1994,190, - 1,1,1,1798,1405,1394,1368,1357,532,1, - 1795,1405,1394,1368,1357,1285,1416,1,1,1, - 1,1,1,1788,182,1,1,1,1,1, + 191,1,1,1,1768,1,42,1,1964,190, + 1,1,1,1768,1417,1396,1385,1351,1772,2815, + 1758,1,262,1994,1127,1,1,182,1,1, + 1,1,1,183,349,1,1,1,1,1, 1,1,1,1,1,1,1,190,1,1, - 1,1798,1,63,1,1994,191,1,1,1, - 262,2024,1220,49,1,51,183,1562,2056,1562, - 1798,1809,995,1810,1,1,1,1,1,1, - 510,89,1,1,1,1,1,1,1,1, - 1,1,1,1,191,1,1,1,1798,1809, - 67,1810,1994,54,2012,2013,2014,268,2024,1220, - 743,253,476,455,1330,1317,1547,1536,1547,1536, - 285,1961,1962,1960,2015,1963,1959,510,69,1966, - 1971,1970,1968,1969,1967,1972,1973,1965,1974,1975, - 1976,129,617,1089,640,201,1798,2012,2013,2014, - 265,268,1432,1432,1,253,1,2024,1426,185, - 2872,1798,2872,667,1961,1962,1960,2015,1963,1959, - 510,510,1966,1971,1970,1968,1969,1967,1972,1973, - 1965,1974,1975,1976,1,1809,1584,1810,1444,1802, - 71,1798,601,1511,1106,1527,1802,1098,535,381, - 1811,1812,1813,1814,1170,729,549,619,1798,1809, - 1584,1810,1479,1802,1798,1134,1,1511,1106,1527, - 253,1098,535,381,1811,1812,1813,1814,73,729, - 549,1037,68,53,1801,1,1809,1584,1810,1519, - 29,1801,476,455,1511,1106,1527,2865,1098,535, - 381,1811,1812,1813,1814,437,729,549,1801,50, - 1798,1798,1809,1562,1810,2056,1798,1809,1584,1810, - 1519,1802,532,1429,271,1511,1106,1527,29,1098, - 535,381,1811,1812,1813,1814,256,729,549,1798, - 1,1,1,1,510,667,347,1708,1,1, - 1,1798,1,1,1,1,1,1,1,1798, - 1,1,1547,1536,1798,1706,1801,1798,1809,1584, - 1810,1519,184,2876,59,2876,1511,1106,1527,532, - 1098,535,381,1811,1812,1813,1814,66,729,549, - 2112,1,1809,1584,1810,1519,206,2882,695,2882, - 1511,1106,1527,2865,1098,535,381,1811,1812,1813, - 1814,559,729,549,1798,1809,1584,1810,1519,58, - 1798,1285,1416,1511,1106,1527,2865,1098,535,381, - 1811,1812,1813,1814,1798,729,549,1,1809,1584, - 1810,1519,57,1,2024,1426,1511,1106,1527,2865, - 1098,535,381,1811,1812,1813,1814,1798,729,549, - 1798,1809,1584,1810,1519,1798,1285,1416,1798,1511, - 1106,1527,72,1098,535,381,1811,1812,1813,1814, - 1545,729,549,1798,1809,1587,1810,1519,1798,1285, - 1416,1798,1511,1106,1527,684,1098,535,381,1811, - 1812,1813,1814,1798,729,549,1798,1809,1589,1810, - 1519,208,1809,43,1810,1511,1106,1527,1798,1098, - 535,381,1811,1812,1813,1814,1798,729,549,1, - 1809,1584,1810,1519,64,1798,1798,437,1511,1106, - 1527,1804,1098,535,381,1811,1812,1813,1814,1798, - 729,549,20,1210,1789,248,1789,1789,179,179, - 179,2012,2013,2014,1,1710,1803,207,465,91, - 465,1798,1789,974,1,179,179,179,179,179, - 179,1798,1789,953,932,911,890,869,827,848, - 806,785,764,130,91,1330,1317,249,1798,2012, - 2013,2014,131,1,1,1,250,1798,2012,2013, - 2014,1798,1,1,1,70,1961,1962,1960,2015, - 1963,1959,32,2056,1591,1961,1962,1960,2015,1963, - 1959,132,270,1798,1431,1824,1825,2012,2013,2014, - 133,220,1242,251,1798,56,2012,2013,2014,2012, - 2013,2014,510,1798,1961,1962,1960,2015,1963,1959, - 222,510,1585,1961,1962,1960,2015,1963,1959,1, - 1,1792,1220,1058,486,1804,1,252,1432,601, - 510,1804,1798,2012,2013,2014,1798,1808,1798,473, - 510,1804,1285,1416,1,291,510,1798,1,1804, - 1803,30,1806,1808,30,1159,1803,253,2024,1426, - 1798,1345,284,1798,211,1078,1803,1487,2055,189, - 207,1798,1588,189,1803,1604,1798,2036,1798,189, - 489,185,1798,1827,1798,184,1798,1798,1798,1798, - 1805,206,1798,1798,1798,1798,1798,1164,1807,2720, - 1798,1798,1798,1798,1798,1487,1798,1798,1798,1798, - 1798,1798,1798,1798,1807,1798,1798,1798,1798,1798, - 1798,1798,1798,1798,1114 + 1,1768,1,271,1,1964,191,1,1,1, + 268,1994,1127,1771,253,349,49,286,1,265, + 1535,1430,349,1,2026,1,1,1,1,1, + 71,349,1,1,1,1,1,1,1,1, + 1,1,1,1,191,1,1,1,1768,1779, + 69,1780,1964,51,1982,1983,1984,1535,50,63, + 1768,1779,1535,1780,1768,1931,1,1762,1127,1527, + 1514,1774,1932,1930,1985,1933,1929,2815,349,1936, + 1941,1940,1938,1939,1937,1942,1943,1935,1944,1945, + 1946,129,1625,1383,1190,1192,1773,1982,1983,1984, + 54,268,73,1430,64,253,1527,1514,1931,579, + 569,1527,1514,349,1209,1932,1930,1985,1933,1929, + 1323,1310,1936,1941,1940,1938,1939,1937,1942,1943, + 1935,1944,1945,1946,1,1779,1565,1780,1479,1772, + 1,1994,1428,1069,1059,1431,1768,2006,1578,1442, + 475,513,1781,1782,1783,1784,1011,1001,1768,1779, + 1565,1780,1489,1772,1768,1323,1310,1069,1059,1431, + 600,1671,1578,1442,475,940,1781,1782,1783,1784, + 1011,1001,1768,72,1771,1,270,1430,1167,1768, + 1774,1,1779,1565,1780,1374,29,349,349,1039, + 1069,1059,1431,67,2815,1578,1442,475,1771,1781, + 1782,1783,1784,1011,1001,1773,1,1768,1779,1565, + 1780,1374,1772,898,1768,1768,1069,1059,1431,1774, + 1768,1578,1442,475,29,1781,1782,1783,1784,1011, + 1001,1768,1,1,1,1,185,2828,1192,2828, + 1,1,1,1612,1773,1,1,1,1768,1, + 1,1,1,1,1,2025,1227,1771,1768,1779, + 1565,1780,1374,184,2829,59,2829,1069,1059,1431, + 1,2815,1578,1442,475,1778,1781,1782,1783,1784, + 1011,1001,2084,1,1779,1565,1780,1374,206,2830, + 1768,2830,1069,1059,1431,1768,2815,1578,1442,475, + 1778,1781,1782,1783,1784,1011,1001,1768,1779,1565, + 1780,1374,1098,1299,1,58,1069,1059,1431,91, + 2815,1578,1442,475,1334,1781,1782,1783,1784,1011, + 1001,1768,1779,1565,1780,1374,1777,57,1768,56, + 1069,1059,1431,1774,91,1578,1442,475,220,1781, + 1782,1783,1784,1011,1001,1768,1779,1585,1780,1374, + 349,1777,1098,1299,1069,1059,1431,1768,1773,1578, + 1442,475,1776,1781,1782,1783,1784,1011,1001,1768, + 1779,1588,1780,1374,1098,1299,1098,1299,1069,1059, + 1431,1768,1768,1578,1442,475,43,1781,1782,1783, + 1784,1011,1001,1,1779,1565,1780,1374,208,1779, + 1775,1780,1069,1059,1431,1768,1,1578,1442,475, + 253,1781,1782,1783,1784,1011,1001,20,32,1759, + 1555,1759,1759,179,179,179,1,1765,65,1759, + 1670,1768,1794,1795,179,1768,1779,1768,1780,1109, + 53,179,179,179,179,179,877,1759,1250,579, + 569,1,1994,1428,1768,2026,856,835,814,793, + 772,730,751,709,688,667,130,1129,1768,292, + 376,131,1982,1983,1984,2026,68,1982,1983,1984, + 961,1019,1768,1931,1768,374,207,1563,1931,1563, + 1932,1930,1985,1933,1929,1932,1930,1985,1933,1929, + 132,1768,1779,1768,1780,133,1982,1983,1984,89, + 70,1982,1983,1984,1338,1768,1458,1931,1,1337, + 535,537,1931,1774,1932,1930,1985,1933,1929,1932, + 1930,1985,1933,1929,248,211,66,249,646,1227, + 1982,1983,1984,1,1,1,250,1109,1773,251, + 256,30,1,1,1,1982,1983,1984,252,222, + 1768,1168,30,207,1982,1983,1984,253,1994,1428, + 285,349,1768,1551,1209,624,1460,1768,1768,1676, + 492,201,1768,189,189,189,1768,1768,1768,1768, + 1768,1797,2731,1768,1768,981,185,184,206,1768, + 1768,1768,1768,1768,1768,1768,1768,1768,1768,1768, + 1768,1768,1768,624,1768,1768,1768,1768,1768,1768, + 1768,1768,1768,1768,1768,1768,1768,1768,1768,1768, + 1768,1768,1768,1768,1768,1768,1768,546,1768,1768, + 1077 }; }; public final static char termAction[] = TermAction.termAction; @@ -594,28 +584,27 @@ public class C99ExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C9 public interface Asb { public final static char asb[] = {0, - 410,1,76,41,76,76,76,76,76,76, - 76,76,76,3,350,23,20,27,25,33, - 31,35,34,37,36,9,76,350,350,270, - 270,391,76,231,231,142,350,76,76,76, - 76,76,76,76,76,76,76,76,76,76, - 76,76,76,76,76,76,76,76,76,76, - 76,76,76,76,76,76,76,231,231,231, - 45,52,146,70,240,229,228,117,129,66, - 129,66,66,129,66,129,364,185,20,20, - 25,25,25,25,23,23,31,27,27,34, - 33,279,36,35,281,68,50,142,146,93, - 45,387,74,231,321,243,66,270,270,66, - 270,76,50,146,137,387,45,73,70,231, - 140,364,230,245,68,155,68,234,236,114, - 182,68,137,137,76,76,45,74,240,274, - 273,146,245,231,68,155,234,234,182,48, - 431,270,76,113,182,50,137,387,45,45, - 231,321,243,140,155,182,148,155,234,236, - 428,236,52,45,270,76,50,387,137,245, - 155,150,236,182,76,270,45,236,137,231, - 230,182,317,76,316,89,146,182,182,271, - 150,76,89,236 + 233,1,9,64,9,9,9,9,9,9, + 9,9,9,26,392,46,43,50,48,56, + 54,58,57,60,59,32,9,392,392,328, + 328,368,9,199,199,227,392,9,9,9, + 9,9,9,9,9,9,9,9,9,9, + 9,9,9,9,9,9,9,9,9,9, + 9,9,9,9,9,9,9,199,199,199, + 68,115,231,3,298,197,196,202,214,129, + 214,129,129,214,129,214,406,153,43,43, + 48,48,48,48,46,46,54,50,50,57, + 56,337,59,58,71,131,278,131,227,231, + 133,68,429,7,199,339,301,129,328,328, + 129,328,9,278,113,231,222,429,68,6, + 3,199,225,406,198,303,131,251,131,292, + 113,222,222,9,9,68,7,298,332,331, + 231,303,199,131,251,292,292,294,282,222, + 429,68,68,199,339,301,225,251,278,285, + 251,292,294,387,294,278,111,390,328,9, + 281,429,222,303,251,287,294,278,9,328, + 26,115,68,328,9,222,199,198,278,107, + 9,106,22,231,278,68,329,287,9,22 }; }; public final static char asb[] = Asb.asb; @@ -623,50 +612,50 @@ public class C99ExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C9 public interface Asr { public final static byte asr[] = {0, - 80,0,20,2,52,67,13,14,60,70, - 71,72,73,74,76,75,77,78,79,4, - 53,54,9,10,48,47,55,56,57,58, - 61,62,11,63,64,65,43,66,68,69, - 59,30,80,29,50,5,0,5,43,20, - 52,13,14,11,4,9,10,21,22,15, - 2,16,17,18,19,1,3,12,0,6, - 7,8,23,50,5,16,17,18,19,3, - 13,14,11,9,10,21,22,15,4,2, - 1,0,6,7,8,2,16,17,18,19, - 1,3,13,14,11,4,9,10,21,22, - 15,0,60,20,52,0,39,31,36,34, - 35,33,32,37,38,40,41,42,59,66, - 28,25,23,24,27,26,6,7,8,29, - 1,5,30,2,20,4,0,66,5,4, - 1,2,59,0,24,31,6,32,44,25, - 33,26,34,35,27,7,36,37,23,45, - 28,46,38,39,8,40,41,42,1,3, - 51,5,43,0,7,23,28,8,27,26, - 25,6,24,52,67,13,14,11,9,10, - 53,54,47,48,55,56,57,58,61,62, - 63,64,65,68,69,60,70,71,72,73, - 74,75,76,77,78,79,4,2,20,29, - 30,5,0,1,3,5,43,29,0,4, - 2,20,30,5,24,31,6,32,44,25, - 33,26,34,35,27,7,36,37,23,45, - 28,46,38,39,8,40,41,42,49,3, - 1,0,2,5,29,30,66,20,59,0, + 80,0,6,7,8,17,50,5,18,19, + 20,21,3,14,15,11,9,10,22,23, + 16,4,2,1,0,12,2,52,67,14, + 15,60,70,71,72,73,74,76,75,77, + 78,79,4,53,54,9,10,48,47,55, + 56,57,58,61,62,11,63,64,65,43, + 66,68,69,59,30,80,29,50,5,0, 11,4,9,10,53,54,47,48,55,56, 57,58,61,62,63,64,65,68,69,60, 70,71,72,73,74,75,76,77,78,79, - 50,30,43,80,12,59,66,5,29,0, - 4,24,31,6,32,44,25,33,26,34, - 35,27,7,36,37,23,45,28,46,38, - 39,8,40,41,42,1,3,49,0,15, - 16,17,18,19,2,13,14,11,4,9, - 10,21,22,1,3,44,45,46,39,31, - 36,34,35,33,32,37,38,40,41,42, - 28,25,23,24,27,26,6,7,8,0, - 5,30,15,16,17,18,19,1,3,2, - 13,14,11,4,9,10,21,22,0,15, - 16,17,18,19,1,3,2,13,14,11, - 4,9,10,21,22,51,0,5,29,43, - 60,0 + 50,30,43,80,13,59,66,5,29,0, + 5,43,12,52,14,15,11,4,9,10, + 22,23,16,2,18,19,20,21,1,3, + 13,0,6,7,8,2,18,19,20,21, + 1,3,14,15,11,4,9,10,22,23, + 16,0,7,17,28,8,27,26,25,6, + 24,52,67,14,15,11,9,10,53,54, + 47,48,55,56,57,58,61,62,63,64, + 65,68,69,60,70,71,72,73,74,75, + 76,77,78,79,4,2,12,29,30,5, + 0,39,31,36,34,35,33,32,37,38, + 40,41,42,59,66,28,25,17,24,27, + 26,6,7,8,29,1,5,30,2,12, + 4,0,16,18,19,20,21,1,3,2, + 14,15,11,4,9,10,22,23,51,0, + 24,31,6,32,44,25,33,26,34,35, + 27,7,36,37,17,45,28,46,38,39, + 8,40,41,42,1,3,51,5,43,0, + 60,12,52,0,66,5,4,1,2,59, + 0,1,3,5,43,29,0,4,2,12, + 30,5,24,31,6,32,44,25,33,26, + 34,35,27,7,36,37,17,45,28,46, + 38,39,8,40,41,42,49,3,1,0, + 2,5,29,30,66,12,59,0,4,24, + 31,6,32,44,25,33,26,34,35,27, + 7,36,37,17,45,28,46,38,39,8, + 40,41,42,1,3,49,0,5,30,16, + 18,19,20,21,1,3,2,14,15,11, + 4,9,10,22,23,0,5,29,43,60, + 0,16,18,19,20,21,2,14,15,11, + 4,9,10,22,23,1,3,44,45,46, + 39,31,36,34,35,33,32,37,38,40, + 41,42,28,25,17,24,27,26,6,7, + 8,0 }; }; public final static byte asr[] = Asr.asr; @@ -674,28 +663,27 @@ public class C99ExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C9 public interface Nasb { public final static byte nasb[] = {0, - 111,39,20,39,20,20,20,20,20,20, - 20,20,20,39,90,39,39,39,39,39, - 39,39,39,39,39,39,20,90,90,15, - 15,94,91,78,78,81,1,20,20,20, - 20,20,20,20,20,20,20,20,20,20, - 20,20,20,91,20,20,20,20,20,20, - 20,20,20,20,20,20,20,78,78,78, - 24,20,50,22,80,11,11,74,75,42, - 75,27,27,75,26,75,69,39,39,39, - 39,39,39,39,39,39,39,39,39,39, - 39,39,39,39,39,39,64,99,39,29, - 24,118,23,78,85,77,7,7,7,7, - 7,20,18,39,57,118,24,23,40,78, - 60,32,39,87,46,64,39,64,44,13, - 64,39,57,64,20,20,24,23,59,11, - 11,50,87,78,39,103,64,7,9,17, - 39,7,20,48,9,64,64,118,24,24, - 78,85,77,53,64,9,66,114,7,44, - 39,39,19,24,7,20,18,118,40,107, - 103,62,44,9,20,7,24,44,40,78, - 78,9,67,20,39,62,50,9,9,39, - 62,20,55,97 + 78,42,30,42,30,30,30,30,30,30, + 30,30,30,42,109,42,42,42,42,42, + 42,42,42,42,42,42,30,109,109,17, + 17,106,110,60,60,95,1,30,30,30, + 30,30,30,30,30,30,30,30,30,30, + 30,30,30,110,30,30,30,30,30,30, + 30,30,30,30,30,30,30,60,60,60, + 15,86,49,13,94,47,47,69,70,19, + 70,118,118,70,117,70,64,42,42,42, + 42,42,42,42,42,42,42,42,42,42, + 42,42,42,42,87,87,57,42,43,42, + 32,15,99,14,60,101,59,7,7,7, + 7,7,30,21,57,42,76,99,15,14, + 25,60,53,35,42,103,9,57,42,57, + 28,76,57,30,30,15,14,52,47,47, + 49,103,60,42,113,57,7,62,11,57, + 99,15,15,60,101,59,72,57,21,83, + 90,7,62,42,42,21,27,42,7,30, + 81,99,25,120,113,55,62,21,30,7, + 23,29,15,7,30,25,60,60,21,84, + 30,42,55,49,21,15,42,55,30,74 }; }; public final static byte nasb[] = Nasb.nasb; @@ -703,18 +691,19 @@ public class C99ExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C9 public interface Nasr { public final static char nasr[] = {0, - 79,77,76,65,75,74,1,0,32,0, - 26,0,97,0,71,0,69,11,59,5, - 0,11,5,24,0,92,66,0,5,11, - 0,79,78,77,76,65,75,74,0,22, - 0,89,0,51,0,90,0,99,0,27, - 49,0,45,44,37,35,27,0,21,45, - 44,37,35,11,0,11,70,0,65,61, - 62,63,64,52,28,0,11,21,0,21, - 44,45,11,0,27,49,11,25,0,42, - 11,41,0,11,88,0,95,0,45,44, - 27,0,81,11,42,0,93,11,25,0, - 11,87,0,11,42,67,0,56,0 + 78,76,75,66,74,73,1,0,90,0, + 98,0,11,5,24,0,71,0,89,0, + 40,0,96,0,22,0,86,11,48,5, + 0,5,11,0,78,77,76,75,66,74, + 73,0,46,45,27,0,26,0,27,51, + 0,21,46,45,36,34,11,0,11,21, + 0,60,0,66,61,62,63,64,53,28, + 0,46,45,36,34,27,0,11,87,0, + 100,0,11,70,0,5,48,42,0,11, + 43,68,0,21,45,46,11,0,56,0, + 27,51,11,25,0,11,88,0,43,11, + 41,0,80,11,43,0,92,67,0,93, + 11,25,0 }; }; public final static char nasr[] = Nasr.nasr; @@ -723,8 +712,8 @@ public class C99ExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C9 public interface TerminalIndex { public final static char terminalIndex[] = {0, 85,2,86,9,87,48,64,76,10,11, - 8,3,6,7,68,81,82,83,84,1, - 12,13,69,44,55,60,63,72,42,90, + 8,1,3,6,7,68,69,81,82,83, + 84,12,13,44,55,60,63,72,42,90, 47,52,56,61,62,66,67,74,75,78, 79,80,91,54,70,73,16,17,30,89, 93,4,14,15,18,19,20,21,29,31, @@ -742,16 +731,16 @@ public class C99ExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C9 100,0,0,0,102,106,107,108,109,110, 0,111,112,113,114,115,116,117,0,118, 97,128,0,96,121,149,0,127,0,0, - 0,98,0,145,147,0,148,0,0,0, - 101,140,158,159,160,0,120,136,146,155, - 0,130,135,0,150,153,154,157,0,104, - 131,132,133,134,137,0,139,144,161,99, - 103,105,119,122,123,124,125,126,129,0, - 138,142,0,0,143,152,95,0,0,0, - 141,0,151,156,0,162,163,0,164,0, + 0,0,145,147,0,148,0,0,0,98, + 101,105,140,158,159,160,0,0,120,136, + 146,155,130,0,150,153,154,157,104,0, + 131,132,133,134,135,137,0,139,144,99, + 103,119,122,123,124,125,126,129,0,138, + 142,0,0,143,152,162,95,0,0,0, + 141,0,151,156,161,0,163,164,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 + 0,0,0,0,0,0 }; }; public final static char nonterminalIndex[] = NonterminalIndex.nonterminalIndex; @@ -759,10 +748,10 @@ public class C99ExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C9 public interface ScopePrefix { public final static char scopePrefix[] = { - 82,113,162,92,35,41,121,12,136,21, - 51,69,28,47,103,158,177,181,145,1, - 1,32,56,79,185,6,107,152,127,152, - 99,59,59,59 + 82,113,92,35,41,121,12,136,21,51, + 69,28,47,103,158,165,169,145,1,1, + 32,56,79,173,6,107,152,152,127,99, + 59,59,59 }; }; public final static char scopePrefix[] = ScopePrefix.scopePrefix; @@ -770,10 +759,10 @@ public class C99ExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C9 public interface ScopeSuffix { public final static char scopeSuffix[] = { - 90,90,90,90,4,4,90,18,142,26, - 4,26,26,4,101,26,26,4,149,4, - 4,26,4,26,26,9,110,155,130,170, - 101,66,61,74 + 90,90,90,4,4,90,18,142,26,4, + 26,26,4,101,26,26,4,149,4,4, + 26,4,26,26,9,110,155,162,130,101, + 66,61,74 }; }; public final static char scopeSuffix[] = ScopeSuffix.scopeSuffix; @@ -781,10 +770,10 @@ public class C99ExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C9 public interface ScopeLhs { public final static char scopeLhs[] = { - 63,61,5,63,26,26,61,53,107,46, - 26,40,46,26,67,6,5,5,19,99, - 98,44,26,37,3,69,67,7,108,5, - 67,40,38,40 + 63,61,63,26,26,61,42,108,47,26, + 39,47,26,68,6,5,5,19,100,99, + 45,26,36,3,86,68,7,5,109,68, + 39,37,39 }; }; public final static char scopeLhs[] = ScopeLhs.scopeLhs; @@ -792,10 +781,10 @@ public class C99ExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C9 public interface ScopeLa { public final static byte scopeLa[] = { - 43,43,43,43,50,50,43,43,86,30, - 50,30,30,50,66,30,30,50,59,50, - 50,30,50,30,30,60,1,30,92,30, - 66,2,2,2 + 43,43,43,50,50,43,43,86,30,50, + 30,30,50,66,30,30,50,59,50,50, + 30,50,30,30,60,1,30,30,92,66, + 2,2,2 }; }; public final static byte scopeLa[] = ScopeLa.scopeLa; @@ -803,10 +792,10 @@ public class C99ExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C9 public interface ScopeStateSet { public final static byte scopeStateSet[] = { - 17,17,32,17,21,21,17,87,-1,25, - 21,9,25,21,3,32,32,32,62,1, - 7,25,21,9,32,88,3,35,-1,32, - 3,9,9,9 + 24,24,24,28,28,24,17,-1,32,28, + 9,32,28,5,39,39,39,69,1,3, + 32,28,9,39,95,5,42,39,-1,5, + 9,9,9 }; }; public final static byte scopeStateSet[] = ScopeStateSet.scopeStateSet; @@ -814,25 +803,24 @@ public class C99ExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C9 public interface ScopeRhs { public final static char scopeRhs[] = {0, - 140,20,0,96,0,189,104,0,31,135, - 0,144,165,104,12,152,0,98,0,0, - 148,104,2,137,0,97,0,148,104,2, - 0,151,2,0,113,23,179,104,20,0, - 113,179,104,23,20,0,113,23,20,0, - 113,179,104,20,0,113,20,0,130,0, + 142,12,0,96,0,190,104,0,31,135, + 0,153,188,104,13,141,0,98,0,0, + 148,104,2,138,0,97,0,148,104,2, + 0,151,2,0,113,17,178,104,12,0, + 113,178,104,17,12,0,113,17,12,0, + 113,178,104,12,0,113,12,0,129,0, 2,0,151,97,0,2,97,0,148,104, - 2,130,0,2,0,150,97,0,141,2, - 0,144,177,104,12,94,185,44,0,98, - 0,144,177,104,12,185,44,0,135,0, - 99,0,184,104,135,0,104,135,0,141, - 99,0,173,104,12,183,94,182,158,0, - 173,104,12,182,158,0,196,85,0,77, - 2,101,97,99,0,196,114,134,2,89, + 2,129,0,2,0,150,97,0,143,2, + 0,153,176,104,13,94,185,44,0,98, + 0,153,176,104,13,185,44,0,136,0, + 99,0,184,104,136,0,104,136,0,141, + 99,0,172,104,13,183,94,182,159,0, + 172,104,13,182,159,0,197,85,0,77, + 2,101,97,99,0,197,114,134,2,89, 0,53,0,0,134,69,111,0,29,118, - 0,153,2,0,97,107,0,153,2,15, - 0,144,165,104,12,114,153,2,0,97, - 3,0,105,0,98,0,181,2,98,0, - 134,20,98,0,134,2,0 + 0,152,2,0,97,107,0,152,2,16, + 0,97,105,0,181,2,98,0,134,12, + 98,0,134,2,0 }; }; public final static char scopeRhs[] = ScopeRhs.scopeRhs; @@ -840,16 +828,16 @@ public class C99ExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C9 public interface ScopeState { public final static char scopeState[] = {0, - 1163,0,1655,1667,1648,0,374,0,1470,1345, - 1426,1261,1168,1220,1190,0,663,1251,315,0, - 1469,1441,342,340,1168,1220,1190,1642,1432,1535, - 0,1098,535,381,1479,1444,1570,437,347,667, - 601,1330,1317,695,1416,1285,1405,1394,1368,1357, - 1562,1547,1536,476,455,1527,1519,1511,1106,729, - 549,1170,1134,1114,1078,1058,1037,1016,642,995, - 619,510,974,953,932,911,890,869,848,827, - 806,785,764,315,743,580,559,416,489,395, - 0 + 1262,0,342,0,1664,1429,1593,0,1471,1334, + 1428,1259,1238,1127,1097,0,546,492,396,1203, + 442,1407,0,567,1225,317,0,1473,1154,1149, + 1120,1238,1127,1097,592,1430,1500,0,1578,1442, + 475,1489,1479,1407,1192,600,1227,1209,1323,1310, + 1109,1299,1098,1417,1396,1385,1351,1535,1527,1514, + 579,569,1431,1374,1069,1059,1011,1001,1077,1039, + 1019,546,981,961,940,919,450,898,513,349, + 877,856,835,814,793,772,751,730,709,688, + 667,317,646,417,492,396,0 }; }; public final static char scopeState[] = ScopeState.scopeState; @@ -857,28 +845,27 @@ public class C99ExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C9 public interface InSymb { public final static char inSymb[] = {0, - 0,180,104,166,15,22,21,10,9,4, - 11,14,13,98,2,102,101,105,103,107, + 0,180,104,165,16,23,22,10,9,4, + 11,15,14,98,2,102,101,105,103,107, 106,109,108,111,110,99,29,2,2,67, - 52,2,20,153,134,135,104,10,9,54, + 52,2,12,152,134,136,104,10,9,54, 53,4,58,57,56,55,47,48,11,62, 61,64,63,69,68,65,79,78,77,75, - 76,74,73,72,71,70,60,153,153,181, - 134,114,104,20,2,138,137,167,168,158, - 169,46,45,170,44,171,172,94,101,101, + 76,74,73,72,71,70,60,152,152,181, + 134,114,104,12,2,139,138,166,167,159, + 168,46,45,169,44,170,171,94,101,101, 103,103,103,103,102,102,106,105,105,108, - 107,134,110,109,114,114,12,142,120,23, - 113,104,4,151,104,2,182,159,159,185, - 159,59,104,120,4,104,113,179,149,148, - 118,104,150,104,94,12,94,12,165,104, - 12,152,4,120,179,23,113,4,2,128, - 130,104,29,148,183,104,12,104,144,29, - 189,52,20,190,104,12,120,104,113,113, - 141,104,2,142,12,173,135,174,104,177, - 94,178,60,140,52,20,104,104,149,104, - 104,104,177,144,60,29,140,165,149,148, - 186,173,184,59,141,2,104,144,144,29, - 29,59,142,125 + 107,134,110,109,114,114,13,141,144,120, + 17,113,104,4,151,104,2,182,160,160, + 185,160,59,104,13,120,4,104,113,178, + 149,148,118,104,150,104,94,13,94,13, + 104,4,120,178,17,113,4,2,127,129, + 104,29,148,183,104,13,104,188,104,120, + 104,113,113,143,104,2,144,13,172,136, + 173,104,176,94,177,153,29,190,52,12, + 191,104,149,104,104,104,176,153,60,29, + 133,60,142,52,12,149,148,186,172,184, + 59,143,2,104,153,142,29,29,59,144 }; }; public final static char inSymb[] = InSymb.inSymb; @@ -1052,6 +1039,7 @@ public class C99ExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C9 "or", "array_direct_abstract_declarat" + "or", + "initializer_seq", "designated_initializer", "designation", "designator_list", @@ -1063,8 +1051,8 @@ public class C99ExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C9 public final static int ERROR_SYMBOL = 51, - SCOPE_UBOUND = 33, - SCOPE_SIZE = 34, + SCOPE_UBOUND = 32, + SCOPE_SIZE = 33, MAX_NAME_LENGTH = 38; public final int getErrorSymbol() { return ERROR_SYMBOL; } @@ -1073,20 +1061,20 @@ public class C99ExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C9 public final int getMaxNameLength() { return MAX_NAME_LENGTH; } public final static int - NUM_STATES = 214, + NUM_STATES = 210, NT_OFFSET = 93, - LA_STATE_OFFSET = 2112, + LA_STATE_OFFSET = 2084, MAX_LA = 2, - NUM_RULES = 314, - NUM_NONTERMINALS = 124, - NUM_SYMBOLS = 217, + NUM_RULES = 316, + NUM_NONTERMINALS = 126, + NUM_SYMBOLS = 219, SEGMENT_SIZE = 8192, - START_STATE = 1660, + START_STATE = 1249, IDENTIFIER_SYMBOL = 0, EOFT_SYMBOL = 80, EOLT_SYMBOL = 80, - ACCEPT_ACTION = 1788, - ERROR_ACTION = 1798; + ACCEPT_ACTION = 1758, + ERROR_ACTION = 1768; public final static boolean BACKTRACK = true; diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionParsersym.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionParsersym.java index bcbc8d155cd..0a63ad78515 100644 --- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionParsersym.java +++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionParsersym.java @@ -39,8 +39,8 @@ public interface C99ExpressionParsersym { TK_return = 90, TK_short = 36, TK_signed = 37, - TK_sizeof = 15, - TK_static = 23, + TK_sizeof = 16, + TK_static = 17, TK_struct = 45, TK_switch = 91, TK_typedef = 28, @@ -52,27 +52,27 @@ public interface C99ExpressionParsersym { TK__Bool = 40, TK__Complex = 41, TK__Imaginary = 42, - TK_integer = 16, - TK_floating = 17, - TK_charconst = 18, - TK_stringlit = 19, + TK_integer = 18, + TK_floating = 19, + TK_charconst = 20, + TK_stringlit = 21, TK_identifier = 1, TK_Completion = 3, TK_EndOfCompletion = 5, TK_Invalid = 93, - TK_LeftBracket = 20, + TK_LeftBracket = 12, TK_LeftParen = 2, - TK_LeftBrace = 12, + TK_LeftBrace = 13, TK_Dot = 52, TK_Arrow = 67, - TK_PlusPlus = 13, - TK_MinusMinus = 14, + TK_PlusPlus = 14, + TK_MinusMinus = 15, TK_And = 11, TK_Star = 4, TK_Plus = 9, TK_Minus = 10, - TK_Tilde = 21, - TK_Bang = 22, + TK_Tilde = 22, + TK_Bang = 23, TK_Slash = 53, TK_Percent = 54, TK_RightShift = 47, @@ -122,18 +122,18 @@ public interface C99ExpressionParsersym { "Plus", "Minus", "And", + "LeftBracket", "LeftBrace", "PlusPlus", "MinusMinus", "sizeof", + "static", "integer", "floating", "charconst", "stringlit", - "LeftBracket", "Tilde", "Bang", - "static", "auto", "extern", "inline", 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 b480dbab101..d54324f4e29 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 @@ -17,17 +17,17 @@ import lpg.lpgjavaruntime.*; import java.util.*; import org.eclipse.cdt.core.dom.ast.*; -import org.eclipse.cdt.core.dom.lrparser.CPreprocessorAdapter; import org.eclipse.cdt.core.dom.lrparser.IDOMTokenMap; import org.eclipse.cdt.core.dom.lrparser.IParser; import org.eclipse.cdt.core.dom.lrparser.ITokenCollector; +import org.eclipse.cdt.core.dom.lrparser.CPreprocessorAdapter; +import org.eclipse.cdt.core.dom.lrparser.action.ITokenStream; import org.eclipse.cdt.core.dom.lrparser.lpgextensions.FixedBacktrackingParser; import org.eclipse.cdt.core.dom.lrparser.action.ScopedStack; import org.eclipse.cdt.core.parser.IScanner; import org.eclipse.cdt.core.dom.parser.IBuiltinBindingsProvider; import org.eclipse.cdt.core.index.IIndex; -import org.eclipse.cdt.core.dom.lrparser.action.ITokenStream; import org.eclipse.cdt.core.dom.lrparser.action.ITokenMap; import org.eclipse.cdt.core.dom.lrparser.action.TokenMap; import org.eclipse.cdt.core.dom.lrparser.ISecondaryParser; @@ -244,9 +244,9 @@ public void setTokens(List tokens) { addToken(new Token(null, 0, 0, C99NoCastExpressionParsersym.TK_EOF_TOKEN)); } -public C99NoCastExpressionParser(ITokenStream parser, Set options) { // constructor for creating secondary parser +public C99NoCastExpressionParser(ITokenStream stream, Set options) { // constructor for creating secondary parser initActions(options); - tokenMap = new TokenMap(C99NoCastExpressionParsersym.orderedTerminalSymbols, parser.getOrderedTerminalSymbols()); + tokenMap = new TokenMap(C99NoCastExpressionParsersym.orderedTerminalSymbols, stream.getOrderedTerminalSymbols()); } @@ -340,7 +340,7 @@ public C99NoCastExpressionParser(ITokenStream parser, Set optio } // - // Rule 28: postfix_expression ::= ( type_id ) { initializer_list comma_opt } + // Rule 28: postfix_expression ::= ( type_id ) initializer_list // case 28: { action. consumeExpressionTypeIdInitializer(); break; } @@ -1156,117 +1156,117 @@ public C99NoCastExpressionParser(ITokenStream parser, Set optio } // - // Rule 281: initializer ::= start_initializer_list { initializer_list comma_opt } end_initializer_list - // - case 281: { action. consumeInitializerList(); break; - } - - // - // Rule 282: initializer ::= { } + // Rule 282: initializer_list ::= start_initializer_list { initializer_seq comma_opt } end_initializer_list // case 282: { action. consumeInitializerList(); break; } // - // Rule 283: start_initializer_list ::= $Empty + // Rule 283: initializer_list ::= { } // - case 283: { action. initializerListStart(); break; + case 283: { action. consumeInitializerList(); break; } // - // Rule 284: end_initializer_list ::= $Empty + // Rule 284: start_initializer_list ::= $Empty // - case 284: { action. initializerListEnd(); break; + case 284: { action. initializerListStart(); break; } // - // Rule 289: designated_initializer ::= designation = initializer + // Rule 285: end_initializer_list ::= $Empty // - case 289: { action. consumeInitializerDesignated(); break; + case 285: { action. initializerListEnd(); break; } // - // Rule 293: designator_base ::= [ constant_expression ] + // Rule 290: designated_initializer ::= designation = initializer // - case 293: { action. consumeDesignatorArray(); break; + case 290: { action. consumeInitializerDesignated(); break; } // - // Rule 294: designator_base ::= . identifier_token + // Rule 294: designator_base ::= [ constant_expression ] // - case 294: { action. consumeDesignatorField(); break; + case 294: { action. consumeDesignatorArray(); break; } // - // Rule 295: designator ::= [ constant_expression ] + // Rule 295: designator_base ::= . identifier_token // - case 295: { action. consumeDesignatorArray(); break; + case 295: { action. consumeDesignatorField(); break; } // - // Rule 296: designator ::= . identifier_token + // Rule 296: designator ::= [ constant_expression ] // - case 296: { action. consumeDesignatorField(); break; + case 296: { action. consumeDesignatorArray(); break; } // - // Rule 297: translation_unit ::= external_declaration_list + // Rule 297: designator ::= . identifier_token // - case 297: { action. consumeTranslationUnit(); break; + case 297: { action. consumeDesignatorField(); break; + } + + // + // Rule 298: translation_unit ::= external_declaration_list + // + case 298: { action. consumeTranslationUnit(); break; } // - // Rule 298: translation_unit ::= $Empty + // Rule 299: translation_unit ::= $Empty // - case 298: { action. consumeTranslationUnit(); break; + case 299: { action. consumeTranslationUnit(); break; } // - // Rule 303: external_declaration ::= ; + // Rule 304: external_declaration ::= ; // - case 303: { action. consumeDeclarationEmpty(); break; + case 304: { action. consumeDeclarationEmpty(); break; } // - // Rule 304: external_declaration ::= ERROR_TOKEN + // Rule 305: external_declaration ::= ERROR_TOKEN // - case 304: { action. consumeDeclarationProblem(); break; + case 305: { action. consumeDeclarationProblem(); break; } // - // Rule 307: function_definition ::= declaration_specifiers function_declarator function_body + // Rule 309: function_definition ::= function_declarator function_body // - case 307: { action. consumeFunctionDefinition(true); break; + case 309: { action. consumeFunctionDefinition(false); break; } // - // Rule 308: function_definition ::= function_declarator function_body + // Rule 310: function_definition ::= declaration_specifiers knr_function_declarator declaration_list compound_statement // - case 308: { action. consumeFunctionDefinition(false); break; + case 310: { action. consumeFunctionDefinitionKnR(); break; } // - // Rule 309: function_definition ::= declaration_specifiers knr_function_declarator declaration_list compound_statement + // Rule 311: normal_function_definition ::= declaration_specifiers function_declarator function_body // - case 309: { action. consumeFunctionDefinitionKnR(); break; + case 311: { action. consumeFunctionDefinition(true); break; } // - // Rule 310: function_body ::= { } + // Rule 312: function_body ::= { } // - case 310: { action. consumeStatementCompoundStatement(false); break; + case 312: { action. consumeStatementCompoundStatement(false); break; } // - // Rule 311: function_body ::= { block_item_list } + // Rule 313: function_body ::= { block_item_list } // - case 311: { action. consumeStatementCompoundStatement(true); break; + case 313: { action. consumeStatementCompoundStatement(true); break; } // - // Rule 313: no_cast_start ::= ERROR_TOKEN + // Rule 315: no_cast_start ::= ERROR_TOKEN // - case 313: { action. consumeEmpty(); break; + case 315: { action. consumeEmpty(); 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 e5eaae6b6a8..0144ef8a067 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 @@ -36,7 +36,7 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public final static short baseCheck[] = {0, 0,0,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,3,1, - 1,4,4,3,3,2,2,8,1,0, + 1,4,4,3,3,2,2,4,1,0, 1,1,2,2,2,2,2,2,2,2, 2,4,1,1,3,3,3,1,3,3, 1,3,3,1,3,3,3,3,1,3, @@ -62,154 +62,153 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab 6,0,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, - 7,3,0,0,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,0,0,-156,0,0,0,0,0, - 0,0,0,0,0,0,-114,0,-72,-2, - -29,0,0,0,0,-54,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-137,0,-115,0, - -116,0,-4,0,0,0,0,0,-6,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-120,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,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,0,-110,0,0,0,0,0,0, - 0,0,0,0,0,0,-78,0,-15,-104, - -133,-33,0,0,-34,0,-16,0,-193,0, - 0,0,0,-117,0,-17,0,-157,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-70,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,-118, - 0,0,0,-5,0,0,0,0,0,0, - 0,0,-18,-86,0,0,0,-7,0,0, - 0,0,0,0,0,0,-180,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,-132,0, - 0,0,0,0,0,0,0,0,-51,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-30,0,-107,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-73,-125, + 1,7,3,0,0,1,1,3,3,4, + 1,1,2,3,2,3,2,1,0,1, + 2,1,1,1,1,1,2,1,3,6, + 4,2,4,1,1,-32,0,0,0,0, + 0,0,0,0,0,0,-2,0,0,0, + 0,0,0,0,0,0,0,0,-4,-156, + -115,0,-15,0,0,0,0,-70,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - -129,0,-165,0,0,-83,0,-48,0,0, + -167,0,-33,0,-104,0,0,0,0,-78, + 0,0,-116,0,-16,0,-17,0,0,0, + 0,0,0,0,-138,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,-85,0,0,0,0,-52,0,0, + 0,0,0,0,0,-174,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-19,0,0,-20,0,0,0, 0,0,0,0,0,0,0,0,0,0, - -159,0,-182,0,0,0,0,0,0,0, - -27,0,0,0,0,0,0,0,0,0, - 0,-21,0,0,0,0,0,0,0,0, - 0,-56,0,0,0,0,0,0,0,0, - 0,0,-22,0,0,0,0,0,0,0, - 0,0,-57,0,0,0,0,0,0,0, - 0,0,0,-23,0,0,0,0,0,0, - 0,0,0,-58,0,0,0,0,0,0, - 0,0,0,0,-24,0,0,0,0,0, - 0,0,0,0,-59,0,0,0,0,0, - 0,0,0,0,0,-25,0,0,0,0, - 0,0,0,0,0,-60,0,0,0,0, - 0,0,0,0,0,0,-26,0,0,0, - 0,0,0,0,0,0,-61,0,0,0, - 0,0,0,0,0,0,0,-68,0,0, - 0,0,0,0,0,0,0,-62,0,0, - 0,0,0,0,0,0,0,0,-84,0, - 0,0,0,0,0,0,0,0,-63,0, - 0,0,0,0,0,0,0,0,0,-87, - 0,0,0,0,0,0,0,0,0,-64, + 0,-178,0,-128,-76,0,0,-48,0,0, 0,0,0,0,0,0,0,0,0,0, - -88,0,0,0,0,0,0,0,0,0, - -65,0,0,0,0,0,0,0,0,0, - 0,-89,0,0,0,0,0,0,0,0, - 0,-66,0,0,0,0,0,0,0,0, - 0,0,-90,0,0,0,0,0,0,0, - 0,0,-119,0,0,0,0,0,0,0, - 0,0,0,-91,0,0,0,0,0,0, - 0,0,0,-142,0,0,0,0,0,0, - 0,0,0,0,-92,0,0,0,0,0, - 0,0,0,0,-143,0,0,0,0,0, - 0,0,0,0,0,-93,0,0,0,0, - 0,0,0,0,0,-160,0,0,0,0, - 0,0,0,0,0,0,-162,0,0,0, - 0,0,0,0,0,-183,0,0,0,0, - 0,0,0,0,0,0,-174,0,0,0, - 0,0,0,0,0,-94,-76,0,0,-136, - -95,0,-8,0,0,0,0,0,0,0, - -192,0,0,0,0,0,0,0,0,0, + 0,0,-34,0,0,0,-18,0,-42,0, 0,0,0,0,0,0,0,0,0,0, - -201,0,0,0,0,0,0,0,0,0, - 0,-96,0,0,0,0,0,0,0,0, - 0,-155,0,-97,-98,0,0,-9,0,0, - 0,0,0,0,0,-209,0,0,0,0, + 0,-6,0,0,0,0,0,0,0,0, + -189,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,-128,-46,0,0, - 0,0,0,0,0,0,0,0,-49,0, - 0,0,0,0,0,0,0,0,0,-111, - 0,0,0,-108,-173,-146,-122,-127,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,-189,0,0,-1,0,0,0,0,-99, - 0,0,0,0,0,0,0,-100,0,0, - 0,0,0,0,0,-171,0,0,0,0, - -113,-131,0,-185,0,0,0,0,0,0, - 0,0,0,0,0,-101,-135,-102,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,-103,0,0,0,0, - -50,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,-208,0,-106,0,0, - -121,0,0,-130,-134,-139,0,-42,0,0, - 0,0,0,0,0,0,0,0,-47,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,-12,0,0,0,0, + 0,-3,0,0,0,0,0,0,0,0, + 0,0,-19,0,0,0,0,0,0,0, + 0,0,0,0,-117,0,0,-118,0,-119, 0,0,0,-43,0,0,0,0,0,0, - 0,0,0,0,-44,0,0,0,0,0, - 0,0,0,0,0,-45,0,0,0,0, - 0,0,0,0,0,0,-203,0,0,-10, - 0,0,0,0,0,0,0,0,-37,0, - 0,0,0,0,0,0,0,-38,0,0, - 0,0,0,0,0,0,-71,-170,-138,0, - 0,0,0,0,0,0,-152,0,0,0, - -126,-79,-186,0,-74,-158,-178,-124,-177,0, - 0,-140,0,-145,0,0,0,0,0,0, + 0,0,0,0,0,-108,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-210,0,0,-109, - -211,-147,-31,-123,0,-11,0,0,0,0, - 0,0,0,0,-161,-179,0,-81,0,0, - 0,0,-202,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-13,0,0,0, - 0,0,0,0,0,0,0,-39,0,0, - 0,0,0,0,0,0,-207,-196,-148,0, - 0,-40,0,0,0,0,0,0,0,-41, - 0,0,0,0,0,0,0,-112,0,0, - -169,-141,0,-14,0,0,-154,0,0,0, - -75,0,0,0,0,0,0,0,-144,-28, - 0,-166,0,-163,0,0,-35,0,0,0, - 0,0,0,0,0,-176,0,0,0,0, + 0,0,0,0,0,0,-5,0,0,0, + 0,0,0,0,-127,0,0,0,0,0, + 0,0,0,0,0,-79,0,0,0,0, + 0,0,0,0,0,-131,0,-158,0,-55, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-151,0,0,-77,0,-187,0, - -164,-172,0,0,0,-167,0,0,-105,0, - -80,0,0,-190,0,-82,0,0,0,0, - 0,-200,-153,0,0,0,0,0,-195,0, + -122,0,0,0,0,0,0,0,0,0, + -20,0,-21,0,0,0,0,-27,0,0, + 0,0,0,0,0,0,0,0,-22,0, + 0,0,0,0,0,0,0,0,0,0, + -23,0,-188,0,-24,0,0,0,0,-72, + 0,-12,0,0,0,0,0,0,0,0, + 0,0,0,0,-56,0,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,0,0,-25,0,0,0, + 0,0,0,0,0,0,-58,0,0,0, + 0,0,0,0,0,0,0,-26,0,0, + 0,0,0,0,0,0,0,-59,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,-60,0, + 0,0,0,0,0,0,0,0,0,-84, + 0,0,0,0,0,0,0,0,0,-61, + 0,0,0,0,0,0,0,0,0,0, + -87,0,0,0,0,0,0,0,0,0, + -62,0,0,0,0,0,0,0,0,0, + 0,-88,0,0,0,0,0,0,0,0, + 0,-63,0,0,0,0,0,0,0,0, + 0,0,-89,0,0,0,0,0,0,0, + 0,0,-64,0,0,0,0,0,0,0, + 0,0,0,-90,0,0,0,0,0,0, + 0,0,0,-65,0,0,0,0,0,0, + 0,0,0,0,-91,0,0,0,0,0, + 0,0,0,0,-66,0,0,0,0,0, + 0,0,0,0,0,-92,0,0,0,0, + 0,0,0,0,0,-120,0,0,0,0, + 0,0,0,0,0,0,-93,0,0,0, + 0,0,0,0,0,0,-141,0,0,0, + 0,0,0,0,0,0,0,-94,0,0, + 0,0,0,0,0,0,0,-142,0,0, + 0,0,0,0,0,0,0,0,-95,0, + 0,0,0,0,0,0,0,0,-177,0, + 0,0,0,0,0,0,0,0,0,-134, + 0,0,0,0,0,0,0,0,-186,0, + 0,0,0,0,0,0,0,0,0,-96, + 0,0,0,0,0,0,0,0,-13,0, + 0,0,0,0,0,0,-7,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,-198,0,0,0,0,0, + 0,0,0,0,0,-135,0,0,0,0, + 0,0,0,0,-155,-170,0,-176,0,0, + -97,0,-8,0,0,0,0,0,0,0, + -206,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,0, + 0,-130,0,0,0,0,0,0,-98,-180, + -191,0,0,0,0,-73,-99,0,-37,0, + 0,0,0,0,0,0,0,0,-100,-145, + 0,0,-110,0,0,0,0,0,0,0, + 0,0,0,0,0,0,-200,-193,-124,0, + -187,0,0,0,0,0,-101,0,-102,0, + -146,0,0,0,0,0,0,0,0,0, + 0,0,0,0,-35,0,-105,0,0,0, + 0,0,0,0,0,0,0,0,0,-184, + -107,-83,0,-29,0,0,-51,0,0,0, + 0,0,0,0,0,0,0,-121,0,0, + 0,0,0,0,0,-69,0,0,0,0, + 0,0,0,-52,0,0,0,0,0,0, + 0,0,0,0,-164,0,0,0,-137,-154, + 0,-30,0,-123,0,0,0,-183,0,0, + -67,0,0,0,0,-132,0,-136,0,-81, + 0,0,0,-140,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,-38,0,0,0, + 0,0,0,0,0,0,-49,0,0,0, + 0,0,0,0,0,0,0,0,0,-50, + 0,0,0,0,0,0,0,0,0,0, + -205,0,0,0,-153,0,-157,-85,0,0, + -151,0,-171,-172,-175,0,-199,0,0,-44, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,-9, + 0,0,0,0,0,0,0,-166,0,-45, + 0,0,0,0,0,0,0,0,0,0, + -46,0,0,0,0,0,0,0,0,0, + -47,0,0,0,0,0,0,0,0,0, + -71,0,0,-74,-86,-109,0,-112,-139,-165, + -204,0,-111,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,-207,0,0, + 0,0,0,0,0,0,0,0,0,0, + -147,0,0,0,0,-144,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,-173,0,0, + -10,0,0,0,0,0,0,0,-11,0, + 0,0,0,0,0,0,-31,-39,0,0, + 0,0,0,0,0,0,-113,0,-40,0, + 0,0,0,0,0,0,0,0,-68,-126, + -143,-162,0,-41,0,0,0,0,0,0, + 0,0,0,0,-14,-129,-159,0,0,0, + 0,-28,-36,0,0,0,0,-179,0,-160, + -148,-190,0,0,0,-185,0,0,0,0, + 0,0,0,0,0,-196,0,-75,0,0, + 0,0,0,0,0,0,0,0,0,0, + -77,0,0,0,-197,-80,0,0,0,0, + 0,-106,-169,0,0,0,0,0,0,-82, 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,-175,-69,0, - 0,-36,-150,-168,0,-181,-149,0,0,-53, - 0,-204,0,0,-197,-194,-191,-198,-199,0, - 0,0,0,0,-205,0,0,0,0,0, - 0,0,-206,0,0,0,0,0,0,0, + 0,0,-125,0,0,-152,-181,0,0,0, + 0,-182,0,0,0,0,0,0,-133,0, + 0,-168,0,0,0,-203,-1,-114,-163,0, + 0,0,0,0,-53,0,0,0,0,0, + 0,-150,-149,0,-202,0,0,0,-103,0, + 0,0,0,0,0,0,0,0,0,-201, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, + -161,-194,-195,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; @@ -219,183 +218,182 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface BaseAction { public final static char baseAction[] = { - 87,11,101,24,24,23,23,32,32,69, + 87,11,102,24,24,23,23,39,39,69, 69,1,1,2,2,2,2,3,3,3, - 4,5,5,5,5,5,5,5,5,51, - 51,70,6,6,6,6,6,6,6,6, + 4,5,5,5,5,5,5,5,5,59, + 59,70,6,6,6,6,6,6,6,6, 6,6,6,7,8,8,8,8,9,9, 9,10,10,10,12,12,12,12,12,13, 13,13,14,14,15,15,16,16,17,17, 18,18,19,19,20,20,20,20,20,20, - 20,20,20,20,20,20,102,45,40,88, - 88,73,73,46,103,103,103,103,103,103, - 103,104,104,104,105,105,110,110,111,111, - 106,106,107,107,107,113,113,108,108,108, - 108,109,109,109,109,109,112,112,25,25, - 25,25,25,28,28,28,79,79,74,74, - 74,74,75,75,75,76,76,76,77,77, - 77,78,78,78,114,114,115,115,116,29, - 31,31,31,31,31,52,54,54,54,54, + 20,20,20,20,20,20,103,45,40,88, + 88,72,72,47,104,104,104,104,104,104, + 104,105,105,105,106,106,111,111,112,112, + 107,107,108,108,108,114,114,109,109,109, + 109,110,110,110,110,110,113,113,25,25, + 25,25,25,28,28,28,78,78,73,73, + 73,73,74,74,74,75,75,75,76,76, + 76,77,77,77,115,115,116,116,117,29, + 31,31,31,31,31,53,54,54,54,54, 54,54,54,54,54,54,54,54,63,60, - 60,89,90,64,64,61,61,61,65,80, - 80,81,81,66,66,66,48,91,91,82, - 83,83,83,62,62,92,84,84,85,85, - 67,67,21,22,22,22,30,47,47,33, - 33,33,33,36,36,38,34,34,35,39, - 39,117,117,37,118,118,93,93,26,26, - 26,26,26,26,26,26,26,86,49,49, - 49,49,27,56,56,55,55,55,57,57, - 50,50,94,94,71,71,58,58,58,41, + 60,89,90,65,65,61,61,61,66,79, + 79,80,80,67,67,67,49,91,91,81, + 82,82,82,62,62,92,83,83,84,84, + 68,68,21,22,22,22,30,48,48,32, + 32,32,32,35,35,37,33,33,34,38, + 38,118,118,36,119,119,93,93,26,26, + 26,26,26,26,26,26,26,85,50,50, + 50,50,27,56,56,55,55,55,57,57, + 51,51,94,94,71,71,58,58,58,41, 41,41,42,43,43,43,44,44,44,44, - 53,53,53,59,95,72,72,72,72,68, - 96,97,97,98,98,99,99,119,119,120, - 120,121,121,121,121,123,123,122,122,122, - 124,124,87,87,1,899,17,21,18,469, - 857,44,486,477,714,244,543,752,717,794, - 773,836,815,74,91,134,212,250,589,199, - 502,281,136,133,135,159,488,20,17,21, - 18,469,43,44,486,477,714,28,543,752, - 717,794,773,1276,878,274,138,679,165,157, - 186,157,185,541,142,145,148,151,1097,488, - 20,17,21,18,469,43,40,373,1445,1571, - 1617,1631,1636,666,415,20,17,21,18,469, - 857,44,486,477,714,367,543,752,717,794, - 773,836,815,74,280,464,20,17,21,18, - 469,857,44,486,477,714,367,543,752,717, - 794,773,836,815,74,280,488,20,17,21, - 18,469,43,44,486,477,714,285,543,752, - 717,794,1278,1326,364,20,17,21,18,469, - 43,36,286,1446,1495,291,1100,445,285,671, - 13,13,157,31,1326,157,31,324,245,157, - 1447,394,1643,286,329,1325,194,1649,335,20, - 17,21,18,469,857,44,486,477,714,367, - 543,752,717,794,773,836,815,74,280,275, - 20,17,21,18,469,857,44,486,477,714, - 1480,543,752,717,794,773,836,815,74,1214, - 157,187,369,238,512,20,17,21,18,469, - 41,287,25,12,61,24,209,1326,488,20, - 17,21,18,469,43,39,288,440,20,17, - 21,18,469,857,44,486,477,714,22,543, - 752,717,794,773,836,815,74,280,488,20, - 17,21,18,469,857,44,486,477,714,254, - 543,752,717,794,773,836,815,74,91,488, - 20,17,21,18,469,43,44,486,477,714, - 289,543,752,717,1155,281,1326,536,20,17, - 21,18,469,857,44,486,477,714,1484,543, - 752,717,794,773,836,815,74,1448,19,678, - 299,20,17,21,18,469,857,44,486,477, - 714,373,543,752,717,794,773,836,815,74, - 1579,189,178,52,239,275,189,178,488,20, - 17,21,18,469,43,44,486,477,714,1437, - 543,1101,134,212,253,212,281,134,212,136, - 133,135,159,281,137,133,135,159,488,20, - 17,21,18,469,43,44,486,477,714,1296, - 543,752,1240,138,30,165,23,31,139,1443, - 165,142,145,148,151,1097,143,146,149,152, - 1097,157,294,157,296,1445,1571,1617,1631,1636, - 666,488,20,17,21,18,469,857,44,486, - 477,714,63,543,752,717,794,773,836,815, - 74,92,488,20,17,21,18,469,857,44, - 486,477,714,191,543,752,717,794,773,836, - 815,74,85,488,20,17,21,18,469,857, - 44,486,477,714,242,543,752,717,794,773, - 836,815,74,84,488,20,17,21,18,469, - 857,44,486,477,714,402,543,752,717,794, - 773,836,815,74,83,488,20,17,21,18, - 469,857,44,486,477,714,6,543,752,717, - 794,773,836,815,74,82,488,20,17,21, - 18,469,857,44,486,477,714,523,543,752, - 717,794,773,836,815,74,81,488,20,17, - 21,18,469,857,44,486,477,714,159,543, - 752,717,794,773,836,815,74,80,488,20, - 17,21,18,469,857,44,486,477,714,560, - 543,752,717,794,773,836,815,74,79,488, - 20,17,21,18,469,857,44,486,477,714, - 306,543,752,717,794,773,836,815,74,78, - 488,20,17,21,18,469,857,44,486,477, - 714,342,543,752,717,794,773,836,815,74, - 77,488,20,17,21,18,469,857,44,486, - 477,714,544,543,752,717,794,773,836,815, - 74,76,488,20,17,21,18,469,857,44, - 486,477,714,647,543,752,717,794,773,836, - 815,74,75,488,20,17,21,18,469,857, - 44,486,477,714,657,543,752,717,794,773, - 836,815,74,73,488,20,17,21,18,469, - 857,44,486,477,714,659,543,752,717,794, - 773,836,815,74,1582,488,20,17,21,18, - 469,857,44,486,477,714,413,543,752,717, - 794,773,836,815,74,1626,488,20,17,21, - 18,469,43,44,486,477,714,244,543,752, - 717,794,773,836,815,93,488,20,17,21, - 18,469,43,44,486,477,714,655,543,752, - 717,794,773,836,815,93,675,236,1232,282, - 698,144,1686,488,20,17,21,18,469,43, - 38,488,20,17,21,18,469,43,44,486, - 477,714,1696,543,752,717,794,773,836,815, - 93,488,20,17,21,18,469,43,44,486, - 477,714,50,543,752,717,794,773,836,815, - 93,325,604,1447,57,412,194,211,488,20, - 17,21,18,469,43,37,488,20,17,21, - 18,469,43,44,486,477,714,201,543,752, - 717,794,773,836,815,93,337,151,488,20, - 17,21,18,469,43,44,486,1046,1687,488, - 20,17,21,18,469,43,44,486,477,714, - 281,1142,202,273,61,244,207,97,281,208, - 217,1482,220,1539,222,223,228,1561,266,639, - 339,271,361,272,262,388,1449,1496,240,276, - 550,278,273,1692,1562,263,578,179,547,217, - 1482,220,1539,222,223,228,200,266,639,339, - 271,543,429,1684,52,217,1482,220,1539,222, - 223,228,1262,661,1210,87,154,13,307,1503, - 312,260,273,1321,277,253,212,1187,1152,218, - 1482,220,1539,222,223,228,676,268,639,339, - 271,488,20,17,21,18,469,43,44,486, - 477,714,258,1154,197,199,361,1614,709,1324, - 1538,710,340,1642,693,712,716,1692,488,20, - 17,21,18,469,43,44,486,477,962,488, - 20,17,21,18,469,43,44,486,1096,217, - 1482,220,1539,222,223,228,488,20,17,21, - 18,469,34,1503,488,20,17,21,18,469, - 43,44,486,477,983,488,20,17,21,18, - 469,43,44,486,477,1004,488,20,17,21, - 18,469,43,44,486,477,1025,623,198,199, - 488,20,17,21,18,469,43,36,1692,488, - 20,17,21,18,469,43,44,920,488,20, - 17,21,18,469,43,44,941,672,543,13, - 217,1482,220,1539,222,223,228,717,1558,1619, - 1067,110,493,612,1684,232,104,394,61,718, - 276,230,97,273,364,20,17,21,18,469, - 43,36,254,212,254,212,134,212,266,639, - 339,271,242,141,133,135,159,638,246,1621, - 52,261,715,161,52,1210,488,20,17,21, - 18,469,43,35,1679,681,719,140,517,165, - 1697,253,212,720,1321,253,212,371,227,273, - 218,1482,220,1539,222,223,228,488,20,17, - 21,18,469,33,266,639,339,271,488,20, - 17,21,18,469,43,47,1441,64,646,697, - 1441,265,488,20,17,21,18,469,43,46, - 488,20,17,21,18,469,43,45,323,254, - 212,323,569,530,13,226,640,13,1770,661, - 1014,603,661,663,1770,314,281,1770,1596,61, - 13,1770,61,1187,13,1318,1187,421,1318,196, - 484,314,134,212,292,415,604,1447,578,144, - 133,135,159,241,87,196,243,1629,258,615, - 1256,258,1483,1218,281,1324,1218,608,1324,282, - 87,572,13,1770,1770,615,61,89,1483,241, - 661,637,1264,1677,718,341,642,279,134,212, - 1770,1770,495,48,1187,147,133,135,159,698, - 244,686,134,212,661,273,1321,134,212,150, - 133,135,159,208,153,133,135,159,196,258, - 268,639,339,271,1695,693,1324,142,95,97, - 1634,1496,13,711,281,1705,61,97,661,661, - 13,1087,97,578,661,281,61,244,370,244, - 1713,578,196,196,1770,244,1318,224,1187,191, - 293,193,1698,244,1318,1770,1770,1770,229,1318, - 295,233,87,1215,1678,1087,1087,544,1629,203, - 87,180,1770,259,1770,1248,1256,204,1770,1770, - 1770,1477,1770,191,192,1481,1770,1770,1770,1770, - 1770,1770,1770,1770,1770,1770,1770,1699,1678,1770, - 0,20,178,0,1,1995,0,1,2006,0 + 64,64,46,46,52,96,95,95,95,95, + 86,97,98,98,99,99,100,100,120,120, + 121,121,122,122,122,122,124,124,123,123, + 123,125,126,126,87,87,1,780,17,21, + 18,343,738,44,387,385,523,293,467,633, + 631,661,649,717,665,74,91,134,212,431, + 236,108,990,687,136,133,135,159,275,20, + 17,21,18,343,738,44,387,385,523,1153, + 467,633,631,661,649,717,665,74,1426,138, + 165,519,238,71,31,31,142,145,148,151, + 199,445,1268,71,186,246,1228,69,339,1424, + 1578,1591,1596,1610,1212,424,20,17,21,18, + 343,738,44,387,385,523,340,467,633,631, + 661,649,717,665,74,280,335,20,17,21, + 18,343,738,44,387,385,523,340,467,633, + 631,661,649,717,665,74,280,1355,442,292, + 194,281,583,25,210,104,383,1197,482,20, + 17,21,18,343,43,44,387,385,523,286, + 467,969,281,71,31,254,212,6,1197,482, + 20,17,21,18,343,43,44,387,385,843, + 288,287,482,20,17,21,18,343,43,40, + 1075,453,20,17,21,18,343,738,44,387, + 385,523,289,467,633,631,661,649,717,665, + 74,280,482,20,17,21,18,343,738,44, + 387,385,523,10,467,633,631,661,649,717, + 665,74,91,24,341,71,185,281,281,1278, + 71,187,293,1197,482,20,17,21,18,343, + 43,44,387,385,864,290,540,20,17,21, + 18,343,738,44,387,385,523,1633,467,633, + 631,661,649,717,665,74,1530,511,20,17, + 21,18,343,41,339,305,20,17,21,18, + 343,738,44,387,385,523,429,467,633,631, + 661,649,717,665,74,1531,189,178,163,239, + 482,20,17,21,18,343,43,44,387,385, + 523,31,467,633,631,661,1179,134,212,253, + 212,327,395,14,136,133,135,159,482,20, + 17,21,18,343,738,44,387,385,523,516, + 467,633,631,661,649,717,665,74,92,138, + 165,156,535,124,1130,243,142,145,148,151, + 295,445,482,20,17,21,18,343,34,1424, + 1578,1591,1596,1610,1212,482,20,17,21,18, + 343,738,44,387,385,523,274,467,633,631, + 661,649,717,665,74,85,482,20,17,21, + 18,343,738,44,387,385,523,172,467,633, + 631,661,649,717,665,74,84,482,20,17, + 21,18,343,738,44,387,385,523,530,467, + 633,631,661,649,717,665,74,83,482,20, + 17,21,18,343,738,44,387,385,523,282, + 467,633,631,661,649,717,665,74,82,482, + 20,17,21,18,343,738,44,387,385,523, + 569,467,633,631,661,649,717,665,74,81, + 482,20,17,21,18,343,738,44,387,385, + 523,151,467,633,631,661,649,717,665,74, + 80,482,20,17,21,18,343,738,44,387, + 385,523,194,467,633,631,661,649,717,665, + 74,79,482,20,17,21,18,343,738,44, + 387,385,523,30,467,633,631,661,649,717, + 665,74,78,482,20,17,21,18,343,738, + 44,387,385,523,441,467,633,631,661,649, + 717,665,74,77,482,20,17,21,18,343, + 738,44,387,385,523,470,467,633,631,661, + 649,717,665,74,76,482,20,17,21,18, + 343,738,44,387,385,523,500,467,633,631, + 661,649,717,665,74,75,482,20,17,21, + 18,343,738,44,387,385,523,313,467,633, + 631,661,649,717,665,74,73,482,20,17, + 21,18,343,738,44,387,385,523,343,467, + 633,631,661,649,717,665,74,1547,482,20, + 17,21,18,343,738,44,387,385,523,44, + 467,633,631,661,649,717,665,74,1560,482, + 20,17,21,18,343,43,44,387,385,523, + 119,467,633,631,661,649,717,665,93,482, + 20,17,21,18,343,43,44,387,385,523, + 110,467,633,631,661,649,717,665,93,482, + 20,17,21,18,343,33,1562,482,20,17, + 21,18,343,43,39,482,20,17,21,18, + 343,43,44,387,385,523,211,467,633,631, + 661,649,717,665,93,482,20,17,21,18, + 343,43,44,387,385,523,31,467,633,631, + 661,649,717,665,93,657,683,1636,71,295, + 1351,157,1656,482,20,17,21,18,343,43, + 38,482,20,17,21,18,343,43,44,387, + 385,523,201,467,633,631,661,649,717,665, + 93,482,20,17,21,18,343,43,44,387, + 385,523,611,467,633,631,661,649,1177,344, + 436,71,297,1561,1488,1566,50,619,202,482, + 20,17,21,18,343,43,44,801,273,562, + 699,254,212,163,217,1181,220,1461,222,223, + 228,1532,275,266,1136,670,271,557,465,97, + 262,71,1353,276,253,212,273,487,1690,520, + 263,656,217,1181,220,1461,222,223,228,254, + 212,266,1136,670,271,352,1284,641,1711,217, + 1181,220,1461,222,223,228,512,227,1428,444, + 683,549,189,178,292,1711,260,482,20,17, + 21,18,343,43,44,387,385,523,490,467, + 633,631,1129,134,212,89,97,1529,585,209, + 137,133,135,159,482,20,17,21,18,343, + 43,44,387,385,523,705,467,633,1137,31, + 501,1353,292,1211,640,139,165,283,259,1675, + 1260,292,143,146,149,152,626,445,662,1690, + 458,273,1264,1348,377,19,1602,218,1181,220, + 1461,222,223,228,1679,608,268,1136,670,271, + 217,1181,220,1461,222,223,228,482,20,17, + 21,18,343,43,44,822,1357,482,20,17, + 21,18,343,43,44,387,385,523,208,1010, + 482,20,17,21,18,343,43,44,387,385, + 523,259,1081,1076,1354,31,540,394,292,197, + 199,684,1690,582,688,661,1603,623,1558,1595, + 482,20,17,21,18,343,43,44,387,385, + 885,23,538,217,1181,220,1461,222,223,228, + 482,20,17,21,18,343,43,37,490,1357, + 482,20,17,21,18,343,43,44,387,385, + 906,482,20,17,21,18,343,43,44,387, + 927,482,20,17,21,18,343,43,44,387, + 948,253,198,199,232,153,153,179,292,97, + 31,241,1517,365,20,17,21,18,343,43, + 36,1642,1756,1756,276,134,212,273,595,22, + 240,272,141,133,135,159,1347,245,1756,1756, + 1756,570,266,1136,670,271,365,20,17,21, + 18,343,43,36,1756,1264,1756,140,165,1428, + 218,1181,220,1461,222,223,228,226,490,1756, + 246,482,20,17,21,18,343,43,36,482, + 20,17,21,18,343,43,35,116,482,20, + 17,21,18,343,43,47,1756,413,1236,482, + 20,17,21,18,343,43,46,663,606,374, + 153,153,413,273,482,20,17,21,18,343, + 43,45,1122,606,1211,31,292,153,266,1136, + 670,271,31,31,242,241,316,1122,163,1211, + 153,97,153,316,512,265,490,1602,258,278, + 196,243,1546,1756,1276,28,490,196,610,253, + 212,1197,1255,258,244,87,294,1546,1211,1276, + 1262,631,87,87,1507,494,652,1262,1425,134, + 212,1507,711,501,1353,203,144,133,135,159, + 673,1255,134,212,1168,180,1214,134,212,147, + 133,135,159,1271,150,133,135,159,273,1264, + 1756,134,212,163,1756,1756,48,545,153,133, + 135,159,142,268,1136,670,271,606,606,614, + 1756,1756,95,606,253,212,153,395,403,403, + 606,196,1122,606,193,31,1756,196,512,1649, + 1637,208,292,645,1122,490,512,196,1756,634, + 296,277,230,1756,606,371,1210,1354,258,444, + 97,371,1712,1756,1276,279,1756,87,1122,1756, + 258,371,314,191,1672,87,1276,1756,1756,191, + 1149,292,292,342,204,1388,1652,1211,937,192, + 1756,1576,1652,1756,259,28,1756,1756,1756,1756, + 1713,1197,1756,1756,224,229,233,1756,1756,1756, + 1448,1756,1756,1756,327,1756,0,20,178,0, + 1,1981,0,1,1992,0 }; }; public final static char baseAction[] = BaseAction.baseAction; @@ -405,89 +403,88 @@ 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,9, - 10,0,0,13,14,15,16,17,18,19, + 0,1,2,3,4,0,6,7,8,0, + 10,11,12,0,14,15,16,17,18,19, 20,21,22,23,24,25,26,27,28,0, 0,31,32,33,34,35,36,37,38,39, - 40,41,42,13,44,45,46,0,1,0, - 3,0,5,6,7,8,0,6,7,8, - 0,14,0,0,1,5,55,56,57,58, - 65,24,25,26,27,28,47,48,31,32, + 40,41,42,0,44,45,46,0,1,0, + 3,2,5,6,7,8,47,48,9,12, + 55,56,57,58,17,18,19,20,0,22, + 0,1,4,3,61,62,47,48,31,32, 33,34,35,36,37,38,39,40,41,42, 43,44,45,46,0,1,0,3,51,5, - 6,7,8,0,55,56,57,58,14,0, - 50,55,56,57,58,6,7,8,24,25, - 26,27,28,61,62,31,32,33,34,35, + 6,7,8,0,61,62,12,0,1,0, + 3,17,18,19,20,0,22,2,0,4, + 13,53,54,0,9,31,32,33,34,35, 36,37,38,39,40,41,42,43,44,45, 46,0,1,0,3,51,5,6,7,8, - 0,1,2,0,4,14,0,1,0,3, - 0,11,2,60,4,24,25,26,27,28, - 12,11,31,32,33,34,35,36,37,38, + 0,0,0,12,4,0,0,5,17,18, + 19,20,0,22,55,56,57,58,6,7, + 8,0,31,32,33,34,35,36,37,38, 39,40,41,42,43,44,45,46,0,1, - 0,3,51,0,6,7,8,4,0,0, - 1,2,14,4,61,62,0,1,2,11, - 11,5,24,25,26,27,28,11,65,31, + 0,3,51,0,6,7,8,4,0,1, + 12,3,50,53,54,17,18,19,20,0, + 22,55,56,57,58,6,7,8,63,31, 32,33,34,35,36,37,38,39,40,41, - 42,0,44,45,46,0,30,6,7,8, - 0,0,2,0,4,14,53,54,5,0, - 1,11,3,0,64,24,25,26,27,28, - 0,12,31,32,33,34,35,36,37,38, + 42,0,44,45,46,0,65,6,7,8, + 0,1,0,12,9,0,53,54,17,18, + 19,20,0,22,2,10,11,5,0,1, + 2,9,31,32,33,34,35,36,37,38, 39,40,41,42,0,1,2,3,4,5, - 0,0,1,9,10,5,43,13,14,15, - 16,17,18,19,20,21,22,23,0,1, - 2,3,4,5,63,0,0,9,10,4, - 30,13,14,15,16,17,18,19,20,21, - 22,23,0,0,50,0,4,0,0,1, - 49,3,9,10,0,1,2,3,4,5, - 12,0,0,9,10,4,12,13,50,15, - 16,17,18,19,20,21,22,23,53,54, - 0,1,2,0,1,2,3,4,5,0, - 64,49,9,10,5,0,13,43,15,16, - 17,18,19,20,21,22,23,0,1,2, - 3,4,0,0,53,54,9,10,29,30, - 13,0,15,16,17,18,19,20,21,22, - 23,0,0,50,0,1,2,3,4,59, - 0,9,10,9,10,5,12,13,0,15, - 16,17,18,19,20,21,22,23,51,0, - 1,2,3,4,0,1,0,3,9,10, - 30,12,13,60,15,16,17,18,19,20, - 21,22,23,0,1,2,3,4,0,68, - 69,0,9,10,63,12,13,49,15,16, - 17,18,19,20,21,22,23,0,1,2, - 3,4,0,1,0,3,9,10,0,5, - 13,0,15,16,17,18,19,20,21,22, - 23,0,1,2,3,4,0,1,0,3, - 9,10,0,29,13,0,15,16,17,18, - 19,20,21,22,23,0,1,2,3,4, - 0,0,0,0,9,10,0,5,13,0, - 15,16,17,18,19,20,21,22,23,0, - 66,2,13,4,5,6,7,8,0,29, - 11,0,30,14,6,7,8,6,7,8, - 0,80,60,24,25,26,27,28,0,30, - 47,48,70,71,72,73,74,75,76,77, - 78,79,0,0,1,59,3,0,6,7, - 8,0,0,6,7,8,14,6,7,8, - 0,14,0,1,2,0,24,25,26,27, - 28,24,25,26,27,28,0,0,1,2, - 0,0,6,7,8,0,0,6,7,8, - 14,6,7,8,0,14,0,0,0,5, - 24,25,26,27,28,24,25,26,27,28, - 0,0,2,2,0,0,5,0,0,2, - 0,11,11,9,10,15,16,12,11,11, - 0,11,0,47,48,5,0,0,2,0, - 1,30,3,47,48,47,48,11,0,0, - 0,0,4,4,0,0,0,0,0,0, - 66,29,52,12,0,11,29,12,12,0, - 52,0,52,43,0,0,12,67,0,0, - 0,12,0,12,0,0,29,29,0,0, - 0,0,0,0,0,0,0,0,0,49, + 0,1,30,3,10,11,12,52,14,15, + 16,0,0,13,0,21,5,23,24,25, + 26,27,28,9,0,1,2,3,4,5, + 68,69,0,0,10,11,12,59,14,15, + 16,30,10,11,50,21,0,23,24,25, + 26,27,28,0,0,1,2,3,4,5, + 14,0,0,0,10,11,5,13,14,15, + 16,0,10,11,50,21,5,23,24,25, + 26,27,28,0,0,1,2,3,4,5, + 29,30,80,0,10,11,0,43,14,15, + 16,30,6,7,8,21,13,23,24,25, + 26,27,28,0,0,1,2,3,4,6, + 7,8,0,0,10,11,63,5,14,15, + 16,0,0,0,50,21,4,23,24,25, + 26,27,28,0,1,2,3,4,0,1, + 0,3,30,10,11,0,13,14,15,16, + 0,6,7,8,21,51,23,24,25,26, + 27,28,0,1,2,3,4,0,1,29, + 3,49,10,11,0,13,14,15,16,0, + 6,7,8,21,0,23,24,25,26,27, + 28,0,1,2,3,4,0,47,48,0, + 0,10,11,0,5,14,15,16,5,0, + 0,1,21,3,23,24,25,26,27,28, + 0,1,2,3,4,0,47,48,0,0, + 10,11,29,5,14,15,16,0,1,0, + 3,21,43,23,24,25,26,27,28,0, + 1,2,3,4,0,1,47,48,0,10, + 11,65,4,14,15,16,0,1,2,66, + 21,0,23,24,25,26,27,28,0,0, + 2,2,4,5,6,7,8,9,9,64, + 12,0,0,64,66,17,18,19,20,60, + 22,9,0,49,0,1,2,5,30,70, + 71,72,73,74,75,76,77,78,79,0, + 0,1,2,0,4,6,7,8,0,9, + 59,12,0,0,0,0,17,18,19,20, + 0,22,14,0,52,43,6,7,8,0, + 0,60,12,4,0,0,13,17,18,19, + 20,0,22,13,29,0,0,6,7,8, + 0,0,49,12,9,0,0,0,17,18, + 19,20,0,22,13,0,0,0,6,7, + 8,59,0,0,12,29,0,0,2,17, + 18,19,20,49,22,9,13,0,0,1, + 2,15,16,5,0,1,2,9,4,0, + 0,29,2,9,4,0,29,0,0,9, + 60,0,13,0,0,0,0,0,30,0, + 13,13,0,0,0,0,0,0,52,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,59,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,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; @@ -495,84 +492,82 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface TermAction { public final static char termAction[] = {0, - 1770,1781,1564,1782,1400,70,1983,1984,1985,1158, - 1103,59,1,1486,1932,1517,1356,534,1783,1784, - 1785,1786,548,379,1933,1931,1986,1934,1930,54, - 64,1937,1942,1941,1939,1940,1938,1943,1944,1936, - 1945,1946,1947,668,1498,1442,467,1770,1,61, - 1,1770,190,1,1,1,60,1983,1984,1985, - 1770,1,62,1770,2007,1774,1386,1375,1364,1328, - 436,1,1,1,1,1,1188,1339,1,1, + 1756,1767,1545,1768,1491,59,1969,1970,1971,54, + 1380,1083,1918,62,1499,1019,672,1919,1917,1972, + 1920,577,1916,1769,1770,1771,1772,1027,482,58, + 1,1923,1928,1927,1925,1926,1924,1929,1930,1922, + 1931,1932,1933,63,1280,596,380,1756,1,269, + 1,1658,190,1,1,1,1401,1411,348,1, + 1390,1360,544,469,1,1,1,1,48,1, + 1756,1767,1534,1768,1330,1317,1401,1411,1,1, 1,1,1,1,1,1,1,1,1,1, - 190,1,1,1,1770,1,252,1,1965,189, - 1,1,1,1770,1386,1375,1364,1328,1,247, - 1773,1386,1375,1364,1328,1983,1984,1985,1,1, - 1,1,1,1301,1199,1,1,1,1,1, + 190,1,1,1,1756,1,252,1,1951,189, + 1,1,1,181,1330,1317,1,1756,1767,61, + 1768,1,1,1,1,264,1,1421,182,1, + 1066,1519,1508,285,348,1,1,1,1,1, 1,1,1,1,1,1,1,189,1,1, - 1,1770,1,63,1,1965,190,1,1,1, - 261,1995,1216,71,1,1,1770,1781,1770,1782, - 264,509,1427,557,1,1,1,1,1,1, - 470,509,1,1,1,1,1,1,1,1, - 1,1,1,1,190,1,1,1,1770,1781, - 68,1782,1965,48,1983,1984,1985,1550,270,267, - 1995,1216,1932,252,1301,1199,1,1764,1216,509, - 509,1776,1933,1931,1986,1934,1930,509,436,1937, - 1942,1941,1939,1940,1938,1943,1944,1936,1945,1946, - 1947,128,1498,1442,467,181,1775,1983,1984,1985, - 267,66,1427,1770,252,1932,1542,1528,1778,1770, - 1781,509,1782,182,599,1933,1931,1986,1934,1930, - 284,471,1937,1942,1941,1939,1940,1938,1943,1944, - 1936,1945,1946,1947,1,1781,1564,1782,454,1774, - 1770,1,1767,1158,1103,1776,1777,1486,617,1517, - 1356,534,1783,1784,1785,1786,548,379,1770,1781, - 1564,1782,1454,1774,698,50,69,1158,1103,1550, - 1775,1486,1035,1517,1356,534,1783,1784,1785,1786, - 548,379,1,51,1773,1770,252,1770,1770,1781, - 2027,1782,1418,1409,1,1781,1564,1782,1400,29, - 1277,49,1770,1158,1103,1550,2774,1486,1773,1517, - 1356,534,1783,1784,1785,1786,548,379,1542,1528, - 1,1995,1397,1770,1781,1564,1782,1400,1774,1770, - 599,2027,1158,1103,1776,1770,1486,29,1517,1356, - 534,1783,1784,1785,1786,548,379,1770,1,1, - 1,1,1770,210,1542,1528,1,1,1537,1775, - 1,72,1,1,1,1,1,1,1,1, - 1,67,53,1773,1,1781,1564,1782,1400,1131, - 1,1418,1409,1158,1103,90,2774,1486,1,1517, - 1356,534,1783,1784,1785,1786,548,379,2083,1770, - 1781,1564,1782,1400,184,2808,1770,2808,1158,1103, - 90,2774,1486,1111,1517,1356,534,1783,1784,1785, - 1786,548,379,1,1781,1564,1782,1400,1770,346, - 1690,1770,1158,1103,698,2774,1486,2027,1517,1356, - 534,1783,1784,1785,1786,548,379,1770,1781,1564, - 1782,1400,183,2813,1770,2813,1158,1103,1770,1780, - 1486,1770,1517,1356,534,1783,1784,1785,1786,548, - 379,1770,1781,1580,1782,1400,205,2815,1770,2815, - 1158,1103,43,1316,1486,1770,1517,1356,534,1783, - 1784,1785,1786,548,379,1,1781,1564,1782,1400, - 88,1770,1,58,1158,1103,1770,1776,1486,65, - 1517,1356,534,1783,1784,1785,1786,548,379,20, - 1779,1761,668,1761,1761,178,178,178,248,741, - 1761,249,1775,178,1,1,1,1,1,1, - 1770,1760,972,178,178,178,178,178,1770,1761, - 1188,1339,951,930,909,888,867,825,846,804, - 783,762,129,207,1781,993,1782,130,1983,1984, - 1985,250,1770,1983,1984,1985,1932,1983,1984,1985, - 1770,1932,1,1995,1397,1770,1933,1931,1986,1934, - 1930,1933,1931,1986,1934,1930,131,252,1995,1397, - 1770,132,1983,1984,1985,251,57,1983,1984,1985, - 1932,1983,1984,1985,1,1932,56,1770,55,1780, - 1933,1931,1986,1934,1930,1933,1931,1986,1934,1930, - 32,1,1587,1427,52,42,1776,269,1770,1261, - 290,1682,509,1418,1409,1796,1797,470,509,1056, - 283,1076,255,1188,1339,1429,221,30,1428,206, - 479,1775,479,1188,1339,1188,1339,509,1770,1770, - 1,1770,1217,1452,219,1770,1770,30,206,200, - 1779,1683,475,1567,188,509,488,1584,1622,188, - 731,188,733,1429,1770,1770,184,472,1770,1770, - 1770,183,1770,205,1770,1770,1799,2783,1770,1770, - 1770,1770,1770,1770,1770,1770,1770,1770,1770,2026, - 1770,1770,1770,1770,1770,1770,1770,1770,1770,1770, - 1770,1770,1770,1770,1770,1770,1770,1770,1166 + 1,1756,1,1756,1,1951,190,1,1,1, + 50,1756,1756,1,1534,66,60,1760,1,1, + 1,1,1756,1,1390,1360,544,469,1969,1970, + 1971,70,1,1,1,1,1,1,1,1, + 1,1,1,1,190,1,1,1,1756,1767, + 1756,1768,1951,49,1969,1970,1971,1534,184,2781, + 1918,2781,1759,1519,1508,1919,1917,1972,1920,247, + 1916,1390,1360,544,469,1969,1970,1971,1244,1923, + 1928,1927,1925,1926,1924,1929,1930,1922,1931,1932, + 1933,128,1280,596,380,1756,610,1969,1970,1971, + 1756,1993,72,1918,979,51,1519,1508,1919,1917, + 1972,1920,1,1916,1421,1307,1139,1762,1,1981, + 1167,348,1923,1928,1927,1925,1926,1924,1929,1930, + 1922,1931,1932,1933,1,1767,1545,1768,1433,1760, + 1756,1767,1761,1768,1380,1083,556,1078,1499,1019, + 672,1756,1756,1259,270,577,1762,1769,1770,1771, + 1772,1027,482,348,1756,1767,1545,1768,1466,1760, + 1111,1665,53,1756,1380,1083,958,1055,1499,1019, + 672,1761,1307,1139,1759,577,64,1769,1770,1771, + 1772,1027,482,1756,1,1767,1545,1768,1491,29, + 448,1756,52,67,1380,1083,1762,2664,1499,1019, + 672,1,1307,1139,1759,577,90,1769,1770,1771, + 1772,1027,482,1756,1756,1767,1545,1768,1491,1760, + 1431,1761,1746,1756,1380,1083,248,29,1499,1019, + 672,90,1,1,1,577,2664,1769,1770,1771, + 1772,1027,482,249,1756,1,1,1,1,1, + 1,1,1,1756,1,1,1244,1762,1,1, + 1,1756,1,1756,1759,1,252,1,1,1, + 1,1,1,1,1767,1545,1768,1491,183,2789, + 88,2789,1761,1380,1083,250,2664,1499,1019,672, + 57,1969,1970,1971,577,2071,1769,1770,1771,1772, + 1027,482,1756,1767,1545,1768,1491,205,2790,638, + 2790,2013,1380,1083,251,2664,1499,1019,672,56, + 1969,1970,1971,577,1756,1769,1770,1771,1772,1027, + 482,1756,1767,1545,1768,1491,71,1401,1411,1756, + 1756,1380,1083,1756,1764,1499,1019,672,1766,55, + 207,1767,577,1768,1769,1770,1771,1772,1027,482, + 1756,1767,1552,1768,1491,68,1401,1411,1,69, + 1380,1083,1341,1766,1499,1019,672,206,1171,43, + 1171,577,1763,1769,1770,1771,1772,1027,482,1, + 1767,1545,1768,1491,1,1753,1401,1411,1756,1380, + 1083,610,1169,1499,1019,672,1,1981,1167,1765, + 577,1756,1769,1770,1771,1772,1027,482,20,221, + 1747,1659,1747,1747,178,178,178,1747,348,1217, + 178,210,291,1217,1765,178,178,178,178,895, + 178,1035,284,2013,252,1981,1167,375,1747,874, + 853,832,811,790,748,769,727,706,685,129, + 261,1981,1150,1,1,1969,1970,1971,65,348, + 916,1918,200,1756,1756,255,1919,1917,1972,1920, + 130,1916,448,42,1131,375,1969,1970,1971,1756, + 1756,999,1918,1429,1,1756,2664,1919,1917,1972, + 1920,131,1916,621,1673,219,30,1969,1970,1971, + 1756,1756,2013,1918,348,1756,1756,1756,1919,1917, + 1972,1920,132,1916,1345,1756,1756,1756,1969,1970, + 1971,1091,30,1756,1918,416,32,206,1195,1919, + 1917,1972,1920,2012,1916,1553,1430,1756,1,1750, + 1150,1782,1783,1762,267,1981,1150,348,252,188, + 267,1785,1421,348,252,1756,2599,188,188,348, + 491,1756,184,1756,1756,1756,1756,1756,1761,1756, + 183,205,1756,1756,1756,1756,1756,1756,463,1756, + 1756,1756,1756,1756,1756,1756,1756,1756,1756,1756, + 1756,1756,1756,373 }; }; public final static char termAction[] = TermAction.termAction; @@ -580,28 +575,27 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface Asb { public final static char asb[] = {0, - 199,1,106,41,106,106,106,106,106,106, - 106,106,106,373,3,23,20,27,25,33, - 31,35,34,37,36,9,106,373,189,189, - 321,373,293,293,414,106,106,106,106,106, - 106,106,106,106,106,106,106,106,106,106, - 106,106,106,106,106,106,106,106,106,106, - 106,106,106,106,106,106,189,98,325,100, - 263,187,186,296,308,96,308,96,96,308, - 96,308,387,143,189,45,20,20,25,25, - 25,25,23,23,31,27,27,34,33,342, - 36,35,223,80,321,325,123,45,410,104, - 189,344,266,96,293,293,96,293,106,80, - 325,316,410,45,103,100,189,319,387,188, - 268,98,48,98,217,219,333,75,98,316, - 316,106,106,45,104,263,337,336,325,268, - 189,98,48,217,217,75,78,330,293,106, - 332,75,80,316,410,45,45,189,344,266, - 319,48,75,192,48,217,219,327,219,82, - 45,293,106,80,410,316,268,48,194,219, - 75,106,293,45,219,316,189,188,75,259, - 106,258,119,325,75,75,294,194,106,119, - 219 + 375,1,54,41,54,54,54,54,54,54, + 54,54,54,334,3,23,20,27,25,33, + 31,35,34,37,36,9,54,334,170,170, + 291,334,263,263,203,54,54,54,54,54, + 54,54,54,54,54,54,54,54,54,54, + 54,54,54,54,54,54,54,54,54,54, + 54,54,54,54,54,54,170,98,295,48, + 233,168,167,266,278,96,278,96,96,278, + 96,278,348,124,170,45,20,20,25,25, + 25,25,23,23,31,27,27,34,33,303, + 36,35,393,200,98,291,295,104,45,371, + 52,170,305,236,96,263,263,96,263,54, + 200,80,295,286,371,45,51,48,170,289, + 348,169,238,98,173,98,222,80,286,286, + 54,54,45,52,233,298,297,295,238,170, + 98,173,222,222,224,101,286,371,45,45, + 170,305,236,289,173,200,71,173,222,224, + 228,224,200,78,231,263,54,100,371,286, + 238,173,73,224,200,54,263,3,82,45, + 263,54,286,170,169,200,429,54,428,67, + 295,200,45,264,73,54,67 }; }; public final static char asb[] = Asb.asb; @@ -609,50 +603,50 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface Asr { public final static byte asr[] = {0, - 80,0,11,2,52,67,15,16,60,70, + 80,0,9,2,52,67,15,16,60,70, 71,72,73,74,76,75,77,78,79,4, - 53,54,9,10,48,47,55,56,57,58, - 61,62,13,63,64,65,43,66,68,69, - 59,30,80,29,50,5,0,24,31,6, - 32,44,25,33,26,34,35,27,7,36, - 37,14,45,28,46,38,39,8,40,41, - 42,1,3,51,5,43,0,5,43,11, - 52,15,16,13,4,9,10,22,23,17, - 2,18,19,20,21,1,3,12,0,6, - 7,8,14,50,5,18,19,20,21,3, - 15,16,13,9,10,22,23,17,4,2, - 1,0,6,7,8,2,18,19,20,21, - 1,3,15,16,13,4,9,10,22,23, - 17,0,7,14,28,8,27,26,25,6, - 24,52,67,15,16,13,9,10,53,54, - 47,48,55,56,57,58,61,62,63,64, - 65,68,69,60,70,71,72,73,74,75, - 76,77,78,79,4,2,11,29,30,5, - 0,66,5,4,1,2,59,0,17,18, - 19,20,21,1,3,2,15,16,13,4, - 9,10,22,23,51,0,1,3,5,43, - 29,0,13,4,9,10,53,54,47,48, + 53,54,10,11,48,47,55,56,57,58, + 61,62,14,63,64,65,43,66,68,69, + 59,30,80,29,50,5,0,6,7,8, + 12,50,5,23,24,25,26,3,15,16, + 14,10,11,27,28,21,4,2,1,0, + 66,5,4,1,2,59,0,5,43,9, + 52,15,16,14,4,10,11,27,28,21, + 2,23,24,25,26,1,3,13,0,60, + 9,52,0,6,7,8,2,23,24,25, + 26,1,3,15,16,14,4,10,11,27, + 28,21,0,7,12,22,8,20,19,18, + 6,17,52,67,15,16,14,10,11,53, + 54,47,48,55,56,57,58,61,62,63, + 64,65,68,69,60,70,71,72,73,74, + 75,76,77,78,79,4,2,9,29,30, + 5,0,17,31,6,32,44,18,33,19, + 34,35,20,7,36,37,12,45,22,46, + 38,39,8,40,41,42,1,3,51,5, + 43,0,5,30,21,23,24,25,26,1, + 3,2,15,16,14,4,10,11,27,28, + 0,1,3,5,43,29,0,5,29,43, + 60,0,4,2,9,30,5,17,31,6, + 32,44,18,33,19,34,35,20,7,36, + 37,12,45,22,46,38,39,8,40,41, + 42,49,3,1,0,39,31,36,34,35, + 33,32,37,38,40,41,42,59,66,22, + 18,12,17,20,19,6,7,8,29,1, + 5,30,2,9,4,0,2,5,29,30, + 66,9,59,0,4,17,31,6,32,44, + 18,33,19,34,35,20,7,36,37,12, + 45,22,46,38,39,8,40,41,42,1, + 3,49,0,21,23,24,25,26,2,15, + 16,14,4,10,11,27,28,1,3,44, + 45,46,39,31,36,34,35,33,32,37, + 38,40,41,42,22,18,12,17,20,19, + 6,7,8,0,21,23,24,25,26,1, + 3,2,15,16,14,4,10,11,27,28, + 51,0,14,4,10,11,53,54,47,48, 55,56,57,58,61,62,63,64,65,68, 69,60,70,71,72,73,74,75,76,77, - 78,79,50,30,43,80,12,59,66,5, - 29,0,4,2,11,30,5,24,31,6, - 32,44,25,33,26,34,35,27,7,36, - 37,14,45,28,46,38,39,8,40,41, - 42,49,3,1,0,39,31,36,34,35, - 33,32,37,38,40,41,42,59,66,28, - 25,14,24,27,26,6,7,8,29,1, - 5,30,2,11,4,0,5,29,43,60, - 0,60,11,52,0,2,5,29,30,66, - 11,59,0,4,24,31,6,32,44,25, - 33,26,34,35,27,7,36,37,14,45, - 28,46,38,39,8,40,41,42,1,3, - 49,0,17,18,19,20,21,2,15,16, - 13,4,9,10,22,23,1,3,44,45, - 46,39,31,36,34,35,33,32,37,38, - 40,41,42,28,25,14,24,27,26,6, - 7,8,0,5,30,17,18,19,20,21, - 1,3,2,15,16,13,4,9,10,22, - 23,0 + 78,79,50,30,43,80,13,59,66,5, + 29,0 }; }; public final static byte asr[] = Asr.asr; @@ -660,28 +654,27 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface Nasb { public final static byte nasb[] = {0, - 61,38,20,38,20,20,20,20,20,20, - 20,20,20,94,38,38,38,38,38,38, - 38,38,38,38,38,38,20,94,71,71, - 74,1,15,15,98,95,20,20,20,20, - 20,20,20,20,20,20,20,20,20,20, - 20,20,95,20,20,20,20,20,20,20, - 20,20,20,20,20,20,71,38,117,22, - 73,11,11,44,45,50,45,87,87,45, - 86,45,39,38,71,24,38,38,38,38, - 38,38,38,38,38,38,38,38,38,38, - 38,38,38,59,105,38,28,24,80,23, - 71,89,70,7,7,7,7,7,20,18, - 38,68,80,24,23,78,71,55,31,38, - 91,26,59,38,59,52,13,59,38,68, - 59,20,20,24,23,54,11,11,117,91, - 71,38,109,59,7,9,17,38,7,20, - 84,9,59,59,80,24,24,71,89,70, - 64,59,9,47,113,7,52,38,38,19, - 24,7,20,18,80,78,101,109,57,52, - 9,20,7,24,52,78,71,71,9,48, - 20,38,57,117,9,9,38,57,20,66, - 82 + 117,41,23,41,23,23,23,23,23,23, + 23,23,23,97,41,41,41,41,41,41, + 41,41,41,41,41,41,23,97,121,121, + 85,1,18,18,59,98,23,23,23,23, + 23,23,23,23,23,23,23,23,23,23, + 23,23,98,23,23,23,23,23,23,23, + 23,23,23,23,23,23,121,94,72,11, + 84,44,44,67,68,29,68,82,82,68, + 81,68,62,41,121,13,41,41,41,41, + 41,41,41,41,41,41,41,41,41,41, + 41,41,94,55,41,101,41,31,13,57, + 12,121,89,120,7,7,7,7,7,23, + 70,55,41,79,57,13,12,27,121,51, + 34,41,91,46,55,41,55,21,79,55, + 23,23,13,12,50,44,44,72,91,121, + 41,105,55,7,48,9,55,57,13,13, + 121,89,120,75,55,70,15,113,7,48, + 41,41,70,20,41,7,23,25,57,27, + 109,105,53,48,70,23,7,42,22,13, + 7,23,27,121,121,70,16,23,41,53, + 72,70,13,41,53,23,77 }; }; public final static byte nasb[] = Nasb.nasb; @@ -689,18 +682,19 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface Nasr { public final static char nasr[] = {0, - 79,77,76,64,75,74,1,0,32,0, - 26,0,97,0,70,0,68,11,59,5, - 0,11,5,24,0,90,0,5,11,0, - 79,78,77,76,64,75,74,0,64,60, - 61,62,63,52,28,0,11,69,0,89, - 0,51,0,23,43,42,36,34,11,0, - 11,87,0,43,42,36,34,27,0,11, - 23,0,23,42,43,11,0,21,0,56, - 0,95,0,99,0,92,65,0,27,49, - 11,25,0,48,11,45,0,11,88,0, - 93,11,25,0,43,42,27,0,81,11, - 48,0,11,48,66,0,27,49,0 + 78,76,75,65,74,73,1,0,98,0, + 11,5,24,0,11,69,0,70,0,86, + 11,52,5,0,100,0,21,0,89,0, + 5,11,0,78,77,76,75,65,74,73, + 0,96,0,26,0,90,0,59,0,23, + 43,42,35,33,11,0,56,0,11,88, + 0,65,60,61,62,63,53,28,0,39, + 0,27,50,0,43,42,35,33,27,0, + 92,66,0,23,42,43,11,0,27,50, + 11,25,0,52,46,0,49,11,45,0, + 43,42,27,0,80,11,49,0,93,11, + 25,0,11,49,67,0,11,87,0,11, + 23,0 }; }; public final static char nasr[] = Nasr.nasr; @@ -708,9 +702,9 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface TerminalIndex { public final static char terminalIndex[] = {0, - 85,2,86,9,87,48,64,76,10,11, - 1,3,8,69,6,7,68,81,82,83, - 84,12,13,44,55,60,63,72,42,90, + 85,2,86,9,87,48,64,76,1,10, + 11,69,3,8,6,7,44,55,60,63, + 68,72,81,82,83,84,12,13,42,90, 47,52,56,61,62,66,67,74,75,78, 79,80,91,54,70,73,16,17,30,89, 93,4,14,15,18,19,20,21,29,31, @@ -728,16 +722,16 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab 100,0,0,0,102,106,107,108,109,110, 0,111,112,113,114,115,116,117,0,118, 128,0,97,96,121,149,0,127,0,0, - 0,98,145,147,0,148,0,0,0,0, - 158,159,160,0,101,120,136,140,146,155, - 0,130,135,0,150,153,154,157,0,131, - 132,133,134,137,0,139,144,161,99,103, - 104,105,119,122,123,124,125,126,129,0, - 138,142,0,0,143,152,95,0,0,0, - 141,0,151,156,0,162,163,0,164,0, + 0,145,147,0,148,0,0,0,98,0, + 158,159,160,0,101,105,120,136,140,146, + 155,0,130,0,150,153,154,157,0,131, + 132,133,134,135,137,0,139,144,99,103, + 104,119,122,123,124,125,126,129,0,138, + 142,0,0,143,152,162,95,0,0,0, + 141,0,151,156,161,0,163,164,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 + 0,0,0,0,0,0 }; }; public final static char nonterminalIndex[] = NonterminalIndex.nonterminalIndex; @@ -745,10 +739,10 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface ScopePrefix { public final static char scopePrefix[] = { - 82,113,156,92,35,41,121,12,136,21, - 51,69,28,47,103,152,174,178,145,1, - 1,32,56,79,182,6,107,127,164,99, - 59,59,59 + 82,113,92,35,41,121,12,136,21,51, + 69,28,47,103,152,162,166,145,1,1, + 32,56,79,170,6,107,156,127,99,59, + 59,59 }; }; public final static char scopePrefix[] = ScopePrefix.scopePrefix; @@ -756,10 +750,10 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface ScopeSuffix { public final static char scopeSuffix[] = { - 90,90,90,90,4,4,90,18,142,26, - 4,26,26,4,101,26,26,4,149,4, - 4,26,4,26,26,9,110,130,167,101, - 66,61,74 + 90,90,90,4,4,90,18,142,26,4, + 26,26,4,101,26,26,4,149,4,4, + 26,4,26,26,9,110,159,130,101,66, + 61,74 }; }; public final static char scopeSuffix[] = ScopeSuffix.scopeSuffix; @@ -767,10 +761,10 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface ScopeLhs { public final static char scopeLhs[] = { - 62,60,5,62,26,26,60,53,107,44, - 26,39,44,26,66,6,5,5,19,99, - 98,42,26,36,3,68,66,108,5,66, - 39,37,39 + 62,60,62,26,26,60,46,108,44,26, + 38,44,26,67,6,5,5,19,100,99, + 42,26,35,3,86,67,5,109,67,38, + 36,38 }; }; public final static char scopeLhs[] = ScopeLhs.scopeLhs; @@ -778,10 +772,10 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface ScopeLa { public final static byte scopeLa[] = { - 43,43,43,43,50,50,43,43,86,30, - 50,30,30,50,66,30,30,50,59,50, - 50,30,50,30,30,60,1,92,30,66, - 2,2,2 + 43,43,43,50,50,43,43,86,30,50, + 30,30,50,66,30,30,50,59,50,50, + 30,50,30,30,60,1,30,92,66,2, + 2,2 }; }; public final static byte scopeLa[] = ScopeLa.scopeLa; @@ -789,10 +783,10 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface ScopeStateSet { public final static byte scopeStateSet[] = { - 17,17,32,17,21,21,17,86,-1,25, - 21,9,25,21,3,32,32,32,61,1, - 7,25,21,9,32,87,3,-1,32,3, - 9,9,9 + 23,23,23,27,27,23,17,-1,31,27, + 9,31,27,5,38,38,38,67,1,3, + 31,27,9,38,93,5,38,-1,5,9, + 9,9 }; }; public final static byte scopeStateSet[] = ScopeStateSet.scopeStateSet; @@ -800,25 +794,24 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface ScopeRhs { public final static char scopeRhs[] = {0, - 139,11,0,96,0,189,104,0,31,135, - 0,144,165,104,12,152,0,98,0,0, + 140,9,0,96,0,190,104,0,31,135, + 0,152,188,104,13,145,0,98,0,0, 148,104,2,135,0,97,0,148,104,2, - 0,151,2,0,113,14,179,104,11,0, - 113,179,104,14,11,0,113,14,11,0, - 113,179,104,11,0,113,11,0,129,0, + 0,151,2,0,113,12,178,104,9,0, + 113,178,104,12,9,0,113,12,9,0, + 113,178,104,9,0,113,9,0,128,0, 2,0,151,97,0,2,97,0,148,104, - 2,129,0,2,0,150,97,0,140,2, - 0,144,177,104,12,94,185,44,0,98, - 0,144,177,104,12,185,44,0,141,0, - 99,0,184,104,141,0,104,141,0,141, - 99,0,173,104,12,183,94,182,157,0, - 173,104,12,182,157,0,196,85,0,77, - 2,101,97,99,0,196,116,138,2,89, + 2,128,0,2,0,150,97,0,141,2, + 0,152,176,104,13,94,185,44,0,98, + 0,152,176,104,13,185,44,0,142,0, + 99,0,184,104,142,0,104,142,0,141, + 99,0,172,104,13,183,94,182,158,0, + 172,104,13,182,158,0,197,85,0,77, + 2,101,97,99,0,197,116,138,2,89, 0,53,0,0,138,69,111,0,29,118, - 0,164,2,17,0,144,165,104,12,116, - 164,2,0,164,2,0,97,3,0,105, - 0,98,0,181,2,98,0,138,11,98, - 0,138,2,0 + 0,164,2,21,0,164,2,0,97,105, + 0,181,2,98,0,138,9,98,0,138, + 2,0 }; }; public final static char scopeRhs[] = ScopeRhs.scopeRhs; @@ -826,15 +819,16 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface ScopeState { public final static char scopeState[] = {0, - 1495,0,1677,1678,1643,0,367,0,1477,1316, - 1397,1232,1256,1216,1187,0,661,666,314,0, - 1539,1482,639,339,1256,1216,1187,1629,1427,1483, - 0,1454,454,436,346,698,599,1301,1199,668, - 1339,1188,1386,1375,1364,1328,1550,1542,1528,1418, - 1409,1517,1356,1486,1400,1158,1103,548,379,534, - 1166,1131,1111,1076,1056,1035,1014,640,993,617, - 509,972,951,930,909,888,867,846,825,804, - 783,762,314,741,578,557,415,488,394,0 + 442,0,340,0,1642,1652,1636,0,1448,1341, + 1167,1268,1255,1150,1122,0,491,416,395,1679, + 1529,0,606,1212,316,0,1461,1181,1136,670, + 1255,1150,1122,1602,1421,1507,0,1466,1433,610, + 1111,1244,1217,1330,1317,448,1411,1401,1390,1360, + 544,469,1534,1519,1508,1307,1139,1019,672,1499, + 1491,1380,1083,1027,482,577,1091,1055,1035,491, + 999,979,958,937,585,916,556,348,895,874, + 853,832,811,790,769,748,727,706,685,316, + 638,512,416,395,0 }; }; public final static char scopeState[] = ScopeState.scopeState; @@ -842,28 +836,27 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface InSymb { public final static char inSymb[] = {0, - 0,180,104,166,17,23,22,10,9,4, - 13,16,15,2,98,102,101,105,103,107, + 0,180,104,165,21,28,27,11,10,4, + 14,16,15,2,98,102,101,105,103,107, 106,109,108,111,110,99,29,2,164,138, - 141,104,67,52,2,11,10,9,54,53, - 4,58,57,56,55,47,48,13,62,61, + 142,104,67,52,2,9,11,10,54,53, + 4,58,57,56,55,47,48,14,62,61, 64,63,69,68,65,79,78,77,75,76, - 74,73,72,71,70,60,164,116,104,11, - 2,136,135,167,168,157,169,46,45,170, - 44,171,172,94,181,138,101,101,103,103, + 74,73,72,71,70,60,164,116,104,9, + 2,136,135,166,167,158,168,46,45,169, + 44,170,171,94,181,138,101,101,103,103, 103,103,102,102,106,105,105,108,107,138, - 110,109,116,12,142,120,14,113,104,4, - 151,104,2,182,158,158,185,158,59,104, - 120,4,104,113,179,149,148,118,104,150, - 104,94,12,94,12,165,104,12,152,4, - 120,179,14,113,4,2,127,129,104,29, - 148,183,104,12,104,144,29,189,52,11, - 190,104,12,120,104,113,113,140,104,2, - 142,12,173,141,174,104,177,94,178,60, - 139,52,11,104,104,149,104,104,104,177, - 144,60,29,139,165,149,148,186,173,184, - 59,140,2,104,144,144,29,29,59,142, - 125 + 110,109,116,13,145,143,120,12,113,104, + 4,151,104,2,182,159,159,185,159,59, + 104,13,120,4,104,113,178,149,148,118, + 104,150,104,94,13,94,13,104,4,120, + 178,12,113,4,2,126,128,104,29,148, + 183,104,13,104,188,104,120,104,113,113, + 141,104,2,143,13,172,142,173,104,176, + 94,177,152,29,190,52,9,191,104,149, + 104,104,104,176,152,60,29,132,60,140, + 52,9,149,148,186,172,184,59,141,2, + 104,152,140,29,29,59,143 }; }; public final static char inSymb[] = InSymb.inSymb; @@ -1037,6 +1030,7 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab "or", "array_direct_abstract_declarat" + "or", + "initializer_seq", "designated_initializer", "designation", "designator_list", @@ -1048,8 +1042,8 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public final static int ERROR_SYMBOL = 51, - SCOPE_UBOUND = 32, - SCOPE_SIZE = 33, + SCOPE_UBOUND = 31, + SCOPE_SIZE = 32, MAX_NAME_LENGTH = 38; public final int getErrorSymbol() { return ERROR_SYMBOL; } @@ -1058,20 +1052,20 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public final int getMaxNameLength() { return MAX_NAME_LENGTH; } public final static int - NUM_STATES = 211, + NUM_STATES = 207, NT_OFFSET = 93, - LA_STATE_OFFSET = 2083, + LA_STATE_OFFSET = 2071, MAX_LA = 2, - NUM_RULES = 313, - NUM_NONTERMINALS = 124, - NUM_SYMBOLS = 217, + NUM_RULES = 315, + NUM_NONTERMINALS = 126, + NUM_SYMBOLS = 219, SEGMENT_SIZE = 8192, - START_STATE = 1235, + START_STATE = 1657, IDENTIFIER_SYMBOL = 0, EOFT_SYMBOL = 80, EOLT_SYMBOL = 80, - ACCEPT_ACTION = 1760, - ERROR_ACTION = 1770; + ACCEPT_ACTION = 1746, + ERROR_ACTION = 1756; 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 cb4da2e8d20..696135ff4da 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,7 +15,7 @@ package org.eclipse.cdt.internal.core.dom.lrparser.c99; public interface C99NoCastExpressionParsersym { public final static int - TK_auto = 24, + TK_auto = 17, TK_break = 81, TK_case = 82, TK_char = 31, @@ -26,24 +26,24 @@ public interface C99NoCastExpressionParsersym { TK_double = 32, TK_else = 86, TK_enum = 44, - TK_extern = 25, + TK_extern = 18, TK_float = 33, TK_for = 87, TK_goto = 88, TK_if = 89, - TK_inline = 26, + TK_inline = 19, TK_int = 34, TK_long = 35, - TK_register = 27, + TK_register = 20, TK_restrict = 7, TK_return = 90, TK_short = 36, TK_signed = 37, - TK_sizeof = 17, - TK_static = 14, + TK_sizeof = 21, + TK_static = 12, TK_struct = 45, TK_switch = 91, - TK_typedef = 28, + TK_typedef = 22, TK_union = 46, TK_unsigned = 38, TK_void = 39, @@ -52,27 +52,27 @@ public interface C99NoCastExpressionParsersym { TK__Bool = 40, TK__Complex = 41, TK__Imaginary = 42, - TK_integer = 18, - TK_floating = 19, - TK_charconst = 20, - TK_stringlit = 21, + TK_integer = 23, + TK_floating = 24, + TK_charconst = 25, + TK_stringlit = 26, TK_identifier = 1, TK_Completion = 3, TK_EndOfCompletion = 5, TK_Invalid = 93, - TK_LeftBracket = 11, + TK_LeftBracket = 9, TK_LeftParen = 2, - TK_LeftBrace = 12, + TK_LeftBrace = 13, TK_Dot = 52, TK_Arrow = 67, TK_PlusPlus = 15, TK_MinusMinus = 16, - TK_And = 13, + TK_And = 14, TK_Star = 4, - TK_Plus = 9, - TK_Minus = 10, - TK_Tilde = 22, - TK_Bang = 23, + TK_Plus = 10, + TK_Minus = 11, + TK_Tilde = 27, + TK_Bang = 28, TK_Slash = 53, TK_Percent = 54, TK_RightShift = 47, @@ -119,26 +119,26 @@ public interface C99NoCastExpressionParsersym { "const", "restrict", "volatile", + "LeftBracket", "Plus", "Minus", - "LeftBracket", + "static", "LeftBrace", "And", - "static", "PlusPlus", "MinusMinus", + "auto", + "extern", + "inline", + "register", "sizeof", + "typedef", "integer", "floating", "charconst", "stringlit", "Tilde", "Bang", - "auto", - "extern", - "inline", - "register", - "typedef", "Comma", "RightParen", "char", 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 becfe1cfa73..fcd42454a50 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 @@ -17,12 +17,12 @@ import lpg.lpgjavaruntime.*; import java.util.*; import org.eclipse.cdt.core.dom.ast.*; -import org.eclipse.cdt.core.dom.lrparser.CPreprocessorAdapter; import org.eclipse.cdt.core.dom.lrparser.IDOMTokenMap; import org.eclipse.cdt.core.dom.lrparser.IParser; import org.eclipse.cdt.core.dom.lrparser.ITokenCollector; -import org.eclipse.cdt.core.dom.lrparser.lpgextensions.FixedBacktrackingParser; +import org.eclipse.cdt.core.dom.lrparser.CPreprocessorAdapter; import org.eclipse.cdt.core.dom.lrparser.action.ITokenStream; +import org.eclipse.cdt.core.dom.lrparser.lpgextensions.FixedBacktrackingParser; import org.eclipse.cdt.core.dom.lrparser.action.ScopedStack; import org.eclipse.cdt.core.parser.IScanner; import org.eclipse.cdt.core.dom.parser.IBuiltinBindingsProvider; @@ -317,7 +317,7 @@ public String getName() { } // - // Rule 28: postfix_expression ::= ( type_id ) { initializer_list comma_opt } + // Rule 28: postfix_expression ::= ( type_id ) initializer_list // case 28: { action. consumeExpressionTypeIdInitializer(); break; } @@ -1139,111 +1139,111 @@ public String getName() { } // - // Rule 282: initializer ::= start_initializer_list { initializer_list comma_opt } end_initializer_list - // - case 282: { action. consumeInitializerList(); break; - } - - // - // Rule 283: initializer ::= { } + // Rule 283: initializer_list ::= start_initializer_list { initializer_seq comma_opt } end_initializer_list // case 283: { action. consumeInitializerList(); break; } // - // Rule 284: start_initializer_list ::= $Empty + // Rule 284: initializer_list ::= { } // - case 284: { action. initializerListStart(); break; + case 284: { action. consumeInitializerList(); break; } // - // Rule 285: end_initializer_list ::= $Empty + // Rule 285: start_initializer_list ::= $Empty // - case 285: { action. initializerListEnd(); break; + case 285: { action. initializerListStart(); break; } // - // Rule 290: designated_initializer ::= designation = initializer + // Rule 286: end_initializer_list ::= $Empty // - case 290: { action. consumeInitializerDesignated(); break; + case 286: { action. initializerListEnd(); break; } // - // Rule 294: designator_base ::= [ constant_expression ] + // Rule 291: designated_initializer ::= designation = initializer // - case 294: { action. consumeDesignatorArray(); break; + case 291: { action. consumeInitializerDesignated(); break; } // - // Rule 295: designator_base ::= . identifier_token + // Rule 295: designator_base ::= [ constant_expression ] // - case 295: { action. consumeDesignatorField(); break; + case 295: { action. consumeDesignatorArray(); break; } // - // Rule 296: designator ::= [ constant_expression ] + // Rule 296: designator_base ::= . identifier_token // - case 296: { action. consumeDesignatorArray(); break; + case 296: { action. consumeDesignatorField(); break; } // - // Rule 297: designator ::= . identifier_token + // Rule 297: designator ::= [ constant_expression ] // - case 297: { action. consumeDesignatorField(); break; + case 297: { action. consumeDesignatorArray(); break; } // - // Rule 298: translation_unit ::= external_declaration_list + // Rule 298: designator ::= . identifier_token // - case 298: { action. consumeTranslationUnit(); break; + case 298: { action. consumeDesignatorField(); break; + } + + // + // Rule 299: translation_unit ::= external_declaration_list + // + case 299: { action. consumeTranslationUnit(); break; } // - // Rule 299: translation_unit ::= $Empty + // Rule 300: translation_unit ::= $Empty // - case 299: { action. consumeTranslationUnit(); break; + case 300: { action. consumeTranslationUnit(); break; } // - // Rule 304: external_declaration ::= ; + // Rule 305: external_declaration ::= ; // - case 304: { action. consumeDeclarationEmpty(); break; + case 305: { action. consumeDeclarationEmpty(); break; } // - // Rule 305: external_declaration ::= ERROR_TOKEN + // Rule 306: external_declaration ::= ERROR_TOKEN // - case 305: { action. consumeDeclarationProblem(); break; + case 306: { action. consumeDeclarationProblem(); break; } // - // Rule 308: function_definition ::= declaration_specifiers function_declarator function_body + // Rule 310: function_definition ::= function_declarator function_body // - case 308: { action. consumeFunctionDefinition(true); break; + case 310: { action. consumeFunctionDefinition(false); break; } // - // Rule 309: function_definition ::= function_declarator function_body + // Rule 311: function_definition ::= declaration_specifiers knr_function_declarator declaration_list compound_statement // - case 309: { action. consumeFunctionDefinition(false); break; + case 311: { action. consumeFunctionDefinitionKnR(); break; } // - // Rule 310: function_definition ::= declaration_specifiers knr_function_declarator declaration_list compound_statement + // Rule 312: normal_function_definition ::= declaration_specifiers function_declarator function_body // - case 310: { action. consumeFunctionDefinitionKnR(); break; + case 312: { action. consumeFunctionDefinition(true); break; } // - // Rule 311: function_body ::= { } + // Rule 313: function_body ::= { } // - case 311: { action. consumeStatementCompoundStatement(false); break; + case 313: { action. consumeStatementCompoundStatement(false); break; } // - // Rule 312: function_body ::= { block_item_list } + // Rule 314: function_body ::= { block_item_list } // - case 312: { action. consumeStatementCompoundStatement(true); break; + case 314: { 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 fcf44170dc3..5db0ee2ce46 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 @@ -36,7 +36,7 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym public final static short baseCheck[] = {0, 0,0,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,3,1, - 1,4,4,3,3,2,2,8,1,0, + 1,4,4,3,3,2,2,4,1,0, 1,1,2,2,2,2,2,2,2,2, 2,4,1,4,1,3,3,3,1,3, 3,1,3,3,1,3,3,3,3,1, @@ -62,215 +62,210 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym 5,6,0,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,7,3,0,0,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,-73,0,-2,0,0,0,0,0, + 1,1,7,3,0,0,1,1,3,3, + 4,1,1,2,3,2,3,2,1,0, + 1,2,1,1,1,1,1,2,1,3, + 6,4,2,4,-106,0,-161,0,0,0, 0,0,0,0,0,0,0,0,0,0, - -28,0,0,-6,0,-23,0,0,0,-185, - 0,-48,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,-4,-82,0, - 0,0,0,0,-24,0,0,0,0,0, - -37,-3,0,0,0,0,0,0,-190,-193, - 0,0,0,0,0,0,0,-18,0,0, - 0,0,0,0,0,0,0,0,0,-110, - 0,0,0,-19,0,-34,0,0,0,0, - 0,-86,0,-9,0,0,0,0,0,0, + 0,-37,0,0,0,-18,0,-61,-10,0, + 0,-159,0,-12,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,-41,0, + 0,0,0,0,0,0,-9,0,0,0, + 0,0,-236,0,-4,0,0,0,0,0, + -23,0,0,0,0,0,0,-2,0,0, + -242,0,0,0,0,0,0,0,0,0, + 0,-32,0,-65,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,-3,-139, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-25,0,0,0, - 0,0,0,0,0,0,0,-163,0,0, - 0,0,0,0,0,-182,0,-20,0,0, + 0,0,0,0,0,0,0,-13,0,0, + 0,-33,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,-154, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-242,0,0,0,0,0,0, + 0,0,0,0,0,-221,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,-30,0,0,-11,0,-273,0,0,0, + 0,0,-39,0,0,0,-120,0,-267,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,-59,0,-183, + 0,0,0,0,0,0,0,0,0,-20, + 0,0,0,-21,0,-7,-27,0,0,-271, + 0,-156,0,-28,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,-251, + -31,0,0,0,-46,0,-22,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,-24,0,0,-148,0, + -30,0,0,0,0,0,0,0,0,0, + 0,0,0,-34,0,0,-137,0,-66,0, + 0,0,0,0,0,0,0,0,-25,0, + -280,0,-279,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,-44,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,-58,0,-102,-50, + 0,0,0,0,-26,0,-38,0,0,0, + -51,-146,0,0,0,0,0,0,0,0, + 0,0,0,0,-157,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + -192,-53,0,0,0,0,0,0,-150,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,-138,0,0,0,0,0,0,0, + 0,-35,0,-36,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, + 0,0,-113,0,-119,0,-132,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,-188,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,0,-118,0, + -104,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,-146,0,0,0, - 0,-29,0,0,0,-180,0,-38,0,0, + 0,-121,0,-49,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-207,0,0,-39,0,-276,0, + 0,0,-93,0,-151,0,-179,0,0,0, + 0,0,0,0,0,0,0,-67,0,0, + 0,0,0,0,0,0,-122,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-41,0,0,-22, - 0,0,-51,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-45,0,-181,0,-47,0,0, - 0,0,0,0,0,0,0,0,0,-62, - 0,0,0,-55,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-35,0,0,0,-287,0, - -266,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-60,0,0,-63, - 0,-174,0,-14,0,0,0,0,0,0, - 0,0,0,0,0,-121,0,0,-147,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,-12, - 0,0,0,-26,0,0,-81,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-241,0,0,-43,0,-108, - 0,-145,0,-65,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,-17,0,0,0,0,0,0,-66, - 0,0,0,0,-27,0,0,0,0,0, - 0,0,-209,-50,0,0,-69,0,0,0, - 0,0,0,0,0,0,-71,-44,0,0, - -68,0,0,0,-61,0,0,0,0,0, - 0,0,0,0,-36,0,-32,0,0,0, - 0,0,0,-70,0,-144,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-148,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,-93,0,-74, - 0,0,0,0,0,-149,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-33,0,0,-280,0,-150,0, - -106,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-84,0,0,0, - 0,-151,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,-142,0,-152,0,-158,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,-159,0,0,0,0,-153,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-186,0, - -154,0,-187,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-195,0, - 0,-95,0,-155,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-156,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-197,0,0,-198,0,-157, - 0,-218,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,-201,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - -219,0,0,-133,0,-206,0,-137,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-211,0,-220,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,-96,0,-94, - 0,0,0,0,0,0,0,-212,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-97,0, - -251,0,-98,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-99,0, - 0,-262,0,-204,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,-78, - 0,0,-46,0,0,-100,-77,0,-76,-165, - 0,0,-272,0,0,0,0,0,0,0, - 0,0,0,0,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,-278,0,-136,0,-21,-239, - 0,-53,-101,0,-290,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-58,0,0,-164, - 0,-42,0,0,0,0,0,0,-102,-67, - 0,0,0,0,0,0,0,0,0,0, - 0,-254,0,0,-83,0,0,0,0,0, - 0,0,0,0,0,0,0,-72,-134,0, - 0,-117,-103,-57,0,0,0,0,0,0, - 0,-104,0,0,0,0,0,-141,-107,0, - 0,0,0,-105,0,0,0,0,-109,0, - 0,0,0,0,0,0,0,0,0,-213, - -143,0,0,0,0,-79,-111,0,0,0, - 0,-238,0,0,0,0,0,0,-112,0, - 0,0,0,0,0,0,0,-125,0,0, - 0,-160,0,0,0,0,0,0,0,0, - -132,-188,0,0,-114,0,0,-115,0,-119, - -265,0,0,-191,0,0,0,0,0,0, - 0,0,0,-194,0,-87,0,0,0,0, - 0,0,0,0,0,0,-31,0,0,0, - 0,0,-116,0,0,0,0,0,0,0, - 0,0,0,0,0,-123,0,0,0,0, - 0,0,0,-199,0,0,-135,0,0,-140, - -122,0,0,-127,-16,0,0,0,0,-264, - 0,0,0,-217,0,0,-192,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,-257,0,0,0,-130,0,-131,-175,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-289,0,-205,0, - -221,-243,0,-64,0,0,0,-269,0,-40, - 0,0,0,0,0,0,0,0,0,0, - -249,0,-253,0,0,-126,0,0,-285,0, - 0,0,0,0,0,0,0,0,0,0, - 0,-274,-138,0,-139,0,0,-128,0,0, - -129,-255,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-91,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-200,0,0,-196,0,0,0, - -250,0,0,0,0,0,0,-256,-210,-222, - -189,0,0,-203,0,0,0,-223,0,-275, - -293,0,0,0,0,0,0,0,0,-176, - 0,-268,0,0,0,0,0,0,0,0, - 0,-245,0,0,0,0,0,0,-286,0, - 0,0,0,-208,0,0,0,0,0,0, - 0,0,0,0,-283,0,-247,0,0,0, - 0,0,0,0,0,0,0,-224,0,0, - -225,-244,0,0,0,-88,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-248,0,0,-281,-292,0,-216, - 0,0,-214,0,-226,0,0,0,0,0, - 0,0,-227,0,0,-284,0,0,0,0, - 0,0,0,0,0,0,0,0,0,-228, - -229,-230,0,0,-288,0,0,-291,0,0, - -231,-232,0,0,0,0,0,0,0,0, - 0,-233,0,0,-234,0,-294,-235,0,-295, - 0,0,-54,-236,0,0,0,0,0,0, - 0,0,0,-271,0,0,-237,0,-89,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,-252,0,-260,-261,0, - 0,0,-270,-277,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-177,0,0,0,0,0,0, - 0,0,0,0,0,-170,0,0,0,0, - 0,0,0,0,0,0,0,0,-178,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,-49,0,0,0,0, - 0,0,-179,0,-7,0,0,0,0,0, - 0,0,0,0,-171,0,0,0,0,0, - 0,0,0,0,0,-1,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,-56,0,0,0,0,-124,0,0,0, - 0,0,0,0,0,0,-172,0,0,0, + 0,0,0,-133,0,0,0,-160,0,-123, 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,-173,0,0, - 0,0,0,0,0,0,0,-90,0,0, - 0,0,0,0,0,0,-92,0,0,0, - 0,0,0,0,0,-113,0,0,0,0, + 0,0,-124,0,-189,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,-200, + 0,0,0,0,0,-125,0,-63,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,-167,0,0,0,0,0,0,0, - 0,0,0,-168,0,0,0,0,0,0, - 0,0,-169,0,-8,0,0,0,0,0, - 0,-215,0,0,0,0,0,0,0,0, - -240,-5,0,0,-259,0,0,0,0,0, - 0,0,0,-10,0,0,-166,0,0,0, - 0,0,0,0,0,0,-13,0,0,0, + 0,0,0,0,0,0,-201,0,-126,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,-15,0,0,0,0,-75,0,0, + 0,0,0,0,0,-202,0,0,0,0, + 0,-127,0,-224,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,-226,0,-128,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,-227,0,0,0,0,0,-129,0,-240, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,-265,0, + -130,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,-274,0,0, + 0,0,0,-131,0,-278,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,-284,0,-193,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,-290,0,0,0,0,0,-194, + 0,-74,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + -75,0,-230,0,-76,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,-77, + 0,0,0,-78,0,-235,0,-54,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,-79,0,0,0,-249,0,-80,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,-81,0,-147, + 0,-82,0,0,0,0,0,0,0,-260, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,-83,0,0,0, + -270,0,-84,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,-87,0,0, + 0,-152,0,-89,0,0,0,0,0,0, + 0,0,0,-277,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + -111,0,0,0,-283,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,-90,0,0,0,-72,0,-96,0,0, + 0,0,0,-48,0,0,0,-149,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,-95,0,-42,0,0,-238,0,-62,-97, + 0,0,0,0,0,0,0,0,0,-92, + -45,0,0,-99,-91,0,0,0,-100,-183, + 0,0,0,0,0,-114,0,0,-269,0, + 0,0,-103,0,-29,0,0,-52,0,0, + 0,0,0,0,0,0,0,0,0,0, + -70,0,-105,0,0,0,0,0,0,0, + -40,0,0,0,0,0,0,0,0,0, + 0,0,-94,0,-172,0,0,0,-86,-107, + 0,-47,0,-101,0,0,0,0,0,0, + 0,0,-190,-115,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + -59,-180,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,-163,0,0,0, + 0,0,-164,0,0,0,0,-15,0,-8, + 0,-109,0,0,0,-166,-228,0,0,0, + -169,0,0,0,0,-223,-191,-6,-112,0, + 0,-234,0,0,0,0,0,0,0,-162, + 0,0,0,-174,0,0,0,0,0,0, + 0,0,-17,0,-116,-252,0,0,0,0, + 0,0,0,0,0,0,0,-176,0,0, + 0,0,0,0,0,-195,0,0,0,0, + 0,-247,-197,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,-248, + 0,0,0,0,-73,0,0,0,0,0, + 0,0,0,0,-177,0,0,0,-184,0, + 0,0,0,0,0,-263,0,0,-98,0, + 0,-85,-185,0,0,0,0,0,-204,0, + 0,0,-282,0,-276,0,0,0,-205,0, + 0,0,0,-206,0,0,0,0,0,0, + 0,0,0,0,-155,0,-207,0,0,0, + 0,0,0,0,0,0,0,0,-173,0, + 0,0,0,0,-208,0,0,0,0,0, + -108,-57,0,0,-209,0,0,0,0,0, + -175,0,0,-239,-258,0,0,0,0,0, + 0,0,0,0,0,0,-178,0,0,0, + -187,0,-229,0,0,-232,0,0,0,0, + 0,0,0,0,0,0,-110,0,0,0, + 0,0,-210,0,0,0,0,0,-211,0, + 0,0,0,0,0,0,0,0,-254,0, + 0,-212,0,0,0,-233,0,0,0,0, + -186,-213,0,-214,-250,0,-215,0,0,0, + -256,0,0,-216,0,0,0,0,0,0, + 0,0,0,0,-217,0,-262,0,-218,-68, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,-257,0,0,-266, + -198,0,0,-196,0,0,0,0,0,0, + 0,0,-219,0,0,0,0,0,-287,0, + 0,0,-220,0,0,0,0,0,0,0, + 0,0,0,-225,-261,0,0,-203,-243,0, + -289,0,0,0,0,-268,0,0,0,0, + 0,0,0,0,0,-275,-181,0,0,-244, + -281,0,-291,0,0,-43,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,-69,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,-288,0,0,0,0, + -1,0,0,0,-259,-153,0,0,0,0, + 0,0,0,0,0,0,0,0,-19,-273, + 0,0,-144,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,-140,0,0, + 0,0,0,-55,0,-71,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,-199,-286,0,-145,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,-5, + 0,0,-88,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,-134,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,-80, - 0,0,0,0,0,-85,-120,0,0,0, - 0,0,0,0,-161,-162,0,0,0,-202, - -258,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-52,0,0,-263,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,-267,0,0,0,0,0,0,0,0, - 0,0,0,0,0,-282,-184,0,0,-246, + 0,0,0,0,0,0,0,0,0,-141, + 0,0,0,0,0,0,0,0,0,-241, + 0,0,-142,0,0,0,0,0,0,0, + 0,0,-231,-246,0,0,-245,0,0,0, + 0,-143,0,0,0,0,0,0,0,0, + 0,0,0,-11,0,0,0,0,-14,-182, + 0,0,0,0,0,0,0,-16,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, + -64,-135,0,0,0,0,0,0,0,-136, + 0,0,0,-167,0,0,0,0,-117,0, + 0,0,0,0,0,0,0,0,0,-56, + 0,0,0,0,0,0,0,0,0,-264, + 0,0,0,0,0,-237,0,0,0,0, + 0,0,-222,0,0,0,0,0,0,0, + 0,0,-253,0,0,0,0,-272,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0 + -285,0,0,0,0,0,0,0,0,0, + -158,0,0,0,0,0,0,0,0,0, + -168,0,0,0,0,0,0,0,-170,0, + 0,0,-171,0,0,0,0,0,0,0, + 0,0,0,0,-255,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; @@ -280,246 +275,240 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym public interface BaseAction { public final static char baseAction[] = { - 106,2,123,40,40,23,23,41,41,18, - 18,1,1,3,3,3,3,4,4,4, - 5,6,6,6,6,6,6,6,6,68, - 68,90,7,7,7,7,7,7,7,7, + 107,2,125,40,40,23,23,45,45,17, + 17,1,1,3,3,3,3,4,4,4, + 5,6,6,6,6,6,6,6,6,78, + 78,90,7,7,7,7,7,7,7,7, 7,7,7,8,8,9,9,9,9,10, 10,10,11,11,11,12,12,12,12,12, - 13,13,13,14,14,15,15,16,16,17, - 17,19,19,20,20,22,22,22,22,22, + 13,13,13,14,14,15,15,16,16,18, + 18,19,19,20,20,22,22,22,22,22, 22,22,22,22,22,22,22,29,27,21, - 107,107,92,92,54,30,30,30,30,30, - 30,30,31,31,31,28,28,93,93,69, - 69,32,32,33,33,33,61,61,34,34, + 108,108,91,91,56,30,30,30,30,30, + 30,30,31,31,31,28,28,92,92,68, + 68,32,32,33,33,33,63,63,34,34, 34,34,35,35,35,35,35,47,47,24, - 24,24,24,24,48,48,48,83,83,78, - 78,78,78,79,79,79,80,80,80,81, - 81,81,82,82,82,94,94,84,84,85, - 49,51,51,51,51,51,62,64,64,64, - 64,64,64,64,64,64,64,64,64,73, - 70,70,108,109,74,74,71,71,71,86, - 95,95,96,96,87,87,87,55,110,110, - 97,98,98,98,72,72,111,99,99,100, - 100,88,88,25,26,26,26,50,52,52, - 42,42,42,42,37,37,38,43,43,44, - 39,39,101,101,45,113,113,112,112,46, - 46,46,46,46,46,46,46,46,102,53, - 53,53,53,36,75,75,65,65,65,66, - 66,56,56,114,114,77,77,76,76,76, - 57,57,57,58,59,59,59,60,60,60, - 60,63,63,63,67,115,91,91,91,91, - 89,116,117,117,118,118,119,119,106,106, - 120,120,103,103,103,103,121,121,104,104, - 104,105,105,292,1568,754,17,21,18,1042, - 947,45,1178,1213,1209,1256,1229,1349,1313,1392, - 1383,622,1404,75,324,92,322,768,135,213, - 1407,20,331,17,21,18,1042,43,45,1178, - 1213,1209,1256,1229,1349,1313,1392,1867,419,359, - 1309,137,134,136,160,587,187,638,458,224, - 233,892,1051,179,793,139,127,166,1426,1485, - 1110,770,539,143,146,149,152,414,581,128, - 1497,1965,2115,2144,2157,2173,1535,135,213,241, - 829,88,770,1399,296,1566,908,116,2255,458, - 224,232,1445,20,176,17,21,18,1042,41, - 137,134,136,160,1378,847,224,229,310,231, - 218,924,221,223,139,260,166,587,186,309, - 492,1592,143,146,149,152,414,307,587,31, - 1965,2115,2144,2157,2173,1535,1407,20,314,17, - 21,18,1042,43,45,1178,1213,1209,1256,1229, - 1349,1313,1845,334,1350,20,681,17,21,18, - 1042,947,45,1178,1213,1209,1256,1229,1349,1313, - 1392,1383,440,1404,75,355,281,1369,20,681, - 17,21,18,1042,947,45,1178,1213,1209,1256, - 1229,1349,1313,1392,1383,225,1404,75,986,281, - 1407,20,336,17,21,18,1042,43,45,1178, - 1213,1209,1256,1229,1349,1848,124,286,25,1407, - 20,1439,17,21,18,1042,947,45,1178,1213, - 1209,1256,1229,1349,1313,1392,1383,1161,1404,75, - 286,92,746,287,1439,1471,1407,20,357,17, - 21,18,1042,43,45,1178,1213,1209,1256,1229, - 1832,365,255,213,587,1633,287,501,1619,1265, - 20,681,17,21,18,1042,947,45,1178,1213, - 1209,1256,1229,1349,1313,1392,1383,442,1404,75, - 833,281,1342,1199,20,1365,17,21,18,1042, - 947,45,1178,1213,1209,1256,1229,1349,1313,1392, - 1383,1566,1404,75,626,359,1407,20,788,17, - 21,18,1042,43,45,1178,1213,1209,1256,1842, - 708,311,288,239,1242,20,1439,17,21,18, - 1042,947,45,1178,1213,1209,1256,1229,1349,1313, - 1392,1383,210,1404,75,421,281,1312,289,1388, - 20,412,17,21,18,1042,947,45,1178,1213, - 1209,1256,1229,1349,1313,1392,1383,986,1404,75, - 747,281,1407,20,541,17,21,18,1042,43, - 45,1178,1213,1209,1795,123,421,158,539,1407, - 20,1439,17,21,18,1042,947,45,1178,1213, - 1209,1256,1229,1349,1313,1392,1383,88,1404,75, - 505,86,290,1039,326,634,1439,1426,20,1421, - 17,21,18,1042,947,45,1178,1213,1209,1256, - 1229,1349,1313,1392,1383,1115,1404,75,443,856, - 1108,179,1223,20,790,17,21,18,1042,947, - 45,1178,1213,1209,1256,1229,1349,1313,1392,1383, - 805,1404,75,331,1420,135,213,1894,927,292, - 794,638,847,224,229,587,188,219,924,221, - 223,274,240,1295,908,744,2210,54,137,134, - 136,160,269,1019,1023,272,437,58,421,562, - 2178,833,139,1448,166,587,1470,231,255,213, - 143,146,149,152,414,324,331,1059,1965,2115, - 2144,2157,2173,1535,1407,20,359,17,21,18, - 1042,43,45,1178,1213,1209,1256,1229,1349,1313, - 1392,1383,105,1404,94,1407,20,900,17,21, - 18,1042,947,45,1178,1213,1209,1256,1229,1349, - 1313,1392,1383,227,1404,75,243,85,1464,20, - 828,17,21,18,1042,34,1407,20,1534,17, - 21,18,1042,947,45,1178,1213,1209,1256,1229, - 1349,1313,1392,1383,913,1404,75,1484,84,1407, - 20,440,17,21,18,1042,947,45,1178,1213, - 1209,1256,1229,1349,1313,1392,1383,384,1404,75, - 308,83,1407,20,230,17,21,18,1042,947, - 45,1178,1213,1209,1256,1229,1349,1313,1392,1383, - 228,1404,75,1006,82,1407,20,440,17,21, - 18,1042,947,45,1178,1213,1209,1256,1229,1349, - 1313,1392,1383,440,1404,75,234,81,1407,20, - 2122,17,21,18,1042,947,45,1178,1213,1209, - 1256,1229,1349,1313,1392,1383,19,1404,75,1176, - 80,1407,20,1285,17,21,18,1042,947,45, - 1178,1213,1209,1256,1229,1349,1313,1392,1383,440, - 1404,75,1490,79,1407,20,293,17,21,18, - 1042,947,45,1178,1213,1209,1256,1229,1349,1313, - 1392,1383,1722,1404,75,276,78,1407,20,275, - 17,21,18,1042,947,45,1178,1213,1209,1256, - 1229,1349,1313,1392,1383,440,1404,75,440,77, - 1407,20,440,17,21,18,1042,947,45,1178, - 1213,1209,1256,1229,1349,1313,1392,1383,1747,1404, - 75,1784,76,1407,20,1888,17,21,18,1042, - 947,45,1178,1213,1209,1256,1229,1349,1313,1392, - 1383,440,1404,75,1511,93,1407,20,1056,17, - 21,18,1042,43,45,1178,1213,1209,1256,1229, - 1349,1313,1392,1383,1889,1404,94,1407,20,440, - 17,21,18,1042,947,45,1178,1213,1209,1256, - 1229,1349,1313,1392,1383,180,1404,75,1055,1642, - 1464,20,23,17,21,18,1042,33,1407,20, - 212,17,21,18,1042,947,45,1178,1213,1209, - 1256,1229,1349,1313,1392,1383,1589,1404,75,935, - 1688,1407,20,663,17,21,18,1042,43,45, - 1178,1213,1209,1256,1229,1349,1313,1392,1383,630, - 1404,94,1407,20,1056,17,21,18,1042,947, - 45,1178,1213,1209,1256,1229,1349,1313,1392,1383, - 331,1404,75,421,74,1257,345,628,1633,421, - 1313,1307,539,1407,20,202,17,21,18,1042, - 43,45,1178,1213,1209,1256,1229,1349,1313,1392, - 1383,90,1404,94,1407,20,1530,17,21,18, - 1042,43,45,1178,1213,1209,1256,1229,1349,1313, - 1392,1383,1613,1404,94,587,295,628,1633,581, - 440,1600,421,509,770,1407,20,203,17,21, - 18,1042,43,45,1178,1213,1209,1256,1229,1349, - 1313,1392,1383,273,1404,94,1378,419,1825,539, - 587,31,178,827,313,209,847,224,587,931, - 986,218,924,221,607,125,1138,1635,88,306, - 111,159,1486,87,1382,1119,1378,1159,112,1847, - 96,1350,109,95,97,98,99,100,419,419, - 1641,1694,986,288,1,827,313,255,213,110, - 254,213,463,155,568,209,127,195,1119,946, - 126,1691,111,371,591,87,1234,1635,1378,1000, - 845,107,96,1350,109,95,97,98,99,100, - 359,1119,675,254,213,312,890,421,1398,1474, - 24,110,908,400,2258,1384,847,224,229,1067, - 557,218,924,221,223,274,254,213,235,827, - 313,263,1339,108,1790,278,267,1019,1023,272, - 242,421,941,2230,2131,1064,111,772,1069,87, - 986,1502,1378,813,1511,264,96,1350,109,95, - 97,98,99,100,986,277,1407,20,122,17, - 21,18,1042,43,40,110,557,331,274,847, - 224,229,1762,60,218,924,221,223,274,267, - 1019,1023,272,261,492,283,421,107,539,267, - 1019,1023,272,1157,119,827,313,933,266,770, - 1124,876,1734,562,172,1108,179,88,1310,1700, - 440,1524,111,1085,1005,87,2135,421,1378,474, - 1956,197,96,1350,109,95,97,98,99,100, - 135,213,421,279,497,106,1027,277,360,1407, - 20,110,17,21,18,1042,43,45,1178,1213, - 1209,1803,1379,138,134,136,160,587,297,1511, - 274,359,986,108,480,827,539,140,440,166, - 331,267,1019,1023,272,144,147,150,153,414, - 2292,1511,111,1511,193,87,521,827,539,1502, - 1310,1745,96,1350,1531,95,97,98,99,100, - 204,22,440,1118,111,1205,562,87,562,827, - 539,581,359,1497,96,1350,104,95,97,98, - 99,100,181,2002,205,280,111,1289,20,87, - 17,21,18,1042,43,36,96,1350,102,95, - 97,98,99,100,603,827,539,905,847,224, - 229,1126,244,218,924,221,223,1701,359,1141, - 706,331,111,159,868,87,1497,246,745,194, - 1511,1511,96,1350,103,95,97,98,99,100, - 1407,20,986,17,21,18,1042,43,45,1178, - 1213,1820,644,827,539,155,568,562,245,459, - 2306,847,224,229,1119,371,218,924,221,223, - 111,1729,28,87,765,986,1886,685,827,539, - 96,1350,119,95,97,98,99,100,1498,254, - 213,1504,1110,118,539,111,1407,20,87,17, - 21,18,1042,43,39,96,1350,115,95,97, - 98,99,100,88,726,827,539,440,440,116, - 331,198,200,1289,20,367,17,21,18,1042, - 43,36,111,477,1681,87,767,827,539,1362, - 1828,1850,96,1350,1893,95,97,98,99,100, - 1284,1286,1470,1712,111,359,562,87,808,827, - 539,1483,1177,247,96,1350,114,95,97,98, - 99,100,712,2231,282,795,111,359,755,87, - 849,827,539,581,1045,1497,96,1350,121,95, - 97,98,99,100,868,294,1497,1185,111,1407, - 20,87,17,21,18,1042,43,38,96,1350, - 120,95,97,98,99,100,1499,296,1312,1512, - 847,224,229,1261,1514,218,924,221,223,2391, - 2391,847,224,229,2391,159,218,924,221,223, - 2391,2391,2391,2391,1407,20,1886,17,21,18, - 1042,43,45,1178,1213,1821,1407,20,2391,17, - 21,18,1042,43,45,1178,1690,156,568,1407, - 20,2391,17,21,18,1042,43,45,1178,1213, - 1822,2391,2391,2391,2391,2391,622,2391,2391,2391, - 2391,199,200,1407,20,1146,17,21,18,1042, - 43,45,1178,1213,1831,1407,20,2391,17,21, - 18,1042,43,45,1178,1698,349,2391,372,2391, - 135,213,638,847,224,229,2391,2391,219,924, - 221,223,622,2391,304,2391,2391,421,2391,539, - 358,2391,2391,142,134,136,160,1407,20,2391, - 17,21,18,1042,43,45,1758,141,88,166, - 2391,2391,2391,303,1088,2391,2391,2391,638,847, - 224,1468,2391,2391,219,924,221,1465,1407,20, - 2391,17,21,18,1042,43,45,1761,1407,20, - 2391,17,21,18,1042,43,37,1407,20,2391, - 17,21,18,1042,43,35,1407,20,2391,17, - 21,18,1042,43,36,2391,2391,2391,2391,300, - 302,2391,315,1407,20,2391,17,21,18,1042, - 43,48,2391,2391,1407,20,2132,17,21,18, - 1042,43,47,1407,20,944,17,21,18,1042, - 43,46,1319,20,2391,17,21,18,1042,43, - 44,950,406,770,372,950,2391,770,2391,2391, - 135,213,2391,2391,1003,2391,2391,421,2391,539, - 304,2391,2391,2391,2391,1399,358,1062,2391,1399, - 2391,2391,2391,145,134,136,160,562,88,135, - 213,562,2391,1468,1591,2391,2391,2391,874,303, - 770,2391,135,213,765,2391,2391,259,2231,2391, - 2391,259,148,134,136,160,1540,1409,135,213, - 1540,1409,197,2391,2391,151,134,136,160,2391, - 938,2391,770,2391,2391,2391,421,1110,313,313, - 2391,154,134,136,160,421,421,313,313,2391, - 992,1508,770,1379,1399,301,302,88,88,2391, - 197,1378,2391,993,116,2391,88,88,2391,197, - 197,2391,993,993,197,402,2391,770,402,2391, - 770,2391,2391,2391,380,192,259,638,2391,2391, - 2391,1452,2391,1134,1527,931,1409,274,1484,1399, - 1452,1452,1399,2391,2391,1379,2391,2391,269,1019, - 1023,272,1110,977,539,2391,2391,2391,2391,2391, - 2391,2391,1092,1131,2391,2391,1110,421,539,539, - 421,259,539,88,259,2391,2391,192,2391,116, - 931,1409,973,1632,1409,1611,1527,88,88,2391, - 2391,88,2391,116,1854,2391,2391,1598,2391,2391, - 2391,2391,2391,2391,2391,2391,2391,2391,2391,2391, - 2391,2391,2391,1787,2391,2391,2391,2391,2391,2391, - 2391,2391,2391,2391,2391,2391,2391,1788,2391,0, - 11,226,0,2399,1,0,1,2628,0,8, - 10,0,179,20,0,1,2617,0,113,1806, - 0 + 24,24,24,24,48,48,48,84,84,79, + 79,79,79,80,80,80,81,81,81,82, + 82,82,83,83,83,93,93,85,85,86, + 49,51,51,51,51,51,64,65,65,65, + 65,65,65,65,65,65,65,65,65,72, + 69,69,109,110,74,74,70,70,70,87, + 94,94,95,95,88,88,88,57,111,111, + 96,97,97,97,71,71,112,98,98,99, + 99,89,89,25,26,26,26,50,52,52, + 41,41,41,41,37,37,38,42,42,43, + 39,39,100,100,44,114,114,113,113,46, + 46,46,46,46,46,46,46,46,101,54, + 54,54,54,36,75,75,66,66,66,67, + 67,58,58,115,115,77,77,76,76,76, + 59,59,59,60,61,61,61,62,62,62, + 62,73,73,53,53,55,117,116,116,116, + 116,102,118,119,119,120,120,121,121,107, + 107,122,122,103,103,103,103,123,123,104, + 104,104,105,106,106,292,1605,998,17,21, + 18,1132,948,45,1151,1170,1155,1193,1174,1218, + 1199,1247,622,1222,1253,75,331,92,359,176, + 135,213,1426,20,505,17,21,18,1132,43, + 45,1151,1170,1155,1193,1174,1218,1199,1247,908, + 1823,2190,284,137,134,136,160,944,702,524, + 224,233,667,587,1609,1051,179,336,241,139, + 166,358,231,1354,143,146,149,152,754,339, + 332,1115,135,213,1500,367,2104,2109,2118,1543, + 135,213,322,834,1407,20,1558,17,21,18, + 1132,41,524,224,232,145,134,136,160,419, + 1313,1518,788,137,134,136,160,702,665,224, + 229,442,219,609,221,223,127,274,541,139, + 166,90,587,187,143,146,149,152,402,339, + 269,782,925,272,1500,367,2104,2109,2118,1543, + 1426,20,210,17,21,18,1132,43,45,1151, + 1170,1155,1193,1174,1764,526,1350,20,550,17, + 21,18,1132,948,45,1151,1170,1155,1193,1174, + 1218,1199,1247,440,1222,1253,75,1124,281,1265, + 20,550,17,21,18,1132,948,45,1151,1170, + 1155,1193,1174,1218,1199,1247,225,1222,1253,75, + 296,281,255,213,314,594,324,402,986,282, + 1451,1268,1426,20,442,17,21,18,1132,43, + 45,1151,1170,1155,1193,1174,1218,1199,1774,287, + 412,833,282,1334,1268,1242,20,324,17,21, + 18,1132,948,45,1151,1170,1155,1193,1174,1218, + 1199,1247,289,1222,1253,75,892,281,288,1426, + 20,501,17,21,18,1132,43,45,1151,1170, + 1155,1675,1765,128,587,186,313,587,31,1426, + 20,290,17,21,18,1132,43,40,282,913, + 1268,1369,20,421,17,21,18,1132,948,45, + 1151,1170,1155,1193,1174,1218,1199,1247,158,1222, + 1253,75,310,281,1199,20,1359,17,21,18, + 1132,948,45,1151,1170,1155,1193,1174,1218,1199, + 1247,294,1222,1253,75,228,338,1108,179,833, + 358,1435,1681,312,282,1004,1268,829,1856,530, + 293,749,1426,20,239,17,21,18,1132,43, + 45,1644,135,213,291,1426,20,25,17,21, + 18,1132,43,45,1151,1170,1155,1193,1174,1218, + 1785,1466,831,657,105,137,134,136,160,1426, + 20,227,17,21,18,1132,43,45,1151,1170, + 1733,139,166,587,31,1386,143,146,149,152, + 283,339,326,671,587,188,1500,367,2104,2109, + 2118,1543,1388,20,2179,17,21,18,1132,948, + 45,1151,1170,1155,1193,1174,1218,1199,1247,260, + 1222,1253,75,440,809,1223,20,440,17,21, + 18,1132,948,45,1151,1170,1155,1193,1174,1218, + 1199,1247,1285,1222,1253,75,230,1566,1426,20, + 1573,17,21,18,1132,948,45,1151,1170,1155, + 1193,1174,1218,1199,1247,240,1222,1253,75,359, + 92,1426,20,24,17,21,18,1132,43,45, + 1151,1170,1155,1193,1174,1218,1199,1247,276,1222, + 1253,94,1426,20,418,17,21,18,1132,948, + 45,1151,1170,1155,1193,1174,1218,1199,1247,243, + 1222,1253,75,986,86,1426,20,998,17,21, + 18,1132,43,45,1151,1170,1739,1534,1426,20, + 124,17,21,18,1132,43,39,1426,20,1558, + 17,21,18,1132,948,45,1151,1170,1155,1193, + 1174,1218,1199,1247,440,1222,1253,75,1126,85, + 1426,20,180,17,21,18,1132,948,45,1151, + 1170,1155,1193,1174,1218,1199,1247,19,1222,1253, + 75,234,84,1426,20,1132,17,21,18,1132, + 948,45,1151,1170,1155,1193,1174,1218,1199,1247, + 440,1222,1253,75,1440,83,1426,20,384,17, + 21,18,1132,948,45,1151,1170,1155,1193,1174, + 1218,1199,1247,1572,1222,1253,75,440,82,1426, + 20,275,17,21,18,1132,948,45,1151,1170, + 1155,1193,1174,1218,1199,1247,440,1222,1253,75, + 1590,81,1426,20,440,17,21,18,1132,948, + 45,1151,1170,1155,1193,1174,1218,1199,1247,23, + 1222,1253,75,440,80,1426,20,1749,17,21, + 18,1132,948,45,1151,1170,1155,1193,1174,1218, + 1199,1247,440,1222,1253,75,1771,79,1426,20, + 440,17,21,18,1132,948,45,1151,1170,1155, + 1193,1174,1218,1199,1247,1807,1222,1253,75,440, + 78,1426,20,273,17,21,18,1132,948,45, + 1151,1170,1155,1193,1174,1218,1199,1247,440,1222, + 1253,75,279,77,1426,20,440,17,21,18, + 1132,948,45,1151,1170,1155,1193,1174,1218,1199, + 1247,1987,1222,1253,75,440,76,1426,20,280, + 17,21,18,1132,948,45,1151,1170,1155,1193, + 1174,1218,1199,1247,440,1222,1253,75,1851,1849, + 1426,20,1471,17,21,18,1132,948,45,1151, + 1170,1155,1193,1174,1218,1199,1247,1873,1222,1253, + 75,1055,1870,1426,20,876,17,21,18,1132, + 948,45,1151,1170,1155,1193,1174,1218,1199,1247, + 663,1222,1253,75,630,93,1426,20,331,17, + 21,18,1132,43,45,1151,1170,1155,1193,1174, + 1218,1199,1247,345,1222,1253,94,1426,20,796, + 17,21,18,1132,948,45,1151,1170,1155,1193, + 1174,1218,1199,1247,1519,1222,1253,75,931,74, + 1426,20,288,17,21,18,1132,43,45,1657, + 1426,20,212,17,21,18,1132,43,45,1151, + 1170,1155,1193,1174,1218,1199,1247,751,1222,1253, + 94,1426,20,550,17,21,18,1132,43,45, + 1151,1170,1155,1193,1174,1218,1199,1247,1067,1222, + 1253,94,1426,20,1064,17,21,18,1132,43, + 45,1151,1170,1752,1426,20,202,17,21,18, + 1132,43,45,1151,1170,1155,1193,1174,1218,1199, + 1247,331,1222,1253,94,1426,20,1871,17,21, + 18,1132,43,45,1151,1170,1155,1193,1174,1218, + 1199,1247,1069,1222,1253,94,1445,20,589,17, + 21,18,1132,34,178,1413,315,1761,1426,20, + 203,17,21,18,1132,43,45,1151,1170,1155, + 1685,111,587,1506,358,87,657,1295,1471,890, + 626,1916,96,1444,109,95,97,98,99,100, + 419,908,788,1622,708,1,1413,315,1471,793, + 1464,110,255,213,254,213,946,125,1517,587, + 296,88,111,54,231,331,87,1493,358,1471, + 1727,307,107,96,1444,109,95,97,98,99, + 100,1289,20,58,17,21,18,1132,43,36, + 314,331,110,665,224,229,1375,218,609,221, + 223,667,274,986,497,235,1413,315,263,358, + 1104,317,622,108,986,267,782,925,272,1442, + 123,246,111,941,1205,2070,87,667,1522,1471, + 765,112,264,96,1444,109,95,97,98,99, + 100,419,419,1545,1716,1964,277,1682,702,665, + 224,1322,110,219,609,221,1274,60,127,195, + 665,224,229,986,218,609,221,223,582,274, + 1146,261,358,107,2110,493,986,119,1413,315, + 126,905,267,782,925,272,986,331,355,1119, + 1395,1711,998,122,111,135,213,1507,87,1040, + 358,1471,476,2223,172,96,1444,109,95,97, + 98,99,100,1108,179,355,986,1421,142,134, + 136,160,106,667,110,665,224,581,1261,218, + 609,221,534,2228,141,166,359,204,135,213, + 159,391,1178,1319,20,108,17,21,18,1132, + 43,44,665,224,229,734,218,609,221,223, + 1490,138,134,136,160,1445,20,159,17,21, + 18,1132,33,155,527,360,242,140,166,1118, + 732,576,144,147,150,153,1489,339,557,480, + 1413,788,1112,1465,657,28,28,1268,1268,706, + 155,527,381,587,298,868,111,1421,576,745, + 87,255,213,28,1480,1268,1386,96,1444,1511, + 95,97,98,99,100,1426,20,1486,17,21, + 18,1132,43,45,1151,1170,1155,1193,1767,521, + 1413,788,665,224,229,367,218,609,221,223, + 259,874,786,657,657,477,111,1845,763,1454, + 87,562,1413,788,908,998,2200,96,1444,104, + 95,97,98,99,100,197,1471,358,111,2083, + 311,890,87,603,1413,788,868,278,1421,96, + 1444,102,95,97,98,99,100,664,1609,308, + 111,199,200,1284,87,898,254,213,1472,1286, + 181,96,1444,103,95,97,98,99,100,644, + 1413,788,1430,665,224,229,1464,218,609,221, + 223,1161,1432,2206,1220,1500,111,672,1845,192, + 87,685,1413,788,1141,857,1867,96,1444,119, + 95,97,98,99,100,1411,1357,998,111,1000, + 1426,20,87,17,21,18,1132,43,38,96, + 1444,115,95,97,98,99,100,726,1413,788, + 998,331,198,200,1289,20,209,17,21,18, + 1132,43,36,1467,111,1380,1623,1925,87,767, + 1413,788,205,711,1787,96,1444,1866,95,97, + 98,99,100,1810,904,1499,111,667,359,359, + 87,808,1413,788,247,613,1503,96,1444,114, + 95,97,98,99,100,2087,1142,933,111,657, + 359,359,87,849,1413,788,355,2336,1421,96, + 1444,121,95,97,98,99,100,2336,22,244, + 111,197,1426,20,87,17,21,18,1132,43, + 37,96,1444,120,95,97,98,99,100,2336, + 245,295,2336,665,224,229,359,218,609,221, + 223,349,2336,375,1472,1484,1426,20,159,17, + 21,18,1132,43,45,1151,1170,1762,305,355, + 986,1421,194,1426,20,419,17,21,18,1132, + 43,45,1151,1629,2336,193,297,2241,358,2336, + 788,156,527,2336,622,2336,1426,20,304,17, + 21,18,1132,43,35,2336,665,224,229,88, + 218,609,221,223,2336,1848,1005,986,2084,1426, + 20,493,17,21,18,1132,43,45,1151,1639, + 702,665,224,229,118,219,609,221,223,277, + 406,2336,375,1426,20,2336,17,21,18,1132, + 43,36,2336,2336,301,303,309,305,388,1061, + 2336,1811,274,2336,419,2336,2336,2336,2336,2336, + 2336,2336,2336,2010,2336,267,782,925,272,2336, + 2336,2336,2336,2336,2336,2336,2336,304,2336,2336, + 1426,20,1040,17,21,18,1132,43,48,2336, + 950,2336,657,1426,20,274,17,21,18,1132, + 43,47,2336,992,950,657,657,1339,267,782, + 925,272,1426,20,1386,17,21,18,1132,43, + 46,2336,2336,2336,1003,266,667,197,1386,1062, + 664,1609,2336,302,303,309,2336,2336,1449,2336, + 667,2336,2336,702,391,2336,2336,2336,259,135, + 213,2336,2336,274,135,213,1059,1454,2087,2336, + 1472,2336,259,135,213,2336,269,782,925,272, + 1059,1454,148,134,136,160,2336,151,134,136, + 160,358,358,315,315,2336,154,134,136,160, + 358,192,315,2336,1479,2336,315,1695,1867,890, + 2336,2336,88,88,2336,197,197,2336,894,894, + 1084,88,657,2336,197,88,2336,894,1471,209, + 1084,116,657,2336,254,213,890,2336,1756,1623, + 2336,2336,2336,1479,1386,788,2336,2336,2029,2029, + 2336,2213,2336,1479,1386,788,2336,2029,1479,2336, + 788,254,213,2336,88,2336,2336,1516,767,940, + 116,1479,2336,788,88,2336,2336,967,259,88, + 116,358,2336,788,497,116,763,1454,259,2336, + 2336,358,88,788,2336,2336,1086,1454,116,358, + 2336,788,88,358,2336,788,1546,2336,1789,2336, + 1107,1616,88,2336,2336,358,1940,788,994,2336, + 88,1105,2336,2336,88,2336,1013,2336,2336,2336, + 1032,2336,2336,2336,1124,2336,88,2336,2336,2336, + 2336,2336,1078,2336,0,11,226,0,2344,1, + 0,1,2573,0,8,10,0,179,20,0, + 1,2562,0,113,1829,0 }; }; public final static char baseAction[] = BaseAction.baseAction; @@ -564,133 +553,132 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym 29,0,1,0,3,0,1,6,3,6, 0,6,41,42,43,44,45,46,47,48, 49,50,51,52,0,54,55,56,0,1, - 2,3,4,5,0,1,0,3,0,0, + 2,3,4,5,0,1,2,0,0,0, 1,2,4,4,5,78,0,19,20,21, 22,23,24,25,26,27,28,29,19,20, 21,22,23,0,25,26,27,28,29,41, 42,43,44,45,46,47,48,49,50,51, 52,0,54,55,56,0,1,2,3,4, - 5,0,53,69,70,71,72,61,0,60, + 5,0,53,69,70,71,72,0,0,60, 0,73,4,65,19,20,21,22,23,24, 25,26,27,28,29,69,70,71,72,0, 22,0,0,4,61,4,41,42,43,44, 45,46,47,48,49,50,51,52,0,54, - 55,56,0,22,53,64,83,84,85,86, + 55,56,61,22,53,0,83,84,85,86, 87,88,89,90,91,92,0,66,73,0, 1,2,3,4,5,6,7,8,9,10, 11,12,13,14,15,16,17,18,57,60, 0,22,61,24,0,1,6,3,0,30, 31,32,33,34,35,36,37,38,39,40, 0,1,2,3,4,5,6,7,8,9, - 10,11,12,13,14,15,16,17,18,77, + 10,11,12,13,14,15,16,17,18,0, 0,1,22,3,24,69,70,71,72,0, 30,31,32,33,34,35,36,37,38,39, 40,0,1,2,3,4,5,6,7,8, 9,10,11,12,13,14,15,16,17,18, - 0,1,2,22,76,24,0,1,0,3, - 0,30,31,32,33,34,35,36,37,38, + 0,0,1,22,3,24,0,1,0,3, + 2,30,31,32,33,34,35,36,37,38, 39,40,0,1,2,3,4,5,6,7, 8,9,10,11,12,13,14,15,16,17, - 18,0,1,2,22,0,24,0,1,0, - 3,6,30,31,32,33,34,35,36,37, + 18,0,1,2,22,0,24,2,0,0, + 81,82,30,31,32,33,34,35,36,37, 38,39,40,0,1,2,3,4,5,6, 7,8,9,10,11,12,13,14,15,16, 17,18,0,0,1,22,3,24,0,7, - 8,81,82,30,31,32,33,34,35,36, + 8,0,0,30,31,32,33,34,35,36, 37,38,39,40,0,1,2,3,4,5, 6,7,8,9,10,11,12,13,14,15, 16,17,18,74,75,0,22,0,24,2, - 0,0,7,8,30,31,32,33,34,35, + 0,1,7,8,30,31,32,33,34,35, 36,37,38,39,40,0,1,2,3,4, 5,6,7,8,9,10,11,12,13,14, - 15,16,17,18,0,0,0,22,2,24, - 5,7,8,0,0,30,31,32,33,34, + 15,16,17,18,0,74,75,22,0,24, + 0,7,8,0,6,30,31,32,33,34, 35,36,37,38,39,40,0,1,2,3, 4,5,6,7,8,9,10,11,12,13, - 14,15,16,17,18,74,75,0,22,0, - 24,2,5,0,0,2,30,31,32,33, + 14,15,16,17,18,0,0,1,22,3, + 24,6,0,0,2,0,30,31,32,33, 34,35,36,37,38,39,40,0,1,2, 3,4,5,6,7,8,9,10,11,12, - 13,14,15,16,17,18,73,0,0,22, - 76,24,0,6,6,0,4,30,31,32, + 13,14,15,16,17,18,73,77,0,22, + 0,24,0,5,0,5,4,30,31,32, 33,34,35,36,37,38,39,40,0,1, 2,3,4,5,6,7,8,9,10,11, 12,13,14,15,16,17,18,0,1,2, - 22,77,24,0,1,0,3,4,30,31, + 22,76,24,0,1,0,3,4,30,31, 32,33,34,35,36,37,38,39,40,0, 58,0,19,20,21,4,23,24,25,26, - 27,28,29,0,0,30,2,0,19,20, + 27,28,29,0,0,2,0,0,19,20, 21,4,0,22,41,42,43,44,45,46, 47,48,49,50,51,52,59,54,55,56, - 0,58,0,1,0,3,4,0,1,9, + 0,58,0,1,30,3,4,62,63,9, 0,1,2,0,4,0,1,2,57,0, 5,19,20,21,5,23,24,25,26,27, 28,29,19,20,21,53,23,60,25,26, 27,28,29,41,42,43,44,45,46,47, 48,49,50,51,52,0,54,55,56,4, - 58,0,1,53,3,4,62,63,53,0, - 60,64,0,0,0,0,2,22,4,4, + 58,0,1,53,3,4,0,0,53,0, + 60,4,0,0,0,2,2,22,4,0, 19,20,21,64,23,24,25,26,27,28, 29,19,20,21,0,23,0,25,26,27, 28,29,41,42,43,44,45,46,47,48, 49,50,51,52,0,54,55,56,0,58, - 0,1,2,3,0,0,57,53,0,5, - 2,0,57,0,60,60,0,4,0,19, + 0,1,2,3,0,58,53,53,59,5, + 0,0,2,0,60,5,0,4,0,19, 20,21,6,23,6,25,26,27,28,29, - 19,20,21,57,23,22,25,26,27,28, + 19,20,21,0,23,22,25,26,27,28, 29,41,42,43,44,45,46,47,48,49, - 50,51,52,59,54,55,56,0,1,0, - 3,53,57,4,0,1,2,0,0,5, + 50,51,52,0,54,55,56,0,1,6, + 3,0,1,53,0,1,2,0,0,5, 57,67,68,0,61,0,19,20,21,4, - 23,22,25,26,27,28,29,19,20,21, - 0,1,19,20,21,0,0,22,41,42, + 23,0,25,26,27,28,29,19,20,21, + 0,0,19,20,21,0,0,64,41,42, 43,44,45,46,47,48,49,50,51,52, - 0,54,55,56,19,20,21,53,23,60, - 25,26,27,28,29,0,0,2,61,19, - 20,21,57,0,0,9,41,42,43,44, + 0,54,55,56,19,20,21,53,23,0, + 25,26,27,28,29,64,0,0,61,19, + 20,21,57,6,53,60,41,42,43,44, 45,46,47,48,49,50,51,52,0,1, 2,3,4,5,0,7,8,9,10,11, - 12,13,14,15,16,17,18,0,0,0, - 0,23,0,1,2,3,4,5,53,7, + 12,13,14,15,16,17,18,77,0,0, + 79,23,0,1,2,3,4,5,9,7, 8,9,10,11,12,13,14,15,16,17, 18,0,1,2,3,23,5,6,7,8, 9,10,11,12,13,14,15,16,17,18, - 0,57,78,65,0,1,2,3,4,5, + 0,57,0,65,0,1,2,3,4,5, 6,7,8,9,10,11,12,13,14,15, - 16,17,18,0,0,0,0,65,0,1, + 16,17,18,0,0,0,2,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,0,19,20,21,4,6,0,1, + 0,0,0,19,20,21,4,57,0,1, 2,3,58,5,6,7,8,9,10,11, - 12,13,14,15,16,17,18,53,0,79, + 12,13,14,15,16,17,18,53,0,0, 2,0,0,5,0,62,63,62,63,0, 1,2,3,65,5,6,7,8,9,10, 11,12,13,14,15,16,17,18,0,1, 2,3,60,5,6,7,8,9,10,11, 12,13,14,15,16,17,18,0,1,2, - 3,53,5,6,7,8,9,10,11,12, + 3,53,5,0,7,8,9,10,11,12, 13,14,15,16,17,18,0,1,2,3, 0,5,0,7,8,9,10,11,12,13, 14,15,16,17,18,0,1,2,3,0, 5,0,7,8,9,10,11,12,13,14, 15,16,17,18,0,1,2,3,0,5, 0,7,8,9,10,11,12,13,14,15, - 16,17,18,0,1,2,3,0,5,0, - 7,8,9,10,11,12,13,14,15,16, - 17,18,0,0,0,0,19,20,21,0, - 23,2,25,26,27,28,29,0,0,10, - 11,0,5,0,19,20,21,0,5,2, - 0,0,5,0,4,0,0,6,0,4, - 0,0,6,0,6,0,6,0,0,0, - 0,62,63,0,0,0,53,0,0,0, - 0,0,53,0,62,63,0,0,64,66, - 0,0,0,0,0,66,0,59,57,0, - 53,0,0,0,67,68,0,0,58,80, - 67,68,0,58,61,0,0,0,0,0, - 59,0,59,0,0,0,0,0,0,0, + 16,17,18,0,0,0,0,19,20,21, + 0,23,2,25,26,27,28,29,0,0, + 10,11,4,0,5,0,76,4,0,0, + 5,62,63,62,63,6,0,0,0,0, + 22,4,0,53,0,22,0,19,20,21, + 6,0,6,0,0,0,66,6,0,0, + 57,57,0,53,0,0,0,0,0,64, + 0,0,0,0,0,0,66,0,60,0, + 57,0,0,0,78,0,67,68,0,0, + 80,0,67,68,0,58,57,59,0,0, + 0,0,0,61,0,0,0,0,0,0, + 0,0,59,59,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; @@ -698,165 +686,164 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym public interface TermAction { public final static char termAction[] = {0, - 2391,4227,1,4225,1503,1,831,1,1,1, + 2336,4165,1,4164,1487,1,659,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,2400,1,2492,1,1,1,1,1, - 700,518,854,697,817,1594,650,835,800,1337, - 774,1,1,1,1,1,1,1,1,1, - 1,1,1,2391,1,1,1,2391,2398,8, - 2379,2379,2379,2379,2379,2379,2379,2379,2379,2379, - 2379,2379,2379,2379,2379,2379,2379,2379,2379,2379, - 2379,2379,2379,2379,2379,2379,2379,2379,2379,2379, - 2379,2379,2379,2379,2379,2379,2379,2379,2379,2379, - 2379,2379,2379,2379,2379,2379,2379,2379,2379,2379, - 2379,2379,1616,2379,2379,2379,1638,2379,2391,4227, - 1,4225,1503,1,831,1,1,1,1,1, + 1,1,2345,1,2437,1,1,1,1,1, + 1360,853,811,1433,1393,1619,1328,1352,1379,1370, + 1374,1,1,1,1,1,1,1,1,1, + 1,1,1,2336,1,1,1,2336,2343,8, + 2324,2324,2324,2324,2324,2324,2324,2324,2324,2324, + 2324,2324,2324,2324,2324,2324,2324,2324,2324,2324, + 2324,2324,2324,2324,2324,2324,2324,2324,2324,2324, + 2324,2324,2324,2324,2324,2324,2324,2324,2324,2324, + 2324,2324,2324,2324,2324,2324,2324,2324,2324,2324, + 2324,2324,1669,2324,2324,2324,1691,2324,2336,4165, + 1,4164,1487,1,659,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 2400,1,2492,1,1,1,1,1,700,518, - 854,697,817,1594,650,835,800,1337,774,1, + 2345,1,2437,1,1,1,1,1,1360,853, + 811,1433,1393,1619,1328,1352,1379,1370,1374,1, 1,1,1,1,1,1,1,1,1,1, - 1,2391,1,1,1,182,2398,2391,4227,1, - 4225,2401,1,831,1,1,1,1,1,1, - 1,1,1,1,1,1,1,1,1,2400, - 1,2492,1,1,1,1,1,700,518,854, - 697,817,1594,650,835,800,1337,774,1,1, + 1,2336,1,1,1,182,2343,2336,4165,1, + 4164,2346,1,659,1,1,1,1,1,1, + 1,1,1,1,1,1,1,1,1,2345, + 1,2437,1,1,1,1,1,1360,853,811, + 1433,1393,1619,1328,1352,1379,1370,1374,1,1, 1,1,1,1,1,1,1,1,1,1, - 1674,1,1,1,2391,4227,1,4225,2401,1, - 831,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,2400,1,2492,1, - 1,1,1,1,700,518,854,697,817,1594, - 650,835,800,1337,774,1,1,1,1,1, + 1713,1,1,1,2336,4165,1,4164,2346,1, + 659,1,1,1,1,1,1,1,1,1, + 1,1,1,1,1,1,2345,1,2437,1, + 1,1,1,1,1360,853,811,1433,1393,1619, + 1328,1352,1379,1370,1374,1,1,1,1,1, 1,1,1,1,1,1,1,71,1,1, - 1,2391,2402,2216,2403,11,2076,2370,2058,1869, - 2067,1180,898,412,2404,2405,2406,2407,1766,1486, - 2605,2606,2607,2391,2554,406,2555,2553,2608,2556, - 2552,2391,2402,2391,2403,2391,2402,828,2403,610, - 253,1253,2559,2564,2563,2561,2562,2560,2565,2566, - 2558,2567,2568,2569,60,704,740,495,2391,1, - 1,1,2401,1,185,4220,157,4220,2391,20, - 179,2382,2395,2382,2382,456,62,1,1,1, - 2400,1,2696,1,1,1,1,1,179,179, - 179,2382,179,43,179,179,179,179,179,1, + 1,2336,2347,2161,2348,11,2013,2315,1892,1790, + 1966,1595,1326,404,2349,2350,2351,2352,868,599, + 2550,2551,2552,2336,2499,359,2500,2498,2553,2501, + 2497,2336,2347,2336,2348,2336,2347,660,2348,551, + 253,1398,2504,2509,2508,2506,2507,2505,2510,2511, + 2503,2512,2513,2514,60,1498,438,344,2336,1, + 1,1,2346,1,1,2562,1939,1,2336,20, + 179,2327,2340,2327,2327,532,62,1,1,1, + 2345,1,2642,1,1,1,1,1,179,179, + 179,2327,179,43,179,179,179,179,179,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,2391,1,1,1,2401, - 1,2391,2382,1963,1939,1914,1710,654,1,2382, - 1,299,2401,2394,1,1,1,2400,1,2696, - 1,1,1,1,1,1963,1939,1914,1710,2391, - 2400,235,183,2397,1090,223,1,1,1,1, - 1,1,1,1,1,1,1,1,285,1, - 1,1,69,223,1284,2649,1067,1044,1021,998, - 975,929,952,906,875,719,61,1305,298,2391, - 4227,1,4225,2401,1,831,1,1,1,1, - 1,1,1,1,1,1,1,1,223,2396, - 229,2400,223,2492,184,4222,232,4222,67,700, - 518,854,697,817,1594,650,835,800,1337,774, - 2391,4227,1,4225,2401,1,831,1,1,1, - 1,1,1,1,1,1,1,1,1,520, - 206,4224,2400,4224,2492,1963,1939,1914,1710,2391, - 700,518,854,697,817,1594,650,835,800,1337, - 774,2391,4227,1,4225,2401,1,831,1,1, + 1,157,1,1,1,2336,1,1,1,2346, + 1,2336,2327,1926,1272,855,709,183,1,2327, + 286,300,2346,2339,1,1,1,2345,1,2642, + 1,1,1,1,1,1926,1272,855,709,2336, + 2345,235,2336,2342,1084,223,1,1,1,1, + 1,1,1,1,1,1,1,1,2336,1, + 1,1,555,223,1251,2336,1061,1038,1015,992, + 969,923,946,900,877,832,61,1389,299,2336, + 4165,1,4164,2346,1,659,1,1,1,1, + 1,1,1,1,1,1,1,1,223,2341, + 229,2345,223,2437,185,4155,232,4155,2336,1360, + 853,811,1433,1393,1619,1328,1352,1379,1370,1374, + 2336,4165,1,4164,2346,1,659,1,1,1, + 1,1,1,1,1,1,1,1,1,2336, + 184,4157,2345,4157,2437,1926,1272,855,709,73, + 1360,853,811,1433,1393,1619,1328,1352,1379,1370, + 1374,2336,4165,1,4164,2346,1,659,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,2617,388,2400,566,2492,2391,2402,2391,2403, - 73,700,518,854,697,817,1594,650,835,800, - 1337,774,2391,4227,1,4225,2401,1,831,1, + 2336,206,4162,2345,4162,2437,2336,2347,2336,2348, + 2174,1360,853,811,1433,1393,1619,1328,1352,1379, + 1370,1374,2336,4165,1,4164,2346,1,659,1, 1,1,1,1,1,1,1,1,1,1, - 1,253,2617,388,2400,2391,2492,208,2402,63, - 2403,1259,700,518,854,697,817,1594,650,835, - 800,1337,774,2391,4227,1,4225,2401,1,831, + 1,253,2562,1939,2345,2336,2437,2261,2336,63, + 342,2251,1360,853,811,1433,1393,1619,1328,1352, + 1379,1370,1374,2336,4165,1,4164,2346,1,659, 1,1,1,1,1,1,1,1,1,1, - 1,1,52,207,584,2400,584,2492,2391,2048, - 2017,340,2307,700,518,854,697,817,1594,650, - 835,800,1337,774,2391,4227,1,4225,2401,1, - 831,1,1,1,1,1,1,1,1,1, - 1,1,1,1569,702,54,2400,2391,2492,2217, - 2391,64,2048,2017,700,518,854,697,817,1594, - 650,835,800,1337,774,2391,4227,1,4225,2401, - 1,831,1,1,1,1,1,1,1,1, - 1,1,1,1,53,2391,2391,2400,716,2492, - 342,2048,2017,2391,68,700,518,854,697,817, - 1594,650,835,800,1337,774,2391,4227,1,4225, - 2401,1,831,1,1,1,1,1,1,1, - 1,1,1,1,1,1569,702,2391,2400,2391, - 2492,1516,1250,2391,70,2007,700,518,854,697, - 817,1594,650,835,800,1337,774,2391,4227,1, - 4225,2401,1,831,1,1,1,1,1,1, - 1,1,1,1,1,1,2369,2391,1,2400, - 566,2492,1,1461,831,2391,2373,700,518,854, - 697,817,1594,650,835,800,1337,774,2391,4227, - 1,4225,2401,1,831,1,1,1,1,1, - 1,1,1,1,1,1,1,1,2617,388, - 2400,520,2492,2391,1,2391,1,191,700,518, - 854,697,817,1594,650,835,800,1337,774,249, - 2398,2391,1,1,1,2401,1,2587,1,1, - 1,1,1,2391,2391,1677,2310,1,1,1, - 1,2397,220,2400,1,1,1,1,1,1, - 1,1,1,1,1,1,1211,1,1,1, - 65,191,2391,1,55,1,190,1,2376,636, - 1,2385,1462,130,2397,262,2617,1462,1853,1, - 1,1,1,1,253,1,2587,1,1,1, - 1,1,2605,2606,2607,613,2554,2396,2555,2553, - 2608,2556,2552,1,1,1,1,1,1,1, - 1,1,1,1,1,2391,1,1,1,2401, - 190,2391,1,613,1,191,1926,1975,613,256, - 2396,2649,131,2391,1,2391,1544,2400,2397,2397, - 1,1,1,2649,1,2587,1,1,1,1, - 1,2605,2606,2607,2391,2554,89,2555,2553,2608, - 2556,2552,1,1,1,1,1,1,1,1, - 1,1,1,1,2391,1,1,1,2391,191, - 1,404,388,2403,49,30,379,613,222,2113, - 814,132,1689,236,2396,2396,2391,223,229,2605, - 2606,2607,1547,2554,233,2555,2553,2608,2556,2552, - 2605,2606,2607,1113,2554,223,2555,2553,2608,2556, - 2552,2559,2564,2563,2561,2562,2560,2565,2566,2558, - 2567,2568,2569,1232,704,740,495,2391,2402,1, - 2403,613,2420,117,268,2617,1462,211,2391,253, - 223,2104,2093,250,223,2391,2605,2606,2607,2401, - 2554,117,2555,2553,2608,2556,2552,2605,2606,2607, - 2391,2629,1,1,1,129,2391,2400,2559,2564, - 2563,2561,2562,2560,2565,2566,2558,2567,2568,2569, - 248,704,740,495,2605,2606,2607,613,2554,117, - 2555,2553,2608,2556,2552,270,66,1432,1136,2605, - 2606,2607,1864,2391,72,636,2559,2564,2563,2561, - 2562,2560,2565,2566,2558,2567,2568,2569,1,2402, - 2216,2403,2395,1657,207,2058,1869,2067,1180,898, - 412,2404,2405,2406,2407,1766,1486,2391,2391,2391, - 2391,747,2391,2402,2216,2403,2395,1793,613,2058, - 1869,2067,1180,898,412,2404,2405,2406,2407,1766, - 1486,2391,2402,2216,2403,1188,2076,4219,2058,1869, - 2067,1180,898,412,2404,2405,2406,2407,1766,1486, - 113,3367,456,2394,1,2402,2216,2403,29,2076, - 4219,2058,1869,2067,1180,898,412,2404,2405,2406, - 2407,1766,1486,59,271,58,2391,2394,2391,2402, - 2216,2403,2395,2076,251,2058,1869,2067,1180,898, - 412,2404,2405,2406,2407,1766,1486,2391,2391,2391, - 2391,42,1,2605,2606,2607,91,1562,2391,2402, - 2216,2403,29,2076,1562,2058,1869,2067,1180,898, - 412,2404,2405,2406,2407,1766,1486,613,265,2388, - 1544,2391,2391,1,2391,1926,1975,1926,1975,1, - 2402,2216,2403,2394,2076,4219,2058,1869,2067,1180, - 898,412,2404,2405,2406,2407,1766,1486,1,2402, - 2216,2403,91,2076,4219,2058,1869,2067,1180,898, - 412,2404,2405,2406,2407,1766,1486,2391,2402,2216, - 2403,613,2076,4219,2058,1869,2067,1180,898,412, - 2404,2405,2406,2407,1766,1486,2391,2402,2216,2403, - 2391,2076,2391,2058,1869,2067,1180,898,412,2404, - 2405,2406,2407,1766,1486,1,2402,2216,2403,2391, - 2076,2391,2058,1869,2067,1180,898,412,2404,2405, - 2406,2407,1766,1486,2391,2402,2225,2403,2391,2076, - 2391,2058,1869,2067,1180,898,412,2404,2405,2406, - 2407,1766,1486,2391,2402,2226,2403,133,2076,57, - 2058,1869,2067,1180,898,412,2404,2405,2406,2407, - 1766,1486,56,291,1,252,2605,2606,2607,32, - 2554,1260,2555,2553,2608,2556,2552,51,201,2417, - 2418,30,2113,50,2605,2606,2607,268,2113,1544, - 2391,2391,253,2391,2399,284,189,1562,189,1427, - 189,1,185,1,184,2391,206,2391,2391,2391, - 2391,1926,1975,2391,2391,2391,1315,2391,2391,2391, - 2391,2391,2147,2391,1926,1975,2391,2391,2648,1587, - 2391,2391,2391,2391,2391,1340,2391,1263,589,2391, - 613,2391,2391,2391,2104,2093,2391,2391,2398,448, - 2104,2093,2391,1427,679,2391,2391,2391,2391,2391, - 2403,2391,2402 + 1,1,52,208,2347,2345,2348,2437,2336,1220, + 672,64,2336,1360,853,811,1433,1393,1619,1328, + 1352,1379,1370,1374,2336,4165,1,4164,2346,1, + 659,1,1,1,1,1,1,1,1,1, + 1,1,1,1338,579,54,2345,2336,2437,2269, + 2336,2574,1220,672,1360,853,811,1433,1393,1619, + 1328,1352,1379,1370,1374,2336,4165,1,4164,2346, + 1,659,1,1,1,1,1,1,1,1, + 1,1,1,1,53,1338,579,2345,2336,2437, + 69,1220,672,2336,1502,1360,853,811,1433,1393, + 1619,1328,1352,1379,1370,1374,2336,4165,1,4164, + 2346,1,659,1,1,1,1,1,1,1, + 1,1,1,1,1,1,207,373,2345,373, + 2437,659,2336,2336,2273,67,1360,853,811,1433, + 1393,1619,1328,1352,1379,1370,1374,2336,4165,1, + 4164,2346,1,659,1,1,1,1,1,1, + 1,1,1,1,1,1,2314,685,2336,2345, + 2336,2437,1,1178,2336,1301,2318,1360,853,811, + 1433,1393,1619,1328,1352,1379,1370,1374,2336,4165, + 1,4164,2346,1,659,1,1,1,1,1, + 1,1,1,1,1,1,1,1,2562,1939, + 2345,460,2437,2336,1,55,1,191,1360,853, + 811,1433,1393,1619,1328,1352,1379,1370,1374,2336, + 2343,2336,1,1,1,2346,1,2532,1,1, + 1,1,1,2336,2336,2285,2336,1,2550,2551, + 2552,2342,220,2345,1,1,1,1,1,1, + 1,1,1,1,1,1,1230,1,1,1, + 65,191,2336,1,1844,1,190,1943,1989,1655, + 1,2330,1453,130,2342,262,2562,1453,1876,1, + 1,1,1,1,253,1,2532,1,1,1, + 1,1,2550,2551,2552,634,2499,2341,2500,2498, + 2553,2501,2497,1,1,1,1,1,1,1, + 1,1,1,1,1,2336,1,1,1,2346, + 190,2336,1,634,1,191,2336,2336,634,2336, + 2341,2344,131,222,1,1371,1986,2345,2342,2336, + 1,1,1,2594,1,2532,1,1,1,1, + 1,2550,2551,2552,2336,2499,2336,2500,2498,2553, + 2501,2497,1,1,1,1,1,1,1,1, + 1,1,1,1,2336,1,1,1,2336,191, + 1,520,1939,2348,49,2343,634,634,1197,2092, + 265,132,1986,236,2341,1,2336,223,229,2550, + 2551,2552,1530,2499,233,2500,2498,2553,2501,2497, + 2550,2551,2552,1,2499,223,2500,2498,2553,2501, + 2497,2504,2509,2508,2506,2507,2505,2510,2511,2503, + 2512,2513,2514,2336,1498,438,344,2336,2347,1707, + 2348,1,2321,634,268,2562,1453,211,249,253, + 223,2073,2060,248,223,2336,2550,2551,2552,2342, + 2499,271,2500,2498,2553,2501,2497,1,1,1, + 70,113,2550,2551,2552,129,2336,2594,2504,2509, + 2508,2506,2507,2505,2510,2511,2503,2512,2513,2514, + 250,1498,438,344,2550,2551,2552,634,2499,2336, + 2500,2498,2553,2501,2497,2594,2336,42,1176,1, + 1,1,1833,4148,634,2341,2504,2509,2508,2506, + 2507,2505,2510,2511,2503,2512,2513,2514,1,2347, + 2161,2348,2340,1411,256,1892,1790,1966,1595,1326, + 404,2349,2350,2351,2352,868,599,685,2336,66, + 2333,742,2336,2347,2161,2348,2340,1814,1655,1892, + 1790,1966,1595,1326,404,2349,2350,2351,2352,868, + 599,2336,2347,2161,2348,1130,2013,4148,1892,1790, + 1966,1595,1326,404,2349,2350,2351,2352,868,599, + 89,701,2336,2339,1,2347,2161,2348,29,2013, + 4148,1892,1790,1966,1595,1326,404,2349,2350,2351, + 2352,868,599,59,270,58,1694,2339,2336,2347, + 2161,2348,2340,2013,251,1892,1790,1966,1595,1326, + 404,2349,2350,2351,2352,868,599,2336,2336,2336, + 2336,2336,1,2550,2551,2552,91,1153,2336,2347, + 2161,2348,29,2013,4148,1892,1790,1966,1595,1326, + 404,2349,2350,2351,2352,868,599,634,268,2336, + 1986,2336,2336,253,2336,1943,1989,1943,1989,1, + 2347,2161,2348,2339,2013,4148,1892,1790,1966,1595, + 1326,404,2349,2350,2351,2352,868,599,2336,2347, + 2161,2348,91,2013,4148,1892,1790,1966,1595,1326, + 404,2349,2350,2351,2352,868,599,1,2347,2161, + 2348,634,2013,2336,1892,1790,1966,1595,1326,404, + 2349,2350,2351,2352,868,599,2336,2347,2162,2348, + 68,2013,2336,1892,1790,1966,1595,1326,404,2349, + 2350,2351,2352,868,599,2336,2347,2161,2348,57, + 2013,56,1892,1790,1966,1595,1326,404,2349,2350, + 2351,2352,868,599,2336,2347,2170,2348,133,2013, + 292,1892,1790,1966,1595,1326,404,2349,2350,2351, + 2352,868,599,30,207,1,72,2550,2551,2552, + 32,2499,420,2500,2498,2553,2501,2497,1,51, + 2362,2363,117,2336,2092,50,460,2346,252,2336, + 2092,1943,1989,1943,1989,4148,2336,285,201,30, + 117,1439,2336,1305,189,2345,189,2550,2551,2552, + 185,189,184,1,1,2336,1633,206,2336,2336, + 2365,3437,2336,1958,2336,2336,2336,2336,2336,2593, + 2336,2336,2336,2336,2336,2336,723,2336,117,2336, + 1635,2336,2336,2336,532,2336,2073,2060,2336,2336, + 597,2336,2073,2060,2336,1439,499,1284,2336,2336, + 2336,2336,2336,611,2336,2336,2336,2336,2336,2336, + 2336,2336,2348,2347 }; }; public final static char termAction[] = TermAction.termAction; @@ -864,36 +851,36 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym public interface Asb { public final static char asb[] = {0, - 509,1,315,391,509,29,478,490,27,490, - 27,27,490,27,490,317,427,393,382,540, - 393,287,27,282,282,27,282,393,427,506, - 427,157,158,255,317,29,210,473,472,427, - 53,288,29,127,29,214,427,498,393,255, - 84,257,317,393,35,393,287,410,211,211, - 282,540,540,397,540,540,211,287,164,412, - 164,391,303,29,127,214,214,498,498,257, - 107,104,340,176,303,412,412,412,412,412, - 88,412,412,412,170,187,192,190,198,194, - 201,200,203,202,204,506,501,317,505,3, - 154,29,412,53,472,285,211,412,211,301, - 412,344,412,412,288,397,164,397,393,207, - 346,127,154,239,127,214,216,429,216,498, - 340,505,340,104,87,84,412,412,412,412, - 412,412,412,412,412,412,412,506,506,246, - 303,303,282,282,220,412,412,412,412,412, - 412,412,412,412,412,412,412,412,412,412, - 412,412,412,412,412,503,504,252,427,257, - 154,33,410,211,506,540,506,506,287,397, - 412,127,241,216,154,412,282,340,498,395, - 412,412,104,88,35,427,252,506,506,506, - 104,190,190,187,187,194,194,192,192,192, - 192,200,198,202,201,164,203,255,506,542, - 501,33,211,410,397,412,397,397,154,210, - 412,209,154,498,104,104,33,246,542,439, - 29,412,257,506,216,167,220,211,506,286, - 241,412,33,506,154,31,476,282,412,166, - 506,220,211,397,216,434,35,104,282,412, - 397,506,154,104,397 + 498,1,427,281,498,429,496,310,322,494, + 322,494,494,322,494,322,283,468,429,418, + 529,496,283,201,133,132,377,48,468,376, + 253,494,241,241,494,241,429,468,338,468, + 214,283,429,79,214,26,429,254,496,102, + 496,205,468,330,429,216,470,283,427,141, + 99,306,167,269,453,453,453,453,453,83, + 453,453,453,161,178,183,181,189,185,192, + 191,194,193,195,216,129,496,453,48,376, + 253,451,202,202,241,529,529,438,529,529, + 202,253,139,453,139,269,496,102,205,205, + 330,330,338,333,337,429,306,99,82,79, + 453,453,453,453,453,453,453,453,453,453, + 453,338,338,531,269,269,241,241,3,453, + 453,453,453,453,453,453,453,453,453,453, + 453,453,453,453,453,453,453,453,453,337, + 129,24,251,202,453,202,267,453,341,453, + 453,254,438,139,438,198,382,102,129,244, + 102,205,207,433,207,330,306,335,336,211, + 468,216,453,453,99,83,26,468,211,338, + 338,338,99,181,181,178,178,185,185,183, + 183,183,183,191,189,193,192,139,194,431, + 24,451,202,338,529,338,338,253,438,453, + 102,246,207,129,453,241,306,330,214,338, + 537,333,99,99,531,537,343,496,453,207, + 45,202,451,438,453,438,438,129,201,453, + 200,129,330,216,338,129,22,380,241,453, + 44,3,202,338,252,246,453,338,161,26, + 99,241,453,338,3,202,438,99,438,338, + 438 }; }; public final static char asb[] = Asb.asb; @@ -901,63 +888,63 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym public interface Asr { public final static byte asr[] = {0, - 73,0,25,41,19,42,54,26,43,27, - 44,45,28,20,46,47,23,55,29,56, - 48,49,21,50,51,52,1,3,6,0, - 4,58,53,66,2,13,14,15,16,1, - 3,10,11,9,5,7,8,17,18,12, - 6,0,25,41,19,42,54,26,43,27, - 44,45,28,20,46,47,23,55,29,56, - 48,49,21,50,51,52,1,3,4,61, - 57,22,0,19,20,21,23,10,11,9, - 5,7,8,17,18,12,2,1,3,13, - 14,15,16,65,4,0,19,20,21,10, - 11,9,5,7,8,17,18,12,2,1, - 3,13,14,15,16,0,25,41,19,42, - 54,26,43,27,44,45,28,20,46,47, - 23,55,29,56,48,49,21,50,51,52, - 1,3,24,4,58,0,2,4,61,57, - 60,22,53,59,0,61,53,66,0,53, - 2,66,80,10,11,61,83,84,85,86, - 87,89,88,90,91,92,5,67,68,7, - 8,63,62,69,70,71,72,74,75,9, - 76,77,78,58,81,82,65,60,59,57, - 22,4,0,1,3,4,58,57,0,4, - 60,12,13,14,15,16,1,3,2,10, - 11,9,5,7,8,17,18,0,22,4, - 5,1,2,59,0,4,60,5,2,53, - 0,5,2,53,60,4,25,41,19,42, - 54,26,43,27,44,45,28,20,46,47, - 23,55,29,56,48,49,21,50,51,52, - 64,1,3,0,73,79,58,32,34,6, + 73,0,4,60,12,13,14,15,16,1, + 3,2,10,11,9,5,7,8,17,18, + 0,4,58,53,66,2,13,14,15,16, + 1,3,10,11,9,5,7,8,17,18, + 12,6,0,61,53,66,0,25,41,19, + 42,54,26,43,27,44,45,28,20,46, + 47,23,55,29,56,48,49,21,50,51, + 52,1,3,4,61,57,22,0,19,20, + 21,23,10,11,9,5,7,8,17,18, + 12,2,1,3,13,14,15,16,65,4, + 0,25,41,19,42,54,26,43,27,44, + 45,28,20,46,47,23,55,29,56,48, + 49,21,50,51,52,1,3,24,4,58, + 0,2,4,61,57,60,22,53,59,0, + 19,20,21,10,11,9,5,7,8,17, + 18,12,2,1,3,13,14,15,16,0, + 53,2,66,80,10,11,61,83,84,85, + 86,87,89,88,90,91,92,5,67,68, + 7,8,63,62,69,70,71,72,74,75, + 9,76,77,78,58,81,82,65,60,59, + 57,22,4,0,1,3,4,58,57,0, + 5,2,53,60,4,25,41,19,42,54, + 26,43,27,44,45,28,20,46,47,23, + 55,29,56,48,49,21,50,51,52,64, + 1,3,0,22,4,5,1,2,59,0, + 73,79,58,32,34,6,38,40,35,30, + 36,37,33,31,39,24,4,22,12,13, + 14,15,16,10,11,9,7,8,17,18, + 5,2,1,3,54,55,56,49,41,46, + 44,45,43,42,47,48,50,51,52,29, + 26,23,25,28,27,19,20,21,0,49, + 41,46,44,45,43,42,47,48,50,51, + 52,59,22,29,26,23,25,28,27,19, + 20,21,5,1,2,53,57,60,4,0, + 30,0,9,5,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,60,58,6,4,57,22,61, + 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,53,60,25,19,26, + 27,28,20,23,29,21,22,4,5,2, + 1,0,4,57,58,61,0,32,34,6, 38,40,35,30,36,37,33,31,39,24, - 4,22,13,14,15,16,10,11,9,7, - 8,17,18,12,5,2,1,3,54,55, - 56,49,41,46,44,45,43,42,47,48, - 50,51,52,29,26,23,25,28,27,19, - 20,21,0,30,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,53, - 60,25,19,26,27,28,20,23,29,21, - 22,4,5,2,1,0,32,34,6,38, - 40,35,30,36,37,33,31,39,24,22, - 4,10,11,9,7,8,17,18,12,2, - 1,3,13,14,15,16,5,0,4,57, - 58,61,0,4,57,58,22,0,9,5, - 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,60, - 58,6,4,57,22,61,0,49,41,46, - 44,45,43,42,47,48,50,51,52,59, - 22,29,26,23,25,28,27,19,20,21, - 5,1,2,53,57,60,4,0,73,25, + 22,4,2,13,14,15,16,1,3,10, + 11,9,7,8,17,18,12,5,0,25, 41,19,42,54,26,43,27,44,45,28, 20,46,47,23,55,29,56,48,49,21, - 50,51,52,1,3,5,22,4,24,2, - 0,5,25,41,19,42,54,26,43,27, - 44,45,28,20,46,47,23,55,29,56, - 48,49,21,50,51,52,1,3,64,0 + 50,51,52,1,3,6,0,73,25,41, + 19,42,54,26,43,27,44,45,28,20, + 46,47,23,55,29,56,48,49,21,50, + 51,52,1,3,5,22,4,24,2,0, + 4,60,5,2,53,0,5,25,41,19, + 42,54,26,43,27,44,45,28,20,46, + 47,23,55,29,56,48,49,21,50,51, + 52,1,3,64,0 }; }; public final static byte asr[] = Asr.asr; @@ -965,36 +952,36 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym public interface Nasb { public final static char nasb[] = {0, - 134,25,15,85,149,13,119,120,31,120, - 55,55,120,54,120,114,146,76,25,25, - 74,42,7,7,7,7,7,9,25,125, - 146,65,65,124,108,13,86,25,25,146, - 25,88,63,108,25,108,25,61,140,124, - 45,100,80,76,49,138,96,84,86,86, - 7,25,25,127,25,25,86,42,25,40, - 25,85,1,25,153,108,7,61,108,157, - 39,47,94,25,161,40,40,40,40,40, - 46,40,40,40,25,25,25,25,25,25, - 25,25,25,25,25,125,104,18,25,26, - 108,25,40,25,25,25,86,40,86,165, - 162,25,162,162,88,127,25,127,76,25, - 25,108,43,85,110,7,69,25,25,108, - 94,125,94,47,46,35,40,40,40,40, - 40,40,40,40,40,40,40,125,125,106, - 161,161,33,33,71,162,40,40,40,40, - 40,40,40,40,40,40,40,40,40,40, - 40,40,40,162,40,65,65,103,146,100, - 43,108,167,86,125,25,125,125,96,127, - 40,153,76,69,43,40,7,94,35,25, - 40,40,47,46,40,146,122,125,125,125, - 47,25,25,25,25,25,25,25,25,25, - 25,25,25,25,25,25,25,124,125,144, - 57,38,86,167,127,162,127,127,43,86, - 40,25,43,35,47,47,108,59,144,25, - 25,40,100,125,69,52,167,86,125,25, - 76,40,38,125,43,37,25,7,40,67, - 125,167,86,127,69,132,49,47,7,40, - 127,125,43,47,127 + 150,25,32,15,159,110,45,121,122,13, + 122,108,108,122,107,122,116,165,112,25, + 25,45,105,33,59,59,25,25,165,25, + 51,7,7,7,7,7,9,25,157,165, + 156,75,112,63,156,54,94,69,67,105, + 25,105,25,30,96,89,141,18,32,42, + 65,79,25,168,43,43,43,43,43,64, + 43,43,43,25,25,25,25,25,25,25, + 25,25,25,25,133,105,25,43,25,25, + 85,81,33,33,7,25,25,128,25,25, + 33,51,25,43,25,1,25,137,105,7, + 30,105,157,101,25,112,79,65,64,38, + 43,43,43,43,43,43,43,43,43,43, + 43,157,157,103,168,168,57,57,35,82, + 43,43,43,43,43,43,43,43,43,43, + 43,43,43,43,43,43,43,82,43,157, + 52,105,25,33,43,33,172,82,25,82, + 82,69,128,25,128,25,25,105,52,32, + 146,7,92,25,25,105,79,59,59,100, + 165,89,43,43,65,64,124,165,154,157, + 157,157,65,25,25,25,25,25,25,25, + 25,25,25,25,25,25,25,25,25,25, + 41,174,33,157,25,157,157,85,128,43, + 137,112,92,52,43,7,79,38,156,157, + 163,26,65,65,28,163,125,125,43,92, + 49,33,174,128,82,128,128,52,33,43, + 25,52,38,89,157,52,40,25,7,43, + 47,174,33,157,25,112,43,157,61,54, + 65,7,43,157,174,33,128,65,128,157, + 128 }; }; public final static char nasb[] = Nasb.nasb; @@ -1002,23 +989,24 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym public interface Nasr { public final static char nasr[] = {0, - 83,81,80,74,79,78,1,0,37,39, - 36,0,105,0,37,2,101,83,82,81, - 80,74,79,78,0,2,24,47,28,0, - 108,0,90,0,25,0,89,67,2,6, - 0,2,41,0,2,6,40,0,6,67, - 0,117,0,111,86,0,37,43,59,58, - 36,0,109,0,46,0,119,0,68,0, - 2,107,0,45,39,43,37,2,0,24, - 2,121,0,27,2,18,0,2,24,1, - 29,93,0,75,0,29,1,69,41,2, - 24,0,23,37,43,58,59,2,0,2, - 55,87,0,74,70,71,72,73,62,48, - 0,58,59,2,23,0,1,29,2,30, - 0,115,0,120,24,2,0,39,45,37, - 43,36,0,2,24,36,53,0,24,2, - 103,0,96,2,55,0,112,2,24,0, - 55,2,27,0,24,47,2,61,0 + 84,82,81,74,80,79,1,0,37,39, + 36,0,109,0,37,2,100,84,83,82, + 81,74,80,79,0,37,42,61,60,36, + 0,2,17,0,2,108,0,25,0,102, + 55,2,6,0,106,0,121,0,119,0, + 2,45,0,6,55,0,90,0,46,0, + 117,0,2,6,40,0,110,0,2,24, + 1,29,92,0,24,2,123,0,75,0, + 17,2,27,0,29,1,68,45,2,24, + 0,78,0,39,44,37,42,36,0,23, + 37,42,60,61,2,0,112,87,0,39, + 44,42,37,2,0,74,69,70,71,72, + 64,48,0,6,55,53,0,1,29,2, + 30,0,113,2,24,0,95,2,57,0, + 2,24,47,28,0,2,57,88,0,122, + 2,24,0,60,61,2,23,0,2,24, + 103,0,2,24,36,54,0,2,57,27, + 0,24,47,2,63,0 }; }; public final static char nasr[] = Nasr.nasr; @@ -1044,18 +1032,18 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym public interface NonterminalIndex { public final static char nonterminalIndex[] = {0, 99,0,0,0,0,101,105,106,107,108, - 109,110,111,112,113,114,115,98,116,0, + 109,110,111,112,113,114,98,115,116,0, 0,117,96,126,134,0,100,122,118,121, 0,0,0,0,0,0,156,0,159,95, - 97,153,155,0,157,158,125,133,0,0, - 0,144,154,120,148,167,170,171,172,0, - 0,136,143,0,160,166,0,0,124,137, - 138,139,140,145,165,169,103,128,129,130, - 131,132,135,141,142,0,147,152,173,102, - 104,119,123,127,0,146,150,0,0,151, - 161,164,178,0,180,0,0,0,0,149, - 0,162,163,168,0,174,175,0,176,177, - 179,0,0 + 153,155,0,157,97,158,125,133,0,0, + 0,144,104,154,0,120,148,167,170,171, + 172,0,0,136,0,160,166,124,137,138, + 139,140,143,145,165,169,103,0,128,129, + 130,131,132,135,141,142,0,147,152,102, + 119,123,127,0,146,150,0,0,151,161, + 164,174,179,0,0,181,0,0,0,0, + 149,0,162,163,168,173,0,175,176,0, + 177,178,180,0,0 }; }; public final static char nonterminalIndex[] = NonterminalIndex.nonterminalIndex; @@ -1063,10 +1051,10 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym public interface ScopePrefix { public final static char scopePrefix[] = { - 82,113,166,92,35,41,121,12,136,21, - 51,69,28,47,103,145,162,181,185,149, - 1,1,32,56,79,189,6,107,156,127, - 156,99,59,59,59 + 82,113,92,35,41,121,12,136,21,51, + 69,28,47,103,145,162,169,173,149,1, + 1,32,56,79,177,6,107,156,156,127, + 99,59,59,59 }; }; public final static char scopePrefix[] = ScopePrefix.scopePrefix; @@ -1074,10 +1062,10 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym public interface ScopeSuffix { public final static char scopeSuffix[] = { - 90,90,90,90,4,4,90,18,142,26, - 4,26,26,4,101,90,26,26,4,153, - 4,4,26,4,26,26,9,110,159,130, - 174,101,66,61,74 + 90,90,90,4,4,90,18,142,26,4, + 26,26,4,101,90,26,26,4,153,4, + 4,26,4,26,26,9,110,159,166,130, + 101,66,61,74 }; }; public final static char scopeSuffix[] = ScopeSuffix.scopeSuffix; @@ -1085,10 +1073,10 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym public interface ScopeLhs { public final static char scopeLhs[] = { - 72,70,6,72,46,46,70,63,33,60, - 46,39,60,46,87,28,7,6,6,20, - 119,118,58,46,37,4,89,87,8,34, - 6,87,39,45,39 + 71,69,71,46,46,69,53,33,62,46, + 39,62,46,88,28,7,6,6,20,121, + 120,60,46,37,4,102,88,8,6,34, + 88,39,44,39 }; }; public final static char scopeLhs[] = ScopeLhs.scopeLhs; @@ -1096,10 +1084,10 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym public interface ScopeLa { public final static byte scopeLa[] = { - 58,58,58,58,65,65,58,58,79,60, - 65,60,60,65,22,58,60,60,65,59, - 65,65,60,65,60,60,61,1,60,30, - 60,22,2,2,2 + 58,58,58,65,65,58,58,79,60,65, + 60,60,65,22,58,60,60,65,59,65, + 65,60,65,60,60,61,1,60,60,30, + 22,2,2,2 }; }; public final static byte scopeLa[] = ScopeLa.scopeLa; @@ -1107,10 +1095,10 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym public interface ScopeStateSet { public final static byte scopeStateSet[] = { - 112,112,9,112,87,87,112,65,72,91, - 87,98,91,87,5,71,9,9,9,39, - 1,3,91,87,98,9,67,5,12,72, - 9,5,98,100,98 + 119,119,119,94,94,119,25,10,98,94, + 105,98,94,5,9,33,33,33,63,1, + 3,98,94,105,33,91,5,36,33,10, + 5,105,107,105 }; }; public final static byte scopeStateSet[] = ScopeStateSet.scopeStateSet; @@ -1118,26 +1106,24 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym public interface ScopeRhs { public final static char scopeRhs[] = {0, - 147,53,0,95,0,209,95,0,31,143, - 0,161,184,95,6,160,0,97,0,0, - 158,95,2,151,0,96,0,158,95,2, - 0,169,2,0,115,23,195,95,53,0, - 115,195,95,23,53,0,115,23,53,0, - 115,195,95,53,0,115,53,0,130,0, - 2,0,162,96,0,2,96,0,158,95, + 149,53,0,95,0,211,95,0,31,143, + 0,171,209,95,6,148,0,97,0,0, + 159,95,2,153,0,96,0,159,95,2, + 0,169,2,0,115,23,194,95,53,0, + 115,194,95,23,53,0,115,23,53,0, + 115,194,95,53,0,115,53,0,130,0, + 2,0,162,96,0,2,96,0,159,95, 2,130,0,2,0,160,96,0,145,2, - 0,161,192,95,6,94,204,54,0,97, - 0,161,192,95,6,204,54,0,148,0, - 98,0,203,95,148,0,95,148,0,149, - 98,0,188,95,6,202,94,201,167,0, - 188,95,6,201,167,0,123,35,0,77, + 0,171,191,95,6,94,205,54,0,97, + 0,171,191,95,6,205,54,0,150,0, + 98,0,204,95,150,0,95,150,0,149, + 98,0,187,95,6,203,94,202,167,0, + 187,95,6,202,167,0,123,35,0,77, 2,100,96,98,0,123,116,120,2,38, - 0,53,121,0,186,95,6,0,120,82, + 0,53,121,0,185,95,6,0,120,82, 112,0,29,117,0,170,2,0,96,106, - 0,170,2,12,0,161,184,95,6,116, - 170,2,0,96,3,0,104,0,97,0, - 200,2,99,0,120,53,99,0,120,2, - 0 + 0,170,2,12,0,96,104,0,201,2, + 99,0,120,53,99,0,120,2,0 }; }; public final static char scopeRhs[] = ScopeRhs.scopeRhs; @@ -1145,18 +1131,19 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym public interface ScopeState { public final static char scopeState[] = {0, - 927,0,681,0,2230,1527,2178,0,1180,898, - 412,2122,1793,340,520,456,636,566,1963,1939, - 1914,1710,1569,702,2048,2017,1975,1926,2113,2104, - 2093,2076,2067,1657,2058,1869,1766,1486,1315,1284, - 1263,1232,1211,1188,1157,1136,1113,1090,1067,1044, - 1021,998,975,952,929,906,875,719,772,539, - 747,313,854,613,679,654,589,497,474,0, - 400,1850,1828,1806,1784,1747,1722,1674,1524,1638, - 1616,1448,1594,1384,1342,0,1023,1019,924,847, - 2231,765,1544,1462,1452,1399,0,331,372,1864, - 765,1694,1462,1641,1399,2002,1853,1956,1309,388, - 0,770,313,1535,372,0 + 530,0,550,0,2083,1867,1681,0,1682,1873, + 1851,1829,1807,1771,1749,1713,1507,1691,1669,1435, + 1619,1375,1334,0,611,499,1590,1572,476,1573, + 555,0,1595,1326,404,1573,1814,342,685,532, + 1655,460,1926,1272,855,709,1338,579,1220,672, + 1989,1943,2092,2073,2060,2013,1966,1411,1892,1790, + 868,599,1305,611,1284,1251,1230,1197,1176,1153, + 1130,1107,788,1084,1061,1038,1015,992,969,946, + 923,900,877,832,765,315,811,742,555,634, + 499,476,0,925,782,665,609,2087,391,1986, + 1453,2029,1386,0,332,375,1635,391,1716,1453, + 1545,1386,1964,1442,1876,1939,1518,0,315,657, + 1543,375,0 }; }; public final static char scopeState[] = ScopeState.scopeState; @@ -1164,36 +1151,36 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym public interface InSymb { public final static char inSymb[] = {0, - 0,199,95,117,213,194,171,172,167,173, - 56,55,174,54,175,176,95,2,1,130, - 95,6,201,179,179,204,179,146,129,145, - 95,130,136,2,206,194,187,178,132,95, - 138,95,94,6,94,6,129,5,146,2, - 53,95,95,57,61,146,186,39,31,33, - 37,36,30,35,40,38,122,6,34,32, - 94,117,95,202,95,6,95,5,129,95, - 23,115,95,100,2,12,18,17,8,7, - 5,9,11,10,99,102,104,103,106,105, - 108,107,110,109,112,158,117,95,159,214, - 6,160,5,138,132,4,120,95,94,2, - 2,123,2,2,95,59,147,59,95,185, - 94,6,188,148,189,95,192,94,193,129, - 95,205,95,115,195,168,92,91,90,88, - 89,87,86,85,84,83,61,170,120,148, - 2,2,80,66,2,53,68,67,5,62, - 63,8,7,75,74,72,71,70,69,76, - 9,78,77,82,81,151,152,2,95,57, - 95,6,140,154,120,30,120,120,186,59, - 57,95,95,192,161,61,57,95,168,57, - 195,23,115,5,116,95,2,170,170,200, - 120,103,103,102,102,105,105,104,104,104, - 104,107,106,109,108,120,110,2,169,95, - 146,95,154,111,116,2,116,116,188,203, - 59,145,161,168,115,115,6,146,95,116, - 116,59,95,158,184,95,111,154,120,123, - 57,59,95,158,161,57,209,66,53,210, - 154,111,116,79,184,134,61,147,66,53, - 116,154,161,147,116 + 0,200,117,95,215,95,193,172,173,167, + 174,56,55,175,54,176,177,95,2,1, + 130,193,207,186,135,130,179,137,95,132, + 6,202,180,180,205,180,147,129,145,95, + 2,95,57,53,2,61,147,95,94,6, + 94,6,129,5,147,95,216,95,117,23, + 115,95,100,2,12,18,17,8,7,5, + 9,11,10,99,102,104,103,106,105,108, + 107,111,109,112,95,6,148,5,137,132, + 185,39,31,33,37,36,30,35,40,38, + 122,6,34,32,94,95,203,95,6,95, + 5,129,159,117,160,95,95,115,194,168, + 92,91,90,88,89,87,86,85,84,83, + 61,170,120,150,2,2,80,66,2,53, + 68,67,5,62,63,8,7,75,74,72, + 71,70,69,76,9,78,77,82,81,206, + 95,6,4,120,95,94,2,2,123,2, + 2,95,59,149,59,184,94,6,187,150, + 188,95,191,94,192,129,95,153,154,2, + 95,57,194,23,115,5,116,95,2,170, + 170,201,120,103,103,102,102,105,105,104, + 104,104,104,107,106,109,108,120,111,57, + 95,140,156,120,30,120,120,185,59,57, + 95,95,191,171,61,57,95,168,2,169, + 95,147,115,115,147,95,116,116,59,209, + 95,156,110,116,2,116,116,187,204,59, + 145,171,168,95,159,171,57,211,66,53, + 212,110,156,120,123,57,59,159,138,61, + 149,66,53,156,110,116,79,149,116,156, + 116 }; }; public final static char inSymb[] = InSymb.inSymb; @@ -1379,6 +1366,7 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym "or", "array_direct_abstract_declarat" + "or", + "initializer_seq", "designated_initializer", "designation", "designator_list", @@ -1394,8 +1382,8 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym public final static int ERROR_SYMBOL = 24, - SCOPE_UBOUND = 34, - SCOPE_SIZE = 35, + SCOPE_UBOUND = 33, + SCOPE_SIZE = 34, MAX_NAME_LENGTH = 38; public final int getErrorSymbol() { return ERROR_SYMBOL; } @@ -1404,20 +1392,20 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym public final int getMaxNameLength() { return MAX_NAME_LENGTH; } public final static int - NUM_STATES = 295, + NUM_STATES = 291, NT_OFFSET = 93, - LA_STATE_OFFSET = 2703, + LA_STATE_OFFSET = 2650, MAX_LA = 2147483647, - NUM_RULES = 312, - NUM_NONTERMINALS = 123, - NUM_SYMBOLS = 216, + NUM_RULES = 314, + NUM_NONTERMINALS = 125, + NUM_SYMBOLS = 218, SEGMENT_SIZE = 8192, - START_STATE = 1986, + START_STATE = 1921, IDENTIFIER_SYMBOL = 0, EOFT_SYMBOL = 73, EOLT_SYMBOL = 73, - ACCEPT_ACTION = 2369, - ERROR_ACTION = 2391; + ACCEPT_ACTION = 2314, + ERROR_ACTION = 2336; public final static boolean BACKTRACK = true; 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 46e839e4db3..e3f3eca3bb8 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 @@ -17,17 +17,17 @@ import lpg.lpgjavaruntime.*; import java.util.*; import org.eclipse.cdt.core.dom.ast.*; -import org.eclipse.cdt.core.dom.lrparser.CPreprocessorAdapter; import org.eclipse.cdt.core.dom.lrparser.IDOMTokenMap; import org.eclipse.cdt.core.dom.lrparser.IParser; import org.eclipse.cdt.core.dom.lrparser.ITokenCollector; +import org.eclipse.cdt.core.dom.lrparser.CPreprocessorAdapter; +import org.eclipse.cdt.core.dom.lrparser.action.ITokenStream; import org.eclipse.cdt.core.dom.lrparser.lpgextensions.FixedBacktrackingParser; import org.eclipse.cdt.core.dom.lrparser.action.ScopedStack; import org.eclipse.cdt.core.parser.IScanner; import org.eclipse.cdt.core.dom.parser.IBuiltinBindingsProvider; import org.eclipse.cdt.core.index.IIndex; -import org.eclipse.cdt.core.dom.lrparser.action.ITokenStream; import org.eclipse.cdt.core.dom.lrparser.action.ITokenMap; import org.eclipse.cdt.core.dom.lrparser.action.TokenMap; import org.eclipse.cdt.core.dom.lrparser.ISecondaryParser; @@ -244,9 +244,9 @@ public void setTokens(List tokens) { addToken(new Token(null, 0, 0, C99SizeofExpressionParsersym.TK_EOF_TOKEN)); } -public C99SizeofExpressionParser(ITokenStream parser, Set options) { // constructor for creating secondary parser +public C99SizeofExpressionParser(ITokenStream stream, Set options) { // constructor for creating secondary parser initActions(options); - tokenMap = new TokenMap(C99SizeofExpressionParsersym.orderedTerminalSymbols, parser.getOrderedTerminalSymbols()); + tokenMap = new TokenMap(C99SizeofExpressionParsersym.orderedTerminalSymbols, stream.getOrderedTerminalSymbols()); } @@ -340,7 +340,7 @@ public C99SizeofExpressionParser(ITokenStream parser, Set optio } // - // Rule 28: postfix_expression ::= ( type_id ) { initializer_list comma_opt } + // Rule 28: postfix_expression ::= ( type_id ) initializer_list // case 28: { action. consumeExpressionTypeIdInitializer(); break; } @@ -1156,117 +1156,117 @@ public C99SizeofExpressionParser(ITokenStream parser, Set optio } // - // Rule 281: initializer ::= start_initializer_list { initializer_list comma_opt } end_initializer_list - // - case 281: { action. consumeInitializerList(); break; - } - - // - // Rule 282: initializer ::= { } + // Rule 282: initializer_list ::= start_initializer_list { initializer_seq comma_opt } end_initializer_list // case 282: { action. consumeInitializerList(); break; } // - // Rule 283: start_initializer_list ::= $Empty + // Rule 283: initializer_list ::= { } // - case 283: { action. initializerListStart(); break; + case 283: { action. consumeInitializerList(); break; } // - // Rule 284: end_initializer_list ::= $Empty + // Rule 284: start_initializer_list ::= $Empty // - case 284: { action. initializerListEnd(); break; + case 284: { action. initializerListStart(); break; } // - // Rule 289: designated_initializer ::= designation = initializer + // Rule 285: end_initializer_list ::= $Empty // - case 289: { action. consumeInitializerDesignated(); break; + case 285: { action. initializerListEnd(); break; } // - // Rule 293: designator_base ::= [ constant_expression ] + // Rule 290: designated_initializer ::= designation = initializer // - case 293: { action. consumeDesignatorArray(); break; + case 290: { action. consumeInitializerDesignated(); break; } // - // Rule 294: designator_base ::= . identifier_token + // Rule 294: designator_base ::= [ constant_expression ] // - case 294: { action. consumeDesignatorField(); break; + case 294: { action. consumeDesignatorArray(); break; } // - // Rule 295: designator ::= [ constant_expression ] + // Rule 295: designator_base ::= . identifier_token // - case 295: { action. consumeDesignatorArray(); break; + case 295: { action. consumeDesignatorField(); break; } // - // Rule 296: designator ::= . identifier_token + // Rule 296: designator ::= [ constant_expression ] // - case 296: { action. consumeDesignatorField(); break; + case 296: { action. consumeDesignatorArray(); break; } // - // Rule 297: translation_unit ::= external_declaration_list + // Rule 297: designator ::= . identifier_token // - case 297: { action. consumeTranslationUnit(); break; + case 297: { action. consumeDesignatorField(); break; + } + + // + // Rule 298: translation_unit ::= external_declaration_list + // + case 298: { action. consumeTranslationUnit(); break; } // - // Rule 298: translation_unit ::= $Empty + // Rule 299: translation_unit ::= $Empty // - case 298: { action. consumeTranslationUnit(); break; + case 299: { action. consumeTranslationUnit(); break; } // - // Rule 303: external_declaration ::= ; + // Rule 304: external_declaration ::= ; // - case 303: { action. consumeDeclarationEmpty(); break; + case 304: { action. consumeDeclarationEmpty(); break; } // - // Rule 304: external_declaration ::= ERROR_TOKEN + // Rule 305: external_declaration ::= ERROR_TOKEN // - case 304: { action. consumeDeclarationProblem(); break; + case 305: { action. consumeDeclarationProblem(); break; } // - // Rule 307: function_definition ::= declaration_specifiers function_declarator function_body + // Rule 309: function_definition ::= function_declarator function_body // - case 307: { action. consumeFunctionDefinition(true); break; + case 309: { action. consumeFunctionDefinition(false); break; } // - // Rule 308: function_definition ::= function_declarator function_body + // Rule 310: function_definition ::= declaration_specifiers knr_function_declarator declaration_list compound_statement // - case 308: { action. consumeFunctionDefinition(false); break; + case 310: { action. consumeFunctionDefinitionKnR(); break; } // - // Rule 309: function_definition ::= declaration_specifiers knr_function_declarator declaration_list compound_statement + // Rule 311: normal_function_definition ::= declaration_specifiers function_declarator function_body // - case 309: { action. consumeFunctionDefinitionKnR(); break; + case 311: { action. consumeFunctionDefinition(true); break; } // - // Rule 310: function_body ::= { } + // Rule 312: function_body ::= { } // - case 310: { action. consumeStatementCompoundStatement(false); break; + case 312: { action. consumeStatementCompoundStatement(false); break; } // - // Rule 311: function_body ::= { block_item_list } + // Rule 313: function_body ::= { block_item_list } // - case 311: { action. consumeStatementCompoundStatement(true); break; + case 313: { action. consumeStatementCompoundStatement(true); break; } // - // Rule 313: no_sizeof_type_id_start ::= ERROR_TOKEN + // Rule 315: no_sizeof_type_id_start ::= ERROR_TOKEN // - case 313: { action. consumeEmpty(); break; + case 315: { action. consumeEmpty(); 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 b204a44fb06..36caaa0928a 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 @@ -36,7 +36,7 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public final static short baseCheck[] = {0, 0,0,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,3,1, - 1,4,4,3,3,2,2,8,1,0, + 1,4,4,3,3,2,2,4,1,0, 1,1,2,2,2,2,2,2,2,2, 2,1,4,1,3,3,3,1,3,3, 1,3,3,1,3,3,3,3,1,3, @@ -62,156 +62,154 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab 6,0,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, - 7,3,0,0,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,0,0,-156,0,0,0,0,0, - 0,0,0,0,0,0,-114,0,-74,-2, - -33,0,0,0,0,-54,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-137,0,-115,0, - -116,0,-4,0,0,0,0,0,-6,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-120,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,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,0,-110,0,0,0,0,0,0, - 0,0,0,0,0,0,-80,0,-14,-104, - -133,-29,0,0,-30,0,-16,0,-193,0, - 0,0,0,-117,0,-17,0,-157,0,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,0,-118, - 0,0,0,-5,0,0,0,0,0,0, - 0,0,-18,-69,0,0,0,-7,0,0, - 0,0,0,0,0,0,-180,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,-132,0, - 0,0,0,0,0,0,0,0,-51,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-34,0,-107,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-75,-125, + 1,7,3,0,0,1,1,3,3,4, + 1,1,2,3,2,3,2,1,0,1, + 2,1,1,1,1,1,2,1,3,6, + 4,2,4,1,1,-36,0,0,0,0, + 0,0,0,0,0,0,-2,0,0,0, + 0,0,0,0,0,0,0,0,-4,-156, + -115,0,-14,0,0,0,0,-72,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - -129,0,-165,0,0,-85,0,-48,0,0, + -167,0,-29,0,-104,0,0,0,0,-80, + 0,0,-116,0,-16,0,-17,0,0,0, + 0,0,0,0,-138,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,-68,0,0,0,0,-52,0,0, + 0,0,0,0,0,-174,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-19,0,0,-20,0,0,0, 0,0,0,0,0,0,0,0,0,0, - -159,0,-182,0,0,0,0,0,0,0, - -27,0,0,0,0,0,0,0,0,0, - 0,-21,0,0,0,0,0,0,0,0, - 0,-56,0,0,0,0,0,0,0,0, - 0,0,-22,0,0,0,0,0,0,0, - 0,0,-57,0,0,0,0,0,0,0, - 0,0,0,-23,0,0,0,0,0,0, - 0,0,0,-58,0,0,0,0,0,0, - 0,0,0,0,-24,0,0,0,0,0, - 0,0,0,0,-59,0,0,0,0,0, - 0,0,0,0,0,-25,0,0,0,0, - 0,0,0,0,0,-60,0,0,0,0, - 0,0,0,0,0,0,-26,0,0,0, - 0,0,0,0,0,0,-61,0,0,0, - 0,0,0,0,0,0,0,-86,0,0, - 0,0,0,0,0,0,0,-62,0,0, - 0,0,0,0,0,0,0,0,-87,0, - 0,0,0,0,0,0,0,0,-63,0, - 0,0,0,0,0,0,0,0,0,-88, - 0,0,0,0,0,0,0,0,0,-64, + 0,-178,0,-128,-78,0,0,-48,0,0, 0,0,0,0,0,0,0,0,0,0, - -89,0,0,0,0,0,0,0,0,0, - -65,0,0,0,0,0,0,0,0,0, - 0,-90,0,0,0,0,0,0,0,0, - 0,-66,0,0,0,0,0,0,0,0, - 0,0,-91,0,0,0,0,0,0,0, - 0,0,-119,0,0,0,0,0,0,0, - 0,0,0,-92,0,0,0,0,0,0, - 0,0,0,-142,0,0,0,0,0,0, - 0,0,0,0,-93,0,0,0,0,0, - 0,0,0,0,-143,0,0,0,0,0, - 0,0,0,0,0,-94,0,0,0,0, - 0,0,0,0,0,-160,0,0,0,0, - 0,0,0,0,0,0,-162,0,0,0, - 0,0,0,0,0,-183,0,0,0,0, - 0,0,0,0,0,0,-174,0,0,0, - 0,0,0,0,0,-95,-78,0,0,-136, - -96,0,-8,0,0,0,0,0,0,0, - -192,0,0,0,0,0,0,0,0,0, + 0,0,-30,0,0,0,-18,0,-42,0, 0,0,0,0,0,0,0,0,0,0, - -201,0,0,0,0,0,0,0,0,0, - 0,-97,0,0,0,0,0,0,0,0, - 0,-155,0,-98,-99,0,0,-9,0,0, - 0,0,0,0,0,-209,0,0,0,0, + 0,-6,0,0,0,0,0,0,0,0, + -189,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,-128,-46,0,0, - 0,0,0,0,0,0,0,0,-49,0, - 0,0,0,0,0,0,0,0,0,-111, - 0,0,0,-108,-173,-146,-122,-127,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,-189,0,0,-1,0,0,0,0,-100, - 0,0,0,0,0,0,0,-101,0,0, - 0,0,0,0,0,-171,0,0,0,0, - -113,-131,0,-185,0,0,0,0,0,0, - 0,0,0,0,0,-102,-135,-103,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,-106,0,0,0,0, - -50,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,-208,0,-121,0,0, - -130,0,0,-134,-139,-152,0,-42,0,0, - 0,0,0,0,0,0,0,0,-47,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,-12,0,0,0,0, + 0,-3,0,0,0,0,0,0,0,0, + 0,0,-19,0,0,0,0,0,0,0, + 0,0,0,0,-117,0,0,-118,0,-119, 0,0,0,-43,0,0,0,0,0,0, - 0,0,0,0,-44,0,0,0,0,0, - 0,0,0,0,0,-45,0,0,0,0, - 0,0,0,0,0,0,-203,0,0,-10, - 0,0,0,0,0,0,0,0,-37,0, - 0,0,0,0,0,0,0,-38,0,0, - 0,0,0,0,0,0,-73,-170,-138,0, - 0,0,0,0,0,0,-158,0,0,0, - -126,-178,-186,0,-76,-179,-177,-124,-190,0, - 0,-71,0,-145,0,0,0,0,0,0, + 0,0,0,0,0,-108,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-210,0,0,-202, - -109,-147,-35,-123,0,-11,0,0,0,0, - 0,0,0,0,-207,-31,0,0,0,0, + 0,0,0,0,0,0,-5,0,0,0, + 0,0,0,0,-127,0,0,0,0,0, + 0,0,0,0,0,-81,0,0,0,0, + 0,0,0,0,0,-131,0,-158,0,-55, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-13,0,0,0, - 0,0,0,0,0,0,0,-39,0,0, - 0,0,0,0,0,0,0,-83,-81,0, - 0,-40,0,0,0,0,0,0,0,-41, - 0,0,0,0,0,0,0,-70,0,0, - 0,0,0,0,0,-112,0,-196,-169,0, - -140,-15,-176,0,-141,-154,0,-144,-77,0, - -150,-151,0,0,-148,0,0,-28,0,0, + -122,0,0,0,0,0,0,0,0,0, + -20,0,-21,0,0,0,0,-27,0,0, + 0,0,0,0,0,0,0,0,-22,0, + 0,0,0,0,0,0,0,0,0,0, + -23,0,-188,0,-24,0,0,0,0,-74, + 0,-12,0,0,0,0,0,0,0,0, + 0,0,0,0,-56,0,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,0,0,-25,0,0,0, + 0,0,0,0,0,0,-58,0,0,0, + 0,0,0,0,0,0,0,-26,0,0, + 0,0,0,0,0,0,0,-59,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,-60,0, + 0,0,0,0,0,0,0,0,0,-86, + 0,0,0,0,0,0,0,0,0,-61, + 0,0,0,0,0,0,0,0,0,0, + -87,0,0,0,0,0,0,0,0,0, + -62,0,0,0,0,0,0,0,0,0, + 0,-88,0,0,0,0,0,0,0,0, + 0,-63,0,0,0,0,0,0,0,0, + 0,0,-89,0,0,0,0,0,0,0, + 0,0,-64,0,0,0,0,0,0,0, + 0,0,0,-90,0,0,0,0,0,0, + 0,0,0,-65,0,0,0,0,0,0, + 0,0,0,0,-91,0,0,0,0,0, + 0,0,0,0,-66,0,0,0,0,0, + 0,0,0,0,0,-92,0,0,0,0, + 0,0,0,0,0,-120,0,0,0,0, + 0,0,0,0,0,0,-93,0,0,0, + 0,0,0,0,0,0,-141,0,0,0, + 0,0,0,0,0,0,0,-94,0,0, + 0,0,0,0,0,0,0,-142,0,0, + 0,0,0,0,0,0,0,0,-95,0, + 0,0,0,0,0,0,0,0,-177,0, + 0,0,0,0,0,0,0,0,0,-134, + 0,0,0,0,0,0,0,0,-186,0, + 0,0,0,0,0,0,0,0,0,-197, + 0,0,0,0,0,0,0,0,-13,0, + 0,0,0,0,0,0,-7,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,-198,0,0,0,0,0, + 0,0,0,0,0,-135,0,0,0,0, + 0,0,0,0,-155,-96,0,-170,0,0, + -97,0,-70,0,0,0,0,0,0,0, + -206,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,0, + 0,-130,0,0,0,0,0,0,0,-180, + -176,0,0,0,0,-75,0,0,-37,0, + 0,0,0,0,0,0,0,0,-98,-145, + 0,0,-110,0,0,0,0,0,0,0, + 0,0,0,0,0,0,-200,-193,-124,0, + -187,0,0,0,0,0,-99,0,-100,0, + -146,0,0,0,0,0,0,0,0,0, + 0,0,0,0,-31,0,-101,0,0,0, + 0,0,0,0,0,0,0,0,0,-184, + -102,-85,0,-33,0,0,-51,0,0,0, + 0,0,0,0,0,0,0,-121,0,0, + 0,0,0,0,0,-71,0,0,0,0, + 0,0,0,-52,0,0,0,0,0,0, + 0,0,0,0,-164,0,0,0,-137,-154, + 0,-34,0,-105,0,0,0,-183,0,0, + -67,0,0,0,0,-107,0,-123,0,-83, + 0,0,0,-140,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,-38,0,0,0, + 0,0,0,0,0,0,-49,0,0,0, + 0,0,0,0,0,0,0,0,0,-50, + 0,0,0,0,0,0,0,0,0,0, + -205,0,0,0,-153,0,-157,-68,0,0, + -132,0,-191,0,-136,0,-151,0,0,-44, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,-8, + 0,0,0,0,0,0,0,-166,0,-45, + 0,0,0,0,0,0,0,0,0,0, + -46,0,0,0,0,0,0,0,0,0, + -47,0,0,0,0,0,0,0,0,0, + -73,0,0,-76,-69,-109,0,-112,-139,-165, + -171,0,-111,0,0,0,0,0,0,0, + 0,-172,-175,0,0,0,0,-207,0,0, + 0,0,0,0,0,0,0,-199,-204,0, + -147,0,0,0,0,-144,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,-161,0,0,0,0,0,0, - 0,-149,0,0,-79,0,-187,0,-211,0, - 0,0,0,-163,0,0,-105,0,-82,0, - 0,0,0,-84,0,0,0,0,0,0, - -153,0,0,0,0,0,0,0,0,0, + -9,0,0,0,0,0,0,0,-10,0, + 0,0,0,0,0,0,-11,0,0,0, + 0,0,0,0,-35,-39,0,0,0,0, + 0,0,0,0,-113,0,-40,0,0,0, + 0,0,0,0,-173,0,-103,-126,-143,-162, + 0,-41,0,0,0,0,0,0,0,0, + 0,0,-15,-129,-159,0,0,0,0,-28, + -32,0,0,0,0,-179,0,-160,-148,-190, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,-185,0,-77,0,0,0,0, + 0,0,0,0,0,0,0,0,-79,0, + 0,0,-196,-82,0,0,0,0,0,-106, + -169,0,0,0,0,0,0,-84,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,-32,0,-188,-175,-204,-166,-164,-53, - -167,-172,-168,0,-181,0,0,-194,0,0, - 0,-195,0,-197,-191,-198,-199,-200,-205,0, - 0,0,0,0,0,0,0,-206,0,0, + -125,0,0,-152,-181,0,0,0,0,-182, + 0,0,0,0,0,0,-133,0,0,-168, + 0,0,0,-150,-1,-114,-163,0,0,0, + 0,0,-53,0,0,0,0,0,0,-161, + -149,0,-202,0,0,0,0,0,0,0, + -203,0,0,0,0,0,0,-201,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,-194,0,0,-195,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,0,0, - 0,0,0,0,0,0,0,0 + 0,0,0 }; }; public final static short baseCheck[] = BaseCheck.baseCheck; @@ -221,185 +219,183 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface BaseAction { public final static char baseAction[] = { - 87,11,101,24,24,23,23,32,32,69, + 87,11,102,24,24,23,23,39,39,69, 69,1,1,2,2,2,2,3,3,3, - 4,5,5,5,5,5,5,5,5,51, - 51,70,6,6,6,6,6,6,6,6, + 4,5,5,5,5,5,5,5,5,59, + 59,70,6,6,6,6,6,6,6,6, 6,6,7,7,8,8,8,8,9,9, 9,10,10,10,12,12,12,12,12,13, 13,13,14,14,15,15,16,16,17,17, 18,18,19,19,20,20,20,20,20,20, - 20,20,20,20,20,20,102,45,40,88, - 88,73,73,46,103,103,103,103,103,103, - 103,104,104,104,105,105,110,110,111,111, - 106,106,107,107,107,113,113,108,108,108, - 108,109,109,109,109,109,112,112,25,25, - 25,25,25,28,28,28,79,79,74,74, - 74,74,75,75,75,76,76,76,77,77, - 77,78,78,78,114,114,115,115,116,29, - 31,31,31,31,31,52,54,54,54,54, + 20,20,20,20,20,20,103,45,40,88, + 88,72,72,47,104,104,104,104,104,104, + 104,105,105,105,106,106,111,111,112,112, + 107,107,108,108,108,114,114,109,109,109, + 109,110,110,110,110,110,113,113,25,25, + 25,25,25,28,28,28,78,78,73,73, + 73,73,74,74,74,75,75,75,76,76, + 76,77,77,77,115,115,116,116,117,29, + 31,31,31,31,31,53,54,54,54,54, 54,54,54,54,54,54,54,54,63,60, - 60,89,90,64,64,61,61,61,65,80, - 80,81,81,66,66,66,48,91,91,82, - 83,83,83,62,62,92,84,84,85,85, - 67,67,21,22,22,22,30,47,47,33, - 33,33,33,36,36,38,34,34,35,39, - 39,117,117,37,118,118,93,93,26,26, - 26,26,26,26,26,26,26,86,49,49, - 49,49,27,56,56,55,55,55,57,57, - 50,50,94,94,71,71,58,58,58,41, + 60,89,90,65,65,61,61,61,66,79, + 79,80,80,67,67,67,49,91,91,81, + 82,82,82,62,62,92,83,83,84,84, + 68,68,21,22,22,22,30,48,48,32, + 32,32,32,35,35,37,33,33,34,38, + 38,118,118,36,119,119,93,93,26,26, + 26,26,26,26,26,26,26,85,50,50, + 50,50,27,56,56,55,55,55,57,57, + 51,51,94,94,71,71,58,58,58,41, 41,41,42,43,43,43,44,44,44,44, - 53,53,53,59,95,72,72,72,72,68, - 96,97,97,98,98,99,99,119,119,120, - 120,121,121,121,121,123,123,122,122,122, - 124,124,87,87,1,878,17,21,18,469, - 857,44,486,477,714,587,543,752,717,794, - 773,836,815,74,91,134,212,596,589,144, - 31,513,136,133,135,159,506,20,17,21, - 18,469,42,44,486,477,714,28,543,752, - 717,794,773,1248,1558,274,138,629,165,201, - 186,201,185,441,142,145,148,151,1097,506, - 20,17,21,18,469,42,40,373,1445,1579, - 1625,1639,1644,666,434,20,17,21,18,469, - 857,44,486,477,714,367,543,752,717,794, - 773,836,815,74,280,482,20,17,21,18, - 469,857,44,486,477,714,367,543,752,717, - 794,773,836,815,74,280,506,20,17,21, - 18,469,42,44,486,477,714,285,543,752, - 717,794,1276,1325,358,20,17,21,18,469, - 42,36,286,1437,1614,291,1100,387,285,579, - 14,14,201,31,1325,201,31,57,245,201, - 1442,394,1651,286,662,1324,157,1702,332,20, - 17,21,18,469,857,44,486,477,714,367, - 543,752,717,794,773,836,815,74,280,275, - 20,17,21,18,469,857,44,486,477,714, - 1481,543,752,717,794,773,836,815,74,1214, - 201,187,369,238,530,20,17,21,18,469, - 41,287,25,6,104,24,209,1325,506,20, - 17,21,18,469,42,39,288,458,20,17, - 21,18,469,857,44,486,477,714,22,543, - 752,717,794,773,836,815,74,280,506,20, - 17,21,18,469,857,44,486,477,714,124, - 543,752,717,794,773,836,815,74,91,506, - 20,17,21,18,469,42,44,486,477,714, - 289,543,752,717,1154,513,1325,554,20,17, - 21,18,469,857,44,486,477,714,1484,543, - 752,717,794,773,836,815,74,1448,19,327, - 299,20,17,21,18,469,857,44,486,477, - 714,373,543,752,717,794,773,836,815,74, - 1578,189,178,52,239,275,189,178,506,20, - 17,21,18,469,42,44,486,477,714,1326, - 543,1096,134,212,253,212,513,134,212,136, - 133,135,159,513,137,133,135,159,506,20, - 17,21,18,469,42,44,486,477,714,1278, - 543,752,1155,138,30,165,23,636,139,1443, - 165,142,145,148,151,1097,143,146,149,152, - 1097,201,294,201,296,1445,1579,1625,1639,1644, - 666,506,20,17,21,18,469,857,44,486, - 477,714,200,543,752,717,794,773,836,815, - 74,92,506,20,17,21,18,469,857,44, - 486,477,714,191,543,752,717,794,773,836, - 815,74,85,506,20,17,21,18,469,857, - 44,486,477,714,344,543,752,717,794,773, - 836,815,74,84,506,20,17,21,18,469, - 857,44,486,477,714,243,543,752,717,794, - 773,836,815,74,83,506,20,17,21,18, - 469,857,44,486,477,714,171,543,752,717, - 794,773,836,815,74,82,506,20,17,21, - 18,469,857,44,486,477,714,547,543,752, - 717,794,773,836,815,74,81,506,20,17, - 21,18,469,857,44,486,477,714,578,543, - 752,717,794,773,836,815,74,80,506,20, - 17,21,18,469,857,44,486,477,714,194, - 543,752,717,794,773,836,815,74,79,506, - 20,17,21,18,469,857,44,486,477,714, - 199,543,752,717,794,773,836,815,74,78, - 506,20,17,21,18,469,857,44,486,477, - 714,416,543,752,717,794,773,836,815,74, - 77,506,20,17,21,18,469,857,44,486, - 477,714,488,543,752,717,794,773,836,815, - 74,76,506,20,17,21,18,469,857,44, - 486,477,714,490,543,752,717,794,773,836, - 815,74,75,506,20,17,21,18,469,857, - 44,486,477,714,514,543,752,717,794,773, - 836,815,74,73,506,20,17,21,18,469, - 857,44,486,477,714,241,543,752,717,794, - 773,836,815,74,1688,506,20,17,21,18, - 469,857,44,486,477,714,601,543,752,717, - 794,773,836,815,74,1691,506,20,17,21, - 18,469,42,44,486,477,714,587,543,752, - 717,794,773,836,815,93,506,20,17,21, - 18,469,42,44,486,477,714,421,543,752, - 717,794,773,836,815,93,245,118,1232,282, - 711,13,1695,506,20,17,21,18,469,42, - 38,506,20,17,21,18,469,42,44,486, - 477,714,1698,543,752,717,794,773,836,815, - 93,506,20,17,21,18,469,42,44,486, - 477,714,50,543,752,717,794,773,836,815, - 93,325,612,1442,614,671,194,211,506,20, - 17,21,18,469,42,37,506,20,17,21, - 18,469,42,44,486,477,714,201,543,752, - 717,794,773,836,815,93,337,113,506,20, - 17,21,18,469,42,44,486,1025,1622,506, - 20,17,21,18,469,42,44,486,477,714, - 513,1101,202,273,104,587,207,44,513,208, - 217,1482,220,1585,222,223,228,1569,266,639, - 339,271,281,272,262,382,1447,1446,240,276, - 305,278,273,1687,1575,263,578,179,324,217, - 1482,220,1585,222,223,228,151,266,639,339, - 271,679,116,1693,52,217,1482,220,1585,222, - 223,228,1262,661,1210,87,600,14,97,1480, - 312,260,273,1318,277,253,212,1187,1152,218, - 1482,220,1585,222,223,228,676,268,639,339, - 271,506,20,17,21,18,469,42,44,486, - 477,714,258,1142,197,199,281,1582,737,1321, - 1568,670,340,1708,205,738,739,1687,506,20, - 17,21,18,469,42,44,486,477,941,506, - 20,17,21,18,469,42,44,486,1046,217, - 1482,220,1585,222,223,228,530,20,17,21, - 18,469,34,1480,506,20,17,21,18,469, - 42,44,486,477,962,506,20,17,21,18, - 469,42,44,486,477,983,506,20,17,21, - 18,469,42,44,486,477,1004,728,198,199, - 506,20,17,21,18,469,42,36,1687,506, - 20,17,21,18,469,42,44,899,506,20, - 17,21,18,469,42,44,920,326,679,14, - 217,1482,220,1585,222,223,228,697,1566,1627, - 1067,695,700,710,1693,232,724,721,104,721, - 276,230,44,273,358,20,17,21,18,469, - 42,36,254,212,254,212,134,212,266,639, - 339,271,242,141,133,135,159,733,246,1296, - 712,52,499,160,52,1210,506,20,17,21, - 18,469,42,35,1452,287,489,140,1705,165, - 1709,1637,253,212,1318,253,212,578,227,273, - 218,1482,220,1585,222,223,228,530,20,17, - 21,18,469,33,266,639,339,271,506,20, - 17,21,18,469,42,47,89,1441,439,414, - 1441,265,506,20,17,21,18,469,42,46, - 506,20,17,21,18,469,42,45,409,20, - 17,21,18,469,42,43,567,640,719,567, - 1014,44,14,612,1442,698,14,661,104,627, - 661,357,513,314,693,720,663,1573,14,254, - 212,1187,661,1296,1187,1789,1296,196,1689,314, - 134,212,241,530,371,279,1187,144,133,135, - 159,226,87,196,696,1637,258,615,1256,258, - 1483,1218,44,1321,1218,632,1321,588,87,158, - 484,259,1789,615,14,1789,1483,242,661,661, - 208,1789,1789,341,666,415,134,212,1789,1296, - 1789,48,1187,147,133,135,159,1449,1446,686, - 134,212,661,273,1318,134,212,150,133,135, - 159,1256,153,133,135,159,196,258,268,639, - 339,271,1704,14,1321,142,95,44,104,707, - 14,104,14,513,578,104,661,661,104,1087, - 1264,578,711,1685,513,587,365,587,446,587, - 196,196,243,292,1296,244,224,191,587,293, - 1706,1789,295,87,281,1789,1789,229,544,233, - 87,1215,1686,1087,1087,1240,1477,203,1789,180, - 1789,204,1789,1789,1789,1789,1789,1789,1789,1789, - 1629,191,192,1718,1789,1789,1789,1789,1789,1789, - 1789,1789,1789,1789,1789,1707,1686,1789,1789,1789, - 1789,1789,1789,1789,1789,1789,1789,193,1789,0, - 20,178,0,1,2014,0,1,2025,0 + 64,64,46,46,52,96,95,95,95,95, + 86,97,98,98,99,99,100,100,120,120, + 121,121,122,122,122,122,124,124,123,123, + 123,125,126,126,87,87,1,780,17,21, + 18,343,738,44,387,385,523,31,467,633, + 631,661,649,717,665,74,91,134,212,15, + 668,329,990,607,136,133,135,159,275,20, + 17,21,18,343,738,44,387,385,523,1153, + 467,633,631,661,649,717,665,74,1426,138, + 165,692,238,360,31,50,142,145,148,151, + 421,445,1268,360,186,241,1228,194,339,1424, + 1586,1599,1604,1618,1212,441,20,17,21,18, + 343,738,44,387,385,523,340,467,633,631, + 661,649,717,665,74,280,336,20,17,21, + 18,343,738,44,387,385,523,340,467,633, + 631,661,649,717,665,74,280,1443,442,292, + 194,281,693,25,575,97,383,1264,489,20, + 17,21,18,343,42,44,387,385,523,286, + 467,969,281,360,31,254,212,12,1264,489, + 20,17,21,18,343,42,44,387,385,843, + 288,287,489,20,17,21,18,343,42,40, + 1075,465,20,17,21,18,343,738,44,387, + 385,523,289,467,633,631,661,649,717,665, + 74,280,489,20,17,21,18,343,738,44, + 387,385,523,30,467,633,631,661,649,717, + 665,74,91,24,341,360,185,281,576,1355, + 360,187,293,1264,489,20,17,21,18,343, + 42,44,387,385,864,290,537,20,17,21, + 18,343,738,44,387,385,523,1641,467,633, + 631,661,649,717,665,74,1538,513,20,17, + 21,18,343,41,339,299,20,17,21,18, + 343,738,44,387,385,523,446,467,633,631, + 661,649,717,665,74,1539,189,178,236,239, + 489,20,17,21,18,343,42,44,387,385, + 523,50,467,633,631,661,1211,134,212,253, + 212,580,395,63,136,133,135,159,489,20, + 17,21,18,343,738,44,387,385,523,219, + 467,633,631,661,649,717,665,74,92,138, + 165,313,535,282,1130,327,142,145,148,151, + 323,445,513,20,17,21,18,343,34,1424, + 1586,1599,1604,1618,1212,489,20,17,21,18, + 343,738,44,387,385,523,274,467,633,631, + 661,649,717,665,74,85,489,20,17,21, + 18,343,738,44,387,385,523,413,467,633, + 631,661,649,717,665,74,84,489,20,17, + 21,18,343,738,44,387,385,523,524,467, + 633,631,661,649,717,665,74,83,489,20, + 17,21,18,343,738,44,387,385,523,282, + 467,633,631,661,649,717,665,74,82,489, + 20,17,21,18,343,738,44,387,385,523, + 561,467,633,631,661,649,717,665,74,81, + 489,20,17,21,18,343,738,44,387,385, + 523,199,467,633,631,661,649,717,665,74, + 80,489,20,17,21,18,343,738,44,387, + 385,523,201,467,633,631,661,649,717,665, + 74,79,489,20,17,21,18,343,738,44, + 387,385,523,110,467,633,631,661,649,717, + 665,74,78,489,20,17,21,18,343,738, + 44,387,385,523,117,467,633,631,661,649, + 717,665,74,77,489,20,17,21,18,343, + 738,44,387,385,523,448,467,633,631,661, + 649,717,665,74,76,489,20,17,21,18, + 343,738,44,387,385,523,472,467,633,631, + 661,649,717,665,74,75,489,20,17,21, + 18,343,738,44,387,385,523,657,467,633, + 631,661,649,717,665,74,73,489,20,17, + 21,18,343,738,44,387,385,523,678,467, + 633,631,661,649,717,665,74,1555,489,20, + 17,21,18,343,738,44,387,385,523,200, + 467,633,631,661,649,717,665,74,1568,489, + 20,17,21,18,343,42,44,387,385,523, + 191,467,633,631,661,649,717,665,93,489, + 20,17,21,18,343,42,44,387,385,523, + 685,467,633,631,661,649,717,665,93,513, + 20,17,21,18,343,33,1570,489,20,17, + 21,18,343,42,39,489,20,17,21,18, + 343,42,44,387,385,523,211,467,633,631, + 661,649,717,665,93,489,20,17,21,18, + 343,42,44,387,385,523,50,467,633,631, + 661,649,717,665,93,394,57,1644,696,193, + 1357,104,1691,416,20,17,21,18,343,42, + 43,489,20,17,21,18,343,42,44,387, + 385,523,201,467,633,631,661,649,717,665, + 93,489,20,17,21,18,343,42,44,387, + 385,523,105,467,633,631,661,649,1197,28, + 648,360,295,1569,1535,1264,562,1584,202,489, + 20,17,21,18,343,42,44,801,273,650, + 207,254,212,236,217,1181,220,1461,222,223, + 228,1540,275,266,1136,670,271,701,676,59, + 262,360,1431,276,253,212,273,711,1698,6, + 263,718,217,1181,220,1461,222,223,228,254, + 212,266,1136,670,271,373,1284,429,1680,217, + 1181,220,1461,222,223,228,512,227,1428,444, + 696,246,189,178,397,1680,260,489,20,17, + 21,18,343,42,44,387,385,523,206,467, + 633,631,1149,134,212,89,59,1083,585,209, + 137,133,135,159,489,20,17,21,18,343, + 42,44,387,385,523,152,467,633,1177,50, + 542,1431,397,1276,400,139,165,283,305,1683, + 1260,397,143,146,149,152,715,445,717,1698, + 470,273,1278,1348,608,19,1610,218,1181,220, + 1461,222,223,228,1537,608,268,1136,670,271, + 217,1181,220,1461,222,223,228,489,20,17, + 21,18,343,42,44,822,1458,489,20,17, + 21,18,343,42,44,387,385,523,208,1076, + 489,20,17,21,18,343,42,44,387,385, + 523,305,1081,1078,1442,50,540,627,397,197, + 199,333,1698,360,297,716,1611,722,1566,1010, + 489,20,17,21,18,343,42,44,387,385, + 885,23,538,217,1181,220,1461,222,223,228, + 489,20,17,21,18,343,42,38,206,1458, + 489,20,17,21,18,343,42,44,387,385, + 906,489,20,17,21,18,343,42,44,387, + 927,489,20,17,21,18,343,42,44,387, + 948,675,198,199,232,281,281,179,397,59, + 50,58,1525,365,20,17,21,18,343,42, + 36,1650,698,144,276,134,212,273,706,22, + 240,272,141,133,135,159,1347,245,151,171, + 1764,689,266,1136,670,271,365,20,17,21, + 18,343,42,36,1764,1278,1764,140,165,1428, + 218,1181,220,1461,222,223,228,226,1764,1764, + 246,489,20,17,21,18,343,42,37,489, + 20,17,21,18,343,42,36,489,20,17, + 21,18,343,42,35,60,489,20,17,21, + 18,343,42,47,1764,544,1236,489,20,17, + 21,18,343,42,46,206,606,52,281,281, + 544,273,489,20,17,21,18,343,42,45, + 1122,606,1276,50,397,281,266,1136,670,271, + 50,50,242,241,316,1122,236,1276,281,59, + 281,316,512,265,663,1610,258,278,196,243, + 1554,1764,1351,28,206,196,604,253,212,1264, + 1255,258,244,87,294,1554,1276,1351,1262,613, + 87,87,1515,206,636,1262,1425,134,212,1515, + 324,542,1431,1764,144,133,135,159,645,1255, + 134,212,1168,203,1214,134,212,147,133,135, + 159,1271,150,133,135,159,273,1278,1764,134, + 212,236,180,1764,48,646,153,133,135,159, + 142,268,1136,670,271,606,606,454,1764,1764, + 95,606,253,212,397,389,497,497,606,196, + 1122,606,1764,50,1764,196,512,1657,1645,208, + 397,521,1122,206,512,196,1764,279,1764,277, + 230,281,606,371,1210,1442,258,444,59,371, + 1716,1764,1351,224,1764,87,1122,1764,258,371, + 314,191,1664,87,1351,296,397,191,1179,342, + 1764,1764,204,1388,1660,1276,937,192,1764,1603, + 1660,1764,259,1764,1764,1764,1764,1764,1719,229, + 1764,1764,233,1764,1764,1764,1764,1764,1448,1764, + 1764,1764,327,1764,0,20,178,0,1,1989, + 0,1,2000,0 }; }; public final static char baseAction[] = BaseAction.baseAction; @@ -410,89 +406,88 @@ 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,9, - 10,11,0,0,14,15,16,17,18,19, + 10,0,12,13,0,15,16,17,18,19, 20,21,22,23,24,25,26,27,28,0, 0,31,32,33,34,35,36,37,38,39, - 40,41,42,0,44,45,46,0,1,0, - 3,0,5,6,7,8,0,6,7,8, - 55,56,57,58,17,9,10,55,56,57, - 58,24,25,26,27,28,47,48,31,32, + 40,41,42,29,44,45,46,0,1,0, + 3,0,5,6,7,8,0,0,0,0, + 13,2,0,4,59,14,55,56,57,58, + 11,24,25,26,27,28,47,48,31,32, 33,34,35,36,37,38,39,40,41,42, 43,44,45,46,0,1,0,3,51,5, - 6,7,8,0,55,56,57,58,5,13, - 80,17,0,1,2,0,4,0,24,25, - 26,27,28,0,12,31,32,33,34,35, + 6,7,8,0,0,1,2,13,4,0, + 80,55,56,57,58,11,0,60,24,25, + 26,27,28,61,62,31,32,33,34,35, 36,37,38,39,40,41,42,43,44,45, 46,0,1,0,3,51,5,6,7,8, - 0,1,2,50,4,12,0,0,17,0, - 4,2,12,4,49,24,25,26,27,28, - 0,12,31,32,33,34,35,36,37,38, + 0,0,1,2,13,4,47,48,55,56, + 57,58,11,47,48,24,25,26,27,28, + 0,1,31,32,33,34,35,36,37,38, 39,40,41,42,43,44,45,46,0,1, 0,3,51,0,6,7,8,4,0,0, - 0,1,4,3,0,17,0,1,2,53, - 54,5,24,25,26,27,28,13,12,31, + 0,13,4,60,4,0,0,1,2,59, + 5,5,24,25,26,27,28,11,0,31, 32,33,34,35,36,37,38,39,40,41, - 42,0,44,45,46,65,30,6,7,8, - 0,0,0,2,0,4,53,54,17,9, - 10,53,54,12,64,24,25,26,27,28, + 42,0,44,45,46,0,30,6,7,8, + 0,6,7,8,13,0,53,54,43,9, + 10,53,54,53,54,24,25,26,27,28, 61,62,31,32,33,34,35,36,37,38, 39,40,41,42,0,1,2,3,4,5, - 0,1,2,9,10,11,0,1,14,15, + 0,0,64,9,10,5,12,13,0,15, 16,17,18,19,20,21,22,23,0,1, - 2,3,4,5,0,61,62,9,10,11, - 68,69,14,15,16,17,18,19,20,21, - 22,23,0,0,50,0,0,2,2,0, - 5,0,1,2,3,4,5,12,12,59, - 9,10,11,0,13,14,15,16,50,18, - 19,20,21,22,23,30,0,0,1,2, - 3,4,5,59,0,0,9,10,11,5, - 0,14,15,16,43,18,19,20,21,22, - 23,0,1,2,3,4,0,1,65,3, - 9,10,11,29,30,14,15,16,0,18, - 19,20,21,22,23,49,63,50,0,1, - 2,3,4,0,1,0,3,9,10,11, - 0,13,14,15,16,5,18,19,20,21, - 22,23,51,0,1,2,3,4,0,1, - 0,3,9,10,11,0,13,14,15,16, - 5,18,19,20,21,22,23,0,1,2, - 3,4,47,48,0,0,9,10,11,29, - 13,14,15,16,29,18,19,20,21,22, - 23,0,1,2,3,4,66,0,0,0, - 9,10,11,5,13,14,15,16,0,18, - 19,20,21,22,23,0,1,2,3,4, - 12,66,0,0,9,10,11,5,30,14, - 15,16,0,18,19,20,21,22,23,0, - 1,2,3,4,47,48,47,48,9,10, - 11,0,30,14,15,16,0,18,19,20, - 21,22,23,0,1,2,3,4,0,0, - 47,48,9,10,11,0,0,14,15,16, - 4,18,19,20,21,22,23,0,0,2, - 2,4,5,6,7,8,0,0,1,12, - 12,5,14,15,17,0,1,0,3,0, - 0,24,25,26,27,28,60,30,13,9, - 10,0,1,0,3,49,70,71,72,73, - 74,75,76,77,78,79,0,0,0,43, - 52,0,6,7,8,0,49,6,7,8, - 12,0,1,17,3,67,11,0,17,0, - 24,25,26,27,28,24,25,26,27,28, - 0,0,1,64,3,0,6,7,8,0, - 0,6,7,8,13,0,63,17,0,4, - 52,11,17,5,24,25,26,27,28,24, - 25,26,27,28,0,0,0,0,29,0, - 6,7,8,6,7,8,0,12,30,0, - 0,0,6,7,8,6,7,8,0,0, - 0,2,0,0,6,7,8,0,1,2, - 0,12,0,1,2,5,0,0,0,29, - 4,0,0,0,0,0,0,52,0,29, - 13,13,29,0,13,13,60,13,0,60, - 0,0,0,0,0,0,0,0,0,0, - 59,0,0,43,0,0,0,0,0,0, + 2,3,4,5,0,1,2,9,10,64, + 12,13,0,15,16,17,18,19,20,21, + 22,23,0,0,50,2,0,4,0,1, + 50,3,0,11,11,0,1,2,3,4, + 5,0,14,0,9,10,5,12,50,14, + 15,16,17,18,19,20,21,22,23,0, + 1,29,3,59,0,1,2,3,4,5, + 29,30,0,9,10,63,12,5,43,15, + 16,17,18,19,20,21,22,23,0,1, + 2,3,4,0,68,69,0,9,10,0, + 12,5,30,15,16,17,18,19,20,21, + 22,23,0,14,50,0,1,2,3,4, + 0,1,29,3,9,10,30,12,0,14, + 15,16,17,18,19,20,21,22,23,51, + 0,1,2,3,4,0,1,0,3,9, + 10,0,12,0,14,15,16,17,18,19, + 20,21,22,23,0,1,2,3,4,0, + 1,0,3,9,10,0,12,65,14,15, + 16,17,18,19,20,21,22,23,0,1, + 2,3,4,65,47,48,0,9,10,0, + 12,5,49,15,16,17,18,19,20,21, + 22,23,0,1,2,3,4,0,47,48, + 0,9,10,0,12,0,30,15,16,17, + 18,19,20,21,22,23,0,1,2,3, + 4,0,1,0,3,9,10,4,12,0, + 0,15,16,17,18,19,20,21,22,23, + 0,0,2,2,4,5,6,7,8,49, + 0,11,11,13,0,0,1,0,3,0, + 6,7,8,60,24,25,26,27,28,14, + 30,12,49,70,71,72,73,74,75,76, + 77,78,79,0,0,0,0,0,2,6, + 7,8,0,6,7,8,13,11,6,7, + 8,15,16,0,0,13,0,24,25,26, + 27,28,6,7,8,0,24,25,26,27, + 28,6,7,8,0,0,1,0,13,0, + 6,7,8,6,7,8,0,13,52,24, + 25,26,27,28,0,9,10,0,24,25, + 26,27,28,67,0,0,2,0,11,5, + 0,6,7,8,0,11,9,10,0,5, + 2,0,0,0,49,0,5,0,5,11, + 0,1,2,11,30,0,1,2,0,1, + 0,3,63,29,0,0,0,0,4,52, + 4,0,12,0,29,0,29,0,11,14, + 0,0,0,0,0,14,43,14,0,14, + 0,14,0,0,52,0,0,0,0,0, + 66,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,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; @@ -500,84 +495,82 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface TermAction { public final static char termAction[] = {0, - 1789,1800,1572,1801,1400,59,2002,2003,2004,1158, - 1103,1486,61,1,1517,1356,534,1951,1802,1803, - 1804,1805,548,379,1952,1950,2005,1953,1949,54, - 1789,1956,1961,1960,1958,1959,1957,1962,1963,1955, - 1964,1965,1966,252,1538,1539,467,1789,1,60, - 1,1789,190,1,1,1,51,2002,2003,2004, - 1386,1375,1364,1328,1,1418,1409,1386,1375,1364, - 1328,1,1,1,1,1,1188,1339,1,1, + 1764,1775,1553,1776,1499,1764,1977,1978,1979,1491, + 1380,59,1507,1926,88,1019,672,577,1777,1778, + 1779,1780,1027,482,1927,1925,1980,1928,1924,54, + 1764,1931,1936,1935,1933,1934,1932,1937,1938,1930, + 1939,1940,1941,638,1280,596,380,1764,1,1, + 1,1764,190,1,1,1,61,210,252,264, + 1,1421,62,1,916,2773,1390,1360,544,469, + 348,1,1,1,1,1,1401,1411,1,1, 1,1,1,1,1,1,1,1,1,1, - 190,1,1,1,1789,1,1789,1,1984,189, - 1,1,1,1789,1386,1375,1364,1328,1793,470, - 1779,1,261,2014,1216,1,1,181,1,1, - 1,1,1,182,509,1,1,1,1,1, + 190,1,1,1,1764,1,181,1,1959,189, + 1,1,1,60,261,1989,1150,1,1,58, + 1754,1390,1360,544,469,348,57,999,1,1, + 1,1,1,1330,1317,1,1,1,1,1, 1,1,1,1,1,1,1,189,1,1, - 1,1789,1,270,1,1984,190,1,1,1, - 267,2014,1216,1792,252,509,48,284,1,264, - 1550,1427,509,1,2046,1,1,1,1,1, - 70,509,1,1,1,1,1,1,1,1, - 1,1,1,1,190,1,1,1,1789,1800, - 68,1801,1984,50,2002,2003,2004,1550,49,62, - 1789,1800,1550,1801,1789,1951,1,1783,1216,1542, - 1528,1795,1952,1950,2005,1953,1949,1576,509,1956, - 1961,1960,1958,1959,1957,1962,1963,1955,1964,1965, - 1966,128,1538,1539,467,436,1794,2002,2003,2004, - 53,267,72,1427,63,252,1542,1528,1951,1418, - 1409,1542,1528,509,599,1952,1950,2005,1953,1949, - 1301,1199,1956,1961,1960,1958,1959,1957,1962,1963, - 1955,1964,1965,1966,1,1800,1572,1801,454,1793, - 1,2014,1397,1158,1103,1486,1789,2026,1517,1356, - 534,617,1802,1803,1804,1805,548,379,1789,1800, - 1572,1801,1454,1793,1789,1301,1199,1158,1103,1486, - 346,1690,1517,1356,534,1035,1802,1803,1804,1805, - 548,379,1789,71,1792,1,269,1427,1261,1789, - 1795,1,1800,1572,1801,1400,29,509,509,1131, - 1158,1103,1486,66,2833,1517,1356,534,1792,1802, - 1803,1804,1805,548,379,1794,1,1789,1800,1572, - 1801,1400,1793,993,1789,1789,1158,1103,1486,1795, - 1789,1517,1356,534,29,1802,1803,1804,1805,548, - 379,1789,1,1,1,1,184,2844,436,2844, - 1,1,1,1495,1794,1,1,1,1789,1, - 1,1,1,1,1,2045,698,1792,1789,1800, - 1572,1801,1400,183,2845,58,2845,1158,1103,1486, - 1,470,1517,1356,534,1799,1802,1803,1804,1805, - 548,379,2102,1,1800,1572,1801,1400,205,2847, - 88,2847,1158,1103,1486,1789,2833,1517,1356,534, - 1799,1802,1803,1804,1805,548,379,1789,1800,1572, - 1801,1400,1188,1339,1789,1789,1158,1103,1486,741, - 2833,1517,1356,534,1316,1802,1803,1804,1805,548, - 379,1,1800,1572,1801,1400,1798,57,1,56, - 1158,1103,1486,90,2833,1517,1356,534,219,1802, - 1803,1804,1805,548,379,1789,1800,1572,1801,1400, - 509,1798,1789,55,1158,1103,1486,1795,90,1517, - 1356,534,1789,1802,1803,1804,1805,548,379,1789, - 1800,1588,1801,1400,1188,1339,1188,1339,1158,1103, - 1486,1789,1794,1517,1356,534,42,1802,1803,1804, - 1805,548,379,1,1800,1572,1801,1400,1789,1789, - 1188,1339,1158,1103,1486,1789,1,1517,1356,534, - 252,1802,1803,1804,1805,548,379,20,32,1780, - 1496,1780,1780,178,178,178,1789,1,1786,1780, - 1683,1797,1815,1816,178,1789,1800,1789,1801,69, - 52,178,178,178,178,178,972,1780,471,1418, - 1409,207,1800,67,1801,2046,951,930,909,888, - 867,825,846,804,783,762,129,1789,1789,1796, - 475,130,2002,2003,2004,64,2046,2002,2003,2004, - 1056,206,479,1951,479,472,668,1789,1951,1789, - 1952,1950,2005,1953,1949,1952,1950,2005,1953,1949, - 131,1789,1800,599,1801,132,2002,2003,2004,255, - 65,2002,2003,2004,1277,1789,698,1951,1,1217, - 731,668,1951,1795,1952,1950,2005,1953,1949,1952, - 1950,2005,1953,1949,247,290,1789,248,1581,210, - 2002,2003,2004,1,1,1,249,1076,1794,250, - 30,200,1,1,1,2002,2003,2004,251,221, - 30,1428,1789,206,2002,2003,2004,1,2014,1397, - 283,509,252,2014,1397,1429,1789,1789,1789,488, - 1571,188,188,1789,188,1789,1789,733,1789,1818, - 1634,1692,2744,1789,184,183,557,205,1789,1111, - 1789,1789,1789,1789,1789,1789,1789,1789,1789,1789, - 1166,1789,1789,1429 + 1,1764,1,1764,1,1959,190,1,1,1, + 200,267,1989,1150,1,252,1401,1411,1390,1360, + 544,469,348,1401,1411,1,1,1,1,1, + 1764,2001,1,1,1,1,1,1,1,1, + 1,1,1,1,190,1,1,1,1764,1775, + 182,1776,1959,48,1977,1978,1979,1542,50,63, + 49,1926,1542,491,1542,1764,1,1758,1150,1091, + 1772,1770,1927,1925,1980,1928,1924,348,68,1931, + 1936,1935,1933,1934,1932,1937,1938,1930,1939,1940, + 1941,128,1280,596,380,1764,1769,1977,1978,1979, + 51,1977,1978,1979,1926,69,1527,1516,1771,1307, + 1139,1527,1516,1527,1516,1927,1925,1980,1928,1924, + 1330,1317,1931,1936,1935,1933,1934,1932,1937,1938, + 1930,1939,1940,1941,1,1775,1553,1776,1433,1768, + 1764,285,1217,1491,1380,1768,1507,556,1764,1019, + 672,577,1777,1778,1779,1780,1027,482,1764,1775, + 1553,1776,1466,1768,1,1989,1167,1491,1380,1217, + 1507,958,66,1019,672,577,1777,1778,1779,1780, + 1027,482,270,267,1767,1421,72,252,1764,1775, + 1767,1776,255,348,348,1,1775,1553,1776,1499, + 29,1764,1066,1764,1491,1380,1770,1507,1767,2773, + 1019,672,577,1777,1778,1779,1780,1027,482,1764, + 1775,1681,1776,1055,1764,1775,1553,1776,1499,1768, + 1459,1769,1,1491,1380,1244,1507,90,29,1019, + 672,577,1777,1778,1779,1780,1027,482,1764,1, + 1,1,1,30,1111,1673,1764,1,1,1764, + 1,1770,90,1,1,1,1,1,1,1, + 1,1,70,621,1767,1764,1775,1553,1776,1499, + 184,2803,416,2803,1491,1380,1769,1507,71,2773, + 1019,672,577,1777,1778,1779,1780,1027,482,2079, + 1,1775,1553,1776,1499,183,2805,56,2805,1491, + 1380,1764,1507,1,2773,1019,672,577,1777,1778, + 1779,1780,1027,482,1764,1775,1553,1776,1499,205, + 2807,55,2807,1491,1380,1764,1507,610,2773,1019, + 672,577,1777,1778,1779,1780,1027,482,1764,1775, + 1553,1776,1499,610,1401,1411,1,1491,1380,1764, + 1507,1770,2021,1019,672,577,1777,1778,1779,1780, + 1027,482,1764,1775,1560,1776,1499,1764,1401,1411, + 1,1491,1380,42,1507,1764,1769,1019,672,577, + 1777,1778,1779,1780,1027,482,1,1775,1553,1776, + 1499,207,1775,1,1776,1491,1380,252,1507,1764, + 1764,1019,672,577,1777,1778,1779,1780,1027,482, + 20,269,1755,1666,1755,1755,178,178,178,2020, + 1764,1755,348,178,247,1764,1775,1764,1776,64, + 1977,1978,1979,895,178,178,178,178,178,1259, + 1755,448,2021,874,853,832,811,790,748,769, + 727,706,685,129,1764,1764,32,248,1195,1977, + 1978,1979,130,1,1,1,1926,1561,1977,1978, + 1979,1790,1791,1764,1764,1926,249,1927,1925,1980, + 1928,1924,1,1,1,131,1927,1925,1980,1928, + 1924,1977,1978,1979,132,1,1761,250,1926,67, + 1977,1978,1979,1977,1978,1979,53,1926,463,1927, + 1925,1980,1928,1924,1764,1307,1139,1764,1927,1925, + 1980,1928,1924,373,1,251,1421,52,979,1770, + 1764,1977,1978,1979,1764,348,1307,1139,221,1774, + 1667,1,291,284,2021,30,1774,206,375,348, + 1,1989,1167,1035,1769,252,1989,1167,206,1171, + 65,1171,1244,1341,1764,1764,1764,219,1169,1131, + 1429,1764,448,188,1793,188,2788,188,348,1345, + 1764,1764,1764,1764,1764,1430,375,184,1764,183, + 1764,205,1764,1764,1353,1764,1764,1764,1764,1764, + 1773,1764,1764,1764,1764,1764,1764,1773 }; }; public final static char termAction[] = TermAction.termAction; @@ -585,28 +578,27 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface Asb { public final static char asb[] = {0, - 199,1,106,41,106,106,106,106,106,106, - 106,106,106,3,340,23,20,27,25,33, - 31,35,34,37,36,9,106,340,253,253, - 292,106,189,189,286,340,106,106,106,106, - 106,106,106,106,106,106,106,106,106,106, - 106,106,106,106,106,106,106,106,106,106, - 106,106,106,106,106,106,189,189,45,82, - 290,100,223,187,186,261,273,96,273,96, - 96,273,96,273,354,143,20,20,25,25, - 25,25,23,23,31,27,27,34,33,197, - 36,35,98,80,286,290,123,45,377,104, - 189,311,226,96,253,253,96,253,106,80, - 290,281,377,45,103,100,189,284,354,188, - 228,98,48,98,217,219,390,75,98,281, - 281,106,106,45,104,223,382,381,290,228, - 189,98,48,217,217,75,78,259,253,106, - 389,75,80,281,377,45,45,189,311,226, - 284,48,75,192,48,217,219,256,219,82, - 45,253,106,80,377,281,228,48,194,219, - 75,106,253,45,219,281,189,188,75,385, - 106,384,119,290,75,75,254,194,106,119, - 219 + 375,1,54,41,54,54,54,54,54,54, + 54,54,54,3,334,23,20,27,25,33, + 31,35,34,37,36,9,54,334,258,258, + 203,54,170,170,286,334,54,54,54,54, + 54,54,54,54,54,54,54,54,54,54, + 54,54,54,54,54,54,54,54,54,54, + 54,54,54,54,54,54,170,170,45,82, + 290,48,228,168,167,261,273,96,273,96, + 96,273,96,273,348,124,20,20,25,25, + 25,25,23,23,31,27,27,34,33,76, + 36,35,98,200,98,286,290,104,45,371, + 52,170,305,231,96,258,258,96,258,54, + 200,80,290,281,371,45,51,48,170,284, + 348,169,233,98,173,98,222,80,281,281, + 54,54,45,52,228,298,297,290,233,170, + 98,173,222,222,224,101,281,371,45,45, + 170,305,231,284,173,200,71,173,222,224, + 292,224,200,78,295,258,54,100,371,281, + 233,173,73,224,200,54,258,3,82,45, + 258,54,281,170,169,200,301,54,300,67, + 290,200,45,259,73,54,67 }; }; public final static char asb[] = Asb.asb; @@ -614,46 +606,46 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface Asr { public final static byte asr[] = {0, - 80,0,12,2,52,67,14,15,60,70, + 80,0,11,2,52,67,15,16,60,70, 71,72,73,74,76,75,77,78,79,4, 53,54,9,10,48,47,55,56,57,58, - 61,62,11,63,64,65,43,66,68,69, - 59,30,80,29,50,5,0,24,31,6, - 32,44,25,33,26,34,35,27,7,36, - 37,17,45,28,46,38,39,8,40,41, - 42,1,3,51,5,43,0,5,43,12, - 52,14,15,11,4,9,10,22,23,16, - 2,18,19,20,21,1,3,13,0,6, - 7,8,17,50,5,18,19,20,21,3, - 14,15,11,9,10,22,23,16,4,2, - 1,0,6,7,8,2,18,19,20,21, - 1,3,14,15,11,4,9,10,22,23, - 16,0,7,17,28,8,27,26,25,6, - 24,52,67,14,15,11,9,10,53,54, - 47,48,55,56,57,58,61,62,63,64, - 65,68,69,60,70,71,72,73,74,75, - 76,77,78,79,4,2,12,29,30,5, - 0,66,5,4,1,2,59,0,16,18, - 19,20,21,1,3,2,14,15,11,4, - 9,10,22,23,51,0,1,3,5,43, - 29,0,4,2,12,30,5,24,31,6, - 32,44,25,33,26,34,35,27,7,36, - 37,17,45,28,46,38,39,8,40,41, - 42,49,3,1,0,5,29,43,60,0, + 61,62,12,63,64,65,43,66,68,69, + 59,30,80,29,50,5,0,6,7,8, + 13,50,5,18,19,20,21,3,15,16, + 12,9,10,22,23,17,4,2,1,0, + 66,5,4,1,2,59,0,5,43,11, + 52,15,16,12,4,9,10,22,23,17, + 2,18,19,20,21,1,3,14,0,60, + 11,52,0,6,7,8,2,18,19,20, + 21,1,3,15,16,12,4,9,10,22, + 23,17,0,7,13,28,8,27,26,25, + 6,24,52,67,15,16,12,9,10,53, + 54,47,48,55,56,57,58,61,62,63, + 64,65,68,69,60,70,71,72,73,74, + 75,76,77,78,79,4,2,11,29,30, + 5,0,24,31,6,32,44,25,33,26, + 34,35,27,7,36,37,13,45,28,46, + 38,39,8,40,41,42,1,3,51,5, + 43,0,5,30,17,18,19,20,21,1, + 3,2,15,16,12,4,9,10,22,23, + 0,1,3,5,43,29,0,4,2,11, + 30,5,24,31,6,32,44,25,33,26, + 34,35,27,7,36,37,13,45,28,46, + 38,39,8,40,41,42,49,3,1,0, 39,31,36,34,35,33,32,37,38,40, - 41,42,59,66,28,25,17,24,27,26, - 6,7,8,29,1,5,30,2,12,4, - 0,5,30,16,18,19,20,21,1,3, - 2,14,15,11,4,9,10,22,23,0, - 4,24,31,6,32,44,25,33,26,34, - 35,27,7,36,37,17,45,28,46,38, - 39,8,40,41,42,1,3,49,0,16, - 18,19,20,21,2,14,15,11,4,9, - 10,22,23,1,3,44,45,46,39,31, - 36,34,35,33,32,37,38,40,41,42, - 28,25,17,24,27,26,6,7,8,0, - 2,30,12,59,66,5,29,0,60,12, - 52,0 + 41,42,59,66,28,25,13,24,27,26, + 6,7,8,29,1,5,30,2,11,4, + 0,5,29,43,60,0,2,30,11,59, + 66,5,29,0,4,24,31,6,32,44, + 25,33,26,34,35,27,7,36,37,13, + 45,28,46,38,39,8,40,41,42,1, + 3,49,0,17,18,19,20,21,2,15, + 16,12,4,9,10,22,23,1,3,44, + 45,46,39,31,36,34,35,33,32,37, + 38,40,41,42,28,25,13,24,27,26, + 6,7,8,0,17,18,19,20,21,1, + 3,2,15,16,12,4,9,10,22,23, + 51,0 }; }; public final static byte asr[] = Asr.asr; @@ -661,28 +653,27 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface Nasb { public final static byte nasb[] = {0, - 61,38,20,38,20,20,20,20,20,20, - 20,20,20,38,96,38,38,38,38,38, - 38,38,38,38,38,38,20,96,15,15, - 85,97,71,71,74,1,20,20,20,20, - 20,20,20,20,20,20,20,20,20,20, - 20,20,97,20,20,20,20,20,20,20, - 20,20,20,20,20,20,71,71,24,20, - 80,22,73,11,11,44,45,50,45,89, - 89,45,88,45,39,38,38,38,38,38, - 38,38,38,38,38,38,38,38,38,38, - 38,38,38,59,108,38,28,24,83,23, - 71,91,70,7,7,7,7,7,20,18, - 38,68,83,24,23,78,71,55,31,38, - 93,26,59,38,59,52,13,59,38,68, - 59,20,20,24,23,54,11,11,80,93, - 71,38,112,59,7,9,17,38,7,20, - 100,9,59,59,83,24,24,71,91,70, - 64,59,9,47,116,7,52,38,38,19, - 24,7,20,18,83,78,102,112,57,52, - 9,20,7,24,52,78,71,71,9,48, - 20,38,57,80,9,9,38,57,20,66, - 106 + 118,41,23,41,23,23,23,23,23,23, + 23,23,23,41,98,41,41,41,41,41, + 41,41,41,41,41,41,23,98,18,18, + 63,99,122,122,89,1,23,23,23,23, + 23,23,23,23,23,23,23,23,23,23, + 23,23,99,23,23,23,23,23,23,23, + 23,23,23,23,23,23,122,122,13,50, + 76,11,88,44,44,71,72,29,72,86, + 86,72,85,72,66,41,41,41,41,41, + 41,41,41,41,41,41,41,41,41,41, + 41,41,51,59,41,102,41,31,13,61, + 12,122,93,121,7,7,7,7,7,23, + 74,59,41,83,61,13,12,27,122,55, + 34,41,95,46,59,41,59,21,83,59, + 23,23,13,12,54,44,44,76,95,122, + 41,106,59,7,48,9,59,61,13,13, + 122,93,121,79,59,74,15,114,7,48, + 41,41,74,20,41,7,23,25,61,27, + 110,106,57,48,74,23,7,42,22,13, + 7,23,27,122,122,74,16,23,41,57, + 76,74,13,41,57,23,81 }; }; public final static byte nasb[] = Nasb.nasb; @@ -690,18 +681,19 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface Nasr { public final static char nasr[] = {0, - 79,77,76,64,75,74,1,0,32,0, - 26,0,97,0,70,0,68,11,59,5, - 0,11,5,24,0,90,0,5,11,0, - 79,78,77,76,64,75,74,0,64,60, - 61,62,63,52,28,0,11,69,0,89, - 0,51,0,23,43,42,36,34,11,0, - 11,87,0,43,42,36,34,27,0,11, - 23,0,23,42,43,11,0,21,0,27, - 49,0,56,0,11,88,0,92,65,0, - 27,49,11,25,0,48,11,45,0,99, - 0,93,11,25,0,95,0,43,42,27, - 0,81,11,48,0,11,48,66,0 + 78,76,75,65,74,73,1,0,98,0, + 11,5,24,0,11,69,0,70,0,86, + 11,52,5,0,100,0,21,0,89,0, + 5,11,0,78,77,76,75,65,74,73, + 0,96,0,26,0,90,0,59,0,5, + 52,46,0,23,43,42,35,33,11,0, + 56,0,11,88,0,65,60,61,62,63, + 53,28,0,39,0,27,50,0,43,42, + 35,33,27,0,92,66,0,23,42,43, + 11,0,27,50,11,25,0,49,11,45, + 0,43,42,27,0,80,11,49,0,93, + 11,25,0,11,49,67,0,11,87,0, + 11,23,0 }; }; public final static char nasr[] = Nasr.nasr; @@ -710,7 +702,7 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface TerminalIndex { public final static char terminalIndex[] = {0, 85,2,86,9,87,48,64,76,10,11, - 8,1,3,6,7,68,69,81,82,83, + 1,8,69,3,6,7,68,81,82,83, 84,12,13,44,55,60,63,72,42,90, 47,52,56,61,62,66,67,74,75,78, 79,80,91,54,70,73,16,17,30,89, @@ -729,16 +721,16 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab 100,0,0,0,102,106,107,108,109,110, 0,111,112,113,114,115,116,117,0,118, 128,0,97,96,121,149,0,127,0,0, - 0,98,145,147,0,148,0,0,0,0, - 158,159,160,0,101,120,136,140,146,155, - 0,130,135,0,150,153,154,157,0,131, - 132,133,134,137,0,139,144,161,99,103, - 104,105,119,122,123,124,125,126,129,0, - 138,142,0,0,143,152,95,0,0,0, - 141,0,151,156,0,162,163,0,164,0, + 0,145,147,0,148,0,0,0,98,0, + 158,159,160,0,101,105,120,136,140,146, + 155,0,130,0,150,153,154,157,0,131, + 132,133,134,135,137,0,139,144,99,103, + 104,119,122,123,124,125,126,129,0,138, + 142,0,0,143,152,162,95,0,0,0, + 141,0,151,156,161,0,163,164,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 + 0,0,0,0,0,0 }; }; public final static char nonterminalIndex[] = NonterminalIndex.nonterminalIndex; @@ -746,10 +738,10 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface ScopePrefix { public final static char scopePrefix[] = { - 82,113,158,92,35,41,121,12,136,21, - 51,69,28,47,103,173,177,145,1,1, - 32,56,79,181,6,107,152,127,152,99, - 59,59,59 + 82,113,92,35,41,121,12,136,21,51, + 69,28,47,103,161,165,145,1,1,32, + 56,79,169,6,107,152,152,127,99,59, + 59,59 }; }; public final static char scopePrefix[] = ScopePrefix.scopePrefix; @@ -757,10 +749,10 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface ScopeSuffix { public final static char scopeSuffix[] = { - 90,90,90,90,4,4,90,18,142,26, - 4,26,26,4,101,26,4,149,4,4, - 26,4,26,26,9,110,155,130,166,101, - 66,61,74 + 90,90,90,4,4,90,18,142,26,4, + 26,26,4,101,26,4,149,4,4,26, + 4,26,26,9,110,155,158,130,101,66, + 61,74 }; }; public final static char scopeSuffix[] = ScopeSuffix.scopeSuffix; @@ -768,10 +760,10 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface ScopeLhs { public final static char scopeLhs[] = { - 62,60,5,62,26,26,60,53,107,44, - 26,39,44,26,66,5,5,19,99,98, - 42,26,36,3,68,66,7,108,5,66, - 39,37,39 + 62,60,62,26,26,60,46,108,44,26, + 38,44,26,67,5,5,19,100,99,42, + 26,35,3,86,67,7,5,109,67,38, + 36,38 }; }; public final static char scopeLhs[] = ScopeLhs.scopeLhs; @@ -779,10 +771,10 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface ScopeLa { public final static byte scopeLa[] = { - 43,43,43,43,50,50,43,43,86,30, - 50,30,30,50,66,30,50,59,50,50, - 30,50,30,30,60,1,30,92,30,66, - 2,2,2 + 43,43,43,50,50,43,43,86,30,50, + 30,30,50,66,30,50,59,50,50,30, + 50,30,30,60,1,30,30,92,66,2, + 2,2 }; }; public final static byte scopeLa[] = ScopeLa.scopeLa; @@ -790,10 +782,10 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface ScopeStateSet { public final static byte scopeStateSet[] = { - 17,17,32,17,21,21,17,87,-1,25, - 21,9,25,21,3,32,32,62,1,7, - 25,21,9,32,88,3,35,-1,32,3, - 9,9,9 + 23,23,23,27,27,23,17,-1,31,27, + 9,31,27,5,38,38,68,1,3,31, + 27,9,38,94,5,41,38,-1,5,9, + 9,9 }; }; public final static byte scopeStateSet[] = ScopeStateSet.scopeStateSet; @@ -801,25 +793,24 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface ScopeRhs { public final static char scopeRhs[] = {0, - 139,12,0,96,0,189,104,0,31,135, - 0,144,165,104,13,152,0,98,0,0, + 140,11,0,96,0,190,104,0,31,135, + 0,152,188,104,14,145,0,98,0,0, 148,104,2,135,0,97,0,148,104,2, - 0,151,2,0,113,17,179,104,12,0, - 113,179,104,17,12,0,113,17,12,0, - 113,179,104,12,0,113,12,0,129,0, + 0,151,2,0,113,13,178,104,11,0, + 113,178,104,13,11,0,113,13,11,0, + 113,178,104,11,0,113,11,0,128,0, 2,0,151,97,0,2,97,0,148,104, - 2,129,0,2,0,150,97,0,140,2, - 0,144,177,104,13,94,185,44,0,98, - 0,144,177,104,13,185,44,0,141,0, - 99,0,184,104,141,0,104,141,0,141, - 99,0,173,104,13,183,94,182,157,0, - 173,104,13,182,157,0,196,85,0,77, - 2,101,97,99,0,196,116,138,2,89, + 2,128,0,2,0,150,97,0,141,2, + 0,152,176,104,14,94,185,44,0,98, + 0,152,176,104,14,185,44,0,142,0, + 99,0,184,104,142,0,104,142,0,141, + 99,0,172,104,14,183,94,182,158,0, + 172,104,14,182,158,0,197,85,0,77, + 2,101,97,99,0,197,116,138,2,89, 0,53,0,0,138,69,111,0,29,118, - 0,164,2,0,97,107,0,144,165,104, - 13,116,164,2,0,97,3,0,105,0, - 98,0,181,2,98,0,138,12,98,0, - 138,2,0 + 0,164,2,0,97,107,0,97,105,0, + 181,2,98,0,138,11,98,0,138,2, + 0 }; }; public final static char scopeRhs[] = ScopeRhs.scopeRhs; @@ -827,16 +818,16 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface ScopeState { public final static char scopeState[] = {0, - 1614,0,1685,1686,1651,0,367,0,1477,1316, - 1397,1232,1256,1216,1187,0,661,666,314,0, - 1585,1482,639,339,1256,1216,1187,1637,1427,1483, - 0,1517,1356,534,1454,454,1558,436,346,698, - 599,1301,1199,668,1339,1188,1386,1375,1364,1328, - 1550,1542,1528,1418,1409,1486,1400,1158,1103,548, - 379,1166,1131,1111,1076,1056,1035,1014,640,993, - 617,509,972,951,930,909,888,867,846,825, - 804,783,762,314,741,578,557,415,488,394, - 0 + 442,0,340,0,1650,1660,1644,0,1448,1341, + 1167,1268,1255,1150,1122,0,491,416,395,1537, + 1083,0,606,1212,316,0,1461,1181,1136,670, + 1255,1150,1122,1610,1421,1515,0,1019,672,577, + 1466,1433,1083,610,1111,1244,1217,1330,1317,448, + 1411,1401,1390,1360,544,469,1542,1527,1516,1307, + 1139,1507,1499,1491,1380,1027,482,1091,1055,1035, + 491,999,979,958,937,585,916,556,348,895, + 874,853,832,811,790,769,748,727,706,685, + 316,638,512,416,395,0 }; }; public final static char scopeState[] = ScopeState.scopeState; @@ -844,28 +835,27 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface InSymb { public final static char inSymb[] = {0, - 0,180,104,166,16,23,22,10,9,4, - 11,15,14,98,2,102,101,105,103,107, + 0,180,104,165,17,23,22,10,9,4, + 12,16,15,98,2,102,101,105,103,107, 106,109,108,111,110,99,29,2,67,52, - 2,12,164,138,141,104,10,9,54,53, - 4,58,57,56,55,47,48,11,62,61, + 2,11,164,138,142,104,10,9,54,53, + 4,58,57,56,55,47,48,12,62,61, 64,63,69,68,65,79,78,77,75,76, 74,73,72,71,70,60,164,181,138,116, - 104,12,2,136,135,167,168,157,169,46, - 45,170,44,171,172,94,101,101,103,103, + 104,11,2,136,135,166,167,158,168,46, + 45,169,44,170,171,94,101,101,103,103, 103,103,102,102,106,105,105,108,107,138, - 110,109,116,13,142,120,17,113,104,4, - 151,104,2,182,158,158,185,158,59,104, - 120,4,104,113,179,149,148,118,104,150, - 104,94,13,94,13,165,104,13,152,4, - 120,179,17,113,4,2,127,129,104,29, - 148,183,104,13,104,144,29,189,52,12, - 190,104,13,120,104,113,113,140,104,2, - 142,13,173,141,174,104,177,94,178,60, - 139,52,12,104,104,149,104,104,104,177, - 144,60,29,139,165,149,148,186,173,184, - 59,140,2,104,144,144,29,29,59,142, - 125 + 110,109,116,14,145,143,120,13,113,104, + 4,151,104,2,182,159,159,185,159,59, + 104,14,120,4,104,113,178,149,148,118, + 104,150,104,94,14,94,14,104,4,120, + 178,13,113,4,2,126,128,104,29,148, + 183,104,14,104,188,104,120,104,113,113, + 141,104,2,143,14,172,142,173,104,176, + 94,177,152,29,190,52,11,191,104,149, + 104,104,104,176,152,60,29,132,60,140, + 52,11,149,148,186,172,184,59,141,2, + 104,152,140,29,29,59,143 }; }; public final static char inSymb[] = InSymb.inSymb; @@ -1039,6 +1029,7 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab "or", "array_direct_abstract_declarat" + "or", + "initializer_seq", "designated_initializer", "designation", "designator_list", @@ -1050,8 +1041,8 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public final static int ERROR_SYMBOL = 51, - SCOPE_UBOUND = 32, - SCOPE_SIZE = 33, + SCOPE_UBOUND = 31, + SCOPE_SIZE = 32, MAX_NAME_LENGTH = 38; public final int getErrorSymbol() { return ERROR_SYMBOL; } @@ -1060,20 +1051,20 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public final int getMaxNameLength() { return MAX_NAME_LENGTH; } public final static int - NUM_STATES = 211, + NUM_STATES = 207, NT_OFFSET = 93, - LA_STATE_OFFSET = 2102, + LA_STATE_OFFSET = 2079, MAX_LA = 2, - NUM_RULES = 313, - NUM_NONTERMINALS = 124, - NUM_SYMBOLS = 217, + NUM_RULES = 315, + NUM_NONTERMINALS = 126, + NUM_SYMBOLS = 219, SEGMENT_SIZE = 8192, - START_STATE = 1235, + START_STATE = 1665, IDENTIFIER_SYMBOL = 0, EOFT_SYMBOL = 80, EOLT_SYMBOL = 80, - ACCEPT_ACTION = 1779, - ERROR_ACTION = 1789; + ACCEPT_ACTION = 1754, + ERROR_ACTION = 1764; 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 5ea1aaa65e2..575153e65d0 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 @@ -39,8 +39,8 @@ public interface C99SizeofExpressionParsersym { TK_return = 90, TK_short = 36, TK_signed = 37, - TK_sizeof = 16, - TK_static = 17, + TK_sizeof = 17, + TK_static = 13, TK_struct = 45, TK_switch = 91, TK_typedef = 28, @@ -60,14 +60,14 @@ public interface C99SizeofExpressionParsersym { TK_Completion = 3, TK_EndOfCompletion = 5, TK_Invalid = 93, - TK_LeftBracket = 12, + TK_LeftBracket = 11, TK_LeftParen = 2, - TK_LeftBrace = 13, + TK_LeftBrace = 14, TK_Dot = 52, TK_Arrow = 67, - TK_PlusPlus = 14, - TK_MinusMinus = 15, - TK_And = 11, + TK_PlusPlus = 15, + TK_MinusMinus = 16, + TK_And = 12, TK_Star = 4, TK_Plus = 9, TK_Minus = 10, @@ -121,13 +121,13 @@ public interface C99SizeofExpressionParsersym { "volatile", "Plus", "Minus", - "And", "LeftBracket", + "And", + "static", "LeftBrace", "PlusPlus", "MinusMinus", "sizeof", - "static", "integer", "floating", "charconst", diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCParser.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCParser.java index f0083ce5744..8c9d4fbbddd 100644 --- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCParser.java +++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCParser.java @@ -1228,12 +1228,6 @@ private GNUBuildASTParserAction gnuAction; case 306: { action. consumeDeclarationProblem(); break; } - // - // Rule 309: function_definition ::= declaration_specifiers function_declarator function_body - // - case 309: { action. consumeFunctionDefinition(true); break; - } - // // Rule 310: function_definition ::= function_declarator function_body // @@ -1247,123 +1241,135 @@ private GNUBuildASTParserAction gnuAction; } // - // Rule 312: function_body ::= { } + // Rule 312: normal_function_definition ::= declaration_specifiers function_declarator function_body // - case 312: { action. consumeStatementCompoundStatement(false); break; + case 312: { action. consumeFunctionDefinition(true); break; } // - // Rule 313: function_body ::= { block_item_list } + // Rule 313: function_body ::= { } // - case 313: { action. consumeStatementCompoundStatement(true); break; + case 313: { action. consumeStatementCompoundStatement(false); break; } // - // Rule 330: attribute_parameter ::= assignment_expression + // Rule 314: function_body ::= { block_item_list } // - case 330: { action. consumeIgnore(); break; + case 314: { action. consumeStatementCompoundStatement(true); break; + } + + // + // Rule 331: attribute_parameter ::= assignment_expression + // + case 331: { action. consumeIgnore(); break; } // - // Rule 341: extended_asm_declaration ::= asm volatile_opt ( extended_asm_param_seq ) ; + // Rule 342: extended_asm_declaration ::= asm volatile_opt ( extended_asm_param_seq ) ; // - case 341: { gnuAction.consumeDeclarationASM(); break; + case 342: { gnuAction.consumeDeclarationASM(); break; } // - // Rule 352: unary_expression ::= __alignof__ unary_expression + // Rule 353: unary_expression ::= __alignof__ unary_expression // - case 352: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_alignOf); break; + case 353: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_alignOf); break; } // - // Rule 353: unary_expression ::= __alignof__ ( type_id ) + // Rule 354: unary_expression ::= __alignof__ ( type_id ) // - case 353: { action. consumeExpressionTypeId(IASTTypeIdExpression.op_alignof); break; + case 354: { action. consumeExpressionTypeId(IASTTypeIdExpression.op_alignof); break; } // - // Rule 354: unary_expression ::= typeof unary_expression + // Rule 355: unary_expression ::= typeof unary_expression // - case 354: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_typeof); break; + case 355: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_typeof); break; } // - // Rule 355: unary_expression ::= typeof ( type_id ) + // Rule 356: unary_expression ::= typeof ( type_id ) // - case 355: { action. consumeExpressionTypeId(IASTTypeIdExpression.op_typeof); break; + case 356: { action. consumeExpressionTypeId(IASTTypeIdExpression.op_typeof); break; } // - // Rule 356: relational_expression ::= relational_expression >? shift_expression + // Rule 357: relational_expression ::= relational_expression >? shift_expression // - case 356: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_max); break; + case 357: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_max); break; } // - // Rule 357: relational_expression ::= relational_expression : assignment_expression + // Rule 359: conditional_expression ::= logical_or_expression ? : assignment_expression // - case 358: { action. consumeExpressionConditional(); break; + case 359: { action. consumeExpressionConditional(); break; } // - // Rule 359: primary_expression ::= ( compound_statement ) + // Rule 360: primary_expression ::= ( compound_statement ) // - case 359: { gnuAction.consumeCompoundStatementExpression(); break; + case 360: { gnuAction.consumeCompoundStatementExpression(); break; } // - // Rule 360: labeled_statement ::= case case_range_expression : statement + // Rule 361: labeled_statement ::= case case_range_expression : statement // - case 360: { action. consumeStatementCase(); break; + case 361: { action. consumeStatementCase(); break; } // - // Rule 361: case_range_expression ::= constant_expression ... constant_expression + // Rule 362: case_range_expression ::= constant_expression ... constant_expression // - case 361: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_assign); break; + case 362: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_assign); break; } // - // Rule 365: typeof_type_specifier ::= typeof unary_expression + // Rule 366: typeof_type_specifier ::= typeof unary_expression // - case 365: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_typeof); break; + case 366: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_typeof); break; } // - // Rule 366: typeof_type_specifier ::= typeof ( type_id ) + // Rule 367: typeof_type_specifier ::= typeof ( type_id ) // - case 366: { action. consumeExpressionTypeId(IASTTypeIdExpression.op_typeof); break; + case 367: { action. consumeExpressionTypeId(IASTTypeIdExpression.op_typeof); break; } // - // Rule 367: declaration_specifiers ::= typeof_declaration_specifiers + // Rule 368: declaration_specifiers ::= typeof_declaration_specifiers // - case 367: { action. consumeDeclarationSpecifiersTypeof(); break; + case 368: { action. consumeDeclarationSpecifiersTypeof(); break; } // - // Rule 383: field_name_designator ::= identifier_token : + // Rule 384: field_name_designator ::= identifier_token : // - case 383: { action. consumeDesignatorFieldGCC(); break; + case 384: { action. consumeDesignatorFieldGCC(); break; } // - // Rule 384: array_range_designator ::= [ constant_expression ... constant_expression ] + // Rule 385: array_range_designator ::= [ constant_expression ... constant_expression ] // - case 384: { action. consumeDesignatorArrayRange(); break; + case 385: { action. consumeDesignatorArrayRange(); break; } // - // Rule 385: designated_initializer ::= field_name_designator initializer + // Rule 386: designated_initializer ::= field_name_designator initializer // - case 385: { action. consumeInitializerDesignated(); break; + case 386: { action. consumeInitializerDesignated(); break; + } + + // + // Rule 387: block_item ::= normal_function_definition + // + case 387: { action. consumeStatementDeclaration(); break; } diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCParserprs.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCParserprs.java index 5e4d039178a..a098252b3ef 100644 --- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCParserprs.java +++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCParserprs.java @@ -64,292 +64,300 @@ public class GCCParserprs implements lpg.lpgjavaruntime.ParseTable, GCCParsersym 1,1,3,1,2,2,2,3,4,5, 1,1,7,3,0,0,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,1,1,2,6,3, - 1,3,1,4,0,1,1,1,3,1, - 0,4,3,1,2,1,3,4,4,4, - 6,1,0,1,3,1,3,0,1,4, - 5,2,4,2,4,3,3,5,3,4, - 3,1,2,2,2,4,2,1,1,2, - 2,3,2,2,3,1,1,1,1,1, - 1,1,2,5,3,-99,0,-2,0,0, + 1,2,1,1,1,1,1,2,1,3, + 6,4,2,4,1,1,1,1,2,6, + 3,1,3,1,4,0,1,1,1,3, + 1,0,4,3,1,2,1,3,4,4, + 4,6,1,0,1,3,1,3,0,1, + 4,5,2,4,2,4,3,3,5,3, + 4,3,1,2,2,2,4,2,1,1, + 2,2,3,2,2,3,1,1,1,1, + 1,1,1,2,5,3,1,-105,0,-114, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-77,0,0,0,0,0,0, - -29,-5,0,0,-49,-65,0,0,0,-245, + 0,0,0,0,0,-2,0,0,0,0, + 0,0,-351,-312,0,0,-41,-224,0,0, + 0,-111,-260,0,-7,0,0,0,0,0, + 0,-222,0,-84,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,-32, + 0,0,0,0,-3,-35,-107,0,-58,0, + 0,0,-146,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,-3,0,-101,0,0,0,0,0,0, - 0,0,0,-236,0,-204,0,0,0,0, - 0,0,0,0,0,-30,0,0,0,0, - -7,-143,0,0,0,0,0,-355,-35,0, - -10,0,0,0,0,0,0,-4,0,0, - 0,0,0,0,0,-8,0,-102,0,0, - 0,0,0,0,0,-249,0,0,0,0, + 0,0,0,-5,0,0,-120,0,0,0, + 0,0,0,0,0,0,0,-10,-11,-253, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-11,0,0,0,0,0,0, - 0,0,-100,-66,0,-34,0,-158,0,0, + 0,-221,0,0,0,0,0,0,0,0, + -62,0,0,0,0,0,0,0,0,0, + 0,0,0,-116,0,0,0,0,0,0, + 0,0,0,0,0,0,0,-190,0,0, + 0,0,0,0,0,0,-4,0,0,0, + -360,0,0,0,0,0,0,0,-42,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-116,-217,0,-22,0,0, - 0,0,0,-12,0,0,0,0,0,0, - 0,0,-64,0,0,0,0,0,0,0, - 0,0,0,-266,0,0,0,0,0,-31, - 0,0,0,-87,0,0,0,0,0,0, - 0,-165,-23,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,-37, - -252,0,0,0,0,0,0,0,0,-36, - 0,0,0,0,0,0,0,-316,0,0, + 0,-12,0,0,0,0,0,0,0,0, + 0,-109,-112,0,-209,0,0,0,0,0, + 0,0,0,0,-80,0,0,0,0,0, + 0,0,0,0,0,-314,0,0,0,-33, + 0,-13,0,0,0,0,0,0,0,0, + 0,0,0,0,-172,0,-295,0,0,0, + 0,0,0,0,0,0,0,0,0,-24, + 0,0,0,0,-25,0,0,0,0,0, + 0,-37,-123,0,0,0,0,0,0,0, + 0,-36,-108,0,-345,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - -24,0,0,0,0,-33,0,0,0,0, - 0,0,-232,0,0,0,0,0,0,0, - 0,0,0,-349,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,-38, + -274,0,0,0,0,0,0,0,0,0, + -257,0,-81,0,0,0,0,0,0,0, + 0,0,-45,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,-121,-63,0, 0,0,0,0,0,0,0,0,0,0, - 0,-361,0,0,0,0,0,0,-233,0, + -210,0,-9,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,-245,0, + 0,-40,-30,-347,0,0,0,0,0,0, + 0,0,0,-47,0,0,0,0,0,0, + 0,-43,0,0,0,0,0,0,-44,-205, 0,0,0,0,0,0,0,0,0,0, - -109,0,-47,0,0,0,0,0,0,0, - 0,0,-76,0,0,-43,0,0,-48,0, - 0,0,0,0,0,-234,0,0,0,0, - 0,0,0,0,0,0,-247,0,0,0, - 0,0,0,0,0,0,0,0,-198,-62, - 0,0,0,0,-68,0,0,0,-69,-351, + -54,-361,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,-56, + 0,0,0,0,0,0,-239,-64,0,0, + 0,0,0,0,0,0,0,0,0,-79, + 0,0,0,0,0,0,0,0,0,-49, 0,0,0,0,0,0,0,0,0,0, - 0,-104,0,0,0,0,0,0,0,0, - 0,0,0,0,-362,0,0,0,0,0, - 0,0,0,0,0,0,0,-261,-71,0, + 0,0,0,0,-310,-65,0,0,0,0, + 0,0,0,0,0,-241,0,0,0,0, + 0,0,0,0,0,-31,-71,0,0,0, + 0,0,0,-73,0,0,0,0,0,0, + 0,-50,0,0,-119,0,0,0,0,0, + 0,0,0,0,-106,-29,0,0,0,0, + 0,0,0,0,0,0,0,0,0,-74, + -151,0,0,0,0,0,0,0,0,0, + -51,0,0,0,0,0,0,0,-85,0, + 0,0,0,0,0,-182,0,-86,0,0, + 0,0,0,0,0,-90,0,0,-141,0, + 0,0,0,-72,0,0,0,0,0,0, + -92,-189,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,-113, + 0,0,0,0,0,0,-258,-28,0,0, + 0,0,0,0,0,0,0,-333,0,-122, + 0,0,0,0,0,0,0,-143,0,-87, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-244,0,0,0,0,0,0, - 0,0,0,0,0,-38,0,0,0,0, - 0,0,0,-73,0,0,-39,0,-88,0, + 0,0,-8,-124,0,0,-265,0,0,-117, + -125,0,0,0,0,0,0,0,0,0, + -27,0,-126,-89,0,0,-296,0,0,0, + 0,0,0,0,0,0,0,0,0,-59, + 0,-183,0,0,0,0,0,0,0,0, + 0,0,0,0,0,-66,0,0,0,0, + 0,0,0,0,-217,0,-127,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,-40,0,-74,0,0,0,0,0,0, - 0,0,0,0,0,0,-119,0,-200,0, - -78,0,0,0,0,0,0,0,0,0, - -189,-112,0,0,0,0,-82,0,0,0, - 0,0,0,-127,0,0,0,0,0,0, - 0,0,0,0,0,0,-63,0,0,0, - 0,0,0,0,0,0,0,0,-141,0, + 0,0,-128,0,0,0,-75,-256,0,0, + 0,0,0,-129,0,0,-188,0,0,0, + 0,0,0,-130,0,-191,0,0,0,0, + 0,0,0,0,0,0,0,-131,-101,0, + 0,0,0,-132,0,0,0,0,0,0, + -91,0,0,0,-192,0,0,0,0,0, + 0,0,0,0,-133,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,-142, + -193,0,0,0,0,0,0,0,0,0, + -153,-246,0,0,0,0,0,0,-136,0, + 0,0,0,0,0,0,-194,0,0,0, + 0,0,0,0,0,0,0,0,-259,-137, + 0,0,0,0,-102,0,0,0,0,0, + 0,-149,-195,0,0,0,0,0,0,0, + 0,0,0,-175,0,-261,0,0,0,0, + -176,0,0,0,0,0,0,0,-196,0, 0,0,0,0,0,0,0,0,0,0, - -117,-129,-111,0,0,0,-286,0,0,0, - 0,0,0,-175,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-253,0, - 0,-168,0,0,0,0,0,0,0,0, - 0,-216,0,-212,0,0,0,0,0,0, - 0,0,0,-84,-205,0,0,0,0,-80, - 0,0,0,0,0,0,-113,-32,0,-26, + -343,-227,0,0,0,0,-103,0,0,0, + 0,0,0,-138,-197,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-323,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-282,0,0,0,0,0,0, - 0,0,0,-120,0,0,-28,-121,0,-331, - -123,0,0,0,0,0,0,-124,0,0, - 0,0,-27,0,-118,0,0,0,0,0, - 0,-126,0,-45,0,-254,0,0,0,0, - 0,0,0,0,-258,0,-208,0,0,0, + -198,0,0,0,0,0,0,0,0,0, + 0,0,-348,0,0,0,0,0,-144,0, + 0,0,0,0,0,-228,-199,0,0,0, + 0,0,0,0,0,0,-135,-160,0,0, + 0,0,0,0,-154,0,0,0,0,0, + 0,0,-200,0,0,0,0,0,0,0, + 0,0,0,-163,-297,0,0,0,0,0, + -156,0,0,0,0,0,0,-326,-201,0, + 0,0,0,0,0,0,0,0,0,-225, + 0,0,0,0,0,0,-164,0,0,0, + 0,0,0,0,-266,0,0,0,0,0, + 0,0,0,0,0,-244,-145,0,0,0, + 0,0,-167,0,0,0,0,0,0,-249, + -271,0,0,0,0,0,0,0,0,0, + 0,-252,-334,0,0,0,0,0,-168,0, + 0,0,0,0,0,-335,-272,0,0,0, + 0,0,0,0,0,0,0,-340,-353,-309, + 0,0,0,0,-169,0,0,0,0,0, + 0,0,-303,0,0,0,0,0,0,0, + 0,0,0,-273,0,0,0,0,0,0, + -170,0,0,0,0,0,0,-311,0,-324, + 0,0,0,0,0,0,0,0,0,-367, + 0,0,0,0,0,-171,0,0,0,0, + 0,0,-322,0,-320,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - -218,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-128,0,0,0,-41,0, - 0,0,0,0,0,0,0,0,0,-131, - 0,0,0,0,-133,0,-214,0,0,0, - -72,-50,0,0,0,0,0,0,0,0, - 0,0,0,0,-142,0,-219,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - -255,0,0,0,0,0,0,0,0,0, - 0,-220,0,0,0,0,0,0,0,0, - 0,0,0,-81,-83,0,0,0,0,0, - 0,0,0,0,0,0,-221,0,0,0, - 0,0,0,0,0,0,0,0,0,-257, - 0,0,0,0,-144,0,0,0,0,0, - 0,-222,0,0,0,0,0,0,0,0, - 0,0,0,-191,-146,0,0,0,0,-147, - 0,0,0,0,0,0,-223,0,0,0, + -181,0,0,0,0,0,0,0,-323,0, 0,0,0,0,0,0,0,0,0,0, + -321,-147,0,0,0,0,-185,0,0,0, + 0,0,0,0,-336,0,0,0,0,0, + 0,0,0,0,0,-363,0,0,0,0, + 0,0,-223,0,0,0,0,0,0,-349, 0,-148,0,0,0,0,0,0,0,0, - 0,-224,0,0,0,0,0,0,0,0, - 0,0,0,-192,-125,0,-114,0,0,-149, - 0,0,0,0,0,0,-225,0,0,0, - 0,0,0,0,0,0,0,0,0,-337, - 0,-150,0,0,0,0,0,0,0,0, - 0,-226,0,0,0,0,0,0,0,0, - 0,0,0,-320,-136,0,0,0,0,-151, - 0,0,0,0,0,0,-227,0,0,0, + 0,-150,-152,0,0,0,0,-240,0,0, + 0,0,0,0,-357,0,-155,0,0,0, + 0,0,0,0,-344,0,0,-157,0,0, + 0,0,-242,0,0,0,0,0,0,-364, + 0,-166,0,0,0,0,0,0,0,-177, + 0,0,-178,0,0,0,0,-243,0,0, + 0,0,0,0,-370,0,-184,0,0,0, + 0,0,0,0,-226,0,0,0,0,0, + 0,0,-231,0,0,0,0,0,0,-83, + 0,0,-67,0,-263,0,0,0,0,0, + 0,0,-211,0,-235,0,0,0,0,0, + 0,0,0,-236,0,0,0,0,0,0, + -250,-362,-325,0,-251,-267,0,0,0,0, + 0,0,0,0,-275,-139,0,0,-220,0, + -276,0,0,0,0,0,0,0,-371,0, + 0,-277,0,0,0,0,-278,0,0,0, + 0,0,-270,-279,0,0,0,-280,-281,-313, + 0,-282,-283,0,0,0,0,0,0,0, + 0,-180,0,0,-284,-341,-60,0,0,0, + 0,0,0,0,0,0,0,0,-23,-374, + 0,0,0,-22,-285,0,0,0,-286,-298, 0,0,0,0,0,0,0,0,0,0, - 0,-152,0,0,0,0,0,0,0,0, - 0,-228,0,0,0,0,0,0,0,0, - 0,0,0,-139,0,0,-153,0,0,-169, - 0,0,0,0,0,0,-262,0,0,0, - 0,0,0,0,0,0,0,0,-179,-186, - 0,-154,0,0,-176,0,0,0,0,0, - 0,-276,0,0,0,0,0,0,0,0, - 0,0,0,-324,-187,0,-155,0,0,-159, - 0,0,0,0,0,0,-283,0,0,0, - 0,0,0,0,0,0,0,0,-170,0, - 0,-171,0,0,-180,0,0,0,0,0, - 0,-288,0,-281,0,0,0,0,0,0, - 0,0,0,0,-203,0,0,0,0,-215, - 0,0,0,0,0,0,-289,0,0,0, - 0,0,0,0,0,0,0,0,0,-211, - -270,0,0,0,-290,0,0,0,0,0, - 0,-326,0,0,0,0,0,0,0,0, - 0,0,0,-267,0,0,0,0,0,-181, - 0,0,0,0,0,0,-334,0,-338,0, + 0,0,0,0,0,0,-238,0,0,-300, + 0,-301,0,0,0,-287,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - -317,-182,0,0,-183,0,0,0,0,0, - 0,-335,0,0,0,0,0,0,0,0, - 0,0,0,0,-325,-185,0,0,0,-190, - 0,0,0,0,0,0,-345,0,0,0, - 0,0,0,0,0,0,0,0,-330,-103, - 0,0,0,0,-332,0,0,0,0,0, - 0,-353,0,-194,0,0,0,0,0,0, - 0,0,0,0,0,-284,0,0,0,-333, - 0,0,0,0,0,0,-365,0,-348,0, + 0,0,-306,0,0,0,0,0,0,-288, + 0,0,0,-269,0,0,0,0,0,-317, + 0,0,0,0,0,-289,-61,0,0,0, + 0,0,0,0,-316,-290,0,0,0,0, + -291,-292,0,0,0,0,0,0,-115,-319, + 0,0,0,0,0,0,0,0,0,0, + -293,0,-134,-294,0,0,0,0,0,0, + 0,0,-299,0,0,-337,0,0,0,0, + 0,0,0,0,-186,-346,0,-247,-342,0, + 0,0,-354,0,0,0,0,0,-350,-365, + 0,0,0,0,-355,-159,0,0,0,0, + 0,0,-308,0,0,-373,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,-76,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,-161,0,0,0,0,0,0,0,0, + -165,0,0,0,0,0,0,0,0,0, + 0,-218,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,-254,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,-264,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,-46,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,-356,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,-187,0,0,0,0, + 0,0,0,0,-68,0,0,0,0,0, + 0,0,0,0,0,0,0,-219,0,0, + 0,0,0,0,0,0,0,0,0,-248, + 0,0,0,0,0,-93,0,0,0,0, + 0,0,-338,0,0,0,0,0,0,-104, + 0,0,0,0,0,0,0,-34,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,-95,0,0,0,0,0,0,0,0, + 0,0,-110,0,0,-82,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,-94,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,-332,-70,0,0,0,0,0,0, + 0,0,0,0,0,0,-234,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,-195,0,0,-209,0,0,0,0,0, - 0,-368,0,-210,0,0,0,0,0,0, - 0,0,0,0,0,-352,0,0,0,-341, - 0,0,0,0,0,0,-263,-312,-235,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,-237,0,0,0,0,0,0, - 0,0,0,0,0,0,-363,-272,-1,0, - 0,0,0,0,-79,-95,-358,-287,0,0, - 0,0,-96,0,0,0,0,-75,0,0, - -364,0,0,0,0,-44,0,0,-292,-293, - 0,-97,0,0,0,0,0,0,0,0, - 0,0,0,0,-339,0,0,0,-98,0, 0,0,0,0,0,0,0,0,0,0, - -115,0,0,-246,0,-294,0,0,0,0, - 0,0,0,0,0,-295,-296,0,0,0, - 0,-297,0,0,0,0,0,-298,-130,0, - 0,-132,-299,0,0,0,0,0,0,0, - 0,-300,-301,-173,0,0,0,0,-156,0, - 0,0,0,-302,0,0,0,0,0,0, - 0,0,-177,-303,0,-369,0,-160,0,0, - -304,0,0,0,0,-107,0,0,0,0, - 0,0,0,0,-197,0,0,0,0,0, - 0,0,0,-42,-305,-306,0,0,0,0, - -307,-371,-161,0,0,0,0,0,0,-308, - 0,-309,0,-265,0,0,0,0,0,0, - 0,0,0,0,-310,0,0,0,0,0, + 0,0,0,-302,0,0,-48,0,0,0, + -304,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,-162,0,0,-327,0,0,0,0,0, - 0,0,0,0,-280,-343,0,-51,0,0, + -318,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - -163,-21,-350,0,0,-354,0,0,-106,-285, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-164,-174,0,-122,0,0, - 0,0,0,-184,0,0,-157,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - -199,0,0,0,0,0,0,0,-201,0, - -16,0,0,0,0,0,0,0,0,-250, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-17,0,-202,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-213,0,0,0,0,0,0, - 0,-135,0,0,0,0,0,-344,0,0, - 0,0,0,-259,0,0,0,0,0,0, - 0,0,0,0,-328,0,0,0,-13,-268, - 0,0,0,-271,0,0,0,0,0,0, - 0,0,0,0,-273,0,-274,0,0,0, - 0,0,0,0,0,0,0,0,-278,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,-67,0,0,0,-19, - 0,0,0,0,-313,0,-86,0,0,0, - 0,0,0,0,0,0,0,-110,0,0, - 0,0,0,0,0,0,0,0,-315,0, - 0,0,0,0,0,0,0,0,0,-336, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-9,0,0,0, - 0,0,-46,0,0,0,0,-342,0,0, - 0,0,0,0,0,0,0,0,-356,-367, - 0,0,-193,0,0,0,0,0,0,0, - 0,-137,0,0,0,0,0,0,-196,0, + 0,0,0,0,0,-315,-230,0,0,0, + -328,0,0,0,0,0,0,0,0,-206, 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,-260, - 0,0,-145,0,0,0,0,0,0,0, - 0,0,0,0,0,-275,0,0,-53,0, + 0,0,0,0,0,0,0,-330,0,0, + 0,0,0,0,-331,0,0,0,0,0, + 0,-202,0,0,0,0,0,0,0,0, + 0,0,0,0,-368,0,0,0,0,0, + 0,-372,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,-277,0,0,0,0,0,0,0,0, + 0,-375,0,0,0,0,0,0,-1,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,-262,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,-311,0,0,-291,0, + 0,0,-207,0,-14,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,-319,0,0,-54,0,0,0,0,0, - 0,0,0,0,0,0,0,-321,0,0, + 0,0,-15,0,0,0,0,0,0,0, + -16,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,-19,0,0,0, + 0,0,0,0,-21,0,0,0,0,0, + -26,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,-140,0,0,-52,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,-322,0,0,0,0,0, + 0,0,0,0,0,0,0,0,-212,0, 0,0,0,0,0,0,0,0,0,0, - 0,-359,0,0,0,0,0,0,0,0, - 0,0,0,-279,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-366,0, + 0,0,0,0,-213,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-370,0,0,0,0,0, + -214,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,-215,0,0,0, + 0,0,0,0,0,0,-232,-174,0,0, + 0,0,-216,0,0,0,0,0,0,0, + 0,0,-53,0,0,0,0,0,0,0, + 0,0,0,0,0,0,-6,0,0,-208, + 0,-20,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,-96,0,0,0,0,0,-39,0,0, + -307,-57,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,-97,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,-233,0,0,0,0,0,0,0,0, + -55,-98,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,-99,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,-15,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,-18, - -55,0,0,0,0,0,0,0,0,-20, + 0,0,0,-100,0,0,0,0,0,0, + -173,0,0,-327,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,-229, 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,-203,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,-25,0,0,0,0, - 0,0,0,0,0,-134,0,0,0,0, + 0,0,-268,-352,0,0,0,0,0,0, + -255,-204,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,-238, - 0,-178,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,-305,0, + 0,0,-17,0,0,0,-77,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-239,0,0,0,0,0,0, - 0,0,0,0,0,-240,0,0,0,0, - 0,0,0,0,0,0,0,-241,0,0, - 0,0,0,0,0,0,0,0,0,-242, + 0,0,0,0,0,0,0,-18,-366,0, 0,0,0,0,0,0,0,0,0,0, - 0,-243,0,0,0,0,0,0,0,0, - 0,0,0,-256,0,0,0,0,0,0, - 0,0,-167,-6,0,0,-56,0,0,0, - 0,0,0,0,0,-248,0,0,-57,0, + 0,-69,0,0,0,0,0,0,0,0, + 0,0,-88,0,0,-329,-162,0,0,0, 0,0,0,0,0,0,0,0,0,0, - -58,0,0,0,0,0,0,0,0,-70, - 0,0,0,0,0,-108,0,-61,0,0, + -179,0,0,0,0,0,0,0,-78,0, + 0,0,0,0,-339,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, + 0,0,-358,0,0,0,-118,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,-90,0,0,0,0,0,0,-91, - 0,0,-92,0,0,0,0,0,0,-93, - 0,0,-94,0,0,0,-206,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,0, - 0,0,0,0,-166,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-264,0,0,0,0,0, - -229,0,0,0,0,0,0,0,0,-230, - 0,0,0,0,0,0,0,0,0,0, - -251,0,0,0,0,0,0,0,0,-140, - 0,0,0,0,0,0,0,0,0,-231, - 0,-14,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,-207,0,0,0,0,0,-52,0,0, - 0,0,0,0,0,-59,0,0,0,0, - 0,0,0,-85,0,-60,0,-138,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,-89,-105,0,0,-329, - -314,0,0,-172,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-269,-346, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-318,-340,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,-347,0,0,0,0,0, - 0,-357,-360,0,0,0,0,0,0,0, + -158,0,0,0,-359,0,0,0,-369,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,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; @@ -359,337 +367,345 @@ public class GCCParserprs implements lpg.lpgjavaruntime.ParseTable, GCCParsersym public interface BaseAction { public final static char baseAction[] = { - 120,2,121,45,45,18,18,52,52,26, + 121,2,122,49,49,18,18,53,53,26, 26,1,1,3,3,3,3,4,4,4, - 5,6,6,6,6,6,6,6,6,85, - 85,100,7,7,7,7,7,7,7,7, - 7,7,7,8,8,9,9,9,9,10, - 10,10,11,11,11,16,16,16,16,16, + 5,6,6,6,6,6,6,6,6,88, + 88,103,7,7,7,7,7,7,7,7, + 7,7,7,8,8,9,9,9,9,14, + 14,14,15,15,15,16,16,16,16,16, 17,17,17,19,19,20,20,21,21,22, - 22,23,23,24,24,27,27,27,27,27, - 27,27,27,27,27,27,27,34,31,25, - 122,122,101,101,62,35,35,35,35,35, - 35,35,36,36,36,30,30,102,102,76, - 76,37,37,38,38,38,70,70,39,39, - 39,39,40,40,40,40,40,60,60,29, - 29,29,29,29,53,53,53,91,91,86, - 86,86,86,87,87,87,88,88,88,89, - 89,89,90,90,90,103,103,92,92,93, - 54,57,57,57,57,57,71,73,73,73, - 73,73,73,73,73,73,73,73,73,80, - 77,77,123,124,81,81,78,78,78,94, - 104,104,105,105,95,95,95,58,125,125, - 106,96,96,96,79,79,126,107,107,108, - 108,97,97,32,33,33,33,55,56,56, - 46,46,46,46,41,41,42,47,47,48, - 43,43,109,109,49,128,128,127,127,59, - 59,59,59,59,59,59,59,59,110,64, - 64,64,64,44,82,82,74,74,74,75, - 75,65,65,129,129,63,63,83,83,83, + 22,23,23,24,24,28,28,28,28,28, + 28,28,28,28,28,28,28,38,31,25, + 123,123,104,104,62,39,39,39,39,39, + 39,39,40,40,40,30,30,105,105,77, + 77,41,41,42,42,42,71,71,43,43, + 43,43,44,44,44,44,44,60,60,29, + 29,29,29,29,54,54,54,95,95,90, + 90,90,90,91,91,91,92,92,92,93, + 93,93,94,94,94,89,89,82,82,83, + 55,57,57,57,57,57,72,74,74,74, + 74,74,74,74,74,74,74,74,74,81, + 78,78,124,125,84,84,79,79,79,96, + 106,106,107,107,97,97,97,58,126,126, + 108,98,98,98,80,80,127,109,109,110, + 110,99,99,32,33,33,33,56,52,52, + 45,45,45,45,34,34,35,46,46,47, + 36,36,100,100,48,129,129,128,128,59, + 59,59,59,59,59,59,59,59,111,63, + 63,63,63,37,85,85,75,75,75,76, + 76,65,65,130,130,64,64,86,86,86, 66,66,66,67,68,68,68,69,69,69, - 69,72,72,50,50,51,131,130,130,130, - 130,111,132,133,133,134,134,135,135,120, - 120,136,136,112,112,112,112,137,137,113, - 113,113,114,114,12,12,12,28,28,13, - 13,138,138,115,115,115,116,116,139,139, - 117,117,14,14,140,140,118,118,118,118, - 15,61,141,141,142,142,119,119,119,98, - 98,98,7,7,7,7,16,16,24,4, - 36,143,99,99,99,84,84,29,60,53, - 93,93,93,106,106,106,126,123,124,44, - 94,134,134,144,145,111,329,1472,403,17, - 21,18,750,1225,45,1245,1272,1250,369,314, - 315,316,1322,1300,1500,1372,1350,1422,1397,1447, - 75,115,635,92,1047,2147,1268,3006,135,213, - 1871,20,332,17,21,18,750,43,45,1245, - 1272,1250,37,231,961,31,1322,1895,127,137, - 134,136,128,160,1871,20,1412,17,21,18, - 750,43,45,1245,1272,1250,734,139,1758,166, - 1817,612,1758,143,146,149,152,2942,2101,1288, - 362,712,2237,2129,2544,2560,2570,1000,1456,179, - 1972,318,314,315,316,2596,407,1469,961,31, - 369,314,315,316,254,213,1871,20,180,17, - 21,18,750,43,45,1245,1272,1250,312,854, - 135,213,1322,1300,800,1372,1350,1422,1925,641, - 224,232,335,734,1533,1844,500,990,1521,179, - 344,137,134,136,25,160,317,314,315,316, - 369,314,315,316,546,635,1854,944,685,139, - 2243,166,1876,1141,851,143,146,149,152,2942, - 135,213,362,407,2237,2129,2544,2560,2570,1000, - 88,125,972,461,1412,105,1420,2596,255,213, - 1440,137,134,136,2147,160,2930,486,24,703, - 224,229,1482,1041,218,719,221,223,320,139, - 310,166,231,294,1074,143,146,149,152,2942, - 1336,916,362,528,2237,2129,2544,2560,2570,1000, - 961,187,318,314,315,316,284,2596,1703,20, - 1785,17,21,18,750,1225,45,1245,1272,1250, - 2017,1061,28,1475,1322,1300,181,1372,1350,1422, - 1397,1447,75,1871,20,281,17,21,18,750, - 43,45,1245,1769,1586,20,1785,17,21,18, - 750,1225,45,1245,1272,1250,260,309,282,1475, - 1322,1300,169,1372,1350,1422,1397,1447,75,1871, - 20,281,17,21,18,750,43,45,1245,1770, - 287,1643,20,927,17,21,18,750,1225,45, - 1245,1272,1250,421,282,1475,396,1322,1300,339, - 1372,1350,1422,1397,1447,75,1871,20,281,17, - 21,18,750,43,45,1806,289,1871,20,288, - 17,21,18,750,43,45,1245,1272,1250,421, - 2036,282,1475,1322,1300,363,1372,1901,1559,1108, - 1727,20,227,17,21,18,750,1225,45,1245, - 1272,1250,49,158,944,290,1322,1300,228,1372, - 1350,1422,1397,1447,75,1751,20,281,17,21, - 18,750,1225,45,1245,1272,1250,88,2147,364, - 3011,1322,1300,1425,1372,1350,1422,1397,1447,75, - 282,1475,281,283,1871,20,278,17,21,18, - 750,43,45,1245,1272,1250,961,186,321,1130, - 1322,1300,385,1871,1149,282,1475,1241,887,435, - 20,462,17,21,18,750,1225,45,1245,1272, - 1250,1829,961,188,848,1322,1300,291,1372,1350, - 1422,1397,1447,75,322,1130,1155,961,1445,1967, - 20,1175,17,21,18,750,1225,45,1245,1272, - 1250,49,1475,944,239,1322,1300,1289,1372,1350, - 1422,1397,1447,75,1871,20,330,17,21,18, - 750,43,45,1245,1272,1250,88,49,341,3007, - 1322,1300,2134,1372,1350,1422,1397,1447,94,1919, - 20,1137,17,21,18,750,1225,45,1245,1272, - 1250,1475,635,115,1885,1322,1300,1902,1372,1350, - 1422,1397,1447,75,1871,20,1500,17,21,18, - 750,1225,45,1245,1272,1250,1672,124,127,1676, - 1322,1300,804,1372,1350,1422,1397,1447,75,255, - 213,92,533,20,1758,17,21,18,750,1225, - 45,1245,1272,1250,537,635,328,1955,1322,1300, - 2040,1372,1350,1422,1397,1447,75,755,1500,1525, - 1521,179,317,314,315,316,254,213,2159,28, - 1475,195,369,314,315,316,333,240,2606,1967, - 20,275,17,21,18,750,1225,45,1245,1272, - 1250,854,135,213,1412,1322,1300,1634,1372,1350, - 1422,1397,1447,75,1223,1469,330,758,1319,2760, - 1950,1347,345,138,134,136,937,160,1646,317, - 314,315,316,1775,20,1475,17,21,18,750, - 365,140,677,166,2125,2176,2131,144,147,150, - 153,2942,255,213,363,369,204,1249,703,224, - 759,123,225,218,719,221,799,317,314,315, - 316,1871,20,524,17,21,18,750,1225,45, - 1245,1272,1250,1766,1135,1058,334,1322,1300,917, - 1372,1350,1422,1397,1447,75,28,1475,86,984, - 1682,318,314,315,316,1459,329,1758,404,155, - 755,1614,1799,20,274,17,21,18,750,354, - 416,269,1400,962,272,823,563,1871,20,882, - 17,21,18,750,1225,45,1245,1272,1250,254, - 213,2156,1034,1322,1300,907,1372,1350,1422,1397, - 1447,75,1871,20,85,17,21,18,750,1225, - 45,1245,1272,1250,49,49,2102,2272,1322,1300, - 241,1372,1350,1422,1397,1447,75,1871,20,84, - 17,21,18,750,1225,45,1245,1272,1250,546, - 2162,28,1475,1322,1300,426,1372,1350,1422,1397, - 1447,75,1871,20,83,17,21,18,750,1225, - 45,1245,1272,1250,49,1803,944,1482,1322,1300, - 36,1372,1350,1422,1397,1447,75,1871,20,82, - 17,21,18,750,1225,45,1245,1272,1250,88, - 28,1475,868,1322,1300,2145,1372,1350,1422,1397, - 1447,75,1871,20,81,17,21,18,750,1225, - 45,1245,1272,1250,49,1475,944,247,1322,1300, - 950,1372,1350,1422,1397,1447,75,1871,20,80, - 17,21,18,750,1225,45,1245,1272,1250,88, - 601,112,798,1322,1300,2147,1372,1350,1422,1397, - 1447,75,1871,20,79,17,21,18,750,1225, - 45,1245,1272,1250,49,49,944,2962,1322,1300, - 332,1372,1350,1422,1397,1447,75,1871,20,78, - 17,21,18,750,1225,45,1245,1272,1250,88, - 28,1475,511,1322,1300,2248,1372,1350,1422,1397, - 1447,75,1871,20,77,17,21,18,750,1225, - 45,1245,1272,1250,1542,347,974,1001,1322,1300, - 1992,1372,1350,1422,1397,1447,75,1871,20,76, - 17,21,18,750,1225,45,1245,1272,1250,49, - 1475,574,1116,1322,1300,823,1372,1350,1422,1397, - 1447,75,1871,20,93,17,21,18,750,43, - 45,1245,1272,1250,1412,1475,126,1037,1322,1300, - 1172,1372,1350,1422,1397,1447,94,1871,20,276, - 17,21,18,750,43,45,1245,1272,1250,1245, - 22,122,789,1322,1300,1524,1372,1350,1422,1397, - 1447,94,1871,20,1249,17,21,18,750,1225, - 45,1245,1272,1250,361,49,181,2484,1322,1300, - 823,1372,1350,1422,1397,1447,75,1871,20,1625, - 17,21,18,750,1225,45,1245,1272,1250,212, - 1806,1475,1980,1322,1300,823,1372,1350,1422,1397, - 1447,75,1871,20,1650,17,21,18,750,43, - 45,1245,1272,1250,49,243,628,3047,1322,1300, - 2035,1372,1350,1422,1397,1447,94,1871,20,1341, - 17,21,18,750,1225,45,1245,1272,1250,1619, - 242,1475,1547,1322,1300,1385,1372,1350,1422,1397, - 1447,75,1871,20,358,17,21,18,750,1225, - 45,1245,1272,1250,202,2109,67,3048,1322,1300, - 569,1372,1350,1422,1397,1447,75,1871,20,74, - 17,21,18,750,43,45,1245,1272,1250,1412, - 2148,194,944,1322,1300,823,1372,1350,1422,1397, - 1447,94,1871,20,1504,17,21,18,750,43, - 45,1245,1272,1250,1659,90,961,1675,1322,1300, - 823,1372,1350,1422,1397,1447,94,1871,20,1412, - 17,21,18,750,43,45,1245,1272,1250,203, - 244,205,1078,1322,1300,1522,1372,1350,1422,1397, - 1447,94,1871,20,1252,17,21,18,750,43, - 45,1245,1272,1250,1737,245,961,296,1322,1300, - 1475,1372,1350,1422,1397,1447,94,951,1634,1871, - 20,682,17,21,18,750,43,45,1816,1866, - 317,314,315,316,1871,20,3082,17,21,18, - 750,43,45,1245,1272,1250,1766,1010,1706,590, - 1822,478,2006,210,1902,2125,2125,1475,1618,703, - 224,229,984,2125,219,719,221,223,199,1115, - 386,961,298,340,359,305,1384,274,412,1192, - 1532,592,2125,118,269,1400,962,272,318,314, - 315,316,295,87,111,2070,1976,932,96,398, - 19,2875,1295,109,95,97,98,99,100,304, - 368,1,1115,386,1871,20,1851,17,21,18, - 750,43,45,1245,1272,1250,1899,960,110,368, - 1322,1300,1122,1372,1350,1896,87,111,168,2050, - 932,96,1112,299,107,1295,109,95,97,98, - 99,100,430,1527,264,1115,386,2031,274,2125, - 337,301,303,313,1668,267,1400,962,272,388, - 1801,110,368,784,2097,528,823,230,2125,87, - 111,1568,266,932,96,2724,2074,108,1295,109, - 95,97,98,99,100,758,959,2243,318,314, - 315,316,932,311,1082,2079,1396,317,314,315, - 316,1081,823,2125,110,368,317,314,315,316, - 1953,297,2041,2176,133,1115,386,1973,468,293, - 107,1076,1766,308,368,2006,703,224,229,760, - 382,218,719,221,223,641,224,233,984,87, - 111,524,2125,932,96,2113,1914,384,1295,109, - 95,97,98,99,100,1670,1345,2243,1823,20, - 1171,17,21,18,750,352,106,317,314,315, - 316,2125,1240,1710,110,368,2120,155,755,758, - 1758,2243,3302,2125,317,314,315,316,416,2714, - 108,317,314,315,316,3302,703,224,229,3302, - 1766,218,719,221,223,2125,2125,2176,730,1115, - 944,1945,254,213,2125,3302,716,2010,3302,2921, - 703,224,229,1220,23,218,719,221,223,3302, - 3302,2125,350,87,111,524,1894,3302,96,2125, - 3302,411,1295,1600,95,97,98,99,100,319, - 1436,3010,2396,317,314,315,316,339,703,224, - 229,198,1050,218,719,221,223,3302,277,610, - 3302,156,755,263,3302,420,274,2125,3302,3302, - 1595,3302,3302,267,1400,962,272,317,314,315, - 316,703,224,229,2091,338,218,719,221,223, - 264,3302,778,610,528,3302,1074,3302,2055,274, - 2243,3302,234,3302,2125,3302,267,1400,962,272, - 317,314,315,316,3302,1670,3302,2243,3302,1113, - 2125,197,273,2114,2125,620,2125,318,314,315, - 316,369,314,315,316,2125,261,2125,351,703, - 224,229,2412,3302,218,719,221,223,3302,2096, - 985,135,213,2428,1945,2455,703,224,229,826, - 3302,218,719,221,223,3302,758,324,2243,3302, - 524,1945,145,134,136,2125,160,1082,318,314, - 315,316,317,314,315,316,3302,192,1082,317, - 314,315,316,279,3010,3302,446,2827,1119,2125, - 317,314,315,316,199,1766,3302,703,224,229, - 2125,3030,218,719,221,223,1766,1320,703,224, - 229,984,2766,219,719,221,223,651,280,703, - 224,1572,984,1240,219,719,221,1550,2125,369, - 314,315,316,3302,3302,317,314,315,316,2125, - 2125,3302,3302,844,1115,944,1747,3302,3302,135, - 213,1766,1337,1675,852,3302,3302,2499,2515,892, - 1115,944,3302,3302,3302,3302,3302,716,87,111, - 142,134,136,96,160,3302,3302,1295,104,95, - 97,98,99,100,87,111,837,2187,141,96, - 166,3302,3302,1295,102,95,97,98,99,100, - 1996,3302,528,1610,20,3302,17,21,18,750, - 43,36,317,314,315,316,1006,1115,944,1871, - 20,3302,17,21,18,750,43,40,1766,2017, - 3302,3302,1054,1115,944,3302,3302,3302,3302,3302, - 3302,87,111,3302,716,3302,96,3302,246,209, - 1295,360,95,97,98,99,100,87,111,1087, - 1684,3302,96,3302,1085,259,1295,103,95,97, - 98,99,100,3302,2185,1450,2060,3302,528,1610, - 20,3302,17,21,18,750,43,36,317,314, - 315,316,1168,1115,944,1871,20,3302,17,21, - 18,750,43,39,1766,2017,3302,3302,1216,1115, - 944,3302,3302,3302,3302,3302,3302,87,111,3302, - 716,3302,96,3302,247,3302,1295,119,95,97, - 98,99,100,87,111,1264,1115,944,96,3302, - 1708,259,1295,115,95,97,98,99,100,3302, - 2185,1450,1312,1115,944,3302,3302,3302,3302,3302, - 87,111,3302,3302,1102,96,528,3302,3302,1295, - 1956,95,97,98,99,100,3302,87,111,1360, - 1115,944,96,3302,3302,3302,1295,114,95,97, - 98,99,100,197,3302,1408,1115,944,3302,3302, - 3302,3302,3302,3302,87,111,3302,3302,3302,96, - 3302,3302,3302,1295,121,95,97,98,99,100, - 87,111,985,3302,1466,96,3302,3302,3302,1295, - 120,95,97,98,99,100,369,314,315,316, - 1531,1871,20,3302,17,21,18,750,43,38, - 1991,3302,369,314,315,316,135,213,3302,192, - 3302,3302,369,314,315,316,3302,3302,1444,2827, - 3302,3302,135,213,3302,3302,2001,148,134,136, - 3302,160,135,213,3302,3302,2085,3302,369,314, - 315,316,3302,151,134,136,3302,160,318,314, - 315,316,3302,154,134,136,3302,160,135,213, - 1871,20,2100,17,21,18,750,43,45,1245, - 1272,1828,3302,3302,318,314,315,316,3302,364, - 134,136,3302,160,1871,20,3302,17,21,18, - 750,43,45,1245,1272,1833,1871,20,3302,17, - 21,18,750,43,45,1245,1272,1842,1871,20, - 3302,17,21,18,750,43,45,1245,1272,1843, - 1871,20,3302,17,21,18,750,43,45,1245, - 1272,1854,1871,20,3302,17,21,18,750,43, - 45,1245,1272,1864,1679,20,3302,17,21,18, - 750,43,44,1432,665,2320,478,1871,20,3302, - 17,21,18,750,43,37,1946,3302,944,1871, - 20,277,17,21,18,750,43,36,3302,3302, - 305,1871,20,412,17,21,18,750,43,35, - 1240,88,3302,3302,28,1475,2080,1912,499,3302, - 386,3302,317,314,315,316,3302,3302,317,314, - 315,316,274,3302,304,368,3302,3302,1766,267, - 1400,962,272,88,2632,3302,3302,197,1746,1772, - 3302,3302,3302,499,716,386,2114,3302,3302,3302, - 499,3302,386,499,3302,386,3302,3302,3302,3302, - 499,3302,386,499,2198,386,1789,940,88,528, - 3302,1753,197,1746,1772,88,302,303,88,197, - 1746,1772,197,1746,1772,88,3302,3302,88,197, - 1746,1772,197,1746,1772,3302,197,1910,3302,3302, - 3302,1789,3302,3302,3302,3302,1868,1364,1789,386, - 3302,1789,3302,1903,3302,1240,1942,3302,1789,3302, - 3302,1789,3302,1971,3302,985,2005,317,314,315, - 316,3302,88,3302,3302,499,932,386,116,3302, - 3302,1871,20,1766,17,21,18,750,43,48, - 1871,20,3302,17,21,18,750,43,47,716, - 88,1240,193,3302,197,1746,1772,3029,368,3302, - 1393,3302,528,317,314,315,316,1521,3302,1085, - 1871,20,656,17,21,18,750,43,46,1766, - 3302,3302,3302,1789,317,314,315,316,2209,2017, - 3302,3302,1337,1675,3302,716,3302,3302,1847,20, - 469,17,21,18,750,41,1895,20,3302,17, - 21,18,750,34,2069,1708,1895,20,2069,17, - 21,18,750,33,3302,259,317,314,315,316, - 317,314,315,316,1849,1450,657,439,528,528, - 2110,657,1766,528,1943,20,1766,17,21,18, - 750,1707,317,314,315,316,3302,3302,1394,920, - 2115,944,1520,3302,3302,2017,932,3302,3075,3302, - 2017,3302,317,314,315,316,3302,920,920,944, - 944,3302,3302,3302,88,3302,3302,2094,3083,209, - 116,3302,3302,3302,3302,526,3302,307,368,1484, - 1684,259,88,88,3302,2126,259,3302,116,116, - 1849,1450,920,2138,944,2220,1450,318,314,315, - 316,3302,3302,3302,3302,318,314,315,316,1571, - 3302,3302,3302,3302,3302,3302,3302,88,3302,3302, - 3302,3302,3302,116,3302,3302,3302,1700,2259,3302, - 3302,3302,3302,3302,3302,3302,3302,3302,3302,3302, - 3302,3302,3302,3302,3302,3302,3302,3302,3302,3302, - 3302,3302,3302,3302,1863,3302,3302,3302,3302,3302, - 3302,3302,2260,3302,0,1,432,0,1,471, - 0,1,514,0,1,554,0,471,129,0, - 514,129,0,554,129,0,471,130,0,514, - 130,0,554,130,0,471,131,0,514,131, - 0,554,131,0,554,185,0,514,185,0, - 471,185,0,185,189,0,554,184,0,514, - 184,0,471,184,0,184,189,0,471,132, - 0,514,132,0,554,132,0,471,133,0, - 514,133,0,554,133,0,11,226,0,471, - 367,0,514,367,0,554,367,0,3310,1, - 0,554,379,0,514,379,0,471,379,0, - 1620,32,0,772,32,0,223,235,0,554, - 253,0,514,253,0,471,253,0,1,3539, - 0,179,20,0,223,236,0,8,10,0, - 1,3528,0,365,354,0,366,355,0,113, - 2472,0 + 69,73,73,50,50,51,132,131,131,131, + 131,112,133,134,134,135,135,136,136,121, + 121,137,137,113,113,113,113,138,138,114, + 114,114,70,115,115,10,10,10,27,27, + 11,11,139,139,116,116,116,117,117,140, + 140,118,118,12,12,141,141,119,119,119, + 119,13,61,142,142,143,143,120,120,120, + 101,101,101,7,7,7,7,16,16,24, + 4,40,144,102,102,102,87,87,29,60, + 54,83,83,83,108,108,108,127,124,125, + 37,96,135,135,145,146,112,77,329,1713, + 247,17,21,18,897,1030,45,1054,370,315, + 316,317,1073,1061,1133,1117,403,1154,1144,1174, + 1168,1195,75,2102,961,1781,92,734,2014,1750, + 135,213,115,1679,20,612,17,21,18,897, + 43,44,1871,20,755,17,21,18,897,43, + 45,1054,137,134,136,160,1073,1061,1133,1117, + 1220,1154,1144,1174,1971,37,339,961,31,1971, + 139,2292,166,730,1663,966,143,146,149,152, + 313,284,2653,28,1229,363,128,231,498,2635, + 2661,2687,2695,1071,1456,179,1864,823,87,111, + 2701,348,1710,96,370,315,316,317,651,712, + 1542,1262,1743,95,97,98,99,100,370,315, + 316,317,1163,210,966,228,135,213,655,224, + 232,1871,20,940,17,21,18,897,43,40, + 135,213,254,213,1521,179,241,88,137,134, + 136,160,346,1952,370,315,316,317,1830,294, + 322,1677,142,134,136,160,139,419,166,1053, + 25,169,143,146,149,152,135,213,2653,1440, + 141,363,166,1385,498,2635,2661,2687,2695,1071, + 255,213,800,127,753,616,2701,321,137,134, + 136,160,2112,635,966,1871,20,425,17,21, + 18,897,43,45,1054,1971,139,1973,166,1073, + 1061,1824,143,146,149,152,1926,90,2653,342, + 1288,363,851,231,498,2635,2661,2687,2695,1071, + 318,315,316,317,1951,1676,2701,1703,20,1783, + 17,21,18,897,1030,45,1054,3067,255,213, + 1013,1073,1061,1133,1117,1061,1154,1144,1174,1168, + 1195,75,443,1610,20,281,17,21,18,897, + 43,36,927,961,31,1586,20,1783,17,21, + 18,897,1030,45,1054,28,1229,282,1229,1073, + 1061,1133,1117,283,1154,1144,1174,1168,1195,75, + 364,1610,20,281,17,21,18,897,43,36, + 287,2113,246,1643,20,1591,17,21,18,897, + 1030,45,1054,500,3113,282,1229,1073,1061,1133, + 1117,227,1154,1144,1174,1168,1195,75,1542,1871, + 20,281,17,21,18,897,43,39,289,288, + 247,1871,20,499,17,21,18,897,43,45, + 1054,28,1229,282,1229,1073,1061,1828,1550,2014, + 254,213,1337,499,1727,20,24,17,21,18, + 897,1030,45,1054,961,187,158,290,1073,1061, + 1133,1117,1500,1154,1144,1174,1168,1195,75,181, + 1871,20,281,17,21,18,897,43,45,1054, + 334,396,1751,20,1795,17,21,18,897,1030, + 45,1054,180,548,282,1229,1073,1061,1133,1117, + 1082,1154,1144,1174,1168,1195,75,755,1871,20, + 281,17,21,18,897,43,38,386,225,992, + 435,20,738,17,21,18,897,1030,45,1054, + 961,186,282,1229,1073,1061,1133,1117,310,1154, + 1144,1174,1168,1195,75,2014,1871,20,487,17, + 21,18,897,43,37,291,1967,20,312,17, + 21,18,897,1030,45,1054,49,2036,1137,239, + 1073,1061,1133,1117,1089,1154,1144,1174,1168,1195, + 75,335,1289,976,331,1919,20,2216,17,21, + 18,897,1030,45,1054,734,115,1842,204,1073, + 1061,1133,1117,959,1154,1144,1174,1168,1195,75, + 363,1871,20,1147,17,21,18,897,43,45, + 1054,961,188,323,1677,1073,1061,1133,1117,1500, + 1154,1144,1174,1168,1195,94,1871,20,1149,17, + 21,18,897,1030,45,1054,1522,333,105,635, + 1073,1061,1133,1117,1614,1154,1144,1174,1168,1195, + 75,418,533,20,92,17,21,18,897,1030, + 45,1054,593,1774,329,124,1073,1061,1133,1117, + 1339,1154,1144,1174,1168,1195,75,2131,1775,20, + 1534,17,21,18,897,366,1913,940,1967,20, + 426,17,21,18,897,1030,45,1054,961,1366, + 1082,240,1073,1061,1133,1117,345,1154,1144,1174, + 1168,1195,75,413,1779,2878,331,1971,341,2451, + 419,36,1995,318,315,316,317,28,1229,984, + 1710,1521,179,868,49,278,2016,920,336,966, + 2278,370,315,316,317,1765,127,672,224,772, + 1799,20,823,17,21,18,897,355,218,456, + 221,700,88,135,213,620,1871,20,116,17, + 21,18,897,43,36,1871,20,416,17,21, + 18,897,43,45,1054,138,134,136,160,1073, + 1061,1133,1117,798,1896,155,662,537,916,534, + 534,22,450,140,325,166,330,823,1418,144, + 147,150,153,773,1478,2653,1871,20,364,17, + 21,18,897,1030,45,1054,1060,2091,355,1082, + 1073,1061,1133,1117,1116,1154,1144,1174,1168,1195, + 75,49,896,2082,86,1871,20,360,17,21, + 18,897,1030,45,1054,1037,243,307,369,1073, + 1061,1133,1117,260,1154,1144,1174,1168,1195,75, + 635,1871,20,85,17,21,18,897,1030,45, + 1054,419,419,1887,2023,1073,1061,1133,1117,1524, + 1154,1144,1174,1168,1195,75,123,1871,20,84, + 17,21,18,897,1030,45,1054,127,195,2149, + 2035,1073,1061,1133,1117,1082,1154,1144,1174,1168, + 1195,75,635,1871,20,83,17,21,18,897, + 1030,45,1054,635,804,1959,2152,1073,1061,1133, + 1117,1992,1154,1144,1174,1168,1195,75,112,1871, + 20,82,17,21,18,897,1030,45,1054,28, + 1229,601,635,1073,1061,1133,1117,1082,1154,1144, + 1174,1168,1195,75,1547,1871,20,81,17,21, + 18,897,1030,45,1054,19,28,1229,126,1073, + 1061,1133,1117,275,1154,1144,1174,1168,1195,75, + 276,1871,20,80,17,21,18,897,1030,45, + 1054,28,1229,961,296,1073,1061,1133,1117,1251, + 1154,1144,1174,1168,1195,75,635,1871,20,79, + 17,21,18,897,1030,45,1054,49,49,418, + 2250,1073,1061,1133,1117,2050,1154,1144,1174,1168, + 1195,75,122,1871,20,78,17,21,18,897, + 1030,45,1054,1668,1782,635,500,1073,1061,1133, + 1117,1112,1154,1144,1174,1168,1195,75,635,1871, + 20,77,17,21,18,897,1030,45,1054,338, + 49,2974,637,1073,1061,1133,1117,1082,1154,1144, + 1174,1168,1195,75,3024,1871,20,76,17,21, + 18,897,1030,45,1054,230,49,1271,2881,1073, + 1061,1133,1117,1082,1154,1144,1174,1168,1195,75, + 1300,1871,20,93,17,21,18,897,1030,45, + 1054,711,1878,2014,1830,1073,1061,1133,1117,1082, + 1154,1144,1174,1168,1195,75,1364,1871,20,1575, + 17,21,18,897,1030,45,1054,1017,2014,635, + 1300,1073,1061,1133,1117,1082,1154,1144,1174,1168, + 1195,75,194,1871,20,1611,17,21,18,897, + 43,45,1054,1249,823,3089,181,1073,1061,1133, + 1117,1082,1154,1144,1174,1168,1195,94,1871,20, + 1682,17,21,18,897,43,45,1054,875,423, + 635,205,1073,1061,1133,1117,1082,1154,1144,1174, + 1168,1195,94,1871,20,823,17,21,18,897, + 1030,45,1054,242,1276,362,118,1073,1061,1133, + 1117,1082,1154,1144,1174,1168,1195,75,1508,1871, + 20,359,17,21,18,897,1030,45,1054,23, + 212,823,1415,1073,1061,1133,1117,1082,1154,1144, + 1174,1168,1195,75,244,1871,20,74,17,21, + 18,897,43,45,1054,351,961,298,1685,1073, + 1061,1133,1117,2091,1154,1144,1174,1168,1195,94, + 1871,20,1543,17,21,18,897,43,45,1054, + 245,234,677,1058,1073,1061,1133,1117,1082,1154, + 1144,1174,1168,1195,94,1871,20,1646,17,21, + 18,897,43,45,1054,2014,320,202,1673,1073, + 1061,1133,1117,1082,1154,1144,1174,1168,1195,94, + 1871,20,848,17,21,18,897,43,45,1054, + 1128,340,1782,789,1073,1061,1133,1117,1082,1154, + 1144,1174,1168,1195,94,1871,20,1243,17,21, + 18,897,43,45,1054,67,339,203,561,1073, + 1061,1133,1117,569,1154,1144,1174,1168,1195,94, + 199,1663,388,1871,20,1082,17,21,18,897, + 43,35,1809,1871,20,1504,17,21,18,897, + 43,45,1054,273,1078,87,111,1073,1829,1221, + 96,1639,1172,2070,2009,1396,951,1860,1262,109, + 95,97,98,99,100,1030,1,1663,388,1871, + 20,1192,17,21,18,897,43,45,1054,823, + 110,369,1827,1073,1061,1133,1117,1875,1154,1946, + 387,87,111,1082,960,1221,96,107,1122,168, + 1542,295,299,1527,1262,109,95,97,98,99, + 100,352,264,1663,388,1668,2095,1823,20,314, + 17,21,18,897,353,1796,110,369,297,685, + 823,2882,254,213,1240,2090,387,87,111,2097, + 1082,1221,96,108,318,315,316,317,255,213, + 1262,109,95,97,98,99,100,413,2481,3059, + 1082,2921,1082,672,224,229,1568,318,315,316, + 317,811,110,369,218,456,221,223,2528,385, + 2535,830,387,2096,2278,1846,1996,413,293,107, + 2101,672,224,772,133,1663,388,2833,774,383, + 1082,325,218,456,221,223,1923,1847,20,620, + 17,21,18,897,41,1634,2054,1924,279,87, + 111,2109,2124,1221,96,318,315,316,317,784, + 1082,534,1262,109,95,97,98,99,100,155, + 662,2111,2921,1393,1385,534,450,106,1301,672, + 224,229,991,1710,110,369,2135,773,1060,311, + 219,456,221,223,387,413,1758,2882,940,1082, + 534,108,2091,1082,274,318,315,316,317,2154, + 1082,269,1281,1274,272,662,778,280,534,308, + 369,1560,2278,1670,3388,2882,1082,197,2562,672, + 224,229,3388,318,315,316,317,3388,259,3388, + 218,456,221,223,2582,197,3388,620,1437,1702, + 2263,3388,413,3388,2882,3388,1222,672,224,229, + 3388,3388,318,315,316,317,3388,3388,218,456, + 221,223,3388,3388,1222,1986,3388,155,662,2278, + 3388,3388,1477,1781,450,3388,672,224,229,3388, + 3388,2010,3388,3031,3388,193,3388,218,456,221, + 223,1643,1871,20,620,17,21,18,897,43, + 45,1054,3388,192,3388,3388,1073,1061,1133,1920, + 3388,3145,769,1998,3388,672,224,229,1436,3388, + 2476,198,3388,3388,156,662,218,456,221,223, + 3388,3388,1996,263,534,3388,277,3388,3388,1496, + 274,3388,318,315,316,317,3388,267,1281,1274, + 272,3388,672,224,229,3388,3388,3388,3388,2921, + 3388,2091,1336,218,456,221,223,264,3388,811, + 830,209,319,315,316,317,3388,274,2055,3388, + 2882,1470,1785,3388,267,1281,1274,272,318,315, + 316,317,3388,3388,3388,2617,3388,259,3388,3388, + 3388,3388,3388,3388,1755,2263,1542,1930,1702,3388, + 3388,261,672,224,229,1895,20,3388,17,21, + 18,897,34,218,456,221,223,3388,1871,20, + 1986,17,21,18,897,43,45,1054,254,213, + 1477,1781,1073,1061,1133,1117,2080,1154,1144,1936, + 3388,3388,3388,1670,3388,2882,318,315,316,317, + 398,3388,2971,319,315,316,317,3388,413,3388, + 2882,3388,3388,2921,3388,3388,3145,3388,319,315, + 316,317,657,1404,534,3388,199,672,224,229, + 3388,548,3388,49,3388,966,758,3388,218,456, + 221,223,672,224,229,1986,318,315,316,317, + 3388,2091,3388,218,456,221,223,1471,88,274, + 3139,3388,3388,2921,1092,758,267,1281,1274,272, + 672,224,1314,991,3388,318,315,316,317,209, + 3388,219,456,221,1250,3388,266,259,3388,1510, + 1785,3163,2921,758,1459,3388,388,1437,1702,672, + 224,229,991,318,315,316,317,844,1663,966, + 219,456,221,223,3388,3388,3388,3388,3388,88, + 2921,3388,3388,197,1169,1307,3388,672,224,1314, + 991,3388,87,111,892,1663,966,96,219,456, + 221,223,3388,3388,3388,1262,104,95,97,98, + 99,100,2270,3388,1006,1663,966,1384,1255,87, + 111,1054,1663,966,96,3388,3388,319,315,316, + 317,3388,1262,102,95,97,98,99,100,87, + 111,657,3388,534,96,3388,87,111,3388,3388, + 3388,96,1262,361,95,97,98,99,100,1262, + 103,95,97,98,99,100,2060,49,534,966, + 2091,1168,1663,966,3388,3388,318,315,316,317, + 1871,20,3388,17,21,18,897,43,45,1054, + 3388,3388,88,2921,1801,2091,87,111,1870,3388, + 3388,96,3388,811,3388,3388,259,3388,3388,1262, + 119,95,97,98,99,100,1999,1702,1216,1663, + 966,3388,3388,3388,3388,1264,1663,966,3388,1945, + 3388,259,1871,20,3388,17,21,18,897,43, + 48,1930,1702,87,111,1312,1663,966,96,3388, + 87,111,1360,1663,966,96,1262,115,95,97, + 98,99,100,1262,2015,95,97,98,99,100, + 87,111,1408,1663,966,96,3388,87,111,590, + 3388,484,96,1262,114,95,97,98,99,100, + 1262,121,95,97,98,99,100,87,111,3388, + 3388,3388,96,3388,3388,305,3388,369,557,3388, + 1262,120,95,97,98,99,100,318,315,316, + 317,3388,3388,1871,20,1113,17,21,18,897, + 43,45,1812,3388,2921,370,315,316,317,304, + 369,3388,3388,656,991,3388,3388,3388,3388,309, + 3388,1466,3388,318,315,316,317,135,213,3388, + 3388,370,315,316,317,3388,274,3388,3388,3388, + 2172,3388,3388,269,1281,1274,272,1531,3388,145, + 134,136,160,135,213,1991,3388,370,315,316, + 317,2001,301,303,3388,370,315,316,317,3388, + 406,370,315,316,317,148,134,136,160,135, + 213,3388,419,3388,966,1079,2847,135,213,3388, + 3388,3388,3388,135,213,319,315,316,317,3388, + 3388,151,134,136,160,3388,3388,88,125,154, + 134,136,160,1302,3388,365,134,136,160,1871, + 20,3388,17,21,18,897,43,45,1054,3388, + 3388,3388,3388,1073,1832,1871,20,723,17,21, + 18,897,43,45,1054,3388,3388,3388,3388,1073, + 1833,1871,20,3388,17,21,18,897,43,45, + 1054,3388,3388,3388,3388,1073,1845,1871,20,3388, + 17,21,18,897,43,45,1054,49,1432,966, + 2142,1073,1865,1871,20,3388,17,21,18,897, + 43,45,1054,758,3388,3388,277,1073,1869,3388, + 3388,3388,88,318,315,316,317,665,1890,484, + 1871,20,917,17,21,18,897,43,45,1817, + 2921,3388,318,315,316,317,3388,655,224,233, + 991,3388,1459,305,388,3388,557,274,1240,2725, + 3388,1102,1240,534,267,1281,1274,272,318,315, + 316,317,318,315,316,317,3388,88,1459,3388, + 388,197,1169,1307,1755,2921,3388,304,369,2921, + 197,3388,49,3388,966,811,3388,309,3388,811, + 3388,1533,1459,88,388,3388,3388,197,1169,1307, + 2270,319,315,316,317,3388,1463,88,1459,1222, + 388,2306,3388,1892,3388,2335,3388,88,951,3388, + 3388,197,1169,1307,3388,3388,2270,3388,3388,3388, + 302,303,1489,88,1459,3388,388,197,1169,1307, + 3388,1240,3388,3388,920,3388,966,3388,192,912, + 2270,318,315,316,317,3388,1515,1483,1998,88, + 1316,3388,388,197,1169,1307,2270,3388,2921,88, + 3388,3388,1541,3388,3388,116,1871,20,811,17, + 21,18,897,43,47,88,3388,3388,3388,1060, + 3388,116,2270,1459,920,388,966,3388,1566,3388, + 3388,1240,1871,20,2617,17,21,18,897,43, + 46,318,315,316,317,1509,3388,3388,88,88, + 1077,369,197,1169,1307,116,3388,3388,2921,1240, + 3388,1405,3388,423,3388,3388,3388,2040,811,318, + 315,316,317,318,315,316,317,319,315,316, + 317,2270,3388,3388,3388,3388,2921,1960,524,920, + 2427,966,3388,3388,1945,2010,811,3388,318,315, + 316,317,1895,20,3388,17,21,18,897,33, + 3388,3388,3388,2074,88,2427,49,2080,966,3388, + 116,3388,2363,318,315,316,317,318,315,316, + 317,1943,20,3388,17,21,18,897,1786,2069, + 3181,88,3388,3388,2921,2110,3388,2003,3388,318, + 315,316,317,3388,1482,318,315,316,317,784, + 2026,3388,3388,2126,3388,3388,3167,2085,3388,3388, + 3388,3388,3185,318,315,316,317,319,315,316, + 317,2100,3388,3388,860,2138,3388,3388,3388,2143, + 3189,319,315,316,317,319,315,316,317,319, + 315,316,317,3388,3388,3388,3388,3388,3388,3388, + 3388,3388,3388,3388,3388,3388,3388,3388,3388,3388, + 3388,3388,3388,3388,3388,3388,3388,3388,3388,3388, + 3388,3388,3388,3388,3388,3388,3388,3388,1688,3388, + 0,1,455,0,1,499,0,1,582,0, + 1,622,0,499,129,0,582,129,0,622, + 129,0,499,130,0,582,130,0,622,130, + 0,499,131,0,582,131,0,622,131,0, + 622,185,0,582,185,0,499,185,0,185, + 189,0,622,184,0,582,184,0,499,184, + 0,184,189,0,499,132,0,582,132,0, + 622,132,0,499,133,0,582,133,0,622, + 133,0,11,226,0,499,368,0,582,368, + 0,622,368,0,223,235,0,3396,1,0, + 622,380,0,582,380,0,499,380,0,592, + 32,0,2303,32,0,622,253,0,582,253, + 0,499,253,0,1,3625,0,223,236,0, + 179,20,0,8,10,0,1,3614,0,366, + 355,0,367,356,0,113,2555,0 }; }; public final static char baseAction[] = BaseAction.baseAction; @@ -739,21 +755,21 @@ public class GCCParserprs implements lpg.lpgjavaruntime.ParseTable, GCCParsersym 7,8,4,35,6,7,8,49,50,51, 52,53,54,55,56,57,58,59,60,26, 62,63,64,0,1,0,3,0,1,6, - 3,6,0,35,11,12,0,14,15,16, - 0,48,2,82,4,5,10,7,8,0, - 0,2,2,4,5,0,7,8,35,0, - 68,68,35,36,0,1,2,3,0,5, - 6,48,4,9,24,11,12,13,14,15, + 3,6,0,35,11,12,82,14,15,16, + 48,48,0,1,2,0,4,0,0,7, + 8,3,0,6,2,0,4,5,35,7, + 8,68,35,36,0,1,2,3,84,5, + 6,48,0,9,26,11,12,13,14,15, 16,17,18,19,20,21,22,23,65,66, 67,68,28,70,71,72,73,74,75,76, 0,78,79,80,81,82,83,84,85,86, 87,88,89,90,91,92,93,94,95,96, - 97,0,1,68,3,66,67,6,0,0, + 97,0,1,68,3,80,81,6,0,0, 98,2,11,12,5,14,15,16,10,10, - 0,77,0,88,89,90,91,92,93,94, - 95,96,97,0,14,2,35,4,5,0, + 68,77,0,88,89,90,91,92,93,94, + 95,96,97,0,0,2,35,4,5,0, 7,8,0,1,2,3,0,5,6,48, - 0,9,6,11,12,13,14,15,16,17, + 4,9,0,11,12,13,14,15,16,17, 18,19,20,21,22,23,65,66,67,68, 28,70,71,72,73,74,75,76,0,78, 79,80,81,82,83,84,85,86,87,88, @@ -775,8 +791,8 @@ public class GCCParserprs implements lpg.lpgjavaruntime.ParseTable, GCCParsersym 1,2,3,0,5,6,3,61,9,10, 11,12,13,14,15,16,17,18,19,20, 21,22,23,0,0,26,2,0,1,2, - 6,4,98,34,7,8,37,38,39,40, - 41,42,43,44,45,46,47,0,0,2, + 99,4,98,34,7,8,37,38,39,40, + 41,42,43,44,45,46,47,0,24,2, 3,4,5,0,7,8,9,4,0,1, 2,3,4,10,6,7,8,0,65,0, 1,24,25,0,27,28,29,30,31,32, @@ -800,132 +816,132 @@ public class GCCParserprs implements lpg.lpgjavaruntime.ParseTable, GCCParsersym 30,31,32,33,69,35,36,0,49,50, 51,52,53,54,55,56,57,58,59,60, 0,62,63,64,65,0,1,2,3,0, - 5,6,3,0,9,10,11,12,13,14, - 15,16,17,18,19,20,21,22,23,80, - 81,26,73,74,75,76,0,78,79,34, - 0,1,37,38,39,40,41,42,43,44, + 5,6,0,1,9,10,11,12,13,14, + 15,16,17,18,19,20,21,22,23,0, + 0,26,73,74,75,76,0,78,79,34, + 11,12,37,38,39,40,41,42,43,44, 45,46,47,0,1,2,3,0,5,6, 0,1,9,10,11,12,13,14,15,16, - 17,18,19,20,21,22,23,0,69,26, - 0,0,1,2,84,4,77,34,7,8, + 17,18,19,20,21,22,23,0,0,26, + 2,0,4,5,3,7,8,34,0,1, 37,38,39,40,41,42,43,44,45,46, 47,0,0,2,3,4,5,0,7,8, - 9,0,0,2,3,0,4,10,61,7, + 9,0,0,2,3,0,4,36,61,7, 8,0,86,87,13,24,25,0,27,28, 29,30,31,32,33,34,24,25,61,27, 28,29,30,31,32,33,69,36,0,1, 49,50,51,52,53,54,55,56,57,58, - 59,60,82,62,63,64,65,0,1,2, - 3,0,5,6,0,1,9,10,11,12, + 59,60,0,62,63,64,65,0,1,2, + 3,0,5,6,3,48,9,10,11,12, 13,14,15,16,17,18,19,20,21,22, 23,0,0,26,73,74,75,76,83,78, 79,34,11,12,37,38,39,40,41,42, - 43,44,45,46,47,0,1,2,3,48, - 5,6,0,1,9,10,11,12,13,14, + 43,44,45,46,47,0,1,2,3,0, + 5,6,3,61,9,10,11,12,13,14, 15,16,17,18,19,20,21,22,23,0, - 0,26,2,4,0,5,7,8,0,34, - 10,0,37,38,39,40,41,42,43,44, - 45,46,47,0,1,2,3,0,5,6, - 3,0,9,10,11,12,13,14,15,16, + 69,26,0,4,2,26,7,8,77,34, + 0,1,37,38,39,40,41,42,43,44, + 45,46,47,0,1,2,3,48,5,6, + 0,1,9,10,11,12,13,14,15,16, 17,18,19,20,21,22,23,0,0,26, - 0,4,48,26,7,8,48,34,10,48, + 2,4,0,5,7,8,0,34,10,0, 37,38,39,40,41,42,43,44,45,46, - 47,0,1,2,3,48,5,6,0,1, + 47,0,1,2,3,0,5,6,3,4, 9,10,11,12,13,14,15,16,17,18, - 19,20,21,22,23,0,0,26,2,4, - 0,5,7,8,0,34,0,1,37,38, + 19,20,21,22,23,0,0,26,0,4, + 2,26,7,8,6,34,10,48,37,38, 39,40,41,42,43,44,45,46,47,0, - 1,2,3,0,5,6,3,4,9,10, + 1,2,3,0,5,6,3,0,9,10, 11,12,13,14,15,16,17,18,19,20, - 21,22,23,0,0,26,2,4,48,26, + 21,22,23,0,0,26,2,4,0,26, 7,8,0,34,2,0,37,38,39,40, 41,42,43,44,45,46,47,0,1,2, - 3,0,5,6,3,0,9,10,11,12, + 3,48,5,6,0,1,9,10,11,12, 13,14,15,16,17,18,19,20,21,22, 23,0,1,26,3,0,1,2,3,0, - 1,34,3,99,37,38,39,40,41,42, + 1,34,3,48,37,38,39,40,41,42, 43,44,45,46,47,0,1,2,0,4, 5,69,7,8,9,0,35,36,10,4, - 35,36,7,8,0,36,65,3,83,24, - 25,0,27,28,29,30,31,32,33,24, - 25,10,27,28,29,30,31,32,33,0, - 26,2,3,0,49,50,51,52,53,54, + 35,36,7,8,0,36,0,0,2,24, + 25,5,27,28,29,30,31,32,33,24, + 25,14,27,28,29,30,31,32,33,0, + 0,2,3,0,49,50,51,52,53,54, 55,56,57,58,59,60,0,62,63,64, 0,0,2,0,4,5,0,7,8,9, - 0,0,0,10,4,36,4,7,8,7, - 8,0,11,12,24,25,0,27,28,29, + 0,10,0,10,4,36,4,7,8,7, + 8,0,0,1,24,25,0,27,28,29, 30,31,32,33,24,25,10,27,28,29, 30,31,32,33,61,24,25,0,27,49, 50,51,52,53,54,55,56,57,58,59, - 60,14,62,63,64,0,1,2,3,68, + 60,14,62,63,64,0,1,2,3,0, 5,6,66,67,9,10,11,12,13,14, 15,16,17,18,19,20,21,22,23,0, - 1,2,3,0,5,6,3,0,9,2, + 1,2,3,0,5,6,3,0,9,0, 11,12,13,14,15,16,17,18,19,20, 21,22,23,0,1,2,0,4,0,6, 7,8,0,1,2,0,1,5,6,36, 65,9,10,11,12,13,14,15,16,17, 18,19,20,21,22,23,0,0,35,0, 1,2,0,4,61,0,7,8,0,1, - 2,0,1,5,6,10,77,9,10,11, + 2,0,10,5,6,10,77,9,10,11, 12,13,14,15,16,17,18,19,20,21, - 22,23,0,1,2,0,1,5,6,0, - 0,9,10,11,12,13,14,15,16,17, - 18,19,20,21,22,23,0,1,2,0, + 22,23,0,1,2,0,68,5,6,0, + 1,9,10,11,12,13,14,15,16,17, + 18,19,20,21,22,23,0,1,2,48, 61,5,6,66,67,9,10,11,12,13, 14,15,16,17,18,19,20,21,22,23, 0,1,2,0,0,5,6,0,0,9, 10,11,12,13,14,15,16,17,18,19, - 20,21,22,23,0,1,2,68,0,5, - 6,24,25,9,27,11,12,13,14,15, - 16,17,18,19,20,21,22,23,0,1, - 2,0,0,5,6,0,0,9,6,11, - 12,13,14,15,16,17,18,19,20,21, - 22,23,0,1,2,0,0,5,6,24, - 25,9,27,11,12,13,14,15,16,17, - 18,19,20,21,22,23,0,1,2,0, - 0,5,6,0,0,9,6,11,12,13, - 14,15,16,17,18,19,20,21,22,23, - 0,1,2,71,72,5,6,24,25,9, - 27,11,12,13,14,15,16,17,18,19, 20,21,22,23,0,1,2,0,0,5, 6,0,0,9,6,11,12,13,14,15, 16,17,18,19,20,21,22,23,0,1, - 2,71,72,5,6,24,25,9,27,11, + 2,0,0,5,6,24,25,9,27,11, 12,13,14,15,16,17,18,19,20,21, - 22,23,0,1,2,0,0,5,6,0, - 0,9,0,11,12,13,14,15,16,17, + 22,23,0,1,2,68,0,5,6,0, + 0,9,6,11,12,13,14,15,16,17, 18,19,20,21,22,23,0,1,2,71, 72,5,6,24,25,9,27,11,12,13, 14,15,16,17,18,19,20,21,22,23, + 0,1,2,0,0,5,6,0,0,9, + 6,11,12,13,14,15,16,17,18,19, + 20,21,22,23,0,1,2,71,72,5, + 6,24,25,9,27,11,12,13,14,15, + 16,17,18,19,20,21,22,23,0,1, + 2,0,0,5,6,0,0,9,0,11, + 12,13,14,15,16,17,18,19,20,21, + 22,23,0,1,2,71,72,5,6,24, + 25,9,27,11,12,13,14,15,16,17, + 18,19,20,21,22,23,0,1,2,0, + 0,5,6,3,0,9,0,11,12,13, + 14,15,16,17,18,19,20,21,22,23, 0,0,1,0,4,0,0,7,8,4, - 0,6,7,8,4,0,61,7,8,0, - 1,2,3,61,24,25,0,27,28,29, + 0,6,7,8,4,83,36,7,8,0, + 1,2,3,0,24,25,3,27,28,29, 30,31,32,33,24,25,35,27,28,29, 30,31,32,33,0,0,1,3,4,0, 0,7,8,4,35,36,7,8,0,0, 15,16,3,0,0,1,2,48,4,0, 26,7,8,4,69,6,7,8,0,0, - 35,2,4,0,5,7,8,4,0,0, - 7,8,48,4,0,36,7,8,4,84, + 35,2,4,0,5,7,8,4,65,0, + 7,8,48,4,0,36,7,8,4,0, 0,7,8,3,0,0,0,48,3,0, - 0,61,68,4,35,70,7,8,0,0, - 0,3,0,4,0,61,7,8,4,0, - 85,7,8,0,0,0,36,3,69,4, - 0,36,7,8,26,35,0,0,48,70, - 10,4,0,48,7,8,0,0,0,3, - 3,3,0,0,2,0,48,5,80,81, - 36,0,66,67,0,10,0,0,0,0, - 70,10,0,61,10,0,10,0,0,0, - 61,0,36,36,61,0,0,0,0,0, - 0,0,0,0,0,0,0,61,0,0, + 0,0,68,4,35,70,7,8,0,0, + 0,0,0,4,3,61,7,8,24,25, + 85,27,10,0,0,0,36,3,69,4, + 0,36,7,8,0,82,35,0,48,70, + 10,4,0,48,7,8,4,36,0,7, + 8,0,0,0,2,66,67,5,10,0, + 0,10,66,67,0,0,0,0,0,61, + 10,70,0,0,10,0,0,0,0,0, + 80,81,0,0,61,0,0,0,0,65, + 0,0,0,0,84,61,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,0,0,0,61,0,0,0,0,0, + 61,0,0,0,0,0,61,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,0 + 0,0,0,0,0,0 }; }; public final static byte termCheck[] = TermCheck.termCheck; @@ -933,228 +949,229 @@ public class GCCParserprs implements lpg.lpgjavaruntime.ParseTable, GCCParsersym public interface TermAction { public final static char termAction[] = {0, - 3302,1,5824,1596,3155,5811,1,1,1,1, - 523,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,3311,1,1,1, - 1,1,1,1,3403,55,343,1048,931,894, - 1065,1072,2008,1044,867,1058,545,1051,1,1, + 3388,1,5941,1735,3241,5935,1,1,1,1, + 925,1,1,1,1,1,1,1,1,1, + 1,1,1,1,1,1,3397,1,1,1, + 1,1,1,1,3489,55,344,1457,979,941, + 1210,1662,463,1359,1038,1652,2722,1612,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,3644,1,1,1,3309,8,3287,3287,3287, - 3287,3287,3287,3287,3287,3287,3287,3287,3287,3287, - 3287,3287,3287,3287,3287,3287,3287,3287,3287,3287, - 3287,3287,3287,3287,3287,3287,3287,3287,3287,3287, - 3287,653,689,3287,3287,3287,3287,3287,3287,3287, - 3287,3287,3287,3287,348,3287,3287,3287,3287,3287, - 3287,3287,3287,3287,3287,3287,3287,834,3287,3287, - 3287,3287,3302,1,5824,1596,3155,5811,1,1, - 1,1,523,1,1,1,1,1,1,1, - 1,1,1,1,1,1,1,1,3311,1, - 1,1,1,1,1,1,3403,357,286,1048, - 931,894,1065,1072,2008,1044,867,1058,545,1051, - 3302,1,1,1,1,1,1,1,1,1, - 1,1,1,1745,1,1,1,3309,3302,1, - 5824,3312,3155,5811,1,1,1,1,523,1, + 1,3731,1,1,1,3395,8,3373,3373,3373, + 3373,3373,3373,3373,3373,3373,3373,3373,3373,3373, + 3373,3373,3373,3373,3373,3373,3373,3373,3373,3373, + 3373,3373,3373,3373,3373,3373,3373,3373,3373,3373, + 3373,800,2490,3373,3373,3373,3373,3373,3373,3373, + 3373,3373,3373,3373,349,3373,3373,3373,3373,3373, + 3373,3373,3373,3373,3373,3373,3373,904,3373,3373, + 3373,3373,3388,1,5941,1735,3241,5935,1,1, + 1,1,925,1,1,1,1,1,1,1, + 1,1,1,1,1,1,1,1,3397,1, + 1,1,1,1,1,1,3489,358,286,1457, + 979,941,1210,1662,463,1359,1038,1652,2722,1612, + 3388,1,1,1,1,1,1,1,1,1, + 1,1,1,1040,1,1,1,3395,3388,1, + 5941,3398,3241,5935,1,1,1,1,925,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,3311,1,1,1,1,1, - 1,1,3403,653,689,1048,931,894,1065,1072, - 2008,1044,867,1058,545,1051,3302,1,1,1, - 1,1,1,1,1,1,1,1,1,834, - 1,1,1,3302,1,5824,3312,3155,5811,1, - 1,1,1,523,1,1,1,1,1,1, - 1,1,1,1,1,1,1,1,1,3311, - 1,1,1,1,1,1,1,3403,356,3302, - 1048,931,894,1065,1072,2008,1044,867,1058,545, - 1051,3302,1,1,1,1,1,1,1,1, - 1,1,1,1,3302,1,1,1,3302,2820, - 3313,67,554,3314,2739,471,514,3014,220,2727, - 2561,3318,2751,2986,2976,2968,3315,3316,3317,2415, - 2339,1958,3516,3518,3302,3517,3465,3466,3464,3519, - 3467,3463,157,235,653,689,223,3266,268,2723, - 3266,3266,554,839,253,471,514,3470,3475,3474, - 3472,3473,3471,3476,3477,3469,3478,3479,3480,223, - 2180,2075,2041,1,3314,3302,3314,1,2723,3314, - 265,2984,3302,839,3314,3314,3302,3314,3314,3314, - 185,223,3203,814,3194,3203,456,3200,3197,184, - 325,3215,3628,3206,3215,43,3212,3209,3314,59, - 701,223,839,265,1,2820,3313,3306,1,3314, - 2323,3314,3155,1142,3629,2727,2561,3318,2751,2986, - 2976,2968,3315,3316,3317,2415,2339,1958,3314,3314, - 3314,3314,919,3314,3314,3314,3314,3314,3314,3314, - 3302,3314,3314,3314,3314,3314,3314,3314,3314,3314, - 3314,3314,3314,3314,3314,3314,3314,3314,3314,3314, - 3314,1,3313,1382,3313,653,689,3313,1,3302, - 3154,3313,3313,3313,3314,3313,3313,3313,523,1194, - 65,3305,3302,1357,1332,1307,1282,1257,1207,1232, - 1182,1157,1101,206,420,5852,3313,554,5852,3302, - 471,514,3302,2820,3313,3306,3302,3314,2399,3313, - 3302,1142,2988,2727,2561,3318,2751,2986,2976,2968, - 3315,3316,3317,2415,2339,1958,3313,3313,3313,3313, - 1507,3313,3313,3313,3313,3313,3313,3313,3302,3313, - 3313,3313,3313,3313,3313,3313,3313,3313,3313,3313, - 3313,3313,3313,3313,3313,3313,3313,3313,3313,3302, - 1,1,3312,3155,1,1,1,1,1,3302, - 355,366,366,3296,366,1738,3296,366,366,3305, - 5836,3302,411,1,1,3311,1,1,1,1, - 1,1,1,3608,366,366,3296,366,366,366, - 366,366,366,366,1,366,3296,3312,1,1, + 1,1,1,1,3397,1,1,1,1,1, + 1,1,3489,800,2490,1457,979,941,1210,1662, + 463,1359,1038,1652,2722,1612,3388,1,1,1, + 1,1,1,1,1,1,1,1,1,904, + 1,1,1,3388,1,5941,3398,3241,5935,1, + 1,1,1,925,1,1,1,1,1,1, + 1,1,1,1,1,1,1,1,1,3397, + 1,1,1,1,1,1,1,3489,357,3388, + 1457,979,941,1210,1662,463,1359,1038,1652,2722, + 1612,3388,1,1,1,1,1,1,1,1, + 1,1,1,1,67,1,1,1,3388,2938, + 3399,3388,622,3400,1106,499,582,3131,220,876, + 838,3404,1753,3102,2225,1937,3401,3402,3403,739, + 521,1847,3602,3604,71,3603,3551,3552,3550,3605, + 3553,3549,347,235,800,2490,223,3334,268,2818, + 3334,3334,622,850,253,499,582,3556,3561,3560, + 3558,3559,3557,3562,3563,3555,3564,3565,3566,223, + 2852,3088,3063,1,3400,3388,3400,1,2818,3400, + 265,2256,3388,850,3400,3400,1115,3400,3400,3400, + 390,223,1,1859,3614,63,3250,3388,1,3244, + 3247,3398,185,3117,3289,43,3280,3289,3400,3286, + 3283,223,850,265,1,2938,3399,3392,2238,3400, + 663,3400,157,1090,3397,876,838,3404,1753,3102, + 2225,1937,3401,3402,3403,739,521,1847,3400,3400, + 3400,3400,915,3400,3400,3400,3400,3400,3400,3400, + 3388,3400,3400,3400,3400,3400,3400,3400,3400,3400, + 3400,3400,3400,3400,3400,3400,3400,3400,3400,3400, + 3400,1,3399,1419,3399,751,595,3399,3388,3388, + 3240,3399,3399,3399,3400,3399,3399,3399,417,1074, + 713,3391,3388,1393,1367,1341,1315,1289,1237,1263, + 1211,1185,1156,184,3388,3301,3399,3292,3301,3388, + 3298,3295,3388,2938,3399,3392,1,3400,701,3399, + 3241,1090,3388,876,838,3404,1753,3102,2225,1937, + 3401,3402,3403,739,521,1847,3399,3399,3399,3399, + 1497,3399,3399,3399,3399,3399,3399,3399,3388,3399, + 3399,3399,3399,3399,3399,3399,3399,3399,3399,3399, + 3399,3399,3399,3399,3399,3399,3399,3399,3399,3388, + 1,1,3398,3241,1,1,1,1,1,3388, + 356,367,367,3382,367,1983,3382,367,367,3391, + 5900,3388,926,1,1,3397,1,1,1,1, + 1,1,1,3694,367,367,3382,367,367,367, + 367,367,367,367,3388,367,3382,3398,1,1, 1,1,1,1,1,1,1,1,1,1, - 129,1,1,1,3173,182,1,3167,3170,554, - 3311,3302,471,514,3302,1,1,3312,3155,1, - 1,1,1,1,3516,3518,3302,3517,3465,3466, - 3464,3519,3467,3463,1,548,3528,300,1,1, - 3311,1,1,1,1,1,1,1,3608,3470, - 3475,3474,3472,3473,3471,3476,3477,3469,3478,3479, - 3480,3302,580,1,1,1,1,1,1,1, - 1,1,1,1,1,3560,1,1,1,3302, - 1,5824,3312,1,5811,1,3248,2263,1,523, + 129,1,1,1,3259,182,1,3253,3256,622, + 3397,113,499,582,3388,1,1,3398,3241,1, + 1,1,1,1,3602,3604,3388,3603,3551,3552, + 3550,3605,3553,3549,1,1859,3614,300,1,1, + 3397,1,1,1,1,1,1,1,3694,3556, + 3561,3560,3558,3559,3557,3562,3563,3555,3564,3565, + 3566,3388,569,1,1,1,1,1,1,1, + 1,1,1,1,1,3646,1,1,1,3388, + 1,5941,3398,1,5935,1,3337,2377,1,925, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,3302,3302,3311,2014,1,548,3528, - 1575,3164,299,3403,3158,3161,1048,931,894,1065, - 1072,2008,1044,867,1058,545,1051,3302,3302,1, - 191,1,1,1,1,1,1,3155,20,3281, - 179,3281,179,523,3281,179,179,60,3309,3302, - 998,1,1,271,1,1,1,1,1,1, - 1,3498,179,179,3281,179,179,179,179,179, - 179,179,3302,3281,3281,3306,1,1,1,1, - 1,1,1,1,1,1,1,1,839,1, - 1,1,191,3302,1,5824,3312,346,5811,1, - 3302,646,1,523,1,1,1,1,1,1, - 1,1,1,1,1,1,1,52,3302,3311, - 2702,2690,2678,2666,3302,2654,2630,3403,1709,726, - 1048,931,894,1065,1072,2008,1044,867,1058,545, - 1051,3302,1,5824,3312,1297,5811,1,3302,3305, - 1,523,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,376,3311,5854,1, - 554,5854,117,471,514,3403,222,584,1048,931, - 894,1065,1072,2008,1044,867,1058,545,1051,3302, - 3302,1,190,1,1,117,1,1,1,63, - 354,365,365,3293,365,117,3293,365,365,62, - 3302,839,3313,1,1,3314,1,1,1,1, - 1,1,1,3498,365,365,3293,365,365,365, - 365,365,365,365,3559,365,3293,3302,1,1, + 1,1,1,3388,326,3397,3715,253,1859,3614, + 3385,622,299,3489,499,582,1457,979,941,1210, + 1662,463,1359,1038,1652,2722,1612,3388,3716,1, + 191,1,1,1,1,1,1,3241,20,3370, + 179,3370,179,925,3370,179,179,60,3395,3388, + 792,1,1,271,1,1,1,1,1,1, + 1,3584,179,179,3370,179,179,179,179,179, + 179,179,3388,3370,3370,3392,1,1,1,1, + 1,1,1,1,1,1,1,1,850,1, + 1,1,191,3388,1,5941,3398,256,5935,1, + 3388,799,1,925,1,1,1,1,1,1, + 1,1,1,1,1,1,1,52,3388,3397, + 2823,2807,2791,2775,3388,2759,1763,3489,2850,2633, + 1457,979,941,1210,1662,463,1359,1038,1652,2722, + 1612,3388,1,5941,3398,1138,5935,1,3388,3391, + 1,925,1,1,1,1,1,1,1,1, + 1,1,1,1,1,1,206,3397,5936,1, + 622,5936,117,499,582,3489,222,605,1457,979, + 941,1210,1662,463,1359,1038,1652,2722,1612,3388, + 3388,1,190,1,1,117,1,1,1,3388, + 355,366,366,3379,366,117,3379,366,366,62, + 3388,850,3399,1,1,3400,1,1,1,1, + 1,1,1,3584,366,366,3379,366,366,366, + 366,366,366,366,3645,366,3379,3388,1,1, 1,1,1,1,1,1,1,1,1,1, - 71,1,1,1,190,3302,1,5824,3312,3302, - 5811,1,3306,3302,1,523,1,1,1,1, - 1,1,1,1,1,1,1,1,1,1724, - 444,3311,2702,2690,2678,2666,73,2654,2630,3403, - 11,3236,1048,931,894,1065,1072,2008,1044,867, - 1058,545,1051,3302,1,5824,3312,3302,5811,1, - 3302,415,1,523,1,1,1,1,1,1, - 1,1,1,1,1,1,1,3302,1682,3311, - 68,253,548,3528,1804,554,3305,3403,471,514, - 1048,931,894,1065,1072,2008,1044,867,1058,545, - 1051,3302,3302,1,191,1,1,229,1,1, - 1,3302,130,2077,3308,69,3182,232,2279,3176, - 3179,61,496,2736,2039,1,1,3302,1,1, - 1,1,1,1,1,3498,3516,3518,2352,3517, - 3465,3466,3464,3519,3467,3463,1432,3307,349,997, + 3388,1,1,1,190,3388,1,5941,3398,3388, + 5935,1,11,3322,1,925,1,1,1,1, + 1,1,1,1,1,1,1,1,1,54, + 3388,3397,2823,2807,2791,2775,73,2759,1763,3489, + 2850,2633,1457,979,941,1210,1662,463,1359,1038, + 1652,2722,1612,3388,1,5941,3398,3388,5935,1, + 3388,459,1,925,1,1,1,1,1,1, + 1,1,1,1,1,1,1,3388,377,3397, + 5940,3388,622,5940,3394,499,582,3489,350,1010, + 1457,979,941,1210,1662,463,1359,1038,1652,2722, + 1612,3388,3388,1,191,1,1,3388,1,1, + 1,3388,130,1718,3394,69,3268,3393,2404,3262, + 3265,61,432,512,1693,1,1,89,1,1, + 1,1,1,1,1,3584,3602,3604,2431,3603, + 3551,3552,3550,3605,3553,3549,1523,3393,337,1411, 1,1,1,1,1,1,1,1,1,1, - 1,1,814,1,1,1,191,3302,1,5824, - 3312,256,5811,1,336,1832,1,523,1,1, + 1,1,1,1,1,1,191,3388,1,5941, + 3398,3388,5935,1,3392,1445,1,925,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,54,3302,3311,2702,2690,2678,2666,737,2654, - 2630,3403,1709,726,1048,931,894,1065,1072,2008, - 1044,867,1058,545,1051,3302,1,5824,3312,611, - 5811,1,3302,2867,1,523,1,1,1,1, + 1,53,3388,3397,2823,2807,2791,2775,1799,2759, + 1763,3489,2850,2633,1457,979,941,1210,1662,463, + 1359,1038,1652,2722,1612,3388,1,5941,3398,3388, + 5935,1,3398,2,1,925,1,1,1,1, 1,1,1,1,1,1,1,1,1,253, - 3302,3311,3313,554,89,3314,471,514,30,3403, - 1195,207,1048,931,894,1065,1072,2008,1044,867, - 1058,545,1051,3302,1,5824,3312,3302,5811,1, - 3312,3302,1,523,1,1,1,1,1,1, - 1,1,1,1,1,1,1,377,3302,3311, - 3302,554,1407,3311,471,514,3331,3403,1345,5840, - 1048,931,894,1065,1072,2008,1044,867,1058,545, - 1051,3302,1,5824,3312,1979,5811,1,3302,881, - 1,523,1,1,1,1,1,1,1,1, - 1,1,1,1,1,380,208,3311,3313,554, - 30,3314,471,514,113,3403,3302,1244,1048,931, - 894,1065,1072,2008,1044,867,1058,545,1051,3302, - 1,5824,3312,1,5811,1,117,3155,1,523, + 1725,3397,3388,622,1823,3397,499,582,3391,3489, + 3388,2990,1457,979,941,1210,1662,463,1359,1038, + 1652,2722,1612,3388,1,5941,3398,2052,5935,1, + 3388,2477,1,925,1,1,1,1,1,1, + 1,1,1,1,1,1,1,159,3388,3397, + 3399,622,3388,3400,499,582,3388,3489,1181,30, + 1457,979,941,1210,1662,463,1359,1038,1652,2722, + 1612,3388,1,5941,3398,1,5935,1,117,3241, + 1,925,1,1,1,1,1,1,1,1, + 1,1,1,1,1,378,229,3397,3388,622, + 1617,117,499,582,1727,3489,232,3417,1457,979, + 941,1210,1662,463,1359,1038,1652,2722,1612,3388, + 1,5941,3398,3388,5935,1,3398,3388,1,925, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,379,3302,3311,2130,3251,664,117, - 3257,3254,1,3403,3278,70,1048,931,894,1065, - 1072,2008,1044,867,1058,545,1051,3302,1,5824, - 3312,3302,5811,1,3310,3302,1,523,1,1, + 1,1,1,381,3388,3397,3626,622,3388,3397, + 499,582,1,3489,3364,207,1457,979,941,1210, + 1662,463,1359,1038,1652,2722,1612,3388,1,5941, + 3398,2188,5935,1,3388,2817,1,925,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,2723,3311,3308,1,2050,3290,3308,3302, - 713,3403,3308,3299,1048,931,894,1065,1072,2008, - 1044,867,1058,545,1051,1,548,593,3302,3164, - 3314,3560,3158,3161,1063,131,839,3307,1495,3191, - 839,3307,3185,3188,3302,3307,3309,3312,737,3516, - 3518,366,3517,3465,3466,3464,3519,3467,3463,3516, - 3518,5836,3517,3465,3466,3464,3519,3467,3463,3302, - 3311,871,3308,3302,3470,3475,3474,3472,3473,3471, - 3476,3477,3469,3478,3479,3480,3302,2180,2075,2041, - 3302,211,3313,3302,554,3314,58,471,514,1063, - 132,53,159,1544,3224,3307,554,3218,3221,471, - 514,249,1709,726,3516,3518,229,3517,3465,3466, - 3464,3519,3467,3463,3516,3518,233,3517,3465,3466, - 3464,3519,3467,3463,2336,1,1,66,1,3470, - 3475,3474,3472,3473,3471,3476,3477,3469,3478,3479, - 3480,420,2180,2075,2041,1,2820,4179,29,1457, - 4081,2739,653,689,1142,5836,2727,2561,3318,2751, - 2986,2976,2968,3315,3316,3317,2415,2339,1958,3302, - 2820,3313,3306,3302,3314,2739,3308,3302,1142,3540, - 2727,2561,3318,2751,2986,2976,2968,3315,3316,3317, - 2415,2339,1958,268,2050,3528,3302,554,3302,253, - 471,514,3302,2820,3313,3302,1294,3314,2739,3307, - 29,1142,5836,2727,2561,3318,2751,2986,2976,2968, - 3315,3316,3317,2415,2339,1958,3302,57,839,1, - 548,3528,3302,3164,933,355,3158,3161,3302,2820, - 3313,323,869,3314,2739,5836,3305,1142,5836,2727, - 2561,3318,2751,2986,2976,2968,3315,3316,3317,2415, - 2339,1958,1,2820,4179,3302,1344,4081,2739,3302, - 3302,1142,5836,2727,2561,3318,2751,2986,2976,2968, - 3315,3316,3317,2415,2339,1958,381,2820,3313,3302, - 1532,3314,2739,653,689,1142,5836,2727,2561,3318, - 2751,2986,2976,2968,3315,3316,3317,2415,2339,1958, - 3302,2820,3313,3302,3302,3314,2739,3302,3302,1142, - 5836,2727,2561,3318,2751,2986,2976,2968,3315,3316, - 3317,2415,2339,1958,3302,2768,3313,785,3302,3314, - 2739,3516,3518,1142,3517,2727,2561,3318,2751,2986, - 2976,2968,3315,3316,3317,2415,2339,1958,3302,2803, - 3313,3302,49,3314,2739,250,3302,1142,2940,2727, - 2561,3318,2751,2986,2976,2968,3315,3316,3317,2415, - 2339,1958,3302,2810,3313,3302,3302,3314,2739,1, - 1,1142,1,2727,2561,3318,2751,2986,2976,2968, - 3315,3316,3317,2415,2339,1958,3302,2813,3313,3302, - 51,3314,2739,248,3302,1142,2940,2727,2561,3318, - 2751,2986,2976,2968,3315,3316,3317,2415,2339,1958, - 3302,2820,3313,2910,2901,3314,2739,3516,3518,1142, - 3517,2727,2561,3318,2751,2986,2976,2968,3315,3316, - 3317,2415,2339,1958,3302,2823,3313,3302,50,3314, - 2739,251,3302,1142,2940,2727,2561,3318,2751,2986, - 2976,2968,3315,3316,3317,2415,2339,1958,1,2820, - 3313,2910,2901,3314,2739,3516,3518,1142,3517,2727, - 2561,3318,2751,2986,2976,2968,3315,3316,3317,2415, - 2339,1958,3302,2895,3313,1,3302,3314,2739,252, - 3302,1142,3302,2727,2561,3318,2751,2986,2976,2968, - 3315,3316,3317,2415,2339,1958,331,2820,3313,2910, - 2901,3314,2739,3516,3518,1142,3517,2727,2561,3318, - 2751,2986,2976,2968,3315,3316,3317,2415,2339,1958, - 133,270,798,3302,3233,1,3302,3227,3230,3164, - 367,253,3158,3161,3245,72,2,3239,3242,1, - 2050,3528,262,1557,3516,3518,3302,3517,3465,3466, - 3464,3519,3467,3463,3516,3518,839,3517,3465,3466, - 3464,3519,3467,3463,236,32,3260,223,3284,183, - 3302,3284,3284,554,839,262,471,514,3302,3302, - 3328,3329,3308,3302,1,548,3528,262,3164,1, - 223,3158,3161,3164,3560,253,3158,3161,253,3302, - 3263,3313,3269,371,3314,3275,3272,554,64,370, - 471,514,223,554,378,3307,471,514,554,1804, - 3302,471,514,3308,3302,3302,56,749,3308,372, - 292,1582,223,554,1632,488,471,514,3302,200, - 3302,3312,201,554,373,1532,471,514,554,3302, - 434,471,514,1,3302,374,3307,3308,3560,554, - 353,3307,471,514,3311,1657,1,375,1748,1696, - 5836,554,3302,1019,471,514,1,1,285,3308, - 91,1419,207,3302,1646,42,2108,1646,1724,444, - 3307,3302,653,689,189,5836,380,3302,3302,3302, - 1761,5836,3302,1607,206,3302,376,3302,3302,3302, - 3685,3302,3307,91,3314,3302,3302,3302,3302,3302, - 3302,3302,3302,3302,3302,3302,3302,3313,3302,3302, - 3302,3302,3302,3302,3302,3302,3302,3302,3302,3302, - 3302,3302,3302,1419 + 1,1,2818,3397,3394,1,2128,3376,3394,3388, + 434,3489,3394,5928,1457,979,941,1210,1662,463, + 1359,1038,1652,2722,1612,1,1859,650,1,3250, + 3400,3646,3244,3247,1018,131,850,3393,925,3277, + 850,3393,3271,3274,3388,3393,208,65,3399,3602, + 3604,3400,3603,3551,3552,3550,3605,3553,3549,3602, + 3604,2102,3603,3551,3552,3550,3605,3553,3549,3388, + 3388,968,3394,3388,3556,3561,3560,3558,3559,3557, + 3562,3563,3555,3564,3565,3566,3388,2852,3088,3063, + 3388,3388,3399,3388,622,3400,59,499,582,1018, + 132,1378,380,1430,3310,3393,3340,3304,3307,3346, + 3343,3388,3388,2912,3602,3604,229,3603,3551,3552, + 3550,3605,3553,3549,3602,3604,233,3603,3551,3552, + 3550,3605,3553,3549,2424,3602,3604,66,3603,3556, + 3561,3560,3558,3559,3557,3562,3563,3555,3564,3565, + 3566,2102,2852,3088,3063,1,2938,4267,29,3388, + 4169,1106,800,2490,1090,5900,876,838,3404,1753, + 3102,2225,1937,3401,3402,3403,739,521,1847,3388, + 2938,3399,3392,3388,3400,1106,3394,3388,1090,3388, + 876,838,3404,1753,3102,2225,1937,3401,3402,3403, + 739,521,1847,268,2128,3614,3388,622,211,253, + 499,582,3388,2938,3399,324,886,3400,1106,3393, + 29,1090,5900,876,838,3404,1753,3102,2225,1937, + 3401,3402,3403,739,521,1847,3388,58,850,1, + 1859,3614,3388,3250,422,367,3244,3247,3388,2938, + 3399,30,1456,3400,1106,5900,3391,1090,5900,876, + 838,3404,1753,3102,2225,1937,3401,3402,3403,739, + 521,1847,1,2938,4267,3388,1548,4169,1106,3388, + 3116,1090,5900,876,838,3404,1753,3102,2225,1937, + 3401,3402,3403,739,521,1847,382,2938,3399,675, + 1625,3400,1106,800,2490,1090,5900,876,838,3404, + 1753,3102,2225,1937,3401,3402,3403,739,521,1847, + 3388,2938,3399,3388,3388,3400,1106,3388,3388,1090, + 5900,876,838,3404,1753,3102,2225,1937,3401,3402, + 3403,739,521,1847,3388,2364,3399,3388,49,3400, + 1106,249,3388,1090,3032,876,838,3404,1753,3102, + 2225,1937,3401,3402,3403,739,521,1847,3388,2872, + 3399,3388,3388,3400,1106,1,1,1090,1,876, + 838,3404,1753,3102,2225,1937,3401,3402,3403,739, + 521,1847,3388,2898,3399,812,51,3400,1106,248, + 3388,1090,3032,876,838,3404,1753,3102,2225,1937, + 3401,3402,3403,739,521,1847,3388,2922,3399,3006, + 2542,3400,1106,3602,3604,1090,3603,876,838,3404, + 1753,3102,2225,1937,3401,3402,3403,739,521,1847, + 3388,2938,3399,3388,50,3400,1106,250,3388,1090, + 3032,876,838,3404,1753,3102,2225,1937,3401,3402, + 3403,739,521,1847,3388,2964,3399,3006,2542,3400, + 1106,1,1,1090,1,876,838,3404,1753,3102, + 2225,1937,3401,3402,3403,739,521,1847,1,2938, + 3399,3388,70,3400,1106,251,3388,1090,3388,876, + 838,3404,1753,3102,2225,1937,3401,3402,3403,739, + 521,1847,3388,3023,3399,3006,2542,3400,1106,3602, + 3604,1090,3603,876,838,3404,1753,3102,2225,1937, + 3401,3402,3403,739,521,1847,332,2938,3399,3388, + 1,3400,1106,3394,3388,1090,3388,876,838,3404, + 1753,3102,2225,1937,3401,3402,3403,739,521,1847, + 133,270,1057,3388,3319,1,3388,3313,3316,3250, + 368,253,3244,3247,3331,1799,3393,3325,3328,1, + 2128,3614,262,3388,3602,3604,3396,3603,3551,3552, + 3550,3605,3553,3549,3602,3604,850,3603,3551,3552, + 3550,3605,3553,3549,236,32,3349,223,3367,372, + 3388,3367,3367,622,850,262,499,582,3388,3388, + 3414,3415,3394,68,1,1859,3614,262,3250,1, + 223,3244,3247,3250,3646,253,3244,3247,371,3388, + 3352,3399,622,183,3400,499,582,622,3395,253, + 499,582,223,3355,373,3393,3361,3358,622,57, + 3388,499,582,3394,252,3388,56,837,3394,379, + 64,292,223,622,1650,673,499,582,3388,200, + 72,1,356,622,91,1625,499,582,3602,3604, + 457,3603,5900,3388,285,374,3393,1377,3646,622, + 354,3393,499,582,201,1115,1700,375,1974,1353, + 5900,622,376,1028,499,582,622,91,42,499, + 582,3388,207,3388,414,800,2490,414,5900,1, + 189,5900,800,2490,381,1,3388,3388,3388,1573, + 206,1636,3388,3388,377,3388,3388,3388,3388,3388, + 751,595,3388,3388,1599,3388,3388,3388,3388,1377, + 3388,3388,3388,3388,2238,1675,3388,3388,3388,3388, + 3388,3388,3388,3388,3388,3388,3388,3388,3388,3388, + 3388,3388,3388,3388,3772,3388,3388,3388,3388,3388, + 3400,3388,3388,3388,3388,3388,3399 }; }; public final static char termAction[] = TermAction.termAction; @@ -1162,44 +1179,44 @@ public class GCCParserprs implements lpg.lpgjavaruntime.ParseTable, GCCParsersym public interface Asb { public final static char asb[] = {0, - 511,1,281,464,128,511,282,751,582,282, - 282,282,594,746,594,746,746,594,746,594, - 132,130,119,282,594,466,563,130,3,435, - 337,253,580,55,746,494,491,494,55,494, - 746,130,135,327,338,132,59,60,652,563, - 563,563,563,563,563,563,563,563,563,563, - 706,77,466,751,421,196,130,199,137,132, - 169,67,204,66,436,71,253,257,338,748, - 341,751,375,135,327,130,652,210,654,706, - 706,706,706,706,338,338,338,332,451,435, - 494,494,236,563,466,130,196,196,39,130, - 3,422,545,580,435,561,422,422,494,282, - 282,548,282,282,422,614,563,614,128,31, - 205,252,751,748,341,375,375,327,327,654, - 262,232,682,381,214,392,397,395,405,399, - 408,407,410,409,411,338,330,466,31,338, - 338,338,338,338,12,132,649,30,29,425, - 81,563,436,338,563,232,721,196,372,751, - 169,137,495,338,432,422,422,449,563,497, - 563,563,548,614,499,548,130,71,338,235, - 338,338,341,372,606,341,375,377,502,377, - 327,682,31,682,232,213,210,563,563,563, - 563,563,563,563,563,563,563,563,563,563, - 563,563,563,563,563,563,563,563,563,563, - 563,563,563,563,563,563,563,686,563,649, - 132,654,284,284,284,39,751,332,338,616, - 652,563,85,706,435,372,37,338,561,422, - 338,282,338,338,548,563,548,31,341,608, - 377,372,563,494,682,327,495,563,563,232, - 214,395,395,392,392,399,399,397,397,397, - 397,397,397,407,405,409,408,614,614,410, - 616,330,338,654,338,37,422,561,548,563, - 548,548,235,372,421,563,417,608,418,372, - 327,232,232,563,563,338,288,377,164,236, - 422,338,434,608,563,418,418,372,35,202, - 146,494,563,614,8,338,236,422,548,418, - 77,39,507,494,563,548,338,563,232,548, - 232 + 679,1,416,382,552,679,417,384,677,47, + 417,417,417,59,672,59,672,672,59,672, + 59,386,384,373,417,59,554,28,419,677, + 554,469,187,384,125,124,190,160,386,252, + 523,248,327,45,156,672,582,579,582,156, + 582,672,384,389,238,249,386,719,28,28, + 28,28,28,28,28,28,28,28,28,632, + 331,132,391,131,554,384,187,187,284,719, + 140,384,524,7,327,424,249,674,473,677, + 507,389,238,384,721,632,632,632,632,632, + 249,249,249,243,539,523,582,582,310,28, + 419,470,713,45,647,554,382,187,397,306, + 749,429,288,440,445,443,453,447,456,455, + 458,457,459,721,504,677,160,252,523,26, + 470,470,582,417,417,13,417,417,470,79, + 28,79,382,120,392,326,677,674,473,507, + 507,238,238,249,241,120,249,249,249,249, + 249,101,386,716,119,118,513,335,28,524, + 249,28,306,583,249,384,749,306,287,284, + 28,28,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,28,28, + 28,28,28,28,28,28,28,28,28,28, + 81,28,120,504,138,520,470,470,537,28, + 585,28,28,13,79,587,13,384,7,249, + 309,249,249,473,504,71,473,507,509,590, + 509,238,749,716,386,721,195,195,195,140, + 677,243,249,599,719,28,339,632,523,249, + 28,28,306,288,443,443,440,440,447,447, + 445,445,445,445,445,445,455,453,457,456, + 79,79,458,583,138,26,470,249,417,249, + 249,13,28,13,386,120,473,73,509,504, + 28,582,749,238,599,241,249,721,249,306, + 306,28,28,509,279,470,26,13,28,13, + 13,384,309,504,469,28,465,73,466,504, + 238,249,199,504,136,193,261,582,28,79, + 3,310,470,249,522,73,28,466,466,331, + 140,595,582,28,249,310,470,13,466,28, + 306,13,249,306,13 }; }; public final static char asb[] = Asb.asb; @@ -1207,82 +1224,82 @@ public class GCCParserprs implements lpg.lpgjavaruntime.ParseTable, GCCParsersym public interface Asr { public final static byte asr[] = {0, - 98,0,3,61,36,13,0,68,35,70, - 0,29,24,30,31,32,27,28,33,25, - 2,6,61,26,7,8,4,10,1,35, - 36,3,48,0,3,65,35,70,1,18, - 19,20,13,15,16,14,6,11,12,21, - 22,17,23,9,2,5,10,0,1,68, - 26,7,8,4,35,48,36,3,61,0, - 3,48,36,2,24,0,61,69,77,65, - 70,85,15,16,35,14,11,12,71,72, - 66,67,73,74,75,76,80,81,82,83, - 84,86,87,68,88,89,90,91,92,93, - 94,95,96,97,48,78,79,36,29,24, - 30,31,32,27,28,33,25,26,3,1, - 2,7,8,4,6,0,10,3,68,48, - 26,7,8,4,0,68,1,18,19,20, - 13,15,16,14,6,11,12,21,22,17, - 23,9,10,2,5,35,70,0,50,62, - 30,51,31,52,53,32,27,54,55,28, - 63,33,64,56,57,25,58,59,60,2, - 5,9,24,49,29,7,8,4,3,48, - 26,68,0,61,3,48,36,1,0,24, - 27,25,28,15,16,14,6,11,12,21, - 22,17,23,9,1,2,5,18,19,20, - 13,77,3,0,48,17,18,19,20,5, - 1,15,16,14,6,11,12,21,22,9, - 23,13,36,3,2,0,2,3,36,1, - 0,24,27,15,16,14,6,11,12,21, - 22,17,23,9,2,5,18,19,20,13, - 25,1,0,61,69,77,65,32,28,33, - 31,30,29,14,11,12,71,72,66,67, - 73,74,75,76,80,81,82,83,84,86, - 87,68,88,89,90,91,92,93,94,95, - 96,97,78,79,10,26,24,27,25,48, - 2,6,7,8,4,35,1,36,3,0, - 29,49,24,50,62,30,51,31,52,53, - 32,27,54,55,28,63,33,64,56,57, - 25,58,59,60,2,5,9,7,8,4, - 34,3,65,0,2,5,3,65,48,0, - 68,88,89,90,91,92,94,93,95,96, - 97,6,71,72,11,12,67,66,73,74, - 75,76,78,79,80,81,14,82,83,84, - 69,77,36,65,86,87,61,7,8,4, - 48,26,3,0,3,61,77,36,26,48, - 0,36,98,99,65,39,41,10,45,47, - 42,37,43,44,40,38,46,34,3,26, - 18,19,20,13,15,16,14,11,12,21, - 22,17,23,6,1,9,62,63,64,57, - 49,54,52,53,51,50,55,56,58,59, - 60,33,30,28,29,32,24,27,25,31, - 7,8,4,5,2,0,37,0,61,69, - 0,3,48,65,68,0,77,3,69,0, - 98,29,49,24,50,62,30,51,31,52, - 53,32,27,54,55,28,63,33,64,56, - 57,25,58,59,60,5,1,9,7,8, - 26,3,34,4,2,6,0,39,41,10, - 45,47,42,37,43,44,40,38,46,34, - 26,3,1,18,19,20,2,5,15,16, - 14,6,11,12,21,22,17,23,9,13, - 0,57,49,54,52,53,51,50,55,56, - 58,59,60,35,48,36,33,30,28,29, - 32,24,27,25,31,26,3,6,2,1, - 4,8,7,61,0,6,29,49,24,50, + 98,0,68,35,70,0,3,48,36,2, + 24,0,39,41,10,45,47,42,37,43, + 44,40,38,46,34,26,3,1,18,19, + 20,2,5,15,16,14,6,11,12,21, + 22,17,23,9,13,0,57,49,54,52, + 53,51,50,55,56,58,59,60,35,48, + 36,33,30,28,29,32,24,27,25,31, + 26,3,6,2,1,4,8,7,61,0, + 17,18,19,20,13,2,5,1,15,16, + 14,6,11,12,21,22,9,23,61,0, + 29,24,30,31,32,27,28,33,25,2, + 6,61,26,7,8,4,10,1,35,36, + 3,48,0,1,68,26,7,8,4,35, + 48,36,3,61,0,3,65,35,70,1, + 18,19,20,13,15,16,14,6,11,12, + 21,22,17,23,9,2,5,10,0,50, 62,30,51,31,52,53,32,27,54,55, 28,63,33,64,56,57,25,58,59,60, - 2,5,9,69,4,8,7,0,6,1, - 35,36,3,29,49,50,62,30,51,31, - 52,53,32,54,55,28,63,33,64,56, - 57,58,59,60,2,5,9,7,8,4, - 69,24,27,25,0,17,18,19,20,13, - 2,5,1,15,16,14,6,11,12,21, - 22,9,23,61,0,17,18,19,20,13, - 1,15,16,14,6,11,12,21,22,23, - 29,49,24,50,62,30,51,31,52,53, - 32,27,54,55,28,63,33,64,56,57, - 25,58,59,60,9,2,5,7,8,4, - 10,0 + 2,5,9,24,49,29,7,8,4,3, + 48,26,68,0,61,69,77,65,32,28, + 33,31,30,29,14,11,12,71,72,66, + 67,73,74,75,76,80,81,82,83,84, + 86,87,68,88,89,90,91,92,93,94, + 95,96,97,78,79,10,26,24,27,25, + 48,2,6,7,8,4,35,1,36,3, + 0,10,3,68,48,26,7,8,4,0, + 68,1,18,19,20,13,15,16,14,6, + 11,12,21,22,17,23,9,10,2,5, + 35,70,0,24,27,25,28,15,16,14, + 6,11,12,21,22,17,23,9,1,2, + 5,18,19,20,13,77,3,0,48,17, + 18,19,20,5,1,15,16,14,6,11, + 12,21,22,9,23,13,36,3,2,0, + 61,69,77,65,70,85,15,16,35,14, + 11,12,71,72,66,67,73,74,75,76, + 80,81,82,83,84,86,87,68,88,89, + 90,91,92,93,94,95,96,97,48,78, + 79,36,29,24,30,31,32,27,28,33, + 25,26,3,2,1,7,8,4,6,0, + 61,3,48,36,1,0,24,27,15,16, + 14,6,11,12,21,22,17,23,9,2, + 5,18,19,20,13,25,1,0,3,61, + 36,13,0,2,3,36,1,0,68,88, + 89,90,91,92,94,93,95,96,97,6, + 71,72,11,12,67,66,73,74,75,76, + 78,79,80,81,14,82,83,84,69,77, + 36,65,86,87,61,7,8,4,48,26, + 3,0,29,49,24,50,62,30,51,31, + 52,53,32,27,54,55,28,63,33,64, + 56,57,25,58,59,60,2,5,9,7, + 8,4,34,3,65,0,2,5,3,65, + 48,0,3,61,77,36,26,48,0,36, + 98,99,65,39,41,10,45,47,42,37, + 43,44,40,38,46,34,3,26,18,19, + 20,13,15,16,14,11,12,21,22,17, + 23,6,1,9,62,63,64,57,49,54, + 52,53,51,50,55,56,58,59,60,33, + 30,28,29,32,24,27,25,31,7,8, + 4,5,2,0,37,0,61,69,0,3, + 48,65,68,0,77,3,69,0,6,29, + 49,24,50,62,30,51,31,52,53,32, + 27,54,55,28,63,33,64,56,57,25, + 58,59,60,2,5,9,69,4,8,7, + 0,17,18,19,20,13,1,15,16,14, + 6,11,12,21,22,23,29,49,24,50, + 62,30,51,31,52,53,32,27,54,55, + 28,63,33,64,56,57,25,58,59,60, + 9,2,5,7,8,4,10,0,98,29, + 49,24,50,62,30,51,31,52,53,32, + 27,54,55,28,63,33,64,56,57,25, + 58,59,60,5,1,9,7,8,26,3, + 34,4,2,6,0,6,1,35,36,3, + 29,49,50,62,30,51,31,52,53,32, + 54,55,28,63,33,64,56,57,58,59, + 60,2,5,9,7,8,4,69,24,27, + 25,0 }; }; public final static byte asr[] = Asr.asr; @@ -1290,44 +1307,44 @@ public class GCCParserprs implements lpg.lpgjavaruntime.ParseTable, GCCParsersym public interface Nasb { public final static char nasb[] = {0, - 97,37,15,26,41,166,37,38,76,37, - 37,37,77,84,77,84,84,77,84,77, - 154,127,37,37,77,70,49,79,13,19, - 164,67,37,8,150,8,150,8,8,8, - 150,122,37,150,164,154,56,56,163,49, - 49,49,49,49,49,49,49,49,49,49, - 174,37,141,38,42,84,147,37,37,154, - 37,164,37,37,101,58,10,37,164,84, - 141,37,141,37,84,82,163,60,114,174, - 174,174,174,174,164,164,164,139,1,19, - 17,17,88,176,192,126,150,84,53,80, - 13,42,37,13,110,40,42,42,8,37, - 37,131,37,37,42,37,64,37,41,164, - 37,164,37,150,143,141,8,84,141,188, - 48,62,22,37,61,37,37,37,37,37, - 37,37,37,37,37,164,137,29,37,164, - 164,164,164,164,158,154,161,56,56,37, - 37,49,101,164,49,62,117,150,141,37, - 37,37,37,164,37,42,42,183,176,37, - 176,176,131,37,37,131,126,58,164,49, - 164,164,141,20,41,179,8,86,37,37, - 141,22,164,22,62,61,44,49,49,49, - 49,49,49,49,49,49,49,49,49,49, - 49,49,49,49,49,49,49,49,49,49, - 49,49,49,49,49,49,49,170,49,136, - 154,114,158,158,158,157,158,93,164,152, - 163,49,37,174,110,20,141,164,185,42, - 164,37,164,164,131,49,131,164,143,126, - 86,20,49,8,22,44,37,49,49,62, - 61,37,37,37,37,37,37,37,37,37, - 37,37,37,37,37,37,37,37,37,37, - 152,91,164,114,164,47,42,185,131,176, - 131,131,49,20,42,49,37,147,84,20, - 44,62,62,49,49,164,158,86,107,185, - 42,164,37,126,49,84,150,20,46,37, - 53,8,49,37,24,164,185,42,131,150, - 51,53,62,8,49,131,164,49,62,131, - 62 + 176,43,21,181,32,189,43,82,65,95, + 43,43,43,96,87,96,87,87,96,87, + 96,157,144,43,43,96,89,58,74,65, + 153,182,87,160,23,23,43,43,157,43, + 12,187,67,43,8,163,8,163,8,8, + 8,163,167,43,163,187,157,186,58,58, + 58,58,58,58,58,58,58,58,58,171, + 43,187,43,43,98,143,163,87,70,186, + 60,165,104,19,79,43,187,87,153,43, + 153,43,87,85,117,171,171,171,171,171, + 187,187,187,151,1,12,25,25,52,173, + 74,182,43,74,126,35,181,163,57,72, + 63,43,71,43,43,43,43,43,43,43, + 43,43,43,131,153,43,43,43,113,180, + 182,182,8,43,43,27,43,43,182,43, + 76,43,181,187,43,187,43,163,139,153, + 8,87,153,187,149,43,187,187,187,187, + 187,16,157,184,23,23,43,43,58,104, + 187,58,72,43,187,143,63,72,71,48, + 58,58,58,58,58,58,58,58,58,58, + 58,58,58,58,58,58,58,58,58,58, + 58,58,58,58,58,58,58,58,58,58, + 44,58,187,13,153,43,182,182,193,173, + 43,173,173,27,43,43,27,83,19,187, + 58,187,187,153,13,181,135,8,102,43, + 43,153,63,148,157,117,16,16,16,15, + 16,122,187,155,186,58,43,171,113,187, + 58,58,72,71,43,43,43,43,43,43, + 43,43,43,43,43,43,43,43,43,43, + 43,43,43,43,56,195,182,187,43,187, + 187,27,58,27,157,187,139,143,102,13, + 58,8,63,48,155,120,187,117,187,72, + 72,58,58,102,110,182,195,27,173,27, + 27,84,58,13,182,58,43,160,87,13, + 48,187,16,13,55,43,60,8,58,43, + 10,195,182,187,43,143,58,87,163,50, + 60,72,8,58,187,195,182,27,163,58, + 72,27,187,72,27 }; }; public final static char nasb[] = Nasb.nasb; @@ -1335,26 +1352,26 @@ public class GCCParserprs implements lpg.lpgjavaruntime.ParseTable, GCCParsersym public interface Nasr { public final static char nasr[] = {0, - 91,99,89,88,81,87,86,1,0,18, - 118,0,98,0,141,0,100,0,2,52, - 0,82,0,135,0,41,2,109,91,99, - 90,89,88,81,87,86,0,114,0,31, - 2,26,0,32,0,111,51,2,6,0, - 131,0,6,51,0,59,0,116,0,2, - 6,45,0,6,143,0,140,18,0,81, - 77,78,79,80,84,71,53,0,2,43, - 49,41,47,28,0,85,0,2,122,0, - 41,47,68,67,28,0,136,29,2,0, - 2,29,1,34,102,0,1,144,0,34, - 1,76,52,2,29,0,2,29,60,30, - 0,28,41,43,0,28,47,41,2,0, - 1,34,2,35,0,18,41,47,67,68, - 2,0,105,2,58,0,47,41,2,12, - 0,2,29,28,64,0,6,51,50,0, - 67,68,2,18,0,29,2,112,0,2, - 31,121,0,58,30,2,31,0,2,58, - 95,0,29,60,2,70,0,127,2,29, - 0,29,2,137,0 + 95,102,93,92,84,91,90,1,0,136, + 0,2,53,0,6,51,50,0,117,0, + 142,0,59,0,103,0,1,38,2,39, + 0,34,2,100,95,102,94,93,92,84, + 91,90,0,2,31,122,0,32,0,132, + 0,2,123,0,112,51,2,6,0,6, + 51,0,85,0,115,0,141,18,0,2, + 6,49,0,101,0,6,144,0,18,119, + 0,48,2,36,34,46,27,0,84,78, + 79,80,81,87,72,54,0,29,2,138, + 0,88,0,29,2,1,38,105,0,1, + 145,0,38,1,77,53,2,29,0,34, + 46,68,67,27,0,2,29,60,30,0, + 128,2,29,0,2,58,97,0,107,2, + 58,0,27,46,34,2,0,18,34,46, + 67,68,2,0,2,29,27,63,0,46, + 34,2,10,0,46,48,27,34,36,0, + 58,30,2,31,0,137,2,29,0,31, + 2,26,0,67,68,2,18,0,2,29, + 113,0,29,60,2,71,0 }; }; public final static char nasr[] = Nasr.nasr; @@ -1379,21 +1396,21 @@ public class GCCParserprs implements lpg.lpgjavaruntime.ParseTable, GCCParsersym public interface NonterminalIndex { public final static char nonterminalIndex[] = {0, - 106,0,0,0,0,108,112,113,114,115, - 116,190,0,0,0,117,118,103,119,120, - 121,122,123,0,0,105,124,191,133,129, - 107,141,0,125,128,0,0,0,0,0, - 164,0,167,0,102,161,163,0,165,111, - 0,104,140,0,0,151,0,155,166,132, - 0,127,110,162,175,178,179,180,0,0, - 143,150,0,168,174,131,144,145,146,147, - 152,173,177,198,0,135,136,137,138,139, - 142,148,149,0,154,158,160,195,197,109, - 126,130,134,0,153,157,0,159,169,172, - 182,187,0,189,0,192,0,194,0,0, - 0,0,0,0,156,0,170,171,176,181, - 0,183,184,0,185,186,188,0,0,193, - 0,0,196,199,0,0 + 106,0,0,0,0,108,112,113,114,190, + 0,0,0,115,116,117,118,103,119,120, + 121,122,123,0,0,105,191,124,133,129, + 107,141,0,164,0,167,0,125,128,0, + 0,0,0,0,161,163,0,165,102,111, + 0,151,104,140,0,0,0,155,166,132, + 0,127,162,110,175,178,179,180,0,0, + 0,143,150,0,168,174,131,144,145,146, + 147,148,149,152,173,177,198,0,134,135, + 136,137,138,139,142,0,154,158,160,169, + 195,197,109,126,130,0,153,157,0,159, + 172,182,187,0,189,0,192,0,194,0, + 0,0,0,0,0,156,0,170,171,176, + 181,0,183,184,0,185,186,188,0,0, + 193,0,0,196,199,0,0 }; }; public final static char nonterminalIndex[] = NonterminalIndex.nonterminalIndex; @@ -1401,15 +1418,16 @@ public class GCCParserprs implements lpg.lpgjavaruntime.ParseTable, GCCParsersym public interface ScopePrefix { public final static char scopePrefix[] = { - 182,240,319,202,299,107,133,139,268,81, - 348,370,327,1,90,123,149,167,67,248, - 309,35,35,59,63,95,145,219,284,390, - 410,417,421,344,366,379,397,379,333,15, - 27,56,8,8,99,102,154,177,102,229, - 234,237,296,425,50,75,115,223,288,394, - 404,404,8,115,258,192,357,192,258,20, - 20,41,215,41,41,41,41,41,294,388, - 20,20,45,128,157,128,157,157 + 202,258,334,220,314,125,151,157,286,99, + 363,385,342,1,108,141,167,187,67,266, + 324,35,35,59,63,75,81,113,163,237, + 302,75,421,428,432,359,381,394,408,394, + 348,15,27,56,8,8,117,120,172,120, + 197,120,247,252,255,311,436,50,87,93, + 133,241,87,405,415,415,8,133,276,210, + 372,210,276,20,20,41,233,41,41,41, + 41,41,309,403,20,20,45,146,175,146, + 175,175 }; }; public final static char scopePrefix[] = ScopePrefix.scopePrefix; @@ -1417,15 +1435,16 @@ public class GCCParserprs implements lpg.lpgjavaruntime.ParseTable, GCCParsersym public interface ScopeSuffix { public final static char scopeSuffix[] = { - 190,190,306,190,306,113,6,6,190,87, - 354,376,314,6,39,113,6,39,72,253, - 314,39,39,39,39,39,6,217,217,190, - 39,39,6,306,306,306,401,383,337,18, - 18,39,6,6,39,105,6,39,180,232, - 232,232,217,39,53,78,130,226,291,53, - 407,414,11,118,253,209,360,195,261,25, - 33,43,217,274,276,278,280,282,217,217, - 22,30,47,130,164,118,159,172 + 79,79,321,79,321,131,6,6,79,105, + 369,391,329,6,39,131,6,39,72,271, + 329,39,39,39,39,79,85,39,6,235, + 235,79,39,39,6,321,321,321,412,398, + 352,18,18,39,6,6,39,123,6,182, + 39,200,250,250,250,235,39,53,90,96, + 148,244,306,53,418,425,11,136,271,227, + 375,213,279,25,33,43,235,292,294,296, + 298,300,235,235,22,30,47,148,184,136, + 177,192 }; }; public final static char scopeSuffix[] = ScopeSuffix.scopeSuffix; @@ -1433,15 +1452,16 @@ public class GCCParserprs implements lpg.lpgjavaruntime.ParseTable, GCCParsersym public interface ScopeLhs { public final static char scopeLhs[] = { - 79,77,39,79,39,64,59,59,77,50, - 39,38,39,145,69,64,59,43,13,77, - 39,84,7,7,115,69,59,95,60,30, - 7,6,6,39,38,38,24,38,39,106, - 93,4,135,134,67,83,59,41,56,78, - 78,78,40,4,36,111,64,95,60,36, - 8,6,145,64,77,79,39,79,77,106, - 93,99,95,90,89,88,87,86,60,37, - 106,93,143,64,43,64,49,43 + 80,78,43,80,43,63,59,59,78,50, + 43,42,43,146,69,63,59,36,11,78, + 43,87,7,7,116,115,70,69,59,97, + 60,30,7,6,6,43,42,42,24,42, + 43,108,83,4,136,135,67,86,59,100, + 34,52,79,79,79,44,4,40,70,112, + 63,97,60,40,8,6,146,63,78,80, + 43,80,78,108,83,102,97,94,93,92, + 91,90,60,41,108,83,144,63,36,63, + 48,36 }; }; public final static char scopeLhs[] = ScopeLhs.scopeLhs; @@ -1451,13 +1471,14 @@ public class GCCParserprs implements lpg.lpgjavaruntime.ParseTable, GCCParsersym public final static byte scopeLa[] = { 65,65,36,65,36,24,77,77,65,65, 36,99,26,77,36,24,77,36,36,10, - 26,36,36,36,36,36,77,26,26,65, - 36,36,77,36,36,36,61,36,26,7, - 7,36,77,77,36,1,77,36,2,2, - 2,2,26,36,61,68,6,2,2,61, - 36,36,69,6,10,10,37,2,2,2, - 2,9,26,2,62,63,63,57,26,26, - 2,2,69,6,1,6,1,1 + 26,36,36,36,36,65,10,36,77,26, + 26,65,36,36,77,36,36,36,61,36, + 26,7,7,36,77,77,36,1,77,2, + 36,2,2,2,2,26,36,61,2,68, + 6,2,2,61,36,36,69,6,10,10, + 37,2,2,2,2,9,26,2,62,63, + 63,57,26,26,2,2,69,6,1,6, + 1,1 }; }; public final static byte scopeLa[] = ScopeLa.scopeLa; @@ -1465,15 +1486,16 @@ public class GCCParserprs implements lpg.lpgjavaruntime.ParseTable, GCCParsersym public interface ScopeStateSet { public final static char scopeStateSet[] = { - 138,138,38,138,38,201,54,54,138,14, - 38,38,38,3,58,201,54,143,159,138, - 38,138,65,65,27,58,54,8,209,30, - 65,65,65,38,38,38,101,38,38,5, - 155,65,1,3,58,60,54,143,148,138, - 138,138,38,65,38,135,201,8,209,38, - 72,65,3,201,138,138,38,138,138,5, - 155,139,8,139,139,139,139,139,209,38, - 5,155,12,201,143,201,145,143 + 141,141,38,141,38,208,54,54,141,17, + 38,38,38,3,58,208,54,146,164,141, + 38,141,65,65,14,138,224,58,54,8, + 221,30,65,65,65,38,38,38,101,38, + 38,5,159,65,1,3,58,60,54,217, + 146,152,141,141,141,38,65,38,224,135, + 208,8,221,38,72,65,3,208,141,141, + 38,141,141,5,159,142,8,142,142,142, + 142,142,221,38,5,159,12,208,146,208, + 148,146 }; }; public final static char scopeStateSet[] = ScopeStateSet.scopeStateSet; @@ -1482,48 +1504,49 @@ public class GCCParserprs implements lpg.lpgjavaruntime.ParseTable, GCCParsersym public interface ScopeRhs { public final static char scopeRhs[] = {0, 162,69,162,35,0,102,0,162,35,0, - 30,127,102,0,196,128,0,191,0,128, - 0,158,191,0,158,0,156,128,0,151, - 191,0,151,0,163,1,9,0,103,0, - 191,0,198,0,162,0,30,127,0,243, - 39,0,29,128,0,130,1,0,163,1, - 23,0,239,1,216,0,238,1,1,7, - 0,103,103,0,232,102,0,31,150,0, - 185,230,102,10,151,0,104,0,0,174, - 102,1,167,0,174,102,1,0,183,1, - 0,164,102,0,178,0,102,144,6,144, - 164,0,173,0,144,164,0,9,0,0, - 173,0,102,144,6,144,0,144,0,9, - 0,0,127,28,210,102,35,0,127,210, - 102,28,35,0,127,28,35,0,127,210, - 102,35,0,127,35,0,141,0,2,0, - 170,103,0,2,103,0,174,102,1,141, - 0,2,0,168,103,0,156,1,0,161, - 0,185,207,102,10,101,226,62,0,104, - 0,226,62,0,106,3,0,0,0,104, - 0,185,207,102,10,226,62,0,3,0, - 0,0,104,0,158,0,105,0,225,102, - 158,0,102,158,0,156,105,0,194,62, - 0,106,0,194,64,0,194,63,0,204, - 102,10,224,101,223,181,0,224,101,223, - 181,0,3,0,0,104,0,223,181,0, - 106,0,3,0,0,104,0,204,102,10, - 223,181,0,147,0,146,0,145,0,144, - 0,143,0,203,102,129,0,102,129,0, - 134,105,0,129,0,131,46,0,170,126, - 170,160,1,43,0,103,128,0,170,160, - 1,43,0,105,0,103,128,0,170,126, - 170,126,170,1,43,0,170,126,170,1, - 43,0,170,1,43,0,105,0,105,0, - 103,128,0,131,1,37,0,131,1,37, - 135,42,0,103,105,0,135,42,0,79, - 2,107,103,105,0,131,1,47,0,135, - 118,131,1,45,0,55,128,0,131,1, - 45,0,103,128,55,128,0,134,0,202, - 102,10,0,162,39,0,131,87,123,0, - 29,124,0,163,1,0,103,113,0,163, - 1,17,0,103,111,0,222,1,106,0, - 131,35,106,0,131,1,0 + 30,127,102,0,198,127,0,191,0,127, + 0,158,191,0,158,0,152,127,0,151, + 191,0,151,0,164,1,9,0,103,0, + 195,0,198,0,162,0,30,127,0,244, + 39,0,29,128,0,130,1,0,164,1, + 23,0,240,1,217,0,239,1,1,7, + 0,103,103,0,205,102,10,0,104,0, + 200,102,129,0,189,0,102,129,0,169, + 189,0,233,102,0,31,150,0,188,231, + 102,10,151,0,104,0,0,175,102,1, + 167,0,175,102,1,0,186,1,0,163, + 102,0,178,0,102,137,6,137,163,0, + 173,0,137,163,0,9,0,0,173,0, + 102,137,6,137,0,137,0,9,0,0, + 128,28,211,102,35,0,128,211,102,28, + 35,0,128,28,35,0,128,211,102,35, + 0,128,35,0,134,0,2,0,170,103, + 0,167,0,2,103,0,175,102,1,134, + 0,2,0,168,103,0,152,1,0,161, + 0,188,209,102,10,101,227,62,0,227, + 62,0,106,3,0,0,0,104,0,188, + 209,102,10,227,62,0,3,0,0,0, + 104,0,158,0,105,0,226,102,158,0, + 102,158,0,156,105,0,196,62,0,106, + 0,196,64,0,196,63,0,206,102,10, + 225,101,224,184,0,225,101,224,184,0, + 3,0,0,104,0,224,184,0,106,0, + 3,0,0,104,0,206,102,10,224,184, + 0,147,0,146,0,145,0,144,0,143, + 0,189,102,129,0,134,105,0,129,0, + 131,46,0,171,126,171,160,1,43,0, + 103,128,0,171,160,1,43,0,105,0, + 103,128,0,171,126,171,126,171,1,43, + 0,171,126,171,1,43,0,171,1,43, + 0,105,0,105,0,103,128,0,131,1, + 37,0,131,1,37,139,42,0,103,105, + 0,139,42,0,79,2,107,103,105,0, + 131,1,47,0,139,118,131,1,45,0, + 55,128,0,131,1,45,0,103,128,55, + 128,0,138,0,162,39,0,131,87,123, + 0,29,124,0,164,1,0,103,113,0, + 164,1,17,0,103,111,0,223,1,106, + 0,131,35,106,0,131,1,0 }; }; public final static char scopeRhs[] = ScopeRhs.scopeRhs; @@ -1531,28 +1554,29 @@ public class GCCParserprs implements lpg.lpgjavaruntime.ParseTable, GCCParsersym public interface ScopeState { public final static char scopeState[] = {0, - 468,0,1785,0,2108,1955,0,2484,2827,2102, - 0,894,0,785,760,664,1320,628,1220,2714, - 1171,1076,959,592,701,0,749,713,0,2895, - 1863,2823,2820,2813,2810,2803,2768,2515,2499,2472, - 2455,2428,2412,2352,2336,1914,2279,2263,1844,2008, - 1801,1758,0,1400,962,719,703,1708,1085,2050, - 2723,2017,1789,0,3014,2986,2976,2968,1958,1142, - 1063,2399,2714,496,737,1804,420,814,2702,2690, - 2678,2666,2654,2630,1724,444,1709,726,689,653, - 2940,2910,2901,2323,2751,2739,2727,2561,2415,2339, - 1682,1657,785,1632,760,1607,1582,1557,1532,1019, - 1507,1482,1457,1432,1407,1382,1357,1332,1307,1282, - 1257,1232,1207,1182,1157,1101,972,869,944,919, - 894,701,386,839,664,628,0,1000,528,386, - 478,0,1894,478,1708,2198,2187,2108,2125,1955, - 2050,2017,2176,548,1885,1979,1047,0,3083,3075, - 3030,2108,3010,2125,1708,1955,1085,1885,2632,528, - 2988,2606,2198,2766,1876,1979,386,2187,2984,990, - 2176,524,1766,1894,1119,610,469,1047,1000,2596, - 2570,2180,2560,2075,2041,2544,2942,2129,2237,478, - 2396,2320,2921,2875,2760,2243,1972,0,1914,2867, - 1863,1844,1801,3007,1758,2724,1739,0 + 413,0,1783,0,2188,2023,0,2881,1998,2016, + 0,941,0,837,434,0,812,774,675,1301, + 637,1276,423,1249,1017,711,635,713,0,3023, + 1959,2964,2938,2922,2898,2872,2364,2582,2562,2555, + 2535,2528,2481,2431,2424,1924,2404,2377,1842,463, + 1796,1750,0,1281,1274,672,456,1945,2617,2128, + 2818,2091,2270,0,3131,3102,2225,1937,1847,1090, + 1018,701,423,432,1799,2238,2102,1115,2823,2807, + 2791,2775,2759,1763,751,595,2850,2633,2490,800, + 3032,3006,2542,663,1753,1106,876,838,739,521, + 1725,1700,812,1675,1650,774,1625,1028,1599,1573, + 1548,1523,1497,1471,1445,886,1419,1393,1367,1341, + 1315,1289,1263,1237,1211,1185,1156,992,966,941, + 915,388,713,850,675,637,0,773,753,0, + 1071,534,388,484,0,2833,484,2363,1945,2335, + 2306,2188,2263,2023,2128,2091,2278,1859,1887,1995, + 2052,1053,0,3189,3185,3163,2188,3145,2263,2363, + 1945,2023,2617,1887,1995,3117,3181,3167,534,388, + 2335,2256,3113,2306,3139,3067,2052,2921,2833,2725, + 2427,2172,2278,620,1071,2701,2695,2852,2687,3088, + 3063,2661,2653,2635,498,1053,484,2476,3059,2142, + 3031,2971,2882,2878,1864,0,1887,1053,484,0, + 2990,1959,1137,1924,1842,1796,1750,2847,2589,0 }; }; public final static char scopeState[] = ScopeState.scopeState; @@ -1560,44 +1584,44 @@ public class GCCParserprs implements lpg.lpgjavaruntime.ParseTable, GCCParsersym public interface InSymb { public final static char inSymb[] = {0, - 0,220,4,102,129,236,241,209,186,7, - 8,4,187,181,188,64,63,189,62,190, - 102,1,2,141,199,191,9,102,1,10, - 1,1,1,223,128,194,128,194,226,194, - 128,164,144,128,156,102,141,147,1,9, - 23,17,22,21,12,11,6,14,16,15, - 1,106,228,209,203,156,128,193,143,102, - 149,242,13,198,102,1,240,2,13,101, - 10,101,10,144,6,164,1,35,102,1, - 1,1,1,1,130,163,131,158,102,10, - 85,70,1,35,102,48,128,156,68,164, - 61,118,1,48,202,46,38,40,44,43, - 37,42,47,45,134,41,39,101,129,238, - 216,1,224,128,102,10,102,6,144,102, - 28,127,102,107,6,109,111,110,117,116, - 120,119,122,121,123,174,129,102,175,163, - 163,163,163,163,118,102,1,168,167,201, - 101,9,102,222,102,131,237,128,10,151, - 149,143,6,2,3,131,101,1,1,135, - 1,1,61,243,162,61,102,48,118,1, - 13,2,10,204,158,205,102,207,101,208, - 144,102,227,102,127,210,182,97,96,95, - 93,94,92,91,90,89,88,68,72,71, - 6,66,67,12,11,81,80,79,78,76, - 75,74,73,82,14,84,83,87,86,1, - 102,48,118,118,118,118,118,164,183,102, - 1,48,107,1,202,102,10,2,160,170, - 131,37,131,131,61,69,61,239,102,102, - 207,185,68,48,102,182,48,210,28,127, - 6,110,110,109,109,116,116,111,111,111, - 111,111,111,119,117,121,120,221,131,122, - 102,164,174,102,163,102,170,126,118,1, - 118,118,48,204,225,61,156,128,196,185, - 182,127,127,61,61,174,118,230,102,126, - 170,131,135,48,61,196,128,185,48,232, - 244,70,35,101,233,170,126,118,99,128, - 152,68,162,70,35,118,170,69,162,118, - 162 + 0,221,4,129,102,237,242,102,200,190, + 7,8,4,191,184,192,64,63,193,62, + 194,102,1,2,134,202,195,9,1,200, + 229,189,152,127,146,134,183,148,102,136, + 10,1,1,1,224,127,196,127,196,227, + 196,127,163,137,127,152,102,1,9,23, + 17,22,21,12,11,6,14,16,15,1, + 106,243,13,201,102,48,127,152,35,1, + 68,163,102,1,241,2,13,101,10,101, + 10,137,6,163,102,1,1,1,1,1, + 130,164,131,158,102,10,85,70,1,35, + 61,118,1,48,238,102,129,127,28,128, + 102,107,6,109,115,114,117,116,120,119, + 122,121,123,102,10,151,148,136,205,46, + 38,40,44,43,37,42,47,45,138,41, + 39,101,129,239,217,1,225,127,102,10, + 102,6,137,175,129,176,164,164,164,164, + 164,118,102,1,168,167,204,101,9,102, + 223,102,131,6,2,102,102,128,211,185, + 97,96,95,93,94,92,91,90,89,88, + 68,72,71,6,66,67,12,11,81,80, + 79,78,76,75,74,73,82,14,84,83, + 87,86,228,102,10,3,131,101,1,1, + 139,1,1,61,244,162,61,102,48,118, + 1,13,2,10,206,158,207,102,209,101, + 210,137,102,1,102,48,118,118,118,118, + 118,163,186,102,1,48,107,1,205,2, + 211,28,128,6,114,114,109,109,116,116, + 115,115,115,115,115,115,119,117,121,120, + 222,131,122,48,102,160,171,131,37,131, + 131,61,69,61,102,240,102,102,209,188, + 68,48,102,185,102,163,175,102,164,128, + 128,61,61,231,102,171,126,118,1,118, + 118,163,48,206,226,61,152,127,198,188, + 185,175,118,188,48,233,245,70,35,101, + 234,126,171,131,139,48,61,198,127,153, + 68,162,70,35,171,126,118,99,127,69, + 162,118,171,162,118 }; }; public final static char inSymb[] = InSymb.inSymb; @@ -1818,8 +1842,8 @@ public class GCCParserprs implements lpg.lpgjavaruntime.ParseTable, GCCParsersym public final static int ERROR_SYMBOL = 34, - SCOPE_UBOUND = 87, - SCOPE_SIZE = 88, + SCOPE_UBOUND = 91, + SCOPE_SIZE = 92, MAX_NAME_LENGTH = 38; public final int getErrorSymbol() { return ERROR_SYMBOL; } @@ -1828,20 +1852,20 @@ public class GCCParserprs implements lpg.lpgjavaruntime.ParseTable, GCCParsersym public final int getMaxNameLength() { return MAX_NAME_LENGTH; } public final static int - NUM_STATES = 371, + NUM_STATES = 375, NT_OFFSET = 100, - LA_STATE_OFFSET = 3687, + LA_STATE_OFFSET = 3775, MAX_LA = 2147483647, - NUM_RULES = 385, - NUM_NONTERMINALS = 146, - NUM_SYMBOLS = 246, + NUM_RULES = 387, + NUM_NONTERMINALS = 147, + NUM_SYMBOLS = 247, SEGMENT_SIZE = 8192, - START_STATE = 1739, + START_STATE = 2589, IDENTIFIER_SYMBOL = 0, EOFT_SYMBOL = 98, EOLT_SYMBOL = 98, - ACCEPT_ACTION = 3154, - ERROR_ACTION = 3302; + ACCEPT_ACTION = 3240, + ERROR_ACTION = 3388; public final static boolean BACKTRACK = true; diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCSizeofExpressionParser.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCSizeofExpressionParser.java index 20e2340625b..91e4c96d40e 100644 --- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCSizeofExpressionParser.java +++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCSizeofExpressionParser.java @@ -1245,12 +1245,6 @@ private GNUBuildASTParserAction gnuAction; case 305: { action. consumeDeclarationProblem(); break; } - // - // Rule 308: function_definition ::= declaration_specifiers function_declarator function_body - // - case 308: { action. consumeFunctionDefinition(true); break; - } - // // Rule 309: function_definition ::= function_declarator function_body // @@ -1264,117 +1258,129 @@ private GNUBuildASTParserAction gnuAction; } // - // Rule 311: function_body ::= { } + // Rule 311: normal_function_definition ::= declaration_specifiers function_declarator function_body // - case 311: { action. consumeStatementCompoundStatement(false); break; + case 311: { action. consumeFunctionDefinition(true); break; } // - // Rule 312: function_body ::= { block_item_list } + // Rule 312: function_body ::= { } // - case 312: { action. consumeStatementCompoundStatement(true); break; + case 312: { action. consumeStatementCompoundStatement(false); break; } // - // Rule 329: attribute_parameter ::= assignment_expression + // Rule 313: function_body ::= { block_item_list } // - case 329: { action. consumeIgnore(); break; + case 313: { action. consumeStatementCompoundStatement(true); break; + } + + // + // Rule 330: attribute_parameter ::= assignment_expression + // + case 330: { action. consumeIgnore(); break; } // - // Rule 340: extended_asm_declaration ::= asm volatile_opt ( extended_asm_param_seq ) ; + // Rule 341: extended_asm_declaration ::= asm volatile_opt ( extended_asm_param_seq ) ; // - case 340: { gnuAction.consumeDeclarationASM(); break; + case 341: { gnuAction.consumeDeclarationASM(); break; } // - // Rule 351: unary_expression ::= __alignof__ unary_expression + // Rule 352: unary_expression ::= __alignof__ unary_expression // - case 351: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_alignOf); break; + case 352: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_alignOf); break; } // - // Rule 352: unary_expression ::= typeof unary_expression + // Rule 353: unary_expression ::= typeof unary_expression // - case 352: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_typeof); break; + case 353: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_typeof); break; } // - // Rule 353: relational_expression ::= relational_expression >? shift_expression + // Rule 354: relational_expression ::= relational_expression >? shift_expression // - case 353: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_max); break; + case 354: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_max); break; } // - // Rule 354: relational_expression ::= relational_expression : assignment_expression + // Rule 356: conditional_expression ::= logical_or_expression ? : assignment_expression // - case 355: { action. consumeExpressionConditional(); break; + case 356: { action. consumeExpressionConditional(); break; } // - // Rule 356: primary_expression ::= ( compound_statement ) + // Rule 357: primary_expression ::= ( compound_statement ) // - case 356: { gnuAction.consumeCompoundStatementExpression(); break; + case 357: { gnuAction.consumeCompoundStatementExpression(); break; } // - // Rule 357: labeled_statement ::= case case_range_expression : statement + // Rule 358: labeled_statement ::= case case_range_expression : statement // - case 357: { action. consumeStatementCase(); break; + case 358: { action. consumeStatementCase(); break; } // - // Rule 358: case_range_expression ::= constant_expression ... constant_expression + // Rule 359: case_range_expression ::= constant_expression ... constant_expression // - case 358: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_assign); break; + case 359: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_assign); break; } // - // Rule 362: typeof_type_specifier ::= typeof unary_expression + // Rule 363: typeof_type_specifier ::= typeof unary_expression // - case 362: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_typeof); break; + case 363: { action. consumeExpressionUnaryOperator(IASTUnaryExpression.op_typeof); break; } // - // Rule 363: typeof_type_specifier ::= typeof ( type_id ) + // Rule 364: typeof_type_specifier ::= typeof ( type_id ) // - case 363: { action. consumeExpressionTypeId(IASTTypeIdExpression.op_typeof); break; + case 364: { action. consumeExpressionTypeId(IASTTypeIdExpression.op_typeof); break; } // - // Rule 364: declaration_specifiers ::= typeof_declaration_specifiers + // Rule 365: declaration_specifiers ::= typeof_declaration_specifiers // - case 364: { action. consumeDeclarationSpecifiersTypeof(); break; + case 365: { action. consumeDeclarationSpecifiersTypeof(); break; } // - // Rule 380: field_name_designator ::= identifier_token : + // Rule 381: field_name_designator ::= identifier_token : // - case 380: { action. consumeDesignatorFieldGCC(); break; + case 381: { action. consumeDesignatorFieldGCC(); break; } // - // Rule 381: array_range_designator ::= [ constant_expression ... constant_expression ] + // Rule 382: array_range_designator ::= [ constant_expression ... constant_expression ] // - case 381: { action. consumeDesignatorArrayRange(); break; + case 382: { action. consumeDesignatorArrayRange(); break; } // - // Rule 382: designated_initializer ::= field_name_designator initializer + // Rule 383: designated_initializer ::= field_name_designator initializer // - case 382: { action. consumeInitializerDesignated(); break; + case 383: { action. consumeInitializerDesignated(); break; } // - // Rule 384: no_sizeof_type_name_start ::= ERROR_TOKEN + // Rule 384: block_item ::= normal_function_definition // - case 384: { action. consumeEmpty(); break; + case 384: { action. consumeStatementDeclaration(); break; + } + + // + // Rule 386: no_sizeof_type_name_start ::= ERROR_TOKEN + // + case 386: { action. consumeEmpty(); break; } diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCSizeofExpressionParserprs.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCSizeofExpressionParserprs.java index f28014eb6de..ba5f502ea8d 100644 --- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCSizeofExpressionParserprs.java +++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCSizeofExpressionParserprs.java @@ -64,275 +64,284 @@ public class GCCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab 1,3,1,2,2,2,3,4,5,1, 1,7,3,0,0,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,1,1,2,6,3,1, - 3,1,4,0,1,1,1,3,1,0, - 4,3,1,2,1,3,4,4,4,6, - 1,0,1,3,1,3,0,1,4,5, - 2,2,3,3,5,3,4,3,1,2, - 2,2,4,2,1,1,2,2,3,2, - 2,3,1,1,1,1,1,1,1,2, - 5,3,1,1,-39,0,0,0,0,0, - 0,-163,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-134,0, - -2,0,-237,-31,0,0,0,-54,0,0, - 0,0,0,0,-119,0,0,0,0,0, - -4,0,-291,0,0,0,0,0,-75,0, - -60,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,-164,0,0, - 0,0,0,0,0,0,-40,0,0,0, - 0,0,0,0,-16,-132,0,0,0,-247, - -55,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-136,0,0,0,0,0, - 0,-61,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-123,-18,0,0, - 0,0,0,0,0,0,0,0,-176,0, - 0,0,0,-35,0,-19,-80,-126,0,0, - 0,0,0,0,-199,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,-238, + 2,1,1,1,1,1,2,1,3,6, + 4,2,4,1,1,1,1,2,6,3, + 1,3,1,4,0,1,1,1,3,1, + 0,4,3,1,2,1,3,4,4,4, + 6,1,0,1,3,1,3,0,1,4, + 5,2,2,3,3,5,3,4,3,1, + 2,2,2,4,2,1,1,2,2,3, + 2,2,3,1,1,1,1,1,1,1, + 2,5,3,1,1,1,-39,0,0,0, + 0,0,0,-35,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - -147,0,-275,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,-33,-135,0, - -181,0,-148,0,0,-125,-36,0,0,0, - 0,0,0,0,0,-57,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,-20,0,0,0,0, - -21,-118,-155,0,-270,0,0,0,0,0, - 0,0,0,0,0,0,0,-138,0,0, - -22,0,0,0,0,0,0,0,0,0, - -257,0,-277,0,0,0,0,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,-23,0,-130,-1,-220,-32,0,0, - 0,0,0,0,-160,-58,0,0,0,0, - 0,0,-170,0,0,0,0,0,0,0, - 0,0,0,0,0,-139,0,-24,0,-302, - 0,0,0,0,0,0,0,0,0,0, - 0,0,-25,0,0,-26,0,0,0,0, - 0,0,0,0,-81,0,0,-78,0,0, - 0,0,0,0,0,0,0,0,0,0, - -73,-140,0,-27,0,0,0,0,0,0, - 0,-149,0,-183,0,-159,0,0,0,-283, - 0,0,0,-253,0,0,-249,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - -28,0,-274,0,0,0,0,0,0,0, - 0,0,-186,0,-3,0,0,0,0,0, - 0,-168,0,0,0,0,0,-289,0,-83, - -187,0,0,0,0,0,0,0,0,0, - -222,0,-124,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,-297,0,0, - 0,0,0,0,0,0,0,-84,-230,0, - -157,0,0,0,0,0,0,-85,0,0, - 0,0,0,0,-219,0,-207,0,0,0, - 0,0,0,0,0,-281,0,-94,-56,0, - 0,0,0,0,0,0,0,0,0,0, - 0,-41,0,0,0,0,0,0,0,0, - 0,-169,0,0,0,0,0,0,0,0, - 0,0,0,0,-99,0,-137,-100,0,0, - 0,0,0,0,0,0,-201,-210,0,0, - 0,0,0,0,0,0,-309,0,0,0, - 0,0,0,-204,0,0,0,0,0,0, - 0,-141,-240,0,0,0,0,0,0,0, - 0,-177,-208,0,0,0,0,0,0,0, - -29,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-101,0,-102,0,-62,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,-282,-216,-300,0,0,0,0,0, - 0,0,-241,-306,0,0,0,0,0,0, - -63,0,0,0,0,0,0,-242,0,0, - 0,0,0,0,0,-103,0,0,0,0, - 0,0,0,0,0,0,0,0,-64,0, - 0,0,0,0,0,-104,0,0,0,0, - 0,0,0,-260,-310,0,0,0,0,0, - 0,0,-278,0,0,0,-65,0,0,0, - 0,0,0,-218,0,0,0,0,0,0, - 0,-288,0,0,0,0,0,0,0,0, - -304,0,-293,0,-66,0,0,0,0,0, - 0,-239,0,0,0,0,0,-316,0,-298, - 0,0,0,0,0,0,0,0,0,-105, - -311,0,-67,0,0,0,0,0,0,-252, - 0,0,0,0,0,0,0,-106,-319,0, - 0,0,0,0,0,0,0,-107,-108,0, - -68,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,-109,-110,0,0,0, - 0,0,0,0,-111,-301,-112,0,-69,0, - 0,0,0,0,0,-303,0,0,0,0, - 0,-113,-114,-115,-116,0,0,0,0,0, - 0,0,-117,-120,-122,0,-70,0,0,0, - 0,0,0,-324,0,0,0,0,0,0, - -133,-256,0,0,0,0,0,0,0,0, - -143,-150,-151,0,-71,0,0,0,0,0, - 0,-333,0,0,0,0,0,0,-153,-154, - -156,0,0,0,0,0,0,0,-158,-165, - -174,0,-72,0,0,0,0,0,0,-178, - 0,0,0,0,0,0,-182,-96,0,0, - 0,0,0,0,0,0,-74,-185,-190,0, - 0,0,0,0,-161,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-194,-195, - -198,0,-213,-215,-224,0,0,-235,0,0, - 0,-258,0,-46,0,0,0,0,0,0, - -128,0,0,0,0,-259,0,0,-5,0, - 0,0,0,0,0,0,0,0,0,0, - -272,-273,-276,-280,0,-295,0,-162,0,0, - 0,0,0,0,-299,0,0,0,0,0, - -313,-321,-325,0,0,0,0,0,0,0, - 0,0,0,0,0,-202,0,0,0,0, + -241,0,-2,0,-80,-118,-240,0,0,0, + -31,0,-173,0,-41,0,0,0,0,0, + 0,-17,0,0,0,0,0,0,0,0, + 0,0,0,-52,0,0,0,0,0,0, + -287,0,0,0,0,0,0,-40,0,0, + 0,0,0,-4,0,-170,0,0,0,0, + 0,-75,0,0,0,0,0,0,0,0, + -16,0,-18,-1,0,0,0,0,0,0, + 0,0,-119,-33,0,0,0,0,0,0, + 0,-19,0,0,0,0,0,0,0,0, + 0,-125,0,0,0,0,-176,-20,0,-21, + 0,0,0,0,0,0,-199,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,-203,0,0,0,0,0,0, + 0,0,0,0,-281,0,0,0,0,0, + 0,0,0,0,0,0,-134,0,-260,-289, + 0,0,0,0,0,0,0,0,-32,0, + -232,0,0,0,-22,0,-250,-278,0,0, + 0,0,0,0,0,0,0,0,0,-81, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,-61,0,0,0,0, + 0,0,0,0,0,0,0,0,0,-136, + 0,0,0,0,0,0,0,-8,0,0, + 0,0,0,0,0,0,0,-130,0,-273, + 0,0,-220,0,0,0,0,-283,0,0, + 0,0,0,0,0,0,0,0,0,-138, + 0,0,0,0,0,0,0,0,0,0, + 0,-297,0,-23,0,-311,0,0,0,0, + 0,0,-24,0,0,0,0,0,0,0, + -159,0,0,0,0,0,0,0,0,0, + -310,0,0,0,0,-25,0,-36,-53,0, + 0,0,0,0,0,0,0,0,0,-78, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,-147,0,0,0,0,0,0, + 0,0,0,0,-139,0,0,-252,0,0, + 0,0,0,0,-305,0,0,0,0,0, + 0,-148,0,0,0,0,0,0,0,0, + 0,-140,0,-155,0,-3,0,0,0,0, + 0,0,-26,0,0,0,0,0,-149,0, + -186,0,0,0,0,0,0,0,0,0, + -284,0,0,-124,0,0,0,0,0,0, + 0,0,0,0,0,-27,0,-28,-168,0, + 0,0,0,0,0,0,0,0,0,-83, + 0,-157,0,0,0,0,0,0,-248,0, + 0,0,0,-123,-84,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,-187,0,-46,0,0,0,0,0,0, + 0,0,0,0,0,-169,0,0,0,0, + 0,0,0,0,0,0,0,0,-204,0, + -85,0,0,0,0,0,0,0,0,-313, + 0,-94,0,-318,0,0,0,0,0,0, + -164,0,0,0,0,-99,0,0,-222,0, + 0,0,0,0,0,0,0,-163,-243,0, + 0,-29,0,0,0,0,0,0,-37,0, + 0,0,0,-315,0,-100,-244,0,0,0, + 0,0,0,0,0,-101,-288,-102,0,-103, + 0,0,0,-62,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,-233,0, + 0,0,0,0,0,0,0,0,0,0, + 0,-63,0,0,0,0,0,0,-181,0, + 0,0,0,0,0,0,-104,0,0,0, + 0,0,0,0,0,-105,0,-263,0,-64, + 0,0,0,0,0,0,-183,0,0,0, + 0,0,-245,0,-299,0,0,0,0,0, + 0,0,0,0,-106,-303,0,-65,0,0, + 0,0,0,0,-201,0,0,0,0,-312, + 0,0,-320,0,0,0,0,0,0,0, + 0,0,-107,0,0,-66,0,0,0,0, + 0,0,-218,0,0,0,0,-334,0,0, + -108,0,0,0,0,0,0,0,0,-109, + 0,-328,0,-67,0,0,0,0,0,0, + -242,0,0,0,0,-343,-256,0,-110,0, + 0,0,0,0,0,0,0,0,0,-111, + 0,-68,0,0,0,0,0,0,-255,0, + 0,0,0,-112,-280,0,-113,0,0,0, + 0,0,0,0,0,-114,0,-115,0,-69, + 0,0,0,0,0,0,0,0,0,0, + 0,-116,-295,-117,-120,0,0,0,0,0, + 0,0,0,-122,-133,-143,0,-70,0,0, + 0,0,0,0,0,0,0,0,0,-150, + -319,-151,-153,0,0,0,0,0,0,0, + 0,-154,-294,-156,0,-71,0,0,0,0, + 0,0,0,0,0,0,0,-158,-165,-174, + -178,0,0,0,0,0,0,0,0,-182, + -302,-185,0,-72,0,0,0,0,0,0, + 0,0,0,0,0,-190,-194,-207,-195,0, + 0,0,0,0,0,0,0,-96,0,-197, + 0,-5,0,0,0,0,0,0,-126,0, + 0,0,0,-213,-215,-161,0,0,0,0, + 0,0,0,0,0,0,0,-325,-225,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,-6,0,0,0,0,0,0, + 0,0,0,0,-237,-60,0,0,0,0, + 0,0,0,0,0,0,0,-239,-261,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,-73,0,0,0,-262,-271,-272,-282, + 0,-162,0,0,0,0,0,0,-286,0, + 0,0,0,-301,-304,-309,0,0,0,0, + 0,0,0,0,0,-322,-330,0,0,-202, + 0,0,0,0,0,0,-335,0,0,0, + 0,0,-219,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,-203,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,-228,0,0,0,0,0,0,-255,0, - 0,0,0,0,-131,0,-171,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,0,0,0, - 0,0,-290,0,0,0,0,0,0,0, - 0,0,0,0,0,-179,-184,-211,0,0, - 0,0,0,0,0,0,-305,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,-312,0,0,0,0,0,0, - 0,0,0,0,0,0,-212,-214,-223,-225, - 0,0,0,0,0,0,0,-323,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,-327,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-246,0, - 0,0,-82,0,0,0,0,-226,0,0, - 0,0,0,0,0,0,0,0,0,-47, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,-236,0,0,0,-243, - 0,0,0,0,0,0,0,0,0,-98, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-145,0,0,-248, - -245,0,0,0,0,0,-79,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, - -48,0,0,0,0,0,0,-197,0,0, - 0,0,0,0,0,0,0,-34,-254,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-172,0,0,0,-189,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,-287,0,-175, - 0,0,-59,0,0,-250,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-251,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,-49,0,0,0,0,0,0,-206, - 0,0,0,0,-129,0,0,0,0,0, - 0,0,0,0,0,-285,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,0,0,0, - 0,0,-266,0,0,-294,0,0,0,0, - 0,0,0,0,0,0,0,0,0,-267, - 0,0,0,0,-326,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,-167,0,-307,0,-308,0,-8,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-314,-317,-322,0,0,0, - -121,0,0,0,0,0,0,0,0,0, - 0,-232,0,0,0,0,0,-77,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,-331,0,-332,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - -269,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,-152,0,0,0, - 0,0,0,0,-6,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-193,0,0,0,0,0,-87, - 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,0,0,0,0,0,-227,0,0, - 0,0,0,-89,0,0,0,0,0,0, - 0,0,0,0,-229,0,0,0,0,0, + 0,0,-208,0,0,-229,0,0,0,0, + 0,0,-74,0,0,0,0,-128,-131,-171, + -179,0,0,0,0,0,0,0,0,-285, 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,-296,0,0,0, - 0,0,0,0,0,0,-244,-262,0,0, + 0,0,0,0,0,0,0,0,-132,0, + 0,-184,0,0,0,0,0,0,0,0, + -314,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-264,0,0,0,0,0, + 0,0,0,0,0,0,0,-321,0,0, + 0,0,0,0,0,0,0,0,0,-211, + -259,0,0,0,0,0,0,0,0,0, + 0,-333,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,-177,0,0,0, + 0,0,0,0,0,0,0,0,-337,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,-135,0,0,0,0,0,0, + 0,0,0,-98,0,0,0,0,0,0, + 0,-127,0,0,0,0,0,0,-160,0, + -145,0,0,0,0,0,-212,0,0,0, + 0,0,0,-231,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,-137,0,0,0,0,0,0, + 0,-214,0,-224,-198,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,-141,0,0,0,0,0,0,-249, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,-221,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-265,0, - 0,-146,0,0,0,0,0,0,0,0, - 0,0,-38,0,0,-320,0,0,0,0, + 0,0,0,0,0,0,0,0,-47,0, + 0,0,0,0,0,0,0,0,0,0, + -92,0,0,0,0,0,0,0,0,-306, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,-332,0,0,-34, + -223,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,-330,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,-335, - 0,0,-191,-192,0,0,0,0,0,0, + 0,0,0,0,0,0,0,-79,0,0, + -265,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,-226,0,0,0, + 0,0,0,-258,-293,-189,0,0,0,0, + 0,0,0,-227,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,-172,0,-257,0, + 0,0,0,0,-87,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,-274,0,0,0,0,0,-246,0,0, + 0,-251,0,0,0,0,0,0,0,0, + 0,0,0,0,0,-167,-191,0,0,0, + -206,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,-253,0,0,0,-48, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,-336,-254,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,-270,0,0,0,0,0,0,0,0, + 0,0,0,-49,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,-291,0,0,-57,0,0,0, + 0,0,0,0,0,0,0,0,0,-323, + 0,0,0,0,0,0,0,0,-300,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,0,-279, + 0,0,0,0,0,0,0,0,-235,0, + 0,0,0,0,0,0,-316,0,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, + 0,0,0,0,0,0,0,-308,0,0, + -76,0,0,0,0,0,0,-317,0,0, + 0,0,0,-54,0,0,0,0,0,0, + -82,0,0,0,0,0,-326,-331,0,0, + 0,0,0,0,0,0,-341,0,0,0, + 0,0,0,0,0,0,0,-210,0,-129, + 0,0,0,0,0,-216,0,0,0,0, + 0,0,0,0,0,-152,0,0,0,0, + 0,-342,0,0,0,0,0,0,0,0, + 0,-205,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,-193,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,-86,0,-196,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,-228,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,-230,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,-234, + 0,0,0,0,0,0,0,0,-247,-266, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,-268,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,-51,0,0,0,0,0,0,-86,0, - 0,0,0,-88,0,0,0,0,-91,0, + 0,0,0,0,0,0,-269,0,0,0, 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,-329,0,0,0, 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,-340,0,0, + -192,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,-345,0,0, + -221,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + -267,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,-56,0,0,0,0, + 0,0,-121,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,-51,0, + 0,0,0,0,0,-88,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,-42,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,-91,0,0,0, + -93,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,-236,0,0, + 0,0,0,0,0,-95,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,-7,0,0,0,0,0,0,0,0, - 0,0,-93,0,0,0,0,-95,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-76,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,-9, 0,0,0,0,0,0,0,0,0,0, - -52,0,0,0,0,0,0,0,0,0, + 0,0,-10,0,0,0,0,0,0,0, + 0,-11,0,0,0,0,0,0,0,0, + -12,0,0,0,0,0,0,0,0,-13, + 0,0,0,0,0,0,-30,0,0,-38, + 0,0,0,0,-275,0,0,-43,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-53,0,0,0,0,0,0, - -233,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-42,0,0,0,0,0, - 0,0,0,0,-127,0,0,0,0,0, - 0,0,0,-205,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,-44,0, + 0,0,0,0,0,0,0,-45,0,0, + 0,0,0,0,0,0,0,0,-144,0, + 0,0,0,-77,0,0,0,-209,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - -9,0,0,0,0,0,0,0,0,-10, - 0,0,0,0,0,0,0,0,-11,0, - 0,0,0,0,0,0,0,-12,0,0, - 0,0,0,0,0,0,-13,0,0,0, - 0,0,0,-17,0,-30,0,0,0,-92, - 0,0,0,-43,0,0,0,0,0,0, + -188,0,0,0,-238,0,0,0,-14,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,-44, - 0,0,0,0,0,0,0,0,-45,0, - 0,0,0,0,0,-209,0,-144,0,-329, - -188,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,-277,0,0, + 0,0,0,0,0,0,-89,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-234,0,0,0,-90,0, - 0,0,0,0,0,-166,0,0,0,0, + 0,0,0,0,0,0,-15,0,0,0, + 0,0,0,0,0,0,0,0,-90,0, + 0,0,0,0,0,0,0,0,-217,0, + 0,0,0,0,0,0,0,0,0,-97, + 0,0,0,0,0,0,0,-142,0,0, + 0,0,0,0,-166,0,0,0,-180,0, + 0,0,0,-200,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-334,0,0,0,0,0,0, + -290,0,0,-292,0,-276,0,0,0,-175, + 0,0,0,0,-59,-324,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-14,0, + 0,0,0,0,0,-146,-338,0,0,0, + 0,0,0,0,0,0,0,-264,0,0, + 0,0,0,0,0,0,0,0,0,-298, + 0,0,0,0,0,0,0,-307,-327,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,-15,0,0,0,0,0,0,-97, - 0,0,0,0,0,0,-180,0,0,0, - -200,0,-142,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,-231,-217,-284, - -286,-268,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,-315,0,0,0,0,-328,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-261,0,-292,0,0,0, - 0,0,-318,0,0,0,0,0,0,0, - 0,-263,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,-339,0, + 0,0,0,0,0,0,0,-344,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,0,0,0, - 0,0,0,0 + 0,0,0,0,0,0,0 }; }; public final static short baseCheck[] = BaseCheck.baseCheck; @@ -342,319 +351,328 @@ public class GCCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface BaseAction { public final static char baseAction[] = { - 114,7,115,34,34,24,24,56,56,26, + 117,7,118,41,41,24,24,50,50,26, 26,1,1,2,2,2,2,3,3,3, - 4,5,5,5,5,5,5,5,5,76, - 76,90,6,6,6,6,6,6,6,6, + 4,5,5,5,5,5,5,5,5,80, + 80,94,6,6,6,6,6,6,6,6, 6,6,8,8,9,9,9,9,10,10, - 10,11,11,11,12,12,12,12,12,17, + 10,11,11,11,16,16,16,16,16,17, 17,17,18,18,19,19,20,20,21,21, 22,22,23,23,27,27,27,27,27,27, - 27,27,27,27,27,27,35,29,25,116, - 116,91,91,58,36,36,36,36,36,36, - 36,37,37,37,30,30,117,117,92,92, - 38,38,39,39,39,65,65,40,40,40, - 40,41,41,41,41,41,77,77,33,33, - 33,33,33,51,51,51,98,98,93,93, - 93,93,94,94,94,95,95,95,96,96, - 96,97,97,97,118,118,99,99,100,52, - 55,55,55,55,55,69,70,70,70,70, - 70,70,70,70,70,70,70,70,81,78, - 78,119,120,82,82,79,79,79,83,101, - 101,102,102,84,84,84,60,121,121,103, - 85,85,85,80,80,122,104,104,105,105, - 86,86,31,32,32,32,53,54,54,42, + 27,27,27,27,27,27,34,30,25,119, + 119,95,95,58,35,35,35,35,35,35, + 35,36,36,36,29,29,96,96,71,71, + 37,37,38,38,38,67,67,39,39,39, + 39,40,40,40,40,40,66,66,31,31, + 31,31,31,53,53,53,103,103,98,98, + 98,98,99,99,99,100,100,100,101,101, + 101,102,102,102,97,97,85,85,86,54, + 56,56,56,56,56,72,73,73,73,73, + 73,73,73,73,73,73,73,73,84,81, + 81,120,121,87,87,82,82,82,88,104, + 104,105,105,89,89,89,60,122,122,106, + 90,90,90,83,83,123,107,107,108,108, + 91,91,32,33,33,33,55,51,51,42, 42,42,42,45,45,47,43,43,44,48, - 48,140,140,46,141,141,123,123,49,49, - 49,49,49,49,49,49,49,106,67,67, - 67,67,50,72,72,71,71,71,73,73, - 68,68,124,124,75,75,74,74,74,61, - 61,61,62,63,63,63,64,64,64,64, - 66,66,57,57,59,126,125,125,125,125, - 107,127,128,128,129,129,130,130,142,142, - 143,143,144,144,144,144,146,146,145,145, - 145,147,147,13,13,13,28,28,14,14, - 131,131,108,108,108,109,109,132,132,110, - 110,15,15,133,133,111,111,111,111,16, - 87,134,134,135,135,112,112,112,88,88, - 88,6,6,12,12,23,3,37,136,113, - 113,113,89,89,33,77,51,100,100,100, - 103,103,103,122,119,120,50,83,129,129, - 137,138,107,114,114,205,928,17,21,18, - 485,831,926,44,546,528,651,646,366,313, - 314,315,713,671,763,748,794,766,74,1287, - 2837,133,91,949,242,31,134,212,1526,20, - 17,21,18,485,42,49,44,546,528,651, - 646,50,392,242,1402,1236,136,133,135,804, - 159,1526,20,17,21,18,485,42,283,44, - 546,528,651,646,138,165,1201,178,713,671, - 763,748,1265,142,145,148,151,2180,49,366, - 313,314,315,22,359,555,431,714,1703,2449, - 2454,2459,2503,1348,1750,1721,1130,134,212,833, - 1359,1526,20,17,21,18,485,42,2508,44, - 546,528,651,1237,25,242,186,136,133,135, - 332,159,1526,20,17,21,18,485,42,209, - 44,546,528,651,646,138,165,967,225,713, - 671,763,1273,104,142,145,148,151,2180,1359, - 317,313,314,315,569,359,433,757,315,1703, - 2449,2454,2459,2503,1348,1430,20,17,21,18, - 485,831,570,44,546,528,651,646,356,2508, - 1652,1434,713,671,763,748,794,766,74,253, - 212,1434,280,1376,20,17,21,18,485,831, - 570,44,546,528,651,646,274,333,321,1393, - 713,671,763,748,794,766,74,123,299,1001, - 280,49,281,1434,1274,845,804,569,2859,1012, - 733,286,317,313,314,315,1526,20,17,21, - 18,485,42,89,44,546,528,651,646,122, - 281,2525,1274,713,671,1247,253,320,1393,288, - 240,333,1140,1434,952,1454,20,17,21,18, - 485,831,287,44,546,528,651,646,242,185, - 1637,677,713,671,763,748,794,766,74,111, - 413,1129,280,1478,20,17,21,18,485,831, - 289,44,546,528,651,646,569,1433,926,292, - 713,671,763,748,794,766,74,683,379,28, - 280,1274,281,200,1274,631,393,1485,242,31, - 19,157,1870,845,1357,783,1526,20,17,21, - 18,485,42,1112,44,546,528,651,646,277, - 281,87,1274,713,1262,383,1743,1347,593,382, - 1502,20,17,21,18,485,831,858,44,546, - 528,651,646,547,254,212,31,713,671,763, - 748,794,766,74,28,1803,1274,280,1328,20, - 17,21,18,485,831,548,44,546,528,651, - 646,569,242,187,711,713,671,763,748,794, - 766,74,242,861,49,616,1061,281,24,1274, - 1660,915,238,1818,926,652,290,1622,20,17, - 21,18,485,831,275,44,546,528,651,646, - 411,1665,126,926,713,671,763,748,794,766, - 74,254,212,1434,329,1526,20,17,21,18, - 485,831,804,44,546,528,651,646,926,1391, - 878,1434,713,671,763,748,794,766,74,125, - 179,1434,91,1598,20,17,21,18,485,831, - 2032,44,546,528,651,646,242,121,966,1246, - 713,671,763,748,794,766,74,2905,1185,1602, - 852,1526,20,17,21,18,485,42,1186,44, - 546,528,651,646,203,431,1402,1408,713,671, - 763,748,794,766,93,127,1109,327,1215,1526, - 20,17,21,18,485,42,431,44,546,528, - 651,1245,1526,20,17,21,18,485,42,1946, - 44,965,1352,20,17,21,18,485,831,1390, - 44,546,528,651,646,754,227,1028,1010,713, - 671,763,748,794,766,74,1432,1270,168,994, - 317,313,314,315,1003,456,239,1622,20,17, - 21,18,485,831,804,44,546,528,651,646, - 344,208,1026,315,713,671,763,748,794,766, - 74,1845,1130,1824,329,317,313,314,315,681, - 1416,1526,20,17,21,18,485,831,241,44, - 546,528,651,646,253,212,331,1389,713,671, - 763,748,794,766,74,430,259,589,92,1526, - 20,17,21,18,485,831,293,44,546,528, - 651,646,226,315,1203,1570,713,671,763,748, - 794,766,74,804,1771,810,85,317,313,314, - 315,1526,20,17,21,18,485,831,804,44, - 546,528,651,646,253,212,948,328,713,671, - 763,748,794,766,74,254,212,243,84,1526, - 20,17,21,18,485,831,1213,44,546,528, - 651,646,244,334,1434,926,713,671,763,748, - 794,766,74,242,295,1074,83,1526,20,17, - 21,18,485,831,49,44,546,528,651,646, - 2907,1292,1129,346,713,671,763,748,794,766, - 74,242,297,1434,82,1526,20,17,21,18, - 485,831,1647,44,546,528,651,646,926,1063, - 1434,180,713,671,763,748,794,766,74,2913, - 1773,1789,81,1526,20,17,21,18,485,831, - 49,44,546,528,651,646,340,2861,1781,1434, - 713,671,763,748,794,766,74,193,268,284, - 80,1526,20,17,21,18,485,831,1178,44, - 546,528,651,646,204,117,254,350,713,671, - 763,748,794,766,74,549,167,715,79,1526, - 20,17,21,18,485,831,1332,44,546,528, - 651,646,779,849,852,736,713,671,763,748, - 794,766,74,1052,1157,376,78,1526,20,17, - 21,18,485,831,804,44,546,528,651,646, - 294,427,431,1402,713,671,763,748,794,766, - 74,1278,1425,1654,77,1526,20,17,21,18, - 485,831,804,44,546,528,651,646,296,1693, - 1704,853,713,671,763,748,794,766,74,875, - 413,541,76,1526,20,17,21,18,485,831, - 1745,44,546,528,651,646,381,1244,1201,178, - 713,671,763,748,794,766,74,569,69,619, - 75,366,313,314,315,1526,20,17,21,18, - 485,831,282,44,546,528,651,646,208,134, - 212,23,713,671,763,748,794,766,74,879, - 201,1807,355,1825,1384,1829,1152,1416,255,137, - 133,135,1509,159,1526,20,17,21,18,485, - 42,569,44,546,528,1045,1189,139,165,1550, - 20,17,21,18,485,352,143,146,149,152, - 2180,1839,1433,1557,1065,272,1274,360,1526,20, - 17,21,18,485,831,378,44,546,528,651, - 646,1481,391,550,3121,713,671,763,748,794, - 766,74,3121,3121,3121,73,1526,20,17,21, - 18,485,831,3121,44,546,528,651,646,3121, - 3121,3121,3121,713,671,763,748,794,766,74, - 3121,3121,3121,1073,1526,20,17,21,18,485, - 831,3121,44,546,528,651,646,3121,3121,3121, - 3121,713,671,763,748,794,766,74,3121,3121, - 3121,1088,1526,20,17,21,18,485,42,777, - 44,546,528,651,646,1181,456,569,3121,713, - 671,763,748,794,766,93,1526,20,17,21, - 18,485,42,3121,44,546,528,651,646,319, - 3121,278,196,713,671,763,748,794,766,93, - 3121,3121,3121,1526,20,17,21,18,485,42, - 358,44,546,528,651,646,569,569,569,1829, - 713,671,763,748,794,766,93,1526,20,17, - 21,18,485,42,1256,44,546,528,651,646, - 339,717,279,192,713,671,763,748,794,766, - 93,3121,3121,3121,1526,20,17,21,18,485, - 42,211,44,546,528,651,646,1769,542,569, - 569,713,671,763,748,794,766,93,1526,20, - 17,21,18,485,42,1284,44,546,528,651, - 646,1770,336,2278,2295,713,671,763,748,794, - 766,93,3121,3121,3121,1526,20,17,21,18, - 485,42,201,44,546,528,651,646,3121,3121, - 3121,3121,713,671,763,748,794,766,93,244, - 3121,3121,3121,1265,3121,3121,1312,3121,569,3121, - 3121,3121,316,313,314,315,366,313,314,315, - 1526,20,17,21,18,485,42,527,44,546, - 528,1047,2339,202,134,212,966,3121,3121,3121, - 569,218,917,220,1013,222,223,228,273,1330, - 137,1329,3121,3121,141,133,135,385,159,3121, - 268,775,547,271,224,3121,3121,1,1329,3121, - 569,631,140,165,385,86,110,786,2860,3121, - 95,3121,3121,806,1935,653,108,94,96,97, - 98,99,86,110,318,230,3121,95,3121,3121, - 806,276,653,108,94,96,97,98,99,3121, - 3121,1526,20,17,21,18,485,42,869,44, - 546,528,1096,105,1432,2755,273,109,49,1061, - 3121,316,313,314,315,845,1868,365,266,775, - 547,271,106,3121,109,289,2072,3121,343,49, - 3121,1411,2726,87,365,194,845,439,3121,107, - 217,917,220,1013,222,223,228,1767,705,3121, - 32,1920,2858,400,87,2755,569,456,1639,3121, - 845,316,313,314,315,3121,3121,217,917,220, - 1013,222,223,228,273,3121,2055,569,87,262, - 338,3121,1264,1845,3121,3121,266,775,547,271, - 217,917,220,1013,222,223,228,154,1398,263, - 685,337,1451,1526,20,17,21,18,485,42, - 387,44,546,528,1116,591,899,2277,258,3121, - 3121,1588,456,1331,1180,3121,1779,3121,316,313, - 314,315,3121,2882,276,3121,1526,20,17,21, - 18,485,42,527,44,546,528,1190,1845,260, - 323,197,217,917,220,1013,222,223,228,273, - 3121,3121,3121,869,1740,1275,569,3121,1263,1191, - 2755,266,775,547,271,3121,316,313,314,315, - 1694,3121,2061,258,1411,792,1537,3121,1331,3121, - 1209,2072,2755,317,313,314,315,3121,316,313, - 314,315,3121,3121,3121,217,917,220,1013,222, - 223,228,315,2055,569,3121,1783,2858,1526,20, - 17,21,18,485,42,3121,40,217,917,220, - 1013,222,223,228,3121,705,569,569,229,1451, - 233,495,2755,253,212,3121,3121,3121,317,313, - 314,315,869,3121,316,313,314,315,636,2755, - 2383,349,155,1398,3121,317,313,314,315,527, - 2882,316,313,314,315,3121,3121,217,917,220, - 1013,222,223,228,733,569,527,569,198,1451, - 273,1330,3121,3121,217,917,220,1013,222,223, - 228,917,268,775,547,271,2862,3121,1275,2400, - 3121,350,3121,3121,316,313,314,315,1466,3121, - 2887,3121,3121,3121,3121,2061,3121,469,1329,527, - 3121,3121,3121,3121,845,1550,20,17,21,18, - 485,351,3121,218,917,220,1013,222,223,228, - 3121,1330,86,110,517,1329,3121,95,3121,3121, - 965,845,653,1359,94,96,97,98,99,3121, - 3121,565,1329,316,313,314,315,3121,845,86, - 110,3121,3121,3121,95,3121,3121,3121,609,653, - 103,94,96,97,98,99,86,110,681,1329, - 3121,95,3121,3121,650,845,653,101,94,96, - 97,98,99,3121,3121,729,1329,316,313,314, - 315,3121,845,86,110,3121,3121,3121,95,3121, - 3121,3121,967,653,357,94,96,97,98,99, - 86,110,3121,3121,3121,95,3121,1780,3121,3121, - 653,102,94,96,97,98,99,755,845,1329, - 317,313,314,315,456,845,3121,3121,3121,3121, - 316,313,314,315,3121,893,1329,3121,3121,409, - 3121,3121,845,86,110,527,3121,505,95,3121, - 1845,3121,3121,653,118,94,96,97,98,99, - 86,110,521,3121,3121,95,3121,1275,3121,845, - 653,114,94,96,97,98,99,3121,3121,941, - 1329,3121,1061,3121,1699,258,845,87,1537,845, - 1331,115,3121,630,3121,3121,1057,1329,3121,3121, - 2078,3121,3121,845,86,110,3121,87,124,95, - 3121,843,3121,3121,653,1436,94,96,97,98, - 99,86,110,1105,1329,3121,95,1124,3121,3121, - 845,653,113,94,96,97,98,99,3121,3121, - 1153,1329,273,49,49,3121,3121,845,86,110, - 845,845,3121,95,266,775,547,271,653,120, - 94,96,97,98,99,86,110,265,87,87, - 95,3121,1640,1708,3121,653,119,94,96,97, - 98,99,1526,20,17,21,18,485,42,1642, - 44,546,528,1208,1655,3121,3121,3121,3121,1692, - 3121,3121,366,313,314,315,3121,366,313,314, - 315,3121,366,313,314,315,3121,3121,3121,3121, - 134,212,3121,3121,3121,134,212,3121,3121,3121, - 134,212,1550,20,17,21,18,485,41,3121, - 144,133,135,1705,159,147,133,135,1742,159, - 150,133,135,3121,159,3121,366,313,314,315, - 3121,366,313,314,315,1401,20,17,21,18, - 485,42,3121,43,134,212,3121,3121,3121,134, - 212,1526,20,17,21,18,485,42,3121,44, - 546,1218,3121,3121,153,133,135,3121,159,361, - 133,135,3121,159,1526,20,17,21,18,485, - 42,185,44,546,1219,3121,3121,3121,2755,3121, - 3121,3121,28,3121,1274,1526,20,17,21,18, - 485,42,3121,44,968,295,20,17,21,18, - 485,42,3121,36,295,20,17,21,18,485, - 42,3121,36,217,917,220,1013,222,223,228, - 3121,3121,3121,3121,3121,1740,3121,3121,3121,245, - 3121,1526,20,17,21,18,485,42,246,39, - 1526,20,17,21,18,485,42,3121,38,1526, - 20,17,21,18,485,42,3121,37,1526,20, - 17,21,18,485,42,3121,36,1526,20,17, - 21,18,485,42,615,35,615,3121,3121,3121, - 999,385,3121,385,1526,20,17,21,18,485, - 42,3121,47,316,313,314,315,3121,3121,87, - 3121,87,3121,696,544,696,544,196,1002,196, - 1526,20,17,21,18,485,42,3121,46,1526, - 20,17,21,18,485,42,636,45,615,3121, - 1813,473,3121,3121,2353,385,2353,3121,385,316, - 313,314,315,317,313,314,315,3121,3121,617, - 3121,791,3121,87,527,636,87,696,544,814, - 115,196,3121,792,806,3121,1083,3121,316,313, - 314,315,316,313,314,315,1275,3121,3121,316, - 313,314,315,527,1815,3121,3121,967,2353,3121, - 3121,3121,3121,1699,527,3121,871,317,313,314, - 315,3121,746,1587,3121,1275,3121,3121,2322,1550, - 20,17,21,18,485,34,977,3121,365,3121, - 3121,3121,2121,1550,20,17,21,18,485,33, - 1574,20,17,21,18,485,1301,1085,3121,3121, - 3121,1083,668,1574,20,17,21,18,485,362, - 316,313,314,315,316,313,314,315,1224,613, - 64,989,1703,3121,3121,1064,456,456,456,527, - 3121,316,313,314,315,316,313,314,315,3121, - 3121,3121,1794,3121,3121,3121,2000,1804,3121,3121, - 2267,1172,196,1845,196,316,313,314,315,3121, - 316,313,314,315,3121,521,3121,521,3121,3121, - 2730,3121,845,521,845,2784,3121,3121,3121,1829, - 845,1829,49,3121,3121,3121,3121,3121,258,845, - 87,2034,87,1331,115,3121,115,3121,87,3121, - 3121,3121,115,191,3121,191,3121,87,3121,3121, - 3121,1986,3121,3121,3121,3121,3121,1394,3121,3121, - 814,1529,1125,1529,3121,3121,3121,3121,3121,3121, - 1163,3121,2056,3121,3121,3121,3121,3121,2105,3121, - 3121,3121,3121,2036,3121,0,608,32,0,1828, - 32,0,3129,1,0,860,128,0,898,128, - 0,908,128,0,860,129,0,898,129,0, - 908,129,0,860,130,0,898,130,0,908, - 130,0,860,184,0,898,184,0,908,184, - 0,184,188,0,860,183,0,898,183,0, - 908,183,0,183,188,0,860,131,0,898, - 131,0,908,131,0,860,132,0,898,132, - 0,908,132,0,20,178,0,860,364,0, - 898,364,0,908,364,0,1,725,0,860, - 376,0,898,376,0,908,376,0,1,860, - 0,1,898,0,1,908,0,352,362,0, - 860,252,0,898,252,0,908,252,0,8, - 10,0,1,3346,0,1,3357,0,112,2356, - 0 + 48,124,124,46,143,143,125,125,52,52, + 52,52,52,52,52,52,52,109,61,61, + 61,61,49,75,75,74,74,74,76,76, + 69,69,126,126,79,79,77,77,77,62, + 62,62,63,64,64,64,65,65,65,65, + 68,68,57,57,59,128,127,127,127,127, + 110,129,130,130,131,131,132,132,144,144, + 145,145,146,146,146,146,148,148,147,147, + 147,78,133,133,12,12,12,28,28,13, + 13,134,134,111,111,111,112,112,135,135, + 113,113,14,14,136,136,114,114,114,114, + 15,70,137,137,138,138,115,115,115,92, + 92,92,6,6,16,16,23,3,36,139, + 116,116,116,93,93,31,66,53,86,86, + 86,106,106,106,123,120,121,49,88,131, + 131,140,141,110,71,117,117,331,912,17, + 21,18,481,828,560,44,502,483,520,367, + 314,315,316,518,684,585,716,693,826,793, + 74,1851,1379,443,91,521,901,1429,357,134, + 212,672,31,1319,178,1647,20,17,21,18, + 481,42,500,44,926,367,314,315,316,387, + 136,133,135,159,1647,20,17,21,18,481, + 42,1872,44,502,1083,134,212,87,398,138, + 165,394,949,196,629,1634,1279,274,142,145, + 148,151,645,28,1895,1185,136,133,135,159, + 360,1825,464,451,517,2181,2285,2576,2607,2611, + 1278,786,2730,249,462,138,165,1155,254,212, + 938,786,876,2636,142,145,148,151,104,87, + 1895,718,645,22,385,25,360,753,302,89, + 37,2181,2285,2576,2607,2611,1278,1551,20,17, + 21,18,481,828,411,44,502,483,520,2636, + 1370,451,292,518,684,585,716,693,826,793, + 74,658,380,240,280,1445,20,17,21,18, + 481,828,411,44,502,483,520,908,2919,1469, + 1905,518,684,585,716,693,826,793,74,672, + 31,1685,280,293,281,38,1185,753,1575,20, + 17,21,18,481,828,286,44,502,483,520, + 369,413,254,212,518,684,585,716,693,826, + 793,74,281,1463,1185,280,1647,20,17,21, + 18,481,42,288,44,502,483,520,321,1294, + 672,186,518,684,585,716,1184,287,1647,20, + 17,21,18,481,42,281,40,1185,1747,1183, + 398,1657,275,1661,417,2950,157,1770,1599,20, + 17,21,18,481,828,289,44,502,483,520, + 672,185,277,24,518,684,585,716,693,826, + 793,74,672,1349,444,280,1623,20,17,21, + 18,481,828,543,44,502,483,520,322,1294, + 312,1428,518,684,585,716,693,826,793,74, + 28,301,1185,280,311,281,541,1185,560,1647, + 20,17,21,18,481,42,383,44,502,1101, + 1397,20,17,21,18,481,828,1289,44,502, + 483,520,2161,281,783,1185,518,684,585,716, + 693,826,793,74,290,1862,1250,512,1743,20, + 17,21,18,481,828,1722,44,502,483,520, + 123,238,783,209,518,684,585,716,693,826, + 793,74,672,187,783,330,1647,20,17,21, + 18,481,828,416,44,502,483,520,122,672, + 872,783,518,684,585,716,693,826,793,74, + 111,672,295,91,1719,20,17,21,18,481, + 828,1936,44,502,483,520,888,125,1727,645, + 518,684,585,716,693,826,793,74,1280,282, + 554,829,1647,20,17,21,18,481,42,1747, + 44,502,483,520,739,999,2941,347,518,684, + 585,716,693,826,793,93,318,314,315,316, + 242,328,783,230,1647,20,17,21,18,481, + 42,464,44,502,483,966,1421,20,17,21, + 18,481,828,2044,44,502,483,520,121,645, + 1269,1047,518,684,585,716,693,826,793,74, + 672,297,1499,899,1743,20,17,21,18,481, + 828,249,44,502,483,520,1086,239,527,783, + 518,684,585,716,693,826,793,74,456,1182, + 241,330,1647,20,17,21,18,481,828,560, + 44,502,483,520,1922,2988,1333,645,518,684, + 585,716,693,826,793,74,49,1182,169,92, + 181,253,212,19,1647,20,17,21,18,481, + 828,1267,44,502,483,520,254,212,283,1787, + 518,684,585,716,693,826,793,74,243,253, + 212,85,1647,20,17,21,18,481,828,249, + 44,502,483,520,570,127,2889,630,518,684, + 585,716,693,826,793,74,1002,329,783,84, + 1647,20,17,21,18,481,828,249,44,502, + 483,520,954,645,1413,783,518,684,585,716, + 693,826,793,74,3000,1065,783,83,1647,20, + 17,21,18,481,828,1330,44,502,483,520, + 1920,3009,939,1935,518,684,585,716,693,826, + 793,74,341,775,244,82,1647,20,17,21, + 18,481,828,249,44,502,483,520,645,193, + 1571,911,518,684,585,716,693,826,793,74, + 520,294,783,81,1647,20,17,21,18,481, + 828,1866,44,502,483,520,645,456,967,379, + 518,684,585,716,693,826,793,74,117,296, + 474,80,1647,20,17,21,18,481,828,249, + 44,502,483,520,751,456,2944,170,518,684, + 585,716,693,826,793,74,807,382,969,79, + 1647,20,17,21,18,481,828,179,44,502, + 483,520,1147,456,836,1308,518,684,585,716, + 693,826,793,74,758,334,1513,78,1647,20, + 17,21,18,481,828,711,44,502,483,520, + 1121,456,1201,1209,518,684,585,716,693,826, + 793,74,1346,1469,995,77,1647,20,17,21, + 18,481,828,203,44,502,483,520,998,1331, + 1248,1494,518,684,585,716,693,826,793,74, + 1528,905,67,76,1647,20,17,21,18,481, + 828,180,44,502,483,520,1050,1179,1473,811, + 518,684,585,716,693,826,793,74,1319,178, + 1768,75,1671,20,17,21,18,481,353,1182, + 367,314,315,316,1781,1534,1647,20,17,21, + 18,481,828,1308,44,502,483,520,456,1805, + 134,212,518,684,585,716,693,826,793,74, + 227,253,212,356,1671,20,17,21,18,481, + 352,137,133,135,159,1510,1647,20,17,21, + 18,481,42,1369,44,502,483,520,1709,1558, + 139,165,518,684,585,716,693,1182,204,143, + 146,149,152,560,466,1895,345,1582,1853,1602, + 1757,361,1647,20,17,21,18,481,828,1212, + 44,502,483,520,1259,1199,1913,416,518,684, + 585,716,693,826,793,74,1230,1097,886,73, + 1647,20,17,21,18,481,828,1606,44,502, + 483,520,3214,1125,1349,3214,518,684,585,716, + 693,826,793,74,3214,3214,3214,957,1647,20, + 17,21,18,481,828,3214,44,502,483,520, + 3214,3214,3214,3214,518,684,585,716,693,826, + 793,74,3214,937,3214,1043,1647,20,17,21, + 18,481,42,560,44,502,483,520,560,1857, + 560,560,518,684,585,716,693,826,793,93, + 1647,20,17,21,18,481,42,23,44,502, + 483,520,272,320,278,340,518,684,585,716, + 693,826,793,93,208,226,3214,1647,20,17, + 21,18,481,42,359,44,502,483,520,1870, + 569,1367,560,518,684,585,716,693,826,793, + 93,1647,20,17,21,18,481,42,1070,44, + 502,483,520,333,3214,3214,653,518,684,585, + 716,693,826,793,93,3214,3214,3214,1647,20, + 17,21,18,481,42,211,44,502,483,520, + 560,1125,1349,3214,518,684,585,716,693,826, + 793,93,1647,20,17,21,18,481,42,1098, + 44,502,483,520,279,3214,3214,1870,518,684, + 585,716,693,826,793,93,3214,3214,3214,1647, + 20,17,21,18,481,42,201,44,502,483, + 520,332,3214,3214,1111,518,684,585,716,693, + 826,793,93,334,199,1238,318,314,315,316, + 1126,387,419,20,17,21,18,481,42,666, + 36,1,1238,3214,3214,1597,1695,1875,387,86, + 110,3214,208,95,905,1649,3214,202,784,108, + 94,96,97,98,99,126,86,110,1223,1367, + 95,1922,1649,245,1247,784,108,94,96,97, + 98,99,1847,3214,560,989,318,314,315,316, + 109,105,2815,3214,366,106,3214,317,314,315, + 316,335,384,1838,3214,3214,337,109,2370,3214, + 366,366,107,2109,3214,318,314,315,316,384, + 1651,3214,317,314,315,316,3214,217,1268,220, + 1453,222,223,1348,3214,3214,2360,3214,854,1647, + 20,17,21,18,481,42,1369,44,502,483, + 968,1772,218,1268,220,1453,222,223,228,1239, + 265,1238,273,317,314,315,316,387,3214,344, + 154,1335,268,600,415,271,3214,133,1238,1713, + 249,666,989,3214,387,86,110,786,1831,95, + 3214,1649,2012,3214,784,108,94,96,97,98, + 99,3214,86,110,3214,87,95,126,1649,581, + 472,784,108,94,96,97,98,99,1299,3214, + 3214,989,3214,3214,3214,2210,109,313,2838,3214, + 366,106,3214,317,314,315,316,560,384,782, + 3214,3214,276,109,899,617,249,366,107,2109, + 3214,423,2838,786,560,384,1787,317,314,315, + 316,2386,3214,217,1268,220,1453,222,223,228, + 273,87,2360,2060,755,196,1694,1828,2427,666, + 266,600,415,271,2788,667,1855,217,1268,220, + 1453,222,223,228,3214,1468,1396,317,314,315, + 316,3214,989,3214,1889,194,154,1335,560,2838, + 3214,3214,560,1624,317,314,315,316,989,217, + 1268,220,1453,222,223,228,1182,249,262,273, + 2109,1832,224,192,786,2956,319,3214,2369,266, + 600,415,271,3214,217,1268,220,1453,222,223, + 228,197,87,2360,263,276,560,1847,253,212, + 1647,20,17,21,18,481,42,1073,44,502, + 483,970,3214,217,1268,220,1453,222,223,228, + 339,3214,1918,273,3214,827,560,155,1335,3214, + 3214,3214,2838,266,600,415,271,317,314,315, + 316,466,1880,260,3214,567,3214,3214,1468,3214, + 338,3214,3214,2060,1647,20,17,21,18,481, + 42,3214,44,502,483,1017,1056,217,1268,220, + 1453,222,223,228,1896,1400,1396,1647,20,17, + 21,18,481,42,3214,44,502,483,520,3214, + 617,3214,3214,518,684,585,1154,2838,324,560, + 3214,3214,318,314,315,316,3214,3214,1647,20, + 17,21,18,481,42,2956,44,502,483,520, + 3214,3214,3214,1112,518,684,1157,3214,3214,3214, + 1037,198,217,1268,220,1453,222,223,228,989, + 3214,1396,317,314,315,316,2838,560,3214,3214, + 3214,318,314,315,316,3214,3214,3214,854,1647, + 20,17,21,18,481,42,3214,44,502,483, + 1026,229,218,1268,220,1453,222,223,1386,1239, + 2977,217,1268,220,1453,222,223,228,1037,3214, + 2946,1470,20,17,21,18,481,42,1934,43, + 317,314,315,316,1647,20,17,21,18,481, + 42,1334,44,502,483,520,854,560,560,3214, + 518,1110,233,367,314,315,316,560,3214,3214, + 218,1268,220,1453,222,223,228,1239,1021,3214, + 877,2468,350,134,212,423,1504,423,28,3214, + 1185,2488,317,314,315,316,593,1238,318,314, + 315,316,560,786,141,133,135,159,854,1887, + 3214,1887,419,20,17,21,18,481,42,3214, + 36,86,110,140,165,95,351,3214,3214,1194, + 784,1266,94,96,97,98,99,641,1238,3214, + 3214,2553,3214,3214,786,3214,3214,259,3214,258, + 3214,3214,3214,246,1470,748,1240,689,1238,3214, + 3214,3214,86,110,786,3214,95,367,314,315, + 316,784,103,94,96,97,98,99,803,1238, + 3214,3214,86,110,3214,786,95,134,212,3214, + 3214,784,101,94,96,97,98,99,851,1238, + 3214,3214,3214,86,110,786,3214,95,144,133, + 135,159,784,358,94,96,97,98,99,3214, + 3214,3214,3214,86,110,3214,3214,95,3214,3214, + 1881,3214,784,102,94,96,97,98,99,1087, + 965,1238,317,314,315,316,423,786,3214,3214, + 3214,317,314,315,316,3214,1013,1238,2735,3214, + 3214,3214,3214,786,3214,86,110,854,3214,95, + 1887,3214,3214,3214,784,118,94,96,97,98, + 99,86,110,3214,3214,95,3214,3214,1194,3214, + 784,114,94,96,97,98,99,1061,1238,3214, + 1720,3214,3214,3214,786,3214,3214,3214,258,3214, + 3214,3214,3214,1470,3214,1240,3214,1175,1238,3214, + 3214,3214,86,110,786,3214,95,3214,3214,3214, + 3214,784,1384,94,96,97,98,99,1223,1238, + 3214,249,86,110,3214,786,95,3214,786,3214, + 3214,784,113,94,96,97,98,99,1271,1238, + 3214,1879,3214,86,110,786,87,95,786,3214, + 3214,1864,784,120,94,96,97,98,99,3214, + 3214,249,3214,86,110,3214,87,95,786,3214, + 3214,115,784,119,94,96,97,98,99,1647, + 20,17,21,18,481,42,87,44,502,483, + 520,2069,3214,3214,3214,1129,1647,20,17,21, + 18,481,42,713,44,502,483,520,1028,3214, + 3214,3214,1140,3214,3214,317,314,315,316,1647, + 20,17,21,18,481,42,910,44,502,483, + 1055,854,3214,3214,3214,3214,3214,3214,367,314, + 315,316,1647,20,17,21,18,481,42,3214, + 44,956,1239,3214,3214,273,3214,1120,134,212, + 3214,1767,3214,3214,3214,268,600,415,271,367, + 314,315,316,367,314,315,316,3214,313,147, + 133,135,159,3214,3214,2838,1778,3214,3214,134, + 212,3214,3214,134,212,3214,3214,3214,367,314, + 315,316,1671,20,17,21,18,481,41,3214, + 150,133,135,159,153,133,135,159,134,212, + 217,1268,220,1453,222,223,228,3214,3214,1918, + 1647,20,17,21,18,481,42,3214,39,362, + 133,135,159,1647,20,17,21,18,481,42, + 3214,38,1647,20,17,21,18,481,42,3214, + 37,1647,20,17,21,18,481,42,3214,36, + 1647,20,17,21,18,481,42,500,35,3214, + 723,3214,3214,3214,387,1893,3214,2784,1647,20, + 17,21,18,481,42,3214,47,318,314,315, + 316,3214,87,3214,3214,3214,394,949,196,1647, + 20,17,21,18,481,42,3214,46,1647,20, + 17,21,18,481,42,3214,45,3214,3214,500, + 3214,3214,273,3214,551,3214,387,2730,551,3214, + 3214,3214,266,600,415,271,317,314,315,316, + 317,314,315,316,87,3214,1363,265,394,949, + 196,423,854,3214,3214,551,854,3214,387,1671, + 20,17,21,18,481,34,3214,317,314,315, + 316,3214,3214,1194,3214,3214,87,1194,551,2730, + 3214,115,1791,854,3214,2553,3214,410,3214,1720, + 317,314,315,316,3214,3214,3214,3214,1522,317, + 314,315,316,3214,1194,3214,854,1671,20,17, + 21,18,481,33,3214,1684,2100,2491,929,508, + 3214,366,3214,3214,3214,3214,3214,1194,3214,737, + 3214,317,314,315,316,3214,423,3214,3214,2158, + 1695,20,17,21,18,481,1196,1684,1695,20, + 17,21,18,481,363,1249,3214,3214,3214,1321, + 196,3214,3214,3214,1249,3214,3214,317,314,315, + 316,317,314,315,316,630,317,314,315,316, + 3214,1295,3214,854,1109,3214,1911,2216,423,1889, + 858,423,854,3214,3214,360,1949,423,317,314, + 315,316,786,3214,1065,3214,3214,670,317,314, + 315,316,1887,1121,3008,196,666,1951,191,3214, + 87,1887,3214,786,3029,1168,3214,3214,1879,317, + 314,315,316,1127,1854,786,3214,3214,3214,3214, + 1879,87,124,3214,1889,3038,801,786,1932,1879, + 258,3214,3214,87,3214,2117,786,1240,115,258, + 318,314,315,316,1570,87,1240,3214,3214,1960, + 115,3214,3214,191,87,3214,3214,3214,1965,115, + 1295,318,314,315,316,3214,3214,3214,1211,1854, + 318,314,315,316,3214,1045,3214,3214,3214,3214, + 3214,3214,3214,3214,3214,3214,2168,2187,3214,3214, + 3214,3214,3214,1166,3214,3214,2197,3214,0,494, + 32,0,1790,32,0,3222,1,0,840,128, + 0,855,128,0,901,128,0,840,129,0, + 855,129,0,901,129,0,840,130,0,855, + 130,0,901,130,0,840,184,0,855,184, + 0,901,184,0,184,188,0,840,183,0, + 855,183,0,901,183,0,183,188,0,840, + 131,0,855,131,0,901,131,0,840,132, + 0,855,132,0,901,132,0,20,178,0, + 840,365,0,855,365,0,901,365,0,1, + 701,0,840,377,0,855,377,0,901,377, + 0,1,840,0,1,855,0,1,901,0, + 353,363,0,840,252,0,855,252,0,901, + 252,0,8,10,0,1,3439,0,1,3450, + 0,112,2447,0 }; }; public final static char baseAction[] = BaseAction.baseAction; @@ -667,197 +685,210 @@ public class GCCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab 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, - 0,0,32,33,34,35,36,37,38,39, - 40,41,42,43,44,45,46,47,0,0, + 30,31,32,33,34,35,0,0,38,39, + 40,41,42,43,44,45,46,47,0,12, 50,51,52,53,54,55,56,57,58,59, - 60,61,62,0,1,65,66,67,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,49,68, - 32,33,34,35,36,37,38,39,40,41, - 42,43,44,45,46,47,86,87,50,51, - 52,53,54,55,56,57,58,59,60,61, - 62,68,0,65,66,67,0,1,2,3, + 60,61,62,63,64,65,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,0,0,32,33, - 34,35,36,37,38,39,40,41,42,43, - 44,45,46,47,0,1,2,51,52,53, - 54,55,56,57,58,59,60,61,62,0, - 0,65,66,67,0,1,2,0,4,5, + 24,25,26,27,28,29,30,31,32,33, + 34,35,66,67,38,39,40,41,42,43, + 44,45,46,47,66,67,50,51,52,53, + 54,55,56,57,58,59,60,61,62,63, + 64,65,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,0,0, + 38,39,40,41,42,43,44,45,46,47, + 0,12,50,51,52,53,54,55,56,57, + 58,59,60,61,62,63,64,65,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,66,67,38,39,40,41, + 42,43,44,45,46,47,66,67,0,51, + 52,53,54,55,56,57,58,59,60,61, + 62,63,64,65,0,1,2,3,4,5, 6,7,8,9,10,11,12,13,14,15, - 16,17,18,19,0,21,22,23,24,25, - 26,99,28,9,10,68,32,33,34,35, - 36,0,1,0,1,2,5,4,48,6, - 7,8,0,0,0,51,52,53,54,55, - 56,57,58,59,60,61,62,0,68,65, - 66,67,0,30,2,3,9,10,6,80, - 81,9,10,0,12,0,14,15,0,1, - 2,3,9,10,0,1,2,3,0,5, - 6,3,30,9,10,11,12,13,14,15, - 16,17,18,19,0,21,22,23,30,31, - 0,49,50,69,0,73,74,75,76,31, - 78,79,0,80,81,63,64,49,24,25, - 26,69,70,71,72,73,74,75,76,0, - 78,79,80,81,82,83,84,85,86,87, - 88,89,90,91,92,93,94,95,96,97, - 0,77,2,3,0,0,6,0,1,9, - 10,6,12,6,14,15,0,1,2,3, - 0,1,0,1,2,63,64,5,6,0, - 30,9,10,11,12,13,14,15,16,17, - 18,19,0,21,22,23,30,31,6,49, - 50,29,73,74,75,76,0,78,79,0, - 0,1,0,63,64,5,0,11,6,69, - 70,71,72,73,74,75,76,48,78,79, - 80,81,82,83,84,85,86,87,88,89, - 90,91,92,93,94,95,96,97,0,1, + 16,17,18,19,20,21,22,23,24,25, + 26,27,28,29,30,31,32,33,34,35, + 0,0,38,39,40,41,42,43,44,45, + 46,47,0,1,2,51,52,53,54,55, + 56,57,58,59,60,61,62,63,64,65, + 0,1,2,0,4,5,6,7,8,9, + 10,11,12,13,11,15,16,17,18,19, + 20,21,22,23,24,25,26,0,28,0, + 30,31,32,33,34,0,1,2,0,4, + 2,6,7,8,73,74,75,76,0,78, + 79,51,52,53,54,55,56,57,58,59, + 60,61,62,63,64,65,0,0,2,3, + 3,36,6,0,36,9,10,48,12,0, + 1,15,16,4,5,0,7,8,0,1, 2,3,0,5,6,3,4,9,10,11, - 12,13,14,15,16,17,18,19,20,21, - 22,23,63,64,0,27,2,29,4,27, - 6,7,8,71,72,37,38,39,40,41, - 42,43,44,45,46,47,0,1,2,3, - 0,5,6,3,30,9,10,11,12,13, - 14,15,16,17,18,19,20,21,22,23, - 0,0,1,27,3,29,0,27,0,0, - 1,31,11,37,38,39,40,41,42,43, - 44,45,46,47,0,1,2,3,0,5, - 6,3,31,9,10,11,12,13,14,15, - 16,17,18,19,20,21,22,23,0,49, - 0,27,0,29,4,0,6,7,8,31, - 0,37,38,39,40,41,42,43,44,45, - 46,47,0,1,0,3,4,5,0,7, - 8,73,74,75,76,13,78,79,82,0, - 0,2,3,3,20,0,24,25,26,4, - 28,29,7,8,32,33,34,35,36,0, - 1,63,64,4,5,37,7,8,68,30, - 31,31,50,51,52,53,54,55,56,57, - 58,59,60,61,62,83,0,65,66,67, - 0,1,2,3,0,5,6,3,12,9, + 12,13,36,15,16,17,18,19,20,21, + 22,23,0,0,0,49,50,50,0,27, + 0,73,74,75,76,0,78,79,3,9, + 10,0,66,67,3,69,70,71,72,73, + 74,75,76,0,78,79,80,81,82,83, + 84,85,86,87,88,89,90,91,92,93, + 94,95,96,97,0,77,2,3,37,0, + 6,86,87,9,10,50,12,0,1,15, + 16,4,5,14,7,8,0,1,2,0, + 0,5,6,80,81,9,10,11,12,13, + 36,15,16,17,18,19,20,21,22,23, + 0,99,0,49,50,29,73,74,75,76, + 0,78,79,0,4,2,36,7,8,0, + 66,67,3,69,70,71,72,73,74,75, + 76,0,78,79,80,81,82,83,84,85, + 86,87,88,89,90,91,92,93,94,95, + 96,97,0,1,2,3,37,5,6,80, + 81,9,10,11,12,13,14,15,16,17, + 18,19,20,21,22,23,0,1,2,27, + 4,29,82,7,8,83,0,35,0,0, + 38,39,40,41,42,43,44,45,46,47, + 0,1,2,3,0,5,6,3,0,9, 10,11,12,13,14,15,16,17,18,19, - 20,21,22,23,0,1,2,27,4,29, - 0,7,8,0,0,31,3,37,38,39, + 20,21,22,23,48,0,0,27,3,29, + 4,0,1,7,8,35,5,49,38,39, 40,41,42,43,44,45,46,47,0,1, - 2,3,48,5,6,0,0,9,10,11, + 2,3,27,5,6,66,67,9,10,11, 12,13,14,15,16,17,18,19,20,21, - 22,23,48,0,0,27,0,29,4,6, - 6,7,8,50,0,37,38,39,40,41, + 22,23,0,0,2,27,4,29,6,7, + 8,77,0,35,2,3,38,39,40,41, 42,43,44,45,46,47,0,1,0,3, - 4,5,0,7,8,0,30,2,3,13, - 12,0,1,2,84,4,82,0,7,8, - 24,25,26,0,28,29,3,25,32,33, - 34,35,36,0,1,30,31,4,5,84, - 7,8,68,0,71,72,50,51,52,53, - 54,55,56,57,58,59,60,61,62,48, - 0,65,66,67,0,1,2,3,0,5, + 4,5,4,7,8,7,8,0,36,13, + 0,4,0,1,7,8,0,0,36,37, + 24,25,26,6,28,29,30,31,32,33, + 34,24,25,26,0,28,24,30,31,32, + 33,34,0,9,10,3,50,51,52,53, + 54,55,56,57,58,59,60,61,62,63, + 64,65,0,1,2,3,0,5,6,27, + 0,9,10,11,12,13,14,15,16,17, + 18,19,20,21,22,23,0,1,2,27, + 4,29,82,7,8,0,0,35,0,3, + 38,39,40,41,42,43,44,45,46,47, + 0,1,2,3,48,5,6,0,48,9, + 10,11,12,13,14,15,16,17,18,19, + 20,21,22,23,48,0,0,27,68,29, + 4,6,6,7,8,35,50,0,38,39, + 40,41,42,43,44,45,46,47,0,1, + 0,3,4,5,0,7,8,0,1,0, + 0,13,5,4,14,11,7,8,83,9, + 10,14,24,25,26,68,28,29,30,31, + 32,33,34,24,25,26,0,28,2,30, + 31,32,33,34,68,0,71,72,50,51, + 52,53,54,55,56,57,58,59,60,61, + 62,63,64,65,0,1,2,3,0,5, + 6,84,36,9,10,11,12,13,14,15, + 16,17,18,19,20,21,22,23,0,1, + 2,27,4,29,0,7,8,0,0,35, + 2,0,38,39,40,41,42,43,44,45, + 46,47,0,1,2,3,48,5,6,0, + 0,9,10,11,12,13,14,15,16,17, + 18,19,20,21,22,23,0,1,2,27, + 4,29,48,7,8,48,0,35,2,0, + 38,39,40,41,42,43,44,45,46,47, + 0,1,2,3,0,5,6,66,67,9, + 10,11,12,13,14,15,16,17,18,19, + 20,21,22,23,35,0,0,27,68,29, + 4,6,6,7,8,35,0,1,38,39, + 40,41,42,43,44,45,46,47,0,1, + 0,3,4,5,4,7,8,7,8,0, + 0,13,2,4,0,1,7,8,0,5, + 66,67,24,25,26,0,28,29,30,31, + 32,33,34,24,25,26,0,28,0,30, + 31,32,33,34,68,0,71,72,50,51, + 52,53,54,55,56,57,58,59,60,61, + 62,63,64,65,0,1,2,3,0,5, 6,0,0,9,10,11,12,13,14,15, 16,17,18,19,20,21,22,23,0,1, - 2,27,4,29,0,7,8,0,0,2, - 77,37,38,39,40,41,42,43,44,45, - 46,47,0,1,2,3,48,5,6,48, - 48,9,10,11,12,13,14,15,16,17, - 18,19,20,21,22,23,0,1,2,27, - 4,29,48,7,8,0,48,0,3,37, + 0,27,2,29,6,24,25,26,0,35, + 2,0,38,39,40,41,42,43,44,45, + 46,47,0,1,2,3,48,5,6,0, + 84,9,10,11,12,13,14,15,16,17, + 18,19,20,21,22,23,0,0,0,27, + 4,29,4,7,8,7,8,35,0,48, 38,39,40,41,42,43,44,45,46,47, - 0,1,2,3,0,5,6,0,0,9, + 0,1,2,3,0,5,6,48,0,9, 10,11,12,13,14,15,16,17,18,19, - 20,21,22,23,0,0,0,27,4,29, - 4,7,8,7,8,50,11,37,38,39, + 20,21,22,23,0,1,49,27,0,29, + 2,3,24,25,26,35,0,0,38,39, 40,41,42,43,44,45,46,47,0,1, - 0,3,4,5,0,7,8,49,0,1, - 0,13,4,5,4,7,8,7,8,0, - 63,64,24,25,26,6,28,29,0,0, - 32,33,34,35,36,0,1,0,0,4, - 5,4,7,8,7,8,0,0,50,51, + 0,14,4,5,4,7,8,7,8,0, + 0,13,0,0,36,37,6,4,6,0, + 7,8,24,25,26,0,28,2,30,31, + 32,33,34,24,25,26,98,24,25,26, + 0,28,68,30,31,32,33,34,0,51, 52,53,54,55,56,57,58,59,60,61, - 62,0,0,65,66,67,0,1,2,3, - 0,5,6,3,0,9,10,11,12,13, - 14,15,16,17,18,19,20,21,22,23, - 71,72,0,27,0,29,4,27,4,7, - 8,7,8,37,38,39,40,41,42,43, - 44,45,46,47,0,1,2,3,0,5, - 6,0,48,9,10,11,12,13,14,15, + 62,63,64,65,51,52,53,54,55,56, + 57,58,59,60,61,62,0,1,2,3, + 0,5,6,71,72,9,10,11,12,13, + 0,15,16,17,18,19,20,21,22,23, + 0,1,2,3,28,5,6,0,0,9, + 10,11,12,13,0,15,16,17,18,19, + 20,21,22,23,0,1,2,3,28,5, + 6,0,25,9,10,11,12,13,14,15, 16,17,18,19,20,21,22,23,0,0, - 1,27,3,29,83,24,25,26,30,0, - 0,37,38,39,40,41,42,43,44,45, - 46,47,0,1,2,3,0,5,6,20, - 31,9,10,11,12,13,14,15,16,17, - 18,19,20,21,22,23,20,49,70,27, - 0,29,2,3,0,0,2,2,0,37, - 38,39,40,41,42,43,44,45,46,47, - 0,1,0,0,4,5,4,7,8,7, - 8,31,0,13,0,1,2,3,4,0, - 6,7,8,0,24,25,26,4,28,0, - 7,8,32,33,34,35,36,49,24,25, - 26,27,28,0,30,31,32,33,34,35, - 36,51,52,53,54,55,56,57,58,59, - 60,61,62,20,0,65,66,67,4,0, - 0,7,8,0,0,63,64,0,1,2, - 3,4,0,6,7,8,0,1,24,25, - 26,5,28,24,25,26,32,33,34,35, - 36,24,25,26,27,28,20,30,31,32, - 33,34,35,36,0,51,52,53,54,55, - 56,57,58,59,60,61,62,0,1,2, - 3,0,5,6,3,0,9,10,11,12, - 13,14,15,16,17,18,19,0,21,22, - 23,0,1,2,3,28,5,6,0,1, - 9,10,11,12,13,14,15,16,17,18, - 19,98,21,22,23,0,1,2,3,28, - 5,6,24,0,9,10,11,12,13,14, - 15,16,17,18,19,20,21,22,23,68, - 0,1,2,20,77,5,6,0,77,9, - 10,11,12,13,14,15,16,17,18,19, - 20,21,22,23,0,50,2,0,77,0, - 1,2,0,0,5,6,3,30,9,10, + 1,2,0,77,5,6,0,49,9,10, 11,12,13,14,15,16,17,18,19,20, - 21,22,23,0,1,2,0,1,5,6, - 27,5,9,10,11,12,13,14,15,16, - 17,18,19,20,21,22,23,0,1,2, - 0,49,5,6,0,0,9,10,11,12, - 13,14,15,16,17,18,19,20,21,22, - 23,0,1,2,20,20,5,6,0,0, - 9,10,11,12,13,14,15,16,17,18, - 19,20,21,22,23,0,1,2,48,0, - 5,6,0,0,9,10,11,12,13,14, - 15,16,17,18,19,0,21,22,23,0, - 1,2,20,0,5,6,0,48,9,10, - 11,12,13,14,15,16,17,18,19,0, - 21,22,23,0,1,2,0,69,5,6, - 11,48,9,10,11,12,13,14,15,16, - 17,18,19,0,21,22,23,0,1,2, - 0,0,5,6,3,0,9,10,11,12, - 13,14,15,16,17,18,19,0,21,22, - 23,0,1,2,0,69,5,6,27,0, - 9,10,11,12,13,14,15,16,17,18, - 19,0,21,22,23,4,0,0,7,8, - 49,0,1,0,0,2,5,0,4,0, - 3,7,8,0,0,24,25,26,0,28, - 24,25,26,32,33,34,35,36,24,25, - 26,30,28,24,25,26,32,33,34,35, - 36,0,0,0,2,4,0,4,7,8, - 7,8,0,0,0,2,4,50,4,7, - 8,7,8,0,0,24,25,26,0,28, - 0,70,2,32,33,34,35,36,24,25, - 26,0,28,69,14,15,32,33,34,35, - 36,0,0,1,0,4,2,5,7,8, - 30,0,88,89,90,91,92,93,94,95, - 96,97,20,0,0,24,25,26,0,28, - 0,3,0,32,33,34,35,36,0,0, - 0,3,0,4,0,3,7,8,0,0, - 70,3,0,0,24,25,26,4,0,31, - 7,8,0,0,2,85,0,4,2,31, - 7,8,0,31,0,27,4,49,4,7, - 8,7,8,0,0,2,2,49,0,0, - 2,49,30,0,0,63,64,49,0,0, - 2,0,0,63,64,0,0,0,0,0, - 0,0,0,30,0,0,0,0,0,0, + 21,22,23,0,50,2,0,77,0,1, + 2,3,4,0,6,7,8,4,36,0, + 7,8,0,1,2,3,4,49,6,7, + 8,0,24,25,26,27,28,0,30,31, + 32,33,34,0,36,37,24,25,26,27, + 28,14,30,31,32,33,34,14,36,37, + 0,1,2,0,1,5,6,0,5,9, + 10,11,12,13,14,15,16,17,18,19, + 20,21,22,23,0,1,2,0,69,5, + 6,0,0,9,10,11,12,13,14,15, + 16,17,18,19,20,21,22,23,0,1, + 2,0,0,5,6,0,1,9,10,11, + 12,13,14,15,16,17,18,19,20,21, + 22,23,0,1,2,48,69,5,6,0, + 49,9,10,11,12,13,14,15,16,17, + 18,19,20,21,22,23,0,1,2,0, + 49,5,6,0,0,9,10,11,12,13, + 0,15,16,17,18,19,20,21,22,23, + 0,1,2,0,14,5,6,48,0,9, + 10,11,12,13,0,15,16,17,18,19, + 20,21,22,23,0,1,2,0,14,5, + 6,0,0,9,10,11,12,13,0,15, + 16,17,18,19,20,21,22,23,0,1, + 2,0,14,5,6,0,0,9,10,11, + 12,13,11,15,16,17,18,19,20,21, + 22,23,0,1,2,0,0,5,6,3, + 0,9,10,11,12,13,0,15,16,17, + 18,19,20,21,22,23,0,0,0,2, + 4,0,1,7,8,4,5,0,7,8, + 0,4,2,37,7,8,0,0,0,3, + 24,25,26,0,28,69,30,31,32,33, + 34,24,25,26,0,28,2,30,31,32, + 33,34,0,27,88,89,90,91,92,93, + 94,95,96,97,0,69,2,0,1,2, + 3,0,1,2,3,49,0,0,1,15, + 16,4,5,0,7,8,0,1,0,3, + 0,1,0,0,2,5,0,11,2,3, + 36,0,1,36,37,0,5,36,37,0, + 1,0,3,0,0,14,49,3,0,0, + 0,3,3,37,4,0,36,7,8,24, + 25,26,0,37,70,0,4,0,3,7, + 8,0,0,0,0,27,37,36,0,85, + 0,37,0,0,4,37,37,7,8,0, + 70,0,3,49,0,0,14,48,24,25, + 26,0,37,0,0,4,3,3,7,8, + 0,70,0,0,49,24,25,26,0,0, + 0,0,4,0,4,7,8,7,8,0, + 0,27,0,4,0,14,7,8,4,0, + 37,7,8,0,14,0,0,0,0,0, + 0,0,49,49,0,0,0,68,0,0, + 0,0,0,0,0,0,77,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,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; @@ -865,192 +896,206 @@ public class GCCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface TermAction { public final static char termAction[] = {0, - 3121,5039,1,1358,3076,5015,1,1,1,1, + 3214,5230,1,1252,3169,5178,1,1,1,1, + 1,1,1,1,458,1,1,1,1,1, + 1,1,1,1,1,1,1,3223,1,3314, + 1,1,1,1,1,1212,54,64,744,842, + 772,1224,2226,1210,799,1222,2976,1213,355,2174, + 3221,1,1,1,1,1,1,1,1,1, + 1,1,1,1,1,1,8,3202,3202,3202, + 3202,3202,3202,3202,3202,3202,3202,3202,3202,3202, + 3202,3202,3202,3202,3202,3202,3202,3202,3202,3202, + 3202,3202,3202,3202,3202,3202,3202,3202,3202,3202, + 3202,3202,444,719,3202,3202,3202,3202,3202,3202, + 3202,3202,3202,3202,444,719,3202,3202,3202,3202, + 3202,3202,3202,3202,3202,3202,3202,3202,3202,3202, + 3202,3202,3214,5230,1,1252,3169,5178,1,1, + 1,1,1,1,1,1,458,1,1,1, + 1,1,1,1,1,1,1,1,1,3223, + 1,3314,1,1,1,1,1,1212,354,65, + 744,842,772,1224,2226,1210,799,1222,2976,1213, + 58,2174,3221,1,1,1,1,1,1,1, + 1,1,1,1,1,1,1,1,3214,5230, + 1,3224,3169,5178,1,1,1,1,1,1, + 1,1,458,1,1,1,1,1,1,1, + 1,1,1,1,1,3223,1,3314,1,1, + 1,1,1,1212,444,719,744,842,772,1224, + 2226,1210,799,1222,2976,1213,444,719,1,1, 1,1,1,1,1,1,1,1,1,1, - 477,1,1,1,1,1,1,3130,1,3221, - 72,1,1,1,1,1,1,1303,581,901, - 613,1321,2147,1302,802,1320,2342,1319,1,88, - 3128,1,1,1,1,1,1,1,1,1, - 1,1,1,1,3115,1,1,1,8,3109, - 3109,3109,3109,3109,3109,3109,3109,3109,3109,3109, - 3109,3109,3109,3109,3109,3109,3109,3109,3109,3109, - 3109,3109,3109,3109,3109,3109,3109,3109,1021,3378, - 3109,3109,3109,3109,3109,3109,3109,3109,3109,3109, - 3109,3109,3109,3109,3109,3109,441,1873,3109,3109, - 3109,3109,3109,3109,3109,3109,3109,3109,3109,3109, - 3109,3378,3121,3109,3109,3109,3121,5039,1,3131, - 3076,5015,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,477,1,1,1, - 1,1,1,3130,1,3221,285,1,1,1, - 1,1,1,1303,581,901,613,1321,2147,1302, - 802,1320,2342,1319,1,3346,2571,1,1,1, - 1,1,1,1,1,1,1,1,1,62, - 3121,1,1,1,3121,3132,2674,3121,908,3133, - 2658,860,898,2649,2640,3137,2667,2830,2823,2809, - 2492,3134,3135,3136,51,2631,2038,2155,3334,3336, - 3335,2985,3283,2585,942,3377,3284,3282,3337,3285, - 3281,3121,3132,267,3346,1930,3133,908,2235,252, - 860,898,59,63,156,3288,3293,3292,3290,3291, - 3289,3294,3295,3287,3296,3297,3298,53,1522,2680, - 2759,2224,1,778,3133,3133,2585,942,3133,929, - 491,3133,3133,52,3133,3121,3133,3133,1,3346, - 1930,261,2585,942,3121,3132,2674,3125,1,3133, - 2658,90,3133,2649,2640,3137,2667,1419,2823,2809, - 2492,3134,3135,3136,3121,2631,2038,2155,778,261, - 3121,3133,3133,655,3121,2442,1956,1923,1811,90, - 1720,1404,54,929,491,3133,3133,261,3334,3336, - 3335,3133,3133,3133,3133,3133,3133,3133,3133,61, - 3133,3133,3133,3133,3133,3133,3133,3133,3133,3133, - 3133,3133,3133,3133,3133,3133,3133,3133,3133,3133, - 1,3124,3132,3132,3121,3121,3132,3121,2057,3132, - 3132,2766,3132,1452,3132,3132,1,3112,1930,3127, - 3121,2107,3121,1,1,2541,2564,1,1,1, - 3132,1,1,1,1,1,1,1,1,1, - 1,1,3121,1,1,1,778,3126,2841,3132, - 3132,3505,2442,1956,1923,1811,3121,1720,1404,354, - 207,3132,48,3132,3132,3133,3121,1586,2719,3132, - 3132,3132,3132,3132,3132,3132,3132,2,3132,3132, - 3132,3132,3132,3132,3132,3132,3132,3132,3132,3132, - 3132,3132,3132,3132,3132,3132,3132,3132,3121,5039, - 1,3131,1,5015,1,116,3076,1,1,1, - 1,1,1,1,1,1,1,1,477,1, - 1,1,2541,2564,267,3130,1777,3221,908,116, - 252,860,898,2710,2684,1303,581,901,613,1321, - 2147,1302,802,1320,2342,1319,3121,5039,1,3131, - 1,5015,1,116,778,1,1,1,1,1, - 1,1,1,1,1,1,477,1,1,1, - 255,3121,1897,3130,3127,3221,66,116,60,3121, - 3358,116,1876,1303,581,901,613,1321,2147,1302, - 802,1320,2342,1319,3121,5039,1,3131,3121,5015, - 1,3127,3126,1,1,1,1,1,1,1, - 1,1,1,1,477,1,1,1,353,978, - 1,3130,68,3221,3094,3121,252,3088,3091,3126, - 3121,1303,581,901,613,1321,2147,1302,802,1320, - 2342,1319,3121,1,1,190,1,1,3121,1, - 1,2442,1956,1923,1811,1,1720,1404,726,1, - 1,1777,264,3127,477,252,1,1,1,908, - 1,3316,860,898,1,1,1,1,1,184, - 3031,2541,2564,3028,3031,1395,3022,3025,3378,778, - 264,3126,190,1,1,1,1,1,1,1, - 1,1,1,1,1,626,64,1,1,1, - 3121,5039,1,3131,3121,5015,1,3127,418,1, + 1,1,1,1,3214,5230,1,3224,3169,5178, + 1,1,1,1,1,1,1,1,458,1, 1,1,1,1,1,1,1,1,1,1, - 477,1,1,1,1,3346,2571,3130,3094,3221, - 70,3088,3091,1,67,3126,2992,1303,581,901, - 613,1321,2147,1302,802,1320,2342,1319,3121,5039, - 1,3131,888,5015,1,71,3121,1,1,1, - 1,1,1,1,1,1,1,1,477,1, - 1,1,1624,50,1,3130,270,3221,3094,2719, - 252,3088,3091,3128,3121,1303,581,901,613,1321, - 2147,1302,802,1320,2342,1319,3121,1,65,189, - 1,1,342,1,1,1,778,1777,3127,1, - 418,1,3346,2571,512,3094,726,3121,3088,3091, - 1,1,1,3121,1,3316,3125,3462,1,1, - 1,1,1,183,3043,778,3126,3040,3043,512, - 3034,3037,3378,3121,2710,2684,189,1,1,1, - 1,1,1,1,1,1,1,1,1,1624, - 3121,1,1,1,3121,5039,1,3131,3121,5015, - 1,3121,3121,1,1,1,1,1,1,1, - 1,1,1,1,477,1,1,1,1,3346, - 2571,3130,3094,3221,3121,3088,3091,3121,3121,1535, - 3124,1303,581,901,613,1321,2147,1302,802,1320, - 2342,1319,3121,5039,1,3131,1365,5015,1,1438, - 2174,1,1,1,1,1,1,1,1,1, - 1,1,477,1,1,1,252,3346,2571,3130, - 908,3221,2191,860,898,3121,2218,3121,3129,1303, - 581,901,613,1321,2147,1302,802,1320,2342,1319, - 3121,5039,1,3131,3121,5015,1,58,30,1, + 1,3223,1,3314,1,1,1,1,1,1212, + 285,59,744,842,772,1224,2226,1210,799,1222, + 2976,1213,1,3439,2628,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 477,1,1,1,181,347,376,3130,908,3221, - 3085,860,898,3079,3082,3128,1431,1303,581,901, - 613,1321,2147,1302,802,1320,2342,1319,3121,1, - 3121,190,1,1,3121,1,1,583,205,4991, - 374,1,908,4991,908,860,898,860,898,49, - 2541,2564,1,1,1,2719,1,3316,3121,3121, - 1,1,1,1,1,373,5038,377,3121,908, - 5038,908,860,898,860,898,3121,3121,190,1, + 3214,3225,432,3214,901,3226,2711,840,855,2702, + 2693,3230,2720,2900,1471,2867,2819,2652,3227,3228, + 3229,2680,638,1324,3427,3429,3428,3214,3376,1, + 3377,3375,3430,3378,3374,267,3439,1941,269,901, + 648,252,840,855,2569,2129,2024,1970,61,1749, + 874,3381,3386,3385,3383,3384,3382,3387,3388,3380, + 3389,3390,3391,1761,2879,2847,1,1,3226,3226, + 3085,730,3226,3214,730,3226,3226,2,3226,184, + 3124,3226,3226,3121,3124,72,3115,3118,3214,3225, + 432,3218,1,3226,2711,116,3169,2702,2693,3230, + 2720,1282,3226,2867,2819,2652,3227,3228,3229,2680, + 638,1324,3214,62,3214,3226,3226,3221,3214,116, + 51,2569,2129,2024,1970,3214,1749,874,3222,2592, + 425,1,3226,3226,90,3226,3226,3226,3226,3226, + 3226,3226,3226,60,3226,3226,3226,3226,3226,3226, + 3226,3226,3226,3226,3226,3226,3226,3226,3226,3226, + 3226,3226,3226,3226,1,3217,3225,3225,90,1, + 3225,1336,2955,3225,3225,3221,3225,183,3136,3225, + 3225,3133,3136,458,3127,3130,3214,1,1,63, + 270,1,1,2546,2529,1,1,1,1,1, + 3225,1,1,1,1,1,1,1,1,1, + 66,3078,68,3225,3225,3600,2569,2129,2024,1970, + 252,1749,874,3214,901,1469,730,840,855,3214, + 3225,3225,3220,3225,3225,3225,3225,3225,3225,3225, + 3225,3214,3225,3225,3225,3225,3225,3225,3225,3225, + 3225,3225,3225,3225,3225,3225,3225,3225,3225,3225, + 3225,3225,3214,5230,1,3224,3219,5178,1,2546, + 2529,1,1,1,1,1,458,1,1,1, + 1,1,1,1,1,1,1,3439,2628,3223, + 3187,3314,2078,3181,3184,2047,3214,1212,88,57, + 744,842,772,1224,2226,1210,799,1222,2976,1213, + 3214,5230,1,3224,3214,5178,1,3218,3214,1, + 1,1,1,1,458,1,1,1,1,1, + 1,1,1,1,1558,1,181,3223,3224,3314, + 901,3214,3225,840,855,1212,3226,942,744,842, + 772,1224,2226,1210,799,1222,2976,1213,3214,5230, + 1,3224,3223,5178,1,444,719,1,1,1, + 1,1,458,1,1,1,1,1,1,1, + 1,1,267,3214,1828,3223,901,3314,252,840, + 855,3217,1,1212,1828,264,744,842,772,1224, + 2226,1210,799,1222,2976,1213,3214,1,377,190, + 1,1,3178,1,1,3172,3175,129,730,1, + 67,3103,325,3540,3097,3100,3214,3214,730,264, + 1,1,1,2915,1,3409,1,1,1,1, + 1,3427,3429,3428,53,3376,3541,3377,3375,3430, + 3378,3374,3214,2592,425,3224,190,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,69,3121,1,1,1,3121,5039,1,3131, - 1,5015,1,3131,3121,1,1,1,1,1, - 1,1,1,1,1,1,477,1,1,1, - 2710,2684,252,3130,182,3221,3106,3130,908,3100, - 3103,860,898,1303,581,901,613,1321,2147,1302, - 802,1320,2342,1319,3121,5039,1,3131,291,5015, - 1,247,3501,1,1,1,1,1,1,1, - 1,1,1,1,477,1,1,1,30,3121, - 1340,3130,3127,3221,626,3334,3336,3335,1597,3121, - 3121,1303,581,901,613,1321,2147,1302,802,1320, - 2342,1319,3121,5039,1,3131,3121,5015,1,5163, - 3126,1,1,1,1,1,1,1,1,1, - 1,1,477,1,1,1,468,3150,1161,3130, - 3121,3221,539,3127,3121,3121,486,1291,206,1303, - 581,901,613,1321,2147,1302,802,1320,2342,1319, - 3121,3132,375,3121,908,3133,908,860,898,860, - 898,3126,57,2843,20,178,3064,3064,178,3121, - 3064,178,178,158,3334,3336,3335,908,3283,3121, - 860,898,3284,3282,3337,3285,3281,4962,178,178, - 178,3064,178,3121,3064,3064,178,178,178,178, - 178,3288,3293,3292,3290,3291,3289,3294,3295,3287, - 3296,3297,3298,1144,128,2680,2759,2224,3001,248, - 3121,2995,2998,112,3121,2541,2564,352,362,362, - 3097,362,3121,3097,362,362,3121,3132,3334,3336, - 3335,3133,3283,1,1,1,3284,3282,3337,3285, - 3281,362,362,362,3097,362,611,362,3097,362, - 362,362,362,362,3121,3288,3293,3292,3290,3291, - 3289,3294,3295,3287,3296,3297,3298,1,3132,2674, - 3125,3121,3133,2595,3125,3121,2649,2640,3137,2667, - 1419,2823,2809,2492,3134,3135,3136,3121,2631,2038, - 2155,3121,3132,2674,3125,873,3133,2604,324,3446, - 2649,2640,3137,2667,1419,2823,2809,2492,3134,3135, - 3136,3118,2631,2038,2155,1,3876,2674,29,1494, - 3778,2658,3447,3121,2649,2640,3137,2667,1419,2823, - 2809,2492,3134,3135,3136,5163,2631,2038,2155,1648, - 3121,3132,2674,1200,3124,3133,2658,219,3124,2649, - 2640,3137,2667,1419,2823,2809,2492,3134,3135,3136, - 5163,2631,2038,2155,3121,29,2731,3121,3124,1, - 3876,2674,345,3121,3778,2658,3131,778,2649,2640, - 3137,2667,1419,2823,2809,2492,3134,3135,3136,5163, - 2631,2038,2155,3121,3132,2674,206,433,3133,2658, - 3130,433,2649,2640,3137,2667,1419,2823,2809,2492, - 3134,3135,3136,5163,2631,2038,2155,378,3132,2674, - 200,1065,3133,2658,363,188,2649,2640,3137,2667, - 1419,2823,2809,2492,3134,3135,3136,5163,2631,2038, - 2155,3121,3132,2674,5163,205,3133,2658,210,1, - 2649,2640,3137,2667,1419,2823,2809,2492,3134,3135, - 3136,5163,2631,2038,2155,3121,3132,2674,1675,3121, - 3133,2658,377,1,2649,2640,3137,2667,1419,2823, - 2809,2492,3134,3135,3136,3121,2631,2038,2155,3121, - 3132,2676,373,3121,3133,2658,3121,3133,2649,2640, - 3137,2667,1419,2823,2809,2492,3134,3135,3136,3121, - 2631,2038,2155,3121,3132,2728,3121,1573,3133,2658, - 1431,3132,2649,2640,3137,2667,1419,2823,2809,2492, - 3134,3135,3136,3121,2631,2038,2155,1,3132,2674, - 3121,3121,3133,2658,3131,3121,2649,2640,3137,2667, - 1419,2823,2809,2492,3134,3135,3136,3121,2631,2038, - 2155,330,3132,2674,3121,750,3133,2658,3130,3121, - 2649,2640,3137,2667,1419,2823,2809,2492,3134,3135, - 3136,129,2631,2038,2155,3010,249,3121,3004,3007, - 1983,3121,3132,3121,130,1849,3133,284,3019,250, - 425,3013,3016,3121,42,3334,3336,3335,3121,3283, - 1,1,1,3284,3282,3337,3285,3281,3334,3336, - 3335,1546,3283,3334,3336,3335,3284,3282,3337,3285, - 3281,131,3121,368,2403,3052,3121,908,3046,3049, - 860,898,367,3121,132,2404,908,425,3061,860, - 898,3055,3058,3121,3121,3334,3336,3335,3121,3283, - 32,1133,2986,3284,3282,3337,3285,3281,3334,3336, - 3335,3121,3283,1333,3147,3148,3284,3282,3337,3285, - 3281,364,3121,3132,335,3073,1638,3133,3067,3070, - 2989,3121,1305,1277,1249,1221,1193,1137,1165,1109, - 1081,1049,804,3121,3121,3334,3336,3335,3121,3283, - 251,3127,56,3284,3282,3337,3285,3281,3121,369, - 55,3127,3121,908,3121,3127,860,898,3121,3121, - 718,3131,3121,199,3334,3336,3335,908,3121,3126, - 860,898,269,370,715,414,3121,908,1736,3126, - 860,898,371,3126,372,3130,908,490,908,860, - 898,860,898,221,322,1771,817,987,3121,3121, - 2922,1453,778,3121,3121,2541,2564,2005,348,3121, - 1445,3121,3121,2541,2564,3121,3121,3121,3121,3121, - 3121,3121,3121,778 + 1,1,3214,5230,1,3224,3214,5178,1,3223, + 3214,1,1,1,1,1,458,1,1,1, + 1,1,1,1,1,1,1,3439,2628,3223, + 3187,3314,2078,3181,3184,69,284,1212,3214,493, + 744,842,772,1224,2226,1210,799,1222,2976,1213, + 3214,5230,1,3224,1296,5178,1,1,2328,1, + 1,1,1,1,458,1,1,1,1,1, + 1,1,1,1,1558,48,1,3223,1456,3314, + 3187,2768,252,3181,3184,1212,493,70,744,842, + 772,1224,2226,1210,799,1222,2976,1213,3214,1, + 3214,189,1,1,348,1,1,3214,3225,130, + 52,1,3226,3112,4437,1368,3106,3109,2047,2592, + 425,1009,1,1,1,3471,1,3409,1,1, + 1,1,1,3427,3429,3428,221,3376,849,3377, + 3375,3430,3378,3374,3471,3214,2759,2738,189,1, + 1,1,1,1,1,1,1,1,1,1, + 1,1,1,1,3214,5230,1,3224,3214,5178, + 1,616,730,1,1,1,1,1,458,1, + 1,1,1,1,1,1,1,1,1,3439, + 2628,3223,3187,3314,3214,3181,3184,3214,3214,1212, + 1519,56,744,842,772,1224,2226,1210,799,1222, + 2976,1213,3214,5230,1,3224,1372,5178,1,3214, + 1,1,1,1,1,1,458,1,1,1, + 1,1,1,1,1,1,252,3439,2628,3223, + 901,3314,2267,840,855,2287,3214,1212,1195,3214, + 744,842,772,1224,2226,1210,799,1222,2976,1213, + 3214,5230,1,3224,55,5178,1,444,719,1, + 1,1,1,1,458,1,1,1,1,1, + 1,1,1,1,1309,50,1,3223,3470,3314, + 3187,2768,252,3181,3184,1212,3214,2232,744,842, + 772,1224,2226,1210,799,1222,2976,1213,3214,1, + 375,190,1,1,901,1,1,840,855,131, + 3214,1,2811,3145,207,3225,3139,3142,3214,3226, + 444,719,1,1,1,3214,1,3409,1,1, + 1,1,1,3427,3429,3428,71,3376,3214,3377, + 3375,3430,3378,3374,3471,3214,2759,2738,190,1, + 1,1,1,1,1,1,1,1,1,1, + 1,1,1,1,3214,5230,1,3224,3214,5178, + 1,3214,3214,1,1,1,1,1,458,1, + 1,1,1,1,1,1,1,1,3214,2188, + 3214,3223,1856,3314,1397,3427,3429,3428,3214,1212, + 1937,3214,744,842,772,1224,2226,1210,799,1222, + 2976,1213,3214,5230,1,3224,2308,5178,1,200, + 616,1,1,1,1,1,458,1,1,1, + 1,1,1,1,1,1,378,255,252,3223, + 901,3314,3199,840,855,3193,3196,1212,112,3595, + 744,842,772,1224,2226,1210,799,1222,2976,1213, + 3214,5230,1,3224,3214,5178,1,1609,247,1, + 1,1,1,1,458,1,1,1,1,1, + 1,1,1,1,1,3208,2208,3223,1,3314, + 1828,3220,3427,3429,3428,1212,3214,3214,744,842, + 772,1224,2226,1210,799,1222,2976,1213,3214,3225, + 182,921,901,3226,901,840,855,840,855,248, + 3214,2908,49,128,730,3219,2924,3094,2768,3214, + 3088,3091,3427,3429,3428,3214,3376,2471,3377,3375, + 3430,3378,3374,1,1,1,3211,3427,3429,3428, + 3214,3376,3471,3377,3375,3430,3378,3374,3214,3381, + 3386,3385,3383,3384,3382,3387,3388,3380,3389,3390, + 3391,1761,2879,2847,3381,3386,3385,3383,3384,3382, + 3387,3388,3380,3389,3390,3391,1,3225,432,3218, + 3214,3226,1642,2759,2738,2702,2693,3230,2720,1282, + 3214,2867,2819,2652,3227,3228,3229,2680,638,1324, + 3214,3225,432,3218,814,3226,2242,343,30,2702, + 2693,3230,2720,1282,3214,2867,2819,2652,3227,3228, + 3229,2680,638,1324,1,4095,432,29,1428,3997, + 2711,3214,3556,2702,2693,3230,2720,1282,4437,2867, + 2819,2652,3227,3228,3229,2680,638,1324,30,3214, + 3225,432,219,3217,3226,2711,3214,555,2702,2693, + 3230,2720,1282,4437,2867,2819,2652,3227,3228,3229, + 2680,638,1324,336,29,1692,3214,3217,20,178, + 3157,3157,178,376,3157,178,178,901,730,156, + 840,855,353,363,363,3190,363,3243,3190,363, + 363,3214,178,178,178,3157,178,3214,178,178, + 178,178,178,3214,3157,3157,363,363,363,3190, + 363,1093,363,363,363,363,363,1149,363,3190, + 1,4095,432,206,682,3997,2711,210,682,2702, + 2693,3230,2720,1282,4437,2867,2819,2652,3227,3228, + 3229,2680,638,1324,3214,3225,432,1,588,3226, + 2711,206,3214,2702,2693,3230,2720,1282,4437,2867, + 2819,2652,3227,3228,3229,2680,638,1324,379,3225, + 432,346,3214,3226,2711,3214,3451,2702,2693,3230, + 2720,1282,4437,2867,2819,2652,3227,3228,3229,2680, + 638,1324,3214,3225,432,3226,1507,3226,2711,1, + 5154,2702,2693,3230,2720,1282,4437,2867,2819,2652, + 3227,3228,3229,2680,638,1324,3214,3225,432,3214, + 765,3226,2711,3214,3214,2702,2693,3230,2720,1282, + 364,2867,2819,2652,3227,3228,3229,2680,638,1324, + 3214,3225,2727,3214,4437,3226,2711,3225,3214,2702, + 2693,3230,2720,1282,3214,2867,2819,2652,3227,3228, + 3229,2680,638,1324,3214,3225,2779,3214,650,3226, + 2711,3214,3214,2702,2693,3230,2720,1282,228,2867, + 2819,2652,3227,3228,3229,2680,638,1324,1,3225, + 432,3214,231,3226,2711,3214,42,2702,2693,3230, + 2720,1282,1368,2867,2819,2652,3227,3228,3229,2680, + 638,1324,331,3225,432,3214,1,3226,2711,3220, + 3214,2702,2693,3230,2720,1282,3214,2867,2819,2652, + 3227,3228,3229,2680,638,1324,132,3214,3214,1664, + 3154,205,5552,3148,3151,901,5552,365,840,855, + 323,3166,758,3219,3160,3163,3214,3214,3214,3224, + 3427,3429,3428,3214,3376,1254,3377,3375,3430,3378, + 3374,3427,3429,3428,3214,3376,2511,3377,3375,3430, + 3378,3374,3214,3223,1226,1198,1170,1142,1114,1058, + 1086,1030,1002,974,32,686,3079,1,3439,1941, + 261,1,3205,1941,3220,1912,3214,374,5561,3240, + 3241,901,5561,3214,840,855,3214,1996,3214,3220, + 3214,3225,349,3214,1385,3226,3214,1966,517,3220, + 3082,3214,3225,730,261,249,3226,730,3219,3214, + 1241,291,3220,3214,3214,1037,261,3220,1,3214, + 158,116,3220,3219,901,3214,1480,840,855,1, + 1,1,369,3219,579,3214,901,3214,3220,840, + 855,3214,3214,3214,250,116,3219,1531,3214,421, + 368,3219,228,3214,901,116,3219,840,855,3214, + 811,251,3218,587,3214,3214,232,1251,3427,3429, + 3428,370,3219,3214,3214,901,3220,3224,840,855, + 3214,910,3214,3214,914,3427,3429,3428,199,3214, + 371,188,901,3214,901,840,855,840,855,372, + 378,3223,3214,901,373,205,840,855,901,3214, + 3219,840,855,3214,374,3214,3214,3214,3214,3214, + 3214,3214,1407,1995,3214,3214,3214,1582,3214,3214, + 3214,3214,3214,3214,3214,3214,3217 }; }; public final static char termAction[] = TermAction.termAction; @@ -1058,40 +1103,41 @@ public class GCCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface Asb { public final static char asb[] = {0, - 159,1,612,3,612,612,612,612,612,612, - 612,612,612,612,612,11,584,278,275,282, - 280,290,288,292,291,294,293,264,612,584, - 395,395,243,612,261,261,261,63,352,336, - 612,612,612,612,612,612,612,612,612,612, - 612,612,612,612,612,612,612,612,490,612, - 612,612,612,612,612,612,612,612,612,612, - 612,612,261,261,233,82,67,211,453,206, - 205,414,446,446,446,426,577,426,577,577, - 426,577,426,16,426,367,612,337,275,275, - 280,280,280,280,280,280,278,278,288,282, - 282,291,290,200,200,293,292,100,133,100, - 63,70,58,609,233,486,215,261,510,456, - 330,260,575,98,577,395,392,395,98,395, - 577,612,20,584,336,556,306,306,395,446, - 446,543,446,446,306,200,612,200,439,202, - 612,612,133,80,70,58,486,233,214,211, - 261,61,367,410,458,72,260,329,261,579, - 102,100,236,261,334,306,306,350,612,398, - 612,612,543,200,400,543,441,446,80,58, - 58,612,612,233,215,453,314,313,67,458, - 261,410,409,259,100,579,102,236,236,179, - 556,306,261,446,261,261,543,612,543,305, - 317,441,441,67,320,448,238,154,58,486, - 233,233,261,510,456,61,72,261,242,261, - 261,102,133,438,102,236,238,403,238,306, - 556,543,612,543,543,441,317,317,441,82, - 7,408,6,133,78,323,136,395,612,200, - 309,486,58,458,410,102,194,238,133,612, - 395,243,306,261,335,317,448,306,628,575, - 11,82,325,395,612,58,261,410,242,133, - 305,612,301,194,302,133,261,243,306,543, - 396,261,612,233,396,194,612,302,302,543, - 261,261,233,302,543 + 123,1,31,54,31,31,31,31,31,31, + 31,31,31,31,31,62,3,289,286,293, + 291,301,299,303,302,305,304,275,31,3, + 430,430,254,31,272,272,272,114,387,371, + 31,31,31,31,31,31,31,31,31,31, + 31,31,31,31,31,31,31,31,620,31, + 31,31,31,31,31,31,31,31,31,31, + 31,31,272,272,250,153,118,228,475,174, + 173,519,551,551,551,531,512,531,512,512, + 531,512,531,67,531,402,31,372,286,286, + 291,291,291,291,291,291,289,289,299,293, + 293,302,301,200,200,304,303,171,351,171, + 114,121,109,28,250,508,232,272,553,478, + 365,271,618,169,512,430,427,430,169,430, + 512,31,71,3,371,599,317,317,430,551, + 551,586,551,551,317,200,31,200,225,544, + 31,31,351,151,121,109,508,250,231,228, + 272,112,402,454,480,143,271,364,272,442, + 320,171,354,272,369,317,317,385,31,433, + 31,31,586,200,435,586,551,546,151,109, + 109,31,31,250,232,475,459,458,118,480, + 272,454,453,270,171,442,320,354,354,179, + 599,317,544,272,551,272,272,586,31,586, + 470,171,316,462,546,546,465,118,438,356, + 220,109,508,250,250,272,553,478,112,143, + 272,253,272,272,320,351,543,320,354,356, + 447,356,317,599,546,586,31,586,586,58, + 452,57,371,546,462,462,118,153,546,351, + 149,468,202,430,31,200,50,508,109,480, + 454,320,194,356,351,31,430,254,317,272, + 370,470,317,47,618,372,462,546,438,62, + 153,360,430,31,109,272,454,253,351,316, + 31,312,194,313,351,272,254,317,586,431, + 272,371,31,250,431,194,31,313,313,586, + 272,272,250,313,586 }; }; public final static char asb[] = Asb.asb; @@ -1099,69 +1145,70 @@ public class GCCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface Asr { public final static byte asr[] = {0, - 99,0,77,27,99,49,31,3,48,0, - 48,68,77,50,99,70,85,14,15,35, - 28,36,34,33,32,12,9,10,71,72, - 63,64,73,74,75,76,80,81,82,83, - 84,86,87,69,88,89,90,91,92,93, - 94,95,96,97,78,79,27,24,26,25, - 49,1,3,31,2,30,4,8,7,6, - 0,3,49,31,1,24,0,3,50,30, - 70,14,15,12,6,9,10,21,22,16, - 23,13,2,17,18,19,11,1,5,20, - 0,32,51,24,52,65,33,53,34,54, - 55,35,26,56,57,28,66,36,67,58, - 59,25,60,61,62,1,5,13,7,8, - 4,29,3,50,0,69,14,15,12,6, - 9,10,21,22,16,23,13,2,17,18, - 19,11,20,1,5,30,70,0,16,17, - 18,19,11,1,5,2,14,15,12,6, - 9,10,21,22,13,23,29,0,32,24, - 33,34,35,26,28,36,25,3,30,49, - 31,27,20,6,1,2,4,8,7,48, - 0,2,25,0,2,3,49,31,30,0, - 24,26,25,28,14,15,12,6,9,10, - 21,22,16,23,13,2,1,5,17,18, - 19,11,77,3,0,1,5,3,50,49, - 0,49,16,17,18,19,5,2,14,15, - 12,6,9,10,21,22,13,23,11,1, - 31,3,0,69,88,89,90,91,92,94, - 93,95,96,97,6,71,72,9,10,64, - 63,73,74,75,76,78,79,80,81,12, - 82,83,84,68,77,31,50,99,86,87, - 48,4,8,7,49,27,3,0,69,30, - 70,0,2,48,31,30,4,8,7,3, - 49,27,69,0,77,3,68,0,1,31, - 3,2,0,31,98,50,39,41,20,45, - 47,42,37,43,44,40,38,46,29,3, - 27,2,17,18,19,11,14,15,12,6, - 9,10,21,22,16,23,13,65,66,67, - 59,51,56,54,55,53,52,57,58,60, - 61,62,36,33,28,32,35,24,26,25, - 34,4,8,7,5,1,0,37,0,48, - 68,0,3,49,50,69,0,48,2,3, - 31,49,0,59,51,56,54,55,53,52, - 57,58,60,61,62,30,49,31,36,33, - 28,32,35,24,26,25,34,48,27,3, - 6,1,7,8,4,2,0,3,48,31, - 11,0,6,2,30,31,3,32,51,52, - 65,33,53,34,54,55,35,56,57,28, - 66,36,67,58,59,60,61,62,1,5, - 13,7,8,4,68,24,26,25,0,16, - 17,18,19,11,1,5,2,14,15,12, - 6,9,10,21,22,13,23,48,0,6, - 32,51,24,52,65,33,53,34,54,55, - 35,26,56,57,28,66,36,67,58,59, - 25,60,61,62,1,5,13,68,4,8, - 7,0,39,41,20,45,47,42,37,43, - 44,40,38,46,29,16,17,18,19,1, - 5,2,14,15,12,6,9,10,21,22, - 13,23,27,3,11,0,1,5,20,4, - 8,7,0,32,51,52,65,33,53,34, - 54,55,35,56,57,28,66,36,67,58, - 59,60,61,62,7,8,4,20,24,26, - 25,2,17,18,19,11,5,14,15,12, - 9,10,21,22,16,23,13,1,6,0 + 99,0,30,51,52,63,31,53,32,54, + 55,33,56,57,28,64,34,65,58,59, + 60,61,62,7,8,4,14,24,26,25, + 2,18,19,20,11,5,15,16,12,9, + 10,21,22,17,23,13,1,6,0,69, + 36,70,0,77,27,99,49,37,3,48, + 0,48,68,77,50,99,70,85,15,16, + 33,28,34,32,31,30,12,9,10,71, + 72,66,67,73,74,75,76,80,81,82, + 83,84,86,87,69,88,89,90,91,92, + 93,94,95,96,97,78,79,27,24,26, + 25,49,1,3,37,2,36,4,8,7, + 6,0,17,18,19,20,11,1,5,2, + 15,16,12,6,9,10,21,22,13,23, + 29,0,3,49,37,1,24,0,3,50, + 36,70,15,16,12,6,9,10,21,22, + 17,23,13,2,18,19,20,11,1,5, + 14,0,2,3,49,37,36,0,30,24, + 31,32,33,26,28,34,25,3,36,49, + 37,27,14,6,1,2,4,8,7,48, + 0,69,15,16,12,6,9,10,21,22, + 17,23,13,2,18,19,20,11,14,1, + 5,36,70,0,2,25,0,24,26,25, + 28,15,16,12,6,9,10,21,22,17, + 23,13,2,1,5,18,19,20,11,77, + 3,0,49,17,18,19,20,5,2,15, + 16,12,6,9,10,21,22,13,23,11, + 1,37,3,0,69,88,89,90,91,92, + 94,93,95,96,97,6,71,72,9,10, + 67,66,73,74,75,76,78,79,80,81, + 12,82,83,84,68,77,37,50,99,86, + 87,48,4,8,7,49,27,3,0,30, + 51,24,52,63,31,53,32,54,55,33, + 26,56,57,28,64,34,65,58,59,25, + 60,61,62,1,5,13,7,8,4,29, + 3,50,0,1,5,3,50,49,0,77, + 3,68,0,1,37,3,2,0,37,98, + 50,39,41,14,45,47,42,35,43,44, + 40,38,46,29,3,27,2,18,19,20, + 11,15,16,12,6,9,10,21,22,17, + 23,13,63,64,65,59,51,56,54,55, + 53,52,57,58,60,61,62,34,31,28, + 30,33,24,26,25,32,4,8,7,5, + 1,0,35,0,48,68,0,3,69,49, + 27,14,4,8,7,0,3,49,50,69, + 0,48,2,3,37,49,0,2,48,37, + 36,4,8,7,3,49,27,69,0,3, + 48,37,11,0,6,2,36,37,3,30, + 51,52,63,31,53,32,54,55,33,56, + 57,28,64,34,65,58,59,60,61,62, + 1,5,13,7,8,4,68,24,26,25, + 0,1,5,14,4,8,7,0,59,51, + 56,54,55,53,52,57,58,60,61,62, + 36,49,37,34,31,28,30,33,24,26, + 25,32,48,27,3,6,1,7,8,4, + 2,0,6,30,51,24,52,63,31,53, + 32,54,55,33,26,56,57,28,64,34, + 65,58,59,25,60,61,62,1,5,13, + 68,4,8,7,0,39,41,14,45,47, + 42,35,43,44,40,38,46,29,17,18, + 19,20,1,5,2,15,16,12,6,9, + 10,21,22,13,23,27,3,11,0,17, + 18,19,20,11,1,5,2,15,16,12, + 6,9,10,21,22,13,23,48,0 }; }; public final static byte asr[] = Asr.asr; @@ -1169,40 +1216,41 @@ public class GCCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface Nasb { public final static char nasb[] = {0, - 49,22,41,22,41,41,41,41,41,41, - 41,41,41,41,41,22,155,22,22,22, - 22,22,22,22,22,22,22,22,41,155, - 12,12,43,157,69,69,69,108,1,23, - 41,41,41,41,41,41,41,41,41,41, - 41,41,41,41,41,41,41,41,117,41, - 41,41,41,41,41,41,41,41,41,41, - 41,41,69,69,58,151,130,56,107,31, - 31,79,22,22,22,80,90,80,90,90, - 80,90,80,22,80,73,41,94,22,22, - 22,22,22,22,22,22,22,22,22,22, - 22,22,22,22,22,22,22,152,126,22, - 133,22,140,60,58,33,57,69,128,46, - 69,26,22,8,140,8,140,8,8,8, - 140,41,22,155,100,147,149,149,8,22, - 22,142,22,22,149,22,63,22,148,52, - 41,41,24,126,22,90,33,58,57,54, - 69,122,14,22,104,29,68,22,69,90, - 126,22,126,69,22,149,149,160,157,22, - 157,157,142,22,22,142,112,22,39,90, - 126,41,41,58,57,121,31,31,130,104, - 69,69,22,69,22,140,165,126,8,152, - 162,149,69,22,69,69,142,41,142,149, - 90,137,124,130,22,92,10,35,126,33, - 58,58,69,128,46,86,29,69,41,69, - 69,126,24,148,82,8,10,22,22,149, - 162,142,157,142,142,112,140,90,88,40, - 69,22,22,24,38,22,40,8,41,22, - 66,33,54,169,69,165,112,10,24,41, - 8,162,149,69,22,140,92,149,22,92, - 71,40,58,8,41,54,69,69,41,24, - 149,41,22,137,90,24,69,162,149,142, - 22,69,41,58,22,112,41,90,140,142, - 69,69,58,140,142 + 40,27,51,27,51,51,51,51,51,51, + 51,51,51,51,51,27,28,27,27,27, + 27,27,27,27,27,27,27,27,51,28, + 17,17,43,30,87,87,87,117,1,35, + 51,51,51,51,51,51,51,51,51,51, + 51,51,51,51,51,51,51,51,173,51, + 51,51,51,51,51,51,51,51,51,51, + 51,51,87,87,64,142,148,62,116,13, + 13,78,27,27,27,79,114,79,114,114, + 79,114,79,27,79,72,51,89,27,27, + 27,27,27,27,27,27,27,27,27,27, + 27,27,27,27,27,27,27,143,135,27, + 156,27,140,66,64,81,63,87,146,55, + 87,83,27,8,140,8,140,8,8,8, + 140,51,27,28,95,177,179,179,8,27, + 27,151,27,27,179,27,69,27,58,178, + 51,51,36,135,27,114,81,64,63,38, + 87,131,19,27,99,46,86,27,87,114, + 135,27,135,87,27,179,179,160,30,27, + 30,30,151,27,27,151,27,104,49,114, + 135,51,51,64,63,130,13,13,148,99, + 87,87,27,87,27,140,165,135,8,143, + 162,179,178,87,27,87,87,151,51,151, + 102,53,179,114,137,133,27,148,27,15, + 10,135,81,64,64,87,146,55,110,46, + 87,51,87,87,135,36,178,126,8,15, + 27,27,179,162,121,151,30,151,151,87, + 27,27,35,121,140,114,148,50,105,36, + 48,27,50,8,51,27,33,81,38,169, + 87,165,121,15,36,51,8,162,179,87, + 27,102,179,27,102,89,140,112,27,60, + 50,64,8,51,38,87,87,51,36,179, + 51,27,137,114,36,87,162,179,151,27, + 87,95,51,64,27,121,51,114,140,151, + 87,87,64,140,151 }; }; public final static char nasb[] = Nasb.nasb; @@ -1210,24 +1258,24 @@ public class GCCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface Nasr { public final static char nasr[] = {0, - 98,113,96,95,82,94,93,1,0,76, - 0,90,0,98,113,97,96,95,82,94, - 93,0,7,56,0,133,24,0,109,0, - 49,0,72,0,1,137,0,107,7,59, - 5,0,7,116,0,24,7,0,7,114, - 0,134,0,31,0,7,5,34,0,5, - 7,0,5,136,0,130,0,111,24,0, - 126,0,82,78,79,80,81,89,69,51, - 0,7,60,84,0,63,62,45,43,28, - 0,88,0,7,33,1,35,117,0,35, - 1,56,92,7,33,0,24,62,63,7, - 0,7,45,43,28,0,7,29,115,0, - 24,63,62,43,45,7,0,7,33,28, - 67,0,63,62,28,0,43,45,7,13, - 0,1,35,7,36,0,29,7,26,0, - 5,59,57,0,60,30,7,29,0,33, - 77,7,65,0,102,7,60,0,123,7, - 33,0 + 103,116,101,100,87,99,98,1,0,1, + 140,0,52,0,80,0,94,0,103,116, + 102,101,100,87,99,98,0,60,29,7, + 30,0,132,0,7,50,0,32,0,7, + 117,0,7,119,0,112,0,110,7,59, + 5,0,133,0,24,7,0,137,0,128, + 0,7,5,41,0,5,7,0,5,139, + 0,87,81,82,83,84,93,72,53,0, + 75,0,136,24,0,114,24,0,31,7, + 1,34,96,0,34,1,50,71,7,31, + 0,92,0,7,28,45,43,48,0,64, + 63,45,43,28,0,24,63,64,7,0, + 7,45,43,28,0,7,60,89,0,24, + 64,63,43,45,7,0,43,45,7,12, + 0,5,59,57,0,7,31,28,61,0, + 1,34,7,35,0,64,63,28,0,31, + 66,7,67,0,105,7,60,0,125,7, + 31,0,7,30,118,0,30,7,26,0 }; }; public final static char nasr[] = Nasr.nasr; @@ -1236,12 +1284,12 @@ public class GCCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface TerminalIndex { public final static char terminalIndex[] = {0, 87,2,89,99,88,9,97,98,10,11, - 86,8,95,6,7,70,83,84,85,3, - 12,13,96,50,78,66,94,71,100,1, - 92,46,57,62,65,74,79,47,48,51, + 86,8,95,3,6,7,70,83,84,85, + 12,13,96,50,78,66,94,71,100,46, + 57,62,65,74,79,1,92,47,48,51, 52,53,59,60,61,67,73,29,42,93, 49,54,58,63,64,68,69,76,77,80, - 81,82,16,17,56,72,75,30,31,4, + 81,82,56,72,75,16,17,30,31,4, 14,15,18,19,20,21,91,43,44,22, 23,24,25,26,5,27,28,32,33,34, 35,36,37,38,39,40,41,55,101,90 @@ -1253,20 +1301,20 @@ public class GCCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface NonterminalIndex { public final static char nonterminalIndex[] = {0, 107,0,0,0,109,113,0,114,115,116, - 117,118,183,0,0,0,119,120,121,122, - 123,124,0,104,0,106,125,184,108,130, - 142,0,134,103,126,129,0,0,0,0, - 0,162,164,0,165,0,0,0,166,0, - 141,0,0,152,0,105,112,128,0,156, - 175,176,177,0,0,151,163,172,144,0, - 167,170,171,174,111,0,133,145,146,147, - 148,153,0,155,159,161,0,188,191,110, - 127,132,136,137,138,139,140,143,149,150, - 0,154,158,0,160,169,179,0,185,0, - 187,0,190,102,0,0,131,135,0,0, - 157,0,168,173,178,0,180,181,0,182, - 0,0,186,0,0,189,192,0,0,0, - 0,0,0,0,0,0,0 + 117,186,0,0,0,118,119,120,121,122, + 123,124,0,104,0,106,125,187,130,108, + 134,142,0,126,129,0,0,0,0,0, + 103,162,164,0,165,0,0,167,0,105, + 152,166,141,0,0,0,112,128,0,156, + 163,177,178,179,0,133,0,151,174,0, + 132,144,0,168,172,173,176,0,111,0, + 145,146,147,148,149,150,153,0,155,159, + 161,191,194,110,127,131,135,136,137,138, + 139,140,143,0,154,158,0,160,171,181, + 0,188,0,190,0,193,102,0,0,0, + 0,157,0,169,170,175,180,0,182,183, + 0,184,185,0,0,189,0,0,192,195, + 0,0,0,0,0,0,0,0 }; }; public final static char nonterminalIndex[] = NonterminalIndex.nonterminalIndex; @@ -1274,15 +1322,15 @@ public class GCCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface ScopePrefix { public final static char scopePrefix[] = { - 178,236,315,198,295,103,129,135,264,77, - 344,366,323,1,86,119,145,163,63,244, - 305,35,59,91,141,215,280,386,409,413, - 340,362,375,393,375,329,15,27,56,8, - 8,95,98,150,173,98,225,230,233,292, - 417,50,71,111,219,284,390,400,400,8, - 111,254,188,353,188,254,20,20,41,211, - 41,41,41,41,41,290,384,20,20,45, - 124,153,124,153,153 + 198,254,330,216,310,121,147,153,282,95, + 359,381,338,1,104,137,163,183,63,262, + 320,35,59,71,77,109,159,233,298,71, + 420,424,355,377,390,404,390,344,15,27, + 56,8,8,113,116,168,116,193,116,243, + 248,251,307,428,50,83,89,129,237,83, + 401,411,411,8,129,272,206,368,206,272, + 20,20,41,229,41,41,41,41,41,305, + 399,20,20,45,142,171,142,171,171 }; }; public final static char scopePrefix[] = ScopePrefix.scopePrefix; @@ -1290,15 +1338,15 @@ public class GCCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface ScopeSuffix { public final static char scopeSuffix[] = { - 186,186,302,186,302,109,6,6,186,83, - 350,372,310,6,39,109,6,39,68,249, - 310,39,39,39,6,213,213,186,39,6, - 302,302,302,397,379,333,18,18,39,6, - 6,39,101,6,39,176,228,228,228,213, - 39,53,74,126,222,287,53,403,406,11, - 114,249,205,356,191,257,25,33,43,213, - 270,272,274,276,278,213,213,22,30,47, - 126,160,114,155,168 + 75,75,317,75,317,127,6,6,75,101, + 365,387,325,6,39,127,6,39,68,267, + 325,39,39,75,81,39,6,231,231,75, + 39,6,317,317,317,408,394,348,18,18, + 39,6,6,39,119,6,178,39,196,246, + 246,246,231,39,53,86,92,144,240,302, + 53,414,417,11,132,267,223,371,209,275, + 25,33,43,231,288,290,292,294,296,231, + 231,22,30,47,144,180,132,173,188 }; }; public final static char scopeSuffix[] = ScopeSuffix.scopeSuffix; @@ -1306,15 +1354,15 @@ public class GCCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface ScopeLhs { public final static char scopeLhs[] = { - 80,78,40,80,40,67,49,49,78,57, - 40,39,40,138,64,67,49,48,14,78, - 40,89,108,64,49,84,77,30,5,5, - 40,39,39,23,39,40,103,100,3,130, - 129,62,74,49,45,54,79,79,79,41, - 3,37,107,67,84,77,37,8,5,138, - 67,78,80,40,80,78,103,100,113,84, - 97,96,95,94,93,77,38,103,100,136, - 67,48,67,46,48 + 83,81,39,83,39,61,52,52,81,57, + 39,38,39,141,65,61,52,48,13,81, + 39,93,111,133,78,65,52,89,66,29, + 5,5,39,38,38,23,38,39,106,86, + 3,132,131,63,77,52,124,45,51,82, + 82,82,40,3,36,78,110,61,89,66, + 36,8,5,141,61,81,83,39,83,81, + 106,86,116,89,102,101,100,99,98,66, + 37,106,86,139,61,48,61,46,48 }; }; public final static char scopeLhs[] = ScopeLhs.scopeLhs; @@ -1322,15 +1370,15 @@ public class GCCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface ScopeLa { public final static byte scopeLa[] = { - 50,50,31,50,31,24,77,77,50,50, - 31,98,27,77,31,24,77,31,31,20, - 27,31,31,31,77,27,27,50,31,77, - 31,31,31,48,31,27,7,7,31,77, - 77,31,2,77,31,1,1,1,1,27, - 31,48,69,6,1,1,48,31,31,68, - 6,20,20,37,1,1,1,1,13,27, - 1,65,66,66,59,27,27,1,1,68, - 6,2,6,2,2 + 50,50,37,50,37,24,77,77,50,50, + 37,98,27,77,37,24,77,37,37,14, + 27,37,37,50,14,37,77,27,27,50, + 37,77,37,37,37,48,37,27,7,7, + 37,77,77,37,2,77,1,37,1,1, + 1,1,27,37,48,1,69,6,1,1, + 48,37,37,68,6,14,14,35,1,1, + 1,1,13,27,1,63,64,64,59,27, + 27,1,1,68,6,2,6,2,2 }; }; public final static byte scopeLa[] = ScopeLa.scopeLa; @@ -1338,15 +1386,15 @@ public class GCCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface ScopeStateSet { public final static char scopeStateSet[] = { - 42,42,104,42,104,84,90,90,42,33, - 104,104,104,6,94,84,90,15,46,42, - 104,42,12,94,90,8,29,101,118,118, - 104,104,104,154,104,104,1,24,118,4, - 6,94,96,90,15,17,42,42,42,104, - 118,104,188,84,8,29,104,125,118,6, - 84,42,42,104,42,42,1,24,43,8, - 43,43,43,43,43,29,104,1,24,27, - 84,15,84,15,15 + 48,48,113,48,113,92,99,99,48,39, + 113,113,113,6,103,92,99,17,52,48, + 113,48,14,8,124,103,99,10,33,110, + 129,129,113,113,113,165,113,113,1,27, + 129,4,6,103,105,99,29,17,20,48, + 48,48,113,129,113,124,199,92,10,33, + 113,136,129,6,92,48,48,113,48,48, + 1,27,49,10,49,49,49,49,49,33, + 113,1,27,31,92,17,92,17,17 }; }; public final static char scopeStateSet[] = ScopeStateSet.scopeStateSet; @@ -1354,48 +1402,49 @@ public class GCCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface ScopeRhs { public final static char scopeRhs[] = {0, - 158,68,158,30,0,103,0,158,30,0, - 30,128,103,0,185,128,0,184,0,128, - 0,159,184,0,159,0,154,128,0,152, - 184,0,152,0,175,2,13,0,104,0, - 198,0,191,0,158,0,30,128,0,236, - 39,0,29,129,0,130,2,0,232,2, - 209,0,231,2,2,7,0,104,104,0, - 227,107,0,31,151,0,176,225,107,20, - 159,0,105,0,0,171,107,2,162,0, - 171,107,2,0,174,2,0,167,107,0, - 175,0,107,150,6,150,167,0,170,0, - 150,167,0,9,0,0,170,0,107,150, - 6,150,0,150,0,9,0,0,127,28, - 206,107,30,0,127,206,107,28,30,0, - 127,28,30,0,127,206,107,30,0,127, - 30,0,145,0,2,0,168,104,0,2, - 104,0,171,107,2,145,0,2,0,167, - 104,0,154,2,0,162,0,176,204,107, - 20,101,222,65,0,105,0,222,65,0, - 107,3,0,0,0,105,0,176,204,107, - 20,222,65,0,3,0,0,0,105,0, - 160,0,106,0,221,107,160,0,107,160, - 0,157,106,0,183,65,0,107,0,183, - 67,0,183,66,0,201,107,20,220,101, - 219,182,0,220,101,219,182,0,3,0, - 0,105,0,219,182,0,107,0,3,0, - 0,105,0,201,107,20,219,182,0,148, - 0,147,0,146,0,145,0,144,0,218, - 107,133,0,107,133,0,135,106,0,133, - 0,129,46,0,165,126,165,177,2,43, - 0,104,129,0,165,177,2,43,0,106, - 0,104,129,0,165,126,165,126,165,2, - 43,0,165,126,165,2,43,0,165,2, - 43,0,106,0,106,0,104,129,0,129, - 2,37,0,129,2,37,136,42,0,104, - 106,0,136,42,0,79,2,108,104,106, - 0,129,2,47,0,136,124,129,2,45, - 0,55,129,0,129,2,45,0,104,129, - 55,129,0,135,0,217,107,20,0,158, - 39,0,129,87,122,0,29,125,0,175, - 2,0,104,114,0,104,112,0,216,2, - 105,0,129,30,105,0,129,2,0 + 158,68,158,36,0,103,0,158,36,0, + 30,128,103,0,190,128,0,187,0,128, + 0,159,187,0,159,0,151,128,0,152, + 187,0,152,0,179,2,13,0,104,0, + 203,0,194,0,158,0,30,128,0,239, + 39,0,29,129,0,129,2,0,235,2, + 212,0,234,2,2,7,0,104,104,0, + 196,107,14,0,105,0,224,107,131,0, + 185,0,107,131,0,169,185,0,229,107, + 0,31,151,0,180,227,107,14,159,0, + 105,0,0,174,107,2,163,0,174,107, + 2,0,177,2,0,161,107,0,177,0, + 107,149,6,149,161,0,172,0,149,161, + 0,9,0,0,172,0,107,149,6,149, + 0,149,0,9,0,0,127,28,209,107, + 36,0,127,209,107,28,36,0,127,28, + 36,0,127,209,107,36,0,127,36,0, + 145,0,2,0,170,104,0,167,0,2, + 104,0,174,107,2,145,0,2,0,168, + 104,0,151,2,0,162,0,180,207,107, + 14,101,223,63,0,223,63,0,107,3, + 0,0,0,105,0,180,207,107,14,223, + 63,0,3,0,0,0,105,0,160,0, + 106,0,222,107,160,0,107,160,0,157, + 106,0,188,63,0,107,0,188,65,0, + 188,64,0,204,107,14,221,101,220,187, + 0,221,101,220,187,0,3,0,0,105, + 0,220,187,0,107,0,3,0,0,105, + 0,204,107,14,220,187,0,148,0,147, + 0,146,0,145,0,144,0,197,107,131, + 0,135,106,0,131,0,130,46,0,167, + 126,167,166,2,43,0,104,129,0,167, + 166,2,43,0,106,0,104,129,0,167, + 126,167,126,167,2,43,0,167,126,167, + 2,43,0,167,2,43,0,106,0,106, + 0,104,129,0,130,2,35,0,130,2, + 35,135,42,0,104,106,0,135,42,0, + 79,2,108,104,106,0,130,2,47,0, + 135,124,130,2,45,0,55,129,0,130, + 2,45,0,104,129,55,129,0,134,0, + 158,39,0,130,87,122,0,29,125,0, + 179,2,0,104,114,0,104,112,0,219, + 2,105,0,130,36,105,0,130,2,0 }; }; public final static char scopeRhs[] = ScopeRhs.scopeRhs; @@ -1403,25 +1452,27 @@ public class GCCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface ScopeState { public final static char scopeState[] = {0, - 2005,1868,0,926,0,570,0,2861,1529,2859, - 0,490,539,0,2121,1699,2005,2055,1868,2571, - 2072,1930,1845,1983,1818,0,901,0,2731,1767, - 1750,0,750,683,583,655,717,555,652,2525, - 0,1348,456,385,0,2784,2730,2887,2005,2882, - 2055,2267,1868,2121,2862,2000,1983,1699,2072,2858, - 1064,2841,1818,2837,456,2766,1002,967,609,527, - 2061,1348,2508,2503,2680,2459,2759,2224,2454,2180, - 2449,1703,385,2277,2755,2726,1935,2078,0,1013, - 917,775,547,1699,2061,1930,1845,1777,2353,0, - 2728,2676,2674,2400,2383,2356,2339,2295,2278,2235, - 2218,2191,2174,2147,1767,1750,0,2843,2830,2823, - 2809,2492,2155,1419,2604,2595,2525,512,441,726, - 626,929,491,418,2564,2541,2442,1956,1923,1811, - 1720,1404,2719,2710,2684,2585,942,2667,2658,2649, - 2640,2631,2038,1675,1648,1624,987,1597,750,1573, - 1546,683,655,817,1522,1494,1466,952,1438,1365, - 901,873,778,1333,1305,1277,1249,1221,1193,1165, - 1137,1109,1081,1049,385,1021,845,583,555,0 + 1995,1855,0,451,0,411,0,581,0,2944, + 1854,2889,0,587,517,0,2158,2100,1720,1995, + 2060,1855,2628,2109,1941,1887,1912,1831,1695,0, + 842,0,1787,1770,2811,1651,1634,0,686,658, + 555,588,653,527,416,2161,0,1278,423,387, + 0,3038,3029,2977,1995,2956,2060,2158,3008,1855, + 2100,2946,2735,1912,1831,1720,2109,2360,2216,2924, + 1695,2919,423,2915,1713,1684,1624,854,2553,1278, + 2636,2611,1761,2607,2879,2847,2576,1895,2285,2181, + 387,2838,2369,2815,2788,2210,2784,0,1453,1268, + 600,415,1720,2553,1941,1887,1828,2730,0,2779, + 2727,432,2488,2468,2447,2427,2386,2370,2328,2308, + 2287,2267,2226,1787,1770,1651,1634,0,2908,2900, + 2867,2819,2652,1324,1282,2242,1642,2161,616,1336, + 2078,2047,2546,2529,2174,719,444,2569,2129,2024, + 1970,1749,874,2768,2759,2738,2592,425,2720,2711, + 2702,2693,2680,638,1609,1582,1558,914,1531,686, + 1507,1480,658,588,758,1456,1428,1400,886,1372, + 1296,842,814,730,1254,1226,1198,1170,1142,1114, + 1086,1058,1030,1002,974,387,942,786,555,527, + 0 }; }; public final static char scopeState[] = ScopeState.scopeState; @@ -1429,40 +1480,41 @@ public class GCCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface InSymb { public final static char inSymb[] = {0, - 0,214,107,191,13,23,16,22,21,10, - 9,6,12,15,14,105,2,110,109,112, + 0,217,107,195,13,23,17,22,21,10, + 9,6,12,16,15,105,2,110,109,116, 111,118,117,120,119,122,121,106,49,2, - 85,70,2,30,130,175,129,160,107,20, + 85,70,2,36,129,179,130,160,107,14, 10,9,72,71,6,79,78,76,75,74, - 73,63,64,12,81,80,83,82,87,86, + 73,66,67,12,81,80,83,82,87,86, 84,97,96,95,93,94,92,91,90,89, - 88,69,175,216,129,124,107,30,2,163, - 162,193,7,8,4,194,182,195,67,66, - 196,65,197,101,213,198,13,107,109,109, - 111,111,111,111,111,111,110,110,117,112, - 112,119,118,215,129,121,120,124,20,159, - 167,150,128,28,127,107,6,174,107,2, - 2,2,2,219,128,183,128,183,222,183, - 128,13,106,2,217,46,38,40,44,43, - 37,42,47,45,135,41,39,101,133,4, - 48,48,107,20,150,6,107,127,206,172, - 171,133,107,173,107,2,233,1,11,101, - 20,101,20,175,3,129,101,2,2,136, - 2,2,48,236,158,48,107,234,107,6, - 150,206,28,127,6,2,143,145,107,49, - 171,231,209,2,220,128,107,20,107,124, - 177,165,129,37,129,129,48,68,48,218, - 154,128,2,107,200,2,225,107,150,107, - 127,127,154,107,2,167,49,124,2,11, - 1,20,201,160,202,107,204,101,205,165, - 126,124,2,124,124,49,128,154,167,69, - 235,11,188,176,49,227,237,70,30,101, - 228,107,172,107,232,107,107,204,176,69, - 49,126,165,129,136,128,48,124,2,49, - 156,69,158,70,30,172,171,223,49,201, - 221,48,154,128,185,176,165,126,124,98, - 6,1,68,158,49,49,48,185,128,124, - 165,1,158,128,124 + 88,69,179,219,130,124,107,36,2,164, + 163,198,7,8,4,199,187,200,65,64, + 201,63,202,101,216,203,13,107,109,109, + 111,111,111,111,111,111,110,110,117,116, + 116,119,118,218,130,121,120,124,14,159, + 161,149,128,28,127,107,6,177,107,2, + 2,2,2,220,128,188,128,188,223,188, + 128,13,106,2,196,46,38,40,44,43, + 35,42,47,45,134,41,39,101,4,131, + 48,48,107,14,149,6,107,127,209,175, + 174,131,107,176,107,2,236,1,11,101, + 14,101,14,179,3,130,101,2,2,135, + 2,2,48,239,158,48,237,107,107,6, + 149,209,28,127,6,2,143,145,107,49, + 174,234,212,2,221,128,107,14,107,124, + 166,167,131,130,35,130,130,48,68,48, + 2,224,197,151,128,2,186,107,148,227, + 107,149,107,127,127,151,107,2,161,49, + 124,2,11,1,14,204,160,205,107,207, + 101,208,167,126,107,124,2,124,124,238, + 11,192,14,49,128,151,107,69,161,180, + 49,229,240,70,36,101,230,107,175,107, + 235,107,107,207,180,69,49,126,167,130, + 135,48,124,2,49,107,128,161,148,150, + 69,158,70,36,175,174,225,49,204,222, + 48,151,128,190,180,167,126,124,98,6, + 1,196,68,158,49,49,48,190,128,124, + 167,1,158,128,124 }; }; public final static char inSymb[] = InSymb.inSymb; @@ -1640,7 +1692,9 @@ public class GCCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab "array_direct_declarator", "basic_direct_declarator", "array_modifier", + "function_direct_declarator", "parameter_type_list", + "function_declarator", "identifier_list", "array_modifier_type_qualifiers", "type_qualifier_list", @@ -1658,6 +1712,7 @@ public class GCCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab "designation", "designator_list", "designator", + "function_body", "attribute_or_decl_specifier", "attribute_or_decl_specifier_se" + "q", @@ -1676,8 +1731,8 @@ public class GCCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public final static int ERROR_SYMBOL = 29, - SCOPE_UBOUND = 84, - SCOPE_SIZE = 85, + SCOPE_UBOUND = 88, + SCOPE_SIZE = 89, MAX_NAME_LENGTH = 38; public final int getErrorSymbol() { return ERROR_SYMBOL; } @@ -1686,20 +1741,20 @@ public class GCCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public final int getMaxNameLength() { return MAX_NAME_LENGTH; } public final static int - NUM_STATES = 335, + NUM_STATES = 345, NT_OFFSET = 100, - LA_STATE_OFFSET = 3505, + LA_STATE_OFFSET = 3600, MAX_LA = 2147483647, - NUM_RULES = 384, - NUM_NONTERMINALS = 147, - NUM_SYMBOLS = 247, + NUM_RULES = 386, + NUM_NONTERMINALS = 148, + NUM_SYMBOLS = 248, SEGMENT_SIZE = 8192, - START_STATE = 716, + START_STATE = 484, IDENTIFIER_SYMBOL = 0, EOFT_SYMBOL = 99, EOLT_SYMBOL = 99, - ACCEPT_ACTION = 2985, - ERROR_ACTION = 3121; + ACCEPT_ACTION = 3078, + ERROR_ACTION = 3214; public final static boolean BACKTRACK = true; diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCSizeofExpressionParsersym.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCSizeofExpressionParsersym.java index 61cf5f9783a..10ec9b170f0 100644 --- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCSizeofExpressionParsersym.java +++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCSizeofExpressionParsersym.java @@ -15,7 +15,7 @@ package org.eclipse.cdt.internal.core.dom.lrparser.gcc; public interface GCCSizeofExpressionParsersym { public final static int - TK_auto = 32, + TK_auto = 30, TK_break = 38, TK_case = 39, TK_char = 51, @@ -25,48 +25,48 @@ public interface GCCSizeofExpressionParsersym { TK_do = 42, TK_double = 52, TK_else = 98, - TK_enum = 65, - TK_extern = 33, + TK_enum = 63, + TK_extern = 31, TK_float = 53, TK_for = 43, TK_goto = 44, TK_if = 45, - TK_inline = 34, + TK_inline = 32, TK_int = 54, TK_long = 55, - TK_register = 35, + TK_register = 33, TK_restrict = 26, TK_return = 46, TK_short = 56, TK_signed = 57, - TK_sizeof = 16, + TK_sizeof = 17, TK_static = 28, - TK_struct = 66, + TK_struct = 64, TK_switch = 47, - TK_typedef = 36, - TK_union = 67, + TK_typedef = 34, + TK_union = 65, TK_unsigned = 58, TK_void = 59, TK_volatile = 25, - TK_while = 37, + TK_while = 35, TK__Bool = 60, TK__Complex = 61, TK__Imaginary = 62, - TK_integer = 17, - TK_floating = 18, - TK_charconst = 19, + TK_integer = 18, + TK_floating = 19, + TK_charconst = 20, TK_stringlit = 11, TK_identifier = 1, TK_Completion = 5, TK_EndOfCompletion = 3, TK_Invalid = 100, - TK_LeftBracket = 30, + TK_LeftBracket = 36, TK_LeftParen = 2, - TK_LeftBrace = 20, + TK_LeftBrace = 14, TK_Dot = 70, TK_Arrow = 85, - TK_PlusPlus = 14, - TK_MinusMinus = 15, + TK_PlusPlus = 15, + TK_MinusMinus = 16, TK_And = 12, TK_Star = 6, TK_Plus = 9, @@ -75,8 +75,8 @@ public interface GCCSizeofExpressionParsersym { TK_Bang = 22, TK_Slash = 71, TK_Percent = 72, - TK_RightShift = 63, - TK_LeftShift = 64, + TK_RightShift = 66, + TK_LeftShift = 67, TK_LT = 73, TK_GT = 74, TK_LE = 75, @@ -103,7 +103,7 @@ public interface GCCSizeofExpressionParsersym { TK_OrAssign = 97, TK_Comma = 49, TK_RightBracket = 77, - TK_RightParen = 31, + TK_RightParen = 37, TK_RightBrace = 50, TK_SemiColon = 27, TK_typeof = 13, @@ -131,13 +131,13 @@ public interface GCCSizeofExpressionParsersym { "stringlit", "And", "typeof", + "LeftBrace", "PlusPlus", "MinusMinus", "sizeof", "integer", "floating", "charconst", - "LeftBrace", "Tilde", "Bang", "__alignof__", @@ -147,14 +147,14 @@ public interface GCCSizeofExpressionParsersym { "SemiColon", "static", "ERROR_TOKEN", - "LeftBracket", - "RightParen", "auto", "extern", "inline", "register", "typedef", "while", + "LeftBracket", + "RightParen", "break", "case", "continue", @@ -180,11 +180,11 @@ public interface GCCSizeofExpressionParsersym { "_Bool", "_Complex", "_Imaginary", - "RightShift", - "LeftShift", "enum", "struct", "union", + "RightShift", + "LeftShift", "DotDotDot", "Assign", "Dot", diff --git a/upc/org.eclipse.cdt.core.parser.upc/plugin.xml b/upc/org.eclipse.cdt.core.parser.upc/plugin.xml index 98703b78a5b..c1469b3df4b 100644 --- a/upc/org.eclipse.cdt.core.parser.upc/plugin.xml +++ b/upc/org.eclipse.cdt.core.parser.upc/plugin.xml @@ -17,9 +17,6 @@ name="UPC"> -