mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-04-23 14:42:11 +02:00
bug 39698 min and max operators for LR parser
This commit is contained in:
parent
62e51214ac
commit
c97571595e
13 changed files with 6311 additions and 6182 deletions
|
@ -19,10 +19,13 @@ $Terminals
|
||||||
|
|
||||||
typeof
|
typeof
|
||||||
__alignof__
|
__alignof__
|
||||||
MAX
|
|
||||||
MIN
|
|
||||||
__attribute__
|
__attribute__
|
||||||
__declspec
|
__declspec
|
||||||
|
MAX
|
||||||
|
MIN
|
||||||
|
|
||||||
|
MAX ::= '>?'
|
||||||
|
MIN ::= '<?'
|
||||||
|
|
||||||
$End
|
$End
|
||||||
|
|
||||||
|
@ -147,6 +150,12 @@ unary_expression
|
||||||
/. $Build consumeExpressionTypeId(IASTTypeIdExpression.op_typeof); $EndBuild ./
|
/. $Build consumeExpressionTypeId(IASTTypeIdExpression.op_typeof); $EndBuild ./
|
||||||
|
|
||||||
|
|
||||||
|
relational_expression
|
||||||
|
::= relational_expression '>?' shift_expression
|
||||||
|
/. $Build consumeExpressionBinaryOperator(IASTBinaryExpression.op_max); $EndBuild ./
|
||||||
|
| relational_expression '<?' shift_expression
|
||||||
|
/. $Build consumeExpressionBinaryOperator(IASTBinaryExpression.op_min); $EndBuild ./
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
typeof_type_specifier
|
typeof_type_specifier
|
||||||
|
|
|
@ -1301,27 +1301,39 @@ private GCCBuildASTParserAction gnuAction;
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Rule 357: declaration_specifiers ::= <openscope-ast> typeof_declaration_specifiers
|
// Rule 353: relational_expression ::= relational_expression >? shift_expression
|
||||||
//
|
//
|
||||||
case 357: { gnuAction.consumeDeclarationSpecifiersTypeof(); break;
|
case 353: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_max); break;
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Rule 373: field_name_designator ::= identifier_token :
|
// Rule 354: relational_expression ::= relational_expression <? shift_expression
|
||||||
//
|
//
|
||||||
case 373: { gnuAction.consumeDesignatorField(); break;
|
case 354: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_min); break;
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Rule 374: array_range_designator ::= [ constant_expression ... constant_expression ]
|
// Rule 359: declaration_specifiers ::= <openscope-ast> typeof_declaration_specifiers
|
||||||
//
|
//
|
||||||
case 374: { gnuAction.consumeDesignatorArray(); break;
|
case 359: { gnuAction.consumeDeclarationSpecifiersTypeof(); break;
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Rule 375: designated_initializer ::= <openscope-ast> field_name_designator initializer
|
// Rule 375: field_name_designator ::= identifier_token :
|
||||||
//
|
//
|
||||||
case 375: { action. consumeInitializerDesignated(); break;
|
case 375: { gnuAction.consumeDesignatorField(); break;
|
||||||
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Rule 376: array_range_designator ::= [ constant_expression ... constant_expression ]
|
||||||
|
//
|
||||||
|
case 376: { gnuAction.consumeDesignatorArray(); break;
|
||||||
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Rule 377: designated_initializer ::= <openscope-ast> field_name_designator initializer
|
||||||
|
//
|
||||||
|
case 377: { action. consumeInitializerDesignated(); break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -24,7 +24,7 @@ public interface GCCParsersym {
|
||||||
TK_default = 42,
|
TK_default = 42,
|
||||||
TK_do = 43,
|
TK_do = 43,
|
||||||
TK_double = 50,
|
TK_double = 50,
|
||||||
TK_else = 97,
|
TK_else = 99,
|
||||||
TK_enum = 61,
|
TK_enum = 61,
|
||||||
TK_extern = 30,
|
TK_extern = 30,
|
||||||
TK_float = 51,
|
TK_float = 51,
|
||||||
|
@ -59,12 +59,12 @@ public interface GCCParsersym {
|
||||||
TK_identifier = 2,
|
TK_identifier = 2,
|
||||||
TK_Completion = 5,
|
TK_Completion = 5,
|
||||||
TK_EndOfCompletion = 3,
|
TK_EndOfCompletion = 3,
|
||||||
TK_Invalid = 98,
|
TK_Invalid = 100,
|
||||||
TK_LeftBracket = 35,
|
TK_LeftBracket = 35,
|
||||||
TK_LeftParen = 1,
|
TK_LeftParen = 1,
|
||||||
TK_LeftBrace = 12,
|
TK_LeftBrace = 12,
|
||||||
TK_Dot = 70,
|
TK_Dot = 70,
|
||||||
TK_Arrow = 83,
|
TK_Arrow = 85,
|
||||||
TK_PlusPlus = 15,
|
TK_PlusPlus = 15,
|
||||||
TK_MinusMinus = 16,
|
TK_MinusMinus = 16,
|
||||||
TK_And = 13,
|
TK_And = 13,
|
||||||
|
@ -75,32 +75,32 @@ public interface GCCParsersym {
|
||||||
TK_Bang = 22,
|
TK_Bang = 22,
|
||||||
TK_Slash = 71,
|
TK_Slash = 71,
|
||||||
TK_Percent = 72,
|
TK_Percent = 72,
|
||||||
TK_RightShift = 67,
|
TK_RightShift = 66,
|
||||||
TK_LeftShift = 68,
|
TK_LeftShift = 67,
|
||||||
TK_LT = 73,
|
TK_LT = 73,
|
||||||
TK_GT = 74,
|
TK_GT = 74,
|
||||||
TK_LE = 75,
|
TK_LE = 75,
|
||||||
TK_GE = 76,
|
TK_GE = 76,
|
||||||
TK_EQ = 78,
|
TK_EQ = 80,
|
||||||
TK_NE = 79,
|
TK_NE = 81,
|
||||||
TK_Caret = 80,
|
TK_Caret = 82,
|
||||||
TK_Or = 81,
|
TK_Or = 83,
|
||||||
TK_AndAnd = 82,
|
TK_AndAnd = 84,
|
||||||
TK_OrOr = 84,
|
TK_OrOr = 86,
|
||||||
TK_Question = 85,
|
TK_Question = 87,
|
||||||
TK_Colon = 65,
|
TK_Colon = 65,
|
||||||
TK_DotDotDot = 69,
|
TK_DotDotDot = 69,
|
||||||
TK_Assign = 66,
|
TK_Assign = 68,
|
||||||
TK_StarAssign = 86,
|
TK_StarAssign = 88,
|
||||||
TK_SlashAssign = 87,
|
TK_SlashAssign = 89,
|
||||||
TK_PercentAssign = 88,
|
TK_PercentAssign = 90,
|
||||||
TK_PlusAssign = 89,
|
TK_PlusAssign = 91,
|
||||||
TK_MinusAssign = 90,
|
TK_MinusAssign = 92,
|
||||||
TK_RightShiftAssign = 91,
|
TK_RightShiftAssign = 93,
|
||||||
TK_LeftShiftAssign = 92,
|
TK_LeftShiftAssign = 94,
|
||||||
TK_AndAssign = 93,
|
TK_AndAssign = 95,
|
||||||
TK_CaretAssign = 94,
|
TK_CaretAssign = 96,
|
||||||
TK_OrAssign = 95,
|
TK_OrAssign = 97,
|
||||||
TK_Comma = 38,
|
TK_Comma = 38,
|
||||||
TK_RightBracket = 77,
|
TK_RightBracket = 77,
|
||||||
TK_RightParen = 36,
|
TK_RightParen = 36,
|
||||||
|
@ -108,13 +108,13 @@ public interface GCCParsersym {
|
||||||
TK_SemiColon = 27,
|
TK_SemiColon = 27,
|
||||||
TK_typeof = 9,
|
TK_typeof = 9,
|
||||||
TK___alignof__ = 23,
|
TK___alignof__ = 23,
|
||||||
TK_MAX = 99,
|
|
||||||
TK_MIN = 100,
|
|
||||||
TK___attribute__ = 6,
|
TK___attribute__ = 6,
|
||||||
TK___declspec = 7,
|
TK___declspec = 7,
|
||||||
|
TK_MAX = 78,
|
||||||
|
TK_MIN = 79,
|
||||||
TK_asm = 4,
|
TK_asm = 4,
|
||||||
TK_ERROR_TOKEN = 34,
|
TK_ERROR_TOKEN = 34,
|
||||||
TK_EOF_TOKEN = 96;
|
TK_EOF_TOKEN = 98;
|
||||||
|
|
||||||
public final static String orderedTerminalSymbols[] = {
|
public final static String orderedTerminalSymbols[] = {
|
||||||
"",
|
"",
|
||||||
|
@ -183,9 +183,9 @@ public interface GCCParsersym {
|
||||||
"union",
|
"union",
|
||||||
"RightBrace",
|
"RightBrace",
|
||||||
"Colon",
|
"Colon",
|
||||||
"Assign",
|
|
||||||
"RightShift",
|
"RightShift",
|
||||||
"LeftShift",
|
"LeftShift",
|
||||||
|
"Assign",
|
||||||
"DotDotDot",
|
"DotDotDot",
|
||||||
"Dot",
|
"Dot",
|
||||||
"Slash",
|
"Slash",
|
||||||
|
@ -195,6 +195,8 @@ public interface GCCParsersym {
|
||||||
"LE",
|
"LE",
|
||||||
"GE",
|
"GE",
|
||||||
"RightBracket",
|
"RightBracket",
|
||||||
|
"MAX",
|
||||||
|
"MIN",
|
||||||
"EQ",
|
"EQ",
|
||||||
"NE",
|
"NE",
|
||||||
"Caret",
|
"Caret",
|
||||||
|
@ -215,9 +217,7 @@ public interface GCCParsersym {
|
||||||
"OrAssign",
|
"OrAssign",
|
||||||
"EOF_TOKEN",
|
"EOF_TOKEN",
|
||||||
"else",
|
"else",
|
||||||
"Invalid",
|
"Invalid"
|
||||||
"MAX",
|
|
||||||
"MIN"
|
|
||||||
};
|
};
|
||||||
|
|
||||||
public final static boolean isValidForParser = true;
|
public final static boolean isValidForParser = true;
|
||||||
|
|
|
@ -1283,33 +1283,45 @@ private GCCBuildASTParserAction gnuAction;
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Rule 354: declaration_specifiers ::= <openscope-ast> typeof_declaration_specifiers
|
// Rule 350: relational_expression ::= relational_expression >? shift_expression
|
||||||
//
|
//
|
||||||
case 354: { gnuAction.consumeDeclarationSpecifiersTypeof(); break;
|
case 350: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_max); break;
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Rule 370: field_name_designator ::= identifier_token :
|
// Rule 351: relational_expression ::= relational_expression <? shift_expression
|
||||||
//
|
//
|
||||||
case 370: { gnuAction.consumeDesignatorField(); break;
|
case 351: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_min); break;
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Rule 371: array_range_designator ::= [ constant_expression ... constant_expression ]
|
// Rule 356: declaration_specifiers ::= <openscope-ast> typeof_declaration_specifiers
|
||||||
//
|
//
|
||||||
case 371: { gnuAction.consumeDesignatorArray(); break;
|
case 356: { gnuAction.consumeDeclarationSpecifiersTypeof(); break;
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Rule 372: designated_initializer ::= <openscope-ast> field_name_designator initializer
|
// Rule 372: field_name_designator ::= identifier_token :
|
||||||
//
|
//
|
||||||
case 372: { action. consumeInitializerDesignated(); break;
|
case 372: { gnuAction.consumeDesignatorField(); break;
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Rule 374: no_sizeof_type_name_start ::= ERROR_TOKEN
|
// Rule 373: array_range_designator ::= [ constant_expression ... constant_expression ]
|
||||||
//
|
//
|
||||||
case 374: { action. consumeExpressionProblem(); break;
|
case 373: { gnuAction.consumeDesignatorArray(); break;
|
||||||
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Rule 374: designated_initializer ::= <openscope-ast> field_name_designator initializer
|
||||||
|
//
|
||||||
|
case 374: { action. consumeInitializerDesignated(); break;
|
||||||
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Rule 376: no_sizeof_type_name_start ::= ERROR_TOKEN
|
||||||
|
//
|
||||||
|
case 376: { action. consumeExpressionProblem(); break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -16,39 +16,39 @@ package org.eclipse.cdt.internal.core.dom.lrparser.gcc;
|
||||||
public interface GCCSizeofExpressionParsersym {
|
public interface GCCSizeofExpressionParsersym {
|
||||||
public final static int
|
public final static int
|
||||||
TK_auto = 30,
|
TK_auto = 30,
|
||||||
TK_break = 86,
|
TK_break = 88,
|
||||||
TK_case = 87,
|
TK_case = 89,
|
||||||
TK_char = 39,
|
TK_char = 39,
|
||||||
TK_const = 9,
|
TK_const = 9,
|
||||||
TK_continue = 88,
|
TK_continue = 90,
|
||||||
TK_default = 89,
|
TK_default = 91,
|
||||||
TK_do = 90,
|
TK_do = 92,
|
||||||
TK_double = 40,
|
TK_double = 40,
|
||||||
TK_else = 91,
|
TK_else = 93,
|
||||||
TK_enum = 52,
|
TK_enum = 52,
|
||||||
TK_extern = 31,
|
TK_extern = 31,
|
||||||
TK_float = 41,
|
TK_float = 41,
|
||||||
TK_for = 92,
|
TK_for = 94,
|
||||||
TK_goto = 93,
|
TK_goto = 95,
|
||||||
TK_if = 94,
|
TK_if = 96,
|
||||||
TK_inline = 32,
|
TK_inline = 32,
|
||||||
TK_int = 42,
|
TK_int = 42,
|
||||||
TK_long = 43,
|
TK_long = 43,
|
||||||
TK_register = 33,
|
TK_register = 33,
|
||||||
TK_restrict = 12,
|
TK_restrict = 12,
|
||||||
TK_return = 95,
|
TK_return = 97,
|
||||||
TK_short = 44,
|
TK_short = 44,
|
||||||
TK_signed = 45,
|
TK_signed = 45,
|
||||||
TK_sizeof = 20,
|
TK_sizeof = 20,
|
||||||
TK_static = 21,
|
TK_static = 21,
|
||||||
TK_struct = 53,
|
TK_struct = 53,
|
||||||
TK_switch = 96,
|
TK_switch = 98,
|
||||||
TK_typedef = 34,
|
TK_typedef = 34,
|
||||||
TK_union = 54,
|
TK_union = 54,
|
||||||
TK_unsigned = 46,
|
TK_unsigned = 46,
|
||||||
TK_void = 47,
|
TK_void = 47,
|
||||||
TK_volatile = 13,
|
TK_volatile = 13,
|
||||||
TK_while = 97,
|
TK_while = 99,
|
||||||
TK__Bool = 48,
|
TK__Bool = 48,
|
||||||
TK__Complex = 49,
|
TK__Complex = 49,
|
||||||
TK__Imaginary = 50,
|
TK__Imaginary = 50,
|
||||||
|
@ -59,12 +59,12 @@ public interface GCCSizeofExpressionParsersym {
|
||||||
TK_identifier = 1,
|
TK_identifier = 1,
|
||||||
TK_Completion = 7,
|
TK_Completion = 7,
|
||||||
TK_EndOfCompletion = 6,
|
TK_EndOfCompletion = 6,
|
||||||
TK_Invalid = 98,
|
TK_Invalid = 100,
|
||||||
TK_LeftBracket = 18,
|
TK_LeftBracket = 18,
|
||||||
TK_LeftParen = 2,
|
TK_LeftParen = 2,
|
||||||
TK_LeftBrace = 29,
|
TK_LeftBrace = 29,
|
||||||
TK_Dot = 55,
|
TK_Dot = 55,
|
||||||
TK_Arrow = 71,
|
TK_Arrow = 73,
|
||||||
TK_PlusPlus = 16,
|
TK_PlusPlus = 16,
|
||||||
TK_MinusMinus = 17,
|
TK_MinusMinus = 17,
|
||||||
TK_And = 14,
|
TK_And = 14,
|
||||||
|
@ -75,46 +75,46 @@ public interface GCCSizeofExpressionParsersym {
|
||||||
TK_Bang = 26,
|
TK_Bang = 26,
|
||||||
TK_Slash = 56,
|
TK_Slash = 56,
|
||||||
TK_Percent = 57,
|
TK_Percent = 57,
|
||||||
TK_RightShift = 37,
|
TK_RightShift = 36,
|
||||||
TK_LeftShift = 38,
|
TK_LeftShift = 37,
|
||||||
TK_LT = 58,
|
TK_LT = 58,
|
||||||
TK_GT = 59,
|
TK_GT = 59,
|
||||||
TK_LE = 60,
|
TK_LE = 60,
|
||||||
TK_GE = 61,
|
TK_GE = 61,
|
||||||
TK_EQ = 65,
|
TK_EQ = 67,
|
||||||
TK_NE = 66,
|
TK_NE = 68,
|
||||||
TK_Caret = 67,
|
TK_Caret = 69,
|
||||||
TK_Or = 68,
|
TK_Or = 70,
|
||||||
TK_AndAnd = 69,
|
TK_AndAnd = 71,
|
||||||
TK_OrOr = 72,
|
TK_OrOr = 74,
|
||||||
TK_Question = 73,
|
TK_Question = 75,
|
||||||
TK_Colon = 62,
|
TK_Colon = 62,
|
||||||
TK_DotDotDot = 51,
|
TK_DotDotDot = 51,
|
||||||
TK_Assign = 63,
|
TK_Assign = 63,
|
||||||
TK_StarAssign = 74,
|
TK_StarAssign = 76,
|
||||||
TK_SlashAssign = 75,
|
TK_SlashAssign = 77,
|
||||||
TK_PercentAssign = 76,
|
TK_PercentAssign = 78,
|
||||||
TK_PlusAssign = 77,
|
TK_PlusAssign = 79,
|
||||||
TK_MinusAssign = 78,
|
TK_MinusAssign = 80,
|
||||||
TK_RightShiftAssign = 79,
|
TK_RightShiftAssign = 81,
|
||||||
TK_LeftShiftAssign = 80,
|
TK_LeftShiftAssign = 82,
|
||||||
TK_AndAssign = 81,
|
TK_AndAssign = 83,
|
||||||
TK_CaretAssign = 82,
|
TK_CaretAssign = 84,
|
||||||
TK_OrAssign = 83,
|
TK_OrAssign = 85,
|
||||||
TK_Comma = 35,
|
TK_Comma = 35,
|
||||||
TK_RightBracket = 64,
|
TK_RightBracket = 64,
|
||||||
TK_RightParen = 27,
|
TK_RightParen = 27,
|
||||||
TK_RightBrace = 36,
|
TK_RightBrace = 38,
|
||||||
TK_SemiColon = 84,
|
TK_SemiColon = 86,
|
||||||
TK_typeof = 15,
|
TK_typeof = 15,
|
||||||
TK___alignof__ = 28,
|
TK___alignof__ = 28,
|
||||||
TK_MAX = 99,
|
|
||||||
TK_MIN = 100,
|
|
||||||
TK___attribute__ = 3,
|
TK___attribute__ = 3,
|
||||||
TK___declspec = 4,
|
TK___declspec = 4,
|
||||||
|
TK_MAX = 65,
|
||||||
|
TK_MIN = 66,
|
||||||
TK_asm = 5,
|
TK_asm = 5,
|
||||||
TK_ERROR_TOKEN = 70,
|
TK_ERROR_TOKEN = 72,
|
||||||
TK_EOF_TOKEN = 85;
|
TK_EOF_TOKEN = 87;
|
||||||
|
|
||||||
public final static String orderedTerminalSymbols[] = {
|
public final static String orderedTerminalSymbols[] = {
|
||||||
"",
|
"",
|
||||||
|
@ -153,9 +153,9 @@ public interface GCCSizeofExpressionParsersym {
|
||||||
"register",
|
"register",
|
||||||
"typedef",
|
"typedef",
|
||||||
"Comma",
|
"Comma",
|
||||||
"RightBrace",
|
|
||||||
"RightShift",
|
"RightShift",
|
||||||
"LeftShift",
|
"LeftShift",
|
||||||
|
"RightBrace",
|
||||||
"char",
|
"char",
|
||||||
"double",
|
"double",
|
||||||
"float",
|
"float",
|
||||||
|
@ -182,6 +182,8 @@ public interface GCCSizeofExpressionParsersym {
|
||||||
"Colon",
|
"Colon",
|
||||||
"Assign",
|
"Assign",
|
||||||
"RightBracket",
|
"RightBracket",
|
||||||
|
"MAX",
|
||||||
|
"MIN",
|
||||||
"EQ",
|
"EQ",
|
||||||
"NE",
|
"NE",
|
||||||
"Caret",
|
"Caret",
|
||||||
|
@ -215,9 +217,7 @@ public interface GCCSizeofExpressionParsersym {
|
||||||
"return",
|
"return",
|
||||||
"switch",
|
"switch",
|
||||||
"while",
|
"while",
|
||||||
"Invalid",
|
"Invalid"
|
||||||
"MAX",
|
|
||||||
"MIN"
|
|
||||||
};
|
};
|
||||||
|
|
||||||
public final static boolean isValidForParser = true;
|
public final static boolean isValidForParser = true;
|
||||||
|
|
|
@ -2004,33 +2004,45 @@ private GPPBuildASTParserAction gnuAction;
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Rule 578: declaration_specifiers ::= <openscope-ast> typeof_declaration_specifiers
|
// Rule 574: relational_expression ::= relational_expression >? shift_expression
|
||||||
//
|
//
|
||||||
case 578: { gnuAction.consumeDeclarationSpecifiersTypeof(); break;
|
case 574: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_max); break;
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Rule 591: declarator ::= <openscope-ast> ptr_operator_seq attribute_or_decl_specifier_seq direct_declarator
|
// Rule 575: relational_expression ::= relational_expression <? shift_expression
|
||||||
//
|
//
|
||||||
case 591: { action. consumeDeclaratorWithPointer(true); break;
|
case 575: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_min); break;
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Rule 593: simple_type_specifier ::= _Complex
|
// Rule 580: declaration_specifiers ::= <openscope-ast> typeof_declaration_specifiers
|
||||||
//
|
//
|
||||||
case 593: { action. consumeToken(); break;
|
case 580: { gnuAction.consumeDeclarationSpecifiersTypeof(); break;
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Rule 594: simple_type_specifier ::= _Imaginary
|
// Rule 593: declarator ::= <openscope-ast> ptr_operator_seq attribute_or_decl_specifier_seq direct_declarator
|
||||||
//
|
//
|
||||||
case 594: { action. consumeToken(); break;
|
case 593: { action. consumeDeclaratorWithPointer(true); break;
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Rule 595: declaration_specifiers ::= <openscope-ast> simple_declaration_specifiers
|
// Rule 595: simple_type_specifier ::= _Complex
|
||||||
//
|
//
|
||||||
case 595: { gnuAction.consumeDeclarationSpecifiersSimple(); break;
|
case 595: { action. consumeToken(); break;
|
||||||
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Rule 596: simple_type_specifier ::= _Imaginary
|
||||||
|
//
|
||||||
|
case 596: { action. consumeToken(); break;
|
||||||
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Rule 597: declaration_specifiers ::= <openscope-ast> simple_declaration_specifiers
|
||||||
|
//
|
||||||
|
case 597: { gnuAction.consumeDeclarationSpecifiersSimple(); break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -22,7 +22,7 @@ public interface GPPParsersym {
|
||||||
TK_bool = 16,
|
TK_bool = 16,
|
||||||
TK_break = 82,
|
TK_break = 82,
|
||||||
TK_case = 83,
|
TK_case = 83,
|
||||||
TK_catch = 124,
|
TK_catch = 126,
|
||||||
TK_char = 17,
|
TK_char = 17,
|
||||||
TK_class = 60,
|
TK_class = 60,
|
||||||
TK_const = 28,
|
TK_const = 28,
|
||||||
|
@ -33,7 +33,7 @@ public interface GPPParsersym {
|
||||||
TK_do = 86,
|
TK_do = 86,
|
||||||
TK_double = 18,
|
TK_double = 18,
|
||||||
TK_dynamic_cast = 48,
|
TK_dynamic_cast = 48,
|
||||||
TK_else = 127,
|
TK_else = 129,
|
||||||
TK_enum = 62,
|
TK_enum = 62,
|
||||||
TK_explicit = 32,
|
TK_explicit = 32,
|
||||||
TK_export = 92,
|
TK_export = 92,
|
||||||
|
@ -51,9 +51,9 @@ public interface GPPParsersym {
|
||||||
TK_namespace = 66,
|
TK_namespace = 66,
|
||||||
TK_new = 75,
|
TK_new = 75,
|
||||||
TK_operator = 9,
|
TK_operator = 9,
|
||||||
TK_private = 108,
|
TK_private = 110,
|
||||||
TK_protected = 109,
|
TK_protected = 111,
|
||||||
TK_public = 110,
|
TK_public = 112,
|
||||||
TK_register = 37,
|
TK_register = 37,
|
||||||
TK_reinterpret_cast = 50,
|
TK_reinterpret_cast = 50,
|
||||||
TK_return = 90,
|
TK_return = 90,
|
||||||
|
@ -87,12 +87,12 @@ public interface GPPParsersym {
|
||||||
TK_identifier = 1,
|
TK_identifier = 1,
|
||||||
TK_Completion = 2,
|
TK_Completion = 2,
|
||||||
TK_EndOfCompletion = 11,
|
TK_EndOfCompletion = 11,
|
||||||
TK_Invalid = 128,
|
TK_Invalid = 130,
|
||||||
TK_LeftBracket = 69,
|
TK_LeftBracket = 69,
|
||||||
TK_LeftParen = 3,
|
TK_LeftParen = 3,
|
||||||
TK_Dot = 125,
|
TK_Dot = 127,
|
||||||
TK_DotStar = 97,
|
TK_DotStar = 97,
|
||||||
TK_Arrow = 111,
|
TK_Arrow = 113,
|
||||||
TK_ArrowStar = 96,
|
TK_ArrowStar = 96,
|
||||||
TK_PlusPlus = 44,
|
TK_PlusPlus = 44,
|
||||||
TK_MinusMinus = 45,
|
TK_MinusMinus = 45,
|
||||||
|
@ -116,35 +116,35 @@ public interface GPPParsersym {
|
||||||
TK_Or = 105,
|
TK_Or = 105,
|
||||||
TK_AndAnd = 106,
|
TK_AndAnd = 106,
|
||||||
TK_OrOr = 107,
|
TK_OrOr = 107,
|
||||||
TK_Question = 112,
|
TK_Question = 114,
|
||||||
TK_Colon = 77,
|
TK_Colon = 77,
|
||||||
TK_ColonColon = 4,
|
TK_ColonColon = 4,
|
||||||
TK_DotDotDot = 95,
|
TK_DotDotDot = 95,
|
||||||
TK_Assign = 79,
|
TK_Assign = 79,
|
||||||
TK_StarAssign = 113,
|
TK_StarAssign = 115,
|
||||||
TK_SlashAssign = 114,
|
TK_SlashAssign = 116,
|
||||||
TK_PercentAssign = 115,
|
TK_PercentAssign = 117,
|
||||||
TK_PlusAssign = 116,
|
TK_PlusAssign = 118,
|
||||||
TK_MinusAssign = 117,
|
TK_MinusAssign = 119,
|
||||||
TK_RightShiftAssign = 118,
|
TK_RightShiftAssign = 120,
|
||||||
TK_LeftShiftAssign = 119,
|
TK_LeftShiftAssign = 121,
|
||||||
TK_AndAssign = 120,
|
TK_AndAssign = 122,
|
||||||
TK_CaretAssign = 121,
|
TK_CaretAssign = 123,
|
||||||
TK_OrAssign = 122,
|
TK_OrAssign = 124,
|
||||||
TK_Comma = 72,
|
TK_Comma = 72,
|
||||||
TK_RightBracket = 123,
|
TK_RightBracket = 125,
|
||||||
TK_RightParen = 71,
|
TK_RightParen = 71,
|
||||||
TK_RightBrace = 80,
|
TK_RightBrace = 80,
|
||||||
TK_SemiColon = 43,
|
TK_SemiColon = 43,
|
||||||
TK_LeftBrace = 73,
|
TK_LeftBrace = 73,
|
||||||
TK_typeof = 27,
|
TK_typeof = 27,
|
||||||
TK___alignof__ = 59,
|
TK___alignof__ = 59,
|
||||||
TK_MAX = 129,
|
|
||||||
TK_MIN = 130,
|
|
||||||
TK___attribute__ = 7,
|
TK___attribute__ = 7,
|
||||||
TK___declspec = 8,
|
TK___declspec = 8,
|
||||||
|
TK_MAX = 108,
|
||||||
|
TK_MIN = 109,
|
||||||
TK_ERROR_TOKEN = 70,
|
TK_ERROR_TOKEN = 70,
|
||||||
TK_EOF_TOKEN = 126;
|
TK_EOF_TOKEN = 128;
|
||||||
|
|
||||||
public final static String orderedTerminalSymbols[] = {
|
public final static String orderedTerminalSymbols[] = {
|
||||||
"",
|
"",
|
||||||
|
@ -255,6 +255,8 @@ public interface GPPParsersym {
|
||||||
"Or",
|
"Or",
|
||||||
"AndAnd",
|
"AndAnd",
|
||||||
"OrOr",
|
"OrOr",
|
||||||
|
"MAX",
|
||||||
|
"MIN",
|
||||||
"private",
|
"private",
|
||||||
"protected",
|
"protected",
|
||||||
"public",
|
"public",
|
||||||
|
@ -275,9 +277,7 @@ public interface GPPParsersym {
|
||||||
"Dot",
|
"Dot",
|
||||||
"EOF_TOKEN",
|
"EOF_TOKEN",
|
||||||
"else",
|
"else",
|
||||||
"Invalid",
|
"Invalid"
|
||||||
"MAX",
|
|
||||||
"MIN"
|
|
||||||
};
|
};
|
||||||
|
|
||||||
public final static boolean isValidForParser = true;
|
public final static boolean isValidForParser = true;
|
||||||
|
|
|
@ -1980,39 +1980,51 @@ private GPPBuildASTParserAction gnuAction;
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Rule 574: declaration_specifiers ::= <openscope-ast> typeof_declaration_specifiers
|
// Rule 570: relational_expression ::= relational_expression >? shift_expression
|
||||||
//
|
//
|
||||||
case 574: { gnuAction.consumeDeclarationSpecifiersTypeof(); break;
|
case 570: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_max); break;
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Rule 587: declarator ::= <openscope-ast> ptr_operator_seq attribute_or_decl_specifier_seq direct_declarator
|
// Rule 571: relational_expression ::= relational_expression <? shift_expression
|
||||||
//
|
//
|
||||||
case 587: { action. consumeDeclaratorWithPointer(true); break;
|
case 571: { action. consumeExpressionBinaryOperator(IASTBinaryExpression.op_min); break;
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Rule 589: simple_type_specifier ::= _Complex
|
// Rule 576: declaration_specifiers ::= <openscope-ast> typeof_declaration_specifiers
|
||||||
//
|
//
|
||||||
case 589: { action. consumeToken(); break;
|
case 576: { gnuAction.consumeDeclarationSpecifiersTypeof(); break;
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Rule 590: simple_type_specifier ::= _Imaginary
|
// Rule 589: declarator ::= <openscope-ast> ptr_operator_seq attribute_or_decl_specifier_seq direct_declarator
|
||||||
//
|
//
|
||||||
case 590: { action. consumeToken(); break;
|
case 589: { action. consumeDeclaratorWithPointer(true); break;
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Rule 591: declaration_specifiers ::= <openscope-ast> simple_declaration_specifiers
|
// Rule 591: simple_type_specifier ::= _Complex
|
||||||
//
|
//
|
||||||
case 591: { gnuAction.consumeDeclarationSpecifiersSimple(); break;
|
case 591: { action. consumeToken(); break;
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Rule 593: no_sizeof_type_id_start ::= ERROR_TOKEN
|
// Rule 592: simple_type_specifier ::= _Imaginary
|
||||||
//
|
//
|
||||||
case 593: { action. consumeExpressionProblem(); break;
|
case 592: { action. consumeToken(); break;
|
||||||
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Rule 593: declaration_specifiers ::= <openscope-ast> simple_declaration_specifiers
|
||||||
|
//
|
||||||
|
case 593: { gnuAction.consumeDeclarationSpecifiersSimple(); break;
|
||||||
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Rule 595: no_sizeof_type_id_start ::= ERROR_TOKEN
|
||||||
|
//
|
||||||
|
case 595: { action. consumeExpressionProblem(); break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -22,7 +22,7 @@ public interface GPPSizeofExpressionParsersym {
|
||||||
TK_bool = 16,
|
TK_bool = 16,
|
||||||
TK_break = 82,
|
TK_break = 82,
|
||||||
TK_case = 83,
|
TK_case = 83,
|
||||||
TK_catch = 124,
|
TK_catch = 126,
|
||||||
TK_char = 17,
|
TK_char = 17,
|
||||||
TK_class = 60,
|
TK_class = 60,
|
||||||
TK_const = 28,
|
TK_const = 28,
|
||||||
|
@ -33,7 +33,7 @@ public interface GPPSizeofExpressionParsersym {
|
||||||
TK_do = 86,
|
TK_do = 86,
|
||||||
TK_double = 18,
|
TK_double = 18,
|
||||||
TK_dynamic_cast = 48,
|
TK_dynamic_cast = 48,
|
||||||
TK_else = 127,
|
TK_else = 129,
|
||||||
TK_enum = 63,
|
TK_enum = 63,
|
||||||
TK_explicit = 32,
|
TK_explicit = 32,
|
||||||
TK_export = 92,
|
TK_export = 92,
|
||||||
|
@ -51,9 +51,9 @@ public interface GPPSizeofExpressionParsersym {
|
||||||
TK_namespace = 67,
|
TK_namespace = 67,
|
||||||
TK_new = 73,
|
TK_new = 73,
|
||||||
TK_operator = 9,
|
TK_operator = 9,
|
||||||
TK_private = 108,
|
TK_private = 110,
|
||||||
TK_protected = 109,
|
TK_protected = 111,
|
||||||
TK_public = 110,
|
TK_public = 112,
|
||||||
TK_register = 37,
|
TK_register = 37,
|
||||||
TK_reinterpret_cast = 50,
|
TK_reinterpret_cast = 50,
|
||||||
TK_return = 90,
|
TK_return = 90,
|
||||||
|
@ -87,12 +87,12 @@ public interface GPPSizeofExpressionParsersym {
|
||||||
TK_identifier = 1,
|
TK_identifier = 1,
|
||||||
TK_Completion = 2,
|
TK_Completion = 2,
|
||||||
TK_EndOfCompletion = 10,
|
TK_EndOfCompletion = 10,
|
||||||
TK_Invalid = 128,
|
TK_Invalid = 130,
|
||||||
TK_LeftBracket = 68,
|
TK_LeftBracket = 68,
|
||||||
TK_LeftParen = 3,
|
TK_LeftParen = 3,
|
||||||
TK_Dot = 125,
|
TK_Dot = 127,
|
||||||
TK_DotStar = 97,
|
TK_DotStar = 97,
|
||||||
TK_Arrow = 111,
|
TK_Arrow = 113,
|
||||||
TK_ArrowStar = 96,
|
TK_ArrowStar = 96,
|
||||||
TK_PlusPlus = 44,
|
TK_PlusPlus = 44,
|
||||||
TK_MinusMinus = 45,
|
TK_MinusMinus = 45,
|
||||||
|
@ -116,35 +116,35 @@ public interface GPPSizeofExpressionParsersym {
|
||||||
TK_Or = 105,
|
TK_Or = 105,
|
||||||
TK_AndAnd = 106,
|
TK_AndAnd = 106,
|
||||||
TK_OrOr = 107,
|
TK_OrOr = 107,
|
||||||
TK_Question = 112,
|
TK_Question = 114,
|
||||||
TK_Colon = 77,
|
TK_Colon = 77,
|
||||||
TK_ColonColon = 4,
|
TK_ColonColon = 4,
|
||||||
TK_DotDotDot = 95,
|
TK_DotDotDot = 95,
|
||||||
TK_Assign = 79,
|
TK_Assign = 79,
|
||||||
TK_StarAssign = 113,
|
TK_StarAssign = 115,
|
||||||
TK_SlashAssign = 114,
|
TK_SlashAssign = 116,
|
||||||
TK_PercentAssign = 115,
|
TK_PercentAssign = 117,
|
||||||
TK_PlusAssign = 116,
|
TK_PlusAssign = 118,
|
||||||
TK_MinusAssign = 117,
|
TK_MinusAssign = 119,
|
||||||
TK_RightShiftAssign = 118,
|
TK_RightShiftAssign = 120,
|
||||||
TK_LeftShiftAssign = 119,
|
TK_LeftShiftAssign = 121,
|
||||||
TK_AndAssign = 120,
|
TK_AndAssign = 122,
|
||||||
TK_CaretAssign = 121,
|
TK_CaretAssign = 123,
|
||||||
TK_OrAssign = 122,
|
TK_OrAssign = 124,
|
||||||
TK_Comma = 74,
|
TK_Comma = 74,
|
||||||
TK_RightBracket = 123,
|
TK_RightBracket = 125,
|
||||||
TK_RightParen = 71,
|
TK_RightParen = 71,
|
||||||
TK_RightBrace = 80,
|
TK_RightBrace = 80,
|
||||||
TK_SemiColon = 42,
|
TK_SemiColon = 42,
|
||||||
TK_LeftBrace = 75,
|
TK_LeftBrace = 75,
|
||||||
TK_typeof = 27,
|
TK_typeof = 27,
|
||||||
TK___alignof__ = 59,
|
TK___alignof__ = 59,
|
||||||
TK_MAX = 129,
|
|
||||||
TK_MIN = 130,
|
|
||||||
TK___attribute__ = 6,
|
TK___attribute__ = 6,
|
||||||
TK___declspec = 7,
|
TK___declspec = 7,
|
||||||
|
TK_MAX = 108,
|
||||||
|
TK_MIN = 109,
|
||||||
TK_ERROR_TOKEN = 69,
|
TK_ERROR_TOKEN = 69,
|
||||||
TK_EOF_TOKEN = 126;
|
TK_EOF_TOKEN = 128;
|
||||||
|
|
||||||
public final static String orderedTerminalSymbols[] = {
|
public final static String orderedTerminalSymbols[] = {
|
||||||
"",
|
"",
|
||||||
|
@ -255,6 +255,8 @@ public interface GPPSizeofExpressionParsersym {
|
||||||
"Or",
|
"Or",
|
||||||
"AndAnd",
|
"AndAnd",
|
||||||
"OrOr",
|
"OrOr",
|
||||||
|
"MAX",
|
||||||
|
"MIN",
|
||||||
"private",
|
"private",
|
||||||
"protected",
|
"protected",
|
||||||
"public",
|
"public",
|
||||||
|
@ -275,9 +277,7 @@ public interface GPPSizeofExpressionParsersym {
|
||||||
"Dot",
|
"Dot",
|
||||||
"EOF_TOKEN",
|
"EOF_TOKEN",
|
||||||
"else",
|
"else",
|
||||||
"Invalid",
|
"Invalid"
|
||||||
"MAX",
|
|
||||||
"MIN"
|
|
||||||
};
|
};
|
||||||
|
|
||||||
public final static boolean isValidForParser = true;
|
public final static boolean isValidForParser = true;
|
||||||
|
|
Loading…
Add table
Reference in a new issue