Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVivian Kong2010-05-12 13:19:17 -0400
committerVivian Kong2010-05-12 13:19:17 -0400
commit1b9307791131081a28cfb855a6484226911192ad (patch)
tree6acbfd8e67b0bdae422b091a21758df38f6fc3eb /lrparser/org.eclipse.cdt.core.lrparser
parent7411fe3feaa03f30c11ba79e1290451be9f7e8fd (diff)
downloadorg.eclipse.cdt-1b9307791131081a28cfb855a6484226911192ad.tar.gz
org.eclipse.cdt-1b9307791131081a28cfb855a6484226911192ad.tar.xz
org.eclipse.cdt-1b9307791131081a28cfb855a6484226911192ad.zip
Bug 312658 - Some c/c++ syntax cause content assist hanging, such as try-catch and do-while(head stream) - fix by John Liu
Diffstat (limited to 'lrparser/org.eclipse.cdt.core.lrparser')
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/grammar/c99/C99Grammar.g6
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPGrammar.g10
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/grammar/parserBuild.properties2
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/grammar/template/LRParserTemplate.g4
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/grammar/template/LRSecondaryParserTemplate.g2
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/BuildASTParserAction.java5
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/cpp/CPPBuildASTParserAction.java4
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionParser.java382
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionParserprs.java778
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionParsersym.java2
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99NoCastExpressionParser.java382
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99NoCastExpressionParserprs.java778
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99NoCastExpressionParsersym.java2
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99Parser.java378
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99Parserprs.java1222
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99Parsersym.java2
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99SizeofExpressionParser.java382
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99SizeofExpressionParserprs.java782
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99SizeofExpressionParsersym.java2
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionParser.java664
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionParserprs.java3782
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionParsersym.java60
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoCastExpressionParser.java664
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoCastExpressionParserprs.java3725
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoCastExpressionParsersym.java60
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoFunctionDeclaratorParser.java660
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoFunctionDeclaratorParserprs.java3784
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoFunctionDeclaratorParsersym.java60
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPParser.java660
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPParserprs.java3726
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPParsersym.java60
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPSizeofExpressionParser.java664
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPSizeofExpressionParserprs.java3781
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPSizeofExpressionParsersym.java60
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPTemplateTypeParameterParser.java664
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPTemplateTypeParameterParserprs.java3756
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPTemplateTypeParameterParsersym.java60
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCParser.java454
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCParserprs.java1740
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCParsersym.java2
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCSizeofExpressionParser.java450
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCSizeofExpressionParserprs.java1666
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gcc/GCCSizeofExpressionParsersym.java2
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPParser.java748
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPParserprs.java4859
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPParsersym.java62
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPSizeofExpressionParser.java744
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPSizeofExpressionParserprs.java4753
-rw-r--r--lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/gpp/GPPSizeofExpressionParsersym.java54
49 files changed, 23697 insertions, 23852 deletions
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/grammar/c99/C99Grammar.g b/lrparser/org.eclipse.cdt.core.lrparser/grammar/c99/C99Grammar.g
index 1ceea39326..7759f3a36d 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/grammar/c99/C99Grammar.g
+++ b/lrparser/org.eclipse.cdt.core.lrparser/grammar/c99/C99Grammar.g
@@ -1,5 +1,5 @@
-----------------------------------------------------------------------------------
--- Copyright (c) 2006, 2009 IBM Corporation and others.
+-- Copyright (c) 2006, 2010 IBM Corporation and others.
-- All rights reserved. This program and the accompanying materials
-- are made available under the terms of the Eclipse Public License v1.0
-- which accompanies this distribution, and is available at
@@ -440,7 +440,9 @@ expression_opt
iteration_statement
::= 'do' statement 'while' '(' expression ')' ';'
- /. $Build consumeStatementDoLoop(); $EndBuild ./
+ /. $Build consumeStatementDoLoop(true); $EndBuild ./
+ | 'do' statement
+ /. $Build consumeStatementDoLoop(false); $EndBuild ./
| 'while' '(' expression ')' statement
/. $Build consumeStatementWhileLoop(); $EndBuild ./
| 'for' '(' expression_opt ';' expression_opt ';' expression_opt ')' statement
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPGrammar.g b/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPGrammar.g
index d36a8bbfd0..5bd75a6a96 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPGrammar.g
+++ b/lrparser/org.eclipse.cdt.core.lrparser/grammar/cpp/CPPGrammar.g
@@ -1,5 +1,5 @@
----------------------------------------------------------------------------------
--- Copyright (c) 2006, 2009 IBM Corporation and others.
+-- Copyright (c) 2006, 2010 IBM Corporation and others.
-- All rights reserved. This program and the accompanying materials
-- are made available under the terms of the Eclipse Public License v1.0
-- which accompanies this distribution, and is available at
@@ -695,7 +695,9 @@ iteration_statement
::= 'while' '(' condition ')' statement
/. $Build consumeStatementWhileLoop(); $EndBuild ./
| 'do' statement 'while' '(' expression ')' ';'
- /. $Build consumeStatementDoLoop(); $EndBuild ./
+ /. $Build consumeStatementDoLoop(true); $EndBuild ./
+ | 'do' statement
+ /. $Build consumeStatementDoLoop(false); $EndBuild ./
| 'for' '(' for_init_statement condition_opt ';' expression_opt ')' statement
/. $Build consumeStatementForLoop(); $EndBuild ./
@@ -1615,7 +1617,9 @@ explicit_specialization
try_block
::= 'try' compound_statement <openscope-ast> handler_seq
- /. $Build consumeStatementTryBlock(); $EndBuild ./
+ /. $Build consumeStatementTryBlock(true); $EndBuild ./
+ | 'try' compound_statement
+ /. $Build consumeStatementTryBlock(false); $EndBuild ./
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/grammar/parserBuild.properties b/lrparser/org.eclipse.cdt.core.lrparser/grammar/parserBuild.properties
index 6c6b72825a..cc949e32c4 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/grammar/parserBuild.properties
+++ b/lrparser/org.eclipse.cdt.core.lrparser/grammar/parserBuild.properties
@@ -11,4 +11,4 @@
###############################################################################
lpg_exe=D:/lpg/lpgdistribution/lpgexe/lpg.exe
-lpg_template=D:/newWorkspace/CDT_LOCAL/org.eclipse.cdt.core.lrparser/grammar/template \ No newline at end of file
+lpg_template=D:/newWorkspace/cdt_70_ies/org.eclipse.cdt.core.lrparser/grammar/template \ No newline at end of file
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/grammar/template/LRParserTemplate.g b/lrparser/org.eclipse.cdt.core.lrparser/grammar/template/LRParserTemplate.g
index 9c7070f74b..877b5f4c73 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/grammar/template/LRParserTemplate.g
+++ b/lrparser/org.eclipse.cdt.core.lrparser/grammar/template/LRParserTemplate.g
@@ -1,5 +1,5 @@
----------------------------------------------------------------------------------
--- Copyright (c) 2006, 2009 IBM Corporation and others.
+-- Copyright (c) 2006, 2010 IBM Corporation and others.
-- All rights reserved. This program and the accompanying materials
-- are made available under the terms of the Eclipse Public License v1.0
-- which accompanies this distribution, and is available at
@@ -296,7 +296,7 @@ $End
$Notice
-- Copied into all files generated by LPG
/./*******************************************************************************
- * Copyright (c) 2006, 2009 IBM Corporation and others.
+ * Copyright (c) 2006, 2010 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/grammar/template/LRSecondaryParserTemplate.g b/lrparser/org.eclipse.cdt.core.lrparser/grammar/template/LRSecondaryParserTemplate.g
index 50c66497a5..a56bcdbf49 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/grammar/template/LRSecondaryParserTemplate.g
+++ b/lrparser/org.eclipse.cdt.core.lrparser/grammar/template/LRSecondaryParserTemplate.g
@@ -1,5 +1,5 @@
----------------------------------------------------------------------------------
--- Copyright (c) 2006, 2009 IBM Corporation and others.
+-- Copyright (c) 2006, 2010 IBM Corporation and others.
-- All rights reserved. This program and the accompanying materials
-- are made available under the terms of the Eclipse Public License v1.0
-- which accompanies this distribution, and is available at
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/BuildASTParserAction.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/BuildASTParserAction.java
index edc50aa2db..61da983fc9 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/BuildASTParserAction.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/BuildASTParserAction.java
@@ -584,9 +584,10 @@ public abstract class BuildASTParserAction extends AbstractParserAction {
/**
* iteration_statement_matched
* ::= 'do' statement 'while' '(' expression ')' ';'
+ * | 'do' statement
*/
- public void consumeStatementDoLoop() {
- IASTExpression condition = (IASTExpression) astStack.pop();
+ public void consumeStatementDoLoop(boolean hasWhileBlock) {
+ IASTExpression condition = hasWhileBlock? (IASTExpression) astStack.pop() : null;
IASTStatement body = (IASTStatement) astStack.pop();
IASTDoStatement stat = nodeFactory.newDoStatement(body, condition);
setOffsetAndLength(stat);
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/cpp/CPPBuildASTParserAction.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/cpp/CPPBuildASTParserAction.java
index f093bb1893..b9922fa014 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/cpp/CPPBuildASTParserAction.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/core/dom/lrparser/action/cpp/CPPBuildASTParserAction.java
@@ -652,8 +652,8 @@ public class CPPBuildASTParserAction extends BuildASTParserAction {
* try_block
* ::= 'try' compound_statement <openscope-ast> handler_seq
*/
- public void consumeStatementTryBlock() {
- List<Object> handlerSeq = astStack.closeScope();
+ public void consumeStatementTryBlock(boolean hasCatchBlock) {
+ List<Object> handlerSeq = hasCatchBlock ? astStack.closeScope() : Collections.emptyList();
IASTStatement body = (IASTStatement) astStack.pop();
ICPPASTTryBlockStatement tryStatement = nodeFactory.newTryBlockStatement(body);
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionParser.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionParser.java
index 08260cd771..2bf14923a4 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionParser.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionParser.java
@@ -1,5 +1,5 @@
/*******************************************************************************
-* Copyright (c) 2006, 2009 IBM Corporation and others.
+* Copyright (c) 2006, 2010 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -684,595 +684,601 @@ public C99ExpressionParser(ITokenStream stream, Map<String,String> properties) {
//
// Rule 118: iteration_statement ::= do statement while ( expression ) ;
//
- case 118: { action. consumeStatementDoLoop(); break;
+ case 118: { action. consumeStatementDoLoop(true); break;
}
//
- // Rule 119: iteration_statement ::= while ( expression ) statement
+ // Rule 119: iteration_statement ::= do statement
//
- case 119: { action. consumeStatementWhileLoop(); break;
+ case 119: { action. consumeStatementDoLoop(false); break;
}
//
- // Rule 120: iteration_statement ::= for ( expression_opt ; expression_opt ; expression_opt ) statement
+ // Rule 120: iteration_statement ::= while ( expression ) statement
//
- case 120: { action. consumeStatementForLoop(); break;
+ case 120: { action. consumeStatementWhileLoop(); break;
}
//
- // Rule 121: iteration_statement ::= for ( declaration expression_opt ; expression_opt ) statement
+ // Rule 121: iteration_statement ::= for ( expression_opt ; expression_opt ; expression_opt ) statement
//
case 121: { action. consumeStatementForLoop(); break;
}
//
- // Rule 122: jump_statement ::= goto identifier_token ;
+ // Rule 122: iteration_statement ::= for ( declaration expression_opt ; expression_opt ) statement
//
- case 122: { action. consumeStatementGoto(); break;
+ case 122: { action. consumeStatementForLoop(); break;
}
//
- // Rule 123: jump_statement ::= continue ;
+ // Rule 123: jump_statement ::= goto identifier_token ;
//
- case 123: { action. consumeStatementContinue(); break;
+ case 123: { action. consumeStatementGoto(); break;
}
//
- // Rule 124: jump_statement ::= break ;
+ // Rule 124: jump_statement ::= continue ;
//
- case 124: { action. consumeStatementBreak(); break;
+ case 124: { action. consumeStatementContinue(); break;
}
//
- // Rule 125: jump_statement ::= return ;
+ // Rule 125: jump_statement ::= break ;
//
- case 125: { action. consumeStatementReturn(false); break;
+ case 125: { action. consumeStatementBreak(); break;
}
//
- // Rule 126: jump_statement ::= return expression ;
+ // Rule 126: jump_statement ::= return ;
//
- case 126: { action. consumeStatementReturn(true); break;
+ case 126: { action. consumeStatementReturn(false); break;
}
//
- // Rule 127: declaration ::= declaration_specifiers ;
+ // Rule 127: jump_statement ::= return expression ;
//
- case 127: { action. consumeDeclarationSimple(false); break;
+ case 127: { action. consumeStatementReturn(true); break;
}
//
- // Rule 128: declaration ::= declaration_specifiers <openscope-ast> init_declarator_list ;
+ // Rule 128: declaration ::= declaration_specifiers ;
//
- case 128: { action. consumeDeclarationSimple(true); break;
+ case 128: { action. consumeDeclarationSimple(false); break;
}
//
- // Rule 129: declaration_specifiers ::= <openscope-ast> simple_declaration_specifiers
+ // Rule 129: declaration ::= declaration_specifiers <openscope-ast> init_declarator_list ;
//
- case 129: { action. consumeDeclarationSpecifiersSimple(); break;
+ case 129: { action. consumeDeclarationSimple(true); break;
}
//
- // Rule 130: declaration_specifiers ::= <openscope-ast> struct_or_union_declaration_specifiers
+ // Rule 130: declaration_specifiers ::= <openscope-ast> simple_declaration_specifiers
//
- case 130: { action. consumeDeclarationSpecifiersStructUnionEnum(); break;
+ case 130: { action. consumeDeclarationSpecifiersSimple(); break;
}
//
- // Rule 131: declaration_specifiers ::= <openscope-ast> elaborated_declaration_specifiers
+ // Rule 131: declaration_specifiers ::= <openscope-ast> struct_or_union_declaration_specifiers
//
case 131: { action. consumeDeclarationSpecifiersStructUnionEnum(); break;
}
//
- // Rule 132: declaration_specifiers ::= <openscope-ast> enum_declaration_specifiers
+ // Rule 132: declaration_specifiers ::= <openscope-ast> elaborated_declaration_specifiers
//
case 132: { action. consumeDeclarationSpecifiersStructUnionEnum(); break;
}
//
- // Rule 133: declaration_specifiers ::= <openscope-ast> typdef_name_declaration_specifiers
+ // Rule 133: declaration_specifiers ::= <openscope-ast> enum_declaration_specifiers
//
- case 133: { action. consumeDeclarationSpecifiersTypedefName(); break;
+ case 133: { action. consumeDeclarationSpecifiersStructUnionEnum(); break;
}
//
- // Rule 158: init_declarator ::= complete_declarator = initializer
+ // Rule 134: declaration_specifiers ::= <openscope-ast> typdef_name_declaration_specifiers
//
- case 158: { action. consumeDeclaratorWithInitializer(true); break;
+ case 134: { action. consumeDeclarationSpecifiersTypedefName(); break;
}
//
- // Rule 160: storage_class_specifier ::= storage_class_specifier_token
+ // Rule 159: init_declarator ::= complete_declarator = initializer
//
- case 160: { action. consumeToken(); break;
+ case 159: { action. consumeDeclaratorWithInitializer(true); break;
}
//
- // Rule 166: simple_type_specifier ::= simple_type_specifier_token
+ // Rule 161: storage_class_specifier ::= storage_class_specifier_token
//
- case 166: { action. consumeToken(); break;
+ case 161: { action. consumeToken(); break;
}
//
- // Rule 179: type_name_specifier ::= identifier_token
+ // Rule 167: simple_type_specifier ::= simple_type_specifier_token
//
- case 179: { action. consumeToken(); break;
+ case 167: { action. consumeToken(); break;
}
//
- // Rule 180: struct_or_union_specifier ::= struct_or_union struct_or_union_specifier_hook { <openscope-ast> struct_declaration_list_opt }
+ // Rule 180: type_name_specifier ::= identifier_token
//
- case 180: { action. consumeTypeSpecifierComposite(false); break;
+ case 180: { action. consumeToken(); break;
}
//
- // Rule 181: 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 }
+ // Rule 181: struct_or_union_specifier ::= struct_or_union struct_or_union_specifier_hook { <openscope-ast> struct_declaration_list_opt }
//
- case 181: { action. consumeTypeSpecifierComposite(true); break;
+ case 181: { action. consumeTypeSpecifierComposite(false); break;
}
//
- // Rule 186: elaborated_specifier ::= struct elaborated_specifier_hook identifier_token
+ // 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 186: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_struct); break;
+ case 182: { action. consumeTypeSpecifierComposite(true); break;
}
//
- // Rule 187: elaborated_specifier ::= union elaborated_specifier_hook identifier_token
+ // Rule 187: elaborated_specifier ::= struct elaborated_specifier_hook identifier_token
//
- case 187: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_union); break;
+ case 187: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_struct); break;
}
//
- // Rule 188: elaborated_specifier ::= enum elaborated_specifier_hook identifier_token
+ // Rule 188: elaborated_specifier ::= union elaborated_specifier_hook identifier_token
//
- case 188: { action. consumeTypeSpecifierElaborated(IASTElaboratedTypeSpecifier.k_enum); break;
+ case 188: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_union); break;
}
//
- // Rule 194: struct_declaration ::= specifier_qualifier_list <openscope-ast> struct_declarator_list ;
+ // Rule 189: elaborated_specifier ::= enum elaborated_specifier_hook identifier_token
//
- case 194: { action. consumeStructDeclaration(true); break;
+ case 189: { action. consumeTypeSpecifierElaborated(IASTElaboratedTypeSpecifier.k_enum); break;
}
//
- // Rule 195: struct_declaration ::= specifier_qualifier_list ;
+ // Rule 195: struct_declaration ::= specifier_qualifier_list <openscope-ast> struct_declarator_list ;
//
- case 195: { action. consumeStructDeclaration(false); break;
+ case 195: { action. consumeStructDeclaration(true); break;
}
//
- // Rule 196: struct_declaration ::= ERROR_TOKEN
+ // Rule 196: struct_declaration ::= specifier_qualifier_list ;
//
- case 196: { action. consumeDeclarationProblem(); break;
+ case 196: { action. consumeStructDeclaration(false); break;
}
//
- // Rule 202: struct_declarator ::= : constant_expression
+ // Rule 197: struct_declaration ::= ERROR_TOKEN
//
- case 202: { action. consumeBitField(false); break;
+ case 197: { action. consumeDeclarationProblem(); break;
}
//
- // Rule 203: struct_declarator ::= declarator : constant_expression
+ // Rule 203: struct_declarator ::= : constant_expression
//
- case 203: { action. consumeBitField(true); break;
+ case 203: { action. consumeBitField(false); break;
}
//
- // Rule 204: enum_specifier ::= enum enum_specifier_hook { <openscope-ast> enumerator_list_opt comma_opt }
+ // Rule 204: struct_declarator ::= declarator : constant_expression
//
- case 204: { action. consumeTypeSpecifierEnumeration(false); break;
+ case 204: { action. consumeBitField(true); break;
}
//
- // Rule 205: enum_specifier ::= enum enum_specifier_hook identifier_token { <openscope-ast> enumerator_list_opt comma_opt }
+ // Rule 205: enum_specifier ::= enum enum_specifier_hook { <openscope-ast> enumerator_list_opt comma_opt }
//
- case 205: { action. consumeTypeSpecifierEnumeration(true); break;
+ case 205: { action. consumeTypeSpecifierEnumeration(false); break;
}
//
- // Rule 211: enumerator ::= identifier_token
+ // Rule 206: enum_specifier ::= enum enum_specifier_hook identifier_token { <openscope-ast> enumerator_list_opt comma_opt }
//
- case 211: { action. consumeEnumerator(false); break;
+ case 206: { action. consumeTypeSpecifierEnumeration(true); break;
}
//
- // Rule 212: enumerator ::= identifier_token = constant_expression
+ // Rule 212: enumerator ::= identifier_token
//
- case 212: { action. consumeEnumerator(true); break;
+ case 212: { action. consumeEnumerator(false); break;
}
//
- // Rule 213: type_qualifier ::= type_qualifier_token
+ // Rule 213: enumerator ::= identifier_token = constant_expression
//
- case 213: { action. consumeToken(); break;
+ case 213: { action. consumeEnumerator(true); break;
}
//
- // Rule 217: function_specifier ::= inline
+ // Rule 214: type_qualifier ::= type_qualifier_token
//
- case 217: { action. consumeToken(); break;
+ case 214: { action. consumeToken(); break;
}
//
- // Rule 219: declarator ::= <openscope-ast> pointer_seq direct_declarator
+ // Rule 218: function_specifier ::= inline
//
- case 219: { action. consumeDeclaratorWithPointer(true); break;
+ case 218: { action. consumeToken(); break;
}
//
- // Rule 224: basic_direct_declarator ::= declarator_id_name
+ // Rule 220: declarator ::= <openscope-ast> pointer_seq direct_declarator
//
- case 224: { action. consumeDirectDeclaratorIdentifier(); break;
+ case 220: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 225: basic_direct_declarator ::= ( declarator )
+ // Rule 225: basic_direct_declarator ::= declarator_id_name
//
- case 225: { action. consumeDirectDeclaratorBracketed(); break;
+ case 225: { action. consumeDirectDeclaratorIdentifier(); break;
}
//
- // Rule 226: declarator_id_name ::= identifier
+ // Rule 226: basic_direct_declarator ::= ( declarator )
//
- case 226: { action. consumeIdentifierName(); break;
+ case 226: { action. consumeDirectDeclaratorBracketed(); break;
}
//
- // Rule 227: array_direct_declarator ::= basic_direct_declarator array_modifier
+ // Rule 227: declarator_id_name ::= identifier
//
- case 227: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ case 227: { action. consumeIdentifierName(); break;
}
//
- // Rule 228: array_direct_declarator ::= array_direct_declarator array_modifier
+ // Rule 228: array_direct_declarator ::= basic_direct_declarator array_modifier
//
case 228: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 230: function_direct_declarator ::= basic_direct_declarator ( <openscope-ast> parameter_type_list )
+ // Rule 229: array_direct_declarator ::= array_direct_declarator array_modifier
//
- case 230: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
+ case 229: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 231: function_direct_declarator ::= basic_direct_declarator ( )
+ // Rule 231: function_direct_declarator ::= basic_direct_declarator ( <openscope-ast> parameter_type_list )
//
- case 231: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
+ case 231: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
}
//
- // Rule 233: function_declarator ::= <openscope-ast> pointer_seq function_direct_declarator
+ // Rule 232: function_direct_declarator ::= basic_direct_declarator ( )
//
- case 233: { action. consumeDeclaratorWithPointer(true); break;
+ case 232: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
}
//
- // Rule 234: knr_direct_declarator ::= basic_direct_declarator ( <openscope-ast> identifier_list )
+ // Rule 234: function_declarator ::= <openscope-ast> pointer_seq function_direct_declarator
//
- case 234: { action. consumeDirectDeclaratorFunctionDeclaratorKnR(); break;
+ case 234: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 236: knr_function_declarator ::= <openscope-ast> pointer_seq knr_direct_declarator
+ // Rule 235: knr_direct_declarator ::= basic_direct_declarator ( <openscope-ast> identifier_list )
//
- case 236: { action. consumeDeclaratorWithPointer(true); break;
+ case 235: { action. consumeDirectDeclaratorFunctionDeclaratorKnR(); break;
}
//
- // Rule 237: identifier_list ::= identifier
+ // Rule 237: knr_function_declarator ::= <openscope-ast> pointer_seq knr_direct_declarator
//
- case 237: { action. consumeIdentifierKnR(); break;
+ case 237: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 238: identifier_list ::= identifier_list , identifier
+ // Rule 238: identifier_list ::= identifier
//
case 238: { action. consumeIdentifierKnR(); break;
}
//
- // Rule 239: array_modifier ::= [ ]
+ // Rule 239: identifier_list ::= identifier_list , identifier
//
- case 239: { action. consumeDirectDeclaratorArrayModifier(false); break;
+ case 239: { action. consumeIdentifierKnR(); break;
}
//
- // Rule 240: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers ]
+ // Rule 240: array_modifier ::= [ ]
//
- case 240: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, false); break;
+ case 240: { action. consumeDirectDeclaratorArrayModifier(false); break;
}
//
- // Rule 241: array_modifier ::= [ assignment_expression ]
+ // Rule 241: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers ]
//
- case 241: { action. consumeDirectDeclaratorArrayModifier(true); break;
+ case 241: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, false); break;
}
//
- // Rule 242: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers assignment_expression ]
+ // Rule 242: array_modifier ::= [ assignment_expression ]
//
- case 242: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, true); break;
+ case 242: { action. consumeDirectDeclaratorArrayModifier(true); break;
}
//
- // Rule 243: array_modifier ::= [ static assignment_expression ]
+ // Rule 243: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers assignment_expression ]
//
- case 243: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, false, true); break;
+ case 243: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, true); break;
}
//
- // Rule 244: array_modifier ::= [ static <openscope-ast> array_modifier_type_qualifiers assignment_expression ]
+ // Rule 244: array_modifier ::= [ static assignment_expression ]
//
- case 244: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break;
+ case 244: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, false, true); break;
}
//
- // Rule 245: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers static assignment_expression ]
+ // Rule 245: array_modifier ::= [ static <openscope-ast> array_modifier_type_qualifiers assignment_expression ]
//
case 245: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break;
}
//
- // Rule 246: array_modifier ::= [ * ]
+ // Rule 246: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers static assignment_expression ]
//
- case 246: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, false, false); break;
+ case 246: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break;
}
//
- // Rule 247: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers * ]
+ // Rule 247: array_modifier ::= [ * ]
//
- case 247: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, true, false); break;
+ case 247: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, false, false); break;
}
//
- // Rule 249: pointer_seq ::= pointer_hook * pointer_hook
+ // Rule 248: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers * ]
//
- case 249: { action. consumePointer(); break;
+ case 248: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, true, false); break;
}
//
- // Rule 250: pointer_seq ::= pointer_seq pointer_hook * pointer_hook
+ // Rule 250: pointer_seq ::= pointer_hook * pointer_hook
//
case 250: { action. consumePointer(); break;
}
//
- // Rule 251: pointer_seq ::= pointer_hook * pointer_hook <openscope-ast> type_qualifier_list
+ // Rule 251: pointer_seq ::= pointer_seq pointer_hook * pointer_hook
//
- case 251: { action. consumePointerTypeQualifierList(); break;
+ case 251: { action. consumePointer(); break;
}
//
- // Rule 252: pointer_seq ::= pointer_seq pointer_hook * pointer_hook <openscope-ast> type_qualifier_list
+ // Rule 252: pointer_seq ::= pointer_hook * pointer_hook <openscope-ast> type_qualifier_list
//
case 252: { action. consumePointerTypeQualifierList(); break;
}
//
- // Rule 256: parameter_type_list ::= parameter_list
+ // Rule 253: pointer_seq ::= pointer_seq pointer_hook * pointer_hook <openscope-ast> type_qualifier_list
//
- case 256: { action. consumeEmpty(); break;
+ case 253: { action. consumePointerTypeQualifierList(); break;
}
//
- // Rule 257: parameter_type_list ::= parameter_list , ...
+ // Rule 257: parameter_type_list ::= parameter_list
//
- case 257: { action. consumePlaceHolder(); break;
+ case 257: { action. consumeEmpty(); break;
}
//
- // Rule 258: parameter_type_list ::= ...
+ // Rule 258: parameter_type_list ::= parameter_list , ...
//
case 258: { action. consumePlaceHolder(); break;
}
//
- // Rule 261: parameter_declaration ::= declaration_specifiers complete_parameter_declarator
+ // Rule 259: parameter_type_list ::= ...
//
- case 261: { action. consumeParameterDeclaration(); break;
+ case 259: { action. consumePlaceHolder(); break;
}
//
- // Rule 262: parameter_declaration ::= declaration_specifiers
+ // Rule 262: parameter_declaration ::= declaration_specifiers complete_parameter_declarator
//
- case 262: { action. consumeParameterDeclarationWithoutDeclarator(); break;
+ case 262: { action. consumeParameterDeclaration(); break;
}
//
- // Rule 265: type_id ::= specifier_qualifier_list
+ // Rule 263: parameter_declaration ::= declaration_specifiers
//
- case 265: { action. consumeTypeId(false); break;
+ case 263: { action. consumeParameterDeclarationWithoutDeclarator(); break;
}
//
- // Rule 266: type_id ::= specifier_qualifier_list abstract_declarator
+ // Rule 266: type_id ::= specifier_qualifier_list
//
- case 266: { action. consumeTypeId(true); break;
+ case 266: { action. consumeTypeId(false); break;
}
//
- // Rule 268: abstract_declarator ::= <openscope-ast> pointer_seq
+ // Rule 267: type_id ::= specifier_qualifier_list abstract_declarator
//
- case 268: { action. consumeDeclaratorWithPointer(false); break;
+ case 267: { action. consumeTypeId(true); break;
}
//
- // Rule 269: abstract_declarator ::= <openscope-ast> pointer_seq direct_abstract_declarator
+ // Rule 269: abstract_declarator ::= <openscope-ast> pointer_seq
//
- case 269: { action. consumeDeclaratorWithPointer(true); break;
+ case 269: { action. consumeDeclaratorWithPointer(false); break;
}
//
- // Rule 273: basic_direct_abstract_declarator ::= ( abstract_declarator )
+ // Rule 270: abstract_declarator ::= <openscope-ast> pointer_seq direct_abstract_declarator
//
- case 273: { action. consumeDirectDeclaratorBracketed(); break;
+ case 270: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 274: array_direct_abstract_declarator ::= array_modifier
+ // Rule 274: basic_direct_abstract_declarator ::= ( abstract_declarator )
//
- case 274: { action. consumeDirectDeclaratorArrayDeclarator(false); break;
+ case 274: { action. consumeDirectDeclaratorBracketed(); break;
}
//
- // Rule 275: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier
+ // Rule 275: array_direct_abstract_declarator ::= array_modifier
//
- case 275: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ case 275: { action. consumeDirectDeclaratorArrayDeclarator(false); break;
}
//
- // Rule 276: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier
+ // Rule 276: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier
//
case 276: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 277: function_direct_abstract_declarator ::= ( )
+ // Rule 277: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier
//
- case 277: { action. consumeDirectDeclaratorFunctionDeclarator(false, false); break;
+ case 277: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ }
+
+ //
+ // Rule 278: function_direct_abstract_declarator ::= ( )
+ //
+ case 278: { action. consumeDirectDeclaratorFunctionDeclarator(false, false); break;
}
//
- // Rule 278: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( )
+ // Rule 279: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( )
//
- case 278: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
+ case 279: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
}
//
- // Rule 279: function_direct_abstract_declarator ::= ( <openscope-ast> parameter_type_list )
+ // Rule 280: function_direct_abstract_declarator ::= ( <openscope-ast> parameter_type_list )
//
- case 279: { action. consumeDirectDeclaratorFunctionDeclarator(false, true); break;
+ case 280: { action. consumeDirectDeclaratorFunctionDeclarator(false, true); break;
}
//
- // Rule 280: 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 280: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
+ case 281: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
}
//
- // Rule 281: initializer ::= assignment_expression
+ // Rule 282: initializer ::= assignment_expression
//
- case 281: { action. consumeInitializer(); break;
+ case 282: { action. consumeInitializer(); break;
}
//
- // Rule 283: initializer_list ::= start_initializer_list { <openscope-ast> initializer_seq comma_opt } end_initializer_list
+ // Rule 284: initializer_list ::= start_initializer_list { <openscope-ast> initializer_seq comma_opt } end_initializer_list
//
- case 283: { action. consumeInitializerList(); break;
+ case 284: { action. consumeInitializerList(); break;
}
//
- // Rule 284: initializer_list ::= { <openscope-ast> }
+ // Rule 285: initializer_list ::= { <openscope-ast> }
//
- case 284: { action. consumeInitializerList(); break;
+ case 285: { action. consumeInitializerList(); break;
}
//
- // Rule 285: start_initializer_list ::= $Empty
+ // Rule 286: start_initializer_list ::= $Empty
//
- case 285: { action. initializerListStart(); break;
+ case 286: { action. initializerListStart(); break;
}
//
- // Rule 286: end_initializer_list ::= $Empty
+ // Rule 287: end_initializer_list ::= $Empty
//
- case 286: { action. initializerListEnd(); break;
+ case 287: { action. initializerListEnd(); break;
}
//
- // Rule 291: designated_initializer ::= <openscope-ast> designation = initializer
+ // Rule 292: designated_initializer ::= <openscope-ast> designation = initializer
//
- case 291: { action. consumeInitializerDesignated(); break;
+ case 292: { action. consumeInitializerDesignated(); break;
}
//
- // Rule 295: designator_base ::= [ constant_expression ]
+ // Rule 296: designator_base ::= [ constant_expression ]
//
- case 295: { action. consumeDesignatorArray(); break;
+ case 296: { action. consumeDesignatorArray(); break;
}
//
- // Rule 296: designator_base ::= . identifier_token
+ // Rule 297: designator_base ::= . identifier_token
//
- case 296: { action. consumeDesignatorField(); break;
+ case 297: { action. consumeDesignatorField(); break;
}
//
- // Rule 297: designator ::= [ constant_expression ]
+ // Rule 298: designator ::= [ constant_expression ]
//
- case 297: { action. consumeDesignatorArray(); break;
+ case 298: { action. consumeDesignatorArray(); break;
}
//
- // Rule 298: designator ::= . identifier_token
+ // Rule 299: designator ::= . identifier_token
//
- case 298: { action. consumeDesignatorField(); break;
+ case 299: { action. consumeDesignatorField(); break;
}
//
- // Rule 299: translation_unit ::= external_declaration_list
+ // Rule 300: translation_unit ::= external_declaration_list
//
- case 299: { action. consumeTranslationUnit(); break;
+ case 300: { action. consumeTranslationUnit(); break;
}
//
- // Rule 300: translation_unit ::= $Empty
+ // Rule 301: translation_unit ::= $Empty
//
- case 300: { action. consumeTranslationUnit(); break;
+ case 301: { action. consumeTranslationUnit(); break;
}
//
- // Rule 305: external_declaration ::= ;
+ // Rule 306: external_declaration ::= ;
//
- case 305: { action. consumeDeclarationEmpty(); break;
+ case 306: { action. consumeDeclarationEmpty(); break;
}
//
- // Rule 306: external_declaration ::= ERROR_TOKEN
+ // Rule 307: external_declaration ::= ERROR_TOKEN
//
- case 306: { action. consumeDeclarationProblem(); break;
+ case 307: { action. consumeDeclarationProblem(); break;
}
//
- // Rule 310: function_definition ::= <openscope-ast> function_declarator function_body
+ // Rule 311: function_definition ::= <openscope-ast> function_declarator function_body
//
- case 310: { action. consumeFunctionDefinition(false); break;
+ case 311: { action. consumeFunctionDefinition(false); break;
}
//
- // Rule 311: 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 311: { action. consumeFunctionDefinitionKnR(); break;
+ case 312: { action. consumeFunctionDefinitionKnR(); break;
}
//
- // Rule 312: normal_function_definition ::= declaration_specifiers <openscope-ast> function_declarator function_body
+ // Rule 313: normal_function_definition ::= declaration_specifiers <openscope-ast> function_declarator function_body
//
- case 312: { action. consumeFunctionDefinition(true); break;
+ case 313: { action. consumeFunctionDefinition(true); break;
}
//
- // Rule 313: function_body ::= { }
+ // Rule 314: function_body ::= { }
//
- case 313: { action. consumeStatementCompoundStatement(false); break;
+ case 314: { action. consumeStatementCompoundStatement(false); break;
}
//
- // Rule 314: function_body ::= { <openscope-ast> block_item_list }
+ // Rule 315: function_body ::= { <openscope-ast> block_item_list }
//
- case 314: { action. consumeStatementCompoundStatement(true); break;
+ case 315: { action. consumeStatementCompoundStatement(true); break;
}
//
- // Rule 316: expression_parser_start ::= ERROR_TOKEN
+ // Rule 317: expression_parser_start ::= ERROR_TOKEN
//
- case 316: { action. consumeEmpty(); break;
+ case 317: { action. consumeEmpty(); break;
}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionParserprs.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionParserprs.java
index f2469d12fa..b03d8c092b 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionParserprs.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionParserprs.java
@@ -1,5 +1,5 @@
/*******************************************************************************
-* Copyright (c) 2006, 2009 IBM Corporation and others.
+* Copyright (c) 2006, 2010 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -45,171 +45,171 @@ public class C99ExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C9
3,3,3,3,3,3,1,1,2,1,
0,1,3,1,1,1,1,1,1,1,
1,3,4,3,2,4,1,2,1,1,
- 1,2,5,7,5,1,0,7,5,9,
- 8,3,2,2,2,3,2,4,2,2,
- 2,2,2,1,1,1,1,2,1,2,
- 2,2,1,2,2,1,2,2,1,2,
- 2,1,2,2,1,3,1,3,1,1,
+ 1,2,5,7,5,1,0,7,2,5,
+ 9,8,3,2,2,2,3,2,4,2,
+ 2,2,2,2,1,1,1,1,2,1,
+ 2,2,2,1,2,2,1,2,2,1,
+ 2,2,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,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,3,4,
- 5,6,0,1,2,1,3,1,1,3,
- 2,1,1,1,1,2,1,2,3,1,
- 1,1,3,1,2,2,2,3,4,5,
- 1,1,7,3,0,0,1,1,3,3,
- 4,1,1,2,3,2,3,2,1,0,
- 1,2,1,1,1,1,1,2,1,3,
- 6,4,2,4,1,1,-37,0,0,0,
- 0,0,0,0,0,0,0,-2,0,0,
- 0,0,0,0,0,0,0,-137,0,0,
- -4,-159,-118,0,0,0,0,0,-74,0,
+ 1,1,1,1,1,1,1,1,1,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,3,
+ 4,5,6,0,1,2,1,3,1,1,
+ 3,2,1,1,1,1,2,1,2,3,
+ 1,1,1,3,1,2,2,2,3,4,
+ 5,1,1,7,3,0,0,1,1,3,
+ 3,4,1,1,2,3,2,3,2,1,
+ 0,1,2,1,1,1,1,1,2,1,
+ 3,6,4,2,4,1,1,-37,0,0,
+ 0,0,0,0,0,0,0,0,-2,0,
+ 0,0,0,0,0,0,0,0,-137,0,
+ 0,-4,-159,-118,0,0,0,0,0,-74,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-14,0,-30,0,-31,0,0,0,0,
- 0,-16,0,-80,-119,0,-120,0,0,0,
- 0,0,0,0,0,-141,0,0,0,0,
+ 0,0,-14,0,-30,0,-31,0,0,0,
+ 0,0,-16,0,-80,-119,0,-120,0,0,
+ 0,0,0,0,0,0,-141,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-3,0,0,0,
+ 0,0,0,0,0,0,0,-3,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-105,-124,0,0,-191,0,-17,-131,-130,
+ 0,0,-105,-124,0,0,-191,0,-17,-131,
+ -130,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-5,0,0,0,0,
+ 0,0,0,0,0,-121,0,-122,0,0,
+ 0,0,-177,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-5,0,0,0,0,0,
- 0,0,0,0,-121,0,-122,0,0,0,
- 0,-177,0,0,0,0,0,0,0,0,
+ 0,0,0,-111,0,0,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,-179,0,-194,0,-18,
+ 0,-19,0,-20,-21,-22,-192,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-179,0,-194,0,-18,0,
- -19,0,-20,-21,-22,-192,0,0,0,0,
+ 0,0,0,0,0,0,0,-134,0,-38,
+ 0,0,0,0,0,0,0,0,0,-39,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-134,0,-38,0,
- 0,0,0,0,0,0,0,0,-39,0,
+ 0,-23,-109,-24,0,0,0,0,0,-71,
+ -55,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -23,-109,-24,0,0,0,0,0,-71,-55,
+ 0,0,-25,0,-107,-26,-88,-89,0,0,
+ 0,0,-90,0,-91,0,0,0,0,0,
+ 0,0,0,0,0,0,-27,0,0,0,
+ 0,0,0,0,0,0,0,-34,0,0,
+ 0,0,0,0,0,0,0,-57,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-58,0,
+ 0,0,0,0,0,0,0,0,0,-35,
+ 0,0,0,0,0,0,0,0,0,-59,
0,0,0,0,0,0,0,0,0,0,
- 0,-25,0,-107,-26,-88,-89,0,0,0,
- 0,-90,0,-91,0,0,0,0,0,0,
- 0,0,0,0,0,-27,0,0,0,0,
- 0,0,0,0,0,0,-34,0,0,0,
- 0,0,0,0,0,0,-57,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-58,0,0,
- 0,0,0,0,0,0,0,0,-35,0,
- 0,0,0,0,0,0,0,0,-59,0,
+ -60,0,0,0,0,0,0,0,0,0,
+ 0,-68,0,0,0,0,0,0,0,0,
+ 0,-61,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-60,
+ 0,0,-62,0,0,0,0,0,0,0,
+ 0,0,0,-69,0,0,0,0,0,0,
+ 0,0,0,-63,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -68,0,0,0,0,0,0,0,0,0,
- -61,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-64,0,0,0,0,0,
+ 0,0,0,0,0,-70,0,0,0,0,
+ 0,0,0,0,0,-65,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-62,0,0,0,0,0,0,0,0,
- 0,0,-69,0,0,0,0,0,0,0,
- 0,0,-63,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-66,0,0,0,
+ 0,0,0,0,0,0,0,-115,0,0,
+ 0,0,0,0,0,0,0,-67,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-64,0,0,0,0,0,0,
- 0,0,0,0,-70,0,0,0,0,0,
- 0,0,0,0,-65,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-123,0,
+ 0,0,0,0,0,0,0,0,0,-132,
+ 0,0,0,0,0,0,0,0,0,-144,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-66,0,0,0,0,
- 0,0,0,0,0,0,-115,0,0,0,
- 0,0,0,0,0,0,-67,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-123,0,0,
- 0,0,0,0,0,0,0,0,-132,0,
- 0,0,0,0,0,0,0,0,-144,0,
+ -145,0,0,0,0,0,0,0,0,0,
+ 0,-153,0,0,0,0,0,0,0,0,
+ 0,-180,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-145,
+ 0,-189,0,0,0,0,0,0,0,0,
+ 0,0,-92,0,0,0,0,0,0,0,
+ 0,-6,0,0,0,0,0,0,0,-93,
+ 0,-7,0,0,0,0,0,0,0,-195,
0,0,0,0,0,0,0,0,0,0,
- -153,0,0,0,0,0,0,0,0,0,
- -180,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-201,
0,0,0,0,0,0,0,0,0,0,
- -189,0,0,0,0,0,0,0,0,0,
- 0,-92,0,0,0,0,0,0,0,0,
- -6,0,0,0,0,0,0,0,-93,0,
- -7,0,0,0,0,0,0,0,-195,0,
+ -94,0,0,0,0,0,0,0,0,-8,
+ 0,0,0,0,0,0,0,-200,0,-9,
+ 0,0,0,0,0,0,0,-209,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-201,0,
- 0,0,0,0,0,0,0,0,0,-94,
- 0,0,0,0,0,0,0,0,-8,0,
- 0,0,0,0,0,0,-200,0,-9,0,
- 0,0,0,0,0,0,-209,0,0,0,
+ 0,0,0,0,0,0,0,-133,-47,0,
+ 0,0,0,0,0,0,0,0,0,-49,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-133,-47,0,0,
- 0,0,0,0,0,0,0,0,-49,0,
- 0,0,0,0,0,0,0,0,0,-76,
- 0,0,0,-95,-73,0,-148,-78,-125,0,
- 0,0,0,0,0,0,0,0,-96,0,
- 0,0,0,0,-112,0,0,0,-77,0,
- 0,0,0,-149,0,0,0,0,0,0,
- 0,0,0,0,0,0,-117,-166,0,-97,
+ -76,0,0,0,-95,-73,0,-148,-78,-125,
+ 0,0,0,0,0,0,0,0,0,-96,
+ 0,0,0,0,0,-112,0,0,0,-77,
+ 0,0,0,0,-149,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-117,-166,0,
+ -97,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-157,0,0,-158,-98,0,0,
+ -82,0,-56,0,0,0,0,0,0,0,
+ 0,0,0,-106,0,0,0,0,0,-52,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-157,0,0,-158,-98,0,0,-82,
- 0,-56,0,0,0,0,0,0,0,0,
- 0,0,-106,0,0,0,0,0,-52,0,
- 0,0,0,0,0,0,0,0,0,-183,
- 0,0,0,0,-87,0,-53,0,0,0,
- 0,0,0,0,0,0,0,-167,0,0,
- 0,0,0,-129,0,0,0,0,-1,-138,
- 0,0,0,0,0,0,0,-99,-186,0,
- 0,-181,-100,0,0,0,0,0,-170,0,
+ -183,0,0,0,0,-87,0,-53,0,0,
+ 0,0,0,0,0,0,0,0,-167,0,
+ 0,0,0,0,-129,0,0,0,0,-1,
+ -138,0,0,0,0,0,0,0,-99,-186,
+ 0,0,-181,-100,0,0,0,0,0,-170,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-48,0,
- 0,0,0,0,0,0,0,0,0,-50,
+ 0,0,0,0,0,0,0,0,0,-48,
0,0,0,0,0,0,0,0,0,0,
- -196,0,-51,0,0,0,0,0,0,0,
- 0,0,0,-208,0,0,-127,-140,0,0,
- 0,-146,0,0,0,-101,-102,-103,0,0,
- -43,0,0,0,0,0,0,0,0,0,
- 0,0,-104,0,-108,0,0,0,0,0,
- 0,0,0,-10,0,0,0,0,0,0,
- 0,-110,-83,0,-44,0,0,0,0,0,
- 0,0,0,0,0,-45,0,0,0,0,
- 0,0,0,0,0,0,-72,0,0,0,
- 0,0,0,0,0,0,-46,0,0,0,
- 0,0,0,0,0,0,0,-203,-171,-75,
- -11,0,0,0,0,0,0,0,0,0,
- 0,-12,0,0,0,0,0,0,0,0,
- 0,-126,-135,0,0,0,-143,-156,-160,-142,
+ -50,0,0,0,0,0,0,0,0,0,
+ 0,-196,0,-51,0,0,0,0,0,0,
+ 0,0,0,0,-208,0,0,-127,-140,0,
+ 0,0,-146,0,0,0,-101,-102,-103,0,
+ 0,-43,0,0,0,0,0,0,0,0,
+ 0,0,0,-104,0,-108,0,0,0,0,
+ 0,0,0,0,-10,0,0,0,0,0,
+ 0,0,-110,-83,0,-44,0,0,0,0,
+ 0,0,0,0,0,0,-45,0,0,0,
+ 0,0,0,0,0,0,0,-72,0,0,
+ 0,0,0,0,0,0,0,-46,0,0,
+ 0,0,0,0,0,0,0,0,-203,-171,
+ -75,-11,0,0,0,0,0,0,0,0,
+ 0,0,-12,0,0,0,0,0,0,0,
+ 0,0,-126,-135,0,0,0,-143,-156,-160,
+ -142,0,0,0,0,0,0,0,0,0,
+ 0,-210,0,-150,0,0,0,0,0,-114,
+ 0,0,0,0,0,0,0,0,0,-147,
0,0,0,0,0,0,0,0,0,0,
- -210,0,-150,0,0,0,0,0,-114,0,
- 0,0,0,0,0,0,0,0,-147,0,
- 0,0,0,0,0,0,0,0,0,-36,
- -113,-139,0,0,0,0,0,0,0,0,
- 0,-169,0,-40,0,0,0,0,0,0,
- 0,-151,0,0,-154,0,-41,0,0,0,
- 0,0,0,0,-42,0,0,0,0,0,
- 0,0,-116,0,0,0,0,-162,0,-165,
- -168,0,-164,0,-32,-173,0,0,-187,-174,
- 0,0,-190,0,-15,0,-163,0,-176,0,
- -175,0,0,0,0,0,0,-13,0,0,
- 0,0,0,0,-28,0,0,-29,-178,0,
- 0,-128,-155,0,0,0,0,0,0,0,
- 0,0,-202,0,0,0,0,0,0,0,
- -79,-207,0,0,0,0,0,0,0,0,
- -172,0,-81,0,-85,0,-84,0,0,0,
- 0,0,0,0,0,0,-86,-188,0,0,
+ -36,-113,-139,0,0,0,0,0,0,0,
+ 0,0,-169,0,-40,0,0,0,0,0,
+ 0,0,-151,0,0,-154,0,-41,0,0,
+ 0,0,0,0,0,-42,0,0,0,0,
+ 0,0,0,-116,0,0,0,0,-162,0,
+ -165,-168,0,-164,0,-32,-173,0,0,-187,
+ -174,0,0,-190,0,-15,0,-163,0,-176,
+ 0,-175,0,0,0,0,0,0,-13,0,
+ 0,0,0,0,0,-28,0,0,-29,-178,
+ 0,0,-128,-155,0,0,0,0,0,0,
+ 0,0,0,-202,0,0,0,0,0,0,
+ 0,-79,-207,0,0,0,0,0,0,0,
+ 0,-172,0,-81,0,-85,0,-84,0,0,
+ 0,0,0,0,0,0,0,-86,-188,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-197,-184,-185,0,0,0,0,-136,-33,
- -54,0,0,0,0,-152,0,0,-204,0,
- 0,0,0,0,-199,-161,0,0,0,0,
- -182,0,-205,0,-193,0,0,-206,0,0,
- 0,0,0,0,0,0,0,0,0,-198,
+ 0,0,-197,-184,-185,0,0,0,0,-136,
+ -33,-54,0,0,0,0,-152,0,0,-204,
+ 0,0,0,0,0,-199,-161,0,0,0,
+ 0,-182,0,-205,0,-193,0,0,-206,0,
0,0,0,0,0,0,0,0,0,0,
+ -198,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,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,171 +231,171 @@ public class C99ExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C9
88,88,72,72,49,104,104,104,104,104,
104,104,105,105,105,106,106,111,111,112,
112,107,107,108,108,108,114,114,109,109,
- 109,109,110,110,110,110,110,113,113,25,
- 25,25,25,25,28,28,28,78,78,73,
- 73,73,73,74,74,74,75,75,75,76,
- 76,76,77,77,77,115,115,116,116,117,
- 29,31,31,31,31,31,53,54,54,54,
- 54,54,54,54,54,54,54,54,54,64,
- 61,61,89,90,66,66,62,62,62,67,
- 79,79,80,80,68,68,68,43,91,91,
- 81,82,82,82,63,63,92,83,83,84,
- 84,69,69,22,23,23,23,30,50,50,
- 33,33,33,33,36,36,38,34,34,35,
- 39,39,118,118,37,119,119,93,93,26,
- 26,26,26,26,26,26,26,26,85,51,
- 51,51,51,27,56,56,55,55,55,57,
- 57,52,52,94,94,59,59,58,58,58,
- 44,44,44,45,46,46,46,47,47,47,
- 47,65,65,42,42,48,96,95,95,95,
- 95,86,97,98,98,99,99,100,100,120,
- 120,121,121,122,122,122,122,124,124,123,
- 123,123,125,126,126,87,87,1,626,17,
- 21,18,372,625,45,448,382,541,31,539,
- 544,543,591,545,622,593,75,92,124,135,
- 213,670,629,596,338,137,134,136,160,275,
- 20,17,21,18,372,625,45,448,382,541,
- 1501,539,544,543,591,545,622,593,75,1145,
- 139,166,579,239,201,31,201,31,143,146,
- 149,152,57,384,118,201,187,201,186,341,
- 1128,1611,1623,1627,1637,1225,434,20,17,21,
- 18,372,625,45,448,382,541,342,539,544,
- 543,591,545,622,593,75,281,482,20,17,
- 21,18,372,625,45,448,382,541,1525,539,
- 544,543,591,545,622,593,75,92,282,1589,
- 1262,293,97,518,1365,25,158,24,157,695,
- 299,20,17,21,18,372,625,45,448,382,
- 541,287,539,544,543,591,545,622,593,75,
- 1342,255,213,343,240,506,20,17,21,18,
- 372,41,288,284,28,662,1502,201,188,341,
- 1365,1186,332,20,17,21,18,372,625,45,
- 448,382,541,342,539,544,543,591,545,622,
- 593,75,281,554,20,17,21,18,372,625,
- 45,448,382,541,1592,539,544,543,591,545,
- 622,593,75,1244,282,201,296,201,298,6,
- 1365,30,283,589,200,191,458,20,17,21,
- 18,372,625,45,448,382,541,289,539,544,
- 543,591,545,622,593,75,281,189,179,482,
- 20,17,21,18,372,43,45,627,290,482,
- 20,17,21,18,372,43,45,632,282,135,
- 213,344,242,243,1365,137,134,136,160,104,
- 482,20,17,21,18,372,43,45,448,382,
- 541,291,539,544,543,591,545,1348,274,1452,
- 139,166,171,22,14,547,578,194,143,146,
- 149,152,199,384,416,443,269,1149,1120,272,
- 1128,1611,1623,1627,1637,1225,482,20,17,21,
- 18,372,625,45,448,382,541,489,539,544,
- 543,591,545,622,593,75,93,482,20,17,
- 21,18,372,625,45,448,382,541,1407,539,
- 544,543,591,545,622,593,75,86,482,20,
- 17,21,18,372,625,45,448,382,541,489,
- 539,544,543,591,545,622,593,75,85,482,
- 20,17,21,18,372,625,45,448,382,541,
- 19,539,544,543,591,545,622,593,75,84,
- 482,20,17,21,18,372,625,45,448,382,
- 541,489,539,544,543,591,545,622,593,75,
- 83,482,20,17,21,18,372,625,45,448,
- 382,541,442,539,544,543,591,545,622,593,
- 75,82,482,20,17,21,18,372,625,45,
- 448,382,541,489,539,544,543,591,545,622,
- 593,75,81,482,20,17,21,18,372,625,
- 45,448,382,541,1203,539,544,543,591,545,
- 622,593,75,80,482,20,17,21,18,372,
- 625,45,448,382,541,489,539,544,543,591,
- 545,622,593,75,79,482,20,17,21,18,
- 372,625,45,448,382,541,23,539,544,543,
- 591,545,622,593,75,78,482,20,17,21,
- 18,372,625,45,448,382,541,489,539,544,
- 543,591,545,622,593,75,77,482,20,17,
- 21,18,372,625,45,448,382,541,273,539,
- 544,543,591,545,622,593,75,76,482,20,
- 17,21,18,372,625,45,448,382,541,489,
- 539,544,543,591,545,622,593,75,74,482,
- 20,17,21,18,372,625,45,448,382,541,
- 279,539,544,543,591,545,622,593,75,1548,
- 482,20,17,21,18,372,625,45,448,382,
- 541,489,539,544,543,591,545,622,593,75,
- 1567,482,20,17,21,18,372,43,45,448,
- 382,541,280,539,544,543,591,545,622,593,
- 94,482,20,17,21,18,372,43,45,448,
- 382,541,466,539,544,543,591,545,622,593,
- 94,482,20,17,21,18,372,43,40,488,
- 1695,482,20,17,21,18,372,43,39,482,
- 20,17,21,18,372,43,45,448,382,541,
- 212,539,544,543,591,545,622,593,94,482,
- 20,17,21,18,372,43,45,448,382,541,
- 490,539,544,543,591,545,622,593,94,482,
- 20,17,21,18,372,43,38,446,1698,482,
- 20,17,21,18,372,43,37,482,20,17,
- 21,18,372,43,45,448,382,541,202,539,
- 544,543,591,545,622,593,94,113,482,20,
- 17,21,18,372,43,45,448,1124,1522,482,
- 20,17,21,18,372,43,45,448,382,541,
- 144,539,1170,274,241,44,203,207,232,14,
- 218,1154,221,1473,223,224,229,194,1550,601,
- 396,267,1149,1120,272,104,275,263,277,327,
- 135,213,1382,274,499,264,142,134,136,160,
- 218,1154,221,1473,223,224,229,679,679,241,
- 245,267,1149,1120,272,276,592,1553,1669,1663,
- 228,141,166,559,1560,867,712,13,278,231,
- 387,261,482,20,17,21,18,372,43,45,
- 448,382,541,205,539,544,543,591,1363,482,
- 20,17,21,18,372,43,45,448,382,541,
- 710,539,544,543,1263,189,179,482,20,17,
- 21,18,372,43,45,448,382,541,151,539,
- 544,1346,255,213,104,28,1569,135,213,382,
- 14,1365,209,138,134,136,160,385,50,281,
- 417,1593,630,637,274,1452,1556,1571,243,421,
- 1679,219,1154,221,1473,223,224,229,140,166,
- 1259,88,269,1149,1120,272,144,147,150,153,
- 315,384,218,1154,221,1473,223,224,229,482,
- 20,17,21,18,372,43,45,448,1139,1603,
- 482,20,17,21,18,372,43,45,448,382,
- 541,719,1187,482,20,17,21,18,372,43,
- 45,448,382,541,281,1258,328,44,14,195,
- 198,200,104,255,213,1679,697,305,324,1183,
- 1067,482,20,17,21,18,372,43,45,448,
- 382,634,294,671,1457,615,242,218,1154,221,
- 1473,223,224,229,482,20,17,21,18,372,
- 43,36,676,414,1603,482,20,17,21,18,
- 372,43,45,448,382,992,482,20,17,21,
- 18,372,43,45,448,382,1009,409,20,17,
- 21,18,372,43,44,199,200,482,20,17,
- 21,18,372,43,45,448,382,1050,612,95,
- 326,482,20,17,21,18,372,43,35,1679,
- 567,1543,530,20,17,21,18,372,34,28,
- 387,277,733,711,197,1365,274,698,14,707,
- 44,218,1154,221,1473,223,224,229,1686,1621,
- 1691,728,1269,720,267,1149,1120,272,1553,358,
- 20,17,21,18,372,43,36,1459,867,358,
- 20,17,21,18,372,43,36,193,1452,227,
- 160,52,664,246,219,1154,221,1473,223,224,
- 229,1125,518,247,482,20,17,21,18,372,
- 43,48,44,254,213,721,274,482,20,17,
- 21,18,372,43,47,482,20,17,21,18,
- 372,43,46,567,267,1149,1120,272,104,1382,
- 567,14,180,489,567,465,723,449,266,723,
- 696,567,1664,201,1560,14,417,104,1097,518,
- 1382,724,244,1238,225,1097,317,1382,530,20,
- 17,21,18,372,33,14,450,90,14,738,
- 197,245,52,48,592,259,317,88,909,317,
- 1453,1238,259,742,567,909,699,1453,1500,446,
- 197,627,287,197,254,213,1638,88,197,1693,
- 88,559,1560,632,657,439,699,661,1500,699,
- 1768,1500,210,135,213,1768,1269,666,518,145,
- 134,136,160,825,741,135,213,783,449,135,
- 213,148,134,136,160,151,134,136,160,135,
- 213,192,489,587,142,154,134,136,160,116,
- 14,14,1512,1429,567,567,357,919,204,44,
- 567,417,417,230,1768,518,52,567,1097,197,
- 209,52,487,518,1097,104,1768,1768,104,1768,
- 1768,1097,88,88,1559,1571,1382,1269,254,213,
- 365,599,1347,254,213,259,1768,485,1662,295,
- 1453,259,297,1768,951,181,1453,1768,260,1768,
- 1471,234,192,205,1768,1768,1768,1768,1768,1768,
- 1768,1768,1220,1685,1429,1768,1768,1321,1768,1768,
- 1768,1768,1768,1768,1768,1768,1710,1768,0,20,
- 179,0,1,1994,0,1,2005,0
+ 109,109,109,110,110,110,110,110,113,113,
+ 25,25,25,25,25,28,28,28,78,78,
+ 73,73,73,73,74,74,74,75,75,75,
+ 76,76,76,77,77,77,115,115,116,116,
+ 117,29,31,31,31,31,31,53,54,54,
+ 54,54,54,54,54,54,54,54,54,54,
+ 64,61,61,89,90,66,66,62,62,62,
+ 67,79,79,80,80,68,68,68,43,91,
+ 91,81,82,82,82,63,63,92,83,83,
+ 84,84,69,69,22,23,23,23,30,50,
+ 50,33,33,33,33,36,36,38,34,34,
+ 35,39,39,118,118,37,119,119,93,93,
+ 26,26,26,26,26,26,26,26,26,85,
+ 51,51,51,51,27,56,56,55,55,55,
+ 57,57,52,52,94,94,59,59,58,58,
+ 58,44,44,44,45,46,46,46,47,47,
+ 47,47,65,65,42,42,48,96,95,95,
+ 95,95,86,97,98,98,99,99,100,100,
+ 120,120,121,121,122,122,122,122,124,124,
+ 123,123,123,125,126,126,87,87,1,627,
+ 17,21,18,373,626,45,449,383,542,31,
+ 540,545,544,592,546,623,594,75,92,124,
+ 136,214,670,629,596,339,138,135,137,161,
+ 275,20,17,21,18,373,626,45,449,383,
+ 542,1502,540,545,544,592,546,623,594,75,
+ 1146,140,167,579,240,201,31,201,31,144,
+ 147,150,153,57,385,118,201,188,201,187,
+ 342,1129,1612,1624,1628,1638,1226,434,20,17,
+ 21,18,373,626,45,449,383,542,343,540,
+ 545,544,592,546,623,594,75,282,482,20,
+ 17,21,18,373,626,45,449,383,542,1526,
+ 540,545,544,592,546,623,594,75,92,283,
+ 1590,1263,294,97,518,1366,25,158,24,157,
+ 695,299,20,17,21,18,373,626,45,449,
+ 383,542,288,540,545,544,592,546,623,594,
+ 75,1343,256,214,344,241,506,20,17,21,
+ 18,373,41,289,285,28,662,1503,201,189,
+ 342,1366,1187,332,20,17,21,18,373,626,
+ 45,449,383,542,343,540,545,544,592,546,
+ 623,594,75,282,554,20,17,21,18,373,
+ 626,45,449,383,542,1593,540,545,544,592,
+ 546,623,594,75,1245,283,201,297,201,299,
+ 6,1366,30,284,589,200,191,458,20,17,
+ 21,18,373,626,45,449,383,542,290,540,
+ 545,544,592,546,623,594,75,282,189,180,
+ 482,20,17,21,18,373,43,45,628,291,
+ 482,20,17,21,18,373,43,45,633,283,
+ 136,214,344,242,243,1366,138,135,137,161,
+ 104,482,20,17,21,18,373,43,45,449,
+ 383,542,292,540,545,544,592,546,1349,275,
+ 1453,140,167,171,22,14,547,578,194,144,
+ 147,150,153,199,385,416,444,270,1150,1121,
+ 273,1129,1612,1624,1628,1638,1226,482,20,17,
+ 21,18,373,626,45,449,383,542,489,540,
+ 545,544,592,546,623,594,75,93,482,20,
+ 17,21,18,373,626,45,449,383,542,1408,
+ 540,545,544,592,546,623,594,75,86,482,
+ 20,17,21,18,373,626,45,449,383,542,
+ 489,540,545,544,592,546,623,594,75,85,
+ 482,20,17,21,18,373,626,45,449,383,
+ 542,19,540,545,544,592,546,623,594,75,
+ 84,482,20,17,21,18,373,626,45,449,
+ 383,542,489,540,545,544,592,546,623,594,
+ 75,83,482,20,17,21,18,373,626,45,
+ 449,383,542,443,540,545,544,592,546,623,
+ 594,75,82,482,20,17,21,18,373,626,
+ 45,449,383,542,489,540,545,544,592,546,
+ 623,594,75,81,482,20,17,21,18,373,
+ 626,45,449,383,542,1204,540,545,544,592,
+ 546,623,594,75,80,482,20,17,21,18,
+ 373,626,45,449,383,542,489,540,545,544,
+ 592,546,623,594,75,79,482,20,17,21,
+ 18,373,626,45,449,383,542,23,540,545,
+ 544,592,546,623,594,75,78,482,20,17,
+ 21,18,373,626,45,449,383,542,489,540,
+ 545,544,592,546,623,594,75,77,482,20,
+ 17,21,18,373,626,45,449,383,542,274,
+ 540,545,544,592,546,623,594,75,76,482,
+ 20,17,21,18,373,626,45,449,383,542,
+ 489,540,545,544,592,546,623,594,75,74,
+ 482,20,17,21,18,373,626,45,449,383,
+ 542,280,540,545,544,592,546,623,594,75,
+ 1549,482,20,17,21,18,373,626,45,449,
+ 383,542,489,540,545,544,592,546,623,594,
+ 75,1568,482,20,17,21,18,373,43,45,
+ 449,383,542,281,540,545,544,592,546,623,
+ 594,94,482,20,17,21,18,373,43,45,
+ 449,383,542,466,540,545,544,592,546,623,
+ 594,94,482,20,17,21,18,373,43,40,
+ 488,1696,482,20,17,21,18,373,43,39,
+ 482,20,17,21,18,373,43,45,449,383,
+ 542,213,540,545,544,592,546,623,594,94,
+ 482,20,17,21,18,373,43,45,449,383,
+ 542,490,540,545,544,592,546,623,594,94,
+ 482,20,17,21,18,373,43,38,446,1699,
+ 482,20,17,21,18,373,43,37,482,20,
+ 17,21,18,373,43,45,449,383,542,203,
+ 540,545,544,592,546,623,594,94,113,482,
+ 20,17,21,18,373,43,45,449,1125,1523,
+ 482,20,17,21,18,373,43,45,449,383,
+ 542,144,540,1171,275,241,44,204,207,232,
+ 14,219,1155,222,1474,224,225,230,195,1551,
+ 601,397,268,1150,1121,273,104,276,264,278,
+ 327,136,214,1383,275,499,265,143,135,137,
+ 161,219,1155,222,1474,224,225,230,679,679,
+ 242,245,268,1150,1121,273,277,593,1554,1670,
+ 1664,229,142,167,559,1561,868,712,13,279,
+ 232,387,262,482,20,17,21,18,373,43,
+ 45,449,383,542,205,540,545,544,592,1364,
+ 482,20,17,21,18,373,43,45,449,383,
+ 542,710,540,545,544,1264,189,180,482,20,
+ 17,21,18,373,43,45,449,383,542,151,
+ 540,545,1347,256,214,104,28,1570,136,214,
+ 382,14,1366,210,139,135,137,161,386,50,
+ 281,418,1594,630,637,275,1453,1557,1572,244,
+ 421,1680,220,1155,222,1474,224,225,230,141,
+ 167,1260,88,270,1150,1121,273,145,148,151,
+ 154,316,385,219,1155,222,1474,224,225,230,
+ 482,20,17,21,18,373,43,45,449,1140,
+ 1604,482,20,17,21,18,373,43,45,449,
+ 383,542,719,1188,482,20,17,21,18,373,
+ 43,45,449,383,542,281,1259,329,44,14,
+ 196,199,201,104,256,214,1680,697,305,324,
+ 1184,1068,482,20,17,21,18,373,43,45,
+ 449,383,635,295,671,1458,615,243,219,1155,
+ 222,1474,224,225,230,482,20,17,21,18,
+ 373,43,36,676,414,1604,482,20,17,21,
+ 18,373,43,45,449,383,993,482,20,17,
+ 21,18,373,43,45,449,383,1010,409,20,
+ 17,21,18,373,43,44,200,201,482,20,
+ 17,21,18,373,43,45,449,383,1051,612,
+ 95,326,482,20,17,21,18,373,43,35,
+ 1680,568,1544,530,20,17,21,18,373,34,
+ 28,388,278,733,711,198,1366,275,698,14,
+ 707,44,219,1155,222,1474,224,225,230,1687,
+ 1622,1692,728,1270,720,268,1150,1121,273,1554,
+ 358,20,17,21,18,373,43,36,1460,868,
+ 358,20,17,21,18,373,43,36,194,1453,
+ 228,160,52,664,247,220,1155,222,1474,224,
+ 225,230,1126,518,248,482,20,17,21,18,
+ 373,43,48,44,255,214,721,275,482,20,
+ 17,21,18,373,43,47,482,20,17,21,
+ 18,373,43,46,567,268,1150,1121,273,104,
+ 1383,567,14,181,489,568,465,723,450,267,
+ 723,696,568,1665,201,1561,14,418,104,1098,
+ 518,1383,724,245,1239,226,1098,318,1383,530,
+ 20,17,21,18,373,33,14,451,90,14,
+ 738,198,246,52,48,593,260,318,88,910,
+ 318,1454,1239,260,742,568,910,700,1454,1501,
+ 447,198,627,287,198,255,214,1639,88,198,
+ 1694,88,559,1561,632,658,439,700,661,1501,
+ 700,1769,1501,211,136,214,1769,1270,666,518,
+ 146,135,137,161,826,742,136,214,784,450,
+ 136,214,149,135,137,161,152,135,137,161,
+ 136,214,193,489,587,142,155,135,137,161,
+ 116,14,14,1513,1430,568,568,357,920,205,
+ 44,568,418,418,231,1769,518,52,568,1098,
+ 198,210,52,488,518,1098,104,1769,1769,104,
+ 1769,1769,1098,88,88,1560,1572,1383,1270,255,
+ 214,365,600,1348,255,214,260,1769,486,1663,
+ 296,1454,260,298,1769,952,182,1454,1769,261,
+ 1769,1472,235,193,206,1769,1769,1769,1769,1769,
+ 1769,1769,1769,1221,1686,1430,1769,1769,1322,1769,
+ 1769,1769,1769,1769,1769,1769,1769,1711,1769,0,
+ 20,180,0,1,1996,0,1,2007,0
};
};
public final static char baseAction[] = BaseAction.baseAction;
@@ -496,87 +496,87 @@ public class C99ExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C9
public interface TermAction {
public final static char termAction[] = {0,
- 1768,1779,1565,1780,1374,60,1982,1983,1984,1069,
- 1059,1431,62,1,1578,1442,475,1931,1781,1782,
- 1783,1784,1011,1001,1932,1930,1985,1933,1929,55,
- 1768,1936,1941,1940,1938,1939,1937,1942,1943,1935,
- 1944,1945,1946,253,1625,1383,1190,1768,1,61,
- 1,1768,191,1,1,1,52,1982,1983,1984,
- 1417,1396,1385,1351,1,579,569,1417,1396,1385,
- 1351,1,1,1,1,1,1098,1299,1,1,
+ 1769,1780,1566,1781,1375,60,1984,1985,1986,1070,
+ 1060,1432,62,1,1579,1443,476,1933,1782,1783,
+ 1784,1785,1012,1002,1934,1932,1987,1935,1931,55,
+ 1769,1938,1943,1942,1940,1941,1939,1944,1945,1937,
+ 1946,1947,1948,254,1626,1384,1191,1769,1,61,
+ 1,1769,192,1,1,1,52,1984,1985,1986,
+ 1418,1397,1386,1352,1,580,570,1418,1397,1386,
+ 1352,1,1,1,1,1,1099,1300,1,1,
1,1,1,1,1,1,1,1,1,1,
- 191,1,1,1,1768,1,42,1,1964,190,
- 1,1,1,1768,1417,1396,1385,1351,1772,2815,
- 1758,1,262,1994,1127,1,1,182,1,1,
- 1,1,1,183,349,1,1,1,1,1,
- 1,1,1,1,1,1,1,190,1,1,
- 1,1768,1,271,1,1964,191,1,1,1,
- 268,1994,1127,1771,253,349,49,286,1,265,
- 1535,1430,349,1,2026,1,1,1,1,1,
- 71,349,1,1,1,1,1,1,1,1,
- 1,1,1,1,191,1,1,1,1768,1779,
- 69,1780,1964,51,1982,1983,1984,1535,50,63,
- 1768,1779,1535,1780,1768,1931,1,1762,1127,1527,
- 1514,1774,1932,1930,1985,1933,1929,2815,349,1936,
- 1941,1940,1938,1939,1937,1942,1943,1935,1944,1945,
- 1946,129,1625,1383,1190,1192,1773,1982,1983,1984,
- 54,268,73,1430,64,253,1527,1514,1931,579,
- 569,1527,1514,349,1209,1932,1930,1985,1933,1929,
- 1323,1310,1936,1941,1940,1938,1939,1937,1942,1943,
- 1935,1944,1945,1946,1,1779,1565,1780,1479,1772,
- 1,1994,1428,1069,1059,1431,1768,2006,1578,1442,
- 475,513,1781,1782,1783,1784,1011,1001,1768,1779,
- 1565,1780,1489,1772,1768,1323,1310,1069,1059,1431,
- 600,1671,1578,1442,475,940,1781,1782,1783,1784,
- 1011,1001,1768,72,1771,1,270,1430,1167,1768,
- 1774,1,1779,1565,1780,1374,29,349,349,1039,
- 1069,1059,1431,67,2815,1578,1442,475,1771,1781,
- 1782,1783,1784,1011,1001,1773,1,1768,1779,1565,
- 1780,1374,1772,898,1768,1768,1069,1059,1431,1774,
- 1768,1578,1442,475,29,1781,1782,1783,1784,1011,
- 1001,1768,1,1,1,1,185,2828,1192,2828,
- 1,1,1,1612,1773,1,1,1,1768,1,
- 1,1,1,1,1,2025,1227,1771,1768,1779,
- 1565,1780,1374,184,2829,59,2829,1069,1059,1431,
- 1,2815,1578,1442,475,1778,1781,1782,1783,1784,
- 1011,1001,2084,1,1779,1565,1780,1374,206,2830,
- 1768,2830,1069,1059,1431,1768,2815,1578,1442,475,
- 1778,1781,1782,1783,1784,1011,1001,1768,1779,1565,
- 1780,1374,1098,1299,1,58,1069,1059,1431,91,
- 2815,1578,1442,475,1334,1781,1782,1783,1784,1011,
- 1001,1768,1779,1565,1780,1374,1777,57,1768,56,
- 1069,1059,1431,1774,91,1578,1442,475,220,1781,
- 1782,1783,1784,1011,1001,1768,1779,1585,1780,1374,
- 349,1777,1098,1299,1069,1059,1431,1768,1773,1578,
- 1442,475,1776,1781,1782,1783,1784,1011,1001,1768,
- 1779,1588,1780,1374,1098,1299,1098,1299,1069,1059,
- 1431,1768,1768,1578,1442,475,43,1781,1782,1783,
- 1784,1011,1001,1,1779,1565,1780,1374,208,1779,
- 1775,1780,1069,1059,1431,1768,1,1578,1442,475,
- 253,1781,1782,1783,1784,1011,1001,20,32,1759,
- 1555,1759,1759,179,179,179,1,1765,65,1759,
- 1670,1768,1794,1795,179,1768,1779,1768,1780,1109,
- 53,179,179,179,179,179,877,1759,1250,579,
- 569,1,1994,1428,1768,2026,856,835,814,793,
- 772,730,751,709,688,667,130,1129,1768,292,
- 376,131,1982,1983,1984,2026,68,1982,1983,1984,
- 961,1019,1768,1931,1768,374,207,1563,1931,1563,
- 1932,1930,1985,1933,1929,1932,1930,1985,1933,1929,
- 132,1768,1779,1768,1780,133,1982,1983,1984,89,
- 70,1982,1983,1984,1338,1768,1458,1931,1,1337,
- 535,537,1931,1774,1932,1930,1985,1933,1929,1932,
- 1930,1985,1933,1929,248,211,66,249,646,1227,
- 1982,1983,1984,1,1,1,250,1109,1773,251,
- 256,30,1,1,1,1982,1983,1984,252,222,
- 1768,1168,30,207,1982,1983,1984,253,1994,1428,
- 285,349,1768,1551,1209,624,1460,1768,1768,1676,
- 492,201,1768,189,189,189,1768,1768,1768,1768,
- 1768,1797,2731,1768,1768,981,185,184,206,1768,
- 1768,1768,1768,1768,1768,1768,1768,1768,1768,1768,
- 1768,1768,1768,624,1768,1768,1768,1768,1768,1768,
- 1768,1768,1768,1768,1768,1768,1768,1768,1768,1768,
- 1768,1768,1768,1768,1768,1768,1768,546,1768,1768,
- 1077
+ 192,1,1,1,1769,1,42,1,1966,191,
+ 1,1,1,1769,1418,1397,1386,1352,1773,2817,
+ 1759,1,263,1996,1128,1,1,183,1,1,
+ 1,1,1,184,350,1,1,1,1,1,
+ 1,1,1,1,1,1,1,191,1,1,
+ 1,1769,1,272,1,1966,192,1,1,1,
+ 269,1996,1128,1772,254,350,49,287,1,266,
+ 1536,1431,350,1,2028,1,1,1,1,1,
+ 71,350,1,1,1,1,1,1,1,1,
+ 1,1,1,1,192,1,1,1,1769,1780,
+ 69,1781,1966,51,1984,1985,1986,1536,50,63,
+ 1769,1780,1536,1781,1769,1933,1,1763,1128,1528,
+ 1515,1775,1934,1932,1987,1935,1931,2817,350,1938,
+ 1943,1942,1940,1941,1939,1944,1945,1937,1946,1947,
+ 1948,130,1626,1384,1191,1193,1774,1984,1985,1986,
+ 54,269,73,1431,64,254,1528,1515,1933,580,
+ 570,1528,1515,350,1210,1934,1932,1987,1935,1931,
+ 1324,1311,1938,1943,1942,1940,1941,1939,1944,1945,
+ 1937,1946,1947,1948,1,1780,1566,1781,1480,1773,
+ 1,1996,1429,1070,1060,1432,1769,2008,1579,1443,
+ 476,514,1782,1783,1784,1785,1012,1002,1769,1780,
+ 1566,1781,1490,1773,1769,1324,1311,1070,1060,1432,
+ 601,1672,1579,1443,476,941,1782,1783,1784,1785,
+ 1012,1002,1769,72,1772,1,271,1431,1168,1769,
+ 1775,1,1780,1566,1781,1375,29,350,350,1040,
+ 1070,1060,1432,67,2817,1579,1443,476,1772,1782,
+ 1783,1784,1785,1012,1002,1774,1,1769,1780,1566,
+ 1781,1375,1773,899,1769,1769,1070,1060,1432,1775,
+ 1769,1579,1443,476,29,1782,1783,1784,1785,1012,
+ 1002,1769,1,1,1,1,186,2830,1193,2830,
+ 1,1,1,1613,1774,1,1,1,1769,1,
+ 1,1,1,1,1,2027,1228,1772,1769,1780,
+ 1566,1781,1375,185,2831,59,2831,1070,1060,1432,
+ 1,2817,1579,1443,476,1779,1782,1783,1784,1785,
+ 1012,1002,2086,1,1780,1566,1781,1375,207,2832,
+ 1769,2832,1070,1060,1432,1769,2817,1579,1443,476,
+ 1779,1782,1783,1784,1785,1012,1002,1769,1780,1566,
+ 1781,1375,1099,1300,1,58,1070,1060,1432,91,
+ 2817,1579,1443,476,1335,1782,1783,1784,1785,1012,
+ 1002,1769,1780,1566,1781,1375,1778,57,1769,56,
+ 1070,1060,1432,1775,91,1579,1443,476,221,1782,
+ 1783,1784,1785,1012,1002,1769,1780,1586,1781,1375,
+ 350,1778,1099,1300,1070,1060,1432,1769,1774,1579,
+ 1443,476,1777,1782,1783,1784,1785,1012,1002,1769,
+ 1780,1589,1781,1375,1099,1300,1099,1300,1070,1060,
+ 1432,1769,1769,1579,1443,476,43,1782,1783,1784,
+ 1785,1012,1002,1,1780,1566,1781,1375,209,1780,
+ 1776,1781,1070,1060,1432,1769,1,1579,1443,476,
+ 254,1782,1783,1784,1785,1012,1002,20,32,1760,
+ 1556,1760,1760,180,180,180,1,1766,65,1760,
+ 1671,1769,1795,1796,180,1769,1780,1769,1781,1110,
+ 53,180,180,180,180,180,878,1760,1251,580,
+ 570,1,1996,1429,1769,2028,857,836,815,794,
+ 773,731,752,710,689,668,131,1130,1769,293,
+ 377,132,1984,1985,1986,2028,68,1984,1985,1986,
+ 962,1020,1769,1933,1769,375,208,1564,1933,1564,
+ 1934,1932,1987,1935,1931,1934,1932,1987,1935,1931,
+ 133,1769,1780,1769,1781,134,1984,1985,1986,89,
+ 70,1984,1985,1986,1339,1769,1459,1933,1,1338,
+ 536,538,1933,1775,1934,1932,1987,1935,1931,1934,
+ 1932,1987,1935,1931,249,212,66,250,647,1228,
+ 1984,1985,1986,1,1,1,251,1110,1774,252,
+ 257,30,1,1,1,1984,1985,1986,253,223,
+ 1769,1169,30,208,1984,1985,1986,254,1996,1429,
+ 286,350,1769,1552,1210,625,1461,1769,1769,1677,
+ 493,202,1769,190,190,190,1769,1769,1769,1769,
+ 1769,1798,2733,1769,1769,982,186,185,207,1769,
+ 1769,1769,1769,1769,1769,1769,1769,1769,1769,1769,
+ 1769,1769,1769,625,1769,1769,1769,1769,1769,1769,
+ 1769,1769,1769,1769,1769,1769,1769,1769,1769,1769,
+ 1769,1769,1769,1769,1769,1769,1769,547,1769,1769,
+ 1078
};
};
public final static char termAction[] = TermAction.termAction;
@@ -828,16 +828,16 @@ public class C99ExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C9
public interface ScopeState {
public final static char scopeState[] = {0,
- 1262,0,342,0,1664,1429,1593,0,1471,1334,
- 1428,1259,1238,1127,1097,0,546,492,396,1203,
- 442,1407,0,567,1225,317,0,1473,1154,1149,
- 1120,1238,1127,1097,592,1430,1500,0,1578,1442,
- 475,1489,1479,1407,1192,600,1227,1209,1323,1310,
- 1109,1299,1098,1417,1396,1385,1351,1535,1527,1514,
- 579,569,1431,1374,1069,1059,1011,1001,1077,1039,
- 1019,546,981,961,940,919,450,898,513,349,
- 877,856,835,814,793,772,751,730,709,688,
- 667,317,646,417,492,396,0
+ 1263,0,343,0,1665,1430,1594,0,1472,1335,
+ 1429,1260,1239,1128,1098,0,547,493,397,1204,
+ 443,1408,0,568,1226,318,0,1474,1155,1150,
+ 1121,1239,1128,1098,593,1431,1501,0,1579,1443,
+ 476,1490,1480,1408,1193,601,1228,1210,1324,1311,
+ 1110,1300,1099,1418,1397,1386,1352,1536,1528,1515,
+ 580,570,1432,1375,1070,1060,1012,1002,1078,1040,
+ 1020,547,982,962,941,920,451,899,514,350,
+ 878,857,836,815,794,773,752,731,710,689,
+ 668,318,647,418,493,397,0
};
};
public final static char scopeState[] = ScopeState.scopeState;
@@ -1063,18 +1063,18 @@ public class C99ExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, C9
public final static int
NUM_STATES = 210,
NT_OFFSET = 93,
- LA_STATE_OFFSET = 2084,
+ LA_STATE_OFFSET = 2086,
MAX_LA = 2,
- NUM_RULES = 316,
+ NUM_RULES = 317,
NUM_NONTERMINALS = 126,
NUM_SYMBOLS = 219,
SEGMENT_SIZE = 8192,
- START_STATE = 1249,
+ START_STATE = 1250,
IDENTIFIER_SYMBOL = 0,
EOFT_SYMBOL = 80,
EOLT_SYMBOL = 80,
- ACCEPT_ACTION = 1758,
- ERROR_ACTION = 1768;
+ ACCEPT_ACTION = 1759,
+ ERROR_ACTION = 1769;
public final static boolean BACKTRACK = true;
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionParsersym.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionParsersym.java
index 85df21b6c4..9616a285ad 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionParsersym.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99ExpressionParsersym.java
@@ -1,5 +1,5 @@
/*******************************************************************************
-* Copyright (c) 2006, 2009 IBM Corporation and others.
+* Copyright (c) 2006, 2010 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99NoCastExpressionParser.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99NoCastExpressionParser.java
index 7edaff4eb1..1e62f18226 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99NoCastExpressionParser.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99NoCastExpressionParser.java
@@ -1,5 +1,5 @@
/*******************************************************************************
-* Copyright (c) 2006, 2009 IBM Corporation and others.
+* Copyright (c) 2006, 2010 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -678,595 +678,601 @@ public C99NoCastExpressionParser(ITokenStream stream, Map<String,String> propert
//
// Rule 117: iteration_statement ::= do statement while ( expression ) ;
//
- case 117: { action. consumeStatementDoLoop(); break;
+ case 117: { action. consumeStatementDoLoop(true); break;
}
//
- // Rule 118: iteration_statement ::= while ( expression ) statement
+ // Rule 118: iteration_statement ::= do statement
//
- case 118: { action. consumeStatementWhileLoop(); break;
+ case 118: { action. consumeStatementDoLoop(false); break;
}
//
- // Rule 119: iteration_statement ::= for ( expression_opt ; expression_opt ; expression_opt ) statement
+ // Rule 119: iteration_statement ::= while ( expression ) statement
//
- case 119: { action. consumeStatementForLoop(); break;
+ case 119: { action. consumeStatementWhileLoop(); break;
}
//
- // Rule 120: iteration_statement ::= for ( declaration expression_opt ; expression_opt ) statement
+ // Rule 120: iteration_statement ::= for ( expression_opt ; expression_opt ; expression_opt ) statement
//
case 120: { action. consumeStatementForLoop(); break;
}
//
- // Rule 121: jump_statement ::= goto identifier_token ;
+ // Rule 121: iteration_statement ::= for ( declaration expression_opt ; expression_opt ) statement
//
- case 121: { action. consumeStatementGoto(); break;
+ case 121: { action. consumeStatementForLoop(); break;
}
//
- // Rule 122: jump_statement ::= continue ;
+ // Rule 122: jump_statement ::= goto identifier_token ;
//
- case 122: { action. consumeStatementContinue(); break;
+ case 122: { action. consumeStatementGoto(); break;
}
//
- // Rule 123: jump_statement ::= break ;
+ // Rule 123: jump_statement ::= continue ;
//
- case 123: { action. consumeStatementBreak(); break;
+ case 123: { action. consumeStatementContinue(); break;
}
//
- // Rule 124: jump_statement ::= return ;
+ // Rule 124: jump_statement ::= break ;
//
- case 124: { action. consumeStatementReturn(false); break;
+ case 124: { action. consumeStatementBreak(); break;
}
//
- // Rule 125: jump_statement ::= return expression ;
+ // Rule 125: jump_statement ::= return ;
//
- case 125: { action. consumeStatementReturn(true); break;
+ case 125: { action. consumeStatementReturn(false); break;
}
//
- // Rule 126: declaration ::= declaration_specifiers ;
+ // Rule 126: jump_statement ::= return expression ;
//
- case 126: { action. consumeDeclarationSimple(false); break;
+ case 126: { action. consumeStatementReturn(true); break;
}
//
- // Rule 127: declaration ::= declaration_specifiers <openscope-ast> init_declarator_list ;
+ // Rule 127: declaration ::= declaration_specifiers ;
//
- case 127: { action. consumeDeclarationSimple(true); break;
+ case 127: { action. consumeDeclarationSimple(false); break;
}
//
- // Rule 128: declaration_specifiers ::= <openscope-ast> simple_declaration_specifiers
+ // Rule 128: declaration ::= declaration_specifiers <openscope-ast> init_declarator_list ;
//
- case 128: { action. consumeDeclarationSpecifiersSimple(); break;
+ case 128: { action. consumeDeclarationSimple(true); break;
}
//
- // Rule 129: declaration_specifiers ::= <openscope-ast> struct_or_union_declaration_specifiers
+ // Rule 129: declaration_specifiers ::= <openscope-ast> simple_declaration_specifiers
//
- case 129: { action. consumeDeclarationSpecifiersStructUnionEnum(); break;
+ case 129: { action. consumeDeclarationSpecifiersSimple(); break;
}
//
- // Rule 130: declaration_specifiers ::= <openscope-ast> elaborated_declaration_specifiers
+ // Rule 130: declaration_specifiers ::= <openscope-ast> struct_or_union_declaration_specifiers
//
case 130: { action. consumeDeclarationSpecifiersStructUnionEnum(); break;
}
//
- // Rule 131: declaration_specifiers ::= <openscope-ast> enum_declaration_specifiers
+ // Rule 131: declaration_specifiers ::= <openscope-ast> elaborated_declaration_specifiers
//
case 131: { action. consumeDeclarationSpecifiersStructUnionEnum(); break;
}
//
- // Rule 132: declaration_specifiers ::= <openscope-ast> typdef_name_declaration_specifiers
+ // Rule 132: declaration_specifiers ::= <openscope-ast> enum_declaration_specifiers
//
- case 132: { action. consumeDeclarationSpecifiersTypedefName(); break;
+ case 132: { action. consumeDeclarationSpecifiersStructUnionEnum(); break;
}
//
- // Rule 157: init_declarator ::= complete_declarator = initializer
+ // Rule 133: declaration_specifiers ::= <openscope-ast> typdef_name_declaration_specifiers
//
- case 157: { action. consumeDeclaratorWithInitializer(true); break;
+ case 133: { action. consumeDeclarationSpecifiersTypedefName(); break;
}
//
- // Rule 159: storage_class_specifier ::= storage_class_specifier_token
+ // Rule 158: init_declarator ::= complete_declarator = initializer
//
- case 159: { action. consumeToken(); break;
+ case 158: { action. consumeDeclaratorWithInitializer(true); break;
}
//
- // Rule 165: simple_type_specifier ::= simple_type_specifier_token
+ // Rule 160: storage_class_specifier ::= storage_class_specifier_token
//
- case 165: { action. consumeToken(); break;
+ case 160: { action. consumeToken(); break;
}
//
- // Rule 178: type_name_specifier ::= identifier_token
+ // Rule 166: simple_type_specifier ::= simple_type_specifier_token
//
- case 178: { action. consumeToken(); break;
+ case 166: { action. consumeToken(); break;
}
//
- // Rule 179: struct_or_union_specifier ::= struct_or_union struct_or_union_specifier_hook { <openscope-ast> struct_declaration_list_opt }
+ // Rule 179: type_name_specifier ::= identifier_token
//
- case 179: { action. consumeTypeSpecifierComposite(false); break;
+ case 179: { action. consumeToken(); break;
}
//
- // Rule 180: 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 }
+ // Rule 180: struct_or_union_specifier ::= struct_or_union struct_or_union_specifier_hook { <openscope-ast> struct_declaration_list_opt }
//
- case 180: { action. consumeTypeSpecifierComposite(true); break;
+ case 180: { action. consumeTypeSpecifierComposite(false); break;
}
//
- // Rule 185: elaborated_specifier ::= struct elaborated_specifier_hook identifier_token
+ // Rule 181: 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 185: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_struct); break;
+ case 181: { action. consumeTypeSpecifierComposite(true); break;
}
//
- // Rule 186: elaborated_specifier ::= union elaborated_specifier_hook identifier_token
+ // Rule 186: elaborated_specifier ::= struct elaborated_specifier_hook identifier_token
//
- case 186: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_union); break;
+ case 186: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_struct); break;
}
//
- // Rule 187: elaborated_specifier ::= enum elaborated_specifier_hook identifier_token
+ // Rule 187: elaborated_specifier ::= union elaborated_specifier_hook identifier_token
//
- case 187: { action. consumeTypeSpecifierElaborated(IASTElaboratedTypeSpecifier.k_enum); break;
+ case 187: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_union); break;
}
//
- // Rule 193: struct_declaration ::= specifier_qualifier_list <openscope-ast> struct_declarator_list ;
+ // Rule 188: elaborated_specifier ::= enum elaborated_specifier_hook identifier_token
//
- case 193: { action. consumeStructDeclaration(true); break;
+ case 188: { action. consumeTypeSpecifierElaborated(IASTElaboratedTypeSpecifier.k_enum); break;
}
//
- // Rule 194: struct_declaration ::= specifier_qualifier_list ;
+ // Rule 194: struct_declaration ::= specifier_qualifier_list <openscope-ast> struct_declarator_list ;
//
- case 194: { action. consumeStructDeclaration(false); break;
+ case 194: { action. consumeStructDeclaration(true); break;
}
//
- // Rule 195: struct_declaration ::= ERROR_TOKEN
+ // Rule 195: struct_declaration ::= specifier_qualifier_list ;
//
- case 195: { action. consumeDeclarationProblem(); break;
+ case 195: { action. consumeStructDeclaration(false); break;
}
//
- // Rule 201: struct_declarator ::= : constant_expression
+ // Rule 196: struct_declaration ::= ERROR_TOKEN
//
- case 201: { action. consumeBitField(false); break;
+ case 196: { action. consumeDeclarationProblem(); break;
}
//
- // Rule 202: struct_declarator ::= declarator : constant_expression
+ // Rule 202: struct_declarator ::= : constant_expression
//
- case 202: { action. consumeBitField(true); break;
+ case 202: { action. consumeBitField(false); break;
}
//
- // Rule 203: enum_specifier ::= enum enum_specifier_hook { <openscope-ast> enumerator_list_opt comma_opt }
+ // Rule 203: struct_declarator ::= declarator : constant_expression
//
- case 203: { action. consumeTypeSpecifierEnumeration(false); break;
+ case 203: { action. consumeBitField(true); break;
}
//
- // Rule 204: enum_specifier ::= enum enum_specifier_hook identifier_token { <openscope-ast> enumerator_list_opt comma_opt }
+ // Rule 204: enum_specifier ::= enum enum_specifier_hook { <openscope-ast> enumerator_list_opt comma_opt }
//
- case 204: { action. consumeTypeSpecifierEnumeration(true); break;
+ case 204: { action. consumeTypeSpecifierEnumeration(false); break;
}
//
- // Rule 210: enumerator ::= identifier_token
+ // Rule 205: enum_specifier ::= enum enum_specifier_hook identifier_token { <openscope-ast> enumerator_list_opt comma_opt }
//
- case 210: { action. consumeEnumerator(false); break;
+ case 205: { action. consumeTypeSpecifierEnumeration(true); break;
}
//
- // Rule 211: enumerator ::= identifier_token = constant_expression
+ // Rule 211: enumerator ::= identifier_token
//
- case 211: { action. consumeEnumerator(true); break;
+ case 211: { action. consumeEnumerator(false); break;
}
//
- // Rule 212: type_qualifier ::= type_qualifier_token
+ // Rule 212: enumerator ::= identifier_token = constant_expression
//
- case 212: { action. consumeToken(); break;
+ case 212: { action. consumeEnumerator(true); break;
}
//
- // Rule 216: function_specifier ::= inline
+ // Rule 213: type_qualifier ::= type_qualifier_token
//
- case 216: { action. consumeToken(); break;
+ case 213: { action. consumeToken(); break;
}
//
- // Rule 218: declarator ::= <openscope-ast> pointer_seq direct_declarator
+ // Rule 217: function_specifier ::= inline
//
- case 218: { action. consumeDeclaratorWithPointer(true); break;
+ case 217: { action. consumeToken(); break;
}
//
- // Rule 223: basic_direct_declarator ::= declarator_id_name
+ // Rule 219: declarator ::= <openscope-ast> pointer_seq direct_declarator
//
- case 223: { action. consumeDirectDeclaratorIdentifier(); break;
+ case 219: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 224: basic_direct_declarator ::= ( declarator )
+ // Rule 224: basic_direct_declarator ::= declarator_id_name
//
- case 224: { action. consumeDirectDeclaratorBracketed(); break;
+ case 224: { action. consumeDirectDeclaratorIdentifier(); break;
}
//
- // Rule 225: declarator_id_name ::= identifier
+ // Rule 225: basic_direct_declarator ::= ( declarator )
//
- case 225: { action. consumeIdentifierName(); break;
+ case 225: { action. consumeDirectDeclaratorBracketed(); break;
}
//
- // Rule 226: array_direct_declarator ::= basic_direct_declarator array_modifier
+ // Rule 226: declarator_id_name ::= identifier
//
- case 226: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ case 226: { action. consumeIdentifierName(); break;
}
//
- // Rule 227: array_direct_declarator ::= array_direct_declarator array_modifier
+ // Rule 227: array_direct_declarator ::= basic_direct_declarator array_modifier
//
case 227: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 229: function_direct_declarator ::= basic_direct_declarator ( <openscope-ast> parameter_type_list )
+ // Rule 228: array_direct_declarator ::= array_direct_declarator array_modifier
//
- case 229: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
+ case 228: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 230: function_direct_declarator ::= basic_direct_declarator ( )
+ // Rule 230: function_direct_declarator ::= basic_direct_declarator ( <openscope-ast> parameter_type_list )
//
- case 230: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
+ case 230: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
}
//
- // Rule 232: function_declarator ::= <openscope-ast> pointer_seq function_direct_declarator
+ // Rule 231: function_direct_declarator ::= basic_direct_declarator ( )
//
- case 232: { action. consumeDeclaratorWithPointer(true); break;
+ case 231: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
}
//
- // Rule 233: knr_direct_declarator ::= basic_direct_declarator ( <openscope-ast> identifier_list )
+ // Rule 233: function_declarator ::= <openscope-ast> pointer_seq function_direct_declarator
//
- case 233: { action. consumeDirectDeclaratorFunctionDeclaratorKnR(); break;
+ case 233: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 235: knr_function_declarator ::= <openscope-ast> pointer_seq knr_direct_declarator
+ // Rule 234: knr_direct_declarator ::= basic_direct_declarator ( <openscope-ast> identifier_list )
//
- case 235: { action. consumeDeclaratorWithPointer(true); break;
+ case 234: { action. consumeDirectDeclaratorFunctionDeclaratorKnR(); break;
}
//
- // Rule 236: identifier_list ::= identifier
+ // Rule 236: knr_function_declarator ::= <openscope-ast> pointer_seq knr_direct_declarator
//
- case 236: { action. consumeIdentifierKnR(); break;
+ case 236: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 237: identifier_list ::= identifier_list , identifier
+ // Rule 237: identifier_list ::= identifier
//
case 237: { action. consumeIdentifierKnR(); break;
}
//
- // Rule 238: array_modifier ::= [ ]
+ // Rule 238: identifier_list ::= identifier_list , identifier
//
- case 238: { action. consumeDirectDeclaratorArrayModifier(false); break;
+ case 238: { action. consumeIdentifierKnR(); break;
}
//
- // Rule 239: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers ]
+ // Rule 239: array_modifier ::= [ ]
//
- case 239: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, false); break;
+ case 239: { action. consumeDirectDeclaratorArrayModifier(false); break;
}
//
- // Rule 240: array_modifier ::= [ assignment_expression ]
+ // Rule 240: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers ]
//
- case 240: { action. consumeDirectDeclaratorArrayModifier(true); break;
+ case 240: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, false); break;
}
//
- // Rule 241: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers assignment_expression ]
+ // Rule 241: array_modifier ::= [ assignment_expression ]
//
- case 241: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, true); break;
+ case 241: { action. consumeDirectDeclaratorArrayModifier(true); break;
}
//
- // Rule 242: array_modifier ::= [ static assignment_expression ]
+ // Rule 242: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers assignment_expression ]
//
- case 242: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, false, true); break;
+ case 242: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, true); break;
}
//
- // Rule 243: array_modifier ::= [ static <openscope-ast> array_modifier_type_qualifiers assignment_expression ]
+ // Rule 243: array_modifier ::= [ static assignment_expression ]
//
- case 243: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break;
+ case 243: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, false, true); break;
}
//
- // Rule 244: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers static assignment_expression ]
+ // Rule 244: array_modifier ::= [ static <openscope-ast> array_modifier_type_qualifiers assignment_expression ]
//
case 244: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break;
}
//
- // Rule 245: array_modifier ::= [ * ]
+ // Rule 245: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers static assignment_expression ]
//
- case 245: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, false, false); break;
+ case 245: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break;
}
//
- // Rule 246: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers * ]
+ // Rule 246: array_modifier ::= [ * ]
//
- case 246: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, true, false); break;
+ case 246: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, false, false); break;
}
//
- // Rule 248: pointer_seq ::= pointer_hook * pointer_hook
+ // Rule 247: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers * ]
//
- case 248: { action. consumePointer(); break;
+ case 247: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, true, false); break;
}
//
- // Rule 249: pointer_seq ::= pointer_seq pointer_hook * pointer_hook
+ // Rule 249: pointer_seq ::= pointer_hook * pointer_hook
//
case 249: { action. consumePointer(); break;
}
//
- // Rule 250: pointer_seq ::= pointer_hook * pointer_hook <openscope-ast> type_qualifier_list
+ // Rule 250: pointer_seq ::= pointer_seq pointer_hook * pointer_hook
//
- case 250: { action. consumePointerTypeQualifierList(); break;
+ case 250: { action. consumePointer(); break;
}
//
- // Rule 251: pointer_seq ::= pointer_seq pointer_hook * pointer_hook <openscope-ast> type_qualifier_list
+ // Rule 251: pointer_seq ::= pointer_hook * pointer_hook <openscope-ast> type_qualifier_list
//
case 251: { action. consumePointerTypeQualifierList(); break;
}
//
- // Rule 255: parameter_type_list ::= parameter_list
+ // Rule 252: pointer_seq ::= pointer_seq pointer_hook * pointer_hook <openscope-ast> type_qualifier_list
//
- case 255: { action. consumeEmpty(); break;
+ case 252: { action. consumePointerTypeQualifierList(); break;
}
//
- // Rule 256: parameter_type_list ::= parameter_list , ...
+ // Rule 256: parameter_type_list ::= parameter_list
//
- case 256: { action. consumePlaceHolder(); break;
+ case 256: { action. consumeEmpty(); break;
}
//
- // Rule 257: parameter_type_list ::= ...
+ // Rule 257: parameter_type_list ::= parameter_list , ...
//
case 257: { action. consumePlaceHolder(); break;
}
//
- // Rule 260: parameter_declaration ::= declaration_specifiers complete_parameter_declarator
+ // Rule 258: parameter_type_list ::= ...
//
- case 260: { action. consumeParameterDeclaration(); break;
+ case 258: { action. consumePlaceHolder(); break;
}
//
- // Rule 261: parameter_declaration ::= declaration_specifiers
+ // Rule 261: parameter_declaration ::= declaration_specifiers complete_parameter_declarator
//
- case 261: { action. consumeParameterDeclarationWithoutDeclarator(); break;
+ case 261: { action. consumeParameterDeclaration(); break;
}
//
- // Rule 264: type_id ::= specifier_qualifier_list
+ // Rule 262: parameter_declaration ::= declaration_specifiers
//
- case 264: { action. consumeTypeId(false); break;
+ case 262: { action. consumeParameterDeclarationWithoutDeclarator(); break;
}
//
- // Rule 265: type_id ::= specifier_qualifier_list abstract_declarator
+ // Rule 265: type_id ::= specifier_qualifier_list
//
- case 265: { action. consumeTypeId(true); break;
+ case 265: { action. consumeTypeId(false); break;
}
//
- // Rule 267: abstract_declarator ::= <openscope-ast> pointer_seq
+ // Rule 266: type_id ::= specifier_qualifier_list abstract_declarator
//
- case 267: { action. consumeDeclaratorWithPointer(false); break;
+ case 266: { action. consumeTypeId(true); break;
}
//
- // Rule 268: abstract_declarator ::= <openscope-ast> pointer_seq direct_abstract_declarator
+ // Rule 268: abstract_declarator ::= <openscope-ast> pointer_seq
//
- case 268: { action. consumeDeclaratorWithPointer(true); break;
+ case 268: { action. consumeDeclaratorWithPointer(false); break;
}
//
- // Rule 272: basic_direct_abstract_declarator ::= ( abstract_declarator )
+ // Rule 269: abstract_declarator ::= <openscope-ast> pointer_seq direct_abstract_declarator
//
- case 272: { action. consumeDirectDeclaratorBracketed(); break;
+ case 269: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 273: array_direct_abstract_declarator ::= array_modifier
+ // Rule 273: basic_direct_abstract_declarator ::= ( abstract_declarator )
//
- case 273: { action. consumeDirectDeclaratorArrayDeclarator(false); break;
+ case 273: { action. consumeDirectDeclaratorBracketed(); break;
}
//
- // Rule 274: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier
+ // Rule 274: array_direct_abstract_declarator ::= array_modifier
//
- case 274: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ case 274: { action. consumeDirectDeclaratorArrayDeclarator(false); break;
}
//
- // Rule 275: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier
+ // Rule 275: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier
//
case 275: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 276: function_direct_abstract_declarator ::= ( )
+ // Rule 276: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier
//
- case 276: { action. consumeDirectDeclaratorFunctionDeclarator(false, false); break;
+ case 276: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ }
+
+ //
+ // Rule 277: function_direct_abstract_declarator ::= ( )
+ //
+ case 277: { action. consumeDirectDeclaratorFunctionDeclarator(false, false); break;
}
//
- // Rule 277: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( )
+ // Rule 278: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( )
//
- case 277: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
+ case 278: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
}
//
- // Rule 278: function_direct_abstract_declarator ::= ( <openscope-ast> parameter_type_list )
+ // Rule 279: function_direct_abstract_declarator ::= ( <openscope-ast> parameter_type_list )
//
- case 278: { action. consumeDirectDeclaratorFunctionDeclarator(false, true); break;
+ case 279: { action. consumeDirectDeclaratorFunctionDeclarator(false, true); break;
}
//
- // Rule 279: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( <openscope-ast> parameter_type_list )
+ // Rule 280: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( <openscope-ast> parameter_type_list )
//
- case 279: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
+ case 280: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
}
//
- // Rule 280: initializer ::= assignment_expression
+ // Rule 281: initializer ::= assignment_expression
//
- case 280: { action. consumeInitializer(); break;
+ case 281: { action. consumeInitializer(); break;
}
//
- // Rule 282: initializer_list ::= start_initializer_list { <openscope-ast> initializer_seq comma_opt } end_initializer_list
+ // Rule 283: initializer_list ::= start_initializer_list { <openscope-ast> initializer_seq comma_opt } end_initializer_list
//
- case 282: { action. consumeInitializerList(); break;
+ case 283: { action. consumeInitializerList(); break;
}
//
- // Rule 283: initializer_list ::= { <openscope-ast> }
+ // Rule 284: initializer_list ::= { <openscope-ast> }
//
- case 283: { action. consumeInitializerList(); break;
+ case 284: { action. consumeInitializerList(); break;
}
//
- // Rule 284: start_initializer_list ::= $Empty
+ // Rule 285: start_initializer_list ::= $Empty
//
- case 284: { action. initializerListStart(); break;
+ case 285: { action. initializerListStart(); break;
}
//
- // Rule 285: end_initializer_list ::= $Empty
+ // Rule 286: end_initializer_list ::= $Empty
//
- case 285: { action. initializerListEnd(); break;
+ case 286: { action. initializerListEnd(); break;
}
//
- // Rule 290: designated_initializer ::= <openscope-ast> designation = initializer
+ // Rule 291: designated_initializer ::= <openscope-ast> designation = initializer
//
- case 290: { action. consumeInitializerDesignated(); break;
+ case 291: { action. consumeInitializerDesignated(); break;
}
//
- // Rule 294: designator_base ::= [ constant_expression ]
+ // Rule 295: designator_base ::= [ constant_expression ]
//
- case 294: { action. consumeDesignatorArray(); break;
+ case 295: { action. consumeDesignatorArray(); break;
}
//
- // Rule 295: designator_base ::= . identifier_token
+ // Rule 296: designator_base ::= . identifier_token
//
- case 295: { action. consumeDesignatorField(); break;
+ case 296: { action. consumeDesignatorField(); break;
}
//
- // Rule 296: designator ::= [ constant_expression ]
+ // Rule 297: designator ::= [ constant_expression ]
//
- case 296: { action. consumeDesignatorArray(); break;
+ case 297: { action. consumeDesignatorArray(); break;
}
//
- // Rule 297: designator ::= . identifier_token
+ // Rule 298: designator ::= . identifier_token
//
- case 297: { action. consumeDesignatorField(); break;
+ case 298: { action. consumeDesignatorField(); break;
}
//
- // Rule 298: translation_unit ::= external_declaration_list
+ // Rule 299: translation_unit ::= external_declaration_list
//
- case 298: { action. consumeTranslationUnit(); break;
+ case 299: { action. consumeTranslationUnit(); break;
}
//
- // Rule 299: translation_unit ::= $Empty
+ // Rule 300: translation_unit ::= $Empty
//
- case 299: { action. consumeTranslationUnit(); break;
+ case 300: { action. consumeTranslationUnit(); break;
}
//
- // Rule 304: external_declaration ::= ;
+ // Rule 305: external_declaration ::= ;
//
- case 304: { action. consumeDeclarationEmpty(); break;
+ case 305: { action. consumeDeclarationEmpty(); break;
}
//
- // Rule 305: external_declaration ::= ERROR_TOKEN
+ // Rule 306: external_declaration ::= ERROR_TOKEN
//
- case 305: { action. consumeDeclarationProblem(); break;
+ case 306: { action. consumeDeclarationProblem(); break;
}
//
- // Rule 309: function_definition ::= <openscope-ast> function_declarator function_body
+ // Rule 310: function_definition ::= <openscope-ast> function_declarator function_body
//
- case 309: { action. consumeFunctionDefinition(false); break;
+ case 310: { action. consumeFunctionDefinition(false); break;
}
//
- // Rule 310: 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 310: { action. consumeFunctionDefinitionKnR(); break;
+ case 311: { action. consumeFunctionDefinitionKnR(); break;
}
//
- // Rule 311: normal_function_definition ::= declaration_specifiers <openscope-ast> function_declarator function_body
+ // Rule 312: normal_function_definition ::= declaration_specifiers <openscope-ast> function_declarator function_body
//
- case 311: { action. consumeFunctionDefinition(true); break;
+ case 312: { action. consumeFunctionDefinition(true); break;
}
//
- // Rule 312: function_body ::= { }
+ // Rule 313: function_body ::= { }
//
- case 312: { action. consumeStatementCompoundStatement(false); break;
+ case 313: { action. consumeStatementCompoundStatement(false); break;
}
//
- // Rule 313: function_body ::= { <openscope-ast> block_item_list }
+ // Rule 314: function_body ::= { <openscope-ast> block_item_list }
//
- case 313: { action. consumeStatementCompoundStatement(true); break;
+ case 314: { action. consumeStatementCompoundStatement(true); break;
}
//
- // Rule 315: no_cast_start ::= ERROR_TOKEN
+ // Rule 316: no_cast_start ::= ERROR_TOKEN
//
- case 315: { action. consumeEmpty(); break;
+ case 316: { action. consumeEmpty(); break;
}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99NoCastExpressionParserprs.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99NoCastExpressionParserprs.java
index 0d4b891be6..c140f0dbe9 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99NoCastExpressionParserprs.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99NoCastExpressionParserprs.java
@@ -1,5 +1,5 @@
/*******************************************************************************
-* Copyright (c) 2006, 2009 IBM Corporation and others.
+* Copyright (c) 2006, 2010 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -45,170 +45,170 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
3,3,3,3,3,1,1,2,1,0,
1,3,1,1,1,1,1,1,1,1,
3,4,3,2,4,1,2,1,1,1,
- 2,5,7,5,1,0,7,5,9,8,
- 3,2,2,2,3,2,4,2,2,2,
- 2,2,1,1,1,1,2,1,2,2,
- 2,1,2,2,1,2,2,1,2,2,
- 1,2,2,1,3,1,3,1,1,1,
+ 2,5,7,5,1,0,7,2,5,9,
+ 8,3,2,2,2,3,2,4,2,2,
+ 2,2,2,1,1,1,1,2,1,2,
+ 2,2,1,2,2,1,2,2,1,2,
+ 2,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,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,3,4,5,
- 6,0,1,2,1,3,1,1,3,2,
- 1,1,1,1,2,1,2,3,1,1,
- 1,3,1,2,2,2,3,4,5,1,
- 1,7,3,0,0,1,1,3,3,4,
- 1,1,2,3,2,3,2,1,0,1,
- 2,1,1,1,1,1,2,1,3,6,
- 4,2,4,1,1,-32,0,0,0,0,
- 0,0,0,0,0,0,-2,0,0,0,
- 0,0,0,0,0,0,0,0,-4,-156,
- -115,0,-15,0,0,0,0,-70,0,0,
+ 1,1,1,1,1,1,1,1,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,3,4,
+ 5,6,0,1,2,1,3,1,1,3,
+ 2,1,1,1,1,2,1,2,3,1,
+ 1,1,3,1,2,2,2,3,4,5,
+ 1,1,7,3,0,0,1,1,3,3,
+ 4,1,1,2,3,2,3,2,1,0,
+ 1,2,1,1,1,1,1,2,1,3,
+ 6,4,2,4,1,1,-32,0,0,0,
+ 0,0,0,0,0,0,0,-2,0,0,
+ 0,0,0,0,0,0,0,0,0,-4,
+ -156,-115,0,-15,0,0,0,0,-70,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -167,0,-33,0,-104,0,0,0,0,-78,
- 0,0,-116,0,-16,0,-17,0,0,0,
- 0,0,0,0,-138,0,0,0,0,0,
+ 0,-167,0,-33,0,-104,0,0,0,0,
+ -78,0,0,-116,0,-16,0,-17,0,0,
+ 0,0,0,0,0,-138,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-174,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,0,0,0,0,0,0,0,0,
- 0,-178,0,-128,-76,0,0,-48,0,0,
+ 0,0,-178,0,-128,-76,0,0,-48,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-34,0,0,0,-18,0,-42,0,
+ 0,0,0,-34,0,0,0,-18,0,-42,
0,0,0,0,0,0,0,0,0,0,
- 0,-6,0,0,0,0,0,0,0,0,
- -189,0,0,0,0,0,0,0,0,0,
+ 0,0,-6,0,0,0,0,0,0,0,
+ 0,-189,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-3,0,0,0,0,0,0,0,0,
- 0,0,-19,0,0,0,0,0,0,0,
- 0,0,0,0,-117,0,0,-118,0,-119,
- 0,0,0,-43,0,0,0,0,0,0,
- 0,0,0,0,0,-108,0,0,0,0,
+ 0,0,-3,0,0,0,0,0,0,0,
+ 0,0,0,-19,0,0,0,0,0,0,
+ 0,0,0,0,0,-117,0,0,-118,0,
+ -119,0,0,0,-43,0,0,0,0,0,
+ 0,0,0,0,0,0,-108,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-5,0,0,0,
- 0,0,0,0,-127,0,0,0,0,0,
- 0,0,0,0,0,-79,0,0,0,0,
- 0,0,0,0,0,-131,0,-158,0,-55,
+ 0,0,0,0,0,0,0,-5,0,0,
+ 0,0,0,0,0,-127,0,0,0,0,
+ 0,0,0,0,0,0,-79,0,0,0,
+ 0,0,0,0,0,0,-131,0,-158,0,
+ -55,0,0,0,0,0,0,0,0,0,
+ 0,-122,0,0,0,0,0,0,0,0,
+ 0,-20,0,-21,0,0,0,0,-27,0,
+ 0,0,0,0,0,0,0,0,0,-22,
0,0,0,0,0,0,0,0,0,0,
- -122,0,0,0,0,0,0,0,0,0,
- -20,0,-21,0,0,0,0,-27,0,0,
- 0,0,0,0,0,0,0,0,-22,0,
+ 0,-23,0,-188,0,-24,0,0,0,0,
+ -72,0,-12,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-56,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -23,0,-188,0,-24,0,0,0,0,-72,
- 0,-12,0,0,0,0,0,0,0,0,
- 0,0,0,0,-56,0,0,0,0,0,
+ 0,0,0,0,0,0,-57,0,0,0,
+ 0,0,0,0,0,0,0,-25,0,0,
+ 0,0,0,0,0,0,0,-58,0,0,
+ 0,0,0,0,0,0,0,0,-26,0,
+ 0,0,0,0,0,0,0,0,-59,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-57,0,0,0,0,
- 0,0,0,0,0,0,-25,0,0,0,
- 0,0,0,0,0,0,-58,0,0,0,
- 0,0,0,0,0,0,0,-26,0,0,
- 0,0,0,0,0,0,0,-59,0,0,
+ 0,0,0,0,0,0,0,0,0,-60,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-60,0,
- 0,0,0,0,0,0,0,0,0,-84,
- 0,0,0,0,0,0,0,0,0,-61,
+ -84,0,0,0,0,0,0,0,0,0,
+ -61,0,0,0,0,0,0,0,0,0,
+ 0,-87,0,0,0,0,0,0,0,0,
+ 0,-62,0,0,0,0,0,0,0,0,
+ 0,0,-88,0,0,0,0,0,0,0,
+ 0,0,-63,0,0,0,0,0,0,0,
+ 0,0,0,-89,0,0,0,0,0,0,
+ 0,0,0,-64,0,0,0,0,0,0,
+ 0,0,0,0,-90,0,0,0,0,0,
+ 0,0,0,0,-65,0,0,0,0,0,
+ 0,0,0,0,0,-91,0,0,0,0,
+ 0,0,0,0,0,-66,0,0,0,0,
+ 0,0,0,0,0,0,-92,0,0,0,
+ 0,0,0,0,0,0,-120,0,0,0,
+ 0,0,0,0,0,0,0,-93,0,0,
+ 0,0,0,0,0,0,0,-141,0,0,
+ 0,0,0,0,0,0,0,0,-94,0,
+ 0,0,0,0,0,0,0,0,-142,0,
+ 0,0,0,0,0,0,0,0,0,-95,
+ 0,0,0,0,0,0,0,0,0,-177,
0,0,0,0,0,0,0,0,0,0,
- -87,0,0,0,0,0,0,0,0,0,
- -62,0,0,0,0,0,0,0,0,0,
- 0,-88,0,0,0,0,0,0,0,0,
- 0,-63,0,0,0,0,0,0,0,0,
- 0,0,-89,0,0,0,0,0,0,0,
- 0,0,-64,0,0,0,0,0,0,0,
- 0,0,0,-90,0,0,0,0,0,0,
- 0,0,0,-65,0,0,0,0,0,0,
- 0,0,0,0,-91,0,0,0,0,0,
- 0,0,0,0,-66,0,0,0,0,0,
- 0,0,0,0,0,-92,0,0,0,0,
- 0,0,0,0,0,-120,0,0,0,0,
- 0,0,0,0,0,0,-93,0,0,0,
- 0,0,0,0,0,0,-141,0,0,0,
- 0,0,0,0,0,0,0,-94,0,0,
- 0,0,0,0,0,0,0,-142,0,0,
- 0,0,0,0,0,0,0,0,-95,0,
- 0,0,0,0,0,0,0,0,-177,0,
- 0,0,0,0,0,0,0,0,0,-134,
- 0,0,0,0,0,0,0,0,-186,0,
- 0,0,0,0,0,0,0,0,0,-96,
- 0,0,0,0,0,0,0,0,-13,0,
- 0,0,0,0,0,0,-7,0,0,0,
- 0,0,0,0,-192,0,0,0,0,0,
+ -134,0,0,0,0,0,0,0,0,-186,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-198,0,0,0,0,0,
- 0,0,0,0,0,-135,0,0,0,0,
- 0,0,0,0,-155,-170,0,-176,0,0,
- -97,0,-8,0,0,0,0,0,0,0,
- -206,0,0,0,0,0,0,0,0,0,
+ -96,0,0,0,0,0,0,0,0,-13,
+ 0,0,0,0,0,0,0,-7,0,0,
+ 0,0,0,0,0,-192,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -54,0,0,0,0,0,0,0,0,0,
- 0,-130,0,0,0,0,0,0,-98,-180,
- -191,0,0,0,0,-73,-99,0,-37,0,
- 0,0,0,0,0,0,0,0,-100,-145,
- 0,0,-110,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-200,-193,-124,0,
- -187,0,0,0,0,0,-101,0,-102,0,
- -146,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-35,0,-105,0,0,0,
- 0,0,0,0,0,0,0,0,0,-184,
- -107,-83,0,-29,0,0,-51,0,0,0,
- 0,0,0,0,0,0,0,-121,0,0,
- 0,0,0,0,0,-69,0,0,0,0,
- 0,0,0,-52,0,0,0,0,0,0,
- 0,0,0,0,-164,0,0,0,-137,-154,
- 0,-30,0,-123,0,0,0,-183,0,0,
- -67,0,0,0,0,-132,0,-136,0,-81,
- 0,0,0,-140,0,0,0,0,0,0,
+ 0,0,0,0,0,-198,0,0,0,0,
+ 0,0,0,0,0,0,-135,0,0,0,
+ 0,0,0,0,0,-155,-170,0,-176,0,
+ 0,-97,0,-8,0,0,0,0,0,0,
+ 0,-206,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-38,0,0,0,
- 0,0,0,0,0,0,-49,0,0,0,
- 0,0,0,0,0,0,0,0,0,-50,
+ 0,-54,0,0,0,0,0,0,0,0,
+ 0,0,-130,0,0,0,0,0,0,-98,
+ -180,-191,0,0,0,0,-73,-99,0,-37,
+ 0,0,0,0,0,0,0,0,0,-100,
+ -145,0,0,-110,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-200,-193,-124,
+ 0,-187,0,0,0,0,0,-101,0,-102,
+ 0,-146,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-35,0,-105,0,0,
0,0,0,0,0,0,0,0,0,0,
- -205,0,0,0,-153,0,-157,-85,0,0,
- -151,0,-171,-172,-175,0,-199,0,0,-44,
+ -184,-107,-83,0,-29,0,0,-51,0,0,
+ 0,0,0,0,0,0,0,0,-121,0,
+ 0,0,0,0,0,0,-69,0,0,0,
+ 0,0,0,0,-52,0,0,0,0,0,
+ 0,0,0,0,0,-164,0,0,0,-137,
+ -154,0,-30,0,-123,0,0,0,-183,0,
+ 0,-67,0,0,0,0,-132,0,-136,0,
+ -81,0,0,0,-140,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-9,
- 0,0,0,0,0,0,0,-166,0,-45,
+ 0,0,0,0,0,0,0,-38,0,0,
+ 0,0,0,0,0,0,0,-49,0,0,
0,0,0,0,0,0,0,0,0,0,
- -46,0,0,0,0,0,0,0,0,0,
- -47,0,0,0,0,0,0,0,0,0,
- -71,0,0,-74,-86,-109,0,-112,-139,-165,
- -204,0,-111,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-207,0,0,
+ -50,0,0,0,0,0,0,0,0,0,
+ 0,-205,0,0,0,-153,0,-157,-85,0,
+ 0,-151,0,-171,-172,-175,0,-199,0,0,
+ -44,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -147,0,0,0,0,-144,0,0,0,0,
+ -9,0,0,0,0,0,0,0,-166,0,
+ -45,0,0,0,0,0,0,0,0,0,
+ 0,-46,0,0,0,0,0,0,0,0,
+ 0,-47,0,0,0,0,0,0,0,0,
+ 0,-71,0,0,-74,-86,-109,0,-112,-139,
+ -165,-204,0,-111,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-207,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-173,0,0,
- -10,0,0,0,0,0,0,0,-11,0,
- 0,0,0,0,0,0,-31,-39,0,0,
- 0,0,0,0,0,0,-113,0,-40,0,
- 0,0,0,0,0,0,0,0,-68,-126,
- -143,-162,0,-41,0,0,0,0,0,0,
- 0,0,0,0,-14,-129,-159,0,0,0,
- 0,-28,-36,0,0,0,0,-179,0,-160,
- -148,-190,0,0,0,-185,0,0,0,0,
- 0,0,0,0,0,-196,0,-75,0,0,
+ 0,-147,0,0,0,0,-144,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -77,0,0,0,-197,-80,0,0,0,0,
- 0,-106,-169,0,0,0,0,0,0,-82,
+ 0,0,0,0,0,0,0,0,-173,0,
+ 0,-10,0,0,0,0,0,0,0,-11,
+ 0,0,0,0,0,0,0,-31,-39,0,
+ 0,0,0,0,0,0,0,-113,0,-40,
+ 0,0,0,0,0,0,0,0,0,-68,
+ -126,-143,-162,0,-41,0,0,0,0,0,
+ 0,0,0,0,0,-14,-129,-159,0,0,
+ 0,0,-28,-36,0,0,0,0,-179,0,
+ -160,-148,-190,0,0,0,-185,0,0,0,
+ 0,0,0,0,0,0,-196,0,-75,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,-77,0,0,0,-197,-80,0,0,0,
+ 0,0,-106,-169,0,0,0,0,0,0,
+ -82,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-125,0,0,-152,-181,0,0,0,
- 0,-182,0,0,0,0,0,0,-133,0,
- 0,-168,0,0,0,-203,-1,-114,-163,0,
- 0,0,0,0,-53,0,0,0,0,0,
- 0,-150,-149,0,-202,0,0,0,-103,0,
- 0,0,0,0,0,0,0,0,0,-201,
+ 0,0,0,-125,0,0,-152,-181,0,0,
+ 0,0,-182,0,0,0,0,0,0,-133,
+ 0,0,-168,0,0,0,-203,-1,-114,-163,
+ 0,0,0,0,0,-53,0,0,0,0,
+ 0,0,-150,-149,0,-202,0,0,0,-103,
0,0,0,0,0,0,0,0,0,0,
+ -201,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -161,-194,-195,0,0,0,0,0,0,0,
+ 0,-161,-194,-195,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0
+ 0,0,0,0,0,0
};
};
public final static short baseCheck[] = BaseCheck.baseCheck;
@@ -230,170 +230,170 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
88,72,72,47,104,104,104,104,104,104,
104,105,105,105,106,106,111,111,112,112,
107,107,108,108,108,114,114,109,109,109,
- 109,110,110,110,110,110,113,113,25,25,
- 25,25,25,28,28,28,78,78,73,73,
- 73,73,74,74,74,75,75,75,76,76,
- 76,77,77,77,115,115,116,116,117,29,
- 31,31,31,31,31,53,54,54,54,54,
- 54,54,54,54,54,54,54,54,63,60,
- 60,89,90,65,65,61,61,61,66,79,
- 79,80,80,67,67,67,49,91,91,81,
- 82,82,82,62,62,92,83,83,84,84,
- 68,68,21,22,22,22,30,48,48,32,
- 32,32,32,35,35,37,33,33,34,38,
- 38,118,118,36,119,119,93,93,26,26,
- 26,26,26,26,26,26,26,85,50,50,
- 50,50,27,56,56,55,55,55,57,57,
- 51,51,94,94,71,71,58,58,58,41,
- 41,41,42,43,43,43,44,44,44,44,
- 64,64,46,46,52,96,95,95,95,95,
- 86,97,98,98,99,99,100,100,120,120,
- 121,121,122,122,122,122,124,124,123,123,
- 123,125,126,126,87,87,1,780,17,21,
- 18,343,738,44,387,385,523,293,467,633,
- 631,661,649,717,665,74,91,134,212,431,
- 236,108,990,687,136,133,135,159,275,20,
- 17,21,18,343,738,44,387,385,523,1153,
- 467,633,631,661,649,717,665,74,1426,138,
- 165,519,238,71,31,31,142,145,148,151,
- 199,445,1268,71,186,246,1228,69,339,1424,
- 1578,1591,1596,1610,1212,424,20,17,21,18,
- 343,738,44,387,385,523,340,467,633,631,
- 661,649,717,665,74,280,335,20,17,21,
- 18,343,738,44,387,385,523,340,467,633,
- 631,661,649,717,665,74,280,1355,442,292,
- 194,281,583,25,210,104,383,1197,482,20,
- 17,21,18,343,43,44,387,385,523,286,
- 467,969,281,71,31,254,212,6,1197,482,
- 20,17,21,18,343,43,44,387,385,843,
- 288,287,482,20,17,21,18,343,43,40,
- 1075,453,20,17,21,18,343,738,44,387,
- 385,523,289,467,633,631,661,649,717,665,
- 74,280,482,20,17,21,18,343,738,44,
- 387,385,523,10,467,633,631,661,649,717,
- 665,74,91,24,341,71,185,281,281,1278,
- 71,187,293,1197,482,20,17,21,18,343,
- 43,44,387,385,864,290,540,20,17,21,
- 18,343,738,44,387,385,523,1633,467,633,
- 631,661,649,717,665,74,1530,511,20,17,
- 21,18,343,41,339,305,20,17,21,18,
- 343,738,44,387,385,523,429,467,633,631,
- 661,649,717,665,74,1531,189,178,163,239,
- 482,20,17,21,18,343,43,44,387,385,
- 523,31,467,633,631,661,1179,134,212,253,
- 212,327,395,14,136,133,135,159,482,20,
- 17,21,18,343,738,44,387,385,523,516,
- 467,633,631,661,649,717,665,74,92,138,
- 165,156,535,124,1130,243,142,145,148,151,
- 295,445,482,20,17,21,18,343,34,1424,
- 1578,1591,1596,1610,1212,482,20,17,21,18,
- 343,738,44,387,385,523,274,467,633,631,
- 661,649,717,665,74,85,482,20,17,21,
- 18,343,738,44,387,385,523,172,467,633,
- 631,661,649,717,665,74,84,482,20,17,
- 21,18,343,738,44,387,385,523,530,467,
- 633,631,661,649,717,665,74,83,482,20,
- 17,21,18,343,738,44,387,385,523,282,
- 467,633,631,661,649,717,665,74,82,482,
- 20,17,21,18,343,738,44,387,385,523,
- 569,467,633,631,661,649,717,665,74,81,
- 482,20,17,21,18,343,738,44,387,385,
- 523,151,467,633,631,661,649,717,665,74,
- 80,482,20,17,21,18,343,738,44,387,
- 385,523,194,467,633,631,661,649,717,665,
- 74,79,482,20,17,21,18,343,738,44,
- 387,385,523,30,467,633,631,661,649,717,
- 665,74,78,482,20,17,21,18,343,738,
- 44,387,385,523,441,467,633,631,661,649,
- 717,665,74,77,482,20,17,21,18,343,
- 738,44,387,385,523,470,467,633,631,661,
- 649,717,665,74,76,482,20,17,21,18,
- 343,738,44,387,385,523,500,467,633,631,
- 661,649,717,665,74,75,482,20,17,21,
- 18,343,738,44,387,385,523,313,467,633,
- 631,661,649,717,665,74,73,482,20,17,
- 21,18,343,738,44,387,385,523,343,467,
- 633,631,661,649,717,665,74,1547,482,20,
- 17,21,18,343,738,44,387,385,523,44,
- 467,633,631,661,649,717,665,74,1560,482,
- 20,17,21,18,343,43,44,387,385,523,
- 119,467,633,631,661,649,717,665,93,482,
- 20,17,21,18,343,43,44,387,385,523,
- 110,467,633,631,661,649,717,665,93,482,
- 20,17,21,18,343,33,1562,482,20,17,
- 21,18,343,43,39,482,20,17,21,18,
- 343,43,44,387,385,523,211,467,633,631,
- 661,649,717,665,93,482,20,17,21,18,
- 343,43,44,387,385,523,31,467,633,631,
- 661,649,717,665,93,657,683,1636,71,295,
- 1351,157,1656,482,20,17,21,18,343,43,
- 38,482,20,17,21,18,343,43,44,387,
- 385,523,201,467,633,631,661,649,717,665,
- 93,482,20,17,21,18,343,43,44,387,
- 385,523,611,467,633,631,661,649,1177,344,
- 436,71,297,1561,1488,1566,50,619,202,482,
- 20,17,21,18,343,43,44,801,273,562,
- 699,254,212,163,217,1181,220,1461,222,223,
- 228,1532,275,266,1136,670,271,557,465,97,
- 262,71,1353,276,253,212,273,487,1690,520,
- 263,656,217,1181,220,1461,222,223,228,254,
- 212,266,1136,670,271,352,1284,641,1711,217,
- 1181,220,1461,222,223,228,512,227,1428,444,
- 683,549,189,178,292,1711,260,482,20,17,
- 21,18,343,43,44,387,385,523,490,467,
- 633,631,1129,134,212,89,97,1529,585,209,
- 137,133,135,159,482,20,17,21,18,343,
- 43,44,387,385,523,705,467,633,1137,31,
- 501,1353,292,1211,640,139,165,283,259,1675,
- 1260,292,143,146,149,152,626,445,662,1690,
- 458,273,1264,1348,377,19,1602,218,1181,220,
- 1461,222,223,228,1679,608,268,1136,670,271,
- 217,1181,220,1461,222,223,228,482,20,17,
- 21,18,343,43,44,822,1357,482,20,17,
- 21,18,343,43,44,387,385,523,208,1010,
- 482,20,17,21,18,343,43,44,387,385,
- 523,259,1081,1076,1354,31,540,394,292,197,
- 199,684,1690,582,688,661,1603,623,1558,1595,
- 482,20,17,21,18,343,43,44,387,385,
- 885,23,538,217,1181,220,1461,222,223,228,
- 482,20,17,21,18,343,43,37,490,1357,
- 482,20,17,21,18,343,43,44,387,385,
- 906,482,20,17,21,18,343,43,44,387,
- 927,482,20,17,21,18,343,43,44,387,
- 948,253,198,199,232,153,153,179,292,97,
- 31,241,1517,365,20,17,21,18,343,43,
- 36,1642,1756,1756,276,134,212,273,595,22,
- 240,272,141,133,135,159,1347,245,1756,1756,
- 1756,570,266,1136,670,271,365,20,17,21,
- 18,343,43,36,1756,1264,1756,140,165,1428,
- 218,1181,220,1461,222,223,228,226,490,1756,
- 246,482,20,17,21,18,343,43,36,482,
- 20,17,21,18,343,43,35,116,482,20,
- 17,21,18,343,43,47,1756,413,1236,482,
- 20,17,21,18,343,43,46,663,606,374,
- 153,153,413,273,482,20,17,21,18,343,
- 43,45,1122,606,1211,31,292,153,266,1136,
- 670,271,31,31,242,241,316,1122,163,1211,
- 153,97,153,316,512,265,490,1602,258,278,
- 196,243,1546,1756,1276,28,490,196,610,253,
- 212,1197,1255,258,244,87,294,1546,1211,1276,
- 1262,631,87,87,1507,494,652,1262,1425,134,
- 212,1507,711,501,1353,203,144,133,135,159,
- 673,1255,134,212,1168,180,1214,134,212,147,
- 133,135,159,1271,150,133,135,159,273,1264,
- 1756,134,212,163,1756,1756,48,545,153,133,
- 135,159,142,268,1136,670,271,606,606,614,
- 1756,1756,95,606,253,212,153,395,403,403,
- 606,196,1122,606,193,31,1756,196,512,1649,
- 1637,208,292,645,1122,490,512,196,1756,634,
- 296,277,230,1756,606,371,1210,1354,258,444,
- 97,371,1712,1756,1276,279,1756,87,1122,1756,
- 258,371,314,191,1672,87,1276,1756,1756,191,
- 1149,292,292,342,204,1388,1652,1211,937,192,
- 1756,1576,1652,1756,259,28,1756,1756,1756,1756,
- 1713,1197,1756,1756,224,229,233,1756,1756,1756,
- 1448,1756,1756,1756,327,1756,0,20,178,0,
- 1,1981,0,1,1992,0
+ 109,109,110,110,110,110,110,113,113,25,
+ 25,25,25,25,28,28,28,78,78,73,
+ 73,73,73,74,74,74,75,75,75,76,
+ 76,76,77,77,77,115,115,116,116,117,
+ 29,31,31,31,31,31,53,54,54,54,
+ 54,54,54,54,54,54,54,54,54,63,
+ 60,60,89,90,65,65,61,61,61,66,
+ 79,79,80,80,67,67,67,49,91,91,
+ 81,82,82,82,62,62,92,83,83,84,
+ 84,68,68,21,22,22,22,30,48,48,
+ 32,32,32,32,35,35,37,33,33,34,
+ 38,38,118,118,36,119,119,93,93,26,
+ 26,26,26,26,26,26,26,26,85,50,
+ 50,50,50,27,56,56,55,55,55,57,
+ 57,51,51,94,94,71,71,58,58,58,
+ 41,41,41,42,43,43,43,44,44,44,
+ 44,64,64,46,46,52,96,95,95,95,
+ 95,86,97,98,98,99,99,100,100,120,
+ 120,121,121,122,122,122,122,124,124,123,
+ 123,123,125,126,126,87,87,1,781,17,
+ 21,18,344,739,44,388,386,524,293,468,
+ 634,632,662,650,718,666,74,91,135,213,
+ 431,236,108,991,687,137,134,136,160,275,
+ 20,17,21,18,344,739,44,388,386,524,
+ 1154,468,634,632,662,650,718,666,74,1427,
+ 139,166,519,239,71,31,31,143,146,149,
+ 152,199,446,1269,71,187,246,1229,69,340,
+ 1425,1579,1592,1597,1611,1213,424,20,17,21,
+ 18,344,739,44,388,386,524,341,468,634,
+ 632,662,650,718,666,74,281,335,20,17,
+ 21,18,344,739,44,388,386,524,341,468,
+ 634,632,662,650,718,666,74,281,1356,443,
+ 293,195,282,583,25,210,104,384,1198,482,
+ 20,17,21,18,344,43,44,388,386,524,
+ 287,468,970,282,71,31,255,213,6,1198,
+ 482,20,17,21,18,344,43,44,388,386,
+ 844,289,288,482,20,17,21,18,344,43,
+ 40,1076,453,20,17,21,18,344,739,44,
+ 388,386,524,290,468,634,632,662,650,718,
+ 666,74,281,482,20,17,21,18,344,739,
+ 44,388,386,524,10,468,634,632,662,650,
+ 718,666,74,91,24,342,71,186,282,281,
+ 1279,71,188,294,1198,482,20,17,21,18,
+ 344,43,44,388,386,865,291,540,20,17,
+ 21,18,344,739,44,388,386,524,1634,468,
+ 634,632,662,650,718,666,74,1531,511,20,
+ 17,21,18,344,41,340,305,20,17,21,
+ 18,344,739,44,388,386,524,429,468,634,
+ 632,662,650,718,666,74,1532,189,179,163,
+ 240,482,20,17,21,18,344,43,44,388,
+ 386,524,31,468,634,632,662,1180,135,213,
+ 254,213,327,396,14,137,134,136,160,482,
+ 20,17,21,18,344,739,44,388,386,524,
+ 516,468,634,632,662,650,718,666,74,92,
+ 139,166,156,536,124,1131,243,143,146,149,
+ 152,295,446,482,20,17,21,18,344,34,
+ 1425,1579,1592,1597,1611,1213,482,20,17,21,
+ 18,344,739,44,388,386,524,275,468,634,
+ 632,662,650,718,666,74,85,482,20,17,
+ 21,18,344,739,44,388,386,524,172,468,
+ 634,632,662,650,718,666,74,84,482,20,
+ 17,21,18,344,739,44,388,386,524,530,
+ 468,634,632,662,650,718,666,74,83,482,
+ 20,17,21,18,344,739,44,388,386,524,
+ 283,468,634,632,662,650,718,666,74,82,
+ 482,20,17,21,18,344,739,44,388,386,
+ 524,569,468,634,632,662,650,718,666,74,
+ 81,482,20,17,21,18,344,739,44,388,
+ 386,524,151,468,634,632,662,650,718,666,
+ 74,80,482,20,17,21,18,344,739,44,
+ 388,386,524,194,468,634,632,662,650,718,
+ 666,74,79,482,20,17,21,18,344,739,
+ 44,388,386,524,30,468,634,632,662,650,
+ 718,666,74,78,482,20,17,21,18,344,
+ 739,44,388,386,524,441,468,634,632,662,
+ 650,718,666,74,77,482,20,17,21,18,
+ 344,739,44,388,386,524,470,468,634,632,
+ 662,650,718,666,74,76,482,20,17,21,
+ 18,344,739,44,388,386,524,500,468,634,
+ 632,662,650,718,666,74,75,482,20,17,
+ 21,18,344,739,44,388,386,524,313,468,
+ 634,632,662,650,718,666,74,73,482,20,
+ 17,21,18,344,739,44,388,386,524,343,
+ 468,634,632,662,650,718,666,74,1548,482,
+ 20,17,21,18,344,739,44,388,386,524,
+ 44,468,634,632,662,650,718,666,74,1561,
+ 482,20,17,21,18,344,43,44,388,386,
+ 524,119,468,634,632,662,650,718,666,93,
+ 482,20,17,21,18,344,43,44,388,386,
+ 524,110,468,634,632,662,650,718,666,93,
+ 482,20,17,21,18,344,33,1563,482,20,
+ 17,21,18,344,43,39,482,20,17,21,
+ 18,344,43,44,388,386,524,212,468,634,
+ 632,662,650,718,666,93,482,20,17,21,
+ 18,344,43,44,388,386,524,31,468,634,
+ 632,662,650,718,666,93,657,683,1637,71,
+ 296,1352,157,1657,482,20,17,21,18,344,
+ 43,38,482,20,17,21,18,344,43,44,
+ 388,386,524,202,468,634,632,662,650,718,
+ 666,93,482,20,17,21,18,344,43,44,
+ 388,386,524,611,468,634,632,662,650,1178,
+ 344,436,71,298,1562,1489,1567,50,619,203,
+ 482,20,17,21,18,344,43,44,802,274,
+ 562,699,255,213,163,218,1182,221,1462,223,
+ 224,229,1533,276,267,1137,671,272,557,465,
+ 97,263,71,1354,277,254,213,274,487,1691,
+ 520,264,656,218,1182,221,1462,223,224,229,
+ 255,213,267,1137,671,272,352,1285,641,1712,
+ 218,1182,221,1462,223,224,229,513,228,1429,
+ 445,683,549,189,179,292,1712,261,482,20,
+ 17,21,18,344,43,44,388,386,524,490,
+ 468,634,632,1130,135,213,89,97,1530,586,
+ 210,138,134,136,160,482,20,17,21,18,
+ 344,43,44,388,386,524,705,468,634,1138,
+ 31,501,1354,292,1212,640,140,166,284,259,
+ 1676,1261,292,144,147,150,153,626,446,662,
+ 1691,458,274,1265,1349,377,19,1603,219,1182,
+ 221,1462,223,224,229,1680,609,269,1137,671,
+ 272,218,1182,221,1462,223,224,229,482,20,
+ 17,21,18,344,43,44,823,1358,482,20,
+ 17,21,18,344,43,44,388,386,524,209,
+ 1011,482,20,17,21,18,344,43,44,388,
+ 386,524,259,1082,1077,1355,31,541,394,292,
+ 198,200,684,1691,582,688,661,1604,623,1559,
+ 1596,482,20,17,21,18,344,43,44,388,
+ 386,886,23,539,218,1182,221,1462,223,224,
+ 229,482,20,17,21,18,344,43,37,490,
+ 1358,482,20,17,21,18,344,43,44,388,
+ 386,907,482,20,17,21,18,344,43,44,
+ 388,928,482,20,17,21,18,344,43,44,
+ 388,949,253,199,200,232,153,153,180,292,
+ 97,31,241,1518,365,20,17,21,18,344,
+ 43,36,1643,1757,1757,277,135,213,274,595,
+ 22,241,273,142,134,136,160,1348,246,1757,
+ 1757,1757,570,267,1137,671,272,365,20,17,
+ 21,18,344,43,36,1757,1265,1757,141,166,
+ 1429,219,1182,221,1462,223,224,229,227,490,
+ 1757,247,482,20,17,21,18,344,43,36,
+ 482,20,17,21,18,344,43,35,116,482,
+ 20,17,21,18,344,43,47,1757,413,1237,
+ 482,20,17,21,18,344,43,46,664,607,
+ 374,153,153,413,274,482,20,17,21,18,
+ 344,43,45,1123,607,1212,31,292,153,267,
+ 1137,671,272,31,31,243,242,317,1123,163,
+ 1212,153,97,153,317,513,266,490,1603,259,
+ 279,197,244,1547,1757,1277,28,490,197,610,
+ 254,213,1198,1256,259,245,87,295,1547,1212,
+ 1277,1263,631,87,87,1508,494,652,1263,1426,
+ 135,213,1508,711,501,1354,204,145,134,136,
+ 160,673,1256,135,213,1169,181,1215,135,213,
+ 148,134,136,160,1272,151,134,136,160,274,
+ 1265,1757,135,213,163,1757,1757,48,545,154,
+ 134,136,160,142,269,1137,671,272,607,607,
+ 614,1757,1757,95,607,254,213,153,395,403,
+ 403,607,197,1123,607,194,31,1757,197,513,
+ 1650,1638,209,292,645,1123,490,513,197,1757,
+ 634,297,278,231,1757,607,372,1211,1355,259,
+ 445,97,372,1713,1757,1277,280,1757,87,1123,
+ 1757,259,372,315,192,1673,87,1277,1757,1757,
+ 192,1150,292,292,342,205,1389,1653,1212,938,
+ 193,1757,1577,1653,1757,260,28,1757,1757,1757,
+ 1757,1714,1198,1757,1757,225,230,234,1757,1757,
+ 1757,1449,1757,1757,1757,328,1757,0,20,179,
+ 0,1,1983,0,1,1994,0
};
};
public final static char baseAction[] = BaseAction.baseAction;
@@ -492,82 +492,82 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface TermAction {
public final static char termAction[] = {0,
- 1756,1767,1545,1768,1491,59,1969,1970,1971,54,
- 1380,1083,1918,62,1499,1019,672,1919,1917,1972,
- 1920,577,1916,1769,1770,1771,1772,1027,482,58,
- 1,1923,1928,1927,1925,1926,1924,1929,1930,1922,
- 1931,1932,1933,63,1280,596,380,1756,1,269,
- 1,1658,190,1,1,1,1401,1411,348,1,
- 1390,1360,544,469,1,1,1,1,48,1,
- 1756,1767,1534,1768,1330,1317,1401,1411,1,1,
+ 1757,1768,1546,1769,1492,59,1971,1972,1973,54,
+ 1381,1084,1920,62,1500,1020,673,1921,1919,1974,
+ 1922,578,1918,1770,1771,1772,1773,1028,483,58,
+ 1,1925,1930,1929,1927,1928,1926,1931,1932,1924,
+ 1933,1934,1935,63,1281,597,381,1757,1,270,
+ 1,1659,191,1,1,1,1402,1412,349,1,
+ 1391,1361,545,470,1,1,1,1,48,1,
+ 1757,1768,1535,1769,1331,1318,1402,1412,1,1,
1,1,1,1,1,1,1,1,1,1,
- 190,1,1,1,1756,1,252,1,1951,189,
- 1,1,1,181,1330,1317,1,1756,1767,61,
- 1768,1,1,1,1,264,1,1421,182,1,
- 1066,1519,1508,285,348,1,1,1,1,1,
- 1,1,1,1,1,1,1,189,1,1,
- 1,1756,1,1756,1,1951,190,1,1,1,
- 50,1756,1756,1,1534,66,60,1760,1,1,
- 1,1,1756,1,1390,1360,544,469,1969,1970,
- 1971,70,1,1,1,1,1,1,1,1,
- 1,1,1,1,190,1,1,1,1756,1767,
- 1756,1768,1951,49,1969,1970,1971,1534,184,2781,
- 1918,2781,1759,1519,1508,1919,1917,1972,1920,247,
- 1916,1390,1360,544,469,1969,1970,1971,1244,1923,
- 1928,1927,1925,1926,1924,1929,1930,1922,1931,1932,
- 1933,128,1280,596,380,1756,610,1969,1970,1971,
- 1756,1993,72,1918,979,51,1519,1508,1919,1917,
- 1972,1920,1,1916,1421,1307,1139,1762,1,1981,
- 1167,348,1923,1928,1927,1925,1926,1924,1929,1930,
- 1922,1931,1932,1933,1,1767,1545,1768,1433,1760,
- 1756,1767,1761,1768,1380,1083,556,1078,1499,1019,
- 672,1756,1756,1259,270,577,1762,1769,1770,1771,
- 1772,1027,482,348,1756,1767,1545,1768,1466,1760,
- 1111,1665,53,1756,1380,1083,958,1055,1499,1019,
- 672,1761,1307,1139,1759,577,64,1769,1770,1771,
- 1772,1027,482,1756,1,1767,1545,1768,1491,29,
- 448,1756,52,67,1380,1083,1762,2664,1499,1019,
- 672,1,1307,1139,1759,577,90,1769,1770,1771,
- 1772,1027,482,1756,1756,1767,1545,1768,1491,1760,
- 1431,1761,1746,1756,1380,1083,248,29,1499,1019,
- 672,90,1,1,1,577,2664,1769,1770,1771,
- 1772,1027,482,249,1756,1,1,1,1,1,
- 1,1,1,1756,1,1,1244,1762,1,1,
- 1,1756,1,1756,1759,1,252,1,1,1,
- 1,1,1,1,1767,1545,1768,1491,183,2789,
- 88,2789,1761,1380,1083,250,2664,1499,1019,672,
- 57,1969,1970,1971,577,2071,1769,1770,1771,1772,
- 1027,482,1756,1767,1545,1768,1491,205,2790,638,
- 2790,2013,1380,1083,251,2664,1499,1019,672,56,
- 1969,1970,1971,577,1756,1769,1770,1771,1772,1027,
- 482,1756,1767,1545,1768,1491,71,1401,1411,1756,
- 1756,1380,1083,1756,1764,1499,1019,672,1766,55,
- 207,1767,577,1768,1769,1770,1771,1772,1027,482,
- 1756,1767,1552,1768,1491,68,1401,1411,1,69,
- 1380,1083,1341,1766,1499,1019,672,206,1171,43,
- 1171,577,1763,1769,1770,1771,1772,1027,482,1,
- 1767,1545,1768,1491,1,1753,1401,1411,1756,1380,
- 1083,610,1169,1499,1019,672,1,1981,1167,1765,
- 577,1756,1769,1770,1771,1772,1027,482,20,221,
- 1747,1659,1747,1747,178,178,178,1747,348,1217,
- 178,210,291,1217,1765,178,178,178,178,895,
- 178,1035,284,2013,252,1981,1167,375,1747,874,
- 853,832,811,790,748,769,727,706,685,129,
- 261,1981,1150,1,1,1969,1970,1971,65,348,
- 916,1918,200,1756,1756,255,1919,1917,1972,1920,
- 130,1916,448,42,1131,375,1969,1970,1971,1756,
- 1756,999,1918,1429,1,1756,2664,1919,1917,1972,
- 1920,131,1916,621,1673,219,30,1969,1970,1971,
- 1756,1756,2013,1918,348,1756,1756,1756,1919,1917,
- 1972,1920,132,1916,1345,1756,1756,1756,1969,1970,
- 1971,1091,30,1756,1918,416,32,206,1195,1919,
- 1917,1972,1920,2012,1916,1553,1430,1756,1,1750,
- 1150,1782,1783,1762,267,1981,1150,348,252,188,
- 267,1785,1421,348,252,1756,2599,188,188,348,
- 491,1756,184,1756,1756,1756,1756,1756,1761,1756,
- 183,205,1756,1756,1756,1756,1756,1756,463,1756,
- 1756,1756,1756,1756,1756,1756,1756,1756,1756,1756,
- 1756,1756,1756,373
+ 191,1,1,1,1757,1,253,1,1953,190,
+ 1,1,1,182,1331,1318,1,1757,1768,61,
+ 1769,1,1,1,1,265,1,1422,183,1,
+ 1067,1520,1509,286,349,1,1,1,1,1,
+ 1,1,1,1,1,1,1,190,1,1,
+ 1,1757,1,1757,1,1953,191,1,1,1,
+ 50,1757,1757,1,1535,66,60,1761,1,1,
+ 1,1,1757,1,1391,1361,545,470,1971,1972,
+ 1973,70,1,1,1,1,1,1,1,1,
+ 1,1,1,1,191,1,1,1,1757,1768,
+ 1757,1769,1953,49,1971,1972,1973,1535,185,2783,
+ 1920,2783,1760,1520,1509,1921,1919,1974,1922,248,
+ 1918,1391,1361,545,470,1971,1972,1973,1245,1925,
+ 1930,1929,1927,1928,1926,1931,1932,1924,1933,1934,
+ 1935,129,1281,597,381,1757,611,1971,1972,1973,
+ 1757,1995,72,1920,980,51,1520,1509,1921,1919,
+ 1974,1922,1,1918,1422,1308,1140,1763,1,1983,
+ 1168,349,1925,1930,1929,1927,1928,1926,1931,1932,
+ 1924,1933,1934,1935,1,1768,1546,1769,1434,1761,
+ 1757,1768,1762,1769,1381,1084,557,1079,1500,1020,
+ 673,1757,1757,1260,271,578,1763,1770,1771,1772,
+ 1773,1028,483,349,1757,1768,1546,1769,1467,1761,
+ 1112,1666,53,1757,1381,1084,959,1056,1500,1020,
+ 673,1762,1308,1140,1760,578,64,1770,1771,1772,
+ 1773,1028,483,1757,1,1768,1546,1769,1492,29,
+ 449,1757,52,67,1381,1084,1763,2666,1500,1020,
+ 673,1,1308,1140,1760,578,90,1770,1771,1772,
+ 1773,1028,483,1757,1757,1768,1546,1769,1492,1761,
+ 1432,1762,1747,1757,1381,1084,249,29,1500,1020,
+ 673,90,1,1,1,578,2666,1770,1771,1772,
+ 1773,1028,483,250,1757,1,1,1,1,1,
+ 1,1,1,1757,1,1,1245,1763,1,1,
+ 1,1757,1,1757,1760,1,253,1,1,1,
+ 1,1,1,1,1768,1546,1769,1492,184,2791,
+ 88,2791,1762,1381,1084,251,2666,1500,1020,673,
+ 57,1971,1972,1973,578,2073,1770,1771,1772,1773,
+ 1028,483,1757,1768,1546,1769,1492,206,2792,639,
+ 2792,2015,1381,1084,252,2666,1500,1020,673,56,
+ 1971,1972,1973,578,1757,1770,1771,1772,1773,1028,
+ 483,1757,1768,1546,1769,1492,71,1402,1412,1757,
+ 1757,1381,1084,1757,1765,1500,1020,673,1767,55,
+ 208,1768,578,1769,1770,1771,1772,1773,1028,483,
+ 1757,1768,1553,1769,1492,68,1402,1412,1,69,
+ 1381,1084,1342,1767,1500,1020,673,207,1172,43,
+ 1172,578,1764,1770,1771,1772,1773,1028,483,1,
+ 1768,1546,1769,1492,1,1754,1402,1412,1757,1381,
+ 1084,611,1170,1500,1020,673,1,1983,1168,1766,
+ 578,1757,1770,1771,1772,1773,1028,483,20,222,
+ 1748,1660,1748,1748,179,179,179,1748,349,1218,
+ 179,211,292,1218,1766,179,179,179,179,896,
+ 179,1036,285,2015,253,1983,1168,376,1748,875,
+ 854,833,812,791,749,770,728,707,686,130,
+ 262,1983,1151,1,1,1971,1972,1973,65,349,
+ 917,1920,201,1757,1757,256,1921,1919,1974,1922,
+ 131,1918,449,42,1132,376,1971,1972,1973,1757,
+ 1757,1000,1920,1430,1,1757,2666,1921,1919,1974,
+ 1922,132,1918,622,1674,220,30,1971,1972,1973,
+ 1757,1757,2015,1920,349,1757,1757,1757,1921,1919,
+ 1974,1922,133,1918,1346,1757,1757,1757,1971,1972,
+ 1973,1092,30,1757,1920,417,32,207,1196,1921,
+ 1919,1974,1922,2014,1918,1554,1431,1757,1,1751,
+ 1151,1783,1784,1763,268,1983,1151,349,253,189,
+ 268,1786,1422,349,253,1757,2601,189,189,349,
+ 492,1757,185,1757,1757,1757,1757,1757,1762,1757,
+ 184,206,1757,1757,1757,1757,1757,1757,464,1757,
+ 1757,1757,1757,1757,1757,1757,1757,1757,1757,1757,
+ 1757,1757,1757,374
};
};
public final static char termAction[] = TermAction.termAction;
@@ -819,16 +819,16 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface ScopeState {
public final static char scopeState[] = {0,
- 442,0,340,0,1642,1652,1636,0,1448,1341,
- 1167,1268,1255,1150,1122,0,491,416,395,1679,
- 1529,0,606,1212,316,0,1461,1181,1136,670,
- 1255,1150,1122,1602,1421,1507,0,1466,1433,610,
- 1111,1244,1217,1330,1317,448,1411,1401,1390,1360,
- 544,469,1534,1519,1508,1307,1139,1019,672,1499,
- 1491,1380,1083,1027,482,577,1091,1055,1035,491,
- 999,979,958,937,585,916,556,348,895,874,
- 853,832,811,790,769,748,727,706,685,316,
- 638,512,416,395,0
+ 443,0,341,0,1643,1653,1637,0,1449,1342,
+ 1168,1269,1256,1151,1123,0,492,417,396,1680,
+ 1530,0,607,1213,317,0,1462,1182,1137,671,
+ 1256,1151,1123,1603,1422,1508,0,1467,1434,611,
+ 1112,1245,1218,1331,1318,449,1412,1402,1391,1361,
+ 545,470,1535,1520,1509,1308,1140,1020,673,1500,
+ 1492,1381,1084,1028,483,578,1092,1056,1036,492,
+ 1000,980,959,938,586,917,557,349,896,875,
+ 854,833,812,791,770,749,728,707,686,317,
+ 639,513,417,396,0
};
};
public final static char scopeState[] = ScopeState.scopeState;
@@ -1054,18 +1054,18 @@ public class C99NoCastExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public final static int
NUM_STATES = 207,
NT_OFFSET = 93,
- LA_STATE_OFFSET = 2071,
+ LA_STATE_OFFSET = 2073,
MAX_LA = 2,
- NUM_RULES = 315,
+ NUM_RULES = 316,
NUM_NONTERMINALS = 126,
NUM_SYMBOLS = 219,
SEGMENT_SIZE = 8192,
- START_STATE = 1657,
+ START_STATE = 1658,
IDENTIFIER_SYMBOL = 0,
EOFT_SYMBOL = 80,
EOLT_SYMBOL = 80,
- ACCEPT_ACTION = 1746,
- ERROR_ACTION = 1756;
+ ACCEPT_ACTION = 1747,
+ ERROR_ACTION = 1757;
public final static boolean BACKTRACK = true;
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99NoCastExpressionParsersym.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99NoCastExpressionParsersym.java
index b2a092453a..4170739e85 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99NoCastExpressionParsersym.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99NoCastExpressionParsersym.java
@@ -1,5 +1,5 @@
/*******************************************************************************
-* Copyright (c) 2006, 2009 IBM Corporation and others.
+* Copyright (c) 2006, 2010 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99Parser.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99Parser.java
index a8783e32cb..d2ce4a2f29 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99Parser.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99Parser.java
@@ -1,5 +1,5 @@
/*******************************************************************************
-* Copyright (c) 2006, 2009 IBM Corporation and others.
+* Copyright (c) 2006, 2010 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -661,589 +661,595 @@ public String getName() {
//
// Rule 118: iteration_statement ::= do statement while ( expression ) ;
//
- case 118: { action. consumeStatementDoLoop(); break;
+ case 118: { action. consumeStatementDoLoop(true); break;
}
//
- // Rule 119: iteration_statement ::= while ( expression ) statement
+ // Rule 119: iteration_statement ::= do statement
//
- case 119: { action. consumeStatementWhileLoop(); break;
+ case 119: { action. consumeStatementDoLoop(false); break;
}
//
- // Rule 120: iteration_statement ::= for ( expression_opt ; expression_opt ; expression_opt ) statement
+ // Rule 120: iteration_statement ::= while ( expression ) statement
//
- case 120: { action. consumeStatementForLoop(); break;
+ case 120: { action. consumeStatementWhileLoop(); break;
}
//
- // Rule 121: iteration_statement ::= for ( declaration expression_opt ; expression_opt ) statement
+ // Rule 121: iteration_statement ::= for ( expression_opt ; expression_opt ; expression_opt ) statement
//
case 121: { action. consumeStatementForLoop(); break;
}
//
- // Rule 122: jump_statement ::= goto identifier_token ;
+ // Rule 122: iteration_statement ::= for ( declaration expression_opt ; expression_opt ) statement
//
- case 122: { action. consumeStatementGoto(); break;
+ case 122: { action. consumeStatementForLoop(); break;
}
//
- // Rule 123: jump_statement ::= continue ;
+ // Rule 123: jump_statement ::= goto identifier_token ;
//
- case 123: { action. consumeStatementContinue(); break;
+ case 123: { action. consumeStatementGoto(); break;
}
//
- // Rule 124: jump_statement ::= break ;
+ // Rule 124: jump_statement ::= continue ;
//
- case 124: { action. consumeStatementBreak(); break;
+ case 124: { action. consumeStatementContinue(); break;
}
//
- // Rule 125: jump_statement ::= return ;
+ // Rule 125: jump_statement ::= break ;
//
- case 125: { action. consumeStatementReturn(false); break;
+ case 125: { action. consumeStatementBreak(); break;
}
//
- // Rule 126: jump_statement ::= return expression ;
+ // Rule 126: jump_statement ::= return ;
//
- case 126: { action. consumeStatementReturn(true); break;
+ case 126: { action. consumeStatementReturn(false); break;
}
//
- // Rule 127: declaration ::= declaration_specifiers ;
+ // Rule 127: jump_statement ::= return expression ;
//
- case 127: { action. consumeDeclarationSimple(false); break;
+ case 127: { action. consumeStatementReturn(true); break;
}
//
- // Rule 128: declaration ::= declaration_specifiers <openscope-ast> init_declarator_list ;
+ // Rule 128: declaration ::= declaration_specifiers ;
//
- case 128: { action. consumeDeclarationSimple(true); break;
+ case 128: { action. consumeDeclarationSimple(false); break;
}
//
- // Rule 129: declaration_specifiers ::= <openscope-ast> simple_declaration_specifiers
+ // Rule 129: declaration ::= declaration_specifiers <openscope-ast> init_declarator_list ;
//
- case 129: { action. consumeDeclarationSpecifiersSimple(); break;
+ case 129: { action. consumeDeclarationSimple(true); break;
}
//
- // Rule 130: declaration_specifiers ::= <openscope-ast> struct_or_union_declaration_specifiers
+ // Rule 130: declaration_specifiers ::= <openscope-ast> simple_declaration_specifiers
//
- case 130: { action. consumeDeclarationSpecifiersStructUnionEnum(); break;
+ case 130: { action. consumeDeclarationSpecifiersSimple(); break;
}
//
- // Rule 131: declaration_specifiers ::= <openscope-ast> elaborated_declaration_specifiers
+ // Rule 131: declaration_specifiers ::= <openscope-ast> struct_or_union_declaration_specifiers
//
case 131: { action. consumeDeclarationSpecifiersStructUnionEnum(); break;
}
//
- // Rule 132: declaration_specifiers ::= <openscope-ast> enum_declaration_specifiers
+ // Rule 132: declaration_specifiers ::= <openscope-ast> elaborated_declaration_specifiers
//
case 132: { action. consumeDeclarationSpecifiersStructUnionEnum(); break;
}
//
- // Rule 133: declaration_specifiers ::= <openscope-ast> typdef_name_declaration_specifiers
+ // Rule 133: declaration_specifiers ::= <openscope-ast> enum_declaration_specifiers
//
- case 133: { action. consumeDeclarationSpecifiersTypedefName(); break;
+ case 133: { action. consumeDeclarationSpecifiersStructUnionEnum(); break;
}
//
- // Rule 158: init_declarator ::= complete_declarator = initializer
+ // Rule 134: declaration_specifiers ::= <openscope-ast> typdef_name_declaration_specifiers
//
- case 158: { action. consumeDeclaratorWithInitializer(true); break;
+ case 134: { action. consumeDeclarationSpecifiersTypedefName(); break;
}
//
- // Rule 160: storage_class_specifier ::= storage_class_specifier_token
+ // Rule 159: init_declarator ::= complete_declarator = initializer
//
- case 160: { action. consumeToken(); break;
+ case 159: { action. consumeDeclaratorWithInitializer(true); break;
}
//
- // Rule 166: simple_type_specifier ::= simple_type_specifier_token
+ // Rule 161: storage_class_specifier ::= storage_class_specifier_token
//
- case 166: { action. consumeToken(); break;
+ case 161: { action. consumeToken(); break;
}
//
- // Rule 179: type_name_specifier ::= identifier_token
+ // Rule 167: simple_type_specifier ::= simple_type_specifier_token
//
- case 179: { action. consumeToken(); break;
+ case 167: { action. consumeToken(); break;
}
//
- // Rule 180: struct_or_union_specifier ::= struct_or_union struct_or_union_specifier_hook { <openscope-ast> struct_declaration_list_opt }
+ // Rule 180: type_name_specifier ::= identifier_token
//
- case 180: { action. consumeTypeSpecifierComposite(false); break;
+ case 180: { action. consumeToken(); break;
}
//
- // Rule 181: 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 }
+ // Rule 181: struct_or_union_specifier ::= struct_or_union struct_or_union_specifier_hook { <openscope-ast> struct_declaration_list_opt }
//
- case 181: { action. consumeTypeSpecifierComposite(true); break;
+ case 181: { action. consumeTypeSpecifierComposite(false); break;
}
//
- // Rule 186: elaborated_specifier ::= struct elaborated_specifier_hook identifier_token
+ // 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 186: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_struct); break;
+ case 182: { action. consumeTypeSpecifierComposite(true); break;
}
//
- // Rule 187: elaborated_specifier ::= union elaborated_specifier_hook identifier_token
+ // Rule 187: elaborated_specifier ::= struct elaborated_specifier_hook identifier_token
//
- case 187: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_union); break;
+ case 187: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_struct); break;
}
//
- // Rule 188: elaborated_specifier ::= enum elaborated_specifier_hook identifier_token
+ // Rule 188: elaborated_specifier ::= union elaborated_specifier_hook identifier_token
//
- case 188: { action. consumeTypeSpecifierElaborated(IASTElaboratedTypeSpecifier.k_enum); break;
+ case 188: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_union); break;
}
//
- // Rule 194: struct_declaration ::= specifier_qualifier_list <openscope-ast> struct_declarator_list ;
+ // Rule 189: elaborated_specifier ::= enum elaborated_specifier_hook identifier_token
//
- case 194: { action. consumeStructDeclaration(true); break;
+ case 189: { action. consumeTypeSpecifierElaborated(IASTElaboratedTypeSpecifier.k_enum); break;
}
//
- // Rule 195: struct_declaration ::= specifier_qualifier_list ;
+ // Rule 195: struct_declaration ::= specifier_qualifier_list <openscope-ast> struct_declarator_list ;
//
- case 195: { action. consumeStructDeclaration(false); break;
+ case 195: { action. consumeStructDeclaration(true); break;
}
//
- // Rule 196: struct_declaration ::= ERROR_TOKEN
+ // Rule 196: struct_declaration ::= specifier_qualifier_list ;
//
- case 196: { action. consumeDeclarationProblem(); break;
+ case 196: { action. consumeStructDeclaration(false); break;
}
//
- // Rule 202: struct_declarator ::= : constant_expression
+ // Rule 197: struct_declaration ::= ERROR_TOKEN
//
- case 202: { action. consumeBitField(false); break;
+ case 197: { action. consumeDeclarationProblem(); break;
}
//
- // Rule 203: struct_declarator ::= declarator : constant_expression
+ // Rule 203: struct_declarator ::= : constant_expression
//
- case 203: { action. consumeBitField(true); break;
+ case 203: { action. consumeBitField(false); break;
}
//
- // Rule 204: enum_specifier ::= enum enum_specifier_hook { <openscope-ast> enumerator_list_opt comma_opt }
+ // Rule 204: struct_declarator ::= declarator : constant_expression
//
- case 204: { action. consumeTypeSpecifierEnumeration(false); break;
+ case 204: { action. consumeBitField(true); break;
}
//
- // Rule 205: enum_specifier ::= enum enum_specifier_hook identifier_token { <openscope-ast> enumerator_list_opt comma_opt }
+ // Rule 205: enum_specifier ::= enum enum_specifier_hook { <openscope-ast> enumerator_list_opt comma_opt }
//
- case 205: { action. consumeTypeSpecifierEnumeration(true); break;
+ case 205: { action. consumeTypeSpecifierEnumeration(false); break;
}
//
- // Rule 211: enumerator ::= identifier_token
+ // Rule 206: enum_specifier ::= enum enum_specifier_hook identifier_token { <openscope-ast> enumerator_list_opt comma_opt }
//
- case 211: { action. consumeEnumerator(false); break;
+ case 206: { action. consumeTypeSpecifierEnumeration(true); break;
}
//
- // Rule 212: enumerator ::= identifier_token = constant_expression
+ // Rule 212: enumerator ::= identifier_token
//
- case 212: { action. consumeEnumerator(true); break;
+ case 212: { action. consumeEnumerator(false); break;
}
//
- // Rule 213: type_qualifier ::= type_qualifier_token
+ // Rule 213: enumerator ::= identifier_token = constant_expression
//
- case 213: { action. consumeToken(); break;
+ case 213: { action. consumeEnumerator(true); break;
}
//
- // Rule 217: function_specifier ::= inline
+ // Rule 214: type_qualifier ::= type_qualifier_token
//
- case 217: { action. consumeToken(); break;
+ case 214: { action. consumeToken(); break;
}
//
- // Rule 219: declarator ::= <openscope-ast> pointer_seq direct_declarator
+ // Rule 218: function_specifier ::= inline
//
- case 219: { action. consumeDeclaratorWithPointer(true); break;
+ case 218: { action. consumeToken(); break;
}
//
- // Rule 224: basic_direct_declarator ::= declarator_id_name
+ // Rule 220: declarator ::= <openscope-ast> pointer_seq direct_declarator
//
- case 224: { action. consumeDirectDeclaratorIdentifier(); break;
+ case 220: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 225: basic_direct_declarator ::= ( declarator )
+ // Rule 225: basic_direct_declarator ::= declarator_id_name
//
- case 225: { action. consumeDirectDeclaratorBracketed(); break;
+ case 225: { action. consumeDirectDeclaratorIdentifier(); break;
}
//
- // Rule 226: declarator_id_name ::= identifier
+ // Rule 226: basic_direct_declarator ::= ( declarator )
//
- case 226: { action. consumeIdentifierName(); break;
+ case 226: { action. consumeDirectDeclaratorBracketed(); break;
}
//
- // Rule 227: array_direct_declarator ::= basic_direct_declarator array_modifier
+ // Rule 227: declarator_id_name ::= identifier
//
- case 227: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ case 227: { action. consumeIdentifierName(); break;
}
//
- // Rule 228: array_direct_declarator ::= array_direct_declarator array_modifier
+ // Rule 228: array_direct_declarator ::= basic_direct_declarator array_modifier
//
case 228: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 230: function_direct_declarator ::= basic_direct_declarator ( <openscope-ast> parameter_type_list )
+ // Rule 229: array_direct_declarator ::= array_direct_declarator array_modifier
//
- case 230: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
+ case 229: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 231: function_direct_declarator ::= basic_direct_declarator ( )
+ // Rule 231: function_direct_declarator ::= basic_direct_declarator ( <openscope-ast> parameter_type_list )
//
- case 231: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
+ case 231: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
}
//
- // Rule 233: function_declarator ::= <openscope-ast> pointer_seq function_direct_declarator
+ // Rule 232: function_direct_declarator ::= basic_direct_declarator ( )
//
- case 233: { action. consumeDeclaratorWithPointer(true); break;
+ case 232: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
}
//
- // Rule 234: knr_direct_declarator ::= basic_direct_declarator ( <openscope-ast> identifier_list )
+ // Rule 234: function_declarator ::= <openscope-ast> pointer_seq function_direct_declarator
//
- case 234: { action. consumeDirectDeclaratorFunctionDeclaratorKnR(); break;
+ case 234: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 236: knr_function_declarator ::= <openscope-ast> pointer_seq knr_direct_declarator
+ // Rule 235: knr_direct_declarator ::= basic_direct_declarator ( <openscope-ast> identifier_list )
//
- case 236: { action. consumeDeclaratorWithPointer(true); break;
+ case 235: { action. consumeDirectDeclaratorFunctionDeclaratorKnR(); break;
}
//
- // Rule 237: identifier_list ::= identifier
+ // Rule 237: knr_function_declarator ::= <openscope-ast> pointer_seq knr_direct_declarator
//
- case 237: { action. consumeIdentifierKnR(); break;
+ case 237: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 238: identifier_list ::= identifier_list , identifier
+ // Rule 238: identifier_list ::= identifier
//
case 238: { action. consumeIdentifierKnR(); break;
}
//
- // Rule 239: array_modifier ::= [ ]
+ // Rule 239: identifier_list ::= identifier_list , identifier
//
- case 239: { action. consumeDirectDeclaratorArrayModifier(false); break;
+ case 239: { action. consumeIdentifierKnR(); break;
}
//
- // Rule 240: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers ]
+ // Rule 240: array_modifier ::= [ ]
//
- case 240: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, false); break;
+ case 240: { action. consumeDirectDeclaratorArrayModifier(false); break;
}
//
- // Rule 241: array_modifier ::= [ assignment_expression ]
+ // Rule 241: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers ]
//
- case 241: { action. consumeDirectDeclaratorArrayModifier(true); break;
+ case 241: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, false); break;
}
//
- // Rule 242: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers assignment_expression ]
+ // Rule 242: array_modifier ::= [ assignment_expression ]
//
- case 242: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, true); break;
+ case 242: { action. consumeDirectDeclaratorArrayModifier(true); break;
}
//
- // Rule 243: array_modifier ::= [ static assignment_expression ]
+ // Rule 243: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers assignment_expression ]
//
- case 243: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, false, true); break;
+ case 243: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, true); break;
}
//
- // Rule 244: array_modifier ::= [ static <openscope-ast> array_modifier_type_qualifiers assignment_expression ]
+ // Rule 244: array_modifier ::= [ static assignment_expression ]
//
- case 244: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break;
+ case 244: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, false, true); break;
}
//
- // Rule 245: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers static assignment_expression ]
+ // Rule 245: array_modifier ::= [ static <openscope-ast> array_modifier_type_qualifiers assignment_expression ]
//
case 245: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break;
}
//
- // Rule 246: array_modifier ::= [ * ]
+ // Rule 246: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers static assignment_expression ]
//
- case 246: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, false, false); break;
+ case 246: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break;
}
//
- // Rule 247: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers * ]
+ // Rule 247: array_modifier ::= [ * ]
//
- case 247: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, true, false); break;
+ case 247: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, false, false); break;
}
//
- // Rule 249: pointer_seq ::= pointer_hook * pointer_hook
+ // Rule 248: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers * ]
//
- case 249: { action. consumePointer(); break;
+ case 248: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, true, false); break;
}
//
- // Rule 250: pointer_seq ::= pointer_seq pointer_hook * pointer_hook
+ // Rule 250: pointer_seq ::= pointer_hook * pointer_hook
//
case 250: { action. consumePointer(); break;
}
//
- // Rule 251: pointer_seq ::= pointer_hook * pointer_hook <openscope-ast> type_qualifier_list
+ // Rule 251: pointer_seq ::= pointer_seq pointer_hook * pointer_hook
//
- case 251: { action. consumePointerTypeQualifierList(); break;
+ case 251: { action. consumePointer(); break;
}
//
- // Rule 252: pointer_seq ::= pointer_seq pointer_hook * pointer_hook <openscope-ast> type_qualifier_list
+ // Rule 252: pointer_seq ::= pointer_hook * pointer_hook <openscope-ast> type_qualifier_list
//
case 252: { action. consumePointerTypeQualifierList(); break;
}
//
- // Rule 256: parameter_type_list ::= parameter_list
+ // Rule 253: pointer_seq ::= pointer_seq pointer_hook * pointer_hook <openscope-ast> type_qualifier_list
//
- case 256: { action. consumeEmpty(); break;
+ case 253: { action. consumePointerTypeQualifierList(); break;
}
//
- // Rule 257: parameter_type_list ::= parameter_list , ...
+ // Rule 257: parameter_type_list ::= parameter_list
//
- case 257: { action. consumePlaceHolder(); break;
+ case 257: { action. consumeEmpty(); break;
}
//
- // Rule 258: parameter_type_list ::= ...
+ // Rule 258: parameter_type_list ::= parameter_list , ...
//
case 258: { action. consumePlaceHolder(); break;
}
//
- // Rule 261: parameter_declaration ::= declaration_specifiers complete_parameter_declarator
+ // Rule 259: parameter_type_list ::= ...
//
- case 261: { action. consumeParameterDeclaration(); break;
+ case 259: { action. consumePlaceHolder(); break;
}
//
- // Rule 262: parameter_declaration ::= declaration_specifiers
+ // Rule 262: parameter_declaration ::= declaration_specifiers complete_parameter_declarator
//
- case 262: { action. consumeParameterDeclarationWithoutDeclarator(); break;
+ case 262: { action. consumeParameterDeclaration(); break;
}
//
- // Rule 265: type_id ::= specifier_qualifier_list
+ // Rule 263: parameter_declaration ::= declaration_specifiers
//
- case 265: { action. consumeTypeId(false); break;
+ case 263: { action. consumeParameterDeclarationWithoutDeclarator(); break;
}
//
- // Rule 266: type_id ::= specifier_qualifier_list abstract_declarator
+ // Rule 266: type_id ::= specifier_qualifier_list
//
- case 266: { action. consumeTypeId(true); break;
+ case 266: { action. consumeTypeId(false); break;
}
//
- // Rule 268: abstract_declarator ::= <openscope-ast> pointer_seq
+ // Rule 267: type_id ::= specifier_qualifier_list abstract_declarator
//
- case 268: { action. consumeDeclaratorWithPointer(false); break;
+ case 267: { action. consumeTypeId(true); break;
}
//
- // Rule 269: abstract_declarator ::= <openscope-ast> pointer_seq direct_abstract_declarator
+ // Rule 269: abstract_declarator ::= <openscope-ast> pointer_seq
//
- case 269: { action. consumeDeclaratorWithPointer(true); break;
+ case 269: { action. consumeDeclaratorWithPointer(false); break;
}
//
- // Rule 273: basic_direct_abstract_declarator ::= ( abstract_declarator )
+ // Rule 270: abstract_declarator ::= <openscope-ast> pointer_seq direct_abstract_declarator
//
- case 273: { action. consumeDirectDeclaratorBracketed(); break;
+ case 270: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 274: array_direct_abstract_declarator ::= array_modifier
+ // Rule 274: basic_direct_abstract_declarator ::= ( abstract_declarator )
//
- case 274: { action. consumeDirectDeclaratorArrayDeclarator(false); break;
+ case 274: { action. consumeDirectDeclaratorBracketed(); break;
}
//
- // Rule 275: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier
+ // Rule 275: array_direct_abstract_declarator ::= array_modifier
//
- case 275: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ case 275: { action. consumeDirectDeclaratorArrayDeclarator(false); break;
}
//
- // Rule 276: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier
+ // Rule 276: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier
//
case 276: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 277: function_direct_abstract_declarator ::= ( )
+ // Rule 277: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier
//
- case 277: { action. consumeDirectDeclaratorFunctionDeclarator(false, false); break;
+ case 277: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ }
+
+ //
+ // Rule 278: function_direct_abstract_declarator ::= ( )
+ //
+ case 278: { action. consumeDirectDeclaratorFunctionDeclarator(false, false); break;
}
//
- // Rule 278: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( )
+ // Rule 279: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( )
//
- case 278: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
+ case 279: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
}
//
- // Rule 279: function_direct_abstract_declarator ::= ( <openscope-ast> parameter_type_list )
+ // Rule 280: function_direct_abstract_declarator ::= ( <openscope-ast> parameter_type_list )
//
- case 279: { action. consumeDirectDeclaratorFunctionDeclarator(false, true); break;
+ case 280: { action. consumeDirectDeclaratorFunctionDeclarator(false, true); break;
}
//
- // Rule 280: 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 280: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
+ case 281: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
}
//
- // Rule 281: initializer ::= assignment_expression
+ // Rule 282: initializer ::= assignment_expression
//
- case 281: { action. consumeInitializer(); break;
+ case 282: { action. consumeInitializer(); break;
}
//
- // Rule 283: initializer_list ::= start_initializer_list { <openscope-ast> initializer_seq comma_opt } end_initializer_list
+ // Rule 284: initializer_list ::= start_initializer_list { <openscope-ast> initializer_seq comma_opt } end_initializer_list
//
- case 283: { action. consumeInitializerList(); break;
+ case 284: { action. consumeInitializerList(); break;
}
//
- // Rule 284: initializer_list ::= { <openscope-ast> }
+ // Rule 285: initializer_list ::= { <openscope-ast> }
//
- case 284: { action. consumeInitializerList(); break;
+ case 285: { action. consumeInitializerList(); break;
}
//
- // Rule 285: start_initializer_list ::= $Empty
+ // Rule 286: start_initializer_list ::= $Empty
//
- case 285: { action. initializerListStart(); break;
+ case 286: { action. initializerListStart(); break;
}
//
- // Rule 286: end_initializer_list ::= $Empty
+ // Rule 287: end_initializer_list ::= $Empty
//
- case 286: { action. initializerListEnd(); break;
+ case 287: { action. initializerListEnd(); break;
}
//
- // Rule 291: designated_initializer ::= <openscope-ast> designation = initializer
+ // Rule 292: designated_initializer ::= <openscope-ast> designation = initializer
//
- case 291: { action. consumeInitializerDesignated(); break;
+ case 292: { action. consumeInitializerDesignated(); break;
}
//
- // Rule 295: designator_base ::= [ constant_expression ]
+ // Rule 296: designator_base ::= [ constant_expression ]
//
- case 295: { action. consumeDesignatorArray(); break;
+ case 296: { action. consumeDesignatorArray(); break;
}
//
- // Rule 296: designator_base ::= . identifier_token
+ // Rule 297: designator_base ::= . identifier_token
//
- case 296: { action. consumeDesignatorField(); break;
+ case 297: { action. consumeDesignatorField(); break;
}
//
- // Rule 297: designator ::= [ constant_expression ]
+ // Rule 298: designator ::= [ constant_expression ]
//
- case 297: { action. consumeDesignatorArray(); break;
+ case 298: { action. consumeDesignatorArray(); break;
}
//
- // Rule 298: designator ::= . identifier_token
+ // Rule 299: designator ::= . identifier_token
//
- case 298: { action. consumeDesignatorField(); break;
+ case 299: { action. consumeDesignatorField(); break;
}
//
- // Rule 299: translation_unit ::= external_declaration_list
+ // Rule 300: translation_unit ::= external_declaration_list
//
- case 299: { action. consumeTranslationUnit(); break;
+ case 300: { action. consumeTranslationUnit(); break;
}
//
- // Rule 300: translation_unit ::= $Empty
+ // Rule 301: translation_unit ::= $Empty
//
- case 300: { action. consumeTranslationUnit(); break;
+ case 301: { action. consumeTranslationUnit(); break;
}
//
- // Rule 305: external_declaration ::= ;
+ // Rule 306: external_declaration ::= ;
//
- case 305: { action. consumeDeclarationEmpty(); break;
+ case 306: { action. consumeDeclarationEmpty(); break;
}
//
- // Rule 306: external_declaration ::= ERROR_TOKEN
+ // Rule 307: external_declaration ::= ERROR_TOKEN
//
- case 306: { action. consumeDeclarationProblem(); break;
+ case 307: { action. consumeDeclarationProblem(); break;
}
//
- // Rule 310: function_definition ::= <openscope-ast> function_declarator function_body
+ // Rule 311: function_definition ::= <openscope-ast> function_declarator function_body
//
- case 310: { action. consumeFunctionDefinition(false); break;
+ case 311: { action. consumeFunctionDefinition(false); break;
}
//
- // Rule 311: 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 311: { action. consumeFunctionDefinitionKnR(); break;
+ case 312: { action. consumeFunctionDefinitionKnR(); break;
}
//
- // Rule 312: normal_function_definition ::= declaration_specifiers <openscope-ast> function_declarator function_body
+ // Rule 313: normal_function_definition ::= declaration_specifiers <openscope-ast> function_declarator function_body
//
- case 312: { action. consumeFunctionDefinition(true); break;
+ case 313: { action. consumeFunctionDefinition(true); break;
}
//
- // Rule 313: function_body ::= { }
+ // Rule 314: function_body ::= { }
//
- case 313: { action. consumeStatementCompoundStatement(false); break;
+ case 314: { action. consumeStatementCompoundStatement(false); break;
}
//
- // Rule 314: function_body ::= { <openscope-ast> block_item_list }
+ // Rule 315: function_body ::= { <openscope-ast> block_item_list }
//
- case 314: { action. consumeStatementCompoundStatement(true); break;
+ case 315: { action. consumeStatementCompoundStatement(true); break;
}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99Parserprs.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99Parserprs.java
index 2ef87e8e85..a5fff97b04 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99Parserprs.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99Parserprs.java
@@ -1,5 +1,5 @@
/*******************************************************************************
-* Copyright (c) 2006, 2009 IBM Corporation and others.
+* Copyright (c) 2006, 2010 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -45,227 +45,227 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym
3,3,3,3,3,3,1,1,2,1,
0,1,3,1,1,1,1,1,1,1,
1,3,4,3,2,4,1,2,1,1,
- 1,2,5,7,5,1,0,7,5,9,
- 8,3,2,2,2,3,2,4,2,2,
- 2,2,2,1,1,1,1,2,1,2,
- 2,2,1,2,2,1,2,2,1,2,
- 2,1,2,2,1,3,1,3,1,1,
+ 1,2,5,7,5,1,0,7,2,5,
+ 9,8,3,2,2,2,3,2,4,2,
+ 2,2,2,2,1,1,1,1,2,1,
+ 2,2,2,1,2,2,1,2,2,1,
+ 2,2,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,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,3,4,
- 5,6,0,1,2,1,3,1,1,3,
- 2,1,1,1,1,2,1,2,3,1,
- 1,1,3,1,2,2,2,3,4,5,
- 1,1,7,3,0,0,1,1,3,3,
- 4,1,1,2,3,2,3,2,1,0,
- 1,2,1,1,1,1,1,2,1,3,
- 6,4,2,4,-106,0,-161,0,0,0,
+ 1,1,1,1,1,1,1,1,1,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,3,
+ 4,5,6,0,1,2,1,3,1,1,
+ 3,2,1,1,1,1,2,1,2,3,
+ 1,1,1,3,1,2,2,2,3,4,
+ 5,1,1,7,3,0,0,1,1,3,
+ 3,4,1,1,2,3,2,3,2,1,
+ 0,1,2,1,1,1,1,1,2,1,
+ 3,6,4,2,4,-106,0,-161,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-37,0,0,0,-18,0,-61,-10,0,
- 0,-159,0,-12,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-41,0,
- 0,0,0,0,0,0,-9,0,0,0,
- 0,0,-236,0,-4,0,0,0,0,0,
- -23,0,0,0,0,0,0,-2,0,0,
- -242,0,0,0,0,0,0,0,0,0,
- 0,-32,0,-65,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-3,-139,
+ 0,0,-37,0,0,0,-18,0,-61,-10,
+ 0,0,-159,0,-12,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-41,
+ 0,0,0,0,0,0,0,-9,0,0,
+ 0,0,0,-236,0,-4,0,0,0,0,
+ 0,-23,0,0,0,0,0,0,-2,0,
+ 0,-242,0,0,0,0,0,0,0,0,
+ 0,0,-32,0,-65,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-3,
+ -139,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-13,0,
+ 0,0,-33,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-13,0,0,
- 0,-33,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-154,
+ -154,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-221,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-221,0,0,0,0,
+ 0,0,0,-39,0,0,0,-120,0,-267,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-39,0,0,0,-120,0,-267,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-20,
- 0,0,0,-21,0,-7,-27,0,0,-271,
- 0,-156,0,-28,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-251,
- -31,0,0,0,-46,0,-22,0,0,0,
+ -20,0,0,0,-21,0,-7,-27,0,0,
+ -271,0,-156,0,-28,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-24,0,0,-148,0,
- -30,0,0,0,0,0,0,0,0,0,
- 0,0,0,-34,0,0,-137,0,-66,0,
- 0,0,0,0,0,0,0,0,-25,0,
- -280,0,-279,0,0,0,0,0,0,0,
+ -251,-31,0,0,0,-46,0,-22,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-44,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-24,0,0,-148,
+ 0,-30,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-34,0,0,-137,0,-66,
+ 0,0,0,0,0,0,0,0,0,-25,
+ 0,-280,0,-279,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-58,0,-102,-50,
- 0,0,0,0,-26,0,-38,0,0,0,
- -51,-146,0,0,0,0,0,0,0,0,
- 0,0,0,0,-157,0,0,0,0,0,
+ 0,0,0,0,-44,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -192,-53,0,0,0,0,0,0,-150,0,
+ 0,0,0,0,0,0,0,-58,0,-102,
+ -50,0,0,0,0,-26,0,-38,0,0,
+ 0,-51,-146,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-157,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-138,0,0,0,0,0,0,0,
- 0,-35,0,-36,0,0,0,0,0,0,
- 0,-60,0,0,0,0,0,0,0,0,
+ 0,-192,-53,0,0,0,0,0,0,-150,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-113,0,-119,0,-132,0,0,0,
+ 0,0,0,-138,0,0,0,0,0,0,
+ 0,0,-35,0,-36,0,0,0,0,0,
+ 0,0,-60,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-188,0,0,0,0,0,-165,0,0,
+ 0,0,0,-113,0,-119,0,-132,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-118,0,
- -104,0,0,0,0,0,0,0,0,0,
+ 0,0,-188,0,0,0,0,0,-165,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-121,0,-49,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-118,
+ 0,-104,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-93,0,-151,0,-179,0,0,0,
- 0,0,0,0,0,0,0,-67,0,0,
- 0,0,0,0,0,0,-122,0,0,0,
+ 0,0,-121,0,-49,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-133,0,0,0,-160,0,-123,
+ 0,0,0,-93,0,-151,0,-179,0,0,
+ 0,0,0,0,0,0,0,0,-67,0,
+ 0,0,0,0,0,0,0,-122,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-133,0,0,0,-160,0,
+ -123,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-124,0,-189,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-200,
- 0,0,0,0,0,-125,0,-63,0,0,
+ 0,0,0,-124,0,-189,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-201,0,-126,0,
+ -200,0,0,0,0,0,-125,0,-63,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-202,0,0,0,0,
- 0,-127,0,-224,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-201,0,-126,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-226,0,-128,0,0,0,0,0,
+ 0,0,0,0,0,0,-202,0,0,0,
+ 0,0,-127,0,-224,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-227,0,0,0,0,0,-129,0,-240,
+ 0,0,0,-226,0,-128,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-265,0,
- -130,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-274,0,0,
- 0,0,0,-131,0,-278,0,0,0,0,
+ 0,0,-227,0,0,0,0,0,-129,0,
+ -240,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-265,
+ 0,-130,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-274,0,
+ 0,0,0,0,-131,0,-278,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-284,0,-193,0,0,0,
+ 0,0,0,0,0,-284,0,-193,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-290,0,0,0,0,0,-194,
- 0,-74,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-290,0,0,0,0,0,
+ -194,0,-74,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -75,0,-230,0,-76,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-77,
- 0,0,0,-78,0,-235,0,-54,0,0,
+ 0,-75,0,-230,0,-76,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-79,0,0,0,-249,0,-80,0,
+ -77,0,0,0,-78,0,-235,0,-54,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-81,0,-147,
- 0,-82,0,0,0,0,0,0,0,-260,
+ 0,0,0,-79,0,0,0,-249,0,-80,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-83,0,0,0,
- -270,0,-84,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-87,0,0,
- 0,-152,0,-89,0,0,0,0,0,0,
- 0,0,0,-277,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-81,0,
+ -147,0,-82,0,0,0,0,0,0,0,
+ -260,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-83,0,0,
+ 0,-270,0,-84,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-87,0,
+ 0,0,-152,0,-89,0,0,0,0,0,
+ 0,0,0,0,-277,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -111,0,0,0,-283,0,0,0,0,0,
+ 0,-111,0,0,0,-283,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-90,0,0,0,-72,0,-96,0,0,
- 0,0,0,-48,0,0,0,-149,0,0,
+ 0,0,-90,0,0,0,-72,0,-96,0,
+ 0,0,0,0,-48,0,0,0,-149,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-95,0,-42,0,0,-238,0,-62,-97,
- 0,0,0,0,0,0,0,0,0,-92,
- -45,0,0,-99,-91,0,0,0,-100,-183,
- 0,0,0,0,0,-114,0,0,-269,0,
- 0,0,-103,0,-29,0,0,-52,0,0,
+ 0,0,-95,0,-42,0,0,-238,0,-62,
+ -97,0,0,0,0,0,0,0,0,0,
+ -92,-45,0,0,-99,-91,0,0,0,-100,
+ -183,0,0,0,0,0,-114,0,0,-269,
+ 0,0,0,-103,0,-29,0,0,-52,0,
0,0,0,0,0,0,0,0,0,0,
- -70,0,-105,0,0,0,0,0,0,0,
- -40,0,0,0,0,0,0,0,0,0,
- 0,0,-94,0,-172,0,0,0,-86,-107,
- 0,-47,0,-101,0,0,0,0,0,0,
- 0,0,-190,-115,0,0,0,0,0,0,
+ 0,-70,0,-105,0,0,0,0,0,0,
+ 0,-40,0,0,0,0,0,0,0,0,
+ 0,0,0,-94,0,-172,0,0,0,-86,
+ -107,0,-47,0,-101,0,0,0,0,0,
+ 0,0,0,-190,-115,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -59,-180,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-163,0,0,0,
- 0,0,-164,0,0,0,0,-15,0,-8,
- 0,-109,0,0,0,-166,-228,0,0,0,
- -169,0,0,0,0,-223,-191,-6,-112,0,
- 0,-234,0,0,0,0,0,0,0,-162,
- 0,0,0,-174,0,0,0,0,0,0,
- 0,0,-17,0,-116,-252,0,0,0,0,
- 0,0,0,0,0,0,0,-176,0,0,
- 0,0,0,0,0,-195,0,0,0,0,
- 0,-247,-197,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-248,
- 0,0,0,0,-73,0,0,0,0,0,
- 0,0,0,0,-177,0,0,0,-184,0,
- 0,0,0,0,0,-263,0,0,-98,0,
- 0,-85,-185,0,0,0,0,0,-204,0,
- 0,0,-282,0,-276,0,0,0,-205,0,
- 0,0,0,-206,0,0,0,0,0,0,
- 0,0,0,0,-155,0,-207,0,0,0,
- 0,0,0,0,0,0,0,0,-173,0,
- 0,0,0,0,-208,0,0,0,0,0,
- -108,-57,0,0,-209,0,0,0,0,0,
- -175,0,0,-239,-258,0,0,0,0,0,
- 0,0,0,0,0,0,-178,0,0,0,
- -187,0,-229,0,0,-232,0,0,0,0,
- 0,0,0,0,0,0,-110,0,0,0,
- 0,0,-210,0,0,0,0,0,-211,0,
- 0,0,0,0,0,0,0,0,-254,0,
- 0,-212,0,0,0,-233,0,0,0,0,
- -186,-213,0,-214,-250,0,-215,0,0,0,
- -256,0,0,-216,0,0,0,0,0,0,
- 0,0,0,0,-217,0,-262,0,-218,-68,
+ 0,-59,-180,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-163,0,0,
+ 0,0,0,-164,0,0,0,0,-15,0,
+ -8,0,-109,0,0,0,-166,-228,0,0,
+ 0,-169,0,0,0,0,-223,-191,-6,-112,
+ 0,0,-234,0,0,0,0,0,0,0,
+ -162,0,0,0,-174,0,0,0,0,0,
+ 0,0,0,-17,0,-116,-252,0,0,0,
+ 0,0,0,0,0,0,0,0,-176,0,
+ 0,0,0,0,0,0,-195,0,0,0,
+ 0,0,-247,-197,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-257,0,0,-266,
- -198,0,0,-196,0,0,0,0,0,0,
- 0,0,-219,0,0,0,0,0,-287,0,
- 0,0,-220,0,0,0,0,0,0,0,
- 0,0,0,-225,-261,0,0,-203,-243,0,
- -289,0,0,0,0,-268,0,0,0,0,
- 0,0,0,0,0,-275,-181,0,0,-244,
- -281,0,-291,0,0,-43,0,0,0,0,
+ -248,0,0,0,0,-73,0,0,0,0,
+ 0,0,0,0,0,-177,0,0,0,-184,
+ 0,0,0,0,0,0,-263,0,0,-98,
+ 0,0,-85,-185,0,0,0,0,0,-204,
+ 0,0,0,-282,0,-276,0,0,0,-205,
+ 0,0,0,0,-206,0,0,0,0,0,
+ 0,0,0,0,0,-155,0,-207,0,0,
+ 0,0,0,0,0,0,0,0,0,-173,
+ 0,0,0,0,0,-208,0,0,0,0,
+ 0,-108,-57,0,0,-209,0,0,0,0,
+ 0,-175,0,0,-239,-258,0,0,0,0,
+ 0,0,0,0,0,0,0,-178,0,0,
+ 0,-187,0,-229,0,0,-232,0,0,0,
+ 0,0,0,0,0,0,0,-110,0,0,
+ 0,0,0,-210,0,0,0,0,0,-211,
+ 0,0,0,0,0,0,0,0,0,-254,
+ 0,0,-212,0,0,0,-233,0,0,0,
+ 0,-186,-213,0,-214,-250,0,-215,0,0,
+ 0,-256,0,0,-216,0,0,0,0,0,
+ 0,0,0,0,0,-217,0,-262,0,-218,
+ -68,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-257,0,0,
+ -266,-198,0,0,-196,0,0,0,0,0,
+ 0,0,0,-219,0,0,0,0,0,-287,
+ 0,0,0,-220,0,0,0,0,0,0,
+ 0,0,0,0,-225,-261,0,0,-203,-243,
+ 0,-289,0,0,0,0,-268,0,0,0,
+ 0,0,0,0,0,0,-275,-181,0,0,
+ -244,-281,0,-291,0,0,-43,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-69,0,0,0,0,0,0,0,0,
+ 0,0,-69,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-288,0,0,0,0,
- -1,0,0,0,-259,-153,0,0,0,0,
- 0,0,0,0,0,0,0,0,-19,-273,
- 0,0,-144,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-140,0,0,
- 0,0,0,-55,0,-71,0,0,0,0,
+ 0,0,0,0,0,0,-288,0,0,0,
+ 0,-1,0,0,0,-259,-153,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-19,
+ -273,0,0,-144,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-140,0,
+ 0,0,0,0,-55,0,-71,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-199,-286,0,-145,0,
+ 0,0,0,0,0,0,-199,-286,0,-145,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-5,
- 0,0,-88,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-134,0,
0,0,0,0,0,0,0,0,0,0,
+ -5,0,0,-88,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-134,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-141,
- 0,0,0,0,0,0,0,0,0,-241,
- 0,0,-142,0,0,0,0,0,0,0,
- 0,0,-231,-246,0,0,-245,0,0,0,
- 0,-143,0,0,0,0,0,0,0,0,
- 0,0,0,-11,0,0,0,0,-14,-182,
- 0,0,0,0,0,0,0,-16,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ -141,0,0,0,0,0,0,0,0,0,
+ -241,0,0,-142,0,0,0,0,0,0,
+ 0,0,0,-231,-246,0,0,-245,0,0,
+ 0,0,-143,0,0,0,0,0,0,0,
+ 0,0,0,0,-11,0,0,0,0,-14,
+ -182,0,0,0,0,0,0,0,-16,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -64,-135,0,0,0,0,0,0,0,-136,
- 0,0,0,-167,0,0,0,0,-117,0,
- 0,0,0,0,0,0,0,0,0,-56,
- 0,0,0,0,0,0,0,0,0,-264,
- 0,0,0,0,0,-237,0,0,0,0,
- 0,0,-222,0,0,0,0,0,0,0,
- 0,0,-253,0,0,0,0,-272,0,0,
0,0,0,0,0,0,0,0,0,0,
- -285,0,0,0,0,0,0,0,0,0,
- -158,0,0,0,0,0,0,0,0,0,
- -168,0,0,0,0,0,0,0,-170,0,
- 0,0,-171,0,0,0,0,0,0,0,
- 0,0,0,0,-255,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,-64,-135,0,0,0,0,0,0,0,
+ -136,0,0,0,-167,0,0,0,0,-117,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0
+ -56,0,0,0,0,0,0,0,0,0,
+ -264,0,0,0,0,0,-237,0,0,0,
+ 0,0,0,-222,0,0,0,0,0,0,
+ 0,0,0,-253,0,0,0,0,-272,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,-285,0,0,0,0,0,0,0,0,
+ 0,-158,0,0,0,0,0,0,0,0,
+ 0,-168,0,0,0,0,0,0,0,-170,
+ 0,0,0,-171,0,0,0,0,0,0,
+ 0,0,0,0,0,-255,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0
};
};
public final static short baseCheck[] = BaseCheck.baseCheck;
@@ -287,228 +287,228 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym
108,108,91,91,56,30,30,30,30,30,
30,30,31,31,31,28,28,92,92,68,
68,32,32,33,33,33,63,63,34,34,
- 34,34,35,35,35,35,35,47,47,24,
- 24,24,24,24,48,48,48,84,84,79,
- 79,79,79,80,80,80,81,81,81,82,
- 82,82,83,83,83,93,93,85,85,86,
- 49,51,51,51,51,51,64,65,65,65,
- 65,65,65,65,65,65,65,65,65,72,
- 69,69,109,110,74,74,70,70,70,87,
- 94,94,95,95,88,88,88,57,111,111,
- 96,97,97,97,71,71,112,98,98,99,
- 99,89,89,25,26,26,26,50,52,52,
- 41,41,41,41,37,37,38,42,42,43,
- 39,39,100,100,44,114,114,113,113,46,
- 46,46,46,46,46,46,46,46,101,54,
- 54,54,54,36,75,75,66,66,66,67,
- 67,58,58,115,115,77,77,76,76,76,
- 59,59,59,60,61,61,61,62,62,62,
- 62,73,73,53,53,55,117,116,116,116,
- 116,102,118,119,119,120,120,121,121,107,
- 107,122,122,103,103,103,103,123,123,104,
- 104,104,105,106,106,292,1605,998,17,21,
- 18,1132,948,45,1151,1170,1155,1193,1174,1218,
- 1199,1247,622,1222,1253,75,331,92,359,176,
- 135,213,1426,20,505,17,21,18,1132,43,
- 45,1151,1170,1155,1193,1174,1218,1199,1247,908,
- 1823,2190,284,137,134,136,160,944,702,524,
- 224,233,667,587,1609,1051,179,336,241,139,
- 166,358,231,1354,143,146,149,152,754,339,
- 332,1115,135,213,1500,367,2104,2109,2118,1543,
- 135,213,322,834,1407,20,1558,17,21,18,
- 1132,41,524,224,232,145,134,136,160,419,
- 1313,1518,788,137,134,136,160,702,665,224,
- 229,442,219,609,221,223,127,274,541,139,
- 166,90,587,187,143,146,149,152,402,339,
- 269,782,925,272,1500,367,2104,2109,2118,1543,
- 1426,20,210,17,21,18,1132,43,45,1151,
- 1170,1155,1193,1174,1764,526,1350,20,550,17,
- 21,18,1132,948,45,1151,1170,1155,1193,1174,
- 1218,1199,1247,440,1222,1253,75,1124,281,1265,
- 20,550,17,21,18,1132,948,45,1151,1170,
- 1155,1193,1174,1218,1199,1247,225,1222,1253,75,
- 296,281,255,213,314,594,324,402,986,282,
- 1451,1268,1426,20,442,17,21,18,1132,43,
- 45,1151,1170,1155,1193,1174,1218,1199,1774,287,
- 412,833,282,1334,1268,1242,20,324,17,21,
- 18,1132,948,45,1151,1170,1155,1193,1174,1218,
- 1199,1247,289,1222,1253,75,892,281,288,1426,
- 20,501,17,21,18,1132,43,45,1151,1170,
- 1155,1675,1765,128,587,186,313,587,31,1426,
- 20,290,17,21,18,1132,43,40,282,913,
- 1268,1369,20,421,17,21,18,1132,948,45,
- 1151,1170,1155,1193,1174,1218,1199,1247,158,1222,
- 1253,75,310,281,1199,20,1359,17,21,18,
- 1132,948,45,1151,1170,1155,1193,1174,1218,1199,
- 1247,294,1222,1253,75,228,338,1108,179,833,
- 358,1435,1681,312,282,1004,1268,829,1856,530,
- 293,749,1426,20,239,17,21,18,1132,43,
- 45,1644,135,213,291,1426,20,25,17,21,
- 18,1132,43,45,1151,1170,1155,1193,1174,1218,
- 1785,1466,831,657,105,137,134,136,160,1426,
- 20,227,17,21,18,1132,43,45,1151,1170,
- 1733,139,166,587,31,1386,143,146,149,152,
- 283,339,326,671,587,188,1500,367,2104,2109,
- 2118,1543,1388,20,2179,17,21,18,1132,948,
- 45,1151,1170,1155,1193,1174,1218,1199,1247,260,
- 1222,1253,75,440,809,1223,20,440,17,21,
- 18,1132,948,45,1151,1170,1155,1193,1174,1218,
- 1199,1247,1285,1222,1253,75,230,1566,1426,20,
- 1573,17,21,18,1132,948,45,1151,1170,1155,
- 1193,1174,1218,1199,1247,240,1222,1253,75,359,
- 92,1426,20,24,17,21,18,1132,43,45,
- 1151,1170,1155,1193,1174,1218,1199,1247,276,1222,
- 1253,94,1426,20,418,17,21,18,1132,948,
- 45,1151,1170,1155,1193,1174,1218,1199,1247,243,
- 1222,1253,75,986,86,1426,20,998,17,21,
- 18,1132,43,45,1151,1170,1739,1534,1426,20,
- 124,17,21,18,1132,43,39,1426,20,1558,
- 17,21,18,1132,948,45,1151,1170,1155,1193,
- 1174,1218,1199,1247,440,1222,1253,75,1126,85,
- 1426,20,180,17,21,18,1132,948,45,1151,
- 1170,1155,1193,1174,1218,1199,1247,19,1222,1253,
- 75,234,84,1426,20,1132,17,21,18,1132,
- 948,45,1151,1170,1155,1193,1174,1218,1199,1247,
- 440,1222,1253,75,1440,83,1426,20,384,17,
- 21,18,1132,948,45,1151,1170,1155,1193,1174,
- 1218,1199,1247,1572,1222,1253,75,440,82,1426,
- 20,275,17,21,18,1132,948,45,1151,1170,
- 1155,1193,1174,1218,1199,1247,440,1222,1253,75,
- 1590,81,1426,20,440,17,21,18,1132,948,
- 45,1151,1170,1155,1193,1174,1218,1199,1247,23,
- 1222,1253,75,440,80,1426,20,1749,17,21,
- 18,1132,948,45,1151,1170,1155,1193,1174,1218,
- 1199,1247,440,1222,1253,75,1771,79,1426,20,
- 440,17,21,18,1132,948,45,1151,1170,1155,
- 1193,1174,1218,1199,1247,1807,1222,1253,75,440,
- 78,1426,20,273,17,21,18,1132,948,45,
- 1151,1170,1155,1193,1174,1218,1199,1247,440,1222,
- 1253,75,279,77,1426,20,440,17,21,18,
- 1132,948,45,1151,1170,1155,1193,1174,1218,1199,
- 1247,1987,1222,1253,75,440,76,1426,20,280,
- 17,21,18,1132,948,45,1151,1170,1155,1193,
- 1174,1218,1199,1247,440,1222,1253,75,1851,1849,
- 1426,20,1471,17,21,18,1132,948,45,1151,
- 1170,1155,1193,1174,1218,1199,1247,1873,1222,1253,
- 75,1055,1870,1426,20,876,17,21,18,1132,
- 948,45,1151,1170,1155,1193,1174,1218,1199,1247,
- 663,1222,1253,75,630,93,1426,20,331,17,
- 21,18,1132,43,45,1151,1170,1155,1193,1174,
- 1218,1199,1247,345,1222,1253,94,1426,20,796,
- 17,21,18,1132,948,45,1151,1170,1155,1193,
- 1174,1218,1199,1247,1519,1222,1253,75,931,74,
- 1426,20,288,17,21,18,1132,43,45,1657,
- 1426,20,212,17,21,18,1132,43,45,1151,
- 1170,1155,1193,1174,1218,1199,1247,751,1222,1253,
- 94,1426,20,550,17,21,18,1132,43,45,
- 1151,1170,1155,1193,1174,1218,1199,1247,1067,1222,
- 1253,94,1426,20,1064,17,21,18,1132,43,
- 45,1151,1170,1752,1426,20,202,17,21,18,
- 1132,43,45,1151,1170,1155,1193,1174,1218,1199,
- 1247,331,1222,1253,94,1426,20,1871,17,21,
- 18,1132,43,45,1151,1170,1155,1193,1174,1218,
- 1199,1247,1069,1222,1253,94,1445,20,589,17,
- 21,18,1132,34,178,1413,315,1761,1426,20,
- 203,17,21,18,1132,43,45,1151,1170,1155,
- 1685,111,587,1506,358,87,657,1295,1471,890,
- 626,1916,96,1444,109,95,97,98,99,100,
- 419,908,788,1622,708,1,1413,315,1471,793,
- 1464,110,255,213,254,213,946,125,1517,587,
- 296,88,111,54,231,331,87,1493,358,1471,
- 1727,307,107,96,1444,109,95,97,98,99,
- 100,1289,20,58,17,21,18,1132,43,36,
- 314,331,110,665,224,229,1375,218,609,221,
- 223,667,274,986,497,235,1413,315,263,358,
- 1104,317,622,108,986,267,782,925,272,1442,
- 123,246,111,941,1205,2070,87,667,1522,1471,
- 765,112,264,96,1444,109,95,97,98,99,
- 100,419,419,1545,1716,1964,277,1682,702,665,
- 224,1322,110,219,609,221,1274,60,127,195,
- 665,224,229,986,218,609,221,223,582,274,
- 1146,261,358,107,2110,493,986,119,1413,315,
- 126,905,267,782,925,272,986,331,355,1119,
- 1395,1711,998,122,111,135,213,1507,87,1040,
- 358,1471,476,2223,172,96,1444,109,95,97,
- 98,99,100,1108,179,355,986,1421,142,134,
- 136,160,106,667,110,665,224,581,1261,218,
- 609,221,534,2228,141,166,359,204,135,213,
- 159,391,1178,1319,20,108,17,21,18,1132,
- 43,44,665,224,229,734,218,609,221,223,
- 1490,138,134,136,160,1445,20,159,17,21,
- 18,1132,33,155,527,360,242,140,166,1118,
- 732,576,144,147,150,153,1489,339,557,480,
- 1413,788,1112,1465,657,28,28,1268,1268,706,
- 155,527,381,587,298,868,111,1421,576,745,
- 87,255,213,28,1480,1268,1386,96,1444,1511,
- 95,97,98,99,100,1426,20,1486,17,21,
- 18,1132,43,45,1151,1170,1155,1193,1767,521,
- 1413,788,665,224,229,367,218,609,221,223,
- 259,874,786,657,657,477,111,1845,763,1454,
- 87,562,1413,788,908,998,2200,96,1444,104,
- 95,97,98,99,100,197,1471,358,111,2083,
- 311,890,87,603,1413,788,868,278,1421,96,
- 1444,102,95,97,98,99,100,664,1609,308,
- 111,199,200,1284,87,898,254,213,1472,1286,
- 181,96,1444,103,95,97,98,99,100,644,
- 1413,788,1430,665,224,229,1464,218,609,221,
- 223,1161,1432,2206,1220,1500,111,672,1845,192,
- 87,685,1413,788,1141,857,1867,96,1444,119,
- 95,97,98,99,100,1411,1357,998,111,1000,
- 1426,20,87,17,21,18,1132,43,38,96,
- 1444,115,95,97,98,99,100,726,1413,788,
- 998,331,198,200,1289,20,209,17,21,18,
- 1132,43,36,1467,111,1380,1623,1925,87,767,
- 1413,788,205,711,1787,96,1444,1866,95,97,
- 98,99,100,1810,904,1499,111,667,359,359,
- 87,808,1413,788,247,613,1503,96,1444,114,
- 95,97,98,99,100,2087,1142,933,111,657,
- 359,359,87,849,1413,788,355,2336,1421,96,
- 1444,121,95,97,98,99,100,2336,22,244,
- 111,197,1426,20,87,17,21,18,1132,43,
- 37,96,1444,120,95,97,98,99,100,2336,
- 245,295,2336,665,224,229,359,218,609,221,
- 223,349,2336,375,1472,1484,1426,20,159,17,
- 21,18,1132,43,45,1151,1170,1762,305,355,
- 986,1421,194,1426,20,419,17,21,18,1132,
- 43,45,1151,1629,2336,193,297,2241,358,2336,
- 788,156,527,2336,622,2336,1426,20,304,17,
- 21,18,1132,43,35,2336,665,224,229,88,
- 218,609,221,223,2336,1848,1005,986,2084,1426,
- 20,493,17,21,18,1132,43,45,1151,1639,
- 702,665,224,229,118,219,609,221,223,277,
- 406,2336,375,1426,20,2336,17,21,18,1132,
- 43,36,2336,2336,301,303,309,305,388,1061,
- 2336,1811,274,2336,419,2336,2336,2336,2336,2336,
- 2336,2336,2336,2010,2336,267,782,925,272,2336,
- 2336,2336,2336,2336,2336,2336,2336,304,2336,2336,
- 1426,20,1040,17,21,18,1132,43,48,2336,
- 950,2336,657,1426,20,274,17,21,18,1132,
- 43,47,2336,992,950,657,657,1339,267,782,
- 925,272,1426,20,1386,17,21,18,1132,43,
- 46,2336,2336,2336,1003,266,667,197,1386,1062,
- 664,1609,2336,302,303,309,2336,2336,1449,2336,
- 667,2336,2336,702,391,2336,2336,2336,259,135,
- 213,2336,2336,274,135,213,1059,1454,2087,2336,
- 1472,2336,259,135,213,2336,269,782,925,272,
- 1059,1454,148,134,136,160,2336,151,134,136,
- 160,358,358,315,315,2336,154,134,136,160,
- 358,192,315,2336,1479,2336,315,1695,1867,890,
- 2336,2336,88,88,2336,197,197,2336,894,894,
- 1084,88,657,2336,197,88,2336,894,1471,209,
- 1084,116,657,2336,254,213,890,2336,1756,1623,
- 2336,2336,2336,1479,1386,788,2336,2336,2029,2029,
- 2336,2213,2336,1479,1386,788,2336,2029,1479,2336,
- 788,254,213,2336,88,2336,2336,1516,767,940,
- 116,1479,2336,788,88,2336,2336,967,259,88,
- 116,358,2336,788,497,116,763,1454,259,2336,
- 2336,358,88,788,2336,2336,1086,1454,116,358,
- 2336,788,88,358,2336,788,1546,2336,1789,2336,
- 1107,1616,88,2336,2336,358,1940,788,994,2336,
- 88,1105,2336,2336,88,2336,1013,2336,2336,2336,
- 1032,2336,2336,2336,1124,2336,88,2336,2336,2336,
- 2336,2336,1078,2336,0,11,226,0,2344,1,
- 0,1,2573,0,8,10,0,179,20,0,
- 1,2562,0,113,1829,0
+ 34,34,34,35,35,35,35,35,47,47,
+ 24,24,24,24,24,48,48,48,84,84,
+ 79,79,79,79,80,80,80,81,81,81,
+ 82,82,82,83,83,83,93,93,85,85,
+ 86,49,51,51,51,51,51,64,65,65,
+ 65,65,65,65,65,65,65,65,65,65,
+ 72,69,69,109,110,74,74,70,70,70,
+ 87,94,94,95,95,88,88,88,57,111,
+ 111,96,97,97,97,71,71,112,98,98,
+ 99,99,89,89,25,26,26,26,50,52,
+ 52,41,41,41,41,37,37,38,42,42,
+ 43,39,39,100,100,44,114,114,113,113,
+ 46,46,46,46,46,46,46,46,46,101,
+ 54,54,54,54,36,75,75,66,66,66,
+ 67,67,58,58,115,115,77,77,76,76,
+ 76,59,59,59,60,61,61,61,62,62,
+ 62,62,73,73,53,53,55,117,116,116,
+ 116,116,102,118,119,119,120,120,121,121,
+ 107,107,122,122,103,103,103,103,123,123,
+ 104,104,104,105,106,106,292,1606,998,17,
+ 21,18,1133,949,45,1152,1171,1156,1194,1175,
+ 1219,1200,1248,622,1223,1254,75,331,92,359,
+ 176,136,214,1426,20,505,17,21,18,1133,
+ 43,45,1152,1171,1156,1194,1175,1219,1200,1248,
+ 908,1824,2191,285,138,135,137,161,944,703,
+ 525,225,234,668,587,1610,1051,180,337,242,
+ 140,167,358,232,1355,144,147,150,153,754,
+ 340,333,1115,136,214,1501,368,2105,2110,2119,
+ 1544,136,214,322,835,1407,20,1559,17,21,
+ 18,1133,41,525,225,233,146,135,137,161,
+ 419,1313,1519,789,138,135,137,161,703,666,
+ 225,230,443,220,610,222,224,128,275,541,
+ 140,167,90,587,188,144,147,150,153,403,
+ 340,270,783,926,273,1501,368,2105,2110,2119,
+ 1544,1426,20,211,17,21,18,1133,43,45,
+ 1152,1171,1156,1194,1175,1765,527,1350,20,551,
+ 17,21,18,1133,949,45,1152,1171,1156,1194,
+ 1175,1219,1200,1248,440,1223,1254,75,1124,282,
+ 1265,20,551,17,21,18,1133,949,45,1152,
+ 1171,1156,1194,1175,1219,1200,1248,226,1223,1254,
+ 75,296,282,256,214,314,595,324,402,987,
+ 283,1451,1269,1426,20,442,17,21,18,1133,
+ 43,45,1152,1171,1156,1194,1175,1219,1200,1775,
+ 288,412,833,283,1335,1269,1242,20,324,17,
+ 21,18,1133,949,45,1152,1171,1156,1194,1175,
+ 1219,1200,1248,290,1223,1254,75,892,282,289,
+ 1426,20,501,17,21,18,1133,43,45,1152,
+ 1171,1156,1676,1766,129,587,187,314,587,31,
+ 1426,20,291,17,21,18,1133,43,40,283,
+ 913,1269,1369,20,421,17,21,18,1133,949,
+ 45,1152,1171,1156,1194,1175,1219,1200,1248,159,
+ 1223,1254,75,311,282,1199,20,1360,17,21,
+ 18,1133,949,45,1152,1171,1156,1194,1175,1219,
+ 1200,1248,295,1223,1254,75,229,339,1108,180,
+ 833,358,1436,1682,313,283,1004,1269,829,1857,
+ 531,294,749,1426,20,240,17,21,18,1133,
+ 43,45,1645,136,214,292,1426,20,25,17,
+ 21,18,1133,43,45,1152,1171,1156,1194,1175,
+ 1219,1786,1466,831,658,105,138,135,137,161,
+ 1426,20,228,17,21,18,1133,43,45,1152,
+ 1171,1734,140,167,587,31,1387,144,147,150,
+ 153,284,340,326,672,587,189,1501,368,2105,
+ 2110,2119,1544,1388,20,2180,17,21,18,1133,
+ 949,45,1152,1171,1156,1194,1175,1219,1200,1248,
+ 261,1223,1254,75,440,810,1223,20,440,17,
+ 21,18,1133,949,45,1152,1171,1156,1194,1175,
+ 1219,1200,1248,1285,1223,1254,75,231,1567,1426,
+ 20,1574,17,21,18,1133,949,45,1152,1171,
+ 1156,1194,1175,1219,1200,1248,241,1223,1254,75,
+ 359,92,1426,20,24,17,21,18,1133,43,
+ 45,1152,1171,1156,1194,1175,1219,1200,1248,277,
+ 1223,1254,94,1426,20,418,17,21,18,1133,
+ 949,45,1152,1171,1156,1194,1175,1219,1200,1248,
+ 244,1223,1254,75,986,86,1426,20,998,17,
+ 21,18,1133,43,45,1152,1171,1740,1535,1426,
+ 20,125,17,21,18,1133,43,39,1426,20,
+ 1559,17,21,18,1133,949,45,1152,1171,1156,
+ 1194,1175,1219,1200,1248,440,1223,1254,75,1126,
+ 85,1426,20,181,17,21,18,1133,949,45,
+ 1152,1171,1156,1194,1175,1219,1200,1248,19,1223,
+ 1254,75,235,84,1426,20,1132,17,21,18,
+ 1133,949,45,1152,1171,1156,1194,1175,1219,1200,
+ 1248,440,1223,1254,75,1441,83,1426,20,384,
+ 17,21,18,1133,949,45,1152,1171,1156,1194,
+ 1175,1219,1200,1248,1573,1223,1254,75,440,82,
+ 1426,20,276,17,21,18,1133,949,45,1152,
+ 1171,1156,1194,1175,1219,1200,1248,440,1223,1254,
+ 75,1591,81,1426,20,440,17,21,18,1133,
+ 949,45,1152,1171,1156,1194,1175,1219,1200,1248,
+ 23,1223,1254,75,440,80,1426,20,1750,17,
+ 21,18,1133,949,45,1152,1171,1156,1194,1175,
+ 1219,1200,1248,440,1223,1254,75,1772,79,1426,
+ 20,440,17,21,18,1133,949,45,1152,1171,
+ 1156,1194,1175,1219,1200,1248,1808,1223,1254,75,
+ 440,78,1426,20,274,17,21,18,1133,949,
+ 45,1152,1171,1156,1194,1175,1219,1200,1248,440,
+ 1223,1254,75,280,77,1426,20,440,17,21,
+ 18,1133,949,45,1152,1171,1156,1194,1175,1219,
+ 1200,1248,1988,1223,1254,75,440,76,1426,20,
+ 281,17,21,18,1133,949,45,1152,1171,1156,
+ 1194,1175,1219,1200,1248,440,1223,1254,75,1852,
+ 1850,1426,20,1471,17,21,18,1133,949,45,
+ 1152,1171,1156,1194,1175,1219,1200,1248,1874,1223,
+ 1254,75,1055,1871,1426,20,876,17,21,18,
+ 1133,949,45,1152,1171,1156,1194,1175,1219,1200,
+ 1248,663,1223,1254,75,630,93,1426,20,331,
+ 17,21,18,1133,43,45,1152,1171,1156,1194,
+ 1175,1219,1200,1248,345,1223,1254,94,1426,20,
+ 796,17,21,18,1133,949,45,1152,1171,1156,
+ 1194,1175,1219,1200,1248,1520,1223,1254,75,931,
+ 74,1426,20,288,17,21,18,1133,43,45,
+ 1658,1426,20,213,17,21,18,1133,43,45,
+ 1152,1171,1156,1194,1175,1219,1200,1248,751,1223,
+ 1254,94,1426,20,550,17,21,18,1133,43,
+ 45,1152,1171,1156,1194,1175,1219,1200,1248,1067,
+ 1223,1254,94,1426,20,1064,17,21,18,1133,
+ 43,45,1152,1171,1753,1426,20,203,17,21,
+ 18,1133,43,45,1152,1171,1156,1194,1175,1219,
+ 1200,1248,331,1223,1254,94,1426,20,1872,17,
+ 21,18,1133,43,45,1152,1171,1156,1194,1175,
+ 1219,1200,1248,1069,1223,1254,94,1445,20,589,
+ 17,21,18,1133,34,178,1414,316,1762,1426,
+ 20,204,17,21,18,1133,43,45,1152,1171,
+ 1156,1686,111,587,1507,358,87,658,1295,1472,
+ 890,626,1917,96,1445,109,95,97,98,99,
+ 100,419,908,789,1623,708,1,1414,316,1472,
+ 793,1464,110,256,214,255,214,946,126,1518,
+ 587,297,88,111,54,232,331,87,1494,358,
+ 1472,1728,308,107,96,1445,109,95,97,98,
+ 99,100,1289,20,58,17,21,18,1133,43,
+ 36,315,331,110,666,225,230,1376,219,610,
+ 222,224,668,275,986,498,235,1414,316,264,
+ 358,1104,318,622,108,986,268,783,926,273,
+ 1443,124,247,111,941,1205,2071,87,668,1523,
+ 1472,766,112,265,96,1445,109,95,97,98,
+ 99,100,419,419,1546,1717,1965,278,1683,703,
+ 666,225,1323,110,220,610,222,1275,60,128,
+ 196,666,225,230,986,219,610,222,224,582,
+ 275,1146,262,358,107,2111,494,986,119,1414,
+ 316,127,905,268,783,926,273,986,331,355,
+ 1119,1396,1712,998,123,111,136,214,1508,87,
+ 1041,358,1472,477,2224,172,96,1445,109,95,
+ 97,98,99,100,1108,180,355,986,1422,143,
+ 135,137,161,106,668,110,666,225,582,1261,
+ 219,610,222,535,2229,142,167,359,205,136,
+ 214,160,392,1178,1319,20,108,17,21,18,
+ 1133,43,44,666,225,230,735,219,610,222,
+ 224,1490,139,135,137,161,1445,20,160,17,
+ 21,18,1133,33,156,528,360,243,141,167,
+ 1118,733,577,145,148,151,154,1489,340,558,
+ 480,1414,789,1112,1465,658,28,28,1269,1269,
+ 706,156,528,382,587,299,868,111,1422,577,
+ 745,87,256,214,28,1480,1269,1387,96,1445,
+ 1512,95,97,98,99,100,1426,20,1486,17,
+ 21,18,1133,43,45,1152,1171,1156,1194,1768,
+ 521,1414,789,666,225,230,367,219,610,222,
+ 224,260,874,786,658,658,477,111,1846,764,
+ 1455,87,562,1414,789,908,998,2201,96,1445,
+ 104,95,97,98,99,100,198,1472,358,111,
+ 2084,312,890,87,603,1414,789,868,279,1422,
+ 96,1445,102,95,97,98,99,100,664,1610,
+ 309,111,200,201,1284,87,899,255,214,1473,
+ 1286,182,96,1445,103,95,97,98,99,100,
+ 644,1414,789,1430,666,225,230,1464,219,610,
+ 222,224,1161,1432,2207,1220,1500,111,672,1846,
+ 193,87,685,1414,789,1141,858,1868,96,1445,
+ 120,95,97,98,99,100,1411,1358,998,111,
+ 1000,1426,20,87,17,21,18,1133,43,38,
+ 96,1445,115,95,97,98,99,100,726,1414,
+ 789,998,331,199,201,1289,20,210,17,21,
+ 18,1133,43,36,1467,111,1381,1624,1926,87,
+ 767,1414,789,206,711,1788,96,1445,1867,95,
+ 97,98,99,100,1811,904,1499,111,668,359,
+ 359,87,808,1414,789,248,614,1503,96,1445,
+ 114,95,97,98,99,100,2088,1142,933,111,
+ 658,359,359,87,849,1414,789,355,2340,1422,
+ 96,1445,122,95,97,98,99,100,2340,22,
+ 245,111,198,1426,20,87,17,21,18,1133,
+ 43,37,96,1445,121,95,97,98,99,100,
+ 2340,246,296,2340,666,225,230,359,219,610,
+ 222,224,349,2340,376,1473,1484,1426,20,160,
+ 17,21,18,1133,43,45,1152,1171,1763,306,
+ 355,986,1422,195,1426,20,420,17,21,18,
+ 1133,43,45,1152,1630,2340,194,298,2242,358,
+ 2340,789,157,528,2340,622,2340,1426,20,305,
+ 17,21,18,1133,43,35,2340,666,225,230,
+ 88,219,610,222,224,2340,1849,1005,986,2085,
+ 1426,20,494,17,21,18,1133,43,45,1152,
+ 1640,703,666,225,230,118,220,610,222,224,
+ 278,406,2340,376,1426,20,2340,17,21,18,
+ 1133,43,36,2340,2340,302,304,310,306,389,
+ 1061,2340,1812,275,2340,420,2340,2340,2340,2340,
+ 2340,2340,2340,2340,2011,2340,268,783,926,273,
+ 2340,2340,2340,2340,2340,2340,2340,2340,305,2340,
+ 2340,1426,20,1041,17,21,18,1133,43,48,
+ 2340,950,2340,658,1426,20,275,17,21,18,
+ 1133,43,47,2340,992,950,658,658,1339,268,
+ 783,926,273,1426,20,1387,17,21,18,1133,
+ 43,46,2340,2340,2340,1003,267,668,198,1387,
+ 1062,664,1610,2340,303,304,310,2340,2340,1449,
+ 2340,668,2340,2340,703,392,2340,2340,2340,260,
+ 136,214,2340,2340,275,136,214,1060,1455,2088,
+ 2340,1473,2340,260,136,214,2340,270,783,926,
+ 273,1060,1455,149,135,137,161,2340,152,135,
+ 137,161,358,358,316,316,2340,155,135,137,
+ 161,358,193,316,2340,1479,2340,316,1696,1868,
+ 890,2340,2340,88,88,2340,198,198,2340,895,
+ 895,1084,88,658,2340,198,88,2340,895,1472,
+ 210,1084,116,658,2340,255,214,890,2340,1757,
+ 1624,2340,2340,2340,1479,1387,789,2340,2340,2030,
+ 2030,2340,2214,2340,1479,1387,789,2340,2030,1479,
+ 2340,789,255,214,2340,88,2340,2340,1517,768,
+ 941,116,1479,2340,789,88,2340,2340,968,260,
+ 88,116,358,2340,789,498,116,764,1455,260,
+ 2340,2340,358,88,789,2340,2340,1087,1455,116,
+ 358,2340,789,88,358,2340,789,1547,2340,1790,
+ 2340,1108,1617,88,2340,2340,358,1941,789,995,
+ 2340,88,1106,2340,2340,88,2340,1014,2340,2340,
+ 2340,1033,2340,2340,2340,1125,2340,88,2340,2340,
+ 2340,2340,2340,1079,2340,0,11,227,0,2348,
+ 1,0,1,2578,0,8,10,0,1845,119,
+ 0,180,20,0,1,2567,0,113,1830,0
};
};
public final static char baseAction[] = BaseAction.baseAction;
@@ -686,164 +686,164 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym
public interface TermAction {
public final static char termAction[] = {0,
- 2336,4165,1,4164,1487,1,659,1,1,1,
+ 2340,4170,1,4169,1488,1,660,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,2345,1,2437,1,1,1,1,1,
- 1360,853,811,1433,1393,1619,1328,1352,1379,1370,
- 1374,1,1,1,1,1,1,1,1,1,
- 1,1,1,2336,1,1,1,2336,2343,8,
- 2324,2324,2324,2324,2324,2324,2324,2324,2324,2324,
- 2324,2324,2324,2324,2324,2324,2324,2324,2324,2324,
- 2324,2324,2324,2324,2324,2324,2324,2324,2324,2324,
- 2324,2324,2324,2324,2324,2324,2324,2324,2324,2324,
- 2324,2324,2324,2324,2324,2324,2324,2324,2324,2324,
- 2324,2324,1669,2324,2324,2324,1691,2324,2336,4165,
- 1,4164,1487,1,659,1,1,1,1,1,
+ 1,1,2349,1,2441,1,1,1,1,1,
+ 1361,854,812,1434,1394,1620,1329,1353,1380,1371,
+ 1375,1,1,1,1,1,1,1,1,1,
+ 1,1,1,2340,1,1,1,2340,2347,8,
+ 2325,2325,2325,2325,2325,2325,2325,2325,2325,2325,
+ 2325,2325,2325,2325,2325,2325,2325,2325,2325,2325,
+ 2325,2325,2325,2325,2325,2325,2325,2325,2325,2325,
+ 2325,2325,2325,2325,2325,2325,2325,2325,2325,2325,
+ 2325,2325,2325,2325,2325,2325,2325,2325,2325,2325,
+ 2325,2325,1670,2325,2325,2325,1692,2325,2340,4170,
+ 1,4169,1488,1,660,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 2345,1,2437,1,1,1,1,1,1360,853,
- 811,1433,1393,1619,1328,1352,1379,1370,1374,1,
+ 2349,1,2441,1,1,1,1,1,1361,854,
+ 812,1434,1394,1620,1329,1353,1380,1371,1375,1,
1,1,1,1,1,1,1,1,1,1,
- 1,2336,1,1,1,182,2343,2336,4165,1,
- 4164,2346,1,659,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,2345,
- 1,2437,1,1,1,1,1,1360,853,811,
- 1433,1393,1619,1328,1352,1379,1370,1374,1,1,
+ 1,2340,1,1,1,183,2347,2340,4170,1,
+ 4169,2350,1,660,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,2349,
+ 1,2441,1,1,1,1,1,1361,854,812,
+ 1434,1394,1620,1329,1353,1380,1371,1375,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1713,1,1,1,2336,4165,1,4164,2346,1,
- 659,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,2345,1,2437,1,
- 1,1,1,1,1360,853,811,1433,1393,1619,
- 1328,1352,1379,1370,1374,1,1,1,1,1,
+ 1714,1,1,1,2340,4170,1,4169,2350,1,
+ 660,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,2349,1,2441,1,
+ 1,1,1,1,1361,854,812,1434,1394,1620,
+ 1329,1353,1380,1371,1375,1,1,1,1,1,
1,1,1,1,1,1,1,71,1,1,
- 1,2336,2347,2161,2348,11,2013,2315,1892,1790,
- 1966,1595,1326,404,2349,2350,2351,2352,868,599,
- 2550,2551,2552,2336,2499,359,2500,2498,2553,2501,
- 2497,2336,2347,2336,2348,2336,2347,660,2348,551,
- 253,1398,2504,2509,2508,2506,2507,2505,2510,2511,
- 2503,2512,2513,2514,60,1498,438,344,2336,1,
- 1,1,2346,1,1,2562,1939,1,2336,20,
- 179,2327,2340,2327,2327,532,62,1,1,1,
- 2345,1,2642,1,1,1,1,1,179,179,
- 179,2327,179,43,179,179,179,179,179,1,
+ 1,2340,2351,2162,2352,11,2014,2316,1893,1791,
+ 1967,1596,1327,405,2353,2354,2355,2356,869,600,
+ 2555,2556,2557,2340,2504,360,2505,2503,2558,2506,
+ 2502,2340,2351,2340,2352,2340,2351,661,2352,552,
+ 254,1399,2509,2514,2513,2511,2512,2510,2515,2516,
+ 2508,2517,2518,2519,60,1499,439,345,2340,1,
+ 1,1,2350,1,1,2567,1940,1,2340,20,
+ 180,2331,2344,2331,2331,533,62,1,1,1,
+ 2349,1,2647,1,1,1,1,1,180,180,
+ 180,2331,180,43,180,180,180,180,180,1,
1,1,1,1,1,1,1,1,1,1,
- 1,157,1,1,1,2336,1,1,1,2346,
- 1,2336,2327,1926,1272,855,709,183,1,2327,
- 286,300,2346,2339,1,1,1,2345,1,2642,
- 1,1,1,1,1,1926,1272,855,709,2336,
- 2345,235,2336,2342,1084,223,1,1,1,1,
- 1,1,1,1,1,1,1,1,2336,1,
- 1,1,555,223,1251,2336,1061,1038,1015,992,
- 969,923,946,900,877,832,61,1389,299,2336,
- 4165,1,4164,2346,1,659,1,1,1,1,
- 1,1,1,1,1,1,1,1,223,2341,
- 229,2345,223,2437,185,4155,232,4155,2336,1360,
- 853,811,1433,1393,1619,1328,1352,1379,1370,1374,
- 2336,4165,1,4164,2346,1,659,1,1,1,
- 1,1,1,1,1,1,1,1,1,2336,
- 184,4157,2345,4157,2437,1926,1272,855,709,73,
- 1360,853,811,1433,1393,1619,1328,1352,1379,1370,
- 1374,2336,4165,1,4164,2346,1,659,1,1,
+ 1,158,1,1,1,2340,1,1,1,2350,
+ 1,2340,2331,1927,1273,856,710,184,1,2331,
+ 287,301,2350,2343,1,1,1,2349,1,2647,
+ 1,1,1,1,1,1927,1273,856,710,2340,
+ 2349,236,2340,2346,1085,224,1,1,1,1,
+ 1,1,1,1,1,1,1,1,2340,1,
+ 1,1,556,224,1252,2340,1062,1039,1016,993,
+ 970,924,947,901,878,833,61,1390,300,2340,
+ 4170,1,4169,2350,1,660,1,1,1,1,
+ 1,1,1,1,1,1,1,1,224,2345,
+ 230,2349,224,2441,186,4160,233,4160,2340,1361,
+ 854,812,1434,1394,1620,1329,1353,1380,1371,1375,
+ 2340,4170,1,4169,2350,1,660,1,1,1,
+ 1,1,1,1,1,1,1,1,1,2340,
+ 185,4162,2349,4162,2441,1927,1273,856,710,73,
+ 1361,854,812,1434,1394,1620,1329,1353,1380,1371,
+ 1375,2340,4170,1,4169,2350,1,660,1,1,
1,1,1,1,1,1,1,1,1,1,
- 2336,206,4162,2345,4162,2437,2336,2347,2336,2348,
- 2174,1360,853,811,1433,1393,1619,1328,1352,1379,
- 1370,1374,2336,4165,1,4164,2346,1,659,1,
+ 2340,207,4167,2349,4167,2441,2340,2351,2340,2352,
+ 2175,1361,854,812,1434,1394,1620,1329,1353,1380,
+ 1371,1375,2340,4170,1,4169,2350,1,660,1,
1,1,1,1,1,1,1,1,1,1,
- 1,253,2562,1939,2345,2336,2437,2261,2336,63,
- 342,2251,1360,853,811,1433,1393,1619,1328,1352,
- 1379,1370,1374,2336,4165,1,4164,2346,1,659,
+ 1,254,2567,1940,2349,2340,2441,2262,2340,63,
+ 343,2252,1361,854,812,1434,1394,1620,1329,1353,
+ 1380,1371,1375,2340,4170,1,4169,2350,1,660,
1,1,1,1,1,1,1,1,1,1,
- 1,1,52,208,2347,2345,2348,2437,2336,1220,
- 672,64,2336,1360,853,811,1433,1393,1619,1328,
- 1352,1379,1370,1374,2336,4165,1,4164,2346,1,
- 659,1,1,1,1,1,1,1,1,1,
- 1,1,1,1338,579,54,2345,2336,2437,2269,
- 2336,2574,1220,672,1360,853,811,1433,1393,1619,
- 1328,1352,1379,1370,1374,2336,4165,1,4164,2346,
- 1,659,1,1,1,1,1,1,1,1,
- 1,1,1,1,53,1338,579,2345,2336,2437,
- 69,1220,672,2336,1502,1360,853,811,1433,1393,
- 1619,1328,1352,1379,1370,1374,2336,4165,1,4164,
- 2346,1,659,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,207,373,2345,373,
- 2437,659,2336,2336,2273,67,1360,853,811,1433,
- 1393,1619,1328,1352,1379,1370,1374,2336,4165,1,
- 4164,2346,1,659,1,1,1,1,1,1,
- 1,1,1,1,1,1,2314,685,2336,2345,
- 2336,2437,1,1178,2336,1301,2318,1360,853,811,
- 1433,1393,1619,1328,1352,1379,1370,1374,2336,4165,
- 1,4164,2346,1,659,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,2562,1939,
- 2345,460,2437,2336,1,55,1,191,1360,853,
- 811,1433,1393,1619,1328,1352,1379,1370,1374,2336,
- 2343,2336,1,1,1,2346,1,2532,1,1,
- 1,1,1,2336,2336,2285,2336,1,2550,2551,
- 2552,2342,220,2345,1,1,1,1,1,1,
- 1,1,1,1,1,1,1230,1,1,1,
- 65,191,2336,1,1844,1,190,1943,1989,1655,
- 1,2330,1453,130,2342,262,2562,1453,1876,1,
- 1,1,1,1,253,1,2532,1,1,1,
- 1,1,2550,2551,2552,634,2499,2341,2500,2498,
- 2553,2501,2497,1,1,1,1,1,1,1,
- 1,1,1,1,1,2336,1,1,1,2346,
- 190,2336,1,634,1,191,2336,2336,634,2336,
- 2341,2344,131,222,1,1371,1986,2345,2342,2336,
- 1,1,1,2594,1,2532,1,1,1,1,
- 1,2550,2551,2552,2336,2499,2336,2500,2498,2553,
- 2501,2497,1,1,1,1,1,1,1,1,
- 1,1,1,1,2336,1,1,1,2336,191,
- 1,520,1939,2348,49,2343,634,634,1197,2092,
- 265,132,1986,236,2341,1,2336,223,229,2550,
- 2551,2552,1530,2499,233,2500,2498,2553,2501,2497,
- 2550,2551,2552,1,2499,223,2500,2498,2553,2501,
- 2497,2504,2509,2508,2506,2507,2505,2510,2511,2503,
- 2512,2513,2514,2336,1498,438,344,2336,2347,1707,
- 2348,1,2321,634,268,2562,1453,211,249,253,
- 223,2073,2060,248,223,2336,2550,2551,2552,2342,
- 2499,271,2500,2498,2553,2501,2497,1,1,1,
- 70,113,2550,2551,2552,129,2336,2594,2504,2509,
- 2508,2506,2507,2505,2510,2511,2503,2512,2513,2514,
- 250,1498,438,344,2550,2551,2552,634,2499,2336,
- 2500,2498,2553,2501,2497,2594,2336,42,1176,1,
- 1,1,1833,4148,634,2341,2504,2509,2508,2506,
- 2507,2505,2510,2511,2503,2512,2513,2514,1,2347,
- 2161,2348,2340,1411,256,1892,1790,1966,1595,1326,
- 404,2349,2350,2351,2352,868,599,685,2336,66,
- 2333,742,2336,2347,2161,2348,2340,1814,1655,1892,
- 1790,1966,1595,1326,404,2349,2350,2351,2352,868,
- 599,2336,2347,2161,2348,1130,2013,4148,1892,1790,
- 1966,1595,1326,404,2349,2350,2351,2352,868,599,
- 89,701,2336,2339,1,2347,2161,2348,29,2013,
- 4148,1892,1790,1966,1595,1326,404,2349,2350,2351,
- 2352,868,599,59,270,58,1694,2339,2336,2347,
- 2161,2348,2340,2013,251,1892,1790,1966,1595,1326,
- 404,2349,2350,2351,2352,868,599,2336,2336,2336,
- 2336,2336,1,2550,2551,2552,91,1153,2336,2347,
- 2161,2348,29,2013,4148,1892,1790,1966,1595,1326,
- 404,2349,2350,2351,2352,868,599,634,268,2336,
- 1986,2336,2336,253,2336,1943,1989,1943,1989,1,
- 2347,2161,2348,2339,2013,4148,1892,1790,1966,1595,
- 1326,404,2349,2350,2351,2352,868,599,2336,2347,
- 2161,2348,91,2013,4148,1892,1790,1966,1595,1326,
- 404,2349,2350,2351,2352,868,599,1,2347,2161,
- 2348,634,2013,2336,1892,1790,1966,1595,1326,404,
- 2349,2350,2351,2352,868,599,2336,2347,2162,2348,
- 68,2013,2336,1892,1790,1966,1595,1326,404,2349,
- 2350,2351,2352,868,599,2336,2347,2161,2348,57,
- 2013,56,1892,1790,1966,1595,1326,404,2349,2350,
- 2351,2352,868,599,2336,2347,2170,2348,133,2013,
- 292,1892,1790,1966,1595,1326,404,2349,2350,2351,
- 2352,868,599,30,207,1,72,2550,2551,2552,
- 32,2499,420,2500,2498,2553,2501,2497,1,51,
- 2362,2363,117,2336,2092,50,460,2346,252,2336,
- 2092,1943,1989,1943,1989,4148,2336,285,201,30,
- 117,1439,2336,1305,189,2345,189,2550,2551,2552,
- 185,189,184,1,1,2336,1633,206,2336,2336,
- 2365,3437,2336,1958,2336,2336,2336,2336,2336,2593,
- 2336,2336,2336,2336,2336,2336,723,2336,117,2336,
- 1635,2336,2336,2336,532,2336,2073,2060,2336,2336,
- 597,2336,2073,2060,2336,1439,499,1284,2336,2336,
- 2336,2336,2336,611,2336,2336,2336,2336,2336,2336,
- 2336,2336,2348,2347
+ 1,1,52,209,2351,2349,2352,2441,2340,1221,
+ 673,64,2340,1361,854,812,1434,1394,1620,1329,
+ 1353,1380,1371,1375,2340,4170,1,4169,2350,1,
+ 660,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1339,580,54,2349,2340,2441,2270,
+ 2340,2579,1221,673,1361,854,812,1434,1394,1620,
+ 1329,1353,1380,1371,1375,2340,4170,1,4169,2350,
+ 1,660,1,1,1,1,1,1,1,1,
+ 1,1,1,1,53,1339,580,2349,2340,2441,
+ 69,1221,673,2340,1503,1361,854,812,1434,1394,
+ 1620,1329,1353,1380,1371,1375,2340,4170,1,4169,
+ 2350,1,660,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,208,374,2349,374,
+ 2441,660,2340,2340,2274,67,1361,854,812,1434,
+ 1394,1620,1329,1353,1380,1371,1375,2340,4170,1,
+ 4169,2350,1,660,1,1,1,1,1,1,
+ 1,1,1,1,1,1,2315,686,2340,2349,
+ 2340,2441,1,1179,2340,1302,2319,1361,854,812,
+ 1434,1394,1620,1329,1353,1380,1371,1375,2340,4170,
+ 1,4169,2350,1,660,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,2567,1940,
+ 2349,461,2441,2340,1,55,1,192,1361,854,
+ 812,1434,1394,1620,1329,1353,1380,1371,1375,2340,
+ 2347,2340,1,1,1,2350,1,2537,1,1,
+ 1,1,1,2340,119,2286,2340,1,2555,2556,
+ 2557,2346,221,2349,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1231,1,1,1,
+ 65,192,2340,1,2328,1,191,1944,1990,1656,
+ 1,2334,1454,131,2346,263,2567,1454,1877,1,
+ 1,1,1,1,254,1,2537,1,1,1,
+ 1,1,2555,2556,2557,635,2504,2345,2505,2503,
+ 2558,2506,2502,1,1,1,1,1,1,1,
+ 1,1,1,1,1,2340,1,1,1,2350,
+ 191,2340,1,635,1,192,2340,2340,635,2340,
+ 2345,2348,132,223,1,1372,1987,2349,2346,2340,
+ 1,1,1,2599,1,2537,1,1,1,1,
+ 1,2555,2556,2557,2340,2504,2340,2505,2503,2558,
+ 2506,2502,1,1,1,1,1,1,1,1,
+ 1,1,1,1,2340,1,1,1,2340,192,
+ 1,521,1940,2352,49,2347,635,635,1198,2093,
+ 266,133,1987,237,2345,1,2340,224,230,2555,
+ 2556,2557,1531,2504,234,2505,2503,2558,2506,2502,
+ 2555,2556,2557,1,2504,224,2505,2503,2558,2506,
+ 2502,2509,2514,2513,2511,2512,2510,2515,2516,2508,
+ 2517,2518,2519,2340,1499,439,345,2340,2351,1708,
+ 2352,1,2322,635,269,2567,1454,212,250,254,
+ 224,2074,2061,249,224,2340,2555,2556,2557,2346,
+ 2504,272,2505,2503,2558,2506,2502,1,1,1,
+ 70,113,2555,2556,2557,130,2340,2599,2509,2514,
+ 2513,2511,2512,2510,2515,2516,2508,2517,2518,2519,
+ 251,1499,439,345,2555,2556,2557,635,2504,2340,
+ 2505,2503,2558,2506,2502,2599,2340,42,1177,1,
+ 1,1,1834,4153,635,2345,2509,2514,2513,2511,
+ 2512,2510,2515,2516,2508,2517,2518,2519,1,2351,
+ 2162,2352,2344,1412,257,1893,1791,1967,1596,1327,
+ 405,2353,2354,2355,2356,869,600,686,2340,66,
+ 2337,743,2340,2351,2162,2352,2344,1815,1656,1893,
+ 1791,1967,1596,1327,405,2353,2354,2355,2356,869,
+ 600,2340,2351,2162,2352,1131,2014,4153,1893,1791,
+ 1967,1596,1327,405,2353,2354,2355,2356,869,600,
+ 89,702,2340,2343,1,2351,2162,2352,29,2014,
+ 4153,1893,1791,1967,1596,1327,405,2353,2354,2355,
+ 2356,869,600,59,271,58,1695,2343,2340,2351,
+ 2162,2352,2344,2014,252,1893,1791,1967,1596,1327,
+ 405,2353,2354,2355,2356,869,600,2340,2340,2340,
+ 2340,2340,1,2555,2556,2557,91,1154,2340,2351,
+ 2162,2352,29,2014,4153,1893,1791,1967,1596,1327,
+ 405,2353,2354,2355,2356,869,600,635,269,2340,
+ 1987,2340,2340,254,2340,1944,1990,1944,1990,1,
+ 2351,2162,2352,2343,2014,4153,1893,1791,1967,1596,
+ 1327,405,2353,2354,2355,2356,869,600,2340,2351,
+ 2162,2352,91,2014,4153,1893,1791,1967,1596,1327,
+ 405,2353,2354,2355,2356,869,600,1,2351,2162,
+ 2352,635,2014,2340,1893,1791,1967,1596,1327,405,
+ 2353,2354,2355,2356,869,600,2340,2351,2163,2352,
+ 68,2014,2340,1893,1791,1967,1596,1327,405,2353,
+ 2354,2355,2356,869,600,2340,2351,2162,2352,57,
+ 2014,56,1893,1791,1967,1596,1327,405,2353,2354,
+ 2355,2356,869,600,2340,2351,2171,2352,134,2014,
+ 293,1893,1791,1967,1596,1327,405,2353,2354,2355,
+ 2356,869,600,30,208,1,72,2555,2556,2557,
+ 32,2504,421,2505,2503,2558,2506,2502,1,51,
+ 2366,2367,117,2340,2093,50,461,2350,253,2340,
+ 2093,1944,1990,1944,1990,4153,2340,286,202,30,
+ 117,1440,2340,1306,190,2349,190,2555,2556,2557,
+ 186,190,185,1,1,2340,1634,207,2340,2340,
+ 2369,3442,2340,1959,2340,2340,2340,2340,2340,2598,
+ 2340,2340,2340,2340,2340,2340,724,2340,117,2340,
+ 1636,2340,2340,2340,533,2340,2074,2061,2340,2340,
+ 598,2340,2074,2061,2340,1440,500,1285,2340,2340,
+ 2340,2340,2340,612,2340,2340,2340,2340,2340,2340,
+ 2340,2340,2352,2351
};
};
public final static char termAction[] = TermAction.termAction;
@@ -851,36 +851,36 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym
public interface Asb {
public final static char asb[] = {0,
- 498,1,427,281,498,429,496,310,322,494,
- 322,494,494,322,494,322,283,468,429,418,
- 529,496,283,201,133,132,377,48,468,376,
- 253,494,241,241,494,241,429,468,338,468,
- 214,283,429,79,214,26,429,254,496,102,
- 496,205,468,330,429,216,470,283,427,141,
- 99,306,167,269,453,453,453,453,453,83,
- 453,453,453,161,178,183,181,189,185,192,
- 191,194,193,195,216,129,496,453,48,376,
- 253,451,202,202,241,529,529,438,529,529,
- 202,253,139,453,139,269,496,102,205,205,
- 330,330,338,333,337,429,306,99,82,79,
- 453,453,453,453,453,453,453,453,453,453,
- 453,338,338,531,269,269,241,241,3,453,
- 453,453,453,453,453,453,453,453,453,453,
- 453,453,453,453,453,453,453,453,453,337,
- 129,24,251,202,453,202,267,453,341,453,
- 453,254,438,139,438,198,382,102,129,244,
- 102,205,207,433,207,330,306,335,336,211,
- 468,216,453,453,99,83,26,468,211,338,
+ 496,1,425,281,496,427,494,310,322,492,
+ 322,492,492,322,492,322,283,466,427,416,
+ 527,494,283,201,133,132,375,48,466,374,
+ 253,492,241,241,492,241,427,466,338,466,
+ 214,283,427,79,214,26,427,254,494,102,
+ 494,205,466,330,427,216,468,283,425,141,
+ 99,306,167,269,451,451,451,451,451,83,
+ 451,451,451,161,178,183,181,189,185,192,
+ 191,194,193,195,216,129,494,451,48,374,
+ 253,449,202,202,241,527,527,436,527,527,
+ 202,253,139,451,139,269,494,102,205,205,
+ 330,330,338,333,337,427,306,99,82,79,
+ 451,451,451,451,451,451,451,451,451,451,
+ 451,338,338,529,269,269,241,241,3,451,
+ 451,451,451,451,451,451,451,451,451,451,
+ 451,451,451,451,451,451,451,451,451,337,
+ 129,24,251,202,451,202,267,451,252,451,
+ 451,254,436,139,436,198,380,102,129,244,
+ 102,205,207,431,207,330,306,335,336,211,
+ 466,216,451,451,99,83,26,466,211,338,
338,338,99,181,181,178,178,185,185,183,
- 183,183,183,191,189,193,192,139,194,431,
- 24,451,202,338,529,338,338,253,438,453,
- 102,246,207,129,453,241,306,330,214,338,
- 537,333,99,99,531,537,343,496,453,207,
- 45,202,451,438,453,438,438,129,201,453,
- 200,129,330,216,338,129,22,380,241,453,
- 44,3,202,338,252,246,453,338,161,26,
- 99,241,453,338,3,202,438,99,438,338,
- 438
+ 183,183,183,191,189,193,192,139,194,429,
+ 24,449,202,338,527,338,338,253,436,451,
+ 102,246,207,129,451,241,306,330,214,338,
+ 535,333,99,99,529,535,341,494,451,207,
+ 45,202,449,436,451,436,436,129,201,451,
+ 200,129,330,216,338,129,22,378,241,451,
+ 44,3,202,338,252,246,451,338,161,26,
+ 99,241,451,338,3,202,436,99,436,338,
+ 436
};
};
public final static char asb[] = Asb.asb;
@@ -922,29 +922,29 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym
41,46,44,45,43,42,47,48,50,51,
52,59,22,29,26,23,25,28,27,19,
20,21,5,1,2,53,57,60,4,0,
- 30,0,9,5,7,8,67,68,62,63,
+ 9,5,7,8,67,68,62,63,69,70,
+ 71,72,74,75,76,77,78,81,82,59,
+ 83,84,85,86,87,88,89,90,91,92,
+ 65,60,58,6,4,57,22,61,0,66,
+ 80,10,11,9,7,8,67,68,62,63,
69,70,71,72,74,75,76,77,78,81,
- 82,59,83,84,85,86,87,88,89,90,
- 91,92,65,60,58,6,4,57,22,61,
- 0,66,80,10,11,9,7,8,67,68,
- 62,63,69,70,71,72,74,75,76,77,
- 78,81,82,61,83,84,85,86,87,88,
- 89,90,91,92,57,53,60,25,19,26,
- 27,28,20,23,29,21,22,4,5,2,
- 1,0,4,57,58,61,0,32,34,6,
- 38,40,35,30,36,37,33,31,39,24,
- 22,4,2,13,14,15,16,1,3,10,
- 11,9,7,8,17,18,12,5,0,25,
- 41,19,42,54,26,43,27,44,45,28,
- 20,46,47,23,55,29,56,48,49,21,
- 50,51,52,1,3,6,0,73,25,41,
- 19,42,54,26,43,27,44,45,28,20,
- 46,47,23,55,29,56,48,49,21,50,
- 51,52,1,3,5,22,4,24,2,0,
- 4,60,5,2,53,0,5,25,41,19,
+ 82,61,83,84,85,86,87,88,89,90,
+ 91,92,57,53,60,25,19,26,27,28,
+ 20,23,29,21,22,4,5,2,1,0,
+ 4,57,58,61,0,32,34,6,38,40,
+ 35,30,36,37,33,31,39,24,22,4,
+ 2,13,14,15,16,1,3,10,11,9,
+ 7,8,17,18,12,5,0,25,41,19,
42,54,26,43,27,44,45,28,20,46,
47,23,55,29,56,48,49,21,50,51,
- 52,1,3,64,0
+ 52,1,3,6,0,73,25,41,19,42,
+ 54,26,43,27,44,45,28,20,46,47,
+ 23,55,29,56,48,49,21,50,51,52,
+ 1,3,5,22,4,24,2,0,4,60,
+ 5,2,53,0,5,25,41,19,42,54,
+ 26,43,27,44,45,28,20,46,47,23,
+ 55,29,56,48,49,21,50,51,52,1,
+ 3,64,0
};
};
public final static byte asr[] = Asr.asr;
@@ -1131,19 +1131,19 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym
public interface ScopeState {
public final static char scopeState[] = {0,
- 530,0,550,0,2083,1867,1681,0,1682,1873,
- 1851,1829,1807,1771,1749,1713,1507,1691,1669,1435,
- 1619,1375,1334,0,611,499,1590,1572,476,1573,
- 555,0,1595,1326,404,1573,1814,342,685,532,
- 1655,460,1926,1272,855,709,1338,579,1220,672,
- 1989,1943,2092,2073,2060,2013,1966,1411,1892,1790,
- 868,599,1305,611,1284,1251,1230,1197,1176,1153,
- 1130,1107,788,1084,1061,1038,1015,992,969,946,
- 923,900,877,832,765,315,811,742,555,634,
- 499,476,0,925,782,665,609,2087,391,1986,
- 1453,2029,1386,0,332,375,1635,391,1716,1453,
- 1545,1386,1964,1442,1876,1939,1518,0,315,657,
- 1543,375,0
+ 531,0,551,0,2084,1868,1682,0,1683,1874,
+ 1852,1830,1808,1772,1750,1714,1508,1692,1670,1436,
+ 1620,1376,1335,0,612,500,1591,1573,477,1574,
+ 556,0,1596,1327,405,1574,1815,343,686,533,
+ 1656,461,1927,1273,856,710,1339,580,1221,673,
+ 1990,1944,2093,2074,2061,2014,1967,1412,1893,1791,
+ 869,600,1306,612,1285,1252,1231,1198,1177,1154,
+ 1131,1108,789,1085,1062,1039,1016,993,970,947,
+ 924,901,878,833,766,316,812,743,556,635,
+ 500,477,0,926,783,666,610,2088,392,1987,
+ 1454,2030,1387,0,333,376,1636,392,1717,1454,
+ 1546,1387,1965,1443,1877,1940,1519,0,316,658,
+ 1544,376,0
};
};
public final static char scopeState[] = ScopeState.scopeState;
@@ -1394,18 +1394,18 @@ public class C99Parserprs implements lpg.lpgjavaruntime.ParseTable, C99Parsersym
public final static int
NUM_STATES = 291,
NT_OFFSET = 93,
- LA_STATE_OFFSET = 2650,
+ LA_STATE_OFFSET = 2655,
MAX_LA = 2147483647,
- NUM_RULES = 314,
+ NUM_RULES = 315,
NUM_NONTERMINALS = 125,
NUM_SYMBOLS = 218,
SEGMENT_SIZE = 8192,
- START_STATE = 1921,
+ START_STATE = 1922,
IDENTIFIER_SYMBOL = 0,
EOFT_SYMBOL = 73,
EOLT_SYMBOL = 73,
- ACCEPT_ACTION = 2314,
- ERROR_ACTION = 2336;
+ ACCEPT_ACTION = 2315,
+ ERROR_ACTION = 2340;
public final static boolean BACKTRACK = true;
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99Parsersym.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99Parsersym.java
index 33df3a76cd..9ca38119a9 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99Parsersym.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99Parsersym.java
@@ -1,5 +1,5 @@
/*******************************************************************************
-* Copyright (c) 2006, 2009 IBM Corporation and others.
+* Copyright (c) 2006, 2010 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99SizeofExpressionParser.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99SizeofExpressionParser.java
index cd2d01958d..8f420627cd 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99SizeofExpressionParser.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99SizeofExpressionParser.java
@@ -1,5 +1,5 @@
/*******************************************************************************
-* Copyright (c) 2006, 2009 IBM Corporation and others.
+* Copyright (c) 2006, 2010 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -678,595 +678,601 @@ public C99SizeofExpressionParser(ITokenStream stream, Map<String,String> propert
//
// Rule 117: iteration_statement ::= do statement while ( expression ) ;
//
- case 117: { action. consumeStatementDoLoop(); break;
+ case 117: { action. consumeStatementDoLoop(true); break;
}
//
- // Rule 118: iteration_statement ::= while ( expression ) statement
+ // Rule 118: iteration_statement ::= do statement
//
- case 118: { action. consumeStatementWhileLoop(); break;
+ case 118: { action. consumeStatementDoLoop(false); break;
}
//
- // Rule 119: iteration_statement ::= for ( expression_opt ; expression_opt ; expression_opt ) statement
+ // Rule 119: iteration_statement ::= while ( expression ) statement
//
- case 119: { action. consumeStatementForLoop(); break;
+ case 119: { action. consumeStatementWhileLoop(); break;
}
//
- // Rule 120: iteration_statement ::= for ( declaration expression_opt ; expression_opt ) statement
+ // Rule 120: iteration_statement ::= for ( expression_opt ; expression_opt ; expression_opt ) statement
//
case 120: { action. consumeStatementForLoop(); break;
}
//
- // Rule 121: jump_statement ::= goto identifier_token ;
+ // Rule 121: iteration_statement ::= for ( declaration expression_opt ; expression_opt ) statement
//
- case 121: { action. consumeStatementGoto(); break;
+ case 121: { action. consumeStatementForLoop(); break;
}
//
- // Rule 122: jump_statement ::= continue ;
+ // Rule 122: jump_statement ::= goto identifier_token ;
//
- case 122: { action. consumeStatementContinue(); break;
+ case 122: { action. consumeStatementGoto(); break;
}
//
- // Rule 123: jump_statement ::= break ;
+ // Rule 123: jump_statement ::= continue ;
//
- case 123: { action. consumeStatementBreak(); break;
+ case 123: { action. consumeStatementContinue(); break;
}
//
- // Rule 124: jump_statement ::= return ;
+ // Rule 124: jump_statement ::= break ;
//
- case 124: { action. consumeStatementReturn(false); break;
+ case 124: { action. consumeStatementBreak(); break;
}
//
- // Rule 125: jump_statement ::= return expression ;
+ // Rule 125: jump_statement ::= return ;
//
- case 125: { action. consumeStatementReturn(true); break;
+ case 125: { action. consumeStatementReturn(false); break;
}
//
- // Rule 126: declaration ::= declaration_specifiers ;
+ // Rule 126: jump_statement ::= return expression ;
//
- case 126: { action. consumeDeclarationSimple(false); break;
+ case 126: { action. consumeStatementReturn(true); break;
}
//
- // Rule 127: declaration ::= declaration_specifiers <openscope-ast> init_declarator_list ;
+ // Rule 127: declaration ::= declaration_specifiers ;
//
- case 127: { action. consumeDeclarationSimple(true); break;
+ case 127: { action. consumeDeclarationSimple(false); break;
}
//
- // Rule 128: declaration_specifiers ::= <openscope-ast> simple_declaration_specifiers
+ // Rule 128: declaration ::= declaration_specifiers <openscope-ast> init_declarator_list ;
//
- case 128: { action. consumeDeclarationSpecifiersSimple(); break;
+ case 128: { action. consumeDeclarationSimple(true); break;
}
//
- // Rule 129: declaration_specifiers ::= <openscope-ast> struct_or_union_declaration_specifiers
+ // Rule 129: declaration_specifiers ::= <openscope-ast> simple_declaration_specifiers
//
- case 129: { action. consumeDeclarationSpecifiersStructUnionEnum(); break;
+ case 129: { action. consumeDeclarationSpecifiersSimple(); break;
}
//
- // Rule 130: declaration_specifiers ::= <openscope-ast> elaborated_declaration_specifiers
+ // Rule 130: declaration_specifiers ::= <openscope-ast> struct_or_union_declaration_specifiers
//
case 130: { action. consumeDeclarationSpecifiersStructUnionEnum(); break;
}
//
- // Rule 131: declaration_specifiers ::= <openscope-ast> enum_declaration_specifiers
+ // Rule 131: declaration_specifiers ::= <openscope-ast> elaborated_declaration_specifiers
//
case 131: { action. consumeDeclarationSpecifiersStructUnionEnum(); break;
}
//
- // Rule 132: declaration_specifiers ::= <openscope-ast> typdef_name_declaration_specifiers
+ // Rule 132: declaration_specifiers ::= <openscope-ast> enum_declaration_specifiers
//
- case 132: { action. consumeDeclarationSpecifiersTypedefName(); break;
+ case 132: { action. consumeDeclarationSpecifiersStructUnionEnum(); break;
}
//
- // Rule 157: init_declarator ::= complete_declarator = initializer
+ // Rule 133: declaration_specifiers ::= <openscope-ast> typdef_name_declaration_specifiers
//
- case 157: { action. consumeDeclaratorWithInitializer(true); break;
+ case 133: { action. consumeDeclarationSpecifiersTypedefName(); break;
}
//
- // Rule 159: storage_class_specifier ::= storage_class_specifier_token
+ // Rule 158: init_declarator ::= complete_declarator = initializer
//
- case 159: { action. consumeToken(); break;
+ case 158: { action. consumeDeclaratorWithInitializer(true); break;
}
//
- // Rule 165: simple_type_specifier ::= simple_type_specifier_token
+ // Rule 160: storage_class_specifier ::= storage_class_specifier_token
//
- case 165: { action. consumeToken(); break;
+ case 160: { action. consumeToken(); break;
}
//
- // Rule 178: type_name_specifier ::= identifier_token
+ // Rule 166: simple_type_specifier ::= simple_type_specifier_token
//
- case 178: { action. consumeToken(); break;
+ case 166: { action. consumeToken(); break;
}
//
- // Rule 179: struct_or_union_specifier ::= struct_or_union struct_or_union_specifier_hook { <openscope-ast> struct_declaration_list_opt }
+ // Rule 179: type_name_specifier ::= identifier_token
//
- case 179: { action. consumeTypeSpecifierComposite(false); break;
+ case 179: { action. consumeToken(); break;
}
//
- // Rule 180: 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 }
+ // Rule 180: struct_or_union_specifier ::= struct_or_union struct_or_union_specifier_hook { <openscope-ast> struct_declaration_list_opt }
//
- case 180: { action. consumeTypeSpecifierComposite(true); break;
+ case 180: { action. consumeTypeSpecifierComposite(false); break;
}
//
- // Rule 185: elaborated_specifier ::= struct elaborated_specifier_hook identifier_token
+ // Rule 181: 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 185: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_struct); break;
+ case 181: { action. consumeTypeSpecifierComposite(true); break;
}
//
- // Rule 186: elaborated_specifier ::= union elaborated_specifier_hook identifier_token
+ // Rule 186: elaborated_specifier ::= struct elaborated_specifier_hook identifier_token
//
- case 186: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_union); break;
+ case 186: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_struct); break;
}
//
- // Rule 187: elaborated_specifier ::= enum elaborated_specifier_hook identifier_token
+ // Rule 187: elaborated_specifier ::= union elaborated_specifier_hook identifier_token
//
- case 187: { action. consumeTypeSpecifierElaborated(IASTElaboratedTypeSpecifier.k_enum); break;
+ case 187: { action. consumeTypeSpecifierElaborated(IASTCompositeTypeSpecifier.k_union); break;
}
//
- // Rule 193: struct_declaration ::= specifier_qualifier_list <openscope-ast> struct_declarator_list ;
+ // Rule 188: elaborated_specifier ::= enum elaborated_specifier_hook identifier_token
//
- case 193: { action. consumeStructDeclaration(true); break;
+ case 188: { action. consumeTypeSpecifierElaborated(IASTElaboratedTypeSpecifier.k_enum); break;
}
//
- // Rule 194: struct_declaration ::= specifier_qualifier_list ;
+ // Rule 194: struct_declaration ::= specifier_qualifier_list <openscope-ast> struct_declarator_list ;
//
- case 194: { action. consumeStructDeclaration(false); break;
+ case 194: { action. consumeStructDeclaration(true); break;
}
//
- // Rule 195: struct_declaration ::= ERROR_TOKEN
+ // Rule 195: struct_declaration ::= specifier_qualifier_list ;
//
- case 195: { action. consumeDeclarationProblem(); break;
+ case 195: { action. consumeStructDeclaration(false); break;
}
//
- // Rule 201: struct_declarator ::= : constant_expression
+ // Rule 196: struct_declaration ::= ERROR_TOKEN
//
- case 201: { action. consumeBitField(false); break;
+ case 196: { action. consumeDeclarationProblem(); break;
}
//
- // Rule 202: struct_declarator ::= declarator : constant_expression
+ // Rule 202: struct_declarator ::= : constant_expression
//
- case 202: { action. consumeBitField(true); break;
+ case 202: { action. consumeBitField(false); break;
}
//
- // Rule 203: enum_specifier ::= enum enum_specifier_hook { <openscope-ast> enumerator_list_opt comma_opt }
+ // Rule 203: struct_declarator ::= declarator : constant_expression
//
- case 203: { action. consumeTypeSpecifierEnumeration(false); break;
+ case 203: { action. consumeBitField(true); break;
}
//
- // Rule 204: enum_specifier ::= enum enum_specifier_hook identifier_token { <openscope-ast> enumerator_list_opt comma_opt }
+ // Rule 204: enum_specifier ::= enum enum_specifier_hook { <openscope-ast> enumerator_list_opt comma_opt }
//
- case 204: { action. consumeTypeSpecifierEnumeration(true); break;
+ case 204: { action. consumeTypeSpecifierEnumeration(false); break;
}
//
- // Rule 210: enumerator ::= identifier_token
+ // Rule 205: enum_specifier ::= enum enum_specifier_hook identifier_token { <openscope-ast> enumerator_list_opt comma_opt }
//
- case 210: { action. consumeEnumerator(false); break;
+ case 205: { action. consumeTypeSpecifierEnumeration(true); break;
}
//
- // Rule 211: enumerator ::= identifier_token = constant_expression
+ // Rule 211: enumerator ::= identifier_token
//
- case 211: { action. consumeEnumerator(true); break;
+ case 211: { action. consumeEnumerator(false); break;
}
//
- // Rule 212: type_qualifier ::= type_qualifier_token
+ // Rule 212: enumerator ::= identifier_token = constant_expression
//
- case 212: { action. consumeToken(); break;
+ case 212: { action. consumeEnumerator(true); break;
}
//
- // Rule 216: function_specifier ::= inline
+ // Rule 213: type_qualifier ::= type_qualifier_token
//
- case 216: { action. consumeToken(); break;
+ case 213: { action. consumeToken(); break;
}
//
- // Rule 218: declarator ::= <openscope-ast> pointer_seq direct_declarator
+ // Rule 217: function_specifier ::= inline
//
- case 218: { action. consumeDeclaratorWithPointer(true); break;
+ case 217: { action. consumeToken(); break;
}
//
- // Rule 223: basic_direct_declarator ::= declarator_id_name
+ // Rule 219: declarator ::= <openscope-ast> pointer_seq direct_declarator
//
- case 223: { action. consumeDirectDeclaratorIdentifier(); break;
+ case 219: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 224: basic_direct_declarator ::= ( declarator )
+ // Rule 224: basic_direct_declarator ::= declarator_id_name
//
- case 224: { action. consumeDirectDeclaratorBracketed(); break;
+ case 224: { action. consumeDirectDeclaratorIdentifier(); break;
}
//
- // Rule 225: declarator_id_name ::= identifier
+ // Rule 225: basic_direct_declarator ::= ( declarator )
//
- case 225: { action. consumeIdentifierName(); break;
+ case 225: { action. consumeDirectDeclaratorBracketed(); break;
}
//
- // Rule 226: array_direct_declarator ::= basic_direct_declarator array_modifier
+ // Rule 226: declarator_id_name ::= identifier
//
- case 226: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ case 226: { action. consumeIdentifierName(); break;
}
//
- // Rule 227: array_direct_declarator ::= array_direct_declarator array_modifier
+ // Rule 227: array_direct_declarator ::= basic_direct_declarator array_modifier
//
case 227: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 229: function_direct_declarator ::= basic_direct_declarator ( <openscope-ast> parameter_type_list )
+ // Rule 228: array_direct_declarator ::= array_direct_declarator array_modifier
//
- case 229: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
+ case 228: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 230: function_direct_declarator ::= basic_direct_declarator ( )
+ // Rule 230: function_direct_declarator ::= basic_direct_declarator ( <openscope-ast> parameter_type_list )
//
- case 230: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
+ case 230: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
}
//
- // Rule 232: function_declarator ::= <openscope-ast> pointer_seq function_direct_declarator
+ // Rule 231: function_direct_declarator ::= basic_direct_declarator ( )
//
- case 232: { action. consumeDeclaratorWithPointer(true); break;
+ case 231: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
}
//
- // Rule 233: knr_direct_declarator ::= basic_direct_declarator ( <openscope-ast> identifier_list )
+ // Rule 233: function_declarator ::= <openscope-ast> pointer_seq function_direct_declarator
//
- case 233: { action. consumeDirectDeclaratorFunctionDeclaratorKnR(); break;
+ case 233: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 235: knr_function_declarator ::= <openscope-ast> pointer_seq knr_direct_declarator
+ // Rule 234: knr_direct_declarator ::= basic_direct_declarator ( <openscope-ast> identifier_list )
//
- case 235: { action. consumeDeclaratorWithPointer(true); break;
+ case 234: { action. consumeDirectDeclaratorFunctionDeclaratorKnR(); break;
}
//
- // Rule 236: identifier_list ::= identifier
+ // Rule 236: knr_function_declarator ::= <openscope-ast> pointer_seq knr_direct_declarator
//
- case 236: { action. consumeIdentifierKnR(); break;
+ case 236: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 237: identifier_list ::= identifier_list , identifier
+ // Rule 237: identifier_list ::= identifier
//
case 237: { action. consumeIdentifierKnR(); break;
}
//
- // Rule 238: array_modifier ::= [ ]
+ // Rule 238: identifier_list ::= identifier_list , identifier
//
- case 238: { action. consumeDirectDeclaratorArrayModifier(false); break;
+ case 238: { action. consumeIdentifierKnR(); break;
}
//
- // Rule 239: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers ]
+ // Rule 239: array_modifier ::= [ ]
//
- case 239: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, false); break;
+ case 239: { action. consumeDirectDeclaratorArrayModifier(false); break;
}
//
- // Rule 240: array_modifier ::= [ assignment_expression ]
+ // Rule 240: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers ]
//
- case 240: { action. consumeDirectDeclaratorArrayModifier(true); break;
+ case 240: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, false); break;
}
//
- // Rule 241: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers assignment_expression ]
+ // Rule 241: array_modifier ::= [ assignment_expression ]
//
- case 241: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, true); break;
+ case 241: { action. consumeDirectDeclaratorArrayModifier(true); break;
}
//
- // Rule 242: array_modifier ::= [ static assignment_expression ]
+ // Rule 242: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers assignment_expression ]
//
- case 242: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, false, true); break;
+ case 242: { action. consumeDirectDeclaratorModifiedArrayModifier(false, false, true, true); break;
}
//
- // Rule 243: array_modifier ::= [ static <openscope-ast> array_modifier_type_qualifiers assignment_expression ]
+ // Rule 243: array_modifier ::= [ static assignment_expression ]
//
- case 243: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break;
+ case 243: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, false, true); break;
}
//
- // Rule 244: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers static assignment_expression ]
+ // Rule 244: array_modifier ::= [ static <openscope-ast> array_modifier_type_qualifiers assignment_expression ]
//
case 244: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break;
}
//
- // Rule 245: array_modifier ::= [ * ]
+ // Rule 245: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers static assignment_expression ]
//
- case 245: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, false, false); break;
+ case 245: { action. consumeDirectDeclaratorModifiedArrayModifier(true, false, true, true); break;
}
//
- // Rule 246: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers * ]
+ // Rule 246: array_modifier ::= [ * ]
//
- case 246: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, true, false); break;
+ case 246: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, false, false); break;
}
//
- // Rule 248: pointer_seq ::= pointer_hook * pointer_hook
+ // Rule 247: array_modifier ::= [ <openscope-ast> array_modifier_type_qualifiers * ]
//
- case 248: { action. consumePointer(); break;
+ case 247: { action. consumeDirectDeclaratorModifiedArrayModifier(false, true, true, false); break;
}
//
- // Rule 249: pointer_seq ::= pointer_seq pointer_hook * pointer_hook
+ // Rule 249: pointer_seq ::= pointer_hook * pointer_hook
//
case 249: { action. consumePointer(); break;
}
//
- // Rule 250: pointer_seq ::= pointer_hook * pointer_hook <openscope-ast> type_qualifier_list
+ // Rule 250: pointer_seq ::= pointer_seq pointer_hook * pointer_hook
//
- case 250: { action. consumePointerTypeQualifierList(); break;
+ case 250: { action. consumePointer(); break;
}
//
- // Rule 251: pointer_seq ::= pointer_seq pointer_hook * pointer_hook <openscope-ast> type_qualifier_list
+ // Rule 251: pointer_seq ::= pointer_hook * pointer_hook <openscope-ast> type_qualifier_list
//
case 251: { action. consumePointerTypeQualifierList(); break;
}
//
- // Rule 255: parameter_type_list ::= parameter_list
+ // Rule 252: pointer_seq ::= pointer_seq pointer_hook * pointer_hook <openscope-ast> type_qualifier_list
//
- case 255: { action. consumeEmpty(); break;
+ case 252: { action. consumePointerTypeQualifierList(); break;
}
//
- // Rule 256: parameter_type_list ::= parameter_list , ...
+ // Rule 256: parameter_type_list ::= parameter_list
//
- case 256: { action. consumePlaceHolder(); break;
+ case 256: { action. consumeEmpty(); break;
}
//
- // Rule 257: parameter_type_list ::= ...
+ // Rule 257: parameter_type_list ::= parameter_list , ...
//
case 257: { action. consumePlaceHolder(); break;
}
//
- // Rule 260: parameter_declaration ::= declaration_specifiers complete_parameter_declarator
+ // Rule 258: parameter_type_list ::= ...
//
- case 260: { action. consumeParameterDeclaration(); break;
+ case 258: { action. consumePlaceHolder(); break;
}
//
- // Rule 261: parameter_declaration ::= declaration_specifiers
+ // Rule 261: parameter_declaration ::= declaration_specifiers complete_parameter_declarator
//
- case 261: { action. consumeParameterDeclarationWithoutDeclarator(); break;
+ case 261: { action. consumeParameterDeclaration(); break;
}
//
- // Rule 264: type_id ::= specifier_qualifier_list
+ // Rule 262: parameter_declaration ::= declaration_specifiers
//
- case 264: { action. consumeTypeId(false); break;
+ case 262: { action. consumeParameterDeclarationWithoutDeclarator(); break;
}
//
- // Rule 265: type_id ::= specifier_qualifier_list abstract_declarator
+ // Rule 265: type_id ::= specifier_qualifier_list
//
- case 265: { action. consumeTypeId(true); break;
+ case 265: { action. consumeTypeId(false); break;
}
//
- // Rule 267: abstract_declarator ::= <openscope-ast> pointer_seq
+ // Rule 266: type_id ::= specifier_qualifier_list abstract_declarator
//
- case 267: { action. consumeDeclaratorWithPointer(false); break;
+ case 266: { action. consumeTypeId(true); break;
}
//
- // Rule 268: abstract_declarator ::= <openscope-ast> pointer_seq direct_abstract_declarator
+ // Rule 268: abstract_declarator ::= <openscope-ast> pointer_seq
//
- case 268: { action. consumeDeclaratorWithPointer(true); break;
+ case 268: { action. consumeDeclaratorWithPointer(false); break;
}
//
- // Rule 272: basic_direct_abstract_declarator ::= ( abstract_declarator )
+ // Rule 269: abstract_declarator ::= <openscope-ast> pointer_seq direct_abstract_declarator
//
- case 272: { action. consumeDirectDeclaratorBracketed(); break;
+ case 269: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 273: array_direct_abstract_declarator ::= array_modifier
+ // Rule 273: basic_direct_abstract_declarator ::= ( abstract_declarator )
//
- case 273: { action. consumeDirectDeclaratorArrayDeclarator(false); break;
+ case 273: { action. consumeDirectDeclaratorBracketed(); break;
}
//
- // Rule 274: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier
+ // Rule 274: array_direct_abstract_declarator ::= array_modifier
//
- case 274: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ case 274: { action. consumeDirectDeclaratorArrayDeclarator(false); break;
}
//
- // Rule 275: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier
+ // Rule 275: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier
//
case 275: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 276: function_direct_abstract_declarator ::= ( )
+ // Rule 276: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier
//
- case 276: { action. consumeDirectDeclaratorFunctionDeclarator(false, false); break;
+ case 276: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ }
+
+ //
+ // Rule 277: function_direct_abstract_declarator ::= ( )
+ //
+ case 277: { action. consumeDirectDeclaratorFunctionDeclarator(false, false); break;
}
//
- // Rule 277: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( )
+ // Rule 278: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( )
//
- case 277: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
+ case 278: { action. consumeDirectDeclaratorFunctionDeclarator(true, false); break;
}
//
- // Rule 278: function_direct_abstract_declarator ::= ( <openscope-ast> parameter_type_list )
+ // Rule 279: function_direct_abstract_declarator ::= ( <openscope-ast> parameter_type_list )
//
- case 278: { action. consumeDirectDeclaratorFunctionDeclarator(false, true); break;
+ case 279: { action. consumeDirectDeclaratorFunctionDeclarator(false, true); break;
}
//
- // Rule 279: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( <openscope-ast> parameter_type_list )
+ // Rule 280: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( <openscope-ast> parameter_type_list )
//
- case 279: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
+ case 280: { action. consumeDirectDeclaratorFunctionDeclarator(true, true); break;
}
//
- // Rule 280: initializer ::= assignment_expression
+ // Rule 281: initializer ::= assignment_expression
//
- case 280: { action. consumeInitializer(); break;
+ case 281: { action. consumeInitializer(); break;
}
//
- // Rule 282: initializer_list ::= start_initializer_list { <openscope-ast> initializer_seq comma_opt } end_initializer_list
+ // Rule 283: initializer_list ::= start_initializer_list { <openscope-ast> initializer_seq comma_opt } end_initializer_list
//
- case 282: { action. consumeInitializerList(); break;
+ case 283: { action. consumeInitializerList(); break;
}
//
- // Rule 283: initializer_list ::= { <openscope-ast> }
+ // Rule 284: initializer_list ::= { <openscope-ast> }
//
- case 283: { action. consumeInitializerList(); break;
+ case 284: { action. consumeInitializerList(); break;
}
//
- // Rule 284: start_initializer_list ::= $Empty
+ // Rule 285: start_initializer_list ::= $Empty
//
- case 284: { action. initializerListStart(); break;
+ case 285: { action. initializerListStart(); break;
}
//
- // Rule 285: end_initializer_list ::= $Empty
+ // Rule 286: end_initializer_list ::= $Empty
//
- case 285: { action. initializerListEnd(); break;
+ case 286: { action. initializerListEnd(); break;
}
//
- // Rule 290: designated_initializer ::= <openscope-ast> designation = initializer
+ // Rule 291: designated_initializer ::= <openscope-ast> designation = initializer
//
- case 290: { action. consumeInitializerDesignated(); break;
+ case 291: { action. consumeInitializerDesignated(); break;
}
//
- // Rule 294: designator_base ::= [ constant_expression ]
+ // Rule 295: designator_base ::= [ constant_expression ]
//
- case 294: { action. consumeDesignatorArray(); break;
+ case 295: { action. consumeDesignatorArray(); break;
}
//
- // Rule 295: designator_base ::= . identifier_token
+ // Rule 296: designator_base ::= . identifier_token
//
- case 295: { action. consumeDesignatorField(); break;
+ case 296: { action. consumeDesignatorField(); break;
}
//
- // Rule 296: designator ::= [ constant_expression ]
+ // Rule 297: designator ::= [ constant_expression ]
//
- case 296: { action. consumeDesignatorArray(); break;
+ case 297: { action. consumeDesignatorArray(); break;
}
//
- // Rule 297: designator ::= . identifier_token
+ // Rule 298: designator ::= . identifier_token
//
- case 297: { action. consumeDesignatorField(); break;
+ case 298: { action. consumeDesignatorField(); break;
}
//
- // Rule 298: translation_unit ::= external_declaration_list
+ // Rule 299: translation_unit ::= external_declaration_list
//
- case 298: { action. consumeTranslationUnit(); break;
+ case 299: { action. consumeTranslationUnit(); break;
}
//
- // Rule 299: translation_unit ::= $Empty
+ // Rule 300: translation_unit ::= $Empty
//
- case 299: { action. consumeTranslationUnit(); break;
+ case 300: { action. consumeTranslationUnit(); break;
}
//
- // Rule 304: external_declaration ::= ;
+ // Rule 305: external_declaration ::= ;
//
- case 304: { action. consumeDeclarationEmpty(); break;
+ case 305: { action. consumeDeclarationEmpty(); break;
}
//
- // Rule 305: external_declaration ::= ERROR_TOKEN
+ // Rule 306: external_declaration ::= ERROR_TOKEN
//
- case 305: { action. consumeDeclarationProblem(); break;
+ case 306: { action. consumeDeclarationProblem(); break;
}
//
- // Rule 309: function_definition ::= <openscope-ast> function_declarator function_body
+ // Rule 310: function_definition ::= <openscope-ast> function_declarator function_body
//
- case 309: { action. consumeFunctionDefinition(false); break;
+ case 310: { action. consumeFunctionDefinition(false); break;
}
//
- // Rule 310: 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 310: { action. consumeFunctionDefinitionKnR(); break;
+ case 311: { action. consumeFunctionDefinitionKnR(); break;
}
//
- // Rule 311: normal_function_definition ::= declaration_specifiers <openscope-ast> function_declarator function_body
+ // Rule 312: normal_function_definition ::= declaration_specifiers <openscope-ast> function_declarator function_body
//
- case 311: { action. consumeFunctionDefinition(true); break;
+ case 312: { action. consumeFunctionDefinition(true); break;
}
//
- // Rule 312: function_body ::= { }
+ // Rule 313: function_body ::= { }
//
- case 312: { action. consumeStatementCompoundStatement(false); break;
+ case 313: { action. consumeStatementCompoundStatement(false); break;
}
//
- // Rule 313: function_body ::= { <openscope-ast> block_item_list }
+ // Rule 314: function_body ::= { <openscope-ast> block_item_list }
//
- case 313: { action. consumeStatementCompoundStatement(true); break;
+ case 314: { action. consumeStatementCompoundStatement(true); break;
}
//
- // Rule 315: no_sizeof_type_id_start ::= ERROR_TOKEN
+ // Rule 316: no_sizeof_type_id_start ::= ERROR_TOKEN
//
- case 315: { action. consumeEmpty(); break;
+ case 316: { action. consumeEmpty(); break;
}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99SizeofExpressionParserprs.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99SizeofExpressionParserprs.java
index 34a74ba272..8088f65c43 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99SizeofExpressionParserprs.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99SizeofExpressionParserprs.java
@@ -1,5 +1,5 @@
/*******************************************************************************
-* Copyright (c) 2006, 2009 IBM Corporation and others.
+* Copyright (c) 2006, 2010 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -45,171 +45,171 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
3,3,3,3,3,1,1,2,1,0,
1,3,1,1,1,1,1,1,1,1,
3,4,3,2,4,1,2,1,1,1,
- 2,5,7,5,1,0,7,5,9,8,
- 3,2,2,2,3,2,4,2,2,2,
- 2,2,1,1,1,1,2,1,2,2,
- 2,1,2,2,1,2,2,1,2,2,
- 1,2,2,1,3,1,3,1,1,1,
+ 2,5,7,5,1,0,7,2,5,9,
+ 8,3,2,2,2,3,2,4,2,2,
+ 2,2,2,1,1,1,1,2,1,2,
+ 2,2,1,2,2,1,2,2,1,2,
+ 2,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,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,3,4,5,
- 6,0,1,2,1,3,1,1,3,2,
- 1,1,1,1,2,1,2,3,1,1,
- 1,3,1,2,2,2,3,4,5,1,
- 1,7,3,0,0,1,1,3,3,4,
- 1,1,2,3,2,3,2,1,0,1,
- 2,1,1,1,1,1,2,1,3,6,
- 4,2,4,1,1,-36,0,0,0,0,
- 0,0,0,0,0,0,-2,0,0,0,
- 0,0,0,0,0,0,0,0,-4,-156,
- -115,0,-14,0,0,0,0,-72,0,0,
+ 1,1,1,1,1,1,1,1,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,3,4,
+ 5,6,0,1,2,1,3,1,1,3,
+ 2,1,1,1,1,2,1,2,3,1,
+ 1,1,3,1,2,2,2,3,4,5,
+ 1,1,7,3,0,0,1,1,3,3,
+ 4,1,1,2,3,2,3,2,1,0,
+ 1,2,1,1,1,1,1,2,1,3,
+ 6,4,2,4,1,1,-36,0,0,0,
+ 0,0,0,0,0,0,0,-2,0,0,
+ 0,0,0,0,0,0,0,0,0,-4,
+ -156,-115,0,-14,0,0,0,0,-72,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -167,0,-29,0,-104,0,0,0,0,-80,
- 0,0,-116,0,-16,0,-17,0,0,0,
- 0,0,0,0,-138,0,0,0,0,0,
+ 0,-167,0,-29,0,-104,0,0,0,0,
+ -80,0,0,-116,0,-16,0,-17,0,0,
+ 0,0,0,0,0,-138,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-174,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,0,0,0,0,0,0,0,0,
- 0,-178,0,-128,-78,0,0,-48,0,0,
+ 0,0,-178,0,-128,-78,0,0,-48,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-30,0,0,0,-18,0,-42,0,
+ 0,0,0,-30,0,0,0,-18,0,-42,
0,0,0,0,0,0,0,0,0,0,
- 0,-6,0,0,0,0,0,0,0,0,
- -189,0,0,0,0,0,0,0,0,0,
+ 0,0,-6,0,0,0,0,0,0,0,
+ 0,-189,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-3,0,0,0,0,0,0,0,0,
- 0,0,-19,0,0,0,0,0,0,0,
- 0,0,0,0,-117,0,0,-118,0,-119,
- 0,0,0,-43,0,0,0,0,0,0,
- 0,0,0,0,0,-108,0,0,0,0,
+ 0,0,-3,0,0,0,0,0,0,0,
+ 0,0,0,-19,0,0,0,0,0,0,
+ 0,0,0,0,0,-117,0,0,-118,0,
+ -119,0,0,0,-43,0,0,0,0,0,
+ 0,0,0,0,0,0,-108,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-5,0,0,0,
- 0,0,0,0,-127,0,0,0,0,0,
- 0,0,0,0,0,-81,0,0,0,0,
- 0,0,0,0,0,-131,0,-158,0,-55,
+ 0,0,0,0,0,0,0,-5,0,0,
+ 0,0,0,0,0,-127,0,0,0,0,
+ 0,0,0,0,0,0,-81,0,0,0,
+ 0,0,0,0,0,0,-131,0,-158,0,
+ -55,0,0,0,0,0,0,0,0,0,
+ 0,-122,0,0,0,0,0,0,0,0,
+ 0,-20,0,-21,0,0,0,0,-27,0,
+ 0,0,0,0,0,0,0,0,0,-22,
0,0,0,0,0,0,0,0,0,0,
- -122,0,0,0,0,0,0,0,0,0,
- -20,0,-21,0,0,0,0,-27,0,0,
- 0,0,0,0,0,0,0,0,-22,0,
+ 0,-23,0,-188,0,-24,0,0,0,0,
+ -74,0,-12,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-56,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -23,0,-188,0,-24,0,0,0,0,-74,
- 0,-12,0,0,0,0,0,0,0,0,
- 0,0,0,0,-56,0,0,0,0,0,
+ 0,0,0,0,0,0,-57,0,0,0,
+ 0,0,0,0,0,0,0,-25,0,0,
+ 0,0,0,0,0,0,0,-58,0,0,
+ 0,0,0,0,0,0,0,0,-26,0,
+ 0,0,0,0,0,0,0,0,-59,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-57,0,0,0,0,
- 0,0,0,0,0,0,-25,0,0,0,
- 0,0,0,0,0,0,-58,0,0,0,
- 0,0,0,0,0,0,0,-26,0,0,
- 0,0,0,0,0,0,0,-59,0,0,
+ 0,0,0,0,0,0,0,0,0,-60,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-60,0,
- 0,0,0,0,0,0,0,0,0,-86,
- 0,0,0,0,0,0,0,0,0,-61,
+ -86,0,0,0,0,0,0,0,0,0,
+ -61,0,0,0,0,0,0,0,0,0,
+ 0,-87,0,0,0,0,0,0,0,0,
+ 0,-62,0,0,0,0,0,0,0,0,
+ 0,0,-88,0,0,0,0,0,0,0,
+ 0,0,-63,0,0,0,0,0,0,0,
+ 0,0,0,-89,0,0,0,0,0,0,
+ 0,0,0,-64,0,0,0,0,0,0,
+ 0,0,0,0,-90,0,0,0,0,0,
+ 0,0,0,0,-65,0,0,0,0,0,
+ 0,0,0,0,0,-91,0,0,0,0,
+ 0,0,0,0,0,-66,0,0,0,0,
+ 0,0,0,0,0,0,-92,0,0,0,
+ 0,0,0,0,0,0,-120,0,0,0,
+ 0,0,0,0,0,0,0,-93,0,0,
+ 0,0,0,0,0,0,0,-141,0,0,
+ 0,0,0,0,0,0,0,0,-94,0,
+ 0,0,0,0,0,0,0,0,-142,0,
+ 0,0,0,0,0,0,0,0,0,-95,
+ 0,0,0,0,0,0,0,0,0,-177,
0,0,0,0,0,0,0,0,0,0,
- -87,0,0,0,0,0,0,0,0,0,
- -62,0,0,0,0,0,0,0,0,0,
- 0,-88,0,0,0,0,0,0,0,0,
- 0,-63,0,0,0,0,0,0,0,0,
- 0,0,-89,0,0,0,0,0,0,0,
- 0,0,-64,0,0,0,0,0,0,0,
- 0,0,0,-90,0,0,0,0,0,0,
- 0,0,0,-65,0,0,0,0,0,0,
- 0,0,0,0,-91,0,0,0,0,0,
- 0,0,0,0,-66,0,0,0,0,0,
- 0,0,0,0,0,-92,0,0,0,0,
- 0,0,0,0,0,-120,0,0,0,0,
- 0,0,0,0,0,0,-93,0,0,0,
- 0,0,0,0,0,0,-141,0,0,0,
- 0,0,0,0,0,0,0,-94,0,0,
- 0,0,0,0,0,0,0,-142,0,0,
- 0,0,0,0,0,0,0,0,-95,0,
- 0,0,0,0,0,0,0,0,-177,0,
- 0,0,0,0,0,0,0,0,0,-134,
- 0,0,0,0,0,0,0,0,-186,0,
- 0,0,0,0,0,0,0,0,0,-197,
- 0,0,0,0,0,0,0,0,-13,0,
- 0,0,0,0,0,0,-7,0,0,0,
- 0,0,0,0,-192,0,0,0,0,0,
+ -134,0,0,0,0,0,0,0,0,-186,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-198,0,0,0,0,0,
- 0,0,0,0,0,-135,0,0,0,0,
- 0,0,0,0,-155,-96,0,-170,0,0,
- -97,0,-70,0,0,0,0,0,0,0,
- -206,0,0,0,0,0,0,0,0,0,
+ -197,0,0,0,0,0,0,0,0,-13,
+ 0,0,0,0,0,0,0,-7,0,0,
+ 0,0,0,0,0,-192,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -54,0,0,0,0,0,0,0,0,0,
- 0,-130,0,0,0,0,0,0,0,-180,
- -176,0,0,0,0,-75,0,0,-37,0,
- 0,0,0,0,0,0,0,0,-98,-145,
- 0,0,-110,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-200,-193,-124,0,
- -187,0,0,0,0,0,-99,0,-100,0,
- -146,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-31,0,-101,0,0,0,
- 0,0,0,0,0,0,0,0,0,-184,
- -102,-85,0,-33,0,0,-51,0,0,0,
- 0,0,0,0,0,0,0,-121,0,0,
- 0,0,0,0,0,-71,0,0,0,0,
- 0,0,0,-52,0,0,0,0,0,0,
- 0,0,0,0,-164,0,0,0,-137,-154,
- 0,-34,0,-105,0,0,0,-183,0,0,
- -67,0,0,0,0,-107,0,-123,0,-83,
- 0,0,0,-140,0,0,0,0,0,0,
+ 0,0,0,0,0,-198,0,0,0,0,
+ 0,0,0,0,0,0,-135,0,0,0,
+ 0,0,0,0,0,-155,-96,0,-170,0,
+ 0,-97,0,-70,0,0,0,0,0,0,
+ 0,-206,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-38,0,0,0,
- 0,0,0,0,0,0,-49,0,0,0,
- 0,0,0,0,0,0,0,0,0,-50,
+ 0,-54,0,0,0,0,0,0,0,0,
+ 0,0,-130,0,0,0,0,0,0,0,
+ -180,-176,0,0,0,0,-75,0,0,-37,
+ 0,0,0,0,0,0,0,0,0,-98,
+ -145,0,0,-110,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-200,-193,-124,
+ 0,-187,0,0,0,0,0,-99,0,-100,
+ 0,-146,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-31,0,-101,0,0,
0,0,0,0,0,0,0,0,0,0,
- -205,0,0,0,-153,0,-157,-68,0,0,
- -132,0,-191,0,-136,0,-151,0,0,-44,
+ -184,-102,-85,0,-33,0,0,-51,0,0,
+ 0,0,0,0,0,0,0,0,-121,0,
+ 0,0,0,0,0,0,-71,0,0,0,
+ 0,0,0,0,-52,0,0,0,0,0,
+ 0,0,0,0,0,-164,0,0,0,-137,
+ -154,0,-34,0,-105,0,0,0,-183,0,
+ 0,-67,0,0,0,0,-107,0,-123,0,
+ -83,0,0,0,-140,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-8,
- 0,0,0,0,0,0,0,-166,0,-45,
+ 0,0,0,0,0,0,0,-38,0,0,
+ 0,0,0,0,0,0,0,-49,0,0,
0,0,0,0,0,0,0,0,0,0,
- -46,0,0,0,0,0,0,0,0,0,
- -47,0,0,0,0,0,0,0,0,0,
- -73,0,0,-76,-69,-109,0,-112,-139,-165,
- -171,0,-111,0,0,0,0,0,0,0,
- 0,-172,-175,0,0,0,0,-207,0,0,
- 0,0,0,0,0,0,0,-199,-204,0,
- -147,0,0,0,0,-144,0,0,0,0,
+ -50,0,0,0,0,0,0,0,0,0,
+ 0,-205,0,0,0,-153,0,-157,-68,0,
+ 0,-132,0,-191,0,-136,0,-151,0,0,
+ -44,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ -8,0,0,0,0,0,0,0,-166,0,
+ -45,0,0,0,0,0,0,0,0,0,
+ 0,-46,0,0,0,0,0,0,0,0,
+ 0,-47,0,0,0,0,0,0,0,0,
+ 0,-73,0,0,-76,-69,-109,0,-112,-139,
+ -165,-171,0,-111,0,0,0,0,0,0,
+ 0,0,-172,-175,0,0,0,0,-207,0,
+ 0,0,0,0,0,0,0,0,-199,-204,
+ 0,-147,0,0,0,0,-144,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -9,0,0,0,0,0,0,0,-10,0,
- 0,0,0,0,0,0,-11,0,0,0,
- 0,0,0,0,-35,-39,0,0,0,0,
- 0,0,0,0,-113,0,-40,0,0,0,
- 0,0,0,0,-173,0,-103,-126,-143,-162,
- 0,-41,0,0,0,0,0,0,0,0,
- 0,0,-15,-129,-159,0,0,0,0,-28,
- -32,0,0,0,0,-179,0,-160,-148,-190,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-185,0,-77,0,0,0,0,
- 0,0,0,0,0,0,0,0,-79,0,
- 0,0,-196,-82,0,0,0,0,0,-106,
- -169,0,0,0,0,0,0,-84,0,0,
+ 0,-9,0,0,0,0,0,0,0,-10,
+ 0,0,0,0,0,0,0,-11,0,0,
+ 0,0,0,0,0,-35,-39,0,0,0,
+ 0,0,0,0,0,-113,0,-40,0,0,
+ 0,0,0,0,0,-173,0,-103,-126,-143,
+ -162,0,-41,0,0,0,0,0,0,0,
+ 0,0,0,-15,-129,-159,0,0,0,0,
+ -28,-32,0,0,0,0,-179,0,-160,-148,
+ -190,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-185,0,-77,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-79,
+ 0,0,0,-196,-82,0,0,0,0,0,
+ -106,-169,0,0,0,0,0,0,-84,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -125,0,0,-152,-181,0,0,0,0,-182,
- 0,0,0,0,0,0,-133,0,0,-168,
- 0,0,0,-150,-1,-114,-163,0,0,0,
- 0,0,-53,0,0,0,0,0,0,-161,
- -149,0,-202,0,0,0,0,0,0,0,
- -203,0,0,0,0,0,0,-201,0,0,
+ 0,-125,0,0,-152,-181,0,0,0,0,
+ -182,0,0,0,0,0,0,-133,0,0,
+ -168,0,0,0,-150,-1,-114,-163,0,0,
+ 0,0,0,-53,0,0,0,0,0,0,
+ -161,-149,0,-202,0,0,0,0,0,0,
+ 0,-203,0,0,0,0,0,0,-201,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-194,0,0,-195,0,
+ 0,0,0,0,0,0,-194,0,0,-195,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0
+ 0,0,0,0
};
};
public final static short baseCheck[] = BaseCheck.baseCheck;
@@ -231,171 +231,171 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
88,72,72,47,104,104,104,104,104,104,
104,105,105,105,106,106,111,111,112,112,
107,107,108,108,108,114,114,109,109,109,
- 109,110,110,110,110,110,113,113,25,25,
- 25,25,25,28,28,28,78,78,73,73,
- 73,73,74,74,74,75,75,75,76,76,
- 76,77,77,77,115,115,116,116,117,29,
- 31,31,31,31,31,53,54,54,54,54,
- 54,54,54,54,54,54,54,54,63,60,
- 60,89,90,65,65,61,61,61,66,79,
- 79,80,80,67,67,67,49,91,91,81,
- 82,82,82,62,62,92,83,83,84,84,
- 68,68,21,22,22,22,30,48,48,32,
- 32,32,32,35,35,37,33,33,34,38,
- 38,118,118,36,119,119,93,93,26,26,
- 26,26,26,26,26,26,26,85,50,50,
- 50,50,27,56,56,55,55,55,57,57,
- 51,51,94,94,71,71,58,58,58,41,
- 41,41,42,43,43,43,44,44,44,44,
- 64,64,46,46,52,96,95,95,95,95,
- 86,97,98,98,99,99,100,100,120,120,
- 121,121,122,122,122,122,124,124,123,123,
- 123,125,126,126,87,87,1,780,17,21,
- 18,343,738,44,387,385,523,31,467,633,
- 631,661,649,717,665,74,91,134,212,15,
- 668,329,990,607,136,133,135,159,275,20,
- 17,21,18,343,738,44,387,385,523,1153,
- 467,633,631,661,649,717,665,74,1426,138,
- 165,692,238,360,31,50,142,145,148,151,
- 421,445,1268,360,186,241,1228,194,339,1424,
- 1586,1599,1604,1618,1212,441,20,17,21,18,
- 343,738,44,387,385,523,340,467,633,631,
- 661,649,717,665,74,280,336,20,17,21,
- 18,343,738,44,387,385,523,340,467,633,
- 631,661,649,717,665,74,280,1443,442,292,
- 194,281,693,25,575,97,383,1264,489,20,
- 17,21,18,343,42,44,387,385,523,286,
- 467,969,281,360,31,254,212,12,1264,489,
- 20,17,21,18,343,42,44,387,385,843,
- 288,287,489,20,17,21,18,343,42,40,
- 1075,465,20,17,21,18,343,738,44,387,
- 385,523,289,467,633,631,661,649,717,665,
- 74,280,489,20,17,21,18,343,738,44,
- 387,385,523,30,467,633,631,661,649,717,
- 665,74,91,24,341,360,185,281,576,1355,
- 360,187,293,1264,489,20,17,21,18,343,
- 42,44,387,385,864,290,537,20,17,21,
- 18,343,738,44,387,385,523,1641,467,633,
- 631,661,649,717,665,74,1538,513,20,17,
- 21,18,343,41,339,299,20,17,21,18,
- 343,738,44,387,385,523,446,467,633,631,
- 661,649,717,665,74,1539,189,178,236,239,
- 489,20,17,21,18,343,42,44,387,385,
- 523,50,467,633,631,661,1211,134,212,253,
- 212,580,395,63,136,133,135,159,489,20,
- 17,21,18,343,738,44,387,385,523,219,
- 467,633,631,661,649,717,665,74,92,138,
- 165,313,535,282,1130,327,142,145,148,151,
- 323,445,513,20,17,21,18,343,34,1424,
- 1586,1599,1604,1618,1212,489,20,17,21,18,
- 343,738,44,387,385,523,274,467,633,631,
- 661,649,717,665,74,85,489,20,17,21,
- 18,343,738,44,387,385,523,413,467,633,
- 631,661,649,717,665,74,84,489,20,17,
- 21,18,343,738,44,387,385,523,524,467,
- 633,631,661,649,717,665,74,83,489,20,
- 17,21,18,343,738,44,387,385,523,282,
- 467,633,631,661,649,717,665,74,82,489,
- 20,17,21,18,343,738,44,387,385,523,
- 561,467,633,631,661,649,717,665,74,81,
- 489,20,17,21,18,343,738,44,387,385,
- 523,199,467,633,631,661,649,717,665,74,
- 80,489,20,17,21,18,343,738,44,387,
- 385,523,201,467,633,631,661,649,717,665,
- 74,79,489,20,17,21,18,343,738,44,
- 387,385,523,110,467,633,631,661,649,717,
- 665,74,78,489,20,17,21,18,343,738,
- 44,387,385,523,117,467,633,631,661,649,
- 717,665,74,77,489,20,17,21,18,343,
- 738,44,387,385,523,448,467,633,631,661,
- 649,717,665,74,76,489,20,17,21,18,
- 343,738,44,387,385,523,472,467,633,631,
- 661,649,717,665,74,75,489,20,17,21,
- 18,343,738,44,387,385,523,657,467,633,
- 631,661,649,717,665,74,73,489,20,17,
- 21,18,343,738,44,387,385,523,678,467,
- 633,631,661,649,717,665,74,1555,489,20,
- 17,21,18,343,738,44,387,385,523,200,
- 467,633,631,661,649,717,665,74,1568,489,
- 20,17,21,18,343,42,44,387,385,523,
- 191,467,633,631,661,649,717,665,93,489,
- 20,17,21,18,343,42,44,387,385,523,
- 685,467,633,631,661,649,717,665,93,513,
- 20,17,21,18,343,33,1570,489,20,17,
- 21,18,343,42,39,489,20,17,21,18,
- 343,42,44,387,385,523,211,467,633,631,
- 661,649,717,665,93,489,20,17,21,18,
- 343,42,44,387,385,523,50,467,633,631,
- 661,649,717,665,93,394,57,1644,696,193,
- 1357,104,1691,416,20,17,21,18,343,42,
- 43,489,20,17,21,18,343,42,44,387,
- 385,523,201,467,633,631,661,649,717,665,
- 93,489,20,17,21,18,343,42,44,387,
- 385,523,105,467,633,631,661,649,1197,28,
- 648,360,295,1569,1535,1264,562,1584,202,489,
- 20,17,21,18,343,42,44,801,273,650,
- 207,254,212,236,217,1181,220,1461,222,223,
- 228,1540,275,266,1136,670,271,701,676,59,
- 262,360,1431,276,253,212,273,711,1698,6,
- 263,718,217,1181,220,1461,222,223,228,254,
- 212,266,1136,670,271,373,1284,429,1680,217,
- 1181,220,1461,222,223,228,512,227,1428,444,
- 696,246,189,178,397,1680,260,489,20,17,
- 21,18,343,42,44,387,385,523,206,467,
- 633,631,1149,134,212,89,59,1083,585,209,
- 137,133,135,159,489,20,17,21,18,343,
- 42,44,387,385,523,152,467,633,1177,50,
- 542,1431,397,1276,400,139,165,283,305,1683,
- 1260,397,143,146,149,152,715,445,717,1698,
- 470,273,1278,1348,608,19,1610,218,1181,220,
- 1461,222,223,228,1537,608,268,1136,670,271,
- 217,1181,220,1461,222,223,228,489,20,17,
- 21,18,343,42,44,822,1458,489,20,17,
- 21,18,343,42,44,387,385,523,208,1076,
- 489,20,17,21,18,343,42,44,387,385,
- 523,305,1081,1078,1442,50,540,627,397,197,
- 199,333,1698,360,297,716,1611,722,1566,1010,
- 489,20,17,21,18,343,42,44,387,385,
- 885,23,538,217,1181,220,1461,222,223,228,
- 489,20,17,21,18,343,42,38,206,1458,
- 489,20,17,21,18,343,42,44,387,385,
- 906,489,20,17,21,18,343,42,44,387,
- 927,489,20,17,21,18,343,42,44,387,
- 948,675,198,199,232,281,281,179,397,59,
- 50,58,1525,365,20,17,21,18,343,42,
- 36,1650,698,144,276,134,212,273,706,22,
- 240,272,141,133,135,159,1347,245,151,171,
- 1764,689,266,1136,670,271,365,20,17,21,
- 18,343,42,36,1764,1278,1764,140,165,1428,
- 218,1181,220,1461,222,223,228,226,1764,1764,
- 246,489,20,17,21,18,343,42,37,489,
- 20,17,21,18,343,42,36,489,20,17,
- 21,18,343,42,35,60,489,20,17,21,
- 18,343,42,47,1764,544,1236,489,20,17,
- 21,18,343,42,46,206,606,52,281,281,
- 544,273,489,20,17,21,18,343,42,45,
- 1122,606,1276,50,397,281,266,1136,670,271,
- 50,50,242,241,316,1122,236,1276,281,59,
- 281,316,512,265,663,1610,258,278,196,243,
- 1554,1764,1351,28,206,196,604,253,212,1264,
- 1255,258,244,87,294,1554,1276,1351,1262,613,
- 87,87,1515,206,636,1262,1425,134,212,1515,
- 324,542,1431,1764,144,133,135,159,645,1255,
- 134,212,1168,203,1214,134,212,147,133,135,
- 159,1271,150,133,135,159,273,1278,1764,134,
- 212,236,180,1764,48,646,153,133,135,159,
- 142,268,1136,670,271,606,606,454,1764,1764,
- 95,606,253,212,397,389,497,497,606,196,
- 1122,606,1764,50,1764,196,512,1657,1645,208,
- 397,521,1122,206,512,196,1764,279,1764,277,
- 230,281,606,371,1210,1442,258,444,59,371,
- 1716,1764,1351,224,1764,87,1122,1764,258,371,
- 314,191,1664,87,1351,296,397,191,1179,342,
- 1764,1764,204,1388,1660,1276,937,192,1764,1603,
- 1660,1764,259,1764,1764,1764,1764,1764,1719,229,
- 1764,1764,233,1764,1764,1764,1764,1764,1448,1764,
- 1764,1764,327,1764,0,20,178,0,1,1989,
- 0,1,2000,0
+ 109,109,110,110,110,110,110,113,113,25,
+ 25,25,25,25,28,28,28,78,78,73,
+ 73,73,73,74,74,74,75,75,75,76,
+ 76,76,77,77,77,115,115,116,116,117,
+ 29,31,31,31,31,31,53,54,54,54,
+ 54,54,54,54,54,54,54,54,54,63,
+ 60,60,89,90,65,65,61,61,61,66,
+ 79,79,80,80,67,67,67,49,91,91,
+ 81,82,82,82,62,62,92,83,83,84,
+ 84,68,68,21,22,22,22,30,48,48,
+ 32,32,32,32,35,35,37,33,33,34,
+ 38,38,118,118,36,119,119,93,93,26,
+ 26,26,26,26,26,26,26,26,85,50,
+ 50,50,50,27,56,56,55,55,55,57,
+ 57,51,51,94,94,71,71,58,58,58,
+ 41,41,41,42,43,43,43,44,44,44,
+ 44,64,64,46,46,52,96,95,95,95,
+ 95,86,97,98,98,99,99,100,100,120,
+ 120,121,121,122,122,122,122,124,124,123,
+ 123,123,125,126,126,87,87,1,781,17,
+ 21,18,344,739,44,388,386,524,31,468,
+ 634,632,662,650,718,666,74,91,135,213,
+ 15,668,329,991,607,137,134,136,160,275,
+ 20,17,21,18,344,739,44,388,386,524,
+ 1154,468,634,632,662,650,718,666,74,1427,
+ 139,166,692,239,360,31,50,143,146,149,
+ 152,421,446,1269,360,187,241,1229,194,340,
+ 1425,1587,1600,1605,1619,1213,441,20,17,21,
+ 18,344,739,44,388,386,524,341,468,634,
+ 632,662,650,718,666,74,281,336,20,17,
+ 21,18,344,739,44,388,386,524,341,468,
+ 634,632,662,650,718,666,74,281,1444,443,
+ 293,195,282,693,25,575,97,384,1265,489,
+ 20,17,21,18,344,42,44,388,386,524,
+ 287,468,970,282,360,31,255,213,12,1265,
+ 489,20,17,21,18,344,42,44,388,386,
+ 844,289,288,489,20,17,21,18,344,42,
+ 40,1076,465,20,17,21,18,344,739,44,
+ 388,386,524,290,468,634,632,662,650,718,
+ 666,74,281,489,20,17,21,18,344,739,
+ 44,388,386,524,30,468,634,632,662,650,
+ 718,666,74,91,24,342,360,186,282,576,
+ 1356,360,188,294,1265,489,20,17,21,18,
+ 344,42,44,388,386,865,291,537,20,17,
+ 21,18,344,739,44,388,386,524,1642,468,
+ 634,632,662,650,718,666,74,1539,513,20,
+ 17,21,18,344,41,340,299,20,17,21,
+ 18,344,739,44,388,386,524,446,468,634,
+ 632,662,650,718,666,74,1540,189,179,236,
+ 240,489,20,17,21,18,344,42,44,388,
+ 386,524,50,468,634,632,662,1212,135,213,
+ 254,213,580,396,63,137,134,136,160,489,
+ 20,17,21,18,344,739,44,388,386,524,
+ 219,468,634,632,662,650,718,666,74,92,
+ 139,166,313,536,282,1131,327,143,146,149,
+ 152,323,446,513,20,17,21,18,344,34,
+ 1425,1587,1600,1605,1619,1213,489,20,17,21,
+ 18,344,739,44,388,386,524,275,468,634,
+ 632,662,650,718,666,74,85,489,20,17,
+ 21,18,344,739,44,388,386,524,413,468,
+ 634,632,662,650,718,666,74,84,489,20,
+ 17,21,18,344,739,44,388,386,524,524,
+ 468,634,632,662,650,718,666,74,83,489,
+ 20,17,21,18,344,739,44,388,386,524,
+ 283,468,634,632,662,650,718,666,74,82,
+ 489,20,17,21,18,344,739,44,388,386,
+ 524,561,468,634,632,662,650,718,666,74,
+ 81,489,20,17,21,18,344,739,44,388,
+ 386,524,199,468,634,632,662,650,718,666,
+ 74,80,489,20,17,21,18,344,739,44,
+ 388,386,524,201,468,634,632,662,650,718,
+ 666,74,79,489,20,17,21,18,344,739,
+ 44,388,386,524,110,468,634,632,662,650,
+ 718,666,74,78,489,20,17,21,18,344,
+ 739,44,388,386,524,117,468,634,632,662,
+ 650,718,666,74,77,489,20,17,21,18,
+ 344,739,44,388,386,524,448,468,634,632,
+ 662,650,718,666,74,76,489,20,17,21,
+ 18,344,739,44,388,386,524,472,468,634,
+ 632,662,650,718,666,74,75,489,20,17,
+ 21,18,344,739,44,388,386,524,657,468,
+ 634,632,662,650,718,666,74,73,489,20,
+ 17,21,18,344,739,44,388,386,524,678,
+ 468,634,632,662,650,718,666,74,1556,489,
+ 20,17,21,18,344,739,44,388,386,524,
+ 200,468,634,632,662,650,718,666,74,1569,
+ 489,20,17,21,18,344,42,44,388,386,
+ 524,191,468,634,632,662,650,718,666,93,
+ 489,20,17,21,18,344,42,44,388,386,
+ 524,685,468,634,632,662,650,718,666,93,
+ 513,20,17,21,18,344,33,1571,489,20,
+ 17,21,18,344,42,39,489,20,17,21,
+ 18,344,42,44,388,386,524,212,468,634,
+ 632,662,650,718,666,93,489,20,17,21,
+ 18,344,42,44,388,386,524,50,468,634,
+ 632,662,650,718,666,93,394,57,1645,696,
+ 194,1358,104,1692,416,20,17,21,18,344,
+ 42,43,489,20,17,21,18,344,42,44,
+ 388,386,524,202,468,634,632,662,650,718,
+ 666,93,489,20,17,21,18,344,42,44,
+ 388,386,524,105,468,634,632,662,650,1198,
+ 28,648,360,296,1570,1536,1265,562,1585,203,
+ 489,20,17,21,18,344,42,44,802,274,
+ 650,207,255,213,236,218,1182,221,1462,223,
+ 224,229,1541,276,267,1137,671,272,701,676,
+ 59,263,360,1432,277,254,213,274,711,1699,
+ 6,264,718,218,1182,221,1462,223,224,229,
+ 255,213,267,1137,671,272,373,1285,429,1681,
+ 218,1182,221,1462,223,224,229,513,228,1429,
+ 445,696,246,189,179,397,1681,261,489,20,
+ 17,21,18,344,42,44,388,386,524,206,
+ 468,634,632,1150,135,213,89,59,1084,586,
+ 210,138,134,136,160,489,20,17,21,18,
+ 344,42,44,388,386,524,152,468,634,1178,
+ 50,542,1432,397,1277,400,140,166,284,305,
+ 1684,1261,397,144,147,150,153,715,446,717,
+ 1699,470,274,1279,1349,608,19,1611,219,1182,
+ 221,1462,223,224,229,1538,609,269,1137,671,
+ 272,218,1182,221,1462,223,224,229,489,20,
+ 17,21,18,344,42,44,823,1459,489,20,
+ 17,21,18,344,42,44,388,386,524,209,
+ 1077,489,20,17,21,18,344,42,44,388,
+ 386,524,305,1082,1079,1443,50,541,627,397,
+ 198,200,333,1699,360,298,716,1612,722,1567,
+ 1011,489,20,17,21,18,344,42,44,388,
+ 386,886,23,539,218,1182,221,1462,223,224,
+ 229,489,20,17,21,18,344,42,38,206,
+ 1459,489,20,17,21,18,344,42,44,388,
+ 386,907,489,20,17,21,18,344,42,44,
+ 388,928,489,20,17,21,18,344,42,44,
+ 388,949,675,199,200,232,281,281,180,397,
+ 59,50,58,1526,365,20,17,21,18,344,
+ 42,36,1651,698,144,277,135,213,274,706,
+ 22,241,273,142,134,136,160,1348,246,151,
+ 171,1765,689,267,1137,671,272,365,20,17,
+ 21,18,344,42,36,1765,1279,1765,141,166,
+ 1429,219,1182,221,1462,223,224,229,227,1765,
+ 1765,247,489,20,17,21,18,344,42,37,
+ 489,20,17,21,18,344,42,36,489,20,
+ 17,21,18,344,42,35,60,489,20,17,
+ 21,18,344,42,47,1765,544,1237,489,20,
+ 17,21,18,344,42,46,206,607,52,281,
+ 281,544,274,489,20,17,21,18,344,42,
+ 45,1123,607,1277,50,397,281,267,1137,671,
+ 272,50,50,243,242,317,1123,236,1277,281,
+ 59,281,317,513,266,664,1611,259,279,197,
+ 244,1555,1765,1352,28,206,197,604,254,213,
+ 1265,1256,259,245,87,295,1555,1277,1352,1263,
+ 613,87,87,1516,206,636,1263,1426,135,213,
+ 1516,324,542,1432,1765,145,134,136,160,645,
+ 1256,135,213,1169,204,1215,135,213,148,134,
+ 136,160,1272,151,134,136,160,274,1279,1765,
+ 135,213,236,181,1765,48,646,154,134,136,
+ 160,142,269,1137,671,272,607,607,454,1765,
+ 1765,95,607,254,213,397,389,497,497,607,
+ 197,1123,607,1765,50,1765,197,513,1658,1646,
+ 209,397,521,1123,206,513,197,1765,280,1765,
+ 278,231,281,607,372,1211,1443,259,445,59,
+ 372,1717,1765,1352,225,1765,87,1123,1765,259,
+ 372,315,192,1665,87,1352,297,397,192,1180,
+ 342,1765,1765,205,1389,1661,1277,938,193,1765,
+ 1604,1661,1765,260,1765,1765,1765,1765,1765,1720,
+ 230,1765,1765,234,1765,1765,1765,1765,1765,1449,
+ 1765,1765,1765,328,1765,0,20,179,0,1,
+ 1991,0,1,2002,0
};
};
public final static char baseAction[] = BaseAction.baseAction;
@@ -495,82 +495,82 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface TermAction {
public final static char termAction[] = {0,
- 1764,1775,1553,1776,1499,1764,1977,1978,1979,1491,
- 1380,59,1507,1926,88,1019,672,577,1777,1778,
- 1779,1780,1027,482,1927,1925,1980,1928,1924,54,
- 1764,1931,1936,1935,1933,1934,1932,1937,1938,1930,
- 1939,1940,1941,638,1280,596,380,1764,1,1,
- 1,1764,190,1,1,1,61,210,252,264,
- 1,1421,62,1,916,2773,1390,1360,544,469,
- 348,1,1,1,1,1,1401,1411,1,1,
+ 1765,1776,1554,1777,1500,1765,1979,1980,1981,1492,
+ 1381,59,1508,1928,88,1020,673,578,1778,1779,
+ 1780,1781,1028,483,1929,1927,1982,1930,1926,54,
+ 1765,1933,1938,1937,1935,1936,1934,1939,1940,1932,
+ 1941,1942,1943,639,1281,597,381,1765,1,1,
+ 1,1765,191,1,1,1,61,211,253,265,
+ 1,1422,62,1,917,2775,1391,1361,545,470,
+ 349,1,1,1,1,1,1402,1412,1,1,
1,1,1,1,1,1,1,1,1,1,
- 190,1,1,1,1764,1,181,1,1959,189,
- 1,1,1,60,261,1989,1150,1,1,58,
- 1754,1390,1360,544,469,348,57,999,1,1,
- 1,1,1,1330,1317,1,1,1,1,1,
- 1,1,1,1,1,1,1,189,1,1,
- 1,1764,1,1764,1,1959,190,1,1,1,
- 200,267,1989,1150,1,252,1401,1411,1390,1360,
- 544,469,348,1401,1411,1,1,1,1,1,
- 1764,2001,1,1,1,1,1,1,1,1,
- 1,1,1,1,190,1,1,1,1764,1775,
- 182,1776,1959,48,1977,1978,1979,1542,50,63,
- 49,1926,1542,491,1542,1764,1,1758,1150,1091,
- 1772,1770,1927,1925,1980,1928,1924,348,68,1931,
- 1936,1935,1933,1934,1932,1937,1938,1930,1939,1940,
- 1941,128,1280,596,380,1764,1769,1977,1978,1979,
- 51,1977,1978,1979,1926,69,1527,1516,1771,1307,
- 1139,1527,1516,1527,1516,1927,1925,1980,1928,1924,
- 1330,1317,1931,1936,1935,1933,1934,1932,1937,1938,
- 1930,1939,1940,1941,1,1775,1553,1776,1433,1768,
- 1764,285,1217,1491,1380,1768,1507,556,1764,1019,
- 672,577,1777,1778,1779,1780,1027,482,1764,1775,
- 1553,1776,1466,1768,1,1989,1167,1491,1380,1217,
- 1507,958,66,1019,672,577,1777,1778,1779,1780,
- 1027,482,270,267,1767,1421,72,252,1764,1775,
- 1767,1776,255,348,348,1,1775,1553,1776,1499,
- 29,1764,1066,1764,1491,1380,1770,1507,1767,2773,
- 1019,672,577,1777,1778,1779,1780,1027,482,1764,
- 1775,1681,1776,1055,1764,1775,1553,1776,1499,1768,
- 1459,1769,1,1491,1380,1244,1507,90,29,1019,
- 672,577,1777,1778,1779,1780,1027,482,1764,1,
- 1,1,1,30,1111,1673,1764,1,1,1764,
- 1,1770,90,1,1,1,1,1,1,1,
- 1,1,70,621,1767,1764,1775,1553,1776,1499,
- 184,2803,416,2803,1491,1380,1769,1507,71,2773,
- 1019,672,577,1777,1778,1779,1780,1027,482,2079,
- 1,1775,1553,1776,1499,183,2805,56,2805,1491,
- 1380,1764,1507,1,2773,1019,672,577,1777,1778,
- 1779,1780,1027,482,1764,1775,1553,1776,1499,205,
- 2807,55,2807,1491,1380,1764,1507,610,2773,1019,
- 672,577,1777,1778,1779,1780,1027,482,1764,1775,
- 1553,1776,1499,610,1401,1411,1,1491,1380,1764,
- 1507,1770,2021,1019,672,577,1777,1778,1779,1780,
- 1027,482,1764,1775,1560,1776,1499,1764,1401,1411,
- 1,1491,1380,42,1507,1764,1769,1019,672,577,
- 1777,1778,1779,1780,1027,482,1,1775,1553,1776,
- 1499,207,1775,1,1776,1491,1380,252,1507,1764,
- 1764,1019,672,577,1777,1778,1779,1780,1027,482,
- 20,269,1755,1666,1755,1755,178,178,178,2020,
- 1764,1755,348,178,247,1764,1775,1764,1776,64,
- 1977,1978,1979,895,178,178,178,178,178,1259,
- 1755,448,2021,874,853,832,811,790,748,769,
- 727,706,685,129,1764,1764,32,248,1195,1977,
- 1978,1979,130,1,1,1,1926,1561,1977,1978,
- 1979,1790,1791,1764,1764,1926,249,1927,1925,1980,
- 1928,1924,1,1,1,131,1927,1925,1980,1928,
- 1924,1977,1978,1979,132,1,1761,250,1926,67,
- 1977,1978,1979,1977,1978,1979,53,1926,463,1927,
- 1925,1980,1928,1924,1764,1307,1139,1764,1927,1925,
- 1980,1928,1924,373,1,251,1421,52,979,1770,
- 1764,1977,1978,1979,1764,348,1307,1139,221,1774,
- 1667,1,291,284,2021,30,1774,206,375,348,
- 1,1989,1167,1035,1769,252,1989,1167,206,1171,
- 65,1171,1244,1341,1764,1764,1764,219,1169,1131,
- 1429,1764,448,188,1793,188,2788,188,348,1345,
- 1764,1764,1764,1764,1764,1430,375,184,1764,183,
- 1764,205,1764,1764,1353,1764,1764,1764,1764,1764,
- 1773,1764,1764,1764,1764,1764,1764,1773
+ 191,1,1,1,1765,1,182,1,1961,190,
+ 1,1,1,60,262,1991,1151,1,1,58,
+ 1755,1391,1361,545,470,349,57,1000,1,1,
+ 1,1,1,1331,1318,1,1,1,1,1,
+ 1,1,1,1,1,1,1,190,1,1,
+ 1,1765,1,1765,1,1961,191,1,1,1,
+ 201,268,1991,1151,1,253,1402,1412,1391,1361,
+ 545,470,349,1402,1412,1,1,1,1,1,
+ 1765,2003,1,1,1,1,1,1,1,1,
+ 1,1,1,1,191,1,1,1,1765,1776,
+ 183,1777,1961,48,1979,1980,1981,1543,50,63,
+ 49,1928,1543,492,1543,1765,1,1759,1151,1092,
+ 1773,1771,1929,1927,1982,1930,1926,349,68,1933,
+ 1938,1937,1935,1936,1934,1939,1940,1932,1941,1942,
+ 1943,129,1281,597,381,1765,1770,1979,1980,1981,
+ 51,1979,1980,1981,1928,69,1528,1517,1772,1308,
+ 1140,1528,1517,1528,1517,1929,1927,1982,1930,1926,
+ 1331,1318,1933,1938,1937,1935,1936,1934,1939,1940,
+ 1932,1941,1942,1943,1,1776,1554,1777,1434,1769,
+ 1765,286,1218,1492,1381,1769,1508,557,1765,1020,
+ 673,578,1778,1779,1780,1781,1028,483,1765,1776,
+ 1554,1777,1467,1769,1,1991,1168,1492,1381,1218,
+ 1508,959,66,1020,673,578,1778,1779,1780,1781,
+ 1028,483,271,268,1768,1422,72,253,1765,1776,
+ 1768,1777,256,349,349,1,1776,1554,1777,1500,
+ 29,1765,1067,1765,1492,1381,1771,1508,1768,2775,
+ 1020,673,578,1778,1779,1780,1781,1028,483,1765,
+ 1776,1682,1777,1056,1765,1776,1554,1777,1500,1769,
+ 1460,1770,1,1492,1381,1245,1508,90,29,1020,
+ 673,578,1778,1779,1780,1781,1028,483,1765,1,
+ 1,1,1,30,1112,1674,1765,1,1,1765,
+ 1,1771,90,1,1,1,1,1,1,1,
+ 1,1,70,622,1768,1765,1776,1554,1777,1500,
+ 185,2805,417,2805,1492,1381,1770,1508,71,2775,
+ 1020,673,578,1778,1779,1780,1781,1028,483,2081,
+ 1,1776,1554,1777,1500,184,2807,56,2807,1492,
+ 1381,1765,1508,1,2775,1020,673,578,1778,1779,
+ 1780,1781,1028,483,1765,1776,1554,1777,1500,206,
+ 2809,55,2809,1492,1381,1765,1508,611,2775,1020,
+ 673,578,1778,1779,1780,1781,1028,483,1765,1776,
+ 1554,1777,1500,611,1402,1412,1,1492,1381,1765,
+ 1508,1771,2023,1020,673,578,1778,1779,1780,1781,
+ 1028,483,1765,1776,1561,1777,1500,1765,1402,1412,
+ 1,1492,1381,42,1508,1765,1770,1020,673,578,
+ 1778,1779,1780,1781,1028,483,1,1776,1554,1777,
+ 1500,208,1776,1,1777,1492,1381,253,1508,1765,
+ 1765,1020,673,578,1778,1779,1780,1781,1028,483,
+ 20,270,1756,1667,1756,1756,179,179,179,2022,
+ 1765,1756,349,179,248,1765,1776,1765,1777,64,
+ 1979,1980,1981,896,179,179,179,179,179,1260,
+ 1756,449,2023,875,854,833,812,791,749,770,
+ 728,707,686,130,1765,1765,32,249,1196,1979,
+ 1980,1981,131,1,1,1,1928,1562,1979,1980,
+ 1981,1791,1792,1765,1765,1928,250,1929,1927,1982,
+ 1930,1926,1,1,1,132,1929,1927,1982,1930,
+ 1926,1979,1980,1981,133,1,1762,251,1928,67,
+ 1979,1980,1981,1979,1980,1981,53,1928,464,1929,
+ 1927,1982,1930,1926,1765,1308,1140,1765,1929,1927,
+ 1982,1930,1926,374,1,252,1422,52,980,1771,
+ 1765,1979,1980,1981,1765,349,1308,1140,222,1775,
+ 1668,1,292,285,2023,30,1775,207,376,349,
+ 1,1991,1168,1036,1770,253,1991,1168,207,1172,
+ 65,1172,1245,1342,1765,1765,1765,220,1170,1132,
+ 1430,1765,449,189,1794,189,2790,189,349,1346,
+ 1765,1765,1765,1765,1765,1431,376,185,1765,184,
+ 1765,206,1765,1765,1354,1765,1765,1765,1765,1765,
+ 1774,1765,1765,1765,1765,1765,1765,1774
};
};
public final static char termAction[] = TermAction.termAction;
@@ -818,16 +818,16 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public interface ScopeState {
public final static char scopeState[] = {0,
- 442,0,340,0,1650,1660,1644,0,1448,1341,
- 1167,1268,1255,1150,1122,0,491,416,395,1537,
- 1083,0,606,1212,316,0,1461,1181,1136,670,
- 1255,1150,1122,1610,1421,1515,0,1019,672,577,
- 1466,1433,1083,610,1111,1244,1217,1330,1317,448,
- 1411,1401,1390,1360,544,469,1542,1527,1516,1307,
- 1139,1507,1499,1491,1380,1027,482,1091,1055,1035,
- 491,999,979,958,937,585,916,556,348,895,
- 874,853,832,811,790,769,748,727,706,685,
- 316,638,512,416,395,0
+ 443,0,341,0,1651,1661,1645,0,1449,1342,
+ 1168,1269,1256,1151,1123,0,492,417,396,1538,
+ 1084,0,607,1213,317,0,1462,1182,1137,671,
+ 1256,1151,1123,1611,1422,1516,0,1020,673,578,
+ 1467,1434,1084,611,1112,1245,1218,1331,1318,449,
+ 1412,1402,1391,1361,545,470,1543,1528,1517,1308,
+ 1140,1508,1500,1492,1381,1028,483,1092,1056,1036,
+ 492,1000,980,959,938,586,917,557,349,896,
+ 875,854,833,812,791,770,749,728,707,686,
+ 317,639,513,417,396,0
};
};
public final static char scopeState[] = ScopeState.scopeState;
@@ -1053,18 +1053,18 @@ public class C99SizeofExpressionParserprs implements lpg.lpgjavaruntime.ParseTab
public final static int
NUM_STATES = 207,
NT_OFFSET = 93,
- LA_STATE_OFFSET = 2079,
+ LA_STATE_OFFSET = 2081,
MAX_LA = 2,
- NUM_RULES = 315,
+ NUM_RULES = 316,
NUM_NONTERMINALS = 126,
NUM_SYMBOLS = 219,
SEGMENT_SIZE = 8192,
- START_STATE = 1665,
+ START_STATE = 1666,
IDENTIFIER_SYMBOL = 0,
EOFT_SYMBOL = 80,
EOLT_SYMBOL = 80,
- ACCEPT_ACTION = 1754,
- ERROR_ACTION = 1764;
+ ACCEPT_ACTION = 1755,
+ ERROR_ACTION = 1765;
public final static boolean BACKTRACK = true;
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99SizeofExpressionParsersym.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99SizeofExpressionParsersym.java
index eefc6ac858..835fb2ab21 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99SizeofExpressionParsersym.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/c99/C99SizeofExpressionParsersym.java
@@ -1,5 +1,5 @@
/*******************************************************************************
-* Copyright (c) 2006, 2009 IBM Corporation and others.
+* Copyright (c) 2006, 2010 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionParser.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionParser.java
index fb5dba1fcf..238e9170c1 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionParser.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionParser.java
@@ -1,13 +1,13 @@
/*******************************************************************************
- * Copyright (c) 2006, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * * IBM Corporation - initial API and implementation
- *******************************************************************************/
+* Copyright (c) 2006, 2010 IBM Corporation and others.
+* All rights reserved. This program and the accompanying materials
+* are made available under the terms of the Eclipse Public License v1.0
+* which accompanies this distribution, and is available at
+* http://www.eclipse.org/legal/epl-v10.html
+*
+* Contributors:
+* IBM Corporation - initial API and implementation
+*********************************************************************************/
// This file was generated by LPG
@@ -1003,985 +1003,937 @@ public CPPExpressionParser(ITokenStream stream, Map<String,String> properties) {
//
// Rule 193: iteration_statement ::= do statement while ( expression ) ;
//
- case 193: { action. consumeStatementDoLoop(); break;
+ case 193: { action. consumeStatementDoLoop(true); break;
}
//
- // Rule 194: iteration_statement ::= for ( for_init_statement condition_opt ; expression_opt ) statement
+ // Rule 194: iteration_statement ::= do statement
//
- case 194: { action. consumeStatementForLoop(); break;
+ case 194: { action. consumeStatementDoLoop(false); break;
}
//
- // Rule 196: for_init_statement ::= simple_declaration_with_declspec
+ // Rule 195: iteration_statement ::= for ( for_init_statement condition_opt ; expression_opt ) statement
//
- case 196: { action. consumeStatementDeclaration(); break;
+ case 195: { action. consumeStatementForLoop(); break;
}
//
- // Rule 197: jump_statement ::= break ;
+ // Rule 197: for_init_statement ::= simple_declaration_with_declspec
//
- case 197: { action. consumeStatementBreak(); break;
+ case 197: { action. consumeStatementDeclaration(); break;
}
//
- // Rule 198: jump_statement ::= continue ;
+ // Rule 198: jump_statement ::= break ;
//
- case 198: { action. consumeStatementContinue(); break;
+ case 198: { action. consumeStatementBreak(); break;
}
//
- // Rule 199: jump_statement ::= return expression ;
+ // Rule 199: jump_statement ::= continue ;
//
- case 199: { action. consumeStatementReturn(true); break;
+ case 199: { action. consumeStatementContinue(); break;
}
//
- // Rule 200: jump_statement ::= return ;
+ // Rule 200: jump_statement ::= return expression ;
//
- case 200: { action. consumeStatementReturn(false); break;
+ case 200: { action. consumeStatementReturn(true); break;
}
//
- // Rule 201: jump_statement ::= goto identifier_token ;
+ // Rule 201: jump_statement ::= return ;
//
- case 201: { action. consumeStatementGoto(); break;
+ case 201: { action. consumeStatementReturn(false); break;
}
//
- // Rule 202: declaration_statement ::= block_declaration
+ // Rule 202: jump_statement ::= goto identifier_token ;
//
- case 202: { action. consumeStatementDeclarationWithDisambiguation(); break;
+ case 202: { action. consumeStatementGoto(); break;
}
//
- // Rule 203: declaration_statement ::= function_definition
+ // Rule 203: declaration_statement ::= block_declaration
//
- case 203: { action. consumeStatementDeclaration(); break;
+ case 203: { action. consumeStatementDeclarationWithDisambiguation(); break;
}
//
- // Rule 211: declaration ::= ERROR_TOKEN
+ // Rule 204: declaration_statement ::= function_definition
//
- case 211: { action. consumeDeclarationProblem(); break;
+ case 204: { action. consumeStatementDeclaration(); break;
}
//
- // Rule 221: simple_declaration ::= declaration_specifiers_opt <openscope-ast> init_declarator_list_opt ;
+ // Rule 212: declaration ::= ERROR_TOKEN
//
- case 221: { action. consumeDeclarationSimple(true); break;
+ case 212: { action. consumeDeclarationProblem(); break;
}
//
- // Rule 222: simple_declaration_with_declspec ::= declaration_specifiers <openscope-ast> init_declarator_list_opt ;
+ // Rule 222: simple_declaration ::= declaration_specifiers_opt <openscope-ast> init_declarator_list_opt ;
//
case 222: { action. consumeDeclarationSimple(true); break;
}
//
- // Rule 223: declaration_specifiers ::= <openscope-ast> simple_declaration_specifiers
+ // Rule 223: simple_declaration_with_declspec ::= declaration_specifiers <openscope-ast> init_declarator_list_opt ;
//
- case 223: { action. consumeDeclarationSpecifiersSimple(); break;
+ case 223: { action. consumeDeclarationSimple(true); break;
}
//
- // Rule 224: declaration_specifiers ::= <openscope-ast> class_declaration_specifiers
+ // Rule 224: declaration_specifiers ::= <openscope-ast> simple_declaration_specifiers
//
- case 224: { action. consumeDeclarationSpecifiersComposite(); break;
+ case 224: { action. consumeDeclarationSpecifiersSimple(); break;
}
//
- // Rule 225: declaration_specifiers ::= <openscope-ast> elaborated_declaration_specifiers
+ // Rule 225: declaration_specifiers ::= <openscope-ast> class_declaration_specifiers
//
case 225: { action. consumeDeclarationSpecifiersComposite(); break;
}
//
- // Rule 226: declaration_specifiers ::= <openscope-ast> enum_declaration_specifiers
+ // Rule 226: declaration_specifiers ::= <openscope-ast> elaborated_declaration_specifiers
//
case 226: { action. consumeDeclarationSpecifiersComposite(); break;
}
//
- // Rule 227: declaration_specifiers ::= <openscope-ast> type_name_declaration_specifiers
+ // Rule 227: declaration_specifiers ::= <openscope-ast> enum_declaration_specifiers
//
- case 227: { action. consumeDeclarationSpecifiersTypeName(); break;
+ case 227: { action. consumeDeclarationSpecifiersComposite(); break;
}
//
- // Rule 229: declaration_specifiers_opt ::= $Empty
+ // Rule 228: declaration_specifiers ::= <openscope-ast> type_name_declaration_specifiers
//
- case 229: { action. consumeEmpty(); break;
+ case 228: { action. consumeDeclarationSpecifiersTypeName(); break;
}
//
- // Rule 233: no_type_declaration_specifier ::= friend
+ // Rule 230: declaration_specifiers_opt ::= $Empty
//
- case 233: { action. consumeToken(); break;
+ case 230: { action. consumeEmpty(); break;
}
//
- // Rule 234: no_type_declaration_specifier ::= typedef
+ // Rule 234: no_type_declaration_specifier ::= friend
//
case 234: { action. consumeToken(); break;
}
//
- // Rule 254: storage_class_specifier ::= auto
+ // Rule 235: no_type_declaration_specifier ::= typedef
//
- case 254: { action. consumeToken(); break;
+ case 235: { action. consumeToken(); break;
}
//
- // Rule 255: storage_class_specifier ::= register
+ // Rule 255: storage_class_specifier ::= auto
//
case 255: { action. consumeToken(); break;
}
//
- // Rule 256: storage_class_specifier ::= static
+ // Rule 256: storage_class_specifier ::= register
//
case 256: { action. consumeToken(); break;
}
//
- // Rule 257: storage_class_specifier ::= extern
+ // Rule 257: storage_class_specifier ::= static
//
case 257: { action. consumeToken(); break;
}
//
- // Rule 258: storage_class_specifier ::= mutable
+ // Rule 258: storage_class_specifier ::= extern
//
case 258: { action. consumeToken(); break;
}
//
- // Rule 259: function_specifier ::= inline
+ // Rule 259: storage_class_specifier ::= mutable
//
case 259: { action. consumeToken(); break;
}
//
- // Rule 260: function_specifier ::= virtual
+ // Rule 260: function_specifier ::= inline
//
case 260: { action. consumeToken(); break;
}
//
- // Rule 261: function_specifier ::= explicit
+ // Rule 261: function_specifier ::= virtual
//
case 261: { action. consumeToken(); break;
}
//
- // Rule 262: simple_type_specifier ::= char
+ // Rule 262: function_specifier ::= explicit
//
case 262: { action. consumeToken(); break;
}
//
- // Rule 263: simple_type_specifier ::= wchar_t
+ // Rule 263: simple_type_specifier ::= simple_type_specifier_token
//
case 263: { action. consumeToken(); break;
}
//
- // Rule 264: simple_type_specifier ::= bool
+ // Rule 277: type_name_specifier ::= dcolon_opt nested_name_specifier_opt type_name
//
- case 264: { action. consumeToken(); break;
- }
-
- //
- // Rule 265: simple_type_specifier ::= short
- //
- case 265: { action. consumeToken(); break;
- }
-
- //
- // Rule 266: simple_type_specifier ::= int
- //
- case 266: { action. consumeToken(); break;
- }
-
- //
- // Rule 267: simple_type_specifier ::= long
- //
- case 267: { action. consumeToken(); break;
- }
-
- //
- // Rule 268: simple_type_specifier ::= signed
- //
- case 268: { action. consumeToken(); break;
- }
-
- //
- // Rule 269: simple_type_specifier ::= unsigned
- //
- case 269: { action. consumeToken(); break;
- }
-
- //
- // Rule 270: simple_type_specifier ::= float
- //
- case 270: { action. consumeToken(); break;
- }
-
- //
- // Rule 271: simple_type_specifier ::= double
- //
- case 271: { action. consumeToken(); break;
+ case 277: { action. consumeQualifiedId(false); break;
}
//
- // Rule 272: simple_type_specifier ::= void
+ // Rule 278: type_name_specifier ::= dcolon_opt nested_name_specifier template template_id_name
//
- case 272: { action. consumeToken(); break;
+ case 278: { action. consumeQualifiedId(false); break;
}
//
- // Rule 275: type_name_specifier ::= dcolon_opt nested_name_specifier_opt type_name
+ // Rule 279: type_name_specifier ::= typename dcolon_opt nested_name_specifier identifier_name
//
- case 275: { action. consumeQualifiedId(false); break;
+ case 279: { action. consumeQualifiedId(false); break;
}
//
- // Rule 276: type_name_specifier ::= dcolon_opt nested_name_specifier template template_id_name
+ // Rule 280: type_name_specifier ::= typename dcolon_opt nested_name_specifier template_opt template_id_name
//
- case 276: { action. consumeQualifiedId(false); break;
+ case 280: { action. consumeQualifiedId(true); break;
}
//
- // Rule 277: type_name_specifier ::= typename dcolon_opt nested_name_specifier identifier_name
+ // Rule 282: elaborated_type_specifier ::= class_keyword elaborated_specifier_hook dcolon_opt nested_name_specifier_opt identifier_name
//
- case 277: { action. consumeQualifiedId(false); break;
+ case 282: { action. consumeTypeSpecifierElaborated(false); break;
}
//
- // Rule 278: type_name_specifier ::= typename dcolon_opt nested_name_specifier template_opt template_id_name
+ // Rule 283: elaborated_type_specifier ::= class_keyword elaborated_specifier_hook dcolon_opt nested_name_specifier_opt template_opt template_id_name
//
- case 278: { action. consumeQualifiedId(true); break;
+ case 283: { action. consumeTypeSpecifierElaborated(true); break;
}
//
- // Rule 280: elaborated_type_specifier ::= class_keyword elaborated_specifier_hook dcolon_opt nested_name_specifier_opt identifier_name
+ // Rule 284: elaborated_type_specifier ::= enum elaborated_specifier_hook dcolon_opt nested_name_specifier_opt identifier_name
//
- case 280: { action. consumeTypeSpecifierElaborated(false); break;
+ case 284: { action. consumeTypeSpecifierElaborated(false); break;
}
//
- // Rule 281: elaborated_type_specifier ::= class_keyword elaborated_specifier_hook dcolon_opt nested_name_specifier_opt template_opt template_id_name
+ // Rule 288: enum_specifier ::= enum enum_specifier_hook { <openscope-ast> enumerator_list_opt comma_opt }
//
- case 281: { action. consumeTypeSpecifierElaborated(true); break;
+ case 288: { action. consumeTypeSpecifierEnumeration(false); break;
}
//
- // Rule 282: elaborated_type_specifier ::= enum elaborated_specifier_hook dcolon_opt nested_name_specifier_opt identifier_name
+ // Rule 289: enum_specifier ::= enum enum_specifier_hook identifier_token { <openscope-ast> enumerator_list_opt comma_opt }
//
- case 282: { action. consumeTypeSpecifierElaborated(false); break;
+ case 289: { action. consumeTypeSpecifierEnumeration(true); break;
}
//
- // Rule 284: enum_specifier ::= enum enum_specifier_hook { <openscope-ast> enumerator_list_opt }
+ // Rule 295: enumerator_definition ::= identifier_token
//
- case 284: { action. consumeTypeSpecifierEnumeration(false); break;
+ case 295: { action. consumeEnumerator(false); break;
}
//
- // Rule 285: enum_specifier ::= enum enum_specifier_hook identifier_token { <openscope-ast> enumerator_list_opt }
+ // Rule 296: enumerator_definition ::= identifier_token = constant_expression
//
- case 285: { action. consumeTypeSpecifierEnumeration(true); break;
+ case 296: { action. consumeEnumerator(true); break;
}
//
- // Rule 291: enumerator_definition ::= identifier_token
+ // Rule 298: namespace_definition ::= namespace namespace_name namespace_definition_hook { <openscope-ast> declaration_seq_opt }
//
- case 291: { action. consumeEnumerator(false); break;
+ case 298: { action. consumeNamespaceDefinition(true); break;
}
//
- // Rule 292: enumerator_definition ::= identifier_token = constant_expression
+ // Rule 299: namespace_definition ::= namespace namespace_definition_hook { <openscope-ast> declaration_seq_opt }
//
- case 292: { action. consumeEnumerator(true); break;
+ case 299: { action. consumeNamespaceDefinition(false); break;
}
//
- // Rule 294: namespace_definition ::= namespace namespace_name namespace_definition_hook { <openscope-ast> declaration_seq_opt }
+ // Rule 301: namespace_alias_definition ::= namespace identifier_token = dcolon_opt nested_name_specifier_opt namespace_name ;
//
- case 294: { action. consumeNamespaceDefinition(true); break;
+ case 301: { action. consumeNamespaceAliasDefinition(); break;
}
//
- // Rule 295: namespace_definition ::= namespace namespace_definition_hook { <openscope-ast> declaration_seq_opt }
+ // Rule 302: using_declaration ::= using typename_opt dcolon_opt nested_name_specifier_opt unqualified_id_name ;
//
- case 295: { action. consumeNamespaceDefinition(false); break;
+ case 302: { action. consumeUsingDeclaration(); break;
}
//
- // Rule 297: namespace_alias_definition ::= namespace identifier_token = dcolon_opt nested_name_specifier_opt namespace_name ;
+ // Rule 303: typename_opt ::= typename
//
- case 297: { action. consumeNamespaceAliasDefinition(); break;
+ case 303: { action. consumePlaceHolder(); break;
}
//
- // Rule 298: using_declaration ::= using typename_opt dcolon_opt nested_name_specifier_opt unqualified_id_name ;
+ // Rule 304: typename_opt ::= $Empty
//
- case 298: { action. consumeUsingDeclaration(); break;
+ case 304: { action. consumeEmpty(); break;
}
//
- // Rule 299: typename_opt ::= typename
+ // Rule 305: using_directive ::= using namespace dcolon_opt nested_name_specifier_opt namespace_name ;
//
- case 299: { action. consumePlaceHolder(); break;
+ case 305: { action. consumeUsingDirective(); break;
}
//
- // Rule 300: typename_opt ::= $Empty
+ // Rule 306: asm_definition ::= asm ( stringlit ) ;
//
- case 300: { action. consumeEmpty(); break;
+ case 306: { action. consumeDeclarationASM(); break;
}
//
- // Rule 301: using_directive ::= using namespace dcolon_opt nested_name_specifier_opt namespace_name ;
+ // Rule 307: linkage_specification ::= extern stringlit { <openscope-ast> declaration_seq_opt }
//
- case 301: { action. consumeUsingDirective(); break;
+ case 307: { action. consumeLinkageSpecification(); break;
}
//
- // Rule 302: asm_definition ::= asm ( stringlit ) ;
+ // Rule 308: linkage_specification ::= extern stringlit <openscope-ast> declaration
//
- case 302: { action. consumeDeclarationASM(); break;
+ case 308: { action. consumeLinkageSpecification(); break;
}
//
- // Rule 303: linkage_specification ::= extern stringlit { <openscope-ast> declaration_seq_opt }
+ // Rule 313: init_declarator_complete ::= init_declarator
//
- case 303: { action. consumeLinkageSpecification(); break;
+ case 313: { action. consumeInitDeclaratorComplete(); break;
}
//
- // Rule 304: linkage_specification ::= extern stringlit <openscope-ast> declaration
+ // Rule 315: init_declarator ::= complete_declarator initializer
//
- case 304: { action. consumeLinkageSpecification(); break;
+ case 315: { action. consumeDeclaratorWithInitializer(true); break;
}
//
- // Rule 309: init_declarator_complete ::= init_declarator
+ // Rule 318: declarator ::= <openscope-ast> ptr_operator_seq direct_declarator
//
- case 309: { action. consumeInitDeclaratorComplete(); break;
+ case 318: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 311: init_declarator ::= complete_declarator initializer
+ // Rule 320: function_declarator ::= <openscope-ast> ptr_operator_seq direct_declarator
//
- case 311: { action. consumeDeclaratorWithInitializer(true); break;
+ case 320: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 314: declarator ::= <openscope-ast> ptr_operator_seq direct_declarator
+ // Rule 324: basic_direct_declarator ::= declarator_id_name
//
- case 314: { action. consumeDeclaratorWithPointer(true); break;
+ case 324: { action. consumeDirectDeclaratorIdentifier(); break;
}
//
- // Rule 316: function_declarator ::= <openscope-ast> ptr_operator_seq direct_declarator
+ // Rule 325: basic_direct_declarator ::= ( declarator )
//
- case 316: { action. consumeDeclaratorWithPointer(true); break;
+ case 325: { action. consumeDirectDeclaratorBracketed(); break;
}
//
- // Rule 320: basic_direct_declarator ::= declarator_id_name
+ // Rule 326: function_direct_declarator ::= basic_direct_declarator ( <openscope-ast> parameter_declaration_clause ) <openscope-ast> cv_qualifier_seq_opt <openscope-ast> exception_specification_opt
//
- case 320: { action. consumeDirectDeclaratorIdentifier(); break;
+ case 326: { action. consumeDirectDeclaratorFunctionDeclarator(true); break;
}
//
- // Rule 321: basic_direct_declarator ::= ( declarator )
+ // Rule 327: array_direct_declarator ::= array_direct_declarator array_modifier
//
- case 321: { action. consumeDirectDeclaratorBracketed(); break;
+ case 327: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 322: function_direct_declarator ::= basic_direct_declarator ( <openscope-ast> parameter_declaration_clause ) <openscope-ast> cv_qualifier_seq_opt <openscope-ast> exception_specification_opt
+ // Rule 328: array_direct_declarator ::= basic_direct_declarator array_modifier
//
- case 322: { action. consumeDirectDeclaratorFunctionDeclarator(true); break;
+ case 328: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 323: array_direct_declarator ::= array_direct_declarator array_modifier
+ // Rule 329: array_modifier ::= [ constant_expression ]
//
- case 323: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ case 329: { action. consumeDirectDeclaratorArrayModifier(true); break;
}
//
- // Rule 324: array_direct_declarator ::= basic_direct_declarator array_modifier
+ // Rule 330: array_modifier ::= [ ]
//
- case 324: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ case 330: { action. consumeDirectDeclaratorArrayModifier(false); break;
}
//
- // Rule 325: array_modifier ::= [ constant_expression ]
+ // Rule 331: ptr_operator ::= pointer_hook * pointer_hook <openscope-ast> cv_qualifier_seq_opt
//
- case 325: { action. consumeDirectDeclaratorArrayModifier(true); break;
+ case 331: { action. consumePointer(); break;
}
//
- // Rule 326: array_modifier ::= [ ]
+ // Rule 332: ptr_operator ::= pointer_hook & pointer_hook
//
- case 326: { action. consumeDirectDeclaratorArrayModifier(false); break;
+ case 332: { action. consumeReferenceOperator(); break;
}
//
- // Rule 327: ptr_operator ::= pointer_hook * pointer_hook <openscope-ast> cv_qualifier_seq_opt
+ // Rule 333: ptr_operator ::= dcolon_opt nested_name_specifier pointer_hook * pointer_hook <openscope-ast> cv_qualifier_seq_opt
//
- case 327: { action. consumePointer(); break;
+ case 333: { action. consumePointerToMember(); break;
}
//
- // Rule 328: ptr_operator ::= pointer_hook & pointer_hook
+ // Rule 340: cv_qualifier ::= const
//
- case 328: { action. consumeReferenceOperator(); break;
+ case 340: { action. consumeToken(); break;
}
//
- // Rule 329: ptr_operator ::= dcolon_opt nested_name_specifier pointer_hook * pointer_hook <openscope-ast> cv_qualifier_seq_opt
+ // Rule 341: cv_qualifier ::= volatile
//
- case 329: { action. consumePointerToMember(); break;
+ case 341: { action. consumeToken(); break;
}
//
- // Rule 336: cv_qualifier ::= const
+ // Rule 343: declarator_id_name ::= dcolon_opt nested_name_specifier_opt type_name
//
- case 336: { action. consumeToken(); break;
+ case 343: { action. consumeQualifiedId(false); break;
}
//
- // Rule 337: cv_qualifier ::= volatile
+ // Rule 344: type_id ::= type_specifier_seq
//
- case 337: { action. consumeToken(); break;
+ case 344: { action. consumeTypeId(false); break;
}
//
- // Rule 339: declarator_id_name ::= dcolon_opt nested_name_specifier_opt type_name
+ // Rule 345: type_id ::= type_specifier_seq abstract_declarator
//
- case 339: { action. consumeQualifiedId(false); break;
+ case 345: { action. consumeTypeId(true); break;
}
//
- // Rule 340: type_id ::= type_specifier_seq
+ // Rule 348: abstract_declarator ::= <openscope-ast> ptr_operator_seq
//
- case 340: { action. consumeTypeId(false); break;
+ case 348: { action. consumeDeclaratorWithPointer(false); break;
}
//
- // Rule 341: type_id ::= type_specifier_seq abstract_declarator
+ // Rule 349: abstract_declarator ::= <openscope-ast> ptr_operator_seq direct_abstract_declarator
//
- case 341: { action. consumeTypeId(true); break;
+ case 349: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 344: abstract_declarator ::= <openscope-ast> ptr_operator_seq
+ // Rule 353: basic_direct_abstract_declarator ::= ( abstract_declarator )
//
- case 344: { action. consumeDeclaratorWithPointer(false); break;
+ case 353: { action. consumeDirectDeclaratorBracketed(); break;
}
//
- // Rule 345: abstract_declarator ::= <openscope-ast> ptr_operator_seq direct_abstract_declarator
+ // Rule 354: basic_direct_abstract_declarator ::= ( )
//
- case 345: { action. consumeDeclaratorWithPointer(true); break;
+ case 354: { action. consumeAbstractDeclaratorEmpty(); break;
}
//
- // Rule 349: basic_direct_abstract_declarator ::= ( abstract_declarator )
+ // Rule 355: array_direct_abstract_declarator ::= array_modifier
//
- case 349: { action. consumeDirectDeclaratorBracketed(); break;
+ case 355: { action. consumeDirectDeclaratorArrayDeclarator(false); break;
}
//
- // Rule 350: basic_direct_abstract_declarator ::= ( )
+ // Rule 356: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier
//
- case 350: { action. consumeAbstractDeclaratorEmpty(); break;
+ case 356: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 351: array_direct_abstract_declarator ::= array_modifier
+ // Rule 357: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier
//
- case 351: { action. consumeDirectDeclaratorArrayDeclarator(false); break;
+ case 357: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 352: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier
+ // Rule 358: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( <openscope-ast> parameter_declaration_clause ) <openscope-ast> cv_qualifier_seq_opt <openscope-ast> exception_specification_opt
//
- case 352: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ case 358: { action. consumeDirectDeclaratorFunctionDeclarator(true); break;
}
//
- // Rule 353: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier
+ // Rule 359: function_direct_abstract_declarator ::= ( <openscope-ast> parameter_declaration_clause ) <openscope-ast> cv_qualifier_seq_opt <openscope-ast> exception_specification_opt
//
- case 353: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ case 359: { action. consumeDirectDeclaratorFunctionDeclarator(false); break;
}
//
- // Rule 354: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( <openscope-ast> parameter_declaration_clause ) <openscope-ast> cv_qualifier_seq_opt <openscope-ast> exception_specification_opt
+ // Rule 360: parameter_declaration_clause ::= parameter_declaration_list_opt ...
//
- case 354: { action. consumeDirectDeclaratorFunctionDeclarator(true); break;
+ case 360: { action. consumePlaceHolder(); break;
}
//
- // Rule 355: function_direct_abstract_declarator ::= ( <openscope-ast> parameter_declaration_clause ) <openscope-ast> cv_qualifier_seq_opt <openscope-ast> exception_specification_opt
+ // Rule 361: parameter_declaration_clause ::= parameter_declaration_list_opt
//
- case 355: { action. consumeDirectDeclaratorFunctionDeclarator(false); break;
+ case 361: { action. consumeEmpty(); break;
}
//
- // Rule 356: parameter_declaration_clause ::= parameter_declaration_list_opt ...
+ // Rule 362: parameter_declaration_clause ::= parameter_declaration_list , ...
//
- case 356: { action. consumePlaceHolder(); break;
+ case 362: { action. consumePlaceHolder(); break;
}
//
- // Rule 357: parameter_declaration_clause ::= parameter_declaration_list_opt
+ // Rule 368: abstract_declarator_opt ::= $Empty
//
- case 357: { action. consumeEmpty(); break;
+ case 368: { action. consumeEmpty(); break;
}
//
- // Rule 358: parameter_declaration_clause ::= parameter_declaration_list , ...
+ // Rule 369: parameter_declaration ::= declaration_specifiers parameter_init_declarator
//
- case 358: { action. consumePlaceHolder(); break;
+ case 369: { action. consumeParameterDeclaration(); break;
}
//
- // Rule 364: abstract_declarator_opt ::= $Empty
+ // Rule 370: parameter_declaration ::= declaration_specifiers
//
- case 364: { action. consumeEmpty(); break;
+ case 370: { action. consumeParameterDeclarationWithoutDeclarator(); break;
}
//
- // Rule 365: parameter_declaration ::= declaration_specifiers parameter_init_declarator
+ // Rule 372: parameter_init_declarator ::= declarator = parameter_initializer
//
- case 365: { action. consumeParameterDeclaration(); break;
+ case 372: { action. consumeDeclaratorWithInitializer(true); break;
}
//
- // Rule 366: parameter_declaration ::= declaration_specifiers
+ // Rule 374: parameter_init_declarator ::= abstract_declarator = parameter_initializer
//
- case 366: { action. consumeParameterDeclarationWithoutDeclarator(); break;
+ case 374: { action. consumeDeclaratorWithInitializer(true); break;
}
//
- // Rule 368: parameter_init_declarator ::= declarator = parameter_initializer
+ // Rule 375: parameter_init_declarator ::= = parameter_initializer
//
- case 368: { action. consumeDeclaratorWithInitializer(true); break;
+ case 375: { action. consumeDeclaratorWithInitializer(false); break;
}
//
- // Rule 370: parameter_init_declarator ::= abstract_declarator = parameter_initializer
+ // Rule 376: parameter_initializer ::= assignment_expression
//
- case 370: { action. consumeDeclaratorWithInitializer(true); break;
+ case 376: { action. consumeInitializer(); break;
}
//
- // Rule 371: parameter_init_declarator ::= = parameter_initializer
+ // Rule 377: function_definition ::= declaration_specifiers_opt function_declarator <openscope-ast> ctor_initializer_list_opt function_body
//
- case 371: { action. consumeDeclaratorWithInitializer(false); break;
+ case 377: { action. consumeFunctionDefinition(false); break;
}
//
- // Rule 372: parameter_initializer ::= assignment_expression
+ // Rule 378: function_definition ::= declaration_specifiers_opt function_declarator try <openscope-ast> ctor_initializer_list_opt function_body <openscope-ast> handler_seq
//
- case 372: { action. consumeInitializer(); break;
+ case 378: { action. consumeFunctionDefinition(true); break;
}
//
- // Rule 373: function_definition ::= declaration_specifiers_opt function_declarator <openscope-ast> ctor_initializer_list_opt function_body
+ // Rule 381: initializer ::= ( expression_list )
//
- case 373: { action. consumeFunctionDefinition(false); break;
+ case 381: { action. consumeInitializerConstructor(); break;
}
//
- // Rule 374: function_definition ::= declaration_specifiers_opt function_declarator try <openscope-ast> ctor_initializer_list_opt function_body <openscope-ast> handler_seq
+ // Rule 382: initializer_clause ::= assignment_expression
//
- case 374: { action. consumeFunctionDefinition(true); break;
+ case 382: { action. consumeInitializer(); break;
}
//
- // Rule 377: initializer ::= ( expression_list )
+ // Rule 384: initializer_list ::= start_initializer_list { <openscope-ast> initializer_seq , } end_initializer_list
//
- case 377: { action. consumeInitializerConstructor(); break;
+ case 384: { action. consumeInitializerList(); break;
}
//
- // Rule 378: initializer_clause ::= assignment_expression
+ // Rule 385: initializer_list ::= start_initializer_list { <openscope-ast> initializer_seq } end_initializer_list
//
- case 378: { action. consumeInitializer(); break;
+ case 385: { action. consumeInitializerList(); break;
}
//
- // Rule 380: initializer_list ::= start_initializer_list { <openscope-ast> initializer_seq , } end_initializer_list
+ // Rule 386: initializer_list ::= { <openscope-ast> }
//
- case 380: { action. consumeInitializerList(); break;
+ case 386: { action. consumeInitializerList(); break;
}
//
- // Rule 381: initializer_list ::= start_initializer_list { <openscope-ast> initializer_seq } end_initializer_list
+ // Rule 387: start_initializer_list ::= $Empty
//
- case 381: { action. consumeInitializerList(); break;
+ case 387: { action. initializerListStart(); break;
}
//
- // Rule 382: initializer_list ::= { <openscope-ast> }
+ // Rule 388: end_initializer_list ::= $Empty
//
- case 382: { action. consumeInitializerList(); break;
+ case 388: { action. initializerListEnd(); break;
}
//
- // Rule 383: start_initializer_list ::= $Empty
+ // Rule 393: class_specifier ::= class_head { <openscope-ast> member_declaration_list_opt }
//
- case 383: { action. initializerListStart(); break;
+ case 393: { action. consumeClassSpecifier(); break;
}
//
- // Rule 384: end_initializer_list ::= $Empty
+ // Rule 394: class_head ::= class_keyword composite_specifier_hook identifier_name_opt class_name_suffix_hook <openscope-ast> base_clause_opt
//
- case 384: { action. initializerListEnd(); break;
+ case 394: { action. consumeClassHead(false); break;
}
//
- // Rule 389: class_specifier ::= class_head { <openscope-ast> member_declaration_list_opt }
+ // Rule 395: class_head ::= class_keyword composite_specifier_hook template_id_name class_name_suffix_hook <openscope-ast> base_clause_opt
//
- case 389: { action. consumeClassSpecifier(); break;
+ case 395: { action. consumeClassHead(false); break;
}
//
- // Rule 390: class_head ::= class_keyword composite_specifier_hook identifier_name_opt class_name_suffix_hook <openscope-ast> base_clause_opt
+ // Rule 396: class_head ::= class_keyword composite_specifier_hook nested_name_specifier identifier_name class_name_suffix_hook <openscope-ast> base_clause_opt
//
- case 390: { action. consumeClassHead(false); break;
+ case 396: { action. consumeClassHead(true); break;
}
//
- // Rule 391: class_head ::= class_keyword composite_specifier_hook template_id_name class_name_suffix_hook <openscope-ast> base_clause_opt
+ // Rule 397: class_head ::= class_keyword composite_specifier_hook nested_name_specifier template_id_name class_name_suffix_hook <openscope-ast> base_clause_opt
//
- case 391: { action. consumeClassHead(false); break;
+ case 397: { action. consumeClassHead(true); break;
}
//
- // Rule 392: class_head ::= class_keyword composite_specifier_hook nested_name_specifier identifier_name class_name_suffix_hook <openscope-ast> base_clause_opt
+ // Rule 401: identifier_name_opt ::= $Empty
//
- case 392: { action. consumeClassHead(true); break;
- }
+ case 401: { action. consumeEmpty(); break;
+ }
//
- // Rule 393: class_head ::= class_keyword composite_specifier_hook nested_name_specifier template_id_name class_name_suffix_hook <openscope-ast> base_clause_opt
+ // Rule 405: visibility_label ::= access_specifier_keyword :
//
- case 393: { action. consumeClassHead(true); break;
+ case 405: { action. consumeVisibilityLabel(); break;
}
//
- // Rule 397: identifier_name_opt ::= $Empty
- //
- case 397: { action. consumeEmpty(); break;
- }
-
- //
- // Rule 401: visibility_label ::= access_specifier_keyword :
+ // Rule 406: member_declaration ::= declaration_specifiers_opt <openscope-ast> member_declarator_list ;
//
- case 401: { action. consumeVisibilityLabel(); break;
+ case 406: { action. consumeDeclarationSimple(true); break;
}
//
- // Rule 402: member_declaration ::= declaration_specifiers_opt <openscope-ast> member_declarator_list ;
+ // Rule 407: member_declaration ::= declaration_specifiers_opt ;
//
- case 402: { action. consumeDeclarationSimple(true); break;
+ case 407: { action. consumeDeclarationSimple(false); break;
}
//
- // Rule 403: member_declaration ::= declaration_specifiers_opt ;
+ // Rule 410: member_declaration ::= dcolon_opt nested_name_specifier template_opt unqualified_id_name ;
//
- case 403: { action. consumeDeclarationSimple(false); break;
+ case 410: { action. consumeMemberDeclarationQualifiedId(); break;
}
//
- // Rule 406: member_declaration ::= dcolon_opt nested_name_specifier template_opt unqualified_id_name ;
+ // Rule 416: member_declaration ::= ERROR_TOKEN
//
- case 406: { action. consumeMemberDeclarationQualifiedId(); break;
+ case 416: { action. consumeDeclarationProblem(); break;
}
//
- // Rule 412: member_declaration ::= ERROR_TOKEN
+ // Rule 425: member_declarator ::= declarator constant_initializer
//
- case 412: { action. consumeDeclarationProblem(); break;
+ case 425: { action. consumeMemberDeclaratorWithInitializer(); break;
}
//
- // Rule 421: member_declarator ::= declarator constant_initializer
+ // Rule 426: member_declarator ::= bit_field_declarator : constant_expression
//
- case 421: { action. consumeMemberDeclaratorWithInitializer(); break;
+ case 426: { action. consumeBitField(true); break;
}
//
- // Rule 422: member_declarator ::= bit_field_declarator : constant_expression
+ // Rule 427: member_declarator ::= : constant_expression
//
- case 422: { action. consumeBitField(true); break;
+ case 427: { action. consumeBitField(false); break;
}
//
- // Rule 423: member_declarator ::= : constant_expression
+ // Rule 428: bit_field_declarator ::= identifier_name
//
- case 423: { action. consumeBitField(false); break;
+ case 428: { action. consumeDirectDeclaratorIdentifier(); break;
}
//
- // Rule 424: bit_field_declarator ::= identifier_name
+ // Rule 429: constant_initializer ::= = constant_expression
//
- case 424: { action. consumeDirectDeclaratorIdentifier(); break;
+ case 429: { action. consumeInitializer(); break;
}
//
- // Rule 425: constant_initializer ::= = constant_expression
+ // Rule 435: base_specifier ::= dcolon_opt nested_name_specifier_opt class_name
//
- case 425: { action. consumeInitializer(); break;
+ case 435: { action. consumeBaseSpecifier(false, false); break;
}
//
- // Rule 431: base_specifier ::= dcolon_opt nested_name_specifier_opt class_name
+ // Rule 436: base_specifier ::= virtual access_specifier_keyword_opt dcolon_opt nested_name_specifier_opt class_name
//
- case 431: { action. consumeBaseSpecifier(false, false); break;
+ case 436: { action. consumeBaseSpecifier(true, true); break;
}
//
- // Rule 432: base_specifier ::= virtual access_specifier_keyword_opt dcolon_opt nested_name_specifier_opt class_name
+ // Rule 437: base_specifier ::= access_specifier_keyword virtual dcolon_opt nested_name_specifier_opt class_name
//
- case 432: { action. consumeBaseSpecifier(true, true); break;
+ case 437: { action. consumeBaseSpecifier(true, true); break;
}
//
- // Rule 433: base_specifier ::= access_specifier_keyword virtual dcolon_opt nested_name_specifier_opt class_name
+ // Rule 438: base_specifier ::= access_specifier_keyword dcolon_opt nested_name_specifier_opt class_name
//
- case 433: { action. consumeBaseSpecifier(true, true); break;
+ case 438: { action. consumeBaseSpecifier(true, false); break;
}
//
- // Rule 434: base_specifier ::= access_specifier_keyword dcolon_opt nested_name_specifier_opt class_name
+ // Rule 439: access_specifier_keyword ::= private
//
- case 434: { action. consumeBaseSpecifier(true, false); break;
+ case 439: { action. consumeToken(); break;
}
//
- // Rule 435: access_specifier_keyword ::= private
+ // Rule 440: access_specifier_keyword ::= protected
//
- case 435: { action. consumeToken(); break;
+ case 440: { action. consumeToken(); break;
}
//
- // Rule 436: access_specifier_keyword ::= protected
+ // Rule 441: access_specifier_keyword ::= public
//
- case 436: { action. consumeToken(); break;
+ case 441: { action. consumeToken(); break;
}
//
- // Rule 437: access_specifier_keyword ::= public
+ // Rule 443: access_specifier_keyword_opt ::= $Empty
//
- case 437: { action. consumeToken(); break;
+ case 443: { action. consumeEmpty(); break;
}
//
- // Rule 439: access_specifier_keyword_opt ::= $Empty
+ // Rule 445: conversion_function_id_name ::= conversion_function_id < <openscope-ast> template_argument_list_opt >
//
- case 439: { action. consumeEmpty(); break;
+ case 445: { action. consumeTemplateId(); break;
}
//
- // Rule 441: conversion_function_id_name ::= conversion_function_id < <openscope-ast> template_argument_list_opt >
+ // Rule 446: conversion_function_id ::= operator conversion_type_id
//
- case 441: { action. consumeTemplateId(); break;
+ case 446: { action. consumeConversionName(); break;
}
//
- // Rule 442: conversion_function_id ::= operator conversion_type_id
+ // Rule 447: conversion_type_id ::= type_specifier_seq conversion_declarator
//
- case 442: { action. consumeConversionName(); break;
+ case 447: { action. consumeTypeId(true); break;
}
//
- // Rule 443: conversion_type_id ::= type_specifier_seq conversion_declarator
+ // Rule 448: conversion_type_id ::= type_specifier_seq
//
- case 443: { action. consumeTypeId(true); break;
+ case 448: { action. consumeTypeId(false); break;
}
//
- // Rule 444: conversion_type_id ::= type_specifier_seq
+ // Rule 449: conversion_declarator ::= <openscope-ast> ptr_operator_seq
//
- case 444: { action. consumeTypeId(false); break;
+ case 449: { action. consumeDeclaratorWithPointer(false); break;
}
//
- // Rule 445: conversion_declarator ::= <openscope-ast> ptr_operator_seq
+ // Rule 455: mem_initializer ::= mem_initializer_name ( expression_list_opt )
//
- case 445: { action. consumeDeclaratorWithPointer(false); break;
+ case 455: { action. consumeConstructorChainInitializer(); break;
}
//
- // Rule 451: mem_initializer ::= mem_initializer_name ( expression_list_opt )
+ // Rule 456: mem_initializer_name ::= dcolon_opt nested_name_specifier_opt class_name
//
- case 451: { action. consumeConstructorChainInitializer(); break;
+ case 456: { action. consumeQualifiedId(false); break;
}
//
- // Rule 452: mem_initializer_name ::= dcolon_opt nested_name_specifier_opt class_name
+ // Rule 459: operator_function_id_name ::= operator_id_name < <openscope-ast> template_argument_list_opt >
//
- case 452: { action. consumeQualifiedId(false); break;
+ case 459: { action. consumeTemplateId(); break;
}
//
- // Rule 455: operator_function_id_name ::= operator_id_name < <openscope-ast> template_argument_list_opt >
+ // Rule 460: operator_id_name ::= operator overloadable_operator
//
- case 455: { action. consumeTemplateId(); break;
+ case 460: { action. consumeOperatorName(); break;
}
//
- // Rule 456: operator_id_name ::= operator overloadable_operator
+ // Rule 503: template_declaration ::= export_opt template < <openscope-ast> template_parameter_list > declaration
//
- case 456: { action. consumeOperatorName(); break;
+ case 503: { action. consumeTemplateDeclaration(); break;
}
//
- // Rule 499: template_declaration ::= export_opt template < <openscope-ast> template_parameter_list > declaration
+ // Rule 504: export_opt ::= export
//
- case 499: { action. consumeTemplateDeclaration(); break;
+ case 504: { action. consumePlaceHolder(); break;
}
//
- // Rule 500: export_opt ::= export
+ // Rule 505: export_opt ::= $Empty
//
- case 500: { action. consumePlaceHolder(); break;
+ case 505: { action. consumeEmpty(); break;
}
//
- // Rule 501: export_opt ::= $Empty
+ // Rule 509: template_parameter ::= parameter_declaration
//
- case 501: { action. consumeEmpty(); break;
+ case 509: { action. consumeTemplateParamterDeclaration(); break;
}
//
- // Rule 505: template_parameter ::= parameter_declaration
+ // Rule 510: type_parameter ::= class identifier_name_opt
//
- case 505: { action. consumeTemplateParamterDeclaration(); break;
+ case 510: { action. consumeSimpleTypeTemplateParameter(false); break;
}
//
- // Rule 506: type_parameter ::= class identifier_name_opt
+ // Rule 511: type_parameter ::= class identifier_name_opt = type_id
//
- case 506: { action. consumeSimpleTypeTemplateParameter(false); break;
+ case 511: { action. consumeSimpleTypeTemplateParameter(true); break;
}
//
- // Rule 507: type_parameter ::= class identifier_name_opt = type_id
+ // Rule 512: type_parameter ::= typename identifier_name_opt
//
- case 507: { action. consumeSimpleTypeTemplateParameter(true); break;
+ case 512: { action. consumeSimpleTypeTemplateParameter(false); break;
}
//
- // Rule 508: type_parameter ::= typename identifier_name_opt
+ // Rule 513: type_parameter ::= typename identifier_name_opt = type_id
//
- case 508: { action. consumeSimpleTypeTemplateParameter(false); break;
+ case 513: { action. consumeSimpleTypeTemplateParameter(true); break;
}
//
- // Rule 509: type_parameter ::= typename identifier_name_opt = type_id
+ // Rule 514: type_parameter ::= template < <openscope-ast> template_parameter_list > class identifier_name_opt
//
- case 509: { action. consumeSimpleTypeTemplateParameter(true); break;
+ case 514: { action. consumeTemplatedTypeTemplateParameter(false); break;
}
//
- // Rule 510: type_parameter ::= template < <openscope-ast> template_parameter_list > class identifier_name_opt
+ // Rule 515: type_parameter ::= template < <openscope-ast> template_parameter_list > class identifier_name_opt = id_expression
//
- case 510: { action. consumeTemplatedTypeTemplateParameter(false); break;
+ case 515: { action. consumeTemplatedTypeTemplateParameter(true); break;
}
//
- // Rule 511: type_parameter ::= template < <openscope-ast> template_parameter_list > class identifier_name_opt = id_expression
+ // Rule 516: template_id_name ::= identifier_name < <openscope-ast> template_argument_list_opt >
//
- case 511: { action. consumeTemplatedTypeTemplateParameter(true); break;
+ case 516: { action. consumeTemplateId(); break;
}
//
- // Rule 512: template_id_name ::= identifier_name < <openscope-ast> template_argument_list_opt >
+ // Rule 521: template_argument ::= assignment_expression
//
- case 512: { action. consumeTemplateId(); break;
+ case 521: { action. consumeTemplateArgumentExpression(); break;
}
//
- // Rule 517: template_argument ::= assignment_expression
+ // Rule 522: template_argument ::= type_id
//
- case 517: { action. consumeTemplateArgumentExpression(); break;
+ case 522: { action. consumeTemplateArgumentTypeId(); break;
}
//
- // Rule 518: template_argument ::= type_id
+ // Rule 523: explicit_instantiation ::= template declaration
//
- case 518: { action. consumeTemplateArgumentTypeId(); break;
+ case 523: { action. consumeTemplateExplicitInstantiation(); break;
}
//
- // Rule 519: explicit_instantiation ::= template declaration
+ // Rule 524: explicit_specialization ::= template < > declaration
//
- case 519: { action. consumeTemplateExplicitInstantiation(); break;
+ case 524: { action. consumeTemplateExplicitSpecialization(); break;
}
//
- // Rule 520: explicit_specialization ::= template < > declaration
+ // Rule 525: try_block ::= try compound_statement <openscope-ast> handler_seq
//
- case 520: { action. consumeTemplateExplicitSpecialization(); break;
+ case 525: { action. consumeStatementTryBlock(true); break;
}
//
- // Rule 521: try_block ::= try compound_statement <openscope-ast> handler_seq
+ // Rule 526: try_block ::= try compound_statement
//
- case 521: { action. consumeStatementTryBlock(); break;
+ case 526: { action. consumeStatementTryBlock(false); break;
}
//
- // Rule 524: handler ::= catch ( exception_declaration ) compound_statement
+ // Rule 529: handler ::= catch ( exception_declaration ) compound_statement
//
- case 524: { action. consumeStatementCatchHandler(false); break;
+ case 529: { action. consumeStatementCatchHandler(false); break;
}
//
- // Rule 525: handler ::= catch ( ... ) compound_statement
+ // Rule 530: handler ::= catch ( ... ) compound_statement
//
- case 525: { action. consumeStatementCatchHandler(true); break;
+ case 530: { action. consumeStatementCatchHandler(true); break;
}
//
- // Rule 526: exception_declaration ::= type_specifier_seq <openscope-ast> declarator
+ // Rule 531: exception_declaration ::= type_specifier_seq <openscope-ast> declarator
//
- case 526: { action. consumeDeclarationSimple(true); break;
+ case 531: { action. consumeDeclarationSimple(true); break;
}
//
- // Rule 527: exception_declaration ::= type_specifier_seq <openscope-ast> abstract_declarator
+ // Rule 532: exception_declaration ::= type_specifier_seq <openscope-ast> abstract_declarator
//
- case 527: { action. consumeDeclarationSimple(true); break;
+ case 532: { action. consumeDeclarationSimple(true); break;
}
//
- // Rule 528: exception_declaration ::= type_specifier_seq
+ // Rule 533: exception_declaration ::= type_specifier_seq
//
- case 528: { action. consumeDeclarationSimple(false); break;
+ case 533: { action. consumeDeclarationSimple(false); break;
}
//
- // Rule 530: exception_specification ::= throw ( )
+ // Rule 535: exception_specification ::= throw ( )
//
- case 530: { action. consumePlaceHolder(); break;
+ case 535: { action. consumePlaceHolder(); break;
}
//
- // Rule 536: expression_parser_start ::= ERROR_TOKEN
+ // Rule 541: expression_parser_start ::= ERROR_TOKEN
//
- case 536: { action. consumeEmpty(); break;
+ case 541: { action. consumeEmpty(); break;
}
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionParserprs.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionParserprs.java
index c43c13c099..da47ac3a6a 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionParserprs.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionParserprs.java
@@ -1,13 +1,13 @@
/*******************************************************************************
- * Copyright (c) 2006, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * * IBM Corporation - initial API and implementation
- *******************************************************************************/
+* Copyright (c) 2006, 2010 IBM Corporation and others.
+* All rights reserved. This program and the accompanying materials
+* are made available under the terms of the Eclipse Public License v1.0
+* which accompanies this distribution, and is available at
+* http://www.eclipse.org/legal/epl-v10.html
+*
+* Contributors:
+* IBM Corporation - initial API and implementation
+*********************************************************************************/
// This file was generated by LPG
@@ -56,473 +56,486 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
0,1,0,1,1,0,1,1,1,1,
1,1,1,1,1,3,4,3,2,1,
4,2,1,2,5,7,5,1,4,1,
- 0,5,7,8,1,1,2,2,3,2,
- 3,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,2,1,0,
- 4,4,2,2,2,2,2,1,0,1,
- 1,1,1,1,1,2,1,2,2,2,
- 1,1,2,2,1,2,2,1,2,2,
- 1,2,2,1,1,1,1,1,1,1,
+ 0,5,7,2,8,1,1,2,2,3,
+ 2,3,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,2,1,
+ 0,4,4,2,2,2,2,2,1,0,
+ 1,1,1,1,1,1,2,1,2,2,
+ 2,1,1,2,2,1,2,2,1,2,
+ 2,1,2,2,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,3,4,4,5,2,5,
- 6,5,0,6,7,0,1,3,1,0,
- 1,3,1,7,6,0,7,6,1,0,
- 6,5,6,4,1,3,1,0,1,1,
- 2,1,1,3,1,3,1,1,1,1,
- 3,9,2,2,3,2,5,3,7,0,
- 1,2,2,1,0,1,1,1,3,1,
- 2,1,1,2,3,1,1,1,3,2,
- 1,2,2,9,8,2,1,3,1,3,
- 1,0,1,0,2,1,1,3,1,3,
- 2,1,5,8,1,2,3,1,1,7,
- 6,3,0,0,1,3,1,1,5,6,
- 6,7,7,0,0,1,0,1,1,1,
- 2,4,2,2,1,5,1,1,1,1,
- 1,1,1,2,1,0,1,3,1,1,
- 2,3,2,1,2,2,1,0,1,3,
- 3,5,5,4,1,1,1,1,0,1,
- 5,2,2,1,2,2,1,0,1,3,
- 4,3,1,1,5,2,1,1,3,3,
+ 1,1,1,1,1,1,3,4,4,5,
+ 2,5,6,5,0,1,0,7,8,0,
+ 1,3,1,0,1,3,1,7,6,0,
+ 7,6,1,0,6,5,6,4,1,3,
+ 1,0,1,1,2,1,1,3,1,3,
+ 1,1,1,1,3,9,2,2,3,2,
+ 5,3,7,0,1,2,2,1,0,1,
+ 1,1,3,1,2,1,1,2,3,1,
+ 1,1,3,2,1,2,2,9,8,2,
+ 1,3,1,3,1,0,1,0,2,1,
+ 1,3,1,3,2,1,5,8,1,2,
+ 3,1,1,7,6,3,0,0,1,3,
+ 1,1,5,6,6,7,7,0,0,1,
+ 0,1,1,1,2,4,2,2,1,5,
+ 1,1,1,1,1,1,1,2,1,0,
+ 1,3,1,1,2,3,2,1,2,2,
+ 1,0,1,3,3,5,5,4,1,1,
+ 1,1,0,1,5,2,2,1,2,2,
+ 1,0,1,3,4,3,1,1,5,2,
+ 1,1,3,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,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,2,2,7,1,
- 0,1,3,1,1,2,4,2,4,7,
- 9,5,1,3,1,0,1,1,2,4,
- 4,1,2,5,5,3,3,1,4,3,
- 1,0,1,3,1,1,-62,0,0,0,
- -2,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-4,0,
- 0,0,0,0,0,-221,0,0,-5,0,
- 0,0,0,0,-6,-222,0,0,-179,0,
- 0,-283,0,0,0,0,0,0,0,0,
- 0,0,0,0,-58,0,0,0,0,-54,
- -308,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-209,0,0,0,-358,
- 0,0,0,0,0,-189,0,-16,0,0,
- 0,0,0,0,0,0,0,0,-124,-465,
- 0,0,0,0,0,0,-274,0,0,0,
- -59,0,0,0,0,0,0,0,0,0,
- 0,0,-7,0,0,-51,0,0,0,0,
- -8,-257,0,0,0,0,0,0,0,-469,
- 0,0,0,0,0,0,0,0,0,-115,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-226,0,
- 0,0,0,-61,0,0,0,0,-223,0,
- 0,-127,0,0,0,0,0,-120,0,0,
- -128,0,0,0,0,-116,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-142,0,0,
- 0,0,0,-240,0,0,-536,0,0,0,
- 0,-71,0,0,0,-137,0,0,0,0,
- 0,0,0,0,0,0,0,0,-289,-244,
- 0,0,0,0,0,0,-131,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-138,-113,0,0,0,-119,
- -64,0,-178,0,0,0,0,0,-9,0,
- 0,0,-220,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,-11,0,0,-302,0,-146,0,0,0,
- 0,-10,0,0,-49,-230,0,0,0,0,
- 0,0,-225,0,0,0,0,0,-387,0,
- 0,-72,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-513,0,0,0,0,0,0,
+ 2,2,7,1,0,1,3,1,1,2,
+ 4,2,4,7,9,5,1,3,1,0,
+ 1,1,2,4,4,2,1,2,5,5,
+ 3,3,1,4,3,1,0,1,3,1,
+ 1,-62,0,0,0,-2,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,0,-362,0,-243,0,0,
- 0,0,-53,0,0,0,-537,0,0,0,
- -12,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-13,0,
+ 0,0,0,0,-4,0,0,0,0,0,
+ 0,-384,0,0,-5,0,0,0,0,0,
+ -6,-408,0,0,-243,0,-283,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-442,
+ -466,0,-113,0,0,-308,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-64,0,
+ -293,0,0,-58,0,0,0,0,0,0,
+ -189,0,0,-16,0,0,0,0,0,0,
+ 0,0,0,0,-54,0,0,0,0,0,
+ 0,0,-179,0,0,0,-330,0,0,0,
+ 0,0,0,0,-53,0,0,0,0,0,
+ 0,-334,0,0,-65,-273,0,0,0,0,
+ 0,0,0,-127,0,0,0,0,0,0,
+ 0,0,0,0,0,-115,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -206,0,0,0,0,0,0,0,0,-389,
- 0,-135,0,0,0,-301,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-395,0,0,0,0,
- 0,0,0,-332,0,0,0,0,0,0,
+ -10,0,0,0,0,0,0,0,-119,0,
+ 0,0,-178,0,0,0,0,-128,0,0,
+ 0,0,-116,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-15,0,0,0,0,
- 0,0,-349,0,0,-28,0,0,0,0,
- 0,0,0,0,0,0,0,0,-74,0,
- 0,0,0,-298,-122,-444,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-264,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-417,
- 0,0,0,0,0,0,0,0,-3,0,
+ 0,0,-142,0,0,0,0,0,0,-71,
+ 0,0,0,-349,0,0,0,0,0,0,
+ 0,0,-289,-244,0,0,0,0,0,-259,
+ 0,0,0,-131,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -264,0,0,0,0,0,0,0,0,0,
- -339,0,-50,0,0,0,0,-60,0,0,
- -277,0,0,0,-29,0,0,0,0,0,
+ 0,0,0,0,0,0,-129,0,0,0,
+ 0,0,-148,0,0,0,-274,0,0,0,
+ -117,-188,0,-190,0,0,0,0,0,0,
+ -220,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-452,0,0,0,0,0,0,0,
- 0,0,0,0,-312,0,0,0,-313,-259,
- 0,0,0,0,0,-320,0,0,0,-478,
0,0,0,0,0,0,0,0,0,0,
+ -120,0,0,-302,0,-7,0,0,0,-51,
+ 0,0,0,0,-359,0,0,-59,0,0,
+ -416,0,0,0,0,0,0,-424,0,0,
+ -72,0,0,0,-8,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-353,
- 0,0,0,0,0,0,0,-538,0,0,
+ 0,-515,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -293,0,0,0,-321,0,0,0,-30,0,
+ 0,0,0,0,-9,0,0,0,0,0,
+ 0,0,0,0,-363,0,0,0,0,0,
+ 0,0,0,0,0,-539,0,0,0,-137,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-11,0,
+ 0,0,0,0,0,0,0,0,-12,0,
+ -206,0,0,0,0,0,0,0,0,-391,
+ -135,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,0,0,-344,0,
- 0,0,0,0,0,0,0,0,-188,-39,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-471,0,0,0,0,0,0,
+ 0,0,-412,-332,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-31,0,
- 0,-528,0,0,0,0,0,0,0,0,
- 0,-41,0,0,0,-316,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- -190,0,0,0,0,0,0,0,0,-377,
- 0,0,0,-94,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-32,0,0,0,0,
- 0,0,0,0,0,-33,0,-57,0,0,
- 0,0,-107,0,0,-95,0,0,0,-34,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-186,
- 0,0,0,0,-108,0,0,-96,0,0,
- 0,-35,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-36,
- 0,0,0,0,0,0,0,0,0,-529,
- 0,-200,0,0,0,0,-356,0,0,-97,
- 0,0,0,-392,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,-37,0,0,0,0,0,0,0,0,
- 0,0,0,-205,0,0,0,0,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,0,-226,0,
+ 0,0,0,0,0,0,0,-230,-74,0,
+ 0,0,0,-454,-257,-446,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-114,0,-231,0,0,0,0,
- -149,0,0,-99,0,0,0,-38,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-129,0,-256,0,0,
- 0,0,-153,0,0,-100,0,0,0,-40,
+ 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,-55,0,0,
- 0,0,0,0,0,0,0,-130,0,-269,
- 0,0,0,0,-418,0,0,-101,0,0,
- 0,-56,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-422,
- 0,0,0,0,0,0,0,0,0,-144,
- 0,-270,0,0,0,0,-475,0,0,-102,
- 0,0,0,-66,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-154,0,-272,0,0,0,0,-67,0,
- 0,-103,0,0,0,-69,0,0,0,0,
+ 0,0,-15,0,-397,0,0,0,0,-316,
+ 0,0,-347,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-198,0,-276,0,0,0,0,
- -499,0,0,-104,0,0,0,-70,0,0,
+ 0,0,0,0,0,-221,0,0,0,0,
+ 0,-28,-130,0,0,0,-277,0,0,0,
+ -29,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-30,
+ 0,0,0,0,0,0,0,0,0,-31,
+ 0,-183,0,0,0,0,0,0,0,-147,
+ 0,0,0,0,-222,0,0,0,0,0,
+ -419,-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,0,0,0,
- 0,0,0,0,0,-196,0,-288,0,0,
- 0,0,-109,0,0,-213,0,0,0,-110,
+ 0,0,0,0,-299,0,-32,0,0,0,
+ 0,-144,0,0,0,-18,0,0,0,-344,
+ -321,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-498,0,0,-111,0,-305,
- 0,0,0,0,0,0,0,-531,0,0,
- 0,-112,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-299,
- 0,0,0,0,0,0,0,0,0,-207,
- 0,-280,0,0,0,-346,-235,0,0,-347,
- 0,0,0,-333,0,0,0,0,0,0,
+ 0,0,0,-33,0,-154,0,0,0,0,
+ 0,0,0,-39,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-122,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-542,0,0,0,0,0,-357,0,0,
+ 0,0,0,0,0,0,0,-41,0,0,
+ 0,-301,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-132,
+ -34,0,0,0,0,0,0,0,0,0,
+ -379,0,-49,0,0,0,0,0,0,0,
+ -94,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-306,0,0,0,0,0,0,-533,0,
- -281,-366,0,-121,0,-381,0,0,0,0,
+ 0,0,0,-223,0,0,0,0,0,0,
+ 0,0,0,0,0,-50,0,0,0,0,
+ 0,0,0,-95,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-35,0,0,0,
+ 0,0,0,0,0,0,-407,0,-57,0,
+ 0,0,0,-60,0,0,-96,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-139,0,0,0,0,0,
- 0,0,0,-382,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-298,
0,0,0,0,0,0,0,0,0,0,
+ 0,-186,0,0,0,0,0,0,0,-97,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-386,0,0,0,0,0,0,0,
- 0,-234,0,0,0,-404,-202,-140,0,0,
- 0,-455,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -334,0,0,0,0,-364,0,0,0,-106,
+ 0,0,-500,0,-36,0,0,0,-196,-107,
+ 0,0,-98,0,0,0,-339,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-37,0,0,0,0,
+ 0,0,0,0,0,-530,0,-200,0,0,
+ 0,0,-108,0,0,-99,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-227,0,
- 0,-421,0,-141,0,-147,0,0,0,-464,
- 0,0,0,0,0,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,-374,
- 0,-91,0,0,0,-242,0,0,0,0,
+ 0,0,0,0,-38,-138,0,0,-100,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -267,0,0,-92,0,0,0,0,0,0,
+ 0,-480,0,0,0,0,0,0,0,0,
+ 0,-531,0,-205,0,0,0,0,0,0,
+ 0,-101,0,0,0,-40,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-354,0,-88,0,0,0,-155,0,
+ 0,0,0,0,0,0,-231,0,0,0,
+ 0,-114,0,0,-102,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,-156,0,0,0,
- 0,0,0,-396,0,0,0,0,0,0,
- 0,0,0,0,0,0,-89,0,0,0,
- -157,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-158,0,
- 0,0,0,0,-148,-468,0,0,-150,0,
+ 0,0,0,0,0,0,0,-55,0,0,
+ 0,0,0,0,0,0,0,-149,0,-256,
+ 0,0,0,0,-153,0,0,-103,0,0,
+ 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,0,0,0,-337,0,
- 0,0,-268,-512,0,0,0,0,0,0,
- 0,0,-211,0,0,0,-159,-90,0,0,
0,0,0,0,0,0,0,0,0,0,
+ -198,0,-269,0,0,0,0,-280,0,0,
+ -104,0,0,0,-56,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-160,0,-161,-233,0,
- 0,-241,0,0,0,0,0,0,-237,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-247,0,0,0,-152,0,0,0,0,
- 0,0,0,0,0,0,0,0,-249,-162,
- 0,-248,0,0,0,-307,0,0,0,0,
+ -378,0,0,-207,0,-270,0,0,0,0,
+ -514,0,0,-213,0,0,0,-66,0,0,
0,0,0,0,0,0,0,0,0,0,
- -355,0,0,0,0,0,-250,0,0,0,
- 0,0,0,-43,-310,0,-482,0,0,-376,
0,0,0,0,0,0,0,0,0,0,
- -414,0,0,0,0,0,-163,-164,0,0,
+ 0,0,0,0,0,0,-235,0,-272,0,
+ 0,0,0,-242,0,0,-533,0,0,0,
+ -227,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -275,0,0,0,0,-379,0,0,0,-165,
- 0,0,-443,-212,0,-166,0,-167,0,-82,
0,0,0,0,0,0,0,0,0,0,
+ 0,-276,0,0,0,0,-249,0,0,-358,
+ 0,0,0,-333,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,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-168,0,
- 0,0,0,-187,0,0,0,0,0,-19,
+ 0,0,-67,0,-69,0,0,0,-382,0,
+ 0,0,-70,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-169,-271,0,0,0,-287,0,
- 0,0,-314,0,0,0,0,0,0,-251,
- -84,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-225,0,0,
+ 0,-437,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,-85,0,0,
+ 0,0,0,0,0,0,0,0,0,-346,
+ 0,0,0,0,0,0,0,0,0,-367,
+ 0,-109,0,0,0,-457,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-433,0,0,0,0,0,
- -402,0,0,-406,-239,-252,-440,0,0,-14,
- 0,-286,-300,0,-319,-170,0,-171,-311,-434,
- 0,0,0,0,0,-322,0,-172,0,0,
- -17,0,0,0,0,-173,0,0,0,-245,
- 0,0,0,0,0,0,0,0,0,-453,
- 0,0,0,0,0,-435,0,0,0,0,
+ 0,0,0,0,0,-305,0,0,0,0,
+ 0,0,0,0,-234,0,0,0,-439,0,
+ 0,0,-110,-106,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-261,0,0,0,0,0,0,-52,
- 0,0,0,-174,0,0,-328,0,0,0,
- 0,0,0,0,-324,0,0,0,-175,0,
+ 0,0,0,0,0,0,-406,0,0,0,
+ 0,0,0,0,0,0,-288,0,-267,0,
+ 0,-202,-93,0,0,0,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,0,0,0,-530,0,0,0,0,0,
- 0,0,0,0,0,0,0,-86,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,-357,0,0,-111,0,-91,0,0,
+ 0,-250,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-176,0,0,0,-143,0,0,
- 0,-383,-177,0,0,0,0,0,-18,0,
- 0,0,-296,0,0,0,-180,0,0,0,
- 0,0,-181,0,0,0,0,0,0,0,
- 0,0,-182,0,0,0,-373,0,0,0,
- 0,0,0,-185,0,0,0,0,0,-525,
- 0,0,0,0,0,-193,0,0,0,0,
- 0,0,-87,0,0,0,0,0,0,0,
+ -251,0,0,0,0,0,0,0,0,0,
+ -92,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-194,0,0,0,-327,0,
- 0,0,-197,0,0,0,0,0,0,0,
- 0,-77,0,0,0,-526,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-208,0,0,-218,-151,0,0,
- 0,-229,0,0,0,-297,-219,0,0,-338,
- -44,-136,-228,0,0,0,0,0,0,0,
- -236,0,0,-238,-462,-375,-118,0,0,0,
- 0,0,0,0,-427,0,-246,0,0,0,
- 0,0,0,0,0,0,0,0,-255,0,
- 0,0,0,0,0,0,0,-341,0,-325,
- -48,0,0,0,0,0,0,-448,0,0,
- 0,0,0,-260,0,0,0,0,0,-485,
- 0,-343,-399,0,-363,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-273,
- 0,0,0,0,0,0,-262,-263,0,-330,
- 0,0,0,0,0,-42,0,0,0,0,
- -360,0,-278,0,0,0,0,0,-279,0,
- 0,0,0,0,-487,0,-359,0,0,-105,
- 0,-412,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-413,
- 0,-285,-390,0,0,0,0,0,0,0,
- 0,-290,0,0,-294,-45,0,-295,0,0,
- 0,0,0,0,0,0,0,0,0,-504,
- 0,-449,-368,0,0,0,0,0,0,-303,
- 0,-304,0,0,0,0,0,0,0,0,
- -391,0,-416,0,0,-424,0,-1,0,0,
- 0,0,-336,0,0,0,-446,0,0,-224,
- 0,0,-457,0,0,0,0,0,-309,0,
- 0,0,0,0,-518,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-420,0,-315,0,0,
- 0,-317,-318,0,-425,0,0,0,-329,0,
- 0,-429,0,0,0,0,0,-348,-410,-350,
- 0,0,0,0,0,0,0,0,0,-520,
- 0,-432,-369,0,-466,0,0,0,0,0,
- 0,-470,0,0,0,0,0,0,0,0,
- 0,0,-473,0,0,-403,0,0,0,0,
- -372,-385,-192,0,0,0,-397,0,0,-398,
- -123,0,0,0,-361,0,0,0,-400,0,
- 0,0,0,0,0,0,-232,0,0,0,
- -282,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-522,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-401,
- 0,0,0,0,0,-323,0,0,0,0,
- 0,-524,0,0,0,0,0,-214,-474,-407,
- -195,0,0,0,-477,0,0,0,0,0,
- -409,0,0,0,-467,0,0,0,0,0,
- 0,0,-415,0,0,0,0,0,0,0,
- 0,0,0,0,-476,-505,0,0,0,0,
- 0,0,0,0,0,0,0,0,-117,0,
- -488,-199,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-342,0,
- 0,0,0,0,-489,0,-539,-423,0,0,
- 0,0,-514,0,0,-183,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-480,
- 0,-507,0,0,-125,0,0,-430,-431,0,
- 0,0,0,0,0,0,-46,-454,0,0,
+ 0,0,-88,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-544,0,0,0,0,0,0,0,0,
- 0,-456,0,0,0,0,0,0,0,0,
- 0,0,-458,0,0,0,0,-479,0,0,
- 0,0,-437,0,0,0,0,-459,-460,0,
- 0,0,-493,0,-461,0,-496,0,0,0,
- 0,0,0,0,0,0,-463,0,0,0,
- 0,0,-481,-483,-500,-484,0,0,0,0,
- 0,0,0,0,0,0,-78,0,0,0,
+ 0,0,0,0,0,-388,0,0,0,0,
+ 0,0,-89,0,0,0,-112,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-486,0,
- 0,-79,0,0,0,-491,0,0,0,0,
+ 0,0,0,0,0,-132,0,0,0,0,
+ 0,-90,0,0,0,-139,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-495,0,-80,0,0,0,0,
+ 0,0,0,0,-140,0,0,0,0,0,
+ -398,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-82,0,0,0,-141,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-502,0,-81,
- 0,0,0,-510,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-519,0,-380,0,0,0,0,0,0,
- 0,0,0,0,0,0,-527,-445,0,0,
+ 0,-105,-233,0,0,0,-150,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -20,0,0,0,-494,0,0,0,0,0,
+ 0,0,0,-281,0,0,-337,0,0,0,
+ -268,0,0,0,0,0,0,0,-380,0,
+ 0,0,-155,0,-252,-83,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-471,0,0,0,-509,-517,-532,-543,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-241,0,0,0,0,-473,0,
+ 0,0,-156,0,0,0,-540,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-511,0,0,0,0,0,-21,
+ -212,0,-377,0,0,0,-157,0,0,0,
+ 0,0,0,0,-286,-84,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,-22,0,0,0,0,0,0,0,0,
+ 0,0,0,-85,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-472,0,0,0,-501,0,0,
- 0,0,-23,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-515,0,0,0,0,
- 0,-24,0,0,0,0,0,0,0,0,
+ 0,-237,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-124,-143,0,0,0,-271,
+ 0,0,-307,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-423,-192,0,0,0,
+ 0,0,0,-300,-52,0,0,0,-245,0,
+ 0,-470,0,-47,0,0,0,0,0,0,
+ 0,0,0,0,-158,0,0,-296,-240,0,
+ 0,0,0,0,0,-159,-467,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-247,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-25,0,0,0,0,0,0,
+ 0,0,-248,0,0,0,0,0,-61,0,
+ -160,0,0,-161,0,0,0,-345,0,0,
+ 0,-162,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-356,-297,-20,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-26,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-27,0,0,
+ 0,0,0,0,0,-315,0,0,0,0,
+ -163,-211,0,0,0,0,0,0,0,0,
+ -164,0,0,-165,0,-312,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-166,0,
+ 0,0,0,0,-167,0,0,-325,0,-86,
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,0,0,
+ 0,0,-168,0,0,0,-87,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,-435,
+ 0,0,0,0,-152,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-275,0,0,
+ 0,-365,0,-169,-170,0,0,-146,-292,0,
+ 0,0,-306,0,0,0,0,-455,0,0,
+ -310,0,0,-313,0,-445,0,0,0,0,
+ 0,0,0,0,0,-171,0,0,-353,-239,
+ 0,0,0,0,-324,-172,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-361,
+ 0,-173,0,0,0,0,0,0,0,0,
+ 0,0,0,-390,0,-311,-436,0,0,0,
+ -174,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-532,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-77,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,-76,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,-387,-261,0,0,-145,0,
+ -175,0,0,0,0,0,-322,0,0,0,
+ 0,0,-176,0,0,0,-121,0,0,-484,
+ 0,0,-177,0,0,0,-404,0,0,0,
+ 0,-327,0,0,0,-180,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-78,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,-203,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,0,-367,
- -516,-535,-540,0,-521,-534,0,0,-394,-73,
- -541,0,0,0,0,-253,0,0,-442,0,
- 0,0,0,0,0,0,-134,-365,0,0,
- 0,0,0,0,0,-145,0,0,0,0,
+ 0,0,-364,0,0,-118,-17,-181,-328,0,
+ 0,0,0,-182,-151,0,0,0,0,0,
+ 0,0,0,0,-185,0,0,-464,0,0,
+ -193,0,0,0,0,0,0,0,0,0,
+ 0,-394,-187,0,0,0,0,0,-194,0,
+ 0,-197,0,0,0,0,0,0,0,0,
+ -335,0,0,0,0,-487,0,0,0,0,
+ 0,-448,0,-527,0,0,0,0,0,0,
+ 0,0,0,-208,0,-338,0,0,0,0,
+ -354,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-489,0,0,0,0,0,0,
+ 0,-341,0,0,0,0,0,0,0,0,
+ 0,-14,0,-218,-219,0,0,-323,0,0,
+ 0,-228,0,0,0,0,0,0,0,0,
+ 0,-506,0,0,0,0,0,-236,-401,0,
+ 0,0,0,0,0,0,0,0,0,-343,
+ 0,-214,0,0,0,0,-238,0,-246,-420,
+ 0,0,0,0,0,0,0,0,0,-520,
+ 0,0,-360,0,0,0,0,-392,0,0,
+ 0,0,0,0,0,0,0,-255,0,0,
+ 0,0,0,-260,-262,-374,0,0,0,0,
+ 0,0,0,0,0,0,0,-522,0,0,
+ 0,0,0,-459,0,-369,0,0,0,0,
+ 0,0,0,0,0,-505,0,0,-263,0,
+ 0,-209,0,0,0,-278,0,0,0,0,
+ 0,0,0,0,0,-279,0,0,0,-285,
+ 0,-290,0,0,0,0,0,-319,0,0,
+ 0,0,0,-294,0,-295,0,-229,0,0,
+ 0,0,0,-426,0,0,0,0,0,0,
+ 0,0,0,-524,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-136,-303,0,-393,
+ 0,-1,0,0,-429,0,0,0,0,0,
+ -526,0,0,-123,0,-468,-134,0,-418,-376,
+ 0,0,0,0,-422,0,-431,0,0,0,
+ 0,0,-125,0,-474,0,0,0,-304,0,
+ 0,0,0,0,0,0,-414,0,0,0,
+ 0,0,-336,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-415,0,
+ -362,-469,0,0,-541,0,0,0,0,0,
+ 0,0,0,0,0,0,-309,-427,0,0,
+ 0,0,0,-317,0,0,0,0,-434,0,
+ 0,0,0,-318,0,0,0,0,0,0,
+ 0,-329,-340,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,-546,0,-348,0,0,0,0,-482,
+ -472,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-476,0,-350,-370,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ -479,0,0,0,0,0,-373,0,0,0,
+ 0,0,-386,0,0,0,0,0,-477,0,
+ 0,0,0,0,0,0,0,0,-475,0,
+ -399,0,0,0,0,0,0,0,-79,0,
+ 0,0,-400,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-80,0,0,0,-402,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-81,0,
+ 0,0,-403,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,-409,0,-21,0,0,0,-411,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-22,0,0,0,
+ -417,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-23,
+ 0,0,0,-425,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,-24,0,0,0,-432,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-25,0,0,0,-433,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-26,0,
+ 0,0,-456,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,-27,0,0,0,-458,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-63,0,0,0,-460,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,-75,0,0,
+ 0,-461,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ -76,0,0,0,-462,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,-133,0,0,0,-463,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-203,0,0,0,
+ -538,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,-501,-447,0,0,0,0,0,0,
+ 0,0,0,0,0,0,-19,0,0,0,
+ -495,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-368,-478,
+ -465,-215,0,-48,-73,0,-528,0,0,0,
+ 0,0,-396,0,0,-483,0,-485,-216,0,
+ -486,0,0,0,0,0,0,0,0,-496,
+ 0,0,0,0,0,0,-503,-544,-498,-253,
+ 0,0,0,0,-488,0,0,0,0,0,
+ 0,0,0,0,-287,0,0,0,0,0,
+ 0,0,-523,0,0,0,0,0,0,0,
+ -232,0,0,0,0,0,0,0,0,0,
+ -502,0,0,0,0,-444,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-507,0,
+ 0,0,-493,-43,-366,0,-44,0,0,-536,
+ 0,0,-509,0,0,0,0,0,0,-511,
+ -217,-497,-543,0,0,0,0,0,0,0,
+ -504,0,0,0,0,0,0,0,0,0,
+ 0,-126,0,0,0,0,0,-519,0,0,
+ 0,0,0,-512,0,0,-405,0,0,0,
+ 0,0,0,0,0,0,0,0,0,0,
+ 0,-521,-385,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-508,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-529,
+ 0,0,0,0,0,-265,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-534,-199,
+ -513,-517,0,0,0,-284,-545,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ -518,-537,0,0,0,0,0,0,-371,0,
+ 0,-355,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-395,0,0,0,0,0,
+ 0,0,0,0,0,0,-254,-331,0,0,
+ 0,0,0,0,0,0,0,0,-314,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-542,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ -421,0,0,0,0,0,-492,0,0,0,
+ 0,0,0,0,0,0,-430,0,0,0,
+ 0,0,0,0,0,0,-291,-326,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-503,0,0,-254,0,
- 0,0,0,0,0,0,-441,0,0,0,
- 0,0,0,-292,0,0,0,0,0,0,
- 0,0,0,-345,0,0,0,0,0,0,
- 0,0,0,0,0,0,-384,0,0,0,
- 0,0,0,0,0,0,0,0,0,-506,
+ 0,0,0,0,0,0,0,-438,0,0,
+ 0,0,-443,0,0,0,0,0,0,0,
+ 0,0,0,0,-450,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-516,0,
+ 0,0,0,-195,0,0,0,0,0,0,
+ 0,0,-372,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,-224,0,
+ 0,0,0,0,-266,0,0,0,0,0,
+ 0,0,0,0,0,-282,0,0,0,0,
+ 0,0,0,0,-481,0,0,0,0,0,
+ 0,0,0,0,0,0,-342,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-126,0,0,0,0,0,
- 0,0,0,-47,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-490,-492,
- -340,-378,0,0,0,0,0,-265,0,0,
+ 0,0,0,0,0,0,-351,0,0,0,
+ -389,0,0,0,0,0,0,0,0,0,
+ 0,-410,0,0,0,0,0,0,-413,0,
+ 0,0,0,0,0,0,-428,0,0,0,
+ 0,0,0,0,0,0,0,0,-525,0,
+ 0,0,0,0,0,0,0,-440,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,-441,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,-449,0,0,0,0,
+ 0,0,0,0,-510,0,0,0,0,0,
+ 0,0,-42,0,0,0,0,0,0,0,
+ 0,0,-451,0,-68,-45,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,-352,0,0,0,0,0,0,0,-184,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,-370,0,0,0,0,
- 0,-284,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-184,0,
- 0,0,0,0,0,0,-351,0,0,0,
- 0,0,0,0,-393,-331,0,0,0,0,
+ 0,0,-191,0,0,0,-201,0,0,0,
+ 0,0,0,-210,0,0,0,-258,0,0,
+ 0,-46,0,0,0,0,-490,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,-419,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
+ 0,0,0,0,0,0,0,0,0,-491,
+ -494,0,0,0,0,-204,0,0,0,0,
+ 0,0,0,0,-452,0,0,0,0,0,
+ -453,0,0,0,0,0,0,-499,0,0,
+ 0,0,-535,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -215,0,0,-428,0,0,0,0,0,-436,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- -266,0,0,0,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,-388,0,0,0,0,0,0,0,0,
- 0,0,0,0,-326,0,0,0,0,0,
- 0,-408,0,0,0,-411,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,-216,0,0,0,0,0,0,0,
- -426,0,0,0,0,0,-352,0,0,0,
- 0,0,-217,0,0,0,0,0,0,0,
- -204,0,0,0,0,0,0,0,0,-405,
- 0,0,0,0,0,0,-438,0,0,0,
- 0,0,0,0,0,0,0,-439,0,0,
- 0,0,0,0,0,0,0,0,-447,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-508,0,
- 0,0,0,-68,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 0,0,0,0,0,0,0,0,-191,0,
- 0,0,0,0,-450,0,0,0,0,0,
- 0,0,0,0,-201,0,0,0,0,-210,
- 0,0,0,-451,0,-497,0,0,0,0,
- 0,0,0,-258,0,0,0,0,0,0,
- 0,0,0,0,0,0,-291,0,0,0,
- 0,0,-523,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
@@ -531,7 +544,7 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
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;
@@ -541,538 +554,551 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public interface BaseAction {
public final static char baseAction[] = {
- 174,4,136,81,81,32,32,67,67,38,
- 38,42,42,200,1,1,15,15,15,15,
- 15,15,15,16,16,16,14,11,11,6,
- 6,6,6,6,6,2,65,65,5,5,
- 12,12,44,44,137,137,138,57,57,43,
- 17,17,17,17,17,17,17,17,17,17,
- 17,17,17,17,17,17,17,17,17,17,
- 139,139,139,113,113,18,18,18,18,18,
- 18,18,18,18,18,18,18,18,19,19,
- 175,175,176,176,177,142,142,143,143,140,
- 140,144,141,141,20,20,21,21,23,23,
- 23,24,24,24,24,25,25,25,26,26,
- 26,27,27,27,27,27,28,28,28,30,
- 30,31,31,33,33,35,35,36,36,37,
- 37,41,41,40,40,40,40,40,40,40,
- 40,40,40,40,40,40,39,29,145,145,
- 95,95,178,178,90,201,201,68,68,68,
- 68,68,68,68,68,68,69,69,69,66,
- 66,56,56,179,179,70,70,70,101,101,
- 180,180,71,71,71,181,181,72,72,72,
- 72,72,73,73,82,82,82,82,82,82,
- 82,82,50,50,50,50,50,114,114,112,
- 112,51,182,22,22,22,22,22,48,48,
- 85,85,85,85,85,152,152,147,147,147,
- 147,147,148,148,148,149,149,149,150,150,
- 150,151,151,151,86,86,86,86,86,87,
- 87,87,13,13,13,13,13,13,13,13,
- 13,13,13,96,118,118,118,118,118,118,
- 116,116,116,153,117,117,183,155,155,154,
- 154,120,120,102,79,79,121,53,47,156,
- 156,54,52,84,84,157,157,146,146,122,
- 123,123,124,76,76,158,158,63,63,63,
- 60,60,59,64,64,75,75,58,58,58,
- 49,88,88,98,97,97,62,62,61,61,
- 55,55,45,99,99,99,91,91,91,92,
- 92,93,93,93,94,94,103,103,103,105,
- 105,104,104,202,202,89,89,185,185,185,
- 185,185,126,46,46,160,184,184,127,127,
- 128,128,128,129,162,186,186,34,34,115,
- 130,130,130,130,188,107,106,106,119,119,
- 119,163,164,164,164,164,164,164,164,164,
- 164,164,164,190,190,187,187,189,189,165,
- 166,166,166,166,167,191,109,108,108,192,
- 192,168,168,168,168,100,100,100,193,193,
- 8,8,9,194,194,195,169,159,159,170,
- 170,171,172,172,7,7,10,196,196,196,
- 196,196,196,196,196,196,196,196,196,196,
- 196,196,196,196,196,196,196,196,196,196,
- 196,196,196,196,196,196,196,196,196,196,
- 196,196,196,196,196,196,196,196,196,77,
- 80,80,173,173,132,132,133,133,133,133,
- 133,133,3,134,134,131,131,110,110,83,
- 78,74,161,161,111,111,197,197,197,135,
- 135,125,125,198,198,174,174,1119,35,2254,
- 2178,1278,2968,27,30,31,1029,1116,26,28,
- 2125,25,23,50,1126,106,76,77,108,2039,
- 1235,1409,1339,1496,1486,1552,135,1510,1612,71,
- 1570,273,1678,1720,143,1267,135,158,144,588,
- 35,3107,1888,35,1011,32,4655,3461,27,30,
- 31,1029,1116,338,28,588,1846,2070,34,232,
- 1614,1691,35,1011,32,4697,3461,27,30,31,
- 1029,1116,338,28,350,3149,588,35,1839,388,
- 588,3372,235,230,231,328,2129,926,1500,35,
- 1011,32,497,274,41,30,31,1029,1116,241,
- 2717,318,2091,320,1189,313,2002,588,35,282,
- 49,1614,242,245,248,251,1145,351,3160,46,
- 318,2091,320,2023,313,2002,1599,738,1666,156,
- 3559,2154,322,343,865,806,348,3160,200,3845,
- 1330,1874,559,4136,3127,870,2094,3441,3615,4355,
- 2316,35,1011,32,2880,2979,27,30,31,1029,
- 1116,26,28,912,25,23,50,1126,106,76,
- 77,108,342,1235,1409,1339,1496,1486,1552,142,
- 1510,1612,2804,1570,2147,1678,1720,143,4207,135,
- 517,144,327,35,279,724,3687,4799,1330,389,
- 288,929,35,1839,388,518,2316,35,1011,32,
- 2880,2979,27,30,31,1029,1116,26,28,912,
- 25,23,50,1126,106,76,77,108,342,1235,
- 1409,1339,1496,1486,1552,49,1510,1612,1708,1570,
- 1540,1678,1720,143,1804,3026,517,144,327,35,
- 279,724,1451,4815,2079,35,277,221,3433,351,
- 513,518,1217,35,1011,32,1873,3098,27,30,
- 31,1029,1116,57,28,343,865,806,348,2615,
- 1607,2987,626,341,2993,4499,1750,2316,35,1011,
- 32,2880,2979,27,30,31,1029,1116,26,28,
- 912,25,23,50,1126,106,76,77,108,342,
- 1235,1409,1339,1496,1486,1552,513,1510,1612,2729,
- 1570,443,1678,1720,143,1699,1279,517,144,3014,
- 1225,1017,724,588,35,2070,3097,3003,4304,2168,
- 2993,352,518,2524,35,1011,32,2880,2979,27,
- 30,31,1029,1116,26,28,912,25,23,50,
- 1126,106,76,77,108,342,1235,1409,1339,1496,
- 1486,1552,1016,1510,1612,159,1570,56,1678,1720,
- 143,1189,69,517,144,56,1330,4364,724,690,
- 579,873,232,588,35,2463,2331,513,518,314,
- 353,61,1860,35,1011,32,2000,3098,27,30,
- 31,1029,1116,56,28,244,230,231,3055,381,
- 88,2993,94,102,2659,35,1011,32,1834,2979,
- 27,30,31,1029,1116,26,28,912,25,23,
- 50,1126,106,76,77,108,2121,1235,1409,1339,
- 1496,1486,1552,514,1510,1612,2615,1570,2060,1678,
- 1720,143,579,1010,378,144,3515,2385,35,1011,
- 32,2493,2979,27,30,31,1029,1116,26,28,
- 912,25,23,50,1126,106,76,77,108,2681,
- 1235,1409,1339,1496,1486,1552,1221,1510,1612,438,
- 1570,1868,1678,1720,143,820,4216,378,144,3515,
- 1721,2256,2832,35,1011,32,1330,2979,27,30,
- 31,1029,1116,26,28,912,25,23,50,1126,
- 106,76,77,108,2042,1235,1409,1339,1496,1486,
- 1552,60,1510,1612,498,1570,2271,1678,3063,164,
- 4535,385,379,1280,3121,35,1011,32,3110,2979,
- 27,30,31,1029,1116,26,28,912,25,23,
- 50,1126,106,76,77,108,2682,1235,1409,1339,
- 1496,1486,1552,2729,1510,1612,2245,1570,3366,1678,
- 3063,164,3260,326,386,379,1280,89,819,56,
- 102,3272,1916,1189,135,1229,2591,35,1011,32,
- 3076,2979,27,30,31,1029,1116,26,28,912,
- 25,23,50,1126,106,76,77,108,156,1235,
- 1409,1339,1496,1486,1552,355,1510,1612,1832,1570,
- 1721,1678,1720,143,2216,531,378,144,3515,2887,
- 35,1011,32,2911,2979,27,30,31,1029,1116,
- 26,28,912,25,23,50,1126,106,76,77,
- 108,236,1235,1409,1339,1496,1486,1552,93,1510,
- 1612,1330,1570,56,1678,1720,143,746,1614,158,
- 144,2887,35,1011,32,413,2979,27,30,31,
- 1029,1116,26,28,912,25,23,50,1126,106,
- 76,77,108,1088,1235,1409,1339,1496,1486,1552,
- 24,1510,1612,3293,1570,2582,1678,1720,143,2582,
- 2049,372,144,376,379,1280,2887,35,1011,32,
- 1330,2979,27,30,31,1029,1116,26,28,912,
- 25,23,50,1126,106,76,77,108,1379,1235,
- 1409,1339,1496,1486,1552,354,1510,1612,404,1570,
- 2582,1678,1720,143,421,531,372,144,2344,35,
- 1011,32,3705,4820,27,30,31,1029,1116,26,
- 28,666,511,2694,559,2887,35,1011,32,1445,
- 2979,27,30,31,1029,1116,26,28,912,25,
- 23,50,1126,106,76,77,108,371,1235,1409,
- 1339,1496,1486,1552,522,1510,1612,1960,1570,2655,
- 1678,1720,143,390,427,372,144,391,427,69,
- 2457,35,1011,32,3102,2979,27,30,31,1029,
- 1116,26,28,912,25,23,50,1126,106,76,
- 77,108,370,1235,1409,1339,1496,1486,1552,64,
- 1510,1612,1330,1570,2587,1678,1720,143,393,427,
- 142,144,2887,35,1011,32,322,2979,27,30,
- 31,1029,1116,26,28,912,25,23,50,1126,
- 106,76,77,108,70,1235,1409,1339,1496,1486,
- 1552,69,1510,1612,2804,1570,3457,1678,1720,143,
- 2655,368,159,144,2887,35,1011,32,525,2979,
- 27,30,31,1029,1116,26,28,912,25,23,
- 50,1126,106,76,77,108,2284,1235,1409,1339,
- 1496,1486,1552,284,1510,1612,587,1570,56,1678,
- 1720,143,827,1614,155,144,2887,35,1011,32,
- 494,2979,27,30,31,1029,1116,26,28,912,
- 25,23,50,1126,106,76,77,108,4412,1235,
- 1409,1339,1496,1486,1552,69,1510,1612,447,1570,
- 56,1678,1720,143,3330,1614,154,144,2887,35,
- 1011,32,1355,2979,27,30,31,1029,1116,26,
- 28,912,25,23,50,1126,106,76,77,108,
- 400,1235,1409,1339,1496,1486,1552,68,1510,1612,
- 1330,1570,56,1678,1720,143,2805,322,153,144,
- 2887,35,1011,32,322,2979,27,30,31,1029,
- 1116,26,28,912,25,23,50,1126,106,76,
- 77,108,1226,1235,1409,1339,1496,1486,1552,4720,
- 1510,1612,2804,1570,56,1678,1720,143,998,447,
- 152,144,2887,35,1011,32,524,2979,27,30,
- 31,1029,1116,26,28,912,25,23,50,1126,
- 106,76,77,108,285,1235,1409,1339,1496,1486,
- 1552,295,1510,1612,1614,1570,56,1678,1720,143,
- 3200,1614,151,144,2887,35,1011,32,1146,2979,
- 27,30,31,1029,1116,26,28,912,25,23,
- 50,1126,106,76,77,108,53,1235,1409,1339,
- 1496,1486,1552,87,1510,1612,1010,1570,56,1678,
- 1720,143,1990,1614,150,144,2887,35,1011,32,
- 1617,2979,27,30,31,1029,1116,26,28,912,
- 25,23,50,1126,106,76,77,108,1625,1235,
- 1409,1339,1496,1486,1552,52,1510,1612,1010,1570,
- 56,1678,1720,143,1265,322,149,144,2887,35,
- 1011,32,1627,2979,27,30,31,1029,1116,26,
- 28,912,25,23,50,1126,106,76,77,108,
- 2244,1235,1409,1339,1496,1486,1552,460,1510,1612,
- 1010,1570,56,1678,1720,143,1269,322,148,144,
- 2887,35,1011,32,1174,2979,27,30,31,1029,
- 1116,26,28,912,25,23,50,1126,106,76,
- 77,108,294,1235,1409,1339,1496,1486,1552,459,
- 1510,1612,1010,1570,56,1678,1720,143,3368,2683,
- 147,144,2887,35,1011,32,1323,2979,27,30,
- 31,1029,1116,26,28,912,25,23,50,1126,
- 106,76,77,108,303,1235,1409,1339,1496,1486,
- 1552,4158,1510,1612,1614,1570,56,1678,1720,143,
- 2815,322,146,144,2887,35,1011,32,1441,2979,
- 27,30,31,1029,1116,26,28,912,25,23,
- 50,1126,106,76,77,108,349,1235,1409,1339,
- 1496,1486,1552,51,1510,1612,1010,1570,56,1678,
- 1720,143,3210,160,145,144,2887,35,1011,32,
- 676,2979,27,30,31,1029,1116,26,28,912,
- 25,23,50,1126,106,76,77,108,382,1235,
- 1409,1339,1496,1486,1552,1721,1510,1612,848,1570,
- 69,1678,1720,143,311,3579,140,144,3005,35,
- 1011,32,1167,2979,27,30,31,1029,1116,26,
- 28,912,25,23,50,1126,106,76,77,108,
- 737,1235,1409,1339,1496,1486,1552,325,1510,1612,
- 1614,1570,2551,1678,1720,143,1604,1614,189,144,
- 3121,35,1011,32,1010,2979,27,30,31,1029,
- 1116,26,28,912,25,23,50,1126,106,76,
- 77,108,90,1235,1409,1339,1496,1486,1552,1876,
- 1510,1612,221,1570,402,1678,3063,164,3121,35,
- 1011,32,3323,2979,27,30,31,1029,1116,26,
- 28,912,25,23,50,1126,106,76,77,108,
- 2690,1235,1409,1339,1496,1486,1552,323,1510,1612,
- 322,1570,1390,1678,3063,164,1369,327,334,2481,
- 531,2380,2552,1189,1240,97,3121,35,1011,32,
- 423,2979,27,30,31,1029,1116,26,28,912,
- 25,23,50,1126,106,76,77,108,156,1235,
- 1409,1339,1496,1486,1552,1503,1510,1612,162,1570,
- 406,1678,3063,164,3121,35,1011,32,292,2979,
- 27,30,31,1029,1116,26,28,912,25,23,
- 50,1126,106,76,77,108,232,1235,1409,1339,
- 1496,1486,1552,2627,1510,1612,324,1570,4666,1678,
- 3063,164,588,35,2070,276,2552,1818,3321,247,
- 230,231,3176,35,1011,32,422,2979,27,30,
- 31,1029,1116,26,28,912,25,23,50,1126,
- 106,76,77,108,380,1235,1409,1339,1496,1486,
- 1552,666,1510,1612,298,1570,1010,1678,3063,164,
- 3121,35,1011,32,425,2979,27,30,31,1029,
- 1116,26,28,912,25,23,50,1126,106,76,
- 77,108,2256,1235,1409,1339,1496,1486,1552,2135,
- 1510,1612,2552,1570,1453,2836,2407,35,1011,32,
- 588,3683,40,30,31,1029,1116,4183,3121,35,
- 1011,32,3739,2979,27,30,31,1029,1116,26,
- 28,912,25,23,50,1126,106,76,77,108,
- 221,1235,1409,1339,1496,1486,1552,98,1510,1612,
- 2221,2818,3121,35,1011,32,1614,2979,27,30,
- 31,1029,1116,26,28,912,25,23,50,1126,
- 106,76,77,108,71,1235,1409,1339,1496,1486,
- 1552,142,1510,2724,3121,35,1011,32,1918,2979,
- 27,30,31,1029,1116,26,28,912,25,23,
- 50,1126,106,76,77,108,1792,1235,1409,1339,
- 1496,1486,1552,2582,2816,3121,35,1011,32,408,
- 2979,27,30,31,1029,1116,26,28,912,25,
- 23,50,1126,106,76,77,108,580,1235,1409,
- 1339,1496,1486,2636,1518,35,1011,32,4697,4507,
- 27,30,31,1029,1116,338,28,3121,35,1011,
- 32,1015,2979,27,30,31,1029,1116,26,28,
- 912,25,23,50,1126,106,76,77,108,1700,
- 1235,1409,1339,1496,2638,1351,588,3764,2585,1715,
- 35,1011,32,3014,4820,27,30,31,1029,1116,
- 59,28,331,318,2091,320,1960,313,2002,2407,
- 35,1011,32,2693,1088,2092,30,31,1029,1116,
- 312,392,427,757,35,1839,388,1787,3121,35,
- 1011,32,4314,2979,27,30,31,1029,1116,26,
- 28,912,25,23,50,1126,106,76,77,108,
- 616,1235,1409,1339,1496,2689,1223,273,1385,1947,
- 35,277,1543,35,2070,276,305,309,1780,1400,
- 35,1011,32,4482,3461,27,30,31,1029,1116,
- 338,28,588,3275,2070,74,1715,35,1011,32,
- 2252,4820,27,30,31,1029,1116,58,28,1614,
- 1559,3588,1543,35,2070,3278,1898,35,3390,32,
- 4697,4507,27,30,31,1029,1116,338,28,3137,
- 2819,2122,42,3094,2621,522,4642,1614,318,2091,
- 320,67,313,2002,56,56,72,1964,2880,1310,
- 2407,35,1011,32,351,3229,2176,30,31,1029,
- 1116,588,35,1839,388,3014,342,1875,1965,66,
- 343,865,806,348,331,318,2091,320,3223,313,
- 2002,588,35,2070,278,3020,327,35,453,724,
- 2022,4662,1123,56,1334,431,1709,1189,2491,1923,
- 3121,35,1011,32,4314,2979,27,30,31,1029,
- 1116,26,28,912,25,23,50,1126,106,76,
- 77,108,3545,1235,1409,1339,2506,3121,35,1011,
- 32,2163,2979,27,30,31,1029,1116,26,28,
- 912,25,23,50,1126,106,76,77,108,2558,
- 1235,1409,1339,2508,1243,35,3113,2249,523,2256,
- 3066,35,1011,32,365,2979,27,30,31,1029,
- 1116,26,28,912,25,23,50,1126,86,76,
- 77,417,419,3388,1701,2449,35,280,49,588,
- 35,2070,3379,588,35,2070,281,1804,933,429,
- 1614,3121,35,1011,32,2006,2979,27,30,31,
- 1029,1116,26,28,912,25,23,50,1126,106,
- 76,77,108,3432,1235,1409,1339,2550,3121,35,
- 1011,32,65,2979,27,30,31,1029,1116,26,
- 28,912,25,23,50,1126,106,76,77,108,
- 2733,1235,1409,1339,2607,259,446,3510,3521,537,
- 719,1243,35,396,838,2234,1614,2208,2795,2880,
- 2715,2880,1614,2121,2880,737,1703,228,486,56,
- 843,35,453,2363,156,4662,56,2519,1374,342,
- 3221,56,342,180,3333,537,1515,2804,64,530,
- 2440,203,215,4629,2887,202,212,213,214,216,
- 1,169,724,342,537,666,588,35,1839,388,
- 156,168,533,183,167,170,171,172,173,174,
- 1228,182,228,1643,35,293,724,3323,2459,156,
- 3231,35,1839,388,1883,741,651,56,180,3333,
- 452,3445,2804,237,359,2484,203,215,4629,2125,
- 202,212,213,214,216,616,169,3618,2812,3121,
- 3124,56,3237,334,273,4208,168,181,184,167,
- 170,171,172,173,174,2070,35,1011,32,4482,
- 3461,27,30,31,1029,1116,338,28,3121,35,
- 1011,32,232,2979,27,30,31,1029,1116,26,
- 28,912,25,23,50,1126,106,76,77,108,
- 2256,1235,1409,2608,2413,235,230,231,2212,35,
- 1839,388,2371,2415,2850,915,274,44,3094,1976,
- 35,1839,388,1614,318,2091,320,2306,313,2002,
- 450,3510,3521,2305,1056,242,245,248,251,1145,
- 351,526,49,2453,442,3423,456,1643,3440,293,
- 738,1804,2177,49,1096,55,343,865,806,348,
- 2044,3149,1804,986,527,3433,2149,3127,870,2094,
- 3441,3615,4355,3121,35,1011,32,2256,2979,27,
- 30,31,1029,1116,26,28,912,25,23,50,
- 1126,106,76,77,108,2487,1235,1409,2630,1363,
- 35,1011,32,49,4507,27,30,31,1029,1116,
- 338,28,3121,35,1011,32,1778,2979,27,30,
- 31,1029,1116,26,28,912,25,23,50,1126,
- 106,76,77,108,1817,1235,2369,2515,932,35,
- 1839,388,932,35,1839,388,1614,2553,3014,915,
- 56,56,2417,2218,4180,2880,3562,332,318,2091,
- 320,1250,314,2002,2513,345,2646,3347,1056,537,
- 2880,523,49,342,351,2646,49,2272,54,2880,
- 239,1804,2634,797,350,1804,47,228,2519,1790,
- 345,865,806,348,156,2473,724,2519,56,2725,
- 1614,1354,3126,180,3333,1189,1930,2804,588,35,
- 293,203,215,4629,2433,202,212,213,214,216,
- 431,169,56,69,537,1614,1460,351,4691,232,
- 160,168,321,3746,167,170,171,172,173,174,
- 2050,3372,228,343,865,806,348,2691,2572,156,
- 2060,1874,240,230,231,505,56,101,180,3333,
- 537,2234,2804,1714,505,2880,203,215,4629,1906,
- 202,212,213,214,216,517,169,56,342,537,
- 56,1050,69,2519,1189,156,168,4727,178,167,
- 170,171,172,173,174,1545,1664,228,502,504,
- 69,724,2624,1614,156,4738,2880,503,504,156,
- 3610,1503,2587,180,3333,2699,56,2804,2343,2828,
- 2880,203,215,4629,2519,202,212,213,214,216,
- 603,169,2647,56,537,3313,2880,4189,342,3449,
- 2557,168,2707,176,167,170,171,172,173,174,
- 359,56,228,56,2519,1180,1614,4297,2249,156,
- 287,724,1189,737,3263,3121,3124,2552,180,3333,
- 1180,1958,2804,2552,2880,4834,203,215,4629,2619,
- 202,212,213,214,216,689,169,156,3327,537,
- 996,360,228,3272,1426,3373,168,535,177,167,
- 170,171,172,173,174,302,56,228,2050,3372,
- 4199,179,2689,2716,156,69,1270,407,4418,2728,
- 4749,505,56,180,3333,3323,3292,2804,2723,2122,
- 2492,203,215,4629,4642,202,212,213,214,216,
- 775,169,56,2732,537,2552,1253,408,409,410,
- 3208,168,1614,187,167,170,171,172,173,174,
- 333,334,228,2446,502,504,1243,35,396,156,
- 3174,2739,2735,588,35,1839,388,2733,180,3333,
- 2750,1606,2804,198,451,737,203,215,4629,2068,
- 202,212,213,214,216,529,169,929,35,1839,
- 388,929,35,1839,388,3703,168,273,3869,167,
- 170,171,172,173,174,1952,35,1011,32,4697,
- 3461,27,30,31,1029,1116,338,28,287,2163,
- 2734,49,541,411,413,49,588,35,1839,388,
- 1804,47,861,232,1804,2895,537,3323,56,56,
- 2747,1983,1189,1955,647,56,4499,672,3496,1881,
- 4601,2757,1587,3373,228,2552,250,230,231,275,
- 273,156,3619,2761,318,2091,320,156,313,2002,
- 180,3333,3311,334,2804,1614,1614,2549,203,215,
- 4629,312,202,212,213,214,216,430,169,1607,
- 3014,56,1375,197,4499,537,2880,4499,168,332,
- 192,167,170,171,172,173,174,377,3345,932,
- 35,1839,388,342,2519,56,351,947,2751,537,
- 156,537,339,1243,35,396,1773,305,309,1780,
- 188,4499,345,865,806,348,4340,342,3014,228,
- 2552,3014,1614,49,156,1780,156,331,2787,2790,
- 331,4186,1804,47,188,180,3333,56,2782,2804,
- 4340,2880,3588,203,215,4629,2590,202,212,213,
- 214,216,1033,169,3400,3014,537,3596,301,342,
- 3511,359,2788,168,332,186,167,170,171,172,
- 173,174,3546,87,228,2007,3121,3124,588,35,
- 293,156,724,588,35,1839,388,232,2763,2765,
- 180,3333,1972,2552,2804,2773,3612,56,203,215,
- 4629,2464,202,212,213,214,216,2774,169,3827,
- 253,230,231,2444,2791,56,173,434,168,964,
- 194,167,170,171,172,173,174,3121,35,1011,
- 32,201,2979,27,30,31,1029,1116,26,28,
- 912,25,23,50,1126,106,76,77,108,2792,
- 1235,2387,3121,35,1011,32,2793,2979,27,30,
- 31,1029,1116,26,28,912,25,23,50,1126,
- 106,76,77,108,2796,2411,3121,35,1011,32,
- 3948,2979,27,30,31,1029,1116,26,28,912,
- 25,23,50,1126,106,76,77,108,1761,2429,
- 3121,35,1011,32,2797,2979,27,30,31,1029,
- 1116,26,28,912,25,23,50,1126,106,76,
- 77,108,2866,2477,2062,35,3390,32,4697,3461,
- 27,30,31,1029,1116,338,28,2909,1691,35,
- 1011,32,4697,3461,27,30,31,1029,1116,338,
- 28,3121,35,1011,32,2552,2979,27,30,31,
- 1029,1116,26,28,912,25,23,50,1126,106,
- 76,77,85,588,35,1839,388,56,2447,2648,
- 1337,3475,2925,318,2091,320,5316,313,2002,5316,
- 5316,5316,5316,199,5316,5316,5316,318,2091,320,
- 1123,313,2002,5316,1614,5316,5316,433,5316,5316,
- 3121,1846,1011,1888,312,2979,27,30,31,1029,
- 1116,26,28,912,25,23,50,1126,106,76,
- 77,84,3121,35,1011,32,3502,2979,27,30,
- 31,1029,1116,26,28,912,25,23,50,1126,
- 106,76,77,83,588,35,1839,388,2552,5316,
- 306,309,1780,3121,35,1011,32,5316,2979,27,
- 30,31,1029,1116,26,28,912,25,23,50,
- 1126,106,76,77,82,5316,1614,5316,432,418,
- 419,3388,3121,35,1011,32,297,2979,27,30,
- 31,1029,1116,26,28,912,25,23,50,1126,
- 106,76,77,81,3121,35,1011,32,1412,2979,
- 27,30,31,1029,1116,26,28,912,25,23,
- 50,1126,106,76,77,80,3121,35,1011,32,
- 5316,2979,27,30,31,1029,1116,26,28,912,
- 25,23,50,1126,106,76,77,79,3121,35,
- 1011,32,5316,2979,27,30,31,1029,1116,26,
- 28,912,25,23,50,1126,106,76,77,78,
- 2950,35,1011,32,5316,2979,27,30,31,1029,
- 1116,26,28,912,25,23,50,1126,106,76,
- 77,104,3121,35,1011,32,5316,2979,27,30,
- 31,1029,1116,26,28,912,25,23,50,1126,
- 106,76,77,110,3121,35,1011,32,5316,2979,
- 27,30,31,1029,1116,26,28,912,25,23,
- 50,1126,106,76,77,109,3121,35,1011,32,
- 5316,2979,27,30,31,1029,1116,26,28,912,
- 25,23,50,1126,106,76,77,107,3121,35,
- 1011,32,5316,2979,27,30,31,1029,1116,26,
- 28,912,25,23,50,1126,106,76,77,105,
- 1562,1614,1614,1614,2880,2552,2552,5316,5316,1823,
- 1354,2552,5316,2880,1189,5316,1354,5316,5316,1910,
- 1189,5316,228,2880,5316,5316,5316,1607,737,5316,
- 5316,228,4499,1580,4191,3642,1785,5316,5316,160,
- 2880,228,5316,2089,222,160,205,215,4629,193,
- 204,212,213,214,216,205,215,4629,342,204,
- 212,213,214,216,5316,205,215,4629,5316,204,
- 212,213,214,216,5316,5316,3014,206,208,210,
- 3208,1041,217,207,209,331,206,208,210,3208,
- 3323,217,207,209,5316,5316,206,208,210,3208,
- 5316,217,207,209,5316,1713,2855,5316,5316,1354,
- 2880,2983,1594,1189,4515,3511,5316,737,5316,5316,
- 5316,1755,5316,4515,2034,329,334,5316,342,4499,
- 5316,1797,5316,4515,2156,35,1011,32,160,4507,
- 27,30,31,1029,1116,338,28,2156,35,1011,
- 32,3868,4507,27,30,31,1029,1116,338,28,
- 1691,35,1011,32,4697,3461,27,30,31,1029,
- 1116,338,28,3014,5316,3280,35,1839,388,3323,
- 741,5316,4304,3014,588,35,1839,388,238,5316,
- 5316,5316,332,318,2091,320,3014,316,2002,5316,
- 5316,5316,5316,5316,3106,332,318,2091,320,273,
- 314,2002,1624,5316,3509,334,5316,5316,49,318,
- 2091,320,5316,313,2002,5316,5316,1804,866,2717,
- 56,1997,1330,537,537,2880,3812,232,1490,35,
- 1011,32,2556,3461,27,30,31,1029,1116,338,
- 28,3867,342,228,5316,5316,5316,5316,156,156,
- 236,230,231,5316,5316,5316,96,180,3333,188,
- 5316,274,5316,5316,2804,4340,403,205,215,4629,
- 5316,204,212,213,214,216,5316,5316,375,5316,
- 243,246,249,252,1145,195,1649,315,3339,320,
- 2880,5316,1607,4181,5316,738,5316,4499,206,208,
- 210,3208,5316,520,207,209,5316,5316,228,588,
- 35,1839,388,5316,5316,5316,5316,929,35,1839,
- 388,3894,5316,5316,5316,1736,1354,5316,5316,2880,
- 1189,5316,205,215,4629,5316,204,212,213,214,
- 216,3014,5316,49,5316,2084,5316,228,5316,2880,
- 331,49,1804,566,5316,160,5316,5316,5316,5316,
- 1804,2972,5316,206,208,210,3208,228,519,207,
- 209,205,215,4629,3496,204,212,213,214,216,
- 3059,56,373,5316,2171,1189,2082,5316,2880,5316,
- 1354,205,215,4629,1189,204,212,213,214,216,
- 4769,196,206,208,210,3208,228,218,207,209,
- 156,1285,5316,5316,5316,2880,4834,5316,5316,160,
- 2577,3185,206,208,210,3208,5316,304,207,209,
- 205,215,4629,228,204,212,213,214,216,2236,
- 35,1011,32,2394,3461,27,30,31,1029,1116,
- 338,28,929,35,1839,388,5316,1270,407,4418,
- 5316,206,208,210,3208,1375,499,207,209,2880,
- 4499,5316,929,35,1839,388,929,35,1839,388,
- 5316,5316,5316,5316,5316,3412,49,2519,408,409,
- 410,3208,5316,56,5316,1804,47,1189,315,3339,
- 320,2151,35,1839,388,5316,49,1607,5316,2601,
- 49,3174,4499,56,3014,1804,47,1189,5316,1804,
- 47,56,156,331,5316,2880,5316,5316,5316,2856,
- 1330,5316,2740,3673,5316,49,5316,929,35,1839,
- 388,5316,156,342,1804,47,5316,5316,929,35,
- 1839,388,2806,3059,359,5316,3014,5316,3168,2164,
- 35,1839,388,5316,5316,331,724,5316,2007,3121,
- 3124,49,2804,5316,411,414,2306,5316,5316,2722,
- 1804,47,49,537,56,5316,375,5316,537,5316,
- 5316,1804,47,49,3863,4327,5316,2082,5316,5316,
- 5316,342,1804,47,5316,3944,342,5316,156,588,
- 35,1839,388,156,5316,56,3668,5316,188,2880,
- 5316,5316,5316,1228,4340,588,35,1839,388,724,
- 588,35,1839,388,56,5316,56,342,2880,1671,
- 2880,5316,5316,49,588,35,1839,388,5316,5316,
- 5316,5316,1804,2509,5316,5316,342,56,342,49,
- 724,1189,5316,56,49,5316,5316,1189,1804,794,
- 509,5316,5316,1804,986,5316,5316,5316,49,724,
- 190,724,5316,5316,5316,5316,156,1804,2813,507,
- 3402,534,156,5316,5316,5316,2014,5316,5316,5316,
- 5316,5316,4182,5316,5316,5316,5316,5316,5316,5316,
- 5316,5316,5316,5316,5316,5316,5316,5316,5316,5316,
- 5316,5316,5316,5316,5316,5316,5316,5316,5316,5316,
- 5316,5316,5316,5316,5316,5316,5316,5316,5316,5316,
- 5316,5316,5316,5316,5316,5316,5316,5316,5316,5316,
- 5316,5316,5316,5316,5316,5316,5316,5316,5316,4185,
- 5316,0,39,5331,0,39,5330,0,925,29,
- 0,440,1223,0,454,1498,0,38,595,0,
- 38,5331,0,38,5330,0,2741,126,0,1,
- 444,0,458,1706,0,457,1748,0,917,91,
- 0,925,387,0,35,33,0,32,34,0,
- 39,595,0,1,922,0,1,5588,0,1,
- 5587,0,1,5586,0,1,5585,0,1,5584,
- 0,1,5583,0,1,5582,0,1,5581,0,
- 1,5580,0,1,5579,0,1,5578,0,39,
- 1,5331,0,39,1,5330,0,628,1,0,
- 283,394,0,283,286,0,5550,241,0,5549,
- 241,0,5653,241,0,5652,241,0,5577,241,
- 0,5576,241,0,5575,241,0,5574,241,0,
- 5573,241,0,5572,241,0,5571,241,0,5570,
- 241,0,5588,241,0,5587,241,0,5586,241,
- 0,5585,241,0,5584,241,0,5583,241,0,
- 5582,241,0,5581,241,0,5580,241,0,5579,
- 241,0,5578,241,0,39,5331,241,0,39,
- 5330,241,0,5354,241,0,5331,48,0,5330,
- 48,0,5322,1,0,5321,1,0,3161,237,
- 0,32,388,0,29,387,0,43,5352,0,
- 43,37,0,2741,128,0,2741,127,0,330,
- 445,0,5354,1,0,39,1,0,47,37,
- 0,1,92,0,501,3207,0,5354,1,229,
- 0,39,1,229,0,229,416,0,5331,37,
- 0,5330,37,0,5331,2,37,0,5330,2,
- 37,0,5331,36,0,5330,36,0,5352,45,
- 0,37,45,0,5326,405,0,5325,405,0,
- 1,601,0,1,2810,0,1,595,0,229,
- 415,0,2826,317,0,330,95,0,35,73,
- 0,1,330,0,4196,278,0,501,4476,0,
- 1,229,0,229,220,0,1,2801,0,1,
- 3426,0,229,219,0,5328,1,0,5324,1,
- 0,1,229,3652,0,5325,229,0,3663,229,
- 0,5328,383,0,5327,383,0,3706,229,0,
- 10,12,0,8,10,12,0,185,3587,0,
- 3870,383,0,8,12,0
+ 176,4,137,82,82,33,33,68,68,39,
+ 39,43,43,202,1,1,16,16,16,16,
+ 16,16,16,17,17,17,15,11,11,6,
+ 6,6,6,6,6,2,66,66,5,5,
+ 12,12,45,45,138,138,139,58,58,44,
+ 18,18,18,18,18,18,18,18,18,18,
+ 18,18,18,18,18,18,18,18,18,18,
+ 140,140,140,114,114,19,19,19,19,19,
+ 19,19,19,19,19,19,19,19,20,20,
+ 177,177,178,178,179,143,143,144,144,141,
+ 141,145,142,142,21,21,22,22,24,24,
+ 24,25,25,25,25,26,26,26,27,27,
+ 27,28,28,28,28,28,29,29,29,31,
+ 31,32,32,34,34,36,36,37,37,38,
+ 38,42,42,41,41,41,41,41,41,41,
+ 41,41,41,41,41,41,40,30,146,146,
+ 96,96,180,180,91,203,203,69,69,69,
+ 69,69,69,69,69,69,70,70,70,67,
+ 67,57,57,181,181,71,71,71,102,102,
+ 182,182,72,72,72,72,183,183,73,73,
+ 73,73,73,74,74,83,83,83,83,83,
+ 83,83,83,51,51,51,51,51,115,115,
+ 113,113,52,184,23,23,23,23,23,49,
+ 49,86,86,86,86,86,153,153,148,148,
+ 148,148,148,149,149,149,150,150,150,151,
+ 151,151,152,152,152,87,87,87,87,87,
+ 88,88,88,13,14,14,14,14,14,14,
+ 14,14,14,14,14,97,119,119,119,119,
+ 119,119,117,117,117,154,155,155,118,118,
+ 185,157,157,156,156,121,121,103,80,80,
+ 122,54,48,158,158,55,53,85,85,159,
+ 159,147,147,123,124,124,125,77,77,160,
+ 160,64,64,64,61,61,60,65,65,76,
+ 76,59,59,59,50,89,89,99,98,98,
+ 63,63,62,62,56,56,46,100,100,100,
+ 92,92,92,93,93,94,94,94,95,95,
+ 104,104,104,106,106,105,105,204,204,90,
+ 90,187,187,187,187,187,127,47,47,162,
+ 186,186,128,128,129,129,129,130,164,188,
+ 188,35,35,116,131,131,131,131,190,108,
+ 107,107,120,120,120,165,166,166,166,166,
+ 166,166,166,166,166,166,166,192,192,189,
+ 189,191,191,167,168,168,168,168,169,193,
+ 110,109,109,194,194,170,170,170,170,101,
+ 101,101,195,195,8,8,9,196,196,197,
+ 171,161,161,172,172,173,174,174,7,7,
+ 10,198,198,198,198,198,198,198,198,198,
+ 198,198,198,198,198,198,198,198,198,198,
+ 198,198,198,198,198,198,198,198,198,198,
+ 198,198,198,198,198,198,198,198,198,198,
+ 198,198,198,78,81,81,175,175,133,133,
+ 134,134,134,134,134,134,3,135,135,132,
+ 132,111,111,84,79,75,75,163,163,112,
+ 112,199,199,199,136,136,126,126,200,200,
+ 176,176,1119,35,2498,2475,1791,2706,27,30,
+ 31,1065,1233,26,28,2456,263,25,23,50,
+ 1282,106,76,77,108,73,1291,1320,1310,1424,
+ 1377,1587,1777,1501,1716,71,1685,275,1775,1826,
+ 143,1592,1882,158,144,1631,2950,1892,35,1049,
+ 32,4458,4566,27,30,31,1065,1233,342,28,
+ 2450,587,4081,1280,2735,233,1869,35,1049,32,
+ 4782,4566,27,30,31,1065,1233,342,28,1547,
+ 354,666,3378,346,587,2115,2446,34,236,231,
+ 232,2275,1148,535,1504,35,1049,32,1330,276,
+ 41,30,31,1065,1233,1618,2799,322,2544,324,
+ 182,317,1948,587,35,3305,538,1631,243,246,
+ 249,252,1457,355,2898,1088,322,2544,324,743,
+ 317,1948,666,921,1857,1312,1476,3584,501,347,
+ 1776,1020,352,2898,327,35,281,1941,565,4803,
+ 3186,739,3127,3504,3523,4242,2320,35,1049,32,
+ 2735,1386,27,30,31,1065,1233,26,28,1039,
+ 263,25,23,50,1282,106,76,77,108,346,
+ 1291,1320,1310,1424,1377,1587,823,1501,1716,3442,
+ 1685,155,1775,1826,143,70,2744,521,144,1225,
+ 653,1330,2799,587,35,2446,3304,502,674,35,
+ 2113,392,522,2320,35,1049,32,2735,1386,27,
+ 30,31,1065,1233,26,28,1039,263,25,23,
+ 50,1282,106,76,77,108,346,1291,1320,1310,
+ 1424,1377,1587,49,1501,1716,71,1685,322,1775,
+ 1826,143,1998,3211,521,144,3109,291,1005,2799,
+ 3689,3442,233,327,35,281,2727,517,4807,522,
+ 1217,35,1049,32,2685,3195,27,30,31,1065,
+ 1233,57,28,2619,1446,245,231,232,3146,4790,
+ 1621,3188,1240,3594,2320,35,1049,32,2735,1386,
+ 27,30,31,1065,1233,26,28,1039,263,25,
+ 23,50,1282,106,76,77,108,346,1291,1320,
+ 1310,1424,1377,1587,517,1501,1716,1088,1685,408,
+ 1775,1826,143,1352,3205,521,144,587,35,284,
+ 2799,1446,155,2979,155,3194,4790,3458,3188,4171,
+ 522,2528,35,1049,32,2735,1386,27,30,31,
+ 1065,1233,26,28,1039,263,25,23,50,1282,
+ 106,76,77,108,346,1291,1320,1310,1424,1377,
+ 1587,1611,1501,1716,135,1685,1766,1775,1826,143,
+ 1603,3205,521,144,881,587,3584,2799,1618,3422,
+ 335,587,35,2113,392,517,2236,522,1356,464,
+ 61,1381,35,1049,32,1853,3195,27,30,31,
+ 1065,1233,56,28,1642,88,3229,94,102,3188,
+ 1322,4004,2663,35,1049,32,435,1386,27,30,
+ 31,1065,1233,26,28,1039,263,25,23,50,
+ 1282,106,76,77,108,2086,1291,1320,1310,1424,
+ 1377,1587,518,1501,1716,2619,1685,425,1775,1826,
+ 143,42,3264,382,144,3661,2389,35,1049,32,
+ 1456,1386,27,30,31,1065,1233,26,28,1039,
+ 263,25,23,50,1282,106,76,77,108,1377,
+ 1291,1320,1310,1424,1377,1587,1697,1501,1716,2229,
+ 1685,2125,1775,1826,143,824,292,382,144,3661,
+ 1906,2837,35,1049,32,2230,1386,27,30,31,
+ 1065,1233,26,28,1039,263,25,23,50,1282,
+ 106,76,77,108,4138,1291,1320,1310,1424,1377,
+ 1587,60,1501,1716,1611,1685,356,1775,3232,164,
+ 389,383,1802,2447,3127,35,1049,32,4641,1386,
+ 27,30,31,1065,1233,26,28,1039,263,25,
+ 23,50,1282,106,76,77,108,447,1291,1320,
+ 1310,1424,1377,1587,315,1501,1716,582,1685,69,
+ 1775,3232,164,330,390,383,1802,89,1611,49,
+ 102,4139,1689,1200,2762,752,2595,35,1049,32,
+ 4107,1386,27,30,31,1065,1233,26,28,1039,
+ 263,25,23,50,1282,106,76,77,108,156,
+ 1291,1320,1310,1424,1377,1587,359,1501,1716,1426,
+ 1685,2029,1775,1826,143,2972,536,382,144,3661,
+ 2892,35,1049,32,3105,1386,27,30,31,1065,
+ 1233,26,28,1039,263,25,23,50,1282,106,
+ 76,77,108,393,1291,1320,1310,1424,1377,1587,
+ 93,1501,1716,2246,1685,2075,1775,1826,143,4431,
+ 2315,158,144,3127,35,1049,32,1943,1386,27,
+ 30,31,1065,1233,26,28,1039,263,25,23,
+ 50,1282,106,76,77,108,527,1291,1320,1310,
+ 1424,1377,1587,434,1501,1716,56,1685,3515,1775,
+ 3232,164,2249,1088,380,383,1802,2892,35,1049,
+ 32,413,1386,27,30,31,1065,1233,26,28,
+ 1039,263,25,23,50,1282,106,76,77,108,
+ 1449,1291,1320,1310,1424,1377,1587,3130,1501,1716,
+ 64,1685,2038,1775,1826,143,3378,4790,376,144,
+ 1718,35,1049,32,427,56,40,30,31,1065,
+ 1233,1906,2892,35,1049,32,565,1386,27,30,
+ 31,1065,1233,26,28,1039,263,25,23,50,
+ 1282,106,76,77,108,463,1291,1320,1310,1424,
+ 1377,1587,3205,1501,1716,1800,1685,2288,1775,1826,
+ 143,336,1088,376,144,332,2156,35,2113,392,
+ 2437,2892,35,1049,32,2323,1386,27,30,31,
+ 1065,1233,26,28,1039,263,25,23,50,1282,
+ 106,76,77,108,375,1291,1320,1310,1424,1377,
+ 1587,49,1501,1716,330,1685,1088,1775,1826,143,
+ 1998,675,376,144,2461,35,1049,32,3543,1386,
+ 27,30,31,1065,1233,26,28,1039,263,25,
+ 23,50,1282,106,76,77,108,1229,1291,1320,
+ 1310,1424,1377,1587,4027,1501,1716,358,1685,374,
+ 1775,1826,143,331,338,142,144,536,2892,35,
+ 1049,32,1611,1386,27,30,31,1065,1233,26,
+ 28,1039,263,25,23,50,1282,106,76,77,
+ 108,494,1291,1320,1310,1424,1377,1587,51,1501,
+ 1716,1611,1685,49,1775,1826,143,696,372,159,
+ 144,2892,35,1049,32,3266,1386,27,30,31,
+ 1065,1233,26,28,1039,263,25,23,50,1282,
+ 106,76,77,108,56,1291,1320,1310,1424,1377,
+ 1587,1511,1501,1716,582,1685,49,1775,1826,143,
+ 753,451,155,144,2892,35,1049,32,379,1386,
+ 27,30,31,1065,1233,26,28,1039,263,25,
+ 23,50,1282,106,76,77,108,1243,1291,1320,
+ 1310,1424,1377,1587,1900,1501,1716,1611,1685,49,
+ 1775,1826,143,834,1618,154,144,2892,35,1049,
+ 32,882,1386,27,30,31,1065,1233,26,28,
+ 1039,263,25,23,50,1282,106,76,77,108,
+ 56,1291,1320,1310,1424,1377,1587,24,1501,1716,
+ 582,1685,49,1775,1826,143,4549,3223,153,144,
+ 2892,35,1049,32,379,1386,27,30,31,1065,
+ 1233,26,28,1039,263,25,23,50,1282,106,
+ 76,77,108,377,1291,1320,1310,1424,1377,1587,
+ 3241,1501,1716,1906,1685,400,1775,1826,143,1088,
+ 1618,152,144,2892,35,1049,32,1611,1386,27,
+ 30,31,1065,1233,26,28,1039,263,25,23,
+ 50,1282,106,76,77,108,1409,1291,1320,1310,
+ 1424,1377,1587,69,1501,1716,1611,1685,49,1775,
+ 1826,143,3010,1618,151,144,2892,35,1049,32,
+ 3406,1386,27,30,31,1065,1233,26,28,1039,
+ 263,25,23,50,1282,106,76,77,108,3589,
+ 1291,1320,1310,1424,1377,1587,68,1501,1716,582,
+ 1685,329,1775,1826,143,1105,1877,150,144,2892,
+ 35,1049,32,530,1386,27,30,31,1065,1233,
+ 26,28,1039,263,25,23,50,1282,106,76,
+ 77,108,1611,1291,1320,1310,1424,1377,1587,326,
+ 1501,1716,1611,1685,49,1775,1826,143,585,536,
+ 149,144,2892,35,1049,32,1620,1386,27,30,
+ 31,1065,1233,26,28,1039,263,25,23,50,
+ 1282,106,76,77,108,4181,1291,1320,1310,1424,
+ 1377,1587,357,1501,1716,582,1685,49,1775,1826,
+ 143,676,1618,148,144,2892,35,1049,32,529,
+ 1386,27,30,31,1065,1233,26,28,1039,263,
+ 25,23,50,1282,106,76,77,108,416,1291,
+ 1320,1310,1424,1377,1587,53,1501,1716,1618,1685,
+ 49,1775,1826,143,1375,1618,147,144,2892,35,
+ 1049,32,1706,1386,27,30,31,1065,1233,26,
+ 28,1039,263,25,23,50,1282,106,76,77,
+ 108,87,1291,1320,1310,1424,1377,1587,52,1501,
+ 1716,1618,1685,49,1775,1826,143,2876,1988,146,
+ 144,2892,35,1049,32,1447,1386,27,30,31,
+ 1065,1233,26,28,1039,263,25,23,50,1282,
+ 106,76,77,108,353,1291,1320,1310,1424,1377,
+ 1587,2437,1501,1716,1618,1685,49,1775,1826,143,
+ 2994,2762,145,144,2892,35,1049,32,1174,1386,
+ 27,30,31,1065,1233,26,28,1039,263,25,
+ 23,50,1282,106,76,77,108,90,1291,1320,
+ 1310,1424,1377,1587,327,1501,1716,1618,1685,49,
+ 1775,1826,143,2856,1618,140,144,3011,35,1049,
+ 32,2448,1386,27,30,31,1065,1233,26,28,
+ 1039,263,25,23,50,1282,106,76,77,108,
+ 2072,1291,1320,1310,1424,1377,1587,2287,1501,1716,
+ 2236,1685,49,1775,1826,143,3448,1618,189,144,
+ 3127,35,1049,32,1088,1386,27,30,31,1065,
+ 1233,26,28,1039,263,25,23,50,1282,106,
+ 76,77,108,527,1291,1320,1310,1424,1377,1587,
+ 67,1501,1716,2563,1685,1324,1775,3232,164,3127,
+ 35,1049,32,1445,1386,27,30,31,1065,1233,
+ 26,28,1039,263,25,23,50,1282,106,76,
+ 77,108,1597,1291,1320,1310,1424,1377,1587,1986,
+ 1501,1716,451,1685,3254,1775,3232,164,587,35,
+ 2551,2289,587,35,2113,392,97,3127,35,1049,
+ 32,296,1386,27,30,31,1065,1233,26,28,
+ 1039,263,25,23,50,1282,106,76,77,108,
+ 2556,1291,1320,1310,1424,1377,1587,456,1501,1716,
+ 1795,1685,160,1775,3232,164,3182,35,1049,32,
+ 426,1386,27,30,31,1065,1233,26,28,1039,
+ 263,25,23,50,1282,106,76,77,108,406,
+ 1291,1320,1310,1424,1377,1587,155,1501,1716,410,
+ 1685,4587,1775,3232,164,587,35,2446,278,587,
+ 35,2113,392,246,3127,35,1049,32,429,1386,
+ 27,30,31,1065,1233,26,28,1039,263,25,
+ 23,50,1282,106,76,77,108,1795,1291,1320,
+ 1310,1424,1377,1587,438,1501,1716,49,1685,69,
+ 3032,657,1864,3127,35,1049,32,4145,1386,27,
+ 30,31,1065,1233,26,28,1039,263,25,23,
+ 50,1282,106,76,77,108,302,1291,1320,1310,
+ 1424,1377,1587,752,1501,1716,590,3006,3127,35,
+ 1049,32,1618,1386,27,30,31,1065,1233,26,
+ 28,1039,263,25,23,50,1282,106,76,77,
+ 108,1618,1291,1320,1310,1424,1377,1587,1330,1501,
+ 2974,3127,35,1049,32,66,1386,27,30,31,
+ 1065,1233,26,28,1039,263,25,23,50,1282,
+ 106,76,77,108,65,1291,1320,1310,1424,1377,
+ 1587,288,2975,3127,35,1049,32,2991,1386,27,
+ 30,31,1065,1233,26,28,1039,263,25,23,
+ 50,1282,106,76,77,108,1951,1291,1320,1310,
+ 1424,1377,2889,3127,35,1049,32,848,1386,27,
+ 30,31,1065,1233,26,28,1039,263,25,23,
+ 50,1282,106,76,77,108,2687,1291,1320,1310,
+ 1424,2895,3127,35,1049,32,1878,1386,27,30,
+ 31,1065,1233,26,28,1039,263,25,23,50,
+ 1282,106,76,77,108,3327,1291,1320,1310,1424,
+ 2923,1522,35,1049,32,4782,4637,27,30,31,
+ 1065,1233,342,28,3127,35,1049,32,1457,1386,
+ 27,30,31,1065,1233,26,28,1039,263,25,
+ 23,50,1282,106,76,77,108,442,1291,1320,
+ 1310,2801,49,2375,35,279,1200,1785,35,1049,
+ 32,3205,4814,27,30,31,1065,1233,59,28,
+ 335,322,2544,324,1964,317,1948,1718,35,1049,
+ 32,2694,156,2200,30,31,1065,1233,316,327,
+ 35,457,3016,408,4652,1618,3127,35,1049,32,
+ 2808,1386,27,30,31,1065,1233,26,28,1039,
+ 263,25,23,50,1282,106,76,77,108,2968,
+ 1291,1320,1310,2804,1101,35,2446,278,64,587,
+ 35,2113,392,580,309,313,948,2347,35,1049,
+ 32,3559,4814,27,30,31,1065,1233,26,28,
+ 328,1336,515,1718,35,1049,32,1015,2726,2277,
+ 30,31,1065,1233,437,1618,3127,35,1049,32,
+ 3824,1386,27,30,31,1065,1233,26,28,1039,
+ 263,25,23,50,1282,106,76,77,108,3046,
+ 1291,1320,1310,2812,3127,35,1049,32,3189,1386,
+ 27,30,31,1065,1233,26,28,1039,263,25,
+ 23,50,1282,106,76,77,108,1330,1291,1320,
+ 1310,2861,2067,35,1049,32,4326,4566,27,30,
+ 31,1065,1233,342,28,241,2216,35,2113,392,
+ 2453,35,282,1401,35,3647,32,4782,4637,27,
+ 30,31,1065,1233,342,28,1795,587,35,2113,
+ 392,450,3772,3778,1312,3237,35,2113,392,2444,
+ 748,49,587,4222,587,35,2113,392,238,263,
+ 1998,2292,322,2544,324,1234,317,1948,1618,2411,
+ 35,279,275,3205,2727,222,1378,2560,355,3436,
+ 275,1200,335,322,2544,324,4389,317,1948,49,
+ 587,3454,2446,74,347,1776,1020,352,1998,603,
+ 814,55,3426,1101,35,2446,3456,156,233,2151,
+ 2547,846,2808,3507,932,3422,201,4130,1956,35,
+ 1049,32,1311,4637,27,30,31,1065,1233,342,
+ 28,236,231,232,277,4155,2315,1618,3127,35,
+ 1049,32,276,1386,27,30,31,1065,1233,26,
+ 28,1039,263,25,23,50,1282,106,76,77,
+ 85,243,246,249,252,1457,1476,3584,3205,884,
+ 54,1548,757,35,2113,392,921,336,322,2544,
+ 324,1591,320,1948,1679,355,2425,44,3264,369,
+ 421,423,3625,3186,739,3127,3504,3523,4242,1278,
+ 631,347,1776,1020,352,2562,653,275,1618,345,
+ 3127,35,1049,32,2190,1386,27,30,31,1065,
+ 1233,26,28,1039,263,25,23,50,1282,106,
+ 76,77,108,2643,1291,1320,2871,3127,35,1049,
+ 32,325,1386,27,30,31,1065,1233,26,28,
+ 1039,263,25,23,50,1282,106,76,77,108,
+ 259,1291,1320,2874,542,1785,35,1049,32,3349,
+ 4814,27,30,31,1065,1233,58,28,587,35,
+ 2446,280,1088,229,1707,2139,72,291,49,2241,
+ 156,3044,1200,2576,4790,394,431,1390,1,180,
+ 3404,49,542,582,2425,3009,49,204,216,4533,
+ 1200,203,213,214,215,217,486,169,1984,2425,
+ 1879,229,2826,3594,2735,2488,2066,168,156,183,
+ 167,170,171,172,173,174,4100,180,3404,3205,
+ 1879,582,1127,2692,2735,204,216,4533,2979,203,
+ 213,214,215,217,752,169,49,843,35,457,
+ 3271,2132,4652,2692,98,168,181,184,167,170,
+ 171,172,173,174,2077,35,1049,32,4326,4566,
+ 27,30,31,1065,1233,342,28,3127,35,1049,
+ 32,1330,1386,27,30,31,1065,1233,26,28,
+ 1039,263,25,23,50,1282,106,76,77,108,
+ 363,1291,2563,395,431,2631,1244,35,297,2050,
+ 4659,2225,289,2735,2635,3328,3347,49,397,431,
+ 363,3030,96,2235,322,2544,324,1240,317,1948,
+ 2770,2988,346,2350,3368,3328,3347,1016,35,400,
+ 355,531,1364,35,1049,32,1267,4637,27,30,
+ 31,1065,1233,342,28,1051,347,1776,1020,352,
+ 3127,35,1049,32,532,1386,27,30,31,1065,
+ 1233,26,28,1039,263,25,23,50,1282,106,
+ 76,77,108,1618,1291,2603,3353,49,761,49,
+ 233,542,3205,3561,1726,929,35,2113,392,240,
+ 263,336,322,2544,324,1226,318,1948,345,924,
+ 346,2085,542,248,231,232,101,156,355,454,
+ 3772,3778,752,1016,35,3312,2041,1604,1482,2310,
+ 49,229,2280,2799,349,1776,1020,352,156,1998,
+ 2621,49,528,938,3847,4205,431,180,3404,233,
+ 542,582,1795,2862,2783,204,216,4533,49,203,
+ 213,214,215,217,2416,169,49,1998,2158,229,
+ 4099,2425,241,231,232,168,156,4203,167,170,
+ 171,172,173,174,517,180,3404,1814,542,582,
+ 299,306,49,204,216,4533,3510,203,213,214,
+ 215,217,2719,169,2419,2517,2735,229,587,35,
+ 2113,392,2289,168,156,178,167,170,171,172,
+ 173,174,603,180,3404,346,542,582,2226,155,
+ 1139,204,216,4533,4667,203,213,214,215,217,
+ 49,169,49,275,1981,229,1200,2143,930,2491,
+ 752,168,156,176,167,170,171,172,173,174,
+ 689,180,3404,49,542,582,528,1060,1618,204,
+ 216,4533,156,203,213,214,215,217,2519,169,
+ 396,431,2077,229,2155,2692,1244,3703,297,168,
+ 156,177,167,170,171,172,173,174,775,180,
+ 3404,3509,542,582,1795,343,49,204,216,4533,
+ 4113,203,213,214,215,217,2778,169,298,2153,
+ 2735,229,587,35,2113,392,2522,168,156,187,
+ 167,170,171,172,173,174,2557,180,3404,346,
+ 2328,582,2496,179,2735,204,216,4533,1800,203,
+ 213,214,215,217,2695,169,2586,49,929,35,
+ 2113,392,4248,2692,1618,168,46,4319,167,170,
+ 171,172,173,174,1695,35,1049,32,4782,4566,
+ 27,30,31,1065,1233,342,28,2421,2555,924,
+ 49,4320,2253,49,1341,2651,1200,3252,446,2735,
+ 460,861,1998,47,1610,542,1795,1446,1482,49,
+ 2651,3543,4790,4493,2735,49,2710,49,2692,4186,
+ 354,4753,156,1784,229,587,35,2113,392,2697,
+ 364,156,540,2692,322,2544,324,155,317,1948,
+ 180,3404,4688,1800,582,199,3363,338,204,216,
+ 4533,316,203,213,214,215,217,3205,169,155,
+ 436,1800,1795,355,4705,947,335,233,168,542,
+ 192,167,170,171,172,173,174,2626,155,347,
+ 1776,1020,352,4726,2584,509,233,1941,229,49,
+ 251,231,232,1154,2591,156,4524,309,313,948,
+ 509,198,2690,2001,180,3404,3543,2735,582,254,
+ 231,232,204,216,4533,4341,203,213,214,215,
+ 217,4210,169,1033,3543,2703,229,542,507,508,
+ 1795,1618,168,3824,186,167,170,171,172,173,
+ 174,337,338,506,508,49,229,1738,2585,1683,
+ 206,216,4533,156,205,213,214,215,217,3490,
+ 338,49,180,3404,455,4063,582,2743,546,305,
+ 204,216,4533,2658,203,213,214,215,217,752,
+ 169,207,209,211,3419,3728,524,208,210,1979,
+ 168,2720,195,167,170,171,172,173,174,3127,
+ 35,1049,32,2732,1386,27,30,31,1065,1233,
+ 26,28,1039,263,25,23,50,1282,106,76,
+ 77,108,534,2627,3127,35,1049,32,1713,1386,
+ 27,30,31,1065,1233,26,28,1039,263,25,
+ 23,50,1282,106,76,77,108,307,2755,3127,
+ 35,1049,32,2718,1386,27,30,31,1065,1233,
+ 26,28,1039,263,25,23,50,1282,106,76,
+ 77,108,2741,2766,3127,2115,1049,2123,2751,1386,
+ 27,30,31,1065,1233,26,28,1039,263,25,
+ 23,50,1282,106,76,77,84,3127,35,1049,
+ 32,2758,1386,27,30,31,1065,1233,26,28,
+ 1039,263,25,23,50,1282,106,76,77,83,
+ 3127,35,1049,32,2753,1386,27,30,31,1065,
+ 1233,26,28,1039,263,25,23,50,1282,106,
+ 76,77,82,3127,35,1049,32,2733,1386,27,
+ 30,31,1065,1233,26,28,1039,263,25,23,
+ 50,1282,106,76,77,81,3127,35,1049,32,
+ 2739,1386,27,30,31,1065,1233,26,28,1039,
+ 263,25,23,50,1282,106,76,77,80,3127,
+ 35,1049,32,2793,1386,27,30,31,1065,1233,
+ 26,28,1039,263,25,23,50,1282,106,76,
+ 77,79,3127,35,1049,32,2794,1386,27,30,
+ 31,1065,1233,26,28,1039,263,25,23,50,
+ 1282,106,76,77,78,2956,35,1049,32,87,
+ 1386,27,30,31,1065,1233,26,28,1039,263,
+ 25,23,50,1282,106,76,77,104,3127,35,
+ 1049,32,2763,1386,27,30,31,1065,1233,26,
+ 28,1039,263,25,23,50,1282,106,76,77,
+ 110,3127,35,1049,32,2764,1386,27,30,31,
+ 1065,1233,26,28,1039,263,25,23,50,1282,
+ 106,76,77,109,3127,35,1049,32,2765,1386,
+ 27,30,31,1065,1233,26,28,1039,263,25,
+ 23,50,1282,106,76,77,107,3127,35,1049,
+ 32,150,1386,27,30,31,1065,1233,26,28,
+ 1039,263,25,23,50,1282,106,76,77,105,
+ 1992,35,3647,32,4782,4566,27,30,31,1065,
+ 1233,342,28,752,1869,35,1049,32,4782,4566,
+ 27,30,31,1065,1233,342,28,3072,35,1049,
+ 32,1795,1386,27,30,31,1065,1233,26,28,
+ 1039,263,25,23,50,1282,86,76,77,1566,
+ 1618,2769,49,2735,1355,1355,1200,2240,1200,1200,
+ 322,2544,324,1827,317,1948,1977,2735,2776,49,
+ 202,173,229,1200,322,2544,324,814,317,1948,
+ 1795,386,156,381,160,160,229,1795,150,2771,
+ 1355,316,2332,1991,1200,2795,206,216,4533,156,
+ 205,213,214,215,217,587,35,2446,3602,2351,
+ 206,216,4533,1795,205,213,214,215,217,200,
+ 160,674,35,2113,392,4031,301,207,209,211,
+ 3419,49,218,208,210,972,1914,310,313,948,
+ 2735,207,209,211,3419,385,218,208,210,1618,
+ 1862,1905,4893,2796,49,1800,49,49,2735,229,
+ 1795,2735,3222,1618,4365,1998,47,422,423,3625,
+ 49,49,2790,1795,3474,1200,3350,346,4365,877,
+ 346,2417,3360,206,216,4533,2758,205,213,214,
+ 215,217,3286,35,2113,392,3398,748,2485,223,
+ 2799,156,3064,2799,2777,239,263,1016,35,400,
+ 2202,2565,193,2253,207,209,211,3419,3543,218,
+ 208,210,2799,1956,35,1049,32,275,4637,27,
+ 30,31,1065,1233,342,28,1869,35,1049,32,
+ 4782,4566,27,30,31,1065,1233,342,28,3679,
+ 2800,4365,384,333,338,233,1494,35,1049,32,
+ 2713,4566,27,30,31,1065,1233,342,28,2798,
+ 1901,1618,1618,3205,2735,4790,1446,1990,237,231,
+ 232,4790,336,322,2544,324,5443,318,1948,276,
+ 5443,1618,1618,2692,5443,407,322,2544,324,1653,
+ 317,1948,2447,2735,3501,1726,5443,4641,244,247,
+ 250,253,1457,4272,3870,1740,319,3577,324,2735,
+ 3205,5443,229,921,1812,4223,3205,1355,1355,335,
+ 5443,1200,1200,5443,5443,335,5443,5443,229,587,
+ 35,2446,283,5443,5443,5443,206,216,4533,5443,
+ 205,213,214,215,217,1618,5443,160,160,4524,
+ 363,5443,206,216,4533,3142,205,213,214,215,
+ 217,5443,5443,5443,2027,3328,3347,207,209,211,
+ 3419,2088,523,208,210,2735,5443,2560,3623,5443,
+ 5443,542,5443,207,209,211,3419,2175,219,208,
+ 210,2735,5443,3105,229,5443,5443,49,1901,5443,
+ 4220,1200,2735,4790,5443,5443,2983,156,5443,5443,
+ 229,5443,5443,2827,3183,5443,180,3404,206,216,
+ 4533,2692,205,213,214,215,217,156,1355,5443,
+ 5443,5443,1200,1800,206,216,4533,2084,205,213,
+ 214,215,217,5443,196,587,35,297,3205,207,
+ 209,211,3419,5443,308,208,210,335,160,1016,
+ 35,400,433,5443,1980,207,209,211,3419,4790,
+ 503,208,210,2160,35,1049,32,2481,4566,27,
+ 30,31,1065,1233,342,28,3673,3142,363,1180,
+ 5443,5443,5443,2735,4818,1286,3543,5443,5443,2735,
+ 4818,5443,2027,3328,3347,5443,674,35,2113,392,
+ 5443,5443,229,5443,3205,587,35,297,229,5443,
+ 5443,5443,5443,336,3631,5443,5443,929,35,2113,
+ 392,3645,338,319,3577,324,830,411,4306,5443,
+ 355,49,830,411,4306,5443,5443,5443,3630,5443,
+ 1998,3015,5443,5443,5443,5443,349,1776,1020,352,
+ 4735,197,49,5443,3308,5443,4300,412,413,414,
+ 3419,1998,47,412,413,414,3419,674,35,2113,
+ 392,674,35,2113,392,2623,5443,5443,5443,5443,
+ 3384,5443,674,35,2113,392,3384,5443,5443,674,
+ 35,2113,392,5443,5443,5443,5443,1649,35,2113,
+ 392,5443,49,5443,5443,5443,49,5443,4137,49,
+ 5443,1998,572,1200,5443,1998,47,49,674,35,
+ 2113,392,5443,2983,49,3308,1998,47,5443,941,
+ 5443,5443,49,1998,47,674,35,2113,392,156,
+ 2162,1998,47,5443,415,417,5443,2249,5443,4342,
+ 415,418,5443,49,5443,4505,2168,35,2113,392,
+ 5443,5443,1998,47,5443,2721,5443,5443,1155,542,
+ 49,4555,5443,49,5443,5443,2599,542,5443,1998,
+ 47,5443,5443,2686,5443,49,49,2735,346,542,
+ 2735,49,5443,3525,5443,156,346,5443,5443,5443,
+ 1998,47,5443,156,5443,188,2692,5443,346,346,
+ 5443,4286,1446,1733,4575,156,5443,4790,5443,2799,
+ 587,35,2113,392,5443,1604,5443,5443,5443,1690,
+ 5443,2799,2799,587,35,2113,392,587,35,2113,
+ 392,1898,2326,5443,587,35,2113,392,587,35,
+ 2113,392,49,5443,5443,49,2735,49,5443,5443,
+ 5443,542,3205,5443,1998,1276,5443,190,49,5443,
+ 5443,335,49,509,5443,346,5443,1998,2523,49,
+ 346,1998,2759,49,5443,5443,5443,156,1998,675,
+ 49,49,1998,2734,542,542,49,188,2799,5443,
+ 2735,4273,5443,4286,5443,49,5443,5443,2427,2735,
+ 5443,49,5443,346,346,2735,506,508,49,346,
+ 156,156,2735,2516,5443,5443,5443,1200,346,5443,
+ 188,188,5443,5443,346,5443,4286,4286,5443,5443,
+ 5443,346,2799,5443,5443,5443,5443,4163,5443,5443,
+ 5443,2799,2034,156,5443,5443,5443,2799,4116,4199,
+ 5443,513,5443,162,2799,5443,5443,511,5443,5443,
+ 5443,5443,5443,5443,539,5443,5443,5443,5443,5443,
+ 5443,5443,5443,5443,5443,5443,5443,5443,5443,5443,
+ 5443,5443,4213,4321,5443,5443,5443,5443,5443,5443,
+ 5443,5443,5443,5443,5443,5443,5443,5443,5443,5443,
+ 5443,5443,5443,5443,5443,5443,5443,5443,5443,5443,
+ 5443,5443,5443,5443,5443,5443,5443,5443,5443,5443,
+ 5443,5443,5443,5443,5443,5443,5443,5443,5443,5443,
+ 5443,5443,5443,5443,5443,5443,5443,5443,5443,5443,
+ 5443,5443,5443,5443,5443,5443,5443,5443,5443,5443,
+ 5443,5443,5443,5443,5443,5443,5443,5443,5443,5443,
+ 5443,5443,5443,5443,5443,5443,5443,5443,5443,5443,
+ 5443,5443,5443,5443,5443,5443,5443,5443,5443,5443,
+ 5443,5443,5443,5443,5443,5443,5443,5443,5443,5443,
+ 5443,5443,5443,4405,5443,0,39,5458,0,39,
+ 5457,0,1513,29,0,444,1556,0,458,1599,
+ 0,38,624,0,38,5458,0,38,5457,0,
+ 2636,126,0,1,448,0,462,867,0,461,
+ 1283,0,2978,91,0,1513,391,0,35,33,
+ 0,32,34,0,39,624,0,1,731,0,
+ 1,5717,0,1,5716,0,1,5715,0,1,
+ 5714,0,1,5713,0,1,5712,0,1,5711,
+ 0,1,5710,0,1,5709,0,1,5708,0,
+ 1,5707,0,39,1,5458,0,39,1,5457,
+ 0,634,1,0,285,398,0,285,290,0,
+ 5678,242,0,5677,242,0,5784,242,0,5783,
+ 242,0,5705,242,0,5704,242,0,5703,242,
+ 0,5702,242,0,5701,242,0,5700,242,0,
+ 5699,242,0,5698,242,0,5717,242,0,5716,
+ 242,0,5715,242,0,5714,242,0,5713,242,
+ 0,5712,242,0,5711,242,0,5710,242,0,
+ 5709,242,0,5708,242,0,5707,242,0,39,
+ 5458,242,0,39,5457,242,0,5481,242,0,
+ 5458,48,0,5457,48,0,5449,1,0,5448,
+ 1,0,4104,238,0,32,392,0,29,391,
+ 0,43,5479,0,43,37,0,2636,128,0,
+ 2636,127,0,334,449,0,5481,1,0,39,
+ 1,0,47,37,0,1,92,0,505,3385,
+ 0,5481,1,230,0,39,1,230,0,230,
+ 420,0,5458,37,0,5457,37,0,5458,2,
+ 37,0,5457,2,37,0,5458,36,0,5457,
+ 36,0,5479,45,0,37,45,0,5453,409,
+ 0,5452,409,0,1,606,0,1,3302,0,
+ 1,624,0,230,419,0,3117,321,0,334,
+ 95,0,35,73,0,1,334,0,4140,280,
+ 0,505,4349,0,1,230,0,230,221,0,
+ 1,3137,0,1,4257,0,230,220,0,5455,
+ 1,0,5451,1,0,1,230,3916,0,5452,
+ 230,0,3939,230,0,5455,387,0,5454,387,
+ 0,4121,230,0,10,12,0,8,10,12,
+ 0,4254,194,0,185,3565,0,4327,387,0,
+ 8,12,0
};
};
public final static char baseAction[] = BaseAction.baseAction;
@@ -1089,15 +1115,15 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
40,41,42,43,44,45,46,47,0,49,
50,51,52,53,54,0,56,57,58,59,
60,61,62,0,64,65,66,67,0,6,
- 0,71,4,3,74,75,76,77,78,79,
+ 0,71,0,3,74,75,76,77,78,79,
80,81,82,83,84,85,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,0,49,50,51,52,53,
- 54,0,56,57,58,59,60,61,62,101,
- 64,65,66,67,106,92,93,71,0,0,
+ 54,69,56,57,58,59,60,61,62,0,
+ 64,65,66,67,0,92,93,71,4,0,
74,75,76,77,78,79,80,81,82,83,
84,85,0,1,2,3,4,5,6,7,
8,9,10,11,12,13,14,15,16,17,
@@ -1106,30 +1132,30 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
38,39,40,41,42,43,44,45,46,47,
0,49,50,51,52,53,54,68,56,57,
58,59,60,61,62,0,64,65,66,67,
- 0,1,2,71,4,10,74,75,76,77,
+ 0,1,2,71,4,0,74,75,76,77,
78,79,80,81,82,83,84,85,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,0,49,50,51,
- 52,53,54,0,56,57,58,59,60,61,
- 62,0,64,65,66,67,0,1,2,8,
- 4,0,74,75,76,77,78,79,80,81,
+ 52,53,54,68,56,57,58,59,60,61,
+ 62,0,64,65,66,67,0,1,2,0,
+ 4,10,74,75,76,77,78,79,80,81,
82,83,84,85,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,71,49,50,51,52,53,54,0,
+ 46,47,0,49,50,51,52,53,54,0,
56,57,58,59,60,61,62,0,64,65,
- 66,67,0,6,0,102,103,104,74,75,
+ 66,67,0,6,0,0,87,88,74,75,
76,77,78,79,80,81,82,83,84,85,
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,0,49,
+ 40,41,42,43,44,45,46,47,63,49,
50,51,52,53,54,0,56,57,58,59,
60,61,62,0,64,65,66,67,99,92,
93,89,9,91,74,75,76,77,78,79,
@@ -1140,42 +1166,42 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
34,35,36,37,38,39,40,41,42,43,
44,45,46,47,0,49,50,51,52,53,
54,0,56,57,58,59,60,61,62,0,
- 64,65,66,67,99,6,0,0,1,2,
+ 64,65,66,67,99,6,0,1,2,0,
74,75,76,77,78,79,80,81,82,83,
84,85,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,
- 0,49,50,51,52,53,54,0,56,57,
+ 0,49,50,51,52,53,54,68,56,57,
58,59,60,61,62,0,64,65,66,67,
- 5,92,93,87,88,0,74,75,76,77,
+ 5,92,93,0,1,2,74,75,76,77,
78,79,80,81,82,83,84,85,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,0,49,50,51,
- 52,53,54,68,56,57,58,59,60,61,
- 62,0,64,65,66,67,0,1,2,23,
- 24,5,74,75,76,77,78,79,80,81,
+ 52,53,54,0,56,57,58,59,60,61,
+ 62,0,64,65,66,67,0,1,2,8,
+ 0,5,74,75,76,77,78,79,80,81,
82,83,84,85,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,0,49,50,51,52,53,54,0,
+ 46,47,71,49,50,51,52,53,54,69,
56,57,58,59,60,61,62,0,64,65,
- 66,67,0,1,2,8,4,0,74,75,
+ 66,67,0,1,2,0,4,0,74,75,
76,77,78,79,80,81,82,83,84,85,
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,71,49,
+ 40,41,42,43,44,45,46,47,0,49,
50,51,52,53,54,68,56,57,58,59,
60,61,62,0,64,65,66,67,0,1,
- 2,0,1,2,74,75,76,77,78,79,
+ 2,0,87,88,74,75,76,77,78,79,
80,81,82,83,84,85,0,1,2,3,
4,5,6,7,8,9,10,11,12,13,
14,15,16,17,18,19,20,21,22,23,
@@ -1183,7 +1209,7 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
34,35,36,37,38,39,40,41,42,43,
44,45,46,47,0,49,50,51,52,53,
54,0,56,57,58,59,60,61,62,0,
- 64,65,66,67,0,0,0,8,3,3,
+ 64,65,66,67,0,0,1,2,87,88,
74,75,76,77,78,79,80,81,82,83,
84,85,0,1,2,3,4,5,6,7,
8,9,10,11,12,13,14,15,16,17,
@@ -1191,10 +1217,10 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
28,29,30,31,32,33,34,35,36,37,
38,39,40,41,42,43,44,45,46,47,
0,49,50,51,52,53,54,0,56,57,
- 58,59,60,61,62,0,64,65,66,67,
- 0,6,0,89,9,91,74,75,76,77,
+ 58,59,60,61,62,8,64,65,66,67,
+ 0,1,2,89,0,91,74,75,76,77,
78,79,80,81,82,83,84,85,0,1,
- 2,3,4,5,6,7,117,9,10,11,
+ 2,3,4,5,6,7,0,9,10,11,
12,13,14,15,16,17,18,19,20,21,
22,23,24,25,26,0,28,29,30,31,
32,33,34,35,36,37,38,39,40,41,
@@ -1202,233 +1228,234 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
52,53,54,0,56,57,58,4,60,0,
1,2,3,4,5,6,7,8,9,10,
11,12,13,14,15,16,17,18,19,20,
- 21,22,23,24,0,118,27,28,29,30,
+ 21,22,23,24,100,118,27,28,29,30,
31,32,33,34,35,36,0,1,2,40,
- 4,5,0,7,0,0,0,48,0,1,
- 2,0,4,0,68,56,57,58,59,0,
- 61,62,0,1,2,100,22,23,24,0,
+ 4,5,0,7,0,0,100,48,0,1,
+ 2,6,4,0,9,56,57,58,59,0,
+ 61,62,0,0,1,2,22,23,24,0,
71,72,28,29,30,31,32,33,34,35,
36,22,23,24,48,86,0,28,29,30,
- 31,32,33,34,35,36,48,0,0,1,
- 2,102,103,104,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,87,
- 88,27,28,29,30,31,32,33,34,35,
- 36,55,0,98,40,3,48,0,6,0,
- 8,9,48,0,1,2,0,8,5,90,
- 56,57,58,59,8,61,62,25,26,27,
- 0,1,2,0,0,71,72,0,0,37,
- 38,8,0,1,2,3,4,5,6,7,
- 86,9,0,0,0,1,2,55,4,0,
- 6,48,8,9,0,63,102,103,104,0,
- 68,69,70,71,72,73,67,120,48,0,
- 1,2,3,4,5,6,7,71,9,87,
- 88,89,90,91,92,93,94,95,96,97,
- 98,99,100,101,0,63,73,105,106,107,
- 108,109,110,111,112,113,114,115,116,117,
- 0,119,120,3,0,72,6,73,8,9,
- 96,97,0,1,2,3,4,5,6,7,
- 8,9,63,74,90,25,26,27,69,25,
- 26,87,88,0,22,23,24,37,38,27,
- 28,29,30,31,32,33,34,35,36,0,
- 1,2,3,4,5,55,7,8,0,0,
- 1,2,0,63,5,3,7,55,68,69,
- 70,71,72,73,0,63,27,0,1,2,
- 3,4,5,6,7,73,9,87,88,89,
- 90,91,92,93,94,95,96,97,98,99,
- 100,101,0,1,2,105,106,107,108,109,
- 110,111,112,113,114,115,116,117,0,119,
- 120,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,27,28,
- 29,30,31,32,33,34,35,36,0,1,
- 2,40,4,0,6,0,0,9,0,48,
- 4,8,6,0,100,9,0,56,57,58,
- 59,8,61,62,0,64,0,22,23,24,
- 27,0,71,28,29,30,31,32,33,34,
- 35,36,0,1,2,87,88,86,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,70,0,27,28,29,30,31,
- 32,33,34,35,36,69,73,63,40,63,
- 0,1,2,3,4,5,48,7,0,0,
- 0,3,0,55,56,57,58,59,0,61,
- 62,9,64,0,0,1,2,101,4,5,
- 0,7,106,107,108,109,110,111,112,113,
- 114,115,116,0,86,0,1,2,3,4,
+ 31,32,33,34,35,36,48,0,0,0,
+ 1,2,103,104,105,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,63,27,28,29,30,31,32,33,34,
+ 0,0,27,28,29,30,31,32,33,34,
+ 35,36,89,0,91,40,3,48,0,6,
+ 0,8,9,48,68,0,1,2,96,97,
+ 5,56,57,58,59,0,61,62,25,26,
+ 27,0,1,2,0,0,71,72,3,48,
+ 37,38,8,0,1,2,3,4,5,6,
+ 7,86,9,96,97,0,0,0,55,3,
+ 0,1,2,48,4,5,63,7,103,104,
+ 105,68,69,70,71,72,73,87,88,48,
+ 0,1,2,3,4,5,6,7,0,9,
+ 87,88,89,90,91,92,93,94,95,96,
+ 97,98,99,100,101,70,63,73,48,106,
+ 107,108,109,110,111,112,113,114,115,116,
+ 117,118,119,120,0,0,0,3,0,4,
+ 6,6,8,9,9,0,0,1,2,3,
+ 4,5,6,7,8,9,89,0,91,25,
+ 26,27,72,25,26,0,1,2,22,23,
+ 24,37,38,27,28,29,30,31,32,33,
+ 34,35,36,0,1,2,3,4,5,55,
+ 7,8,0,0,1,2,98,63,5,63,
+ 7,55,68,69,70,71,72,73,63,63,
+ 27,0,1,2,3,4,5,6,7,73,
+ 9,87,88,89,90,91,92,93,94,95,
+ 96,97,98,99,100,101,0,0,0,3,
+ 106,107,108,109,110,111,112,113,114,115,
+ 116,117,118,119,120,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,27,28,29,30,31,32,33,34,
35,36,0,1,2,40,4,0,6,0,
- 60,9,69,48,0,8,0,3,89,0,
- 91,56,57,58,59,6,61,62,98,64,
- 40,22,23,24,96,97,71,28,29,30,
- 31,32,33,34,35,36,0,0,1,2,
- 4,86,0,1,2,3,4,5,6,7,
+ 0,9,0,48,0,25,26,0,8,0,
+ 0,56,57,58,59,8,61,62,8,64,
+ 0,22,23,24,87,88,71,28,29,30,
+ 31,32,33,34,35,36,55,27,0,1,
+ 2,86,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,70,71,27,
- 28,29,30,31,32,33,34,35,36,0,
- 1,2,40,4,5,48,7,0,1,2,
- 48,4,0,6,0,89,9,91,56,57,
- 58,59,0,61,62,3,64,0,1,2,
- 3,4,5,71,7,8,0,0,1,2,
- 3,4,5,6,7,0,9,48,86,0,
+ 18,19,20,21,22,23,24,67,0,27,
+ 28,29,30,31,32,33,34,35,36,70,
+ 73,0,40,63,0,1,2,3,4,5,
+ 48,7,8,25,26,0,0,55,56,57,
+ 58,59,0,61,62,10,64,0,1,2,
+ 101,27,5,0,7,0,107,108,109,110,
+ 111,112,113,114,115,116,117,0,86,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,63,27,28,29,30,
+ 21,22,23,24,59,0,27,28,29,30,
31,32,33,34,35,36,0,1,2,40,
- 63,0,1,2,3,4,5,48,7,8,
- 73,87,88,0,0,56,57,58,59,72,
- 61,62,0,64,69,0,1,2,27,0,
- 71,0,0,1,2,3,4,0,6,25,
- 26,9,0,0,48,86,0,1,2,3,
+ 68,69,6,0,0,1,2,48,4,5,
+ 0,7,55,68,0,56,57,58,59,0,
+ 61,62,8,64,98,22,23,24,0,72,
+ 71,28,29,30,31,32,33,34,35,36,
+ 55,27,23,24,48,86,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,27,28,29,30,31,32,33,
- 34,35,36,0,1,2,40,4,0,6,
- 65,66,9,0,48,63,25,26,0,0,
- 1,2,56,57,58,59,8,61,62,0,
- 64,0,1,2,3,4,5,0,7,0,
- 1,2,3,4,5,27,7,55,0,1,
- 2,118,86,0,1,2,3,4,5,6,
+ 34,35,36,0,1,2,40,0,0,1,
+ 2,3,4,5,48,7,0,0,0,3,
+ 3,0,56,57,58,59,8,61,62,8,
+ 64,0,1,2,3,4,5,71,7,8,
+ 0,1,2,0,4,0,6,55,8,9,
+ 120,48,86,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,70,0,
+ 17,18,19,20,21,22,23,24,0,63,
27,28,29,30,31,32,33,34,35,36,
- 0,0,63,40,0,4,48,3,0,1,
- 2,48,63,72,0,68,8,70,4,56,
- 57,58,59,22,61,62,0,64,0,3,
- 0,1,2,0,8,0,1,2,3,4,
- 5,118,7,0,1,2,0,0,48,86,
+ 0,73,71,40,63,0,1,2,3,4,
+ 5,48,7,0,73,60,3,0,90,56,
+ 57,58,59,73,61,62,0,64,0,0,
+ 1,2,3,4,71,6,8,0,9,0,
+ 90,0,1,2,3,4,5,8,7,86,
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,67,48,27,28,29,
- 30,31,32,33,34,35,36,0,55,63,
- 40,0,1,2,68,8,70,0,48,73,
- 0,4,55,102,103,104,56,57,58,59,
- 10,61,62,0,64,0,1,2,3,4,
- 5,8,7,0,0,0,3,3,0,1,
- 2,3,4,5,6,7,86,9,10,11,
- 12,13,14,15,16,17,18,19,20,21,
- 0,0,55,25,26,4,65,66,8,59,
- 73,37,38,0,0,37,38,39,4,41,
- 42,43,44,45,46,47,0,49,50,51,
- 52,53,54,0,0,0,73,63,60,61,
- 0,0,69,65,66,0,1,2,3,4,
- 5,6,7,90,9,10,11,12,13,14,
- 15,16,17,18,19,20,21,67,55,55,
- 25,26,0,0,1,2,4,4,5,105,
- 7,68,37,38,39,0,41,42,43,44,
- 45,46,47,119,49,50,51,52,53,54,
- 0,1,2,68,70,60,6,94,95,0,
- 65,66,3,68,0,1,2,3,4,5,
+ 20,21,22,23,24,0,63,27,28,29,
+ 30,31,32,33,34,35,36,0,1,2,
+ 40,4,63,6,68,69,9,69,48,0,
+ 63,73,3,103,104,105,56,57,58,59,
+ 71,61,62,72,64,0,0,1,2,3,
+ 4,5,6,7,0,9,0,1,2,3,
+ 4,5,8,7,0,0,86,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,27,28,29,30,31,32,
+ 33,34,35,36,0,1,2,40,4,63,
+ 6,0,48,9,3,48,70,72,0,63,
+ 55,67,0,56,57,58,59,9,61,62,
+ 0,64,0,3,0,0,1,2,8,0,
+ 1,2,3,4,5,0,7,0,1,2,
+ 0,1,2,86,0,1,2,3,4,5,
6,7,8,9,10,11,12,13,14,15,
- 16,17,18,19,20,21,0,1,2,25,
- 26,5,0,7,0,3,0,3,48,3,
- 0,37,38,39,8,41,42,43,44,45,
- 46,47,0,49,50,51,52,53,54,0,
- 1,2,63,0,60,0,0,0,0,1,
- 2,67,0,8,8,71,0,1,2,3,
- 4,5,6,7,0,9,10,11,12,13,
- 14,15,16,17,18,19,20,21,0,63,
- 0,25,26,0,1,2,0,48,8,73,
- 0,0,0,37,38,39,48,41,42,43,
- 44,45,46,47,72,49,50,51,52,53,
- 54,68,0,70,0,70,60,3,73,73,
- 68,65,66,0,1,2,3,4,5,6,
- 7,48,9,10,11,12,13,14,15,16,
- 17,18,19,20,21,55,55,55,25,26,
- 0,0,0,73,68,3,0,0,68,8,
- 37,38,39,72,41,42,43,44,45,46,
- 47,0,49,50,51,52,53,54,27,0,
- 0,0,70,60,94,95,0,0,65,66,
- 0,1,2,3,4,5,6,7,8,9,
- 10,11,12,13,14,15,16,17,18,19,
- 20,21,55,63,0,25,26,3,0,48,
- 0,3,0,0,68,68,0,37,38,39,
- 4,41,42,43,44,45,46,47,0,49,
- 50,51,52,53,54,0,0,0,22,63,
- 60,94,95,72,0,10,10,67,0,1,
+ 16,17,18,19,20,21,22,23,24,0,
+ 48,27,28,29,30,31,32,33,34,35,
+ 36,69,0,63,40,0,1,2,68,69,
+ 65,66,48,73,0,0,72,3,0,0,
+ 56,57,58,59,0,61,62,3,64,0,
+ 0,1,2,0,4,0,6,8,0,9,
+ 0,3,0,1,2,3,4,5,6,7,
+ 86,9,10,11,12,13,14,15,16,17,
+ 18,19,20,21,0,1,2,25,26,0,
+ 65,66,8,55,55,37,38,0,0,37,
+ 38,39,4,41,42,43,44,45,46,47,
+ 55,49,50,51,52,53,54,0,69,0,
+ 71,63,60,61,0,90,0,65,66,0,
+ 1,2,3,4,5,6,7,0,9,10,
+ 11,12,13,14,15,16,17,18,19,20,
+ 21,67,55,55,25,26,0,1,2,0,
+ 4,5,3,7,106,68,37,38,39,0,
+ 41,42,43,44,45,46,47,119,49,50,
+ 51,52,53,54,0,1,2,68,0,60,
+ 101,94,95,69,65,66,107,68,0,1,
2,3,4,5,6,7,8,9,10,11,
12,13,14,15,16,17,18,19,20,21,
- 0,0,0,25,26,40,40,0,0,0,
- 0,4,0,48,48,37,38,39,0,41,
+ 0,1,2,25,26,0,0,90,0,4,
+ 0,3,48,3,0,37,38,39,8,41,
42,43,44,45,46,47,0,49,50,51,
- 52,53,54,90,0,0,0,3,60,5,
- 6,0,0,9,8,67,72,0,0,8,
- 3,0,0,0,0,55,55,55,0,25,
- 26,3,55,27,55,55,0,55,27,0,
- 0,37,38,55,0,41,0,69,0,3,
- 0,55,0,3,0,3,0,3,121,55,
- 39,39,0,0,0,3,3,63,0,65,
- 66,0,68,69,70,70,0,0,55,0,
- 0,0,0,3,72,0,0,69,0,3,
- 0,87,88,89,70,0,92,93,94,95,
- 96,97,98,99,100,101,70,39,69,105,
- 70,107,108,109,110,111,112,113,114,115,
- 116,0,1,2,3,4,5,6,7,8,
+ 52,53,54,0,1,2,0,0,60,0,
+ 4,4,0,1,2,67,40,8,48,71,
+ 0,1,2,3,4,5,6,7,22,9,
+ 10,11,12,13,14,15,16,17,18,19,
+ 20,21,0,63,0,25,26,0,1,2,
+ 0,48,8,73,4,0,72,37,38,39,
+ 48,41,42,43,44,45,46,47,72,49,
+ 50,51,52,53,54,0,0,0,0,3,
+ 60,0,73,8,6,65,66,0,1,2,
+ 3,4,5,6,7,48,9,10,11,12,
+ 13,14,15,16,17,18,19,20,21,103,
+ 104,105,25,26,0,0,0,73,63,0,
+ 0,0,0,8,37,38,39,8,41,42,
+ 43,44,45,46,47,0,49,50,51,52,
+ 53,54,27,0,0,0,27,60,73,4,
+ 0,70,65,66,0,1,2,3,4,5,
+ 6,7,8,9,10,11,12,13,14,15,
+ 16,17,18,19,20,21,55,55,0,25,
+ 26,3,68,39,69,0,70,0,3,68,
+ 0,37,38,39,4,41,42,43,44,45,
+ 46,47,0,49,50,51,52,53,54,74,
+ 0,0,22,70,60,94,95,0,0,69,
+ 10,67,0,1,2,3,4,5,6,7,
+ 8,9,10,11,12,13,14,15,16,17,
+ 18,19,20,21,0,0,0,25,26,0,
+ 40,0,3,0,0,10,0,55,48,37,
+ 38,39,0,41,42,43,44,45,46,47,
+ 68,49,50,51,52,53,54,0,0,0,
+ 0,3,60,5,6,40,69,9,8,67,
+ 0,0,0,48,4,0,94,95,0,4,
+ 0,55,0,25,26,3,55,27,55,55,
+ 0,55,0,3,70,37,38,0,39,41,
+ 3,0,0,0,0,3,3,3,0,0,
+ 0,3,55,55,72,0,0,0,3,3,
+ 0,63,0,65,66,55,68,69,70,0,
+ 55,0,0,0,0,0,0,0,0,0,
+ 0,70,70,0,0,87,88,89,70,69,
+ 92,93,94,95,96,97,98,99,100,101,
+ 0,69,0,0,106,0,108,109,110,111,
+ 112,113,114,115,116,117,0,1,2,3,
+ 4,5,6,7,8,9,10,11,12,13,
+ 14,15,16,17,18,19,20,21,55,70,
+ 0,25,26,102,72,72,72,90,70,70,
+ 75,102,102,37,38,39,0,41,42,43,
+ 44,45,46,47,102,49,50,51,52,53,
+ 54,0,1,2,3,4,5,6,7,39,
9,10,11,12,13,14,15,16,17,18,
- 19,20,21,72,0,69,25,26,69,72,
- 55,0,0,72,69,0,0,75,37,38,
+ 19,20,21,0,0,0,25,26,121,0,
+ 0,0,0,0,0,0,0,0,37,38,
39,0,41,42,43,44,45,46,47,0,
- 49,50,51,52,53,54,0,1,2,3,
- 4,5,6,7,0,9,10,11,12,13,
- 14,15,16,17,18,19,20,21,0,0,
- 0,25,26,0,0,0,0,0,0,0,
- 0,0,0,37,38,39,0,41,42,43,
- 44,45,46,47,69,49,50,51,52,53,
- 54,0,0,0,90,0,60,0,117,0,
- 1,2,3,4,5,6,7,0,9,10,
- 11,12,13,14,15,16,17,18,19,20,
- 21,0,0,0,25,26,0,69,0,0,
- 0,0,0,0,0,0,37,38,39,0,
- 41,42,43,44,45,46,47,0,49,50,
- 51,52,53,54,0,1,2,3,4,5,
- 6,7,63,9,10,11,12,13,14,15,
- 16,17,18,19,20,21,0,0,0,25,
- 26,0,0,0,0,0,0,0,0,0,
- 0,37,38,39,0,41,42,43,44,45,
- 46,47,0,49,50,51,52,53,54,0,
- 0,0,0,0,60,0,1,2,3,4,
+ 49,50,51,52,53,54,0,0,0,0,
+ 0,60,0,0,118,0,1,2,3,4,
5,6,7,0,9,10,11,12,13,14,
15,16,17,18,19,20,21,0,0,0,
25,26,0,0,0,0,0,0,0,0,
0,0,37,38,39,0,41,42,43,44,
45,46,47,0,49,50,51,52,53,54,
- 0,1,2,3,4,5,6,7,0,9,
+ 0,1,2,3,4,5,6,7,63,9,
10,11,12,13,14,15,16,17,18,19,
20,21,0,0,0,25,26,0,0,0,
0,0,0,0,0,0,0,37,38,39,
0,41,42,43,44,45,46,47,0,49,
- 50,51,52,53,54,0,1,2,3,4,
- 5,6,7,0,9,10,11,12,13,14,
- 15,16,17,18,19,20,21,0,0,0,
- 25,26,0,0,0,0,0,0,0,0,
- 0,0,37,38,39,0,41,42,43,44,
- 45,46,47,0,49,50,51,52,53,54,
- 0,1,2,0,4,0,0,0,0,0,
- 10,11,12,13,14,15,16,17,18,19,
- 20,21,22,23,24,0,0,0,28,29,
- 30,31,32,33,34,35,36,0,0,0,
- 40,0,0,0,0,0,0,0,0,0,
- 1,2,0,4,0,0,56,57,58,10,
- 11,12,13,14,15,16,17,18,19,20,
- 21,22,23,24,0,0,0,28,29,30,
- 31,32,33,34,35,36,0,0,0,40,
- 0,1,2,3,4,5,6,7,8,9,
- 0,0,0,0,0,56,57,58,0,0,
- 0,0,22,23,24,0,0,27,28,29,
- 30,31,32,33,34,35,36,11,12,13,
+ 50,51,52,53,54,0,0,0,0,0,
+ 60,0,1,2,3,4,5,6,7,0,
+ 9,10,11,12,13,14,15,16,17,18,
+ 19,20,21,0,0,0,25,26,0,0,
+ 0,0,0,0,0,0,0,0,37,38,
+ 39,0,41,42,43,44,45,46,47,0,
+ 49,50,51,52,53,54,0,1,2,3,
+ 4,5,6,7,0,9,10,11,12,13,
+ 14,15,16,17,18,19,20,21,0,0,
+ 0,25,26,0,0,0,0,0,0,0,
+ 0,0,0,37,38,39,0,41,42,43,
+ 44,45,46,47,0,49,50,51,52,53,
+ 54,0,1,2,3,4,5,6,7,0,
+ 9,10,11,12,13,14,15,16,17,18,
+ 19,20,21,0,0,0,25,26,0,0,
+ 0,0,0,0,0,0,0,0,37,38,
+ 39,0,41,42,43,44,45,46,47,0,
+ 49,50,51,52,53,54,0,1,2,0,
+ 4,0,0,0,0,0,10,11,12,13,
14,15,16,17,18,19,20,21,22,23,
24,0,0,0,28,29,30,31,32,33,
- 34,35,36,63,0,0,0,0,0,0,
- 0,0,0,73,0,0,0,0,0,0,
+ 34,35,36,0,0,0,40,0,0,0,
+ 0,0,0,0,0,0,1,2,0,4,
+ 0,0,56,57,58,10,11,12,13,14,
+ 15,16,17,18,19,20,21,22,23,24,
+ 0,0,0,28,29,30,31,32,33,34,
+ 35,36,0,0,0,40,0,1,2,3,
+ 4,5,6,7,8,9,0,0,0,0,
+ 0,56,57,58,0,0,0,0,22,23,
+ 24,0,0,27,28,29,30,31,32,33,
+ 34,35,36,11,12,13,14,15,16,17,
+ 18,19,20,21,22,23,24,0,0,0,
+ 28,29,30,31,32,33,34,35,36,63,
+ 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,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,0,0,
- 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;
@@ -1436,346 +1463,346 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public interface TermAction {
public final static char termAction[] = {0,
- 5316,5281,5260,5260,5260,5260,5260,5260,5297,5260,
+ 5443,5405,5384,5384,5384,5384,5384,5384,5421,5384,
+ 1,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,5409,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,5285,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,139,1,
- 1,1,1,1,1,1,1,1,1,2436,
- 1,5491,2300,115,3431,1,1,5327,39,3790,
- 5316,5323,5354,3216,680,3697,3525,2182,3405,3628,
- 3125,3685,2260,3679,640,3678,10,5300,5300,5300,
- 5300,5300,5300,5300,5300,5300,5300,5300,5300,5300,
- 5300,5300,5300,5300,5300,5300,5300,5300,5300,5300,
- 5300,5300,5300,5300,5300,5300,5300,5300,5300,5300,
- 5300,5300,5300,5300,5300,5300,5300,5300,5300,5300,
- 5300,5300,5300,5300,330,5300,5300,5300,5300,5300,
- 5300,395,5300,5300,5300,5300,5300,5300,5300,2220,
- 5300,5300,5300,5300,3240,3766,3742,5300,296,5316,
- 5300,5300,5300,5300,5300,5300,5300,5300,5300,5300,
- 5300,5300,8,5303,5303,5303,5303,5303,5303,5303,
- 5303,5303,5303,5303,5303,5303,5303,5303,5303,5303,
- 5303,5303,5303,5303,5303,5303,5303,5303,5303,5303,
- 5303,5303,5303,5303,5303,5303,5303,5303,5303,5303,
- 5303,5303,5303,5303,5303,5303,5303,5303,5303,5303,
- 384,5303,5303,5303,5303,5303,5303,2884,5303,5303,
- 5303,5303,5303,5303,5303,300,5303,5303,5303,5303,
- 286,5053,5053,5303,283,5615,5303,5303,5303,5303,
- 5303,5303,5303,5303,5303,5303,5303,5303,5316,5281,
- 5260,5260,5260,5260,5260,5260,5288,5260,1,1,
+ 1,1,1,1,1,334,1,1,1,2742,
+ 1,5618,1912,115,3667,1,1,5454,399,3749,
+ 5443,5450,157,4743,1094,4101,3562,2206,3506,3893,
+ 3208,4008,601,3985,2767,3962,10,5424,5424,5424,
+ 5424,5424,5424,5424,5424,5424,5424,5424,5424,5424,
+ 5424,5424,5424,5424,5424,5424,5424,5424,5424,5424,
+ 5424,5424,5424,5424,5424,5424,5424,5424,5424,5424,
+ 5424,5424,5424,5424,5424,5424,5424,5424,5424,5424,
+ 5424,5424,5424,5424,300,5424,5424,5424,5424,5424,
+ 5424,1478,5424,5424,5424,5424,5424,5424,5424,388,
+ 5424,5424,5424,5424,39,3724,3699,5424,5481,5443,
+ 5424,5424,5424,5424,5424,5424,5424,5424,5424,5424,
+ 5424,5424,8,5427,5427,5427,5427,5427,5427,5427,
+ 5427,5427,5427,5427,5427,5427,5427,5427,5427,5427,
+ 5427,5427,5427,5427,5427,5427,5427,5427,5427,5427,
+ 5427,5427,5427,5427,5427,5427,5427,5427,5427,5427,
+ 5427,5427,5427,5427,5427,5427,5427,5427,5427,5427,
+ 5443,5427,5427,5427,5427,5427,5427,3051,5427,5427,
+ 5427,5427,5427,5427,5427,5443,5427,5427,5427,5427,
+ 290,5177,5177,5427,285,5443,5427,5427,5427,5427,
+ 5427,5427,5427,5427,5427,5427,5427,5427,5443,5405,
+ 5384,5384,5384,5384,5384,5384,5412,5384,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,5285,1,1,1,1,
+ 1,1,1,1,1,5409,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,5316,1,1,1,
- 1,1,1,439,1,1,1,2436,1,5491,
- 2300,5316,3431,1,1,5327,5316,4955,4952,5324,
- 5354,5316,680,3697,3525,2182,3405,3628,3125,3685,
- 2260,3679,640,3678,5316,5281,5260,5260,5260,5260,
- 5260,5260,5288,5260,1,1,1,1,1,1,
+ 1,1,1,1,1,1,5443,1,1,1,
+ 1,1,1,3111,1,1,1,2742,1,5618,
+ 1912,304,3667,1,1,5454,5443,5079,5076,121,
+ 5481,5746,1094,4101,3562,2206,3506,3893,3208,4008,
+ 601,3985,2767,3962,5443,5405,5384,5384,5384,5384,
+ 5384,5384,5412,5384,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,5285,1,1,1,1,1,1,1,1,
+ 1,5409,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,5323,1,1,1,1,1,1,135,
- 1,1,1,2436,1,5491,2300,117,3431,1,
- 1,5327,111,3790,5316,5751,5752,5753,680,3697,
- 3525,2182,3405,3628,3125,3685,2260,3679,640,3678,
- 5316,5281,5260,5260,5260,5260,5260,5260,5288,5260,
+ 1,1,5443,1,1,1,1,1,1,135,
+ 1,1,1,2742,1,5618,1912,117,3667,1,
+ 1,5454,111,3749,5443,462,2900,2927,1094,4101,
+ 3562,2206,3506,3893,3208,4008,601,3985,2767,3962,
+ 5443,5405,5384,5384,5384,5384,5384,5384,5412,5384,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,5285,1,1,
+ 1,1,1,1,1,1,1,5409,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,5316,1,
- 1,1,1,1,1,136,1,1,1,2436,
- 1,5491,2300,131,3431,1,1,5327,2302,3766,
- 3742,4092,2365,4114,680,3697,3525,2182,3405,3628,
- 3125,3685,2260,3679,640,3678,5316,5281,5260,5260,
- 5260,5260,5260,5260,5288,5260,1,1,1,1,
+ 1,1,1,1,1,1,1,1,5106,1,
+ 1,1,1,1,1,136,1,1,1,2742,
+ 1,5618,1912,131,3667,1,1,5454,2328,3724,
+ 3699,3958,2393,3981,1094,4101,3562,2206,3506,3893,
+ 3208,4008,601,3985,2767,3962,5443,5405,5384,5384,
+ 5384,5384,5384,5384,5412,5384,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,5285,1,1,1,1,1,1,
+ 1,1,1,5409,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,5316,1,1,1,1,1,
- 1,5316,1,1,1,2436,1,5491,2300,116,
- 3431,1,1,5327,2302,3790,121,5316,5330,5331,
- 680,3697,3525,2182,3405,3628,3125,3685,2260,3679,
- 640,3678,5316,5281,5260,5260,5260,5260,5260,5260,
- 5288,5260,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,5285,
+ 1,1,1,1,5443,1,1,1,1,1,
+ 1,5443,1,1,1,2742,1,5618,1912,116,
+ 3667,1,1,5454,2328,3749,5443,5457,5458,5443,
+ 1094,4101,3562,2206,3506,3893,3208,4008,601,3985,
+ 2767,3962,5443,5405,5384,5384,5384,5384,5384,5384,
+ 5412,5384,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,5409,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 5316,1,1,1,1,1,1,5316,1,1,
- 1,2436,1,5491,2300,5316,3431,1,1,5327,
- 2532,3766,3742,2938,3033,5316,680,3697,3525,2182,
- 3405,3628,3125,3685,2260,3679,640,3678,5316,5281,
- 5260,5260,5260,5260,5260,5260,5288,5260,1,1,
+ 5443,1,1,1,1,1,1,3123,1,1,
+ 1,2742,1,5618,1912,5443,3667,1,1,5454,
+ 2780,3724,3699,5443,5263,5260,1094,4101,3562,2206,
+ 3506,3893,3208,4008,601,3985,2767,3962,5443,5405,
+ 5384,5384,5384,5384,5384,5384,5412,5384,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,5285,1,1,1,1,
+ 1,1,1,1,1,5409,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,335,1,1,1,
- 1,1,1,2899,1,1,1,2436,1,5491,
- 2300,5316,3431,1,1,5327,5316,5330,5331,5652,
- 5653,2532,680,3697,3525,2182,3405,3628,3125,3685,
- 2260,3679,640,3678,5316,5281,5260,5260,5260,5260,
- 5260,5260,5288,5260,1,1,1,1,1,1,
+ 1,1,1,1,1,1,5443,1,1,1,
+ 1,1,1,5443,1,1,1,2742,1,5618,
+ 1912,5443,3667,1,1,5454,5443,5457,5458,5451,
+ 519,2780,1094,4101,3562,2206,3506,3893,3208,4008,
+ 601,3985,2767,3962,5443,5405,5384,5384,5384,5384,
+ 5384,5384,5412,5384,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,5285,1,1,1,1,1,1,1,1,
+ 1,5409,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,5316,1,1,1,1,1,1,5316,
- 1,1,1,2436,1,5491,2300,1,3431,1,
- 1,5327,5316,4955,4952,5278,5354,5316,680,3697,
- 3525,2182,3405,3628,3125,3685,2260,3679,640,3678,
- 5316,5281,5260,5260,5260,5260,5260,5260,5288,5260,
+ 1,1,5450,1,1,1,1,1,1,891,
+ 1,1,1,2742,1,5618,1912,5443,3667,1,
+ 1,5454,5443,5079,5076,125,5481,5443,1094,4101,
+ 3562,2206,3506,3893,3208,4008,601,3985,2767,3962,
+ 5443,5405,5384,5384,5384,5384,5384,5384,5412,5384,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,5285,1,1,
+ 1,1,1,1,1,1,1,5409,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,5323,1,
- 1,1,1,1,1,2964,1,1,1,2436,
- 1,5491,2300,5316,3431,1,1,5327,5316,5139,
- 5136,48,5139,5136,680,3697,3525,2182,3405,3628,
- 3125,3685,2260,3679,640,3678,5316,5281,5260,5260,
- 5260,5260,5260,5260,5288,5260,1,1,1,1,
+ 1,1,1,1,1,1,1,1,5443,1,
+ 1,1,1,1,1,3133,1,1,1,2742,
+ 1,5618,1912,5443,3667,1,1,5454,48,5263,
+ 5260,124,2900,2927,1094,4101,3562,2206,3506,3893,
+ 3208,4008,601,3985,2767,3962,5443,5405,5384,5384,
+ 5384,5384,5384,5384,5412,5384,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,5285,1,1,1,1,1,1,
+ 1,1,1,5409,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,5316,1,1,1,1,1,
- 1,5316,1,1,1,2436,1,5491,2300,5316,
- 3431,1,1,5327,114,5316,91,5320,3161,4988,
- 680,3697,3525,2182,3405,3628,3125,3685,2260,3679,
- 640,3678,5316,3652,1,1,1,1,1,1,
- 3663,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,5325,
+ 1,1,1,1,5443,1,1,1,1,1,
+ 1,5443,1,1,1,2742,1,5618,1912,5443,
+ 3667,1,1,5454,114,401,5457,5458,2900,2927,
+ 1094,4101,3562,2206,3506,3893,3208,4008,601,3985,
+ 2767,3962,5443,3916,1,1,1,1,1,1,
+ 3939,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,5452,
1,1,1,1,1,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 5316,1,1,1,1,1,1,5316,1,1,
- 1,2436,1,5491,2300,5316,3431,1,1,5327,
- 5316,729,5316,4092,576,4114,680,3697,3525,2182,
- 3405,3628,3125,3685,2260,3679,640,3678,39,4955,
- 4952,2831,628,3900,3982,2810,5319,4004,788,5580,
- 5578,5587,5586,5582,5583,5581,5584,5585,5588,5579,
- 5576,5652,5653,3953,3922,137,5570,5577,5573,5549,
- 5575,5574,5571,5572,5550,4048,4026,5335,5714,3841,
- 575,879,5337,663,2700,671,5316,5338,5336,569,
- 5332,5333,5334,5316,639,5715,5716,2435,1380,5316,
- 5191,5191,229,5187,229,229,229,5195,229,1,
+ 5443,1,1,1,1,1,1,5443,1,1,
+ 1,2742,1,5618,1912,5447,3667,1,1,5454,
+ 36,5339,5336,3958,137,3981,1094,4101,3562,2206,
+ 3506,3893,3208,4008,601,3985,2767,3962,39,5079,
+ 5076,3187,634,3774,3843,3302,138,3866,803,5709,
+ 5707,5716,5715,5711,5712,5710,5713,5714,5717,5708,
+ 5704,5783,5784,3820,3797,5443,5698,5705,5701,5677,
+ 5703,5702,5699,5700,5678,3912,3889,5462,5845,2828,
+ 581,995,5464,926,4077,955,5443,5465,5463,575,
+ 5459,5460,5461,5443,2705,5846,5847,873,1434,5443,
+ 5315,5315,230,5311,230,230,230,5319,230,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,5316,3704,229,1,1,1,
- 1,1,1,1,1,1,5316,4955,4952,1,
- 628,5000,125,2810,224,133,5316,5184,394,5050,
- 5050,5316,283,5316,2973,1,1,1,2873,225,
- 5728,1211,397,5330,5331,2268,5576,5652,5653,357,
- 416,229,5570,5577,5573,5549,5575,5574,5571,5572,
- 5550,5576,5652,5653,2439,5816,5316,5570,5577,5573,
- 5549,5575,5574,5571,5572,5550,283,5316,5316,8658,
- 8658,5751,5752,5753,5316,5191,5191,229,5187,229,
- 229,229,5239,229,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1,2938,
- 3033,229,1,1,1,1,1,1,1,1,
- 1,2584,33,2334,1,4994,5352,5316,4994,5316,
- 4994,4994,5184,37,5178,5178,8,5328,5178,5672,
- 1,1,1,2873,5313,5728,1211,4994,4994,4994,
- 43,5160,5160,1,129,415,229,5316,5316,4994,
- 4994,161,344,4955,4952,582,628,595,330,2810,
- 5816,330,5316,5316,1,5175,5175,4994,5172,5316,
- 330,2552,362,330,124,4994,5751,5752,5753,1,
- 4994,4994,4994,4994,4994,4994,5327,4951,5157,366,
- 5043,5039,582,5047,595,1,2810,5313,1,4994,
- 4994,4994,4994,4994,4994,4994,4994,4994,4994,4994,
- 4994,4994,4994,4994,5316,1052,161,4994,4994,4994,
- 4994,4994,4994,4994,4994,4994,4994,4994,4994,4994,
- 5316,4994,4994,4997,118,1926,4997,362,4997,4997,
- 2478,2407,29,387,387,5154,387,387,5154,387,
- 5154,5154,1052,3182,362,4997,4997,4997,1231,3717,
- 3072,2938,3033,5316,387,387,387,4997,4997,5154,
- 387,387,387,387,387,387,387,387,387,1,
- 5043,5039,5230,5047,5236,4997,5233,5326,5316,38,
- 4973,4970,237,4997,4967,5148,2810,4958,4997,4997,
- 4997,4997,4997,4997,138,5154,5325,308,5043,5039,
- 601,5047,595,5251,2810,5154,5251,4997,4997,4997,
- 4997,4997,4997,4997,4997,4997,4997,4997,4997,4997,
- 4997,4997,36,5215,5212,4997,4997,4997,4997,4997,
- 4997,4997,4997,4997,4997,4997,4997,4997,123,4997,
- 4997,5316,5260,5260,229,5260,229,229,229,5263,
- 229,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,5316,5316,229,1,
- 1,8631,1,1,1,1,1,1,444,1,
- 1,1,1,5316,4979,226,39,4979,5316,5257,
- 5354,5326,330,5316,2268,330,139,1,1,1,
- 3007,5322,5527,2300,458,3431,457,5576,5652,5653,
- 5325,5316,220,5570,5577,5573,5549,5575,5574,5571,
- 5572,5550,296,5330,5331,2938,3033,5816,5316,5260,
- 5260,229,5260,229,229,229,229,229,1,1,
+ 1,1,1,1,2293,5446,230,1,1,1,
+ 1,1,1,1,1,1,5443,5079,5076,1,
+ 634,5124,5443,3302,225,5443,2293,5308,398,5174,
+ 5174,1544,285,113,1335,1,1,1,3106,226,
+ 5859,788,129,300,5457,5458,5704,5783,5784,5443,
+ 420,230,5698,5705,5701,5677,5703,5702,5699,5700,
+ 5678,5704,5783,5784,2527,5947,5443,5698,5705,5701,
+ 5677,5703,5702,5699,5700,5678,285,130,5443,5443,
+ 8788,8788,5882,5883,5884,5443,5315,5315,230,5311,
+ 230,230,230,5363,230,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,3814,5316,229,1,1,8631,1,
- 1,1,1,1,1,1884,5321,4982,1,4985,
- 1,5043,5039,601,5047,595,5257,2810,346,113,
- 134,1582,132,3300,1,1,1,3007,130,5527,
- 2300,2365,3431,369,5316,4955,4952,2220,628,595,
- 532,2810,3240,1842,1800,1758,1716,1674,1632,1590,
- 1548,1506,1464,5316,5816,5316,5260,5260,229,5260,
- 229,229,229,5272,229,1,1,1,1,1,
+ 123,37,230,1,1,1,1,1,1,1,
+ 1,1,3958,33,3981,1,5118,5479,5443,5118,
+ 5443,5118,5118,5308,5959,37,5302,5302,2452,2423,
+ 5302,1,1,1,3106,5443,5859,788,5118,5118,
+ 5118,43,5284,5284,1,314,419,230,2996,5479,
+ 5118,5118,161,348,5079,5076,587,634,624,334,
+ 3302,5947,334,2452,2423,5443,5443,112,5118,4104,
+ 5443,5079,5076,2793,634,5124,5118,3302,5882,5883,
+ 5884,5118,5118,5118,5118,5118,5118,2900,2927,5281,
+ 5443,5167,5163,606,5171,624,5375,3302,133,5375,
+ 5118,5118,5118,5118,5118,5118,5118,5118,5118,5118,
+ 5118,5118,5118,5118,5118,1156,1061,161,2955,5118,
+ 5118,5118,5118,5118,5118,5118,5118,5118,5118,5118,
+ 5118,5118,5118,5118,5443,39,461,5121,118,5481,
+ 5121,334,5121,5121,334,351,29,391,391,5278,
+ 391,391,5278,391,5278,5278,3958,5443,3981,5121,
+ 5121,5121,1243,3160,3077,294,5457,5458,391,391,
+ 391,5121,5121,5278,391,391,391,391,391,391,
+ 391,391,391,1,5167,5163,5354,5171,5360,5121,
+ 5357,5453,5443,38,5097,5094,2361,5121,5091,5109,
+ 3302,5082,5121,5121,5121,5121,5121,5121,1061,5278,
+ 5452,312,5167,5163,606,5171,624,5375,3302,5278,
+ 5375,5121,5121,5121,5121,5121,5121,5121,5121,5121,
+ 5121,5121,5121,5121,5121,5121,91,122,5443,5112,
+ 5121,5121,5121,5121,5121,5121,5121,5121,5121,5121,
+ 5121,5121,5121,5121,5121,5443,5384,5384,230,5384,
+ 230,230,230,5387,230,1,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 5316,1052,229,1,1,8631,1,1,1,1,
- 1,1,445,39,39,1,5354,5316,5169,227,
- 3533,5169,1276,5257,1,5324,112,4711,4092,5316,
- 4114,1,1,1,3007,1144,5527,2300,2334,3431,
- 3593,5576,5652,5653,2478,2407,219,5570,5577,5573,
- 5549,5575,5574,5571,5572,5550,5316,37,5178,5178,
- 2840,5816,5316,5260,5260,229,5260,229,229,229,
- 5263,229,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1007,5323,229,
- 1,1,8631,1,1,1,1,1,1,5316,
- 4955,4952,1,628,5000,2512,2810,92,1,1,
- 5257,1,347,5181,122,4092,5181,4114,1,1,
- 1,3007,5316,5527,2300,3508,3431,1,5043,5039,
- 582,5047,595,220,2810,5142,5316,5316,5043,5039,
- 601,5047,595,5251,2810,367,5251,2536,5816,5316,
- 5260,5260,229,5260,229,229,229,5263,229,1,
+ 120,5443,230,1,1,8845,1,1,1,1,
+ 1,1,448,1,1,1,1,5443,5103,227,
+ 5443,5103,5443,5381,5443,3160,3077,5443,5455,139,
+ 409,1,1,1,3386,5449,5655,1912,5348,3667,
+ 100,5704,5783,5784,2900,2927,221,5698,5705,5701,
+ 5677,5703,5702,5699,5700,5678,4204,5351,5443,8720,
+ 8715,5947,5443,5384,5384,230,5384,230,230,230,
+ 230,230,1,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,5454,119,230,
+ 1,1,8845,1,1,1,1,1,1,1951,
+ 5448,5443,1,4457,1,5167,5163,606,5171,624,
+ 5381,3302,312,3160,3077,304,134,3488,1,1,
+ 1,3386,5443,5655,1912,5746,3667,5443,5457,5458,
+ 2254,312,624,5443,3302,5443,2522,1908,1865,1822,
+ 1779,1736,1693,1650,1607,1564,1521,29,5947,5443,
+ 5384,5384,230,5384,230,230,230,5396,230,1,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,5316,1052,229,1,1,8631,
- 1,1,1,1,1,1,5316,5201,5198,1,
- 1052,1,5043,5039,601,5047,595,5257,2810,308,
- 5145,2938,3033,374,120,1,1,1,3007,2010,
- 5527,2300,5316,3431,1335,5316,5330,5331,308,5316,
- 220,5316,344,39,39,3112,5354,5316,330,3717,
- 3072,330,5316,5316,5352,5816,5316,5260,5260,229,
- 5260,229,229,229,229,229,1,1,1,1,
+ 1,1,1,1,3329,5443,230,1,1,8845,
+ 1,1,1,1,1,1,37,5302,5302,1,
+ 4447,3495,334,228,5443,5079,5076,5381,634,624,
+ 5443,3302,1513,5888,5443,1,1,1,3386,339,
+ 5655,1912,5453,3667,2361,5704,5783,5784,5443,428,
+ 220,5698,5705,5701,5677,5703,5702,5699,5700,5678,
+ 4207,5452,5783,5784,5479,5947,5443,5384,5384,230,
+ 5384,230,230,230,5387,230,1,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,119,5316,229,1,1,8631,1,1,1,
- 1,1,1,95,39,39,1,5354,157,5245,
- 4070,871,5245,521,5257,1052,3717,3072,405,290,
- 5330,5331,1,1,1,3007,5224,5527,2300,100,
- 3431,1,5043,5039,601,5047,595,5316,2810,1,
- 5043,5039,582,5047,595,5227,2810,3111,5316,5208,
- 5204,3704,5816,5316,5260,5260,229,5260,229,229,
- 229,229,229,1,1,1,1,1,1,1,
- 1,1,1,1,1,1,1,1,1422,5316,
- 229,1,1,8631,1,1,1,1,1,1,
- 37,39,4847,1,5316,5354,5352,4571,5316,5330,
- 5331,5257,1052,2010,395,4574,5328,3135,388,1,
- 1,1,3007,939,5527,2300,1,3431,47,3112,
- 5316,8540,8137,5316,340,330,4955,4952,601,628,
- 595,3704,2810,5316,8540,8137,5316,5316,5352,5816,
- 5316,5260,5260,229,5260,229,229,229,229,229,
+ 1,5443,5443,230,1,1,8845,1,1,1,
+ 1,1,1,37,5302,5302,1,5443,1,5167,
+ 5163,606,5171,624,5381,3302,350,238,1,1728,
+ 5272,1,1,1,1,3386,366,5655,1912,5402,
+ 3667,1,5167,5163,587,5171,624,221,3302,5266,
+ 1,5299,5299,5443,5296,537,334,4756,366,334,
+ 5075,2594,5947,5443,5384,5384,230,5384,230,230,
+ 230,5387,230,1,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,5443,1061,
+ 230,1,1,8845,1,1,1,1,1,1,
+ 443,366,5450,1,1061,334,5079,5076,606,634,
+ 624,5381,3302,321,5269,3801,5366,5443,366,1,
+ 1,1,3386,366,5655,1912,5443,3667,5443,348,
+ 39,39,3487,5481,221,334,5449,323,334,8,
+ 366,1,5167,5163,606,5171,624,5440,3302,5947,
+ 5443,5384,5384,230,5384,230,230,230,230,230,
1,1,1,1,1,1,1,1,1,1,
- 1,1,1,1,1,5327,2172,229,1,1,
- 8631,1,1,1,1,1,1,1,3276,1052,
- 1,5316,5139,5136,340,5322,340,396,5257,340,
- 300,387,3627,5751,5752,5753,1,1,1,3007,
- 5615,5527,2300,1,3431,1,5043,5039,5230,5047,
- 5236,362,5233,310,75,5316,2633,4190,5316,1,
- 1,1,1,1,1,1,5816,1,1,1,
+ 1,1,1,1,1,5443,1061,230,1,1,
+ 8845,1,1,1,1,1,1,449,39,39,
+ 1,5481,1061,5293,4231,3495,5293,4888,5381,1,
+ 1061,5448,4866,5882,5883,5884,1,1,1,3386,
+ 5440,5655,1912,1243,3667,5443,370,5167,5163,587,
+ 5171,624,1,3302,1,1,1,5167,5163,587,
+ 5171,624,5399,3302,47,5443,5947,5443,5384,5384,
+ 230,5384,230,230,230,230,230,1,1,1,
1,1,1,1,1,1,1,1,1,1,
- 1,5316,925,1,1,1331,4070,871,5275,3183,
- 5321,5378,5379,126,48,1,1,1,5331,1,
- 1,1,1,1,1,1,5316,1,1,1,
- 1,1,1,5316,515,5316,362,1139,1,5852,
- 5316,5316,1146,1,1,1,5043,5039,2831,5047,
- 3900,3982,2810,362,4004,5003,5030,5036,5009,5012,
- 5024,5021,5027,5018,5015,5006,5033,5327,2768,5331,
- 3953,3922,5316,5316,4955,4952,2211,628,595,802,
- 2810,4976,4048,4026,5335,5316,3841,575,879,5337,
- 663,2700,671,942,5338,5336,569,5332,5333,5334,
- 37,5178,5178,5828,883,1380,330,2667,2640,317,
- 39,39,5242,516,39,4955,4952,2831,628,3900,
- 3982,2810,5310,4004,922,5580,5578,5587,5586,5582,
- 5583,5581,5584,5585,5588,5579,5316,5330,5331,3953,
- 3922,595,5316,2810,5316,4683,1,4703,5352,3112,
- 5316,4048,4026,5335,5142,3841,575,879,5337,663,
- 2700,671,5316,5338,5336,569,5332,5333,5334,45,
- 5221,5221,1052,5316,1380,5316,1,5316,5316,5201,
- 5198,5294,5316,5322,528,5323,141,4955,4952,2831,
- 628,3900,3982,2810,5316,4004,922,5580,5578,5587,
- 5586,5582,5583,5581,5584,5585,5588,5579,5316,1052,
- 1,3953,3922,37,5178,5178,5316,5218,163,5145,
- 128,29,29,4048,4026,5335,5352,3841,575,879,
- 5337,663,2700,671,5717,5338,5336,569,5332,5333,
- 5334,3788,361,3135,5316,4826,1380,4196,5321,528,
- 5757,39,39,1,5043,5039,2831,5047,3900,3982,
- 2810,5352,4004,5003,5030,5036,5009,5012,5024,5021,
- 5027,5018,5015,5006,5033,2768,925,4958,3953,3922,
- 319,5316,5316,163,5771,4289,5316,127,5163,5326,
- 4048,4026,5335,424,3841,575,879,5337,663,2700,
- 671,5316,5338,5336,569,5332,5333,5334,5325,5316,
- 5316,428,3262,1380,2667,2640,99,5316,39,39,
- 39,4955,4952,2831,628,3900,3982,2810,5291,4004,
- 922,5580,5578,5587,5586,5582,5583,5581,5584,5585,
- 5588,5579,2768,1052,103,3953,3922,4516,5316,3302,
- 5316,2826,5316,1,4411,5166,39,4048,4026,5335,
- 5354,3841,575,879,5337,663,2700,671,5316,5338,
- 5336,569,5332,5333,5334,1,1,185,3242,1094,
- 1380,2667,2640,2571,448,5266,5266,5294,39,4955,
- 4952,2831,628,3900,3982,2810,5291,4004,922,5580,
- 5578,5587,5586,5582,5583,5581,5584,5585,5588,5579,
- 440,454,387,3953,3922,5269,5269,48,291,5316,
- 5316,5330,395,3490,3490,4048,4026,5335,73,3841,
- 575,879,5337,663,2700,671,5316,5338,5336,569,
- 5332,5333,5334,5674,1,289,1,600,1380,5785,
- 5779,1,5316,5783,5326,5294,2626,278,420,191,
- 5254,5316,5316,5316,426,4961,4964,4991,5316,5777,
- 5778,3437,5330,5325,925,3300,449,925,191,35,
- 307,5808,5809,5248,5316,5786,5316,2048,5316,4580,
- 5316,3158,5316,2807,5316,3561,5316,3585,5307,5788,
- 1086,3316,5316,5316,5316,4409,4410,1003,1,1738,
- 1762,5316,5789,5787,5810,620,508,5316,3382,506,
- 5316,5316,5316,4286,2096,5316,5316,2134,5316,4853,
- 5316,5799,5798,5811,3389,2,5780,5781,5804,5805,
- 5802,5803,5782,5784,5806,5807,2820,3403,3375,5812,
- 3828,5792,5793,5794,5790,5791,5800,5801,5796,5795,
- 5797,39,4955,4952,2831,628,3900,3982,2810,5320,
- 4004,922,5580,5578,5587,5586,5582,5583,5581,5584,
- 5585,5588,5579,3180,1,4805,3953,3922,4824,3235,
- 37,5316,5316,3290,3375,5316,5316,3794,4048,4026,
- 5335,5316,3841,575,879,5337,663,2700,671,5316,
- 5338,5336,569,5332,5333,5334,39,4955,4952,2831,
- 628,3900,3982,2810,5316,4004,922,5580,5578,5587,
- 5586,5582,5583,5581,5584,5585,5588,5579,510,5316,
- 5316,3953,3922,5316,5316,5316,5316,5316,5316,5316,
- 5316,5316,5316,4048,4026,5335,5316,3841,575,879,
- 5337,663,2700,671,1968,5338,5336,569,5332,5333,
- 5334,5316,5316,5316,3976,5316,1380,5316,5319,39,
- 4955,4952,2831,628,3900,3982,2810,5316,4004,922,
- 5580,5578,5587,5586,5582,5583,5581,5584,5585,5588,
- 5579,5316,5316,5316,3953,3922,5316,1318,5316,5316,
- 5316,5316,5316,5316,5316,5316,4048,4026,5335,5316,
- 3841,575,879,5337,663,2700,671,5316,5338,5336,
- 569,5332,5333,5334,39,4955,4952,2831,628,3900,
- 3982,2810,1790,4004,922,5580,5578,5587,5586,5582,
- 5583,5581,5584,5585,5588,5579,5316,5316,5316,3953,
- 3922,5316,5316,5316,5316,5316,5316,5316,5316,5316,
- 5316,4048,4026,5335,5316,3841,575,879,5337,663,
- 2700,671,5316,5338,5336,569,5332,5333,5334,5316,
- 5316,5316,5316,5316,1380,39,4955,4952,4774,628,
- 3900,3982,2810,5316,4004,922,5580,5578,5587,5586,
- 5582,5583,5581,5584,5585,5588,5579,5316,5316,5316,
- 3953,3922,5316,5316,5316,5316,5316,5316,5316,5316,
- 5316,5316,4048,4026,5335,5316,3841,575,879,5337,
- 663,2700,671,5316,5338,5336,569,5332,5333,5334,
- 39,4955,4952,2831,628,3900,3982,2810,5316,4004,
- 922,5580,5578,5587,5586,5582,5583,5581,5584,5585,
- 5588,5579,5316,5316,5316,3953,3922,5316,5316,5316,
- 5316,5316,5316,5316,5316,5316,5316,4048,4026,5335,
- 5316,3841,575,879,5337,663,2700,671,5316,5338,
- 5336,569,5332,5333,5334,39,4955,4952,2831,628,
- 3900,3982,2810,5316,4004,922,5580,5578,5587,5586,
- 5582,5583,5581,5584,5585,5588,5579,5316,5316,5316,
- 3953,3922,5316,5316,5316,5316,5316,5316,5316,5316,
- 5316,5316,4048,4026,5335,5316,3841,575,879,5337,
- 663,2700,671,5316,5338,5336,569,5332,5333,5334,
- 5316,4955,4952,5316,5354,5316,5316,5316,5316,5316,
- 732,5580,5578,5587,5586,5582,5583,5581,5584,5585,
- 5588,5579,5576,5652,5653,5316,5316,5316,5570,5577,
- 5573,5549,5575,5574,5571,5572,5550,5316,5316,5316,
- 5714,5316,5316,5316,5316,5316,5316,5316,5316,241,
- 5129,5125,5316,5133,5316,5316,639,5715,5716,732,
- 5116,5122,5095,5098,5110,5107,5113,5104,5101,5092,
- 5119,5071,5065,5062,5316,5316,5316,5089,5068,5080,
- 5059,5074,5077,5086,5083,5056,5316,5316,5316,5714,
- 32,388,388,5151,388,388,5151,388,5151,5151,
- 5316,5316,5316,5316,5316,639,5715,5716,5316,5316,
- 5316,5316,388,388,388,5316,223,5151,388,388,
- 388,388,388,388,388,388,388,5580,5578,5587,
- 5586,5582,5583,5581,5584,5585,5588,5579,5576,5652,
- 5653,5316,5316,5316,5570,5577,5573,5549,5575,5574,
- 5571,5572,5550,5151,5316,5316,5316,5316,5316,5316,
- 5316,5316,5316,5151
+ 1,1,5443,5443,230,1,1,8845,1,1,
+ 1,1,1,1,92,1,1,1,1,1061,
+ 5305,5443,2245,5305,3342,5381,1287,1994,132,1061,
+ 4822,5454,365,1,1,1,3386,2393,5655,1912,
+ 1,3667,5443,3487,5443,5443,5457,5458,344,1,
+ 5167,5163,5354,5171,5360,5443,5357,5443,8720,8715,
+ 293,935,935,5947,5443,5384,5384,230,5384,230,
+ 230,230,230,230,1,1,1,1,1,1,
+ 1,1,1,1,1,1,1,1,1,5443,
+ 3529,230,1,1,8845,1,1,1,1,1,
+ 1,3440,5443,1061,1,5443,5263,5260,344,344,
+ 3935,619,5381,344,5443,361,5848,4102,29,444,
+ 1,1,1,3386,5443,5655,1912,4119,3667,5443,
+ 95,39,39,5443,5481,458,5369,5451,75,5369,
+ 5443,4105,5443,1,1,1,1,1,1,1,
+ 5947,1,1,1,1,1,1,1,1,1,
+ 1,1,1,1,5443,5457,5458,1,1,139,
+ 3935,619,5455,5082,5085,5505,5506,126,400,1,
+ 1,1,391,1,1,1,1,1,1,1,
+ 5088,1,1,1,1,1,1,5443,1016,5443,
+ 5450,1149,1,5984,287,5803,5443,1,1,1,
+ 5167,5163,3187,5171,3774,3843,3302,1,3866,5127,
+ 5154,5160,5133,5136,5148,5145,5151,5142,5139,5130,
+ 5157,5454,2664,1513,3820,3797,5443,5079,5076,5443,
+ 634,624,4221,3302,810,5100,3912,3889,5462,5443,
+ 2828,581,995,5464,926,4077,955,951,5465,5463,
+ 575,5459,5460,5461,5443,5325,5322,5902,5443,1434,
+ 2254,2566,2494,5729,39,39,2522,520,39,5079,
+ 5076,3187,634,3774,3843,3302,5437,3866,731,5709,
+ 5707,5716,5715,5711,5712,5710,5713,5714,5717,5708,
+ 5443,5332,5328,3820,3797,5443,5443,5805,5443,2739,
+ 1,4140,5479,3487,432,3912,3889,5462,5266,2828,
+ 581,995,5464,926,4077,955,452,5465,5463,575,
+ 5459,5460,5461,45,5345,5345,39,399,1434,1,
+ 5481,392,5443,5325,5322,5418,4519,5449,5479,5450,
+ 141,5079,5076,3187,634,3774,3843,3302,2416,3866,
+ 731,5709,5707,5716,5715,5711,5712,5710,5713,5714,
+ 5717,5708,5443,1061,1,3820,3797,37,5302,5302,
+ 5443,5342,533,5269,621,99,4352,3912,3889,5462,
+ 5479,2828,581,995,5464,926,4077,955,2559,5465,
+ 5463,575,5459,5460,5461,1,5443,5443,5443,4377,
+ 1434,373,5448,163,1630,39,39,1,5167,5163,
+ 3187,5171,3774,3843,3302,5479,3866,5127,5154,5160,
+ 5133,5136,5148,5145,5151,5142,5139,5130,5157,5882,
+ 5883,5884,3820,3797,5443,5443,371,533,1104,1,
+ 5443,128,391,5453,3912,3889,5462,5453,2828,581,
+ 995,5464,926,4077,955,1,5465,5463,575,5459,
+ 5460,5461,5452,295,5443,5443,5452,1434,163,672,
+ 293,1342,39,39,39,5079,5076,3187,634,3774,
+ 3843,3302,5415,3866,731,5709,5707,5716,5715,5711,
+ 5712,5710,5713,5714,5717,5708,2664,5115,103,3820,
+ 3797,4378,3603,1235,4050,5443,1391,5443,3117,5287,
+ 39,3912,3889,5462,5481,2828,581,995,5464,926,
+ 4077,955,127,5465,5463,575,5459,5460,5461,3340,
+ 1,5443,3537,2080,1434,2566,2494,430,5443,8155,
+ 5390,5418,39,5079,5076,3187,634,3774,3843,3302,
+ 5415,3866,731,5709,5707,5716,5715,5711,5712,5710,
+ 5713,5714,5717,5708,424,1,5443,3820,3797,280,
+ 5393,5443,5378,399,73,5390,5443,2664,3753,3912,
+ 3889,5462,5443,2828,581,995,5464,926,4077,955,
+ 5290,5465,5463,575,5459,5460,5461,5443,1,5443,
+ 1,645,1434,5916,5910,5393,1103,5914,191,5418,
+ 48,35,512,3753,5458,48,2566,2494,510,5457,
+ 453,1513,5443,5908,5909,3691,3488,191,1513,5372,
+ 5443,3292,311,4488,2167,5939,5940,5443,3464,5917,
+ 600,5443,5443,5443,5443,4827,4860,4437,5443,378,
+ 526,4861,3517,5919,2119,5443,5443,1,3416,4679,
+ 5443,665,525,1888,1955,5458,5920,5941,5918,5443,
+ 5457,5443,5443,5443,5443,194,5443,185,5443,514,
+ 5443,3578,4875,2,5443,5930,5929,5942,4881,3047,
+ 5911,5912,5935,5936,5933,5934,5913,5915,5937,5938,
+ 5443,4064,5443,5443,5943,5443,5923,5924,5925,5921,
+ 5922,5931,5932,5927,5926,5928,39,5079,5076,3187,
+ 634,3774,3843,3302,5447,3866,731,5709,5707,5716,
+ 5715,5711,5712,5710,5713,5714,5717,5708,37,3578,
+ 1,3820,3797,4118,3246,3284,3322,4322,2037,2607,
+ 5431,4118,1,3912,3889,5462,5443,2828,581,995,
+ 5464,926,4077,955,4118,5465,5463,575,5459,5460,
+ 5461,39,5079,5076,3187,634,3774,3843,3302,3648,
+ 3866,731,5709,5707,5716,5715,5711,5712,5710,5713,
+ 5714,5717,5708,5443,5443,5443,3820,3797,5434,5443,
+ 5443,5443,5443,5443,5443,5443,5443,5443,3912,3889,
+ 5462,5443,2828,581,995,5464,926,4077,955,5443,
+ 5465,5463,575,5459,5460,5461,5443,5443,5443,5443,
+ 5443,1434,5443,5443,5446,39,5079,5076,3187,634,
+ 3774,3843,3302,5443,3866,731,5709,5707,5716,5715,
+ 5711,5712,5710,5713,5714,5717,5708,5443,5443,5443,
+ 3820,3797,5443,5443,5443,5443,5443,5443,5443,5443,
+ 5443,5443,3912,3889,5462,5443,2828,581,995,5464,
+ 926,4077,955,5443,5465,5463,575,5459,5460,5461,
+ 39,5079,5076,3187,634,3774,3843,3302,1382,3866,
+ 731,5709,5707,5716,5715,5711,5712,5710,5713,5714,
+ 5717,5708,5443,5443,5443,3820,3797,5443,5443,5443,
+ 5443,5443,5443,5443,5443,5443,5443,3912,3889,5462,
+ 5443,2828,581,995,5464,926,4077,955,5443,5465,
+ 5463,575,5459,5460,5461,5443,5443,5443,5443,5443,
+ 1434,39,5079,5076,4755,634,3774,3843,3302,5443,
+ 3866,731,5709,5707,5716,5715,5711,5712,5710,5713,
+ 5714,5717,5708,5443,5443,5443,3820,3797,5443,5443,
+ 5443,5443,5443,5443,5443,5443,5443,5443,3912,3889,
+ 5462,5443,2828,581,995,5464,926,4077,955,5443,
+ 5465,5463,575,5459,5460,5461,39,5079,5076,3187,
+ 634,3774,3843,3302,5443,3866,731,5709,5707,5716,
+ 5715,5711,5712,5710,5713,5714,5717,5708,5443,5443,
+ 5443,3820,3797,5443,5443,5443,5443,5443,5443,5443,
+ 5443,5443,5443,3912,3889,5462,5443,2828,581,995,
+ 5464,926,4077,955,5443,5465,5463,575,5459,5460,
+ 5461,39,5079,5076,3187,634,3774,3843,3302,5443,
+ 3866,731,5709,5707,5716,5715,5711,5712,5710,5713,
+ 5714,5717,5708,5443,5443,5443,3820,3797,5443,5443,
+ 5443,5443,5443,5443,5443,5443,5443,5443,3912,3889,
+ 5462,5443,2828,581,995,5464,926,4077,955,5443,
+ 5465,5463,575,5459,5460,5461,5443,5079,5076,5443,
+ 5481,5443,5443,5443,5443,5443,684,5709,5707,5716,
+ 5715,5711,5712,5710,5713,5714,5717,5708,5704,5783,
+ 5784,5443,5443,5443,5698,5705,5701,5677,5703,5702,
+ 5699,5700,5678,5443,5443,5443,5845,5443,5443,5443,
+ 5443,5443,5443,5443,5443,242,5253,5249,5443,5257,
+ 5443,5443,2705,5846,5847,684,5240,5246,5219,5222,
+ 5234,5231,5237,5228,5225,5216,5243,5195,5189,5186,
+ 5443,5443,5443,5213,5192,5204,5183,5198,5201,5210,
+ 5207,5180,5443,5443,5443,5845,32,392,392,5275,
+ 392,392,5275,392,5275,5275,5443,5443,5443,5443,
+ 5443,2705,5846,5847,5443,5443,5443,5443,392,392,
+ 392,5443,224,5275,392,392,392,392,392,392,
+ 392,392,392,5709,5707,5716,5715,5711,5712,5710,
+ 5713,5714,5717,5708,5704,5783,5784,5443,5443,5443,
+ 5698,5705,5701,5677,5703,5702,5699,5700,5678,5275,
+ 5443,5443,5443,5443,5443,5443,5443,5443,5443,5275
};
};
public final static char termAction[] = TermAction.termAction;
@@ -1783,61 +1810,61 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public interface Asb {
public final static char asb[] = {0,
- 811,7,547,1,852,924,924,924,924,1059,
- 852,862,862,595,862,153,531,155,548,548,
- 548,548,548,548,548,548,548,864,870,875,
- 872,879,877,884,882,886,885,887,304,888,
- 547,531,635,635,635,635,586,719,56,56,
- 859,635,247,204,862,862,56,586,204,204,
- 195,531,938,634,1115,1061,996,531,862,864,
- 706,706,719,547,548,548,548,548,548,548,
- 548,548,548,548,548,548,548,548,548,548,
- 548,548,548,547,547,547,547,547,547,547,
- 547,547,547,547,547,548,204,204,809,809,
- 809,809,401,204,56,56,1057,985,996,301,
- 996,296,996,50,996,980,1059,586,247,247,
- 56,924,548,1057,207,11,487,486,438,1003,
- 1003,1059,155,247,634,547,584,1114,204,583,
- 585,583,204,247,872,872,870,870,870,877,
- 877,877,877,875,875,882,879,879,885,884,
- 886,1073,887,852,852,852,852,586,586,809,
- 808,809,859,586,353,356,298,400,299,1059,
- 586,586,401,809,195,247,903,204,13,15,
- 586,1115,548,635,868,160,204,1061,586,586,
- 585,1115,547,547,547,547,547,852,852,531,
- 354,857,855,356,586,715,474,713,401,301,
- 405,586,401,586,204,491,479,490,15,401,
- 584,204,868,1057,1114,1061,586,584,204,204,
- 204,204,719,719,354,855,914,586,356,1073,
- 299,924,403,108,1063,356,715,714,715,715,
- 401,405,405,586,586,410,547,488,488,420,
- 420,586,9,1057,763,204,586,868,869,868,
- 547,160,113,864,1061,204,204,855,855,1115,
- 301,301,809,924,583,433,1065,580,852,715,
- 715,715,715,586,405,914,912,913,410,547,
- 547,15,586,1115,204,13,479,410,1038,868,
- 719,548,247,113,855,854,584,667,301,251,
- 372,584,715,715,580,908,548,1073,428,917,
- 586,1057,715,715,495,914,548,586,803,15,
- 410,869,204,247,855,909,667,667,761,1075,
- 345,852,299,288,372,584,715,301,1059,1065,
- 548,548,1114,580,928,662,496,586,803,204,
- 803,914,667,667,250,345,761,932,1059,808,
- 924,589,589,909,301,511,928,586,852,495,
- 586,1059,1059,586,852,796,803,914,251,667,
- 909,427,908,204,1059,586,372,251,372,807,
- 807,926,512,1059,586,719,586,586,586,16,
- 796,667,547,116,580,909,586,586,372,635,
- 635,926,511,1073,548,1073,909,510,852,852,
- 852,512,852,586,312,909,909,586,301,204,
- 586,586,203,798,914,204,914,301,586,909,
- 808,503,852,503,512,1073,512,531,531,529,
- 936,531,909,909,431,926,635,798,914,116,
- 909,48,763,512,204,580,204,529,345,852,
- 204,926,116,589,204,204,1051,512,431,512,
- 909,345,547,512,509,913,807,301,301,1053,
- 547,510,719,909,204,907,115,583,512,204,
- 909,907,907,512
+ 745,7,540,1,786,875,875,875,875,1050,
+ 786,811,811,634,811,88,524,90,541,541,
+ 541,541,541,541,541,541,541,813,819,824,
+ 821,828,826,833,831,835,834,836,231,837,
+ 540,524,674,674,674,674,579,927,291,291,
+ 808,674,182,139,811,811,291,579,139,139,
+ 130,524,885,673,1106,1052,987,524,811,813,
+ 627,627,927,540,541,541,541,541,541,541,
+ 541,541,541,541,541,541,541,541,541,541,
+ 541,541,541,540,540,540,540,540,540,540,
+ 540,540,540,540,540,541,139,139,801,801,
+ 801,801,395,139,291,291,1048,976,987,288,
+ 987,283,987,485,987,971,1050,579,182,182,
+ 291,875,541,1048,142,11,477,476,433,994,
+ 994,1050,90,182,673,540,577,1105,139,576,
+ 578,576,139,182,821,821,819,819,819,826,
+ 826,826,826,824,824,831,828,828,834,833,
+ 835,1064,836,786,786,786,786,579,579,801,
+ 800,801,808,579,280,350,285,394,286,1050,
+ 579,579,395,801,130,182,852,139,13,15,
+ 579,1106,541,674,817,95,139,1052,579,579,
+ 578,1106,540,540,540,540,540,786,786,524,
+ 281,806,804,350,579,708,418,706,395,288,
+ 399,579,395,579,139,481,469,480,15,395,
+ 577,139,817,1048,1105,1052,579,577,139,139,
+ 139,139,927,927,281,804,402,579,350,1064,
+ 286,875,397,343,1054,350,708,707,708,708,
+ 395,399,399,579,579,423,540,478,478,405,
+ 405,579,9,1048,712,139,579,817,818,817,
+ 540,95,348,813,1052,139,139,804,804,1106,
+ 288,288,801,875,576,491,1056,573,786,708,
+ 708,708,708,579,399,401,861,401,423,540,
+ 540,15,579,1106,139,13,469,423,1029,817,
+ 927,541,182,348,804,803,577,588,288,186,
+ 366,577,708,708,573,857,541,1064,413,868,
+ 579,1048,708,708,1112,401,402,541,579,795,
+ 15,423,818,139,182,804,858,588,588,969,
+ 1066,272,786,286,223,366,577,708,288,1050,
+ 1056,541,541,1105,573,877,701,1113,579,402,
+ 795,139,795,402,588,588,185,272,969,881,
+ 1050,800,875,582,582,858,288,504,877,579,
+ 786,1112,579,1050,1050,579,786,788,795,402,
+ 186,588,858,412,857,139,1050,579,366,186,
+ 366,799,799,866,505,1050,579,927,579,579,
+ 579,16,788,588,540,51,573,858,579,579,
+ 366,674,674,866,504,1064,541,1064,858,503,
+ 786,786,786,505,786,579,239,858,858,579,
+ 288,139,579,579,138,790,402,139,402,288,
+ 579,858,800,496,786,496,505,1064,505,524,
+ 524,522,503,524,858,858,416,502,674,790,
+ 402,51,858,48,712,505,139,573,139,522,
+ 272,786,139,866,51,582,139,139,1042,505,
+ 416,505,858,272,540,505,502,401,799,288,
+ 288,1044,540,503,927,858,139,856,50,576,
+ 505,139,858,856,856,505
};
};
public final static char asb[] = Asb.asb;
@@ -1845,118 +1872,118 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public interface Asr {
public final static byte asr[] = {0,
- 8,72,117,73,27,70,120,0,5,7,
+ 8,72,118,73,27,69,120,0,5,7,
3,63,6,9,90,28,11,12,23,13,
56,29,30,14,31,32,15,16,33,34,
17,18,35,57,36,10,58,19,22,20,
- 24,21,1,2,4,73,8,40,0,4,
- 8,67,1,2,0,28,11,12,40,23,
- 42,65,13,43,56,29,30,44,14,31,
- 32,15,16,33,66,34,45,17,18,46,
- 35,47,57,49,60,50,36,51,58,19,
- 22,20,24,21,52,53,54,39,3,37,
- 38,9,6,25,26,41,68,7,1,2,
- 4,10,5,0,71,60,37,38,9,6,
- 25,26,41,46,3,4,52,53,54,39,
- 50,44,49,12,21,11,17,15,16,18,
- 19,14,13,20,10,43,47,45,42,51,
- 67,8,7,5,1,2,66,65,0,91,
- 89,25,26,92,93,87,88,55,94,95,
- 96,97,98,99,100,101,106,72,90,69,
- 107,108,109,110,111,112,113,114,115,116,
- 117,71,27,120,68,1,2,9,6,4,
- 3,63,70,73,8,0,65,66,3,10,
- 43,47,45,42,51,12,21,11,17,15,
- 16,18,19,14,13,20,52,53,54,39,
- 50,44,49,5,7,4,37,38,9,6,
- 25,26,41,46,1,2,117,8,0,67,
- 40,23,13,56,29,14,31,32,15,16,
- 33,34,17,18,35,57,36,58,19,22,
- 20,24,21,12,11,28,8,3,9,6,
- 27,62,64,86,30,61,48,7,1,2,
- 5,4,10,59,0,48,4,72,1,2,
- 67,8,0,68,72,90,70,117,73,71,
- 120,11,12,42,65,13,43,44,14,15,
- 16,66,45,17,18,46,47,49,60,50,
- 51,10,19,20,21,52,53,54,39,37,
- 38,25,26,41,8,27,5,7,1,2,
- 4,3,9,6,0,86,59,7,102,103,
- 104,62,8,3,9,6,5,72,71,27,
- 61,28,11,12,40,23,13,56,29,30,
- 14,31,32,15,16,33,34,17,18,35,
- 57,36,10,58,19,22,20,24,21,4,
- 1,2,48,0,1,2,8,71,0,23,
- 60,24,8,68,90,69,70,73,0,74,
- 68,72,90,73,67,63,3,8,70,27,
- 69,0,8,72,67,74,0,28,11,12,
- 23,13,29,30,14,31,32,15,16,33,
- 7,34,17,18,35,36,19,22,20,24,
- 21,1,2,8,63,9,6,5,4,73,
- 27,3,0,4,8,72,67,0,9,6,
- 7,5,4,1,2,3,63,68,69,70,
- 8,73,90,0,22,1,2,4,102,103,
- 104,0,86,102,103,104,48,72,118,121,
- 71,61,74,62,59,64,76,78,84,82,
- 75,80,81,83,85,67,77,79,27,8,
- 28,40,23,56,29,30,31,32,33,34,
- 35,57,36,58,22,24,60,65,66,10,
- 43,47,45,42,51,12,21,11,17,15,
- 16,18,19,14,13,20,52,53,54,39,
- 50,44,49,37,38,25,26,41,46,9,
- 6,3,4,7,5,1,2,0,68,69,
- 70,1,2,0,66,65,25,26,6,92,
- 93,98,9,99,5,41,69,55,68,110,
- 111,107,108,109,115,114,116,88,87,112,
- 113,96,97,94,95,100,101,37,38,70,
- 89,105,63,3,28,11,12,40,23,13,
- 56,29,30,14,31,32,15,16,33,34,
- 17,18,35,57,36,10,58,19,20,24,
- 21,1,2,4,22,0,64,28,11,12,
- 40,23,13,56,29,86,30,14,31,32,
- 15,16,33,59,34,17,18,35,57,36,
- 10,58,19,62,22,20,24,21,8,3,
- 9,6,71,27,61,7,4,48,5,1,
- 2,0,4,55,8,72,67,0,8,73,
- 11,12,42,65,13,43,44,14,15,16,
- 66,7,45,17,18,46,47,49,60,50,
- 51,10,19,20,21,52,53,54,1,2,
- 3,37,38,9,6,25,26,5,41,4,
- 39,0,28,11,12,40,23,13,56,29,
- 30,14,31,32,15,16,33,34,17,18,
- 35,57,36,10,58,19,22,20,24,21,
- 1,2,4,90,0,23,24,74,3,72,
- 27,67,60,8,90,73,69,70,68,0,
- 11,12,42,65,13,43,44,14,15,16,
- 66,7,45,17,18,46,47,49,60,50,
- 51,10,19,20,21,52,53,54,39,1,
- 2,37,38,9,6,25,26,5,41,4,
- 61,3,0,60,23,24,7,5,1,2,
- 4,74,67,119,105,37,38,63,3,91,
- 89,6,92,93,25,26,88,87,55,94,
- 95,96,97,9,98,99,100,68,90,73,
- 120,69,107,108,109,110,111,112,113,114,
- 115,116,72,117,101,106,71,70,27,8,
- 0,69,70,71,8,0,72,8,63,3,
- 69,70,27,55,0,118,0,8,67,70,
- 0,8,67,69,0,75,0,65,66,37,
- 38,9,6,25,26,5,41,46,3,4,
- 7,52,53,54,39,50,44,49,12,21,
+ 24,21,1,2,4,73,8,40,0,71,
+ 60,37,38,9,6,25,26,41,46,3,
+ 4,52,53,54,39,50,44,49,12,21,
11,17,15,16,18,19,14,13,20,10,
- 43,47,45,42,51,63,1,2,0,10,
- 56,40,57,58,12,21,11,17,15,16,
- 18,19,14,13,20,74,72,90,117,71,
- 67,120,119,91,105,89,37,38,25,26,
- 92,93,87,88,55,68,94,95,96,97,
- 98,99,100,101,106,69,107,108,109,110,
- 111,112,113,114,115,116,70,28,23,29,
- 30,31,32,33,34,35,36,22,24,27,
- 8,73,3,63,7,5,9,6,1,2,
- 4,0,27,8,3,7,5,9,6,4,
- 1,2,72,0,40,23,13,56,29,14,
- 31,32,15,16,33,34,17,18,35,57,
- 36,10,58,19,22,20,24,21,12,11,
- 28,8,3,9,27,62,59,64,86,30,
- 61,55,4,6,7,1,2,5,48,0
+ 43,47,45,42,51,67,8,7,5,1,
+ 2,66,65,0,91,89,25,26,92,93,
+ 87,88,55,94,95,96,97,98,99,100,
+ 101,107,72,90,70,108,109,110,111,112,
+ 113,114,115,116,117,118,71,27,120,68,
+ 1,2,9,6,4,3,63,69,73,8,
+ 0,65,66,3,10,43,47,45,42,51,
+ 12,21,11,17,15,16,18,19,14,13,
+ 20,52,53,54,39,50,44,49,5,7,
+ 4,37,38,9,6,25,26,41,46,1,
+ 2,118,8,0,67,40,23,13,56,29,
+ 14,31,32,15,16,33,34,17,18,35,
+ 57,36,58,19,22,20,24,21,12,11,
+ 28,8,3,9,6,27,62,64,86,30,
+ 61,48,7,1,2,5,4,10,59,0,
+ 68,72,90,69,118,73,71,120,11,12,
+ 42,65,13,43,44,14,15,16,66,45,
+ 17,18,46,47,49,60,50,51,10,19,
+ 20,21,52,53,54,39,37,38,25,26,
+ 41,8,27,5,7,1,2,4,3,9,
+ 6,0,48,4,72,1,2,67,8,0,
+ 28,11,12,40,23,42,65,13,43,56,
+ 29,30,44,14,31,32,15,16,33,66,
+ 34,45,17,18,46,35,47,57,49,60,
+ 50,36,51,58,19,22,20,24,21,52,
+ 53,54,39,3,37,38,9,6,25,26,
+ 41,68,7,1,2,4,10,5,0,86,
+ 59,7,103,104,105,62,8,3,9,6,
+ 5,72,71,27,61,28,11,12,40,23,
+ 13,56,29,30,14,31,32,15,16,33,
+ 34,17,18,35,57,36,10,58,19,22,
+ 20,24,21,4,1,2,48,0,1,2,
+ 69,71,8,0,74,68,72,90,73,67,
+ 63,3,8,69,27,70,0,4,8,72,
+ 67,0,23,60,24,8,68,90,70,69,
+ 73,0,28,11,12,23,13,29,30,14,
+ 31,32,15,16,33,7,34,17,18,35,
+ 36,19,22,20,24,21,1,2,8,63,
+ 9,6,5,4,73,27,3,0,9,6,
+ 7,5,4,1,2,3,63,68,70,69,
+ 8,73,90,0,4,8,67,1,2,0,
+ 8,72,67,74,0,86,103,104,105,48,
+ 72,102,121,71,61,74,62,59,64,76,
+ 78,84,82,75,80,81,83,85,67,77,
+ 79,27,8,28,40,23,56,29,30,31,
+ 32,33,34,35,57,36,58,22,24,60,
+ 65,66,10,43,47,45,42,51,12,21,
+ 11,17,15,16,18,19,14,13,20,52,
+ 53,54,39,50,44,49,37,38,25,26,
+ 41,46,9,6,3,4,7,5,1,2,
+ 0,68,70,69,1,2,0,64,28,11,
+ 12,40,23,13,56,29,86,30,14,31,
+ 32,15,16,33,59,34,17,18,35,57,
+ 36,10,58,19,62,22,20,24,21,8,
+ 3,9,6,71,27,61,7,4,48,5,
+ 1,2,0,66,65,25,26,6,92,93,
+ 98,9,99,5,41,70,55,68,111,112,
+ 108,109,110,116,115,117,88,87,113,114,
+ 96,97,94,95,100,101,37,38,69,89,
+ 106,63,3,28,11,12,40,23,13,56,
+ 29,30,14,31,32,15,16,33,34,17,
+ 18,35,57,36,10,58,19,20,24,21,
+ 1,2,4,22,0,4,55,8,72,67,
+ 0,28,11,12,40,23,13,56,29,30,
+ 14,31,32,15,16,33,34,17,18,35,
+ 57,36,10,58,19,22,20,24,21,1,
+ 2,4,90,0,11,12,42,65,13,43,
+ 44,14,15,16,66,7,45,17,18,46,
+ 47,49,60,50,51,10,19,20,21,52,
+ 53,54,39,1,2,37,38,9,6,25,
+ 26,5,41,4,61,3,0,23,24,74,
+ 3,72,27,67,60,8,90,73,70,69,
+ 68,0,60,23,24,7,5,1,2,4,
+ 74,67,119,106,37,38,63,3,91,89,
+ 6,92,93,25,26,88,87,55,94,95,
+ 96,97,9,98,99,100,68,90,73,120,
+ 70,108,109,110,111,112,113,114,115,116,
+ 117,72,118,101,107,71,69,27,8,0,
+ 8,69,71,70,0,102,0,72,8,63,
+ 3,70,69,27,55,0,8,67,69,0,
+ 8,67,70,0,65,66,37,38,9,6,
+ 25,26,5,41,46,3,4,7,52,53,
+ 54,39,50,44,49,12,21,11,17,15,
+ 16,18,19,14,13,20,10,43,47,45,
+ 42,51,63,1,2,0,8,73,11,12,
+ 42,65,13,43,44,14,15,16,66,7,
+ 45,17,18,46,47,49,60,50,51,10,
+ 19,20,21,52,53,54,1,2,3,37,
+ 38,9,6,25,26,5,41,4,39,0,
+ 10,56,40,57,58,12,21,11,17,15,
+ 16,18,19,14,13,20,74,72,90,118,
+ 71,67,120,119,91,106,89,37,38,25,
+ 26,92,93,87,88,55,68,94,95,96,
+ 97,98,99,100,101,107,70,108,109,110,
+ 111,112,113,114,115,116,117,69,28,23,
+ 29,30,31,32,33,34,35,36,22,24,
+ 27,8,73,3,63,7,5,9,6,1,
+ 2,4,0,27,8,3,7,5,9,6,
+ 4,1,2,72,0,40,23,13,56,29,
+ 14,31,32,15,16,33,34,17,18,35,
+ 57,36,10,58,19,22,20,24,21,12,
+ 11,28,8,3,9,27,62,59,64,86,
+ 30,61,55,4,6,7,1,2,5,48,
+ 0,22,1,2,4,103,104,105,0
};
};
public final static byte asr[] = Asr.asr;
@@ -1964,61 +1991,61 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public interface Nasb {
public final static char nasb[] = {0,
- 211,12,80,12,12,12,12,12,12,84,
- 12,12,12,163,12,196,167,184,80,80,
- 241,80,80,80,80,80,80,12,12,12,
- 12,12,12,12,12,12,12,12,80,12,
- 80,167,44,44,44,44,184,208,21,21,
- 33,5,96,161,12,12,21,245,161,161,
- 204,1,80,68,51,12,12,167,12,12,
- 55,55,208,151,80,80,80,80,80,80,
- 80,80,80,80,80,80,80,80,80,80,
- 80,80,80,80,80,80,80,80,80,80,
- 80,80,80,80,151,80,161,161,12,12,
- 12,12,65,161,39,39,130,259,260,176,
- 260,100,260,26,260,253,10,184,96,96,
- 39,12,80,130,91,203,61,61,12,12,
- 12,10,184,96,44,70,196,118,161,195,
- 184,195,161,96,12,12,12,12,12,12,
+ 208,12,75,12,12,12,12,12,12,79,
+ 12,12,12,193,12,181,185,110,75,75,
+ 216,75,75,75,75,75,75,12,12,12,
+ 12,12,12,12,12,12,12,12,75,12,
+ 75,185,48,48,48,48,110,230,29,29,
+ 67,5,93,33,12,12,29,220,33,33,
+ 204,1,75,38,141,12,12,185,12,12,
+ 53,53,230,155,75,75,75,75,75,75,
+ 75,75,75,75,75,75,75,75,75,75,
+ 75,75,75,75,75,75,75,75,75,75,
+ 75,75,75,75,155,75,33,33,12,12,
+ 12,12,35,33,43,43,135,239,240,166,
+ 240,115,240,127,240,233,10,110,93,93,
+ 43,12,75,135,88,203,81,81,12,12,
+ 12,10,110,93,48,158,181,63,33,180,
+ 110,180,33,93,12,12,12,12,12,12,
12,12,12,12,12,12,12,12,12,12,
- 12,12,12,12,12,12,12,145,11,12,
- 12,12,227,184,12,21,144,84,23,84,
- 184,11,12,12,225,96,12,161,235,21,
- 184,51,80,44,21,86,161,12,11,184,
- 122,51,80,151,151,151,151,12,12,39,
- 132,132,132,214,145,47,47,12,200,176,
- 21,200,50,145,161,12,14,12,238,49,
- 145,161,75,227,118,12,245,145,161,161,
- 161,161,208,208,12,21,157,184,31,12,
- 178,12,12,103,275,214,47,47,21,21,
- 50,21,246,11,145,21,80,12,12,61,
- 61,184,13,130,238,161,145,21,63,12,
- 151,227,123,12,12,161,161,132,113,51,
- 176,188,12,12,84,21,125,16,12,21,
- 21,107,107,145,246,157,12,12,113,80,
- 80,21,11,51,161,235,190,21,12,75,
- 208,80,96,123,21,113,196,21,176,267,
- 21,200,21,109,192,31,80,12,98,12,
- 184,130,107,107,134,157,80,246,21,238,
- 113,63,161,96,113,31,248,21,12,267,
- 276,12,187,103,238,196,109,272,140,16,
- 80,80,181,192,12,84,73,200,89,161,
- 21,157,267,248,175,125,12,12,84,12,
- 12,154,154,31,272,156,12,200,12,221,
- 200,84,84,11,12,21,89,157,267,21,
- 31,111,12,161,84,200,238,267,21,12,
- 12,21,148,140,11,208,11,200,200,159,
- 113,248,70,78,16,31,200,179,238,44,
- 44,105,171,12,80,12,31,12,12,12,
- 12,172,12,246,29,31,31,246,36,161,
- 11,11,161,21,157,161,21,176,179,31,
- 12,138,12,12,172,12,172,231,231,262,
- 12,231,31,31,12,21,44,89,157,21,
- 31,12,44,172,161,16,161,283,21,12,
- 161,105,78,154,161,161,21,172,12,172,
- 31,16,151,172,138,157,12,36,36,14,
- 80,12,115,31,161,53,77,195,172,161,
- 31,53,12,172
+ 12,12,12,12,12,12,12,190,11,12,
+ 12,12,267,110,12,29,189,79,40,79,
+ 110,11,12,12,265,93,12,33,250,29,
+ 110,141,75,48,29,83,33,12,11,110,
+ 147,141,75,155,155,155,155,12,12,43,
+ 137,137,137,271,190,102,102,12,200,166,
+ 29,200,140,190,33,12,22,12,253,139,
+ 190,33,19,267,63,12,220,190,33,33,
+ 33,33,230,230,12,29,17,110,145,12,
+ 168,12,12,51,242,271,102,102,29,29,
+ 140,29,221,11,190,29,75,12,12,81,
+ 81,110,21,135,253,33,190,29,61,12,
+ 155,267,148,12,12,33,33,137,108,141,
+ 166,198,12,12,79,29,130,24,12,29,
+ 29,150,150,190,221,106,12,12,108,75,
+ 75,29,11,141,33,250,175,29,12,19,
+ 230,75,93,148,29,108,181,29,166,211,
+ 29,200,29,113,177,145,75,12,59,12,
+ 110,135,150,150,256,106,17,75,221,29,
+ 253,108,61,33,93,108,145,225,29,12,
+ 211,243,12,197,51,253,181,113,118,123,
+ 24,75,75,13,177,12,79,121,200,17,
+ 86,33,29,17,211,225,165,130,12,12,
+ 79,12,12,173,173,145,118,16,12,200,
+ 12,98,200,79,79,11,12,29,86,17,
+ 211,29,145,70,12,33,79,200,253,211,
+ 29,12,12,29,152,123,11,230,11,200,
+ 200,31,108,225,158,73,24,145,200,169,
+ 253,48,48,104,161,12,75,12,145,12,
+ 12,12,12,162,12,221,143,145,145,221,
+ 95,33,11,11,33,29,17,33,29,166,
+ 169,145,12,171,12,12,162,12,162,282,
+ 282,260,12,282,145,145,12,29,48,86,
+ 17,29,145,12,48,162,33,24,33,278,
+ 29,12,33,104,73,173,33,33,29,162,
+ 12,162,145,24,155,162,171,17,12,95,
+ 95,22,75,12,286,145,33,223,72,180,
+ 162,33,145,223,12,162
};
};
public final static char nasb[] = Nasb.nasb;
@@ -2026,35 +2053,35 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public interface Nasr {
public final static char nasr[] = {0,
- 3,13,10,9,152,150,119,149,148,5,
- 2,0,32,93,92,64,5,2,9,10,
- 4,0,42,1,0,153,183,0,4,39,
- 38,0,4,195,0,42,56,0,5,10,
- 9,2,13,4,45,0,107,0,136,2,
- 65,0,162,0,5,2,9,10,139,0,
- 75,0,141,0,136,65,0,175,0,4,
- 29,0,193,0,143,0,67,129,42,10,
- 9,2,13,5,0,4,177,0,125,0,
- 13,2,9,10,5,81,0,191,0,153,
- 188,0,156,0,161,0,108,0,159,0,
- 184,0,62,0,4,178,0,65,138,137,
- 0,2,113,0,4,10,9,2,64,5,
- 88,49,0,5,100,192,0,111,0,172,
- 5,171,0,44,2,3,0,48,42,179,
- 4,39,0,106,0,4,67,0,45,4,
- 32,0,4,45,196,0,4,45,39,0,
- 67,39,48,68,4,42,0,121,102,0,
- 65,49,0,2,44,0,1,121,0,93,
- 92,49,64,58,5,10,9,2,0,2,
- 57,0,32,92,93,4,0,4,95,0,
- 4,174,0,4,48,80,100,46,5,0,
- 5,100,168,0,93,92,49,5,58,0,
- 4,45,101,0,49,5,88,22,4,0,
- 5,10,9,13,3,1,0,114,4,48,
- 80,0,2,5,119,115,116,117,13,85,
- 0,39,4,22,181,0,4,48,80,82,
- 0,42,160,0,38,5,2,9,10,4,
- 158,0,45,4,180,0
+ 3,13,10,9,153,151,120,150,149,5,
+ 2,0,66,50,0,4,68,0,144,0,
+ 33,94,93,65,5,2,9,10,4,0,
+ 46,4,33,0,137,66,0,177,0,43,
+ 1,0,5,10,9,2,13,4,46,0,
+ 158,0,5,2,9,10,140,0,193,0,
+ 142,0,66,139,138,0,4,197,0,186,
+ 0,68,130,43,10,9,2,13,5,0,
+ 76,0,4,179,0,126,0,13,2,9,
+ 10,5,82,0,43,57,0,5,101,170,
+ 0,108,0,163,0,155,0,63,0,2,
+ 45,0,161,0,154,190,0,43,162,0,
+ 195,0,174,5,173,0,154,185,0,4,
+ 10,9,2,65,5,89,50,0,137,2,
+ 66,0,4,40,39,0,2,114,0,109,
+ 0,49,43,181,4,40,0,4,30,0,
+ 68,40,49,69,4,43,0,122,103,0,
+ 112,0,107,0,94,93,50,65,59,5,
+ 10,9,2,0,4,46,40,0,45,2,
+ 3,0,4,46,198,0,1,122,0,2,
+ 58,0,33,93,94,4,0,4,176,0,
+ 4,49,81,83,0,5,10,9,13,3,
+ 1,0,164,0,115,4,49,81,0,4,
+ 96,0,2,5,120,116,117,118,13,86,
+ 0,39,5,2,9,10,4,160,0,50,
+ 5,89,23,4,0,5,101,194,0,40,
+ 4,23,183,0,94,93,50,5,59,0,
+ 4,49,81,101,47,5,0,46,4,182,
+ 0,4,46,102,0,4,180,0
};
};
public final static char nasr[] = Nasr.nasr;
@@ -2068,12 +2095,12 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
70,73,76,83,89,98,7,8,112,53,
14,55,61,67,84,88,90,93,94,97,
99,109,110,111,19,63,91,101,77,95,
- 122,103,1,46,58,78,121,20,33,44,
+ 122,103,1,46,58,78,121,20,44,33,
119,30,118,96,108,49,50,56,57,59,
69,71,72,85,92,65,17,18,6,32,
4,15,16,21,22,23,24,25,26,27,
- 28,80,81,82,5,29,34,35,36,37,
- 38,39,40,41,42,43,117,51,3,123,
+ 28,51,80,81,82,5,29,34,35,36,
+ 37,38,39,40,41,42,43,117,3,123,
62,116
};
};
@@ -2083,26 +2110,26 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public interface NonterminalIndex {
public final static char nonterminalIndex[] = {0,
130,135,136,0,0,134,0,0,229,235,
- 133,0,143,132,0,0,142,148,0,0,
- 149,180,158,159,160,161,162,163,151,164,
- 165,126,166,141,167,168,0,128,131,169,
- 0,129,138,137,152,177,0,0,0,0,
- 0,0,0,0,145,172,0,155,0,204,
- 0,187,201,205,0,0,127,171,0,0,
- 0,0,0,0,206,175,0,0,0,0,
- 125,178,0,0,186,0,0,202,212,157,
- 208,209,210,0,0,146,0,0,207,220,
- 174,196,0,0,211,0,0,0,0,240,
- 241,0,147,179,189,190,191,192,193,195,
- 0,198,0,199,0,214,217,0,0,219,
- 0,238,0,239,0,0,139,140,144,0,
- 0,154,156,0,170,0,181,182,183,184,
- 185,188,0,0,194,0,197,203,0,215,
- 216,0,0,221,224,0,226,228,0,232,
- 233,234,237,124,0,150,153,0,173,0,
- 176,0,0,200,213,218,0,0,222,223,
- 225,227,0,230,231,236,242,243,0,0,
- 0,0
+ 133,0,143,0,132,0,0,142,148,0,
+ 0,149,180,158,159,160,161,162,163,151,
+ 164,165,126,166,141,167,168,0,128,131,
+ 169,0,129,138,137,152,177,0,0,0,
+ 0,0,0,0,0,145,172,0,155,0,
+ 204,0,187,201,205,0,0,127,171,0,
+ 0,0,0,0,0,206,175,0,0,0,
+ 0,125,178,0,0,186,0,0,202,212,
+ 157,208,209,210,0,0,146,0,0,207,
+ 220,174,196,0,0,211,0,0,0,0,
+ 240,241,0,147,179,189,190,191,192,193,
+ 195,0,198,0,199,0,214,217,0,0,
+ 219,0,238,0,239,0,0,139,140,144,
+ 0,0,154,156,0,170,0,181,182,183,
+ 184,185,188,0,0,0,194,0,197,203,
+ 0,215,216,0,0,221,224,0,226,228,
+ 0,232,233,234,237,124,0,150,153,0,
+ 173,0,176,0,0,200,213,218,0,0,
+ 222,223,225,227,0,230,231,236,242,243,
+ 0,0,0,0
};
};
public final static char nonterminalIndex[] = NonterminalIndex.nonterminalIndex;
@@ -2110,18 +2137,18 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public interface ScopePrefix {
public final static char scopePrefix[] = {
- 159,587,606,304,311,538,554,565,576,370,
- 267,281,298,318,331,42,292,390,428,167,
- 595,481,20,51,71,80,85,90,130,195,
- 324,339,344,144,273,287,509,27,144,380,
- 344,614,27,217,246,1,14,61,76,106,
- 349,359,363,446,474,503,530,534,624,628,
- 632,97,7,97,408,424,437,458,522,116,
- 116,232,437,545,561,572,583,207,492,56,
+ 159,311,589,608,304,319,540,556,567,578,
+ 372,267,281,298,333,42,292,392,430,167,
+ 597,483,20,51,71,80,85,90,130,195,
+ 326,341,346,144,273,287,511,27,144,382,
+ 346,616,27,217,246,1,14,61,76,106,
+ 351,361,365,448,476,505,532,536,626,630,
+ 634,97,7,97,410,426,439,460,524,116,
+ 116,232,439,547,563,574,585,207,494,56,
56,156,222,225,56,241,262,225,225,56,
- 367,471,478,156,56,647,110,353,412,452,
- 465,56,353,399,177,104,450,636,643,636,
- 643,65,418,137,104,104,251
+ 369,473,480,156,56,649,110,355,414,454,
+ 467,56,355,401,177,104,452,638,645,638,
+ 645,65,420,137,104,104,251
};
};
public final static char scopePrefix[] = ScopePrefix.scopePrefix;
@@ -2129,18 +2156,18 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public interface ScopeSuffix {
public final static char scopeSuffix[] = {
- 18,5,5,135,135,5,5,5,5,377,
- 135,95,135,135,337,48,278,396,434,173,
- 67,487,25,25,25,59,59,95,135,200,
- 329,329,337,149,278,101,514,38,152,385,
- 601,619,32,211,211,5,18,5,59,95,
- 329,95,95,135,244,5,5,5,5,5,
- 244,645,11,101,377,377,377,462,514,120,
- 125,236,441,549,549,549,549,211,496,59,
+ 18,135,5,5,135,135,5,5,5,5,
+ 379,135,95,135,339,48,278,398,436,173,
+ 67,489,25,25,25,59,59,95,135,200,
+ 331,331,339,149,278,101,516,38,152,387,
+ 603,621,32,211,211,5,18,5,59,95,
+ 331,95,95,135,244,5,5,5,5,5,
+ 244,647,11,101,379,379,379,464,516,120,
+ 125,236,443,551,551,551,551,211,498,59,
59,5,5,228,230,244,5,265,265,230,
- 95,5,244,5,507,5,113,356,415,455,
- 468,526,517,402,180,95,95,638,638,640,
- 640,67,420,139,202,187,253
+ 95,5,244,5,509,5,113,358,417,457,
+ 470,528,519,404,180,95,95,640,640,642,
+ 642,67,422,139,202,187,253
};
};
public final static char scopeSuffix[] = ScopeSuffix.scopeSuffix;
@@ -2148,18 +2175,18 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public interface ScopeLhs {
public final static char scopeLhs[] = {
- 46,17,17,79,117,17,17,17,17,71,
- 84,47,79,117,116,77,53,71,70,46,
- 17,19,3,7,8,168,168,164,115,46,
- 116,116,118,128,54,47,139,133,128,71,
- 17,17,133,94,59,135,74,171,168,164,
- 118,182,51,56,143,18,17,17,17,17,
- 17,12,111,164,71,70,70,37,139,130,
- 130,58,70,17,17,17,17,94,19,172,
- 168,184,92,99,61,75,60,158,76,118,
- 72,144,143,175,139,16,164,118,101,69,
- 21,139,139,71,46,164,66,137,44,137,
- 44,171,101,115,46,46,59
+ 47,118,18,18,80,118,18,18,18,18,
+ 72,85,48,80,117,78,54,72,71,47,
+ 18,20,3,7,8,170,170,166,116,47,
+ 117,117,119,129,55,48,140,134,129,72,
+ 18,18,134,95,60,136,75,173,170,166,
+ 119,184,52,57,144,19,18,18,18,18,
+ 18,12,112,166,72,71,71,38,140,131,
+ 131,59,71,18,18,18,18,95,20,174,
+ 170,186,93,100,62,76,61,160,77,119,
+ 73,145,144,177,140,17,166,119,102,70,
+ 22,140,140,72,47,166,67,138,45,138,
+ 45,173,102,116,47,47,60
};
};
public final static char scopeLhs[] = ScopeLhs.scopeLhs;
@@ -2167,16 +2194,16 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public interface ScopeLa {
public final static byte scopeLa[] = {
- 118,73,73,71,71,73,73,73,73,73,
- 71,27,71,71,1,68,1,73,121,67,
+ 102,71,73,73,71,71,73,73,73,73,
+ 73,71,27,71,1,68,1,73,121,67,
3,73,68,68,68,1,1,27,71,67,
- 1,1,1,71,1,1,4,68,70,27,
- 1,1,68,73,73,73,118,73,1,27,
- 1,27,27,71,117,73,73,73,73,73,
- 117,1,73,1,73,73,73,72,4,1,
+ 1,1,1,71,1,1,4,68,69,27,
+ 1,1,68,73,73,73,102,73,1,27,
+ 1,27,27,71,118,73,73,73,73,73,
+ 118,1,73,1,73,73,73,72,4,1,
1,6,73,68,68,68,68,73,3,1,
- 1,73,73,3,1,117,73,1,1,1,
- 27,73,117,73,5,73,1,48,69,72,
+ 1,73,73,3,1,118,73,1,1,1,
+ 27,73,118,73,5,73,1,48,70,72,
73,1,48,75,74,27,27,4,4,4,
4,3,1,67,1,1,3
};
@@ -2186,8 +2213,8 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public interface ScopeStateSet {
public final static char scopeStateSet[] = {
- 85,250,250,107,154,250,250,250,250,95,
- 109,85,107,154,154,107,87,95,95,85,
+ 85,154,250,250,107,154,250,250,250,250,
+ 95,109,85,107,154,107,87,95,95,85,
250,250,182,226,226,54,54,82,154,85,
154,154,154,313,87,85,137,50,313,95,
250,250,50,146,66,26,95,30,54,82,
@@ -2205,71 +2232,72 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public interface ScopeRhs {
public final static char scopeRhs[] = {0,
- 320,3,60,0,126,0,319,3,118,0,
- 126,172,0,126,178,74,0,216,0,253,
- 126,55,124,0,20,0,295,126,55,48,
+ 322,3,60,0,126,0,321,3,102,0,
+ 126,172,0,126,179,74,0,216,0,254,
+ 126,55,124,0,20,0,297,126,55,48,
0,20,53,0,33,132,0,20,53,0,
- 0,295,126,55,48,202,0,20,178,0,
- 253,126,55,132,0,179,127,0,141,0,
- 217,3,294,0,294,0,2,0,126,0,
- 253,126,55,131,0,179,127,222,0,179,
- 127,22,222,0,179,127,315,22,0,128,
- 187,166,127,0,128,0,187,166,127,0,
- 134,128,0,170,0,311,126,170,0,126,
- 170,0,222,128,0,166,310,241,0,136,
- 0,0,0,0,135,0,0,0,0,309,
- 126,164,252,0,127,0,252,0,129,0,
- 0,127,0,308,126,164,251,0,127,0,
- 0,44,127,0,0,151,3,0,126,282,
- 281,126,74,280,170,0,281,126,74,280,
- 170,0,215,0,216,0,280,170,0,96,
+ 0,297,126,55,48,203,0,20,178,0,
+ 254,126,55,132,0,180,127,0,141,0,
+ 218,3,296,0,296,0,2,0,126,0,
+ 254,126,55,131,0,180,127,223,0,180,
+ 127,22,223,0,180,127,317,22,0,128,
+ 188,167,127,0,128,0,188,167,127,0,
+ 134,128,0,171,0,313,126,171,0,126,
+ 171,0,222,128,0,167,312,242,0,136,
+ 0,0,0,0,135,0,0,0,0,311,
+ 126,165,253,0,127,0,253,0,129,0,
+ 0,127,0,310,126,165,252,0,127,0,
+ 0,44,127,0,0,152,3,0,126,284,
+ 283,126,74,282,171,0,283,126,74,282,
+ 171,0,215,0,216,0,282,171,0,96,
0,0,215,0,216,0,203,96,0,0,
- 215,0,216,0,281,126,280,170,0,215,
- 0,203,0,0,215,0,225,126,3,0,
- 126,0,0,0,0,0,225,126,3,214,
- 0,221,3,0,210,126,0,208,0,146,
- 0,171,166,127,0,10,0,0,0,0,
- 212,63,0,125,0,225,126,3,182,0,
- 182,0,2,0,0,126,0,0,0,0,
- 0,198,3,0,201,0,234,126,164,39,
- 30,0,179,127,59,62,0,196,128,0,
- 128,179,127,278,62,0,179,127,278,62,
- 0,179,127,69,123,59,0,234,126,164,
- 243,59,0,234,126,164,243,224,59,0,
- 276,126,164,123,305,56,0,276,126,164,
- 305,56,0,179,127,275,56,0,135,0,
- 187,179,127,275,241,0,136,0,179,127,
- 275,241,0,187,166,127,10,0,166,127,
- 10,0,166,127,0,93,136,0,268,126,
- 144,0,268,126,170,0,161,84,0,300,
- 160,302,303,3,81,0,126,171,0,302,
- 303,3,81,0,128,0,126,171,0,161,
- 3,75,190,80,0,126,128,0,190,80,
- 0,108,2,131,126,128,0,223,3,75,
- 0,198,167,0,33,169,0,167,0,175,
- 33,169,0,223,3,85,0,190,154,223,
- 3,83,0,62,171,0,223,3,83,0,
- 126,171,62,171,0,301,126,164,0,161,
- 0,212,77,0,30,171,0,161,106,158,
- 0,30,169,0,177,3,0,126,149,0,
- 217,3,0,212,63,265,0,161,63,0,
- 177,3,297,66,127,0,126,0,0,0,
- 0,297,66,127,0,2,145,126,0,0,
- 0,0,177,3,46,0,147,0,125,48,
- 166,127,0,31,147,0,93,136,31,147,
- 0,218,179,127,0,146,31,147,0,177,
- 3,51,0,161,3,51,0,161,3,68,
- 177,55,42,0,177,55,42,0,20,2,
- 131,126,0,161,3,68,177,55,45,0,
- 177,55,45,0,161,3,68,177,55,47,
- 0,177,55,47,0,161,3,68,177,55,
- 43,0,177,55,43,0,217,3,125,187,
- 166,127,10,0,125,187,166,127,10,0,
- 136,2,0,126,0,217,3,124,258,166,
- 127,10,0,258,166,127,10,0,135,2,
- 0,126,0,217,3,135,0,217,3,139,
- 0,161,63,139,0,260,0,31,0,31,
- 139,0,165,0,134,0,161,3,0
+ 215,0,216,0,283,126,282,171,0,215,
+ 0,203,0,0,215,0,226,126,3,0,
+ 126,0,0,0,0,0,226,126,3,215,
+ 0,222,3,0,211,126,0,208,0,146,
+ 0,172,167,127,0,10,0,0,0,0,
+ 213,63,0,125,0,226,126,3,183,0,
+ 183,0,2,0,0,126,0,0,0,0,
+ 0,199,3,0,201,0,235,126,165,39,
+ 30,0,180,127,59,62,0,196,128,0,
+ 128,180,127,280,62,0,180,127,280,62,
+ 0,180,127,70,123,59,0,235,126,165,
+ 244,59,0,235,126,165,244,225,59,0,
+ 277,278,126,165,123,307,56,0,277,278,
+ 126,165,307,56,0,180,127,276,56,0,
+ 135,0,188,180,127,276,242,0,136,0,
+ 180,127,276,242,0,188,167,127,10,0,
+ 167,127,10,0,167,127,0,93,136,0,
+ 269,126,145,0,269,126,171,0,162,84,
+ 0,302,161,304,305,3,81,0,126,171,
+ 0,304,305,3,81,0,128,0,126,171,
+ 0,162,3,75,191,80,0,126,128,0,
+ 191,80,0,108,2,131,126,128,0,224,
+ 3,75,0,199,168,0,33,169,0,168,
+ 0,175,33,169,0,224,3,85,0,191,
+ 155,224,3,83,0,62,171,0,224,3,
+ 83,0,126,171,62,171,0,303,126,165,
+ 0,162,0,213,77,0,30,171,0,162,
+ 107,159,0,30,169,0,178,3,0,126,
+ 149,0,218,3,0,213,63,266,0,162,
+ 63,0,178,3,299,66,127,0,126,0,
+ 0,0,0,299,66,127,0,2,145,126,
+ 0,0,0,0,178,3,46,0,147,0,
+ 125,48,167,127,0,31,147,0,93,136,
+ 31,147,0,219,180,127,0,146,31,147,
+ 0,178,3,51,0,162,3,51,0,162,
+ 3,68,178,55,42,0,178,55,42,0,
+ 20,2,131,126,0,162,3,68,178,55,
+ 45,0,178,55,45,0,162,3,68,178,
+ 55,47,0,178,55,47,0,162,3,68,
+ 178,55,43,0,178,55,43,0,218,3,
+ 125,188,167,127,10,0,125,188,167,127,
+ 10,0,136,2,0,126,0,218,3,124,
+ 259,167,127,10,0,259,167,127,10,0,
+ 135,2,0,126,0,218,3,135,0,218,
+ 3,140,0,162,63,140,0,261,0,31,
+ 0,31,139,0,166,0,134,0,162,3,
+ 0
};
};
public final static char scopeRhs[] = ScopeRhs.scopeRhs;
@@ -2277,38 +2305,38 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public interface ScopeState {
public final static char scopeState[] = {0,
- 4769,4410,3585,3561,0,3020,2464,2587,1253,0,
- 3642,3587,3502,3400,3345,3290,3235,3180,3125,2850,
- 2795,4409,0,1780,0,1955,1180,1050,0,2820,
- 2626,0,3642,3587,1580,1412,3502,3400,3345,3290,
- 3235,3180,680,3125,2850,2795,4720,4412,0,3292,
- 3135,3126,0,3389,2571,0,996,819,0,4629,
- 4418,0,3210,998,0,4327,4629,4314,3059,4418,
- 2925,3475,4340,3828,2394,3814,601,2556,582,2519,
- 0,4601,3330,0,4601,3330,4199,4574,4535,4189,
- 4515,4476,4180,4411,3642,3587,3502,3400,3345,3290,
- 3235,3180,3125,2850,2795,0,4601,3330,4199,4574,
- 4535,4189,4515,4476,4180,4411,0,2840,2435,0,
- 2394,4327,4697,4314,3059,4655,2556,4304,4482,820,
- 3562,3511,3596,4207,3559,0,942,802,0,871,
- 0,2091,2002,865,806,3059,3511,2925,582,2519,
- 3112,724,0,4355,537,2880,0,4749,4738,4727,
- 4691,4666,4662,4642,4507,3579,3461,4834,3457,3102,
- 4820,4815,4799,2694,4499,3098,2968,741,4364,2979,
- 0,3944,3863,4749,4738,4727,3673,2856,4691,2601,
- 4666,4662,4642,4507,3579,3496,2733,2729,3461,2621,
- 4834,2552,2532,2512,2172,3457,3102,933,2473,4820,
- 616,4815,3433,4799,2694,4499,873,3098,2968,741,
- 4355,595,2880,4364,2979,2590,2459,2256,628,1318,
- 2925,3475,4340,3828,2394,4327,3814,4629,4314,3059,
- 601,2556,582,4418,2519,2536,2439,942,802,2700,
- 4158,4136,2220,2268,2334,2302,2478,2407,2365,3033,
- 2938,2768,2741,2667,2640,3790,3766,3742,3717,3072,
- 4114,4092,4070,4048,4026,4004,3982,3953,3922,3900,
- 3841,1968,2182,2134,2096,2048,2010,1094,1335,1276,
- 1231,883,1926,1052,827,746,690,1884,1842,1800,
- 1758,1716,1674,1632,1590,1548,1506,1464,537,1422,
- 1380,1189,1007,964,1146,0
+ 4735,4861,4860,4827,0,3254,1991,3130,1154,0,
+ 3623,3565,3501,3398,3360,3322,3284,3246,3208,2988,
+ 2950,4437,0,948,0,1683,1341,1060,0,3047,
+ 2559,0,3623,3565,1812,1726,3501,3398,3360,3322,
+ 3284,3246,1094,3208,2988,2950,1597,1511,0,4753,
+ 3495,3510,0,1103,4352,0,1005,823,0,4533,
+ 4306,0,657,585,0,4273,4533,2808,3142,4306,
+ 3064,3474,4286,4064,2481,4050,606,2713,587,2692,
+ 0,4555,4549,0,4555,4549,4186,4447,4431,4113,
+ 4365,4349,4099,3603,3623,3565,3501,3398,3360,3322,
+ 3284,3246,3208,2988,2950,0,4555,4549,4186,4447,
+ 4431,4113,4365,4349,4099,3603,0,2739,873,0,
+ 2481,4273,4782,2808,3142,4458,2713,2979,4326,824,
+ 4320,4524,1322,3507,881,0,951,810,0,619,
+ 0,2544,1948,1776,1020,3142,4524,3064,587,2692,
+ 3487,2799,0,4242,542,2735,0,4726,4705,4688,
+ 4667,4659,4652,4641,4637,4587,4566,4818,4171,3458,
+ 4814,4807,4803,3223,4790,3195,2706,748,2744,1386,
+ 0,3525,2599,4726,4705,4688,2249,2162,4667,941,
+ 4659,4652,4641,4637,4587,3308,4389,4155,4566,2968,
+ 4818,2793,2780,2594,2245,4171,3458,2158,2862,4814,
+ 3422,4807,2727,4803,3223,4790,743,3195,2706,748,
+ 4242,624,2735,2744,1386,2623,2547,1330,634,2607,
+ 3064,3474,4286,4064,2481,4273,4050,4533,2808,3142,
+ 606,2713,587,4306,2692,2955,2527,951,810,4077,
+ 4027,4004,2254,2293,2361,2328,2452,2423,2393,2927,
+ 2900,2664,2636,2566,2494,3749,3724,3699,3160,3077,
+ 3981,3958,3935,3912,3889,3866,3843,3820,3797,3774,
+ 2828,2037,2206,2167,2119,2080,1243,1104,1391,1342,
+ 1287,891,1994,1061,834,753,696,1951,1908,1865,
+ 1822,1779,1736,1693,1650,1607,1564,1521,542,1478,
+ 1434,1200,1016,972,1156,0
};
};
public final static char scopeState[] = ScopeState.scopeState;
@@ -2316,61 +2344,61 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public interface InSymb {
public final static char inSymb[] = {0,
- 0,296,126,267,51,42,45,47,43,10,
+ 0,298,126,268,51,42,45,47,43,10,
135,124,131,7,132,4,3,127,46,41,
- 5,26,25,6,9,38,37,139,145,147,
- 146,149,148,152,150,155,153,157,60,158,
- 70,3,55,55,55,55,127,3,55,55,
- 167,126,63,3,65,66,55,5,177,161,
- 167,126,65,66,166,165,124,3,123,125,
- 105,119,3,63,89,91,26,25,93,92,
+ 5,26,25,6,9,38,37,140,146,148,
+ 147,150,149,153,151,156,154,158,60,159,
+ 69,3,55,55,55,55,127,3,55,55,
+ 168,126,63,3,65,66,55,5,178,162,
+ 168,126,65,66,167,166,124,3,123,125,
+ 106,119,3,63,89,91,26,25,93,92,
6,95,94,68,55,87,88,9,97,96,
- 99,98,100,116,115,114,113,112,111,110,
- 109,108,107,69,106,101,177,161,177,177,
- 177,177,166,217,126,126,126,269,270,252,
- 271,241,272,56,273,274,10,127,63,63,
- 126,124,154,126,63,3,215,214,135,125,
- 124,10,127,63,297,3,187,4,177,48,
- 127,48,217,161,146,146,145,145,145,148,
- 148,148,148,147,147,150,149,149,153,152,
- 155,161,157,68,68,68,68,187,258,253,
- 256,253,210,127,171,164,310,275,305,275,
- 127,179,166,253,210,212,158,221,126,3,
- 127,166,203,3,298,167,151,260,187,127,
- 179,166,72,3,3,3,3,125,124,70,
- 166,9,6,126,166,228,125,124,127,123,
- 164,127,166,48,225,226,144,227,126,166,
- 48,177,126,126,4,218,5,48,161,161,
- 161,161,3,3,171,171,309,127,168,222,
- 59,48,202,62,170,312,125,124,229,229,
- 179,164,126,179,187,154,69,221,198,186,
- 182,127,3,126,70,225,187,154,262,265,
- 63,180,4,123,125,217,217,6,126,166,
- 243,224,55,48,278,280,126,3,182,229,
- 229,126,126,187,126,276,123,277,126,69,
- 69,3,179,166,198,126,210,154,125,126,
- 3,63,161,4,171,184,187,164,243,68,
- 55,127,74,126,210,311,72,289,198,124,
- 127,126,126,126,72,276,69,70,219,126,
- 126,262,217,212,126,128,126,164,30,48,
- 170,64,59,62,126,179,126,281,72,70,
- 72,69,166,210,314,222,22,127,126,225,
- 219,234,236,126,39,126,3,123,59,295,
- 48,10,40,128,281,164,293,127,294,70,
- 127,22,315,179,60,154,126,234,126,164,
- 268,246,279,39,69,127,70,68,55,228,
- 228,282,126,70,179,3,179,127,127,3,
- 126,126,3,69,70,154,127,179,126,69,
- 69,126,301,79,77,1,161,8,85,83,
- 81,80,75,82,84,78,76,59,74,217,
- 179,179,320,219,234,151,164,251,179,224,
- 295,283,118,8,72,212,72,3,3,3,
- 190,3,123,161,123,178,70,126,126,164,
- 224,68,3,72,223,167,223,303,144,75,
- 223,126,126,40,90,319,167,154,198,154,
- 302,126,3,154,283,308,228,154,154,126,
- 69,190,160,268,161,189,70,69,121,300,
- 154,189,8,154
+ 99,98,100,117,116,115,114,113,112,111,
+ 110,109,108,70,107,101,178,162,178,178,
+ 178,178,167,218,126,126,126,270,271,253,
+ 272,242,273,56,274,275,10,127,63,63,
+ 126,124,155,126,63,3,216,215,135,125,
+ 124,10,127,63,299,3,188,4,178,48,
+ 127,48,218,162,147,147,146,146,146,149,
+ 149,149,149,148,148,151,150,150,154,153,
+ 156,162,158,68,68,68,68,188,259,254,
+ 257,254,211,127,172,165,312,276,307,276,
+ 127,180,167,254,211,213,159,222,126,3,
+ 127,167,204,3,300,168,152,261,188,127,
+ 180,167,72,3,3,3,3,125,124,69,
+ 167,9,6,126,167,229,125,124,127,123,
+ 165,127,167,48,226,227,145,228,126,167,
+ 48,178,126,126,4,219,5,48,162,162,
+ 162,162,3,3,172,172,311,127,169,223,
+ 59,48,203,62,171,314,125,124,230,230,
+ 180,165,126,180,188,155,70,222,199,187,
+ 183,127,3,126,69,226,188,155,263,266,
+ 63,181,4,123,125,218,218,6,126,167,
+ 244,225,55,48,280,282,126,3,183,230,
+ 230,126,126,188,126,278,123,279,126,70,
+ 70,3,180,167,199,126,211,155,125,126,
+ 3,63,162,4,172,185,188,165,244,68,
+ 55,127,74,126,211,313,72,291,199,124,
+ 127,126,126,126,72,278,277,70,69,220,
+ 126,126,263,218,213,126,128,126,165,30,
+ 48,171,64,59,62,126,180,126,283,72,
+ 69,72,70,167,211,316,223,22,127,277,
+ 126,226,220,235,237,126,39,126,3,123,
+ 59,297,48,10,40,128,283,165,295,127,
+ 296,69,127,22,317,180,60,155,126,235,
+ 126,165,269,247,281,39,70,127,69,68,
+ 55,229,229,284,126,69,180,3,180,127,
+ 127,3,126,126,3,70,69,155,127,180,
+ 126,70,70,126,303,79,77,1,162,8,
+ 85,83,81,80,75,82,84,78,76,59,
+ 74,218,180,180,322,220,235,152,165,252,
+ 180,225,297,285,102,8,72,213,72,3,
+ 3,3,191,3,123,162,123,179,69,126,
+ 126,165,225,68,3,72,224,168,224,305,
+ 145,75,224,126,126,40,90,321,168,155,
+ 199,155,304,126,3,155,285,310,229,155,
+ 155,126,70,191,161,269,162,190,69,70,
+ 121,302,155,190,8,155
};
};
public final static char inSymb[] = InSymb.inSymb;
@@ -2645,20 +2673,20 @@ public class CPPExpressionParserprs implements lpg.lpgjavaruntime.ParseTable, CP
public final int getMaxNameLength() { return MAX_NAME_LENGTH; }
public final static int
- NUM_STATES = 544,
+ NUM_STATES = 546,
NT_OFFSET = 122,
- LA_STATE_OFFSET = 5852,
+ LA_STATE_OFFSET = 5984,
MAX_LA = 2147483647,
- NUM_RULES = 536,
- NUM_NONTERMINALS = 202,
- NUM_SYMBOLS = 324,
+ NUM_RULES = 541,
+ NUM_NONTERMINALS = 204,
+ NUM_SYMBOLS = 326,
SEGMENT_SIZE = 8192,
- START_STATE = 3318,
+ START_STATE = 3492,
IDENTIFIER_SYMBOL = 0,
EOFT_SYMBOL = 120,
EOLT_SYMBOL = 120,
- ACCEPT_ACTION = 4951,
- ERROR_ACTION = 5316;
+ ACCEPT_ACTION = 5075,
+ ERROR_ACTION = 5443;
public final static boolean BACKTRACK = true;
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionParsersym.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionParsersym.java
index 5525658c91..c9c84d2df7 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionParsersym.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPExpressionParsersym.java
@@ -1,13 +1,13 @@
/*******************************************************************************
- * Copyright (c) 2006, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * * IBM Corporation - initial API and implementation
- *******************************************************************************/
+* Copyright (c) 2006, 2010 IBM Corporation and others.
+* All rights reserved. This program and the accompanying materials
+* are made available under the terms of the Eclipse Public License v1.0
+* which accompanies this distribution, and is available at
+* http://www.eclipse.org/legal/epl-v10.html
+*
+* Contributors:
+* IBM Corporation - initial API and implementation
+*********************************************************************************/
// This file was generated by LPG
@@ -20,7 +20,7 @@ public interface CPPExpressionParsersym {
TK_bool = 11,
TK_break = 76,
TK_case = 77,
- TK_catch = 118,
+ TK_catch = 102,
TK_char = 12,
TK_class = 40,
TK_const = 23,
@@ -49,9 +49,9 @@ public interface CPPExpressionParsersym {
TK_namespace = 59,
TK_new = 66,
TK_operator = 7,
- TK_private = 102,
- TK_protected = 103,
- TK_public = 104,
+ TK_private = 103,
+ TK_protected = 104,
+ TK_public = 105,
TK_register = 34,
TK_reinterpret_cast = 45,
TK_return = 84,
@@ -90,7 +90,7 @@ public interface CPPExpressionParsersym {
TK_LeftParen = 3,
TK_Dot = 119,
TK_DotStar = 91,
- TK_Arrow = 105,
+ TK_Arrow = 106,
TK_ArrowStar = 89,
TK_PlusPlus = 37,
TK_MinusMinus = 38,
@@ -114,23 +114,23 @@ public interface CPPExpressionParsersym {
TK_Or = 99,
TK_AndAnd = 100,
TK_OrOr = 101,
- TK_Question = 106,
+ TK_Question = 107,
TK_Colon = 72,
TK_ColonColon = 4,
TK_DotDotDot = 90,
- TK_Assign = 69,
- TK_StarAssign = 107,
- TK_SlashAssign = 108,
- TK_PercentAssign = 109,
- TK_PlusAssign = 110,
- TK_MinusAssign = 111,
- TK_RightShiftAssign = 112,
- TK_LeftShiftAssign = 113,
- TK_AndAssign = 114,
- TK_CaretAssign = 115,
- TK_OrAssign = 116,
- TK_Comma = 70,
- TK_RightBracket = 117,
+ TK_Assign = 70,
+ TK_StarAssign = 108,
+ TK_SlashAssign = 109,
+ TK_PercentAssign = 110,
+ TK_PlusAssign = 111,
+ TK_MinusAssign = 112,
+ TK_RightShiftAssign = 113,
+ TK_LeftShiftAssign = 114,
+ TK_AndAssign = 115,
+ TK_CaretAssign = 116,
+ TK_OrAssign = 117,
+ TK_Comma = 69,
+ TK_RightBracket = 118,
TK_RightParen = 73,
TK_RightBrace = 71,
TK_SemiColon = 27,
@@ -208,8 +208,8 @@ public interface CPPExpressionParsersym {
"new",
"LeftBrace",
"GT",
- "Assign",
"Comma",
+ "Assign",
"RightBrace",
"Colon",
"RightParen",
@@ -241,6 +241,7 @@ public interface CPPExpressionParsersym {
"Or",
"AndAnd",
"OrOr",
+ "catch",
"private",
"protected",
"public",
@@ -257,7 +258,6 @@ public interface CPPExpressionParsersym {
"CaretAssign",
"OrAssign",
"RightBracket",
- "catch",
"Dot",
"EOF_TOKEN",
"else",
diff --git a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoCastExpressionParser.java b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoCastExpressionParser.java
index 9060efadf6..1b3191f787 100644
--- a/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoCastExpressionParser.java
+++ b/lrparser/org.eclipse.cdt.core.lrparser/src/org/eclipse/cdt/internal/core/dom/lrparser/cpp/CPPNoCastExpressionParser.java
@@ -1,13 +1,13 @@
/*******************************************************************************
- * Copyright (c) 2006, 2009 IBM Corporation and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * * IBM Corporation - initial API and implementation
- *******************************************************************************/
+* Copyright (c) 2006, 2010 IBM Corporation and others.
+* All rights reserved. This program and the accompanying materials
+* are made available under the terms of the Eclipse Public License v1.0
+* which accompanies this distribution, and is available at
+* http://www.eclipse.org/legal/epl-v10.html
+*
+* Contributors:
+* IBM Corporation - initial API and implementation
+*********************************************************************************/
// This file was generated by LPG
@@ -997,985 +997,937 @@ public CPPNoCastExpressionParser(ITokenStream stream, Map<String,String> propert
//
// Rule 192: iteration_statement ::= do statement while ( expression ) ;
//
- case 192: { action. consumeStatementDoLoop(); break;
+ case 192: { action. consumeStatementDoLoop(true); break;
}
//
- // Rule 193: iteration_statement ::= for ( for_init_statement condition_opt ; expression_opt ) statement
+ // Rule 193: iteration_statement ::= do statement
//
- case 193: { action. consumeStatementForLoop(); break;
+ case 193: { action. consumeStatementDoLoop(false); break;
}
//
- // Rule 195: for_init_statement ::= simple_declaration_with_declspec
+ // Rule 194: iteration_statement ::= for ( for_init_statement condition_opt ; expression_opt ) statement
//
- case 195: { action. consumeStatementDeclaration(); break;
+ case 194: { action. consumeStatementForLoop(); break;
}
//
- // Rule 196: jump_statement ::= break ;
+ // Rule 196: for_init_statement ::= simple_declaration_with_declspec
//
- case 196: { action. consumeStatementBreak(); break;
+ case 196: { action. consumeStatementDeclaration(); break;
}
//
- // Rule 197: jump_statement ::= continue ;
+ // Rule 197: jump_statement ::= break ;
//
- case 197: { action. consumeStatementContinue(); break;
+ case 197: { action. consumeStatementBreak(); break;
}
//
- // Rule 198: jump_statement ::= return expression ;
+ // Rule 198: jump_statement ::= continue ;
//
- case 198: { action. consumeStatementReturn(true); break;
+ case 198: { action. consumeStatementContinue(); break;
}
//
- // Rule 199: jump_statement ::= return ;
+ // Rule 199: jump_statement ::= return expression ;
//
- case 199: { action. consumeStatementReturn(false); break;
+ case 199: { action. consumeStatementReturn(true); break;
}
//
- // Rule 200: jump_statement ::= goto identifier_token ;
+ // Rule 200: jump_statement ::= return ;
//
- case 200: { action. consumeStatementGoto(); break;
+ case 200: { action. consumeStatementReturn(false); break;
}
//
- // Rule 201: declaration_statement ::= block_declaration
+ // Rule 201: jump_statement ::= goto identifier_token ;
//
- case 201: { action. consumeStatementDeclarationWithDisambiguation(); break;
+ case 201: { action. consumeStatementGoto(); break;
}
//
- // Rule 202: declaration_statement ::= function_definition
+ // Rule 202: declaration_statement ::= block_declaration
//
- case 202: { action. consumeStatementDeclaration(); break;
+ case 202: { action. consumeStatementDeclarationWithDisambiguation(); break;
}
//
- // Rule 210: declaration ::= ERROR_TOKEN
+ // Rule 203: declaration_statement ::= function_definition
//
- case 210: { action. consumeDeclarationProblem(); break;
+ case 203: { action. consumeStatementDeclaration(); break;
}
//
- // Rule 220: simple_declaration ::= declaration_specifiers_opt <openscope-ast> init_declarator_list_opt ;
+ // Rule 211: declaration ::= ERROR_TOKEN
//
- case 220: { action. consumeDeclarationSimple(true); break;
+ case 211: { action. consumeDeclarationProblem(); break;
}
//
- // Rule 221: simple_declaration_with_declspec ::= declaration_specifiers <openscope-ast> init_declarator_list_opt ;
+ // Rule 221: simple_declaration ::= declaration_specifiers_opt <openscope-ast> init_declarator_list_opt ;
//
case 221: { action. consumeDeclarationSimple(true); break;
}
//
- // Rule 222: declaration_specifiers ::= <openscope-ast> simple_declaration_specifiers
+ // Rule 222: simple_declaration_with_declspec ::= declaration_specifiers <openscope-ast> init_declarator_list_opt ;
//
- case 222: { action. consumeDeclarationSpecifiersSimple(); break;
+ case 222: { action. consumeDeclarationSimple(true); break;
}
//
- // Rule 223: declaration_specifiers ::= <openscope-ast> class_declaration_specifiers
+ // Rule 223: declaration_specifiers ::= <openscope-ast> simple_declaration_specifiers
//
- case 223: { action. consumeDeclarationSpecifiersComposite(); break;
+ case 223: { action. consumeDeclarationSpecifiersSimple(); break;
}
//
- // Rule 224: declaration_specifiers ::= <openscope-ast> elaborated_declaration_specifiers
+ // Rule 224: declaration_specifiers ::= <openscope-ast> class_declaration_specifiers
//
case 224: { action. consumeDeclarationSpecifiersComposite(); break;
}
//
- // Rule 225: declaration_specifiers ::= <openscope-ast> enum_declaration_specifiers
+ // Rule 225: declaration_specifiers ::= <openscope-ast> elaborated_declaration_specifiers
//
case 225: { action. consumeDeclarationSpecifiersComposite(); break;
}
//
- // Rule 226: declaration_specifiers ::= <openscope-ast> type_name_declaration_specifiers
+ // Rule 226: declaration_specifiers ::= <openscope-ast> enum_declaration_specifiers
//
- case 226: { action. consumeDeclarationSpecifiersTypeName(); break;
+ case 226: { action. consumeDeclarationSpecifiersComposite(); break;
}
//
- // Rule 228: declaration_specifiers_opt ::= $Empty
+ // Rule 227: declaration_specifiers ::= <openscope-ast> type_name_declaration_specifiers
//
- case 228: { action. consumeEmpty(); break;
+ case 227: { action. consumeDeclarationSpecifiersTypeName(); break;
}
//
- // Rule 232: no_type_declaration_specifier ::= friend
+ // Rule 229: declaration_specifiers_opt ::= $Empty
//
- case 232: { action. consumeToken(); break;
+ case 229: { action. consumeEmpty(); break;
}
//
- // Rule 233: no_type_declaration_specifier ::= typedef
+ // Rule 233: no_type_declaration_specifier ::= friend
//
case 233: { action. consumeToken(); break;
}
//
- // Rule 253: storage_class_specifier ::= auto
+ // Rule 234: no_type_declaration_specifier ::= typedef
//
- case 253: { action. consumeToken(); break;
+ case 234: { action. consumeToken(); break;
}
//
- // Rule 254: storage_class_specifier ::= register
+ // Rule 254: storage_class_specifier ::= auto
//
case 254: { action. consumeToken(); break;
}
//
- // Rule 255: storage_class_specifier ::= static
+ // Rule 255: storage_class_specifier ::= register
//
case 255: { action. consumeToken(); break;
}
//
- // Rule 256: storage_class_specifier ::= extern
+ // Rule 256: storage_class_specifier ::= static
//
case 256: { action. consumeToken(); break;
}
//
- // Rule 257: storage_class_specifier ::= mutable
+ // Rule 257: storage_class_specifier ::= extern
//
case 257: { action. consumeToken(); break;
}
//
- // Rule 258: function_specifier ::= inline
+ // Rule 258: storage_class_specifier ::= mutable
//
case 258: { action. consumeToken(); break;
}
//
- // Rule 259: function_specifier ::= virtual
+ // Rule 259: function_specifier ::= inline
//
case 259: { action. consumeToken(); break;
}
//
- // Rule 260: function_specifier ::= explicit
+ // Rule 260: function_specifier ::= virtual
//
case 260: { action. consumeToken(); break;
}
//
- // Rule 261: simple_type_specifier ::= char
+ // Rule 261: function_specifier ::= explicit
//
case 261: { action. consumeToken(); break;
}
//
- // Rule 262: simple_type_specifier ::= wchar_t
+ // Rule 262: simple_type_specifier ::= simple_type_specifier_token
//
case 262: { action. consumeToken(); break;
}
//
- // Rule 263: simple_type_specifier ::= bool
+ // Rule 276: type_name_specifier ::= dcolon_opt nested_name_specifier_opt type_name
//
- case 263: { action. consumeToken(); break;
- }
-
- //
- // Rule 264: simple_type_specifier ::= short
- //
- case 264: { action. consumeToken(); break;
- }
-
- //
- // Rule 265: simple_type_specifier ::= int
- //
- case 265: { action. consumeToken(); break;
- }
-
- //
- // Rule 266: simple_type_specifier ::= long
- //
- case 266: { action. consumeToken(); break;
- }
-
- //
- // Rule 267: simple_type_specifier ::= signed
- //
- case 267: { action. consumeToken(); break;
- }
-
- //
- // Rule 268: simple_type_specifier ::= unsigned
- //
- case 268: { action. consumeToken(); break;
- }
-
- //
- // Rule 269: simple_type_specifier ::= float
- //
- case 269: { action. consumeToken(); break;
- }
-
- //
- // Rule 270: simple_type_specifier ::= double
- //
- case 270: { action. consumeToken(); break;
+ case 276: { action. consumeQualifiedId(false); break;
}
//
- // Rule 271: simple_type_specifier ::= void
+ // Rule 277: type_name_specifier ::= dcolon_opt nested_name_specifier template template_id_name
//
- case 271: { action. consumeToken(); break;
+ case 277: { action. consumeQualifiedId(false); break;
}
//
- // Rule 274: type_name_specifier ::= dcolon_opt nested_name_specifier_opt type_name
+ // Rule 278: type_name_specifier ::= typename dcolon_opt nested_name_specifier identifier_name
//
- case 274: { action. consumeQualifiedId(false); break;
+ case 278: { action. consumeQualifiedId(false); break;
}
//
- // Rule 275: type_name_specifier ::= dcolon_opt nested_name_specifier template template_id_name
+ // Rule 279: type_name_specifier ::= typename dcolon_opt nested_name_specifier template_opt template_id_name
//
- case 275: { action. consumeQualifiedId(false); break;
+ case 279: { action. consumeQualifiedId(true); break;
}
//
- // Rule 276: type_name_specifier ::= typename dcolon_opt nested_name_specifier identifier_name
+ // Rule 281: elaborated_type_specifier ::= class_keyword elaborated_specifier_hook dcolon_opt nested_name_specifier_opt identifier_name
//
- case 276: { action. consumeQualifiedId(false); break;
+ case 281: { action. consumeTypeSpecifierElaborated(false); break;
}
//
- // Rule 277: type_name_specifier ::= typename dcolon_opt nested_name_specifier template_opt template_id_name
+ // Rule 282: elaborated_type_specifier ::= class_keyword elaborated_specifier_hook dcolon_opt nested_name_specifier_opt template_opt template_id_name
//
- case 277: { action. consumeQualifiedId(true); break;
+ case 282: { action. consumeTypeSpecifierElaborated(true); break;
}
//
- // Rule 279: elaborated_type_specifier ::= class_keyword elaborated_specifier_hook dcolon_opt nested_name_specifier_opt identifier_name
+ // Rule 283: elaborated_type_specifier ::= enum elaborated_specifier_hook dcolon_opt nested_name_specifier_opt identifier_name
//
- case 279: { action. consumeTypeSpecifierElaborated(false); break;
+ case 283: { action. consumeTypeSpecifierElaborated(false); break;
}
//
- // Rule 280: elaborated_type_specifier ::= class_keyword elaborated_specifier_hook dcolon_opt nested_name_specifier_opt template_opt template_id_name
+ // Rule 287: enum_specifier ::= enum enum_specifier_hook { <openscope-ast> enumerator_list_opt comma_opt }
//
- case 280: { action. consumeTypeSpecifierElaborated(true); break;
+ case 287: { action. consumeTypeSpecifierEnumeration(false); break;
}
//
- // Rule 281: elaborated_type_specifier ::= enum elaborated_specifier_hook dcolon_opt nested_name_specifier_opt identifier_name
+ // Rule 288: enum_specifier ::= enum enum_specifier_hook identifier_token { <openscope-ast> enumerator_list_opt comma_opt }
//
- case 281: { action. consumeTypeSpecifierElaborated(false); break;
+ case 288: { action. consumeTypeSpecifierEnumeration(true); break;
}
//
- // Rule 283: enum_specifier ::= enum enum_specifier_hook { <openscope-ast> enumerator_list_opt }
+ // Rule 294: enumerator_definition ::= identifier_token
//
- case 283: { action. consumeTypeSpecifierEnumeration(false); break;
+ case 294: { action. consumeEnumerator(false); break;
}
//
- // Rule 284: enum_specifier ::= enum enum_specifier_hook identifier_token { <openscope-ast> enumerator_list_opt }
+ // Rule 295: enumerator_definition ::= identifier_token = constant_expression
//
- case 284: { action. consumeTypeSpecifierEnumeration(true); break;
+ case 295: { action. consumeEnumerator(true); break;
}
//
- // Rule 290: enumerator_definition ::= identifier_token
+ // Rule 297: namespace_definition ::= namespace namespace_name namespace_definition_hook { <openscope-ast> declaration_seq_opt }
//
- case 290: { action. consumeEnumerator(false); break;
+ case 297: { action. consumeNamespaceDefinition(true); break;
}
//
- // Rule 291: enumerator_definition ::= identifier_token = constant_expression
+ // Rule 298: namespace_definition ::= namespace namespace_definition_hook { <openscope-ast> declaration_seq_opt }
//
- case 291: { action. consumeEnumerator(true); break;
+ case 298: { action. consumeNamespaceDefinition(false); break;
}
//
- // Rule 293: namespace_definition ::= namespace namespace_name namespace_definition_hook { <openscope-ast> declaration_seq_opt }
+ // Rule 300: namespace_alias_definition ::= namespace identifier_token = dcolon_opt nested_name_specifier_opt namespace_name ;
//
- case 293: { action. consumeNamespaceDefinition(true); break;
+ case 300: { action. consumeNamespaceAliasDefinition(); break;
}
//
- // Rule 294: namespace_definition ::= namespace namespace_definition_hook { <openscope-ast> declaration_seq_opt }
+ // Rule 301: using_declaration ::= using typename_opt dcolon_opt nested_name_specifier_opt unqualified_id_name ;
//
- case 294: { action. consumeNamespaceDefinition(false); break;
+ case 301: { action. consumeUsingDeclaration(); break;
}
//
- // Rule 296: namespace_alias_definition ::= namespace identifier_token = dcolon_opt nested_name_specifier_opt namespace_name ;
+ // Rule 302: typename_opt ::= typename
//
- case 296: { action. consumeNamespaceAliasDefinition(); break;
+ case 302: { action. consumePlaceHolder(); break;
}
//
- // Rule 297: using_declaration ::= using typename_opt dcolon_opt nested_name_specifier_opt unqualified_id_name ;
+ // Rule 303: typename_opt ::= $Empty
//
- case 297: { action. consumeUsingDeclaration(); break;
+ case 303: { action. consumeEmpty(); break;
}
//
- // Rule 298: typename_opt ::= typename
+ // Rule 304: using_directive ::= using namespace dcolon_opt nested_name_specifier_opt namespace_name ;
//
- case 298: { action. consumePlaceHolder(); break;
+ case 304: { action. consumeUsingDirective(); break;
}
//
- // Rule 299: typename_opt ::= $Empty
+ // Rule 305: asm_definition ::= asm ( stringlit ) ;
//
- case 299: { action. consumeEmpty(); break;
+ case 305: { action. consumeDeclarationASM(); break;
}
//
- // Rule 300: using_directive ::= using namespace dcolon_opt nested_name_specifier_opt namespace_name ;
+ // Rule 306: linkage_specification ::= extern stringlit { <openscope-ast> declaration_seq_opt }
//
- case 300: { action. consumeUsingDirective(); break;
+ case 306: { action. consumeLinkageSpecification(); break;
}
//
- // Rule 301: asm_definition ::= asm ( stringlit ) ;
+ // Rule 307: linkage_specification ::= extern stringlit <openscope-ast> declaration
//
- case 301: { action. consumeDeclarationASM(); break;
+ case 307: { action. consumeLinkageSpecification(); break;
}
//
- // Rule 302: linkage_specification ::= extern stringlit { <openscope-ast> declaration_seq_opt }
+ // Rule 312: init_declarator_complete ::= init_declarator
//
- case 302: { action. consumeLinkageSpecification(); break;
+ case 312: { action. consumeInitDeclaratorComplete(); break;
}
//
- // Rule 303: linkage_specification ::= extern stringlit <openscope-ast> declaration
+ // Rule 314: init_declarator ::= complete_declarator initializer
//
- case 303: { action. consumeLinkageSpecification(); break;
+ case 314: { action. consumeDeclaratorWithInitializer(true); break;
}
//
- // Rule 308: init_declarator_complete ::= init_declarator
+ // Rule 317: declarator ::= <openscope-ast> ptr_operator_seq direct_declarator
//
- case 308: { action. consumeInitDeclaratorComplete(); break;
+ case 317: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 310: init_declarator ::= complete_declarator initializer
+ // Rule 319: function_declarator ::= <openscope-ast> ptr_operator_seq direct_declarator
//
- case 310: { action. consumeDeclaratorWithInitializer(true); break;
+ case 319: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 313: declarator ::= <openscope-ast> ptr_operator_seq direct_declarator
+ // Rule 323: basic_direct_declarator ::= declarator_id_name
//
- case 313: { action. consumeDeclaratorWithPointer(true); break;
+ case 323: { action. consumeDirectDeclaratorIdentifier(); break;
}
//
- // Rule 315: function_declarator ::= <openscope-ast> ptr_operator_seq direct_declarator
+ // Rule 324: basic_direct_declarator ::= ( declarator )
//
- case 315: { action. consumeDeclaratorWithPointer(true); break;
+ case 324: { action. consumeDirectDeclaratorBracketed(); break;
}
//
- // Rule 319: basic_direct_declarator ::= declarator_id_name
+ // Rule 325: function_direct_declarator ::= basic_direct_declarator ( <openscope-ast> parameter_declaration_clause ) <openscope-ast> cv_qualifier_seq_opt <openscope-ast> exception_specification_opt
//
- case 319: { action. consumeDirectDeclaratorIdentifier(); break;
+ case 325: { action. consumeDirectDeclaratorFunctionDeclarator(true); break;
}
//
- // Rule 320: basic_direct_declarator ::= ( declarator )
+ // Rule 326: array_direct_declarator ::= array_direct_declarator array_modifier
//
- case 320: { action. consumeDirectDeclaratorBracketed(); break;
+ case 326: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 321: function_direct_declarator ::= basic_direct_declarator ( <openscope-ast> parameter_declaration_clause ) <openscope-ast> cv_qualifier_seq_opt <openscope-ast> exception_specification_opt
+ // Rule 327: array_direct_declarator ::= basic_direct_declarator array_modifier
//
- case 321: { action. consumeDirectDeclaratorFunctionDeclarator(true); break;
+ case 327: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 322: array_direct_declarator ::= array_direct_declarator array_modifier
+ // Rule 328: array_modifier ::= [ constant_expression ]
//
- case 322: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ case 328: { action. consumeDirectDeclaratorArrayModifier(true); break;
}
//
- // Rule 323: array_direct_declarator ::= basic_direct_declarator array_modifier
+ // Rule 329: array_modifier ::= [ ]
//
- case 323: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ case 329: { action. consumeDirectDeclaratorArrayModifier(false); break;
}
//
- // Rule 324: array_modifier ::= [ constant_expression ]
+ // Rule 330: ptr_operator ::= pointer_hook * pointer_hook <openscope-ast> cv_qualifier_seq_opt
//
- case 324: { action. consumeDirectDeclaratorArrayModifier(true); break;
+ case 330: { action. consumePointer(); break;
}
//
- // Rule 325: array_modifier ::= [ ]
+ // Rule 331: ptr_operator ::= pointer_hook & pointer_hook
//
- case 325: { action. consumeDirectDeclaratorArrayModifier(false); break;
+ case 331: { action. consumeReferenceOperator(); break;
}
//
- // Rule 326: ptr_operator ::= pointer_hook * pointer_hook <openscope-ast> cv_qualifier_seq_opt
+ // Rule 332: ptr_operator ::= dcolon_opt nested_name_specifier pointer_hook * pointer_hook <openscope-ast> cv_qualifier_seq_opt
//
- case 326: { action. consumePointer(); break;
+ case 332: { action. consumePointerToMember(); break;
}
//
- // Rule 327: ptr_operator ::= pointer_hook & pointer_hook
+ // Rule 339: cv_qualifier ::= const
//
- case 327: { action. consumeReferenceOperator(); break;
+ case 339: { action. consumeToken(); break;
}
//
- // Rule 328: ptr_operator ::= dcolon_opt nested_name_specifier pointer_hook * pointer_hook <openscope-ast> cv_qualifier_seq_opt
+ // Rule 340: cv_qualifier ::= volatile
//
- case 328: { action. consumePointerToMember(); break;
+ case 340: { action. consumeToken(); break;
}
//
- // Rule 335: cv_qualifier ::= const
+ // Rule 342: declarator_id_name ::= dcolon_opt nested_name_specifier_opt type_name
//
- case 335: { action. consumeToken(); break;
+ case 342: { action. consumeQualifiedId(false); break;
}
//
- // Rule 336: cv_qualifier ::= volatile
+ // Rule 343: type_id ::= type_specifier_seq
//
- case 336: { action. consumeToken(); break;
+ case 343: { action. consumeTypeId(false); break;
}
//
- // Rule 338: declarator_id_name ::= dcolon_opt nested_name_specifier_opt type_name
+ // Rule 344: type_id ::= type_specifier_seq abstract_declarator
//
- case 338: { action. consumeQualifiedId(false); break;
+ case 344: { action. consumeTypeId(true); break;
}
//
- // Rule 339: type_id ::= type_specifier_seq
+ // Rule 347: abstract_declarator ::= <openscope-ast> ptr_operator_seq
//
- case 339: { action. consumeTypeId(false); break;
+ case 347: { action. consumeDeclaratorWithPointer(false); break;
}
//
- // Rule 340: type_id ::= type_specifier_seq abstract_declarator
+ // Rule 348: abstract_declarator ::= <openscope-ast> ptr_operator_seq direct_abstract_declarator
//
- case 340: { action. consumeTypeId(true); break;
+ case 348: { action. consumeDeclaratorWithPointer(true); break;
}
//
- // Rule 343: abstract_declarator ::= <openscope-ast> ptr_operator_seq
+ // Rule 352: basic_direct_abstract_declarator ::= ( abstract_declarator )
//
- case 343: { action. consumeDeclaratorWithPointer(false); break;
+ case 352: { action. consumeDirectDeclaratorBracketed(); break;
}
//
- // Rule 344: abstract_declarator ::= <openscope-ast> ptr_operator_seq direct_abstract_declarator
+ // Rule 353: basic_direct_abstract_declarator ::= ( )
//
- case 344: { action. consumeDeclaratorWithPointer(true); break;
+ case 353: { action. consumeAbstractDeclaratorEmpty(); break;
}
//
- // Rule 348: basic_direct_abstract_declarator ::= ( abstract_declarator )
+ // Rule 354: array_direct_abstract_declarator ::= array_modifier
//
- case 348: { action. consumeDirectDeclaratorBracketed(); break;
+ case 354: { action. consumeDirectDeclaratorArrayDeclarator(false); break;
}
//
- // Rule 349: basic_direct_abstract_declarator ::= ( )
+ // Rule 355: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier
//
- case 349: { action. consumeAbstractDeclaratorEmpty(); break;
+ case 355: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 350: array_direct_abstract_declarator ::= array_modifier
+ // Rule 356: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier
//
- case 350: { action. consumeDirectDeclaratorArrayDeclarator(false); break;
+ case 356: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
}
//
- // Rule 351: array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier
+ // Rule 357: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( <openscope-ast> parameter_declaration_clause ) <openscope-ast> cv_qualifier_seq_opt <openscope-ast> exception_specification_opt
//
- case 351: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ case 357: { action. consumeDirectDeclaratorFunctionDeclarator(true); break;
}
//
- // Rule 352: array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier
+ // Rule 358: function_direct_abstract_declarator ::= ( <openscope-ast> parameter_declaration_clause ) <openscope-ast> cv_qualifier_seq_opt <openscope-ast> exception_specification_opt
//
- case 352: { action. consumeDirectDeclaratorArrayDeclarator(true); break;
+ case 358: { action. consumeDirectDeclaratorFunctionDeclarator(false); break;
}
//
- // Rule 353: function_direct_abstract_declarator ::= basic_direct_abstract_declarator ( <openscope-ast> parameter_declaration_clause ) <openscope-ast> cv_qualifier_seq_opt <openscope-ast> exception_specification_opt
+ // Rule 359: parameter_declaration_clause ::= parameter_declaration_list_opt ...
//
- case 353: { action. consumeDirectDeclaratorFunctionDeclarator(true); break;
+ case 359: { action. consumePlaceHolder(); break;
}
//
- // Rule 354: function_direct_abstract_declarator ::= ( <openscope-ast> parameter_declaration_clause ) <openscope-ast> cv_qualifier_seq_opt <openscope-ast> exception_specification_opt
+ // Rule 360: parameter_declaration_clause ::= parameter_declaration_list_opt
//
- case 354: { action. consumeDirectDeclaratorFunctionDeclarator(false); break;
+ case 360: { action. consumeEmpty(); break;
}
//
- // Rule 355: parameter_declaration_clause ::= parameter_declaration_list_opt ...
+ // Rule 361: parameter_declaration_clause ::= parameter_declaration_list , ...
//
- case 355: { action. consumePlaceHolder(); break;
+ case 361: { action. consumePlaceHolder(); break;
}
//
- // Rule 356: parameter_declaration_clause ::= parameter_declaration_list_opt
+ // Rule 367: abstract_declarator_opt ::= $Empty
//
- case 356: { action. consumeEmpty(); break;
+ case 367: { action. consumeEmpty(); break;
}
//
- // Rule 357: parameter_declaration_clause ::= parameter_declaration_list , ...
+ // Rule 368: parameter_declaration ::= declaration_specifiers parameter_init_declarator
//
- case 357: { action. consumePlaceHolder(); break;
+ case 368: { action. consumeParameterDeclaration(); break;
}
//
- // Rule 363: abstract_declarator_opt ::= $Empty
+ // Rule 369: parameter_declaration ::= declaration_specifiers
//
- case 363: { action. consumeEmpty(); break;
+ case 369: { action. consumeParameterDeclarationWithoutDeclarator(); break;
}
//
- // Rule 364: parameter_declaration ::= declaration_specifiers parameter_init_declarator
+ // Rule 371: parameter_init_declarator ::= declarator = parameter_initializer
//
- case 364: { action. consumeParameterDeclaration(); break;
+ case 371: { action. consumeDeclaratorWithInitializer(true); break;
}
//
- // Rule 365: parameter_declaration ::= declaration_specifiers
+ // Rule 373: parameter_init_declarator ::= abstract_declarator = parameter_initializer
//
- case 365: { action. consumeParameterDeclarationWithoutDeclarator(); break;
+ case 373: { action. consumeDeclaratorWithInitializer(true); break;
}
//
- // Rule 367: parameter_init_declarator ::= declarator = parameter_initializer
+ // Rule 374: parameter_init_declarator ::= = parameter_initializer
//
- case 367: { action. consumeDeclaratorWithInitializer(true); break;
+ case 374: { action. consumeDeclaratorWithInitializer(false); break;
}
//
- // Rule 369: parameter_init_declarator ::= abstract_declarator = parameter_initializer
+ // Rule 375: parameter_initializer ::= assignment_expression
//
- case 369: { action. consumeDeclaratorWithInitializer(true); break;
+ case 375: { action. consumeInitializer(); break;
}
//
- // Rule 370: parameter_init_declarator ::= = parameter_initializer
+ // Rule 376: function_definition ::= declaration_specifiers_opt function_declarator <openscope-ast> ctor_initializer_list_opt function_body
//
- case 370: { action. consumeDeclaratorWithInitializer(false); break;
+ case 376: { action. consumeFunctionDefinition(false); break;
}
//
- // Rule 371: parameter_initializer ::= assignment_expression
+ // Rule 377: function_definition ::= declaration_specifiers_opt function_declarator try <openscope-ast> ctor_initializer_list_opt function_body <openscope-ast> handler_seq
//
- case 371: { action. consumeInitializer(); break;
+ case 377: { action. consumeFunctionDefinition(true); break;
}
//
- // Rule 372: function_definition ::= declaration_specifiers_opt function_declarator <openscope-ast> ctor_initializer_list_opt function_body
+ // Rule 380: initializer ::= ( expression_list )
//
- case 372: { action. consumeFunctionDefinition(false); break;
+ case 380: { action. consumeInitializerConstructor(); break;
}
//
- // Rule 373: function_definition ::= declaration_specifiers_opt function_declarator try <openscope-ast> ctor_initializer_list_opt function_body <openscope-ast> handler_seq
+ // Rule 381: initializer_clause ::= assignment_expression
//
- case 373: { action. consumeFunctionDefinition(true); break;
+ case 381: { action. consumeInitializer(); break;
}
//
- // Rule 376: initializer ::= ( expression_list )
+ // Rule 383: initializer_list ::= start_initializer_list { <openscope-ast> initializer_seq , } end_initializer_list
//
- case 376: { action. consumeInitializerConstructor(); break;
+ case 383: { action. consumeInitializerList(); break;
}
//
- // Rule 377: initializer_clause ::= assignment_expression
+ // Rule 384: initializer_list ::= start_initializer_list { <openscope-ast> initializer_seq } end_initializer_list
//
- case 377: { action. consumeInitializer(); break;
+ case 384: { action. consumeInitializerList(); break;
}
//
- // Rule 379: initializer_list ::= start_initializer_list { <openscope-ast> initializer_seq , } end_initializer_list
+ // Rule 385: initializer_list ::= { <openscope-ast> }
//
- case 379: { action. consumeInitializerList(); break;
+ case 385: { action. consumeInitializerList(); break;
}
//
- // Rule 380: initializer_list ::= start_initializer_list { <openscope-ast> initializer_seq } end_initializer_list
+ // Rule 386: start_initializer_list ::= $Empty
//
- case 380: { action. consumeInitializerList(); break;
+ case 386: { action. initializerListStart(); break;
}
//
- // Rule 381: initializer_list ::= { <openscope-ast> }
+ // Rule 387: end_initializer_list ::= $Empty
//
- case 381: { action. consumeInitializerList(); break;
+ case 387: { action. initializerListEnd(); break;
}
//
- // Rule 382: start_initializer_list ::= $Empty
+ // Rule 392: class_specifier ::= class_head { <openscope-ast> member_declaration_list_opt }
//
- case 382: { action. initializerListStart(); break;
+ case 392: { action. consumeClassSpecifier(); break;
}
//
- // Rule 383: end_initializer_list ::= $Empty
+ // Rule 393: class_head ::= class_keyword composite_specifier_hook identifier_name_opt class_name_suffix_hook <openscope-ast> base_clause_opt
//
- case 383: { action. initializerListEnd(); break;
+ case 393: { action. consumeClassHead(false); break;
}
//
- // Rule 388: class_specifier ::= class_head { <openscope-ast> member_declaration_list_opt }
+ // Rule 394: class_head ::= class_keyword composite_specifier_hook template_id_name class_name_suffix_hook <openscope-ast> base_clause_opt
//
- case 388: { action. consumeClassSpecifier(); break;
+ case 394: { action. consumeClassHead(false); break;
}
//
- // Rule 389: class_head ::= class_keyword composite_specifier_hook identifier_name_opt class_name_suffix_hook <openscope-ast> base_clause_opt
+ // Rule 395: class_head ::= class_keyword composite_specifier_hook nested_name_specifier identifier_name class_name_suffix_hook <openscope-ast> base_clause_opt
//
- case 389: { action. consumeClassHead(false); break;
+ case 395: { action. consumeClassHead(true); break;
}
//
- // Rule 390: class_head ::= class_keyword composite_specifier_hook template_id_name class_name_suffix_hook <openscope-ast> base_clause_opt
+ // Rule 396: class_head ::= class_keyword composite_specifier_hook nested_name_specifier template_id_name class_name_suffix_hook <openscope-ast> base_clause_opt
//
- case 390: { action. consumeClassHead(false); break;
+ case 396: { action. consumeClassHead(true); break;
}
//
- // Rule 391: class_head ::= class_keyword composite_specifier_hook nested_name_specifier identifier_name class_name_suffix_hook <openscope-ast> base_clause_opt
+ // Rule 400: identifier_name_opt ::= $Empty
//
- case 391: { action. consumeClassHead(true); break;
- }
+ case 400: { action. consumeEmpty(); break;
+ }
//
- // Rule 392: class_head ::= class_keyword composite_specifier_hook nested_name_specifier template_id_name class_name_suffix_hook <openscope-ast> base_clause_opt
+ // Rule 404: visibility_label ::= access_specifier_keyword :
//
- case 392: { action. consumeClassHead(true); break;
+ case 404: { action. consumeVisibilityLabel(); break;
}
//
- // Rule 396: identifier_name_opt ::= $Empty
- //
- case 396: { action. consumeEmpty(); break;
- }
-
- //
- // Rule 400: visibility_label ::= access_specifier_keyword :
+ // Rule 405: member_declaration ::= declaration_specifiers_opt <openscope-ast> member_declarator_list ;
//
- case 400: { action. consumeVisibilityLabel(); break;
+ case 405: { action. consumeDeclarationSimple(true); break;
}
//
- // Rule 401: member_declaration ::= declaration_specifiers_opt <openscope-ast> member_declarator_list ;
+ // Rule 406: member_declaration ::= declaration_specifiers_opt ;
//
- case 401: { action. consumeDeclarationSimple(true); break;
+ case 406: { action. consumeDeclarationSimple(false); break;
}
//
- // Rule 402: member_declaration ::= declaration_specifiers_opt ;
+ // Rule 409: member_declaration ::= dcolon_opt nested_name_specifier template_opt unqualified_id_name ;
//
- case 402: { action. consumeDeclarationSimple(false); break;
+ case 409: { action. consumeMemberDeclarationQualifiedId(); break;
}
//
- // Rule 405: member_declaration ::= dcolon_opt nested_name_specifier template_opt unqualified_id_name ;
+ // Rule 415: member_declaration ::= ERROR_TOKEN
//
- case 405: { action. consumeMemberDeclarationQualifiedId(); break;
+ case 415: { action. consumeDeclarationProblem(); break;
}
//
- // Rule 411: member_declaration ::= ERROR_TOKEN
+ // Rule 424: member_declarator ::= declarator constant_initializer
//
- case 411: { action. consumeDeclarationProblem(); break;
+ case 424: { action. consumeMemberDeclaratorWithInitializer(); break;
}
//
- // Rule 420: member_declarator ::= declarator constant_