diff options
author | Mike Kucera | 2009-01-13 20:28:15 +0000 |
---|---|---|
committer | Mike Kucera | 2009-01-13 20:28:15 +0000 |
commit | 07a63ee282883e072edaaa0b91afbf0ee0b566fa (patch) | |
tree | 36cea78330194ca1440ba017c5d2b75aea630676 /upc | |
parent | ad36b7caa4c2dfea4345bb2733b6a261d66465b7 (diff) | |
download | org.eclipse.cdt-07a63ee282883e072edaaa0b91afbf0ee0b566fa.tar.gz org.eclipse.cdt-07a63ee282883e072edaaa0b91afbf0ee0b566fa.tar.xz org.eclipse.cdt-07a63ee282883e072edaaa0b91afbf0ee0b566fa.zip |
started adding support for GNU extensions to LR parsers
Diffstat (limited to 'upc')
29 files changed, 4796 insertions, 4923 deletions
diff --git a/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCCommentTests.java b/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCCommentTests.java index 348902a0e7c..df660c3e0ad 100644 --- a/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCCommentTests.java +++ b/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCCommentTests.java @@ -17,7 +17,7 @@ import org.eclipse.cdt.core.model.ILanguage; public class UPCCommentTests extends LRCommentTests { @Override - protected ILanguage getC99Language() { + protected ILanguage getCLanguage() { return UPCLanguage.getDefault(); } } diff --git a/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCCompleteParser2Tests.java b/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCCompleteParser2Tests.java index 7d18d2b1414..58f290950d4 100644 --- a/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCCompleteParser2Tests.java +++ b/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCCompleteParser2Tests.java @@ -17,7 +17,7 @@ import org.eclipse.cdt.core.model.ILanguage; public class UPCCompleteParser2Tests extends LRCompleteParser2Tests { @Override - protected ILanguage getC99Language() { + protected ILanguage getCLanguage() { return UPCLanguage.getDefault(); } diff --git a/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCCompletionBasicTest.java b/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCCompletionBasicTest.java index 6353ad0bbf7..3f87f7438c6 100644 --- a/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCCompletionBasicTest.java +++ b/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCCompletionBasicTest.java @@ -19,7 +19,7 @@ public class UPCCompletionBasicTest extends LRCompletionBasicTest { public UPCCompletionBasicTest() { } @Override - protected ILanguage getC99Language() { + protected ILanguage getCLanguage() { return C99Language.getDefault(); } diff --git a/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCCompletionParseTest.java b/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCCompletionParseTest.java index 7208a3c7687..841c538e97a 100644 --- a/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCCompletionParseTest.java +++ b/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCCompletionParseTest.java @@ -20,7 +20,7 @@ public class UPCCompletionParseTest extends LRCompletionParseTest { public UPCCompletionParseTest(String name) { super(name); } @Override - protected ILanguage getC99Language() { + protected ILanguage getCLanguage() { return UPCLanguage.getDefault(); } } diff --git a/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCDOMLocationInclusionTests.java b/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCDOMLocationInclusionTests.java index 9a76613e012..6e7031ea806 100644 --- a/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCDOMLocationInclusionTests.java +++ b/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCDOMLocationInclusionTests.java @@ -24,7 +24,7 @@ public class UPCDOMLocationInclusionTests extends LRDOMLocationInclusionTests { } @Override - protected ILanguage getC99Language() { + protected ILanguage getCLanguage() { return UPCLanguage.getDefault(); } } diff --git a/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCDOMLocationMacroTests.java b/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCDOMLocationMacroTests.java index 3ed629bf5d6..bd844893858 100644 --- a/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCDOMLocationMacroTests.java +++ b/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCDOMLocationMacroTests.java @@ -20,7 +20,7 @@ public class UPCDOMLocationMacroTests extends LRDOMLocationMacroTests { } @Override - protected ILanguage getC99Language() { + protected ILanguage getCLanguage() { return UPCLanguage.getDefault(); } } diff --git a/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCDOMLocationTests.java b/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCDOMLocationTests.java index bad2b688ee6..9874e2a1531 100644 --- a/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCDOMLocationTests.java +++ b/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCDOMLocationTests.java @@ -24,7 +24,7 @@ public class UPCDOMLocationTests extends LRDOMLocationTests { } @Override - protected ILanguage getC99Language() { + protected ILanguage getCLanguage() { return UPCLanguage.getDefault(); } } diff --git a/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCDOMPreprocessorInformationTest.java b/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCDOMPreprocessorInformationTest.java index 15f74558153..f7c10ca5755 100644 --- a/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCDOMPreprocessorInformationTest.java +++ b/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCDOMPreprocessorInformationTest.java @@ -17,7 +17,7 @@ import org.eclipse.cdt.core.model.ILanguage; public class UPCDOMPreprocessorInformationTest extends LRDOMPreprocessorInformationTest { @Override - protected ILanguage getC99Language() { + protected ILanguage getCLanguage() { return UPCLanguage.getDefault(); } diff --git a/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCGCCTests.java b/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCGCCTests.java index 8b8f2ea3eac..66a2486a61f 100644 --- a/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCGCCTests.java +++ b/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCGCCTests.java @@ -24,7 +24,7 @@ public class UPCGCCTests extends LRGCCTests { } @Override - protected ILanguage getC99Language() { + protected ILanguage getCLanguage() { return UPCLanguage.getDefault(); } diff --git a/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCKnRTests.java b/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCKnRTests.java index cac0c19edc8..f8181a6461d 100644 --- a/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCKnRTests.java +++ b/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCKnRTests.java @@ -20,7 +20,7 @@ public class UPCKnRTests extends LRKnRTests { } @Override - protected ILanguage getC99Language() { + protected ILanguage getCLanguage() { return UPCLanguage.getDefault(); } diff --git a/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCSelectionParseTest.java b/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCSelectionParseTest.java index 6b1345bfb04..8089a3421af 100644 --- a/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCSelectionParseTest.java +++ b/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCSelectionParseTest.java @@ -21,7 +21,7 @@ public class UPCSelectionParseTest extends LRSelectionParseTest { @Override - protected ILanguage getC99Language() { + protected ILanguage getCLanguage() { return UPCLanguage.getDefault(); } } diff --git a/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCTaskParserTest.java b/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCTaskParserTest.java index 2bfdf839f00..8c97f83ae63 100644 --- a/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCTaskParserTest.java +++ b/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCTaskParserTest.java @@ -17,7 +17,7 @@ import org.eclipse.cdt.core.model.ILanguage; public class UPCTaskParserTest extends LRTaskParserTest { @Override - protected ILanguage getC99Language() { + protected ILanguage getCLanguage() { return UPCLanguage.getDefault(); } diff --git a/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCTests.java b/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCTests.java index d2c245260f4..60685531b6f 100644 --- a/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCTests.java +++ b/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCTests.java @@ -30,7 +30,7 @@ public class UPCTests extends LRTests { } @Override - protected ILanguage getC99Language() { + protected ILanguage getCLanguage() { return UPCLanguage.getDefault(); } diff --git a/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCUtilOldTests.java b/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCUtilOldTests.java index 3c29524c27f..7cb739620f2 100644 --- a/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCUtilOldTests.java +++ b/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCUtilOldTests.java @@ -17,7 +17,7 @@ import org.eclipse.cdt.core.model.ILanguage; public class UPCUtilOldTests extends LRUtilOldTests { @Override - protected ILanguage getC99Language() { + protected ILanguage getCLanguage() { return UPCLanguage.getDefault(); } diff --git a/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCUtilTests.java b/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCUtilTests.java index b3cb530ff4e..d3c48b0c7c9 100644 --- a/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCUtilTests.java +++ b/upc/org.eclipse.cdt.core.parser.upc.tests/src/org/eclipse/cdt/core/parser/upc/tests/UPCUtilTests.java @@ -17,7 +17,7 @@ import org.eclipse.cdt.core.model.ILanguage; public class UPCUtilTests extends LRUtilTests { @Override - protected ILanguage getC99Language() { + protected ILanguage getCLanguage() { return UPCLanguage.getDefault(); } diff --git a/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/core/dom/parser/upc/UPCKeyword.java b/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/core/dom/parser/upc/UPCKeyword.java index 64b3be282ac..f36e4e8fbef 100644 --- a/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/core/dom/parser/upc/UPCKeyword.java +++ b/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/core/dom/parser/upc/UPCKeyword.java @@ -63,6 +63,7 @@ public enum UPCKeyword { tokenMap.put(name.toCharArray(), keyword.tokenKind); } + // TODO change to GCC language when gcc support is added ICLanguageKeywords c99Keywords = (ICLanguageKeywords) C99Language.getDefault().getAdapter(ICLanguageKeywords.class); String[] c99ks = c99Keywords.getKeywords(); allKeywords = new String[upcKeywords.length + c99ks.length]; diff --git a/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/core/dom/upc/UPCLanguage.java b/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/core/dom/upc/UPCLanguage.java index 88e9a4021cd..ea0cbda096e 100644 --- a/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/core/dom/upc/UPCLanguage.java +++ b/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/core/dom/upc/UPCLanguage.java @@ -19,17 +19,12 @@ import org.eclipse.cdt.core.dom.lrparser.ScannerExtensionConfiguration; import org.eclipse.cdt.core.dom.parser.IScannerExtensionConfiguration; import org.eclipse.cdt.core.dom.parser.upc.DOMToUPCTokenMap; import org.eclipse.cdt.core.dom.parser.upc.UPCLanguageKeywords; -import org.eclipse.cdt.core.index.IIndex; import org.eclipse.cdt.core.model.ICLanguageKeywords; import org.eclipse.cdt.core.model.IContributedModelBuilder; import org.eclipse.cdt.core.model.ITranslationUnit; -import org.eclipse.cdt.core.parser.IScanner; import org.eclipse.cdt.core.parser.ParserLanguage; -import org.eclipse.cdt.internal.core.dom.parser.c.CASTTranslationUnit; import org.eclipse.cdt.internal.core.dom.parser.c.CNodeFactory; import org.eclipse.cdt.internal.core.dom.parser.upc.UPCParser; -import org.eclipse.cdt.internal.core.pdom.dom.IPDOMLinkageFactory; -import org.eclipse.cdt.internal.core.pdom.dom.c.PDOMCLinkageFactory; /** @@ -40,23 +35,17 @@ import org.eclipse.cdt.internal.core.pdom.dom.c.PDOMCLinkageFactory; @SuppressWarnings("restriction") public class UPCLanguage extends BaseExtensibleLanguage { - public static final String PLUGIN_ID = "org.eclipse.cdt.core.parser.upc"; //$NON-NLS-1$ - public static final String ID = PLUGIN_ID + ".upc"; //$NON-NLS-1$ - - private static final IDOMTokenMap TOKEN_MAP = new DOMToUPCTokenMap(); + public static final String ID = "org.eclipse.cdt.core.parser.upc.upc"; //$NON-NLS-1$ private static final UPCLanguage myDefault = new UPCLanguage(); - private static final IScannerExtensionConfiguration SCANNER_CONFIGURATION = ScannerExtensionConfiguration.createC(); - - public static UPCLanguage getDefault() { return myDefault; } @Override protected IDOMTokenMap getTokenMap() { - return TOKEN_MAP; + return new DOMToUPCTokenMap(); } @Override @@ -80,13 +69,11 @@ public class UPCLanguage extends BaseExtensibleLanguage { } - private static final ICLanguageKeywords upcKeywords = new UPCLanguageKeywords(SCANNER_CONFIGURATION); + private static final ICLanguageKeywords upcKeywords = new UPCLanguageKeywords(ScannerExtensionConfiguration.createC()); @SuppressWarnings("unchecked") @Override public Object getAdapter(Class adapter) { - if(IPDOMLinkageFactory.class.equals(adapter)) - return new PDOMCLinkageFactory(); if(ICLanguageKeywords.class.equals(adapter)) return upcKeywords; @@ -102,18 +89,13 @@ public class UPCLanguage extends BaseExtensibleLanguage { * Gets the translation unit object and sets the index and the location resolver. */ @Override - protected IASTTranslationUnit createASTTranslationUnit(IIndex index, IScanner preprocessor) { - IASTTranslationUnit tu = CNodeFactory.getDefault().newTranslationUnit(); - tu.setIndex(index); - if(tu instanceof CASTTranslationUnit) { - ((CASTTranslationUnit)tu).setLocationResolver(preprocessor.getLocationResolver()); - } - return tu; + protected IASTTranslationUnit createASTTranslationUnit() { + return CNodeFactory.getDefault().newTranslationUnit(); } @Override protected IScannerExtensionConfiguration getScannerExtensionConfiguration() { - return SCANNER_CONFIGURATION; + return ScannerExtensionConfiguration.createC(); } } diff --git a/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCExpressionParser.java b/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCExpressionParser.java index 43e225898b0..f49d2432037 100644 --- a/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCExpressionParser.java +++ b/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCExpressionParser.java @@ -219,8 +219,9 @@ public String[] getOrderedTerminalSymbols() { return UPCExpressionParsersym.orderedTerminalSymbols; } +@SuppressWarnings("nls") public String getName() { - return "UPCExpressionParser"; //$NON-NLS-1$ + return "UPCExpressionParser"; } @@ -597,7 +598,7 @@ public UPCExpressionParser(String[] mapFrom) { // constructor } // - // Rule 101: labeled_statement ::= identifier_or_typedefname : statement + // Rule 101: labeled_statement ::= identifier_token : statement // case 101: { action. consumeStatementLabeled(); break; } @@ -693,7 +694,7 @@ public UPCExpressionParser(String[] mapFrom) { // constructor } // - // Rule 121: jump_statement ::= goto identifier_or_typedefname ; + // Rule 121: jump_statement ::= goto identifier_token ; // case 121: { action. consumeStatementGoto(); break; } @@ -795,771 +796,759 @@ public UPCExpressionParser(String[] mapFrom) { // constructor } // - // Rule 182: struct_or_union_specifier ::= struct { <openscope-ast> struct_declaration_list_opt } + // Rule 182: struct_or_union_specifier ::= struct_or_union struct_or_union_specifier_hook { <openscope-ast> struct_declaration_list_opt } // - case 182: { action. consumeTypeSpecifierComposite(false, IASTCompositeTypeSpecifier.k_struct); break; + case 182: { action. consumeTypeSpecifierComposite(false); break; } // - // Rule 183: struct_or_union_specifier ::= union { <openscope-ast> struct_declaration_list_opt } + // Rule 183: struct_or_union_specifier ::= struct_or_union struct_or_union_specifier_hook identifier_token struct_or_union_specifier_suffix_hook { <openscope-ast> struct_declaration_list_opt } // - case 183: { action. consumeTypeSpecifierComposite(false, IASTCompositeTypeSpecifier.k_union); break; + case 183: { action. consumeTypeSpecifierComposite(true); break; } // - // Rule 184: struct_or_union_specifier ::= struct identifier_or_typedefname { <openscope-ast> struct_declaration_list_opt } + // Rule 188: elaborated_specifier ::= struct elaborated_specifier_hook identifier_token // - case 184: { action. consumeTypeSpecifierComposite(true, IASTCompositeTypeSpecifier.k_struct); break; + case 188: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_struct); break; } // - // Rule 185: struct_or_union_specifier ::= union identifier_or_typedefname { <openscope-ast> struct_declaration_list_opt } + // Rule 189: elaborated_specifier ::= union elaborated_specifier_hook identifier_token // - case 185: { action. consumeTypeSpecifierComposite(true, IASTCompositeTypeSpecifier.k_union); break; + case 189: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_union); break; } // - // Rule 186: elaborated_specifier ::= struct identifier_or_typedefname + // Rule 190: elaborated_specifier ::= enum elaborated_specifier_hook identifier_token // - case 186: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_struct); break; + case 190: { action. consumeTypeSpecifierElaborated(IASTElaboratedTypeSpecifier.k_enum); break; } // - // Rule 187: elaborated_specifier ::= union identifier_or_typedefname + // Rule 196: struct_declaration ::= specifier_qualifier_list <openscope-ast> struct_declarator_list ; // - case 187: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_union); break; + case 196: { action. consumeStructDeclaration(true); break; } // - // Rule 188: elaborated_specifier ::= enum identifier_or_typedefname + // Rule 197: struct_declaration ::= specifier_qualifier_list ; // - case 188: { action. consumeTypeSpecifierElaborated(IASTElaboratedTypeSpecifier.k_enum); break; + case 197: { action. consumeStructDeclaration(false); break; } // - // Rule 193: struct_declaration ::= specifier_qualifier_list <openscope-ast> struct_declarator_list ; + // Rule 198: struct_declaration ::= ERROR_TOKEN // - case 193: { action. consumeStructDeclaration(true); break; + case 198: { action. consumeDeclarationProblem(); break; } // - // Rule 194: struct_declaration ::= specifier_qualifier_list ; + // Rule 204: struct_declarator ::= : constant_expression // - case 194: { action. consumeStructDeclaration(false); break; + case 204: { action. consumeBitField(false); break; } // - // Rule 195: struct_declaration ::= ERROR_TOKEN + // Rule 205: struct_declarator ::= declarator : constant_expression // - case 195: { action. consumeDeclarationProblem(); break; + case 205: { action. consumeBitField(true); break; } // - // Rule 201: struct_declarator ::= : constant_expression + // Rule 206: enum_specifier ::= enum enum_specifier_hook { <openscope-ast> enumerator_list_opt comma_opt } // - case 201: { action. consumeBitField(false); break; + case 206: { action. consumeTypeSpecifierEnumeration(false); break; } // - // Rule 202: struct_declarator ::= declarator : constant_expression + // Rule 207: enum_specifier ::= enum enum_specifier_hook identifier_token { <openscope-ast> enumerator_list_opt comma_opt } // - case 202: { action. consumeBitField(true); break; + case 207: { action. consumeTypeSpecifierEnumeration(true); break; } // - // Rule 203: enum_specifier ::= enum { <openscope-ast> enumerator_list_opt comma_opt } + // Rule 213: enumerator ::= identifier_token // - case 203: { action. consumeTypeSpecifierEnumeration(false); break; + case 213: { action. consumeEnumerator(false); break; } // - // Rule 204: enum_specifier ::= enum identifier_or_typedefname { <openscope-ast> enumerator_list_opt comma_opt } + // Rule 214: enumerator ::= identifier_token = constant_expression // - case 204: { action. consumeTypeSpecifierEnumeration(true); break; + case 214: { action. consumeEnumerator(true); break; } // - // Rule 209: enumerator ::= identifier_or_typedefname + // Rule 215: type_qualifier ::= type_qualifier_token // - case 209: { action. consumeEnumerator(false); break; - } - - // - // Rule 210: enumerator ::= identifier_or_typedefname = constant_expression - // - case 210: { action. consumeEnumerator(true); break; - } - - // - // Rule 211: type_qualifier ::= type_qualifier_token - // - case 211: { action. consumeDeclSpecToken(); break; + case 215: { action. consumeDeclSpecToken(); break; } // - // Rule 215: function_specifier ::= inline + // Rule 219: function_specifier ::= inline // - case 215: { action. consumeDeclSpecToken(); break; + case 219: { action. consumeDeclSpecToken(); break; } // - // Rule 217: declarator ::= <openscope-ast> pointer_seq direct_declarator + // Rule 221: declarator ::= <openscope-ast> pointer_seq direct_declarator // - case 217: { action. consumeDeclaratorWithPointer(true); break; + case 221: { action. consumeDeclaratorWithPointer(true); break; } // - // Rule 222: basic_direct_declarator ::= declarator_id_name + // Rule 226: basic_direct_declarator ::= declarator_id_name // - case 222: { action. consumeDirectDeclaratorIdentifier(); break; + case 226: { action. consumeDirectDeclaratorIdentifier(); break; } // - // Rule 223: basic_direct_declarator ::= ( declarator ) + // Rule 227: basic_direct_declarator ::= ( declarator ) // - case 223: { action. consumeDirectDeclaratorBracketed(); break; + case 227: { action. consumeDirectDeclaratorBracketed(); break; } // - // Rule 224: declarator_id_name ::= identifier + // Rule 228: declarator_id_name ::= identifier // - case 224: { action. consumeIdentifierName(); break; + case 228: { action. consumeIdentifierName(); break; } // - // Rule 225: array_direct_declarator ::= basic_direct_declarator array_modifier + // Rule 229: array_direct_declarator ::= basic_direct_declarator array_modifier // - case 225: { action. consumeDirectDeclaratorArrayDeclarator(true); break; + case 229: { action. consumeDirectDeclaratorArrayDeclarator(true); break; } // - // Rule 226: array_direct_declarator ::= array_direct_declarator array_modifier + // Rule 230: array_direct_declarator ::= array_direct_declarator array_modifier // - case 226: { action. consumeDirectDeclaratorArrayDeclarator(true); break; + case 230: { action. consumeDirectDeclaratorArrayDeclarator(true); break; } // - // Rule 228: function_direct_declarator ::= basic_direct_declarator ( <openscope-ast> parameter_type_list ) + // Rule 232: function_direct_declarator ::= basic_direct_declarator ( <openscope-ast> parameter_type_list ) // - case 228: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break; + case 232: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break; } // - // Rule 229: function_direct_declarator ::= basic_direct_declarator ( ) + // Rule 233: function_direct_declarator ::= basic_direct_declarator ( ) // - case 229: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break; + case 233: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break; } // - // Rule 231: function_declarator ::= <openscope-ast> pointer_seq function_direct_declarator + // Rule 235: function_declarator ::= <openscope-ast> pointer_seq function_direct_declarator // - case 231: { action. consumeDeclaratorWithPointer(true); break; + case 235: { action. consumeDeclaratorWithPointer(true); break; } // - // Rule 232: knr_direct_declarator ::= basic_direct_declarator ( <openscope-ast> identifier_list ) + // Rule 236: knr_direct_declarator ::= basic_direct_declarator ( <openscope-ast> identifier_list ) // - case 232: { action. consumeDirectDeclaratorFunctionDeclaratorKnR(); break; + case 236: { action. consumeDirectDeclaratorFunctionDeclaratorKnR(); break; } // - // Rule 234: knr_function_declarator ::= <openscope-ast> pointer_seq knr_direct_declarator + // Rule 238: knr_function_declarator ::= <openscope-ast> pointer_seq knr_direct_declarator // - case 234: { action. consumeDeclaratorWithPointer(true); break; + case 238: { action. consumeDeclaratorWithPointer(true); break; } // - // Rule 235: identifier_list ::= identifier + // Rule 239: identifier_list ::= identifier // - case 235: { action. consumeIdentifierKnR(); break; + case 239: { action. consumeIdentifierKnR(); break; } // - // Rule 236: identifier_list ::= identifier_list , identifier + // Rule 240: identifier_list ::= identifier_list , identifier // - case 236: { action. consumeIdentifierKnR(); break; + case 240: { action. consumeIdentifierKnR(); break; } // - // Rule 237: array_modifier ::= [ ] + // Rule 241: array_modifier ::= [ ] // - case 237: { action. consumeDirectDeclaratorArrayModifier(false); break; + case 241: { action. consumeDirectDeclaratorArrayModifier(false); break; } // - // Rule 238: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers ] + // Rule 242: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers ] // - case 238: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, false); break; + case 242: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, false); break; } // - // Rule 239: array_modifier ::= [ assignment_expression ] + // Rule 243: array_modifier ::= [ assignment_expression ] // - case 239: { action. consumeDirectDeclaratorArrayModifier(true); break; + case 243: { action. consumeDirectDeclaratorArrayModifier(true); break; } // - // Rule 240: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers assignment_expression ] + // Rule 244: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers assignment_expression ] // - case 240: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, true); break; + case 244: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, true); break; } // - // Rule 241: array_modifier ::= [ static assignment_expression ] + // Rule 245: array_modifier ::= [ static assignment_expression ] // - case 241: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, false, true); break; + case 245: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, false, true); break; } // - // Rule 242: array_modifier ::= [ static <openscope-ast> array_modifier_type_qualifiers assignment_expression ] + // Rule 246: array_modifier ::= [ static <openscope-ast> array_modifier_type_qualifiers assignment_expression ] // - case 242: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break; + case 246: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break; } // - // Rule 243: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers static assignment_expression ] + // Rule 247: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers static assignment_expression ] // - case 243: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break; + case 247: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break; } // - // Rule 244: array_modifier ::= [ * ] + // Rule 248: array_modifier ::= [ * ] // - case 244: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, false, false); break; + case 248: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, false, false); break; } // - // Rule 245: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers * ] + // Rule 249: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers * ] // - case 245: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, true, false); break; + case 249: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, true, false); break; } // - // Rule 247: pointer_seq ::= * + // Rule 251: pointer_seq ::= pointer_hook * // - case 247: { action. consumePointer(); break; + case 251: { action. consumePointer(); break; } // - // Rule 248: pointer_seq ::= pointer_seq * + // Rule 252: pointer_seq ::= pointer_seq pointer_hook * // - case 248: { action. consumePointer(); break; + case 252: { action. consumePointer(); break; } // - // Rule 249: pointer_seq ::= * <openscope-ast> type_qualifier_list + // Rule 253: pointer_seq ::= pointer_hook * <openscope-ast> type_qualifier_list // - case 249: { action. consumePointerTypeQualifierList(); break; + case 253: { action. consumePointerTypeQualifierList(); break; } // - // Rule 250: pointer_seq ::= pointer_seq * <openscope-ast> type_qualifier_list + // Rule 254: pointer_seq ::= pointer_seq pointer_hook * <openscope-ast> type_qualifier_list // - case 250: { action. consumePointerTypeQualifierList(); break; + case 254: { action. consumePointerTypeQualifierList(); break; } // - // Rule 253: parameter_type_list ::= parameter_list + // Rule 258: parameter_type_list ::= parameter_list // - case 253: { action. consumeEmpty(); break; + case 258: { action. consumeEmpty(); break; } // - // Rule 254: parameter_type_list ::= parameter_list , ... + // Rule 259: parameter_type_list ::= parameter_list , ... // - case 254: { action. consumePlaceHolder(); break; + case 259: { action. consumePlaceHolder(); break; } // - // Rule 255: parameter_type_list ::= ... + // Rule 260: parameter_type_list ::= ... // - case 255: { action. consumePlaceHolder(); break; + case 260: { action. consumePlaceHolder(); break; } // - // Rule 258: parameter_declaration ::= declaration_specifiers complete_parameter_declarator + // Rule 263: parameter_declaration ::= declaration_specifiers complete_parameter_declarator // - case 258: { action. consumeParameterDeclaration(); break; + case 263: { action. consumeParameterDeclaration(); break; } // - // Rule 259: parameter_declaration ::= declaration_specifiers + // Rule 264: parameter_declaration ::= declaration_specifiers // - case 259: { action. consumeParameterDeclarationWithoutDeclarator(); break; + case 264: { action. consumeParameterDeclarationWithoutDeclarator(); break; } // - // Rule 262: type_name ::= specifier_qualifier_list + // Rule 267: type_name ::= specifier_qualifier_list // - case 262: { action. consumeTypeId(false); break; + case 267: { action. consumeTypeId(false); break; } // - // Rule 263: type_name ::= specifier_qualifier_list abstract_declarator + // Rule 268: type_name ::= specifier_qualifier_list abstract_declarator // - case 263: { action. consumeTypeId(true); break; + case 268: { action. consumeTypeId(true); break; } // - // Rule 265: abstract_declarator ::= <openscope-ast> pointer_seq + // Rule 270: abstract_declarator ::= <openscope-ast> pointer_seq // - case 265: { action. consumeDeclaratorWithPointer(false); break; + case 270: { action. consumeDeclaratorWithPointer(false); break; } // - // Rule 266: abstract_declarator ::= <openscope-ast> pointer_seq direct_abstract_declarator + // Rule 271: abstract_declarator ::= <openscope-ast> pointer_seq direct_abstract_declarator // - case 266: { action. consumeDeclaratorWithPointer(false); break; + case 271: { action. consumeDeclaratorWithPointer(false); break; } // - // Rule 270: basic_direct_abstract_declarator ::= ( abstract_declarator ) + // Rule 275: basic_direct_abstract_declarator ::= ( abstract_declarator ) // - case 270: { action. consumeDirectDeclaratorBracketed(); break; + case 275: { action. consumeDirectDeclaratorBracketed(); break; } // - // Rule 271: array_direct_abstract_declarator ::= array_modifier + // Rule 276: array_direct_abstract_declarator ::= array_modifier // - case 271: { action. consumeDirectDeclaratorArrayDeclarator(false); break; + case 276: { action. consumeDirectDeclaratorArrayDeclarator(false); break; } // - // Rule 272: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier + // Rule 277: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier // - case 272: { action. consumeDirectDeclaratorArrayDeclarator(true); break; + case 277: { action. consumeDirectDeclaratorArrayDeclarator(true); break; } // - // Rule 273: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier + // Rule 278: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier // - case 273: { action. consumeDirectDeclaratorArrayDeclarator(true); break; + case 278: { action. consumeDirectDeclaratorArrayDeclarator(true); break; } // - // Rule 274: function_direct_abstract_declarator ::= ( ) + // Rule 279: function_direct_abstract_declarator ::= ( ) // - case 274: { action. consumeDirectDeclaratorFunctionDeclarator(false, false); break; + case 279: { action. consumeDirectDeclaratorFunctionDeclarator(false, false); break; } // - // Rule 275: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( ) + // Rule 280: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( ) // - case 275: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break; + case 280: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break; } // - // Rule 276: function_direct_abstract_declarator ::= ( <openscope-ast> parameter_type_list ) + // Rule 281: function_direct_abstract_declarator ::= ( <openscope-ast> parameter_type_list ) // - case 276: { action. consumeDirectDeclaratorFunctionDeclarator(false, true); break; + case 281: { action. consumeDirectDeclaratorFunctionDeclarator(false, true); break; } // - // Rule 277: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( <openscope-ast> parameter_type_list ) + // Rule 282: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( <openscope-ast> parameter_type_list ) // - case 277: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break; + case 282: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break; } // - // Rule 278: initializer ::= assignment_expression + // Rule 283: initializer ::= assignment_expression // - case 278: { action. consumeInitializer(); break; + case 283: { action. consumeInitializer(); break; } // - // Rule 279: initializer ::= start_initializer_list { <openscope-ast> initializer_list comma_opt } end_initializer_list + // Rule 284: initializer ::= start_initializer_list { <openscope-ast> initializer_list comma_opt } end_initializer_list // - case 279: { action. consumeInitializerList(); break; + case 284: { action. consumeInitializerList(); break; } // - // Rule 280: initializer ::= { <openscope-ast> } + // Rule 285: initializer ::= { <openscope-ast> } // - case 280: { action. consumeInitializerList(); break; + case 285: { action. consumeInitializerList(); break; } // - // Rule 281: start_initializer_list ::= $Empty + // Rule 286: start_initializer_list ::= $Empty // - case 281: { action. initializerListStart(); break; + case 286: { action. initializerListStart(); break; } // - // Rule 282: end_initializer_list ::= $Empty + // Rule 287: end_initializer_list ::= $Empty // - case 282: { action. initializerListEnd(); break; + case 287: { action. initializerListEnd(); break; } // - // Rule 287: designated_initializer ::= <openscope-ast> designation = initializer + // Rule 292: designated_initializer ::= <openscope-ast> designation = initializer // - case 287: { action. consumeInitializerDesignated(); break; + case 292: { action. consumeInitializerDesignated(); break; } // - // Rule 291: designator_base ::= [ constant_expression ] + // Rule 296: designator_base ::= [ constant_expression ] // - case 291: { action. consumeDesignatorArray(); break; + case 296: { action. consumeDesignatorArray(); break; } // - // Rule 292: designator_base ::= . identifier_or_typedefname + // Rule 297: designator_base ::= . identifier_token // - case 292: { action. consumeDesignatorField(); break; + case 297: { action. consumeDesignatorField(); break; } // - // Rule 293: designator ::= [ constant_expression ] + // Rule 298: designator ::= [ constant_expression ] // - case 293: { action. consumeDesignatorArray(); break; + case 298: { action. consumeDesignatorArray(); break; } // - // Rule 294: designator ::= . identifier_or_typedefname + // Rule 299: designator ::= . identifier_token // - case 294: { action. consumeDesignatorField(); break; + case 299: { action. consumeDesignatorField(); break; } // - // Rule 295: translation_unit ::= external_declaration_list + // Rule 300: translation_unit ::= external_declaration_list // - case 295: { action. consumeTranslationUnit(); break; + case 300: { action. consumeTranslationUnit(); break; } // - // Rule 296: translation_unit ::= $Empty + // Rule 301: translation_unit ::= $Empty // - case 296: { action. consumeTranslationUnit(); break; + case 301: { action. consumeTranslationUnit(); break; } // - // Rule 301: external_declaration ::= ; + // Rule 306: external_declaration ::= ; // - case 301: { action. consumeDeclarationEmpty(); break; + case 306: { action. consumeDeclarationEmpty(); break; } // - // Rule 302: external_declaration ::= ERROR_TOKEN + // Rule 307: external_declaration ::= ERROR_TOKEN // - case 302: { action. consumeDeclarationProblem(); break; + case 307: { action. consumeDeclarationProblem(); break; } // - // Rule 305: function_definition ::= declaration_specifiers <openscope-ast> function_declarator function_body + // Rule 310: function_definition ::= declaration_specifiers <openscope-ast> function_declarator function_body // - case 305: { action. consumeFunctionDefinition(true); break; + case 310: { action. consumeFunctionDefinition(true); break; } // - // Rule 306: function_definition ::= <openscope-ast> function_declarator function_body + // Rule 311: function_definition ::= <openscope-ast> function_declarator function_body // - case 306: { action. consumeFunctionDefinition(false); break; + case 311: { action. consumeFunctionDefinition(false); break; } // - // Rule 307: function_definition ::= declaration_specifiers <openscope-ast> knr_function_declarator <openscope-ast> declaration_list compound_statement + // Rule 312: function_definition ::= declaration_specifiers <openscope-ast> knr_function_declarator <openscope-ast> declaration_list compound_statement // - case 307: { action. consumeFunctionDefinitionKnR(); break; + case 312: { action. consumeFunctionDefinitionKnR(); break; } // - // Rule 308: function_body ::= { } + // Rule 313: function_body ::= { } // - case 308: { action. consumeStatementCompoundStatement(false); break; + case 313: { action. consumeStatementCompoundStatement(false); break; } // - // Rule 309: function_body ::= { <openscope-ast> block_item_list } + // Rule 314: function_body ::= { <openscope-ast> block_item_list } // - case 309: { action. consumeStatementCompoundStatement(true); break; + case 314: { action. consumeStatementCompoundStatement(true); break; } // - // Rule 311: expression_parser_start ::= ERROR_TOKEN + // Rule 316: expression_parser_start ::= ERROR_TOKEN // - case 311: { action. consumeExpressionProblem(); break; + case 316: { action. consumeExpressionProblem(); break; } // - // Rule 312: literal ::= MYTHREAD + // Rule 317: literal ::= MYTHREAD // - case 312: { action. consumeKeywordExpression(IUPCASTKeywordExpression.kw_mythread); break; + case 317: { action. consumeKeywordExpression(IUPCASTKeywordExpression.kw_mythread); break; } // - // Rule 313: literal ::= THREADS + // Rule 318: literal ::= THREADS // - case 313: { action. consumeKeywordExpression(IUPCASTKeywordExpression.kw_threads); break; + case 318: { action. consumeKeywordExpression(IUPCASTKeywordExpression.kw_threads); break; } // - // Rule 314: literal ::= UPC_MAX_BLOCKSIZE + // Rule 319: literal ::= UPC_MAX_BLOCKSIZE // - case 314: { action. consumeKeywordExpression(IUPCASTKeywordExpression.kw_upc_max_block_size); break; + case 319: { action. consumeKeywordExpression(IUPCASTKeywordExpression.kw_upc_max_block_size); break; } // - // Rule 315: unary_expression ::= upc_localsizeof unary_expression + // Rule 320: unary_expression ::= upc_localsizeof unary_expression // - case 315: { action. consumeExpressionUnarySizeofOperator(IUPCASTUnarySizeofExpression.upc_localsizeof); break; + case 320: { action. consumeExpressionUnarySizeofOperator(IUPCASTUnarySizeofExpression.upc_localsizeof); break; } // - // Rule 316: unary_expression ::= upc_localsizeof ( type_name ) + // Rule 321: unary_expression ::= upc_localsizeof ( type_name ) // - case 316: { action. consumeExpressionSizeofTypeId(IUPCASTUnarySizeofExpression.upc_localsizeof); break; + case 321: { action. consumeExpressionSizeofTypeId(IUPCASTUnarySizeofExpression.upc_localsizeof); break; } // - // Rule 317: unary_expression ::= upc_blocksizeof unary_expression + // Rule 322: unary_expression ::= upc_blocksizeof unary_expression // - case 317: { action. consumeExpressionUnarySizeofOperator(IUPCASTUnarySizeofExpression.upc_blocksizeof); break; + case 322: { action. consumeExpressionUnarySizeofOperator(IUPCASTUnarySizeofExpression.upc_blocksizeof); break; } // - // Rule 318: unary_expression ::= upc_blocksizeof ( type_name ) + // Rule 323: unary_expression ::= upc_blocksizeof ( type_name ) // - case 318: { action. consumeExpressionSizeofTypeId(IUPCASTUnarySizeofExpression.upc_blocksizeof); break; + case 323: { action. consumeExpressionSizeofTypeId(IUPCASTUnarySizeofExpression.upc_blocksizeof); break; } // - // Rule 319: unary_expression ::= upc_elemsizeof unary_expression + // Rule 324: unary_expression ::= upc_elemsizeof unary_expression // - case 319: { action. consumeExpressionUnarySizeofOperator(IUPCASTUnarySizeofExpression.upc_elemsizeof); break; + case 324: { action. consumeExpressionUnarySizeofOperator(IUPCASTUnarySizeofExpression.upc_elemsizeof); break; } // - // Rule 320: unary_expression ::= upc_elemsizeof ( type_name ) + // Rule 325: unary_expression ::= upc_elemsizeof ( type_name ) // - case 320: { action. consumeExpressionSizeofTypeId(IUPCASTUnarySizeofExpression.upc_elemsizeof); break; + case 325: { action. consumeExpressionSizeofTypeId(IUPCASTUnarySizeofExpression.upc_elemsizeof); break; } // - // Rule 324: shared_type_qualifier ::= shared + // Rule 329: shared_type_qualifier ::= shared // - case 324: { action. consumeToken(); break; + case 329: { action. consumeToken(); break; } // - // Rule 325: reference_type_qualifier ::= relaxed + // Rule 330: reference_type_qualifier ::= relaxed // - case 325: { action. consumeToken(); break; + case 330: { action. consumeToken(); break; } // - // Rule 326: reference_type_qualifier ::= strict + // Rule 331: reference_type_qualifier ::= strict // - case 326: { action. consumeToken(); break; + case 331: { action. consumeToken(); break; } // - // Rule 327: layout_qualifier ::= [ constant_expression ] + // Rule 332: layout_qualifier ::= [ constant_expression ] // - case 327: { action. consumeLayoutQualifier(true, false); break; + case 332: { action. consumeLayoutQualifier(true, false); break; } // - // Rule 328: layout_qualifier ::= [ * ] + // Rule 333: layout_qualifier ::= [ * ] // - case 328: { action. consumeLayoutQualifier(false, true); break; + case 333: { action. consumeLayoutQualifier(false, true); break; } // - // Rule 329: layout_qualifier ::= [ ] + // Rule 334: layout_qualifier ::= [ ] // - case 329: { action. consumeLayoutQualifier(false, false); break; + case 334: { action. consumeLayoutQualifier(false, false); break; } // - // Rule 331: synchronization_statement ::= upc_notify expression ; + // Rule 336: synchronization_statement ::= upc_notify expression ; // - case 331: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_notify, true); break; + case 336: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_notify, true); break; } // - // Rule 332: synchronization_statement ::= upc_notify ; + // Rule 337: synchronization_statement ::= upc_notify ; // - case 332: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_notify, false); break; + case 337: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_notify, false); break; } // - // Rule 333: synchronization_statement ::= upc_wait expression ; + // Rule 338: synchronization_statement ::= upc_wait expression ; // - case 333: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_wait, true); break; + case 338: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_wait, true); break; } // - // Rule 334: synchronization_statement ::= upc_wait ; + // Rule 339: synchronization_statement ::= upc_wait ; // - case 334: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_wait, false); break; + case 339: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_wait, false); break; } // - // Rule 335: synchronization_statement ::= upc_barrier expression ; + // Rule 340: synchronization_statement ::= upc_barrier expression ; // - case 335: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_barrier, true); break; + case 340: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_barrier, true); break; } // - // Rule 336: synchronization_statement ::= upc_barrier ; + // Rule 341: synchronization_statement ::= upc_barrier ; // - case 336: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_barrier, false); break; + case 341: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_barrier, false); break; } // - // Rule 337: synchronization_statement ::= upc_fence ; + // Rule 342: synchronization_statement ::= upc_fence ; // - case 337: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_fence, false); break; + case 342: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_fence, false); break; } // - // Rule 338: iteration_statement ::= upc_forall ( expression ; expression ; expression ; affinity ) statement + // Rule 343: iteration_statement ::= upc_forall ( expression ; expression ; expression ; affinity ) statement // - case 338: { action. consumeStatementUPCForallLoop(true, true, true, true); break; + case 343: { action. consumeStatementUPCForallLoop(true, true, true, true); break; } // - // Rule 339: iteration_statement ::= upc_forall ( expression ; expression ; expression ; ) statement + // Rule 344: iteration_statement ::= upc_forall ( expression ; expression ; expression ; ) statement // - case 339: { action. consumeStatementUPCForallLoop(true, true, true, false); break; + case 344: { action. consumeStatementUPCForallLoop(true, true, true, false); break; } // - // Rule 340: iteration_statement ::= upc_forall ( expression ; expression ; ; affinity ) statement + // Rule 345: iteration_statement ::= upc_forall ( expression ; expression ; ; affinity ) statement // - case 340: { action. consumeStatementUPCForallLoop(true, true, false, true); break; + case 345: { action. consumeStatementUPCForallLoop(true, true, false, true); break; } // - // Rule 341: iteration_statement ::= upc_forall ( expression ; expression ; ; ) statement + // Rule 346: iteration_statement ::= upc_forall ( expression ; expression ; ; ) statement // - case 341: { action. consumeStatementUPCForallLoop(true, true, false, false); break; + case 346: { action. consumeStatementUPCForallLoop(true, true, false, false); break; } // - // Rule 342: iteration_statement ::= upc_forall ( expression ; ; expression ; affinity ) statement + // Rule 347: iteration_statement ::= upc_forall ( expression ; ; expression ; affinity ) statement // - case 342: { action. consumeStatementUPCForallLoop(true, false, true, true); break; + case 347: { action. consumeStatementUPCForallLoop(true, false, true, true); break; } // - // Rule 343: iteration_statement ::= upc_forall ( expression ; ; expression ; ) statement + // Rule 348: iteration_statement ::= upc_forall ( expression ; ; expression ; ) statement // - case 343: { action. consumeStatementUPCForallLoop(true, false, true, false); break; + case 348: { action. consumeStatementUPCForallLoop(true, false, true, false); break; } // - // Rule 344: iteration_statement ::= upc_forall ( expression ; ; ; affinity ) statement + // Rule 349: iteration_statement ::= upc_forall ( expression ; ; ; affinity ) statement // - case 344: { action. consumeStatementUPCForallLoop(true, false, false, true); break; + case 349: { action. consumeStatementUPCForallLoop(true, false, false, true); break; } // - // Rule 345: iteration_statement ::= upc_forall ( expression ; ; ; ) statement + // Rule 350: iteration_statement ::= upc_forall ( expression ; ; ; ) statement // - case 345: { action. consumeStatementUPCForallLoop(true, false, false, false); break; + case 350: { action. consumeStatementUPCForallLoop(true, false, false, false); break; } // - // Rule 346: iteration_statement ::= upc_forall ( ; expression ; expression ; affinity ) statement + // Rule 351: iteration_statement ::= upc_forall ( ; expression ; expression ; affinity ) statement // - case 346: { action. consumeStatementUPCForallLoop(false, true, true, true); break; + case 351: { action. consumeStatementUPCForallLoop(false, true, true, true); break; } // - // Rule 347: iteration_statement ::= upc_forall ( ; expression ; expression ; ) statement + // Rule 352: iteration_statement ::= upc_forall ( ; expression ; expression ; ) statement // - case 347: { action. consumeStatementUPCForallLoop(false, true, true, false); break; + case 352: { action. consumeStatementUPCForallLoop(false, true, true, false); break; } // - // Rule 348: iteration_statement ::= upc_forall ( ; expression ; ; affinity ) statement + // Rule 353: iteration_statement ::= upc_forall ( ; expression ; ; affinity ) statement // - case 348: { action. consumeStatementUPCForallLoop(false, true, false, true); break; + case 353: { action. consumeStatementUPCForallLoop(false, true, false, true); break; } // - // Rule 349: iteration_statement ::= upc_forall ( ; expression ; ; ) statement + // Rule 354: iteration_statement ::= upc_forall ( ; expression ; ; ) statement // - case 349: { action. consumeStatementUPCForallLoop(false, true, false, false); break; + case 354: { action. consumeStatementUPCForallLoop(false, true, false, false); break; } // - // Rule 350: iteration_statement ::= upc_forall ( ; ; expression ; affinity ) statement + // Rule 355: iteration_statement ::= upc_forall ( ; ; expression ; affinity ) statement // - case 350: { action. consumeStatementUPCForallLoop(false, false, true, true); break; + case 355: { action. consumeStatementUPCForallLoop(false, false, true, true); break; } // - // Rule 351: iteration_statement ::= upc_forall ( ; ; expression ; ) statement + // Rule 356: iteration_statement ::= upc_forall ( ; ; expression ; ) statement // - case 351: { action. consumeStatementUPCForallLoop(false, false, true, false); break; + case 356: { action. consumeStatementUPCForallLoop(false, false, true, false); break; } // - // Rule 352: iteration_statement ::= upc_forall ( ; ; ; affinity ) statement + // Rule 357: iteration_statement ::= upc_forall ( ; ; ; affinity ) statement // - case 352: { action. consumeStatementUPCForallLoop(false, false, false, true); break; + case 357: { action. consumeStatementUPCForallLoop(false, false, false, true); break; } // - // Rule 353: iteration_statement ::= upc_forall ( ; ; ; ) statement + // Rule 358: iteration_statement ::= upc_forall ( ; ; ; ) statement // - case 353: { action. consumeStatementUPCForallLoop(false, false, false, false); break; + case 358: { action. consumeStatementUPCForallLoop(false, false, false, false); break; } // - // Rule 354: iteration_statement ::= upc_forall ( declaration expression ; expression ; affinity ) statement + // Rule 359: iteration_statement ::= upc_forall ( declaration expression ; expression ; affinity ) statement // - case 354: { action. consumeStatementUPCForallLoop(true, true, true, true); break; + case 359: { action. consumeStatementUPCForallLoop(true, true, true, true); break; } // - // Rule 355: iteration_statement ::= upc_forall ( declaration expression ; expression ; ) statement + // Rule 360: iteration_statement ::= upc_forall ( declaration expression ; expression ; ) statement // - case 355: { action. consumeStatementUPCForallLoop(true, true, true, false); break; + case 360: { action. consumeStatementUPCForallLoop(true, true, true, false); break; } // - // Rule 356: iteration_statement ::= upc_forall ( declaration expression ; ; affinity ) statement + // Rule 361: iteration_statement ::= upc_forall ( declaration expression ; ; affinity ) statement // - case 356: { action. consumeStatementUPCForallLoop(true, true, false, true); break; + case 361: { action. consumeStatementUPCForallLoop(true, true, false, true); break; } // - // Rule 357: iteration_statement ::= upc_forall ( declaration expression ; ; ) statement + // Rule 362: iteration_statement ::= upc_forall ( declaration expression ; ; ) statement // - case 357: { action. consumeStatementUPCForallLoop(true, true, false, false); break; + case 362: { action. consumeStatementUPCForallLoop(true, true, false, false); break; } // - // Rule 358: iteration_statement ::= upc_forall ( declaration ; expression ; affinity ) statement + // Rule 363: iteration_statement ::= upc_forall ( declaration ; expression ; affinity ) statement // - case 358: { action. consumeStatementUPCForallLoop(true, false, true, true); break; + case 363: { action. consumeStatementUPCForallLoop(true, false, true, true); break; } // - // Rule 359: iteration_statement ::= upc_forall ( declaration ; expression ; ) statement + // Rule 364: iteration_statement ::= upc_forall ( declaration ; expression ; ) statement // - case 359: { action. consumeStatementUPCForallLoop(true, false, true, false); break; + case 364: { action. consumeStatementUPCForallLoop(true, false, true, false); break; } // - // Rule 360: iteration_statement ::= upc_forall ( declaration ; ; affinity ) statement + // Rule 365: iteration_statement ::= upc_forall ( declaration ; ; affinity ) statement // - case 360: { action. consumeStatementUPCForallLoop(true, false, false, true); break; + case 365: { action. consumeStatementUPCForallLoop(true, false, false, true); break; } // - // Rule 361: iteration_statement ::= upc_forall ( declaration ; ; ) statement + // Rule 366: iteration_statement ::= upc_forall ( declaration ; ; ) statement // - case 361: { action. consumeStatementUPCForallLoop(true, false, false, false); break; + case 366: { action. consumeStatementUPCForallLoop(true, false, false, false); break; } // - // Rule 363: affinity ::= continue + // Rule 368: affinity ::= continue // - case 363: { action. consumeToken(); break; + case 368: { action. consumeToken(); break; } diff --git a/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCExpressionParserprs.java b/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCExpressionParserprs.java index 4b9256b0bda..6fe0a485694 100644 --- a/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCExpressionParserprs.java +++ b/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCExpressionParserprs.java @@ -53,175 +53,177 @@ public class UPCExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, UP 1,2,2,1,3,1,3,1,1,1, 1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,5,5,6,6,2,2,2,1,0, - 1,2,4,2,1,1,1,3,1,1, - 2,3,6,7,1,0,1,3,1,3, - 1,1,1,1,1,1,3,1,1,1, - 1,1,3,1,2,2,1,5,3,1, - 3,5,1,3,1,3,2,4,3,5, - 4,6,6,3,5,1,1,2,3,4, - 1,2,1,3,1,1,3,2,1,1, - 1,1,2,1,2,3,1,1,1,3, - 1,2,2,2,3,4,5,1,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,1,2,4,2,4,2,4, - 1,1,2,1,1,1,3,3,2,1, - 3,2,3,2,3,2,2,11,10,10, - 9,10,9,9,8,10,9,9,8,9, - 8,8,7,10,9,9,8,9,8,8, - 7,1,1,-43,0,0,0,0,0,0, - -40,0,0,0,0,0,0,0,0,0, - 0,0,0,-82,-215,-80,0,0,0,0, - 0,0,-2,-4,-17,-124,0,0,0,0, - -61,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,-19, + 1,6,8,0,0,1,1,3,3,3, + 0,1,0,1,2,4,2,1,1,1, + 3,1,1,2,3,7,8,0,1,0, + 1,3,1,3,1,1,1,1,1,1, + 3,1,1,1,1,1,3,1,2,2, + 1,5,3,1,3,5,1,3,1,3, + 2,4,3,5,4,6,6,3,5,1, + 2,3,4,5,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,1,1,1,2, + 4,2,4,2,4,1,1,2,1,1, + 1,3,3,2,1,3,2,3,2,3, + 2,2,11,10,10,9,10,9,9,8, + 10,9,9,8,9,8,8,7,10,9, + 9,8,9,8,8,7,1,1,-43,0, + 0,0,0,0,0,0,0,-2,0,0, + 0,0,0,0,0,0,0,0,-4,-17, + 0,0,0,0,-5,0,0,0,0,0, + 0,0,0,0,-137,0,0,0,0,0, + 0,0,0,-229,0,0,0,0,0,0, + 0,0,0,0,-19,0,-36,-20,-21,-157, + -22,0,0,0,0,0,-9,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,-20,-21,0,0,-22,0,0,0, - 0,0,0,0,-138,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,0,0,0,-210,0,0,0,0,0, + -204,0,0,0,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,-159,0,0,0,0,0,0,0,0, - 0,-55,0,0,0,0,0,0,0,0, - 0,0,0,0,0,-41,-74,0,-189,-23, - 0,-56,0,0,0,0,0,0,0,0, - 0,0,0,-24,0,0,0,0,-185,0, + -62,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,-23,-24,-25, + 0,-26,0,-44,0,0,0,0,0,0, + 0,0,-130,-40,0,-152,0,0,0,0, + -37,0,0,-45,0,0,0,0,0,0, + 0,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,0,0,-83,0, + 0,0,0,0,0,-147,-124,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-25,-26, - 0,-147,-27,0,0,0,-96,-58,0,0, + 0,0,0,0,0,0,-156,0,0,0, + 0,-6,0,0,0,0,0,0,0,0, + 0,0,-89,0,-85,-27,-194,0,-10,0, + 0,0,0,0,0,0,0,0,-41,-74, + 0,-28,0,-29,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-28,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-142,0, - 0,0,0,-57,0,0,0,0,0,0, - -129,0,0,0,0,-197,0,0,0,-29, - 0,0,0,0,-97,-36,0,0,0,0, + 0,0,0,0,0,0,0,-83,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,-206,0,0,0,0,0,0,-75, + 0,0,0,0,0,0,0,-98,0,-200, 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,-3, + 0,0,0,0,0,0,0,0,-75,0, + 0,0,0,0,0,0,0,0,0,-58, 0,0,0,0,0,0,0,0,0,0, - 0,0,-59,0,0,0,0,0,0,-176, - 0,0,0,0,0,0,0,0,0,-9, - 0,0,0,0,0,0,0,-123,0,0, + 0,0,0,0,-132,0,-99,-100,-101,-102, + -80,0,-131,0,0,0,0,0,0,0, + 0,-103,0,0,0,0,0,0,0,0, + 0,0,0,0,-125,-143,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,-150,-76,-130, + 0,0,0,0,0,0,0,-104,0,-30, + 0,0,0,0,0,0,0,0,-76,0, + 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,0,0,-64, + 0,0,0,0,0,0,0,0,-77,0, + 0,0,0,0,0,0,0,0,0,-65, 0,0,0,0,0,0,0,0,0,0, - -98,0,-99,-143,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,-66, + 0,0,0,0,0,0,0,0,-78,0, + 0,0,0,0,0,0,0,0,0,-67, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-100,0,0,-30,0,0,0, - 0,0,0,-77,0,0,0,0,0,0, - 0,0,0,0,0,0,-63,0,0,0, + 0,0,0,0,0,0,0,0,0,-68, + 0,0,0,0,0,0,0,0,-79,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,-64,0,0,0, - 0,0,0,-78,0,0,0,0,0,0, - 0,0,0,0,0,0,-65,0,0,0, + 0,0,0,0,0,0,0,0,0,-70, + 0,0,0,0,0,0,0,0,-128,0, + 0,0,0,0,0,0,0,0,0,-71, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-66,0,0,0, - 0,0,0,-79,0,0,0,0,0,0, - 0,0,0,0,0,0,-67,0,0,0, + 0,0,0,0,0,0,0,0,0,-72, + 0,0,0,0,0,0,0,0,-145,0, + 0,0,0,0,0,0,0,0,0,-73, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-68,0,0,0, - 0,0,0,-127,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,-162, + 0,0,0,0,0,0,0,0,-171,0, + 0,0,0,0,0,0,0,0,0,-163, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-70,0,0,0, - 0,0,0,-145,0,0,0,0,0,0, - 0,0,0,0,0,0,-71,0,0,0, + 0,0,0,0,0,0,0,0,0,-180, + 0,0,0,0,0,0,0,0,-105,0, + 0,0,0,0,0,0,0,0,-203,0, + 0,0,0,0,0,0,0,-106,0,0, + 0,0,0,0,0,0,0,-11,0,0, + 0,0,0,0,-107,0,-53,0,0,0, + 0,0,0,0,0,-211,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-72,0,0,0, - 0,0,0,-173,0,0,0,0,0,0, - 0,0,0,0,0,0,-73,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-164,0,0,0, - 0,0,0,-195,0,0,0,0,0,0, - 0,0,0,0,0,0,-165,0,0,0, + 0,0,0,0,-219,0,0,0,0,0, + 0,0,0,-108,0,0,0,0,0,0, + 0,0,0,-12,0,0,0,0,0,0, + -121,0,-13,0,0,0,0,0,0,0, + -87,-227,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,-101,0,0,0,0,0,0, - 0,0,0,0,0,-203,0,0,0,0, - 0,0,-102,0,0,0,0,0,0,0, - 0,0,0,0,-209,0,0,0,0,0, + -146,-109,0,0,0,0,-133,-142,-144,0, + -82,-88,0,0,0,0,-166,-14,0,0, + 0,0,0,0,-86,0,-110,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-213,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,-223,0,0,0,0,0,0,0, + 0,0,-111,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,-137,0,0,0,0,0,0,0,0, + 0,0,0,0,0,-97,-191,-59,0,0, 0,0,0,0,0,0,0,0,0,0, - -87,-146,-103,-85,-37,-91,-104,0,0,-49, - 0,0,0,0,0,0,-86,0,0,0, - -92,-120,-94,0,0,0,0,-88,0,-187, - 0,-198,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-168,0,0,0, - 0,0,0,0,0,0,-122,0,-132,-166, - 0,0,-105,0,0,0,0,-106,0,0, + 0,-7,0,0,0,0,0,0,0,0, + 0,-134,-112,0,-90,0,-150,0,0,0, + 0,-91,0,-208,0,0,0,0,0,0, + 0,-167,0,0,0,0,0,0,-188,0, + 0,-92,0,0,0,0,0,-161,0,0, + 0,0,0,0,0,0,0,-197,0,-226, 0,0,0,0,0,0,0,0,0,0, - 0,0,-144,0,0,0,0,0,0,0, - -200,0,0,0,0,0,0,0,-5,0, - 0,0,0,0,-222,0,0,0,0,0, - -107,0,-50,0,0,0,0,0,0,-134, - 0,0,0,0,-171,-108,0,0,0,0, - 0,0,0,0,-6,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-7,0, - 0,0,0,0,0,-51,0,0,0,0, - 0,0,-135,0,0,0,-38,-139,-152,0, - -154,0,0,0,0,0,0,0,0,-8, - 0,0,0,0,0,0,0,-52,0,0, - 0,0,0,0,0,0,0,0,-53,0, - 0,0,0,0,0,-89,0,0,-54,0, - 0,0,0,0,0,-84,0,0,-157,-160, - -193,-175,0,-90,-179,0,0,-158,0,0, - 0,0,-109,-194,-110,0,-191,-111,0,0, - 0,0,0,0,0,-208,0,0,0,0, - -93,0,-184,0,0,0,0,0,0,0, - -112,0,0,0,0,-95,-10,0,0,0, - 0,0,0,0,0,0,0,0,0,-113, - -42,0,0,0,0,0,0,0,0,0, - 0,0,-15,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,-207,0, - -16,0,0,0,0,0,0,0,0,0, - -126,0,0,0,0,0,0,-163,-227,-224, - 0,-114,-115,0,-151,0,0,0,0,0, - 0,-180,0,-167,0,0,0,0,0,0, - 0,0,0,0,-205,-216,0,-11,0,0, - 0,0,0,0,-116,0,0,0,0,0, - 0,0,0,-12,0,0,0,0,0,0, - -13,0,0,0,0,0,0,-14,0,0, - 0,0,0,0,-18,0,-31,-172,-212,-121, - -117,0,-156,0,0,-32,-118,0,0,-218, - -169,-204,0,-39,-219,0,-119,0,0,0, - 0,0,0,0,0,0,0,0,0,-140, - -33,0,0,0,0,-34,0,0,0,0, + 0,0,0,-93,0,-55,0,0,0,0, + 0,0,0,0,-212,0,0,0,-54,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,-131, - -35,0,0,0,-220,-133,0,0,0,0, - -136,0,-148,-161,0,-181,-125,-182,-186,0, - 0,0,-128,-214,0,0,0,0,0,0, - 0,0,-46,0,0,0,0,0,0,0, - 0,0,0,0,0,-47,0,0,0,0, - 0,0,-48,0,0,0,0,0,0,-81, - 0,0,0,0,0,0,-141,-170,-190,-226, - -199,0,-153,-196,0,0,-201,0,0,0, - 0,-155,0,-221,0,0,-162,-202,0,0, - 0,0,0,0,0,0,0,-174,0,0, - 0,0,0,0,0,-183,0,-178,0,0, - 0,0,0,-1,0,-211,-217,0,0,0, + 0,0,0,0,-140,0,0,0,0,0, + 0,0,0,0,-135,-113,0,-56,0,0, + 0,0,0,0,0,0,-95,0,0,-57, + 0,0,0,0,0,0,0,0,-218,0, + 0,0,0,0,0,-49,0,0,0,0, + 0,0,0,0,0,0,-50,0,0,0, + 0,0,0,0,0,-136,0,-51,0,0, + 0,0,0,0,0,0,-164,0,-52,0, + 0,0,0,0,0,0,0,-221,0,-190, + -153,-155,-84,0,0,-168,0,0,0,0, + 0,0,-127,0,0,0,0,0,0,0, + 0,-94,0,-46,0,0,0,0,0,0, + 0,0,-169,0,0,0,0,0,0,0, + 0,0,-96,0,0,0,0,-228,0,0, + 0,0,0,0,0,0,0,-8,0,0, + 0,0,0,0,0,0,0,0,0,-42, + -185,-129,-158,-222,0,0,0,0,0,-114, + 0,0,-115,0,0,0,0,0,0,0, + 0,0,0,0,0,0,-181,0,0,-151, + 0,0,0,0,0,0,-160,0,-209,0, + -176,-116,-174,-189,-182,0,0,0,0,0, + 0,0,0,0,0,0,-179,-117,-202,0, + 0,0,-165,0,0,0,0,0,0,0, + -47,0,0,0,0,0,0,0,-18,0, + -31,0,-183,0,0,-192,0,0,-32,0, + -33,0,0,-193,0,0,0,0,-118,0, + -210,0,-119,0,0,0,0,0,0,0, + 0,0,-120,-34,0,0,0,0,0,0, + 0,0,0,0,-123,0,-139,0,-148,-35, + 0,-186,-187,0,-154,0,-217,0,0,0, + 0,-122,-159,0,0,-48,0,0,0,0, + 0,0,0,0,-214,0,0,-126,0,0, + 0,-81,0,0,0,0,0,0,-223,-175, + 0,-141,-215,0,0,-173,-206,0,-207,0, + 0,0,0,-172,0,0,-178,0,0,0, + 0,0,0,0,0,0,0,0,-198,-199, + -220,0,0,-184,0,0,0,-196,0,0, + -15,0,0,0,0,0,0,-16,0,0, + 0,0,0,-149,-1,0,0,0,0,0, + 0,-225,0,0,0,0,0,-195,0,0, + 0,0,-205,-38,0,0,0,0,-224,0, + 0,0,0,-201,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,-39, + 0,0,-216,-60,0,-170,0,0,0,0, + 0,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,0,0,-149,0, - 0,0,-177,-225,0,0,0,0,0,0, - 0,0,0,0,0,0,0,-192,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,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0 + 0,0,0,0,0 }; }; public final static short baseCheck[] = BaseCheck.baseCheck; @@ -231,195 +233,197 @@ public class UPCExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, UP public interface BaseAction { public final static char baseAction[] = { - 86,7,22,22,20,20,30,30,71,71, + 89,9,21,21,20,20,37,37,72,72, 1,1,1,1,2,2,2,3,3,4, - 4,4,4,4,4,4,4,54,54,72, - 72,5,5,5,5,5,5,5,5,5, - 5,5,6,6,8,8,8,8,9,9, - 9,10,10,10,11,11,11,11,11,12, + 4,4,4,4,4,4,4,54,54,73, + 73,5,5,5,5,5,5,5,5,5, + 5,5,6,6,7,7,7,7,8,8, + 8,10,10,10,11,11,11,11,11,12, 12,12,13,13,14,14,15,15,16,16, 17,17,18,18,19,19,19,19,19,19, - 19,19,19,19,19,19,98,31,28,87, - 87,74,74,45,99,99,99,99,99,99, - 99,100,100,100,101,101,106,106,107,107, - 102,102,103,103,103,109,109,104,104,104, - 104,105,105,105,105,105,108,108,21,21, - 21,21,21,33,33,33,80,80,75,75, - 75,75,76,76,76,77,77,77,78,78, - 78,79,79,79,110,110,111,111,112,34, - 36,36,36,36,36,55,57,57,57,57, - 57,57,57,57,57,57,57,57,68,68, - 32,32,65,65,65,65,66,66,66,58, - 58,59,59,51,51,51,27,88,88,81, - 82,82,82,67,67,83,83,84,84,69, - 69,23,24,24,24,35,50,50,37,37, - 37,37,40,40,42,38,38,39,43,43, - 113,113,41,114,114,89,89,29,29,29, - 29,29,29,29,29,29,85,52,52,52, - 52,61,61,60,60,60,62,62,53,53, - 90,90,44,44,63,63,63,46,46,46, - 47,48,48,48,49,49,49,49,56,56, - 56,64,91,73,73,73,73,70,92,93, - 93,94,94,95,95,115,115,116,116,117, - 117,117,117,119,119,118,118,118,120,120, - 86,86,1,1,1,5,5,5,5,5, - 5,23,23,25,25,26,26,96,96,96, - 99,121,121,121,121,121,121,121,104,104, - 104,104,104,104,104,104,104,104,104,104, - 104,104,104,104,104,104,104,104,104,104, - 104,104,122,122,1,14,19,15,395,640, - 44,597,433,420,437,434,534,520,580,579, - 604,583,74,91,282,654,479,134,211,321, - 322,1720,1556,277,62,1141,479,136,133,135, - 159,823,14,19,15,395,42,44,20,433, - 420,437,434,534,520,580,579,1470,239,138, - 250,165,216,1611,219,1728,221,222,227,142, - 145,148,151,78,128,1044,1600,288,394,1191, - 1396,1414,1441,1456,587,730,14,19,15,395, - 640,44,492,433,420,437,434,534,520,580, - 579,604,583,74,278,792,14,19,15,395, - 640,44,492,433,420,437,434,534,520,580, - 579,604,583,74,278,823,14,19,15,395, - 42,44,708,433,420,437,434,534,520,580, - 1532,283,823,14,19,15,395,42,44,1674, - 433,420,437,434,1301,284,597,597,1418,712, - 352,283,823,14,19,15,395,42,44,1674, - 433,420,437,1316,339,284,16,1533,1615,486, - 14,19,15,395,640,44,492,433,420,437, - 434,534,520,580,579,604,583,74,278,396, - 14,19,15,395,640,44,1677,433,420,437, - 434,534,520,580,579,604,583,74,396,33, - 52,237,341,119,1679,519,289,341,823,14, - 19,15,395,42,44,285,433,420,437,434, - 534,520,1425,1674,978,134,211,321,322,286, - 134,211,321,322,290,136,133,135,159,479, - 137,133,135,159,823,14,19,15,395,42, - 44,603,433,420,437,1423,603,138,1799,165, - 51,241,139,1776,165,1033,313,142,145,148, - 151,275,143,146,149,152,229,1191,1396,1414, - 1441,1456,587,761,14,19,15,395,640,44, - 597,433,420,437,434,534,520,580,579,604, - 583,74,278,823,14,19,15,395,640,44, - 1565,433,420,437,434,534,520,580,579,604, - 583,74,91,823,14,19,15,395,42,44, - 163,433,420,437,434,534,1428,1281,23,287, - 823,14,19,15,395,42,39,1674,1003,14, - 19,15,395,640,44,1727,433,420,437,434, - 534,520,580,579,604,583,74,619,479,597, - 612,14,19,15,395,42,44,394,433,420, - 437,434,534,520,580,579,604,583,93,1601, - 327,1072,329,302,441,14,19,15,395,640, - 44,194,433,420,437,434,534,520,580,579, - 604,583,74,1250,343,748,238,823,14,19, - 15,395,640,44,597,433,420,437,434,534, - 520,580,579,604,583,74,92,823,14,19, - 15,395,640,44,1607,433,420,437,434,534, - 520,580,579,604,583,74,85,823,14,19, - 15,395,640,44,597,433,420,437,434,534, - 520,580,579,604,583,74,84,823,14,19, - 15,395,640,44,1617,433,420,437,434,534, - 520,580,579,604,583,74,83,823,14,19, - 15,395,640,44,597,433,420,437,434,534, - 520,580,579,604,583,74,82,823,14,19, - 15,395,640,44,21,433,420,437,434,534, - 520,580,579,604,583,74,81,823,14,19, - 15,395,640,44,597,433,420,437,434,534, - 520,580,579,604,583,74,80,823,14,19, - 15,395,640,44,270,433,420,437,434,534, - 520,580,579,604,583,74,79,823,14,19, - 15,395,640,44,597,433,420,437,434,534, - 520,580,579,604,583,74,78,823,14,19, - 15,395,640,44,276,433,420,437,434,534, - 520,580,579,604,583,74,77,823,14,19, - 15,395,640,44,597,433,420,437,434,534, - 520,580,579,604,583,74,76,823,14,19, - 15,395,640,44,277,433,420,437,434,534, - 520,580,579,604,583,74,75,823,14,19, - 15,395,640,44,597,433,420,437,434,534, - 520,580,579,604,583,74,1411,823,14,19, - 15,395,640,44,223,433,420,437,434,534, - 520,580,579,604,583,74,1424,823,14,19, - 15,395,42,44,334,433,420,437,434,534, - 520,580,579,604,583,93,823,14,19,15, - 395,42,44,373,433,420,437,434,534,520, - 580,579,604,583,93,823,14,19,15,395, - 42,44,1509,433,420,437,434,534,520,580, - 579,604,583,93,823,14,19,15,395,42, - 44,210,433,420,437,434,534,520,580,579, - 604,583,93,823,14,19,15,395,42,44, - 1610,433,420,437,434,534,520,580,579,604, - 583,93,823,14,19,15,395,42,44,201, - 433,420,437,434,534,520,580,579,604,583, - 73,517,543,482,662,313,85,541,202,1315, - 823,14,19,15,395,42,44,496,433,420, - 1084,142,31,199,134,211,321,322,666,445, - 532,271,620,272,141,133,135,159,1660,216, - 1611,219,1728,221,222,227,273,79,264,1207, - 1194,269,260,1666,1734,1671,140,63,165,31, - 479,271,292,600,1630,261,1733,274,604,217, - 1611,219,1728,221,222,227,271,22,266,1207, - 1194,269,240,291,216,1611,219,1728,221,222, - 227,369,258,264,1207,1194,269,1044,1556,853, - 14,19,15,395,319,369,252,211,321,322, - 924,453,1556,823,14,19,15,395,42,44, - 31,433,420,1103,323,282,188,1742,216,1611, - 219,1728,221,222,227,883,14,19,15,395, - 317,1684,216,1611,219,1728,221,222,227,913, - 14,19,15,395,315,1684,823,14,19,15, - 395,42,44,31,433,420,1193,471,234,31, - 1603,31,197,199,683,1747,1758,1222,1768,1599, - 943,14,19,15,395,40,198,199,823,14, - 19,15,395,42,44,89,433,420,1197,823, - 14,19,15,395,42,44,1079,433,1253,823, - 14,19,15,395,42,44,449,433,1258,31, - 31,479,645,1683,1111,645,1766,1729,742,134, - 211,321,322,245,479,408,274,31,1039,144, - 133,135,159,242,465,271,532,134,211,321, - 322,1118,183,645,884,182,243,147,133,135, - 159,6,264,1207,1194,269,1150,823,14,19, - 15,395,42,38,134,211,321,322,294,924, - 981,577,1443,26,150,133,135,159,384,134, - 211,321,322,973,14,19,15,395,33,153, - 133,135,159,823,14,19,15,395,42,44, - 271,773,823,14,19,15,395,42,44,479, - 794,973,14,19,15,395,32,264,1207,1194, - 269,567,14,19,15,395,42,35,348,58, - 473,291,295,546,263,567,14,19,15,395, - 42,35,837,244,567,14,19,15,395,42, - 35,252,211,321,322,837,282,328,823,14, - 19,15,395,42,37,770,245,217,1611,219, - 1728,221,222,227,823,14,19,15,395,42, - 36,823,14,19,15,395,42,35,823,14, - 19,15,395,42,34,31,1748,31,835,176, - 665,771,364,519,364,582,31,774,1530,1777, - 479,833,532,364,31,742,196,775,196,1192, - 279,683,1471,87,1471,87,516,196,516,271, - 177,31,293,1471,87,1676,31,516,364,371, - 226,517,87,364,1676,386,266,1207,1194,269, - 670,257,196,251,211,321,322,196,1471,87, - 802,31,516,1471,87,597,806,516,364,1804, - 193,828,207,494,831,749,290,177,863,536, - 804,208,196,644,450,228,1542,1678,1471,87, - 582,1528,516,823,14,19,15,395,42,47, - 251,211,321,322,1192,844,823,14,19,15, - 395,42,46,823,14,19,15,395,42,45, - 699,14,19,15,395,42,43,177,707,645, - 642,645,1883,56,644,1600,256,645,1273,1883, - 582,582,113,964,428,1673,1883,177,645,582, - 251,211,321,322,196,1192,1883,225,170,280, - 710,185,774,196,232,582,519,184,284,710, - 251,211,321,322,657,582,307,645,203,196, - 1883,683,1883,582,191,710,1222,256,1273,196, - 1883,1412,1803,191,964,710,1673,1192,1676,651, - 1415,1803,87,227,645,310,582,204,1818,191, - 582,1883,1037,1883,1883,1883,1731,1803,426,191, - 1192,1883,1883,1883,196,31,1737,1803,1883,256, - 710,1883,683,1883,1529,207,1665,1883,1673,1883, - 1883,252,211,321,322,1883,1883,1883,1883,1555, - 1678,1883,256,87,192,1883,1451,1883,1883,1004, - 393,1673,1883,1883,1883,1744,1883,0,324,750, - 0,17,179,0,18,178,0,1,2107,0, - 1,2118,0 + 19,19,19,19,19,19,104,30,27,90, + 90,75,75,46,105,105,105,105,105,105, + 105,106,106,106,107,107,112,112,113,113, + 108,108,109,109,109,115,115,110,110,110, + 110,111,111,111,111,111,114,114,26,26, + 26,26,26,32,32,32,81,81,76,76, + 76,76,77,77,77,78,78,78,79,79, + 79,80,80,80,116,116,117,117,118,33, + 35,35,35,35,35,55,57,57,57,57, + 57,57,57,57,57,57,57,57,66,66, + 28,28,63,63,91,92,67,67,64,64, + 64,68,82,82,83,83,69,69,69,31, + 93,93,84,85,85,85,65,65,94,86, + 86,87,87,70,70,22,23,23,23,34, + 51,51,38,38,38,38,41,41,43,39, + 39,40,44,44,119,119,42,120,120,95, + 95,29,29,29,29,29,29,29,29,29, + 88,52,52,52,52,36,59,59,58,58, + 58,60,60,53,53,96,96,45,45,61, + 61,61,47,47,47,48,49,49,49,50, + 50,50,50,56,56,56,62,97,74,74, + 74,74,71,98,99,99,100,100,101,101, + 121,121,122,122,123,123,123,123,125,125, + 124,124,124,126,126,89,89,1,1,1, + 5,5,5,5,5,5,22,22,24,24, + 25,25,102,102,102,105,127,127,127,127, + 127,127,127,110,110,110,110,110,110,110, + 110,110,110,110,110,110,110,110,110,110, + 110,110,110,110,110,110,110,128,128,1, + 14,19,15,390,624,44,428,425,472,431, + 429,509,508,512,510,622,606,74,91,39, + 65,134,215,326,327,680,14,19,15,390, + 324,136,133,135,159,649,14,19,15,390, + 42,44,428,425,152,431,429,509,508,512, + 510,622,606,73,138,66,165,243,59,64, + 551,142,142,145,148,151,1305,649,14,19, + 15,390,42,39,389,1171,603,1312,1502,1523, + 1276,556,14,19,15,390,624,44,428,425, + 430,431,429,509,508,512,510,622,606,74, + 283,618,14,19,15,390,624,44,428,425, + 430,431,429,509,508,512,510,622,606,74, + 283,649,14,19,15,390,42,44,428,425, + 23,431,429,509,508,512,1563,288,32,171, + 333,284,61,1693,649,14,19,15,390,42, + 44,728,289,884,379,587,132,288,1737,1577, + 294,243,1774,1693,649,14,19,15,390,42, + 44,729,289,280,1712,1705,347,14,19,15, + 390,624,44,428,425,430,431,429,509,508, + 512,510,622,606,74,283,225,835,14,19, + 15,390,624,44,428,425,1722,431,429,509, + 508,512,510,622,606,74,1198,691,134,215, + 326,327,711,14,19,15,390,322,136,133, + 135,159,290,933,22,151,176,663,1693,649, + 14,19,15,390,42,38,1314,291,1734,379, + 379,138,539,165,954,134,215,326,327,142, + 145,148,151,1305,277,144,133,135,159,16, + 1592,1591,1171,603,1312,1502,1523,1276,281,14, + 19,15,390,624,44,428,425,1708,431,429, + 509,508,512,510,622,606,74,755,866,241, + 587,14,19,15,390,624,44,428,425,197, + 431,429,509,508,512,510,622,606,74,283, + 649,14,19,15,390,624,44,428,425,379, + 431,429,509,508,512,510,622,606,74,91, + 649,14,19,15,390,42,44,428,425,1608, + 431,429,509,508,1243,76,292,905,81,115, + 341,235,1693,461,14,19,15,390,42,44, + 428,425,400,431,429,509,508,512,510,622, + 606,93,20,526,334,235,314,14,19,15, + 390,624,44,428,425,389,431,429,509,508, + 512,510,622,606,74,1467,243,242,480,1307, + 649,14,19,15,390,624,44,428,425,379, + 431,429,509,508,512,510,622,606,74,92, + 649,14,19,15,390,624,44,428,425,1649, + 431,429,509,508,512,510,622,606,74,85, + 649,14,19,15,390,624,44,428,425,379, + 431,429,509,508,512,510,622,606,74,84, + 649,14,19,15,390,624,44,428,425,1653, + 431,429,509,508,512,510,622,606,74,83, + 649,14,19,15,390,624,44,428,425,379, + 431,429,509,508,512,510,622,606,74,82, + 649,14,19,15,390,624,44,428,425,1663, + 431,429,509,508,512,510,622,606,74,81, + 649,14,19,15,390,624,44,428,425,379, + 431,429,509,508,512,510,622,606,74,80, + 649,14,19,15,390,624,44,428,425,21, + 431,429,509,508,512,510,622,606,74,79, + 649,14,19,15,390,624,44,428,425,379, + 431,429,509,508,512,510,622,606,74,78, + 649,14,19,15,390,624,44,428,425,275, + 431,429,509,508,512,510,622,606,74,77, + 649,14,19,15,390,624,44,428,425,379, + 431,429,509,508,512,510,622,606,74,76, + 649,14,19,15,390,624,44,428,425,281, + 431,429,509,508,512,510,622,606,74,75, + 649,14,19,15,390,624,44,428,425,379, + 431,429,509,508,512,510,622,606,74,1682, + 649,14,19,15,390,624,44,428,425,282, + 431,429,509,508,512,510,622,606,74,1683, + 649,14,19,15,390,42,44,428,425,511, + 431,429,509,508,512,510,622,606,93,649, + 14,19,15,390,42,44,428,425,80,431, + 429,509,508,512,510,622,606,93,649,14, + 19,15,390,42,37,249,1804,649,14,19, + 15,390,42,44,428,1088,649,14,19,15, + 390,42,44,428,425,1837,431,429,509,508, + 512,510,622,606,93,649,14,19,15,390, + 42,44,428,425,193,431,429,509,508,512, + 510,622,606,93,649,14,19,15,390,42, + 36,6,214,649,14,19,15,390,42,35, + 451,378,649,14,19,15,390,42,44,428, + 425,204,431,429,509,508,512,510,622,606, + 93,881,70,134,215,326,327,441,235,1043, + 1513,53,277,141,133,135,159,1048,649,14, + 19,15,390,42,34,385,1594,120,205,245, + 276,257,215,326,327,189,140,279,165,220, + 1322,223,1486,225,226,231,276,1675,269,1215, + 605,274,265,737,278,220,1322,223,1486,225, + 226,231,266,1692,269,1215,605,274,1329,649, + 14,19,15,390,42,44,428,425,949,431, + 429,509,508,512,510,1560,225,924,649,14, + 19,15,390,42,44,428,425,263,431,429, + 509,1303,742,14,19,15,390,320,134,215, + 326,327,441,200,328,123,276,235,137,133, + 135,159,950,1677,232,221,1322,223,1486,225, + 226,231,455,1554,271,1215,605,274,332,379, + 188,139,325,165,134,215,326,327,382,143, + 146,149,152,1305,147,133,135,159,722,227, + 232,230,220,1322,223,1486,225,226,231,1554, + 256,215,326,327,358,1751,649,14,19,15, + 390,42,44,428,425,441,431,429,1144,649, + 14,19,15,390,42,44,428,1105,220,1322, + 223,1486,225,226,231,861,725,1551,200,202, + 1197,1751,1651,1749,1338,188,20,1429,649,14, + 19,15,390,42,44,428,425,380,431,1192, + 649,14,19,15,390,42,44,428,425,1075, + 431,1217,1302,1685,201,202,649,14,19,15, + 390,42,44,428,425,212,730,649,14,19, + 15,390,42,44,428,425,441,742,649,14, + 19,15,390,42,44,428,425,235,778,649, + 14,19,15,390,42,44,428,425,674,1069, + 884,6,6,918,190,1456,473,1554,244,1727, + 1726,1720,1552,430,14,19,15,390,42,35, + 233,196,978,279,649,14,19,15,390,42, + 47,1405,276,53,248,229,220,1322,223,1486, + 225,226,231,995,134,215,326,327,705,1329, + 269,1215,605,274,150,133,135,159,773,14, + 19,15,390,40,949,134,215,326,327,1675, + 994,1051,993,6,53,153,133,135,159,1201, + 694,566,1595,550,1677,1277,221,1322,223,1486, + 225,226,231,257,215,326,327,583,1191,276, + 430,14,19,15,390,42,35,1047,1675,722, + 1675,518,487,6,993,518,1754,269,1215,605, + 274,333,1758,566,1692,261,1528,441,799,441, + 989,268,1679,430,14,19,15,390,42,35, + 1191,649,14,19,15,390,42,46,26,6, + 1675,6,285,6,249,297,6,299,369,6, + 369,6,471,1719,518,1729,1277,261,369,830, + 369,518,989,860,1679,199,87,199,87,619, + 1550,619,1550,876,6,199,87,199,87,619, + 1550,619,1550,369,524,175,620,391,295,660, + 6,182,235,235,699,894,789,518,206,369, + 199,87,1087,896,619,1550,649,14,19,15, + 390,42,45,246,247,691,199,87,382,829, + 619,1550,525,14,19,15,390,42,43,518, + 598,276,382,379,183,869,57,247,1677,169, + 256,215,326,327,908,566,566,592,566,271, + 1215,605,274,232,256,215,326,327,1749,654, + 753,227,199,1191,382,199,207,607,598,1799, + 607,804,14,19,15,390,33,1199,804,14, + 19,15,390,32,725,492,256,215,326,327, + 261,1199,373,566,690,1723,1749,1679,113,1902, + 211,1902,1902,1071,307,194,756,566,194,518, + 1191,1902,87,690,235,315,1348,1750,1644,1788, + 1020,1687,1788,1793,199,257,215,326,327,607, + 6,89,1823,192,6,296,756,261,211,690, + 1902,1902,1029,690,1679,566,414,235,1902,1902, + 1902,1902,1902,236,1589,1750,1902,87,1902,1902, + 731,87,1191,1902,1406,1902,1902,195,298,1902, + 1902,1902,1902,1902,378,1902,1902,1902,1902,1902, + 1902,1902,1902,1902,1902,1902,1902,1902,1902,262, + 1902,1902,1902,1902,909,1902,0,329,733,0, + 17,179,0,18,178,0,1,2130,0,1, + 2141,0 }; }; public final static char baseAction[] = BaseAction.baseAction; @@ -430,131 +434,125 @@ public class UPCExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, UP public interface TermCheck { public final static byte termCheck[] = {0, 0,1,2,3,4,0,6,7,8,9, - 10,11,12,13,14,15,16,17,18,19, + 10,11,12,13,14,15,16,17,18,0, 20,21,22,23,24,25,26,27,28,29, - 0,31,0,33,34,35,36,37,38,39, - 40,41,42,43,44,45,46,47,48,49, - 0,0,52,53,54,0,1,0,3,0, - 5,0,0,8,9,10,0,12,13,14, - 8,9,10,68,12,13,14,0,0,1, - 2,4,0,5,0,1,31,3,33,34, - 35,36,37,38,39,40,41,42,43,44, - 45,46,47,48,49,73,51,52,53,54, - 32,56,0,1,30,3,55,5,0,69, - 8,9,10,72,12,13,14,0,50,79, - 80,81,82,83,84,85,86,87,88,62, - 63,0,1,31,3,33,34,35,36,37, - 38,39,40,41,42,43,44,45,46,47, - 48,49,0,51,52,53,54,5,56,0, - 1,30,3,0,5,0,0,8,9,10, - 5,12,13,14,8,9,10,0,12,13, - 14,64,65,66,67,77,78,0,0,1, - 31,3,33,34,35,36,37,38,39,40, - 41,42,43,44,45,46,47,48,49,0, - 51,52,53,54,0,56,0,1,30,3, - 55,5,0,0,8,9,10,75,12,13, - 14,8,9,10,0,12,13,14,0,0, - 75,64,65,66,67,6,7,31,0,33, - 34,35,36,37,38,39,40,41,42,43, - 44,45,46,47,48,49,0,51,52,53, - 54,0,56,0,1,4,3,0,5,0, - 0,8,9,10,0,12,13,14,8,9, - 10,0,12,13,14,4,0,1,64,65, - 66,67,0,1,31,3,33,34,35,36, - 37,38,39,40,41,42,43,44,45,46, - 47,48,49,0,51,52,53,54,0,56, - 0,1,0,3,57,58,4,0,8,9, - 10,0,12,13,14,8,9,10,69,12, - 13,14,11,62,63,89,60,73,0,1, - 2,31,0,33,34,35,36,37,38,39, + 30,0,32,33,34,35,36,37,0,8, 40,41,42,43,44,45,46,47,48,49, - 57,58,52,53,54,0,1,2,3,4, - 5,6,7,0,62,63,11,0,70,71, + 50,51,0,53,54,55,0,1,0,3, + 0,5,4,0,0,0,2,11,12,0, + 14,6,7,9,10,0,1,39,3,0, + 0,25,26,27,4,6,7,68,32,33, + 34,35,36,37,19,31,40,41,42,43, + 44,45,46,47,48,49,50,51,52,53, + 54,55,0,1,0,3,60,5,4,0, + 62,63,0,11,12,61,14,64,65,66, + 67,0,72,64,65,66,67,25,26,27, + 76,0,62,63,32,33,34,35,36,37, + 0,0,40,41,42,43,44,45,46,47, + 48,49,50,51,52,53,54,55,0,1, + 0,3,60,5,0,0,62,63,4,11, + 12,31,14,64,65,66,67,0,1,0, + 3,0,0,25,26,27,5,56,57,0, + 32,33,34,35,36,37,19,8,40,41, + 42,43,44,45,46,47,48,49,50,51, + 52,53,54,55,0,1,0,3,60,38, + 39,0,1,2,0,11,12,0,14,5, + 70,71,0,1,0,3,0,1,0,25, + 26,27,77,78,6,7,32,33,34,35, + 36,37,70,71,40,41,42,43,44,45, + 46,47,48,49,50,51,0,53,54,55, + 0,1,2,3,4,5,6,7,8,9, + 10,0,58,13,68,15,16,17,18,68, + 20,21,22,23,24,59,0,31,28,29, + 30,5,32,0,1,2,3,4,5,6, + 7,8,9,10,0,1,13,3,15,16, + 17,18,0,20,21,22,23,24,58,0, + 0,28,29,30,38,32,0,1,2,3, + 4,5,6,7,8,9,10,0,1,13, + 3,15,16,17,18,19,20,21,22,23, + 24,58,0,1,28,29,30,0,0,0, + 1,0,3,5,0,0,2,0,11,12, + 0,14,11,12,4,14,56,57,52,0, + 0,0,25,26,27,73,25,26,27,32, + 33,34,35,36,37,31,38,40,41,42, + 43,44,45,46,47,48,49,50,51,0, + 1,2,3,4,5,6,7,8,9,10, + 0,1,13,3,15,16,17,18,0,20, + 21,22,23,24,0,56,57,28,29,30, + 0,1,2,3,4,5,6,7,8,9, + 10,0,0,13,2,15,16,17,18,0, + 20,21,22,23,24,31,0,58,28,29, + 30,0,1,2,3,4,0,6,7,8, + 9,10,0,31,13,19,15,16,17,18, + 0,20,21,22,23,24,0,0,58,28, + 29,30,5,0,0,1,2,3,4,0, + 6,7,8,9,10,56,57,13,0,15, + 16,17,18,19,20,21,22,23,24,0, + 0,60,28,29,30,0,1,2,3,4, + 89,6,7,8,9,10,56,57,13,52, 15,16,17,18,19,20,21,22,23,24, - 25,26,27,28,29,0,31,0,0,57, - 58,0,5,8,9,10,68,12,13,14, - 0,1,2,3,4,5,6,7,0,0, - 2,11,0,5,59,15,16,17,18,19, - 20,21,22,23,24,25,26,27,28,29, - 0,31,0,1,2,5,4,50,0,72, - 32,0,55,5,0,0,1,2,3,4, - 5,6,7,0,0,0,11,2,50,59, - 15,16,17,18,19,20,21,22,23,24, - 25,26,27,28,29,30,0,68,0,1, - 50,3,70,71,8,9,10,32,12,13, - 14,0,1,0,3,0,51,59,57,58, - 0,0,0,1,2,0,4,31,55,33, - 34,35,36,37,38,39,40,41,42,43, - 44,45,46,47,48,49,0,1,2,3, - 4,5,6,7,32,30,0,11,2,0, - 4,15,16,17,18,19,20,21,22,23, - 24,25,26,27,28,29,0,57,58,0, - 0,5,0,0,69,6,7,5,32,6, - 7,0,1,2,3,4,5,6,7,0, - 1,2,11,4,0,59,15,16,17,18, - 19,20,21,22,23,24,25,26,27,28, - 29,0,1,0,0,0,50,4,0,5, - 0,32,50,0,1,2,0,1,2,3, - 4,0,6,7,0,0,2,11,4,0, - 59,15,16,17,18,19,20,21,22,23, - 24,25,26,27,28,29,0,0,1,0, - 3,5,0,32,0,51,32,32,0,1, - 2,3,4,60,6,7,0,0,2,11, - 60,0,56,15,16,17,18,19,20,21, - 22,23,24,25,26,27,28,29,30,0, - 1,2,3,4,0,6,7,51,32,32, - 11,0,0,32,15,16,17,18,19,20, - 21,22,23,24,25,26,27,28,29,30, - 0,1,2,3,4,0,6,7,61,0, - 0,11,61,0,0,15,16,17,18,19, - 20,21,22,23,24,25,26,27,28,29, - 30,0,1,2,3,4,55,6,7,30, - 30,0,11,30,30,0,15,16,17,18, - 19,20,21,22,23,24,25,26,27,28, + 0,31,0,28,29,30,0,1,2,3, + 4,0,6,7,8,9,10,0,1,13, + 3,15,16,17,18,19,20,21,22,23, + 24,61,74,31,28,29,30,0,1,2, + 3,4,73,6,7,8,9,10,0,1, + 13,3,15,16,17,18,19,20,21,22, + 23,24,0,61,0,28,29,30,0,1, + 2,3,4,0,6,7,8,9,10,0, + 69,13,0,15,16,17,18,5,20,21, + 22,23,24,0,1,2,28,29,30,0, + 1,2,3,4,0,6,7,8,9,10, + 0,0,13,0,15,16,17,18,39,20, + 21,22,23,24,0,1,2,28,29,30, + 0,1,2,3,4,0,6,7,8,9, + 10,0,69,13,0,15,16,17,18,39, + 20,21,22,23,24,0,0,75,28,29, + 30,0,1,2,3,4,0,6,7,8, + 9,10,0,0,13,0,15,16,17,18, + 39,20,21,22,23,24,0,74,0,28, 29,30,0,1,2,3,4,0,6,7, - 0,30,0,11,0,30,0,15,16,17, - 18,19,20,21,22,23,24,25,26,27, - 28,29,0,1,2,3,4,30,6,7, - 30,0,0,11,32,0,0,15,16,17, - 18,19,20,21,22,23,24,25,26,27, - 28,29,0,1,2,3,4,0,6,7, - 0,55,0,11,60,0,0,15,16,17, - 18,19,20,21,22,23,24,25,26,27, - 28,29,0,1,2,3,4,55,6,7, - 0,0,0,11,0,0,0,15,16,17, - 18,19,20,21,22,23,24,25,26,27, - 28,29,0,1,2,3,4,0,6,7, - 0,0,0,11,0,0,0,15,16,17, - 18,19,20,21,22,23,24,25,26,27, - 28,29,0,1,2,3,4,0,6,7, - 0,0,0,11,0,0,0,15,16,17, - 18,19,20,21,22,23,24,25,26,27, - 28,29,0,1,2,3,4,0,6,7, - 0,0,0,11,0,0,0,15,16,17, - 18,19,20,21,22,23,24,25,26,27, - 28,29,0,0,2,0,4,5,0,0, - 8,9,10,0,12,13,14,0,0,11, - 0,74,0,0,74,0,0,0,0,0, - 0,0,0,31,32,33,34,35,36,37, - 0,0,0,2,0,4,5,0,0,8, - 9,10,50,12,13,14,8,9,10,0, - 12,13,14,0,0,0,0,0,0,0, - 0,0,31,32,33,34,35,36,37,31, - 0,33,34,35,36,37,0,0,8,9, - 10,50,12,13,14,8,9,10,0,12, - 13,14,0,0,0,0,0,0,0,0, - 0,31,2,33,34,35,36,37,31,0, - 33,34,35,36,37,15,16,8,9,10, - 0,12,13,14,0,0,0,0,0,0, - 0,0,32,0,0,0,0,0,0,0, - 31,0,33,34,35,36,37,0,0,0, + 8,9,10,59,0,13,0,15,16,17, + 18,39,20,21,22,23,24,0,0,0, + 28,29,30,0,1,2,3,4,72,6, + 7,8,9,10,59,0,13,19,15,16, + 17,18,0,20,21,22,23,24,0,0, + 0,28,29,30,0,1,2,3,4,0, + 6,7,8,9,10,0,0,13,19,15, + 16,17,18,0,20,21,22,23,24,0, + 0,0,28,29,30,0,5,2,0,4, + 5,11,12,0,14,0,11,12,19,14, + 0,1,2,0,4,25,26,27,5,0, + 25,26,27,0,19,0,31,32,33,34, + 35,36,37,38,0,0,2,0,4,5, + 0,31,19,52,19,11,12,0,14,2, + 0,38,5,0,1,2,19,4,0,25, + 26,27,0,0,0,31,32,33,34,35, + 36,37,38,11,12,0,14,19,31,0, + 0,0,19,0,31,38,0,25,26,27, + 11,12,0,14,32,33,34,35,36,37, + 19,0,0,0,25,26,27,0,0,0, + 0,32,33,34,35,36,37,0,11,12, + 0,14,0,0,0,2,4,4,0,0, + 0,0,25,26,27,11,12,0,14,32, + 33,34,35,36,37,0,0,0,0,25, + 26,27,69,0,31,0,32,33,34,35, + 36,37,79,80,81,82,83,84,85,86, + 87,88,0,0,0,0,0,0,1,2, + 0,59,5,11,12,0,14,11,12,0, + 14,11,12,0,14,0,0,25,26,27, + 0,25,26,27,0,25,26,27,31,5, + 0,11,12,0,14,38,0,0,2,0, + 4,0,0,0,0,25,26,27,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,0,76,0,0,0, + 0,0,0,39,0,0,0,31,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,75, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0 + 0,0,0,0,0,0,0,0,0,0, + 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; @@ -562,128 +560,121 @@ public class UPCExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, UP public interface TermAction { public final static char termAction[] = {0, - 1883,645,1595,771,1581,1883,1574,1558,2095,2096, - 2097,1588,2208,1218,2209,1511,1483,1370,1893,1894, - 1895,1896,1457,720,2195,2196,2197,1339,1325,1289, - 1,2045,68,2046,2044,2098,2047,2043,2050,2055, - 2054,2052,2053,2051,2056,2057,2049,2058,2059,2060, - 42,66,1213,1211,1196,1883,1,282,1,1883, - 190,88,247,1,1,1,1883,1,1,1, - 1,1,1,1172,1,1,1,48,1,1877, - 1237,1713,1883,1888,1883,2063,1,2064,1,1, + 1902,668,1629,727,1163,1,1154,1098,1208,1768, + 1761,2118,2119,1538,2120,1912,1913,1914,1915,1902, + 609,437,2219,2220,2221,2232,1202,2233,1292,592, + 395,64,2064,2065,2063,2121,2066,2062,88,1366, + 2069,2074,2073,2071,2072,2070,2075,2076,2068,2077, + 2078,2079,255,1417,1364,1332,1902,1,48,1, + 66,193,1696,59,31,51,1794,1,1,61, + 1,534,514,1926,1927,1902,2082,780,2083,53, + 50,1,1,1,1696,534,514,405,1,1, + 1,1,1,1,1481,1820,1,1,1,1, + 1,1,1,1,1,1,1,1,193,1, + 1,1,1902,1,49,1,2100,192,1696,60, + 1621,1504,184,1,1,531,1,1469,1458,1447, + 1436,185,1278,1469,1458,1447,1436,1,1,1, + 427,54,1621,1504,1,1,1,1,1,1, + 273,287,1,1,1,1,1,1,1,1, + 1,1,1,1,192,1,1,1,1902,1, + 62,1,2100,193,1902,72,1621,1504,1395,1, + 1,648,1,1469,1458,1447,1436,1902,2082,1902, + 2083,1902,63,1,1,1,1907,1107,1379,65, + 1,1,1,1,1,1,1482,1366,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,588,190,1,1,1, - 559,2078,1883,1,1249,1,797,190,72,1017, - 1,1,1,703,1,1,1,59,1887,997, - 977,957,937,917,877,897,857,837,817,1706, - 1693,1883,2063,1,2064,1,1,1,1,1, - 1,1,1,1,1,1,1,1,1,1, - 1,1,1,190,1,1,1,1892,2078,1883, - 1,1310,1,1883,190,1883,1883,1,1,1, - 1892,1,1,1,2095,2096,2097,61,2208,1218, - 2209,1378,1346,1303,1200,401,1825,1883,1883,2063, - 1,2064,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,1,1,1,1883, - 190,1,1,1,1883,2078,1883,1,1353,1, - 1295,189,1883,248,1,1,1,1891,1,1, - 1,1,1,1,60,1,1,1,1883,51, - 1891,1378,1346,1303,1200,1502,1493,1,1883,1, - 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,1883,189,1,1, - 1,1883,2078,1883,1,1247,1,54,190,209, - 246,1,1,1,69,1,1,1,2095,2096, - 2097,50,2208,1218,2209,1713,1,1880,1378,1346, - 1303,1200,1883,1912,1,1913,1,1,1,1, - 1,1,1,1,1,1,1,1,1,1, - 1,1,1,58,190,1,1,1,62,2078, - 1883,2062,49,2061,1389,1399,1713,249,2095,2096, - 2097,64,2208,1218,2209,2095,2096,2097,1096,2208, - 1218,2209,502,1706,1693,1867,2138,588,1,2107, - 385,2045,57,2046,2044,2098,2047,2043,2050,2055, - 2054,2052,2053,2051,2056,2057,2049,2058,2059,2060, - 1389,1399,1213,1211,1196,1,1900,1595,1901,1521, - 1886,1574,1558,1883,1706,1693,1588,67,624,522, - 1511,1483,1370,1893,1894,1895,1896,1457,720,2195, - 2196,2197,1339,1325,1289,250,728,1883,1883,1389, - 1399,1883,1888,2095,2096,2097,1134,2208,1218,2209, - 1883,1900,1595,1901,1544,1886,1574,1558,1,200, - 1406,1588,63,1888,1885,1511,1483,1370,1893,1894, - 1895,1896,1457,720,2195,2196,2197,1339,1325,1289, - 1,1057,1883,2107,385,90,1358,1887,1883,703, - 559,56,1730,1886,1883,1,1900,1595,1901,1581, - 27,1574,1558,253,1883,267,1588,631,1887,1885, - 1511,1483,1370,1893,1894,1895,1896,1457,720,2195, - 2196,2197,1339,1325,1289,2933,128,1153,206,2063, - 90,2064,624,522,2095,2096,2097,559,2208,1218, - 2209,1883,2063,1883,2064,1883,27,1885,1389,1399, - 55,1883,259,2107,1237,320,1,2045,1598,2046, - 2044,2098,2047,2043,2050,2055,2054,2052,2053,2051, - 2056,2057,2049,2058,2059,2060,1883,1900,1595,1901, - 1581,1886,1574,1558,559,1212,262,1588,1406,1883, - 1,1511,1483,1370,1893,1894,1895,1896,1457,720, - 2195,2196,2197,1339,1325,1289,1883,1389,1399,53, - 1883,1888,1,52,663,1502,1493,1888,559,1502, - 1493,1883,1900,1595,1901,1535,1886,1574,1558,265, - 2107,1237,1588,1358,1883,1885,1511,1483,1370,1893, - 1894,1895,1896,1457,720,2195,2196,2197,1339,1325, - 1289,1883,2119,1,1883,1883,1887,1247,1883,1890, - 1,559,1887,1,2107,385,1883,1,1,1, - 1,268,1,1,265,324,1406,1,1358,1883, - 1885,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,281,205,1612,1883, - 1612,1410,1883,559,1883,1889,559,1868,1883,1900, - 1595,1901,1581,2138,1574,1558,220,1883,636,1588, - 2138,288,2194,1511,1483,1370,1893,1894,1895,1896, - 1457,720,2195,2196,2197,1339,1325,1289,1212,1, - 1900,1595,1901,1581,1883,1574,1558,1410,559,1077, - 1588,28,1883,1115,1511,1483,1370,1893,1894,1895, - 1896,1457,720,2195,2196,2197,1339,1325,1289,2933, - 1883,1900,1595,1901,1581,1883,1574,1558,1220,318, - 316,1588,1436,41,1883,1511,1483,1370,1893,1894, - 1895,1896,1457,720,2195,2196,2197,1339,1325,1289, - 2933,1,1900,1595,1901,1581,539,1574,1558,1212, - 1212,187,1588,1212,1212,186,1511,1483,1370,1893, - 1894,1895,1896,1457,720,2195,2196,2197,1339,1325, - 1289,2933,1883,1900,1595,1901,1581,188,1574,1558, - 1883,1359,218,1588,1,1361,28,1511,1483,1370, - 1893,1894,1895,1896,1457,720,2195,2196,2197,1339, - 1325,1289,1883,1900,1597,1901,1581,1409,1574,1558, - 1427,1883,205,1588,559,1883,1883,1511,1483,1370, - 1893,1894,1895,1896,1457,720,2195,2196,2197,1339, - 1325,1289,1883,1900,1606,1901,1581,1883,1574,1558, - 1883,1910,1883,1588,2137,1883,1883,1511,1483,1370, - 1893,1894,1895,1896,1457,720,2195,2196,2197,1339, - 1325,1289,1883,1900,1631,1901,1581,2934,1574,1558, - 1883,1883,1883,1588,1883,1883,1883,1511,1483,1370, - 1893,1894,1895,1896,1457,720,2195,2196,2197,1339, - 1325,1289,1883,1900,1636,1901,1581,1883,1574,1558, - 1883,1883,1883,1588,1883,1883,1883,1511,1483,1370, - 1893,1894,1895,1896,1457,720,2195,2196,2197,1339, - 1325,1289,1883,1900,1661,1901,1581,70,1574,1558, - 71,1883,1883,1588,1883,1883,1883,1511,1483,1370, - 1893,1894,1895,1896,1457,720,2195,2196,2197,1339, - 1325,1289,1,1900,1595,1901,1581,1883,1574,1558, - 1883,1883,1883,1588,1883,1883,1883,1511,1483,1370, - 1893,1894,1895,1896,1457,720,2195,2196,2197,1339, - 1325,1289,17,1883,1871,1883,1871,1871,65,1883, - 179,179,179,1883,179,179,179,1883,1883,502, - 1883,485,1883,1883,485,1883,1883,1883,1883,1883, - 1883,1883,1883,179,1871,179,179,179,179,179, - 1883,18,1883,1874,1883,1874,1874,1883,129,178, - 178,178,1871,178,178,178,2095,2096,2097,1883, - 2208,1218,2209,1883,1883,1883,1883,1883,1883,1883, - 1883,1883,178,1874,178,178,178,178,178,2045, - 130,2046,2044,2098,2047,2043,1883,131,2095,2096, - 2097,1874,2208,1218,2209,2095,2096,2097,1883,2208, - 1218,2209,1883,1883,1883,1883,1883,1883,1883,1883, - 31,2045,1357,2046,2044,2098,2047,2043,2045,132, - 2046,2044,2098,2047,2043,1907,1908,2095,2096,2097, - 1883,2208,1218,2209,1883,1883,1883,1883,1883,1883, - 1883,1883,1614,1883,1883,1883,1883,1883,1883,1883, - 2045,1883,2046,2044,2098,2047,2043,1883,1883,1883, - 1883,1883,1883,1883,1883,1883,1883,1883,1883,1883, - 1883,1195,1883,1883,1883,1883,1883,1883,1883,1883, - 1883,1883,1883,1883,1883,1883,646 + 193,1,1,1,1902,2081,203,2080,2100,1906, + 1782,1,2130,1478,1902,2118,2119,1902,2120,1905, + 1420,1408,1902,1931,1902,1932,1,1899,52,2232, + 1202,2233,1259,1824,534,514,2064,2065,2063,2121, + 2066,2062,1420,1408,2069,2074,2073,2071,2072,2070, + 2075,2076,2068,2077,2078,2079,329,1417,1364,1332, + 1,1919,1629,1920,1493,1905,1154,1098,1208,1768, + 1761,1902,1904,1538,1172,1912,1913,1914,1915,1135, + 609,437,2219,2220,2221,2162,1,1887,1292,592, + 395,90,567,1902,1919,1629,1920,1613,1905,1154, + 1098,1208,1768,1761,187,3199,1538,3199,1912,1913, + 1914,1915,68,609,437,2219,2220,2221,1904,1902, + 58,1292,592,395,90,1040,1,1919,1629,1920, + 1163,27,1154,1098,1208,1768,1761,186,3204,1538, + 3204,1912,1913,1914,1915,3132,609,437,2219,2220, + 2221,1904,1902,2142,1292,592,395,128,1902,208, + 3222,1902,3222,1907,272,1902,523,1902,2118,2119, + 1902,2120,2118,2119,1587,2120,1107,1379,27,57, + 1902,1902,2232,1202,2233,710,2232,1202,2233,2064, + 2065,2063,2121,2066,2062,648,1906,2069,2074,2073, + 2071,2072,2070,2075,2076,2068,2077,2078,2079,1902, + 1919,1629,1920,1163,1905,1154,1098,1208,1768,1761, + 1902,2082,1538,2083,1912,1913,1914,1915,1902,609, + 437,2219,2220,2221,222,1107,1379,1292,592,395, + 1902,1919,1629,1920,1580,1905,1154,1098,1208,1768, + 1761,1902,224,1538,1480,1912,1913,1914,1915,56, + 609,437,2219,2220,2221,648,325,1904,1292,592, + 395,1902,1,1,1,1,1902,1,1,1, + 1,1,1902,648,1,1161,1,1,1,1, + 55,1,1,1,1,1,1902,1902,1904,1, + 1,1,1909,1902,1902,1919,1629,1920,1163,1902, + 1154,1098,1208,1768,1761,1107,1379,1538,70,1912, + 1913,1914,1915,1161,609,437,2219,2220,2221,69, + 1902,2218,1292,592,395,1,1919,1629,1920,1163, + 1886,1154,1098,1208,1768,1761,1107,1379,1538,1908, + 1912,1913,1914,1915,3132,609,437,2219,2220,2221, + 1902,1060,293,1292,592,395,1902,1919,1629,1920, + 1163,1902,1154,1098,1208,1768,1761,210,2082,1538, + 2083,1912,1913,1914,1915,3132,609,437,2219,2220, + 2221,1607,491,1079,1292,592,395,1,1919,1629, + 1920,1163,710,1154,1098,1208,1768,1761,209,1375, + 1538,1375,1912,1913,1914,1915,3132,609,437,2219, + 2220,2221,1902,1609,1902,1292,592,395,1902,1919, + 1629,1920,1163,213,1154,1098,1208,1768,1761,258, + 670,1538,1,1912,1913,1914,1915,1911,609,437, + 2219,2220,2221,1,2130,1478,1292,592,395,1902, + 1919,1631,1920,1163,1902,1154,1098,1208,1768,1761, + 28,1902,1538,71,1912,1913,1914,1915,1826,609, + 437,2219,2220,2221,255,2130,1478,1292,592,395, + 1902,1919,1639,1920,1163,1902,1154,1098,1208,1768, + 1761,28,1116,1538,1,1912,1913,1914,1915,546, + 609,437,2219,2220,2221,1902,67,1910,1292,592, + 395,1902,1919,1641,1920,1163,1902,1154,1098,1208, + 1768,1761,209,1902,1538,1,1912,1913,1914,1915, + 1929,609,437,2219,2220,2221,1902,491,1902,1292, + 592,395,1902,1919,1664,1920,1163,1902,1154,1098, + 1208,1768,1761,2162,1902,1538,1902,1912,1913,1914, + 1915,2899,609,437,2219,2220,2221,1902,323,1902, + 1292,592,395,1902,1919,1680,1920,1163,1278,1154, + 1098,1208,1768,1761,2161,1902,1538,1161,1912,1913, + 1914,1915,1902,609,437,2219,2220,2221,1902,321, + 1902,1292,592,395,1,1919,1629,1920,1163,1902, + 1154,1098,1208,1768,1761,1902,1902,1538,1161,1912, + 1913,1914,1915,1902,609,437,2219,2220,2221,41, + 251,286,1292,592,395,17,1553,1890,1902,1890, + 1890,1,1,1902,1,1902,179,179,1161,179, + 264,2130,1207,1,1,1,1,1,1907,1902, + 179,179,179,1902,1161,1902,1890,179,179,179, + 179,179,179,1890,18,1902,1893,1902,1893,1893, + 1902,648,1593,1553,1633,178,178,1,178,1483, + 1902,1906,1907,270,2130,1207,1636,255,191,178, + 178,178,129,191,1902,1893,178,178,178,178, + 178,178,1893,2118,2119,1902,2120,187,648,130, + 1902,191,186,42,648,1906,1902,2232,1202,2233, + 2118,2119,1902,2120,2064,2065,2063,2121,2066,2062, + 208,1902,1902,1902,2232,1202,2233,131,1902,1902, + 1902,2064,2065,2063,2121,2066,2062,1902,2118,2119, + 1902,2120,1,267,132,1483,255,1,1902,1902, + 1902,1902,2232,1202,2233,2118,2119,1902,2120,2064, + 2065,2063,2121,2066,2062,1902,1902,1902,1902,2232, + 1202,2233,1000,1902,648,1902,2064,2065,2063,2121, + 2066,2062,980,960,940,920,900,860,880,840, + 820,800,250,1902,1902,1902,252,1,1896,1207, + 253,2162,1907,2118,2119,1902,2120,1,1,1902, + 1,2118,2119,1902,2120,1902,1902,2232,1202,2233, + 254,1,1,1,1902,2232,1202,2233,648,1911, + 1902,2118,2119,1902,2120,1906,270,1902,1483,1902, + 255,1902,1902,1902,1902,2232,1202,2233,1902,1902, + 1902,1902,1902,1902,1902,1902,1902,1902,1902,1902, + 1902,1902,1902,1350,1902,1902,1902,648,1902,1902, + 1902,1902,1902,1902,1902,1902,1902,1902,1902,1902, + 1902,1902,1902,1902,1902,1902,1902,1902,1902,1902, + 1902,1902,1902,1902,1902,1902,1902,1902,1902,1910 }; }; public final static char termAction[] = TermAction.termAction; @@ -691,29 +682,29 @@ public class UPCExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, UP public interface Asb { public final static char asb[] = {0, - 488,1,89,41,89,89,89,89,89,89, - 89,89,89,89,89,89,3,238,403,400, - 407,405,413,411,415,414,417,416,10,89, - 238,238,238,238,238,385,385,327,89,161, - 161,225,238,89,89,89,89,89,89,89, - 89,89,89,89,89,89,89,89,89,89, - 89,89,89,89,89,89,89,89,89,89, - 89,89,89,161,161,161,161,161,161,45, - 56,229,80,352,159,158,197,231,209,209, - 76,76,209,76,209,258,112,112,400,400, - 405,405,405,405,403,403,411,407,407,414, - 413,449,416,415,388,388,388,388,78,54, - 225,217,83,45,281,172,161,456,355,172, - 428,288,428,288,321,428,89,54,217,281, - 281,45,171,80,161,223,258,160,357,45, - 172,288,288,288,288,321,321,323,49,318, - 78,281,217,89,89,45,172,352,444,443, - 229,357,161,288,318,164,288,288,318,323, - 451,323,321,318,52,454,385,89,48,318, - 54,217,45,45,161,456,355,223,318,166, - 318,318,89,385,323,56,45,385,89,54, - 357,424,89,423,108,229,318,45,323,161, - 160,166,89,108,318,386,323 + 448,1,92,41,92,92,92,92,92,92, + 92,92,92,92,92,92,3,234,418,415, + 422,420,428,426,430,429,432,431,10,92, + 234,234,234,234,234,356,356,472,92,164, + 164,221,234,92,92,92,92,92,92,92, + 92,92,92,92,92,92,92,92,92,92, + 92,92,92,92,92,92,92,92,92,92, + 92,92,92,164,164,164,164,164,164,45, + 52,225,83,323,162,161,193,227,205,72, + 205,72,72,205,72,205,254,115,115,415, + 415,420,420,420,420,418,418,426,422,422, + 429,428,365,431,430,403,403,403,403,74, + 50,221,225,86,45,277,168,164,367,326, + 168,72,356,356,72,356,92,50,225,213, + 277,45,167,83,164,219,254,163,328,45, + 168,74,284,74,317,319,400,314,74,213, + 277,92,92,45,168,323,360,359,225,328, + 164,74,284,317,317,314,48,446,356,92, + 399,314,50,277,213,45,45,164,367,326, + 219,284,314,76,284,317,319,443,319,52, + 45,356,92,50,213,328,284,78,319,314, + 92,356,45,319,164,163,314,439,92,438, + 111,225,314,314,357,78,92,111,319 }; }; public final static char asb[] = Asb.asb; @@ -721,58 +712,56 @@ public class UPCExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, UP public interface Asr { public final static byte asr[] = {0, - 89,0,75,32,2,61,76,15,16,11, - 4,6,7,62,63,57,58,64,65,66, - 67,70,71,72,73,74,77,78,51,69, + 89,0,75,31,2,61,76,9,10,8, + 4,6,7,62,63,56,57,64,65,66, + 67,70,71,72,73,74,77,78,52,69, 79,80,81,82,83,85,84,86,87,88, - 68,50,89,55,59,5,0,69,32,61, - 0,5,51,32,61,15,16,11,4,6, - 7,22,23,17,27,28,29,2,18,19, - 20,21,24,25,26,1,3,30,0,59, - 5,31,8,9,10,12,13,14,18,19, - 20,21,24,25,26,3,15,16,11,6, - 7,22,23,17,27,28,29,4,2,1, - 0,9,31,37,10,36,35,34,8,33, - 12,13,14,61,76,15,16,11,6,7, - 62,63,57,58,64,65,66,67,70,71, - 72,73,74,77,78,69,79,80,81,82, - 83,84,85,86,87,88,4,2,32,55, - 50,5,0,75,5,4,1,2,68,0, - 31,59,5,15,16,11,4,6,7,22, - 23,17,27,28,29,2,1,3,18,19, - 20,21,24,25,26,0,46,38,43,41, - 42,40,39,44,45,47,48,49,68,75, - 37,34,31,33,36,35,8,9,10,12, - 13,14,55,1,5,50,2,32,4,0, - 5,68,55,59,50,75,32,17,18,19, - 20,21,2,15,16,11,4,6,7,22, - 23,24,25,26,27,28,29,3,1,52, - 53,54,46,38,43,41,42,40,39,44, - 45,47,48,49,37,34,31,33,36,35, - 8,9,10,13,12,14,0,33,38,8, - 39,52,34,40,35,41,42,36,9,43, - 44,31,53,37,54,45,46,10,47,48, - 49,1,3,12,13,14,56,5,51,0, - 1,3,5,51,55,0,5,50,17,18, - 19,20,21,1,3,2,15,16,11,4, - 6,7,22,23,24,25,26,27,28,29, - 0,4,2,32,50,5,33,38,8,39, - 52,34,40,35,41,42,36,9,43,44, - 31,53,37,54,45,46,10,47,48,49, - 12,13,14,60,3,1,0,69,79,80, - 81,82,83,84,85,86,87,88,30,4, - 62,63,6,7,58,57,64,65,66,67, - 70,71,11,72,73,74,59,50,51,89, - 77,78,68,75,5,55,0,33,8,34, - 35,36,9,31,37,10,1,4,12,13, - 14,30,2,5,55,50,75,32,68,0, - 5,55,51,69,0,33,38,8,39,52, - 34,40,35,41,42,36,9,43,44,31, - 53,37,54,45,46,10,47,48,49,1, - 3,12,13,14,60,4,0,17,18,19, - 20,21,1,3,2,15,16,11,4,6, - 7,22,23,24,25,26,27,28,29,56, - 0 + 68,38,89,39,58,5,0,5,52,31, + 61,9,10,8,4,6,7,20,21,13, + 28,29,30,2,15,16,17,18,22,23, + 24,1,3,19,0,75,5,4,1,2, + 68,0,58,5,32,11,12,14,25,26, + 27,15,16,17,18,22,23,24,3,9, + 10,8,6,7,20,21,13,28,29,30, + 4,2,1,0,12,32,37,14,36,35, + 34,11,33,25,26,27,61,76,9,10, + 8,6,7,62,63,56,57,64,65,66, + 67,70,71,72,73,74,77,78,69,79, + 80,81,82,83,84,85,86,87,88,4, + 2,31,39,38,5,0,32,58,5,9, + 10,8,4,6,7,20,21,13,28,29, + 30,2,1,3,15,16,17,18,22,23, + 24,0,48,40,45,43,44,42,41,46, + 47,49,50,51,68,75,37,34,32,33, + 36,35,11,12,14,25,26,27,39,1, + 5,38,2,31,4,0,5,68,39,58, + 38,75,31,13,15,16,17,18,2,9, + 10,8,4,6,7,20,21,22,23,24, + 28,29,30,3,1,53,54,55,48,40, + 45,43,44,42,41,46,47,49,50,51, + 37,34,32,33,36,35,11,12,14,26, + 25,27,0,33,40,11,41,53,34,42, + 35,43,44,36,12,45,46,32,54,37, + 55,47,48,14,49,50,51,1,3,25, + 26,27,60,5,52,0,1,3,5,52, + 39,0,4,2,31,38,5,33,40,11, + 41,53,34,42,35,43,44,36,12,45, + 46,32,54,37,55,47,48,14,49,50, + 51,25,26,27,59,3,1,0,2,5, + 39,38,75,31,68,0,4,33,40,11, + 41,53,34,42,35,43,44,36,12,45, + 46,32,54,37,55,47,48,14,49,50, + 51,1,3,25,26,27,59,0,69,31, + 61,0,69,79,80,81,82,83,84,85, + 86,87,88,19,4,62,63,6,7,57, + 56,64,65,66,67,70,71,8,72,73, + 74,58,38,52,89,77,78,68,75,5, + 39,0,5,39,52,69,0,13,15,16, + 17,18,1,3,2,9,10,8,4,6, + 7,20,21,22,23,24,28,29,30,60, + 0,5,38,13,15,16,17,18,1,3, + 2,9,10,8,4,6,7,20,21,22, + 23,24,28,29,30,0 }; }; public final static byte asr[] = Asr.asr; @@ -780,29 +769,29 @@ public class UPCExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, UP public interface Nasb { public final static byte nasb[] = {0, - 87,8,16,8,16,16,16,16,16,16, - 16,16,16,16,16,16,8,73,8,8, - 8,8,8,8,8,8,8,8,8,16, - 73,73,73,73,73,32,32,59,74,30, - 30,63,1,16,16,16,16,16,16,16, - 16,16,16,16,16,16,16,16,16,74, - 16,16,16,16,16,16,16,16,16,16, - 16,16,16,30,30,30,30,30,30,20, - 16,81,18,62,40,40,26,44,27,27, - 42,42,27,42,27,22,8,8,8,8, - 8,8,8,8,8,8,8,8,8,8, - 8,8,8,8,8,8,8,8,8,92, - 64,92,37,20,77,19,30,79,29,19, - 8,92,8,92,92,8,16,14,92,77, - 77,20,19,53,30,47,2,8,91,20, - 19,92,83,92,83,42,92,69,9,92, - 8,77,53,16,16,20,19,46,40,40, - 81,91,30,83,67,34,94,83,67,69, - 8,8,42,67,13,8,42,16,11,67, - 92,53,20,20,30,79,29,48,67,55, - 67,67,16,42,69,15,20,42,16,14, - 90,35,16,8,55,81,67,20,69,30, - 30,55,16,50,67,8,71 + 107,9,24,9,24,24,24,24,24,24, + 24,24,24,24,24,24,9,89,9,9, + 9,9,9,9,9,9,9,9,9,24, + 89,89,89,89,89,12,12,114,90,17, + 17,76,1,24,24,24,24,24,24,24, + 24,24,24,24,24,24,24,24,24,90, + 24,24,24,24,24,24,24,24,24,24, + 24,24,24,17,17,17,17,17,17,38, + 24,44,36,75,31,31,61,47,62,70, + 62,73,73,62,72,62,56,9,9,9, + 9,9,9,9,9,9,9,9,9,9, + 9,9,9,9,9,9,9,9,9,9, + 54,93,9,26,38,97,37,17,80,16, + 37,40,40,40,40,40,24,22,9,54, + 97,38,37,42,17,50,2,9,82,38, + 37,19,54,9,54,29,14,54,9,54, + 97,24,24,38,37,49,31,31,44,82, + 17,9,99,54,40,87,21,9,40,24, + 85,87,54,97,42,38,38,17,80,16, + 64,54,87,33,110,40,29,9,9,23, + 38,40,24,22,42,103,99,52,29,87, + 24,40,38,29,17,17,87,34,24,9, + 52,44,87,87,9,52,24,66,10 }; }; public final static byte nasb[] = Nasb.nasb; @@ -810,16 +799,18 @@ public class UPCExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, UP public interface Nasr { public final static char nasr[] = {0, - 4,80,79,78,77,76,75,0,93,0, - 95,0,70,7,64,4,0,7,4,22, - 0,65,66,67,68,55,33,0,7,20, - 0,72,0,7,71,0,4,7,0,29, - 0,32,0,96,0,20,7,48,47,40, - 38,0,23,0,7,40,38,0,7,87, - 0,20,7,48,47,0,30,0,54,0, - 91,0,27,7,31,0,61,0,7,21, - 52,0,59,7,27,0,7,86,0,89, - 21,7,0,7,27,51,0 + 4,81,80,79,78,67,77,76,0,97, + 0,73,0,99,0,9,20,0,92,0, + 71,9,62,4,0,4,9,0,54,0, + 29,0,9,72,0,9,4,21,0,28, + 0,22,0,36,52,0,102,0,20,49, + 48,41,39,9,0,67,63,64,65,66, + 55,32,0,49,48,41,39,36,0,91, + 0,94,68,0,20,48,49,9,0,36, + 52,9,26,0,101,0,37,0,31,9, + 30,0,49,48,36,0,59,0,83,9, + 31,0,95,9,26,0,9,89,0,9, + 31,69,0,9,90,0 }; }; public final static char nasr[] = Nasr.nasr; @@ -827,12 +818,12 @@ public class UPCExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, UP public interface TerminalIndex { public final static char terminalIndex[] = {0, - 85,2,86,9,87,10,11,48,64,76, - 8,96,97,98,6,7,68,81,82,83, - 84,12,13,93,94,95,100,101,102,3, - 69,1,44,55,60,63,72,47,52,56, - 61,62,66,67,74,75,78,79,80,90, - 91,54,70,73,42,107,16,17,89,30, + 85,2,86,9,87,10,11,8,6,7, + 48,64,68,76,81,82,83,84,3,12, + 13,93,94,95,96,97,98,100,101,102, + 1,69,44,55,60,63,72,90,42,47, + 52,56,61,62,66,67,74,75,78,79, + 80,91,54,70,73,16,17,89,30,107, 4,14,15,18,19,20,21,29,31,22, 23,24,25,26,92,5,27,28,32,33, 34,35,36,37,38,39,40,41,108,45, @@ -845,19 +836,19 @@ public class UPCExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, UP public interface NonterminalIndex { public final static char nonterminalIndex[] = {0, - 0,0,0,115,119,120,0,121,122,123, + 0,0,0,115,119,120,121,122,0,123, 124,125,126,127,128,129,130,131,132,111, - 136,110,143,0,0,0,154,0,163,112, - 114,135,142,0,0,0,159,161,0,162, - 0,0,0,117,134,172,173,174,0,151, - 153,160,169,0,145,150,0,0,152,164, - 167,168,171,0,146,147,148,149,158,175, - 113,116,118,133,137,138,139,140,141,144, - 156,0,0,157,166,109,0,155,165,170, - 0,176,177,0,178,179,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, + 110,143,0,0,0,136,0,135,164,114, + 155,142,0,0,0,0,112,160,162,0, + 163,0,0,0,117,134,173,174,175,0, + 151,161,170,0,145,150,0,165,168,169, + 172,0,146,147,148,149,152,0,154,159, + 176,113,116,118,133,137,138,139,140,141, + 144,0,153,157,0,0,158,167,109,0, + 0,0,156,0,166,171,0,177,178,0, + 179,180,0,0,0,0,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; @@ -865,12 +856,11 @@ public class UPCExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, UP public interface ScopePrefix { public final static char scopePrefix[] = { - 218,120,59,69,129,149,155,26,192,35, - 87,105,161,166,75,6,12,16,40,83, - 52,139,214,233,237,52,52,201,52,1, - 1,1,44,47,92,115,47,241,20,143, - 208,183,208,135,171,171,171,171,171,95, - 95,95 + 120,151,212,130,59,69,159,26,186,35, + 87,105,75,6,12,16,40,83,52,141, + 208,227,231,52,52,195,52,1,1,1, + 44,47,92,115,47,235,20,145,202,177, + 202,137,165,165,165,165,165,95,95,95 }; }; public final static char scopePrefix[] = ScopePrefix.scopePrefix; @@ -878,12 +868,11 @@ public class UPCExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, UP public interface ScopeSuffix { public final static char scopeSuffix[] = { - 127,127,4,4,127,127,127,32,198,10, - 4,10,127,127,80,10,10,10,10,4, - 4,137,10,10,4,56,80,205,65,4, - 4,4,10,50,4,10,118,10,23,146, - 211,186,226,137,173,175,177,179,181,102, - 97,110 + 128,128,128,128,4,4,128,32,192,10, + 4,10,80,10,10,10,10,4,4,139, + 10,10,4,56,80,199,65,4,4,4, + 10,50,4,10,118,10,23,148,205,180, + 220,139,167,169,171,173,175,102,97,110 }; }; public final static char scopeSuffix[] = ScopeSuffix.scopeSuffix; @@ -891,12 +880,11 @@ public class UPCExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, UP public interface ScopeLhs { public final static char scopeLhs[] = { - 4,67,29,29,67,65,65,56,103,49, - 29,43,65,65,29,5,5,5,49,29, - 29,51,5,4,4,29,29,18,29,96, - 95,94,47,63,29,40,50,2,70,51, - 6,104,4,51,79,78,77,76,75,43, - 41,43 + 65,63,4,65,29,29,63,56,109,50, + 29,44,29,5,5,5,50,29,29,69, + 5,4,4,29,29,18,29,102,101,100, + 48,61,29,41,51,2,71,69,6,110, + 4,69,80,79,78,77,76,44,42,44 }; }; public final static char scopeLhs[] = ScopeLhs.scopeLhs; @@ -904,12 +892,11 @@ public class UPCExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, UP public interface ScopeLa { public final static byte scopeLa[] = { - 51,51,59,59,51,51,51,51,95,50, - 59,50,51,51,18,50,50,50,50,59, - 59,75,50,50,59,4,18,68,31,59, - 59,59,50,2,59,50,1,50,69,1, - 50,101,50,75,3,52,53,53,46,2, - 2,2 + 52,52,52,52,58,58,52,52,95,38, + 58,38,15,38,38,38,38,58,58,75, + 38,38,58,4,15,68,32,58,58,58, + 38,2,58,38,1,38,69,1,38,101, + 38,75,3,53,54,54,48,2,2,2 }; }; public final static byte scopeLa[] = ScopeLa.scopeLa; @@ -917,12 +904,11 @@ public class UPCExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, UP public interface ScopeStateSet { public final static byte scopeStateSet[] = { - 36,21,25,25,21,21,21,96,-1,29, - 25,11,21,21,25,36,36,36,29,25, - 25,5,36,36,36,25,25,70,25,19, - 1,3,29,31,25,11,13,36,97,5, - 42,-1,36,5,22,22,22,22,22,11, - 11,11 + 19,19,34,19,23,23,19,94,-1,27, + 23,9,23,34,34,34,27,23,23,3, + 34,34,34,23,23,68,23,17,1,7, + 27,29,23,9,11,34,95,3,40,-1, + 34,3,20,20,20,20,20,9,9,9 }; }; public final static byte scopeStateSet[] = ScopeStateSet.scopeStateSet; @@ -930,31 +916,30 @@ public class UPCExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, UP public interface ScopeRhs { public final static char scopeRhs[] = {0, - 152,32,0,110,0,151,2,29,0,111, - 0,151,2,28,0,151,2,27,0,199, - 114,0,31,150,0,161,180,114,30,171, - 0,112,0,0,167,114,2,154,0,167, - 114,2,0,170,2,0,159,114,0,172, - 0,192,114,32,0,9,110,0,126,31, - 192,114,32,0,69,132,110,0,126,192, - 114,31,32,0,192,114,31,32,0,132, - 110,0,126,31,32,0,126,192,114,32, - 0,126,32,0,147,0,2,0,165,111, - 0,2,111,0,167,114,2,147,0,2, - 0,164,111,0,157,2,0,159,0,161, - 190,114,30,139,52,0,112,0,161,190, - 114,30,52,0,134,0,113,0,195,114, - 134,0,114,134,0,155,113,0,165,114, - 30,139,54,0,165,114,30,139,53,0, - 165,114,30,54,0,165,114,30,53,0, - 187,0,149,0,148,0,147,0,146,0, - 145,0,206,94,0,77,2,114,111,113, - 0,206,127,138,2,98,0,53,0,0, - 138,78,124,0,29,131,0,151,2,0, - 111,120,0,151,2,17,0,161,180,114, - 30,127,151,2,0,111,3,0,118,0, - 112,0,194,2,111,0,138,32,111,0, - 138,2,0 + 153,31,0,110,0,152,2,30,0,111, + 0,152,2,29,0,152,2,28,0,205, + 116,0,31,150,0,161,181,116,19,169, + 0,112,0,0,165,116,2,155,0,165, + 116,2,0,168,2,0,159,116,0,173, + 0,195,116,31,0,9,110,0,126,32, + 195,116,31,0,69,132,110,0,126,195, + 116,32,31,0,195,116,32,31,0,132, + 110,0,126,32,31,0,126,195,116,31, + 0,126,31,0,148,0,2,0,166,111, + 0,2,111,0,165,116,2,148,0,2, + 0,165,111,0,158,2,0,160,0,161, + 193,116,19,135,201,53,0,112,0,161, + 193,116,19,201,53,0,138,0,113,0, + 200,116,138,0,116,138,0,156,113,0, + 189,116,19,199,135,198,174,0,189,116, + 19,198,174,0,188,0,149,0,148,0, + 147,0,146,0,145,0,212,94,0,77, + 2,114,111,113,0,212,127,137,2,98, + 0,53,0,0,137,78,124,0,29,131, + 0,152,2,0,111,120,0,152,2,13, + 0,161,181,116,19,127,152,2,0,111, + 3,0,118,0,112,0,197,2,111,0, + 137,31,111,0,137,2,0 }; }; public final static char scopeRhs[] = ScopeRhs.scopeRhs; @@ -962,16 +947,16 @@ public class UPCExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, UP public interface ScopeState { public final static char scopeState[] = {0, - 519,0,492,0,1768,1803,1758,1742,1733,0, - 1530,1222,1295,385,1281,1237,1192,0,1218,0, - 587,582,364,0,1728,1611,1207,1194,1222,1600, - 1237,1192,1406,1471,0,1511,1483,1370,1339,1325, - 1289,1544,1535,1521,1720,485,401,703,588,624, - 522,502,1399,1389,1378,1346,1303,1200,1713,1706, - 1693,1502,1493,1588,1581,1574,1558,1457,720,1153, - 1134,1115,1096,1077,1057,1037,774,1172,750,728, - 559,1017,997,977,957,937,917,897,877,857, - 837,817,364,797,683,663,465,539,445,0 + 1577,0,1729,1788,1726,0,430,0,1528,1277, + 1350,1478,1314,1207,1191,0,1202,0,1276,566, + 369,0,1486,1322,1215,605,1277,1692,1207,1191, + 1483,1550,0,1768,1761,1538,1292,592,395,1613, + 1580,1493,1712,491,1259,1278,710,1420,1408,1366, + 1379,1107,1469,1458,1447,1436,1696,1621,1504,534, + 514,1208,1163,1154,1098,609,437,1172,1135,1116, + 1079,1060,1040,1020,756,405,733,567,648,1000, + 980,960,940,920,900,880,860,840,820,800, + 369,780,690,670,471,546,451,0 }; }; public final static char scopeState[] = ScopeState.scopeState; @@ -979,29 +964,29 @@ public class UPCExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, UP public interface InSymb { public final static char inSymb[] = {0, - 0,193,114,181,29,28,27,17,23,22, - 7,6,4,11,16,15,111,2,116,115, - 118,117,120,119,122,121,124,123,112,55, - 2,2,2,2,2,76,61,2,32,151, - 138,134,114,7,6,63,62,4,67,66, - 65,64,57,58,11,71,70,73,72,78, + 0,196,116,182,30,29,28,13,21,20, + 7,6,4,8,10,9,111,2,115,114, + 118,117,120,119,122,121,124,123,112,39, + 2,2,2,2,2,76,61,2,31,152, + 137,138,116,7,6,63,62,4,67,66, + 65,64,56,57,8,71,70,73,72,78, 77,74,88,87,86,84,85,83,82,81, - 80,79,69,151,151,151,151,151,194,138, - 127,114,32,2,155,154,182,13,183,184, - 54,53,185,52,186,187,1,3,115,115, - 117,117,117,117,116,116,119,118,118,121, - 120,138,123,122,127,127,127,127,127,30, - 159,4,31,126,114,4,170,114,2,32, - 139,30,139,30,30,139,68,114,4,114, - 114,126,192,168,167,128,114,169,114,152, - 4,30,114,30,114,114,30,180,114,30, - 171,114,168,192,31,126,4,2,145,147, - 114,55,167,114,165,134,166,114,165,190, - 139,191,114,161,55,199,61,32,200,114, - 30,168,126,126,157,114,2,159,165,114, - 165,161,69,55,190,69,152,61,32,114, - 114,195,68,157,2,114,161,152,180,167, - 196,55,68,159,161,55,137 + 80,79,69,152,152,152,152,152,197,137, + 127,116,31,2,156,155,183,26,184,174, + 185,55,54,186,53,187,188,1,3,114, + 114,117,117,117,117,115,115,119,118,118, + 121,120,137,123,122,127,127,127,127,127, + 19,159,143,32,126,116,4,168,116,2, + 31,198,175,175,201,175,68,116,143,4, + 116,126,195,166,165,133,116,167,116,153, + 4,135,19,135,19,181,116,19,169,4, + 116,195,32,126,4,2,146,148,116,39, + 165,199,116,19,116,161,39,205,61,31, + 206,116,19,116,166,126,126,158,116,2, + 159,19,189,138,190,116,193,135,194,69, + 153,61,31,116,166,116,116,116,193,161, + 69,39,153,181,165,202,189,200,68,158, + 2,116,161,161,39,39,68,159,144 }; }; public final static char inSymb[] = InSymb.inSymb; @@ -1144,7 +1129,7 @@ public class UPCExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, UP "assignment_expression", "expression_list_actual", "constant_expression", - "identifier_or_typedefname", + "identifier_token", "declaration_specifiers", "simple_declaration_specifiers", "struct_or_union_declaration_sp" + @@ -1164,6 +1149,7 @@ public class UPCExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, UP "typedef_name_in_declspec", "initializer", "declarator", + "struct_or_union", "struct_declaration_list", "struct_declaration", "specifier_qualifier_list", @@ -1200,9 +1186,9 @@ public class UPCExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, UP public final String name(int index) { return name[index]; } public final static int - ERROR_SYMBOL = 56, - SCOPE_UBOUND = 51, - SCOPE_SIZE = 52, + ERROR_SYMBOL = 60, + SCOPE_UBOUND = 49, + SCOPE_SIZE = 50, MAX_NAME_LENGTH = 38; public final int getErrorSymbol() { return ERROR_SYMBOL; } @@ -1211,20 +1197,20 @@ public class UPCExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, UP public final int getMaxNameLength() { return MAX_NAME_LENGTH; } public final static int - NUM_STATES = 227, + NUM_STATES = 229, NT_OFFSET = 107, - LA_STATE_OFFSET = 2246, + LA_STATE_OFFSET = 2270, MAX_LA = 2, - NUM_RULES = 363, - NUM_NONTERMINALS = 122, - NUM_SYMBOLS = 229, + NUM_RULES = 368, + NUM_NONTERMINALS = 128, + NUM_SYMBOLS = 235, SEGMENT_SIZE = 8192, - START_STATE = 1774, + START_STATE = 1775, IDENTIFIER_SYMBOL = 0, EOFT_SYMBOL = 89, EOLT_SYMBOL = 89, - ACCEPT_ACTION = 1867, - ERROR_ACTION = 1883; + ACCEPT_ACTION = 1886, + ERROR_ACTION = 1902; public final static boolean BACKTRACK = true; diff --git a/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCExpressionParsersym.java b/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCExpressionParsersym.java index 48dd697416a..31aeb0e9bc2 100644 --- a/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCExpressionParsersym.java +++ b/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCExpressionParsersym.java @@ -18,65 +18,65 @@ public interface UPCExpressionParsersym { TK_auto = 33, TK_break = 90, TK_case = 91, - TK_char = 38, - TK_const = 8, + TK_char = 40, + TK_const = 11, TK_continue = 92, TK_default = 93, TK_do = 94, - TK_double = 39, + TK_double = 41, TK_else = 95, - TK_enum = 52, + TK_enum = 53, TK_extern = 34, - TK_float = 40, + TK_float = 42, TK_for = 96, TK_goto = 97, TK_if = 98, TK_inline = 35, - TK_int = 41, - TK_long = 42, + TK_int = 43, + TK_long = 44, TK_register = 36, - TK_restrict = 9, + TK_restrict = 12, TK_return = 99, - TK_short = 43, - TK_signed = 44, - TK_sizeof = 17, - TK_static = 31, - TK_struct = 53, + TK_short = 45, + TK_signed = 46, + TK_sizeof = 13, + TK_static = 32, + TK_struct = 54, TK_switch = 100, TK_typedef = 37, - TK_union = 54, - TK_unsigned = 45, - TK_void = 46, - TK_volatile = 10, + TK_union = 55, + TK_unsigned = 47, + TK_void = 48, + TK_volatile = 14, TK_while = 101, - TK__Bool = 47, - TK__Complex = 48, - TK__Imaginary = 49, - TK_integer = 18, - TK_floating = 19, - TK_charconst = 20, - TK_stringlit = 21, + TK__Bool = 49, + TK__Complex = 50, + TK__Imaginary = 51, + TK_integer = 15, + TK_floating = 16, + TK_charconst = 17, + TK_stringlit = 18, TK_identifier = 1, TK_Completion = 3, TK_EndOfCompletion = 5, TK_Invalid = 102, - TK_LeftBracket = 32, + TK_LeftBracket = 31, TK_LeftParen = 2, - TK_LeftBrace = 30, + TK_LeftBrace = 19, TK_Dot = 61, TK_Arrow = 76, - TK_PlusPlus = 15, - TK_MinusMinus = 16, - TK_And = 11, + TK_PlusPlus = 9, + TK_MinusMinus = 10, + TK_And = 8, TK_Star = 4, TK_Plus = 6, TK_Minus = 7, - TK_Tilde = 22, - TK_Bang = 23, + TK_Tilde = 20, + TK_Bang = 21, TK_Slash = 62, TK_Percent = 63, - TK_RightShift = 57, - TK_LeftShift = 58, + TK_RightShift = 56, + TK_LeftShift = 57, TK_LT = 64, TK_GT = 65, TK_LE = 66, @@ -89,7 +89,7 @@ public interface UPCExpressionParsersym { TK_OrOr = 77, TK_Question = 78, TK_Colon = 68, - TK_DotDotDot = 60, + TK_DotDotDot = 59, TK_Assign = 69, TK_StarAssign = 79, TK_SlashAssign = 80, @@ -101,26 +101,26 @@ public interface UPCExpressionParsersym { TK_AndAssign = 86, TK_CaretAssign = 87, TK_OrAssign = 88, - TK_Comma = 55, - TK_RightBracket = 59, - TK_RightParen = 50, - TK_RightBrace = 51, + TK_Comma = 39, + TK_RightBracket = 58, + TK_RightParen = 38, + TK_RightBrace = 52, TK_SemiColon = 75, - TK_MYTHREAD = 24, - TK_THREADS = 25, - TK_UPC_MAX_BLOCKSIZE = 26, - TK_relaxed = 12, - TK_shared = 13, - TK_strict = 14, + TK_MYTHREAD = 22, + TK_THREADS = 23, + TK_UPC_MAX_BLOCKSIZE = 24, + TK_relaxed = 25, + TK_shared = 26, + TK_strict = 27, TK_upc_barrier = 103, - TK_upc_localsizeof = 27, - TK_upc_blocksizeof = 28, - TK_upc_elemsizeof = 29, + TK_upc_localsizeof = 28, + TK_upc_blocksizeof = 29, + TK_upc_elemsizeof = 30, TK_upc_notify = 104, TK_upc_fence = 105, TK_upc_wait = 106, TK_upc_forall = 107, - TK_ERROR_TOKEN = 56, + TK_ERROR_TOKEN = 60, TK_EOF_TOKEN = 89; public final static String orderedTerminalSymbols[] = { @@ -132,36 +132,38 @@ public interface UPCExpressionParsersym { "EndOfCompletion", "Plus", "Minus", - "const", - "restrict", - "volatile", "And", - "relaxed", - "shared", - "strict", "PlusPlus", "MinusMinus", + "const", + "restrict", "sizeof", + "volatile", "integer", "floating", "charconst", "stringlit", + "LeftBrace", "Tilde", "Bang", "MYTHREAD", "THREADS", "UPC_MAX_BLOCKSIZE", + "relaxed", + "shared", + "strict", "upc_localsizeof", "upc_blocksizeof", "upc_elemsizeof", - "LeftBrace", - "static", "LeftBracket", + "static", "auto", "extern", "inline", "register", "typedef", + "RightParen", + "Comma", "char", "double", "float", @@ -174,17 +176,15 @@ public interface UPCExpressionParsersym { "_Bool", "_Complex", "_Imaginary", - "RightParen", "RightBrace", "enum", "struct", "union", - "Comma", - "ERROR_TOKEN", "RightShift", "LeftShift", "RightBracket", "DotDotDot", + "ERROR_TOKEN", "Dot", "Slash", "Percent", diff --git a/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCNoCastExpressionParser.java b/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCNoCastExpressionParser.java index 776a747049e..f62dca50f70 100644 --- a/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCNoCastExpressionParser.java +++ b/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCNoCastExpressionParser.java @@ -219,8 +219,9 @@ public String[] getOrderedTerminalSymbols() { return UPCNoCastExpressionParsersym.orderedTerminalSymbols; } +@SuppressWarnings("nls") public String getName() { - return "UPCNoCastExpressionParser"; //$NON-NLS-1$ + return "UPCNoCastExpressionParser"; } @@ -591,7 +592,7 @@ public UPCNoCastExpressionParser(String[] mapFrom) { // constructor } // - // Rule 100: labeled_statement ::= identifier_or_typedefname : statement + // Rule 100: labeled_statement ::= identifier_token : statement // case 100: { action. consumeStatementLabeled(); break; } @@ -687,7 +688,7 @@ public UPCNoCastExpressionParser(String[] mapFrom) { // constructor } // - // Rule 120: jump_statement ::= goto identifier_or_typedefname ; + // Rule 120: jump_statement ::= goto identifier_token ; // case 120: { action. consumeStatementGoto(); break; } @@ -789,771 +790,759 @@ public UPCNoCastExpressionParser(String[] mapFrom) { // constructor } // - // Rule 181: struct_or_union_specifier ::= struct { <openscope-ast> struct_declaration_list_opt } + // Rule 181: struct_or_union_specifier ::= struct_or_union struct_or_union_specifier_hook { <openscope-ast> struct_declaration_list_opt } // - case 181: { action. consumeTypeSpecifierComposite(false, IASTCompositeTypeSpecifier.k_struct); break; + case 181: { action. consumeTypeSpecifierComposite(false); break; } // - // Rule 182: struct_or_union_specifier ::= union { <openscope-ast> struct_declaration_list_opt } + // Rule 182: struct_or_union_specifier ::= struct_or_union struct_or_union_specifier_hook identifier_token struct_or_union_specifier_suffix_hook { <openscope-ast> struct_declaration_list_opt } // - case 182: { action. consumeTypeSpecifierComposite(false, IASTCompositeTypeSpecifier.k_union); break; + case 182: { action. consumeTypeSpecifierComposite(true); break; } // - // Rule 183: struct_or_union_specifier ::= struct identifier_or_typedefname { <openscope-ast> struct_declaration_list_opt } + // Rule 187: elaborated_specifier ::= struct elaborated_specifier_hook identifier_token // - case 183: { action. consumeTypeSpecifierComposite(true, IASTCompositeTypeSpecifier.k_struct); break; + case 187: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_struct); break; } // - // Rule 184: struct_or_union_specifier ::= union identifier_or_typedefname { <openscope-ast> struct_declaration_list_opt } + // Rule 188: elaborated_specifier ::= union elaborated_specifier_hook identifier_token // - case 184: { action. consumeTypeSpecifierComposite(true, IASTCompositeTypeSpecifier.k_union); break; + case 188: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_union); break; } // - // Rule 185: elaborated_specifier ::= struct identifier_or_typedefname + // Rule 189: elaborated_specifier ::= enum elaborated_specifier_hook identifier_token // - case 185: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_struct); break; + case 189: { action. consumeTypeSpecifierElaborated(IASTElaboratedTypeSpecifier.k_enum); break; } // - // Rule 186: elaborated_specifier ::= union identifier_or_typedefname + // Rule 195: struct_declaration ::= specifier_qualifier_list <openscope-ast> struct_declarator_list ; // - case 186: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_union); break; + case 195: { action. consumeStructDeclaration(true); break; } // - // Rule 187: elaborated_specifier ::= enum identifier_or_typedefname + // Rule 196: struct_declaration ::= specifier_qualifier_list ; // - case 187: { action. consumeTypeSpecifierElaborated(IASTElaboratedTypeSpecifier.k_enum); break; + case 196: { action. consumeStructDeclaration(false); break; } // - // Rule 192: struct_declaration ::= specifier_qualifier_list <openscope-ast> struct_declarator_list ; + // Rule 197: struct_declaration ::= ERROR_TOKEN // - case 192: { action. consumeStructDeclaration(true); break; + case 197: { action. consumeDeclarationProblem(); break; } // - // Rule 193: struct_declaration ::= specifier_qualifier_list ; + // Rule 203: struct_declarator ::= : constant_expression // - case 193: { action. consumeStructDeclaration(false); break; + case 203: { action. consumeBitField(false); break; } // - // Rule 194: struct_declaration ::= ERROR_TOKEN + // Rule 204: struct_declarator ::= declarator : constant_expression // - case 194: { action. consumeDeclarationProblem(); break; + case 204: { action. consumeBitField(true); break; } // - // Rule 200: struct_declarator ::= : constant_expression + // Rule 205: enum_specifier ::= enum enum_specifier_hook { <openscope-ast> enumerator_list_opt comma_opt } // - case 200: { action. consumeBitField(false); break; + case 205: { action. consumeTypeSpecifierEnumeration(false); break; } // - // Rule 201: struct_declarator ::= declarator : constant_expression + // Rule 206: enum_specifier ::= enum enum_specifier_hook identifier_token { <openscope-ast> enumerator_list_opt comma_opt } // - case 201: { action. consumeBitField(true); break; + case 206: { action. consumeTypeSpecifierEnumeration(true); break; } // - // Rule 202: enum_specifier ::= enum { <openscope-ast> enumerator_list_opt comma_opt } + // Rule 212: enumerator ::= identifier_token // - case 202: { action. consumeTypeSpecifierEnumeration(false); break; + case 212: { action. consumeEnumerator(false); break; } // - // Rule 203: enum_specifier ::= enum identifier_or_typedefname { <openscope-ast> enumerator_list_opt comma_opt } + // Rule 213: enumerator ::= identifier_token = constant_expression // - case 203: { action. consumeTypeSpecifierEnumeration(true); break; + case 213: { action. consumeEnumerator(true); break; } // - // Rule 208: enumerator ::= identifier_or_typedefname + // Rule 214: type_qualifier ::= type_qualifier_token // - case 208: { action. consumeEnumerator(false); break; - } - - // - // Rule 209: enumerator ::= identifier_or_typedefname = constant_expression - // - case 209: { action. consumeEnumerator(true); break; - } - - // - // Rule 210: type_qualifier ::= type_qualifier_token - // - case 210: { action. consumeDeclSpecToken(); break; + case 214: { action. consumeDeclSpecToken(); break; } // - // Rule 214: function_specifier ::= inline + // Rule 218: function_specifier ::= inline // - case 214: { action. consumeDeclSpecToken(); break; + case 218: { action. consumeDeclSpecToken(); break; } // - // Rule 216: declarator ::= <openscope-ast> pointer_seq direct_declarator + // Rule 220: declarator ::= <openscope-ast> pointer_seq direct_declarator // - case 216: { action. consumeDeclaratorWithPointer(true); break; + case 220: { action. consumeDeclaratorWithPointer(true); break; } // - // Rule 221: basic_direct_declarator ::= declarator_id_name + // Rule 225: basic_direct_declarator ::= declarator_id_name // - case 221: { action. consumeDirectDeclaratorIdentifier(); break; + case 225: { action. consumeDirectDeclaratorIdentifier(); break; } // - // Rule 222: basic_direct_declarator ::= ( declarator ) + // Rule 226: basic_direct_declarator ::= ( declarator ) // - case 222: { action. consumeDirectDeclaratorBracketed(); break; + case 226: { action. consumeDirectDeclaratorBracketed(); break; } // - // Rule 223: declarator_id_name ::= identifier + // Rule 227: declarator_id_name ::= identifier // - case 223: { action. consumeIdentifierName(); break; + case 227: { action. consumeIdentifierName(); break; } // - // Rule 224: array_direct_declarator ::= basic_direct_declarator array_modifier + // Rule 228: array_direct_declarator ::= basic_direct_declarator array_modifier // - case 224: { action. consumeDirectDeclaratorArrayDeclarator(true); break; + case 228: { action. consumeDirectDeclaratorArrayDeclarator(true); break; } // - // Rule 225: array_direct_declarator ::= array_direct_declarator array_modifier + // Rule 229: array_direct_declarator ::= array_direct_declarator array_modifier // - case 225: { action. consumeDirectDeclaratorArrayDeclarator(true); break; + case 229: { action. consumeDirectDeclaratorArrayDeclarator(true); break; } // - // Rule 227: function_direct_declarator ::= basic_direct_declarator ( <openscope-ast> parameter_type_list ) + // Rule 231: function_direct_declarator ::= basic_direct_declarator ( <openscope-ast> parameter_type_list ) // - case 227: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break; + case 231: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break; } // - // Rule 228: function_direct_declarator ::= basic_direct_declarator ( ) + // Rule 232: function_direct_declarator ::= basic_direct_declarator ( ) // - case 228: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break; + case 232: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break; } // - // Rule 230: function_declarator ::= <openscope-ast> pointer_seq function_direct_declarator + // Rule 234: function_declarator ::= <openscope-ast> pointer_seq function_direct_declarator // - case 230: { action. consumeDeclaratorWithPointer(true); break; + case 234: { action. consumeDeclaratorWithPointer(true); break; } // - // Rule 231: knr_direct_declarator ::= basic_direct_declarator ( <openscope-ast> identifier_list ) + // Rule 235: knr_direct_declarator ::= basic_direct_declarator ( <openscope-ast> identifier_list ) // - case 231: { action. consumeDirectDeclaratorFunctionDeclaratorKnR(); break; + case 235: { action. consumeDirectDeclaratorFunctionDeclaratorKnR(); break; } // - // Rule 233: knr_function_declarator ::= <openscope-ast> pointer_seq knr_direct_declarator + // Rule 237: knr_function_declarator ::= <openscope-ast> pointer_seq knr_direct_declarator // - case 233: { action. consumeDeclaratorWithPointer(true); break; + case 237: { action. consumeDeclaratorWithPointer(true); break; } // - // Rule 234: identifier_list ::= identifier + // Rule 238: identifier_list ::= identifier // - case 234: { action. consumeIdentifierKnR(); break; + case 238: { action. consumeIdentifierKnR(); break; } // - // Rule 235: identifier_list ::= identifier_list , identifier + // Rule 239: identifier_list ::= identifier_list , identifier // - case 235: { action. consumeIdentifierKnR(); break; + case 239: { action. consumeIdentifierKnR(); break; } // - // Rule 236: array_modifier ::= [ ] + // Rule 240: array_modifier ::= [ ] // - case 236: { action. consumeDirectDeclaratorArrayModifier(false); break; + case 240: { action. consumeDirectDeclaratorArrayModifier(false); break; } // - // Rule 237: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers ] + // Rule 241: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers ] // - case 237: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, false); break; + case 241: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, false); break; } // - // Rule 238: array_modifier ::= [ assignment_expression ] + // Rule 242: array_modifier ::= [ assignment_expression ] // - case 238: { action. consumeDirectDeclaratorArrayModifier(true); break; + case 242: { action. consumeDirectDeclaratorArrayModifier(true); break; } // - // Rule 239: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers assignment_expression ] + // Rule 243: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers assignment_expression ] // - case 239: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, true); break; + case 243: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, true); break; } // - // Rule 240: array_modifier ::= [ static assignment_expression ] + // Rule 244: array_modifier ::= [ static assignment_expression ] // - case 240: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, false, true); break; + case 244: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, false, true); break; } // - // Rule 241: array_modifier ::= [ static <openscope-ast> array_modifier_type_qualifiers assignment_expression ] + // Rule 245: array_modifier ::= [ static <openscope-ast> array_modifier_type_qualifiers assignment_expression ] // - case 241: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break; + case 245: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break; } // - // Rule 242: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers static assignment_expression ] + // Rule 246: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers static assignment_expression ] // - case 242: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break; + case 246: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break; } // - // Rule 243: array_modifier ::= [ * ] + // Rule 247: array_modifier ::= [ * ] // - case 243: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, false, false); break; + case 247: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, false, false); break; } // - // Rule 244: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers * ] + // Rule 248: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers * ] // - case 244: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, true, false); break; + case 248: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, true, false); break; } // - // Rule 246: pointer_seq ::= * + // Rule 250: pointer_seq ::= pointer_hook * // - case 246: { action. consumePointer(); break; + case 250: { action. consumePointer(); break; } // - // Rule 247: pointer_seq ::= pointer_seq * + // Rule 251: pointer_seq ::= pointer_seq pointer_hook * // - case 247: { action. consumePointer(); break; + case 251: { action. consumePointer(); break; } // - // Rule 248: pointer_seq ::= * <openscope-ast> type_qualifier_list + // Rule 252: pointer_seq ::= pointer_hook * <openscope-ast> type_qualifier_list // - case 248: { action. consumePointerTypeQualifierList(); break; + case 252: { action. consumePointerTypeQualifierList(); break; } // - // Rule 249: pointer_seq ::= pointer_seq * <openscope-ast> type_qualifier_list + // Rule 253: pointer_seq ::= pointer_seq pointer_hook * <openscope-ast> type_qualifier_list // - case 249: { action. consumePointerTypeQualifierList(); break; + case 253: { action. consumePointerTypeQualifierList(); break; } // - // Rule 252: parameter_type_list ::= parameter_list + // Rule 257: parameter_type_list ::= parameter_list // - case 252: { action. consumeEmpty(); break; + case 257: { action. consumeEmpty(); break; } // - // Rule 253: parameter_type_list ::= parameter_list , ... + // Rule 258: parameter_type_list ::= parameter_list , ... // - case 253: { action. consumePlaceHolder(); break; + case 258: { action. consumePlaceHolder(); break; } // - // Rule 254: parameter_type_list ::= ... + // Rule 259: parameter_type_list ::= ... // - case 254: { action. consumePlaceHolder(); break; + case 259: { action. consumePlaceHolder(); break; } // - // Rule 257: parameter_declaration ::= declaration_specifiers complete_parameter_declarator + // Rule 262: parameter_declaration ::= declaration_specifiers complete_parameter_declarator // - case 257: { action. consumeParameterDeclaration(); break; + case 262: { action. consumeParameterDeclaration(); break; } // - // Rule 258: parameter_declaration ::= declaration_specifiers + // Rule 263: parameter_declaration ::= declaration_specifiers // - case 258: { action. consumeParameterDeclarationWithoutDeclarator(); break; + case 263: { action. consumeParameterDeclarationWithoutDeclarator(); break; } // - // Rule 261: type_name ::= specifier_qualifier_list + // Rule 266: type_name ::= specifier_qualifier_list // - case 261: { action. consumeTypeId(false); break; + case 266: { action. consumeTypeId(false); break; } // - // Rule 262: type_name ::= specifier_qualifier_list abstract_declarator + // Rule 267: type_name ::= specifier_qualifier_list abstract_declarator // - case 262: { action. consumeTypeId(true); break; + case 267: { action. consumeTypeId(true); break; } // - // Rule 264: abstract_declarator ::= <openscope-ast> pointer_seq + // Rule 269: abstract_declarator ::= <openscope-ast> pointer_seq // - case 264: { action. consumeDeclaratorWithPointer(false); break; + case 269: { action. consumeDeclaratorWithPointer(false); break; } // - // Rule 265: abstract_declarator ::= <openscope-ast> pointer_seq direct_abstract_declarator + // Rule 270: abstract_declarator ::= <openscope-ast> pointer_seq direct_abstract_declarator // - case 265: { action. consumeDeclaratorWithPointer(false); break; + case 270: { action. consumeDeclaratorWithPointer(false); break; } // - // Rule 269: basic_direct_abstract_declarator ::= ( abstract_declarator ) + // Rule 274: basic_direct_abstract_declarator ::= ( abstract_declarator ) // - case 269: { action. consumeDirectDeclaratorBracketed(); break; + case 274: { action. consumeDirectDeclaratorBracketed(); break; } // - // Rule 270: array_direct_abstract_declarator ::= array_modifier + // Rule 275: array_direct_abstract_declarator ::= array_modifier // - case 270: { action. consumeDirectDeclaratorArrayDeclarator(false); break; + case 275: { action. consumeDirectDeclaratorArrayDeclarator(false); break; } // - // Rule 271: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier + // Rule 276: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier // - case 271: { action. consumeDirectDeclaratorArrayDeclarator(true); break; + case 276: { action. consumeDirectDeclaratorArrayDeclarator(true); break; } // - // Rule 272: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier + // Rule 277: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier // - case 272: { action. consumeDirectDeclaratorArrayDeclarator(true); break; + case 277: { action. consumeDirectDeclaratorArrayDeclarator(true); break; } // - // Rule 273: function_direct_abstract_declarator ::= ( ) + // Rule 278: function_direct_abstract_declarator ::= ( ) // - case 273: { action. consumeDirectDeclaratorFunctionDeclarator(false, false); break; + case 278: { action. consumeDirectDeclaratorFunctionDeclarator(false, false); break; } // - // Rule 274: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( ) + // Rule 279: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( ) // - case 274: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break; + case 279: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break; } // - // Rule 275: function_direct_abstract_declarator ::= ( <openscope-ast> parameter_type_list ) + // Rule 280: function_direct_abstract_declarator ::= ( <openscope-ast> parameter_type_list ) // - case 275: { action. consumeDirectDeclaratorFunctionDeclarator(false, true); break; + case 280: { action. consumeDirectDeclaratorFunctionDeclarator(false, true); break; } // - // Rule 276: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( <openscope-ast> parameter_type_list ) + // Rule 281: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( <openscope-ast> parameter_type_list ) // - case 276: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break; + case 281: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break; } // - // Rule 277: initializer ::= assignment_expression + // Rule 282: initializer ::= assignment_expression // - case 277: { action. consumeInitializer(); break; + case 282: { action. consumeInitializer(); break; } // - // Rule 278: initializer ::= start_initializer_list { <openscope-ast> initializer_list comma_opt } end_initializer_list + // Rule 283: initializer ::= start_initializer_list { <openscope-ast> initializer_list comma_opt } end_initializer_list // - case 278: { action. consumeInitializerList(); break; + case 283: { action. consumeInitializerList(); break; } // - // Rule 279: initializer ::= { <openscope-ast> } + // Rule 284: initializer ::= { <openscope-ast> } // - case 279: { action. consumeInitializerList(); break; + case 284: { action. consumeInitializerList(); break; } // - // Rule 280: start_initializer_list ::= $Empty + // Rule 285: start_initializer_list ::= $Empty // - case 280: { action. initializerListStart(); break; + case 285: { action. initializerListStart(); break; } // - // Rule 281: end_initializer_list ::= $Empty + // Rule 286: end_initializer_list ::= $Empty // - case 281: { action. initializerListEnd(); break; + case 286: { action. initializerListEnd(); break; } // - // Rule 286: designated_initializer ::= <openscope-ast> designation = initializer + // Rule 291: designated_initializer ::= <openscope-ast> designation = initializer // - case 286: { action. consumeInitializerDesignated(); break; + case 291: { action. consumeInitializerDesignated(); break; } // - // Rule 290: designator_base ::= [ constant_expression ] + // Rule 295: designator_base ::= [ constant_expression ] // - case 290: { action. consumeDesignatorArray(); break; + case 295: { action. consumeDesignatorArray(); break; } // - // Rule 291: designator_base ::= . identifier_or_typedefname + // Rule 296: designator_base ::= . identifier_token // - case 291: { action. consumeDesignatorField(); break; + case 296: { action. consumeDesignatorField(); break; } // - // Rule 292: designator ::= [ constant_expression ] + // Rule 297: designator ::= [ constant_expression ] // - case 292: { action. consumeDesignatorArray(); break; + case 297: { action. consumeDesignatorArray(); break; } // - // Rule 293: designator ::= . identifier_or_typedefname + // Rule 298: designator ::= . identifier_token // - case 293: { action. consumeDesignatorField(); break; + case 298: { action. consumeDesignatorField(); break; } // - // Rule 294: translation_unit ::= external_declaration_list + // Rule 299: translation_unit ::= external_declaration_list // - case 294: { action. consumeTranslationUnit(); break; + case 299: { action. consumeTranslationUnit(); break; } // - // Rule 295: translation_unit ::= $Empty + // Rule 300: translation_unit ::= $Empty // - case 295: { action. consumeTranslationUnit(); break; + case 300: { action. consumeTranslationUnit(); break; } // - // Rule 300: external_declaration ::= ; + // Rule 305: external_declaration ::= ; // - case 300: { action. consumeDeclarationEmpty(); break; + case 305: { action. consumeDeclarationEmpty(); break; } // - // Rule 301: external_declaration ::= ERROR_TOKEN + // Rule 306: external_declaration ::= ERROR_TOKEN // - case 301: { action. consumeDeclarationProblem(); break; + case 306: { action. consumeDeclarationProblem(); break; } // - // Rule 304: function_definition ::= declaration_specifiers <openscope-ast> function_declarator function_body + // Rule 309: function_definition ::= declaration_specifiers <openscope-ast> function_declarator function_body // - case 304: { action. consumeFunctionDefinition(true); break; + case 309: { action. consumeFunctionDefinition(true); break; } // - // Rule 305: function_definition ::= <openscope-ast> function_declarator function_body + // Rule 310: function_definition ::= <openscope-ast> function_declarator function_body // - case 305: { action. consumeFunctionDefinition(false); break; + case 310: { action. consumeFunctionDefinition(false); break; } // - // Rule 306: function_definition ::= declaration_specifiers <openscope-ast> knr_function_declarator <openscope-ast> declaration_list compound_statement + // Rule 311: function_definition ::= declaration_specifiers <openscope-ast> knr_function_declarator <openscope-ast> declaration_list compound_statement // - case 306: { action. consumeFunctionDefinitionKnR(); break; + case 311: { action. consumeFunctionDefinitionKnR(); break; } // - // Rule 307: function_body ::= { } + // Rule 312: function_body ::= { } // - case 307: { action. consumeStatementCompoundStatement(false); break; + case 312: { action. consumeStatementCompoundStatement(false); break; } // - // Rule 308: function_body ::= { <openscope-ast> block_item_list } + // Rule 313: function_body ::= { <openscope-ast> block_item_list } // - case 308: { action. consumeStatementCompoundStatement(true); break; + case 313: { action. consumeStatementCompoundStatement(true); break; } // - // Rule 310: no_cast_start ::= ERROR_TOKEN + // Rule 315: no_cast_start ::= ERROR_TOKEN // - case 310: { action. consumeExpressionProblem(); break; + case 315: { action. consumeExpressionProblem(); break; } // - // Rule 311: literal ::= MYTHREAD + // Rule 316: literal ::= MYTHREAD // - case 311: { action. consumeKeywordExpression(IUPCASTKeywordExpression.kw_mythread); break; + case 316: { action. consumeKeywordExpression(IUPCASTKeywordExpression.kw_mythread); break; } // - // Rule 312: literal ::= THREADS + // Rule 317: literal ::= THREADS // - case 312: { action. consumeKeywordExpression(IUPCASTKeywordExpression.kw_threads); break; + case 317: { action. consumeKeywordExpression(IUPCASTKeywordExpression.kw_threads); break; } // - // Rule 313: literal ::= UPC_MAX_BLOCKSIZE + // Rule 318: literal ::= UPC_MAX_BLOCKSIZE // - case 313: { action. consumeKeywordExpression(IUPCASTKeywordExpression.kw_upc_max_block_size); break; + case 318: { action. consumeKeywordExpression(IUPCASTKeywordExpression.kw_upc_max_block_size); break; } // - // Rule 314: unary_expression ::= upc_localsizeof unary_expression + // Rule 319: unary_expression ::= upc_localsizeof unary_expression // - case 314: { action. consumeExpressionUnarySizeofOperator(IUPCASTUnarySizeofExpression.upc_localsizeof); break; + case 319: { action. consumeExpressionUnarySizeofOperator(IUPCASTUnarySizeofExpression.upc_localsizeof); break; } // - // Rule 315: unary_expression ::= upc_localsizeof ( type_name ) + // Rule 320: unary_expression ::= upc_localsizeof ( type_name ) // - case 315: { action. consumeExpressionSizeofTypeId(IUPCASTUnarySizeofExpression.upc_localsizeof); break; + case 320: { action. consumeExpressionSizeofTypeId(IUPCASTUnarySizeofExpression.upc_localsizeof); break; } // - // Rule 316: unary_expression ::= upc_blocksizeof unary_expression + // Rule 321: unary_expression ::= upc_blocksizeof unary_expression // - case 316: { action. consumeExpressionUnarySizeofOperator(IUPCASTUnarySizeofExpression.upc_blocksizeof); break; + case 321: { action. consumeExpressionUnarySizeofOperator(IUPCASTUnarySizeofExpression.upc_blocksizeof); break; } // - // Rule 317: unary_expression ::= upc_blocksizeof ( type_name ) + // Rule 322: unary_expression ::= upc_blocksizeof ( type_name ) // - case 317: { action. consumeExpressionSizeofTypeId(IUPCASTUnarySizeofExpression.upc_blocksizeof); break; + case 322: { action. consumeExpressionSizeofTypeId(IUPCASTUnarySizeofExpression.upc_blocksizeof); break; } // - // Rule 318: unary_expression ::= upc_elemsizeof unary_expression + // Rule 323: unary_expression ::= upc_elemsizeof unary_expression // - case 318: { action. consumeExpressionUnarySizeofOperator(IUPCASTUnarySizeofExpression.upc_elemsizeof); break; + case 323: { action. consumeExpressionUnarySizeofOperator(IUPCASTUnarySizeofExpression.upc_elemsizeof); break; } // - // Rule 319: unary_expression ::= upc_elemsizeof ( type_name ) + // Rule 324: unary_expression ::= upc_elemsizeof ( type_name ) // - case 319: { action. consumeExpressionSizeofTypeId(IUPCASTUnarySizeofExpression.upc_elemsizeof); break; + case 324: { action. consumeExpressionSizeofTypeId(IUPCASTUnarySizeofExpression.upc_elemsizeof); break; } // - // Rule 323: shared_type_qualifier ::= shared + // Rule 328: shared_type_qualifier ::= shared // - case 323: { action. consumeToken(); break; + case 328: { action. consumeToken(); break; } // - // Rule 324: reference_type_qualifier ::= relaxed + // Rule 329: reference_type_qualifier ::= relaxed // - case 324: { action. consumeToken(); break; + case 329: { action. consumeToken(); break; } // - // Rule 325: reference_type_qualifier ::= strict + // Rule 330: reference_type_qualifier ::= strict // - case 325: { action. consumeToken(); break; + case 330: { action. consumeToken(); break; } // - // Rule 326: layout_qualifier ::= [ constant_expression ] + // Rule 331: layout_qualifier ::= [ constant_expression ] // - case 326: { action. consumeLayoutQualifier(true, false); break; + case 331: { action. consumeLayoutQualifier(true, false); break; } // - // Rule 327: layout_qualifier ::= [ * ] + // Rule 332: layout_qualifier ::= [ * ] // - case 327: { action. consumeLayoutQualifier(false, true); break; + case 332: { action. consumeLayoutQualifier(false, true); break; } // - // Rule 328: layout_qualifier ::= [ ] + // Rule 333: layout_qualifier ::= [ ] // - case 328: { action. consumeLayoutQualifier(false, false); break; + case 333: { action. consumeLayoutQualifier(false, false); break; } // - // Rule 330: synchronization_statement ::= upc_notify expression ; + // Rule 335: synchronization_statement ::= upc_notify expression ; // - case 330: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_notify, true); break; + case 335: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_notify, true); break; } // - // Rule 331: synchronization_statement ::= upc_notify ; + // Rule 336: synchronization_statement ::= upc_notify ; // - case 331: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_notify, false); break; + case 336: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_notify, false); break; } // - // Rule 332: synchronization_statement ::= upc_wait expression ; + // Rule 337: synchronization_statement ::= upc_wait expression ; // - case 332: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_wait, true); break; + case 337: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_wait, true); break; } // - // Rule 333: synchronization_statement ::= upc_wait ; + // Rule 338: synchronization_statement ::= upc_wait ; // - case 333: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_wait, false); break; + case 338: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_wait, false); break; } // - // Rule 334: synchronization_statement ::= upc_barrier expression ; + // Rule 339: synchronization_statement ::= upc_barrier expression ; // - case 334: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_barrier, true); break; + case 339: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_barrier, true); break; } // - // Rule 335: synchronization_statement ::= upc_barrier ; + // Rule 340: synchronization_statement ::= upc_barrier ; // - case 335: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_barrier, false); break; + case 340: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_barrier, false); break; } // - // Rule 336: synchronization_statement ::= upc_fence ; + // Rule 341: synchronization_statement ::= upc_fence ; // - case 336: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_fence, false); break; + case 341: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_fence, false); break; } // - // Rule 337: iteration_statement ::= upc_forall ( expression ; expression ; expression ; affinity ) statement + // Rule 342: iteration_statement ::= upc_forall ( expression ; expression ; expression ; affinity ) statement // - case 337: { action. consumeStatementUPCForallLoop(true, true, true, true); break; + case 342: { action. consumeStatementUPCForallLoop(true, true, true, true); break; } // - // Rule 338: iteration_statement ::= upc_forall ( expression ; expression ; expression ; ) statement + // Rule 343: iteration_statement ::= upc_forall ( expression ; expression ; expression ; ) statement // - case 338: { action. consumeStatementUPCForallLoop(true, true, true, false); break; + case 343: { action. consumeStatementUPCForallLoop(true, true, true, false); break; } // - // Rule 339: iteration_statement ::= upc_forall ( expression ; expression ; ; affinity ) statement + // Rule 344: iteration_statement ::= upc_forall ( expression ; expression ; ; affinity ) statement // - case 339: { action. consumeStatementUPCForallLoop(true, true, false, true); break; + case 344: { action. consumeStatementUPCForallLoop(true, true, false, true); break; } // - // Rule 340: iteration_statement ::= upc_forall ( expression ; expression ; ; ) statement + // Rule 345: iteration_statement ::= upc_forall ( expression ; expression ; ; ) statement // - case 340: { action. consumeStatementUPCForallLoop(true, true, false, false); break; + case 345: { action. consumeStatementUPCForallLoop(true, true, false, false); break; } // - // Rule 341: iteration_statement ::= upc_forall ( expression ; ; expression ; affinity ) statement + // Rule 346: iteration_statement ::= upc_forall ( expression ; ; expression ; affinity ) statement // - case 341: { action. consumeStatementUPCForallLoop(true, false, true, true); break; + case 346: { action. consumeStatementUPCForallLoop(true, false, true, true); break; } // - // Rule 342: iteration_statement ::= upc_forall ( expression ; ; expression ; ) statement + // Rule 347: iteration_statement ::= upc_forall ( expression ; ; expression ; ) statement // - case 342: { action. consumeStatementUPCForallLoop(true, false, true, false); break; + case 347: { action. consumeStatementUPCForallLoop(true, false, true, false); break; } // - // Rule 343: iteration_statement ::= upc_forall ( expression ; ; ; affinity ) statement + // Rule 348: iteration_statement ::= upc_forall ( expression ; ; ; affinity ) statement // - case 343: { action. consumeStatementUPCForallLoop(true, false, false, true); break; + case 348: { action. consumeStatementUPCForallLoop(true, false, false, true); break; } // - // Rule 344: iteration_statement ::= upc_forall ( expression ; ; ; ) statement + // Rule 349: iteration_statement ::= upc_forall ( expression ; ; ; ) statement // - case 344: { action. consumeStatementUPCForallLoop(true, false, false, false); break; + case 349: { action. consumeStatementUPCForallLoop(true, false, false, false); break; } // - // Rule 345: iteration_statement ::= upc_forall ( ; expression ; expression ; affinity ) statement + // Rule 350: iteration_statement ::= upc_forall ( ; expression ; expression ; affinity ) statement // - case 345: { action. consumeStatementUPCForallLoop(false, true, true, true); break; + case 350: { action. consumeStatementUPCForallLoop(false, true, true, true); break; } // - // Rule 346: iteration_statement ::= upc_forall ( ; expression ; expression ; ) statement + // Rule 351: iteration_statement ::= upc_forall ( ; expression ; expression ; ) statement // - case 346: { action. consumeStatementUPCForallLoop(false, true, true, false); break; + case 351: { action. consumeStatementUPCForallLoop(false, true, true, false); break; } // - // Rule 347: iteration_statement ::= upc_forall ( ; expression ; ; affinity ) statement + // Rule 352: iteration_statement ::= upc_forall ( ; expression ; ; affinity ) statement // - case 347: { action. consumeStatementUPCForallLoop(false, true, false, true); break; + case 352: { action. consumeStatementUPCForallLoop(false, true, false, true); break; } // - // Rule 348: iteration_statement ::= upc_forall ( ; expression ; ; ) statement + // Rule 353: iteration_statement ::= upc_forall ( ; expression ; ; ) statement // - case 348: { action. consumeStatementUPCForallLoop(false, true, false, false); break; + case 353: { action. consumeStatementUPCForallLoop(false, true, false, false); break; } // - // Rule 349: iteration_statement ::= upc_forall ( ; ; expression ; affinity ) statement + // Rule 354: iteration_statement ::= upc_forall ( ; ; expression ; affinity ) statement // - case 349: { action. consumeStatementUPCForallLoop(false, false, true, true); break; + case 354: { action. consumeStatementUPCForallLoop(false, false, true, true); break; } // - // Rule 350: iteration_statement ::= upc_forall ( ; ; expression ; ) statement + // Rule 355: iteration_statement ::= upc_forall ( ; ; expression ; ) statement // - case 350: { action. consumeStatementUPCForallLoop(false, false, true, false); break; + case 355: { action. consumeStatementUPCForallLoop(false, false, true, false); break; } // - // Rule 351: iteration_statement ::= upc_forall ( ; ; ; affinity ) statement + // Rule 356: iteration_statement ::= upc_forall ( ; ; ; affinity ) statement // - case 351: { action. consumeStatementUPCForallLoop(false, false, false, true); break; + case 356: { action. consumeStatementUPCForallLoop(false, false, false, true); break; } // - // Rule 352: iteration_statement ::= upc_forall ( ; ; ; ) statement + // Rule 357: iteration_statement ::= upc_forall ( ; ; ; ) statement // - case 352: { action. consumeStatementUPCForallLoop(false, false, false, false); break; + case 357: { action. consumeStatementUPCForallLoop(false, false, false, false); break; } // - // Rule 353: iteration_statement ::= upc_forall ( declaration expression ; expression ; affinity ) statement + // Rule 358: iteration_statement ::= upc_forall ( declaration expression ; expression ; affinity ) statement // - case 353: { action. consumeStatementUPCForallLoop(true, true, true, true); break; + case 358: { action. consumeStatementUPCForallLoop(true, true, true, true); break; } // - // Rule 354: iteration_statement ::= upc_forall ( declaration expression ; expression ; ) statement + // Rule 359: iteration_statement ::= upc_forall ( declaration expression ; expression ; ) statement // - case 354: { action. consumeStatementUPCForallLoop(true, true, true, false); break; + case 359: { action. consumeStatementUPCForallLoop(true, true, true, false); break; } // - // Rule 355: iteration_statement ::= upc_forall ( declaration expression ; ; affinity ) statement + // Rule 360: iteration_statement ::= upc_forall ( declaration expression ; ; affinity ) statement // - case 355: { action. consumeStatementUPCForallLoop(true, true, false, true); break; + case 360: { action. consumeStatementUPCForallLoop(true, true, false, true); break; } // - // Rule 356: iteration_statement ::= upc_forall ( declaration expression ; ; ) statement + // Rule 361: iteration_statement ::= upc_forall ( declaration expression ; ; ) statement // - case 356: { action. consumeStatementUPCForallLoop(true, true, false, false); break; + case 361: { action. consumeStatementUPCForallLoop(true, true, false, false); break; } // - // Rule 357: iteration_statement ::= upc_forall ( declaration ; expression ; affinity ) statement + // Rule 362: iteration_statement ::= upc_forall ( declaration ; expression ; affinity ) statement // - case 357: { action. consumeStatementUPCForallLoop(true, false, true, true); break; + case 362: { action. consumeStatementUPCForallLoop(true, false, true, true); break; } // - // Rule 358: iteration_statement ::= upc_forall ( declaration ; expression ; ) statement + // Rule 363: iteration_statement ::= upc_forall ( declaration ; expression ; ) statement // - case 358: { action. consumeStatementUPCForallLoop(true, false, true, false); break; + case 363: { action. consumeStatementUPCForallLoop(true, false, true, false); break; } // - // Rule 359: iteration_statement ::= upc_forall ( declaration ; ; affinity ) statement + // Rule 364: iteration_statement ::= upc_forall ( declaration ; ; affinity ) statement // - case 359: { action. consumeStatementUPCForallLoop(true, false, false, true); break; + case 364: { action. consumeStatementUPCForallLoop(true, false, false, true); break; } // - // Rule 360: iteration_statement ::= upc_forall ( declaration ; ; ) statement + // Rule 365: iteration_statement ::= upc_forall ( declaration ; ; ) statement // - case 360: { action. consumeStatementUPCForallLoop(true, false, false, false); break; + case 365: { action. consumeStatementUPCForallLoop(true, false, false, false); break; } // - // Rule 362: affinity ::= continue + // Rule 367: affinity ::= continue // - case 362: { action. consumeToken(); break; + case 367: { action. consumeToken(); break; } diff --git a/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCNoCastExpressionParserprs.java b/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCNoCastExpressionParserprs.java index e8338145b2d..565b28c6b26 100644 --- a/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCNoCastExpressionParserprs.java +++ b/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCNoCastExpressionParserprs.java @@ -53,174 +53,174 @@ public class UPCNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab 2,2,1,3,1,3,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 5,5,6,6,2,2,2,1,0,1, - 2,4,2,1,1,1,3,1,1,2, - 3,6,7,1,0,1,3,1,3,1, - 1,1,1,1,1,3,1,1,1,1, - 1,3,1,2,2,1,5,3,1,3, - 5,1,3,1,3,2,4,3,5,4, - 6,6,3,5,1,1,2,3,4,1, - 2,1,3,1,1,3,2,1,1,1, - 1,2,1,2,3,1,1,1,3,1, - 2,2,2,3,4,5,1,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,1,2,4,2,4,2,4,1, - 1,2,1,1,1,3,3,2,1,3, - 2,3,2,3,2,2,11,10,10,9, - 10,9,9,8,10,9,9,8,9,8, - 8,7,10,9,9,8,9,8,8,7, - 1,1,-38,0,0,0,0,0,0,-35, + 6,8,0,0,1,1,3,3,3,0, + 1,0,1,2,4,2,1,1,1,3, + 1,1,2,3,7,8,0,1,0,1, + 3,1,3,1,1,1,1,1,1,3, + 1,1,1,1,1,3,1,2,2,1, + 5,3,1,3,5,1,3,1,3,2, + 4,3,5,4,6,6,3,5,1,2, + 3,4,5,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,1,1,1,2,4, + 2,4,2,4,1,1,2,1,1,1, + 3,3,2,1,3,2,3,2,3,2, + 2,11,10,10,9,10,9,9,8,10, + 9,9,8,9,8,8,7,10,9,9, + 8,9,8,8,7,1,1,-38,0,0, + 0,0,0,0,0,0,-35,0,0,0, + 0,0,0,0,0,0,0,-2,-4,0, + 0,0,0,-18,-19,-81,0,-82,0,0, + 0,0,-135,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,-78,-212,-87,0,0,0,0,0, - 0,-2,-4,-18,-19,0,0,0,0,-60, - 0,0,0,0,0,0,-172,0,0,0, - 0,0,0,0,0,0,0,0,-39,0, + 0,0,0,0,0,0,-20,-21,-22,-84, + 0,0,0,0,0,-9,0,0,0,0, + 0,0,0,0,0,0,0,0,0,-57, 0,0,0,0,0,0,0,0,0,0, - 0,-20,-21,0,0,0,0,0,0,0, - 0,0,0,-135,0,0,0,0,0,0, + 0,0,0,0,0,-43,0,0,0,0, + 0,0,0,0,-23,-24,0,-201,0,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,0,-174,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,-58,0,0, + 0,0,0,0,0,0,-78,0,0,0, + 0,0,-144,0,-39,-25,-153,-194,-36,0, + -44,0,0,0,0,0,0,0,0,-173, + -26,0,-27,0,0,0,0,0,0,0, + -28,-40,0,0,0,0,0,-97,0,-60, 0,0,0,0,0,0,0,0,0,0, - -54,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-36,-73,0,-156,-40,0, - -55,0,0,0,0,0,0,0,0,0, - 0,0,-22,0,0,0,0,-182,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,-79,0,0, + 0,0,-178,-29,-86,0,0,0,0,0, + -10,0,0,0,0,0,0,0,0,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,-155,0,-144, - -165,-5,0,0,0,0,0,0,-23,-24, - 0,-25,-88,0,-6,0,0,0,0,0, - 0,0,0,0,0,0,-90,0,0,0, - 0,0,0,0,0,0,-85,0,0,0, - 0,0,0,0,0,0,0,0,0,-26, - 0,0,-27,-74,0,-28,0,-29,0,0, - 0,0,0,0,0,0,0,0,-77,0, + 0,0,0,0,0,0,-197,0,0,0, + 0,0,0,0,0,-73,0,0,0,0, + 0,0,0,0,0,0,-3,0,0,0, 0,0,0,0,0,0,0,0,0,0, - -203,0,0,0,0,0,0,-75,0,0, + 0,0,0,0,0,0,-61,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,-209,-77,-94,-95,0,-121, 0,0,0,0,0,0,0,0,0,0, - -57,0,0,0,0,0,0,-93,0,0, - 0,0,0,0,0,-168,0,-9,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,-94,-76,-127,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,-140, - 0,0,0,0,0,0,-97,0,0,0, 0,0,0,0,0,0,0,0,0,-98, - 0,0,-30,0,0,0,0,0,0,-95, - 0,0,0,0,0,0,0,0,0,0, - 0,0,-62,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,-63,0,0,0,0,0,0,-124, - 0,0,0,0,0,0,0,0,0,0, - 0,0,-64,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,-65,0,0,0,0,0,0,-142, - 0,0,0,0,0,0,0,0,0,0, - 0,0,-66,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,-67,0,0,0,0,0,0,-170, - 0,0,0,0,0,0,0,0,0,0, - 0,0,-68,0,0,0,0,0,0,0, + -122,0,-128,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,-69,0,0,0,0,0,0,-192, + 0,0,-99,0,-140,0,0,0,0,0, + 0,0,0,-100,0,0,0,0,0,0, + 0,0,0,0,0,0,-101,0,-30,0, + 0,0,0,0,0,0,0,-74,0,0, + 0,0,0,0,0,0,0,0,-62,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,-63,0, + 0,0,0,0,0,0,0,-75,0,0, + 0,0,0,0,0,0,0,0,-64,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,-71,0,0,0,0,0,0,-217, + 0,0,0,0,0,0,0,0,-65,0, + 0,0,0,0,0,0,0,-76,0,0, + 0,0,0,0,0,0,0,0,-66,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,-67,0, + 0,0,0,0,0,0,0,-96,0,0, + 0,0,0,0,0,0,0,0,-68,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,-161,0,0,0,0,0,0,-99, + 0,0,0,0,0,0,0,0,-69,0, + 0,0,0,0,0,0,0,-125,0,0, + 0,0,0,0,0,0,0,0,-70,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,-162,0,0,0,0,0,0,-186, + 0,0,0,0,0,0,0,0,-71,0, + 0,0,0,0,0,0,0,-142,0,0, + 0,0,0,0,0,0,0,0,-72,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,-185,0,0,0,0,0,0,-100, + 0,0,0,0,0,0,0,0,-159,0, + 0,0,0,0,0,0,0,-168,0,0, + 0,0,0,0,0,0,0,0,-160,0, 0,0,0,0,0,0,0,0,0,0, - 0,-200,0,0,0,0,0,0,-101,0, + 0,0,0,0,0,0,0,0,-177,0, + 0,0,0,0,0,0,0,-102,0,0, + 0,0,0,0,0,0,0,-200,0,0, + 0,0,0,0,0,0,-103,0,0,0, + 0,0,0,0,0,0,-11,0,0,0, + 0,0,0,0,-52,0,0,0,0,0, + 0,0,0,-208,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - -7,0,0,0,0,0,0,-48,0,0, - 0,0,0,0,-102,0,0,0,-206,0, + 0,0,-216,0,0,0,0,0,0,0, + 0,-104,0,0,0,0,0,0,0,0, + 0,-12,0,0,0,0,0,0,0,-53, + 0,0,0,0,0,0,0,0,-224,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,-210,0,0, + 0,0,0,0,0,0,0,-134,0,0, + 0,0,0,0,0,0,-88,0,0,0, + 0,0,0,0,0,0,-143,-5,0,0, + 0,0,0,0,-141,0,-54,0,0,0, + 0,0,0,0,0,-105,0,0,0,-206, + -164,-163,-41,-89,0,-106,0,0,0,0, + 0,0,-139,-107,0,0,0,0,0,0, + 0,0,0,0,0,0,-127,0,0,0, + -147,0,-93,0,0,0,-83,0,-226,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-8,0,0,0, - 0,0,0,-49,0,0,0,0,0,0, - -224,0,0,0,-220,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-134,0,0,0,0,0,0, - -84,0,0,0,0,0,0,0,0,0, - 0,0,-143,-213,-81,-184,-177,-82,0,0, - -58,0,0,0,0,0,0,-176,0,0, - 0,0,0,0,-15,0,0,0,0,0, - 0,-125,0,-92,-195,0,-166,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-117,0,0,0,0,0, - 0,0,0,-119,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-197,0, - 0,0,0,0,0,0,0,-173,0,-96, - 0,0,0,0,0,-219,-103,-104,0,0, - 0,0,0,-56,0,0,0,0,0,0, + 0,0,0,-188,-48,0,0,0,0,0, + 0,0,0,-154,0,-205,-108,0,-149,0, + -165,0,0,0,0,0,0,0,0,0, + -91,0,-13,0,0,0,0,0,0,0, + -129,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,-16,0,0,0,0,0,0,-83, - -121,-105,0,0,0,0,0,0,0,-167, - -129,-126,-131,-1,-106,0,-86,0,0,0, - 0,0,0,0,0,0,-107,-108,0,0, - 0,0,0,0,0,0,0,0,-132,0, - 0,0,0,0,0,0,0,0,-136,0, - 0,0,0,-109,0,0,0,-50,0,0, - 0,0,0,0,-110,0,0,0,-51,0, - 0,0,0,0,0,-181,0,0,0,-52, - 0,0,0,0,0,0,-89,0,0,-53, - 0,0,0,0,0,0,-80,0,0,0, - -111,-37,-91,0,0,-112,-202,-141,0,0, - 0,0,0,-139,-113,-114,0,-115,-147,0, - 0,0,0,-116,0,0,0,0,0,0, + -118,-109,-187,-223,-110,0,0,0,-111,0, + -130,0,0,-55,0,0,0,0,0,0, + 0,0,0,0,0,-56,0,0,0,0, + 0,0,0,0,-112,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,-179, + 0,0,0,0,0,-49,0,0,0,0, + 0,0,0,0,0,0,-50,0,0,0, + 0,0,0,0,0,-218,0,-124,0,0, + 0,0,0,0,0,-166,0,0,0,-51, 0,0,0,0,0,0,0,0,0,0, - -163,0,0,0,0,-128,0,0,0,0, - -43,0,0,0,0,0,0,-130,0,0, - 0,0,-133,-145,0,-44,0,0,0,0, - 0,0,-158,0,-123,0,0,0,0,0, - 0,-148,0,0,0,0,0,0,-164,0, - 0,0,0,0,0,0,-221,-149,-151,-154, - -157,-42,0,-178,0,0,0,0,0,0, - -10,0,0,0,0,0,0,-11,0,0, - 0,0,0,0,-12,0,0,0,0,0, + -80,-6,0,0,0,0,0,-85,-113,0, + -114,-87,-115,0,0,0,0,0,0,0, + 0,0,-190,-116,-225,-131,0,-117,0,0, 0,0,0,0,0,0,0,0,0,0, - -13,0,0,0,0,0,0,-14,0,0, - 0,0,0,0,-17,-179,-31,-169,-188,-209, - -194,0,-187,0,0,0,-32,0,-33,-183, - -41,-190,-196,0,-205,0,0,0,0,0, - 0,0,-34,0,0,0,0,0,0,0, - 0,0,0,0,-218,0,0,0,0,0, - 0,0,-122,0,0,0,0,-211,-216,0, - 0,-223,0,0,0,0,-201,0,-45,0, - 0,0,0,0,0,0,0,0,0,-138, - 0,0,-46,0,0,0,0,0,0,-47, - 0,0,0,0,0,0,0,0,0,-150, - -198,-152,0,0,0,0,0,0,0,-191, - -204,-171,0,0,0,-59,0,-175,0,0, - -193,0,0,0,0,-208,0,0,0,0, - 0,0,0,0,0,0,-199,0,0,0, - 0,-146,0,-118,0,0,0,0,0,0, - 0,0,0,0,-153,-214,-215,0,0,0, - 0,-180,0,0,0,0,-222,0,0,0, - 0,0,0,0,-137,0,0,0,0,0, - 0,-159,0,0,0,0,0,0,0,0, - 0,0,-160,0,0,0,-189,0,0,0, - 0,0,-174,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, + -90,-120,0,-136,-92,-145,-211,-151,-215,0, + 0,0,0,0,0,0,0,0,0,-156, + -132,-37,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,-126, + -148,0,0,0,0,0,0,0,0,0, + -162,0,0,0,0,0,0,-186,-185,-219, + 0,0,-169,-175,-195,0,0,0,0,0, + 0,0,-17,-172,-196,0,-212,-207,0,-133, + 0,0,0,0,-14,0,0,0,0,0, + 0,0,0,0,-31,0,0,0,0,0, + 0,0,0,0,-32,-193,0,0,-217,0, + 0,0,-33,0,0,0,-1,0,-137,-222, + 0,0,0,0,0,0,-34,0,-42,0, + 0,-150,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, + 0,0,0,-45,0,0,0,0,0,0, + -119,0,0,0,0,0,0,-46,0,0, + 0,0,0,0,-47,0,0,0,0,0, + 0,0,0,-161,-170,0,0,0,0,-138, + -204,-203,-146,0,-59,0,0,0,0,0, + 0,0,0,0,0,-183,0,0,0,0, + 0,0,0,0,0,-176,0,0,0,0, + -184,-214,-198,0,0,0,0,0,-7,0, + 0,0,0,0,-8,0,0,0,0,0, + 0,0,0,0,0,0,-158,-191,0,0, + 0,0,0,0,-210,0,0,0,0,0, + -15,0,0,0,0,0,0,0,0,0, + 0,0,0,0,-181,0,-192,0,-16,0, + 0,0,0,0,-182,0,0,-220,0,-221, + -202,-167,-152,0,-155,-157,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, + -199,0,0,0,0,0,-171,0,-180,0, + -189,-213,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0 + 0,0,0,0,0,0,0 }; }; public final static short baseCheck[] = BaseCheck.baseCheck; @@ -230,194 +230,194 @@ public class UPCNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface BaseAction { public final static char baseAction[] = { - 86,7,21,21,20,20,29,29,71,71, + 89,9,21,21,20,20,37,37,72,72, 1,1,1,1,2,2,2,3,3,4, - 4,4,4,4,4,4,4,54,54,72, - 72,5,5,5,5,5,5,5,5,5, - 5,5,6,8,8,8,8,9,9,9, + 4,4,4,4,4,4,4,54,54,73, + 73,5,5,5,5,5,5,5,5,5, + 5,5,6,7,7,7,7,8,8,8, 10,10,10,11,11,11,11,11,12,12, 12,13,13,14,14,15,15,16,16,17, 17,18,18,19,19,19,19,19,19,19, - 19,19,19,19,19,98,31,30,87,87, - 74,74,44,99,99,99,99,99,99,99, - 100,100,100,101,101,106,106,107,107,102, - 102,103,103,103,109,109,104,104,104,104, - 105,105,105,105,105,108,108,22,22,22, - 22,22,33,33,33,80,80,75,75,75, - 75,76,76,76,77,77,77,78,78,78, - 79,79,79,110,110,111,111,112,34,36, - 36,36,36,36,55,57,57,57,57,57, - 57,57,57,57,57,57,57,68,68,32, - 32,65,65,65,65,66,66,66,58,58, - 59,59,51,51,51,27,88,88,81,82, - 82,82,67,67,83,83,84,84,69,69, - 23,24,24,24,35,50,50,37,37,37, - 37,40,40,42,38,38,39,43,43,113, - 113,41,114,114,89,89,28,28,28,28, - 28,28,28,28,28,85,52,52,52,52, - 61,61,60,60,60,62,62,53,53,90, - 90,49,49,63,63,63,45,45,45,46, - 47,47,47,48,48,48,48,56,56,56, - 64,91,73,73,73,73,70,92,93,93, - 94,94,95,95,115,115,116,116,117,117, - 117,117,119,119,118,118,118,120,120,86, - 86,1,1,1,5,5,5,5,5,5, - 23,23,25,25,26,26,96,96,96,99, - 121,121,121,121,121,121,121,104,104,104, - 104,104,104,104,104,104,104,104,104,104, - 104,104,104,104,104,104,104,104,104,104, - 104,122,122,1,14,19,15,394,638,43, - 296,432,395,533,433,590,589,630,592,636, - 633,73,90,558,693,196,133,210,320,321, - 649,1224,353,466,1115,172,135,132,134,158, - 753,14,19,15,394,42,43,692,432,395, - 533,433,590,589,630,592,1451,1496,137,241, - 164,215,1257,218,1360,220,221,226,141,144, - 147,150,139,6,960,1744,182,393,1350,617, - 1367,1437,1453,1254,654,14,19,15,394,638, - 43,518,432,395,533,433,590,589,630,592, - 636,633,73,277,720,14,19,15,394,638, - 43,518,432,395,533,433,590,589,630,592, - 636,633,73,277,753,14,19,15,394,42, - 43,23,432,395,533,433,590,589,630,1456, - 282,753,14,19,15,394,42,43,1523,432, - 395,533,433,1352,283,296,296,578,369,241, - 282,753,14,19,15,394,42,43,1523,432, - 395,533,1365,24,283,16,1465,1659,467,14, - 19,15,394,638,43,518,432,395,533,433, - 590,589,630,592,636,633,73,277,396,14, - 19,15,394,638,43,1653,432,395,533,433, - 590,589,630,592,636,633,73,1351,908,236, - 341,991,786,14,19,15,394,318,1721,168, - 229,22,239,310,284,819,14,19,15,394, - 316,273,1523,133,210,320,321,367,285,270, - 1620,1060,288,135,132,134,158,1009,215,1257, - 218,1360,220,221,226,1508,263,1228,1225,268, - 559,960,1426,454,296,137,402,164,1026,1513, - 133,210,320,321,840,141,144,147,150,231, - 143,132,134,158,1466,1350,617,1367,1437,1453, - 1254,687,14,19,15,394,638,43,296,432, - 395,533,433,590,589,630,592,636,633,73, - 277,753,14,19,15,394,638,43,1468,432, - 395,533,433,590,589,630,592,636,633,73, - 90,753,14,19,15,394,42,43,951,432, - 395,533,433,590,589,1378,558,286,753,14, - 19,15,394,42,39,1523,918,14,19,15, - 394,638,43,1680,432,395,533,433,590,589, - 630,592,636,633,73,1464,971,296,586,14, - 19,15,394,42,43,393,432,395,533,433, - 590,589,630,592,636,633,92,1474,1255,328, - 431,14,19,15,394,638,43,253,432,395, - 533,433,590,589,630,592,636,633,73,1491, - 522,237,1469,753,14,19,15,394,638,43, - 296,432,395,533,433,590,589,630,592,636, - 633,73,91,753,14,19,15,394,638,43, - 21,432,395,533,433,590,589,630,592,636, - 633,73,84,753,14,19,15,394,638,43, - 296,432,395,533,433,590,589,630,592,636, - 633,73,83,753,14,19,15,394,638,43, - 269,432,395,533,433,590,589,630,592,636, - 633,73,82,753,14,19,15,394,638,43, - 296,432,395,533,433,590,589,630,592,636, - 633,73,81,753,14,19,15,394,638,43, - 275,432,395,533,433,590,589,630,592,636, - 633,73,80,753,14,19,15,394,638,43, - 296,432,395,533,433,590,589,630,592,636, - 633,73,79,753,14,19,15,394,638,43, - 276,432,395,533,433,590,589,630,592,636, - 633,73,78,753,14,19,15,394,638,43, - 296,432,395,533,433,590,589,630,592,636, - 633,73,77,753,14,19,15,394,638,43, - 222,432,395,533,433,590,589,630,592,636, - 633,73,76,753,14,19,15,394,638,43, - 296,432,395,533,433,590,589,630,592,636, - 633,73,75,753,14,19,15,394,638,43, - 227,432,395,533,433,590,589,630,592,636, - 633,73,74,753,14,19,15,394,638,43, - 298,432,395,533,433,590,589,630,592,636, - 633,73,1622,753,14,19,15,394,638,43, - 569,432,395,533,433,590,589,630,592,636, - 633,73,1710,753,14,19,15,394,42,43, - 314,432,395,533,433,590,589,630,592,636, - 633,92,753,14,19,15,394,42,43,407, - 432,395,533,433,590,589,630,592,636,633, - 92,852,14,19,15,394,314,1711,753,14, - 19,15,394,42,43,503,432,395,1040,753, - 14,19,15,394,42,43,209,432,395,533, - 433,590,589,630,592,636,633,92,753,14, - 19,15,394,42,43,289,432,395,533,433, - 590,589,630,592,636,633,92,885,14,19, - 15,394,40,1757,753,14,19,15,394,42, - 43,58,432,395,1080,753,14,19,15,394, - 42,43,200,432,395,533,433,590,589,630, - 592,636,633,92,753,14,19,15,394,42, - 43,343,432,395,533,433,590,589,630,592, - 636,633,72,83,558,259,527,909,115,201, - 716,753,14,19,15,394,42,43,692,432, - 395,533,433,590,1404,753,14,19,15,394, - 33,270,892,271,341,140,272,639,291,580, - 215,1257,218,1360,220,221,226,181,263,1228, - 1225,268,278,259,1223,25,1547,133,210,320, - 321,1737,444,270,69,225,260,136,132,134, - 158,1775,216,1257,218,1360,220,221,226,127, - 265,1228,1225,268,1744,255,1224,322,125,138, - 604,164,880,257,1514,1299,127,174,345,142, - 145,148,151,1224,753,14,19,15,394,42, - 43,20,432,395,533,1377,215,1257,218,1360, - 220,221,226,753,14,19,15,394,32,1658, - 501,604,557,215,1257,218,1360,220,221,226, - 286,25,660,25,621,339,1658,1022,1700,1742, - 1702,681,238,133,210,320,321,373,626,193, - 196,198,274,140,132,134,158,1610,224,25, - 133,210,320,321,86,309,1755,197,198,183, - 146,132,134,158,763,139,1782,164,753,14, - 19,15,394,42,43,659,432,395,1099,753, - 14,19,15,394,42,43,692,432,395,1125, - 753,14,19,15,394,42,43,1054,432,1317, - 753,14,19,15,394,42,43,1047,432,1318, - 392,441,254,1067,1252,26,632,909,240,383, - 133,210,320,321,604,620,672,273,738,604, - 149,132,134,158,771,270,133,210,320,321, - 270,251,210,320,321,240,152,132,134,158, - 326,604,263,1228,1225,268,804,263,1228,1225, - 268,753,14,19,15,394,42,43,837,777, - 840,1756,239,870,478,262,753,14,19,15, - 394,42,43,903,790,551,14,19,15,394, - 42,35,551,14,19,15,394,42,35,551, - 14,19,15,394,42,35,243,473,25,25, - 25,25,25,327,728,1712,1718,1762,1613,681, - 244,753,14,19,15,394,42,38,753,14, - 19,15,394,42,37,753,14,19,15,394, - 42,36,86,1310,216,1257,218,1360,220,221, - 226,753,14,19,15,394,42,35,753,14, - 19,15,394,42,34,25,928,25,764,25, - 520,660,363,692,363,580,464,25,1726,25, - 758,524,604,692,363,527,363,195,681,195, - 1223,228,1452,25,1452,86,515,86,515,195, - 363,195,279,241,1452,998,1452,86,515,86, - 515,88,184,126,370,195,516,293,661,908, - 1452,256,419,86,515,231,634,527,668,753, - 14,19,15,394,42,46,250,210,320,321, - 126,192,747,753,14,19,15,394,42,45, - 753,14,19,15,394,42,44,1872,1872,1554, - 56,692,113,250,210,320,321,580,800,580, - 604,604,170,1767,1458,1872,25,1872,284,580, - 1872,892,195,681,195,580,51,1308,580,1308, - 183,242,290,580,195,1872,207,692,770,1308, - 195,1458,731,1223,500,1308,86,1415,1223,580, - 1872,190,1872,190,1872,513,692,604,407,1803, - 1238,1803,513,190,1223,1033,202,692,1872,190, - 1623,1803,270,1255,255,126,1701,1803,292,255, - 1872,880,126,1514,1872,203,1000,1554,1514,265, - 1228,1225,268,297,1554,255,1181,354,250,210, - 320,321,920,227,1514,250,210,320,321,1872, - 580,1872,1872,1872,1872,1645,251,210,320,321, - 251,210,320,321,206,195,1872,1872,1872,1872, - 1308,206,1872,1872,1872,1872,1793,1872,1227,1606, - 1872,1872,1872,1797,1872,1457,1606,1872,1872,1872, - 1872,1872,1872,1872,191,1872,0,323,748,0, - 17,178,0,18,177,0,1,2095,0,1, - 2106,0 + 19,19,19,19,19,104,30,29,90,90, + 75,75,45,105,105,105,105,105,105,105, + 106,106,106,107,107,112,112,113,113,108, + 108,109,109,109,115,115,110,110,110,110, + 111,111,111,111,111,114,114,26,26,26, + 26,26,31,31,31,81,81,76,76,76, + 76,77,77,77,78,78,78,79,79,79, + 80,80,80,116,116,117,117,118,32,34, + 34,34,34,34,55,57,57,57,57,57, + 57,57,57,57,57,57,57,66,66,27, + 27,63,63,91,92,67,67,64,64,64, + 68,82,82,83,83,69,69,69,35,93, + 93,84,85,85,85,65,65,94,86,86, + 87,87,70,70,22,23,23,23,33,51, + 51,38,38,38,38,41,41,43,39,39, + 40,44,44,119,119,42,120,120,95,95, + 28,28,28,28,28,28,28,28,28,88, + 52,52,52,52,36,59,59,58,58,58, + 60,60,53,53,96,96,50,50,61,61, + 61,46,46,46,47,48,48,48,49,49, + 49,49,56,56,56,62,97,74,74,74, + 74,71,98,99,99,100,100,101,101,121, + 121,122,122,123,123,123,123,125,125,124, + 124,124,126,126,89,89,1,1,1,5, + 5,5,5,5,5,22,22,24,24,25, + 25,102,102,102,105,127,127,127,127,127, + 127,127,110,110,110,110,110,110,110,110, + 110,110,110,110,110,110,110,110,110,110, + 110,110,110,110,110,110,128,128,1,14, + 19,15,394,594,43,427,395,480,429,428, + 476,475,551,536,561,553,73,90,458,40, + 133,214,325,326,59,78,556,696,808,135, + 132,134,158,542,14,19,15,394,594,43, + 427,395,1304,429,428,476,475,551,536,561, + 553,73,282,137,276,164,277,193,64,139, + 693,141,144,147,150,595,638,14,19,15, + 394,42,39,389,1257,1458,1462,1501,1505,1253, + 638,14,19,15,394,42,43,427,395,287, + 429,428,476,475,1352,1520,638,14,19,15, + 394,42,43,720,288,304,16,537,606,14, + 19,15,394,594,43,427,395,1304,429,428, + 476,475,551,536,561,553,73,282,351,14, + 19,15,394,594,43,427,395,1304,429,428, + 476,475,551,536,561,553,73,282,638,14, + 19,15,394,42,43,427,395,39,429,428, + 476,1355,327,225,287,191,277,907,917,480, + 1520,638,14,19,15,394,42,43,743,288, + 63,24,1507,171,289,133,214,325,326,16, + 1520,250,191,1502,135,132,134,158,775,290, + 638,14,19,15,394,42,43,427,395,1671, + 429,428,476,475,551,536,1385,26,137,20, + 164,550,1578,934,325,53,141,144,147,150, + 595,638,14,19,15,394,42,38,23,1257, + 1458,1462,1501,1505,1253,281,14,19,15,394, + 594,43,427,395,1650,429,428,476,475,551, + 536,561,553,73,721,22,240,574,14,19, + 15,394,594,43,427,395,480,429,428,476, + 475,551,536,561,553,73,282,638,14,19, + 15,394,594,43,427,395,1461,429,428,476, + 475,551,536,561,553,73,90,638,14,19, + 15,394,42,43,427,395,1331,429,428,476, + 475,551,1459,291,294,647,386,830,846,1520, + 798,14,19,15,394,594,43,427,395,1700, + 429,428,476,475,551,536,561,553,73,1233, + 227,775,1565,470,14,19,15,394,42,43, + 427,395,389,429,428,476,475,551,536,561, + 553,92,242,385,333,316,14,19,15,394, + 594,43,427,395,151,429,428,476,475,551, + 536,561,553,73,1694,211,241,422,1251,638, + 14,19,15,394,594,43,427,395,480,429, + 428,476,475,551,536,561,553,73,91,638, + 14,19,15,394,594,43,427,395,1463,429, + 428,476,475,551,536,561,553,73,84,638, + 14,19,15,394,594,43,427,395,480,429, + 428,476,475,551,536,561,553,73,83,638, + 14,19,15,394,594,43,427,395,1474,429, + 428,476,475,551,536,561,553,73,82,638, + 14,19,15,394,594,43,427,395,480,429, + 428,476,475,551,536,561,553,73,81,638, + 14,19,15,394,594,43,427,395,1478,429, + 428,476,475,551,536,561,553,73,80,638, + 14,19,15,394,594,43,427,395,480,429, + 428,476,475,551,536,561,553,73,79,638, + 14,19,15,394,594,43,427,395,21,429, + 428,476,475,551,536,561,553,73,78,638, + 14,19,15,394,594,43,427,395,480,429, + 428,476,475,551,536,561,553,73,77,638, + 14,19,15,394,594,43,427,395,274,429, + 428,476,475,551,536,561,553,73,76,638, + 14,19,15,394,594,43,427,395,480,429, + 428,476,475,551,536,561,553,73,75,638, + 14,19,15,394,594,43,427,395,280,429, + 428,476,475,551,536,561,553,73,74,638, + 14,19,15,394,594,43,427,395,480,429, + 428,476,475,551,536,561,553,73,1716,638, + 14,19,15,394,594,43,427,395,281,429, + 428,476,475,551,536,561,553,73,1731,638, + 14,19,15,394,42,43,427,395,847,429, + 428,476,475,551,536,561,553,92,638,14, + 19,15,394,42,43,427,395,849,429,428, + 476,475,551,536,561,553,92,638,14,19, + 15,394,42,37,1733,638,14,19,15,394, + 42,43,427,1132,638,14,19,15,394,42, + 43,427,395,1765,429,428,476,475,551,536, + 561,553,92,638,14,19,15,394,42,43, + 427,395,646,429,428,476,475,551,536,561, + 553,92,638,14,19,15,394,42,36,213, + 638,14,19,15,394,42,43,427,1216,638, + 14,19,15,394,42,43,427,395,203,429, + 428,476,475,551,536,561,553,92,638,14, + 19,15,394,42,43,427,395,387,429,428, + 476,475,551,536,561,553,72,398,670,14, + 19,15,394,323,204,232,1436,638,14,19, + 15,394,42,43,427,395,678,429,428,1226, + 917,974,870,550,514,275,742,256,214,325, + 326,1558,657,775,77,219,1221,222,1311,224, + 225,230,278,268,398,396,273,710,264,229, + 275,775,88,225,244,1361,1703,383,265,119, + 219,1221,222,1311,224,225,230,279,268,398, + 396,273,331,1559,1798,133,214,325,326,133, + 214,325,326,938,136,132,134,158,140,132, + 134,158,1476,262,992,638,14,19,15,394, + 42,43,427,395,175,754,72,187,138,88, + 164,892,139,898,164,1560,142,145,148,151, + 595,583,275,638,14,19,15,394,42,35, + 1504,80,220,1221,222,1311,224,225,230,228, + 270,398,396,273,219,1221,222,1311,224,225, + 230,6,510,710,72,618,283,1609,1309,263, + 403,647,1702,1560,638,14,19,15,394,42, + 43,427,395,232,429,1234,638,14,19,15, + 394,42,43,427,395,513,429,1307,188,1580, + 199,201,219,1221,222,1311,224,225,230,1509, + 63,1563,1564,593,293,1609,638,14,19,15, + 394,42,43,427,395,1521,767,638,14,19, + 15,394,42,43,427,395,467,1058,435,14, + 19,15,394,42,35,1560,39,284,200,201, + 638,14,19,15,394,42,43,427,395,247, + 1077,291,702,14,19,15,394,321,877,541, + 1540,539,888,774,219,1221,222,1311,224,225, + 230,278,1502,63,806,502,647,1559,861,275, + 133,214,325,326,133,214,325,326,1294,143, + 132,134,158,146,132,134,158,268,398,396, + 273,918,243,187,360,929,707,907,933,445, + 181,1504,938,220,1221,222,1311,224,225,230, + 945,537,326,133,214,325,326,133,214,325, + 326,527,149,132,134,158,152,132,134,158, + 616,435,14,19,15,394,42,35,1508,533, + 275,435,14,19,15,394,42,35,616,480, + 39,1800,332,988,936,944,1197,533,268,398, + 396,273,248,6,679,919,1502,480,63,226, + 647,195,368,267,1197,638,14,19,15,394, + 42,34,1671,260,1502,6,1502,231,978,198, + 1506,1565,86,539,368,6,679,189,1522,551, + 1294,260,1475,6,368,205,978,505,1506,176, + 199,198,368,377,86,539,657,6,1757,6, + 1522,198,6,1565,86,539,368,1874,657,198, + 1522,1695,86,539,210,646,86,314,1522,1874, + 124,1874,1874,198,1874,778,86,539,86,568, + 538,1575,1522,818,638,14,19,15,394,42, + 46,361,255,214,325,326,210,858,638,14, + 19,15,394,42,45,638,14,19,15,394, + 42,44,1220,1575,775,57,1874,1874,1874,275, + 124,169,778,717,533,6,388,1504,1874,1205, + 533,533,533,1874,657,243,775,270,398,396, + 273,198,255,214,325,326,647,198,1197,1197, + 1758,775,63,775,86,1359,1758,245,745,734, + 14,19,15,394,319,766,14,19,15,394, + 40,1874,246,296,295,260,260,124,935,1205, + 1577,1018,1506,1506,193,775,1874,1306,1874,182, + 193,638,14,19,15,394,33,1473,1787,255, + 214,325,326,1732,1787,124,297,113,1009,638, + 14,19,15,394,32,970,533,1832,63,1874, + 63,977,744,6,1874,6,959,255,214,325, + 326,533,1574,198,1400,1785,1795,256,214,325, + 326,647,1758,256,214,325,326,6,1197,6, + 196,6,444,1874,1874,206,1606,1259,478,1874, + 1701,1874,1874,1874,1801,1874,1874,1874,298,1874, + 1874,1874,235,1874,1874,261,194,1874,0,328, + 723,0,17,178,0,18,177,0,1,2101, + 0,1,2112,0 }; }; public final static char baseAction[] = BaseAction.baseAction; @@ -428,128 +428,116 @@ public class UPCNoCastExpressionParserprs 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,12,13,14,15,16,17,18,19, - 20,21,22,0,0,25,26,27,28,29, - 30,31,32,33,34,35,36,37,38,39, - 40,41,42,43,44,45,46,47,48,49, - 0,1,52,53,54,0,1,0,3,0, - 5,6,7,8,9,10,11,0,0,64, - 65,66,67,18,6,7,8,9,10,11, - 57,58,0,1,2,0,4,0,33,34, - 35,36,37,38,39,40,41,42,43,44, - 45,46,47,48,49,23,51,52,53,54, - 60,56,0,1,0,3,2,5,6,7, - 8,9,10,11,0,0,0,1,2,5, - 18,6,7,8,9,10,11,23,0,0, - 1,2,4,4,0,33,34,35,36,37, - 38,39,40,41,42,43,44,45,46,47, - 48,49,23,51,52,53,54,0,56,0, - 1,0,3,0,5,6,7,8,9,10, - 11,14,0,12,13,12,13,18,6,7, - 8,9,10,11,68,0,1,0,3,75, - 62,63,33,34,35,36,37,38,39,40, - 41,42,43,44,45,46,47,48,49,24, - 51,52,53,54,0,56,0,1,0,3, - 0,5,6,7,8,9,10,11,0,0, - 0,1,0,3,18,6,7,8,9,10, - 11,0,0,0,24,2,4,4,0,33, - 34,35,36,37,38,39,40,41,42,43, - 44,45,46,47,48,49,23,51,52,53, - 54,23,56,0,1,0,3,2,5,6, - 7,8,9,10,11,0,0,0,70,71, - 5,18,6,7,8,9,10,11,23,0, - 1,73,3,0,62,63,33,34,35,36, - 37,38,39,40,41,42,43,44,45,46, - 47,48,49,24,51,52,53,54,0,56, - 0,1,0,3,0,50,6,7,8,9, - 10,11,0,0,57,58,12,13,18,6, - 7,8,9,10,11,23,0,1,0,3, - 57,58,0,33,34,35,36,37,38,39, + 10,11,12,13,14,0,16,17,18,19, + 20,21,22,0,24,25,26,27,28,29, + 30,31,32,33,34,35,36,37,0,0, 40,41,42,43,44,45,46,47,48,49, - 24,23,52,53,54,0,1,2,3,4, - 5,0,64,65,66,67,0,12,13,14, - 15,16,17,18,19,20,21,22,0,1, - 25,26,27,28,29,30,31,32,0,61, - 0,1,2,3,4,5,64,65,66,67, - 0,89,12,13,14,15,16,17,18,19, - 20,21,22,0,59,25,26,27,28,29, - 30,31,32,57,58,0,0,1,2,3, - 4,5,0,1,2,74,4,0,12,13, - 14,15,16,17,0,19,20,21,22,59, - 24,25,26,27,28,29,30,31,32,0, - 0,2,0,4,0,0,6,7,8,9, - 10,11,0,1,74,3,0,51,18,0, - 55,0,23,0,5,4,0,1,5,3, - 77,78,55,33,34,35,36,37,38,39, - 40,41,42,43,44,45,46,47,48,49, - 0,1,2,3,4,5,0,0,0,57, - 58,4,12,13,14,15,16,17,0,19, - 20,21,22,50,55,25,26,27,28,29, - 30,31,32,62,63,0,1,2,3,4, - 5,23,0,1,75,3,0,12,13,14, - 15,16,17,0,19,20,21,22,5,59, - 25,26,27,28,29,30,31,32,0,0, - 0,1,2,3,4,0,70,71,0,61, - 72,0,12,13,14,15,16,17,0,19, - 20,21,22,24,59,25,26,27,28,29, - 30,31,32,0,1,2,3,4,0,0, - 0,23,59,0,5,12,13,14,15,16, - 17,0,19,20,21,22,56,24,25,26, - 27,28,29,30,31,32,0,1,2,3, - 4,0,0,1,2,24,5,72,12,13, - 14,15,16,17,73,19,20,21,22,50, - 24,25,26,27,28,29,30,31,32,0, - 1,2,3,4,0,0,68,0,68,5, - 0,12,13,14,15,16,17,0,19,20, - 21,22,51,24,25,26,27,28,29,30, - 31,32,0,1,2,3,4,0,0,0, - 0,24,0,0,12,13,14,15,16,17, - 0,19,20,21,22,51,14,25,26,27, - 28,29,30,31,32,0,1,2,3,4, - 60,0,0,0,24,0,69,12,13,14, - 15,16,17,0,19,20,21,22,0,0, - 25,26,27,28,29,30,31,32,0,1, - 2,3,4,60,0,0,69,24,0,0, - 12,13,14,15,16,17,0,19,20,21, - 22,0,0,25,26,27,28,29,30,31, - 32,0,1,2,3,4,0,0,0,0, - 24,0,0,12,13,14,15,16,17,0, - 19,20,21,22,0,0,25,26,27,28, - 29,30,31,32,0,1,2,3,4,0, - 0,0,0,24,0,4,12,13,14,15, - 16,17,0,19,20,21,22,0,0,25, - 26,27,28,29,30,31,32,0,1,2, - 3,4,0,0,0,0,24,0,0,12, - 13,14,15,16,17,0,19,20,21,22, - 0,0,25,26,27,28,29,30,31,32, - 0,60,2,0,4,5,6,7,8,9, - 10,11,55,55,0,0,0,0,18,0, - 0,0,2,23,4,5,6,7,8,9, - 10,11,55,33,34,35,36,37,18,0, - 0,1,2,23,0,5,0,0,0,0, - 50,0,5,33,34,35,36,37,0,0, - 0,0,0,23,6,7,8,9,10,11, - 50,0,0,0,0,0,18,6,7,8, - 9,10,11,0,0,0,0,0,0,18, - 50,33,34,35,36,37,0,50,2,0, - 0,5,55,0,33,34,35,36,37,6, - 7,8,9,10,11,0,0,0,0,23, - 0,18,6,7,8,9,10,11,0,0, - 0,0,0,0,18,0,33,34,35,36, - 37,0,0,0,69,0,50,0,0,33, - 34,35,36,37,79,80,81,82,83,84, - 85,86,87,88,0,0,2,0,0,0, - 0,0,0,0,0,0,0,0,0,15, - 16,0,0,0,0,0,0,23,0,0, + 50,51,0,53,54,55,0,1,0,3, + 2,5,0,0,8,9,10,5,12,13, + 14,0,1,2,16,17,0,0,39,0, + 1,23,3,6,7,70,71,0,32,33, + 34,35,36,37,15,72,40,41,42,43, + 44,45,46,47,48,49,50,51,52,53, + 54,55,0,1,52,3,60,5,0,61, + 8,9,10,0,12,13,14,64,65,66, + 67,8,9,10,76,12,13,14,0,68, + 64,65,66,67,32,33,34,35,36,37, + 0,0,40,41,42,43,44,45,46,47, + 48,49,50,51,52,53,54,55,0,1, + 0,3,60,5,0,0,8,9,10,0, + 12,13,14,8,9,10,0,12,13,14, + 0,1,0,3,56,57,4,23,0,1, + 32,33,34,35,36,37,56,57,40,41, + 42,43,44,45,46,47,48,49,50,51, + 52,53,54,55,0,1,0,3,60,0, + 4,0,8,9,10,61,12,13,14,8, + 9,10,0,12,13,14,4,77,78,0, + 64,65,66,67,62,63,32,33,34,35, + 36,37,0,0,40,41,42,43,44,45, + 46,47,48,49,50,51,0,53,54,55, + 0,1,2,3,4,5,6,7,62,63, + 0,11,2,0,0,5,16,17,18,19, + 20,21,22,0,24,25,26,27,28,29, + 30,31,32,23,11,0,1,2,3,4, + 5,6,7,74,0,0,11,2,38,4, + 68,16,17,18,19,20,21,22,58,24, + 25,26,27,28,29,30,31,32,23,73, + 0,1,2,3,4,5,6,7,0,0, + 0,11,2,4,4,15,16,17,18,19, + 20,21,22,58,24,25,26,27,28,29, + 30,31,0,23,0,0,0,1,4,3, + 8,9,10,69,12,13,14,0,1,2, + 15,4,52,79,80,81,82,83,84,85, + 86,87,88,0,32,33,34,35,36,37, + 23,0,40,41,42,43,44,45,46,47, + 48,49,50,51,0,1,2,3,4,5, + 6,7,0,0,0,11,62,63,5,5, + 16,17,18,19,20,21,22,0,24,25, + 26,27,28,29,30,31,0,1,2,0, + 1,2,3,4,5,6,7,56,57,0, + 11,38,39,39,5,16,17,18,19,20, + 21,22,58,24,25,26,27,28,29,30, + 31,0,1,2,0,1,2,3,4,0, + 6,7,0,0,1,11,3,38,0,75, + 16,17,18,19,20,21,22,58,24,25, + 26,27,28,29,30,31,0,1,0,3, + 0,0,1,2,3,4,89,6,7,0, + 0,15,11,15,5,0,15,16,17,18, + 19,20,21,22,60,24,25,26,27,28, + 29,30,31,0,1,2,3,4,23,6, + 7,72,0,1,11,3,74,38,15,16, + 17,18,19,20,21,22,0,24,25,26, + 27,28,29,30,31,0,1,2,3,4, + 0,6,7,73,0,0,11,0,68,4, + 15,16,17,18,19,20,21,22,11,24, + 25,26,27,28,29,30,31,0,1,2, + 3,4,0,6,7,0,0,1,11,3, + 0,6,7,16,17,18,19,20,21,22, + 0,24,25,26,27,28,29,30,31,0, + 1,2,3,4,59,6,7,0,0,1, + 11,3,0,6,7,16,17,18,19,20, + 21,22,0,24,25,26,27,28,29,30, + 31,0,1,2,3,4,0,6,7,0, + 0,1,11,3,5,23,0,16,17,18, + 19,20,21,22,0,24,25,26,27,28, + 29,30,31,0,1,2,3,4,0,6, + 7,0,0,0,11,39,0,38,0,16, + 17,18,19,20,21,22,0,24,25,26, + 27,28,29,30,31,0,1,2,3,4, + 0,6,7,0,0,59,11,0,1,5, + 0,16,17,18,19,20,21,22,15,24, + 25,26,27,28,29,30,31,0,1,2, + 3,4,59,6,7,0,0,0,11,2, + 0,70,71,16,17,18,19,20,21,22, + 15,24,25,26,27,28,29,30,31,0, + 23,2,58,4,5,0,59,8,9,10, + 0,12,13,14,0,0,0,2,0,4, + 5,0,23,8,9,10,0,12,13,14, + 0,32,33,34,35,36,37,38,23,0, + 1,2,0,0,5,15,0,32,33,34, + 35,36,37,38,8,9,10,0,12,13, + 14,0,23,2,0,8,9,10,0,12, + 13,14,56,57,56,57,0,38,32,33, + 34,35,36,37,23,0,0,0,0,32, + 33,34,35,36,37,8,9,10,0,12, + 13,14,0,0,0,0,8,9,10,5, + 12,13,14,0,0,39,0,15,0,32, + 33,34,35,36,37,39,23,39,0,15, + 32,33,34,35,36,37,8,9,10,0, + 12,13,14,0,0,0,0,8,9,10, + 5,12,13,14,8,9,10,0,12,13, + 14,0,1,2,61,4,23,0,0,0, + 0,0,15,0,69,0,0,0,0,75, + 0,0,69,15,23,15,15,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,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,61,0,0,0,0, 0,0,0,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, - 0,0 + 0,0,0,0,0,0,0,0,0 }; }; public final static byte termCheck[] = TermCheck.termCheck; @@ -557,126 +545,109 @@ public class UPCNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface TermAction { public final static char termAction[] = {0, - 1872,708,1605,746,1591,58,2083,2084,2085,2196, - 1211,2197,1575,1568,1598,1343,1245,1167,2033,1882, - 1883,1884,1885,53,1,1561,718,2183,2184,2185, - 1111,595,582,2034,2032,2086,2035,2031,2038,2043, - 2042,2040,2041,2039,2044,2045,2037,2046,2047,2048, - 1,1869,607,593,385,1872,1,281,1,1872, - 189,1,1,1,1,1,1,1872,246,1419, - 1408,1174,1118,1,1,1,1,1,1,1, - 1430,1440,258,2095,581,1872,1,1872,1,1, + 1874,697,1573,698,1323,1,1142,1087,2089,2090, + 2091,1585,2203,430,2204,61,1789,1771,1745,1884, + 1885,1886,1887,65,601,436,2190,2191,2192,1739, + 1452,1198,2035,2036,2034,2092,2037,2033,254,87, + 2040,2045,2044,2042,2043,2041,2046,2047,2039,2048, + 2049,2050,183,1321,1224,1187,1874,1,31,1, + 1223,192,1874,58,1,1,1,1881,1,1, + 1,1,2101,1426,1898,1899,60,50,769,1874, + 2053,1629,2054,541,466,1376,1364,184,1,1, + 1,1,1,1,1632,518,1,1,1,1, + 1,1,1,1,1,1,1,1,192,1, + 1,1,1874,1,1880,1,2071,191,286,562, + 1,1,1,1874,1,1,1,1440,1417,1406, + 1295,2089,2090,2091,535,2203,430,2204,53,1123, + 1440,1417,1406,1295,1,1,1,1,1,1, + 57,1874,1,1,1,1,1,1,1,1, + 1,1,1,1,191,1,1,1,1874,1, + 71,1,2071,192,1874,250,1,1,1,1874, + 1,1,1,1,1,1,59,1,1,1, + 1874,1903,47,1904,1095,1150,1685,1049,1874,2113, + 1,1,1,1,1,1,1095,1150,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,558,189,1,1,1, - 2126,2066,1872,1,266,1,1362,189,1,1, - 1,1,1,1,1,1872,1,2095,384,1881, - 1,2083,2084,2085,2196,1211,2197,558,47,264, - 2095,581,1690,1399,1872,1,1,1,1,1, - 1,1,1,1,1,1,1,1,1,1, - 1,1,558,189,1,1,1,63,2066,1872, - 1,50,1,52,189,1,1,1,1,1, - 1,501,247,1516,1501,1516,1501,1,1,1, - 1,1,1,1,1148,1872,2051,1872,2052,1880, - 1683,1669,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,1,1,1,1361, - 189,1,1,1,1872,2066,1872,1,61,1, - 1872,188,1,1,1,1,1,1,67,245, - 1872,1901,1872,1902,1,2083,2084,2085,2196,1211, - 2197,1872,49,261,1275,1447,1690,1,267,1, - 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,558,188,1,1, - 1,558,2066,1872,1,219,1,1611,189,1, - 1,1,1,1,1,1872,248,57,1324,521, - 1877,1,2083,2084,2085,2196,1211,2197,558,1872, - 2051,701,2052,56,1683,1669,1,1,1,1, - 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1363,189,1,1,1,60,2066, - 1872,2050,323,2049,51,1876,2083,2084,2085,2196, - 1211,2197,1872,249,1430,1440,1516,1501,2033,2083, - 2084,2085,2196,1211,2197,1857,1872,2051,1872,2052, - 1430,1440,59,2034,2032,2086,2035,2031,2038,2043, - 2042,2040,2041,2039,2044,2045,2037,2046,2047,2048, - 1389,1073,607,593,385,1,1889,1605,1890,1525, - 1875,69,1419,1408,1174,1118,55,1575,1568,1598, - 1343,1245,1167,726,1882,1883,1884,1885,1872,2107, - 1561,718,2183,2184,2185,1111,595,582,1872,1226, - 1872,1889,1605,1890,1539,1875,1419,1408,1174,1118, - 70,1856,1575,1568,1598,1343,1245,1167,1053,1882, - 1883,1884,1885,71,1874,1561,718,2183,2184,2185, - 1111,595,582,1430,1440,87,1,1889,1605,1890, - 1591,27,1872,2095,384,484,1399,252,1575,1568, - 1598,1343,1245,1167,1872,1882,1883,1884,1885,1874, - 2959,1561,718,2183,2184,2185,1111,595,582,264, - 127,1447,54,1399,1872,1872,2083,2084,2085,2196, - 1211,2197,205,2051,484,2052,1872,27,2033,1872, - 793,48,558,1,1881,1690,1872,2051,89,2052, - 400,1716,1608,2034,2032,2086,2035,2031,2038,2043, - 2042,2040,2041,2039,2044,2045,2037,2046,2047,2048, - 1872,1889,1605,1890,1591,1875,62,1872,65,1430, - 1440,1284,1575,1568,1598,1343,1245,1167,287,1882, - 1883,1884,1885,89,1316,1561,718,2183,2184,2185, - 1111,595,582,1683,1669,1872,1889,1605,1890,1532, - 1875,1129,204,1667,1880,1667,1872,1575,1568,1598, - 1343,1245,1167,1872,1882,1883,1884,1885,1875,1874, - 1561,718,2183,2184,2185,1111,595,582,1872,319, - 1872,1,1,1,1,66,1324,521,1872,1625, - 1231,68,1,1,1,1,1,1,217,1, - 1,1,1,1275,1874,1,1,1,1,1, - 1,1,1,1,1889,1605,1890,1591,1872,1, - 199,558,1874,1872,1877,1575,1568,1598,1343,1245, - 1167,317,1882,1883,1884,1885,2182,2959,1561,718, - 2183,2184,2185,1111,595,582,1872,1889,1605,1890, - 1591,1872,1,2095,384,1275,1879,1231,1575,1568, - 1598,1343,1245,1167,701,1882,1883,1884,1885,1876, - 2959,1561,718,2183,2184,2185,1111,595,582,1, - 1889,1605,1890,1591,280,1872,1204,208,1185,1551, - 1,1575,1568,1598,1343,1245,1167,315,1882,1883, - 1884,1885,1878,2959,1561,718,2183,2184,2185,1111, - 595,582,1872,1889,1605,1890,1591,1872,1872,1872, - 1872,1275,64,1,1575,1568,1598,1343,1245,1167, - 41,1882,1883,1884,1885,1551,501,1561,718,2183, - 2184,2185,1111,595,582,1872,1889,1607,1890,1591, - 2126,1872,1872,1872,1275,1872,1092,1575,1568,1598, - 1343,1245,1167,186,1882,1883,1884,1885,1872,1872, - 1561,718,2183,2184,2185,1111,595,582,1872,1889, - 1617,1890,1591,2125,1872,1872,661,1548,1872,1872, - 1575,1568,1598,1343,1245,1167,185,1882,1883,1884, - 1885,1872,1872,1561,718,2183,2184,2185,1111,595, - 582,1872,1889,1619,1890,1591,1872,1872,1872,1872, - 1549,1872,1872,1575,1568,1598,1343,1245,1167,187, - 1882,1883,1884,1885,1872,1872,1561,718,2183,2184, - 2185,1111,595,582,1872,1889,1633,1890,1591,1872, - 1872,1,1872,1550,1872,1284,1575,1568,1598,1343, - 1245,1167,1872,1882,1883,1884,1885,28,28,1561, - 718,2183,2184,2185,1111,595,582,1,1889,1605, - 1890,1591,1872,1872,1872,1872,1609,204,1872,1575, - 1568,1598,1343,1245,1167,1872,1882,1883,1884,1885, - 1872,1872,1561,718,2183,2184,2185,1111,595,582, - 17,2126,1860,1872,1860,1860,178,178,178,178, - 178,178,538,1899,1872,1872,1872,1872,178,1872, - 18,1872,1863,1860,1863,1863,177,177,177,177, - 177,177,2827,178,178,178,178,178,177,1872, - 1,1866,581,1863,1872,1877,1872,1872,1872,1872, - 1860,1872,1877,177,177,177,177,177,128,1872, - 1872,1872,1872,558,2083,2084,2085,2196,1211,2197, - 1863,129,1872,1872,1872,42,2033,2083,2084,2085, - 2196,1211,2197,1872,1872,1872,1872,1872,1872,2033, - 1876,2034,2032,2086,2035,2031,1,1876,1447,1872, - 1872,1877,1662,130,2034,2032,2086,2035,2031,2083, - 2084,2085,2196,1211,2197,1872,131,1872,1872,558, - 1872,2033,2083,2084,2085,2196,1211,2197,1872,1872, - 1872,1872,1872,1872,2033,1872,2034,2032,2086,2035, - 2031,1872,1872,1872,1013,1872,1876,1872,1872,2034, - 2032,2086,2035,2031,993,973,953,933,913,873, - 893,853,833,813,31,1872,1621,1872,1872,1872, - 1872,1872,1872,1872,1872,1872,1872,1872,1872,1896, - 1897,1872,1872,1872,1872,1872,1872,1552,1872,1872, - 1872,1872,1872,1872,1872,1872,1872,1872,1872,1872, - 1872,1872,1872,1872,1872,1872,1872,1872,1872,1872, - 1872,1872,1872,1872,1872,1872,1872,1872,1872,1872, - 1872,1872,1872,1872,1872,519,1872,1872,1872,1872, - 1872,1872,1872,1872,1872,1872,1872,1872,1872,1872, - 419 + 192,1,1,1,1874,2052,49,2051,2071,1874, + 1685,249,2089,2090,2091,1726,2203,430,2204,2089, + 2090,2091,1874,2203,430,2204,1619,570,1705,69, + 1440,1417,1406,1295,1678,1664,2035,2036,2034,2092, + 2037,2033,1874,1874,2040,2045,2044,2042,2043,2041, + 2046,2047,2039,2048,2049,2050,67,1321,1224,1187, + 1,1891,1573,1892,1428,1877,1142,1087,1678,1664, + 1,1585,1451,1874,1874,1879,1789,1771,1745,1884, + 1885,1886,1887,63,601,436,2190,2191,2192,1739, + 1452,1198,700,615,1207,1874,1891,1573,1892,1551, + 1877,1142,1087,677,42,266,1585,1451,1878,1, + 1178,1789,1771,1745,1884,1885,1886,1887,1876,601, + 436,2190,2191,2192,1739,1452,1198,1029,615,450, + 1,1891,1573,1892,1323,27,1142,1087,1874,1874, + 269,1585,1451,1806,254,3217,1789,1771,1745,1884, + 1885,1886,1887,1876,601,436,2190,2191,2192,1739, + 1452,1198,127,615,48,1874,186,3240,1685,3240, + 2089,2090,2091,989,2203,430,2204,263,2101,1222, + 1351,1,27,969,949,929,909,889,849,869, + 829,809,789,1874,2035,2036,2034,2092,2037,2033, + 615,56,2040,2045,2044,2042,2043,2041,2046,2047, + 2039,2048,2049,2050,1874,1891,1573,1892,1323,1877, + 1142,1087,1874,1874,1874,1585,1678,1664,1879,1883, + 1789,1771,1745,1884,1885,1886,1887,1874,601,436, + 2190,2191,2192,1739,1452,1198,1,2101,1426,1874, + 1891,1573,1892,1541,1877,1142,1087,1095,1150,1874, + 1585,1878,1620,1354,1879,1789,1771,1745,1884,1885, + 1886,1887,1876,601,436,2190,2191,2192,1739,1452, + 1198,254,2101,1426,1874,1,1,1,1,66, + 1,1,70,185,3242,1,3242,1878,1874,1882, + 1,1,1,1,1,1,1,1876,1,1, + 1,1,1,1,1,1,1874,2053,324,2054, + 68,1,1891,1573,1892,1323,1858,1142,1087,1, + 202,1803,1585,1351,89,272,3217,1789,1771,1745, + 1884,1885,1886,1887,2189,601,436,2190,2191,2192, + 1739,1452,1198,1874,1891,1573,1892,1323,615,1142, + 1087,518,207,3243,1585,3243,677,89,3217,1789, + 1771,1745,1884,1885,1886,1887,1874,601,436,2190, + 2191,2192,1739,1452,1198,1,1891,1573,1892,1323, + 1874,1142,1087,450,1874,1,1585,64,1159,254, + 3217,1789,1771,1745,1884,1885,1886,1887,1207,601, + 436,2190,2191,2192,1739,1452,1198,1874,1891,1573, + 1892,1323,1874,1142,1087,52,1874,2053,1585,2054, + 1874,541,466,1789,1771,1745,1884,1885,1886,1887, + 1874,601,436,2190,2191,2192,1739,1452,1198,1874, + 1891,1595,1892,1323,2133,1142,1087,51,209,2053, + 1585,2054,1874,541,466,1789,1771,1745,1884,1885, + 1886,1887,328,601,436,2190,2191,2192,1739,1452, + 1198,1874,1891,1605,1892,1323,257,1142,1087,1, + 208,695,1585,695,1879,1859,1,1789,1771,1745, + 1884,1885,1886,1887,1874,601,436,2190,2191,2192, + 1739,1452,1198,1874,1891,1613,1892,1323,1874,1142, + 1087,62,1874,1,1585,1802,1874,1878,1874,1789, + 1771,1745,1884,1885,1886,1887,1874,601,436,2190, + 2191,2192,1739,1452,1198,1874,1891,1627,1892,1323, + 1874,1142,1087,322,1874,2133,1585,1,1871,1877, + 1874,1789,1771,1745,1884,1885,1886,1887,1351,601, + 436,2190,2191,2192,1739,1452,1198,1,1891,1573, + 1892,1323,2132,1142,1087,320,1874,271,1585,1247, + 1874,1376,1364,1789,1771,1745,1884,1885,1886,1887, + 1351,601,436,2190,2191,2192,1739,1452,1198,17, + 615,1862,1876,1862,1862,1874,2133,178,178,178, + 1874,178,178,178,1874,18,55,1865,54,1865, + 1865,1874,1862,177,177,177,1874,177,177,177, + 41,178,178,178,178,178,178,1862,1865,1, + 1868,1222,1874,1874,1879,1351,128,177,177,177, + 177,177,177,1865,2089,2090,2091,129,2203,430, + 2204,223,615,1353,1874,2089,2090,2091,1874,2203, + 430,2204,1095,1150,1095,1150,28,1878,2035,2036, + 2034,2092,2037,2033,615,1874,28,130,208,2035, + 2036,2034,2092,2037,2033,2089,2090,2091,131,2203, + 430,2204,1874,292,1,1874,2089,2090,2091,1883, + 2203,430,2204,212,1874,498,1874,1827,1874,2035, + 2036,2034,2092,2037,2033,1901,1068,2952,251,1829, + 2035,2036,2034,2092,2037,2033,1,1,1,252, + 1,1,1,221,1874,285,253,2089,2090,2091, + 1805,2203,430,2204,2089,2090,2091,1874,2203,430, + 2204,269,2101,1222,1821,254,615,1874,190,1874, + 190,190,1831,1874,637,1874,1874,1874,1874,1882, + 1874,1874,1104,186,615,185,207,1874,1874,1874, + 1874,1874,1874,1874,1874,1874,1874,1805 }; }; public final static char termAction[] = TermAction.termAction; @@ -684,29 +655,29 @@ public class UPCNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface Asb { public final static char asb[] = {0, - 353,1,85,41,85,85,85,85,85,85, - 85,85,85,85,85,85,197,3,434,431, - 438,436,444,442,446,445,448,447,10,85, - 197,197,197,197,157,157,314,197,416,416, - 487,85,85,85,85,85,85,85,85,85, - 85,85,85,85,85,85,85,85,85,85, - 85,85,85,85,85,85,85,85,85,85, - 85,85,157,157,157,157,74,318,76,383, - 155,154,286,190,298,298,72,72,298,72, - 298,217,108,108,157,45,431,431,436,436, - 436,436,434,434,442,438,438,445,444,480, - 447,446,419,419,419,419,50,314,306,79, - 45,240,161,157,247,386,161,459,320,459, - 320,377,459,85,50,306,240,240,45,160, - 76,157,312,217,156,388,45,161,320,320, - 320,320,377,377,379,187,350,74,240,306, - 85,85,45,161,383,475,474,318,388,157, - 320,350,279,320,320,350,379,482,379,377, - 350,48,485,416,85,186,350,50,306,45, - 45,157,247,386,312,350,281,350,350,85, - 416,379,52,45,416,85,50,388,455,85, - 454,104,318,350,45,379,157,156,281,85, - 104,350,417,379 + 427,1,146,41,146,146,146,146,146,146, + 146,146,146,146,146,146,55,3,365,362, + 369,367,375,373,377,376,379,378,10,146, + 55,55,55,55,218,218,300,55,347,347, + 247,146,146,146,146,146,146,146,146,146, + 146,146,146,146,146,146,146,146,146,146, + 146,146,146,146,146,146,146,146,146,146, + 146,146,218,218,218,218,131,304,137,314, + 216,215,272,48,284,129,284,129,129,284, + 129,284,75,169,169,218,45,362,362,367, + 367,367,367,365,365,373,369,369,376,375, + 312,378,377,350,350,350,350,107,300,304, + 140,45,98,222,218,390,317,222,129,347, + 347,129,347,146,107,304,292,98,45,221, + 137,218,298,75,217,319,45,222,131,451, + 131,491,493,134,481,131,292,98,146,146, + 45,222,314,307,306,304,319,218,131,451, + 491,491,481,105,425,347,146,133,481,107, + 98,292,45,45,218,390,317,298,451,481, + 484,451,491,493,422,493,109,45,347,146, + 107,292,319,451,486,493,481,146,347,45, + 493,218,217,481,386,146,385,165,304,481, + 481,348,486,146,165,493 }; }; public final static char asb[] = Asb.asb; @@ -714,58 +685,56 @@ public class UPCNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface Asr { public final static byte asr[] = {0, - 89,0,75,23,2,61,76,15,16,14, - 4,12,13,62,63,57,58,64,65,66, - 67,70,71,72,73,74,77,78,51,69, + 89,0,75,23,2,61,76,16,17,11, + 4,6,7,62,63,56,57,64,65,66, + 67,70,71,72,73,74,77,78,52,69, 79,80,81,82,83,85,84,86,87,88, - 68,50,89,55,59,5,0,5,51,23, - 61,15,16,14,4,12,13,25,26,17, - 30,31,32,2,19,20,21,22,27,28, - 29,1,3,24,0,59,5,18,6,7, - 8,9,10,11,19,20,21,22,27,28, - 29,3,15,16,14,12,13,25,26,17, - 30,31,32,4,2,1,0,7,18,37, - 8,36,35,34,6,33,9,10,11,61, - 76,15,16,14,12,13,62,63,57,58, - 64,65,66,67,70,71,72,73,74,77, - 78,69,79,80,81,82,83,84,85,86, - 87,88,4,2,23,55,50,5,0,18, - 59,5,15,16,14,4,12,13,25,26, - 17,30,31,32,2,1,3,19,20,21, - 22,27,28,29,0,69,23,61,0,5, - 68,55,59,50,75,23,17,19,20,21, - 22,2,15,16,14,4,12,13,25,26, - 27,28,29,30,31,32,3,1,52,53, - 54,46,38,43,41,42,40,39,44,45, - 47,48,49,37,34,18,33,36,35,6, - 7,8,10,9,11,0,33,38,6,39, - 52,34,40,35,41,42,36,7,43,44, - 18,53,37,54,45,46,8,47,48,49, - 1,3,9,10,11,60,4,0,75,5, - 4,1,2,68,0,46,38,43,41,42, - 40,39,44,45,47,48,49,68,75,37, - 34,18,33,36,35,6,7,8,9,10, - 11,55,1,5,50,2,23,4,0,33, - 38,6,39,52,34,40,35,41,42,36, - 7,43,44,18,53,37,54,45,46,8, - 47,48,49,1,3,9,10,11,56,5, - 51,0,17,19,20,21,22,1,3,2, - 15,16,14,4,12,13,25,26,27,28, - 29,30,31,32,56,0,1,3,5,51, - 55,0,4,2,23,50,5,33,38,6, - 39,52,34,40,35,41,42,36,7,43, - 44,18,53,37,54,45,46,8,47,48, - 49,9,10,11,60,3,1,0,69,79, - 80,81,82,83,84,85,86,87,88,24, - 4,62,63,12,13,58,57,64,65,66, - 67,70,71,14,72,73,74,59,50,51, - 89,77,78,68,75,5,55,0,33,6, - 34,35,36,7,18,37,8,1,4,9, - 10,11,24,2,5,55,50,75,23,68, - 0,5,55,51,69,0,5,50,17,19, - 20,21,22,1,3,2,15,16,14,4, - 12,13,25,26,27,28,29,30,31,32, - 0 + 68,38,89,39,58,5,0,5,68,39, + 58,38,75,23,18,19,20,21,22,2, + 16,17,11,4,6,7,24,25,26,27, + 28,29,30,31,3,1,53,54,55,48, + 40,45,43,44,42,41,46,47,49,50, + 51,37,34,32,33,36,35,8,9,10, + 13,12,14,0,5,52,23,61,16,17, + 11,4,6,7,24,25,18,29,30,31, + 2,19,20,21,22,26,27,28,1,3, + 15,0,69,23,61,0,58,5,32,8, + 9,10,12,13,14,19,20,21,22,26, + 27,28,3,16,17,11,6,7,24,25, + 18,29,30,31,4,2,1,0,9,32, + 37,10,36,35,34,8,33,12,13,14, + 61,76,16,17,11,6,7,62,63,56, + 57,64,65,66,67,70,71,72,73,74, + 77,78,69,79,80,81,82,83,84,85, + 86,87,88,4,2,23,39,38,5,0, + 32,58,5,16,17,11,4,6,7,24, + 25,18,29,30,31,2,1,3,19,20, + 21,22,26,27,28,0,5,38,18,19, + 20,21,22,1,3,2,16,17,11,4, + 6,7,24,25,26,27,28,29,30,31, + 0,48,40,45,43,44,42,41,46,47, + 49,50,51,68,75,37,34,32,33,36, + 35,8,9,10,12,13,14,39,1,5, + 38,2,23,4,0,2,5,39,38,75, + 23,68,0,4,2,23,38,5,33,40, + 8,41,53,34,42,35,43,44,36,9, + 45,46,32,54,37,55,47,48,10,49, + 50,51,12,13,14,59,3,1,0,69, + 79,80,81,82,83,84,85,86,87,88, + 15,4,62,63,6,7,57,56,64,65, + 66,67,70,71,11,72,73,74,58,38, + 52,89,77,78,68,75,5,39,0,4, + 33,40,8,41,53,34,42,35,43,44, + 36,9,45,46,32,54,37,55,47,48, + 10,49,50,51,1,3,12,13,14,59, + 0,5,39,52,69,0,18,19,20,21, + 22,1,3,2,16,17,11,4,6,7, + 24,25,26,27,28,29,30,31,60,0, + 33,40,8,41,53,34,42,35,43,44, + 36,9,45,46,32,54,37,55,47,48, + 10,49,50,51,1,3,12,13,14,60, + 5,52,0,75,5,4,1,2,68,0, + 1,3,5,52,39,0 }; }; public final static byte asr[] = Asr.asr; @@ -773,29 +742,29 @@ public class UPCNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface Nasb { public final static byte nasb[] = {0, - 67,8,20,8,20,20,20,20,20,20, - 20,20,20,20,20,20,77,8,8,8, - 8,8,8,8,8,8,8,8,8,20, - 77,77,77,77,65,65,71,1,13,13, - 81,78,20,20,20,20,20,20,20,20, - 20,20,20,20,20,20,20,20,78,20, - 20,20,20,20,20,20,20,20,20,20, - 20,20,65,65,65,65,8,48,22,70, - 44,44,54,42,55,55,9,9,55,9, - 55,50,8,8,65,24,8,8,8,8, - 8,8,8,8,8,8,8,8,8,8, - 8,8,8,8,8,8,92,72,92,35, - 24,84,23,65,46,64,23,8,92,8, - 92,92,8,20,18,92,84,84,24,23, - 75,65,29,2,8,91,24,23,92,86, - 92,86,9,92,26,15,92,8,84,75, - 20,20,24,23,28,44,44,48,91,65, - 86,11,61,94,86,11,26,8,8,9, - 11,17,8,9,20,38,11,92,75,24, - 24,65,46,64,30,11,57,11,11,20, - 9,26,19,24,9,20,18,90,62,20, - 8,57,48,11,24,26,65,65,57,20, - 32,11,8,40 + 93,9,17,9,17,17,17,17,17,17, + 17,17,17,17,17,17,89,9,9,9, + 9,9,9,9,9,9,9,9,9,17, + 89,89,89,89,52,52,80,1,22,22, + 48,90,17,17,17,17,17,17,17,17, + 17,17,17,17,17,17,17,17,90,17, + 17,17,17,17,17,17,17,17,17,17, + 17,17,52,52,52,52,9,19,32,79, + 10,10,59,12,60,30,60,75,75,60, + 74,60,54,9,9,52,34,9,9,9, + 9,9,9,9,9,9,9,9,9,9, + 9,9,9,9,9,9,9,46,98,9, + 36,34,96,33,52,84,51,33,77,77, + 77,77,77,17,15,9,46,96,34,33, + 39,52,42,2,9,86,34,33,72,46, + 9,46,24,70,46,9,46,96,17,17, + 34,33,41,10,10,19,86,52,9,102, + 46,77,26,14,9,77,17,28,26,46, + 96,39,34,34,52,84,51,64,46,26, + 110,113,77,24,9,9,16,34,77,17, + 15,39,106,102,44,24,26,17,77,34, + 24,52,52,26,111,17,9,44,19,26, + 26,9,44,17,66,62 }; }; public final static byte nasb[] = Nasb.nasb; @@ -803,16 +772,18 @@ public class UPCNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface Nasr { public final static char nasr[] = {0, - 4,80,79,78,77,76,75,0,32,0, - 29,0,72,0,93,0,70,7,64,4, - 0,7,4,21,0,54,0,20,7,47, - 46,40,38,0,4,7,0,95,0,91, - 0,96,0,28,0,7,22,52,0,65, - 66,67,68,55,33,0,7,40,38,0, - 7,71,0,7,20,0,7,86,0,20, - 7,47,46,0,23,0,27,7,31,0, - 7,87,0,61,0,59,7,27,0,89, - 22,7,0,7,27,51,0 + 4,81,80,79,78,67,77,76,0,28, + 0,102,0,71,9,62,4,0,36,52, + 0,73,0,54,0,37,0,101,0,91, + 0,9,4,21,0,4,9,0,22,0, + 20,48,47,41,39,9,0,9,90,0, + 9,20,0,67,63,64,65,66,55,31, + 0,97,0,48,47,41,39,36,0,99, + 0,92,0,94,68,0,27,0,20,47, + 48,9,0,36,52,9,26,0,35,9, + 30,0,9,89,0,59,0,48,47,36, + 0,83,9,35,0,95,9,26,0,9, + 72,0,9,35,69,0 }; }; public final static char nasr[] = Nasr.nasr; @@ -820,12 +791,12 @@ public class UPCNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface TerminalIndex { public final static char terminalIndex[] = {0, - 85,2,86,9,87,48,64,76,96,97, - 98,10,11,8,6,7,68,69,81,82, - 83,84,1,3,12,13,93,94,95,100, - 101,102,44,55,60,63,72,47,52,56, - 61,62,66,67,74,75,78,79,80,90, - 91,54,70,73,42,107,16,17,89,30, + 85,2,86,9,87,10,11,48,64,76, + 8,96,97,98,3,6,7,68,81,82, + 83,84,1,12,13,93,94,95,100,101, + 102,69,44,55,60,63,72,90,42,47, + 52,56,61,62,66,67,74,75,78,79, + 80,91,54,70,73,16,17,89,30,107, 4,14,15,18,19,20,21,29,31,22, 23,24,25,26,92,5,27,28,32,33, 34,35,36,37,38,39,40,41,108,45, @@ -838,19 +809,19 @@ public class UPCNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface NonterminalIndex { public final static char nonterminalIndex[] = {0, - 0,0,0,115,119,120,0,121,122,123, + 0,0,0,115,119,120,121,122,0,123, 124,125,126,127,128,129,130,131,132,111, - 110,136,143,0,0,0,154,163,112,0, - 114,135,142,0,0,0,159,161,0,162, - 0,0,0,134,172,173,174,0,117,151, - 153,160,169,0,145,150,0,0,152,164, - 167,168,171,0,146,147,148,149,158,175, - 113,116,118,133,137,138,139,140,141,144, - 156,0,0,157,166,109,0,155,165,170, - 0,176,177,0,178,179,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, + 110,143,0,0,0,136,135,164,0,114, + 142,0,0,0,155,0,112,160,162,0, + 163,0,0,0,134,173,174,175,0,117, + 151,161,170,0,145,150,0,165,168,169, + 172,0,146,147,148,149,152,0,154,159, + 176,113,116,118,133,137,138,139,140,141, + 144,0,153,157,0,0,158,167,109,0, + 0,0,156,0,166,171,0,177,178,0, + 179,180,0,0,0,0,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; @@ -858,12 +829,11 @@ public class UPCNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface ScopePrefix { public final static char scopePrefix[] = { - 212,120,59,69,129,149,155,26,192,35, - 87,105,161,166,75,6,12,16,40,83, - 52,139,208,230,234,52,52,201,52,1, - 1,1,44,47,92,115,47,238,20,143, - 183,220,135,171,171,171,171,171,95,95, - 95 + 120,151,206,130,59,69,159,26,186,35, + 87,105,75,6,12,16,40,83,52,141, + 202,224,228,52,52,195,52,1,1,1, + 44,47,92,115,47,232,20,145,177,214, + 137,165,165,165,165,165,95,95,95 }; }; public final static char scopePrefix[] = ScopePrefix.scopePrefix; @@ -871,12 +841,11 @@ public class UPCNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface ScopeSuffix { public final static char scopeSuffix[] = { - 127,127,4,4,127,127,127,32,198,10, - 4,10,127,127,80,10,10,10,10,4, - 4,137,10,10,4,56,80,205,65,4, - 4,4,10,50,4,10,118,10,23,146, - 186,223,137,173,175,177,179,181,102,97, - 110 + 128,128,128,128,4,4,128,32,192,10, + 4,10,80,10,10,10,10,4,4,139, + 10,10,4,56,80,199,65,4,4,4, + 10,50,4,10,118,10,23,148,180,217, + 139,167,169,171,173,175,102,97,110 }; }; public final static char scopeSuffix[] = ScopeSuffix.scopeSuffix; @@ -884,12 +853,11 @@ public class UPCNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface ScopeLhs { public final static char scopeLhs[] = { - 4,67,28,28,67,65,65,56,103,48, - 28,43,65,65,28,5,5,5,48,28, - 28,51,5,4,4,28,28,18,28,96, - 95,94,46,63,28,40,50,2,70,51, - 104,4,51,79,78,77,76,75,43,41, - 43 + 65,63,4,65,28,28,63,56,109,49, + 28,44,28,5,5,5,49,28,28,69, + 5,4,4,28,28,18,28,102,101,100, + 47,61,28,41,51,2,71,69,110,4, + 69,80,79,78,77,76,44,42,44 }; }; public final static char scopeLhs[] = ScopeLhs.scopeLhs; @@ -897,12 +865,11 @@ public class UPCNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface ScopeLa { public final static byte scopeLa[] = { - 51,51,59,59,51,51,51,51,95,50, - 59,50,51,51,19,50,50,50,50,59, - 59,75,50,50,59,4,19,68,18,59, - 59,59,50,2,59,50,1,50,69,1, - 101,50,75,3,52,53,53,46,2,2, - 2 + 52,52,52,52,58,58,52,52,95,38, + 58,38,19,38,38,38,38,58,58,75, + 38,38,58,4,19,68,32,58,58,58, + 38,2,58,38,1,38,69,1,101,38, + 75,3,53,54,54,48,2,2,2 }; }; public final static byte scopeLa[] = ScopeLa.scopeLa; @@ -910,12 +877,11 @@ public class UPCNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface ScopeStateSet { public final static byte scopeStateSet[] = { - 36,21,25,25,21,21,21,95,-1,29, - 25,11,21,21,25,36,36,36,29,25, - 25,5,36,36,36,25,25,69,25,19, - 1,3,29,31,25,11,13,36,96,5, - -1,36,5,22,22,22,22,22,11,11, - 11 + 19,19,34,19,23,23,19,93,-1,27, + 23,9,23,34,34,34,27,23,23,3, + 34,34,34,23,23,67,23,17,1,7, + 27,29,23,9,11,34,94,3,-1,34, + 3,20,20,20,20,20,9,9,9 }; }; public final static byte scopeStateSet[] = ScopeStateSet.scopeStateSet; @@ -923,30 +889,30 @@ public class UPCNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface ScopeRhs { public final static char scopeRhs[] = {0, - 151,23,0,110,0,156,2,32,0,111, - 0,156,2,31,0,156,2,30,0,199, - 114,0,31,150,0,161,180,114,24,171, - 0,112,0,0,167,114,2,153,0,167, - 114,2,0,170,2,0,159,114,0,172, - 0,192,114,23,0,9,110,0,126,18, - 192,114,23,0,69,132,110,0,126,192, - 114,18,23,0,192,114,18,23,0,132, - 110,0,126,18,23,0,126,192,114,23, - 0,126,23,0,147,0,2,0,165,111, - 0,2,111,0,167,114,2,147,0,2, - 0,164,111,0,157,2,0,159,0,161, - 190,114,24,139,52,0,112,0,161,190, - 114,24,52,0,134,0,113,0,195,114, - 134,0,114,134,0,155,113,0,165,114, - 24,139,54,0,165,114,24,139,53,0, - 165,114,24,54,0,165,114,24,53,0, - 187,0,149,0,148,0,147,0,146,0, - 145,0,206,94,0,77,2,114,111,113, - 0,206,127,138,2,98,0,53,0,0, - 138,78,124,0,29,131,0,156,2,17, - 0,161,180,114,24,127,156,2,0,156, - 2,0,111,3,0,118,0,112,0,194, - 2,111,0,138,23,111,0,138,2,0 + 152,23,0,110,0,157,2,31,0,111, + 0,157,2,30,0,157,2,29,0,205, + 116,0,31,150,0,161,181,116,15,169, + 0,112,0,0,165,116,2,154,0,165, + 116,2,0,168,2,0,159,116,0,173, + 0,195,116,23,0,9,110,0,126,32, + 195,116,23,0,69,132,110,0,126,195, + 116,32,23,0,195,116,32,23,0,132, + 110,0,126,32,23,0,126,195,116,23, + 0,126,23,0,148,0,2,0,166,111, + 0,2,111,0,165,116,2,148,0,2, + 0,165,111,0,158,2,0,160,0,161, + 193,116,15,134,201,53,0,112,0,161, + 193,116,15,201,53,0,142,0,113,0, + 200,116,142,0,116,142,0,156,113,0, + 189,116,15,199,134,198,174,0,189,116, + 15,198,174,0,188,0,149,0,148,0, + 147,0,146,0,145,0,212,94,0,77, + 2,114,111,113,0,212,127,137,2,98, + 0,53,0,0,137,78,124,0,29,131, + 0,157,2,18,0,161,181,116,15,127, + 157,2,0,157,2,0,111,3,0,118, + 0,112,0,197,2,111,0,137,23,111, + 0,137,2,0 }; }; public final static char scopeRhs[] = ScopeRhs.scopeRhs; @@ -954,16 +920,16 @@ public class UPCNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface ScopeState { public final static char scopeState[] = {0, - 1060,0,518,0,1718,1803,1712,1702,1700,0, - 1547,1255,1316,384,1299,581,1223,0,1211,0, - 1254,580,363,0,1360,1257,1228,1225,1255,1744, - 581,1223,1447,1452,0,1539,1532,1525,484,400, - 1231,701,1324,521,501,1440,1430,1419,1408,1174, - 1118,1690,1683,1669,1516,1501,1343,1245,1598,1591, - 1575,1568,1561,718,1167,1111,595,582,1185,1148, - 1129,1092,1073,1053,1033,770,1204,748,726,558, - 1013,993,973,953,933,913,893,873,853,833, - 813,363,793,681,661,464,538,444,0 + 593,0,1701,1787,1695,0,1304,0,1475,1294, + 1354,1426,1306,1222,1197,0,430,0,1253,533, + 368,0,1311,1221,398,396,1294,1671,1222,1197, + 1451,1522,0,1551,1541,1428,677,570,518,450, + 1376,1364,1207,1150,1095,1440,1417,1406,1295,1685, + 1678,1664,541,466,1789,1771,1585,1323,1142,1087, + 601,436,1745,1739,1452,1198,1159,1123,1104,1068, + 1049,1029,1009,745,1178,723,700,615,989,969, + 949,929,909,889,869,849,829,809,789,368, + 769,657,637,478,498,403,0 }; }; public final static char scopeState[] = ScopeState.scopeState; @@ -971,29 +937,29 @@ public class UPCNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface InSymb { public final static char inSymb[] = {0, - 0,193,114,181,32,31,30,17,26,25, - 13,12,4,14,16,15,2,111,116,115, - 118,117,120,119,122,121,124,123,112,55, - 2,2,2,2,156,138,134,114,76,61, - 2,23,13,12,63,62,4,67,66,65, - 64,57,58,14,71,70,73,72,78,77, + 0,196,116,182,31,30,29,18,25,24, + 7,6,4,11,17,16,2,111,115,114, + 118,117,120,119,122,121,124,123,112,39, + 2,2,2,2,157,137,142,116,76,61, + 2,23,7,6,63,62,4,67,66,65, + 64,56,57,11,71,70,73,72,78,77, 74,88,87,86,84,85,83,82,81,80, - 79,69,156,156,156,156,127,114,23,2, - 154,153,182,10,183,184,54,53,185,52, - 186,187,1,3,194,138,115,115,117,117, - 117,117,116,116,119,118,118,121,120,138, - 123,122,127,127,127,127,24,159,4,18, - 126,114,4,170,114,2,23,139,24,139, - 24,24,139,68,114,4,114,114,126,192, - 168,167,129,114,169,114,151,4,24,114, - 24,114,114,24,180,114,24,171,114,168, - 192,18,126,4,2,145,147,114,55,167, - 114,165,134,166,114,165,190,139,191,114, - 161,55,199,61,23,200,114,24,168,126, - 126,157,114,2,159,165,114,165,161,69, - 55,190,69,151,61,23,114,114,195,68, - 157,2,114,161,151,180,167,196,55,68, - 159,161,55,136 + 79,69,157,157,157,157,127,116,23,2, + 155,154,183,13,184,174,185,55,54,186, + 53,187,188,1,3,197,137,114,114,117, + 117,117,117,115,115,119,118,118,121,120, + 137,123,122,127,127,127,127,15,159,143, + 32,126,116,4,168,116,2,23,198,175, + 175,201,175,68,116,143,4,116,126,195, + 166,165,133,116,167,116,152,4,134,15, + 134,15,181,116,15,169,4,116,195,32, + 126,4,2,146,148,116,39,165,199,116, + 15,116,161,39,205,61,23,206,116,15, + 116,166,126,126,158,116,2,159,15,189, + 142,190,116,193,134,194,69,152,61,23, + 116,166,116,116,116,193,161,69,39,152, + 181,165,202,189,200,68,158,2,116,161, + 161,39,39,68,159,144 }; }; public final static char inSymb[] = InSymb.inSymb; @@ -1136,7 +1102,7 @@ public class UPCNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab "assignment_expression", "expression_list_actual", "constant_expression", - "identifier_or_typedefname", + "identifier_token", "declaration_specifiers", "simple_declaration_specifiers", "struct_or_union_declaration_sp" + @@ -1156,6 +1122,7 @@ public class UPCNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab "typedef_name_in_declspec", "initializer", "declarator", + "struct_or_union", "struct_declaration_list", "struct_declaration", "specifier_qualifier_list", @@ -1192,9 +1159,9 @@ public class UPCNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public final String name(int index) { return name[index]; } public final static int - ERROR_SYMBOL = 56, - SCOPE_UBOUND = 50, - SCOPE_SIZE = 51, + ERROR_SYMBOL = 60, + SCOPE_UBOUND = 48, + SCOPE_SIZE = 49, MAX_NAME_LENGTH = 38; public final int getErrorSymbol() { return ERROR_SYMBOL; } @@ -1203,20 +1170,20 @@ public class UPCNoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public final int getMaxNameLength() { return MAX_NAME_LENGTH; } public final static int - NUM_STATES = 224, + NUM_STATES = 226, NT_OFFSET = 107, - LA_STATE_OFFSET = 2234, + LA_STATE_OFFSET = 2241, MAX_LA = 2, - NUM_RULES = 362, - NUM_NONTERMINALS = 122, - NUM_SYMBOLS = 229, + NUM_RULES = 367, + NUM_NONTERMINALS = 128, + NUM_SYMBOLS = 235, SEGMENT_SIZE = 8192, - START_STATE = 1364, + START_STATE = 1617, IDENTIFIER_SYMBOL = 0, EOFT_SYMBOL = 89, EOLT_SYMBOL = 89, - ACCEPT_ACTION = 1856, - ERROR_ACTION = 1872; + ACCEPT_ACTION = 1858, + ERROR_ACTION = 1874; public final static boolean BACKTRACK = true; diff --git a/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCNoCastExpressionParsersym.java b/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCNoCastExpressionParsersym.java index bcd5881f4ff..659a93ee9de 100644 --- a/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCNoCastExpressionParsersym.java +++ b/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCNoCastExpressionParsersym.java @@ -18,40 +18,40 @@ public interface UPCNoCastExpressionParsersym { TK_auto = 33, TK_break = 90, TK_case = 91, - TK_char = 38, - TK_const = 6, + TK_char = 40, + TK_const = 8, TK_continue = 92, TK_default = 93, TK_do = 94, - TK_double = 39, + TK_double = 41, TK_else = 95, - TK_enum = 52, + TK_enum = 53, TK_extern = 34, - TK_float = 40, + TK_float = 42, TK_for = 96, TK_goto = 97, TK_if = 98, TK_inline = 35, - TK_int = 41, - TK_long = 42, + TK_int = 43, + TK_long = 44, TK_register = 36, - TK_restrict = 7, + TK_restrict = 9, TK_return = 99, - TK_short = 43, - TK_signed = 44, - TK_sizeof = 17, - TK_static = 18, - TK_struct = 53, + TK_short = 45, + TK_signed = 46, + TK_sizeof = 18, + TK_static = 32, + TK_struct = 54, TK_switch = 100, TK_typedef = 37, - TK_union = 54, - TK_unsigned = 45, - TK_void = 46, - TK_volatile = 8, + TK_union = 55, + TK_unsigned = 47, + TK_void = 48, + TK_volatile = 10, TK_while = 101, - TK__Bool = 47, - TK__Complex = 48, - TK__Imaginary = 49, + TK__Bool = 49, + TK__Complex = 50, + TK__Imaginary = 51, TK_integer = 19, TK_floating = 20, TK_charconst = 21, @@ -62,21 +62,21 @@ public interface UPCNoCastExpressionParsersym { TK_Invalid = 102, TK_LeftBracket = 23, TK_LeftParen = 2, - TK_LeftBrace = 24, + TK_LeftBrace = 15, TK_Dot = 61, TK_Arrow = 76, - TK_PlusPlus = 15, - TK_MinusMinus = 16, - TK_And = 14, + TK_PlusPlus = 16, + TK_MinusMinus = 17, + TK_And = 11, TK_Star = 4, - TK_Plus = 12, - TK_Minus = 13, - TK_Tilde = 25, - TK_Bang = 26, + TK_Plus = 6, + TK_Minus = 7, + TK_Tilde = 24, + TK_Bang = 25, TK_Slash = 62, TK_Percent = 63, - TK_RightShift = 57, - TK_LeftShift = 58, + TK_RightShift = 56, + TK_LeftShift = 57, TK_LT = 64, TK_GT = 65, TK_LE = 66, @@ -89,7 +89,7 @@ public interface UPCNoCastExpressionParsersym { TK_OrOr = 77, TK_Question = 78, TK_Colon = 68, - TK_DotDotDot = 60, + TK_DotDotDot = 59, TK_Assign = 69, TK_StarAssign = 79, TK_SlashAssign = 80, @@ -101,26 +101,26 @@ public interface UPCNoCastExpressionParsersym { TK_AndAssign = 86, TK_CaretAssign = 87, TK_OrAssign = 88, - TK_Comma = 55, - TK_RightBracket = 59, - TK_RightParen = 50, - TK_RightBrace = 51, + TK_Comma = 39, + TK_RightBracket = 58, + TK_RightParen = 38, + TK_RightBrace = 52, TK_SemiColon = 75, - TK_MYTHREAD = 27, - TK_THREADS = 28, - TK_UPC_MAX_BLOCKSIZE = 29, - TK_relaxed = 9, - TK_shared = 10, - TK_strict = 11, + TK_MYTHREAD = 26, + TK_THREADS = 27, + TK_UPC_MAX_BLOCKSIZE = 28, + TK_relaxed = 12, + TK_shared = 13, + TK_strict = 14, TK_upc_barrier = 103, - TK_upc_localsizeof = 30, - TK_upc_blocksizeof = 31, - TK_upc_elemsizeof = 32, + TK_upc_localsizeof = 29, + TK_upc_blocksizeof = 30, + TK_upc_elemsizeof = 31, TK_upc_notify = 104, TK_upc_fence = 105, TK_upc_wait = 106, TK_upc_forall = 107, - TK_ERROR_TOKEN = 56, + TK_ERROR_TOKEN = 60, TK_EOF_TOKEN = 89; public final static String orderedTerminalSymbols[] = { @@ -130,25 +130,24 @@ public interface UPCNoCastExpressionParsersym { "Completion", "Star", "EndOfCompletion", + "Plus", + "Minus", "const", "restrict", "volatile", + "And", "relaxed", "shared", "strict", - "Plus", - "Minus", - "And", + "LeftBrace", "PlusPlus", "MinusMinus", "sizeof", - "static", "integer", "floating", "charconst", "stringlit", "LeftBracket", - "LeftBrace", "Tilde", "Bang", "MYTHREAD", @@ -157,11 +156,14 @@ public interface UPCNoCastExpressionParsersym { "upc_localsizeof", "upc_blocksizeof", "upc_elemsizeof", + "static", "auto", "extern", "inline", "register", "typedef", + "RightParen", + "Comma", "char", "double", "float", @@ -174,17 +176,15 @@ public interface UPCNoCastExpressionParsersym { "_Bool", "_Complex", "_Imaginary", - "RightParen", "RightBrace", "enum", "struct", "union", - "Comma", - "ERROR_TOKEN", "RightShift", "LeftShift", "RightBracket", "DotDotDot", + "ERROR_TOKEN", "Dot", "Slash", "Percent", diff --git a/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCParser.java b/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCParser.java index 46ce1b9fe3e..625c6931b5c 100644 --- a/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCParser.java +++ b/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCParser.java @@ -219,8 +219,9 @@ public String[] getOrderedTerminalSymbols() { return UPCParsersym.orderedTerminalSymbols; } +@SuppressWarnings("nls") public String getName() { - return "UPCParser"; //$NON-NLS-1$ + return "UPCParser"; } @@ -597,7 +598,7 @@ public UPCParser(String[] mapFrom) { // constructor } // - // Rule 101: labeled_statement ::= identifier_or_typedefname : statement + // Rule 101: labeled_statement ::= identifier_token : statement // case 101: { action. consumeStatementLabeled(); break; } @@ -693,7 +694,7 @@ public UPCParser(String[] mapFrom) { // constructor } // - // Rule 121: jump_statement ::= goto identifier_or_typedefname ; + // Rule 121: jump_statement ::= goto identifier_token ; // case 121: { action. consumeStatementGoto(); break; } @@ -795,765 +796,753 @@ public UPCParser(String[] mapFrom) { // constructor } // - // Rule 182: struct_or_union_specifier ::= struct { <openscope-ast> struct_declaration_list_opt } + // Rule 182: struct_or_union_specifier ::= struct_or_union struct_or_union_specifier_hook { <openscope-ast> struct_declaration_list_opt } // - case 182: { action. consumeTypeSpecifierComposite(false, IASTCompositeTypeSpecifier.k_struct); break; + case 182: { action. consumeTypeSpecifierComposite(false); break; } // - // Rule 183: struct_or_union_specifier ::= union { <openscope-ast> struct_declaration_list_opt } + // Rule 183: struct_or_union_specifier ::= struct_or_union struct_or_union_specifier_hook identifier_token struct_or_union_specifier_suffix_hook { <openscope-ast> struct_declaration_list_opt } // - case 183: { action. consumeTypeSpecifierComposite(false, IASTCompositeTypeSpecifier.k_union); break; + case 183: { action. consumeTypeSpecifierComposite(true); break; } // - // Rule 184: struct_or_union_specifier ::= struct identifier_or_typedefname { <openscope-ast> struct_declaration_list_opt } + // Rule 188: elaborated_specifier ::= struct elaborated_specifier_hook identifier_token // - case 184: { action. consumeTypeSpecifierComposite(true, IASTCompositeTypeSpecifier.k_struct); break; + case 188: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_struct); break; } // - // Rule 185: struct_or_union_specifier ::= union identifier_or_typedefname { <openscope-ast> struct_declaration_list_opt } + // Rule 189: elaborated_specifier ::= union elaborated_specifier_hook identifier_token // - case 185: { action. consumeTypeSpecifierComposite(true, IASTCompositeTypeSpecifier.k_union); break; + case 189: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_union); break; } // - // Rule 186: elaborated_specifier ::= struct identifier_or_typedefname + // Rule 190: elaborated_specifier ::= enum elaborated_specifier_hook identifier_token // - case 186: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_struct); break; + case 190: { action. consumeTypeSpecifierElaborated(IASTElaboratedTypeSpecifier.k_enum); break; } // - // Rule 187: elaborated_specifier ::= union identifier_or_typedefname + // Rule 196: struct_declaration ::= specifier_qualifier_list <openscope-ast> struct_declarator_list ; // - case 187: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_union); break; + case 196: { action. consumeStructDeclaration(true); break; } // - // Rule 188: elaborated_specifier ::= enum identifier_or_typedefname + // Rule 197: struct_declaration ::= specifier_qualifier_list ; // - case 188: { action. consumeTypeSpecifierElaborated(IASTElaboratedTypeSpecifier.k_enum); break; + case 197: { action. consumeStructDeclaration(false); break; } // - // Rule 193: struct_declaration ::= specifier_qualifier_list <openscope-ast> struct_declarator_list ; + // Rule 198: struct_declaration ::= ERROR_TOKEN // - case 193: { action. consumeStructDeclaration(true); break; + case 198: { action. consumeDeclarationProblem(); break; } // - // Rule 194: struct_declaration ::= specifier_qualifier_list ; + // Rule 204: struct_declarator ::= : constant_expression // - case 194: { action. consumeStructDeclaration(false); break; + case 204: { action. consumeBitField(false); break; } // - // Rule 195: struct_declaration ::= ERROR_TOKEN + // Rule 205: struct_declarator ::= declarator : constant_expression // - case 195: { action. consumeDeclarationProblem(); break; + case 205: { action. consumeBitField(true); break; } // - // Rule 201: struct_declarator ::= : constant_expression + // Rule 206: enum_specifier ::= enum enum_specifier_hook { <openscope-ast> enumerator_list_opt comma_opt } // - case 201: { action. consumeBitField(false); break; + case 206: { action. consumeTypeSpecifierEnumeration(false); break; } // - // Rule 202: struct_declarator ::= declarator : constant_expression + // Rule 207: enum_specifier ::= enum enum_specifier_hook identifier_token { <openscope-ast> enumerator_list_opt comma_opt } // - case 202: { action. consumeBitField(true); break; + case 207: { action. consumeTypeSpecifierEnumeration(true); break; } // - // Rule 203: enum_specifier ::= enum { <openscope-ast> enumerator_list_opt comma_opt } + // Rule 213: enumerator ::= identifier_token // - case 203: { action. consumeTypeSpecifierEnumeration(false); break; + case 213: { action. consumeEnumerator(false); break; } // - // Rule 204: enum_specifier ::= enum identifier_or_typedefname { <openscope-ast> enumerator_list_opt comma_opt } + // Rule 214: enumerator ::= identifier_token = constant_expression // - case 204: { action. consumeTypeSpecifierEnumeration(true); break; + case 214: { action. consumeEnumerator(true); break; } // - // Rule 209: enumerator ::= identifier_or_typedefname + // Rule 215: type_qualifier ::= type_qualifier_token // - case 209: { action. consumeEnumerator(false); break; - } - - // - // Rule 210: enumerator ::= identifier_or_typedefname = constant_expression - // - case 210: { action. consumeEnumerator(true); break; - } - - // - // Rule 211: type_qualifier ::= type_qualifier_token - // - case 211: { action. consumeDeclSpecToken(); break; + case 215: { action. consumeDeclSpecToken(); break; } // - // Rule 215: function_specifier ::= inline + // Rule 219: function_specifier ::= inline // - case 215: { action. consumeDeclSpecToken(); break; + case 219: { action. consumeDeclSpecToken(); break; } // - // Rule 217: declarator ::= <openscope-ast> pointer_seq direct_declarator + // Rule 221: declarator ::= <openscope-ast> pointer_seq direct_declarator // - case 217: { action. consumeDeclaratorWithPointer(true); break; + case 221: { action. consumeDeclaratorWithPointer(true); break; } // - // Rule 222: basic_direct_declarator ::= declarator_id_name + // Rule 226: basic_direct_declarator ::= declarator_id_name // - case 222: { action. consumeDirectDeclaratorIdentifier(); break; + case 226: { action. consumeDirectDeclaratorIdentifier(); break; } // - // Rule 223: basic_direct_declarator ::= ( declarator ) + // Rule 227: basic_direct_declarator ::= ( declarator ) // - case 223: { action. consumeDirectDeclaratorBracketed(); break; + case 227: { action. consumeDirectDeclaratorBracketed(); break; } // - // Rule 224: declarator_id_name ::= identifier + // Rule 228: declarator_id_name ::= identifier // - case 224: { action. consumeIdentifierName(); break; + case 228: { action. consumeIdentifierName(); break; } // - // Rule 225: array_direct_declarator ::= basic_direct_declarator array_modifier + // Rule 229: array_direct_declarator ::= basic_direct_declarator array_modifier // - case 225: { action. consumeDirectDeclaratorArrayDeclarator(true); break; + case 229: { action. consumeDirectDeclaratorArrayDeclarator(true); break; } // - // Rule 226: array_direct_declarator ::= array_direct_declarator array_modifier + // Rule 230: array_direct_declarator ::= array_direct_declarator array_modifier // - case 226: { action. consumeDirectDeclaratorArrayDeclarator(true); break; + case 230: { action. consumeDirectDeclaratorArrayDeclarator(true); break; } // - // Rule 228: function_direct_declarator ::= basic_direct_declarator ( <openscope-ast> parameter_type_list ) + // Rule 232: function_direct_declarator ::= basic_direct_declarator ( <openscope-ast> parameter_type_list ) // - case 228: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break; + case 232: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break; } // - // Rule 229: function_direct_declarator ::= basic_direct_declarator ( ) + // Rule 233: function_direct_declarator ::= basic_direct_declarator ( ) // - case 229: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break; + case 233: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break; } // - // Rule 231: function_declarator ::= <openscope-ast> pointer_seq function_direct_declarator + // Rule 235: function_declarator ::= <openscope-ast> pointer_seq function_direct_declarator // - case 231: { action. consumeDeclaratorWithPointer(true); break; + case 235: { action. consumeDeclaratorWithPointer(true); break; } // - // Rule 232: knr_direct_declarator ::= basic_direct_declarator ( <openscope-ast> identifier_list ) + // Rule 236: knr_direct_declarator ::= basic_direct_declarator ( <openscope-ast> identifier_list ) // - case 232: { action. consumeDirectDeclaratorFunctionDeclaratorKnR(); break; + case 236: { action. consumeDirectDeclaratorFunctionDeclaratorKnR(); break; } // - // Rule 234: knr_function_declarator ::= <openscope-ast> pointer_seq knr_direct_declarator + // Rule 238: knr_function_declarator ::= <openscope-ast> pointer_seq knr_direct_declarator // - case 234: { action. consumeDeclaratorWithPointer(true); break; + case 238: { action. consumeDeclaratorWithPointer(true); break; } // - // Rule 235: identifier_list ::= identifier + // Rule 239: identifier_list ::= identifier // - case 235: { action. consumeIdentifierKnR(); break; + case 239: { action. consumeIdentifierKnR(); break; } // - // Rule 236: identifier_list ::= identifier_list , identifier + // Rule 240: identifier_list ::= identifier_list , identifier // - case 236: { action. consumeIdentifierKnR(); break; + case 240: { action. consumeIdentifierKnR(); break; } // - // Rule 237: array_modifier ::= [ ] + // Rule 241: array_modifier ::= [ ] // - case 237: { action. consumeDirectDeclaratorArrayModifier(false); break; + case 241: { action. consumeDirectDeclaratorArrayModifier(false); break; } // - // Rule 238: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers ] + // Rule 242: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers ] // - case 238: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, false); break; + case 242: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, false); break; } // - // Rule 239: array_modifier ::= [ assignment_expression ] + // Rule 243: array_modifier ::= [ assignment_expression ] // - case 239: { action. consumeDirectDeclaratorArrayModifier(true); break; + case 243: { action. consumeDirectDeclaratorArrayModifier(true); break; } // - // Rule 240: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers assignment_expression ] + // Rule 244: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers assignment_expression ] // - case 240: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, true); break; + case 244: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, true); break; } // - // Rule 241: array_modifier ::= [ static assignment_expression ] + // Rule 245: array_modifier ::= [ static assignment_expression ] // - case 241: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, false, true); break; + case 245: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, false, true); break; } // - // Rule 242: array_modifier ::= [ static <openscope-ast> array_modifier_type_qualifiers assignment_expression ] + // Rule 246: array_modifier ::= [ static <openscope-ast> array_modifier_type_qualifiers assignment_expression ] // - case 242: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break; + case 246: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break; } // - // Rule 243: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers static assignment_expression ] + // Rule 247: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers static assignment_expression ] // - case 243: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break; + case 247: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break; } // - // Rule 244: array_modifier ::= [ * ] + // Rule 248: array_modifier ::= [ * ] // - case 244: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, false, false); break; + case 248: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, false, false); break; } // - // Rule 245: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers * ] + // Rule 249: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers * ] // - case 245: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, true, false); break; + case 249: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, true, false); break; } // - // Rule 247: pointer_seq ::= * + // Rule 251: pointer_seq ::= pointer_hook * // - case 247: { action. consumePointer(); break; + case 251: { action. consumePointer(); break; } // - // Rule 248: pointer_seq ::= pointer_seq * + // Rule 252: pointer_seq ::= pointer_seq pointer_hook * // - case 248: { action. consumePointer(); break; + case 252: { action. consumePointer(); break; } // - // Rule 249: pointer_seq ::= * <openscope-ast> type_qualifier_list + // Rule 253: pointer_seq ::= pointer_hook * <openscope-ast> type_qualifier_list // - case 249: { action. consumePointerTypeQualifierList(); break; + case 253: { action. consumePointerTypeQualifierList(); break; } // - // Rule 250: pointer_seq ::= pointer_seq * <openscope-ast> type_qualifier_list + // Rule 254: pointer_seq ::= pointer_seq pointer_hook * <openscope-ast> type_qualifier_list // - case 250: { action. consumePointerTypeQualifierList(); break; + case 254: { action. consumePointerTypeQualifierList(); break; } // - // Rule 253: parameter_type_list ::= parameter_list + // Rule 258: parameter_type_list ::= parameter_list // - case 253: { action. consumeEmpty(); break; + case 258: { action. consumeEmpty(); break; } // - // Rule 254: parameter_type_list ::= parameter_list , ... + // Rule 259: parameter_type_list ::= parameter_list , ... // - case 254: { action. consumePlaceHolder(); break; + case 259: { action. consumePlaceHolder(); break; } // - // Rule 255: parameter_type_list ::= ... + // Rule 260: parameter_type_list ::= ... // - case 255: { action. consumePlaceHolder(); break; + case 260: { action. consumePlaceHolder(); break; } // - // Rule 258: parameter_declaration ::= declaration_specifiers complete_parameter_declarator + // Rule 263: parameter_declaration ::= declaration_specifiers complete_parameter_declarator // - case 258: { action. consumeParameterDeclaration(); break; + case 263: { action. consumeParameterDeclaration(); break; } // - // Rule 259: parameter_declaration ::= declaration_specifiers + // Rule 264: parameter_declaration ::= declaration_specifiers // - case 259: { action. consumeParameterDeclarationWithoutDeclarator(); break; + case 264: { action. consumeParameterDeclarationWithoutDeclarator(); break; } // - // Rule 262: type_name ::= specifier_qualifier_list + // Rule 267: type_name ::= specifier_qualifier_list // - case 262: { action. consumeTypeId(false); break; + case 267: { action. consumeTypeId(false); break; } // - // Rule 263: type_name ::= specifier_qualifier_list abstract_declarator + // Rule 268: type_name ::= specifier_qualifier_list abstract_declarator // - case 263: { action. consumeTypeId(true); break; + case 268: { action. consumeTypeId(true); break; } // - // Rule 265: abstract_declarator ::= <openscope-ast> pointer_seq + // Rule 270: abstract_declarator ::= <openscope-ast> pointer_seq // - case 265: { action. consumeDeclaratorWithPointer(false); break; + case 270: { action. consumeDeclaratorWithPointer(false); break; } // - // Rule 266: abstract_declarator ::= <openscope-ast> pointer_seq direct_abstract_declarator + // Rule 271: abstract_declarator ::= <openscope-ast> pointer_seq direct_abstract_declarator // - case 266: { action. consumeDeclaratorWithPointer(false); break; + case 271: { action. consumeDeclaratorWithPointer(false); break; } // - // Rule 270: basic_direct_abstract_declarator ::= ( abstract_declarator ) + // Rule 275: basic_direct_abstract_declarator ::= ( abstract_declarator ) // - case 270: { action. consumeDirectDeclaratorBracketed(); break; + case 275: { action. consumeDirectDeclaratorBracketed(); break; } // - // Rule 271: array_direct_abstract_declarator ::= array_modifier + // Rule 276: array_direct_abstract_declarator ::= array_modifier // - case 271: { action. consumeDirectDeclaratorArrayDeclarator(false); break; + case 276: { action. consumeDirectDeclaratorArrayDeclarator(false); break; } // - // Rule 272: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier + // Rule 277: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier // - case 272: { action. consumeDirectDeclaratorArrayDeclarator(true); break; + case 277: { action. consumeDirectDeclaratorArrayDeclarator(true); break; } // - // Rule 273: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier + // Rule 278: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier // - case 273: { action. consumeDirectDeclaratorArrayDeclarator(true); break; + case 278: { action. consumeDirectDeclaratorArrayDeclarator(true); break; } // - // Rule 274: function_direct_abstract_declarator ::= ( ) + // Rule 279: function_direct_abstract_declarator ::= ( ) // - case 274: { action. consumeDirectDeclaratorFunctionDeclarator(false, false); break; + case 279: { action. consumeDirectDeclaratorFunctionDeclarator(false, false); break; } // - // Rule 275: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( ) + // Rule 280: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( ) // - case 275: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break; + case 280: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break; } // - // Rule 276: function_direct_abstract_declarator ::= ( <openscope-ast> parameter_type_list ) + // Rule 281: function_direct_abstract_declarator ::= ( <openscope-ast> parameter_type_list ) // - case 276: { action. consumeDirectDeclaratorFunctionDeclarator(false, true); break; + case 281: { action. consumeDirectDeclaratorFunctionDeclarator(false, true); break; } // - // Rule 277: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( <openscope-ast> parameter_type_list ) + // Rule 282: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( <openscope-ast> parameter_type_list ) // - case 277: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break; + case 282: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break; } // - // Rule 278: initializer ::= assignment_expression + // Rule 283: initializer ::= assignment_expression // - case 278: { action. consumeInitializer(); break; + case 283: { action. consumeInitializer(); break; } // - // Rule 279: initializer ::= start_initializer_list { <openscope-ast> initializer_list comma_opt } end_initializer_list + // Rule 284: initializer ::= start_initializer_list { <openscope-ast> initializer_list comma_opt } end_initializer_list // - case 279: { action. consumeInitializerList(); break; + case 284: { action. consumeInitializerList(); break; } // - // Rule 280: initializer ::= { <openscope-ast> } + // Rule 285: initializer ::= { <openscope-ast> } // - case 280: { action. consumeInitializerList(); break; + case 285: { action. consumeInitializerList(); break; } // - // Rule 281: start_initializer_list ::= $Empty + // Rule 286: start_initializer_list ::= $Empty // - case 281: { action. initializerListStart(); break; + case 286: { action. initializerListStart(); break; } // - // Rule 282: end_initializer_list ::= $Empty + // Rule 287: end_initializer_list ::= $Empty // - case 282: { action. initializerListEnd(); break; + case 287: { action. initializerListEnd(); break; } // - // Rule 287: designated_initializer ::= <openscope-ast> designation = initializer + // Rule 292: designated_initializer ::= <openscope-ast> designation = initializer // - case 287: { action. consumeInitializerDesignated(); break; + case 292: { action. consumeInitializerDesignated(); break; } // - // Rule 291: designator_base ::= [ constant_expression ] + // Rule 296: designator_base ::= [ constant_expression ] // - case 291: { action. consumeDesignatorArray(); break; + case 296: { action. consumeDesignatorArray(); break; } // - // Rule 292: designator_base ::= . identifier_or_typedefname + // Rule 297: designator_base ::= . identifier_token // - case 292: { action. consumeDesignatorField(); break; + case 297: { action. consumeDesignatorField(); break; } // - // Rule 293: designator ::= [ constant_expression ] + // Rule 298: designator ::= [ constant_expression ] // - case 293: { action. consumeDesignatorArray(); break; + case 298: { action. consumeDesignatorArray(); break; } // - // Rule 294: designator ::= . identifier_or_typedefname + // Rule 299: designator ::= . identifier_token // - case 294: { action. consumeDesignatorField(); break; + case 299: { action. consumeDesignatorField(); break; } // - // Rule 295: translation_unit ::= external_declaration_list + // Rule 300: translation_unit ::= external_declaration_list // - case 295: { action. consumeTranslationUnit(); break; + case 300: { action. consumeTranslationUnit(); break; } // - // Rule 296: translation_unit ::= $Empty + // Rule 301: translation_unit ::= $Empty // - case 296: { action. consumeTranslationUnit(); break; + case 301: { action. consumeTranslationUnit(); break; } // - // Rule 301: external_declaration ::= ; + // Rule 306: external_declaration ::= ; // - case 301: { action. consumeDeclarationEmpty(); break; + case 306: { action. consumeDeclarationEmpty(); break; } // - // Rule 302: external_declaration ::= ERROR_TOKEN + // Rule 307: external_declaration ::= ERROR_TOKEN // - case 302: { action. consumeDeclarationProblem(); break; + case 307: { action. consumeDeclarationProblem(); break; } // - // Rule 305: function_definition ::= declaration_specifiers <openscope-ast> function_declarator function_body + // Rule 310: function_definition ::= declaration_specifiers <openscope-ast> function_declarator function_body // - case 305: { action. consumeFunctionDefinition(true); break; + case 310: { action. consumeFunctionDefinition(true); break; } // - // Rule 306: function_definition ::= <openscope-ast> function_declarator function_body + // Rule 311: function_definition ::= <openscope-ast> function_declarator function_body // - case 306: { action. consumeFunctionDefinition(false); break; + case 311: { action. consumeFunctionDefinition(false); break; } // - // Rule 307: function_definition ::= declaration_specifiers <openscope-ast> knr_function_declarator <openscope-ast> declaration_list compound_statement + // Rule 312: function_definition ::= declaration_specifiers <openscope-ast> knr_function_declarator <openscope-ast> declaration_list compound_statement // - case 307: { action. consumeFunctionDefinitionKnR(); break; + case 312: { action. consumeFunctionDefinitionKnR(); break; } // - // Rule 308: function_body ::= { } + // Rule 313: function_body ::= { } // - case 308: { action. consumeStatementCompoundStatement(false); break; + case 313: { action. consumeStatementCompoundStatement(false); break; } // - // Rule 309: function_body ::= { <openscope-ast> block_item_list } + // Rule 314: function_body ::= { <openscope-ast> block_item_list } // - case 309: { action. consumeStatementCompoundStatement(true); break; + case 314: { action. consumeStatementCompoundStatement(true); break; } // - // Rule 310: literal ::= MYTHREAD + // Rule 315: literal ::= MYTHREAD // - case 310: { action. consumeKeywordExpression(IUPCASTKeywordExpression.kw_mythread); break; + case 315: { action. consumeKeywordExpression(IUPCASTKeywordExpression.kw_mythread); break; } // - // Rule 311: literal ::= THREADS + // Rule 316: literal ::= THREADS // - case 311: { action. consumeKeywordExpression(IUPCASTKeywordExpression.kw_threads); break; + case 316: { action. consumeKeywordExpression(IUPCASTKeywordExpression.kw_threads); break; } // - // Rule 312: literal ::= UPC_MAX_BLOCKSIZE + // Rule 317: literal ::= UPC_MAX_BLOCKSIZE // - case 312: { action. consumeKeywordExpression(IUPCASTKeywordExpression.kw_upc_max_block_size); break; + case 317: { action. consumeKeywordExpression(IUPCASTKeywordExpression.kw_upc_max_block_size); break; } // - // Rule 313: unary_expression ::= upc_localsizeof unary_expression + // Rule 318: unary_expression ::= upc_localsizeof unary_expression // - case 313: { action. consumeExpressionUnarySizeofOperator(IUPCASTUnarySizeofExpression.upc_localsizeof); break; + case 318: { action. consumeExpressionUnarySizeofOperator(IUPCASTUnarySizeofExpression.upc_localsizeof); break; } // - // Rule 314: unary_expression ::= upc_localsizeof ( type_name ) + // Rule 319: unary_expression ::= upc_localsizeof ( type_name ) // - case 314: { action. consumeExpressionSizeofTypeId(IUPCASTUnarySizeofExpression.upc_localsizeof); break; + case 319: { action. consumeExpressionSizeofTypeId(IUPCASTUnarySizeofExpression.upc_localsizeof); break; } // - // Rule 315: unary_expression ::= upc_blocksizeof unary_expression + // Rule 320: unary_expression ::= upc_blocksizeof unary_expression // - case 315: { action. consumeExpressionUnarySizeofOperator(IUPCASTUnarySizeofExpression.upc_blocksizeof); break; + case 320: { action. consumeExpressionUnarySizeofOperator(IUPCASTUnarySizeofExpression.upc_blocksizeof); break; } // - // Rule 316: unary_expression ::= upc_blocksizeof ( type_name ) + // Rule 321: unary_expression ::= upc_blocksizeof ( type_name ) // - case 316: { action. consumeExpressionSizeofTypeId(IUPCASTUnarySizeofExpression.upc_blocksizeof); break; + case 321: { action. consumeExpressionSizeofTypeId(IUPCASTUnarySizeofExpression.upc_blocksizeof); break; } // - // Rule 317: unary_expression ::= upc_elemsizeof unary_expression + // Rule 322: unary_expression ::= upc_elemsizeof unary_expression // - case 317: { action. consumeExpressionUnarySizeofOperator(IUPCASTUnarySizeofExpression.upc_elemsizeof); break; + case 322: { action. consumeExpressionUnarySizeofOperator(IUPCASTUnarySizeofExpression.upc_elemsizeof); break; } // - // Rule 318: unary_expression ::= upc_elemsizeof ( type_name ) + // Rule 323: unary_expression ::= upc_elemsizeof ( type_name ) // - case 318: { action. consumeExpressionSizeofTypeId(IUPCASTUnarySizeofExpression.upc_elemsizeof); break; + case 323: { action. consumeExpressionSizeofTypeId(IUPCASTUnarySizeofExpression.upc_elemsizeof); break; } // - // Rule 322: shared_type_qualifier ::= shared + // Rule 327: shared_type_qualifier ::= shared // - case 322: { action. consumeToken(); break; + case 327: { action. consumeToken(); break; } // - // Rule 323: reference_type_qualifier ::= relaxed + // Rule 328: reference_type_qualifier ::= relaxed // - case 323: { action. consumeToken(); break; + case 328: { action. consumeToken(); break; } // - // Rule 324: reference_type_qualifier ::= strict + // Rule 329: reference_type_qualifier ::= strict // - case 324: { action. consumeToken(); break; + case 329: { action. consumeToken(); break; } // - // Rule 325: layout_qualifier ::= [ constant_expression ] + // Rule 330: layout_qualifier ::= [ constant_expression ] // - case 325: { action. consumeLayoutQualifier(true, false); break; + case 330: { action. consumeLayoutQualifier(true, false); break; } // - // Rule 326: layout_qualifier ::= [ * ] + // Rule 331: layout_qualifier ::= [ * ] // - case 326: { action. consumeLayoutQualifier(false, true); break; + case 331: { action. consumeLayoutQualifier(false, true); break; } // - // Rule 327: layout_qualifier ::= [ ] + // Rule 332: layout_qualifier ::= [ ] // - case 327: { action. consumeLayoutQualifier(false, false); break; + case 332: { action. consumeLayoutQualifier(false, false); break; } // - // Rule 329: synchronization_statement ::= upc_notify expression ; + // Rule 334: synchronization_statement ::= upc_notify expression ; // - case 329: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_notify, true); break; + case 334: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_notify, true); break; } // - // Rule 330: synchronization_statement ::= upc_notify ; + // Rule 335: synchronization_statement ::= upc_notify ; // - case 330: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_notify, false); break; + case 335: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_notify, false); break; } // - // Rule 331: synchronization_statement ::= upc_wait expression ; + // Rule 336: synchronization_statement ::= upc_wait expression ; // - case 331: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_wait, true); break; + case 336: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_wait, true); break; } // - // Rule 332: synchronization_statement ::= upc_wait ; + // Rule 337: synchronization_statement ::= upc_wait ; // - case 332: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_wait, false); break; + case 337: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_wait, false); break; } // - // Rule 333: synchronization_statement ::= upc_barrier expression ; + // Rule 338: synchronization_statement ::= upc_barrier expression ; // - case 333: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_barrier, true); break; + case 338: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_barrier, true); break; } // - // Rule 334: synchronization_statement ::= upc_barrier ; + // Rule 339: synchronization_statement ::= upc_barrier ; // - case 334: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_barrier, false); break; + case 339: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_barrier, false); break; } // - // Rule 335: synchronization_statement ::= upc_fence ; + // Rule 340: synchronization_statement ::= upc_fence ; // - case 335: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_fence, false); break; + case 340: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_fence, false); break; } // - // Rule 336: iteration_statement ::= upc_forall ( expression ; expression ; expression ; affinity ) statement + // Rule 341: iteration_statement ::= upc_forall ( expression ; expression ; expression ; affinity ) statement // - case 336: { action. consumeStatementUPCForallLoop(true, true, true, true); break; + case 341: { action. consumeStatementUPCForallLoop(true, true, true, true); break; } // - // Rule 337: iteration_statement ::= upc_forall ( expression ; expression ; expression ; ) statement + // Rule 342: iteration_statement ::= upc_forall ( expression ; expression ; expression ; ) statement // - case 337: { action. consumeStatementUPCForallLoop(true, true, true, false); break; + case 342: { action. consumeStatementUPCForallLoop(true, true, true, false); break; } // - // Rule 338: iteration_statement ::= upc_forall ( expression ; expression ; ; affinity ) statement + // Rule 343: iteration_statement ::= upc_forall ( expression ; expression ; ; affinity ) statement // - case 338: { action. consumeStatementUPCForallLoop(true, true, false, true); break; + case 343: { action. consumeStatementUPCForallLoop(true, true, false, true); break; } // - // Rule 339: iteration_statement ::= upc_forall ( expression ; expression ; ; ) statement + // Rule 344: iteration_statement ::= upc_forall ( expression ; expression ; ; ) statement // - case 339: { action. consumeStatementUPCForallLoop(true, true, false, false); break; + case 344: { action. consumeStatementUPCForallLoop(true, true, false, false); break; } // - // Rule 340: iteration_statement ::= upc_forall ( expression ; ; expression ; affinity ) statement + // Rule 345: iteration_statement ::= upc_forall ( expression ; ; expression ; affinity ) statement // - case 340: { action. consumeStatementUPCForallLoop(true, false, true, true); break; + case 345: { action. consumeStatementUPCForallLoop(true, false, true, true); break; } // - // Rule 341: iteration_statement ::= upc_forall ( expression ; ; expression ; ) statement + // Rule 346: iteration_statement ::= upc_forall ( expression ; ; expression ; ) statement // - case 341: { action. consumeStatementUPCForallLoop(true, false, true, false); break; + case 346: { action. consumeStatementUPCForallLoop(true, false, true, false); break; } // - // Rule 342: iteration_statement ::= upc_forall ( expression ; ; ; affinity ) statement + // Rule 347: iteration_statement ::= upc_forall ( expression ; ; ; affinity ) statement // - case 342: { action. consumeStatementUPCForallLoop(true, false, false, true); break; + case 347: { action. consumeStatementUPCForallLoop(true, false, false, true); break; } // - // Rule 343: iteration_statement ::= upc_forall ( expression ; ; ; ) statement + // Rule 348: iteration_statement ::= upc_forall ( expression ; ; ; ) statement // - case 343: { action. consumeStatementUPCForallLoop(true, false, false, false); break; + case 348: { action. consumeStatementUPCForallLoop(true, false, false, false); break; } // - // Rule 344: iteration_statement ::= upc_forall ( ; expression ; expression ; affinity ) statement + // Rule 349: iteration_statement ::= upc_forall ( ; expression ; expression ; affinity ) statement // - case 344: { action. consumeStatementUPCForallLoop(false, true, true, true); break; + case 349: { action. consumeStatementUPCForallLoop(false, true, true, true); break; } // - // Rule 345: iteration_statement ::= upc_forall ( ; expression ; expression ; ) statement + // Rule 350: iteration_statement ::= upc_forall ( ; expression ; expression ; ) statement // - case 345: { action. consumeStatementUPCForallLoop(false, true, true, false); break; + case 350: { action. consumeStatementUPCForallLoop(false, true, true, false); break; } // - // Rule 346: iteration_statement ::= upc_forall ( ; expression ; ; affinity ) statement + // Rule 351: iteration_statement ::= upc_forall ( ; expression ; ; affinity ) statement // - case 346: { action. consumeStatementUPCForallLoop(false, true, false, true); break; + case 351: { action. consumeStatementUPCForallLoop(false, true, false, true); break; } // - // Rule 347: iteration_statement ::= upc_forall ( ; expression ; ; ) statement + // Rule 352: iteration_statement ::= upc_forall ( ; expression ; ; ) statement // - case 347: { action. consumeStatementUPCForallLoop(false, true, false, false); break; + case 352: { action. consumeStatementUPCForallLoop(false, true, false, false); break; } // - // Rule 348: iteration_statement ::= upc_forall ( ; ; expression ; affinity ) statement + // Rule 353: iteration_statement ::= upc_forall ( ; ; expression ; affinity ) statement // - case 348: { action. consumeStatementUPCForallLoop(false, false, true, true); break; + case 353: { action. consumeStatementUPCForallLoop(false, false, true, true); break; } // - // Rule 349: iteration_statement ::= upc_forall ( ; ; expression ; ) statement + // Rule 354: iteration_statement ::= upc_forall ( ; ; expression ; ) statement // - case 349: { action. consumeStatementUPCForallLoop(false, false, true, false); break; + case 354: { action. consumeStatementUPCForallLoop(false, false, true, false); break; } // - // Rule 350: iteration_statement ::= upc_forall ( ; ; ; affinity ) statement + // Rule 355: iteration_statement ::= upc_forall ( ; ; ; affinity ) statement // - case 350: { action. consumeStatementUPCForallLoop(false, false, false, true); break; + case 355: { action. consumeStatementUPCForallLoop(false, false, false, true); break; } // - // Rule 351: iteration_statement ::= upc_forall ( ; ; ; ) statement + // Rule 356: iteration_statement ::= upc_forall ( ; ; ; ) statement // - case 351: { action. consumeStatementUPCForallLoop(false, false, false, false); break; + case 356: { action. consumeStatementUPCForallLoop(false, false, false, false); break; } // - // Rule 352: iteration_statement ::= upc_forall ( declaration expression ; expression ; affinity ) statement + // Rule 357: iteration_statement ::= upc_forall ( declaration expression ; expression ; affinity ) statement // - case 352: { action. consumeStatementUPCForallLoop(true, true, true, true); break; + case 357: { action. consumeStatementUPCForallLoop(true, true, true, true); break; } // - // Rule 353: iteration_statement ::= upc_forall ( declaration expression ; expression ; ) statement + // Rule 358: iteration_statement ::= upc_forall ( declaration expression ; expression ; ) statement // - case 353: { action. consumeStatementUPCForallLoop(true, true, true, false); break; + case 358: { action. consumeStatementUPCForallLoop(true, true, true, false); break; } // - // Rule 354: iteration_statement ::= upc_forall ( declaration expression ; ; affinity ) statement + // Rule 359: iteration_statement ::= upc_forall ( declaration expression ; ; affinity ) statement // - case 354: { action. consumeStatementUPCForallLoop(true, true, false, true); break; + case 359: { action. consumeStatementUPCForallLoop(true, true, false, true); break; } // - // Rule 355: iteration_statement ::= upc_forall ( declaration expression ; ; ) statement + // Rule 360: iteration_statement ::= upc_forall ( declaration expression ; ; ) statement // - case 355: { action. consumeStatementUPCForallLoop(true, true, false, false); break; + case 360: { action. consumeStatementUPCForallLoop(true, true, false, false); break; } // - // Rule 356: iteration_statement ::= upc_forall ( declaration ; expression ; affinity ) statement + // Rule 361: iteration_statement ::= upc_forall ( declaration ; expression ; affinity ) statement // - case 356: { action. consumeStatementUPCForallLoop(true, false, true, true); break; + case 361: { action. consumeStatementUPCForallLoop(true, false, true, true); break; } // - // Rule 357: iteration_statement ::= upc_forall ( declaration ; expression ; ) statement + // Rule 362: iteration_statement ::= upc_forall ( declaration ; expression ; ) statement // - case 357: { action. consumeStatementUPCForallLoop(true, false, true, false); break; + case 362: { action. consumeStatementUPCForallLoop(true, false, true, false); break; } // - // Rule 358: iteration_statement ::= upc_forall ( declaration ; ; affinity ) statement + // Rule 363: iteration_statement ::= upc_forall ( declaration ; ; affinity ) statement // - case 358: { action. consumeStatementUPCForallLoop(true, false, false, true); break; + case 363: { action. consumeStatementUPCForallLoop(true, false, false, true); break; } // - // Rule 359: iteration_statement ::= upc_forall ( declaration ; ; ) statement + // Rule 364: iteration_statement ::= upc_forall ( declaration ; ; ) statement // - case 359: { action. consumeStatementUPCForallLoop(true, false, false, false); break; + case 364: { action. consumeStatementUPCForallLoop(true, false, false, false); break; } // - // Rule 361: affinity ::= continue + // Rule 366: affinity ::= continue // - case 361: { action. consumeToken(); break; + case 366: { action. consumeToken(); break; } diff --git a/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCParserprs.java b/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCParserprs.java index 30a875cef9f..b8d27ef959e 100644 --- a/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCParserprs.java +++ b/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCParserprs.java @@ -53,327 +53,329 @@ public class UPCParserprs implements lpg.lpgjavaruntime.ParseTable, UPCParsersym 1,2,2,1,3,1,3,1,1,1, 1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,5,5,6,6,2,2,2,1,0, - 1,2,4,2,1,1,1,3,1,1, - 2,3,6,7,1,0,1,3,1,3, - 1,1,1,1,1,1,3,1,1,1, - 1,1,3,1,2,2,1,5,3,1, - 3,5,1,3,1,3,2,4,3,5, - 4,6,6,3,5,1,1,2,3,4, - 1,2,1,3,1,1,3,2,1,1, - 1,1,2,1,2,3,1,1,1,3, - 1,2,2,2,3,4,5,1,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,2,4,2,4,2,4,1,1, - 2,1,1,1,3,3,2,1,3,2, - 3,2,3,2,2,11,10,10,9,10, - 9,9,8,10,9,9,8,9,8,8, - 7,10,9,9,8,9,8,8,7,1, - 1,-107,-6,-294,0,0,0,0,0,0, - 0,-8,0,-2,0,-126,0,0,-19,0, - 0,0,0,0,0,-77,0,0,0,0, - 0,0,0,0,-20,0,0,0,0,0, - -30,-4,0,0,0,0,0,-82,0,0, - 0,0,0,0,0,0,0,-3,0,0, - 0,0,0,0,-22,0,-55,0,-299,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - -102,0,0,0,0,0,0,0,0,0, - 0,0,0,-24,0,0,0,-17,0,0, - 0,0,0,-135,-33,-74,-26,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-36,0,-11,0, - 0,0,0,0,0,0,0,-279,0,-221, - 0,0,0,0,0,0,0,-32,0,0, - 0,0,0,0,-141,0,0,0,-98,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-291,0,-242,0,0,0, - 0,0,0,0,0,0,0,0,-29,0, - 0,-106,0,0,0,0,0,-25,0,0, - 0,0,0,0,0,0,0,-156,0,0, - -88,0,0,0,-27,0,-83,0,-40,0, - 0,0,-315,0,0,-41,0,0,0,0, - 0,0,-39,0,0,0,0,0,0,-28, - 0,0,0,0,0,0,0,-43,0,0, - 0,0,0,0,0,-12,0,0,0,0, - -31,0,0,0,0,0,0,0,0,-80, - 0,-14,0,0,0,0,0,0,0,-59, - 0,-34,0,0,0,0,-42,-78,0,0, - -89,0,0,0,0,0,0,0,0,0, - 0,0,-60,0,0,0,0,-87,0,0, - 0,-84,-35,-143,0,0,0,0,0,0, - 0,-38,0,-151,0,-61,0,0,0,0, - 0,-258,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-79,0,0,0, - 0,0,-181,0,0,0,0,-62,0,0, - 0,0,-63,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - -64,0,0,0,-152,-142,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,-339,-92,0,0,0,0,0,0, - 0,0,-93,0,0,0,-65,0,0,0, - 0,0,0,-183,0,0,0,0,0,0, - 0,0,0,0,0,0,0,-5,0,0, - 0,0,0,0,0,0,0,0,0,-23, - -37,0,-66,0,0,0,0,0,0,-94, - 0,-85,0,-338,0,0,-45,-70,0,0, - 0,0,-261,0,0,0,0,0,0,0, - 0,0,0,-72,0,-154,0,0,0,0, - 0,0,0,0,0,-101,0,0,0,-67, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-169,0, - -144,0,0,0,0,0,0,0,-68,0, - -108,0,-69,0,0,-75,0,-1,0,0, - 0,0,0,-95,0,0,0,0,0,0, - 0,-227,0,0,-189,0,0,0,0,0, - 0,-109,0,-117,0,0,0,0,-76,0, - 0,0,-174,0,0,0,0,0,0,0, - 0,0,0,0,-146,0,0,0,-104,0, - 0,-147,0,0,0,0,0,0,-168,0, - 0,0,-51,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,-220,0,-159,0,0,0,0,0,0, - 0,-222,0,0,0,-96,0,0,-170,-118, - 0,0,0,-97,0,0,-191,0,0,0, - 0,0,0,0,-229,0,0,-99,0,0, - 0,0,0,0,0,0,-298,0,-127,0, - 0,-192,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,-230,0,-163, - 0,0,0,0,0,0,0,0,0,-155, - 0,-158,0,0,0,0,0,0,0,0, - 0,-244,0,0,0,0,0,0,0,0, - -231,0,0,-100,0,0,0,0,0,0, - -216,0,0,0,-103,0,0,-47,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-232,0,-257,0,0,0,0, - 0,0,0,-171,0,0,0,-276,0,0, - 0,0,0,0,0,0,0,-317,-193,0, - 0,0,0,0,0,0,-233,0,0,0, - 0,0,0,0,0,0,-172,0,0,0, - -105,0,0,-48,-199,-148,0,0,0,0, - 0,0,0,0,0,0,0,0,0,-234, - 0,-149,-218,0,0,0,0,0,0,-173, - 0,0,0,-52,0,0,-219,0,0,0, - 0,0,0,0,-194,0,0,0,0,0, - 0,0,-235,0,0,-243,0,0,0,0, - 0,0,0,0,-157,0,-53,0,0,-271, - 0,0,0,0,0,0,0,-195,0,0, - 0,0,0,0,0,-236,0,0,-161,0, - 0,0,0,0,0,0,0,-164,0,-54, - 0,0,-312,0,0,0,0,0,0,0, - -196,0,0,0,0,0,0,0,-237,0, - 0,-319,0,0,0,0,0,0,-247,0, - 0,0,-56,0,0,-165,0,0,0,0, - 0,0,-166,-197,0,0,0,0,0,0, - 0,-238,0,0,-314,0,0,0,0,0, - 0,-249,0,0,0,-111,0,0,-337,0, - 0,0,0,0,0,0,-198,0,0,0, - 0,0,0,0,-239,0,0,-167,0,0, - 0,0,0,0,0,0,-226,0,-121,0, - 0,-177,0,0,0,0,0,0,0,-241, - 0,0,0,0,0,0,0,-256,0,-162, - 0,0,0,0,0,0,0,-224,0,-275, - 0,-250,0,0,-182,0,0,0,0,-71, - 0,0,-185,0,0,0,0,0,0,0, - -269,0,0,-186,0,0,0,0,0,0, - -252,0,-187,0,-253,0,0,0,0,0, - 0,-268,0,0,0,-259,0,0,0,0, - 0,0,0,-273,0,0,-200,0,0,0, - 0,0,0,-281,0,0,0,-122,0,0, - -201,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-274,0,0,0, - 0,0,0,0,0,0,-283,0,0,0, - -292,0,0,-285,-296,0,-202,-203,-73,0, - 0,-310,0,0,0,0,0,0,0,-295, - 0,0,-204,0,0,0,0,0,0,-301, - 0,0,0,-205,0,0,-304,-307,0,0, - -309,0,0,0,-313,0,0,0,0,0, - 0,0,-318,0,0,-206,0,0,0,0, - 0,0,-207,0,-297,0,-123,0,0,-7, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,-342,-340,0,0,0, - 0,0,0,0,0,-324,0,0,0,-208, - 0,0,-209,0,0,0,0,0,-210,0, - -321,0,0,0,0,0,0,0,-225,-341, - 0,0,0,0,0,0,-44,0,0,0, - -326,0,-223,-153,0,0,-211,0,0,-329, - 0,0,0,0,0,0,0,0,0,0, - 0,0,-212,0,0,0,0,-120,0,0, - 0,-86,0,0,0,-333,0,0,0,0, - 0,0,-331,0,0,0,0,-345,0,0, - 0,0,0,0,0,0,0,0,-90,0, - 0,0,-213,0,0,-180,0,0,0,0, - 0,0,0,0,0,-362,-335,0,0,-214, - -215,0,0,0,0,0,0,0,0,0, - 0,0,0,-359,-347,0,-46,0,0,0, - -254,0,0,0,0,0,-119,0,-251,0, - 0,-262,0,0,0,0,-150,0,0,0, - 0,0,0,0,0,0,-263,-264,0,0, - -160,0,-265,0,-91,0,0,0,-267,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,-49,0,0,0,0,0,0,0, - 0,0,-266,-270,0,0,0,0,0,0, - 0,0,0,0,0,-272,0,0,0,0, - -351,0,-112,0,-311,0,0,-240,0,-316, - 0,0,0,0,0,-139,0,0,0,0, - 0,0,0,0,0,0,0,0,0,-16, - 0,0,0,0,0,0,0,0,0,-9, - 0,0,0,0,0,0,0,0,0,0, - 0,0,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,0,0, - -353,0,0,0,0,-245,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,-18,0,0,0,0,0,0,-246,0, - 0,0,0,0,0,0,0,-356,0,0, - 0,0,0,-138,0,-136,0,0,0,0, - 0,0,0,0,0,-361,0,0,0,0, - 0,0,0,0,0,0,-366,0,0,0, - 0,0,0,0,0,-370,0,0,-228,0, - 0,0,0,-373,0,0,-10,-176,0,0, - 0,-137,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-255,0, - 0,0,-13,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-287,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - -289,0,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, - -15,-375,-383,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,-320,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-325,0, - 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,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - -343,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,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,-346,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-349,0, + 1,6,8,0,0,1,1,3,3,3, + 0,1,0,1,2,4,2,1,1,1, + 3,1,1,2,3,7,8,0,1,0, + 1,3,1,3,1,1,1,1,1,1, + 3,1,1,1,1,1,3,1,2,2, + 1,5,3,1,3,5,1,3,1,3, + 2,4,3,5,4,6,6,3,5,1, + 2,3,4,5,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,1,2,4,2, + 4,2,4,1,1,2,1,1,1,3, + 3,2,1,3,2,3,2,3,2,2, + 11,10,10,9,10,9,9,8,10,9, + 9,8,9,8,8,7,10,9,9,8, + 9,8,8,7,1,1,-105,-8,-22,0, + 0,0,0,0,0,0,-2,-12,0,0, + -51,0,0,-20,0,0,0,0,0,0, + -19,0,0,0,0,0,0,0,0,-21, + 0,0,0,0,0,-4,0,0,0,0, + 0,-31,-36,0,0,0,0,0,0,0, + 0,0,0,-3,0,0,-104,0,0,-40, + 0,0,0,0,-9,0,0,0,0,0, + -30,0,0,0,0,0,-13,0,0,0, + 0,0,0,0,-37,0,0,0,0,0, + 0,0,0,0,0,0,0,0,-267,0, + 0,0,0,0,-32,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,-41,0,0,-117,0,-45,0,0,0, + 0,0,0,-23,0,0,0,0,0,0, + 0,-276,0,-43,-34,0,0,0,0,0, + 0,-59,-299,0,0,-55,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,-115,0,-288,0,0,-321, + 0,0,0,0,0,0,-77,0,0,0, + 0,0,0,-47,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,-317,0,0,-70,0,0,0,0,0, + 0,-18,-146,0,0,-48,0,0,-60,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,-118,0,0,0, + -126,-80,0,-152,0,0,0,0,0,0, + 0,0,0,0,0,0,0,-10,0,0, + -76,0,0,0,0,-96,0,0,0,0, + 0,-100,0,0,0,-39,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,-6,0,0,0,0,0,-61, + 0,0,0,0,-35,-33,0,0,0,0, + 0,-62,0,-210,0,0,0,0,0,0, + 0,0,0,-255,0,0,0,0,0,0, + 0,-78,0,0,-63,0,0,0,0,0, + 0,-71,0,0,0,-149,0,0,0,0, + 0,0,0,0,0,0,-15,0,0,0, + 0,0,0,0,0,0,0,-82,-183,0, + 0,0,0,0,0,0,0,-236,0,0, + 0,-273,0,0,0,0,0,0,0,0, + 0,-116,-25,0,0,0,0,0,0,0, + -341,0,0,0,0,0,0,0,0,0, + 0,-64,0,0,-65,0,0,-49,-38,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,-66,0,0,-122,-67,0,0, + 0,0,0,0,0,0,0,-24,0,0, + -26,0,0,0,0,0,0,-73,0,0, + 0,0,0,0,-75,0,-136,0,0,0, + -27,0,0,0,0,0,0,0,0,0, + 0,0,-141,-145,0,0,0,0,0,0, + 0,0,0,0,-68,0,0,-28,0,0, + -217,-5,0,0,-85,0,0,-29,0,0, + 0,0,0,0,0,0,-161,0,0,-92, + 0,0,0,0,0,0,-69,0,0,0, + 0,0,0,-184,0,0,0,0,0,-42, + -144,0,0,0,0,0,0,0,0,-221, + 0,0,-209,0,0,0,0,0,0,-140, + 0,0,0,-52,0,0,-72,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,-102,0,-142, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,-90,-91,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + -223,-99,-74,0,0,0,0,0,0,0, + -155,0,0,0,-53,0,0,-213,0,0, + 0,0,0,0,-237,0,0,0,0,0, + 0,0,0,-224,0,-93,0,0,0,0, + 0,0,0,-264,-191,0,0,-54,0,0, + -94,0,0,0,0,0,0,-265,-106,0, + 0,0,0,0,0,0,-225,0,0,0, + 0,0,0,0,0,0,-208,0,0,0, + -56,0,0,0,0,0,0,0,0,0, + 0,-107,0,0,0,0,0,0,0,-226, + 0,0,0,0,0,0,0,0,0,-298, + -220,0,0,-109,0,0,0,0,0,0, + 0,0,0,-291,-150,0,0,0,0,0, + 0,0,-227,0,0,-312,0,0,0,0, + 0,0,-238,0,0,0,-119,0,0,0, + 0,0,0,0,0,0,-295,-185,0,0, + 0,0,0,0,0,-228,0,0,0,0, + 0,0,0,0,0,-251,0,0,0,-120, + 0,0,0,0,0,0,0,0,0,-316, + -186,0,0,0,0,0,0,0,-229,0, + 0,0,0,0,0,0,0,0,0,-272, + 0,0,-121,0,0,-95,0,0,0,0, + 0,0,-319,-252,0,0,0,0,0,0, + 0,-230,0,0,0,0,0,0,0,0, + 0,-181,-97,0,0,-180,0,0,0,0, + 0,0,0,0,0,-340,-343,0,0,0, + 0,0,0,0,-231,0,0,0,0,0, + 0,0,0,0,0,-296,0,0,-98,0, + 0,-160,-297,0,0,0,0,0,0,-187, + 0,0,0,0,0,0,0,-232,0,0, + 0,0,0,0,0,0,0,-101,-342,0, + 0,-50,0,0,0,0,0,0,0,0, + -162,0,0,0,0,0,0,0,0,0, + -233,0,-103,-138,0,0,0,0,0,0, + -148,-364,0,0,-57,0,0,0,0,0, + 0,0,0,-163,-153,0,0,0,0,0, + 0,0,0,-250,0,-339,-156,0,0,0, + 0,0,0,-157,0,0,0,-58,0,0, + 0,0,0,0,0,0,-164,-158,0,0, + 0,0,0,0,0,0,-266,0,-154,0, + 0,0,0,0,0,0,-159,-169,0,0, + 0,0,0,-174,-177,0,-46,0,-165,0, + 0,-178,0,0,0,0,0,0,0,-270, + 0,0,-179,0,0,0,0,0,0,-192, + -193,0,0,-194,0,0,-195,-196,0,0, + -86,0,0,0,0,0,0,0,0,0, + 0,0,-271,0,0,-197,0,0,0,0, + 0,0,0,-198,0,0,0,0,0,-199, + -200,-79,0,-87,0,0,0,-235,0,0, + 0,0,0,0,0,-293,0,0,-201,0, + 0,0,0,0,0,-202,-203,0,0,-188, + 0,0,-204,-205,0,-110,0,-206,0,0, + -207,0,0,0,0,0,0,0,-315,0, + 0,-214,0,0,0,0,0,0,-215,-189, + 0,0,0,0,0,-245,0,-143,0,0, + -256,0,0,0,0,0,0,0,0,0, + 0,-320,-190,-257,-258,0,0,0,0,0, + 0,0,0,0,0,0,0,0,-241,-7, + 0,-259,0,0,0,0,0,0,0,0, + 0,0,0,0,-344,-218,-260,-269,0,0, + 0,0,0,0,-294,0,0,0,-244,0, + 0,-243,-311,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,-318,0, + -246,0,0,0,0,-247,-44,0,0,0, + 0,-254,0,0,0,0,0,0,0,-278, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,-1,0,0,0,0,-253,0, + -84,0,0,0,0,0,-211,0,0,0, + -280,0,0,-282,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,-17, + 0,0,0,0,-289,-172,0,0,0,0, + 0,0,0,0,0,0,0,-292,0,0, + 0,-310,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,-248, + 0,0,0,-301,0,0,-304,-307,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-350,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, + -313,-151,0,-309,0,0,0,0,-261,0, + 0,0,0,0,0,0,0,0,-323,-328, + 0,0,0,0,0,-326,0,0,0,0, + 0,-314,0,0,0,0,0,0,0,0, + 0,0,0,0,-234,0,0,0,0,0, + 0,-331,0,0,0,0,-176,0,0,-333, + -337,0,0,0,0,0,0,-166,0,0, + 0,0,0,0,-361,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,-335, 0,0,0,0,0,0,0,0,0,0, - -352,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-355,0,0,0, + -347,-349,0,0,-290,0,0,0,0,0, + 0,0,-137,0,0,0,0,0,0,0, + 0,0,0,0,0,0,-216,0,0,0, + 0,0,0,0,0,0,-353,0,0,0, + 0,0,0,-134,0,0,0,0,0,0, + 0,0,0,0,0,0,0,-355,0,0, + 0,0,0,0,0,0,-358,0,0,0, + 0,0,0,-135,0,0,0,0,0,0, + 0,0,0,0,0,0,0,-222,0,0, + 0,-173,0,0,0,-11,0,-363,0,0, 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,-175,0,0, + 0,-268,0,0,0,0,0,0,0,-275, 0,0,0,0,0,0,0,0,0,0, - 0,0,-360,0,0,0,0,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,0,0,0,-363,0, 0,0,0,0,0,0,0,0,0,0, + 0,0,0,-368,0,0,0,0,0,-372, + 0,0,0,0,-284,0,0,0,-14,0, + -375,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-364,0,0,0,0,0, + -286,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,-287,0,0,0, 0,0,0,0,0,0,0,0,0,0, - -365,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-367,0,0,0, + 0,0,-322,0,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,-147,-377,-385,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,-368,0,0,0,0,0,0,0, + 0,0,0,0,-338,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-369,0, 0,0,0,0,0,0,0,0,0,0, + -345,0,0,0,-219,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-371,0,0,0,0,0, + 0,0,0,0,0,0,-346,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - -372,0,0,0,0,0,0,0,0,0, + 0,0,-348,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-374,0,0,0, + 0,0,0,0,0,0,0,0,-351,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,-377,0,0,0,0,0,0,0, + 0,0,0,0,-352,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-378,0, 0,0,0,0,0,0,0,0,0,0, + -354,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-379,0,0,0,0,0, + 0,0,0,0,0,0,-357,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - -380,0,0,0,0,0,0,0,0,0, + 0,0,-362,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-381,0,0,0, + 0,0,0,0,0,0,0,0,-365,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,-382,0,0,0,0,0,0,0, + 0,0,0,0,-366,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-384,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,-134,-217,0,0,0,0, - 0,0,0,0,0,0,-278,0,0,0, - 0,0,0,-113,0,0,0,0,0,0, + -367,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, + 0,0,0,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,-50,0,0,0, + 0,0,-370,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,-371,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,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, + -374,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,-128,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-280,0, - 0,0,-129,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-130,0,0,0, - 0,0,0,0,0,0,0,0,-131,0, - 0,0,0,0,0,0,0,0,0,0, - -132,0,0,0,0,0,0,0,0,0, - 0,0,-133,0,0,0,0,0,0,0, - 0,0,0,0,-124,0,0,0,0,0, - 0,0,0,0,-125,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-190,0, - 0,0,-110,0,0,0,-140,0,0,-114, - 0,0,0,-115,0,0,0,0,0,0, - 0,0,0,0,-188,0,0,0,0,0, - 0,0,0,0,-116,0,0,0,0,0, - -260,0,0,-145,0,0,0,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,0,0,0,0,0,0,0, - 0,0,-81,0,0,0,0,0,0,0, - 0,-175,0,0,0,-293,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,0,-58,0,0,0,0, - 0,0,0,0,-300,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,-303,0,0, - 0,0,0,0,0,0,0,0,0,-322, - 0,0,0,0,-323,0,0,0,0,0, - 0,0,0,0,0,0,-327,0,0,0, - 0,0,-328,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,-348, - 0,0,0,0,-354,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,-357, - 0,0,0,0,-358,0,0,0,0,0, 0,0,0,0,0,0,-376,0,0,0, - 0,-248,0,0,0,0,0,0,0,0, - 0,-282,0,0,0,0,-284,0,0,0, - 0,-286,0,0,0,0,0,0,0,0, - 0,-302,0,0,0,0,-305,0,0,0, - 0,-306,0,0,0,0,-308,0,0,0, - 0,-332,0,0,0,0,-334,0,0,0, - 0,-178,0,0,0,0,0,0,-179,0, - 0,0,0,-288,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, + 0,0,-379,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,-380,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,-381,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + -382,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,-383,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,-384,0,0,0,0,0,-139,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,-386,0, + 0,0,0,0,0,0,-263,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,-132,-81,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,-111,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,-274,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,-133, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,-242,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,-127,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,-128,0,0,0,0,0,0,0,0, + 0,0,0,0,0,-129,0,0,0,0, + 0,0,0,0,0,-83,0,0,0,-130, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,-131,0,-108,0,0,0,0, + 0,0,0,-182,0,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,-124,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + -112,0,0,0,0,0,0,0,0,0, + 0,0,0,-212,0,0,0,0,0,-262, + 0,0,0,-125,0,0,0,0,0,0, + 0,0,0,0,0,0,-113,0,0,0, + 0,-114,0,0,0,-167,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, + 0,0,-300,0,0,0,0,0,0,0, + -303,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,-324,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0 + 0,0,0,0,0,0,0,0,0,0, + 0,0,-325,0,0,0,0,0,0,0, + -329,0,0,0,0,0,0,0,-330,0, + 0,0,0,0,0,0,-332,0,0,0, + 0,0,0,0,-350,0,0,0,0,0, + 0,0,-356,0,0,0,0,0,0,0, + -359,0,0,0,0,0,0,0,-360,0, + 0,0,0,0,0,0,-378,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,-88,0,0,0,0,0,-89,0,0, + 0,0,0,0,0,0,0,-239,0,0, + 0,0,0,-240,0,0,0,0,0,0, + 0,0,-277,0,0,0,0,0,-279,0, + 0,0,-281,0,0,0,0,-283,0,0, + 0,0,0,0,0,0,0,-302,0,0, + 0,0,-305,0,0,0,-306,0,0,0, + 0,0,-308,0,0,0,0,0,0,0, + 0,-334,0,0,0,0,0,-336,0,0, + 0,-168,0,0,0,0,-170,0,0,0, + 0,0,0,-171,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,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; @@ -383,348 +385,350 @@ public class UPCParserprs implements lpg.lpgjavaruntime.ParseTable, UPCParsersym public interface BaseAction { public final static char baseAction[] = { - 107,1,39,39,10,10,40,40,2,2, + 110,1,39,39,10,10,45,45,2,2, 4,4,4,4,5,5,5,6,6,7, - 7,7,7,7,7,7,7,73,73,93, - 93,8,8,8,8,8,8,8,8,8, - 8,8,9,9,11,11,11,11,13,13, + 7,7,7,7,7,7,7,73,73,94, + 94,8,8,8,8,8,8,8,8,8, + 8,8,9,9,12,12,12,12,13,13, 13,15,15,15,16,16,16,16,16,26, 26,26,27,27,28,28,29,29,30,30, 31,31,32,32,34,34,34,34,34,34, - 34,34,34,34,34,34,18,14,3,108, - 108,95,95,57,19,19,19,19,19,19, - 19,20,20,20,17,17,96,96,74,74, - 21,21,22,22,22,65,65,23,23,23, + 34,34,34,34,34,34,18,14,3,111, + 111,96,96,58,19,19,19,19,19,19, + 19,20,20,20,17,17,97,97,74,74, + 21,21,22,22,22,66,66,23,23,23, 23,24,24,24,24,24,50,50,33,33, - 33,33,33,52,52,52,88,88,83,83, - 83,83,84,84,84,85,85,85,86,86, - 86,87,87,87,97,97,89,89,90,53, - 55,55,55,55,55,66,68,68,68,68, - 68,68,68,68,68,68,68,68,78,78, - 12,12,75,75,75,75,76,76,76,79, - 79,80,80,69,69,69,45,109,109,98, - 99,99,99,77,77,100,100,101,101,91, - 91,35,36,36,36,54,56,56,46,46, - 46,46,41,41,42,47,47,48,43,43, - 102,102,49,111,111,110,110,51,51,51, - 51,51,51,51,51,51,103,58,58,58, - 58,81,81,70,70,70,71,71,60,60, - 112,112,59,59,82,82,82,61,61,61, - 62,63,63,63,64,64,64,64,67,67, - 67,72,113,94,94,94,94,92,114,115, - 115,116,116,117,117,107,107,118,118,104, - 104,104,104,119,119,105,105,105,106,106, - 4,4,4,8,8,8,8,8,8,35, - 35,37,37,38,38,120,120,120,19,25, - 25,25,25,25,25,25,23,23,23,23, + 33,33,33,52,52,52,87,87,82,82, + 82,82,83,83,83,84,84,84,85,85, + 85,86,86,86,98,98,88,88,89,53, + 55,55,55,55,55,67,69,69,69,69, + 69,69,69,69,69,69,69,69,78,78, + 11,11,75,75,112,113,79,79,76,76, + 76,90,99,99,100,100,91,91,91,56, + 114,114,101,102,102,102,77,77,115,103, + 103,104,104,92,92,35,36,36,36,54, + 57,57,46,46,46,46,40,40,41,47, + 47,48,42,42,105,105,49,117,117,116, + 116,51,51,51,51,51,51,51,51,51, + 106,59,59,59,59,43,80,80,70,70, + 70,71,71,61,61,118,118,60,60,81, + 81,81,62,62,62,63,64,64,64,65, + 65,65,65,68,68,68,72,119,95,95, + 95,95,93,120,121,121,122,122,123,123, + 110,110,124,124,107,107,107,107,125,125, + 108,108,108,109,109,4,4,4,8,8, + 8,8,8,8,35,35,37,37,38,38, + 126,126,126,19,25,25,25,25,25,25, + 25,23,23,23,23,23,23,23,23,23, 23,23,23,23,23,23,23,23,23,23, - 23,23,23,23,23,23,23,23,23,23, - 44,44,359,1901,2063,475,14,19,15,660, - 1245,44,1926,683,1900,738,2907,706,761,363, - 14,19,15,660,42,44,3056,1517,743,833, - 797,909,880,913,74,2356,91,134,211,319, - 320,2041,1908,1893,126,662,222,227,355,694, - 216,693,219,221,136,133,135,159,2351,468, - 1804,251,211,319,320,2203,1637,2633,138,2139, - 165,14,19,15,660,42,35,142,145,148, - 151,572,395,222,231,1580,1860,1987,2013,2091, - 1850,2203,1706,134,211,319,320,1423,303,395, - 222,230,198,199,2125,308,326,765,2053,306, - 136,133,135,159,2907,2053,2215,2521,14,19, - 15,660,42,44,138,683,165,738,1186,706, - 761,104,321,142,145,148,151,2197,3083,384, - 1647,1580,1860,1987,2013,2091,1850,229,2732,429, - 2277,464,14,19,15,660,1245,44,2141,683, - 363,738,1186,706,761,2355,401,1400,223,430, - 899,110,86,668,743,833,797,909,880,913, - 74,1181,278,1830,1302,289,95,876,1382,94, - 96,97,98,99,328,2757,429,2992,694,14, - 19,15,660,1245,44,183,683,207,738,2533, - 706,761,1908,2797,126,283,972,1202,355,1420, - 1278,743,833,797,909,880,913,74,3056,278, - 1771,1908,899,334,87,355,1519,399,475,2049, - 284,208,1047,2543,429,979,2535,14,19,15, - 660,1245,44,2036,683,127,738,257,706,761, - 355,476,283,251,211,319,320,1278,1905,743, - 833,797,909,880,913,74,388,278,662,222, - 227,2389,386,216,693,219,221,284,477,1283, - 2440,588,392,158,14,19,15,660,1245,44, - 1911,683,2146,738,569,706,761,2053,2041,1979, - 285,1908,899,332,87,1278,743,833,797,909, - 880,913,74,2052,1080,1019,155,599,2339,237, - 335,932,2658,2363,2422,286,14,19,15,660, - 1245,44,1901,683,3056,738,1971,706,761,662, - 222,227,2200,225,217,693,219,221,743,833, - 797,909,880,913,74,842,278,2197,1644,134, - 211,319,320,473,899,110,86,229,2066,251, - 211,319,320,2198,226,1181,136,133,135,159, - 95,876,103,94,96,97,98,99,328,157, - 138,1899,165,271,1278,3062,1908,2816,194,142, - 145,148,151,266,1052,1027,269,1580,1860,1987, - 2013,2091,1850,2782,2339,1643,123,14,19,15, - 660,1245,44,2339,683,122,738,2429,706,761, - 252,211,319,320,516,899,110,86,305,743, - 833,797,909,880,913,74,1181,278,1963,418, - 301,95,876,101,94,96,97,98,99,328, - 2608,355,408,2208,14,19,15,660,42,44, - 2277,683,2041,738,386,706,761,2269,355,3007, - 287,402,1210,2197,3096,1278,743,833,797,909, - 880,913,93,275,355,3044,2957,1629,300,327, - 14,19,15,660,1245,44,2339,683,111,738, - 2180,706,761,662,222,1323,325,847,217,693, - 219,1316,743,833,797,909,880,913,74,2907, - 1377,2250,694,14,19,15,660,1245,44,2056, - 683,2141,738,2196,706,761,355,1757,1892,418, - 301,3025,298,299,2536,743,833,797,909,880, - 913,74,2493,91,196,2053,14,19,15,660, - 1245,44,2141,683,2282,738,766,706,761,3050, - 704,402,16,1908,362,1929,87,279,743,833, - 797,909,880,913,74,2355,1410,1309,300,2907, - 192,238,68,14,19,15,660,42,44,2339, - 683,333,738,2907,706,761,572,14,19,15, - 660,42,39,712,1423,743,833,797,909,880, - 913,93,2907,1906,2141,182,14,19,15,660, - 42,44,68,683,228,738,2568,706,761,2339, - 2282,331,297,299,2605,374,1415,2639,743,833, - 797,909,880,913,93,2907,818,23,2683,14, - 19,15,660,1245,44,1217,683,2988,738,2907, - 706,761,2360,14,19,15,660,42,44,210, - 1518,743,833,797,909,880,913,74,2907,85, - 355,1236,14,19,15,660,1245,44,272,683, - 2269,738,2633,706,761,1250,14,19,15,660, - 42,35,355,508,743,833,797,909,880,913, - 74,2907,84,273,2687,14,19,15,660,1245, - 44,2355,683,22,738,2662,706,761,2807,239, - 1335,244,14,19,15,660,317,743,833,797, - 909,880,913,74,2907,83,355,555,14,19, - 15,660,1245,44,2339,683,329,738,2633,706, - 761,185,14,19,15,660,42,35,2277,2141, - 743,833,797,909,880,913,74,2907,82,1752, - 292,14,19,15,660,1245,44,2339,683,125, - 738,2938,706,761,2832,2269,2761,245,14,19, - 15,660,315,743,833,797,909,880,913,74, - 2907,81,212,2355,14,19,15,660,1245,44, - 2339,683,121,738,2907,706,761,2355,14,19, - 15,660,42,38,20,2141,743,833,797,909, - 880,913,74,2907,80,1767,2355,14,19,15, - 660,1245,44,184,683,1898,738,2907,706,761, - 2355,14,19,15,660,42,37,203,2141,743, - 833,797,909,880,913,74,2907,79,1768,1920, - 14,19,15,660,1245,44,280,683,2688,738, - 2907,706,761,2988,14,19,15,660,42,36, - 204,2141,743,833,797,909,880,913,74,2907, - 78,1773,2936,14,19,15,660,1245,44,2339, - 683,3277,738,2907,706,761,2051,14,19,15, - 660,42,34,2691,2141,743,833,797,909,880, - 913,74,2907,77,1803,2355,14,19,15,660, - 1245,44,2339,683,3282,738,2907,706,761,2355, - 14,19,15,660,42,35,1349,2141,743,833, - 797,909,880,913,74,2907,76,21,73,14, - 19,15,660,1245,44,844,683,2269,738,2907, - 706,761,1931,14,19,15,660,42,47,26, - 2053,743,833,797,909,880,913,74,2907,75, - 2684,694,14,19,15,660,1245,44,2138,683, - 2269,738,2141,706,761,2990,241,307,232,290, - 2034,694,2035,2101,743,833,797,909,880,913, - 74,2907,92,572,2982,14,19,15,660,42, - 44,2141,683,2994,738,2141,706,761,2827,240, - 304,2061,2985,196,193,2087,2141,743,833,797, - 909,880,913,93,2907,766,270,2281,14,19, - 15,660,1245,44,2339,683,3292,738,2907,706, - 761,2342,14,19,15,660,42,46,201,191, - 743,833,797,909,880,913,74,2907,1515,525, - 901,14,19,15,660,1245,44,2339,683,3297, - 738,2141,706,761,2339,2269,3307,2054,2062,2106, - 694,276,2141,743,833,797,909,880,913,74, - 2907,1575,1717,1986,14,19,15,660,42,44, - 2339,683,3170,738,2044,706,761,2339,2339,3187, - 3312,2339,196,3317,242,2141,743,833,797,909, - 880,913,93,2907,766,277,2446,14,19,15, - 660,42,44,2520,683,2269,738,2907,706,761, - 2529,14,19,15,660,42,45,202,191,743, - 833,797,909,880,913,93,2907,2269,965,901, - 14,19,15,660,42,44,2339,683,3220,738, - 2524,706,761,2526,243,134,211,319,320,2528, - 1597,2141,743,833,797,909,880,913,93,3056, - 2277,2191,141,133,135,159,291,217,362,110, - 86,2141,294,3068,2345,694,140,2252,165,1181, - 2339,2269,3225,1716,95,876,108,94,96,97, - 98,99,328,2695,251,211,319,320,355,899, - 572,87,1,362,110,86,2141,1771,252,211, - 319,320,1185,2339,1181,3240,2373,109,2141,95, - 876,108,94,96,97,98,99,328,2399,1908, - 899,330,87,2606,256,572,288,362,110,86, - 1979,106,309,1144,1004,1269,2269,2339,1181,117, - 2991,2913,109,95,876,108,94,96,97,98, - 99,328,1464,1672,2339,2141,3257,355,362,572, - 87,145,362,110,86,2425,107,2271,899,2698, - 89,942,2693,1181,1408,293,109,2215,95,876, - 108,94,96,97,98,99,328,3000,3002,1186, - 196,1914,1390,3009,572,1908,899,124,87,2907, - 106,105,3003,14,19,15,660,42,44,1177, - 683,109,738,2857,706,761,911,14,19,15, - 660,313,1741,3011,3001,743,833,797,909,880, - 913,73,662,222,227,107,396,216,693,219, - 221,2141,271,355,362,2599,87,260,1902,3057, - 2811,2477,264,1052,1027,269,2907,942,274,3412, - 14,19,15,660,42,44,3412,683,207,738, - 2422,706,761,261,3412,1357,196,1012,1202,3412, - 2068,3412,743,833,797,909,1721,3412,3003,662, - 222,227,3412,3412,216,693,219,221,3412,271, - 3412,3412,1159,258,518,134,211,319,320,264, - 1052,1027,269,399,667,134,211,319,320,3412, - 3412,2141,137,133,135,159,1908,899,2909,87, - 1456,2503,144,133,135,159,139,3412,165,3412, - 1474,3412,399,475,3412,143,146,149,152,1908, - 899,3272,87,3412,662,222,606,3412,2141,216, - 693,219,628,1507,355,899,2907,87,2555,158, - 14,19,15,660,42,44,2141,683,1720,738, - 3412,706,761,662,222,227,2633,2141,216,693, - 219,221,743,833,797,1663,2141,2659,518,3074, - 3412,3412,154,599,2141,3412,2685,2140,355,899, - 613,87,2907,3412,2711,702,14,19,15,660, - 42,44,1412,683,831,738,3412,706,761,559, - 899,110,86,2212,252,211,319,320,743,833, - 1703,1181,134,211,319,320,95,876,102,94, - 96,97,98,99,328,602,899,110,86,147, - 133,135,159,3412,3412,3412,3412,1181,134,211, - 319,320,95,876,118,94,96,97,98,99, - 328,645,899,110,86,150,133,135,159,3412, - 3412,3412,3412,1181,3412,3412,3412,3412,95,876, - 114,94,96,97,98,99,328,688,899,110, - 86,2284,2141,2141,3412,3412,3412,3412,3412,1181, - 3412,3412,2737,2789,95,876,1825,94,96,97, - 98,99,328,731,899,110,86,3412,3412,3412, - 3412,3412,3412,3412,3412,1181,134,211,319,320, - 95,876,359,94,96,97,98,99,328,774, - 899,110,86,153,133,135,159,3412,3412,3412, - 3412,1181,3412,3412,3412,3412,95,876,351,94, - 96,97,98,99,328,817,899,110,86,3412, - 3412,3412,3412,3412,3412,3412,3412,1181,3412,3412, - 3412,3412,95,876,113,94,96,97,98,99, - 328,860,899,110,86,3412,3412,3412,3412,3412, - 3412,3412,3412,1181,3412,3412,3412,3412,95,876, - 358,94,96,97,98,99,328,903,899,110, - 86,3412,3412,3412,3412,3412,3412,3412,3412,1181, - 3412,3412,3412,3412,95,876,357,94,96,97, - 98,99,328,946,899,110,86,3412,3412,3412, - 3412,3412,3412,3412,3412,1181,3412,3412,3412,3412, - 95,876,355,94,96,97,98,99,328,989, - 899,110,86,3412,3412,3412,3412,3412,3412,3412, - 3412,1181,3412,3412,3412,3412,95,876,350,94, - 96,97,98,99,328,1032,899,110,86,3412, - 3412,3412,3412,3412,3412,3412,3412,1181,3412,3412, - 3412,3412,95,876,349,94,96,97,98,99, - 328,1075,899,110,86,3412,3412,3412,3412,3412, - 3412,3412,3412,1181,3412,3412,3412,3412,95,876, - 347,94,96,97,98,99,328,1118,899,110, - 86,3412,3412,3412,3412,3412,3412,3412,3412,1181, - 3412,3412,3412,3412,95,876,343,94,96,97, - 98,99,328,1161,899,110,86,3412,3412,3412, - 3412,3412,3412,3412,3412,1181,3412,3412,3412,3412, - 95,876,120,94,96,97,98,99,328,1204, - 899,110,86,3412,3412,3412,3412,3412,3412,3412, - 3412,1181,3412,3412,3412,3412,95,876,356,94, - 96,97,98,99,328,1247,899,110,86,3412, - 3412,3412,3412,3412,3412,3412,3412,1181,3412,3412, - 3412,3412,95,876,354,94,96,97,98,99, - 328,1290,899,110,86,3412,3412,3412,3412,3412, - 3412,3412,3412,1181,3412,3412,3412,3412,95,876, - 353,94,96,97,98,99,328,1333,899,110, - 86,3412,3412,3412,3412,3412,3412,3412,3412,1181, - 3412,3412,3412,3412,95,876,348,94,96,97, - 98,99,328,1376,899,110,86,3412,3412,3412, - 3412,3412,3412,3412,3412,1181,3412,3412,3412,3412, - 95,876,346,94,96,97,98,99,328,1419, - 899,110,86,3412,3412,3412,3412,3412,3412,3412, - 3412,1181,3412,3412,3412,3412,95,876,345,94, - 96,97,98,99,328,1462,899,110,86,3412, - 3412,3412,3412,3412,3412,3412,3412,1181,3412,3412, - 3412,3412,95,876,342,94,96,97,98,99, - 328,1505,899,110,86,3412,3412,3412,3412,3412, - 3412,3412,3412,1181,3412,3412,3412,3412,95,876, - 341,94,96,97,98,99,328,1548,899,110, - 86,3412,3412,3412,3412,3412,3412,3412,3412,1181, - 3412,3412,3412,3412,95,876,339,94,96,97, - 98,99,328,1591,899,110,86,3412,3412,3412, - 3412,3412,3412,3412,3412,1181,3412,3412,3412,3412, - 95,876,119,94,96,97,98,99,328,1634, - 899,110,86,3412,3412,3412,3412,3412,3412,3412, - 3412,1181,3412,3412,3412,3412,95,876,352,94, - 96,97,98,99,328,1677,899,110,86,3412, - 3412,3412,3412,3412,3412,3412,3412,1181,3412,3412, - 3412,3412,95,876,344,94,96,97,98,99, - 328,1720,899,110,86,3412,3412,3412,3412,3412, - 3412,3412,3412,1181,3412,3412,3412,3412,95,876, - 340,94,96,97,98,99,328,1763,899,110, - 86,3412,3412,3412,3412,3412,3412,3412,3412,1181, - 3412,3412,3412,3412,95,876,338,94,96,97, - 98,99,328,1806,899,110,86,3412,3412,3412, - 3412,3412,3412,3412,3412,1181,3412,3412,3412,3412, - 95,876,337,94,96,97,98,99,328,1849, - 899,110,86,3412,3412,3412,3412,399,475,3412, - 3412,1181,3412,3412,3412,3412,95,876,336,94, - 96,97,98,99,328,2907,2063,475,3412,14, - 19,15,660,42,44,3412,683,1923,738,3412, - 706,761,3412,3412,355,362,3412,87,662,222, - 227,743,1619,216,693,219,221,3412,942,3412, - 3412,3412,3412,158,3412,3412,3412,662,222,227, - 3412,3412,216,693,219,221,3412,196,662,222, - 227,3412,1804,217,693,219,221,2882,271,3003, - 3412,14,19,15,660,40,154,599,266,1052, - 1027,269,2907,1225,613,3412,14,19,15,660, - 42,44,3412,683,3412,738,3412,706,1533,1908, - 899,3135,87,2907,197,199,3412,14,19,15, - 660,42,44,1540,683,1452,738,2907,706,1544, - 3412,14,19,15,660,42,44,3412,683,2907, - 738,3412,1566,14,19,15,660,42,44,3412, - 683,2907,738,3412,1573,14,19,15,660,42, - 44,3412,683,2907,738,3412,1610,14,19,15, - 660,42,44,3412,683,2907,738,3412,1613,14, - 19,15,660,42,44,2907,683,3412,1467,14, - 19,15,660,42,44,3412,683,3412,1481,1972, - 3041,3412,3412,1927,935,3412,3412,2178,694,274, - 355,362,3412,87,355,362,3412,87,3412,3412, - 3412,3412,3412,3412,942,2707,3412,3412,942,14, - 19,15,660,42,43,355,362,3412,87,3412, - 196,2525,694,196,2322,694,3412,196,3412,942, - 271,3412,766,3412,271,3003,3412,2525,694,3003, - 264,1052,1027,269,264,1052,1027,269,196,1258, - 3412,3412,3412,1291,1771,3412,191,196,3412,3412, - 3003,1456,3412,2245,694,263,1111,901,3412,766, - 1771,3412,2195,362,1324,87,2245,694,3412,712, - 3412,256,3412,3412,3412,3412,115,3412,3412,3412, - 3412,1511,1269,191,2932,2827,1771,256,14,19, - 15,660,33,1203,901,572,2932,1511,1269,1771, - 14,19,15,660,32,2993,899,3412,87,3412, - 3412,3412,3262,256,3412,2113,3412,3412,3412,360, - 3412,3412,3412,1004,1269,3412,256,1342,2993,899, - 3412,87,3412,3412,3412,3412,1555,1269,2139,3412, - 2993,899,360,87,3412,2993,899,3412,87,1621, - 2217,3412,3412,3412,360,2243,3412,2993,899,360, - 87,3412,3412,2993,899,3412,87,2295,3412,3412, - 3412,360,1641,2321,3412,3412,3412,360,2993,899, - 3412,87,3412,3412,1688,3412,3412,3412,2347,1735, - 2993,899,360,87,3412,2993,899,3412,87,3412, - 2451,1821,3412,3412,360,2529,3412,1901,3412,360, - 2993,899,3412,87,3412,2993,899,3412,87,3412, - 2581,3412,1938,3412,360,2607,3412,2993,899,360, - 87,3412,2195,899,1967,87,3412,2763,3412,1976, - 3412,360,1908,899,3158,87,115,1908,899,3302, - 87,3412,2195,899,1984,87,1547,3412,3412,2092, - 3412,1548,1908,899,3175,87,115,1908,899,3193, - 87,2093,1908,899,3208,87,1606,2195,899,3412, - 87,1650,1908,899,3245,87,1683,2195,899,3412, - 87,115,355,899,3412,87,1734,1514,3412,355, - 899,115,87,3412,355,899,1441,87,3412,3412, - 3412,3412,3412,1445,3412,3412,3412,1551,1522,3412, - 3412,3412,3412,3412,3412,3412,3412,3412,3412,3412, - 3412,3412,3412,3412,3412,3412,3412,3412,3412,3412, - 3412,3412,1676,3412,3412,3412,3412,3412,3412,3412, - 3412,3412,1956,3412,0,322,830,0,179,224, - 0,3419,1,0,1,3647,0,7,9,0, - 179,17,0,178,18,0,1,3636,0,112, - 2165,0 + 23,23,23,23,23,44,44,365,2782,2053, + 920,14,19,15,522,1341,44,2166,404,599, + 692,2752,680,792,1906,14,19,15,522,42, + 39,2053,686,715,814,795,875,818,907,74, + 1938,91,134,215,324,325,1909,369,126,515, + 226,492,2509,2917,1482,220,685,223,514,136, + 133,135,159,233,2213,592,158,1909,1837,126, + 72,515,226,231,138,349,165,220,685,223, + 225,2151,142,145,148,151,638,2047,475,1580, + 435,1986,2079,2105,1700,220,622,154,430,134, + 215,324,325,1415,400,226,234,656,831,2188, + 134,215,324,325,799,2830,136,133,135,159, + 1532,400,226,235,1003,227,455,144,133,135, + 159,138,2540,165,326,2926,897,2218,89,142, + 145,148,151,638,2469,1637,1580,435,1986,2079, + 2105,1700,2577,523,1911,2392,14,19,15,522, + 1341,44,2896,2930,599,692,2479,680,792,674, + 14,19,15,522,42,35,330,851,715,814, + 795,875,818,907,74,2388,283,2602,523,313, + 2938,14,19,15,522,1341,44,2917,921,599, + 692,212,680,792,2652,331,229,233,14,19, + 15,522,322,715,814,795,875,818,907,74, + 288,283,2412,523,1367,371,14,19,15,522, + 1341,44,204,2218,599,692,2677,680,792,2207, + 14,19,15,522,320,289,1563,1110,715,814, + 795,875,818,907,74,288,283,220,897,1367, + 87,2752,220,624,2284,14,19,15,522,42, + 44,1045,243,599,692,412,680,1448,73,23, + 289,2151,1136,1629,550,294,436,897,110,86, + 290,441,2469,1706,1367,427,2900,1333,127,134, + 215,324,325,95,1002,1408,94,96,97,98, + 99,333,308,295,2186,291,136,133,135,159, + 2390,515,226,231,1003,2946,204,221,685,223, + 225,138,2212,165,1909,2837,197,104,1334,142, + 145,148,151,638,2917,1895,1580,435,1986,2079, + 2105,1700,2290,2183,280,2121,14,19,15,522, + 1341,44,220,2809,599,692,2479,680,792,412, + 14,19,15,522,42,35,230,2119,715,814, + 795,875,818,907,74,641,593,1399,2514,2947, + 773,241,14,19,15,522,1341,44,2869,624, + 599,692,2479,680,792,248,14,19,15,522, + 42,35,2388,1904,715,814,795,875,818,907, + 74,2627,283,311,585,14,19,15,522,1341, + 44,1782,1925,599,692,56,680,792,2702,2186, + 277,249,14,19,15,522,318,715,814,795, + 875,818,907,74,2049,283,157,2752,278,262, + 1367,14,19,15,522,42,44,888,2441,599, + 1440,2188,14,19,15,522,42,44,220,863, + 599,692,189,680,792,1932,1548,220,897,292, + 87,2188,878,1367,715,814,795,875,818,907, + 93,1518,188,2475,2802,2235,22,332,14,19, + 15,522,1341,44,1532,130,599,692,1912,680, + 792,2897,1969,424,306,2924,497,340,2188,947, + 715,814,795,875,818,907,74,2752,1111,190, + 2188,14,19,15,522,1341,44,2221,310,599, + 692,1419,680,792,2937,406,257,215,324,325, + 204,2932,624,715,814,795,875,818,907,74, + 2362,91,305,2964,14,19,15,522,1341,44, + 220,3074,599,692,2752,680,792,2541,14,19, + 15,522,42,38,1782,211,715,814,795,875, + 818,907,74,412,1210,278,1018,1539,2752,242, + 2355,1917,14,19,15,522,42,44,182,2986, + 599,692,261,680,792,2924,2924,123,122,303, + 304,1125,1355,1415,715,814,795,875,818,907, + 93,2752,2924,2539,111,14,19,15,522,1341, + 44,220,1025,599,692,2752,680,792,2950,14, + 19,15,522,42,37,2964,1414,715,814,795, + 875,818,907,74,2752,85,2063,1596,14,19, + 15,522,1341,44,2950,2218,599,692,2752,680, + 792,2222,14,19,15,522,42,36,2964,2830, + 715,814,795,875,818,907,74,2752,84,1246, + 285,14,19,15,522,1341,44,220,3080,599, + 692,2752,680,792,20,14,19,15,522,42, + 34,1058,2830,715,814,795,875,818,907,74, + 2752,83,16,206,14,19,15,522,1341,44, + 2984,2218,599,692,2752,680,792,1157,14,19, + 15,522,42,35,2964,2830,715,814,795,875, + 818,907,74,2752,82,232,2984,14,19,15, + 522,1341,44,220,512,599,692,2752,680,792, + 245,14,19,15,522,42,47,2964,2830,715, + 814,795,875,818,907,74,2752,81,1551,183, + 14,19,15,522,1341,44,220,547,599,692, + 2752,680,792,1190,14,19,15,522,42,46, + 2964,2830,715,814,795,875,818,907,74,2752, + 80,1564,207,14,19,15,522,1341,44,1366, + 2218,599,692,2752,680,792,2357,14,19,15, + 522,42,45,2188,1935,715,814,795,875,818, + 907,74,2752,79,297,1256,14,19,15,522, + 1341,44,204,2393,599,692,2552,680,792,244, + 14,19,15,522,42,43,406,2188,715,814, + 795,875,818,907,74,2752,78,1003,299,14, + 19,15,522,1341,44,276,2218,599,692,2548, + 680,792,2924,2218,338,412,271,914,749,274, + 2830,715,814,795,875,818,907,74,2752,77, + 1565,1224,14,19,15,522,1341,44,1917,2218, + 599,692,2727,680,792,246,14,19,15,522, + 40,2924,247,336,715,814,795,875,818,907, + 74,2752,76,2477,2847,14,19,15,522,1341, + 44,2758,2218,599,692,2777,680,792,296,14, + 19,15,522,33,2924,2439,334,715,814,795, + 875,818,907,74,2752,75,2964,2967,14,19, + 15,522,1341,44,2843,284,599,692,2777,680, + 792,298,14,19,15,522,32,2924,2968,125, + 715,814,795,875,818,907,74,2752,92,2966, + 624,14,19,15,522,42,44,75,2808,599, + 692,26,680,792,2658,2920,312,220,367,2924, + 87,121,2827,715,814,795,875,818,907,93, + 2752,1092,427,2840,14,19,15,522,1341,44, + 2318,2504,599,692,2315,680,792,2356,2237,309, + 199,1909,897,339,87,214,715,814,795,875, + 818,907,74,2752,1276,1282,2387,14,19,15, + 522,1341,44,3006,2468,599,692,1059,680,792, + 2901,2910,2044,624,1909,897,337,87,204,715, + 814,795,875,818,907,74,2752,1283,1321,2919, + 14,19,15,522,42,44,2979,2846,599,692, + 2830,680,792,2923,2268,1782,220,367,2683,87, + 1582,2927,715,814,795,875,818,907,93,2752, + 1092,412,2507,14,19,15,522,42,44,2980, + 2830,599,692,261,680,792,2981,2020,2361,199, + 1597,2994,1125,1355,204,715,814,795,875,818, + 907,93,2752,2830,2997,2999,14,19,15,522, + 42,44,3006,21,599,692,1158,680,792,2924, + 2082,3293,3006,256,215,324,325,205,715,814, + 795,875,818,907,93,2752,2046,3007,390,14, + 19,15,522,42,44,2733,236,599,692,2830, + 680,792,2924,3004,3298,134,215,324,325,2075, + 1309,715,814,795,875,818,907,93,881,2607, + 3434,2830,141,133,135,159,2830,223,367,110, + 86,2101,2834,624,3434,3434,2127,140,1333,165, + 2924,3434,3308,1342,95,1002,108,94,96,97, + 98,99,333,3434,1898,424,306,3434,3434,2830, + 427,1,367,110,86,1782,3434,2111,624,275, + 3434,2924,1333,3313,2924,412,3323,109,95,1002, + 108,94,96,97,98,99,333,406,3434,3434, + 2284,1224,3434,261,427,2830,294,367,110,86, + 199,106,1705,1355,305,281,314,1333,2911,3434, + 196,109,2830,95,1002,108,94,96,97,98, + 99,333,1841,694,1671,134,215,324,325,427, + 149,367,110,86,2924,107,3149,2924,2924,3181, + 3332,1333,137,133,135,159,109,95,1002,108, + 94,96,97,98,99,333,3434,139,195,165, + 3434,302,304,427,377,143,146,149,152,638, + 106,2830,1926,1488,2924,105,3338,3434,882,2752, + 109,282,3434,14,19,15,522,42,44,2830, + 2830,599,692,1740,680,792,2924,3434,3205,2231, + 2309,3434,1919,686,107,715,814,795,875,818, + 907,73,515,226,231,1987,2888,3434,220,685, + 223,225,2924,276,3213,279,3434,2053,686,265, + 2924,2924,3221,117,269,914,749,274,1909,367, + 3274,87,515,226,231,2924,3434,3237,220,685, + 223,225,1579,266,3434,515,226,231,3434,1605, + 2830,220,685,223,225,3434,276,515,226,231, + 2413,427,475,220,685,223,225,269,914,749, + 274,2830,2830,3434,158,2044,624,3434,3268,3434, + 263,2439,2465,2752,3434,3434,1669,14,19,15, + 522,42,44,201,202,599,692,2361,680,792, + 3434,3434,3434,3434,3434,154,430,2830,1782,715, + 814,795,875,1521,2752,656,3434,2517,14,19, + 15,522,42,44,3434,3434,599,692,2830,680, + 792,3434,256,215,324,325,261,2830,2543,3434, + 715,814,795,1513,2752,1781,1355,2595,14,19, + 15,522,42,44,3434,3434,599,692,2909,680, + 792,3434,479,897,110,86,1953,3434,2830,3434, + 715,814,1514,1333,3434,3434,3434,2012,2673,95, + 1002,103,94,96,97,98,99,333,522,897, + 110,86,2915,257,215,324,325,3434,3434,1333, + 2060,134,215,324,325,95,1002,101,94,96, + 97,98,99,333,565,897,110,86,147,133, + 135,159,3434,3434,3434,1333,3434,257,215,324, + 325,95,1002,102,94,96,97,98,99,333, + 515,226,231,1003,2830,3434,221,685,223,225, + 2830,276,3434,3434,2699,608,897,110,86,2024, + 2725,2830,271,914,749,274,1333,3434,3434,3434, + 3434,2751,95,1002,118,94,96,97,98,99, + 333,651,897,110,86,2150,3434,3434,3434,3434, + 3434,3434,1333,3434,134,215,324,325,95,1002, + 114,94,96,97,98,99,333,694,897,110, + 86,150,133,135,159,3434,3434,3434,1333,3434, + 134,215,324,325,95,1002,1613,94,96,97, + 98,99,333,737,897,110,86,153,133,135, + 159,3434,3434,3434,1333,3434,3434,3434,3434,3434, + 95,1002,364,94,96,97,98,99,333,780, + 897,110,86,2361,2830,2830,3434,3434,3434,3434, + 1333,3434,3434,3434,2777,2829,95,1002,356,94, + 96,97,98,99,333,823,897,110,86,3434, + 3434,3434,3434,3434,3434,3434,1333,3434,256,215, + 324,325,95,1002,113,94,96,97,98,99, + 333,866,897,110,86,2361,3434,3434,3434,3434, + 3434,3434,1333,3434,3434,3434,3434,3434,95,1002, + 363,94,96,97,98,99,333,909,897,110, + 86,3434,3434,1978,3434,3434,3434,3434,1333,3434, + 256,215,324,325,95,1002,362,94,96,97, + 98,99,333,952,897,110,86,3434,3434,930, + 3434,3434,3434,3434,1333,3434,3434,3434,3434,3434, + 95,1002,360,94,96,97,98,99,333,995, + 897,110,86,3434,3434,1978,3434,3434,3434,3434, + 1333,3434,3434,3434,3434,3434,95,1002,355,94, + 96,97,98,99,333,1038,897,110,86,3434, + 3434,1430,3434,3434,3434,3434,1333,3434,3434,3434, + 3434,3434,95,1002,354,94,96,97,98,99, + 333,1081,897,110,86,3434,3434,3434,3434,3434, + 3434,3434,1333,3434,3434,3434,3434,3434,95,1002, + 352,94,96,97,98,99,333,1124,897,110, + 86,3434,3434,3434,3434,3434,3434,3434,1333,3434, + 3434,3434,3434,3434,95,1002,348,94,96,97, + 98,99,333,1167,897,110,86,3434,3434,3434, + 3434,3434,3434,3434,1333,3434,3434,3434,3434,3434, + 95,1002,120,94,96,97,98,99,333,1210, + 897,110,86,3434,3434,3434,3434,3434,3434,3434, + 1333,3434,3434,3434,3434,3434,95,1002,361,94, + 96,97,98,99,333,1253,897,110,86,3434, + 3434,3434,3434,3434,3434,3434,1333,3434,3434,3434, + 3434,3434,95,1002,359,94,96,97,98,99, + 333,1296,897,110,86,3434,3434,3434,3434,3434, + 3434,3434,1333,3434,3434,3434,3434,3434,95,1002, + 358,94,96,97,98,99,333,1339,897,110, + 86,3434,3434,3434,3434,3434,3434,3434,1333,3434, + 3434,3434,3434,3434,95,1002,353,94,96,97, + 98,99,333,1382,897,110,86,3434,3434,3434, + 3434,3434,3434,3434,1333,3434,3434,3434,3434,3434, + 95,1002,351,94,96,97,98,99,333,1425, + 897,110,86,3434,3434,3434,3434,3434,3434,3434, + 1333,3434,3434,3434,3434,3434,95,1002,350,94, + 96,97,98,99,333,1468,897,110,86,3434, + 3434,3434,3434,3434,3434,3434,1333,3434,3434,3434, + 3434,3434,95,1002,347,94,96,97,98,99, + 333,1511,897,110,86,3434,3434,3434,3434,3434, + 3434,3434,1333,3434,3434,3434,3434,3434,95,1002, + 346,94,96,97,98,99,333,1554,897,110, + 86,3434,3434,3434,3434,3434,3434,3434,1333,3434, + 3434,3434,3434,3434,95,1002,344,94,96,97, + 98,99,333,1597,897,110,86,3434,3434,3434, + 3434,3434,3434,3434,1333,3434,3434,3434,3434,3434, + 95,1002,119,94,96,97,98,99,333,1640, + 897,110,86,3434,3434,3434,3434,3434,3434,3434, + 1333,3434,3434,3434,3434,3434,95,1002,357,94, + 96,97,98,99,333,1683,897,110,86,3434, + 3434,3434,3434,3434,3434,3434,1333,3434,3434,3434, + 3434,3434,95,1002,349,94,96,97,98,99, + 333,1726,897,110,86,3434,3434,3434,3434,3434, + 3434,3434,1333,3434,3434,3434,3434,3434,95,1002, + 345,94,96,97,98,99,333,1769,897,110, + 86,3434,3434,3434,3434,3434,3434,3434,1333,3434, + 3434,3434,3434,3434,95,1002,343,94,96,97, + 98,99,333,1812,897,110,86,3434,3434,2040, + 624,3434,3434,3434,1333,3434,3434,3434,3434,3434, + 95,1002,342,94,96,97,98,99,333,1855, + 897,110,86,3434,3434,3434,3434,1919,686,3434, + 1333,3434,199,3434,3434,3434,95,1002,341,94, + 96,97,98,99,333,2752,2053,686,3434,14, + 19,15,522,42,44,694,3434,599,692,3434, + 680,792,3434,220,367,3434,87,515,226,231, + 3434,715,1506,220,685,223,225,1092,2834,624, + 3434,3434,3434,3434,1605,3434,515,226,231,3434, + 194,3434,220,685,223,225,199,3434,933,1677, + 2752,3434,3434,158,14,19,15,522,42,44, + 3434,1782,599,692,3434,680,792,2903,897,3006, + 87,412,3434,1191,3434,3434,1507,3434,200,202, + 3434,115,3434,3434,155,430,3434,2020,2752,261, + 3434,1718,14,19,15,522,42,44,1705,1355, + 599,692,2752,680,1466,3434,14,19,15,522, + 42,44,3434,3434,599,692,2752,1474,3434,3434, + 14,19,15,522,42,44,2151,3434,599,692, + 2752,1480,3434,1684,14,19,15,522,42,44, + 3434,3434,599,692,2752,1481,1929,1242,14,19, + 15,522,42,44,2849,1642,599,692,3434,1499, + 3434,3434,3434,3434,279,3434,515,226,1388,1003, + 3434,3434,221,685,223,1374,2752,3434,3434,3434, + 14,19,15,522,42,44,2752,3434,599,1441, + 14,19,15,522,42,44,3434,276,1444,3434, + 3434,220,367,3434,87,276,3434,3434,269,914, + 749,274,3434,3434,2475,1092,269,914,749,274, + 2182,624,3434,3434,2752,1532,3434,268,14,19, + 15,522,42,44,199,1669,1447,220,367,3434, + 87,3434,220,367,3434,87,2903,367,3434,87, + 3434,1092,3434,199,3434,3434,1092,3006,3434,3434, + 115,1290,3434,2052,897,3434,87,3434,3434,3434, + 199,2052,897,2153,87,199,694,365,3434,427, + 3434,2179,3434,3434,3434,365,3434,3434,3434,2052, + 897,3434,87,3006,3434,3434,2927,1510,3006,2257, + 3434,3434,1540,365,3434,3434,211,1799,3434,3434, + 3434,194,1612,2052,897,1800,87,1044,1539,1124, + 1677,2052,897,2283,87,3434,3434,365,3434,2052, + 897,2335,87,1891,3434,365,3434,2052,897,2361, + 87,3434,3434,365,3434,2052,897,2387,87,3434, + 3434,365,3434,2052,897,2491,87,1892,3434,365, + 3434,2052,897,2569,87,1927,3434,365,3434,2052, + 897,2621,87,1948,3434,365,3434,2052,897,2647, + 87,1957,3434,365,3434,3434,3434,2803,3434,2064, + 3434,365,1909,897,335,87,3434,2070,1909,897, + 124,87,3434,3434,3434,2081,1354,3434,1909,897, + 3283,87,1387,2184,1909,897,3289,87,3434,3434, + 3434,2185,1650,1909,897,3123,87,3434,1681,1909, + 897,3131,87,1909,897,3317,87,1744,2903,897, + 3434,87,3434,1747,3434,3434,3434,1748,1909,897, + 3173,87,115,1909,897,3189,87,1909,897,3197, + 87,3434,1806,2903,897,3434,87,1832,3434,3434, + 3434,1840,1909,897,3229,87,3434,115,2903,897, + 3434,87,220,897,3434,87,1855,220,897,3434, + 87,3434,115,3434,220,897,1609,87,3434,220, + 897,1631,87,3434,1784,3434,3434,3434,1636,3434, + 3434,3434,3434,1722,3434,3434,3434,3434,3434,3434, + 3434,3434,3434,3434,3434,3434,3434,3434,3434,1870, + 3434,3434,3434,3434,3434,3434,3434,3434,3434,3434, + 3434,3434,3434,3434,1988,3434,0,327,828,0, + 179,228,0,3441,1,0,1,3673,0,7, + 9,0,179,17,0,178,18,0,1,3662, + 0,112,2205,0 }; }; public final static char baseAction[] = BaseAction.baseAction; @@ -739,53 +743,45 @@ public class UPCParserprs implements lpg.lpgjavaruntime.ParseTable, UPCParsersym 20,21,22,23,24,25,26,27,28,29, 30,31,32,33,34,35,36,37,38,39, 40,41,42,43,44,45,46,47,48,49, - 50,51,52,53,54,55,56,57,58,59, - 60,61,62,63,64,65,66,0,68,69, - 70,71,0,1,2,3,4,5,6,7, - 8,9,10,11,12,13,14,15,16,17, - 18,19,20,21,22,23,24,25,26,27, - 28,29,30,31,32,33,34,35,36,37, - 38,39,40,41,42,43,44,45,46,47, - 48,49,50,51,52,53,54,55,56,57, - 58,59,60,61,62,63,64,65,66,72, - 68,69,70,71,0,1,2,3,4,5, + 50,51,52,53,54,0,56,57,58,59, + 60,61,62,63,64,65,66,67,68,69, + 70,0,0,73,0,1,2,3,4,5, 6,7,8,9,10,11,12,13,14,15, 16,17,18,19,20,21,22,23,24,25, 26,27,28,29,30,31,32,33,34,35, 36,37,38,39,40,41,42,43,44,45, - 46,47,48,49,50,51,52,53,54,55, + 46,47,48,49,50,51,52,53,54,0, 56,57,58,59,60,61,62,63,64,65, - 66,0,68,69,70,71,0,1,2,3, - 4,5,6,7,8,9,10,11,12,13, - 14,15,16,17,18,19,20,21,22,23, - 24,25,26,27,28,29,30,31,32,33, - 34,35,36,37,38,39,40,41,42,43, - 44,45,46,47,48,49,50,51,52,53, - 54,55,56,57,58,59,60,61,62,63, - 64,65,66,72,68,69,70,0,1,2, - 3,4,5,6,7,8,9,10,11,12, - 13,14,15,16,17,18,19,20,21,22, - 23,24,25,26,27,28,29,30,31,32, - 33,34,35,36,37,38,39,40,41,42, - 43,44,45,46,47,48,49,50,51,52, - 53,54,55,56,57,58,59,60,61,62, - 63,64,65,66,0,68,69,70,0,1, - 2,3,0,5,2,7,8,9,10,11, + 66,67,68,69,70,90,75,73,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,0,1,0,3,0,1,6, - 3,0,1,6,3,0,1,6,0,1, - 2,43,44,45,46,47,48,49,50,51, - 52,53,54,55,56,57,58,59,60,61, - 62,63,64,65,66,0,68,69,70,0, - 1,2,3,4,5,6,7,8,9,10, - 11,12,13,14,15,16,17,18,19,20, - 21,22,23,24,25,26,27,28,29,30, - 31,32,33,34,35,36,37,38,39,40, - 41,42,0,1,2,3,4,5,6,7, + 22,23,24,25,26,27,28,29,30,31, + 32,33,34,35,36,37,38,39,40,41, + 42,43,44,45,46,47,48,49,50,51, + 52,53,54,0,56,57,58,59,60,61, + 62,63,64,65,66,67,68,69,70,0, + 91,73,0,1,2,3,4,5,6,7, 8,9,10,11,12,13,14,15,16,17, 18,19,20,21,22,23,24,25,26,27, 28,29,30,31,32,33,34,35,36,37, - 38,39,40,41,42,0,1,2,3,4, + 38,39,40,41,42,43,44,45,46,47, + 48,49,50,51,52,53,54,0,56,57, + 58,59,60,61,62,63,64,65,66,67, + 68,69,70,0,1,2,3,4,5,6, + 7,8,9,10,11,12,13,14,15,16, + 17,18,19,20,21,22,23,24,25,26, + 27,28,29,30,31,32,33,34,35,36, + 37,38,39,40,41,42,43,44,45,46, + 47,48,49,50,51,52,53,54,0,56, + 57,58,59,60,61,62,63,64,65,66, + 67,68,69,70,0,1,2,3,4,92, + 0,7,8,9,10,11,12,13,14,15, + 16,17,18,19,20,21,22,23,24,0, + 1,43,44,45,46,47,48,49,50,51, + 52,53,54,0,1,0,3,43,44,45, + 46,47,48,49,50,51,52,53,54,0, + 56,57,58,59,60,61,62,63,64,65, + 66,67,68,69,70,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, @@ -923,136 +919,138 @@ public class UPCParserprs implements lpg.lpgjavaruntime.ParseTable, UPCParsersym 12,13,14,15,16,17,18,19,20,21, 22,23,24,25,26,27,28,29,30,31, 32,33,34,35,36,37,38,39,40,41, - 42,0,1,2,3,4,5,0,0,0, - 0,0,1,2,0,4,6,0,4,0, - 0,4,2,0,1,2,25,26,5,0, - 10,11,0,1,2,0,0,5,2,25, - 0,5,25,0,43,44,45,46,47,48, - 49,50,51,52,53,54,55,56,57,58, - 59,60,61,62,63,64,65,66,28,68, - 69,70,0,1,2,3,4,5,67,0, - 0,0,75,2,73,4,72,67,87,75, - 67,83,84,85,86,0,87,25,26,67, - 80,72,67,67,97,98,99,100,101,102, - 103,104,105,106,94,43,44,45,46,47, - 48,49,50,51,52,53,54,55,56,57, - 58,59,60,61,62,63,64,65,66,0, - 68,69,70,0,1,0,3,4,67,4, - 0,1,2,0,73,5,76,77,0,87, - 0,0,0,0,4,0,5,5,5,26, - 25,0,0,1,2,0,5,0,83,84, - 85,86,7,8,0,25,43,44,45,46, - 47,48,49,50,51,52,53,54,55,56, - 57,58,59,60,61,62,63,64,65,66, - 0,68,69,70,71,0,1,72,3,4, - 43,44,45,46,47,48,49,50,51,52, - 53,54,72,75,0,75,83,84,85,86, - 6,26,81,82,81,82,74,0,0,0, - 0,4,81,82,4,0,91,2,43,44, - 45,46,47,48,49,50,51,52,53,54, - 55,56,57,58,59,60,61,62,63,64, - 65,66,72,68,69,70,71,0,1,0, - 3,4,43,44,45,46,47,48,49,50, - 51,52,53,54,0,0,0,0,4,0, - 4,2,0,26,5,67,4,0,0,72, - 73,0,67,73,0,1,9,3,80,25, + 42,0,1,2,3,4,5,6,7,8, + 9,10,11,12,13,14,15,16,17,18, + 19,20,21,22,23,24,25,26,27,28, + 29,30,31,32,33,34,35,36,37,38, + 39,40,41,42,0,1,2,3,4,5, + 6,7,8,9,10,11,12,13,14,15, + 16,17,18,19,20,21,22,23,24,25, + 26,27,28,29,30,31,32,33,34,35, + 36,37,38,39,40,41,42,0,1,2, + 3,4,5,0,1,0,3,2,0,6, + 0,0,1,5,3,5,0,6,0,1, + 2,0,25,26,0,0,1,2,0,4, + 2,0,4,25,0,25,2,0,4,2, 43,44,45,46,47,48,49,50,51,52, - 53,54,55,56,57,58,59,60,61,62, - 63,64,65,66,0,68,69,70,71,0, - 1,0,3,4,43,44,45,46,47,48, - 49,50,51,52,53,54,67,73,0,73, - 0,92,4,71,4,26,0,1,0,3, - 0,0,1,0,3,88,89,7,8,0, - 95,96,43,44,45,46,47,48,49,50, - 51,52,53,54,55,56,57,58,59,60, - 61,62,63,64,65,66,0,68,69,70, - 71,0,1,79,3,4,43,44,45,46, - 47,48,49,50,51,52,53,54,0,88, - 89,0,4,73,0,1,78,26,7,8, - 0,1,2,3,0,0,0,2,4,0, - 4,2,0,25,43,44,45,46,47,48, - 49,50,51,52,53,54,55,56,57,58, - 59,60,61,62,63,64,65,66,0,68, - 69,70,71,43,44,45,46,47,48,49, - 50,51,52,53,54,55,56,57,58,59, - 60,61,62,63,64,65,66,0,68,69, - 70,0,1,79,3,71,67,71,0,67, - 0,43,44,45,46,47,48,0,0,0, - 1,2,3,4,5,0,7,8,9,10, + 53,54,0,56,57,58,59,60,61,62, + 63,64,65,66,67,68,69,70,0,1, + 2,3,4,5,43,44,45,46,47,48, + 55,71,0,55,87,75,0,1,2,55, + 74,5,74,25,26,43,44,45,46,47, + 48,49,50,51,52,53,54,83,84,85, + 86,43,44,45,46,47,48,49,50,51, + 52,53,54,0,56,57,58,59,60,61, + 62,63,64,65,66,67,68,69,70,0, + 1,55,3,0,5,0,0,1,0,3, + 5,0,0,1,2,87,5,9,72,0, + 1,2,0,4,2,26,43,44,45,46, + 47,48,49,50,51,52,53,54,27,0, + 0,0,43,44,45,46,47,48,49,50, + 51,52,53,54,0,56,57,58,59,60, + 61,62,63,64,65,66,67,68,69,70, + 0,1,73,3,55,5,71,72,0,1, + 0,3,79,72,43,44,45,46,47,48, + 49,50,51,52,53,54,26,56,57,58, + 59,60,61,62,63,64,65,66,67,0, + 0,1,2,43,44,45,46,47,48,49, + 50,51,52,53,54,0,56,57,58,59, + 60,61,62,63,64,65,66,67,68,69, + 70,0,1,73,3,0,5,0,1,0, + 3,6,43,44,45,46,47,48,49,50, + 51,52,53,54,0,0,0,26,88,89, + 4,0,0,1,2,3,0,0,7,8, + 0,0,5,2,43,44,45,46,47,48, + 49,50,51,52,53,54,0,56,57,58, + 59,60,61,62,63,64,65,66,67,68, + 69,70,87,0,73,43,44,45,46,47, + 48,49,50,51,52,53,54,0,56,57, + 58,59,60,61,62,63,64,65,66,67, + 68,69,70,0,1,0,3,81,82,0, + 1,2,3,4,5,78,7,8,9,10, 11,12,13,14,15,16,17,18,19,20, - 21,22,23,24,43,44,45,46,47,48, - 49,50,51,52,53,54,55,56,57,58, - 59,60,61,62,63,64,65,66,49,68, - 69,70,0,1,2,3,4,5,0,7, - 8,9,10,11,12,13,14,15,16,17, - 18,19,20,21,22,23,24,78,90,0, - 0,76,77,0,0,0,6,0,0,5, - 0,1,0,3,0,0,9,2,6,0, - 6,49,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,0,0,2, - 78,43,44,45,46,47,48,49,50,51, - 52,53,54,55,56,57,58,59,60,61, - 62,63,64,65,66,76,77,0,0,76, - 77,76,77,79,0,0,2,0,1,2, - 3,4,5,71,7,8,9,10,11,12, - 13,14,15,16,17,18,19,20,21,22, - 23,24,0,1,2,3,4,5,0,7, - 8,9,10,11,12,13,14,15,16,17, - 18,19,20,21,22,23,24,0,1,2, - 3,0,5,6,7,8,9,10,11,12, - 13,14,15,16,17,18,19,20,21,22, - 23,24,0,0,2,78,0,0,2,6, - 0,93,0,6,0,90,6,0,6,2, - 0,0,0,0,0,67,0,1,2,3, - 78,5,6,7,8,9,10,11,12,13, - 14,15,16,17,18,19,20,21,22,23, - 24,0,1,2,3,74,5,6,7,8, + 21,22,23,24,0,95,96,0,4,83, + 84,85,86,0,7,8,43,44,45,46, + 47,48,49,50,51,52,53,54,49,56, + 57,58,59,60,61,62,63,64,65,66, + 67,68,69,70,0,0,0,90,2,4, + 0,0,1,2,3,4,5,78,7,8, + 9,10,11,12,13,14,15,16,17,18, + 19,20,21,22,23,24,0,0,1,0, + 3,0,0,2,2,81,82,43,44,45, + 46,47,48,43,44,45,46,47,48,0, + 49,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,81,82,0,78, + 0,1,2,3,4,5,55,7,8,9, + 10,11,12,13,14,15,16,17,18,19, + 20,21,22,23,24,76,77,0,0,83, + 84,85,86,5,0,1,0,3,0,1, + 2,3,4,5,73,7,8,9,10,11, + 12,13,14,15,16,17,18,19,20,21, + 22,23,24,0,0,1,0,3,0,71, + 7,8,4,0,1,2,3,4,78,6, + 7,8,9,10,11,12,13,14,15,16, + 17,18,19,20,21,22,23,24,0,0, + 0,73,4,76,77,6,6,0,0,2, + 74,0,1,2,3,4,78,6,7,8, 9,10,11,12,13,14,15,16,17,18, 19,20,21,22,23,24,0,1,2,3, - 0,5,6,7,8,9,10,11,12,13, + 4,75,6,7,8,9,10,11,12,13, 14,15,16,17,18,19,20,21,22,23, - 24,0,1,2,3,91,5,6,7,8, + 24,0,1,2,3,4,0,6,7,8, 9,10,11,12,13,14,15,16,17,18, 19,20,21,22,23,24,0,1,2,3, - 0,5,0,7,8,9,10,11,12,13, + 4,0,6,7,8,9,10,11,12,13, 14,15,16,17,18,19,20,21,22,23, - 24,0,1,2,3,75,5,0,7,8, + 24,0,1,2,3,4,0,0,7,8, 9,10,11,12,13,14,15,16,17,18, 19,20,21,22,23,24,0,1,2,3, - 0,5,0,7,8,9,10,11,12,13, + 4,75,0,7,8,9,10,11,12,13, 14,15,16,17,18,19,20,21,22,23, - 24,0,1,2,3,75,5,0,7,8, + 24,0,1,2,3,4,0,0,7,8, 9,10,11,12,13,14,15,16,17,18, 19,20,21,22,23,24,0,1,2,3, - 0,5,0,7,8,9,10,11,12,13, + 4,74,0,7,8,9,10,11,12,13, 14,15,16,17,18,19,20,21,22,23, - 24,0,1,2,3,0,5,0,7,8, + 24,0,1,2,3,4,74,0,7,8, 9,10,11,12,13,14,15,16,17,18, 19,20,21,22,23,24,0,1,2,3, - 0,5,0,7,8,9,10,11,12,13, + 4,0,0,7,8,9,10,11,12,13, 14,15,16,17,18,19,20,21,22,23, - 24,0,1,2,0,4,5,0,4,0, - 0,0,0,0,1,2,4,4,5,0, - 0,0,67,0,92,6,25,6,0,25, - 0,74,0,0,6,80,6,0,25,27, - 0,0,0,0,43,44,45,46,47,48, - 49,50,51,52,53,54,43,44,45,46, - 47,48,49,50,51,52,53,54,67,0, - 0,0,0,0,73,0,72,0,0,72, - 67,0,0,74,74,73,73,0,0,0, - 79,0,0,0,74,0,0,74,0,0, - 0,0,0,0,0,0,74,0,0,0, - 0,0,43,44,45,46,47,48,43,44, - 45,46,47,48,43,44,45,46,47,48, - 43,44,45,46,47,48,43,44,45,46, - 47,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,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, + 24,0,1,2,3,4,74,0,7,8, + 9,10,11,12,13,14,15,16,17,18, + 19,20,21,22,23,24,0,1,2,0, + 4,5,75,0,5,28,55,4,0,0, + 1,2,0,4,5,0,0,5,0,0, + 2,25,6,5,97,98,99,100,101,102, + 103,104,105,106,25,0,0,25,0,43, + 44,45,46,47,48,49,50,51,52,53, + 54,55,43,44,45,46,47,48,49,50, + 51,52,53,54,55,0,0,2,72,0, + 0,72,0,55,5,10,11,5,0,0, + 0,72,79,71,0,5,0,75,0,0, + 72,5,0,0,25,0,0,25,5,0, + 5,0,1,88,89,25,0,0,2,43, + 44,45,46,47,48,0,0,79,25,0, + 55,43,44,45,46,47,48,43,44,45, + 46,47,48,0,0,0,0,0,5,5, + 71,6,6,6,72,80,76,77,0,0, + 0,71,2,0,55,76,77,9,72,94, + 71,55,55,0,76,77,0,72,0,6, + 55,55,6,0,6,0,0,0,0,80, + 79,6,6,91,6,0,0,80,92,0, + 71,6,6,0,0,0,0,0,0,0, + 0,0,0,0,0,0,73,73,0,0, + 0,0,0,0,0,0,0,0,0,0, + 71,0,0,0,71,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0, + 0,74,0,0,0,0,0,0,0,0, + 0,0,0,74,0,0,93,0,0,0, 0,0,0,0,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; @@ -1060,319 +1058,316 @@ public class UPCParserprs implements lpg.lpgjavaruntime.ParseTable, UPCParsersym public interface TermAction { public final static char termAction[] = {0, - 3412,6786,1,6777,1368,1,451,1,1,1, - 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,3420,3512,793,1024,784, - 969,1115,529,1016,840,1104,1775,1038,591,1699, - 688,671,924,1,1,1,1,1,1,1, - 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,1,28,1,1, - 1,3418,7,3397,3397,3397,3397,3397,3397,3397, - 3397,3397,3397,3397,3397,3397,3397,3397,3397,3397, - 3397,3397,3397,3397,3397,3397,3397,3397,3397,3397, - 3397,3397,3397,3397,3397,3397,3397,3397,3397,3397, - 3397,3397,3397,3397,3397,3397,3397,3397,3397,3397, - 3397,3397,3397,3397,3397,3397,3397,3397,3397,3397, - 3397,3397,3397,3397,3397,3397,3397,3397,3397,3439, - 3397,3397,3397,3397,3412,6786,1,6777,1368,1, - 451,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,1,1,1,3420, - 3512,793,1024,784,969,1115,529,1016,840,1104, - 1775,1038,591,1699,688,671,924,1,1,1, - 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,1,1,1,1, - 1,205,1,1,1,3418,3412,6786,1,6777, - 3421,1,451,1,1,1,1,1,1,1, - 1,1,1,1,1,1,1,1,1,1, - 1,3420,3512,793,1024,784,969,1115,529,1016, - 840,1104,1775,1038,591,1699,688,671,924,1, + 3434,6820,1,6808,1,1407,652,1,1,1, 1,1,1,1,1,1,1,1,1,1, + 1,1,1,1,1,3442,3534,986,1216,985, + 968,1308,646,1051,900,1279,3258,1243,1451,3252, + 885,1484,1036,1,1,1,1,1,1,1, + 1,1,1,1,1,66,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,6304,1,1,1,3412,6786,1, - 6777,3421,1,451,1,1,1,1,1,1, + 1,156,184,3440,7,3419,3419,3419,3419,3419, + 3419,3419,3419,3419,3419,3419,3419,3419,3419,3419, + 3419,3419,3419,3419,3419,3419,3419,3419,3419,3419, + 3419,3419,3419,3419,3419,3419,3419,3419,3419,3419, + 3419,3419,3419,3419,3419,3419,3419,3419,3419,3419, + 3419,3419,3419,3419,3419,3419,3419,3419,3419,68, + 3419,3419,3419,3419,3419,3419,3419,3419,3419,3419, + 3419,3419,3419,3419,3419,2855,748,3419,3434,6820, + 1,6808,1,1407,652,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,3420,3512,793,1024,784,969,1115,529, - 1016,840,1104,1775,1038,591,1699,688,671,924, + 1,1,1,3442,3534,986,1216,985,968,1308, + 646,1051,900,1279,3258,1243,1451,3252,885,1484, + 1036,1,1,1,1,1,1,1,1,1, + 1,1,1,255,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, + 1964,3440,3434,6820,1,6808,1,3443,652,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,1,1,3412,1434, - 1737,1443,179,1346,3388,1280,1247,1313,3126,3114, - 2877,3422,3423,3424,3425,1214,983,3722,3723,3724, - 1793,1184,1118,3412,3592,282,3593,3412,3592,578, - 3593,3412,3592,595,3593,3412,3648,620,1,3636, - 1922,3624,3625,3626,3735,372,3736,3574,3575,3573, - 3627,3576,3572,3579,3584,3583,3581,3582,3580,3585, - 3586,3578,3587,3588,3589,3412,652,636,499,3412, - 6786,1,6777,3421,1,451,1,1,1,1, + 1,1,1,1,1,1,1,3442,3534,986, + 1216,985,968,1308,646,1051,900,1279,3258,1243, + 1451,3252,885,1484,1036,1,1,1,1,1, + 1,1,1,1,1,1,1,70,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,3420,3512,793,1024,784,969, - 1115,529,1016,840,1104,1775,1038,591,1699,688, - 671,924,3412,6786,1,6777,3421,1,451,1, + 1,1,1,3434,6820,1,6808,1,3443,652, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,1,3420,3512,793, - 1024,784,969,1115,529,1016,840,1104,1775,1038, - 591,1699,688,671,924,3412,6786,1,6777,3421, - 1,451,1,1,1,1,1,1,1,1, + 1,1,1,1,1,1,1,1,3442,3534, + 986,1216,985,968,1308,646,1051,900,1279,3258, + 1243,1451,3252,885,1484,1036,1,1,1,1, + 1,1,1,1,1,1,1,1,129,1, 1,1,1,1,1,1,1,1,1,1, - 3420,3512,793,1024,784,969,1115,529,1016,840, - 1104,1775,1038,591,1699,688,671,924,3412,6786, - 1,6777,3421,1,451,1,1,1,1,1, + 1,1,1,1,3434,1422,1417,1433,1114,1934, + 185,1048,1015,1081,1378,1345,1312,3444,3445,3446, + 3447,944,381,3749,3750,3751,798,596,564,3434, + 3674,3650,3651,3652,3762,368,3763,3596,3597,3595, + 3653,3598,3594,187,6809,287,6809,3650,3651,3652, + 3762,368,3763,3596,3597,3595,3653,3598,3594,3434, + 3601,3606,3605,3603,3604,3602,3607,3608,3600,3609, + 3610,3611,737,447,378,3434,6820,1,6808,1, + 3443,652,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,3420,3512,793,1024,784,969,1115, - 529,1016,840,1104,1775,1038,591,1699,688,671, - 924,3412,6786,1,6777,3421,1,451,1,1, + 3442,3534,986,1216,985,968,1308,646,1051,900, + 1279,3258,1243,1451,3252,885,1484,1036,3434,6820, + 1,6808,1,3443,652,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,3420,3512,793,1024, - 784,969,1115,529,1016,840,1104,1775,1038,591, - 1699,688,671,924,3412,6786,1,6777,3421,1, - 451,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,1,1,1,3420, - 3512,793,1024,784,969,1115,529,1016,840,1104, - 1775,1038,591,1699,688,671,924,3412,6786,1, - 6777,3421,1,451,1,1,1,1,1,1, + 1,1,1,3442,3534,986,1216,985,968,1308, + 646,1051,900,1279,3258,1243,1451,3252,885,1484, + 1036,3434,6820,1,6808,1,3443,652,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,3420,3512,793,1024,784,969,1115,529, - 1016,840,1104,1775,1038,591,1699,688,671,924, - 3412,6786,1,6777,3421,1,451,1,1,1, + 1,1,1,1,1,1,3442,3534,986,1216, + 985,968,1308,646,1051,900,1279,3258,1243,1451, + 3252,885,1484,1036,3434,6820,1,6808,1,3443, + 652,1,1,1,1,1,1,1,1,1, + 1,1,1,1,1,1,1,1,1,3442, + 3534,986,1216,985,968,1308,646,1051,900,1279, + 3258,1243,1451,3252,885,1484,1036,3434,6820,1, + 6808,1,3443,652,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,3420,3512,793,1024,784, - 969,1115,529,1016,840,1104,1775,1038,591,1699, - 688,671,924,3412,6786,1,6777,3421,1,451, + 1,1,3442,3534,986,1216,985,968,1308,646, + 1051,900,1279,3258,1243,1451,3252,885,1484,1036, + 3434,6820,1,6808,1,3443,652,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,1,1,3420,3512, - 793,1024,784,969,1115,529,1016,840,1104,1775, - 1038,591,1699,688,671,924,3412,6786,1,6777, - 3421,1,451,1,1,1,1,1,1,1, + 1,1,1,1,1,3442,3534,986,1216,985, + 968,1308,646,1051,900,1279,3258,1243,1451,3252, + 885,1484,1036,3434,6820,1,6808,1,3443,652, 1,1,1,1,1,1,1,1,1,1, - 1,3420,3512,793,1024,784,969,1115,529,1016, - 840,1104,1775,1038,591,1699,688,671,924,3412, - 6786,1,6777,3421,1,451,1,1,1,1, + 1,1,1,1,1,1,1,1,3442,3534, + 986,1216,985,968,1308,646,1051,900,1279,3258, + 1243,1451,3252,885,1484,1036,3434,6820,1,6808, + 1,3443,652,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,3420,3512,793,1024,784,969, - 1115,529,1016,840,1104,1775,1038,591,1699,688, - 671,924,3412,6786,1,6777,3421,1,451,1, + 1,3442,3534,986,1216,985,968,1308,646,1051, + 900,1279,3258,1243,1451,3252,885,1484,1036,3434, + 6820,1,6808,1,3443,652,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,1,3420,3512,793, - 1024,784,969,1115,529,1016,840,1104,1775,1038, - 591,1699,688,671,924,3412,6786,1,6777,3421, - 1,451,1,1,1,1,1,1,1,1, + 1,1,1,1,3442,3534,986,1216,985,968, + 1308,646,1051,900,1279,3258,1243,1451,3252,885, + 1484,1036,3434,6820,1,6808,1,3443,652,1, 1,1,1,1,1,1,1,1,1,1, - 3420,3512,793,1024,784,969,1115,529,1016,840, - 1104,1775,1038,591,1699,688,671,924,3412,6786, - 1,6777,3421,1,451,1,1,1,1,1, + 1,1,1,1,1,1,1,3442,3534,986, + 1216,985,968,1308,646,1051,900,1279,3258,1243, + 1451,3252,885,1484,1036,3434,6820,1,6808,1, + 3443,652,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,3420,3512,793,1024,784,969,1115, - 529,1016,840,1104,1775,1038,591,1699,688,671, - 924,3412,6786,1,6777,3421,1,451,1,1, + 3442,3534,986,1216,985,968,1308,646,1051,900, + 1279,3258,1243,1451,3252,885,1484,1036,3434,6820, + 1,6808,1,3443,652,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,3420,3512,793,1024, - 784,969,1115,529,1016,840,1104,1775,1038,591, - 1699,688,671,924,3412,6786,1,6777,3421,1, - 451,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,1,1,1,3420, - 3512,793,1024,784,969,1115,529,1016,840,1104, - 1775,1038,591,1699,688,671,924,3412,6786,1, - 6777,3421,1,451,1,1,1,1,1,1, + 1,1,1,3442,3534,986,1216,985,968,1308, + 646,1051,900,1279,3258,1243,1451,3252,885,1484, + 1036,3434,6820,1,6808,1,3443,652,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,3420,3512,793,1024,784,969,1115,529, - 1016,840,1104,1775,1038,591,1699,688,671,924, - 3412,6786,1,6777,3421,1,451,1,1,1, + 1,1,1,1,1,1,3442,3534,986,1216, + 985,968,1308,646,1051,900,1279,3258,1243,1451, + 3252,885,1484,1036,3434,6820,1,6808,1,3443, + 652,1,1,1,1,1,1,1,1,1, + 1,1,1,1,1,1,1,1,1,3442, + 3534,986,1216,985,968,1308,646,1051,900,1279, + 3258,1243,1451,3252,885,1484,1036,3434,6820,1, + 6808,1,3443,652,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,3420,3512,793,1024,784, - 969,1115,529,1016,840,1104,1775,1038,591,1699, - 688,671,924,3412,6786,1,6777,3421,1,451, + 1,1,3442,3534,986,1216,985,968,1308,646, + 1051,900,1279,3258,1243,1451,3252,885,1484,1036, + 3434,6820,1,6808,1,3443,652,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,1,1,3420,3512, - 793,1024,784,969,1115,529,1016,840,1104,1775, - 1038,591,1699,688,671,924,3412,6786,1,6777, - 3421,1,451,1,1,1,1,1,1,1, + 1,1,1,1,1,3442,3534,986,1216,985, + 968,1308,646,1051,900,1279,3258,1243,1451,3252, + 885,1484,1036,3434,6820,1,6808,1,3443,652, 1,1,1,1,1,1,1,1,1,1, - 1,3420,3512,793,1024,784,969,1115,529,1016, - 840,1104,1775,1038,591,1699,688,671,924,3412, - 6786,1,6777,3421,1,451,1,1,1,1, + 1,1,1,1,1,1,1,1,3442,3534, + 986,1216,985,968,1308,646,1051,900,1279,3258, + 1243,1451,3252,885,1484,1036,3434,6820,1,6808, + 1,3443,652,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,3420,3512,793,1024,784,969, - 1115,529,1016,840,1104,1775,1038,591,1699,688, - 671,924,3412,6786,1,6777,3421,1,451,1, + 1,3442,3534,986,1216,985,968,1308,646,1051, + 900,1279,3258,1243,1451,3252,885,1484,1036,3434, + 6820,1,6808,1,3443,652,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,1,3420,3512,793, - 1024,784,969,1115,529,1016,840,1104,1775,1038, - 591,1699,688,671,924,3412,6786,1,6777,3421, - 1,451,1,1,1,1,1,1,1,1, + 1,1,1,1,3442,3534,986,1216,985,968, + 1308,646,1051,900,1279,3258,1243,1451,3252,885, + 1484,1036,3434,6820,1,6808,1,3443,652,1, 1,1,1,1,1,1,1,1,1,1, - 3420,3512,793,1024,784,969,1115,529,1016,840, - 1104,1775,1038,591,1699,688,671,924,3412,6786, - 1,6777,3421,1,451,1,1,1,1,1, + 1,1,1,1,1,1,1,3442,3534,986, + 1216,985,968,1308,646,1051,900,1279,3258,1243, + 1451,3252,885,1484,1036,3434,6820,1,6808,1, + 3443,652,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,3420,3512,793,1024,784,969,1115, - 529,1016,840,1104,1775,1038,591,1699,688,671, - 924,3412,6786,1,6777,3421,1,451,1,1, + 3442,3534,986,1216,985,968,1308,646,1051,900, + 1279,3258,1243,1451,3252,885,1484,1036,3434,6820, + 1,6808,1,3443,652,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,3420,3512,793,1024, - 784,969,1115,529,1016,840,1104,1775,1038,591, - 1699,688,671,924,3412,6786,1,6777,3421,1, - 451,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,1,1,1,3420, - 3512,793,1024,784,969,1115,529,1016,840,1104, - 1775,1038,591,1699,688,671,924,3412,6786,1, - 6777,3421,1,451,1,1,1,1,1,1, + 1,1,1,3442,3534,986,1216,985,968,1308, + 646,1051,900,1279,3258,1243,1451,3252,885,1484, + 1036,3434,6820,1,6808,1,3443,652,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,3420,3512,793,1024,784,969,1115,529, - 1016,840,1104,1775,1038,591,1699,688,671,924, - 3412,6786,1,6777,3421,1,451,1,1,1, + 1,1,1,1,1,1,3442,3534,986,1216, + 985,968,1308,646,1051,900,1279,3258,1243,1451, + 3252,885,1484,1036,3434,6820,1,6808,1,3443, + 652,1,1,1,1,1,1,1,1,1, + 1,1,1,1,1,1,1,1,1,3442, + 3534,986,1216,985,968,1308,646,1051,900,1279, + 3258,1243,1451,3252,885,1484,1036,3434,6820,1, + 6808,1,3443,652,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,3420,3512,793,1024,784, - 969,1115,529,1016,840,1104,1775,1038,591,1699, - 688,671,924,3412,6786,1,6777,3421,1,451, + 1,1,3442,3534,986,1216,985,968,1308,646, + 1051,900,1279,3258,1243,1451,3252,885,1484,1036, + 3434,6820,1,6808,1,3443,652,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,1,1,3420,3512, - 793,1024,784,969,1115,529,1016,840,1104,1775, - 1038,591,1699,688,671,924,3412,6786,1,6777, - 3421,1,451,1,1,1,1,1,1,1, + 1,1,1,1,1,3442,3534,986,1216,985, + 968,1308,646,1051,900,1279,3258,1243,1451,3252, + 885,1484,1036,3434,6820,1,6808,1,3443,652, 1,1,1,1,1,1,1,1,1,1, - 1,3420,3512,793,1024,784,969,1115,529,1016, - 840,1104,1775,1038,591,1699,688,671,924,3412, - 6786,1,6777,3421,1,451,1,1,1,1, + 1,1,1,1,1,1,1,1,3442,3534, + 986,1216,985,968,1308,646,1051,900,1279,3258, + 1243,1451,3252,885,1484,1036,3434,6820,1,6808, + 1,3443,652,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,3420,3512,793,1024,784,969, - 1115,529,1016,840,1104,1775,1038,591,1699,688, - 671,924,3412,6786,1,6777,3421,1,451,1, + 1,3442,3534,986,1216,985,968,1308,646,1051, + 900,1279,3258,1243,1451,3252,885,1484,1036,3434, + 6820,1,6808,1,3443,652,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,1,3420,3512,793, - 1024,784,969,1115,529,1016,840,1104,1775,1038, - 591,1699,688,671,924,3412,6786,1,6777,3421, - 1,451,1,1,1,1,1,1,1,1, + 1,1,1,1,3442,3534,986,1216,985,968, + 1308,646,1051,900,1279,3258,1243,1451,3252,885, + 1484,1036,3434,6820,1,6808,1,3443,652,1, 1,1,1,1,1,1,1,1,1,1, - 3420,3512,793,1024,784,969,1115,529,1016,840, - 1104,1775,1038,591,1699,688,671,924,3412,6786, - 1,6777,3421,1,451,1,1,1,1,1, + 1,1,1,1,1,1,1,3442,3534,986, + 1216,985,968,1308,646,1051,900,1279,3258,1243, + 1451,3252,885,1484,1036,3434,6820,1,6808,1, + 3443,652,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,3420,3512,793,1024,784,969,1115, - 529,1016,840,1104,1775,1038,591,1699,688,671, - 924,3412,1,1,1,3421,1,42,59,3412, - 3412,1,3406,1828,233,3417,425,1,221,3412, - 31,3421,1747,259,3636,1828,3420,3714,1,253, - 3436,3437,265,3636,1828,322,262,949,2999,221, - 3412,1,3420,3412,1,1,1,1,1,1, + 3442,3534,986,1216,985,968,1308,646,1051,900, + 1279,3258,1243,1451,3252,885,1484,1036,3434,6820, + 1,6808,1,3443,652,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,1,1,1749,1, - 1,1,3412,1,1,1,3421,1,650,3412, - 54,1,1365,2999,3416,3417,221,1668,296,221, - 650,2963,2951,2939,2927,61,3384,3420,3714,650, - 1020,557,3385,650,1332,1299,1266,1233,1200,1134, - 1167,1101,1068,1035,944,1,1,1,1,1, + 1,1,1,3442,3534,986,1216,985,968,1308, + 646,1051,900,1279,3258,1243,1451,3252,885,1484, + 1036,3434,6820,1,6808,1,3443,652,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,1,1,1,3412, - 1,1,1,3412,1,3412,1,190,650,3421, - 3412,3636,1922,60,3416,949,2975,2985,156,295, - 234,48,3412,50,221,68,1577,641,1577,3607, - 3420,49,1,3636,1922,51,1577,129,2963,2951, - 2939,2927,1049,376,3412,221,1,1,1,1, + 1,1,1,1,1,1,3442,3534,986,1216, + 985,968,1308,646,1051,900,1279,3258,1243,1451, + 3252,885,1484,1036,3434,6820,1,6808,1,3443, + 652,1,1,1,1,1,1,1,1,1, + 1,1,1,1,1,1,1,1,1,3442, + 3534,986,1216,985,968,1308,646,1051,900,1279, + 3258,1243,1451,3252,885,1484,1036,3434,1,1, + 1,1,3443,3434,3614,179,3615,3410,1,722, + 237,3434,3614,3443,3615,225,3434,838,1,3662, + 391,3434,3442,3741,59,264,3662,1825,267,1, + 3014,251,1,3442,270,225,3014,3434,255,413, 1,1,1,1,1,1,1,1,1,1, + 1,1,130,1,1,1,1,1,1,1, + 1,1,1,1,1,1,1,1,3434,1, + 1,1,1,3443,1,1,1,1,1,1, + 712,225,3434,712,301,225,1,3428,1825,712, + 1982,3439,1496,3442,3741,3650,3651,3652,3762,368, + 3763,3596,3597,3595,3653,3598,3594,3004,2990,2976, + 2962,1,1,1,1,1,1,1,1,1, + 1,1,1,131,1,1,1,1,1,1, + 1,1,1,1,1,1,1,1,1,3434, + 1,712,1,1,193,3434,186,6816,64,6816, + 3439,1,1,3662,391,300,3439,2910,3438,270, + 3662,1825,3434,255,1848,3632,3650,3651,3652,3762, + 368,3763,3596,3597,3595,3653,3598,3594,3800,3434, + 3434,128,1,1,1,1,1,1,1,1, + 1,1,1,1,3434,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 88,1,1,1,190,3412,1,597,1,190, - 3624,3625,3626,3735,372,3736,3574,3575,3573,3627, - 3576,3572,221,692,187,221,2963,2951,2939,2927, - 848,3607,1478,1379,1478,1379,1431,3412,3412,130, - 3412,3417,1478,1379,3417,220,1992,727,1,1, + 3434,1,193,1,712,192,1598,3438,208,6817, + 62,6817,3694,3438,3650,3651,3652,3762,368,3763, + 3596,3597,3595,3653,3598,3594,3632,3601,3606,3605, + 3603,3604,3602,3607,3608,3600,3609,3610,3611,132, + 255,3662,391,1,1,1,1,1,1,1, + 1,1,1,1,1,3434,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, + 1,3434,1,192,1,3434,193,3434,3614,3434, + 3615,504,3650,3651,3652,3762,368,3763,3596,3597, + 3595,3653,3598,3594,3434,3434,48,3632,2948,621, + 1213,51,1,384,391,3612,3434,3434,3084,3046, + 72,3434,3437,3106,1,1,1,1,1,1, + 1,1,1,1,1,1,61,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1398,1,1,1,190,3412,1,70, - 1,190,3624,3625,3626,3735,372,3736,3574,3575, - 3573,3627,3576,3572,1,72,1,62,116,265, - 3417,2999,1,3607,949,1563,3391,64,3412,1816, - 3416,131,650,3416,206,3592,474,3593,1158,116, - 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,1,1,190,3412, - 1,63,1,189,3624,3625,3626,3735,372,3736, - 3574,3575,3573,3627,3576,3572,650,116,3412,3416, - 1,1946,3415,3418,90,3607,3412,3592,3412,3593, - 53,3412,3441,132,3442,2913,2892,1049,376,3412, - 1836,1944,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,3412,1,1,1, - 189,3412,1,3667,1,190,3624,3625,3626,3735, - 372,3736,3574,3575,3573,3627,3576,3572,3412,2913, - 2892,52,3421,90,1,3394,3414,3607,1049,376, - 1,379,1922,3590,3412,3412,281,497,3419,267, - 1070,853,218,3420,1,1,1,1,1,1, - 1,1,1,1,1,1,1,1,1,1, - 1,1,1,1,1,1,1,1,247,1, - 1,1,190,3624,3625,3626,3735,372,3736,3574, - 3575,3573,3627,3576,3572,3579,3584,3583,3581,3582, - 3580,3585,3586,3578,3587,3588,3589,3412,652,636, - 499,3412,3591,3667,3590,3418,650,1070,66,650, - 3412,1,1,1,1,1,1,3412,3412,1, - 3429,1737,3430,3415,1082,58,1280,1247,1313,3126, - 3114,2877,3422,3423,3424,3425,1214,983,3722,3723, - 3724,1793,1184,1118,3624,3625,3626,3735,372,3736, - 3574,3575,3573,3627,3576,3572,3579,3584,3583,3581, - 3582,3580,3585,3586,3578,3587,3588,3589,866,652, - 636,499,3412,3429,1737,3430,3415,1148,3412,1280, - 1247,1313,3126,3114,2877,3422,3423,3424,3425,1214, - 983,3722,3723,3724,1793,1184,1118,3414,2815,57, - 186,2975,2985,56,1,55,864,65,128,641, - 205,510,188,510,227,3412,474,953,916,3412, - 230,1497,1,3429,1737,3430,27,1346,6130,1280, - 1247,1313,3126,3114,2877,3422,3423,3424,3425,1214, - 983,3722,3723,3724,1793,1184,1118,3412,3412,3092, - 3414,3624,3625,3626,3735,372,3736,3574,3575,3573, - 3627,3576,3572,3579,3584,3583,3581,3582,3580,3585, - 3586,3578,3587,3588,3589,2975,2985,3412,112,2975, - 2985,2975,2985,3667,3412,67,1988,3412,3429,1737, - 3430,3415,427,27,1280,1247,1313,3126,3114,2877, - 3422,3423,3424,3425,1214,983,3722,3723,3724,1793, - 1184,1118,3412,3429,1737,3430,3415,1346,268,1280, - 1247,1313,3126,3114,2877,3422,3423,3424,3425,1214, - 983,3722,3723,3724,1793,1184,1118,3412,3429,1737, - 3430,3412,1346,6130,1280,1247,1313,3126,3114,2877, - 3422,3423,3424,3425,1214,983,3722,3723,3724,1793, - 1184,1118,3412,1,3322,3414,3412,3412,3329,451, - 227,3409,318,1092,69,2815,231,3412,1136,3334, - 3412,3412,3412,3412,3412,650,3412,3429,1737,3430, - 3414,1346,1136,1280,1247,1313,3126,3114,2877,3422, - 3423,3424,3425,1214,983,3722,3723,3724,1793,1184, - 1118,1,3429,1737,3430,733,1346,6130,1280,1247, - 1313,3126,3114,2877,3422,3423,3424,3425,1214,983, - 3722,3723,3724,1793,1184,1118,1,3429,1737,3430, - 209,1346,6130,1280,1247,1313,3126,3114,2877,3422, - 3423,3424,3425,1214,983,3722,3723,3724,1793,1184, - 1118,3412,3429,1737,3430,1992,1346,6130,1280,1247, - 1313,3126,3114,2877,3422,3423,3424,3425,1214,983, - 3722,3723,3724,1793,1184,1118,3412,3429,1823,3430, - 3412,1346,3412,1280,1247,1313,3126,3114,2877,3422, - 3423,3424,3425,1214,983,3722,3723,3724,1793,1184, - 1118,3412,3429,2834,3430,1002,1346,3412,1280,1247, - 1313,3126,3114,2877,3422,3423,3424,3425,1214,983, - 3722,3723,3724,1793,1184,1118,3412,3429,3010,3430, - 3412,1346,3412,1280,1247,1313,3126,3114,2877,3422, - 3423,3424,3425,1214,983,3722,3723,3724,1793,1184, - 1118,3412,3429,3014,3430,783,1346,3412,1280,1247, - 1313,3126,3114,2877,3422,3423,3424,3425,1214,983, - 3722,3723,3724,1793,1184,1118,3412,3429,1737,3430, - 3412,1346,71,1280,1247,1313,3126,3114,2877,3422, - 3423,3424,3425,1214,983,3722,3723,3724,1793,1184, - 1118,3412,3429,3035,3430,288,1346,3412,1280,1247, - 1313,3126,3114,2877,3422,3423,3424,3425,1214,983, - 3722,3723,3724,1793,1184,1118,1,3429,1737,3430, - 3412,1346,3412,1280,1247,1313,3126,3114,2877,3422, - 3423,3424,3425,1214,983,3722,3723,3724,1793,1184, - 1118,17,179,3400,3412,3400,3400,28,3421,3412, - 3412,1,1,18,178,3403,3417,3403,3403,316, - 200,314,1596,1,1946,1136,3400,1136,41,3420, - 3412,804,1,3412,1136,1630,1136,3412,3403,3773, - 3412,3412,3412,3412,179,179,179,179,179,179, - 179,179,179,179,179,179,178,178,178,178, - 178,178,178,178,178,178,178,178,3400,248, - 3412,3412,3412,3412,3400,3412,364,3412,3412,603, - 3403,249,3412,2009,1779,3416,3403,250,3412,3412, - 3666,3412,3412,246,1530,3412,3412,3593,3412,3412, - 3412,3412,3412,3412,3412,3412,3592,3412,3412,3412, - 3412,3412,1,1,1,1,1,1,3624,3625, - 3626,3735,372,3736,3624,3625,3626,3735,372,3736, - 3624,3625,3626,3735,372,3736,3624,3625,3626,3735, - 372,3736 + 1,1,3406,3434,193,3650,3651,3652,3762,368, + 3763,3596,3597,3595,3653,3598,3594,67,3601,3606, + 3605,3603,3604,3602,3607,3608,3600,3609,3610,3611, + 737,447,378,3434,3613,3434,3612,1180,1147,1, + 3451,1417,3452,726,3437,3436,1048,1015,1081,1378, + 1345,1312,3444,3445,3446,3447,944,381,3749,3750, + 3751,798,596,564,50,1903,847,53,1213,3004, + 2990,2976,2962,3434,3084,3046,3650,3651,3652,3762, + 368,3763,3596,3597,3595,3653,3598,3594,864,3601, + 3606,3605,3603,3604,3602,3607,3608,3600,3609,3610, + 3611,737,447,378,252,49,3434,2855,3342,1213, + 3434,3434,3451,1417,3452,762,3437,3436,1048,1015, + 1081,1378,1345,1312,3444,3445,3446,3447,944,381, + 3749,3750,3751,798,596,564,60,3434,3463,54, + 3464,224,3434,557,3347,1180,1147,1,1,1, + 1,1,1,3650,3651,3652,3762,368,3763,3434, + 1463,1,3451,1417,3452,1114,27,6765,1048,1015, + 1081,1378,1345,1312,3444,3445,3446,3447,944,381, + 3749,3750,3751,798,596,564,1180,1147,258,3436, + 3434,3451,1417,3452,526,3437,712,1048,1015,1081, + 1378,1345,1312,3444,3445,3446,3447,944,381,3749, + 3750,3751,798,596,564,817,3036,58,1,3004, + 2990,2976,2962,3413,210,3614,3434,3615,3434,3451, + 1417,3452,1114,3437,27,1048,1015,1081,1378,1345, + 1312,3444,3445,3446,3447,944,381,3749,3750,3751, + 798,596,564,52,209,469,213,469,3434,758, + 3084,3046,845,3434,3451,1417,3452,1114,3436,6765, + 1048,1015,1081,1378,1345,1312,3444,3445,3446,3447, + 944,381,3749,3750,3751,798,596,564,3434,231, + 3434,3440,970,817,3036,234,940,3434,3434,3354, + 2008,3434,3451,1417,3452,1114,3436,1176,1048,1015, + 1081,1378,1345,1312,3444,3445,3446,3447,944,381, + 3749,3750,3751,798,596,564,1,3451,1417,3452, + 1114,1397,6765,1048,1015,1081,1378,1345,1312,3444, + 3445,3446,3447,944,381,3749,3750,3751,798,596, + 564,1,3451,1417,3452,1114,3434,6765,1048,1015, + 1081,1378,1345,1312,3444,3445,3446,3447,944,381, + 3749,3750,3751,798,596,564,3434,3451,1417,3452, + 1114,3434,6765,1048,1015,1081,1378,1345,1312,3444, + 3445,3446,3447,944,381,3749,3750,3751,798,596, + 564,3434,3451,1516,3452,1114,3434,3434,1048,1015, + 1081,1378,1345,1312,3444,3445,3446,3447,944,381, + 3749,3750,3751,798,596,564,3434,3451,2873,3452, + 1114,781,3434,1048,1015,1081,1378,1345,1312,3444, + 3445,3446,3447,944,381,3749,3750,3751,798,596, + 564,3434,3451,3061,3452,1114,3434,3434,1048,1015, + 1081,1378,1345,1312,3444,3445,3446,3447,944,381, + 3749,3750,3751,798,596,564,3434,3451,3097,3452, + 1114,2034,203,1048,1015,1081,1378,1345,1312,3444, + 3445,3446,3447,944,381,3749,3750,3751,798,596, + 564,3434,3451,1417,3452,1114,1789,42,1048,1015, + 1081,1378,1345,1312,3444,3445,3446,3447,944,381, + 3749,3750,3751,798,596,564,3434,3451,3102,3452, + 1114,327,3434,1048,1015,1081,1378,1345,1312,3444, + 3445,3446,3447,944,381,3749,3750,3751,798,596, + 564,1,3451,1417,3452,1114,1529,3434,1048,1015, + 1081,1378,1345,1312,3444,3445,3446,3447,944,381, + 3749,3750,3751,798,596,564,17,179,3422,3434, + 3422,3422,1331,1,3439,1546,3407,255,3434,18, + 178,3425,238,3425,3425,63,3434,225,1,3434, + 3014,3422,1077,3439,1298,1265,1232,1199,1166,1100, + 1133,1067,1034,1001,3425,3434,3434,225,1,179, + 179,179,179,179,179,179,179,179,179,179, + 179,3422,178,178,178,178,178,178,178,178, + 178,178,178,178,3425,31,253,495,3422,3434, + 57,3438,1,712,3443,3458,3459,116,250,56, + 3434,3425,3694,225,254,3443,1,225,55,88, + 3438,3439,69,3434,3442,1,71,116,3443,3434, + 90,1,3416,2948,621,3442,272,293,704,3650, + 3651,3652,3762,368,3763,222,273,3693,3442,28, + 617,3650,3651,3652,3762,368,3763,3650,3651,3652, + 3762,368,3763,3434,286,1,3434,231,3441,1011, + 2856,652,1143,235,116,772,817,3036,65,209, + 3434,1812,3359,28,1562,817,3036,2910,3438,545, + 1364,712,1595,323,817,3036,321,90,319,1176, + 712,712,1176,112,1176,41,3434,1,191,1223, + 3694,1176,1176,1964,187,191,191,1257,1934,1, + 3461,186,208,3434,3434,3434,3434,3434,3434,3434, + 3434,3434,3434,3434,3434,3434,3440,1011,3434,3434, + 3434,3434,3434,3434,3434,3434,3434,3434,3434,3434, + 6305,3434,3434,3434,582,3434,3434,3434,3434,3434, + 3434,3434,3434,3434,3434,3434,3434,3434,3434,3434, + 3434,3434,3434,3434,3434,3434,3434,3434,3434,3434, + 3434,3615,3434,3434,3434,3434,3434,3434,3434,3434, + 3434,3434,3434,3614,3434,3434,3431 }; }; public final static char termAction[] = TermAction.termAction; @@ -1380,45 +1375,45 @@ public class UPCParserprs implements lpg.lpgjavaruntime.ParseTable, UPCParsersym public interface Asb { public final static char asb[] = {0, - 317,58,429,52,317,492,24,1,36,36, - 490,490,36,490,36,431,659,54,40,351, - 54,390,354,60,126,60,126,187,60,54, - 534,545,659,303,304,590,431,492,299,582, - 581,659,193,391,376,411,103,103,103,103, - 103,103,103,103,354,103,103,103,259,276, - 281,279,287,283,290,289,292,291,293,126, - 126,126,126,187,187,534,454,54,590,227, - 592,431,54,163,54,390,300,101,101,101, - 101,300,300,123,351,351,351,83,351,351, - 300,390,81,103,81,52,411,545,545,623, - 103,411,411,411,411,411,123,123,662,103, - 103,103,103,103,103,103,103,103,103,103, - 103,103,103,103,103,103,103,103,103,126, - 156,76,431,126,126,156,189,379,189,187, - 454,534,592,230,376,454,265,354,545,540, - 544,463,156,492,193,581,388,300,103,300, - 300,300,300,409,409,103,461,103,103,391, - 83,81,83,54,296,494,494,163,659,587, - 543,542,545,545,545,545,545,545,376,279, - 279,276,276,283,283,281,281,281,281,289, - 287,291,290,81,292,156,78,156,156,103, - 123,189,534,544,454,376,353,227,103,103, - 103,103,103,103,103,103,103,103,103,587, - 659,592,156,161,101,101,300,101,300,545, - 351,545,545,390,83,103,161,623,545,629, - 590,548,548,548,548,492,103,299,103,298, - 156,56,103,103,376,354,629,540,161,101, - 300,101,300,101,300,101,83,103,83,83, - 161,545,592,78,103,376,376,189,385,661, - 300,101,661,300,101,101,300,662,300,545, - 389,189,545,156,159,585,123,103,384,83, - 545,661,661,300,83,545,661,661,300,661, - 300,101,545,662,300,83,156,312,163,376, - 123,103,83,83,545,83,545,661,83,83, - 545,83,545,661,83,545,661,661,300,83, - 545,376,83,83,83,545,83,83,83,545, - 83,83,545,83,545,661,83,83,83,83, - 83,83,545,83 + 567,58,403,52,567,360,24,1,36,358, + 36,358,358,36,358,36,405,565,54,40, + 601,54,364,301,358,219,219,358,219,54, + 565,488,565,94,95,612,405,360,143,530, + 529,565,60,365,323,385,199,199,199,199, + 199,199,199,199,301,199,199,199,103,120, + 125,123,131,127,134,133,136,135,137,360, + 261,360,294,565,477,54,612,229,614,405, + 54,155,54,364,144,197,197,197,197,144, + 144,219,601,601,601,179,601,601,144,364, + 101,199,101,52,385,488,488,603,199,385, + 385,385,385,385,219,219,646,199,199,199, + 199,199,199,199,199,199,199,199,199,199, + 199,199,199,199,199,199,199,360,261,294, + 294,477,428,614,232,323,428,109,301,488, + 483,405,487,331,291,360,60,529,362,144, + 199,144,144,144,144,383,383,199,435,199, + 199,365,179,101,179,54,140,437,437,155, + 565,609,486,485,488,488,488,488,488,488, + 323,123,123,120,120,127,127,125,125,125, + 125,133,131,135,134,101,136,261,291,222, + 261,294,296,491,296,428,477,487,428,323, + 300,229,199,199,199,199,199,199,199,199, + 199,199,199,609,565,614,291,153,197,197, + 144,197,144,488,601,488,488,364,179,199, + 153,603,488,535,612,496,496,496,496,360, + 199,261,224,296,291,199,219,477,56,199, + 199,323,301,535,483,153,197,144,197,144, + 197,144,197,179,199,179,179,153,488,614, + 291,143,199,142,291,323,323,296,148,645, + 144,197,645,144,197,197,144,646,144,488, + 363,296,488,224,199,291,151,533,219,199, + 147,179,488,645,645,144,179,488,645,645, + 144,645,144,197,488,646,144,179,291,326, + 155,323,219,199,179,179,488,179,488,645, + 179,179,488,179,488,645,179,488,645,645, + 144,179,488,323,179,179,179,488,179,179, + 179,488,179,179,488,179,488,645,179,179, + 179,179,179,179,488,179 }; }; public final static char asb[] = Asb.asb; @@ -1428,73 +1423,71 @@ public class UPCParserprs implements lpg.lpgjavaruntime.ParseTable, UPCParsersym public final static byte asr[] = {0, 68,12,69,70,13,14,15,16,3,10, 11,9,7,8,17,18,78,19,20,21, - 22,23,24,63,55,60,58,59,57,56, - 61,62,64,65,66,67,74,72,73,50, + 22,23,24,64,56,61,59,60,58,57, + 62,63,65,66,67,55,74,71,72,50, 43,51,52,53,44,49,54,45,46,47, - 48,25,4,5,2,1,0,87,0,50, - 43,51,52,53,44,49,54,45,67,72, - 73,46,47,48,6,25,4,5,1,2, - 74,0,30,31,6,35,37,32,28,33, - 42,34,27,29,36,39,41,38,40,26, - 25,4,2,13,14,15,16,19,20,21, - 10,11,9,5,7,8,17,18,12,22, - 23,24,1,3,0,50,55,43,56,68, - 51,57,52,58,59,53,44,60,61,49, - 69,54,70,62,63,45,64,65,66,1, - 3,46,47,48,26,71,4,0,4,71, - 67,80,2,13,14,15,16,19,20,21, - 1,3,10,11,9,5,7,8,17,18, - 12,22,23,24,6,0,1,3,4,71, - 72,0,50,55,43,56,68,51,57,52, - 58,59,53,44,60,61,49,69,54,70, - 62,63,45,64,65,66,1,3,46,47, - 48,4,75,72,25,0,78,4,49,43, - 44,45,46,47,48,10,11,9,5,7, - 8,17,18,12,22,23,24,2,1,3, - 13,14,15,16,19,20,21,0,67,2, - 80,94,10,11,75,97,98,99,100,101, - 103,102,104,105,106,5,81,82,7,8, - 77,76,83,84,85,86,88,89,9,90, - 91,92,71,95,96,78,73,74,72,25, - 4,0,2,4,74,75,72,73,25,67, - 0,4,72,71,25,0,87,50,55,43, - 56,68,51,57,52,58,59,53,44,60, - 61,49,69,54,70,62,63,45,64,65, - 66,1,3,5,46,47,48,25,4,26, - 2,0,49,10,11,9,5,7,8,17, - 18,12,22,23,24,2,1,3,13,14, - 15,16,19,20,21,78,4,0,4,72, - 71,75,0,75,67,80,0,87,93,71, - 30,31,6,35,37,32,28,33,42,34, - 27,29,36,39,41,38,40,26,25,4, - 12,13,14,15,16,10,11,9,7,8, - 17,18,19,20,21,22,23,24,5,2, - 3,1,68,69,70,63,55,60,58,59, - 57,56,61,62,64,65,66,54,51,49, - 50,53,52,46,48,47,43,44,45,0, - 28,0,50,55,43,56,68,51,57,52, - 58,59,53,44,60,61,49,69,54,70, - 62,63,45,64,65,66,46,47,48,1, - 3,6,0,49,54,53,52,51,50,80, - 94,10,11,9,7,8,81,82,76,77, - 83,84,85,86,88,89,90,91,92,95, - 96,75,97,98,99,100,101,102,103,104, - 105,106,25,43,44,45,46,47,48,5, - 1,2,67,72,73,4,0,9,5,7, - 8,81,82,76,77,83,84,85,86,88, - 89,90,91,92,95,96,74,97,98,99, - 100,101,102,103,104,105,106,78,73,71, - 6,4,72,25,75,0,5,2,67,73, - 4,50,55,43,56,68,51,57,52,58, - 59,53,44,60,61,49,69,54,70,62, - 63,45,64,65,66,1,3,46,47,48, - 79,0,4,73,5,2,67,0,50,55, - 43,56,68,51,57,52,58,59,53,44, - 60,61,49,69,54,70,62,63,45,64, - 65,66,1,3,46,47,48,79,5,0, - 27,4,73,12,13,14,15,16,1,3, - 2,10,11,9,5,7,8,17,18,19, - 20,21,22,23,24,0 + 48,25,5,4,2,1,0,87,0,50, + 56,43,57,68,51,58,52,59,60,53, + 44,61,62,49,69,54,70,63,64,45, + 65,66,67,1,3,46,47,48,5,75, + 71,25,0,2,5,75,71,72,25,55, + 74,0,55,2,80,94,10,11,75,97, + 98,99,100,101,103,102,104,105,106,4, + 81,82,7,8,77,76,83,84,85,86, + 88,89,9,90,91,92,73,95,96,78, + 72,74,71,25,5,0,75,55,80,0, + 5,73,55,80,2,13,14,15,16,19, + 20,21,1,3,10,11,9,4,7,8, + 17,18,12,22,23,24,6,0,30,31, + 6,35,37,32,28,33,42,34,27,29, + 36,39,41,38,40,26,25,5,2,13, + 14,15,16,19,20,21,10,11,9,4, + 7,8,17,18,12,22,23,24,1,3, + 0,25,5,4,1,2,74,0,78,5, + 49,43,44,45,46,47,48,10,11,9, + 4,7,8,17,18,12,22,23,24,2, + 1,3,13,14,15,16,19,20,21,0, + 50,56,43,57,68,51,58,52,59,60, + 53,44,61,62,49,69,54,70,63,64, + 45,65,66,67,1,3,46,47,48,26, + 5,73,0,1,3,5,73,71,0,49, + 10,11,9,4,7,8,17,18,12,22, + 23,24,2,1,3,13,14,15,16,19, + 20,21,78,5,0,5,71,73,25,0, + 50,56,43,57,68,51,58,52,59,60, + 53,44,61,62,49,69,54,70,63,64, + 45,65,66,67,46,47,48,1,3,6, + 0,87,93,73,30,31,6,35,37,32, + 28,33,42,34,27,29,36,39,41,38, + 40,26,25,5,12,13,14,15,16,10, + 11,9,7,8,17,18,19,20,21,22, + 23,24,4,2,3,1,68,69,70,64, + 56,61,59,60,58,57,62,63,65,66, + 67,54,51,49,50,53,52,46,48,47, + 43,44,45,0,28,0,49,54,53,52, + 51,50,80,94,10,11,9,7,8,81, + 82,76,77,83,84,85,86,88,89,90, + 91,92,95,96,75,97,98,99,100,101, + 102,103,104,105,106,25,43,44,45,46, + 47,48,4,1,2,55,71,72,5,0, + 5,71,73,75,0,9,4,7,8,81, + 82,76,77,83,84,85,86,88,89,90, + 91,92,95,96,74,97,98,99,100,101, + 102,103,104,105,106,78,72,73,6,5, + 71,25,75,0,50,56,43,57,68,51, + 58,52,59,60,53,44,61,62,49,69, + 54,70,63,64,45,65,66,67,1,3, + 46,47,48,79,4,0,87,50,56,43, + 57,68,51,58,52,59,60,53,44,61, + 62,49,69,54,70,63,64,45,65,66, + 67,1,3,4,46,47,48,25,5,26, + 2,0,5,72,4,2,55,0,4,2, + 55,72,5,50,56,43,57,68,51,58, + 52,59,60,53,44,61,62,49,69,54, + 70,63,64,45,65,66,67,1,3,46, + 47,48,79,0,27,5,72,12,13,14, + 15,16,1,3,2,10,11,9,4,7, + 8,17,18,19,20,21,22,23,24,0 }; }; public final static byte asr[] = Asr.asr; @@ -1502,45 +1495,45 @@ public class UPCParserprs implements lpg.lpgjavaruntime.ParseTable, UPCParsersym public interface Nasb { public final static char nasb[] = {0, - 71,34,25,18,61,9,131,11,132,132, - 100,100,132,100,132,127,151,140,34,34, - 134,35,51,34,111,34,111,111,34,15, - 111,160,151,54,54,159,111,9,19,34, - 34,151,34,96,52,113,7,7,7,7, - 7,7,7,7,51,7,7,7,34,34, - 34,34,34,34,34,34,34,34,34,111, - 92,111,92,100,111,111,13,137,159,50, - 110,21,140,56,135,106,19,79,79,79, - 79,19,19,100,34,34,34,40,34,34, - 19,35,34,7,34,18,1,160,160,145, - 7,113,113,113,113,113,75,75,117,80, - 7,7,7,7,7,7,7,7,7,7, - 7,7,7,7,7,7,7,80,7,92, - 36,18,28,67,92,36,83,34,34,100, - 13,59,102,47,52,13,34,51,160,121, - 34,87,111,34,34,34,34,19,7,19, - 19,19,19,77,153,80,34,80,80,96, - 40,34,40,140,34,34,34,7,151,144, - 54,54,160,160,160,160,160,160,52,34, - 34,34,34,34,34,34,34,34,34,34, - 34,34,34,34,34,36,140,36,36,7, - 100,83,59,160,13,52,51,59,7,7, - 7,7,7,7,7,7,7,7,7,120, - 151,110,36,111,79,79,19,155,19,160, - 34,160,160,106,40,7,111,124,160,149, - 159,34,34,34,34,34,7,19,7,34, - 36,34,7,7,52,51,149,122,46,79, - 19,79,19,79,19,155,40,80,40,40, - 46,160,110,140,7,52,52,83,38,158, - 19,79,158,19,79,79,19,155,19,160, - 34,83,160,36,45,34,100,7,85,40, - 160,158,158,19,40,160,158,158,19,158, - 19,79,160,155,19,40,36,65,56,52, - 100,7,40,40,160,40,160,158,40,40, - 160,40,160,158,40,160,158,158,19,40, - 160,52,40,40,40,160,40,40,40,160, - 40,40,160,40,160,158,40,40,40,40, - 40,40,160,40 + 116,31,21,18,82,68,136,10,137,61, + 137,75,75,137,74,137,131,113,14,31, + 31,12,39,71,109,109,109,109,109,32, + 31,171,113,42,42,170,144,68,19,31, + 31,113,31,105,72,99,8,8,8,8, + 8,8,8,8,71,8,8,8,31,31, + 31,31,31,31,31,31,31,31,31,55, + 144,31,144,31,144,164,170,70,124,57, + 14,77,162,120,19,148,148,148,148,19, + 19,109,31,31,31,63,31,31,19,39, + 31,8,31,18,1,171,171,142,8,99, + 99,99,99,99,46,46,36,149,8,8, + 8,8,8,8,8,8,8,8,8,8, + 8,8,8,8,8,149,8,31,158,144, + 109,144,103,86,52,72,103,31,71,171, + 140,24,31,94,144,31,31,31,31,19, + 8,19,19,19,19,146,173,149,31,149, + 149,105,63,31,63,14,31,31,31,8, + 113,168,42,42,171,171,171,171,171,171, + 72,31,31,31,31,31,31,31,31,31, + 31,31,31,31,31,31,31,144,40,18, + 127,109,90,31,31,103,80,171,103,72, + 71,80,8,8,8,8,8,8,8,8, + 8,8,8,139,113,124,40,144,148,148, + 19,175,19,171,31,171,171,120,63,8, + 144,154,171,111,170,31,31,31,31,31, + 8,158,14,90,40,8,109,80,31,8, + 8,72,71,111,152,51,148,19,148,19, + 148,19,175,63,149,63,63,51,171,124, + 40,19,8,31,40,72,72,90,44,178, + 19,148,178,19,148,148,19,175,19,171, + 31,90,171,14,8,40,50,31,109,8, + 48,63,171,178,178,19,63,171,178,178, + 19,178,19,148,171,175,19,63,40,92, + 77,72,109,8,63,63,171,63,171,178, + 63,63,171,63,171,178,63,171,178,178, + 19,63,171,72,63,63,63,171,63,63, + 63,171,63,63,171,63,171,178,63,63, + 63,63,63,63,171,63 }; }; public final static char nasb[] = Nasb.nasb; @@ -1548,22 +1541,24 @@ public class UPCParserprs implements lpg.lpgjavaruntime.ParseTable, UPCParsersym public interface Nasr { public final static char nasr[] = {0, - 88,87,86,85,84,83,7,0,106,0, - 120,0,81,0,41,43,0,1,2,0, - 33,1,119,0,41,1,102,88,87,86, - 85,84,83,0,1,40,0,115,0,12, - 18,1,19,0,92,72,7,1,0,1, - 7,39,0,51,0,7,72,0,35,0, - 33,1,104,0,113,0,1,45,69,0, - 118,33,1,0,93,0,33,50,2,1, - 14,0,73,0,117,0,1,33,50,17, - 0,80,1,45,0,1,33,18,96,12, - 0,110,1,33,0,18,12,74,40,33, - 1,0,1,45,14,0,1,108,0,10, - 1,41,47,63,62,0,75,76,77,78, - 66,52,0,1,43,49,41,47,0,47, - 41,1,0,10,62,63,1,0,1,33, - 58,0,33,50,1,65,0,44,1,10, + 87,86,85,84,79,83,82,7,0,126, + 0,49,42,47,40,1,0,1,2,0, + 40,1,105,87,86,85,84,79,83,82, + 0,40,42,43,0,1,111,0,1,45, + 0,51,0,121,0,94,0,123,0,93, + 72,7,1,0,113,0,33,1,125,0, + 112,0,11,18,1,19,0,109,0,1, + 7,39,0,115,90,0,7,72,0,35, + 0,33,1,107,0,116,1,33,0,73, + 0,119,0,1,33,50,17,0,1,56, + 14,0,80,0,1,33,18,97,11,0, + 1,33,43,59,0,124,33,1,0,18, + 11,74,45,1,33,0,1,56,91,0, + 79,75,76,77,78,67,52,0,10,40, + 47,63,64,1,0,33,50,2,1,14, + 0,40,47,64,63,43,0,100,1,56, + 0,42,49,40,47,43,0,63,64,1, + 10,0,33,50,1,66,0,1,44,10, 0 }; }; @@ -1572,14 +1567,14 @@ public class UPCParserprs implements lpg.lpgjavaruntime.ParseTable, UPCParsersym public interface TerminalIndex { public final static char terminalIndex[] = {0, - 85,2,86,87,9,3,10,11,8,6, + 85,2,86,9,87,3,10,11,8,6, 7,68,81,82,83,84,12,13,93,94, 95,100,101,102,92,107,49,77,45,46, 50,51,57,58,59,65,71,99,103,104, 105,106,48,64,76,96,97,98,69,44, - 55,60,63,72,47,52,56,61,62,66, - 67,74,75,78,79,80,1,54,70,73, - 91,42,90,29,31,16,17,89,30,4, + 55,60,63,72,1,47,52,56,61,62, + 66,67,74,75,78,79,80,54,70,73, + 42,90,91,29,31,16,17,89,30,4, 14,15,18,19,20,21,108,22,23,24, 25,26,53,5,27,28,32,33,34,35, 36,37,38,39,40,41,88 @@ -1591,18 +1586,18 @@ public class UPCParserprs implements lpg.lpgjavaruntime.ParseTable, UPCParsersym public interface NonterminalIndex { public final static char nonterminalIndex[] = {0, 0,112,0,0,0,0,114,118,119,110, - 120,137,121,113,122,123,136,132,135,0, + 137,120,121,113,122,123,136,132,135,0, 0,0,0,0,0,124,125,126,127,128, - 129,130,141,131,149,0,0,0,109,111, - 170,0,173,196,162,167,169,0,171,140, - 172,148,0,0,0,159,134,168,116,181, - 184,185,186,0,0,151,158,0,161,174, - 180,0,0,139,152,153,154,155,0,160, - 179,183,143,144,145,146,147,150,156,157, - 166,187,115,117,133,138,142,164,0,0, - 165,175,178,192,0,194,0,0,163,176, - 177,182,0,188,189,0,190,191,193,195, - 0 + 129,130,141,131,149,0,0,0,109,171, + 0,174,0,197,111,168,170,0,172,140, + 173,148,0,0,0,163,159,134,169,116, + 182,185,186,187,0,0,151,158,0,175, + 181,0,0,139,152,153,154,155,160,180, + 184,143,144,145,146,147,150,156,157,0, + 162,167,188,115,117,133,138,142,0,161, + 165,0,0,166,176,179,193,0,195,0, + 0,0,0,164,0,177,178,183,0,189, + 190,0,191,192,194,196,0 }; }; public final static char nonterminalIndex[] = NonterminalIndex.nonterminalIndex; @@ -1610,12 +1605,12 @@ public class UPCParserprs implements lpg.lpgjavaruntime.ParseTable, UPCParsersym public interface ScopePrefix { public final static char scopePrefix[] = { - 222,120,59,69,129,149,155,26,192,35, - 87,105,161,166,75,6,12,16,40,83, - 52,139,201,218,237,241,52,52,205,52, - 1,1,1,44,47,92,115,47,245,20, - 143,212,183,212,135,171,171,171,171,171, - 95,95,95 + 120,151,216,130,59,69,159,26,186,35, + 87,105,75,6,12,16,40,83,52,141, + 195,212,231,235,52,52,199,52,1,1, + 1,44,47,92,115,47,239,20,145,206, + 177,206,137,165,165,165,165,165,95,95, + 95 }; }; public final static char scopePrefix[] = ScopePrefix.scopePrefix; @@ -1623,12 +1618,12 @@ public class UPCParserprs implements lpg.lpgjavaruntime.ParseTable, UPCParsersym public interface ScopeSuffix { public final static char scopeSuffix[] = { - 127,127,4,4,127,127,127,32,198,10, - 4,10,127,127,80,10,10,10,10,4, - 4,137,127,10,10,4,56,80,209,65, - 4,4,4,10,50,4,10,118,10,23, - 146,215,186,230,137,173,175,177,179,181, - 102,97,110 + 128,128,128,128,4,4,128,32,192,10, + 4,10,80,10,10,10,10,4,4,139, + 128,10,10,4,56,80,203,65,4,4, + 4,10,50,4,10,118,10,23,148,209, + 180,224,139,167,169,171,173,175,102,97, + 110 }; }; public final static char scopeSuffix[] = ScopeSuffix.scopeSuffix; @@ -1636,12 +1631,12 @@ public class UPCParserprs implements lpg.lpgjavaruntime.ParseTable, UPCParsersym public interface ScopeLhs { public final static char scopeLhs[] = { - 7,77,51,51,77,75,75,67,22,64, - 51,43,75,75,51,8,8,8,64,51, - 51,69,17,8,7,7,51,51,32,51, - 120,117,116,62,82,51,41,56,5,92, - 69,9,23,7,69,87,86,85,84,83, - 43,49,43 + 77,75,7,77,51,51,75,68,22,65, + 51,42,51,8,8,8,65,51,51,91, + 17,8,7,7,51,51,32,51,126,123, + 122,63,81,51,40,57,5,93,91,9, + 23,7,91,86,85,84,83,82,42,49, + 42 }; }; public final static char scopeLhs[] = ScopeLhs.scopeLhs; @@ -1649,12 +1644,12 @@ public class UPCParserprs implements lpg.lpgjavaruntime.ParseTable, UPCParsersym public interface ScopeLa { public final static byte scopeLa[] = { - 71,71,78,78,71,71,71,71,93,73, - 78,73,71,71,13,73,73,73,73,78, - 78,25,71,73,73,78,5,13,74,49, - 78,78,78,73,2,78,73,1,73,75, - 1,73,28,73,25,3,68,69,69,63, - 2,2,2 + 73,73,73,73,78,78,73,73,93,72, + 78,72,13,72,72,72,72,78,78,25, + 73,72,72,78,4,13,74,49,78,78, + 78,72,2,78,72,1,72,75,1,72, + 28,72,25,3,68,69,69,64,2,2, + 2 }; }; public final static byte scopeLa[] = ScopeLa.scopeLa; @@ -1662,12 +1657,12 @@ public class UPCParserprs implements lpg.lpgjavaruntime.ParseTable, UPCParsersym public interface ScopeStateSet { public final static char scopeStateSet[] = { - 62,145,51,51,145,145,145,123,12,55, - 51,131,145,145,51,62,62,62,55,51, - 51,5,11,62,62,62,51,51,96,51, - 129,1,3,55,57,51,131,136,62,125, - 5,68,12,62,5,146,146,146,146,146, - 131,133,131 + 143,143,60,143,49,49,143,121,10,53, + 49,129,49,60,60,60,53,49,49,5, + 9,60,60,60,49,49,94,49,127,1, + 3,53,55,49,129,134,60,123,5,66, + 10,60,5,144,144,144,144,144,129,131, + 129 }; }; public final static char scopeStateSet[] = ScopeStateSet.scopeStateSet; @@ -1675,31 +1670,31 @@ public class UPCParserprs implements lpg.lpgjavaruntime.ParseTable, UPCParsersym public interface ScopeRhs { public final static char scopeRhs[] = {0, - 164,67,0,109,0,166,2,24,0,110, - 0,166,2,23,0,166,2,22,0,221, - 108,0,31,158,0,180,201,108,6,179, - 0,111,0,0,177,108,2,169,0,177, - 108,2,0,189,2,0,165,108,0,184, - 0,210,108,67,0,9,109,0,141,49, - 210,108,67,0,69,131,109,0,141,210, - 108,49,67,0,210,108,49,67,0,131, - 109,0,141,49,67,0,141,210,108,67, - 0,141,67,0,148,0,2,0,176,110, - 0,2,110,0,177,108,2,148,0,2, - 0,174,110,0,163,2,0,167,0,180, - 207,108,6,119,68,0,111,0,180,207, - 108,6,68,0,152,0,112,0,216,108, - 152,0,108,152,0,163,112,0,186,108, - 6,119,70,0,186,108,6,119,69,0, - 186,108,6,70,0,186,108,6,69,0, - 195,0,155,0,154,0,153,0,152,0, - 151,0,126,32,0,77,2,113,110,112, - 0,126,117,121,2,35,0,53,135,0, - 203,108,6,0,121,96,138,0,29,130, - 0,166,2,0,110,119,0,166,2,12, - 0,180,201,108,6,117,166,2,0,110, - 3,0,117,0,111,0,215,2,114,0, - 121,67,114,0,121,2,0 + 165,55,0,109,0,167,2,24,0,110, + 0,167,2,23,0,167,2,22,0,227, + 108,0,31,158,0,180,202,108,6,179, + 0,111,0,0,177,108,2,170,0,177, + 108,2,0,188,2,0,166,108,0,185, + 0,213,108,55,0,9,109,0,141,49, + 213,108,55,0,69,131,109,0,141,213, + 108,49,55,0,213,108,49,55,0,131, + 109,0,141,49,55,0,141,213,108,55, + 0,141,55,0,147,0,2,0,177,110, + 0,2,110,0,177,108,2,147,0,2, + 0,175,110,0,164,2,0,168,0,180, + 210,108,6,118,222,68,0,111,0,180, + 210,108,6,222,68,0,163,0,112,0, + 221,108,163,0,108,163,0,164,112,0, + 206,108,6,220,118,219,186,0,206,108, + 6,219,186,0,194,0,155,0,154,0, + 153,0,152,0,151,0,126,32,0,77, + 2,113,110,112,0,126,117,121,2,35, + 0,53,135,0,204,108,6,0,121,96, + 138,0,29,130,0,167,2,0,110,119, + 0,167,2,12,0,180,202,108,6,117, + 167,2,0,110,3,0,117,0,111,0, + 218,2,114,0,121,55,114,0,121,2, + 0 }; }; public final static char scopeRhs[] = ScopeRhs.scopeRhs; @@ -1707,21 +1702,21 @@ public class UPCParserprs implements lpg.lpgjavaruntime.ParseTable, UPCParsersym public interface ScopeState { public final static char scopeState[] = {0, - 1302,0,429,0,3044,901,3007,1519,1420,0, - 1400,2789,2763,2737,2711,2685,2659,2633,2607,2581, - 2555,2529,2503,2477,2451,2425,2399,2373,2347,2321, - 2295,2269,2243,2217,2191,2165,2139,2113,2087,2061, - 2035,2009,1741,804,733,1706,529,1672,1637,0, - 1052,1027,693,662,2827,712,1828,2999,1771,3003, - 0,3126,3114,2877,1793,1184,1118,1148,3025,1082, - 1836,1992,1946,474,2815,2963,2951,2939,2927,2913, - 2892,1049,376,2985,2975,1577,1478,1379,1346,1313, - 427,1280,1247,1214,983,1596,1563,1530,1497,1464, - 1431,1779,1398,1365,1332,1299,1266,1233,1200,1167, - 1134,1101,1068,1035,932,1002,899,866,362,969, - 650,830,783,692,603,555,508,0,372,0, - 401,418,2827,842,668,364,1828,2816,2797,1771, - 597,1893,1922,0,1850,694,362,418,0 + 550,0,523,0,3080,1677,2809,0,1399,2829, + 2803,2777,2751,2725,2699,2673,2647,2621,2595,2569, + 2543,2517,2491,2465,2439,2413,2387,2361,2335,2309, + 2283,2257,2231,2205,2179,2153,2127,2101,2075,2034, + 1740,2008,1982,1706,646,1671,1637,0,914,749, + 685,515,2020,1224,1825,3014,1782,3006,0,1378, + 1345,1312,798,596,564,762,1246,726,1903,1964, + 1934,2910,2855,3004,2990,2976,2962,2948,621,3084, + 3046,3036,817,1213,1180,1147,1114,1081,526,1048, + 1015,944,381,1595,1562,1529,1496,1463,1430,1397, + 1789,1364,1331,1298,1265,1232,1199,1166,1133,1100, + 1067,1034,1001,930,897,864,367,968,712,828, + 781,748,582,547,512,0,368,0,441,424, + 2020,2986,641,1812,2837,1825,1837,1782,2856,369, + 391,0,1700,624,367,424,0 }; }; public final static char scopeState[] = ScopeState.scopeState; @@ -1729,45 +1724,45 @@ public class UPCParserprs implements lpg.lpgjavaruntime.ParseTable, UPCParsersym public interface InSymb { public final static char inSymb[] = {0, - 0,214,108,140,225,209,190,47,191,192, - 70,69,193,68,194,195,108,2,1,148, - 108,6,67,119,6,119,6,6,119,165, - 5,163,108,148,154,2,218,209,204,197, - 150,108,156,108,164,2,24,23,22,12, - 18,17,8,7,5,9,11,10,114,118, - 122,120,133,123,135,134,137,136,138,6, - 108,6,108,108,6,5,108,165,2,67, - 108,108,72,75,165,203,40,38,41,39, - 36,29,27,34,42,33,28,32,37,35, - 125,6,31,30,119,140,108,166,121,152, - 5,2,2,2,2,2,94,80,2,67, - 82,81,5,76,77,8,7,89,88,86, - 85,84,83,90,9,92,91,96,95,108, - 186,152,108,187,108,186,207,119,208,108, - 108,188,108,49,141,108,115,5,177,140, - 178,226,6,179,156,150,4,121,108,121, - 121,121,119,2,2,2,126,2,2,108, - 74,164,74,108,202,1,3,117,108,2, - 170,169,166,166,166,166,166,215,121,120, - 120,118,118,123,123,122,122,122,122,134, - 133,136,135,121,137,186,108,186,180,75, - 72,207,188,217,108,141,210,188,106,105, - 104,102,103,101,100,99,98,97,75,2, - 108,72,108,6,157,109,121,157,172,121, - 28,121,121,203,74,72,6,165,189,108, - 2,117,117,117,117,117,74,216,74,163, - 180,72,210,49,141,5,108,165,108,109, - 121,109,121,109,172,109,117,2,117,117, - 108,177,108,72,74,141,141,201,108,109, - 121,109,109,121,109,109,121,109,172,121, - 126,201,177,180,72,221,80,67,222,117, - 151,109,109,121,117,151,109,109,121,109, - 121,109,172,109,117,93,180,147,75,164, - 80,67,117,117,151,117,151,109,117,117, - 151,117,151,109,117,151,109,109,121,117, - 172,164,117,117,117,151,117,117,117,151, - 117,117,151,117,151,109,117,117,117,117, - 117,117,151,117 + 0,217,108,140,231,212,189,47,190,186, + 191,70,69,192,68,193,194,108,2,1, + 147,108,6,55,219,197,197,222,197,166, + 150,164,108,147,154,2,224,212,205,196, + 149,108,156,108,165,2,24,23,22,12, + 18,17,8,7,4,9,11,10,114,119, + 122,120,133,123,135,134,137,136,138,118, + 6,118,6,150,4,166,2,55,108,108, + 71,75,166,204,40,38,41,39,36,29, + 27,34,42,33,28,32,37,35,125,6, + 31,30,118,140,108,167,121,163,4,2, + 2,2,2,2,94,80,2,55,82,81, + 4,76,77,8,7,89,88,86,85,84, + 83,90,9,92,91,96,95,220,108,6, + 108,4,108,108,49,141,108,115,4,177, + 140,108,178,232,6,179,156,149,5,121, + 108,121,121,121,118,2,2,2,126,2, + 2,108,74,165,74,108,203,1,3,117, + 108,2,171,170,167,167,167,167,167,218, + 121,120,120,119,119,123,123,122,122,122, + 122,134,133,136,135,121,137,6,206,163, + 207,108,210,118,211,108,187,223,108,141, + 213,187,106,105,104,102,103,101,100,99, + 98,97,75,2,108,71,108,6,157,109, + 121,157,173,121,28,121,121,204,74,71, + 6,166,188,108,2,117,117,117,117,117, + 74,108,108,210,180,75,71,187,71,213, + 49,141,4,108,166,108,109,121,109,121, + 109,173,109,117,2,117,117,108,177,108, + 206,221,74,164,180,141,141,202,108,109, + 121,109,109,121,109,109,121,109,173,121, + 126,202,177,71,74,180,71,227,80,55, + 228,117,151,109,109,121,117,151,109,109, + 121,109,121,109,173,109,117,93,180,152, + 75,165,80,55,117,117,151,117,151,109, + 117,117,151,117,151,109,117,151,109,109, + 121,117,173,165,117,117,117,151,117,117, + 117,151,117,117,151,117,151,109,117,117, + 117,117,117,117,151,117 }; }; public final static char inSymb[] = InSymb.inSymb; @@ -1912,7 +1907,7 @@ public class UPCParserprs implements lpg.lpgjavaruntime.ParseTable, UPCParsersym "constant_expression", "statement", "compound_statement", - "identifier_or_typedefname", + "identifier_token", "block_item_list", "block_item", "declaration", @@ -1938,6 +1933,7 @@ public class UPCParserprs implements lpg.lpgjavaruntime.ParseTable, UPCParsersym "complete_declarator", "initializer", "declarator", + "struct_or_union", "struct_declaration_list", "struct_declaration", "specifier_qualifier_list", @@ -1984,8 +1980,8 @@ public class UPCParserprs implements lpg.lpgjavaruntime.ParseTable, UPCParsersym public final static int ERROR_SYMBOL = 26, - SCOPE_UBOUND = 52, - SCOPE_SIZE = 53, + SCOPE_UBOUND = 50, + SCOPE_SIZE = 51, MAX_NAME_LENGTH = 38; public final int getErrorSymbol() { return ERROR_SYMBOL; } @@ -1994,20 +1990,20 @@ public class UPCParserprs implements lpg.lpgjavaruntime.ParseTable, UPCParsersym public final int getMaxNameLength() { return MAX_NAME_LENGTH; } public final static int - NUM_STATES = 384, + NUM_STATES = 386, NT_OFFSET = 107, - LA_STATE_OFFSET = 3773, + LA_STATE_OFFSET = 3800, MAX_LA = 2147483647, - NUM_RULES = 361, - NUM_NONTERMINALS = 121, - NUM_SYMBOLS = 228, + NUM_RULES = 366, + NUM_NONTERMINALS = 127, + NUM_SYMBOLS = 234, SEGMENT_SIZE = 8192, - START_STATE = 918, + START_STATE = 1664, IDENTIFIER_SYMBOL = 0, EOFT_SYMBOL = 87, EOLT_SYMBOL = 87, - ACCEPT_ACTION = 3384, - ERROR_ACTION = 3412; + ACCEPT_ACTION = 3406, + ERROR_ACTION = 3434; public final static boolean BACKTRACK = true; diff --git a/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCParsersym.java b/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCParsersym.java index 85523c6498c..63c2ea743d7 100644 --- a/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCParsersym.java +++ b/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCParsersym.java @@ -18,49 +18,49 @@ public interface UPCParsersym { TK_auto = 50, TK_break = 29, TK_case = 30, - TK_char = 55, + TK_char = 56, TK_const = 43, TK_continue = 27, TK_default = 31, TK_do = 32, - TK_double = 56, + TK_double = 57, TK_else = 93, TK_enum = 68, TK_extern = 51, - TK_float = 57, + TK_float = 58, TK_for = 33, TK_goto = 34, TK_if = 35, TK_inline = 52, - TK_int = 58, - TK_long = 59, + TK_int = 59, + TK_long = 60, TK_register = 53, TK_restrict = 44, TK_return = 36, - TK_short = 60, - TK_signed = 61, + TK_short = 61, + TK_signed = 62, TK_sizeof = 12, TK_static = 49, TK_struct = 69, TK_switch = 37, TK_typedef = 54, TK_union = 70, - TK_unsigned = 62, - TK_void = 63, + TK_unsigned = 63, + TK_void = 64, TK_volatile = 45, TK_while = 28, - TK__Bool = 64, - TK__Complex = 65, - TK__Imaginary = 66, + TK__Bool = 65, + TK__Complex = 66, + TK__Imaginary = 67, TK_integer = 13, TK_floating = 14, TK_charconst = 15, TK_stringlit = 16, TK_identifier = 1, TK_Completion = 3, - TK_EndOfCompletion = 4, + TK_EndOfCompletion = 5, TK_Invalid = 107, - TK_LeftBracket = 67, + TK_LeftBracket = 55, TK_LeftParen = 2, TK_LeftBrace = 6, TK_Dot = 80, @@ -68,7 +68,7 @@ public interface UPCParsersym { TK_PlusPlus = 10, TK_MinusMinus = 11, TK_And = 9, - TK_Star = 5, + TK_Star = 4, TK_Plus = 7, TK_Minus = 8, TK_Tilde = 17, @@ -101,10 +101,10 @@ public interface UPCParsersym { TK_AndAssign = 104, TK_CaretAssign = 105, TK_OrAssign = 106, - TK_Comma = 72, + TK_Comma = 71, TK_RightBracket = 78, - TK_RightParen = 73, - TK_RightBrace = 71, + TK_RightParen = 72, + TK_RightBrace = 73, TK_SemiColon = 25, TK_MYTHREAD = 19, TK_THREADS = 20, @@ -128,8 +128,8 @@ public interface UPCParsersym { "identifier", "LeftParen", "Completion", - "EndOfCompletion", "Star", + "EndOfCompletion", "LeftBrace", "Plus", "Minus", @@ -179,6 +179,7 @@ public interface UPCParsersym { "inline", "register", "typedef", + "LeftBracket", "char", "double", "float", @@ -191,13 +192,12 @@ public interface UPCParsersym { "_Bool", "_Complex", "_Imaginary", - "LeftBracket", "enum", "struct", "union", - "RightBrace", "Comma", "RightParen", + "RightBrace", "Colon", "Assign", "RightShift", diff --git a/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCSizeofExpressionParser.java b/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCSizeofExpressionParser.java index 593f1aea605..b8f1bd78ba1 100644 --- a/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCSizeofExpressionParser.java +++ b/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCSizeofExpressionParser.java @@ -219,8 +219,9 @@ public String[] getOrderedTerminalSymbols() { return UPCSizeofExpressionParsersym.orderedTerminalSymbols; } +@SuppressWarnings("nls") public String getName() { - return "UPCSizeofExpressionParser"; //$NON-NLS-1$ + return "UPCSizeofExpressionParser"; } @@ -591,7 +592,7 @@ public UPCSizeofExpressionParser(String[] mapFrom) { // constructor } // - // Rule 100: labeled_statement ::= identifier_or_typedefname : statement + // Rule 100: labeled_statement ::= identifier_token : statement // case 100: { action. consumeStatementLabeled(); break; } @@ -687,7 +688,7 @@ public UPCSizeofExpressionParser(String[] mapFrom) { // constructor } // - // Rule 120: jump_statement ::= goto identifier_or_typedefname ; + // Rule 120: jump_statement ::= goto identifier_token ; // case 120: { action. consumeStatementGoto(); break; } @@ -789,753 +790,741 @@ public UPCSizeofExpressionParser(String[] mapFrom) { // constructor } // - // Rule 181: struct_or_union_specifier ::= struct { <openscope-ast> struct_declaration_list_opt } + // Rule 181: struct_or_union_specifier ::= struct_or_union struct_or_union_specifier_hook { <openscope-ast> struct_declaration_list_opt } // - case 181: { action. consumeTypeSpecifierComposite(false, IASTCompositeTypeSpecifier.k_struct); break; + case 181: { action. consumeTypeSpecifierComposite(false); break; } // - // Rule 182: struct_or_union_specifier ::= union { <openscope-ast> struct_declaration_list_opt } + // Rule 182: struct_or_union_specifier ::= struct_or_union struct_or_union_specifier_hook identifier_token struct_or_union_specifier_suffix_hook { <openscope-ast> struct_declaration_list_opt } // - case 182: { action. consumeTypeSpecifierComposite(false, IASTCompositeTypeSpecifier.k_union); break; + case 182: { action. consumeTypeSpecifierComposite(true); break; } // - // Rule 183: struct_or_union_specifier ::= struct identifier_or_typedefname { <openscope-ast> struct_declaration_list_opt } + // Rule 187: elaborated_specifier ::= struct elaborated_specifier_hook identifier_token // - case 183: { action. consumeTypeSpecifierComposite(true, IASTCompositeTypeSpecifier.k_struct); break; + case 187: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_struct); break; } // - // Rule 184: struct_or_union_specifier ::= union identifier_or_typedefname { <openscope-ast> struct_declaration_list_opt } + // Rule 188: elaborated_specifier ::= union elaborated_specifier_hook identifier_token // - case 184: { action. consumeTypeSpecifierComposite(true, IASTCompositeTypeSpecifier.k_union); break; + case 188: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_union); break; } // - // Rule 185: elaborated_specifier ::= struct identifier_or_typedefname + // Rule 189: elaborated_specifier ::= enum elaborated_specifier_hook identifier_token // - case 185: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_struct); break; + case 189: { action. consumeTypeSpecifierElaborated(IASTElaboratedTypeSpecifier.k_enum); break; } // - // Rule 186: elaborated_specifier ::= union identifier_or_typedefname + // Rule 195: struct_declaration ::= specifier_qualifier_list <openscope-ast> struct_declarator_list ; // - case 186: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_union); break; + case 195: { action. consumeStructDeclaration(true); break; } // - // Rule 187: elaborated_specifier ::= enum identifier_or_typedefname + // Rule 196: struct_declaration ::= specifier_qualifier_list ; // - case 187: { action. consumeTypeSpecifierElaborated(IASTElaboratedTypeSpecifier.k_enum); break; + case 196: { action. consumeStructDeclaration(false); break; } // - // Rule 192: struct_declaration ::= specifier_qualifier_list <openscope-ast> struct_declarator_list ; + // Rule 197: struct_declaration ::= ERROR_TOKEN // - case 192: { action. consumeStructDeclaration(true); break; + case 197: { action. consumeDeclarationProblem(); break; } // - // Rule 193: struct_declaration ::= specifier_qualifier_list ; + // Rule 203: struct_declarator ::= : constant_expression // - case 193: { action. consumeStructDeclaration(false); break; + case 203: { action. consumeBitField(false); break; } // - // Rule 194: struct_declaration ::= ERROR_TOKEN + // Rule 204: struct_declarator ::= declarator : constant_expression // - case 194: { action. consumeDeclarationProblem(); break; + case 204: { action. consumeBitField(true); break; } // - // Rule 200: struct_declarator ::= : constant_expression + // Rule 205: enum_specifier ::= enum enum_specifier_hook { <openscope-ast> enumerator_list_opt comma_opt } // - case 200: { action. consumeBitField(false); break; + case 205: { action. consumeTypeSpecifierEnumeration(false); break; } // - // Rule 201: struct_declarator ::= declarator : constant_expression + // Rule 206: enum_specifier ::= enum enum_specifier_hook identifier_token { <openscope-ast> enumerator_list_opt comma_opt } // - case 201: { action. consumeBitField(true); break; + case 206: { action. consumeTypeSpecifierEnumeration(true); break; } // - // Rule 202: enum_specifier ::= enum { <openscope-ast> enumerator_list_opt comma_opt } + // Rule 212: enumerator ::= identifier_token // - case 202: { action. consumeTypeSpecifierEnumeration(false); break; + case 212: { action. consumeEnumerator(false); break; } // - // Rule 203: enum_specifier ::= enum identifier_or_typedefname { <openscope-ast> enumerator_list_opt comma_opt } + // Rule 213: enumerator ::= identifier_token = constant_expression // - case 203: { action. consumeTypeSpecifierEnumeration(true); break; + case 213: { action. consumeEnumerator(true); break; } // - // Rule 208: enumerator ::= identifier_or_typedefname + // Rule 214: type_qualifier ::= type_qualifier_token // - case 208: { action. consumeEnumerator(false); break; - } - - // - // Rule 209: enumerator ::= identifier_or_typedefname = constant_expression - // - case 209: { action. consumeEnumerator(true); break; - } - - // - // Rule 210: type_qualifier ::= type_qualifier_token - // - case 210: { action. consumeDeclSpecToken(); break; + case 214: { action. consumeDeclSpecToken(); break; } // - // Rule 214: function_specifier ::= inline + // Rule 218: function_specifier ::= inline // - case 214: { action. consumeDeclSpecToken(); break; + case 218: { action. consumeDeclSpecToken(); break; } // - // Rule 216: declarator ::= <openscope-ast> pointer_seq direct_declarator + // Rule 220: declarator ::= <openscope-ast> pointer_seq direct_declarator // - case 216: { action. consumeDeclaratorWithPointer(true); break; + case 220: { action. consumeDeclaratorWithPointer(true); break; } // - // Rule 221: basic_direct_declarator ::= declarator_id_name + // Rule 225: basic_direct_declarator ::= declarator_id_name // - case 221: { action. consumeDirectDeclaratorIdentifier(); break; + case 225: { action. consumeDirectDeclaratorIdentifier(); break; } // - // Rule 222: basic_direct_declarator ::= ( declarator ) + // Rule 226: basic_direct_declarator ::= ( declarator ) // - case 222: { action. consumeDirectDeclaratorBracketed(); break; + case 226: { action. consumeDirectDeclaratorBracketed(); break; } // - // Rule 223: declarator_id_name ::= identifier + // Rule 227: declarator_id_name ::= identifier // - case 223: { action. consumeIdentifierName(); break; + case 227: { action. consumeIdentifierName(); break; } // - // Rule 224: array_direct_declarator ::= basic_direct_declarator array_modifier + // Rule 228: array_direct_declarator ::= basic_direct_declarator array_modifier // - case 224: { action. consumeDirectDeclaratorArrayDeclarator(true); break; + case 228: { action. consumeDirectDeclaratorArrayDeclarator(true); break; } // - // Rule 225: array_direct_declarator ::= array_direct_declarator array_modifier + // Rule 229: array_direct_declarator ::= array_direct_declarator array_modifier // - case 225: { action. consumeDirectDeclaratorArrayDeclarator(true); break; + case 229: { action. consumeDirectDeclaratorArrayDeclarator(true); break; } // - // Rule 227: function_direct_declarator ::= basic_direct_declarator ( <openscope-ast> parameter_type_list ) + // Rule 231: function_direct_declarator ::= basic_direct_declarator ( <openscope-ast> parameter_type_list ) // - case 227: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break; + case 231: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break; } // - // Rule 228: function_direct_declarator ::= basic_direct_declarator ( ) + // Rule 232: function_direct_declarator ::= basic_direct_declarator ( ) // - case 228: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break; + case 232: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break; } // - // Rule 230: function_declarator ::= <openscope-ast> pointer_seq function_direct_declarator + // Rule 234: function_declarator ::= <openscope-ast> pointer_seq function_direct_declarator // - case 230: { action. consumeDeclaratorWithPointer(true); break; + case 234: { action. consumeDeclaratorWithPointer(true); break; } // - // Rule 231: knr_direct_declarator ::= basic_direct_declarator ( <openscope-ast> identifier_list ) + // Rule 235: knr_direct_declarator ::= basic_direct_declarator ( <openscope-ast> identifier_list ) // - case 231: { action. consumeDirectDeclaratorFunctionDeclaratorKnR(); break; + case 235: { action. consumeDirectDeclaratorFunctionDeclaratorKnR(); break; } // - // Rule 233: knr_function_declarator ::= <openscope-ast> pointer_seq knr_direct_declarator + // Rule 237: knr_function_declarator ::= <openscope-ast> pointer_seq knr_direct_declarator // - case 233: { action. consumeDeclaratorWithPointer(true); break; + case 237: { action. consumeDeclaratorWithPointer(true); break; } // - // Rule 234: identifier_list ::= identifier + // Rule 238: identifier_list ::= identifier // - case 234: { action. consumeIdentifierKnR(); break; + case 238: { action. consumeIdentifierKnR(); break; } // - // Rule 235: identifier_list ::= identifier_list , identifier + // Rule 239: identifier_list ::= identifier_list , identifier // - case 235: { action. consumeIdentifierKnR(); break; + case 239: { action. consumeIdentifierKnR(); break; } // - // Rule 236: array_modifier ::= [ ] + // Rule 240: array_modifier ::= [ ] // - case 236: { action. consumeDirectDeclaratorArrayModifier(false); break; + case 240: { action. consumeDirectDeclaratorArrayModifier(false); break; } // - // Rule 237: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers ] + // Rule 241: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers ] // - case 237: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, false); break; + case 241: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, false); break; } // - // Rule 238: array_modifier ::= [ assignment_expression ] + // Rule 242: array_modifier ::= [ assignment_expression ] // - case 238: { action. consumeDirectDeclaratorArrayModifier(true); break; + case 242: { action. consumeDirectDeclaratorArrayModifier(true); break; } // - // Rule 239: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers assignment_expression ] + // Rule 243: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers assignment_expression ] // - case 239: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, true); break; + case 243: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, true); break; } // - // Rule 240: array_modifier ::= [ static assignment_expression ] + // Rule 244: array_modifier ::= [ static assignment_expression ] // - case 240: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, false, true); break; + case 244: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, false, true); break; } // - // Rule 241: array_modifier ::= [ static <openscope-ast> array_modifier_type_qualifiers assignment_expression ] + // Rule 245: array_modifier ::= [ static <openscope-ast> array_modifier_type_qualifiers assignment_expression ] // - case 241: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break; + case 245: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break; } // - // Rule 242: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers static assignment_expression ] + // Rule 246: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers static assignment_expression ] // - case 242: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break; + case 246: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break; } // - // Rule 243: array_modifier ::= [ * ] + // Rule 247: array_modifier ::= [ * ] // - case 243: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, false, false); break; + case 247: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, false, false); break; } // - // Rule 244: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers * ] + // Rule 248: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers * ] // - case 244: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, true, false); break; + case 248: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, true, false); break; } // - // Rule 246: pointer_seq ::= * + // Rule 250: pointer_seq ::= pointer_hook * // - case 246: { action. consumePointer(); break; + case 250: { action. consumePointer(); break; } // - // Rule 247: pointer_seq ::= pointer_seq * + // Rule 251: pointer_seq ::= pointer_seq pointer_hook * // - case 247: { action. consumePointer(); break; + case 251: { action. consumePointer(); break; } // - // Rule 248: pointer_seq ::= * <openscope-ast> type_qualifier_list + // Rule 252: pointer_seq ::= pointer_hook * <openscope-ast> type_qualifier_list // - case 248: { action. consumePointerTypeQualifierList(); break; + case 252: { action. consumePointerTypeQualifierList(); break; } // - // Rule 249: pointer_seq ::= pointer_seq * <openscope-ast> type_qualifier_list + // Rule 253: pointer_seq ::= pointer_seq pointer_hook * <openscope-ast> type_qualifier_list // - case 249: { action. consumePointerTypeQualifierList(); break; + case 253: { action. consumePointerTypeQualifierList(); break; } // - // Rule 252: parameter_type_list ::= parameter_list + // Rule 257: parameter_type_list ::= parameter_list // - case 252: { action. consumeEmpty(); break; + case 257: { action. consumeEmpty(); break; } // - // Rule 253: parameter_type_list ::= parameter_list , ... + // Rule 258: parameter_type_list ::= parameter_list , ... // - case 253: { action. consumePlaceHolder(); break; + case 258: { action. consumePlaceHolder(); break; } // - // Rule 254: parameter_type_list ::= ... + // Rule 259: parameter_type_list ::= ... // - case 254: { action. consumePlaceHolder(); break; + case 259: { action. consumePlaceHolder(); break; } // - // Rule 257: parameter_declaration ::= declaration_specifiers complete_parameter_declarator + // Rule 262: parameter_declaration ::= declaration_specifiers complete_parameter_declarator // - case 257: { action. consumeParameterDeclaration(); break; + case 262: { action. consumeParameterDeclaration(); break; } // - // Rule 258: parameter_declaration ::= declaration_specifiers + // Rule 263: parameter_declaration ::= declaration_specifiers // - case 258: { action. consumeParameterDeclarationWithoutDeclarator(); break; + case 263: { action. consumeParameterDeclarationWithoutDeclarator(); break; } // - // Rule 261: type_name ::= specifier_qualifier_list + // Rule 266: type_name ::= specifier_qualifier_list // - case 261: { action. consumeTypeId(false); break; + case 266: { action. consumeTypeId(false); break; } // - // Rule 262: type_name ::= specifier_qualifier_list abstract_declarator + // Rule 267: type_name ::= specifier_qualifier_list abstract_declarator // - case 262: { action. consumeTypeId(true); break; + case 267: { action. consumeTypeId(true); break; } // - // Rule 264: abstract_declarator ::= <openscope-ast> pointer_seq + // Rule 269: abstract_declarator ::= <openscope-ast> pointer_seq // - case 264: { action. consumeDeclaratorWithPointer(false); break; + case 269: { action. consumeDeclaratorWithPointer(false); break; } // - // Rule 265: abstract_declarator ::= <openscope-ast> pointer_seq direct_abstract_declarator + // Rule 270: abstract_declarator ::= <openscope-ast> pointer_seq direct_abstract_declarator // - case 265: { action. consumeDeclaratorWithPointer(false); break; + case 270: { action. consumeDeclaratorWithPointer(false); break; } // - // Rule 269: basic_direct_abstract_declarator ::= ( abstract_declarator ) + // Rule 274: basic_direct_abstract_declarator ::= ( abstract_declarator ) // - case 269: { action. consumeDirectDeclaratorBracketed(); break; + case 274: { action. consumeDirectDeclaratorBracketed(); break; } // - // Rule 270: array_direct_abstract_declarator ::= array_modifier + // Rule 275: array_direct_abstract_declarator ::= array_modifier // - case 270: { action. consumeDirectDeclaratorArrayDeclarator(false); break; + case 275: { action. consumeDirectDeclaratorArrayDeclarator(false); break; } // - // Rule 271: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier + // Rule 276: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier // - case 271: { action. consumeDirectDeclaratorArrayDeclarator(true); break; + case 276: { action. consumeDirectDeclaratorArrayDeclarator(true); break; } // - // Rule 272: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier + // Rule 277: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier // - case 272: { action. consumeDirectDeclaratorArrayDeclarator(true); break; + case 277: { action. consumeDirectDeclaratorArrayDeclarator(true); break; } // - // Rule 273: function_direct_abstract_declarator ::= ( ) + // Rule 278: function_direct_abstract_declarator ::= ( ) // - case 273: { action. consumeDirectDeclaratorFunctionDeclarator(false, false); break; + case 278: { action. consumeDirectDeclaratorFunctionDeclarator(false, false); break; } // - // Rule 274: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( ) + // Rule 279: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( ) // - case 274: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break; + case 279: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break; } // - // Rule 275: function_direct_abstract_declarator ::= ( <openscope-ast> parameter_type_list ) + // Rule 280: function_direct_abstract_declarator ::= ( <openscope-ast> parameter_type_list ) // - case 275: { action. consumeDirectDeclaratorFunctionDeclarator(false, true); break; + case 280: { action. consumeDirectDeclaratorFunctionDeclarator(false, true); break; } // - // Rule 276: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( <openscope-ast> parameter_type_list ) + // Rule 281: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( <openscope-ast> parameter_type_list ) // - case 276: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break; + case 281: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break; } // - // Rule 277: initializer ::= assignment_expression + // Rule 282: initializer ::= assignment_expression // - case 277: { action. consumeInitializer(); break; + case 282: { action. consumeInitializer(); break; } // - // Rule 278: initializer ::= start_initializer_list { <openscope-ast> initializer_list comma_opt } end_initializer_list + // Rule 283: initializer ::= start_initializer_list { <openscope-ast> initializer_list comma_opt } end_initializer_list // - case 278: { action. consumeInitializerList(); break; + case 283: { action. consumeInitializerList(); break; } // - // Rule 279: initializer ::= { <openscope-ast> } + // Rule 284: initializer ::= { <openscope-ast> } // - case 279: { action. consumeInitializerList(); break; + case 284: { action. consumeInitializerList(); break; } // - // Rule 280: start_initializer_list ::= $Empty + // Rule 285: start_initializer_list ::= $Empty // - case 280: { action. initializerListStart(); break; + case 285: { action. initializerListStart(); break; } // - // Rule 281: end_initializer_list ::= $Empty + // Rule 286: end_initializer_list ::= $Empty // - case 281: { action. initializerListEnd(); break; + case 286: { action. initializerListEnd(); break; } // - // Rule 286: designated_initializer ::= <openscope-ast> designation = initializer + // Rule 291: designated_initializer ::= <openscope-ast> designation = initializer // - case 286: { action. consumeInitializerDesignated(); break; + case 291: { action. consumeInitializerDesignated(); break; } // - // Rule 290: designator_base ::= [ constant_expression ] + // Rule 295: designator_base ::= [ constant_expression ] // - case 290: { action. consumeDesignatorArray(); break; + case 295: { action. consumeDesignatorArray(); break; } // - // Rule 291: designator_base ::= . identifier_or_typedefname + // Rule 296: designator_base ::= . identifier_token // - case 291: { action. consumeDesignatorField(); break; + case 296: { action. consumeDesignatorField(); break; } // - // Rule 292: designator ::= [ constant_expression ] + // Rule 297: designator ::= [ constant_expression ] // - case 292: { action. consumeDesignatorArray(); break; + case 297: { action. consumeDesignatorArray(); break; } // - // Rule 293: designator ::= . identifier_or_typedefname + // Rule 298: designator ::= . identifier_token // - case 293: { action. consumeDesignatorField(); break; + case 298: { action. consumeDesignatorField(); break; } // - // Rule 294: translation_unit ::= external_declaration_list + // Rule 299: translation_unit ::= external_declaration_list // - case 294: { action. consumeTranslationUnit(); break; + case 299: { action. consumeTranslationUnit(); break; } // - // Rule 295: translation_unit ::= $Empty + // Rule 300: translation_unit ::= $Empty // - case 295: { action. consumeTranslationUnit(); break; + case 300: { action. consumeTranslationUnit(); break; } // - // Rule 300: external_declaration ::= ; + // Rule 305: external_declaration ::= ; // - case 300: { action. consumeDeclarationEmpty(); break; + case 305: { action. consumeDeclarationEmpty(); break; } // - // Rule 301: external_declaration ::= ERROR_TOKEN + // Rule 306: external_declaration ::= ERROR_TOKEN // - case 301: { action. consumeDeclarationProblem(); break; + case 306: { action. consumeDeclarationProblem(); break; } // - // Rule 304: function_definition ::= declaration_specifiers <openscope-ast> function_declarator function_body + // Rule 309: function_definition ::= declaration_specifiers <openscope-ast> function_declarator function_body // - case 304: { action. consumeFunctionDefinition(true); break; + case 309: { action. consumeFunctionDefinition(true); break; } // - // Rule 305: function_definition ::= <openscope-ast> function_declarator function_body + // Rule 310: function_definition ::= <openscope-ast> function_declarator function_body // - case 305: { action. consumeFunctionDefinition(false); break; + case 310: { action. consumeFunctionDefinition(false); break; } // - // Rule 306: function_definition ::= declaration_specifiers <openscope-ast> knr_function_declarator <openscope-ast> declaration_list compound_statement + // Rule 311: function_definition ::= declaration_specifiers <openscope-ast> knr_function_declarator <openscope-ast> declaration_list compound_statement // - case 306: { action. consumeFunctionDefinitionKnR(); break; + case 311: { action. consumeFunctionDefinitionKnR(); break; } // - // Rule 307: function_body ::= { } + // Rule 312: function_body ::= { } // - case 307: { action. consumeStatementCompoundStatement(false); break; + case 312: { action. consumeStatementCompoundStatement(false); break; } // - // Rule 308: function_body ::= { <openscope-ast> block_item_list } + // Rule 313: function_body ::= { <openscope-ast> block_item_list } // - case 308: { action. consumeStatementCompoundStatement(true); break; + case 313: { action. consumeStatementCompoundStatement(true); break; } // - // Rule 310: no_sizeof_type_name_start ::= ERROR_TOKEN + // Rule 315: no_sizeof_type_name_start ::= ERROR_TOKEN // - case 310: { action. consumeExpressionProblem(); break; + case 315: { action. consumeExpressionProblem(); break; } // - // Rule 311: literal ::= MYTHREAD + // Rule 316: literal ::= MYTHREAD // - case 311: { action. consumeKeywordExpression(IUPCASTKeywordExpression.kw_mythread); break; + case 316: { action. consumeKeywordExpression(IUPCASTKeywordExpression.kw_mythread); break; } // - // Rule 312: literal ::= THREADS + // Rule 317: literal ::= THREADS // - case 312: { action. consumeKeywordExpression(IUPCASTKeywordExpression.kw_threads); break; + case 317: { action. consumeKeywordExpression(IUPCASTKeywordExpression.kw_threads); break; } // - // Rule 313: literal ::= UPC_MAX_BLOCKSIZE + // Rule 318: literal ::= UPC_MAX_BLOCKSIZE // - case 313: { action. consumeKeywordExpression(IUPCASTKeywordExpression.kw_upc_max_block_size); break; + case 318: { action. consumeKeywordExpression(IUPCASTKeywordExpression.kw_upc_max_block_size); break; } // - // Rule 314: unary_expression ::= upc_localsizeof unary_expression + // Rule 319: unary_expression ::= upc_localsizeof unary_expression // - case 314: { action. consumeExpressionUnarySizeofOperator(IUPCASTUnarySizeofExpression.upc_localsizeof); break; + case 319: { action. consumeExpressionUnarySizeofOperator(IUPCASTUnarySizeofExpression.upc_localsizeof); break; } // - // Rule 315: unary_expression ::= upc_blocksizeof unary_expression + // Rule 320: unary_expression ::= upc_blocksizeof unary_expression // - case 315: { action. consumeExpressionUnarySizeofOperator(IUPCASTUnarySizeofExpression.upc_blocksizeof); break; + case 320: { action. consumeExpressionUnarySizeofOperator(IUPCASTUnarySizeofExpression.upc_blocksizeof); break; } // - // Rule 316: unary_expression ::= upc_elemsizeof unary_expression + // Rule 321: unary_expression ::= upc_elemsizeof unary_expression // - case 316: { action. consumeExpressionUnarySizeofOperator(IUPCASTUnarySizeofExpression.upc_elemsizeof); break; + case 321: { action. consumeExpressionUnarySizeofOperator(IUPCASTUnarySizeofExpression.upc_elemsizeof); break; } // - // Rule 320: shared_type_qualifier ::= shared + // Rule 325: shared_type_qualifier ::= shared // - case 320: { action. consumeToken(); break; + case 325: { action. consumeToken(); break; } // - // Rule 321: reference_type_qualifier ::= relaxed + // Rule 326: reference_type_qualifier ::= relaxed // - case 321: { action. consumeToken(); break; + case 326: { action. consumeToken(); break; } // - // Rule 322: reference_type_qualifier ::= strict + // Rule 327: reference_type_qualifier ::= strict // - case 322: { action. consumeToken(); break; + case 327: { action. consumeToken(); break; } // - // Rule 323: layout_qualifier ::= [ constant_expression ] + // Rule 328: layout_qualifier ::= [ constant_expression ] // - case 323: { action. consumeLayoutQualifier(true, false); break; + case 328: { action. consumeLayoutQualifier(true, false); break; } // - // Rule 324: layout_qualifier ::= [ * ] + // Rule 329: layout_qualifier ::= [ * ] // - case 324: { action. consumeLayoutQualifier(false, true); break; + case 329: { action. consumeLayoutQualifier(false, true); break; } // - // Rule 325: layout_qualifier ::= [ ] + // Rule 330: layout_qualifier ::= [ ] // - case 325: { action. consumeLayoutQualifier(false, false); break; + case 330: { action. consumeLayoutQualifier(false, false); break; } // - // Rule 327: synchronization_statement ::= upc_notify expression ; + // Rule 332: synchronization_statement ::= upc_notify expression ; // - case 327: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_notify, true); break; + case 332: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_notify, true); break; } // - // Rule 328: synchronization_statement ::= upc_notify ; + // Rule 333: synchronization_statement ::= upc_notify ; // - case 328: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_notify, false); break; + case 333: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_notify, false); break; } // - // Rule 329: synchronization_statement ::= upc_wait expression ; + // Rule 334: synchronization_statement ::= upc_wait expression ; // - case 329: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_wait, true); break; + case 334: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_wait, true); break; } // - // Rule 330: synchronization_statement ::= upc_wait ; + // Rule 335: synchronization_statement ::= upc_wait ; // - case 330: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_wait, false); break; + case 335: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_wait, false); break; } // - // Rule 331: synchronization_statement ::= upc_barrier expression ; + // Rule 336: synchronization_statement ::= upc_barrier expression ; // - case 331: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_barrier, true); break; + case 336: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_barrier, true); break; } // - // Rule 332: synchronization_statement ::= upc_barrier ; + // Rule 337: synchronization_statement ::= upc_barrier ; // - case 332: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_barrier, false); break; + case 337: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_barrier, false); break; } // - // Rule 333: synchronization_statement ::= upc_fence ; + // Rule 338: synchronization_statement ::= upc_fence ; // - case 333: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_fence, false); break; + case 338: { action. consumeStatementSynchronizationStatement(IUPCASTSynchronizationStatement.st_upc_fence, false); break; } // - // Rule 334: iteration_statement ::= upc_forall ( expression ; expression ; expression ; affinity ) statement + // Rule 339: iteration_statement ::= upc_forall ( expression ; expression ; expression ; affinity ) statement // - case 334: { action. consumeStatementUPCForallLoop(true, true, true, true); break; + case 339: { action. consumeStatementUPCForallLoop(true, true, true, true); break; } // - // Rule 335: iteration_statement ::= upc_forall ( expression ; expression ; expression ; ) statement + // Rule 340: iteration_statement ::= upc_forall ( expression ; expression ; expression ; ) statement // - case 335: { action. consumeStatementUPCForallLoop(true, true, true, false); break; + case 340: { action. consumeStatementUPCForallLoop(true, true, true, false); break; } // - // Rule 336: iteration_statement ::= upc_forall ( expression ; expression ; ; affinity ) statement + // Rule 341: iteration_statement ::= upc_forall ( expression ; expression ; ; affinity ) statement // - case 336: { action. consumeStatementUPCForallLoop(true, true, false, true); break; + case 341: { action. consumeStatementUPCForallLoop(true, true, false, true); break; } // - // Rule 337: iteration_statement ::= upc_forall ( expression ; expression ; ; ) statement + // Rule 342: iteration_statement ::= upc_forall ( expression ; expression ; ; ) statement // - case 337: { action. consumeStatementUPCForallLoop(true, true, false, false); break; + case 342: { action. consumeStatementUPCForallLoop(true, true, false, false); break; } // - // Rule 338: iteration_statement ::= upc_forall ( expression ; ; expression ; affinity ) statement + // Rule 343: iteration_statement ::= upc_forall ( expression ; ; expression ; affinity ) statement // - case 338: { action. consumeStatementUPCForallLoop(true, false, true, true); break; + case 343: { action. consumeStatementUPCForallLoop(true, false, true, true); break; } // - // Rule 339: iteration_statement ::= upc_forall ( expression ; ; expression ; ) statement + // Rule 344: iteration_statement ::= upc_forall ( expression ; ; expression ; ) statement // - case 339: { action. consumeStatementUPCForallLoop(true, false, true, false); break; + case 344: { action. consumeStatementUPCForallLoop(true, false, true, false); break; } // - // Rule 340: iteration_statement ::= upc_forall ( expression ; ; ; affinity ) statement + // Rule 345: iteration_statement ::= upc_forall ( expression ; ; ; affinity ) statement // - case 340: { action. consumeStatementUPCForallLoop(true, false, false, true); break; + case 345: { action. consumeStatementUPCForallLoop(true, false, false, true); break; } // - // Rule 341: iteration_statement ::= upc_forall ( expression ; ; ; ) statement + // Rule 346: iteration_statement ::= upc_forall ( expression ; ; ; ) statement // - case 341: { action. consumeStatementUPCForallLoop(true, false, false, false); break; + case 346: { action. consumeStatementUPCForallLoop(true, false, false, false); break; } // - // Rule 342: iteration_statement ::= upc_forall ( ; expression ; expression ; affinity ) statement + // Rule 347: iteration_statement ::= upc_forall ( ; expression ; expression ; affinity ) statement // - case 342: { action. consumeStatementUPCForallLoop(false, true, true, true); break; + case 347: { action. consumeStatementUPCForallLoop(false, true, true, true); break; } // - // Rule 343: iteration_statement ::= upc_forall ( ; expression ; expression ; ) statement + // Rule 348: iteration_statement ::= upc_forall ( ; expression ; expression ; ) statement // - case 343: { action. consumeStatementUPCForallLoop(false, true, true, false); break; + case 348: { action. consumeStatementUPCForallLoop(false, true, true, false); break; } // - // Rule 344: iteration_statement ::= upc_forall ( ; expression ; ; affinity ) statement + // Rule 349: iteration_statement ::= upc_forall ( ; expression ; ; affinity ) statement // - case 344: { action. consumeStatementUPCForallLoop(false, true, false, true); break; + case 349: { action. consumeStatementUPCForallLoop(false, true, false, true); break; } // - // Rule 345: iteration_statement ::= upc_forall ( ; expression ; ; ) statement + // Rule 350: iteration_statement ::= upc_forall ( ; expression ; ; ) statement // - case 345: { action. consumeStatementUPCForallLoop(false, true, false, false); break; + case 350: { action. consumeStatementUPCForallLoop(false, true, false, false); break; } // - // Rule 346: iteration_statement ::= upc_forall ( ; ; expression ; affinity ) statement + // Rule 351: iteration_statement ::= upc_forall ( ; ; expression ; affinity ) statement // - case 346: { action. consumeStatementUPCForallLoop(false, false, true, true); break; + case 351: { action. consumeStatementUPCForallLoop(false, false, true, true); break; } // - // Rule 347: iteration_statement ::= upc_forall ( ; ; expression ; ) statement + // Rule 352: iteration_statement ::= upc_forall ( ; ; expression ; ) statement // - case 347: { action. consumeStatementUPCForallLoop(false, false, true, false); break; + case 352: { action. consumeStatementUPCForallLoop(false, false, true, false); break; } // - // Rule 348: iteration_statement ::= upc_forall ( ; ; ; affinity ) statement + // Rule 353: iteration_statement ::= upc_forall ( ; ; ; affinity ) statement // - case 348: { action. consumeStatementUPCForallLoop(false, false, false, true); break; + case 353: { action. consumeStatementUPCForallLoop(false, false, false, true); break; } // - // Rule 349: iteration_statement ::= upc_forall ( ; ; ; ) statement + // Rule 354: iteration_statement ::= upc_forall ( ; ; ; ) statement // - case 349: { action. consumeStatementUPCForallLoop(false, false, false, false); break; + case 354: { action. consumeStatementUPCForallLoop(false, false, false, false); break; } // - // Rule 350: iteration_statement ::= upc_forall ( declaration expression ; expression ; affinity ) statement + // Rule 355: iteration_statement ::= upc_forall ( declaration expression ; expression ; affinity ) statement // - case 350: { action. consumeStatementUPCForallLoop(true, true, true, true); break; + case 355: { action. consumeStatementUPCForallLoop(true, true, true, true); break; } // - // Rule 351: iteration_statement ::= upc_forall ( declaration expression ; expression ; ) statement + // Rule 356: iteration_statement ::= upc_forall ( declaration expression ; expression ; ) statement // - case 351: { action. consumeStatementUPCForallLoop(true, true, true, false); break; + case 356: { action. consumeStatementUPCForallLoop(true, true, true, false); break; } // - // Rule 352: iteration_statement ::= upc_forall ( declaration expression ; ; affinity ) statement + // Rule 357: iteration_statement ::= upc_forall ( declaration expression ; ; affinity ) statement // - case 352: { action. consumeStatementUPCForallLoop(true, true, false, true); break; + case 357: { action. consumeStatementUPCForallLoop(true, true, false, true); break; } // - // Rule 353: iteration_statement ::= upc_forall ( declaration expression ; ; ) statement + // Rule 358: iteration_statement ::= upc_forall ( declaration expression ; ; ) statement // - case 353: { action. consumeStatementUPCForallLoop(true, true, false, false); break; + case 358: { action. consumeStatementUPCForallLoop(true, true, false, false); break; } // - // Rule 354: iteration_statement ::= upc_forall ( declaration ; expression ; affinity ) statement + // Rule 359: iteration_statement ::= upc_forall ( declaration ; expression ; affinity ) statement // - case 354: { action. consumeStatementUPCForallLoop(true, false, true, true); break; + case 359: { action. consumeStatementUPCForallLoop(true, false, true, true); break; } // - // Rule 355: iteration_statement ::= upc_forall ( declaration ; expression ; ) statement + // Rule 360: iteration_statement ::= upc_forall ( declaration ; expression ; ) statement // - case 355: { action. consumeStatementUPCForallLoop(true, false, true, false); break; + case 360: { action. consumeStatementUPCForallLoop(true, false, true, false); break; } // - // Rule 356: iteration_statement ::= upc_forall ( declaration ; ; affinity ) statement + // Rule 361: iteration_statement ::= upc_forall ( declaration ; ; affinity ) statement // - case 356: { action. consumeStatementUPCForallLoop(true, false, false, true); break; + case 361: { action. consumeStatementUPCForallLoop(true, false, false, true); break; } // - // Rule 357: iteration_statement ::= upc_forall ( declaration ; ; ) statement + // Rule 362: iteration_statement ::= upc_forall ( declaration ; ; ) statement // - case 357: { action. consumeStatementUPCForallLoop(true, false, false, false); break; + case 362: { action. consumeStatementUPCForallLoop(true, false, false, false); break; } // - // Rule 359: affinity ::= continue + // Rule 364: affinity ::= continue // - case 359: { action. consumeToken(); break; + case 364: { action. consumeToken(); break; } diff --git a/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCSizeofExpressionParserprs.java b/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCSizeofExpressionParserprs.java index f18ccfbc322..ffd24960d97 100644 --- a/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCSizeofExpressionParserprs.java +++ b/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCSizeofExpressionParserprs.java @@ -53,171 +53,175 @@ public class UPCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab 2,2,1,3,1,3,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, 1,1,1,1,1,1,1,1,1,1, - 5,5,6,6,2,2,2,1,0,1, - 2,4,2,1,1,1,3,1,1,2, - 3,6,7,1,0,1,3,1,3,1, - 1,1,1,1,1,3,1,1,1,1, - 1,3,1,2,2,1,5,3,1,3, - 5,1,3,1,3,2,4,3,5,4, - 6,6,3,5,1,1,2,3,4,1, - 2,1,3,1,1,3,2,1,1,1, - 1,2,1,2,3,1,1,1,3,1, - 2,2,2,3,4,5,1,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,1,2,2,2,1,1,2,1, - 1,1,3,3,2,1,3,2,3,2, - 3,2,2,11,10,10,9,10,9,9, - 8,10,9,9,8,9,8,8,7,10, - 9,9,8,9,8,8,7,1,1,-39, - 0,0,0,0,0,0,0,0,-72,0, + 6,8,0,0,1,1,3,3,3,0, + 1,0,1,2,4,2,1,1,1,3, + 1,1,2,3,7,8,0,1,0,1, + 3,1,3,1,1,1,1,1,1,3, + 1,1,1,1,1,3,1,2,2,1, + 5,3,1,3,5,1,3,1,3,2, + 4,3,5,4,6,6,3,5,1,2, + 3,4,5,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,1,1,1,2,2, + 2,1,1,2,1,1,1,3,3,2, + 1,3,2,3,2,3,2,2,11,10, + 10,9,10,9,9,8,10,9,9,8, + 9,8,8,7,10,9,9,8,9,8, + 8,7,1,1,-39,0,0,0,0,0, + 0,0,0,0,-109,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,-2, - 0,0,0,0,-4,-17,-32,-19,0,0, - 0,0,0,-126,0,0,0,0,0,0, + -164,-77,-4,0,0,0,0,-126,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,-186,0,-9,0,0,0, - 0,0,0,0,0,0,0,-5,0,0, + 0,0,0,0,0,0,0,-74,0,0, + 0,-17,-19,-78,0,-81,0,0,0,0, + 0,-40,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - -36,0,-6,0,0,0,0,0,0,0, + 0,0,0,-82,0,0,0,0,0,-41, + 0,0,0,0,0,0,0,0,0,-20, + -21,0,-192,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-200,-33,0,0,-198,0,0, + 0,0,-165,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,-173,0,0, + 0,0,-54,0,0,0,0,0,0,0, + 0,0,-120,0,0,0,0,0,-135,-22, + -36,-118,-144,0,-115,0,0,0,0,0, + 0,0,0,-23,0,-24,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,-109,-212,-83, - -84,-147,-37,-57,0,0,0,0,0,0, + 0,-37,0,-125,0,0,0,0,0,0, + 0,0,0,-145,0,0,0,0,0,0, + 0,0,0,-140,0,0,0,-25,-26,-32, + 0,0,0,0,0,-49,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,-20,-21,0,0,0,0,0,0,0, - 0,-80,0,0,0,0,0,0,0,0, - 0,0,0,0,0,-22,0,-75,0,0, + -75,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-135,-111, + 0,-188,0,0,0,0,0,0,0,0, + 0,-33,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,-27,0,-58,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-192,-23,0,0, - 0,0,-194,0,0,0,0,0,0,0, - 0,-74,0,0,0,0,0,0,0,0, - 0,0,0,-24,0,0,-77,0,-81,-70, - -71,-25,0,0,0,0,-114,0,0,0, + 0,0,0,-112,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, + 0,0,0,0,-28,-72,-119,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-146,0,0,-3,0,0,0, - 0,0,0,0,0,-112,0,0,0,0, - 0,0,0,0,0,0,-118,0,0,0, + 0,0,0,0,0,0,0,-131,0,0, + 0,0,0,0,0,0,0,-29,0,0, + 0,0,0,0,0,0,0,0,-90,0, + -30,0,0,0,0,0,0,0,0,0, + -113,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,0,0,0,0,-115,0,-131,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-26,0, - 0,-30,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,-59,0,0,0,0,0,0,0,0, + -60,0,0,0,0,0,0,0,0,0, -130,0,0,0,0,0,0,0,0,0, - 0,-60,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,-61,0,0,0,0,0,0,0,0, + -62,0,0,0,0,0,0,0,0,0, -138,0,0,0,0,0,0,0,0,0, - 0,-62,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, - 0,-63,0,0,0,0,0,0,0,0, - -154,0,0,0,0,0,0,0,0,0, - 0,-64,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,0,0, - 0,-65,0,0,0,0,0,0,0,0, - -181,0,0,0,0,0,0,0,0,0, - 0,-66,0,0,0,0,0,0,0,0, + -64,0,0,0,0,0,0,0,0,0, + -152,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,0,0, - 0,-67,0,0,0,0,0,0,0,0, - -182,0,0,0,0,0,0,0,0,0, - 0,-68,0,0,0,0,0,0,0,0, + -66,0,0,0,0,0,0,0,0,0, + -174,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,-69,0,0,0,0,0,0,0,0, - -195,0,0,0,0,0,0,0,0,0, - 0,-152,0,0,0,0,0,0,0,0, + -68,0,0,0,0,0,0,0,0,0, + -175,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,-153,0,0,0,0,0,0,0,0, - -159,0,0,0,0,0,0,0,0,0, - 0,-176,0,0,0,0,0,0,0,0, - -86,0,0,0,0,0,0,0,0,0, - -191,0,0,0,0,0,0,0,0,-168, + -150,0,0,0,0,0,0,0,0,0, + -91,0,0,0,0,0,0,0,0,0, + -151,0,0,0,0,0,0,0,0,0, + -80,0,0,0,0,0,0,0,0,0, + -168,0,0,0,0,0,0,0,0,0, + -155,0,0,0,0,0,0,0,0,-191, + 0,0,0,0,0,0,0,0,0,-182, 0,0,0,0,0,0,0,0,0,0, - -193,0,-207,-204,0,-49,0,0,0,0, - 0,0,0,0,-197,0,0,0,0,0, + -169,-128,-92,0,-9,0,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,-201,0,0,0,0,0,0, + 0,-207,0,0,0,0,0,0,0,0, + 0,-93,0,0,0,0,0,0,0,0, + -84,-157,0,-94,-95,0,-185,-210,-85,-179, + 0,-70,-200,-121,-215,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,-27,0,0,0,-28,0,-50,0, - 0,0,0,0,0,0,0,-211,0,0, + 0,0,0,-134,0,-71,0,0,0,0, + 0,-132,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-125,0,0,0, - 0,0,0,0,0,-175,0,0,0,0, - 0,0,0,0,0,-134,-133,-29,-215,-163, - 0,-89,-113,-90,0,-58,0,0,0,0, + 0,0,0,0,0,0,-154,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,-156,-117, + 0,0,0,-10,0,0,0,0,0,0, + -96,0,-97,0,0,-5,0,0,0,0, + 0,0,0,0,0,0,0,0,-98,-99, + 0,0,0,0,-122,0,-45,0,0,0, + 0,0,0,0,0,0,0,-89,-116,0, + -57,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,-206,0,0, + 0,0,-100,0,-156,-83,0,0,0,0, + -55,0,0,0,0,0,0,0,0,0, + -196,0,0,0,-101,-123,0,0,0,0, + 0,0,0,0,0,0,0,0,-133,0, + 0,0,0,0,-139,0,0,0,0,0, + 0,0,-214,-102,-124,0,0,0,0,0, + 0,0,0,0,0,-189,-201,-103,0,0, + -51,0,0,0,0,0,0,0,0,0, + 0,0,0,-104,-105,0,0,0,0,0, + 0,0,0,0,-11,0,0,0,0,0, + 0,0,-159,-197,0,0,-153,0,0,0, + 0,0,0,0,-52,0,0,0,0,0, + 0,0,0,0,-217,0,0,0,-167,-79, + -6,0,0,0,0,0,0,0,-53,0, + 0,0,0,0,0,0,0,0,-170,0, + 0,0,0,0,0,-106,0,-202,0,0, + 0,0,-46,0,0,0,0,0,0,0, + 0,0,-47,0,0,0,0,0,0,0, + 0,0,0,0,-176,0,-48,0,0,0, + 0,0,0,0,0,0,-209,-50,0,0, + 0,0,0,0,0,0,0,-107,-181,0, + 0,-216,-141,-76,-12,0,0,0,0,0, + 0,0,0,0,-13,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,-108, + -86,0,0,-111,0,0,0,0,0,0, + 0,0,0,-88,-190,-34,-87,0,0,0, + 0,0,0,0,0,0,-127,-198,-38,0, + 0,0,0,0,0,0,0,0,0,-136, + 0,-143,0,0,0,0,-142,-147,-146,-117, + -158,0,-177,-203,-160,-166,0,0,0,0, + 0,0,0,-14,0,0,0,0,0,0, + -18,-31,0,0,0,0,0,0,0,0, + 0,0,0,0,-186,0,-148,-187,0,-42, + 0,0,0,0,0,0,0,0,0,-208, + 0,0,0,0,0,0,0,-213,0,0, + 0,0,0,0,0,0,0,-110,0,0, + 0,0,-43,0,0,0,0,0,0,-44, + 0,0,0,0,0,0,-73,0,0,0, + 0,0,0,0,0,0,-114,-162,-171,-161, + 0,-129,-204,0,0,-194,-137,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-108,0,-7,0,0,0,0, - 0,-76,0,0,0,0,-91,0,-92,-78, - 0,-157,0,0,0,0,0,0,0,0, - -88,-177,0,0,0,0,0,0,0,-8, + 0,-178,0,0,0,0,0,0,-195,-149, + -163,0,0,0,0,-1,0,-35,0,-7, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,-82, - 0,0,0,0,-54,0,0,0,0,0, - 0,0,0,0,0,0,0,0,0,-188, - 0,0,0,0,0,-93,0,-206,0,0, - 0,0,0,-94,0,0,0,0,-55,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,-110,-210,0,0,0,0,0,0, - 0,0,0,-95,-96,-97,0,-98,0,-51, - 0,0,0,0,0,0,0,0,-161,0, - 0,0,-15,0,0,0,0,0,0,0, - 0,0,0,0,0,-35,-120,-122,-99,-100, - 0,0,0,0,0,0,0,0,-52,0, - 0,0,0,0,0,0,0,-79,0,0, - -53,0,0,0,0,0,0,0,0,-101, - 0,0,-167,-123,0,0,-127,0,0,0, - 0,0,0,0,-102,0,-103,0,0,0, - 0,-45,0,0,0,0,0,0,0,0, - 0,0,-46,0,0,0,0,0,0,0, - 0,0,0,0,-47,0,0,0,0,0, - 0,0,0,-85,0,-48,0,0,0,0, - 0,0,0,0,-203,0,-10,0,0,0, - 0,0,0,0,0,0,0,0,-104,-38, - -105,-106,-107,0,0,0,0,-87,0,-40, - 0,0,0,0,0,0,0,-183,-164,0, + 0,0,0,0,0,0,-180,0,-8,0, + 0,0,0,0,0,-205,0,0,0,0, + -211,0,0,0,0,0,0,0,-183,0, + -15,0,0,0,0,0,0,-172,0,0, + 0,-16,0,0,0,0,0,-173,-184,0, + 0,0,0,-212,0,0,0,0,0,0, + 0,0,-193,-56,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,-140,0,-119,-121,-124,0,0,0, - 0,0,0,0,0,0,0,-41,0,0, - 0,0,0,0,0,-16,0,0,0,0, - 0,0,-139,0,0,0,0,0,0,-155, - 0,0,0,0,0,0,-142,-145,-148,-136, - -149,-169,0,-170,-174,0,0,0,0,0, - -11,0,0,0,0,0,0,-12,0,0, - 0,0,0,0,-13,0,0,0,0,0, - 0,-14,0,0,0,0,0,0,-18,-31, - -42,0,0,0,0,0,0,0,0,-43, - 0,0,0,0,0,0,-44,0,0,0, - 0,0,0,-202,0,0,-214,-56,-179,-116, - -1,0,0,0,-141,-129,0,0,0,0, - 0,0,-128,0,0,-196,0,0,-73,0, 0,0,0,0,0,0,0,0,0,0, - 0,0,-158,0,0,0,0,-143,0,0, - 0,0,0,-162,0,0,0,-166,0,-144, - 0,0,0,0,0,-171,0,-184,0,0, - 0,0,0,0,-172,0,0,0,0,0, - -199,0,0,0,-208,0,-137,0,0,0, - 0,0,-185,0,0,0,0,0,0,-150, 0,0,0,0,0,0,0,0,0,0, - 0,0,0,-132,0,0,-34,0,0,0, - 0,0,0,0,0,0,0,0,0,-151, - 0,-165,0,0,0,0,0,0,0,0, - 0,0,0,0,0,0,-160,0,0,0, - 0,0,0,0,-180,0,-178,0,0,0, - -187,-189,-190,-205,0,0,-213,-209,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,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; @@ -227,191 +231,195 @@ public class UPCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface BaseAction { public final static char baseAction[] = { - 86,9,20,20,25,25,28,28,70,70, + 89,10,20,20,25,25,34,34,71,71, 1,1,1,1,2,2,2,3,3,4, - 4,4,4,4,4,4,4,53,53,71, - 71,5,5,5,5,5,5,5,5,5, + 4,4,4,4,4,4,4,53,53,72, + 72,5,5,5,5,5,5,5,5,5, 5,6,6,7,7,7,7,8,8,8, - 10,10,10,11,11,11,11,11,12,12, + 9,9,9,11,11,11,11,11,12,12, 12,13,13,14,14,15,15,16,16,17, 17,18,18,19,19,19,19,19,19,19, - 19,19,19,19,19,98,48,42,87,87, - 74,74,43,99,99,99,99,99,99,99, - 100,100,100,101,101,106,106,107,107,102, - 102,103,103,103,109,109,104,104,104,104, - 105,105,105,105,105,108,108,26,26,26, - 26,26,30,30,30,80,80,75,75,75, - 75,76,76,76,77,77,77,78,78,78, - 79,79,79,110,110,111,111,112,31,33, - 33,33,33,33,54,56,56,56,56,56, - 56,56,56,56,56,56,56,67,67,29, - 29,64,64,64,64,65,65,65,57,57, - 58,58,50,50,50,34,88,88,81,82, - 82,82,66,66,83,83,84,84,68,68, - 21,22,22,22,32,49,49,35,35,35, - 35,38,38,40,36,36,37,41,41,113, - 113,39,114,114,89,89,27,27,27,27, - 27,27,27,27,27,85,51,51,51,51, - 60,60,59,59,59,61,61,52,52,90, - 90,72,72,62,62,62,44,44,44,45, - 46,46,46,47,47,47,47,55,55,55, - 63,91,73,73,73,73,69,92,93,93, - 94,94,95,95,115,115,116,116,117,117, - 117,117,119,119,118,118,118,120,120,86, - 86,1,1,1,5,5,5,21,21,23, - 23,24,24,96,96,96,99,121,121,121, - 121,121,121,121,104,104,104,104,104,104, - 104,104,104,104,104,104,104,104,104,104, - 104,104,104,104,104,104,104,104,122,122, - 1,14,19,15,386,1168,43,532,388,909, - 556,533,634,608,739,642,1117,1113,73,90, - 74,133,210,317,318,117,183,125,174,20, - 135,132,134,158,707,14,19,15,386,1168, - 43,532,388,512,556,533,634,608,739,642, - 1117,1113,73,277,137,509,164,821,14,19, - 15,386,41,39,141,144,147,150,858,14, - 19,15,386,316,385,1388,639,1270,1454,1488, - 1241,641,270,858,14,19,15,386,315,282, - 216,1232,218,1663,220,221,226,1561,23,265, - 1230,637,268,283,638,125,1649,674,783,14, - 19,15,386,1168,43,532,388,512,556,533, - 634,608,739,642,1117,1113,73,277,470,14, - 19,15,386,1168,43,532,388,512,556,533, - 634,608,739,642,1117,1113,73,277,354,674, - 564,577,225,641,821,14,19,15,386,41, - 43,532,388,282,556,533,634,608,739,642, - 1481,1561,68,188,192,270,22,283,16,1515, - 1516,1063,750,284,216,1232,218,1663,220,221, - 226,1561,265,1230,637,268,242,285,396,14, - 19,15,386,1168,43,532,388,1173,556,533, - 634,608,739,642,1117,1113,73,686,236,341, - 895,14,19,15,386,1168,43,532,388,1636, - 556,533,634,608,739,642,1117,1113,73,771, - 133,210,317,318,1565,1242,288,533,566,135, - 132,134,158,745,14,19,15,386,1168,43, - 532,388,353,556,533,634,608,739,642,1117, - 1113,73,277,137,250,164,1562,405,319,978, - 641,641,610,141,144,147,150,558,14,19, - 15,386,41,35,1388,639,1270,1454,1488,1241, - 133,210,317,318,271,1483,21,243,286,143, - 132,134,158,508,845,207,1561,821,14,19, - 15,386,1168,43,532,388,909,556,533,634, - 608,739,642,1117,1113,73,90,595,14,19, - 15,386,41,43,532,388,238,556,533,634, - 608,739,642,1117,1113,92,641,325,433,14, - 19,15,386,1168,43,532,388,1695,556,533, - 634,608,739,642,1117,1113,73,851,237,368, - 811,269,821,14,19,15,386,1168,43,532, - 388,385,556,533,634,608,739,642,1117,1113, - 73,91,821,14,19,15,386,1168,43,532, - 388,909,556,533,634,608,739,642,1117,1113, - 73,84,821,14,19,15,386,1168,43,532, - 388,240,556,533,634,608,739,642,1117,1113, - 73,83,821,14,19,15,386,1168,43,532, - 388,909,556,533,634,608,739,642,1117,1113, - 73,82,821,14,19,15,386,1168,43,532, - 388,323,556,533,634,608,739,642,1117,1113, - 73,81,821,14,19,15,386,1168,43,532, - 388,909,556,533,634,608,739,642,1117,1113, - 73,80,821,14,19,15,386,1168,43,532, - 388,239,556,533,634,608,739,642,1117,1113, - 73,79,821,14,19,15,386,1168,43,532, - 388,909,556,533,634,608,739,642,1117,1113, - 73,78,821,14,19,15,386,1168,43,532, - 388,241,556,533,634,608,739,642,1117,1113, - 73,77,821,14,19,15,386,1168,43,532, - 388,909,556,533,634,608,739,642,1117,1113, - 73,76,821,14,19,15,386,1168,43,532, - 388,242,556,533,634,608,739,642,1117,1113, - 73,75,821,14,19,15,386,1168,43,532, - 388,909,556,533,634,608,739,642,1117,1113, - 73,74,821,14,19,15,386,1168,43,532, - 388,290,556,533,634,608,739,642,1117,1113, - 73,891,821,14,19,15,386,1168,43,532, - 388,353,556,533,634,608,739,642,1117,1113, - 73,931,821,14,19,15,386,41,43,532, - 388,602,556,533,634,608,739,642,1117,1113, - 92,821,14,19,15,386,41,43,532,388, - 878,556,533,634,608,739,642,1117,1113,92, - 1517,878,415,845,353,971,821,14,19,15, - 386,41,43,532,1336,821,14,19,15,386, - 41,43,532,388,209,556,533,634,608,739, - 642,1117,1113,92,821,14,19,15,386,41, - 43,532,388,1783,556,533,634,608,739,642, - 1117,1113,92,448,1784,509,1787,182,1298,821, - 14,19,15,386,41,43,532,1338,821,14, - 19,15,386,41,43,532,388,200,556,533, - 634,608,739,642,1117,1113,92,821,14,19, - 15,386,41,43,532,388,533,556,533,634, - 608,739,642,1117,1113,72,476,641,60,16, - 406,201,932,196,955,1011,821,14,19,15, - 386,41,43,532,388,291,556,533,634,608, - 739,1482,275,270,250,210,317,318,182,402, - 679,215,1232,218,1663,220,221,226,1688,1707, - 263,1230,637,268,6,259,858,14,19,15, - 386,314,439,394,273,274,270,195,260,239, - 91,1630,754,1734,215,1232,218,1663,220,221, - 226,341,282,263,1230,637,268,273,1498,270, - 858,14,19,15,386,40,257,272,718,225, - 278,716,133,210,317,318,263,1230,637,268, - 1001,136,132,134,158,821,14,19,15,386, - 41,43,532,388,716,556,533,634,608,1415, - 81,133,210,317,318,138,288,164,909,1064, - 146,132,134,158,319,142,145,148,151,821, - 14,19,15,386,41,43,532,388,292,556, - 533,634,1417,79,81,215,1232,218,1663,220, - 221,226,1643,1064,334,731,640,289,677,1624, - 821,14,19,15,386,41,43,532,388,641, - 556,533,1369,858,14,19,15,386,33,215, - 1232,218,1663,220,221,226,6,6,6,296, - 197,196,198,1624,276,677,1635,1668,464,821, - 14,19,15,386,41,43,532,388,508,556, - 1370,821,14,19,15,386,41,43,532,388, - 245,556,1400,406,6,197,198,307,86,133, - 210,317,318,1680,369,579,1720,751,140,132, - 134,158,821,14,19,15,386,41,43,532, - 388,181,1296,821,14,19,15,386,41,43, - 532,388,139,1304,164,821,14,19,15,386, - 41,43,532,388,1024,1334,821,14,19,15, - 386,41,43,532,388,543,1335,821,14,19, - 15,386,41,38,1064,133,210,317,318,722, - 69,606,718,572,149,132,134,158,1047,622, - 821,14,19,15,386,41,43,1227,641,637, - 215,1232,218,1663,220,221,226,270,1290,133, - 210,317,318,6,1498,716,727,755,152,132, - 134,158,1674,222,263,1230,637,268,821,14, - 19,15,386,41,43,1229,858,14,19,15, - 386,32,262,558,14,19,15,386,41,35, - 558,14,19,15,386,41,35,6,6,6, - 138,756,443,324,880,728,1678,1686,1777,193, - 244,821,14,19,15,386,41,37,821,14, - 19,15,386,41,36,821,14,19,15,386, - 41,35,821,14,19,15,386,41,34,6, - 6,821,14,19,15,386,41,46,360,360, - 821,14,19,15,386,41,45,821,14,19, - 15,386,41,44,726,195,195,615,6,6, - 803,632,1842,1480,1480,56,196,677,468,579, - 677,86,86,196,579,1842,533,513,513,669, - 14,19,15,386,41,42,1166,250,210,317, - 318,195,1842,479,250,210,317,318,113,1499, - 86,441,640,86,170,293,1479,579,284,309, - 415,508,255,579,1842,190,415,579,803,1167, - 224,1560,1170,1752,195,406,1734,579,1842,1842, - 195,51,1499,1750,195,641,1842,766,1499,1562, - 579,1842,1499,679,1166,1562,579,380,190,1842, - 196,982,1701,26,190,1403,1752,1166,190,1842, - 227,1781,1752,1166,364,1782,1752,485,228,415, - 255,250,210,317,318,1842,677,1167,206,1560, - 531,1842,227,255,206,251,210,317,318,255, - 1705,579,1560,1050,1564,1842,1349,804,1560,1061, - 1564,251,210,317,318,1070,579,406,195,88, - 1775,406,406,406,406,1842,1499,406,827,1842, - 1788,1842,1842,1166,1842,1842,251,210,317,318, - 1842,1842,191,1842,1842,279,1842,1842,1842,184, - 183,202,203,231,1842,1169,1842,1842,1842,256, - 1842,1842,1842,1842,641,1842,0,320,697,0, - 17,178,0,18,177,0,1,2065,0,1, - 2076,0 + 19,19,19,19,19,104,48,42,90,90, + 75,75,43,105,105,105,105,105,105,105, + 106,106,106,107,107,112,112,113,113,108, + 108,109,109,109,115,115,110,110,110,110, + 111,111,111,111,111,114,114,27,27,27, + 27,27,29,29,29,81,81,76,76,76, + 76,77,77,77,78,78,78,79,79,79, + 80,80,80,116,116,117,117,118,30,32, + 32,32,32,32,54,56,56,56,56,56, + 56,56,56,56,56,56,56,65,65,26, + 26,62,62,91,92,66,66,63,63,63, + 67,82,82,83,83,68,68,68,50,93, + 93,84,85,85,85,64,64,94,86,86, + 87,87,69,69,21,22,22,22,31,49, + 49,35,35,35,35,38,38,40,36,36, + 37,41,41,119,119,39,120,120,95,95, + 28,28,28,28,28,28,28,28,28,88, + 51,51,51,51,33,58,58,57,57,57, + 59,59,52,52,96,96,73,73,60,60, + 60,44,44,44,45,46,46,46,47,47, + 47,47,55,55,55,61,97,74,74,74, + 74,70,98,99,99,100,100,101,101,121, + 121,122,122,123,123,123,123,125,125,124, + 124,124,126,126,89,89,1,1,1,5, + 5,5,21,21,23,23,24,24,102,102, + 102,105,127,127,127,127,127,127,127,110, + 110,110,110,110,110,110,110,110,110,110, + 110,110,110,110,110,110,110,110,110,110, + 110,110,110,128,128,1,14,19,15,422, + 748,43,470,423,530,6,471,546,544,589, + 588,715,675,73,90,398,133,214,322,323, + 404,541,450,314,135,132,134,158,582,14, + 19,15,422,748,43,470,423,530,574,471, + 546,544,589,588,715,675,73,282,59,137, + 276,164,69,251,241,26,839,141,144,147, + 150,454,681,14,19,15,422,41,43,1083, + 393,1410,426,1286,1521,1534,1258,133,214,322, + 323,1524,277,287,61,143,132,134,158,1568, + 681,14,19,15,422,41,43,1122,288,1638, + 364,15,533,648,14,19,15,422,748,43, + 470,423,530,574,471,546,544,589,588,715, + 675,73,282,354,14,19,15,422,748,43, + 470,423,530,574,471,546,544,589,588,715, + 675,73,282,681,14,19,15,422,41,43, + 470,423,530,184,471,546,544,1348,287,225, + 39,591,621,781,1568,440,14,19,15,422, + 41,35,1677,288,25,523,73,1438,289,584, + 133,214,322,323,1568,247,1657,279,135,132, + 134,158,591,290,681,14,19,15,422,41, + 43,470,423,530,883,471,546,544,589,588, + 715,675,72,137,115,164,391,16,78,387, + 125,141,144,147,150,454,681,14,19,15, + 422,41,43,470,1239,1410,426,1286,1521,1534, + 1258,281,14,19,15,422,748,43,470,423, + 530,1667,471,546,544,589,588,715,675,73, + 771,240,615,14,19,15,422,748,43,470, + 423,530,125,471,546,544,589,588,715,675, + 73,282,681,14,19,15,422,748,43,470, + 423,530,23,471,546,544,589,588,715,675, + 73,90,1576,1081,293,323,1575,681,14,19, + 15,422,41,43,470,423,530,291,471,546, + 544,589,1488,1568,747,14,19,15,422,748, + 43,470,423,530,1672,471,546,544,589,588, + 715,675,73,811,22,654,415,474,14,19, + 15,422,41,43,470,423,530,393,471,546, + 544,589,588,715,675,92,20,330,315,14, + 19,15,422,748,43,470,423,530,723,471, + 546,544,589,588,715,675,73,891,241,780, + 851,681,14,19,15,422,748,43,470,423, + 530,415,471,546,544,589,588,715,675,73, + 91,681,14,19,15,422,748,43,470,423, + 530,242,471,546,544,589,588,715,675,73, + 84,681,14,19,15,422,748,43,470,423, + 530,415,471,546,544,589,588,715,675,73, + 83,681,14,19,15,422,748,43,470,423, + 530,244,471,546,544,589,588,715,675,73, + 82,681,14,19,15,422,748,43,470,423, + 530,415,471,546,544,589,588,715,675,73, + 81,681,14,19,15,422,748,43,470,423, + 530,328,471,546,544,589,588,715,675,73, + 80,681,14,19,15,422,748,43,470,423, + 530,415,471,546,544,589,588,715,675,73, + 79,681,14,19,15,422,748,43,470,423, + 530,243,471,546,544,589,588,715,675,73, + 78,681,14,19,15,422,748,43,470,423, + 530,415,471,546,544,589,588,715,675,73, + 77,681,14,19,15,422,748,43,470,423, + 530,245,471,546,544,589,588,715,675,73, + 76,681,14,19,15,422,748,43,470,423, + 530,415,471,546,544,589,588,715,675,73, + 75,681,14,19,15,422,748,43,470,423, + 530,246,471,546,544,589,588,715,675,73, + 74,681,14,19,15,422,748,43,470,423, + 530,819,471,546,544,589,588,715,675,73, + 931,681,14,19,15,422,748,43,470,423, + 530,837,471,546,544,589,588,715,675,73, + 971,681,14,19,15,422,41,43,470,423, + 530,926,471,546,544,589,588,715,675,92, + 681,14,19,15,422,41,43,470,423,530, + 756,471,546,544,589,588,715,675,92,229, + 1301,911,183,480,1346,681,14,19,15,422, + 41,39,1700,681,14,19,15,422,41,43, + 470,423,530,1347,471,546,544,589,588,715, + 675,92,681,14,19,15,422,41,43,470, + 423,530,840,471,546,544,589,588,715,675, + 92,288,59,324,488,863,213,882,59,360, + 389,196,591,446,446,681,14,19,15,422, + 41,43,470,423,530,203,471,546,544,589, + 588,715,675,92,348,1524,591,1520,275,1605, + 188,1524,239,1547,1132,220,1051,222,1285,224, + 225,230,294,1140,270,424,392,273,204,1492, + 1548,21,275,256,214,322,323,587,1144,219, + 1051,222,1285,224,225,230,1245,1573,268,424, + 392,273,211,264,681,14,19,15,422,41, + 38,871,278,881,265,275,714,14,19,15, + 422,321,219,1051,222,1285,224,225,230,783, + 822,268,424,392,273,446,1465,681,14,19, + 15,422,41,43,470,423,1134,1259,225,591, + 262,681,14,19,15,422,41,43,470,423, + 530,187,471,546,544,589,588,1436,290,133, + 214,322,323,129,274,620,859,136,132,134, + 158,681,14,19,15,422,41,43,470,423, + 530,324,471,546,1364,75,253,133,214,322, + 323,1138,138,228,164,146,132,134,158,591, + 142,145,148,151,454,440,14,19,15,422, + 41,35,1567,324,131,446,219,1051,222,1285, + 224,225,230,1138,280,329,415,415,590,195, + 1620,681,14,19,15,422,41,43,470,423, + 530,189,471,1283,171,237,295,297,219,1051, + 222,1285,224,225,230,681,14,19,15,422, + 41,37,1620,591,882,199,201,440,14,19, + 15,422,41,35,1278,681,14,19,15,422, + 41,43,470,423,530,152,1305,248,281,446, + 388,714,14,19,15,422,320,200,201,681, + 14,19,15,422,41,43,470,423,530,541, + 1334,133,214,322,323,296,843,1751,781,140, + 132,134,158,681,14,19,15,422,41,43, + 470,423,1135,681,14,19,15,422,41,43, + 470,423,1221,284,139,591,164,681,14,19, + 15,422,41,43,470,423,1223,87,681,14, + 19,15,422,41,43,470,1240,1138,720,541, + 226,1784,686,6,653,681,14,19,15,422, + 41,36,283,1670,1570,681,14,19,15,422, + 41,35,219,1051,222,1285,224,225,230,278, + 53,879,275,181,414,1547,1465,220,1051,222, + 1285,224,225,230,899,446,522,416,268,424, + 392,273,133,214,322,323,652,721,541,70, + 149,132,134,158,1259,133,214,322,323,418, + 656,298,6,152,132,134,158,860,877,6, + 832,738,1701,832,591,880,861,275,88,1429, + 529,529,205,529,681,14,19,15,422,41, + 34,6,6,268,424,392,273,1164,1164,231, + 1164,365,365,1524,1335,862,1524,402,900,267, + 681,14,19,15,422,41,46,1768,198,198, + 451,1638,260,261,1140,260,1166,1319,181,1560, + 1319,1306,1560,86,86,1884,1884,1884,238,562, + 562,1549,1549,681,14,19,15,422,41,45, + 681,14,19,15,422,41,44,549,14,19, + 15,422,41,42,531,1142,275,127,6,6, + 57,1547,127,719,1884,1884,753,292,1779,473, + 529,1884,270,424,392,273,529,529,255,214, + 322,323,621,255,214,322,323,198,235,169, + 127,482,1676,1164,1164,1884,508,1884,6,529, + 714,14,19,15,422,319,652,232,652,1884, + 1070,255,214,322,323,1172,198,1605,260,260, + 1172,1884,1884,1574,1383,1560,1560,6,193,714, + 14,19,15,422,40,1884,541,1699,86,1070, + 86,541,1489,1759,314,738,716,1884,1778,113, + 1001,714,14,19,15,422,33,193,127,529, + 210,1673,714,14,19,15,422,32,507,482, + 182,1746,1759,1884,541,206,198,1137,1608,255, + 214,322,323,548,6,390,1884,1884,1884,256, + 214,322,323,1884,652,1605,1884,1884,1884,1070, + 1884,1884,1884,1884,256,214,322,323,1405,1884, + 1884,1884,1884,1884,1884,1884,1793,194,1884,1884, + 1884,1884,1884,1884,1884,1884,86,1884,1884,1884, + 1884,1884,1365,1884,1884,1884,1884,1884,210,1884, + 1884,1884,1884,1884,1884,1884,1884,1884,1884,1884, + 1884,1884,1884,1884,1884,1384,1608,1884,0,325, + 717,0,17,178,0,18,177,0,1,2111, + 0,1,2122,0 }; }; public final static char baseAction[] = BaseAction.baseAction; @@ -422,123 +430,109 @@ public class UPCSizeofExpressionParserprs 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,12,13,14,0,16,17,18,19, - 20,21,22,23,24,25,26,27,28,29, - 30,31,32,33,34,35,36,0,38,39, - 40,41,42,43,44,45,46,47,48,49, - 0,1,52,53,54,0,1,0,3,0, - 5,6,7,8,9,10,11,0,0,14, - 2,4,4,0,19,20,21,22,0,24, - 0,1,2,15,6,7,8,9,10,11, - 0,0,2,38,39,40,41,42,43,44, - 45,46,47,48,49,15,51,52,53,54, - 60,56,0,1,0,3,0,5,6,7, - 8,9,10,11,0,1,14,3,69,62, - 63,19,20,21,22,0,24,0,79,80, - 81,82,83,84,85,86,87,88,68,0, - 38,39,40,41,42,43,44,45,46,47, - 48,49,89,51,52,53,54,0,56,0, - 1,55,3,0,5,6,7,8,9,10, - 11,0,0,14,2,12,13,0,19,20, - 21,22,55,24,0,0,0,15,4,17, - 18,6,7,8,9,10,11,38,39,40, - 41,42,43,44,45,46,47,48,49,0, - 51,52,53,54,0,56,0,1,0,3, - 0,5,6,7,8,9,10,11,0,15, - 14,0,4,61,0,19,20,21,22,0, - 24,64,65,66,67,74,62,63,76,0, - 64,65,66,67,38,39,40,41,42,43, - 44,45,46,47,48,49,0,51,52,53, - 54,0,56,0,1,61,3,0,5,6, - 7,8,9,10,11,0,15,14,57,58, - 62,63,19,20,21,22,0,24,64,65, - 66,67,6,7,8,9,10,11,0,70, - 71,38,39,40,41,42,43,44,45,46, - 47,48,49,0,51,52,53,54,0,56, - 0,1,61,3,57,58,6,7,8,9, - 10,11,0,0,14,2,4,4,0,19, - 20,21,22,0,24,70,71,0,15,6, - 7,8,9,10,11,57,58,0,38,39, + 10,11,12,13,0,15,16,17,18,19, + 20,21,22,23,0,25,26,27,28,29, + 30,31,32,33,34,35,36,37,0,15, 40,41,42,43,44,45,46,47,48,49, - 57,58,52,53,54,0,1,2,3,4, - 5,0,1,2,0,0,5,12,13,14, - 5,16,17,18,0,1,15,3,23,15, - 25,26,27,28,29,30,31,32,33,34, - 35,36,0,1,2,3,4,5,0,72, - 2,0,0,5,12,13,14,0,16,17, - 18,50,0,15,59,23,51,25,26,27, - 28,29,30,31,32,33,34,35,36,0, - 1,2,3,4,5,0,1,2,0,4, - 2,12,13,0,0,16,17,18,50,5, - 15,59,23,15,25,26,27,28,29,30, - 31,32,33,34,35,36,37,0,0,1, - 2,69,4,6,7,8,9,10,11,0, - 51,14,0,15,77,78,19,20,21,22, - 0,24,0,1,50,3,6,7,8,9, - 10,11,0,1,2,38,39,40,41,42, - 43,44,45,46,47,48,49,0,1,2, - 3,4,5,0,1,0,3,0,0,12, - 13,0,5,16,17,18,0,1,0,3, - 23,16,25,26,27,28,29,30,31,32, - 33,34,35,36,0,1,2,3,4,5, - 37,0,1,0,3,0,12,13,37,0, - 16,17,18,37,0,1,59,23,51,25, - 26,27,28,29,30,31,32,33,34,35, - 36,0,1,2,3,4,0,0,37,0, - 0,5,5,12,13,5,0,16,17,18, - 72,12,13,59,23,0,25,26,27,28, - 29,30,31,32,33,34,35,36,0,1, - 2,3,4,0,1,2,0,4,0,74, - 12,13,73,5,16,17,18,56,12,13, - 50,23,55,25,26,27,28,29,30,31, - 32,33,34,35,36,37,0,1,2,3, - 4,75,75,0,1,0,3,0,12,13, - 0,0,16,17,18,0,0,0,50,23, - 0,25,26,27,28,29,30,31,32,33, - 34,35,36,37,0,1,2,3,4,0, - 0,0,37,0,0,0,12,13,0,0, - 16,17,18,37,15,0,16,23,15,25, - 26,27,28,29,30,31,32,33,34,35, - 36,37,0,1,2,3,4,57,58,68, - 73,37,37,68,12,13,69,0,16,17, - 18,0,0,0,0,23,4,25,26,27, - 28,29,30,31,32,33,34,35,36,37, - 0,1,2,3,4,60,0,0,0,0, - 0,5,12,13,0,0,16,17,18,0, - 0,0,0,23,0,25,26,27,28,29, - 30,31,32,33,34,35,36,0,1,2, - 3,4,60,60,0,0,0,0,0,12, - 13,0,0,16,17,18,50,0,0,0, - 23,55,25,26,27,28,29,30,31,32, - 33,34,35,36,0,1,2,3,4,55, - 0,0,0,0,0,0,12,13,0,0, - 16,17,18,5,0,0,0,23,0,25, - 26,27,28,29,30,31,32,33,34,35, - 36,0,55,2,55,4,5,6,7,8, - 9,10,11,0,0,14,15,0,0,0, - 19,20,21,22,0,24,2,0,4,5, - 6,7,8,9,10,11,0,59,14,15, - 0,0,0,19,20,21,22,0,24,0, - 0,50,0,6,7,8,9,10,11,0, - 0,14,0,0,0,0,19,20,21,22, - 0,24,0,0,50,0,6,7,8,9, - 10,11,0,0,14,0,0,0,0,19, - 20,21,22,0,24,0,0,0,0,6, - 7,8,9,10,11,0,0,14,0,0, - 0,0,19,20,21,22,0,24,0,0, - 0,0,6,7,8,9,10,11,0,0, - 14,0,0,0,0,19,20,21,22,0, - 24,0,0,0,0,6,7,8,9,10, - 11,0,0,0,0,0,0,0,0,0, + 50,51,0,53,54,55,0,1,0,3, + 0,5,6,7,8,9,10,11,0,0, + 2,2,0,4,0,19,24,0,64,65, + 66,67,14,14,16,17,0,1,2,33, + 34,35,36,37,56,57,40,41,42,43, + 44,45,46,47,48,49,50,51,52,53, + 54,55,0,1,0,3,60,5,6,7, + 8,9,10,11,0,1,0,3,0,61, + 0,19,6,7,8,9,10,11,64,65, + 66,67,70,71,76,33,34,35,36,37, + 73,0,40,41,42,43,44,45,46,47, + 48,49,50,51,52,53,54,55,0,1, + 0,3,60,5,6,7,8,9,10,11, + 0,1,0,0,1,15,3,19,6,7, + 8,9,10,11,64,65,66,67,70,71, + 0,33,34,35,36,37,0,24,40,41, + 42,43,44,45,46,47,48,49,50,51, + 52,53,54,55,0,1,0,3,60,0, + 6,7,8,9,10,11,0,0,0,2, + 0,4,2,19,6,7,8,9,10,11, + 0,14,0,1,14,3,0,33,34,35, + 36,37,12,13,40,41,42,43,44,45, + 46,47,48,49,50,51,24,53,54,55, + 0,1,2,3,4,5,0,0,1,0, + 3,0,12,13,5,15,16,17,18,19, + 20,21,22,23,68,25,26,27,28,29, + 30,31,32,0,0,1,2,3,4,5, + 0,0,0,0,1,2,12,13,39,15, + 16,17,18,19,20,21,22,23,58,25, + 26,27,28,29,30,31,32,0,1,2, + 59,4,39,0,1,2,3,4,5,0, + 1,14,3,0,75,12,13,4,15,16, + 17,18,58,20,21,22,23,24,25,26, + 27,28,29,30,31,32,0,0,0,1, + 2,68,4,6,7,8,9,10,11,77, + 78,0,14,0,0,52,19,6,7,8, + 9,10,11,0,0,0,1,4,3,5, + 33,34,35,36,37,62,63,40,41,42, + 43,44,45,46,47,48,49,50,51,0, + 1,2,3,4,5,0,1,0,3,0, + 0,12,13,0,15,16,17,18,72,20, + 21,22,23,14,25,26,27,28,29,30, + 31,32,58,0,1,2,3,4,5,0, + 0,0,1,4,3,12,13,0,15,16, + 17,18,89,20,21,22,23,58,25,26, + 27,28,29,30,31,32,0,0,1,2, + 3,4,6,7,8,9,10,11,68,12, + 13,0,15,16,17,18,5,20,21,22, + 23,58,25,26,27,28,29,30,31,32, + 0,62,63,56,57,5,0,0,0,1, + 2,3,4,6,7,8,9,10,11,38, + 12,13,0,15,16,17,18,60,20,21, + 22,23,24,25,26,27,28,29,30,31, + 32,0,1,2,3,4,0,1,2,0, + 0,5,52,12,13,5,15,16,17,18, + 14,20,21,22,23,24,25,26,27,28, + 29,30,31,32,0,1,2,3,4,0, + 0,2,0,0,38,5,12,13,38,15, + 16,17,18,14,20,21,22,23,24,25, + 26,27,28,29,30,31,32,0,1,2, + 3,4,0,0,2,0,0,5,38,12, + 13,72,15,16,17,18,14,20,21,22, + 23,24,25,26,27,28,29,30,31,32, + 0,1,2,3,4,0,1,2,0,1, + 38,3,12,13,39,15,16,17,18,0, + 20,21,22,23,5,25,26,27,28,29, + 30,31,32,0,1,2,3,4,0,0, + 0,0,0,5,4,12,13,74,15,16, + 17,18,0,20,21,22,23,0,25,26, + 27,28,29,30,31,32,0,1,2,3, + 4,52,0,1,0,0,38,39,12,13, + 5,15,16,17,18,0,20,21,22,23, + 0,25,26,27,28,29,30,31,32,0, + 0,2,0,4,5,6,7,8,9,10, + 11,69,73,14,12,13,59,0,19,0, + 0,79,80,81,82,83,84,85,86,87, + 88,59,33,34,35,36,37,38,0,39, + 2,0,4,5,6,7,8,9,10,11, + 75,0,14,12,13,4,0,19,0,0, + 0,0,0,4,6,7,8,9,10,11, + 14,33,34,35,36,37,38,19,0,0, + 0,0,0,0,6,7,8,9,10,11, + 0,33,34,35,36,37,0,19,0,0, + 0,0,0,24,6,7,8,9,10,11, + 59,33,34,35,36,37,14,19,0,0, + 24,62,63,24,6,7,8,9,10,11, + 0,33,34,35,36,37,74,19,56,57, + 39,0,0,0,14,0,56,57,0,69, + 69,33,34,35,36,37,56,57,39,14, + 0,0,0,61,0,24,24,24,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, + 0,61,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,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; @@ -546,115 +540,104 @@ public class UPCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface TermAction { public final static char termAction[] = {0, - 1842,1172,1599,1174,1585,1,2053,2054,2055,2163, - 542,2164,1578,1571,2003,281,1592,1536,1353,2004, - 2002,2056,2005,1250,2001,1852,1853,1854,1855,1467, - 417,2153,2154,2155,1216,443,428,1842,2008,2013, - 2012,2010,2011,2009,2014,2015,2007,2016,2017,2018, - 1,1839,1031,511,510,1842,1,1842,1,41, - 189,1,1,1,1,1,1,47,261,1, - 1222,1617,1,1842,1,1,1,1,246,1, - 1,2065,1465,558,1,1,1,1,1,1, - 266,1842,1200,1,1,1,1,1,1,1, - 1,1,1,1,1,558,189,1,1,1, - 2096,2036,1842,1,1842,1,87,189,1,1, - 1,1,1,1,1842,1871,1,1872,962,1610, - 1601,1,1,1,1,1842,1,252,942,922, - 902,882,862,822,842,802,782,762,1094,1842, + 1884,759,1591,1011,1505,1,2099,2100,2101,2210, + 1031,2211,1495,1375,58,1584,1772,1761,1739,2045, + 1894,1895,1896,1897,63,1214,1085,2200,2201,2202, + 1710,1411,1226,2046,2044,2102,2047,2043,53,1351, + 2050,2055,2054,2052,2053,2051,2056,2057,2049,2058, + 2059,2060,1884,1537,1139,1131,1884,1,254,1, + 183,192,1,1,1,1,1,1,31,266, + 1536,1494,61,1,60,1,375,67,1467,1453, + 1443,1247,1708,611,1908,1909,1,2111,1477,1, + 1,1,1,1,596,1478,1,1,1,1, + 1,1,1,1,1,1,1,1,192,1, + 1,1,1884,1,184,1,2081,191,1,1, + 1,1,1,1,1884,1913,1884,1914,62,642, + 59,1,2099,2100,2101,2210,1031,2211,1467,1453, + 1443,1247,1419,1395,590,1,1,1,1,1, + 513,286,1,1,1,1,1,1,1,1, + 1,1,1,1,191,1,1,1,1884,1, + 64,1,2081,192,1,1,1,1,1,1, + 1884,2123,250,1884,2063,1351,2064,1,1,1, + 1,1,1,1,1467,1453,1443,1247,1419,1395, + 1884,1,1,1,1,1,1884,1493,1,1, 1,1,1,1,1,1,1,1,1,1, - 1,1,1826,189,1,1,1,1842,2036,1842, - 1,742,1,50,189,1,1,1,1,1, - 1,69,31,1,1737,1528,1490,58,1,1, - 1,1,1767,1,49,1842,60,1366,1617,1866, - 1867,2053,2054,2055,2163,542,2164,1,1,1, - 1,1,1,1,1,1,1,1,1,1842, - 189,1,1,1,1842,2036,1842,1,1842,1, - 1842,188,1,1,1,1,1,1,48,1022, - 1,53,1617,465,59,1,1,1,1,61, - 1,1456,1445,1433,1422,1176,1610,1601,387,1842, - 1456,1445,1433,1422,1,1,1,1,1,1, - 1,1,1,1,1,1,1842,188,1,1, - 1,287,2036,1842,1,1156,1,57,189,1, - 1,1,1,1,1,62,1075,1,1066,1119, - 1610,1601,1,1,1,1,247,1,1456,1445, - 1433,1422,1,1,1,1,1,1,56,1391, - 1379,1,1,1,1,1,1,1,1,1, - 1,1,1,55,189,1,1,1,1842,2036, - 1842,2020,1646,2019,1066,1119,2053,2054,2055,2163, - 542,2164,1842,264,2003,1222,1323,1407,1842,2004, - 2002,2056,2005,245,2001,1391,1379,65,558,2053, - 2054,2055,2163,542,2164,1066,1119,1842,2008,2013, - 2012,2010,2011,2009,2014,2015,2007,2016,2017,2018, - 1066,1119,1031,511,510,1,1859,1599,1860,647, - 1845,1,1836,1199,267,1842,1847,1578,1571,580, - 1849,1592,1536,1353,205,2021,558,2022,1250,558, - 1852,1853,1854,1855,1467,417,2153,2154,2155,1216, - 443,428,1842,1859,1599,1860,1550,1845,1,1309, - 1222,1842,208,1847,1578,1571,1002,71,1592,1536, - 1353,1846,1842,558,1844,1250,1848,1852,1853,1854, - 1855,1467,417,2153,2154,2155,1216,443,428,1, - 1859,1599,1860,1585,27,258,2065,1199,219,1, - 1713,1578,1571,1842,1,1592,1536,1353,1846,89, - 558,1844,1250,558,1852,1853,1854,1855,1467,417, - 2153,2154,2155,1216,443,428,2769,127,264,2065, - 1199,1041,1407,2053,2054,2055,2163,542,2164,1842, - 27,2003,1842,558,514,1628,2004,2002,2056,2005, - 248,2001,1842,2021,89,2022,2053,2054,2055,2163, - 542,2164,1,2065,1465,2008,2013,2012,2010,2011, - 2009,2014,2015,2007,2016,2017,2018,1842,1859,1599, - 1860,1585,1845,1842,2021,63,2022,280,1842,1578, - 1571,1842,1559,1592,1536,1353,1842,2021,66,2022, - 1250,1340,1852,1853,1854,1855,1467,417,2153,2154, - 2155,1216,443,428,1842,1859,1599,1860,1543,1845, - 1367,1842,2021,1842,2022,70,1578,1571,1214,67, - 1592,1536,1353,1368,1842,2077,1844,1250,1559,1852, - 1853,1854,1855,1467,417,2153,2154,2155,1216,443, - 428,1842,1,1,1,1,1,1842,1404,52, - 1842,1851,1851,1,1,1847,1842,1,1,1, - 1309,1528,1490,1844,1,1842,1,1,1,1, - 1,1,1,1,1,1,1,1,1842,1859, - 1599,1860,1585,1842,2065,1465,51,1407,1,1176, - 1578,1571,1275,1847,1592,1536,1353,2152,1528,1490, - 1846,1250,1324,1852,1853,1854,1855,1467,417,2153, - 2154,2155,1216,443,428,1214,1,1859,1599,1860, - 1585,1850,1850,204,607,186,607,68,1578,1571, - 1842,1842,1592,1536,1353,199,185,1842,1846,1250, - 54,1852,1853,1854,1855,1467,417,2153,2154,2155, - 1216,443,428,2769,1842,1859,1599,1860,1585,320, - 64,1842,1513,217,187,1842,1578,1571,1842,1842, - 1592,1536,1353,1557,1827,1,1340,1250,558,1852, - 1853,1854,1855,1467,417,2153,2154,2155,1216,443, - 428,2769,1,1859,1599,1860,1585,1066,1119,1147, - 1275,1558,1629,1128,1578,1571,613,1842,1592,1536, - 1353,1842,1,1,1842,1250,1323,1852,1853,1854, - 1855,1467,417,2153,2154,2155,1216,443,428,2769, - 1842,1859,1599,1860,1585,2096,1842,1842,1842,1842, - 1842,1847,1578,1571,1842,1842,1592,1536,1353,1842, - 1842,1842,1842,1250,28,1852,1853,1854,1855,1467, - 417,2153,2154,2155,1216,443,428,1842,1859,1600, - 1860,1585,2096,2095,1842,1842,1842,1842,1842,1578, - 1571,1842,1842,1592,1536,1353,1846,28,1842,204, - 1250,1627,1852,1853,1854,1855,1467,417,2153,2154, - 2155,1216,443,428,1,1859,1599,1860,1585,488, - 1842,1842,1842,1842,1842,1842,1578,1571,1842,1842, - 1592,1536,1353,1845,1842,1842,1842,1250,1842,1852, - 1853,1854,1855,1467,417,2153,2154,2155,1216,443, - 428,17,1869,1830,2915,1830,1830,178,178,178, - 178,178,178,1842,1842,178,1830,1842,1842,1842, - 178,178,178,178,18,178,1833,1842,1833,1833, - 177,177,177,177,177,177,1842,1844,177,1833, - 1842,1842,1842,177,177,177,177,128,177,1842, - 1842,1830,1842,2053,2054,2055,2163,542,2164,1842, - 1842,2003,1842,1842,1842,1842,2004,2002,2056,2005, - 129,2001,1842,1842,1833,1842,2053,2054,2055,2163, - 542,2164,1842,1842,2003,1842,1842,1842,1842,2004, - 2002,2056,2005,130,2001,1842,1842,1842,1842,2053, - 2054,2055,2163,542,2164,1842,1842,2003,1842,1842, - 1842,1842,2004,2002,2056,2005,131,2001,1842,1842, - 1842,1842,2053,2054,2055,2163,542,2164,1842,1842, - 2003,1842,1842,1842,1842,2004,2002,2056,2005,249, - 2001,1842,1842,1842,1842,2053,2054,2055,2163,542, - 2164 + 192,1,1,1,1884,2062,1884,2061,2081,1884, + 2099,2100,2101,2210,1031,2211,1884,269,249,1494, + 271,254,532,2045,2099,2100,2101,2210,1031,2211, + 50,611,1884,2063,611,2064,1884,2046,2044,2102, + 2047,2043,460,432,2050,2055,2054,2052,2053,2051, + 2056,2057,2049,2058,2059,2060,1562,1537,1139,1131, + 1,1901,1591,1902,535,1887,1884,186,3170,1884, + 3170,1,1495,1375,1893,1584,1772,1761,1739,694, + 1894,1895,1896,1897,564,1214,1085,2200,2201,2202, + 1710,1411,1226,87,1884,1901,1591,1902,1387,1887, + 1884,1884,71,1,2111,1477,1495,1375,1333,1584, + 1772,1761,1739,1021,1894,1895,1896,1897,1886,1214, + 1085,2200,2201,2202,1710,1411,1226,263,2111,1197, + 2143,1,761,1,1901,1591,1902,1505,27,185, + 3171,611,3171,47,1892,1495,1375,1650,1584,1772, + 1761,1739,1886,1894,1895,1896,1897,2948,1214,1085, + 2200,2201,2202,1710,1411,1226,65,127,269,2111, + 1197,1112,254,2099,2100,2101,2210,1031,2211,1261, + 1794,251,611,1884,1884,27,2045,1,1,1, + 1,1,1,1884,1884,207,3172,1082,3172,1887, + 2046,2044,2102,2047,2043,1643,1610,2050,2055,2054, + 2052,2053,2051,2056,2057,2049,2058,2059,2060,1884, + 1901,1591,1902,1505,1887,1884,2063,1884,2064,272, + 202,1495,1375,1884,1584,1772,1761,1739,1291,1894, + 1895,1896,1897,611,1214,1085,2200,2201,2202,1710, + 1411,1226,1886,1884,1901,1591,1902,1325,1887,49, + 1884,209,2063,1650,2064,1495,1375,57,1584,1772, + 1761,1739,1868,1894,1895,1896,1897,1886,1214,1085, + 2200,2201,2202,1710,1411,1226,252,1884,1,1, + 1,1,2099,2100,2101,2210,1031,2211,1145,1, + 1,1,1,1,1,1,89,1,1,1, + 1,1886,1,1,1,1,1,1,1,1, + 1884,1643,1610,596,1478,1891,1884,253,1884,1901, + 1591,1902,1505,2099,2100,2101,2210,1031,2211,89, + 1495,1375,1884,1584,1772,1761,1739,2199,1894,1895, + 1896,1897,375,1214,1085,2200,2201,2202,1710,1411, + 1226,1,1901,1591,1902,1505,1,1878,1197,66, + 1884,1889,1890,1495,1375,1889,1584,1772,1761,1739, + 611,1894,1895,1896,1897,2948,1214,1085,2200,2201, + 2202,1710,1411,1226,1884,1901,1591,1902,1505,223, + 1,1692,1884,1884,1888,1889,1495,1375,1888,1584, + 1772,1761,1739,611,1894,1895,1896,1897,2948,1214, + 1085,2200,2201,2202,1710,1411,1226,1,1901,1591, + 1902,1505,1,69,1494,257,1884,1889,1888,1495, + 1375,1291,1584,1772,1761,1739,611,1894,1895,1896, + 1897,2948,1214,1085,2200,2201,2202,1710,1411,1226, + 1884,1901,1591,1902,1505,254,2111,1477,208,1143, + 1888,1143,1495,1375,1571,1584,1772,1761,1739,285, + 1894,1895,1896,1897,1569,1214,1085,2200,2201,2202, + 1710,1411,1226,1884,1901,1592,1902,1505,1884,68, + 1884,1884,41,1889,1607,1495,1375,677,1584,1772, + 1761,1739,1884,1894,1895,1896,1897,1,1214,1085, + 2200,2201,2202,1710,1411,1226,1,1901,1591,1902, + 1505,1569,1,1881,1884,1,1888,1628,1495,1375, + 1893,1584,1772,1761,1739,1884,1894,1895,1896,1897, + 1884,1214,1085,2200,2201,2202,1710,1411,1226,17, + 28,1872,52,1872,1872,178,178,178,178,178, + 178,981,513,1872,460,432,2142,1884,178,1884, + 1884,961,941,921,901,881,841,861,821,801, + 781,2143,178,178,178,178,178,1872,18,493, + 1875,51,1875,1875,177,177,177,177,177,177, + 1892,1,1875,460,432,254,325,177,128,48, + 1884,1884,70,1650,2099,2100,2101,2210,1031,2211, + 1869,177,177,177,177,177,1875,2045,129,1884, + 1884,212,56,1884,2099,2100,2101,2210,1031,2211, + 55,2046,2044,2102,2047,2043,1884,2045,130,1884, + 54,28,1884,1668,2099,2100,2101,2210,1031,2211, + 2143,2046,2044,2102,2047,2043,1041,2045,131,208, + 1669,1643,1610,1737,2099,2100,2101,2210,1031,2211, + 292,2046,2044,2102,2047,2043,677,2045,596,1478, + 1911,190,190,190,1060,221,596,1478,1884,632, + 1093,2046,2044,2102,2047,2043,596,1478,2937,611, + 1884,1884,1884,1409,1884,186,185,207,1884,1884, + 1884,1884,1884,1884,1884,1884,1884,1884,1884,1884, + 1884,1884,1884,1884,1884,1884,1884,1884,1884,1884, + 1884,1535 }; }; public final static char termAction[] = TermAction.termAction; @@ -662,28 +645,28 @@ public class UPCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface Asb { public final static char asb[] = {0, - 451,1,170,41,170,170,170,170,170,170, - 170,170,170,170,170,170,3,111,79,76, - 83,81,89,87,91,90,93,92,10,170, - 111,304,304,475,170,268,268,372,111,170, - 170,170,170,170,170,170,170,170,170,170, - 170,170,170,170,170,170,170,170,170,170, - 170,170,170,170,170,170,170,170,170,268, - 268,45,52,376,161,271,266,265,344,104, - 356,356,72,72,356,72,356,131,219,219, - 76,76,81,81,81,81,79,79,87,83, - 83,90,89,412,92,91,74,50,372,364, - 164,45,154,194,268,419,274,194,391,311, - 391,311,378,391,170,50,364,154,154,45, - 193,161,268,370,131,267,276,45,194,311, - 311,311,311,378,378,380,308,341,74,154, - 364,170,170,45,194,271,407,406,376,276, - 268,311,341,384,311,311,341,380,414,380, - 378,341,48,417,304,170,307,341,50,364, - 45,45,268,419,274,370,341,386,341,341, - 170,304,380,52,45,304,170,50,276,100, - 170,99,189,376,341,45,380,268,267,386, - 170,189,341,305,380 + 461,1,113,41,113,113,113,113,113,113, + 113,113,113,113,113,113,3,221,51,48, + 55,53,61,59,63,62,65,64,10,113, + 221,390,390,393,113,211,211,318,221,113, + 113,113,113,113,113,113,113,113,113,113, + 113,113,113,113,113,113,113,113,113,113, + 113,113,113,113,113,113,113,113,113,211, + 211,45,80,322,104,357,209,208,290,214, + 302,100,302,100,100,302,100,302,241,162, + 162,48,48,53,53,53,53,51,51,59, + 55,55,62,61,288,64,63,102,78,318, + 322,107,45,264,137,211,424,360,137,100, + 390,390,100,390,113,78,322,310,264,45, + 136,104,211,316,241,210,362,45,137,102, + 324,102,418,420,279,354,102,310,264,113, + 113,45,137,357,283,282,322,362,211,102, + 324,418,418,354,76,459,390,113,278,354, + 78,264,310,45,45,211,424,360,316,324, + 354,271,324,418,420,456,420,80,45,390, + 113,78,310,362,324,273,420,354,113,390, + 45,420,211,210,354,72,113,71,132,322, + 354,354,391,273,113,132,420 }; }; public final static char asb[] = Asb.asb; @@ -691,56 +674,55 @@ public class UPCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface Asr { public final static byte asr[] = {0, - 89,0,75,15,2,61,76,17,18,16, - 4,12,13,62,63,57,58,64,65,66, - 67,70,71,72,73,74,77,78,51,69, + 89,0,75,14,2,61,76,16,17,15, + 4,12,13,62,63,56,57,64,65,66, + 67,70,71,72,73,74,77,78,52,69, 79,80,81,82,83,85,84,86,87,88, - 68,50,89,55,59,5,0,5,51,15, - 61,17,18,16,4,12,13,29,30,23, - 34,35,36,2,25,26,27,28,31,32, - 33,1,3,37,0,4,62,63,12,13, - 58,57,64,65,66,67,70,71,16,72, - 73,74,59,50,51,89,77,78,68,75, - 5,55,0,5,68,55,59,50,75,15, - 23,25,26,27,28,2,17,18,16,4, - 12,13,29,30,31,32,33,34,35,36, - 3,1,52,53,54,46,38,43,41,42, - 40,39,44,45,47,48,49,24,20,14, - 19,22,21,6,7,8,10,9,11,0, - 59,5,14,6,7,8,9,10,11,25, - 26,27,28,31,32,33,3,17,18,16, - 12,13,29,30,23,34,35,36,4,2, - 1,0,14,59,5,17,18,16,4,12, - 13,29,30,23,34,35,36,2,1,3, - 25,26,27,28,31,32,33,0,7,14, - 24,8,22,21,20,6,19,9,10,11, - 61,76,17,18,16,12,13,62,63,57, - 58,64,65,66,67,70,71,72,73,74, - 77,78,69,79,80,81,82,83,84,85, - 86,87,88,4,2,15,55,50,5,0, - 4,2,15,50,5,19,38,6,39,52, - 20,40,21,41,42,22,7,43,44,14, - 53,24,54,45,46,8,47,48,49,9, - 10,11,60,3,1,0,69,15,61,0, - 19,38,6,39,52,20,40,21,41,42, - 22,7,43,44,14,53,24,54,45,46, - 8,47,48,49,1,3,9,10,11,56, - 5,51,0,46,38,43,41,42,40,39, - 44,45,47,48,49,68,75,24,20,14, - 19,22,21,6,7,8,9,10,11,55, - 1,5,50,2,15,4,0,1,3,5, - 51,55,0,75,5,4,1,2,68,0, - 19,6,20,21,22,7,14,24,8,1, - 4,9,10,11,37,2,5,55,50,75, - 15,68,0,5,55,51,69,0,19,38, - 6,39,52,20,40,21,41,42,22,7, - 43,44,14,53,24,54,45,46,8,47, - 48,49,1,3,9,10,11,60,4,0, - 23,25,26,27,28,1,3,2,17,18, - 16,4,12,13,29,30,31,32,33,34, - 35,36,56,0,5,50,23,25,26,27, - 28,1,3,2,17,18,16,4,12,13, - 29,30,31,32,33,34,35,36,0 + 68,38,89,39,58,5,0,4,62,63, + 12,13,57,56,64,65,66,67,70,71, + 15,72,73,74,58,38,52,89,77,78, + 68,75,5,39,0,5,52,14,61,16, + 17,15,4,12,13,25,26,18,30,31, + 32,2,20,21,22,23,27,28,29,1, + 3,24,0,58,5,19,6,7,8,9, + 10,11,20,21,22,23,27,28,29,3, + 16,17,15,12,13,25,26,18,30,31, + 32,4,2,1,0,19,58,5,16,17, + 15,4,12,13,25,26,18,30,31,32, + 2,1,3,20,21,22,23,27,28,29, + 0,7,19,37,8,36,35,34,6,33, + 9,10,11,61,76,16,17,15,12,13, + 62,63,56,57,64,65,66,67,70,71, + 72,73,74,77,78,69,79,80,81,82, + 83,84,85,86,87,88,4,2,14,39, + 38,5,0,5,68,39,58,38,75,14, + 18,20,21,22,23,2,16,17,15,4, + 12,13,25,26,27,28,29,30,31,32, + 3,1,53,54,55,48,40,45,43,44, + 42,41,46,47,49,50,51,37,34,19, + 33,36,35,6,7,8,10,9,11,0, + 75,5,4,1,2,68,0,69,14,61, + 0,2,5,39,38,75,14,68,0,48, + 40,45,43,44,42,41,46,47,49,50, + 51,68,75,37,34,19,33,36,35,6, + 7,8,9,10,11,39,1,5,38,2, + 14,4,0,33,40,6,41,53,34,42, + 35,43,44,36,7,45,46,19,54,37, + 55,47,48,8,49,50,51,1,3,9, + 10,11,60,5,52,0,4,2,14,38, + 5,33,40,6,41,53,34,42,35,43, + 44,36,7,45,46,19,54,37,55,47, + 48,8,49,50,51,9,10,11,59,3, + 1,0,5,38,18,20,21,22,23,1, + 3,2,16,17,15,4,12,13,25,26, + 27,28,29,30,31,32,0,1,3,5, + 52,39,0,4,33,40,6,41,53,34, + 42,35,43,44,36,7,45,46,19,54, + 37,55,47,48,8,49,50,51,1,3, + 9,10,11,59,0,5,39,52,69,0, + 18,20,21,22,23,1,3,2,16,17, + 15,4,12,13,25,26,27,28,29,30, + 31,32,60,0 }; }; public final static byte asr[] = Asr.asr; @@ -748,28 +730,28 @@ public class UPCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface Nasb { public final static byte nasb[] = {0, - 78,8,14,8,14,14,14,14,14,14, - 14,14,14,14,14,14,8,70,8,8, - 8,8,8,8,8,8,8,8,8,14, - 70,9,9,91,71,47,47,50,1,14, - 14,14,14,14,14,14,14,14,14,14, - 14,14,14,14,14,71,14,14,14,14, - 14,14,14,14,14,14,14,14,14,47, - 47,24,14,76,22,49,29,29,58,20, - 59,59,16,16,59,16,59,54,8,8, - 8,8,8,8,8,8,8,8,8,8, - 8,8,8,8,8,8,8,87,51,87, - 26,24,37,23,47,74,46,23,8,87, - 8,87,87,8,14,12,87,37,37,24, - 23,89,47,40,2,8,86,24,23,87, - 81,87,81,16,87,31,18,87,8,37, - 89,14,14,24,23,39,29,29,76,86, - 47,81,35,67,94,81,35,31,8,8, - 16,35,11,8,16,14,61,35,87,89, - 24,24,47,74,46,41,35,63,35,35, - 14,16,31,13,24,16,14,12,85,68, - 14,8,63,76,35,24,31,47,47,63, - 14,43,35,8,33 + 110,9,22,9,22,22,22,22,22,22, + 22,22,22,22,22,22,9,92,9,9, + 9,9,9,9,9,9,9,9,9,22, + 92,35,35,81,93,27,27,77,1,22, + 22,22,22,22,22,22,22,22,22,22, + 22,22,22,22,22,93,22,22,22,22, + 22,22,22,22,22,22,22,22,22,27, + 27,39,22,14,37,76,12,12,71,44, + 72,17,72,85,85,72,84,72,66,9, + 9,9,9,9,9,9,9,9,9,9, + 9,9,9,9,9,9,9,9,64,96, + 9,41,39,100,38,27,87,26,38,24, + 24,24,24,24,22,20,9,64,100,39, + 38,57,27,60,2,9,89,39,38,33, + 64,9,64,29,31,64,9,64,100,22, + 22,39,38,59,12,12,14,89,27,9, + 102,64,24,10,19,9,24,22,49,10, + 64,100,57,39,39,27,87,26,51,64, + 10,46,113,24,29,9,9,21,39,24, + 22,20,57,106,102,62,29,10,22,24, + 39,29,27,27,10,47,22,9,62,14, + 10,10,9,62,22,53,74 }; }; public final static byte nasb[] = Nasb.nasb; @@ -777,16 +759,18 @@ public class UPCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface Nasr { public final static char nasr[] = {0, - 4,80,79,78,77,76,75,0,71,0, - 69,9,63,4,0,29,0,93,0,96, - 0,9,4,20,0,4,9,0,27,0, - 53,0,91,0,28,0,60,0,25,9, - 46,45,38,36,0,9,25,0,25,9, - 46,45,0,64,65,66,67,54,30,0, - 95,0,9,38,36,0,9,70,0,34, - 9,48,0,9,26,51,0,9,86,0, - 58,9,34,0,89,26,9,0,21,0, - 9,87,0,9,34,50,0 + 4,81,80,79,78,66,77,76,0,34, + 0,28,0,33,51,0,91,0,70,10, + 61,4,0,26,0,10,25,0,53,0, + 99,0,92,0,72,0,10,4,20,0, + 4,10,0,102,0,10,71,0,101,0, + 46,45,38,36,33,0,21,0,25,46, + 45,38,36,10,0,66,62,63,64,65, + 54,29,0,97,0,25,45,46,10,0, + 10,90,0,94,67,0,33,51,10,27, + 0,50,10,48,0,46,45,33,0,58, + 0,83,10,50,0,95,10,27,0,10, + 89,0,10,50,68,0 }; }; public final static char nasr[] = Nasr.nasr; @@ -795,11 +779,11 @@ public class UPCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface TerminalIndex { public final static char terminalIndex[] = {0, 85,2,86,9,87,48,64,76,96,97, - 98,10,11,69,1,8,6,7,44,55, - 60,63,68,72,81,82,83,84,12,13, - 93,94,95,100,101,102,3,47,52,56, - 61,62,66,67,74,75,78,79,80,90, - 91,54,70,73,42,107,16,17,89,30, + 98,10,11,1,8,6,7,68,69,81, + 82,83,84,3,12,13,93,94,95,100, + 101,102,44,55,60,63,72,90,42,47, + 52,56,61,62,66,67,74,75,78,79, + 80,91,54,70,73,16,17,89,30,107, 4,14,15,18,19,20,21,29,31,22, 23,24,25,26,92,5,27,28,32,33, 34,35,36,37,38,39,40,41,108,45, @@ -812,19 +796,19 @@ public class UPCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface NonterminalIndex { public final static char nonterminalIndex[] = {0, - 0,0,0,115,119,120,121,122,0,123, + 0,0,0,115,119,120,121,122,123,0, 124,125,126,127,128,129,130,131,132,110, - 143,0,0,0,111,136,163,112,135,142, - 0,0,0,154,159,161,0,162,0,0, - 0,0,134,172,173,174,0,114,151,153, - 160,169,0,145,150,0,0,152,164,167, - 168,171,0,146,147,148,149,158,175,113, - 116,117,118,133,137,138,139,140,141,144, - 156,0,0,157,166,109,0,155,165,170, - 0,176,177,0,178,179,0,0,0,0, - 0,0,0,0,0,0,0,0,0,0, + 143,0,0,0,111,135,136,164,142,0, + 0,0,0,112,160,162,0,163,0,0, + 0,0,134,173,174,175,0,114,151,155, + 161,170,0,145,150,0,165,168,169,172, + 0,146,147,148,149,152,0,154,159,176, + 113,116,117,118,133,137,138,139,140,141, + 144,0,153,157,0,0,158,167,109,0, + 0,0,156,0,166,171,0,177,178,0, + 179,180,0,0,0,0,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; @@ -832,11 +816,11 @@ public class UPCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface ScopePrefix { public final static char scopePrefix[] = { - 202,108,47,57,117,137,143,12,180,21, - 75,93,149,154,63,28,71,40,127,217, - 221,40,40,189,40,1,1,1,32,35, - 80,103,35,225,6,131,196,171,196,123, - 159,159,159,159,159,83,83,83 + 108,139,196,118,47,57,147,12,174,21, + 75,93,63,28,71,40,129,211,215,40, + 40,183,40,1,1,1,32,35,80,103, + 35,219,6,133,190,165,190,125,153,153, + 153,153,153,83,83,83 }; }; public final static char scopePrefix[] = ScopePrefix.scopePrefix; @@ -844,11 +828,11 @@ public class UPCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface ScopeSuffix { public final static char scopeSuffix[] = { - 115,115,4,4,115,115,115,18,186,26, - 4,26,115,115,68,26,4,4,125,26, - 4,44,68,193,53,4,4,4,26,38, - 4,26,106,26,9,134,199,174,210,125, - 161,163,165,167,169,90,85,98 + 116,116,116,116,4,4,116,18,180,26, + 4,26,68,26,4,4,127,26,4,44, + 68,187,53,4,4,4,26,38,4,26, + 106,26,9,136,193,168,204,127,155,157, + 159,161,163,90,85,98 }; }; public final static char scopeSuffix[] = ScopeSuffix.scopeSuffix; @@ -856,11 +840,11 @@ public class UPCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface ScopeLhs { public final static char scopeLhs[] = { - 4,66,27,27,66,64,64,55,103,47, - 27,41,64,64,27,47,27,27,50,4, - 4,27,27,18,27,96,95,94,45,62, - 27,38,49,2,69,50,6,104,4,50, - 79,78,77,76,75,41,39,41 + 64,62,4,64,28,28,62,55,109,47, + 28,41,28,47,28,28,68,4,4,28, + 28,18,28,102,101,100,45,60,28,38, + 49,2,70,68,6,110,4,68,80,79, + 78,77,76,41,39,41 }; }; public final static char scopeLhs[] = ScopeLhs.scopeLhs; @@ -868,11 +852,11 @@ public class UPCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface ScopeLa { public final static byte scopeLa[] = { - 51,51,59,59,51,51,51,51,95,50, - 59,50,51,51,25,50,59,59,75,50, - 59,4,25,68,14,59,59,59,50,2, - 59,50,1,50,69,1,50,101,50,75, - 3,52,53,53,46,2,2,2 + 52,52,52,52,58,58,52,52,95,38, + 58,38,20,38,58,58,75,38,58,4, + 20,68,19,58,58,58,38,2,58,38, + 1,38,69,1,38,101,38,75,3,53, + 54,54,48,2,2,2 }; }; public final static byte scopeLa[] = ScopeLa.scopeLa; @@ -880,11 +864,11 @@ public class UPCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface ScopeStateSet { public final static byte scopeStateSet[] = { - 36,21,25,25,21,21,21,96,-1,29, - 25,11,21,21,25,29,25,25,5,36, - 36,25,25,70,25,19,1,3,29,31, - 25,11,13,36,97,5,42,-1,36,5, - 22,22,22,22,22,11,11,11 + 19,19,34,19,23,23,19,94,-1,27, + 23,9,23,27,23,23,3,34,34,23, + 23,68,23,17,1,7,27,29,23,9, + 11,34,95,3,40,-1,34,3,20,20, + 20,20,20,9,9,9 }; }; public final static byte scopeStateSet[] = ScopeStateSet.scopeStateSet; @@ -892,29 +876,29 @@ public class UPCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface ScopeRhs { public final static char scopeRhs[] = {0, - 150,15,0,110,0,199,116,0,31,150, - 0,160,180,116,37,170,0,112,0,0, - 166,116,2,152,0,111,0,166,116,2, - 0,169,2,0,158,116,0,172,0,192, - 116,15,0,9,110,0,126,14,192,116, - 15,0,69,132,110,0,126,192,116,14, - 15,0,192,116,14,15,0,132,110,0, - 126,14,15,0,126,192,116,15,0,126, - 15,0,145,0,2,0,165,111,0,2, - 111,0,166,116,2,145,0,2,0,164, - 111,0,156,2,0,159,0,160,190,116, - 37,136,52,0,112,0,160,190,116,37, - 52,0,141,0,113,0,195,116,141,0, - 116,141,0,155,113,0,164,116,37,136, - 54,0,164,116,37,136,53,0,164,116, - 37,54,0,164,116,37,53,0,187,0, - 149,0,148,0,147,0,146,0,145,0, - 206,94,0,77,2,114,111,113,0,206, - 132,155,2,98,0,53,0,0,155,78, - 124,0,29,131,0,179,2,0,111,120, - 0,160,180,116,37,132,179,2,0,111, - 3,0,118,0,112,0,194,2,111,0, - 155,15,111,0,155,2,0 + 150,14,0,110,0,205,117,0,31,150, + 0,160,181,117,24,168,0,112,0,0, + 164,117,2,152,0,111,0,164,117,2, + 0,167,2,0,158,117,0,173,0,195, + 117,14,0,9,110,0,126,19,195,117, + 14,0,69,132,110,0,126,195,117,19, + 14,0,195,117,19,14,0,132,110,0, + 126,19,14,0,126,195,117,14,0,126, + 14,0,145,0,2,0,166,111,0,2, + 111,0,164,117,2,145,0,2,0,165, + 111,0,156,2,0,160,0,160,193,117, + 24,133,201,53,0,112,0,160,193,117, + 24,201,53,0,157,0,113,0,200,117, + 157,0,117,157,0,156,113,0,189,117, + 24,199,133,198,173,0,189,117,24,198, + 173,0,188,0,149,0,148,0,147,0, + 146,0,145,0,212,94,0,77,2,114, + 111,113,0,212,132,155,2,98,0,53, + 0,0,155,78,124,0,29,131,0,180, + 2,0,111,120,0,160,181,117,24,132, + 180,2,0,111,3,0,118,0,112,0, + 197,2,111,0,155,14,111,0,155,2, + 0 }; }; public final static char scopeRhs[] = ScopeRhs.scopeRhs; @@ -922,16 +906,16 @@ public class UPCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface ScopeState { public final static char scopeState[] = {0, - 1242,0,512,0,1678,1752,1674,1668,1635,0, - 509,415,1324,1465,1290,1199,1166,0,542,0, - 1241,579,360,0,1663,1232,1230,637,415,508, - 1199,1166,1222,1480,0,1536,1353,1250,1216,443, - 428,1550,1543,647,1649,1176,514,1309,1275,1391, - 1379,1340,1119,1066,1456,1445,1433,1422,1617,1610, - 1601,1528,1490,1592,1585,1578,1571,1467,417,1128, - 1094,1075,1041,1022,1002,982,718,1147,697,580, - 558,962,942,922,902,882,862,842,822,802, - 782,762,360,742,677,613,468,488,394,0 + 1081,0,1699,1759,1670,0,574,0,1492,1140, + 1333,1477,1301,1197,1164,0,1031,0,1258,529, + 365,0,1285,1051,424,392,1140,1638,1197,1164, + 1494,1549,0,1772,1761,1739,1710,1411,1226,1387, + 1325,535,1657,677,1261,1291,513,1419,1395,1351, + 1478,596,1467,1453,1443,1247,1650,1643,1610,460, + 432,1584,1505,1495,1375,1214,1085,1145,1112,1093, + 1060,1041,1021,1001,738,564,717,694,611,981, + 961,941,921,901,881,861,841,821,801,781, + 365,761,652,632,473,493,398,0 }; }; public final static char scopeState[] = ScopeState.scopeState; @@ -939,28 +923,28 @@ public class UPCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public interface InSymb { public final static char inSymb[] = {0, - 0,193,116,181,36,35,34,23,30,29, - 13,12,4,16,18,17,111,2,115,114, - 118,117,120,119,122,121,124,123,112,55, - 2,76,61,2,15,179,155,141,116,13, - 12,63,62,4,67,66,65,64,57,58, - 16,71,70,73,72,78,77,74,88,87, - 86,84,85,83,82,81,80,79,69,179, - 194,155,132,116,15,2,153,152,182,10, - 183,184,54,53,185,52,186,187,1,3, - 114,114,117,117,117,117,115,115,119,118, - 118,121,120,155,123,122,132,37,158,4, - 14,126,116,4,169,116,2,15,136,37, - 136,37,37,136,68,116,4,116,116,126, - 192,167,166,133,116,168,116,150,4,37, - 116,37,116,116,37,180,116,37,170,116, - 167,192,14,126,4,2,143,145,116,55, - 166,116,164,141,165,116,164,190,136,191, - 116,160,55,199,61,15,200,116,37,167, - 126,126,156,116,2,158,164,116,164,160, - 69,55,190,69,150,61,15,116,116,195, - 68,156,2,116,160,150,180,166,196,55, - 68,158,160,55,135 + 0,196,117,182,32,31,30,18,26,25, + 13,12,4,15,17,16,111,2,115,114, + 118,116,120,119,122,121,124,123,112,39, + 2,76,61,2,14,180,155,157,117,13, + 12,63,62,4,67,66,65,64,56,57, + 15,71,70,73,72,78,77,74,88,87, + 86,84,85,83,82,81,80,79,69,180, + 197,155,132,117,14,2,153,152,183,10, + 184,173,185,55,54,186,53,187,188,1, + 3,114,114,116,116,116,116,115,115,119, + 118,118,121,120,155,123,122,132,24,158, + 140,19,126,117,4,167,117,2,14,198, + 174,174,201,174,68,117,140,4,117,126, + 195,165,164,134,117,166,117,150,4,133, + 24,133,24,181,117,24,168,4,117,195, + 19,126,4,2,143,145,117,39,164,199, + 117,24,117,160,39,205,61,14,206,117, + 24,117,165,126,126,156,117,2,158,24, + 189,157,190,117,193,133,194,69,150,61, + 14,117,165,117,117,117,193,160,69,39, + 150,181,164,202,189,200,68,156,2,117, + 160,160,39,39,68,158,141 }; }; public final static char inSymb[] = InSymb.inSymb; @@ -1103,7 +1087,7 @@ public class UPCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab "assignment_expression", "expression_list_actual", "constant_expression", - "identifier_or_typedefname", + "identifier_token", "declaration_specifiers", "simple_declaration_specifiers", "struct_or_union_declaration_sp" + @@ -1123,6 +1107,7 @@ public class UPCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab "typedef_name_in_declspec", "initializer", "declarator", + "struct_or_union", "struct_declaration_list", "struct_declaration", "specifier_qualifier_list", @@ -1159,9 +1144,9 @@ public class UPCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public final String name(int index) { return name[index]; } public final static int - ERROR_SYMBOL = 56, - SCOPE_UBOUND = 47, - SCOPE_SIZE = 48, + ERROR_SYMBOL = 60, + SCOPE_UBOUND = 45, + SCOPE_SIZE = 46, MAX_NAME_LENGTH = 38; public final int getErrorSymbol() { return ERROR_SYMBOL; } @@ -1170,20 +1155,20 @@ public class UPCSizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab public final int getMaxNameLength() { return MAX_NAME_LENGTH; } public final static int - NUM_STATES = 215, + NUM_STATES = 217, NT_OFFSET = 107, - LA_STATE_OFFSET = 2201, + LA_STATE_OFFSET = 2248, MAX_LA = 2, - NUM_RULES = 359, - NUM_NONTERMINALS = 122, - NUM_SYMBOLS = 229, + NUM_RULES = 364, + NUM_NONTERMINALS = 128, + NUM_SYMBOLS = 235, SEGMENT_SIZE = 8192, - START_STATE = 1631, + START_STATE = 1706, IDENTIFIER_SYMBOL = 0, EOFT_SYMBOL = 89, EOLT_SYMBOL = 89, - ACCEPT_ACTION = 1826, - ERROR_ACTION = 1842; + ACCEPT_ACTION = 1868, + ERROR_ACTION = 1884; public final static boolean BACKTRACK = true; diff --git a/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCSizeofExpressionParsersym.java b/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCSizeofExpressionParsersym.java index aec960a5dee..21d33305f26 100644 --- a/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCSizeofExpressionParsersym.java +++ b/upc/org.eclipse.cdt.core.parser.upc/src/org/eclipse/cdt/internal/core/dom/parser/upc/UPCSizeofExpressionParsersym.java @@ -15,68 +15,68 @@ package org.eclipse.cdt.internal.core.dom.parser.upc; public interface UPCSizeofExpressionParsersym { public final static int - TK_auto = 19, + TK_auto = 33, TK_break = 90, TK_case = 91, - TK_char = 38, + TK_char = 40, TK_const = 6, TK_continue = 92, TK_default = 93, TK_do = 94, - TK_double = 39, + TK_double = 41, TK_else = 95, - TK_enum = 52, - TK_extern = 20, - TK_float = 40, + TK_enum = 53, + TK_extern = 34, + TK_float = 42, TK_for = 96, TK_goto = 97, TK_if = 98, - TK_inline = 21, - TK_int = 41, - TK_long = 42, - TK_register = 22, + TK_inline = 35, + TK_int = 43, + TK_long = 44, + TK_register = 36, TK_restrict = 7, TK_return = 99, - TK_short = 43, - TK_signed = 44, - TK_sizeof = 23, - TK_static = 14, - TK_struct = 53, + TK_short = 45, + TK_signed = 46, + TK_sizeof = 18, + TK_static = 19, + TK_struct = 54, TK_switch = 100, - TK_typedef = 24, - TK_union = 54, - TK_unsigned = 45, - TK_void = 46, + TK_typedef = 37, + TK_union = 55, + TK_unsigned = 47, + TK_void = 48, TK_volatile = 8, TK_while = 101, - TK__Bool = 47, - TK__Complex = 48, - TK__Imaginary = 49, - TK_integer = 25, - TK_floating = 26, - TK_charconst = 27, - TK_stringlit = 28, + TK__Bool = 49, + TK__Complex = 50, + TK__Imaginary = 51, + TK_integer = 20, + TK_floating = 21, + TK_charconst = 22, + TK_stringlit = 23, TK_identifier = 1, TK_Completion = 3, TK_EndOfCompletion = 5, TK_Invalid = 102, - TK_LeftBracket = 15, + TK_LeftBracket = 14, TK_LeftParen = 2, - TK_LeftBrace = 37, + TK_LeftBrace = 24, TK_Dot = 61, TK_Arrow = 76, - TK_PlusPlus = 17, - TK_MinusMinus = 18, - TK_And = 16, + TK_PlusPlus = 16, + TK_MinusMinus = 17, + TK_And = 15, TK_Star = 4, TK_Plus = 12, TK_Minus = 13, - TK_Tilde = 29, - TK_Bang = 30, + TK_Tilde = 25, + TK_Bang = 26, TK_Slash = 62, TK_Percent = 63, - TK_RightShift = 57, - TK_LeftShift = 58, + TK_RightShift = 56, + TK_LeftShift = 57, TK_LT = 64, TK_GT = 65, TK_LE = 66, @@ -89,7 +89,7 @@ public interface UPCSizeofExpressionParsersym { TK_OrOr = 77, TK_Question = 78, TK_Colon = 68, - TK_DotDotDot = 60, + TK_DotDotDot = 59, TK_Assign = 69, TK_StarAssign = 79, TK_SlashAssign = 80, @@ -101,26 +101,26 @@ public interface UPCSizeofExpressionParsersym { TK_AndAssign = 86, TK_CaretAssign = 87, TK_OrAssign = 88, - TK_Comma = 55, - TK_RightBracket = 59, - TK_RightParen = 50, - TK_RightBrace = 51, + TK_Comma = 39, + TK_RightBracket = 58, + TK_RightParen = 38, + TK_RightBrace = 52, TK_SemiColon = 75, - TK_MYTHREAD = 31, - TK_THREADS = 32, - TK_UPC_MAX_BLOCKSIZE = 33, + TK_MYTHREAD = 27, + TK_THREADS = 28, + TK_UPC_MAX_BLOCKSIZE = 29, TK_relaxed = 9, TK_shared = 10, TK_strict = 11, TK_upc_barrier = 103, - TK_upc_localsizeof = 34, - TK_upc_blocksizeof = 35, - TK_upc_elemsizeof = 36, + TK_upc_localsizeof = 30, + TK_upc_blocksizeof = 31, + TK_upc_elemsizeof = 32, TK_upc_notify = 104, TK_upc_fence = 105, TK_upc_wait = 106, TK_upc_forall = 107, - TK_ERROR_TOKEN = 56, + TK_ERROR_TOKEN = 60, TK_EOF_TOKEN = 89; public final static String orderedTerminalSymbols[] = { @@ -138,21 +138,17 @@ public interface UPCSizeofExpressionParsersym { "strict", "Plus", "Minus", - "static", "LeftBracket", "And", "PlusPlus", "MinusMinus", - "auto", - "extern", - "inline", - "register", "sizeof", - "typedef", + "static", "integer", "floating", "charconst", "stringlit", + "LeftBrace", "Tilde", "Bang", "MYTHREAD", @@ -161,7 +157,13 @@ public interface UPCSizeofExpressionParsersym { "upc_localsizeof", "upc_blocksizeof", "upc_elemsizeof", - "LeftBrace", + "auto", + "extern", + "inline", + "register", + "typedef", + "RightParen", + "Comma", "char", "double", "float", @@ -174,17 +176,15 @@ public interface UPCSizeofExpressionParsersym { "_Bool", "_Complex", "_Imaginary", - "RightParen", "RightBrace", "enum", "struct", "union", - "Comma", - "ERROR_TOKEN", "RightShift", "LeftShift", "RightBracket", "DotDotDot", + "ERROR_TOKEN", "Dot", "Slash", "Percent", |