mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-08-07 16:26:11 +02:00
disambiguate problems caused by globally qualified declarator ids
This commit is contained in:
parent
e67872f544
commit
a180ea3e1a
18 changed files with 9187 additions and 9419 deletions
|
@ -443,7 +443,7 @@ dcolon_opt
|
|||
/. $Build consumeEmpty(); $EndBuild ./
|
||||
|
||||
|
||||
-- this is a compound name
|
||||
|
||||
qualified_id_name
|
||||
::= dcolon_opt nested_name_specifier template_opt unqualified_id_name
|
||||
/. $Build consumeQualifiedId(true); $EndBuild ./
|
||||
|
@ -1337,12 +1337,16 @@ cv_qualifier
|
|||
/. $Build consumeDeclSpecToken(); $EndBuild ./
|
||||
|
||||
|
||||
declarator_id_name
|
||||
::= qualified_or_unqualified_name
|
||||
| dcolon_opt nested_name_specifier_opt type_name
|
||||
/. $Build consumeQualifiedId(false); $EndBuild ./
|
||||
--declarator_id_name
|
||||
-- ::= qualified_or_unqualified_name
|
||||
-- | dcolon_opt nested_name_specifier_opt type_name
|
||||
-- /. $Build consumeQualifiedId(false); $EndBuild ./
|
||||
|
||||
|
||||
declarator_id_name
|
||||
::= unqualified_id_name
|
||||
| <empty> nested_name_specifier template_opt unqualified_id_name
|
||||
/. $Build consumeQualifiedId(true); $EndBuild ./
|
||||
|
||||
|
||||
type_id
|
||||
::= type_specifier_seq
|
||||
|
@ -1734,7 +1738,7 @@ type_parameter
|
|||
/. $Build consumeTemplatedTypeTemplateParameter(true); $EndBuild ./
|
||||
|
||||
|
||||
-- pushes name node on stack
|
||||
|
||||
template_id_name
|
||||
::= template_identifier '<' <openscope-ast> template_argument_list_opt '>'
|
||||
/. $Build consumeTemplateId(); $EndBuild ./
|
||||
|
|
|
@ -10,192 +10,8 @@
|
|||
*******************************************************************************/
|
||||
package org.eclipse.cdt.core.dom.lrparser.c99;
|
||||
|
||||
import static org.eclipse.cdt.core.parser.IToken.tAMPER;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tAMPERASSIGN;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tAND;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tARROW;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tASSIGN;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tBITCOMPLEMENT;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tBITOR;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tBITORASSIGN;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tCHAR;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tCOLON;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tCOMMA;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tCOMPLETION;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tDECR;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tDIV;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tDIVASSIGN;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tDOT;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tELLIPSIS;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tEND_OF_INPUT;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tEOC;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tEQUAL;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tFLOATINGPT;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tGT;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tGTEQUAL;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tIDENTIFIER;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tINCR;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tINTEGER;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tLBRACE;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tLBRACKET;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tLCHAR;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tLPAREN;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tLSTRING;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tLT;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tLTEQUAL;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tMINUS;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tMINUSASSIGN;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tMOD;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tMODASSIGN;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tNOT;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tNOTEQUAL;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tOR;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tPLUS;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tPLUSASSIGN;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tQUESTION;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tRBRACE;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tRBRACKET;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tRPAREN;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tSEMI;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tSHIFTL;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tSHIFTLASSIGN;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tSHIFTR;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tSHIFTRASSIGN;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tSTAR;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tSTARASSIGN;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tSTRING;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tUNKNOWN_CHAR;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tXOR;
|
||||
import static org.eclipse.cdt.core.parser.IToken.tXORASSIGN;
|
||||
import static org.eclipse.cdt.core.parser.IToken.t__Bool;
|
||||
import static org.eclipse.cdt.core.parser.IToken.t__Complex;
|
||||
import static org.eclipse.cdt.core.parser.IToken.t__Imaginary;
|
||||
import static org.eclipse.cdt.core.parser.IToken.t_auto;
|
||||
import static org.eclipse.cdt.core.parser.IToken.t_break;
|
||||
import static org.eclipse.cdt.core.parser.IToken.t_case;
|
||||
import static org.eclipse.cdt.core.parser.IToken.t_char;
|
||||
import static org.eclipse.cdt.core.parser.IToken.t_const;
|
||||
import static org.eclipse.cdt.core.parser.IToken.t_continue;
|
||||
import static org.eclipse.cdt.core.parser.IToken.t_default;
|
||||
import static org.eclipse.cdt.core.parser.IToken.t_do;
|
||||
import static org.eclipse.cdt.core.parser.IToken.t_double;
|
||||
import static org.eclipse.cdt.core.parser.IToken.t_else;
|
||||
import static org.eclipse.cdt.core.parser.IToken.t_enum;
|
||||
import static org.eclipse.cdt.core.parser.IToken.t_extern;
|
||||
import static org.eclipse.cdt.core.parser.IToken.t_float;
|
||||
import static org.eclipse.cdt.core.parser.IToken.t_for;
|
||||
import static org.eclipse.cdt.core.parser.IToken.t_goto;
|
||||
import static org.eclipse.cdt.core.parser.IToken.t_if;
|
||||
import static org.eclipse.cdt.core.parser.IToken.t_inline;
|
||||
import static org.eclipse.cdt.core.parser.IToken.t_int;
|
||||
import static org.eclipse.cdt.core.parser.IToken.t_long;
|
||||
import static org.eclipse.cdt.core.parser.IToken.t_register;
|
||||
import static org.eclipse.cdt.core.parser.IToken.t_restrict;
|
||||
import static org.eclipse.cdt.core.parser.IToken.t_return;
|
||||
import static org.eclipse.cdt.core.parser.IToken.t_short;
|
||||
import static org.eclipse.cdt.core.parser.IToken.t_signed;
|
||||
import static org.eclipse.cdt.core.parser.IToken.t_sizeof;
|
||||
import static org.eclipse.cdt.core.parser.IToken.t_static;
|
||||
import static org.eclipse.cdt.core.parser.IToken.t_struct;
|
||||
import static org.eclipse.cdt.core.parser.IToken.t_switch;
|
||||
import static org.eclipse.cdt.core.parser.IToken.t_typedef;
|
||||
import static org.eclipse.cdt.core.parser.IToken.t_union;
|
||||
import static org.eclipse.cdt.core.parser.IToken.t_unsigned;
|
||||
import static org.eclipse.cdt.core.parser.IToken.t_void;
|
||||
import static org.eclipse.cdt.core.parser.IToken.t_volatile;
|
||||
import static org.eclipse.cdt.core.parser.IToken.t_while;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_And;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_AndAnd;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_AndAssign;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_Arrow;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_Assign;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_Bang;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_Caret;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_CaretAssign;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_Colon;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_Comma;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_Completion;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_Dot;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_DotDotDot;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_EOF_TOKEN;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_EQ;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_EndOfCompletion;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_GE;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_GT;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_Invalid;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_LE;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_LT;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_LeftBrace;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_LeftBracket;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_LeftParen;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_LeftShift;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_LeftShiftAssign;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_Minus;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_MinusAssign;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_MinusMinus;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_NE;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_Or;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_OrAssign;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_OrOr;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_Percent;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_PercentAssign;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_Plus;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_PlusAssign;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_PlusPlus;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_Question;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_RightBrace;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_RightBracket;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_RightParen;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_RightShift;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_RightShiftAssign;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_SemiColon;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_Slash;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_SlashAssign;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_Star;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_StarAssign;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_Tilde;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK__Bool;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK__Complex;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK__Imaginary;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_auto;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_break;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_case;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_char;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_charconst;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_const;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_continue;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_default;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_do;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_double;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_else;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_enum;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_extern;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_float;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_floating;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_for;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_goto;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_identifier;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_if;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_inline;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_int;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_integer;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_long;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_register;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_restrict;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_return;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_short;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_signed;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_sizeof;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_static;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_stringlit;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_struct;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_switch;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_typedef;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_union;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_unsigned;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_void;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_volatile;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.TK_while;
|
||||
import static org.eclipse.cdt.core.parser.IToken.*;
|
||||
import static org.eclipse.cdt.internal.core.dom.lrparser.c99.C99Parsersym.*;
|
||||
|
||||
import org.eclipse.cdt.core.dom.lrparser.action.ITokenMap;
|
||||
|
||||
|
|
|
@ -1561,10 +1561,10 @@ public CPPExpressionStatementParser(String[] mapFrom) { // constructor
|
|||
}
|
||||
|
||||
//
|
||||
// Rule 339: declarator_id_name ::= dcolon_opt nested_name_specifier_opt type_name
|
||||
// Rule 339: declarator_id_name ::= <empty> nested_name_specifier template_opt unqualified_id_name
|
||||
//
|
||||
case 339: { action.builder.
|
||||
consumeQualifiedId(false); break;
|
||||
consumeQualifiedId(true); break;
|
||||
}
|
||||
|
||||
//
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -24,19 +24,19 @@ public interface CPPExpressionStatementParsersym {
|
|||
TK_char = 14,
|
||||
TK_class = 62,
|
||||
TK_const = 46,
|
||||
TK_const_cast = 31,
|
||||
TK_const_cast = 30,
|
||||
TK_continue = 78,
|
||||
TK_default = 79,
|
||||
TK_delete = 63,
|
||||
TK_do = 80,
|
||||
TK_double = 15,
|
||||
TK_dynamic_cast = 32,
|
||||
TK_dynamic_cast = 31,
|
||||
TK_else = 121,
|
||||
TK_enum = 68,
|
||||
TK_explicit = 52,
|
||||
TK_export = 81,
|
||||
TK_extern = 27,
|
||||
TK_false = 33,
|
||||
TK_false = 32,
|
||||
TK_float = 16,
|
||||
TK_for = 82,
|
||||
TK_friend = 53,
|
||||
|
@ -53,16 +53,16 @@ public interface CPPExpressionStatementParsersym {
|
|||
TK_protected = 115,
|
||||
TK_public = 116,
|
||||
TK_register = 57,
|
||||
TK_reinterpret_cast = 34,
|
||||
TK_reinterpret_cast = 33,
|
||||
TK_return = 85,
|
||||
TK_short = 19,
|
||||
TK_signed = 20,
|
||||
TK_sizeof = 35,
|
||||
TK_sizeof = 34,
|
||||
TK_static = 58,
|
||||
TK_static_cast = 36,
|
||||
TK_static_cast = 35,
|
||||
TK_struct = 69,
|
||||
TK_switch = 86,
|
||||
TK_template = 29,
|
||||
TK_template = 36,
|
||||
TK_this = 37,
|
||||
TK_throw = 47,
|
||||
TK_try = 74,
|
||||
|
@ -100,7 +100,7 @@ public interface CPPExpressionStatementParsersym {
|
|||
TK_Plus = 11,
|
||||
TK_Minus = 12,
|
||||
TK_Tilde = 5,
|
||||
TK_Bang = 30,
|
||||
TK_Bang = 29,
|
||||
TK_Slash = 91,
|
||||
TK_Percent = 92,
|
||||
TK_RightShift = 88,
|
||||
|
@ -170,7 +170,6 @@ public interface CPPExpressionStatementParsersym {
|
|||
"SemiColon",
|
||||
"extern",
|
||||
"stringlit",
|
||||
"template",
|
||||
"Bang",
|
||||
"const_cast",
|
||||
"dynamic_cast",
|
||||
|
@ -178,6 +177,7 @@ public interface CPPExpressionStatementParsersym {
|
|||
"reinterpret_cast",
|
||||
"sizeof",
|
||||
"static_cast",
|
||||
"template",
|
||||
"this",
|
||||
"true",
|
||||
"typeid",
|
||||
|
|
|
@ -1554,10 +1554,10 @@ public CPPNoCastExpressionParser(String[] mapFrom) { // constructor
|
|||
}
|
||||
|
||||
//
|
||||
// Rule 338: declarator_id_name ::= dcolon_opt nested_name_specifier_opt type_name
|
||||
// Rule 338: declarator_id_name ::= <empty> nested_name_specifier template_opt unqualified_id_name
|
||||
//
|
||||
case 338: { action.builder.
|
||||
consumeQualifiedId(false); break;
|
||||
consumeQualifiedId(true); break;
|
||||
}
|
||||
|
||||
//
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -24,19 +24,19 @@ public interface CPPNoCastExpressionParsersym {
|
|||
TK_char = 14,
|
||||
TK_class = 62,
|
||||
TK_const = 46,
|
||||
TK_const_cast = 31,
|
||||
TK_const_cast = 30,
|
||||
TK_continue = 78,
|
||||
TK_default = 79,
|
||||
TK_delete = 63,
|
||||
TK_do = 80,
|
||||
TK_double = 15,
|
||||
TK_dynamic_cast = 32,
|
||||
TK_dynamic_cast = 31,
|
||||
TK_else = 122,
|
||||
TK_enum = 68,
|
||||
TK_explicit = 52,
|
||||
TK_export = 81,
|
||||
TK_extern = 27,
|
||||
TK_false = 33,
|
||||
TK_false = 32,
|
||||
TK_float = 16,
|
||||
TK_for = 82,
|
||||
TK_friend = 53,
|
||||
|
@ -53,16 +53,16 @@ public interface CPPNoCastExpressionParsersym {
|
|||
TK_protected = 115,
|
||||
TK_public = 116,
|
||||
TK_register = 57,
|
||||
TK_reinterpret_cast = 34,
|
||||
TK_reinterpret_cast = 33,
|
||||
TK_return = 85,
|
||||
TK_short = 19,
|
||||
TK_signed = 20,
|
||||
TK_sizeof = 35,
|
||||
TK_sizeof = 34,
|
||||
TK_static = 58,
|
||||
TK_static_cast = 36,
|
||||
TK_static_cast = 35,
|
||||
TK_struct = 69,
|
||||
TK_switch = 86,
|
||||
TK_template = 29,
|
||||
TK_template = 36,
|
||||
TK_this = 37,
|
||||
TK_throw = 47,
|
||||
TK_try = 74,
|
||||
|
@ -100,7 +100,7 @@ public interface CPPNoCastExpressionParsersym {
|
|||
TK_Plus = 11,
|
||||
TK_Minus = 12,
|
||||
TK_Tilde = 5,
|
||||
TK_Bang = 30,
|
||||
TK_Bang = 29,
|
||||
TK_Slash = 91,
|
||||
TK_Percent = 92,
|
||||
TK_RightShift = 88,
|
||||
|
@ -170,7 +170,6 @@ public interface CPPNoCastExpressionParsersym {
|
|||
"SemiColon",
|
||||
"extern",
|
||||
"stringlit",
|
||||
"template",
|
||||
"Bang",
|
||||
"const_cast",
|
||||
"dynamic_cast",
|
||||
|
@ -178,6 +177,7 @@ public interface CPPNoCastExpressionParsersym {
|
|||
"reinterpret_cast",
|
||||
"sizeof",
|
||||
"static_cast",
|
||||
"template",
|
||||
"this",
|
||||
"true",
|
||||
"typeid",
|
||||
|
|
|
@ -1554,10 +1554,10 @@ public CPPNoFunctionDeclaratorParser(String[] mapFrom) { // constructor
|
|||
}
|
||||
|
||||
//
|
||||
// Rule 337: declarator_id_name ::= dcolon_opt nested_name_specifier_opt type_name
|
||||
// Rule 337: declarator_id_name ::= <empty> nested_name_specifier template_opt unqualified_id_name
|
||||
//
|
||||
case 337: { action.builder.
|
||||
consumeQualifiedId(false); break;
|
||||
consumeQualifiedId(true); break;
|
||||
}
|
||||
|
||||
//
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -62,7 +62,7 @@ public interface CPPNoFunctionDeclaratorParsersym {
|
|||
TK_static_cast = 36,
|
||||
TK_struct = 69,
|
||||
TK_switch = 86,
|
||||
TK_template = 28,
|
||||
TK_template = 30,
|
||||
TK_this = 37,
|
||||
TK_throw = 58,
|
||||
TK_try = 74,
|
||||
|
@ -81,7 +81,7 @@ public interface CPPNoFunctionDeclaratorParsersym {
|
|||
TK_integer = 40,
|
||||
TK_floating = 41,
|
||||
TK_charconst = 42,
|
||||
TK_stringlit = 29,
|
||||
TK_stringlit = 28,
|
||||
TK_identifier = 1,
|
||||
TK_Completion = 2,
|
||||
TK_EndOfCompletion = 9,
|
||||
|
@ -100,7 +100,7 @@ public interface CPPNoFunctionDeclaratorParsersym {
|
|||
TK_Plus = 11,
|
||||
TK_Minus = 12,
|
||||
TK_Tilde = 5,
|
||||
TK_Bang = 30,
|
||||
TK_Bang = 29,
|
||||
TK_Slash = 91,
|
||||
TK_Percent = 92,
|
||||
TK_RightShift = 88,
|
||||
|
@ -169,9 +169,9 @@ public interface CPPNoFunctionDeclaratorParsersym {
|
|||
"wchar_t",
|
||||
"PlusPlus",
|
||||
"MinusMinus",
|
||||
"template",
|
||||
"stringlit",
|
||||
"Bang",
|
||||
"template",
|
||||
"const_cast",
|
||||
"dynamic_cast",
|
||||
"false",
|
||||
|
|
|
@ -1561,10 +1561,10 @@ public CPPParser(String[] mapFrom) { // constructor
|
|||
}
|
||||
|
||||
//
|
||||
// Rule 339: declarator_id_name ::= dcolon_opt nested_name_specifier_opt type_name
|
||||
// Rule 339: declarator_id_name ::= <empty> nested_name_specifier template_opt unqualified_id_name
|
||||
//
|
||||
case 339: { action.builder.
|
||||
consumeQualifiedId(false); break;
|
||||
consumeQualifiedId(true); break;
|
||||
}
|
||||
|
||||
//
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -62,7 +62,7 @@ public interface CPPParsersym {
|
|||
TK_static_cast = 36,
|
||||
TK_struct = 67,
|
||||
TK_switch = 86,
|
||||
TK_template = 26,
|
||||
TK_template = 28,
|
||||
TK_this = 37,
|
||||
TK_throw = 61,
|
||||
TK_try = 75,
|
||||
|
@ -93,8 +93,8 @@ public interface CPPParsersym {
|
|||
TK_DotStar = 96,
|
||||
TK_Arrow = 103,
|
||||
TK_ArrowStar = 90,
|
||||
TK_PlusPlus = 27,
|
||||
TK_MinusMinus = 28,
|
||||
TK_PlusPlus = 26,
|
||||
TK_MinusMinus = 27,
|
||||
TK_And = 8,
|
||||
TK_Star = 6,
|
||||
TK_Plus = 24,
|
||||
|
@ -167,9 +167,9 @@ public interface CPPParsersym {
|
|||
"wchar_t",
|
||||
"Plus",
|
||||
"Minus",
|
||||
"template",
|
||||
"PlusPlus",
|
||||
"MinusMinus",
|
||||
"template",
|
||||
"stringlit",
|
||||
"Bang",
|
||||
"const_cast",
|
||||
|
|
|
@ -17,18 +17,62 @@ public class CPPRules {
|
|||
fRules.put(Integer.valueOf(8), "} ::= EndOfCompletion");
|
||||
fRules.put(Integer.valueOf(9), "; ::= SemiColon");
|
||||
fRules.put(Integer.valueOf(10), "; ::= EndOfCompletion");
|
||||
fRules.put(Integer.valueOf(41), "dcolon_opt ::= ColonColon");
|
||||
fRules.put(Integer.valueOf(42), "dcolon_opt ::=");
|
||||
fRules.put(Integer.valueOf(228), "declaration_specifiers_opt ::=");
|
||||
fRules.put(Integer.valueOf(229), "declaration_specifiers_opt ::= declaration_specifiers");
|
||||
fRules.put(Integer.valueOf(313), "declarator ::= direct_declarator");
|
||||
fRules.put(Integer.valueOf(314), "declarator ::= <openscope-ast> ptr_operator_seq direct_declarator");
|
||||
fRules.put(Integer.valueOf(337), "declarator_id_name ::= qualified_or_unqualified_name");
|
||||
fRules.put(Integer.valueOf(338), "declarator_id_name ::= dcolon_opt nested_name_specifier_opt type_name");
|
||||
fRules.put(Integer.valueOf(492), "template_parameter ::= type_parameter");
|
||||
fRules.put(Integer.valueOf(383), "class_name ::= identifier_name");
|
||||
fRules.put(Integer.valueOf(384), "class_name ::= template_id_name");
|
||||
fRules.put(Integer.valueOf(493), "template_parameter ::= type_parameter");
|
||||
fRules.put(Integer.valueOf(1), "<openscope-ast> ::=");
|
||||
fRules.put(Integer.valueOf(311), "init_declarator ::= declarator");
|
||||
fRules.put(Integer.valueOf(312), "init_declarator ::= declarator initializer");
|
||||
fRules.put(Integer.valueOf(307), "init_declarator_list ::= init_declarator");
|
||||
fRules.put(Integer.valueOf(308), "init_declarator_list ::= init_declarator_list Comma init_declarator");
|
||||
fRules.put(Integer.valueOf(17), "identifier_token ::= identifier");
|
||||
fRules.put(Integer.valueOf(18), "identifier_token ::= Completion");
|
||||
fRules.put(Integer.valueOf(38), "identifier_name ::= identifier_token");
|
||||
fRules.put(Integer.valueOf(445), "operator_id_name ::= operator overloadable_operator");
|
||||
fRules.put(Integer.valueOf(443), "operator_function_id_name ::= operator_id_name");
|
||||
fRules.put(Integer.valueOf(444), "operator_function_id_name ::= operator_id_name LT <openscope-ast> template_argument_list_opt GT");
|
||||
fRules.put(Integer.valueOf(431), "conversion_function_id_name ::= operator conversion_type_id");
|
||||
fRules.put(Integer.valueOf(502), "template_identifier ::= identifier_name");
|
||||
fRules.put(Integer.valueOf(501), "template_id_name ::= template_identifier LT <openscope-ast> template_argument_list_opt GT");
|
||||
fRules.put(Integer.valueOf(33), "unqualified_id_name ::= identifier_name");
|
||||
fRules.put(Integer.valueOf(34), "unqualified_id_name ::= operator_function_id_name");
|
||||
fRules.put(Integer.valueOf(35), "unqualified_id_name ::= conversion_function_id_name");
|
||||
fRules.put(Integer.valueOf(36), "unqualified_id_name ::= template_id_name");
|
||||
fRules.put(Integer.valueOf(37), "unqualified_id_name ::= Tilde class_name");
|
||||
fRules.put(Integer.valueOf(54), "class_or_namespace_name ::= class_name");
|
||||
fRules.put(Integer.valueOf(47), "nested_name_specifier ::= class_or_namespace_name ColonColon nested_name_specifier_with_template");
|
||||
fRules.put(Integer.valueOf(48), "nested_name_specifier ::= class_or_namespace_name ColonColon");
|
||||
fRules.put(Integer.valueOf(43), "qualified_id_name ::= dcolon_opt nested_name_specifier template_opt unqualified_id_name");
|
||||
fRules.put(Integer.valueOf(44), "qualified_id_name ::= ColonColon identifier_name");
|
||||
fRules.put(Integer.valueOf(45), "qualified_id_name ::= ColonColon operator_function_id_name");
|
||||
fRules.put(Integer.valueOf(46), "qualified_id_name ::= ColonColon template_id_name");
|
||||
fRules.put(Integer.valueOf(31), "qualified_or_unqualified_name ::= unqualified_id_name");
|
||||
fRules.put(Integer.valueOf(32), "qualified_or_unqualified_name ::= qualified_id_name");
|
||||
fRules.put(Integer.valueOf(52), "nested_name_specifier_opt ::= nested_name_specifier");
|
||||
fRules.put(Integer.valueOf(53), "nested_name_specifier_opt ::=");
|
||||
fRules.put(Integer.valueOf(274), "type_name ::= class_name");
|
||||
fRules.put(Integer.valueOf(338), "declarator_id_name ::= qualified_or_unqualified_name");
|
||||
fRules.put(Integer.valueOf(339), "declarator_id_name ::= dcolon_opt nested_name_specifier_opt type_name");
|
||||
fRules.put(Integer.valueOf(321), "basic_direct_declarator ::= declarator_id_name");
|
||||
fRules.put(Integer.valueOf(322), "basic_direct_declarator ::= LeftParen declarator )");
|
||||
fRules.put(Integer.valueOf(323), "function_direct_declarator ::= basic_direct_declarator LeftParen <openscope-ast> parameter_declaration_clause ) <openscope-ast> cv_qualifier_seq_opt <openscope-ast> exception_specification_opt");
|
||||
fRules.put(Integer.valueOf(324), "array_direct_declarator ::= array_direct_declarator array_modifier");
|
||||
fRules.put(Integer.valueOf(325), "array_direct_declarator ::= basic_direct_declarator array_modifier");
|
||||
fRules.put(Integer.valueOf(318), "direct_declarator ::= basic_direct_declarator");
|
||||
fRules.put(Integer.valueOf(319), "direct_declarator ::= function_direct_declarator");
|
||||
fRules.put(Integer.valueOf(320), "direct_declarator ::= array_direct_declarator");
|
||||
fRules.put(Integer.valueOf(328), "ptr_operator ::= Star <openscope-ast> cv_qualifier_seq_opt");
|
||||
fRules.put(Integer.valueOf(329), "ptr_operator ::= And");
|
||||
fRules.put(Integer.valueOf(330), "ptr_operator ::= dcolon_opt nested_name_specifier Star <openscope-ast> cv_qualifier_seq_opt");
|
||||
fRules.put(Integer.valueOf(331), "ptr_operator_seq ::= ptr_operator");
|
||||
fRules.put(Integer.valueOf(332), "ptr_operator_seq ::= ptr_operator_seq ptr_operator");
|
||||
fRules.put(Integer.valueOf(314), "declarator ::= direct_declarator");
|
||||
fRules.put(Integer.valueOf(315), "declarator ::= <openscope-ast> ptr_operator_seq direct_declarator");
|
||||
fRules.put(Integer.valueOf(312), "init_declarator ::= declarator");
|
||||
fRules.put(Integer.valueOf(313), "init_declarator ::= declarator initializer");
|
||||
fRules.put(Integer.valueOf(311), "init_declarator_complete ::= init_declarator");
|
||||
fRules.put(Integer.valueOf(307), "init_declarator_list ::= init_declarator_complete");
|
||||
fRules.put(Integer.valueOf(308), "init_declarator_list ::= init_declarator_list Comma init_declarator_complete");
|
||||
fRules.put(Integer.valueOf(309), "init_declarator_list_opt ::= init_declarator_list");
|
||||
fRules.put(Integer.valueOf(310), "init_declarator_list_opt ::=");
|
||||
fRules.put(Integer.valueOf(221), "simple_declaration ::= declaration_specifiers_opt <openscope-ast> init_declarator_list_opt ;");
|
||||
|
@ -41,35 +85,15 @@ public class CPPRules {
|
|||
fRules.put(Integer.valueOf(214), "block_declaration ::= namespace_alias_definition");
|
||||
fRules.put(Integer.valueOf(215), "block_declaration ::= using_declaration");
|
||||
fRules.put(Integer.valueOf(216), "block_declaration ::= using_directive");
|
||||
fRules.put(Integer.valueOf(320), "basic_direct_declarator ::= declarator_id_name");
|
||||
fRules.put(Integer.valueOf(321), "basic_direct_declarator ::= LeftParen declarator )");
|
||||
fRules.put(Integer.valueOf(322), "function_direct_declarator ::= basic_direct_declarator LeftParen <openscope-ast> parameter_declaration_clause ) <openscope-ast> cv_qualifier_seq_opt <openscope-ast> exception_specification_opt");
|
||||
fRules.put(Integer.valueOf(41), "dcolon_opt ::= ColonColon");
|
||||
fRules.put(Integer.valueOf(42), "dcolon_opt ::=");
|
||||
fRules.put(Integer.valueOf(17), "identifier_token ::= identifier");
|
||||
fRules.put(Integer.valueOf(18), "identifier_token ::= Completion");
|
||||
fRules.put(Integer.valueOf(38), "identifier_name ::= identifier_token");
|
||||
fRules.put(Integer.valueOf(501), "template_identifier ::= identifier_name");
|
||||
fRules.put(Integer.valueOf(500), "template_id_name ::= template_identifier LT <openscope-ast> template_argument_list_opt GT");
|
||||
fRules.put(Integer.valueOf(382), "class_name ::= identifier_name");
|
||||
fRules.put(Integer.valueOf(383), "class_name ::= template_id_name");
|
||||
fRules.put(Integer.valueOf(54), "class_or_namespace_name ::= class_name");
|
||||
fRules.put(Integer.valueOf(47), "nested_name_specifier ::= class_or_namespace_name ColonColon nested_name_specifier_with_template");
|
||||
fRules.put(Integer.valueOf(48), "nested_name_specifier ::= class_or_namespace_name ColonColon");
|
||||
fRules.put(Integer.valueOf(327), "ptr_operator ::= Star <openscope-ast> cv_qualifier_seq_opt");
|
||||
fRules.put(Integer.valueOf(328), "ptr_operator ::= And");
|
||||
fRules.put(Integer.valueOf(329), "ptr_operator ::= dcolon_opt nested_name_specifier Star <openscope-ast> cv_qualifier_seq_opt");
|
||||
fRules.put(Integer.valueOf(330), "ptr_operator_seq ::= ptr_operator");
|
||||
fRules.put(Integer.valueOf(331), "ptr_operator_seq ::= ptr_operator_seq ptr_operator");
|
||||
fRules.put(Integer.valueOf(315), "function_declarator ::= function_direct_declarator");
|
||||
fRules.put(Integer.valueOf(316), "function_declarator ::= <openscope-ast> ptr_operator_seq direct_declarator");
|
||||
fRules.put(Integer.valueOf(371), "function_definition ::= declaration_specifiers_opt function_declarator <openscope-ast> ctor_initializer_list_opt function_body");
|
||||
fRules.put(Integer.valueOf(372), "function_definition ::= declaration_specifiers_opt function_declarator try <openscope-ast> ctor_initializer_list_opt function_body <openscope-ast> handler_seq");
|
||||
fRules.put(Integer.valueOf(488), "export_opt ::= export");
|
||||
fRules.put(Integer.valueOf(489), "export_opt ::=");
|
||||
fRules.put(Integer.valueOf(487), "template_declaration ::= export_opt template LT <openscope-ast> template_parameter_list GT declaration");
|
||||
fRules.put(Integer.valueOf(509), "explicit_instantiation ::= template declaration");
|
||||
fRules.put(Integer.valueOf(510), "explicit_specialization ::= template LT GT declaration");
|
||||
fRules.put(Integer.valueOf(316), "function_declarator ::= function_direct_declarator");
|
||||
fRules.put(Integer.valueOf(317), "function_declarator ::= <openscope-ast> ptr_operator_seq direct_declarator");
|
||||
fRules.put(Integer.valueOf(372), "function_definition ::= declaration_specifiers_opt function_declarator <openscope-ast> ctor_initializer_list_opt function_body");
|
||||
fRules.put(Integer.valueOf(373), "function_definition ::= declaration_specifiers_opt function_declarator try <openscope-ast> ctor_initializer_list_opt function_body <openscope-ast> handler_seq");
|
||||
fRules.put(Integer.valueOf(489), "export_opt ::= export");
|
||||
fRules.put(Integer.valueOf(490), "export_opt ::=");
|
||||
fRules.put(Integer.valueOf(488), "template_declaration ::= export_opt template LT <openscope-ast> template_parameter_list GT declaration");
|
||||
fRules.put(Integer.valueOf(510), "explicit_instantiation ::= template declaration");
|
||||
fRules.put(Integer.valueOf(511), "explicit_specialization ::= template LT GT declaration");
|
||||
fRules.put(Integer.valueOf(305), "linkage_specification ::= extern stringlit LeftBrace <openscope-ast> declaration_seq_opt }");
|
||||
fRules.put(Integer.valueOf(306), "linkage_specification ::= extern stringlit <openscope-ast> declaration");
|
||||
fRules.put(Integer.valueOf(296), "original_namespace_definition ::= namespace identifier_name LeftBrace <openscope-ast> declaration_seq_opt }");
|
||||
|
@ -102,21 +126,6 @@ public class CPPRules {
|
|||
fRules.put(Integer.valueOf(24), "literal ::= true");
|
||||
fRules.put(Integer.valueOf(25), "literal ::= false");
|
||||
fRules.put(Integer.valueOf(26), "literal ::= this");
|
||||
fRules.put(Integer.valueOf(444), "operator_id_name ::= operator overloadable_operator");
|
||||
fRules.put(Integer.valueOf(442), "operator_function_id_name ::= operator_id_name");
|
||||
fRules.put(Integer.valueOf(443), "operator_function_id_name ::= operator_id_name LT <openscope-ast> template_argument_list_opt GT");
|
||||
fRules.put(Integer.valueOf(430), "conversion_function_id_name ::= operator conversion_type_id");
|
||||
fRules.put(Integer.valueOf(33), "unqualified_id_name ::= identifier_name");
|
||||
fRules.put(Integer.valueOf(34), "unqualified_id_name ::= operator_function_id_name");
|
||||
fRules.put(Integer.valueOf(35), "unqualified_id_name ::= conversion_function_id_name");
|
||||
fRules.put(Integer.valueOf(36), "unqualified_id_name ::= template_id_name");
|
||||
fRules.put(Integer.valueOf(37), "unqualified_id_name ::= Tilde class_name");
|
||||
fRules.put(Integer.valueOf(43), "qualified_id_name ::= dcolon_opt nested_name_specifier template_opt unqualified_id_name");
|
||||
fRules.put(Integer.valueOf(44), "qualified_id_name ::= ColonColon identifier_name");
|
||||
fRules.put(Integer.valueOf(45), "qualified_id_name ::= ColonColon operator_function_id_name");
|
||||
fRules.put(Integer.valueOf(46), "qualified_id_name ::= ColonColon template_id_name");
|
||||
fRules.put(Integer.valueOf(31), "qualified_or_unqualified_name ::= unqualified_id_name");
|
||||
fRules.put(Integer.valueOf(32), "qualified_or_unqualified_name ::= qualified_id_name");
|
||||
fRules.put(Integer.valueOf(30), "id_expression ::= qualified_or_unqualified_name");
|
||||
fRules.put(Integer.valueOf(27), "primary_expression ::= literal");
|
||||
fRules.put(Integer.valueOf(28), "primary_expression ::= LeftParen expression )");
|
||||
|
@ -229,11 +238,8 @@ public class CPPRules {
|
|||
fRules.put(Integer.valueOf(51), "class_or_namespace_name_with_template ::= template_opt class_or_namespace_name");
|
||||
fRules.put(Integer.valueOf(49), "nested_name_specifier_with_template ::= class_or_namespace_name_with_template ColonColon nested_name_specifier_with_template");
|
||||
fRules.put(Integer.valueOf(50), "nested_name_specifier_with_template ::= class_or_namespace_name_with_template ColonColon");
|
||||
fRules.put(Integer.valueOf(52), "nested_name_specifier_opt ::= nested_name_specifier");
|
||||
fRules.put(Integer.valueOf(53), "nested_name_specifier_opt ::=");
|
||||
fRules.put(Integer.valueOf(164), "expression_list_opt ::= expression_list");
|
||||
fRules.put(Integer.valueOf(165), "expression_list_opt ::=");
|
||||
fRules.put(Integer.valueOf(274), "type_name ::= class_name");
|
||||
fRules.put(Integer.valueOf(78), "destructor_type_name ::= Tilde type_name");
|
||||
fRules.put(Integer.valueOf(75), "pseudo_destructor_name ::= dcolon_opt nested_name_specifier_opt type_name ColonColon destructor_type_name");
|
||||
fRules.put(Integer.valueOf(76), "pseudo_destructor_name ::= dcolon_opt nested_name_specifier template template_id_name ColonColon destructor_type_name");
|
||||
|
@ -246,8 +252,8 @@ public class CPPRules {
|
|||
fRules.put(Integer.valueOf(259), "function_specifier ::= inline");
|
||||
fRules.put(Integer.valueOf(260), "function_specifier ::= virtual");
|
||||
fRules.put(Integer.valueOf(261), "function_specifier ::= explicit");
|
||||
fRules.put(Integer.valueOf(335), "cv_qualifier ::= const");
|
||||
fRules.put(Integer.valueOf(336), "cv_qualifier ::= volatile");
|
||||
fRules.put(Integer.valueOf(336), "cv_qualifier ::= const");
|
||||
fRules.put(Integer.valueOf(337), "cv_qualifier ::= volatile");
|
||||
fRules.put(Integer.valueOf(230), "no_type_declaration_specifier ::= storage_class_specifier");
|
||||
fRules.put(Integer.valueOf(231), "no_type_declaration_specifier ::= function_specifier");
|
||||
fRules.put(Integer.valueOf(232), "no_type_declaration_specifier ::= cv_qualifier");
|
||||
|
@ -260,14 +266,14 @@ public class CPPRules {
|
|||
fRules.put(Integer.valueOf(239), "simple_declaration_specifiers ::= simple_declaration_specifiers simple_type_specifier");
|
||||
fRules.put(Integer.valueOf(240), "simple_declaration_specifiers ::= simple_declaration_specifiers no_type_declaration_specifier");
|
||||
fRules.put(Integer.valueOf(241), "simple_declaration_specifiers ::= no_type_declaration_specifiers");
|
||||
fRules.put(Integer.valueOf(391), "class_keyword ::= class");
|
||||
fRules.put(Integer.valueOf(392), "class_keyword ::= struct");
|
||||
fRules.put(Integer.valueOf(393), "class_keyword ::= union");
|
||||
fRules.put(Integer.valueOf(385), "class_head ::= class_keyword identifier_name_opt <openscope-ast> base_clause_opt");
|
||||
fRules.put(Integer.valueOf(386), "class_head ::= class_keyword template_id_name <openscope-ast> base_clause_opt");
|
||||
fRules.put(Integer.valueOf(387), "class_head ::= class_keyword nested_name_specifier identifier_name <openscope-ast> base_clause_opt");
|
||||
fRules.put(Integer.valueOf(388), "class_head ::= class_keyword nested_name_specifier template_id_name <openscope-ast> base_clause_opt");
|
||||
fRules.put(Integer.valueOf(384), "class_specifier ::= class_head LeftBrace <openscope-ast> member_declaration_list_opt }");
|
||||
fRules.put(Integer.valueOf(392), "class_keyword ::= class");
|
||||
fRules.put(Integer.valueOf(393), "class_keyword ::= struct");
|
||||
fRules.put(Integer.valueOf(394), "class_keyword ::= union");
|
||||
fRules.put(Integer.valueOf(386), "class_head ::= class_keyword identifier_name_opt <openscope-ast> base_clause_opt");
|
||||
fRules.put(Integer.valueOf(387), "class_head ::= class_keyword template_id_name <openscope-ast> base_clause_opt");
|
||||
fRules.put(Integer.valueOf(388), "class_head ::= class_keyword nested_name_specifier identifier_name <openscope-ast> base_clause_opt");
|
||||
fRules.put(Integer.valueOf(389), "class_head ::= class_keyword nested_name_specifier template_id_name <openscope-ast> base_clause_opt");
|
||||
fRules.put(Integer.valueOf(385), "class_specifier ::= class_head LeftBrace <openscope-ast> member_declaration_list_opt }");
|
||||
fRules.put(Integer.valueOf(242), "class_declaration_specifiers ::= class_specifier");
|
||||
fRules.put(Integer.valueOf(243), "class_declaration_specifiers ::= no_type_declaration_specifiers class_specifier");
|
||||
fRules.put(Integer.valueOf(244), "class_declaration_specifiers ::= class_declaration_specifiers no_type_declaration_specifier");
|
||||
|
@ -295,9 +301,9 @@ public class CPPRules {
|
|||
fRules.put(Integer.valueOf(225), "declaration_specifiers ::= <openscope-ast> elaborated_declaration_specifiers");
|
||||
fRules.put(Integer.valueOf(226), "declaration_specifiers ::= <openscope-ast> enum_declaration_specifiers");
|
||||
fRules.put(Integer.valueOf(227), "declaration_specifiers ::= <openscope-ast> type_name_declaration_specifiers");
|
||||
fRules.put(Integer.valueOf(341), "type_specifier_seq ::= declaration_specifiers");
|
||||
fRules.put(Integer.valueOf(339), "type_id ::= type_specifier_seq");
|
||||
fRules.put(Integer.valueOf(340), "type_id ::= type_specifier_seq abstract_declarator");
|
||||
fRules.put(Integer.valueOf(342), "type_specifier_seq ::= declaration_specifiers");
|
||||
fRules.put(Integer.valueOf(340), "type_id ::= type_specifier_seq");
|
||||
fRules.put(Integer.valueOf(341), "type_id ::= type_specifier_seq abstract_declarator");
|
||||
fRules.put(Integer.valueOf(94), "new_placement_opt ::= LeftParen expression_list )");
|
||||
fRules.put(Integer.valueOf(95), "new_placement_opt ::=");
|
||||
fRules.put(Integer.valueOf(96), "new_type_id ::= type_specifier_seq");
|
||||
|
@ -338,7 +344,7 @@ public class CPPRules {
|
|||
fRules.put(Integer.valueOf(202), "jump_statement ::= goto identifier_token ;");
|
||||
fRules.put(Integer.valueOf(203), "declaration_statement ::= block_declaration");
|
||||
fRules.put(Integer.valueOf(204), "declaration_statement ::= function_definition");
|
||||
fRules.put(Integer.valueOf(511), "try_block ::= try compound_statement <openscope-ast> handler_seq");
|
||||
fRules.put(Integer.valueOf(512), "try_block ::= try compound_statement <openscope-ast> handler_seq");
|
||||
fRules.put(Integer.valueOf(171), "statement ::= labeled_statement");
|
||||
fRules.put(Integer.valueOf(172), "statement ::= expression_statement");
|
||||
fRules.put(Integer.valueOf(173), "statement ::= compound_statement");
|
||||
|
@ -366,174 +372,169 @@ public class CPPRules {
|
|||
fRules.put(Integer.valueOf(291), "namespace_name ::= identifier_name");
|
||||
fRules.put(Integer.valueOf(301), "typename_opt ::= typename");
|
||||
fRules.put(Integer.valueOf(302), "typename_opt ::=");
|
||||
fRules.put(Integer.valueOf(374), "initializer ::= Assign initializer_clause");
|
||||
fRules.put(Integer.valueOf(375), "initializer ::= LeftParen expression_list )");
|
||||
fRules.put(Integer.valueOf(323), "array_direct_declarator ::= array_direct_declarator array_modifier");
|
||||
fRules.put(Integer.valueOf(324), "array_direct_declarator ::= basic_direct_declarator array_modifier");
|
||||
fRules.put(Integer.valueOf(317), "direct_declarator ::= basic_direct_declarator");
|
||||
fRules.put(Integer.valueOf(318), "direct_declarator ::= function_direct_declarator");
|
||||
fRules.put(Integer.valueOf(319), "direct_declarator ::= array_direct_declarator");
|
||||
fRules.put(Integer.valueOf(363), "parameter_declaration ::= declaration_specifiers parameter_init_declarator");
|
||||
fRules.put(Integer.valueOf(364), "parameter_declaration ::= declaration_specifiers");
|
||||
fRules.put(Integer.valueOf(357), "parameter_declaration_list ::= parameter_declaration");
|
||||
fRules.put(Integer.valueOf(358), "parameter_declaration_list ::= parameter_declaration_list Comma parameter_declaration");
|
||||
fRules.put(Integer.valueOf(359), "parameter_declaration_list_opt ::= parameter_declaration_list");
|
||||
fRules.put(Integer.valueOf(360), "parameter_declaration_list_opt ::=");
|
||||
fRules.put(Integer.valueOf(354), "parameter_declaration_clause ::= parameter_declaration_list_opt DotDotDot");
|
||||
fRules.put(Integer.valueOf(356), "parameter_declaration_clause ::= parameter_declaration_list Comma DotDotDot");
|
||||
fRules.put(Integer.valueOf(355), "parameter_declaration_clause ::= parameter_declaration_list_opt");
|
||||
fRules.put(Integer.valueOf(332), "cv_qualifier_seq ::= cv_qualifier cv_qualifier_seq_opt");
|
||||
fRules.put(Integer.valueOf(333), "cv_qualifier_seq_opt ::= cv_qualifier_seq");
|
||||
fRules.put(Integer.valueOf(334), "cv_qualifier_seq_opt ::=");
|
||||
fRules.put(Integer.valueOf(519), "exception_specification ::= throw LeftParen type_id_list )");
|
||||
fRules.put(Integer.valueOf(520), "exception_specification ::= throw LeftParen )");
|
||||
fRules.put(Integer.valueOf(521), "exception_specification_opt ::= exception_specification");
|
||||
fRules.put(Integer.valueOf(522), "exception_specification_opt ::=");
|
||||
fRules.put(Integer.valueOf(325), "array_modifier ::= LeftBracket constant_expression ]");
|
||||
fRules.put(Integer.valueOf(326), "array_modifier ::= LeftBracket ]");
|
||||
fRules.put(Integer.valueOf(348), "basic_direct_abstract_declarator ::= LeftParen abstract_declarator )");
|
||||
fRules.put(Integer.valueOf(349), "array_direct_abstract_declarator ::= array_modifier");
|
||||
fRules.put(Integer.valueOf(350), "array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier");
|
||||
fRules.put(Integer.valueOf(351), "array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier");
|
||||
fRules.put(Integer.valueOf(352), "function_direct_abstract_declarator ::= basic_direct_abstract_declarator LeftParen <openscope-ast> parameter_declaration_clause ) <openscope-ast> cv_qualifier_seq_opt <openscope-ast> exception_specification_opt");
|
||||
fRules.put(Integer.valueOf(353), "function_direct_abstract_declarator ::= LeftParen <openscope-ast> parameter_declaration_clause ) <openscope-ast> cv_qualifier_seq_opt <openscope-ast> exception_specification_opt");
|
||||
fRules.put(Integer.valueOf(345), "direct_abstract_declarator ::= basic_direct_abstract_declarator");
|
||||
fRules.put(Integer.valueOf(346), "direct_abstract_declarator ::= array_direct_abstract_declarator");
|
||||
fRules.put(Integer.valueOf(347), "direct_abstract_declarator ::= function_direct_abstract_declarator");
|
||||
fRules.put(Integer.valueOf(342), "abstract_declarator ::= direct_abstract_declarator");
|
||||
fRules.put(Integer.valueOf(343), "abstract_declarator ::= <openscope-ast> ptr_operator_seq");
|
||||
fRules.put(Integer.valueOf(344), "abstract_declarator ::= <openscope-ast> ptr_operator_seq direct_abstract_declarator");
|
||||
fRules.put(Integer.valueOf(361), "abstract_declarator_opt ::= abstract_declarator");
|
||||
fRules.put(Integer.valueOf(362), "abstract_declarator_opt ::=");
|
||||
fRules.put(Integer.valueOf(365), "parameter_init_declarator ::= declarator");
|
||||
fRules.put(Integer.valueOf(366), "parameter_init_declarator ::= declarator Assign parameter_initializer");
|
||||
fRules.put(Integer.valueOf(367), "parameter_init_declarator ::= abstract_declarator");
|
||||
fRules.put(Integer.valueOf(368), "parameter_init_declarator ::= abstract_declarator Assign parameter_initializer");
|
||||
fRules.put(Integer.valueOf(369), "parameter_init_declarator ::= Assign parameter_initializer");
|
||||
fRules.put(Integer.valueOf(370), "parameter_initializer ::= assignment_expression");
|
||||
fRules.put(Integer.valueOf(434), "ctor_initializer_list ::= Colon mem_initializer_list");
|
||||
fRules.put(Integer.valueOf(435), "ctor_initializer_list_opt ::= ctor_initializer_list");
|
||||
fRules.put(Integer.valueOf(436), "ctor_initializer_list_opt ::=");
|
||||
fRules.put(Integer.valueOf(373), "function_body ::= compound_statement");
|
||||
fRules.put(Integer.valueOf(514), "handler ::= catch LeftParen exception_declaration ) compound_statement");
|
||||
fRules.put(Integer.valueOf(515), "handler ::= catch LeftParen DotDotDot ) compound_statement");
|
||||
fRules.put(Integer.valueOf(512), "handler_seq ::= handler");
|
||||
fRules.put(Integer.valueOf(513), "handler_seq ::= handler_seq handler");
|
||||
fRules.put(Integer.valueOf(376), "initializer_clause ::= assignment_expression");
|
||||
fRules.put(Integer.valueOf(377), "initializer_clause ::= LeftBrace <openscope-ast> initializer_list Comma }");
|
||||
fRules.put(Integer.valueOf(378), "initializer_clause ::= LeftBrace <openscope-ast> initializer_list }");
|
||||
fRules.put(Integer.valueOf(379), "initializer_clause ::= LeftBrace <openscope-ast> }");
|
||||
fRules.put(Integer.valueOf(380), "initializer_list ::= initializer_clause");
|
||||
fRules.put(Integer.valueOf(381), "initializer_list ::= initializer_list Comma initializer_clause");
|
||||
fRules.put(Integer.valueOf(414), "bit_field_declarator ::= identifier_name");
|
||||
fRules.put(Integer.valueOf(410), "member_declarator ::= declarator");
|
||||
fRules.put(Integer.valueOf(411), "member_declarator ::= declarator constant_initializer");
|
||||
fRules.put(Integer.valueOf(412), "member_declarator ::= bit_field_declarator Colon constant_expression");
|
||||
fRules.put(Integer.valueOf(413), "member_declarator ::= Colon constant_expression");
|
||||
fRules.put(Integer.valueOf(408), "member_declarator_list ::= member_declarator");
|
||||
fRules.put(Integer.valueOf(409), "member_declarator_list ::= member_declarator_list Comma member_declarator");
|
||||
fRules.put(Integer.valueOf(425), "access_specifier_keyword ::= private");
|
||||
fRules.put(Integer.valueOf(426), "access_specifier_keyword ::= protected");
|
||||
fRules.put(Integer.valueOf(427), "access_specifier_keyword ::= public");
|
||||
fRules.put(Integer.valueOf(394), "visibility_label ::= access_specifier_keyword Colon");
|
||||
fRules.put(Integer.valueOf(395), "member_declaration ::= declaration_specifiers_opt <openscope-ast> member_declarator_list ;");
|
||||
fRules.put(Integer.valueOf(396), "member_declaration ::= declaration_specifiers_opt ;");
|
||||
fRules.put(Integer.valueOf(397), "member_declaration ::= function_definition ;");
|
||||
fRules.put(Integer.valueOf(398), "member_declaration ::= function_definition");
|
||||
fRules.put(Integer.valueOf(399), "member_declaration ::= dcolon_opt nested_name_specifier template_opt unqualified_id_name ;");
|
||||
fRules.put(Integer.valueOf(400), "member_declaration ::= using_declaration");
|
||||
fRules.put(Integer.valueOf(401), "member_declaration ::= template_declaration");
|
||||
fRules.put(Integer.valueOf(402), "member_declaration ::= visibility_label");
|
||||
fRules.put(Integer.valueOf(403), "member_declaration ::= ERROR_TOKEN");
|
||||
fRules.put(Integer.valueOf(404), "member_declaration_list ::= member_declaration");
|
||||
fRules.put(Integer.valueOf(405), "member_declaration_list ::= member_declaration_list member_declaration");
|
||||
fRules.put(Integer.valueOf(406), "member_declaration_list_opt ::= member_declaration_list");
|
||||
fRules.put(Integer.valueOf(407), "member_declaration_list_opt ::=");
|
||||
fRules.put(Integer.valueOf(389), "identifier_name_opt ::= identifier_name");
|
||||
fRules.put(Integer.valueOf(390), "identifier_name_opt ::=");
|
||||
fRules.put(Integer.valueOf(416), "base_clause ::= Colon base_specifier_list");
|
||||
fRules.put(Integer.valueOf(417), "base_clause_opt ::= base_clause");
|
||||
fRules.put(Integer.valueOf(418), "base_clause_opt ::=");
|
||||
fRules.put(Integer.valueOf(415), "constant_initializer ::= Assign constant_expression");
|
||||
fRules.put(Integer.valueOf(421), "base_specifier ::= dcolon_opt nested_name_specifier_opt class_name");
|
||||
fRules.put(Integer.valueOf(422), "base_specifier ::= virtual access_specifier_keyword_opt dcolon_opt nested_name_specifier_opt class_name");
|
||||
fRules.put(Integer.valueOf(423), "base_specifier ::= access_specifier_keyword virtual dcolon_opt nested_name_specifier_opt class_name");
|
||||
fRules.put(Integer.valueOf(424), "base_specifier ::= access_specifier_keyword dcolon_opt nested_name_specifier_opt class_name");
|
||||
fRules.put(Integer.valueOf(419), "base_specifier_list ::= base_specifier");
|
||||
fRules.put(Integer.valueOf(420), "base_specifier_list ::= base_specifier_list Comma base_specifier");
|
||||
fRules.put(Integer.valueOf(428), "access_specifier_keyword_opt ::= access_specifier_keyword");
|
||||
fRules.put(Integer.valueOf(429), "access_specifier_keyword_opt ::=");
|
||||
fRules.put(Integer.valueOf(431), "conversion_type_id ::= type_specifier_seq conversion_declarator");
|
||||
fRules.put(Integer.valueOf(432), "conversion_type_id ::= type_specifier_seq");
|
||||
fRules.put(Integer.valueOf(433), "conversion_declarator ::= <openscope-ast> ptr_operator_seq");
|
||||
fRules.put(Integer.valueOf(440), "mem_initializer_name ::= dcolon_opt nested_name_specifier_opt class_name");
|
||||
fRules.put(Integer.valueOf(441), "mem_initializer_name ::= identifier_name");
|
||||
fRules.put(Integer.valueOf(439), "mem_initializer ::= mem_initializer_name LeftParen expression_list_opt )");
|
||||
fRules.put(Integer.valueOf(437), "mem_initializer_list ::= mem_initializer");
|
||||
fRules.put(Integer.valueOf(438), "mem_initializer_list ::= mem_initializer Comma mem_initializer_list");
|
||||
fRules.put(Integer.valueOf(506), "template_argument ::= assignment_expression");
|
||||
fRules.put(Integer.valueOf(507), "template_argument ::= type_id");
|
||||
fRules.put(Integer.valueOf(508), "template_argument ::= qualified_or_unqualified_name");
|
||||
fRules.put(Integer.valueOf(502), "template_argument_list ::= template_argument");
|
||||
fRules.put(Integer.valueOf(503), "template_argument_list ::= template_argument_list Comma template_argument");
|
||||
fRules.put(Integer.valueOf(504), "template_argument_list_opt ::= template_argument_list");
|
||||
fRules.put(Integer.valueOf(505), "template_argument_list_opt ::=");
|
||||
fRules.put(Integer.valueOf(445), "overloadable_operator ::= new");
|
||||
fRules.put(Integer.valueOf(446), "overloadable_operator ::= delete");
|
||||
fRules.put(Integer.valueOf(447), "overloadable_operator ::= new LeftBracket ]");
|
||||
fRules.put(Integer.valueOf(448), "overloadable_operator ::= delete LeftBracket ]");
|
||||
fRules.put(Integer.valueOf(449), "overloadable_operator ::= Plus");
|
||||
fRules.put(Integer.valueOf(450), "overloadable_operator ::= Minus");
|
||||
fRules.put(Integer.valueOf(451), "overloadable_operator ::= Star");
|
||||
fRules.put(Integer.valueOf(452), "overloadable_operator ::= Slash");
|
||||
fRules.put(Integer.valueOf(453), "overloadable_operator ::= Percent");
|
||||
fRules.put(Integer.valueOf(454), "overloadable_operator ::= Caret");
|
||||
fRules.put(Integer.valueOf(455), "overloadable_operator ::= And");
|
||||
fRules.put(Integer.valueOf(456), "overloadable_operator ::= Or");
|
||||
fRules.put(Integer.valueOf(457), "overloadable_operator ::= Tilde");
|
||||
fRules.put(Integer.valueOf(458), "overloadable_operator ::= Bang");
|
||||
fRules.put(Integer.valueOf(459), "overloadable_operator ::= Assign");
|
||||
fRules.put(Integer.valueOf(460), "overloadable_operator ::= LT");
|
||||
fRules.put(Integer.valueOf(461), "overloadable_operator ::= GT");
|
||||
fRules.put(Integer.valueOf(462), "overloadable_operator ::= PlusAssign");
|
||||
fRules.put(Integer.valueOf(463), "overloadable_operator ::= MinusAssign");
|
||||
fRules.put(Integer.valueOf(464), "overloadable_operator ::= StarAssign");
|
||||
fRules.put(Integer.valueOf(465), "overloadable_operator ::= SlashAssign");
|
||||
fRules.put(Integer.valueOf(466), "overloadable_operator ::= PercentAssign");
|
||||
fRules.put(Integer.valueOf(467), "overloadable_operator ::= CaretAssign");
|
||||
fRules.put(Integer.valueOf(468), "overloadable_operator ::= AndAssign");
|
||||
fRules.put(Integer.valueOf(469), "overloadable_operator ::= OrAssign");
|
||||
fRules.put(Integer.valueOf(470), "overloadable_operator ::= LeftShift");
|
||||
fRules.put(Integer.valueOf(471), "overloadable_operator ::= RightShift");
|
||||
fRules.put(Integer.valueOf(472), "overloadable_operator ::= RightShiftAssign");
|
||||
fRules.put(Integer.valueOf(473), "overloadable_operator ::= LeftShiftAssign");
|
||||
fRules.put(Integer.valueOf(474), "overloadable_operator ::= EQ");
|
||||
fRules.put(Integer.valueOf(475), "overloadable_operator ::= NE");
|
||||
fRules.put(Integer.valueOf(476), "overloadable_operator ::= LE");
|
||||
fRules.put(Integer.valueOf(477), "overloadable_operator ::= GE");
|
||||
fRules.put(Integer.valueOf(478), "overloadable_operator ::= AndAnd");
|
||||
fRules.put(Integer.valueOf(479), "overloadable_operator ::= OrOr");
|
||||
fRules.put(Integer.valueOf(480), "overloadable_operator ::= PlusPlus");
|
||||
fRules.put(Integer.valueOf(481), "overloadable_operator ::= MinusMinus");
|
||||
fRules.put(Integer.valueOf(482), "overloadable_operator ::= Comma");
|
||||
fRules.put(Integer.valueOf(483), "overloadable_operator ::= ArrowStar");
|
||||
fRules.put(Integer.valueOf(484), "overloadable_operator ::= Arrow");
|
||||
fRules.put(Integer.valueOf(485), "overloadable_operator ::= LeftParen )");
|
||||
fRules.put(Integer.valueOf(486), "overloadable_operator ::= LeftBracket ]");
|
||||
fRules.put(Integer.valueOf(493), "template_parameter ::= parameter_declaration");
|
||||
fRules.put(Integer.valueOf(490), "template_parameter_list ::= template_parameter");
|
||||
fRules.put(Integer.valueOf(491), "template_parameter_list ::= template_parameter_list Comma template_parameter");
|
||||
fRules.put(Integer.valueOf(494), "type_parameter ::= class identifier_name_opt");
|
||||
fRules.put(Integer.valueOf(495), "type_parameter ::= class identifier_name_opt Assign type_id");
|
||||
fRules.put(Integer.valueOf(496), "type_parameter ::= typename identifier_name_opt");
|
||||
fRules.put(Integer.valueOf(497), "type_parameter ::= typename identifier_name_opt Assign type_id");
|
||||
fRules.put(Integer.valueOf(498), "type_parameter ::= template LT <openscope-ast> template_parameter_list GT class identifier_name_opt");
|
||||
fRules.put(Integer.valueOf(499), "type_parameter ::= template LT <openscope-ast> template_parameter_list GT class identifier_name_opt Assign id_expression");
|
||||
fRules.put(Integer.valueOf(516), "exception_declaration ::= type_specifier_seq <openscope-ast> declarator");
|
||||
fRules.put(Integer.valueOf(517), "exception_declaration ::= type_specifier_seq <openscope-ast> abstract_declarator");
|
||||
fRules.put(Integer.valueOf(518), "exception_declaration ::= type_specifier_seq");
|
||||
fRules.put(Integer.valueOf(523), "type_id_list ::= type_id");
|
||||
fRules.put(Integer.valueOf(524), "type_id_list ::= type_id_list Comma type_id");
|
||||
fRules.put(Integer.valueOf(375), "initializer ::= Assign initializer_clause");
|
||||
fRules.put(Integer.valueOf(376), "initializer ::= LeftParen expression_list )");
|
||||
fRules.put(Integer.valueOf(364), "parameter_declaration ::= declaration_specifiers parameter_init_declarator");
|
||||
fRules.put(Integer.valueOf(365), "parameter_declaration ::= declaration_specifiers");
|
||||
fRules.put(Integer.valueOf(358), "parameter_declaration_list ::= parameter_declaration");
|
||||
fRules.put(Integer.valueOf(359), "parameter_declaration_list ::= parameter_declaration_list Comma parameter_declaration");
|
||||
fRules.put(Integer.valueOf(360), "parameter_declaration_list_opt ::= parameter_declaration_list");
|
||||
fRules.put(Integer.valueOf(361), "parameter_declaration_list_opt ::=");
|
||||
fRules.put(Integer.valueOf(355), "parameter_declaration_clause ::= parameter_declaration_list_opt DotDotDot");
|
||||
fRules.put(Integer.valueOf(357), "parameter_declaration_clause ::= parameter_declaration_list Comma DotDotDot");
|
||||
fRules.put(Integer.valueOf(356), "parameter_declaration_clause ::= parameter_declaration_list_opt");
|
||||
fRules.put(Integer.valueOf(333), "cv_qualifier_seq ::= cv_qualifier cv_qualifier_seq_opt");
|
||||
fRules.put(Integer.valueOf(334), "cv_qualifier_seq_opt ::= cv_qualifier_seq");
|
||||
fRules.put(Integer.valueOf(335), "cv_qualifier_seq_opt ::=");
|
||||
fRules.put(Integer.valueOf(520), "exception_specification ::= throw LeftParen type_id_list )");
|
||||
fRules.put(Integer.valueOf(521), "exception_specification ::= throw LeftParen )");
|
||||
fRules.put(Integer.valueOf(522), "exception_specification_opt ::= exception_specification");
|
||||
fRules.put(Integer.valueOf(523), "exception_specification_opt ::=");
|
||||
fRules.put(Integer.valueOf(326), "array_modifier ::= LeftBracket constant_expression ]");
|
||||
fRules.put(Integer.valueOf(327), "array_modifier ::= LeftBracket ]");
|
||||
fRules.put(Integer.valueOf(349), "basic_direct_abstract_declarator ::= LeftParen abstract_declarator )");
|
||||
fRules.put(Integer.valueOf(350), "array_direct_abstract_declarator ::= array_modifier");
|
||||
fRules.put(Integer.valueOf(351), "array_direct_abstract_declarator ::= array_direct_abstract_declarator array_modifier");
|
||||
fRules.put(Integer.valueOf(352), "array_direct_abstract_declarator ::= basic_direct_abstract_declarator array_modifier");
|
||||
fRules.put(Integer.valueOf(353), "function_direct_abstract_declarator ::= basic_direct_abstract_declarator LeftParen <openscope-ast> parameter_declaration_clause ) <openscope-ast> cv_qualifier_seq_opt <openscope-ast> exception_specification_opt");
|
||||
fRules.put(Integer.valueOf(354), "function_direct_abstract_declarator ::= LeftParen <openscope-ast> parameter_declaration_clause ) <openscope-ast> cv_qualifier_seq_opt <openscope-ast> exception_specification_opt");
|
||||
fRules.put(Integer.valueOf(346), "direct_abstract_declarator ::= basic_direct_abstract_declarator");
|
||||
fRules.put(Integer.valueOf(347), "direct_abstract_declarator ::= array_direct_abstract_declarator");
|
||||
fRules.put(Integer.valueOf(348), "direct_abstract_declarator ::= function_direct_abstract_declarator");
|
||||
fRules.put(Integer.valueOf(343), "abstract_declarator ::= direct_abstract_declarator");
|
||||
fRules.put(Integer.valueOf(344), "abstract_declarator ::= <openscope-ast> ptr_operator_seq");
|
||||
fRules.put(Integer.valueOf(345), "abstract_declarator ::= <openscope-ast> ptr_operator_seq direct_abstract_declarator");
|
||||
fRules.put(Integer.valueOf(362), "abstract_declarator_opt ::= abstract_declarator");
|
||||
fRules.put(Integer.valueOf(363), "abstract_declarator_opt ::=");
|
||||
fRules.put(Integer.valueOf(366), "parameter_init_declarator ::= declarator");
|
||||
fRules.put(Integer.valueOf(367), "parameter_init_declarator ::= declarator Assign parameter_initializer");
|
||||
fRules.put(Integer.valueOf(368), "parameter_init_declarator ::= abstract_declarator");
|
||||
fRules.put(Integer.valueOf(369), "parameter_init_declarator ::= abstract_declarator Assign parameter_initializer");
|
||||
fRules.put(Integer.valueOf(370), "parameter_init_declarator ::= Assign parameter_initializer");
|
||||
fRules.put(Integer.valueOf(371), "parameter_initializer ::= assignment_expression");
|
||||
fRules.put(Integer.valueOf(435), "ctor_initializer_list ::= Colon mem_initializer_list");
|
||||
fRules.put(Integer.valueOf(436), "ctor_initializer_list_opt ::= ctor_initializer_list");
|
||||
fRules.put(Integer.valueOf(437), "ctor_initializer_list_opt ::=");
|
||||
fRules.put(Integer.valueOf(374), "function_body ::= compound_statement");
|
||||
fRules.put(Integer.valueOf(515), "handler ::= catch LeftParen exception_declaration ) compound_statement");
|
||||
fRules.put(Integer.valueOf(516), "handler ::= catch LeftParen DotDotDot ) compound_statement");
|
||||
fRules.put(Integer.valueOf(513), "handler_seq ::= handler");
|
||||
fRules.put(Integer.valueOf(514), "handler_seq ::= handler_seq handler");
|
||||
fRules.put(Integer.valueOf(377), "initializer_clause ::= assignment_expression");
|
||||
fRules.put(Integer.valueOf(378), "initializer_clause ::= LeftBrace <openscope-ast> initializer_list Comma }");
|
||||
fRules.put(Integer.valueOf(379), "initializer_clause ::= LeftBrace <openscope-ast> initializer_list }");
|
||||
fRules.put(Integer.valueOf(380), "initializer_clause ::= LeftBrace <openscope-ast> }");
|
||||
fRules.put(Integer.valueOf(381), "initializer_list ::= initializer_clause");
|
||||
fRules.put(Integer.valueOf(382), "initializer_list ::= initializer_list Comma initializer_clause");
|
||||
fRules.put(Integer.valueOf(415), "bit_field_declarator ::= identifier_name");
|
||||
fRules.put(Integer.valueOf(411), "member_declarator ::= declarator");
|
||||
fRules.put(Integer.valueOf(412), "member_declarator ::= declarator constant_initializer");
|
||||
fRules.put(Integer.valueOf(413), "member_declarator ::= bit_field_declarator Colon constant_expression");
|
||||
fRules.put(Integer.valueOf(414), "member_declarator ::= Colon constant_expression");
|
||||
fRules.put(Integer.valueOf(409), "member_declarator_list ::= member_declarator");
|
||||
fRules.put(Integer.valueOf(410), "member_declarator_list ::= member_declarator_list Comma member_declarator");
|
||||
fRules.put(Integer.valueOf(426), "access_specifier_keyword ::= private");
|
||||
fRules.put(Integer.valueOf(427), "access_specifier_keyword ::= protected");
|
||||
fRules.put(Integer.valueOf(428), "access_specifier_keyword ::= public");
|
||||
fRules.put(Integer.valueOf(395), "visibility_label ::= access_specifier_keyword Colon");
|
||||
fRules.put(Integer.valueOf(396), "member_declaration ::= declaration_specifiers_opt <openscope-ast> member_declarator_list ;");
|
||||
fRules.put(Integer.valueOf(397), "member_declaration ::= declaration_specifiers_opt ;");
|
||||
fRules.put(Integer.valueOf(398), "member_declaration ::= function_definition ;");
|
||||
fRules.put(Integer.valueOf(399), "member_declaration ::= function_definition");
|
||||
fRules.put(Integer.valueOf(400), "member_declaration ::= dcolon_opt nested_name_specifier template_opt unqualified_id_name ;");
|
||||
fRules.put(Integer.valueOf(401), "member_declaration ::= using_declaration");
|
||||
fRules.put(Integer.valueOf(402), "member_declaration ::= template_declaration");
|
||||
fRules.put(Integer.valueOf(403), "member_declaration ::= visibility_label");
|
||||
fRules.put(Integer.valueOf(404), "member_declaration ::= ERROR_TOKEN");
|
||||
fRules.put(Integer.valueOf(405), "member_declaration_list ::= member_declaration");
|
||||
fRules.put(Integer.valueOf(406), "member_declaration_list ::= member_declaration_list member_declaration");
|
||||
fRules.put(Integer.valueOf(407), "member_declaration_list_opt ::= member_declaration_list");
|
||||
fRules.put(Integer.valueOf(408), "member_declaration_list_opt ::=");
|
||||
fRules.put(Integer.valueOf(390), "identifier_name_opt ::= identifier_name");
|
||||
fRules.put(Integer.valueOf(391), "identifier_name_opt ::=");
|
||||
fRules.put(Integer.valueOf(417), "base_clause ::= Colon base_specifier_list");
|
||||
fRules.put(Integer.valueOf(418), "base_clause_opt ::= base_clause");
|
||||
fRules.put(Integer.valueOf(419), "base_clause_opt ::=");
|
||||
fRules.put(Integer.valueOf(416), "constant_initializer ::= Assign constant_expression");
|
||||
fRules.put(Integer.valueOf(422), "base_specifier ::= dcolon_opt nested_name_specifier_opt class_name");
|
||||
fRules.put(Integer.valueOf(423), "base_specifier ::= virtual access_specifier_keyword_opt dcolon_opt nested_name_specifier_opt class_name");
|
||||
fRules.put(Integer.valueOf(424), "base_specifier ::= access_specifier_keyword virtual dcolon_opt nested_name_specifier_opt class_name");
|
||||
fRules.put(Integer.valueOf(425), "base_specifier ::= access_specifier_keyword dcolon_opt nested_name_specifier_opt class_name");
|
||||
fRules.put(Integer.valueOf(420), "base_specifier_list ::= base_specifier");
|
||||
fRules.put(Integer.valueOf(421), "base_specifier_list ::= base_specifier_list Comma base_specifier");
|
||||
fRules.put(Integer.valueOf(429), "access_specifier_keyword_opt ::= access_specifier_keyword");
|
||||
fRules.put(Integer.valueOf(430), "access_specifier_keyword_opt ::=");
|
||||
fRules.put(Integer.valueOf(432), "conversion_type_id ::= type_specifier_seq conversion_declarator");
|
||||
fRules.put(Integer.valueOf(433), "conversion_type_id ::= type_specifier_seq");
|
||||
fRules.put(Integer.valueOf(434), "conversion_declarator ::= <openscope-ast> ptr_operator_seq");
|
||||
fRules.put(Integer.valueOf(441), "mem_initializer_name ::= dcolon_opt nested_name_specifier_opt class_name");
|
||||
fRules.put(Integer.valueOf(442), "mem_initializer_name ::= identifier_name");
|
||||
fRules.put(Integer.valueOf(440), "mem_initializer ::= mem_initializer_name LeftParen expression_list_opt )");
|
||||
fRules.put(Integer.valueOf(438), "mem_initializer_list ::= mem_initializer");
|
||||
fRules.put(Integer.valueOf(439), "mem_initializer_list ::= mem_initializer Comma mem_initializer_list");
|
||||
fRules.put(Integer.valueOf(507), "template_argument ::= assignment_expression");
|
||||
fRules.put(Integer.valueOf(508), "template_argument ::= type_id");
|
||||
fRules.put(Integer.valueOf(509), "template_argument ::= qualified_or_unqualified_name");
|
||||
fRules.put(Integer.valueOf(503), "template_argument_list ::= template_argument");
|
||||
fRules.put(Integer.valueOf(504), "template_argument_list ::= template_argument_list Comma template_argument");
|
||||
fRules.put(Integer.valueOf(505), "template_argument_list_opt ::= template_argument_list");
|
||||
fRules.put(Integer.valueOf(506), "template_argument_list_opt ::=");
|
||||
fRules.put(Integer.valueOf(446), "overloadable_operator ::= new");
|
||||
fRules.put(Integer.valueOf(447), "overloadable_operator ::= delete");
|
||||
fRules.put(Integer.valueOf(448), "overloadable_operator ::= new LeftBracket ]");
|
||||
fRules.put(Integer.valueOf(449), "overloadable_operator ::= delete LeftBracket ]");
|
||||
fRules.put(Integer.valueOf(450), "overloadable_operator ::= Plus");
|
||||
fRules.put(Integer.valueOf(451), "overloadable_operator ::= Minus");
|
||||
fRules.put(Integer.valueOf(452), "overloadable_operator ::= Star");
|
||||
fRules.put(Integer.valueOf(453), "overloadable_operator ::= Slash");
|
||||
fRules.put(Integer.valueOf(454), "overloadable_operator ::= Percent");
|
||||
fRules.put(Integer.valueOf(455), "overloadable_operator ::= Caret");
|
||||
fRules.put(Integer.valueOf(456), "overloadable_operator ::= And");
|
||||
fRules.put(Integer.valueOf(457), "overloadable_operator ::= Or");
|
||||
fRules.put(Integer.valueOf(458), "overloadable_operator ::= Tilde");
|
||||
fRules.put(Integer.valueOf(459), "overloadable_operator ::= Bang");
|
||||
fRules.put(Integer.valueOf(460), "overloadable_operator ::= Assign");
|
||||
fRules.put(Integer.valueOf(461), "overloadable_operator ::= LT");
|
||||
fRules.put(Integer.valueOf(462), "overloadable_operator ::= GT");
|
||||
fRules.put(Integer.valueOf(463), "overloadable_operator ::= PlusAssign");
|
||||
fRules.put(Integer.valueOf(464), "overloadable_operator ::= MinusAssign");
|
||||
fRules.put(Integer.valueOf(465), "overloadable_operator ::= StarAssign");
|
||||
fRules.put(Integer.valueOf(466), "overloadable_operator ::= SlashAssign");
|
||||
fRules.put(Integer.valueOf(467), "overloadable_operator ::= PercentAssign");
|
||||
fRules.put(Integer.valueOf(468), "overloadable_operator ::= CaretAssign");
|
||||
fRules.put(Integer.valueOf(469), "overloadable_operator ::= AndAssign");
|
||||
fRules.put(Integer.valueOf(470), "overloadable_operator ::= OrAssign");
|
||||
fRules.put(Integer.valueOf(471), "overloadable_operator ::= LeftShift");
|
||||
fRules.put(Integer.valueOf(472), "overloadable_operator ::= RightShift");
|
||||
fRules.put(Integer.valueOf(473), "overloadable_operator ::= RightShiftAssign");
|
||||
fRules.put(Integer.valueOf(474), "overloadable_operator ::= LeftShiftAssign");
|
||||
fRules.put(Integer.valueOf(475), "overloadable_operator ::= EQ");
|
||||
fRules.put(Integer.valueOf(476), "overloadable_operator ::= NE");
|
||||
fRules.put(Integer.valueOf(477), "overloadable_operator ::= LE");
|
||||
fRules.put(Integer.valueOf(478), "overloadable_operator ::= GE");
|
||||
fRules.put(Integer.valueOf(479), "overloadable_operator ::= AndAnd");
|
||||
fRules.put(Integer.valueOf(480), "overloadable_operator ::= OrOr");
|
||||
fRules.put(Integer.valueOf(481), "overloadable_operator ::= PlusPlus");
|
||||
fRules.put(Integer.valueOf(482), "overloadable_operator ::= MinusMinus");
|
||||
fRules.put(Integer.valueOf(483), "overloadable_operator ::= Comma");
|
||||
fRules.put(Integer.valueOf(484), "overloadable_operator ::= ArrowStar");
|
||||
fRules.put(Integer.valueOf(485), "overloadable_operator ::= Arrow");
|
||||
fRules.put(Integer.valueOf(486), "overloadable_operator ::= LeftParen )");
|
||||
fRules.put(Integer.valueOf(487), "overloadable_operator ::= LeftBracket ]");
|
||||
fRules.put(Integer.valueOf(494), "template_parameter ::= parameter_declaration");
|
||||
fRules.put(Integer.valueOf(491), "template_parameter_list ::= template_parameter");
|
||||
fRules.put(Integer.valueOf(492), "template_parameter_list ::= template_parameter_list Comma template_parameter");
|
||||
fRules.put(Integer.valueOf(495), "type_parameter ::= class identifier_name_opt");
|
||||
fRules.put(Integer.valueOf(496), "type_parameter ::= class identifier_name_opt Assign type_id");
|
||||
fRules.put(Integer.valueOf(497), "type_parameter ::= typename identifier_name_opt");
|
||||
fRules.put(Integer.valueOf(498), "type_parameter ::= typename identifier_name_opt Assign type_id");
|
||||
fRules.put(Integer.valueOf(499), "type_parameter ::= template LT <openscope-ast> template_parameter_list GT class identifier_name_opt");
|
||||
fRules.put(Integer.valueOf(500), "type_parameter ::= template LT <openscope-ast> template_parameter_list GT class identifier_name_opt Assign id_expression");
|
||||
fRules.put(Integer.valueOf(517), "exception_declaration ::= type_specifier_seq <openscope-ast> declarator");
|
||||
fRules.put(Integer.valueOf(518), "exception_declaration ::= type_specifier_seq <openscope-ast> abstract_declarator");
|
||||
fRules.put(Integer.valueOf(519), "exception_declaration ::= type_specifier_seq");
|
||||
fRules.put(Integer.valueOf(524), "type_id_list ::= type_id");
|
||||
fRules.put(Integer.valueOf(525), "type_id_list ::= type_id_list Comma type_id");
|
||||
|
||||
}
|
||||
|
||||
|
|
|
@ -1547,10 +1547,10 @@ public CPPSizeofExpressionParser(String[] mapFrom) { // constructor
|
|||
}
|
||||
|
||||
//
|
||||
// Rule 337: declarator_id_name ::= dcolon_opt nested_name_specifier_opt type_name
|
||||
// Rule 337: declarator_id_name ::= <empty> nested_name_specifier template_opt unqualified_id_name
|
||||
//
|
||||
case 337: { action.builder.
|
||||
consumeQualifiedId(false); break;
|
||||
consumeQualifiedId(true); break;
|
||||
}
|
||||
|
||||
//
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -24,19 +24,19 @@ public interface CPPSizeofExpressionParsersym {
|
|||
TK_char = 14,
|
||||
TK_class = 62,
|
||||
TK_const = 46,
|
||||
TK_const_cast = 31,
|
||||
TK_const_cast = 30,
|
||||
TK_continue = 78,
|
||||
TK_default = 79,
|
||||
TK_delete = 63,
|
||||
TK_do = 80,
|
||||
TK_double = 15,
|
||||
TK_dynamic_cast = 32,
|
||||
TK_dynamic_cast = 31,
|
||||
TK_else = 122,
|
||||
TK_enum = 68,
|
||||
TK_explicit = 52,
|
||||
TK_export = 81,
|
||||
TK_extern = 27,
|
||||
TK_false = 33,
|
||||
TK_false = 32,
|
||||
TK_float = 16,
|
||||
TK_for = 82,
|
||||
TK_friend = 53,
|
||||
|
@ -53,16 +53,16 @@ public interface CPPSizeofExpressionParsersym {
|
|||
TK_protected = 115,
|
||||
TK_public = 116,
|
||||
TK_register = 57,
|
||||
TK_reinterpret_cast = 34,
|
||||
TK_reinterpret_cast = 33,
|
||||
TK_return = 85,
|
||||
TK_short = 19,
|
||||
TK_signed = 20,
|
||||
TK_sizeof = 35,
|
||||
TK_sizeof = 34,
|
||||
TK_static = 58,
|
||||
TK_static_cast = 36,
|
||||
TK_static_cast = 35,
|
||||
TK_struct = 69,
|
||||
TK_switch = 86,
|
||||
TK_template = 29,
|
||||
TK_template = 36,
|
||||
TK_this = 37,
|
||||
TK_throw = 47,
|
||||
TK_try = 74,
|
||||
|
@ -100,7 +100,7 @@ public interface CPPSizeofExpressionParsersym {
|
|||
TK_Plus = 11,
|
||||
TK_Minus = 12,
|
||||
TK_Tilde = 5,
|
||||
TK_Bang = 30,
|
||||
TK_Bang = 29,
|
||||
TK_Slash = 91,
|
||||
TK_Percent = 92,
|
||||
TK_RightShift = 88,
|
||||
|
@ -170,7 +170,6 @@ public interface CPPSizeofExpressionParsersym {
|
|||
"SemiColon",
|
||||
"extern",
|
||||
"stringlit",
|
||||
"template",
|
||||
"Bang",
|
||||
"const_cast",
|
||||
"dynamic_cast",
|
||||
|
@ -178,6 +177,7 @@ public interface CPPSizeofExpressionParsersym {
|
|||
"reinterpret_cast",
|
||||
"sizeof",
|
||||
"static_cast",
|
||||
"template",
|
||||
"this",
|
||||
"true",
|
||||
"typeid",
|
||||
|
|
Loading…
Add table
Reference in a new issue