1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-07-21 16:05:25 +02:00

fixed template destructor ids

This commit is contained in:
Mike Kucera 2008-03-31 15:48:57 +00:00
parent ac876dacb6
commit c7857505e0
17 changed files with 13689 additions and 12927 deletions

View file

@ -418,8 +418,12 @@ unqualified_id_name
| operator_function_id_name | operator_function_id_name
| conversion_function_id_name | conversion_function_id_name
| template_id_name | template_id_name
| '~' class_name | '~' identifier_token
/. $Build consumeDestructorName(); $EndBuild ./ /. $Build consumeDestructorName(); $EndBuild ./
| '~' template_id_name
/. $Build consumeDestructorNameTemplateId(); $EndBuild ./
-- | '~' class_name
-- wrap an identifier in a name node -- wrap an identifier in a name node
@ -553,8 +557,16 @@ pseudo_destructor_name
destructor_type_name destructor_type_name
::= '~' type_name ::= '~' identifier_token
/. $Build consumeDestructorName(); $EndBuild ./ /. $Build consumeDestructorName(); $EndBuild ./
| '~' template_id_name
/. $Build consumeDestructorNameTemplateId(); $EndBuild ./
--destructor_type_name
-- ::= '~' type_name
-- /. $Build consumeDestructorName(); $EndBuild ./
unary_expression unary_expression
@ -1038,16 +1050,24 @@ type_name_declaration_specifiers
storage_class_specifier storage_class_specifier
::= 'auto' ::= 'auto'
/. $Build consumeDeclSpecToken(); $EndBuild ./
| 'register' | 'register'
/. $Build consumeDeclSpecToken(); $EndBuild ./
| 'static' | 'static'
/. $Build consumeDeclSpecToken(); $EndBuild ./
| 'extern' | 'extern'
/. $Build consumeDeclSpecToken(); $EndBuild ./
| 'mutable' | 'mutable'
/. $Build consumeDeclSpecToken(); $EndBuild ./
function_specifier function_specifier
::= 'inline' ::= 'inline'
/. $Build consumeDeclSpecToken(); $EndBuild ./
| 'virtual' | 'virtual'
/. $Build consumeDeclSpecToken(); $EndBuild ./
| 'explicit' | 'explicit'
/. $Build consumeDeclSpecToken(); $EndBuild ./
-- We have no way to disambiguate token types -- We have no way to disambiguate token types
@ -1071,23 +1091,30 @@ function_specifier
-- | simple_type_primitive_specifier -- | simple_type_primitive_specifier
simple_type_specifier simple_type_specifier
::= simple_type_specifier_token
/. $Build consumeDeclSpecToken(); $EndBuild ./
simple_type_specifier_token
::= 'char' ::= 'char'
/. $Build consumeDeclSpecToken(); $EndBuild ./
| 'wchar_t' | 'wchar_t'
/. $Build consumeDeclSpecToken(); $EndBuild ./
| 'bool' | 'bool'
/. $Build consumeDeclSpecToken(); $EndBuild ./
| 'short' | 'short'
/. $Build consumeDeclSpecToken(); $EndBuild ./
| 'int' | 'int'
/. $Build consumeDeclSpecToken(); $EndBuild ./
| 'long' | 'long'
/. $Build consumeDeclSpecToken(); $EndBuild ./
| 'signed' | 'signed'
/. $Build consumeDeclSpecToken(); $EndBuild ./
| 'unsigned' | 'unsigned'
/. $Build consumeDeclSpecToken(); $EndBuild ./
| 'float' | 'float'
/. $Build consumeDeclSpecToken(); $EndBuild ./
| 'double' | 'double'
/. $Build consumeDeclSpecToken(); $EndBuild ./
| 'void' | 'void'
/. $Build consumeDeclSpecToken(); $EndBuild ./
-- last two rules moved here from simple_type_specifier -- last two rules moved here from simple_type_specifier

View file

@ -346,7 +346,7 @@ public class CPPBuildASTParserAction extends BuildASTParserAction {
/** /**
* template_id * template_id
* ::= identifier_token '<' <openscope-ast> template_argument_list_opt '>' * ::= identifier_name '<' <openscope-ast> template_argument_list_opt '>'
* *
* operator_function_id * operator_function_id
* ::= operator_id '<' <openscope-ast> template_argument_list_opt '>' * ::= operator_id '<' <openscope-ast> template_argument_list_opt '>'
@ -357,11 +357,6 @@ public class CPPBuildASTParserAction extends BuildASTParserAction {
List<Object> templateArguments = astStack.closeScope(); List<Object> templateArguments = astStack.closeScope();
IASTName name = (IASTName) astStack.pop(); IASTName name = (IASTName) astStack.pop();
// char[] chars = tokenListToNameCharArray(parser.getRuleTokens());
// IASTName name = nodeFactory.newName(chars);
// setOffsetAndLength(name);
ICPPASTTemplateId templateId = nodeFactory.newCPPTemplateId(name); ICPPASTTemplateId templateId = nodeFactory.newCPPTemplateId(name);
for(Object arg : templateArguments) { for(Object arg : templateArguments) {
@ -442,14 +437,14 @@ public class CPPBuildASTParserAction extends BuildASTParserAction {
/** /**
* unqualified_id * unqualified_id
* ::= '~' class_name * ::= '~' identifier_token
*/ */
public void consumeDestructorName() { public void consumeDestructorName() {
if(TRACE_ACTIONS) DebugUtil.printMethodTrace(); if(TRACE_ACTIONS) DebugUtil.printMethodTrace();
astStack.pop(); // throw away the name node thats already on the stack // concatenate the '~' with the identifier token
char[] chars = tokenListToNameCharArray(parser.getRuleTokens()); char[] chars = tokenListToNameCharArray(parser.getRuleTokens());
IASTName name = nodeFactory.newName(chars); IASTName name = nodeFactory.newName(chars);
setOffsetAndLength(name); setOffsetAndLength(name);
astStack.push(name); astStack.push(name);
@ -458,6 +453,31 @@ public class CPPBuildASTParserAction extends BuildASTParserAction {
} }
/**
* destructor_type_name
* ::= '~' template_id_name
*/
public void consumeDestructorNameTemplateId() {
if(TRACE_ACTIONS) DebugUtil.printMethodTrace();
ICPPASTTemplateId templateId = (ICPPASTTemplateId) astStack.peek();
IASTName oldName = templateId.getTemplateName();
char[] newChars = ("~" + oldName).toCharArray(); //$NON-NLS-1$
IASTName newName = nodeFactory.newName(newChars);
int offset = offset(parser.getLeftIToken());
int length = offset - endOffset(oldName);
setOffsetAndLength(newName, offset, length);
templateId.setTemplateName(newName);
if(TRACE_AST_STACK) System.out.println(astStack);
}
/** /**
* qualified_id * qualified_id
* ::= '::' identifier_name * ::= '::' identifier_name
@ -1578,7 +1598,10 @@ public class CPPBuildASTParserAction extends BuildASTParserAction {
IASTName qualifiedId = subRuleQualifiedName(true); IASTName qualifiedId = subRuleQualifiedName(true);
IASTDeclarator declarator = nodeFactory.newDeclarator(qualifiedId); IASTDeclarator declarator = nodeFactory.newDeclarator(qualifiedId);
setOffsetAndLength(declarator); setOffsetAndLength(declarator);
IASTSimpleDeclaration declaration = nodeFactory.newSimpleDeclaration(null); // no decl spec // there has to be an empty specifier or... kaboom!
IASTDeclSpecifier emptySpecifier = nodeFactory.newSimpleDeclSpecifier();
setOffsetAndLength(emptySpecifier, parser.getLeftIToken().getStartOffset(), 0);
IASTSimpleDeclaration declaration = nodeFactory.newSimpleDeclaration(emptySpecifier);
setOffsetAndLength(declaration); setOffsetAndLength(declaration);
declaration.addDeclarator(declarator); declaration.addDeclarator(declarator);
astStack.push(declaration); astStack.push(declaration);

View file

@ -16,85 +16,85 @@ package org.eclipse.cdt.internal.core.dom.lrparser.cpp;
public interface CPPExpressionStatementParsersym { public interface CPPExpressionStatementParsersym {
public final static int public final static int
TK_asm = 61, TK_asm = 61,
TK_auto = 51, TK_auto = 48,
TK_bool = 13, TK_bool = 15,
TK_break = 76, TK_break = 77,
TK_case = 77, TK_case = 78,
TK_catch = 119, TK_catch = 119,
TK_char = 14, TK_char = 16,
TK_class = 62, TK_class = 62,
TK_const = 46, TK_const = 46,
TK_const_cast = 30, TK_const_cast = 31,
TK_continue = 78, TK_continue = 79,
TK_default = 79, TK_default = 80,
TK_delete = 63, TK_delete = 63,
TK_do = 80, TK_do = 81,
TK_double = 15, TK_double = 17,
TK_dynamic_cast = 31, TK_dynamic_cast = 32,
TK_else = 121, TK_else = 121,
TK_enum = 68, TK_enum = 68,
TK_explicit = 52, TK_explicit = 49,
TK_export = 81, TK_export = 82,
TK_extern = 27, TK_extern = 14,
TK_false = 32, TK_false = 33,
TK_float = 16, TK_float = 18,
TK_for = 82, TK_for = 83,
TK_friend = 53, TK_friend = 50,
TK_goto = 83, TK_goto = 84,
TK_if = 84, TK_if = 85,
TK_inline = 54, TK_inline = 51,
TK_int = 17, TK_int = 19,
TK_long = 18, TK_long = 20,
TK_mutable = 55, TK_mutable = 52,
TK_namespace = 56, TK_namespace = 60,
TK_new = 64, TK_new = 64,
TK_operator = 7, TK_operator = 7,
TK_private = 114, TK_private = 114,
TK_protected = 115, TK_protected = 115,
TK_public = 116, TK_public = 116,
TK_register = 57, TK_register = 53,
TK_reinterpret_cast = 33, TK_reinterpret_cast = 34,
TK_return = 85, TK_return = 86,
TK_short = 19, TK_short = 21,
TK_signed = 20, TK_signed = 22,
TK_sizeof = 34, TK_sizeof = 35,
TK_static = 58, TK_static = 54,
TK_static_cast = 35, TK_static_cast = 36,
TK_struct = 69, TK_struct = 69,
TK_switch = 86, TK_switch = 87,
TK_template = 36, TK_template = 37,
TK_this = 37, TK_this = 38,
TK_throw = 47, TK_throw = 57,
TK_try = 74, TK_try = 75,
TK_true = 38, TK_true = 39,
TK_typedef = 59, TK_typedef = 55,
TK_typeid = 39, TK_typeid = 40,
TK_typename = 10, TK_typename = 10,
TK_union = 70, TK_union = 70,
TK_unsigned = 21, TK_unsigned = 23,
TK_using = 48, TK_using = 58,
TK_virtual = 45, TK_virtual = 45,
TK_void = 22, TK_void = 24,
TK_volatile = 49, TK_volatile = 47,
TK_wchar_t = 23, TK_wchar_t = 25,
TK_while = 75, TK_while = 76,
TK_integer = 40, TK_integer = 41,
TK_floating = 41, TK_floating = 42,
TK_charconst = 42, TK_charconst = 43,
TK_stringlit = 28, TK_stringlit = 28,
TK_identifier = 1, TK_identifier = 1,
TK_Completion = 2, TK_Completion = 2,
TK_EndOfCompletion = 9, TK_EndOfCompletion = 9,
TK_Invalid = 124, TK_Invalid = 124,
TK_LeftBracket = 60, TK_LeftBracket = 56,
TK_LeftParen = 3, TK_LeftParen = 3,
TK_LeftBrace = 50, TK_LeftBrace = 59,
TK_Dot = 120, TK_Dot = 120,
TK_DotStar = 96, TK_DotStar = 96,
TK_Arrow = 103, TK_Arrow = 103,
TK_ArrowStar = 90, TK_ArrowStar = 90,
TK_PlusPlus = 24, TK_PlusPlus = 26,
TK_MinusMinus = 25, TK_MinusMinus = 27,
TK_And = 8, TK_And = 8,
TK_Star = 6, TK_Star = 6,
TK_Plus = 11, TK_Plus = 11,
@ -105,7 +105,7 @@ public interface CPPExpressionStatementParsersym {
TK_Percent = 92, TK_Percent = 92,
TK_RightShift = 88, TK_RightShift = 88,
TK_LeftShift = 89, TK_LeftShift = 89,
TK_LT = 44, TK_LT = 30,
TK_GT = 65, TK_GT = 65,
TK_LE = 93, TK_LE = 93,
TK_GE = 94, TK_GE = 94,
@ -131,11 +131,11 @@ public interface CPPExpressionStatementParsersym {
TK_CaretAssign = 112, TK_CaretAssign = 112,
TK_OrAssign = 113, TK_OrAssign = 113,
TK_Comma = 66, TK_Comma = 66,
TK_zero = 43, TK_zero = 44,
TK_RightBracket = 118, TK_RightBracket = 118,
TK_RightParen = 87, TK_RightParen = 74,
TK_RightBrace = 71, TK_RightBrace = 71,
TK_SemiColon = 26, TK_SemiColon = 13,
TK_ERROR_TOKEN = 73, TK_ERROR_TOKEN = 73,
TK_original_namespace_name = 122, TK_original_namespace_name = 122,
TK_EOF_TOKEN = 123; TK_EOF_TOKEN = 123;
@ -154,6 +154,8 @@ public interface CPPExpressionStatementParsersym {
"typename", "typename",
"Plus", "Plus",
"Minus", "Minus",
"SemiColon",
"extern",
"bool", "bool",
"char", "char",
"double", "double",
@ -167,10 +169,9 @@ public interface CPPExpressionStatementParsersym {
"wchar_t", "wchar_t",
"PlusPlus", "PlusPlus",
"MinusMinus", "MinusMinus",
"SemiColon",
"extern",
"stringlit", "stringlit",
"Bang", "Bang",
"LT",
"const_cast", "const_cast",
"dynamic_cast", "dynamic_cast",
"false", "false",
@ -185,23 +186,22 @@ public interface CPPExpressionStatementParsersym {
"floating", "floating",
"charconst", "charconst",
"zero", "zero",
"LT",
"virtual", "virtual",
"const", "const",
"throw",
"using",
"volatile", "volatile",
"LeftBrace",
"auto", "auto",
"explicit", "explicit",
"friend", "friend",
"inline", "inline",
"mutable", "mutable",
"namespace",
"register", "register",
"static", "static",
"typedef", "typedef",
"LeftBracket", "LeftBracket",
"throw",
"using",
"LeftBrace",
"namespace",
"asm", "asm",
"class", "class",
"delete", "delete",
@ -215,6 +215,7 @@ public interface CPPExpressionStatementParsersym {
"RightBrace", "RightBrace",
"Colon", "Colon",
"ERROR_TOKEN", "ERROR_TOKEN",
"RightParen",
"try", "try",
"while", "while",
"break", "break",
@ -228,7 +229,6 @@ public interface CPPExpressionStatementParsersym {
"if", "if",
"return", "return",
"switch", "switch",
"RightParen",
"RightShift", "RightShift",
"LeftShift", "LeftShift",
"ArrowStar", "ArrowStar",

View file

@ -16,85 +16,85 @@ package org.eclipse.cdt.internal.core.dom.lrparser.cpp;
public interface CPPNoCastExpressionParsersym { public interface CPPNoCastExpressionParsersym {
public final static int public final static int
TK_asm = 61, TK_asm = 61,
TK_auto = 51, TK_auto = 48,
TK_bool = 13, TK_bool = 15,
TK_break = 76, TK_break = 77,
TK_case = 77, TK_case = 78,
TK_catch = 119, TK_catch = 119,
TK_char = 14, TK_char = 16,
TK_class = 62, TK_class = 62,
TK_const = 46, TK_const = 46,
TK_const_cast = 30, TK_const_cast = 31,
TK_continue = 78, TK_continue = 79,
TK_default = 79, TK_default = 80,
TK_delete = 63, TK_delete = 63,
TK_do = 80, TK_do = 81,
TK_double = 15, TK_double = 17,
TK_dynamic_cast = 31, TK_dynamic_cast = 32,
TK_else = 122, TK_else = 122,
TK_enum = 68, TK_enum = 68,
TK_explicit = 52, TK_explicit = 49,
TK_export = 81, TK_export = 82,
TK_extern = 27, TK_extern = 14,
TK_false = 32, TK_false = 33,
TK_float = 16, TK_float = 18,
TK_for = 82, TK_for = 83,
TK_friend = 53, TK_friend = 50,
TK_goto = 83, TK_goto = 84,
TK_if = 84, TK_if = 85,
TK_inline = 54, TK_inline = 51,
TK_int = 17, TK_int = 19,
TK_long = 18, TK_long = 20,
TK_mutable = 55, TK_mutable = 52,
TK_namespace = 56, TK_namespace = 60,
TK_new = 64, TK_new = 64,
TK_operator = 7, TK_operator = 7,
TK_private = 114, TK_private = 114,
TK_protected = 115, TK_protected = 115,
TK_public = 116, TK_public = 116,
TK_register = 57, TK_register = 53,
TK_reinterpret_cast = 33, TK_reinterpret_cast = 34,
TK_return = 85, TK_return = 86,
TK_short = 19, TK_short = 21,
TK_signed = 20, TK_signed = 22,
TK_sizeof = 34, TK_sizeof = 35,
TK_static = 58, TK_static = 54,
TK_static_cast = 35, TK_static_cast = 36,
TK_struct = 69, TK_struct = 69,
TK_switch = 86, TK_switch = 87,
TK_template = 36, TK_template = 37,
TK_this = 37, TK_this = 38,
TK_throw = 47, TK_throw = 57,
TK_try = 74, TK_try = 75,
TK_true = 38, TK_true = 39,
TK_typedef = 59, TK_typedef = 55,
TK_typeid = 39, TK_typeid = 40,
TK_typename = 10, TK_typename = 10,
TK_union = 70, TK_union = 70,
TK_unsigned = 21, TK_unsigned = 23,
TK_using = 48, TK_using = 58,
TK_virtual = 45, TK_virtual = 45,
TK_void = 22, TK_void = 24,
TK_volatile = 49, TK_volatile = 47,
TK_wchar_t = 23, TK_wchar_t = 25,
TK_while = 75, TK_while = 76,
TK_integer = 40, TK_integer = 41,
TK_floating = 41, TK_floating = 42,
TK_charconst = 42, TK_charconst = 43,
TK_stringlit = 28, TK_stringlit = 28,
TK_identifier = 1, TK_identifier = 1,
TK_Completion = 2, TK_Completion = 2,
TK_EndOfCompletion = 9, TK_EndOfCompletion = 9,
TK_Invalid = 124, TK_Invalid = 124,
TK_LeftBracket = 60, TK_LeftBracket = 56,
TK_LeftParen = 3, TK_LeftParen = 3,
TK_LeftBrace = 50, TK_LeftBrace = 59,
TK_Dot = 120, TK_Dot = 120,
TK_DotStar = 96, TK_DotStar = 96,
TK_Arrow = 103, TK_Arrow = 103,
TK_ArrowStar = 90, TK_ArrowStar = 90,
TK_PlusPlus = 24, TK_PlusPlus = 26,
TK_MinusMinus = 25, TK_MinusMinus = 27,
TK_And = 8, TK_And = 8,
TK_Star = 6, TK_Star = 6,
TK_Plus = 11, TK_Plus = 11,
@ -105,7 +105,7 @@ public interface CPPNoCastExpressionParsersym {
TK_Percent = 92, TK_Percent = 92,
TK_RightShift = 88, TK_RightShift = 88,
TK_LeftShift = 89, TK_LeftShift = 89,
TK_LT = 44, TK_LT = 30,
TK_GT = 65, TK_GT = 65,
TK_LE = 93, TK_LE = 93,
TK_GE = 94, TK_GE = 94,
@ -131,11 +131,11 @@ public interface CPPNoCastExpressionParsersym {
TK_CaretAssign = 112, TK_CaretAssign = 112,
TK_OrAssign = 113, TK_OrAssign = 113,
TK_Comma = 66, TK_Comma = 66,
TK_zero = 43, TK_zero = 44,
TK_RightBracket = 118, TK_RightBracket = 118,
TK_RightParen = 87, TK_RightParen = 74,
TK_RightBrace = 71, TK_RightBrace = 71,
TK_SemiColon = 26, TK_SemiColon = 13,
TK_ERROR_TOKEN = 73, TK_ERROR_TOKEN = 73,
TK_original_namespace_name = 123, TK_original_namespace_name = 123,
TK_EOF_TOKEN = 121; TK_EOF_TOKEN = 121;
@ -154,6 +154,8 @@ public interface CPPNoCastExpressionParsersym {
"typename", "typename",
"Plus", "Plus",
"Minus", "Minus",
"SemiColon",
"extern",
"bool", "bool",
"char", "char",
"double", "double",
@ -167,10 +169,9 @@ public interface CPPNoCastExpressionParsersym {
"wchar_t", "wchar_t",
"PlusPlus", "PlusPlus",
"MinusMinus", "MinusMinus",
"SemiColon",
"extern",
"stringlit", "stringlit",
"Bang", "Bang",
"LT",
"const_cast", "const_cast",
"dynamic_cast", "dynamic_cast",
"false", "false",
@ -185,23 +186,22 @@ public interface CPPNoCastExpressionParsersym {
"floating", "floating",
"charconst", "charconst",
"zero", "zero",
"LT",
"virtual", "virtual",
"const", "const",
"throw",
"using",
"volatile", "volatile",
"LeftBrace",
"auto", "auto",
"explicit", "explicit",
"friend", "friend",
"inline", "inline",
"mutable", "mutable",
"namespace",
"register", "register",
"static", "static",
"typedef", "typedef",
"LeftBracket", "LeftBracket",
"throw",
"using",
"LeftBrace",
"namespace",
"asm", "asm",
"class", "class",
"delete", "delete",
@ -215,6 +215,7 @@ public interface CPPNoCastExpressionParsersym {
"RightBrace", "RightBrace",
"Colon", "Colon",
"ERROR_TOKEN", "ERROR_TOKEN",
"RightParen",
"try", "try",
"while", "while",
"break", "break",
@ -228,7 +229,6 @@ public interface CPPNoCastExpressionParsersym {
"if", "if",
"return", "return",
"switch", "switch",
"RightParen",
"RightShift", "RightShift",
"LeftShift", "LeftShift",
"ArrowStar", "ArrowStar",

View file

@ -16,79 +16,79 @@ package org.eclipse.cdt.internal.core.dom.lrparser.cpp;
public interface CPPNoFunctionDeclaratorParsersym { public interface CPPNoFunctionDeclaratorParsersym {
public final static int public final static int
TK_asm = 61, TK_asm = 61,
TK_auto = 50, TK_auto = 48,
TK_bool = 14, TK_bool = 15,
TK_break = 76, TK_break = 77,
TK_case = 77, TK_case = 78,
TK_catch = 119, TK_catch = 119,
TK_char = 15, TK_char = 16,
TK_class = 62, TK_class = 62,
TK_const = 46, TK_const = 46,
TK_const_cast = 31, TK_const_cast = 32,
TK_continue = 78, TK_continue = 79,
TK_default = 79, TK_default = 80,
TK_delete = 64, TK_delete = 64,
TK_do = 80, TK_do = 81,
TK_double = 16, TK_double = 17,
TK_dynamic_cast = 32, TK_dynamic_cast = 33,
TK_else = 122, TK_else = 122,
TK_enum = 68, TK_enum = 68,
TK_explicit = 51, TK_explicit = 49,
TK_export = 81, TK_export = 82,
TK_extern = 17, TK_extern = 12,
TK_false = 33, TK_false = 34,
TK_float = 18, TK_float = 18,
TK_for = 82, TK_for = 83,
TK_friend = 52, TK_friend = 50,
TK_goto = 83, TK_goto = 84,
TK_if = 84, TK_if = 85,
TK_inline = 53, TK_inline = 51,
TK_int = 19, TK_int = 19,
TK_long = 20, TK_long = 20,
TK_mutable = 54, TK_mutable = 52,
TK_namespace = 55, TK_namespace = 59,
TK_new = 65, TK_new = 65,
TK_operator = 7, TK_operator = 7,
TK_private = 114, TK_private = 114,
TK_protected = 115, TK_protected = 115,
TK_public = 116, TK_public = 116,
TK_register = 56, TK_register = 53,
TK_reinterpret_cast = 34, TK_reinterpret_cast = 35,
TK_return = 85, TK_return = 86,
TK_short = 21, TK_short = 21,
TK_signed = 22, TK_signed = 22,
TK_sizeof = 35, TK_sizeof = 36,
TK_static = 57, TK_static = 54,
TK_static_cast = 36, TK_static_cast = 37,
TK_struct = 69, TK_struct = 69,
TK_switch = 86, TK_switch = 87,
TK_template = 30, TK_template = 31,
TK_this = 37, TK_this = 38,
TK_throw = 58, TK_throw = 60,
TK_try = 74, TK_try = 75,
TK_true = 38, TK_true = 39,
TK_typedef = 59, TK_typedef = 55,
TK_typeid = 39, TK_typeid = 40,
TK_typename = 10, TK_typename = 10,
TK_union = 70, TK_union = 70,
TK_unsigned = 23, TK_unsigned = 23,
TK_using = 47, TK_using = 57,
TK_virtual = 45, TK_virtual = 41,
TK_void = 24, TK_void = 24,
TK_volatile = 48, TK_volatile = 47,
TK_wchar_t = 25, TK_wchar_t = 25,
TK_while = 75, TK_while = 76,
TK_integer = 40, TK_integer = 42,
TK_floating = 41, TK_floating = 43,
TK_charconst = 42, TK_charconst = 44,
TK_stringlit = 28, TK_stringlit = 28,
TK_identifier = 1, TK_identifier = 1,
TK_Completion = 2, TK_Completion = 2,
TK_EndOfCompletion = 9, TK_EndOfCompletion = 9,
TK_Invalid = 124, TK_Invalid = 124,
TK_LeftBracket = 60, TK_LeftBracket = 56,
TK_LeftParen = 3, TK_LeftParen = 3,
TK_LeftBrace = 49, TK_LeftBrace = 58,
TK_Dot = 120, TK_Dot = 120,
TK_DotStar = 96, TK_DotStar = 96,
TK_Arrow = 103, TK_Arrow = 103,
@ -97,15 +97,15 @@ public interface CPPNoFunctionDeclaratorParsersym {
TK_MinusMinus = 27, TK_MinusMinus = 27,
TK_And = 8, TK_And = 8,
TK_Star = 6, TK_Star = 6,
TK_Plus = 11, TK_Plus = 13,
TK_Minus = 12, TK_Minus = 14,
TK_Tilde = 5, TK_Tilde = 5,
TK_Bang = 29, TK_Bang = 29,
TK_Slash = 91, TK_Slash = 91,
TK_Percent = 92, TK_Percent = 92,
TK_RightShift = 88, TK_RightShift = 88,
TK_LeftShift = 89, TK_LeftShift = 89,
TK_LT = 43, TK_LT = 30,
TK_GT = 63, TK_GT = 63,
TK_LE = 93, TK_LE = 93,
TK_GE = 94, TK_GE = 94,
@ -131,11 +131,11 @@ public interface CPPNoFunctionDeclaratorParsersym {
TK_CaretAssign = 112, TK_CaretAssign = 112,
TK_OrAssign = 113, TK_OrAssign = 113,
TK_Comma = 66, TK_Comma = 66,
TK_zero = 44, TK_zero = 45,
TK_RightBracket = 118, TK_RightBracket = 118,
TK_RightParen = 87, TK_RightParen = 74,
TK_RightBrace = 71, TK_RightBrace = 71,
TK_SemiColon = 13, TK_SemiColon = 11,
TK_ERROR_TOKEN = 73, TK_ERROR_TOKEN = 73,
TK_original_namespace_name = 123, TK_original_namespace_name = 123,
TK_EOF_TOKEN = 121; TK_EOF_TOKEN = 121;
@ -152,13 +152,13 @@ public interface CPPNoFunctionDeclaratorParsersym {
"And", "And",
"EndOfCompletion", "EndOfCompletion",
"typename", "typename",
"SemiColon",
"extern",
"Plus", "Plus",
"Minus", "Minus",
"SemiColon",
"bool", "bool",
"char", "char",
"double", "double",
"extern",
"float", "float",
"int", "int",
"long", "long",
@ -171,6 +171,7 @@ public interface CPPNoFunctionDeclaratorParsersym {
"MinusMinus", "MinusMinus",
"stringlit", "stringlit",
"Bang", "Bang",
"LT",
"template", "template",
"const_cast", "const_cast",
"dynamic_cast", "dynamic_cast",
@ -181,27 +182,26 @@ public interface CPPNoFunctionDeclaratorParsersym {
"this", "this",
"true", "true",
"typeid", "typeid",
"virtual",
"integer", "integer",
"floating", "floating",
"charconst", "charconst",
"LT",
"zero", "zero",
"virtual",
"const", "const",
"using",
"volatile", "volatile",
"LeftBrace",
"auto", "auto",
"explicit", "explicit",
"friend", "friend",
"inline", "inline",
"mutable", "mutable",
"namespace",
"register", "register",
"static", "static",
"throw",
"typedef", "typedef",
"LeftBracket", "LeftBracket",
"using",
"LeftBrace",
"namespace",
"throw",
"asm", "asm",
"class", "class",
"GT", "GT",
@ -215,6 +215,7 @@ public interface CPPNoFunctionDeclaratorParsersym {
"RightBrace", "RightBrace",
"Colon", "Colon",
"ERROR_TOKEN", "ERROR_TOKEN",
"RightParen",
"try", "try",
"while", "while",
"break", "break",
@ -228,7 +229,6 @@ public interface CPPNoFunctionDeclaratorParsersym {
"if", "if",
"return", "return",
"switch", "switch",
"RightParen",
"RightShift", "RightShift",
"LeftShift", "LeftShift",
"ArrowStar", "ArrowStar",

View file

@ -15,80 +15,80 @@ package org.eclipse.cdt.internal.core.dom.lrparser.cpp;
public interface CPPParsersym { public interface CPPParsersym {
public final static int public final static int
TK_asm = 58, TK_asm = 59,
TK_auto = 49, TK_auto = 35,
TK_bool = 12, TK_bool = 13,
TK_break = 77, TK_break = 78,
TK_case = 78, TK_case = 79,
TK_catch = 119, TK_catch = 119,
TK_char = 13, TK_char = 14,
TK_class = 60, TK_class = 61,
TK_const = 46, TK_const = 33,
TK_const_cast = 31, TK_const_cast = 36,
TK_continue = 79, TK_continue = 80,
TK_default = 80, TK_default = 81,
TK_delete = 64, TK_delete = 64,
TK_do = 81, TK_do = 82,
TK_double = 14, TK_double = 15,
TK_dynamic_cast = 32, TK_dynamic_cast = 37,
TK_else = 122, TK_else = 122,
TK_enum = 65, TK_enum = 65,
TK_explicit = 50, TK_explicit = 38,
TK_export = 74, TK_export = 74,
TK_extern = 15, TK_extern = 12,
TK_false = 33, TK_false = 39,
TK_float = 16, TK_float = 16,
TK_for = 82, TK_for = 83,
TK_friend = 51, TK_friend = 40,
TK_goto = 83, TK_goto = 84,
TK_if = 84, TK_if = 85,
TK_inline = 52, TK_inline = 41,
TK_int = 17, TK_int = 17,
TK_long = 18, TK_long = 18,
TK_mutable = 53, TK_mutable = 42,
TK_namespace = 54, TK_namespace = 57,
TK_new = 66, TK_new = 66,
TK_operator = 7, TK_operator = 7,
TK_private = 114, TK_private = 114,
TK_protected = 115, TK_protected = 115,
TK_public = 116, TK_public = 116,
TK_register = 55, TK_register = 43,
TK_reinterpret_cast = 34, TK_reinterpret_cast = 44,
TK_return = 85, TK_return = 86,
TK_short = 19, TK_short = 19,
TK_signed = 20, TK_signed = 20,
TK_sizeof = 35, TK_sizeof = 45,
TK_static = 56, TK_static = 46,
TK_static_cast = 36, TK_static_cast = 47,
TK_struct = 67, TK_struct = 67,
TK_switch = 86, TK_switch = 87,
TK_template = 28, TK_template = 28,
TK_this = 37, TK_this = 48,
TK_throw = 61, TK_throw = 62,
TK_try = 75, TK_try = 76,
TK_true = 38, TK_true = 49,
TK_typedef = 57, TK_typedef = 50,
TK_typeid = 39, TK_typeid = 51,
TK_typename = 10, TK_typename = 10,
TK_union = 68, TK_union = 68,
TK_unsigned = 21, TK_unsigned = 21,
TK_using = 47, TK_using = 56,
TK_virtual = 40, TK_virtual = 30,
TK_void = 22, TK_void = 22,
TK_volatile = 48, TK_volatile = 34,
TK_wchar_t = 23, TK_wchar_t = 23,
TK_while = 76, TK_while = 77,
TK_integer = 41, TK_integer = 52,
TK_floating = 42, TK_floating = 53,
TK_charconst = 43, TK_charconst = 54,
TK_stringlit = 29, TK_stringlit = 29,
TK_identifier = 1, TK_identifier = 1,
TK_Completion = 2, TK_Completion = 2,
TK_EndOfCompletion = 9, TK_EndOfCompletion = 9,
TK_Invalid = 124, TK_Invalid = 124,
TK_LeftBracket = 62, TK_LeftBracket = 58,
TK_LeftParen = 3, TK_LeftParen = 3,
TK_LeftBrace = 59, TK_LeftBrace = 60,
TK_Dot = 120, TK_Dot = 120,
TK_DotStar = 96, TK_DotStar = 96,
TK_Arrow = 103, TK_Arrow = 103,
@ -100,12 +100,12 @@ public interface CPPParsersym {
TK_Plus = 24, TK_Plus = 24,
TK_Minus = 25, TK_Minus = 25,
TK_Tilde = 5, TK_Tilde = 5,
TK_Bang = 30, TK_Bang = 31,
TK_Slash = 91, TK_Slash = 91,
TK_Percent = 92, TK_Percent = 92,
TK_RightShift = 88, TK_RightShift = 88,
TK_LeftShift = 89, TK_LeftShift = 89,
TK_LT = 44, TK_LT = 32,
TK_GT = 63, TK_GT = 63,
TK_LE = 93, TK_LE = 93,
TK_GE = 94, TK_GE = 94,
@ -131,9 +131,9 @@ public interface CPPParsersym {
TK_CaretAssign = 112, TK_CaretAssign = 112,
TK_OrAssign = 113, TK_OrAssign = 113,
TK_Comma = 69, TK_Comma = 69,
TK_zero = 45, TK_zero = 55,
TK_RightBracket = 118, TK_RightBracket = 118,
TK_RightParen = 87, TK_RightParen = 75,
TK_RightBrace = 71, TK_RightBrace = 71,
TK_SemiColon = 11, TK_SemiColon = 11,
TK_ERROR_TOKEN = 73, TK_ERROR_TOKEN = 73,
@ -153,10 +153,10 @@ public interface CPPParsersym {
"EndOfCompletion", "EndOfCompletion",
"typename", "typename",
"SemiColon", "SemiColon",
"extern",
"bool", "bool",
"char", "char",
"double", "double",
"extern",
"float", "float",
"int", "int",
"long", "long",
@ -171,39 +171,39 @@ public interface CPPParsersym {
"MinusMinus", "MinusMinus",
"template", "template",
"stringlit", "stringlit",
"Bang",
"const_cast",
"dynamic_cast",
"false",
"reinterpret_cast",
"sizeof",
"static_cast",
"this",
"true",
"typeid",
"virtual", "virtual",
"integer", "Bang",
"floating",
"charconst",
"LT", "LT",
"zero",
"const", "const",
"using",
"volatile", "volatile",
"auto", "auto",
"const_cast",
"dynamic_cast",
"explicit", "explicit",
"false",
"friend", "friend",
"inline", "inline",
"mutable", "mutable",
"namespace",
"register", "register",
"reinterpret_cast",
"sizeof",
"static", "static",
"static_cast",
"this",
"true",
"typedef", "typedef",
"typeid",
"integer",
"floating",
"charconst",
"zero",
"using",
"namespace",
"LeftBracket",
"asm", "asm",
"LeftBrace", "LeftBrace",
"class", "class",
"throw", "throw",
"LeftBracket",
"GT", "GT",
"delete", "delete",
"enum", "enum",
@ -216,6 +216,7 @@ public interface CPPParsersym {
"Colon", "Colon",
"ERROR_TOKEN", "ERROR_TOKEN",
"export", "export",
"RightParen",
"try", "try",
"while", "while",
"break", "break",
@ -228,7 +229,6 @@ public interface CPPParsersym {
"if", "if",
"return", "return",
"switch", "switch",
"RightParen",
"RightShift", "RightShift",
"LeftShift", "LeftShift",
"ArrowStar", "ArrowStar",

View file

@ -16,85 +16,85 @@ package org.eclipse.cdt.internal.core.dom.lrparser.cpp;
public interface CPPSizeofExpressionParsersym { public interface CPPSizeofExpressionParsersym {
public final static int public final static int
TK_asm = 61, TK_asm = 61,
TK_auto = 51, TK_auto = 48,
TK_bool = 13, TK_bool = 15,
TK_break = 76, TK_break = 77,
TK_case = 77, TK_case = 78,
TK_catch = 119, TK_catch = 119,
TK_char = 14, TK_char = 16,
TK_class = 62, TK_class = 62,
TK_const = 46, TK_const = 46,
TK_const_cast = 30, TK_const_cast = 31,
TK_continue = 78, TK_continue = 79,
TK_default = 79, TK_default = 80,
TK_delete = 63, TK_delete = 63,
TK_do = 80, TK_do = 81,
TK_double = 15, TK_double = 17,
TK_dynamic_cast = 31, TK_dynamic_cast = 32,
TK_else = 122, TK_else = 122,
TK_enum = 68, TK_enum = 68,
TK_explicit = 52, TK_explicit = 49,
TK_export = 81, TK_export = 82,
TK_extern = 27, TK_extern = 14,
TK_false = 32, TK_false = 33,
TK_float = 16, TK_float = 18,
TK_for = 82, TK_for = 83,
TK_friend = 53, TK_friend = 50,
TK_goto = 83, TK_goto = 84,
TK_if = 84, TK_if = 85,
TK_inline = 54, TK_inline = 51,
TK_int = 17, TK_int = 19,
TK_long = 18, TK_long = 20,
TK_mutable = 55, TK_mutable = 52,
TK_namespace = 56, TK_namespace = 60,
TK_new = 64, TK_new = 64,
TK_operator = 7, TK_operator = 7,
TK_private = 114, TK_private = 114,
TK_protected = 115, TK_protected = 115,
TK_public = 116, TK_public = 116,
TK_register = 57, TK_register = 53,
TK_reinterpret_cast = 33, TK_reinterpret_cast = 34,
TK_return = 85, TK_return = 86,
TK_short = 19, TK_short = 21,
TK_signed = 20, TK_signed = 22,
TK_sizeof = 34, TK_sizeof = 35,
TK_static = 58, TK_static = 54,
TK_static_cast = 35, TK_static_cast = 36,
TK_struct = 69, TK_struct = 69,
TK_switch = 86, TK_switch = 87,
TK_template = 36, TK_template = 37,
TK_this = 37, TK_this = 38,
TK_throw = 47, TK_throw = 57,
TK_try = 74, TK_try = 75,
TK_true = 38, TK_true = 39,
TK_typedef = 59, TK_typedef = 55,
TK_typeid = 39, TK_typeid = 40,
TK_typename = 10, TK_typename = 10,
TK_union = 70, TK_union = 70,
TK_unsigned = 21, TK_unsigned = 23,
TK_using = 48, TK_using = 58,
TK_virtual = 45, TK_virtual = 45,
TK_void = 22, TK_void = 24,
TK_volatile = 49, TK_volatile = 47,
TK_wchar_t = 23, TK_wchar_t = 25,
TK_while = 75, TK_while = 76,
TK_integer = 40, TK_integer = 41,
TK_floating = 41, TK_floating = 42,
TK_charconst = 42, TK_charconst = 43,
TK_stringlit = 28, TK_stringlit = 28,
TK_identifier = 1, TK_identifier = 1,
TK_Completion = 2, TK_Completion = 2,
TK_EndOfCompletion = 9, TK_EndOfCompletion = 9,
TK_Invalid = 124, TK_Invalid = 124,
TK_LeftBracket = 60, TK_LeftBracket = 56,
TK_LeftParen = 3, TK_LeftParen = 3,
TK_LeftBrace = 50, TK_LeftBrace = 59,
TK_Dot = 120, TK_Dot = 120,
TK_DotStar = 96, TK_DotStar = 96,
TK_Arrow = 103, TK_Arrow = 103,
TK_ArrowStar = 90, TK_ArrowStar = 90,
TK_PlusPlus = 24, TK_PlusPlus = 26,
TK_MinusMinus = 25, TK_MinusMinus = 27,
TK_And = 8, TK_And = 8,
TK_Star = 6, TK_Star = 6,
TK_Plus = 11, TK_Plus = 11,
@ -105,7 +105,7 @@ public interface CPPSizeofExpressionParsersym {
TK_Percent = 92, TK_Percent = 92,
TK_RightShift = 88, TK_RightShift = 88,
TK_LeftShift = 89, TK_LeftShift = 89,
TK_LT = 44, TK_LT = 30,
TK_GT = 65, TK_GT = 65,
TK_LE = 93, TK_LE = 93,
TK_GE = 94, TK_GE = 94,
@ -131,11 +131,11 @@ public interface CPPSizeofExpressionParsersym {
TK_CaretAssign = 112, TK_CaretAssign = 112,
TK_OrAssign = 113, TK_OrAssign = 113,
TK_Comma = 66, TK_Comma = 66,
TK_zero = 43, TK_zero = 44,
TK_RightBracket = 118, TK_RightBracket = 118,
TK_RightParen = 87, TK_RightParen = 74,
TK_RightBrace = 71, TK_RightBrace = 71,
TK_SemiColon = 26, TK_SemiColon = 13,
TK_ERROR_TOKEN = 73, TK_ERROR_TOKEN = 73,
TK_original_namespace_name = 123, TK_original_namespace_name = 123,
TK_EOF_TOKEN = 121; TK_EOF_TOKEN = 121;
@ -154,6 +154,8 @@ public interface CPPSizeofExpressionParsersym {
"typename", "typename",
"Plus", "Plus",
"Minus", "Minus",
"SemiColon",
"extern",
"bool", "bool",
"char", "char",
"double", "double",
@ -167,10 +169,9 @@ public interface CPPSizeofExpressionParsersym {
"wchar_t", "wchar_t",
"PlusPlus", "PlusPlus",
"MinusMinus", "MinusMinus",
"SemiColon",
"extern",
"stringlit", "stringlit",
"Bang", "Bang",
"LT",
"const_cast", "const_cast",
"dynamic_cast", "dynamic_cast",
"false", "false",
@ -185,23 +186,22 @@ public interface CPPSizeofExpressionParsersym {
"floating", "floating",
"charconst", "charconst",
"zero", "zero",
"LT",
"virtual", "virtual",
"const", "const",
"throw",
"using",
"volatile", "volatile",
"LeftBrace",
"auto", "auto",
"explicit", "explicit",
"friend", "friend",
"inline", "inline",
"mutable", "mutable",
"namespace",
"register", "register",
"static", "static",
"typedef", "typedef",
"LeftBracket", "LeftBracket",
"throw",
"using",
"LeftBrace",
"namespace",
"asm", "asm",
"class", "class",
"delete", "delete",
@ -215,6 +215,7 @@ public interface CPPSizeofExpressionParsersym {
"RightBrace", "RightBrace",
"Colon", "Colon",
"ERROR_TOKEN", "ERROR_TOKEN",
"RightParen",
"try", "try",
"while", "while",
"break", "break",
@ -228,7 +229,6 @@ public interface CPPSizeofExpressionParsersym {
"if", "if",
"return", "return",
"switch", "switch",
"RightParen",
"RightShift", "RightShift",
"LeftShift", "LeftShift",
"ArrowStar", "ArrowStar",