3224 lines
70 KiB
Plaintext
3224 lines
70 KiB
Plaintext
|
0 $accept : %entry% $end
|
|||
|
|
|||
|
1 primary_expression : identifier
|
|||
|
2 | constant
|
|||
|
3 | string_literal
|
|||
|
4 | OPEN_PAREN_CHR expression CLOSE_PAREN_CHR
|
|||
|
|
|||
|
5 constant : CONSTANT
|
|||
|
|
|||
|
6 identifier : IDENTIFIER
|
|||
|
|
|||
|
7 open_brace : OPEN_BRACE_CHR
|
|||
|
|
|||
|
8 close_brace : CLOSE_BRACE_CHR
|
|||
|
|
|||
|
9 string_literal : STRING_LITERAL
|
|||
|
10 | STRING_LITERAL string_literal
|
|||
|
|
|||
|
11 inc_op : INC_OP
|
|||
|
|
|||
|
12 dec_op : DEC_OP
|
|||
|
|
|||
|
13 postfix_expression : primary_expression
|
|||
|
14 | postfix_expression OPEN_BRACKET_CHR expression close_bracket
|
|||
|
15 | identifier OPEN_PAREN_CHR close_paren
|
|||
|
16 | identifier OPEN_PAREN_CHR argument_expression_list close_paren
|
|||
|
17 | postfix_expression inc_op
|
|||
|
18 | postfix_expression dec_op
|
|||
|
|
|||
|
19 argument_expression_list : assignment_expression
|
|||
|
20 | argument_expression_list COMMA_CHR assignment_expression
|
|||
|
|
|||
|
21 unary_expression : postfix_expression
|
|||
|
22 | inc_op unary_expression
|
|||
|
23 | dec_op unary_expression
|
|||
|
24 | unary_operator cast_expression
|
|||
|
|
|||
|
25 unary_operator : add_chr
|
|||
|
26 | sub_chr
|
|||
|
27 | bang_chr
|
|||
|
28 | tilde_chr
|
|||
|
|
|||
|
29 add_chr : ADD_CHR
|
|||
|
|
|||
|
30 sub_chr : SUB_CHR
|
|||
|
|
|||
|
31 bang_chr : BANG_CHR
|
|||
|
|
|||
|
32 tilde_chr : TILDE_CHR
|
|||
|
|
|||
|
33 close_paren : CLOSE_PAREN_CHR
|
|||
|
|
|||
|
34 cast_expression : unary_expression
|
|||
|
|
|||
|
35 multiplicative_expression : cast_expression
|
|||
|
36 | multiplicative_expression STAR_CHR cast_expression
|
|||
|
37 | multiplicative_expression DIV_CHR cast_expression
|
|||
|
38 | multiplicative_expression MOD_CHR cast_expression
|
|||
|
|
|||
|
39 additive_expression : multiplicative_expression
|
|||
|
40 | additive_expression ADD_CHR multiplicative_expression
|
|||
|
41 | additive_expression SUB_CHR multiplicative_expression
|
|||
|
|
|||
|
42 shift_expression : additive_expression
|
|||
|
|
|||
|
43 relational_expression : shift_expression
|
|||
|
44 | relational_expression OPEN_ANGLE_CHR shift_expression
|
|||
|
45 | relational_expression CLOSE_ANGLE_CHR shift_expression
|
|||
|
46 | relational_expression LE_OP shift_expression
|
|||
|
47 | relational_expression GE_OP shift_expression
|
|||
|
|
|||
|
48 equality_expression : relational_expression
|
|||
|
49 | equality_expression EQ_OP relational_expression
|
|||
|
50 | equality_expression NE_OP relational_expression
|
|||
|
|
|||
|
51 and_expression : equality_expression
|
|||
|
|
|||
|
52 exclusive_or_expression : and_expression
|
|||
|
|
|||
|
53 inclusive_or_expression : exclusive_or_expression
|
|||
|
|
|||
|
54 logical_and_expression : inclusive_or_expression
|
|||
|
55 | logical_and_expression AND_OP inclusive_or_expression
|
|||
|
|
|||
|
56 logical_or_expression : logical_and_expression
|
|||
|
57 | logical_or_expression OR_OP logical_and_expression
|
|||
|
|
|||
|
58 conditional_expression : logical_or_expression
|
|||
|
59 | logical_or_expression QUES_CHR expression COLON_CHR conditional_expression
|
|||
|
|
|||
|
60 assignment_expression : conditional_expression
|
|||
|
61 | unary_expression EQ_CHR assignment_expression
|
|||
|
|
|||
|
62 expression : assignment_expression
|
|||
|
63 | expression COMMA_CHR assignment_expression
|
|||
|
|
|||
|
64 declaration : type_specifier optional_init_declarator_list SEMI_CHR
|
|||
|
|
|||
|
65 optional_init_declarator_list :
|
|||
|
66 | init_declarator_list
|
|||
|
|
|||
|
67 init_declarator_list : init_declarator
|
|||
|
68 | init_declarator_list COMMA_CHR init_declarator
|
|||
|
|
|||
|
69 init_declarator : declarator
|
|||
|
|
|||
|
70 declarator : identifier
|
|||
|
|
|||
|
71 type_specifier : INTEGER
|
|||
|
72 | CHAR STAR_CHR
|
|||
|
73 | type_specifier STAR_CHR
|
|||
|
|
|||
|
74 close_bracket : CLOSE_BRACKET_CHR
|
|||
|
|
|||
|
75 statement : compound_statement
|
|||
|
76 | expression_statement
|
|||
|
77 | selection_statement
|
|||
|
78 | iteration_statement
|
|||
|
79 | jump_statement
|
|||
|
|
|||
|
80 open_block : open_brace
|
|||
|
|
|||
|
81 close_block : close_brace
|
|||
|
|
|||
|
82 compound_statement : open_block close_block
|
|||
|
83 | open_block statement_list close_block
|
|||
|
84 | open_block declaration_list close_block
|
|||
|
85 | open_block declaration_list statement_list close_block
|
|||
|
|
|||
|
86 declaration_list : declaration
|
|||
|
87 | declaration_list declaration
|
|||
|
|
|||
|
88 statement_list : statement
|
|||
|
89 | statement_list statement
|
|||
|
|
|||
|
90 expression_statement : semi_chr
|
|||
|
91 | expression SEMI_CHR
|
|||
|
|
|||
|
92 semi_chr : SEMI_CHR
|
|||
|
|
|||
|
93 ifkw : IF
|
|||
|
|
|||
|
94 selection_statement : ifkw OPEN_PAREN_CHR expression CLOSE_PAREN_CHR statement
|
|||
|
95 | ifkw OPEN_PAREN_CHR expression CLOSE_PAREN_CHR statement ELSE statement
|
|||
|
|
|||
|
96 whilekw : WHILE
|
|||
|
|
|||
|
97 forkw : FOR
|
|||
|
|
|||
|
98 iteration_statement : whilekw OPEN_PAREN_CHR expression close_paren statement
|
|||
|
99 | forkw OPEN_PAREN_CHR expression_statement expression_statement close_paren statement
|
|||
|
100 | forkw OPEN_PAREN_CHR expression_statement expression_statement expression close_paren statement
|
|||
|
|
|||
|
101 return : RETURN
|
|||
|
|
|||
|
102 jump_statement : return SEMI_CHR
|
|||
|
103 | return expression SEMI_CHR
|
|||
|
|
|||
|
104 translation_unit : external_declaration
|
|||
|
105 | translation_unit external_declaration
|
|||
|
106 | EOF
|
|||
|
|
|||
|
107 external_declaration : function_definition
|
|||
|
108 | declaration
|
|||
|
|
|||
|
109 parameter_declaration : type_specifier declarator
|
|||
|
|
|||
|
110 parameter_list : parameter_declaration
|
|||
|
111 | parameter_list COMMA_CHR parameter_declaration
|
|||
|
|
|||
|
112 parameter_type_list : parameter_list
|
|||
|
113 | parameter_list COMMA_CHR ELLIPSIS
|
|||
|
|
|||
|
114 parameter_declarator : OPEN_PAREN_CHR CLOSE_PAREN_CHR
|
|||
|
115 | OPEN_PAREN_CHR parameter_type_list CLOSE_PAREN_CHR
|
|||
|
|
|||
|
116 function_declarator : type_specifier identifier parameter_declarator
|
|||
|
|
|||
|
117 function_definition : function_declarator compound_statement
|
|||
|
|
|||
|
118 %entry% : '\001' translation_unit
|
|||
|
|
|||
|
state 0
|
|||
|
$accept : . %entry% $end (0)
|
|||
|
|
|||
|
'\001' shift 1
|
|||
|
. error
|
|||
|
|
|||
|
%entry% goto 2
|
|||
|
|
|||
|
|
|||
|
state 1
|
|||
|
%entry% : '\001' . translation_unit (118)
|
|||
|
|
|||
|
CHAR shift 3
|
|||
|
INTEGER shift 4
|
|||
|
EOF shift 5
|
|||
|
. error
|
|||
|
|
|||
|
translation_unit goto 6
|
|||
|
declaration goto 7
|
|||
|
type_specifier goto 8
|
|||
|
external_declaration goto 9
|
|||
|
function_definition goto 10
|
|||
|
function_declarator goto 11
|
|||
|
|
|||
|
|
|||
|
state 2
|
|||
|
$accept : %entry% . $end (0)
|
|||
|
|
|||
|
$end accept
|
|||
|
|
|||
|
|
|||
|
state 3
|
|||
|
type_specifier : CHAR . STAR_CHR (72)
|
|||
|
|
|||
|
STAR_CHR shift 12
|
|||
|
. error
|
|||
|
|
|||
|
|
|||
|
state 4
|
|||
|
type_specifier : INTEGER . (71)
|
|||
|
|
|||
|
. reduce 71
|
|||
|
|
|||
|
|
|||
|
state 5
|
|||
|
translation_unit : EOF . (106)
|
|||
|
|
|||
|
. reduce 106
|
|||
|
|
|||
|
|
|||
|
state 6
|
|||
|
translation_unit : translation_unit . external_declaration (105)
|
|||
|
%entry% : '\001' translation_unit . (118)
|
|||
|
|
|||
|
CHAR shift 3
|
|||
|
INTEGER shift 4
|
|||
|
$end reduce 118
|
|||
|
|
|||
|
declaration goto 7
|
|||
|
type_specifier goto 8
|
|||
|
external_declaration goto 13
|
|||
|
function_definition goto 10
|
|||
|
function_declarator goto 11
|
|||
|
|
|||
|
|
|||
|
state 7
|
|||
|
external_declaration : declaration . (108)
|
|||
|
|
|||
|
. reduce 108
|
|||
|
|
|||
|
|
|||
|
state 8
|
|||
|
declaration : type_specifier . optional_init_declarator_list SEMI_CHR (64)
|
|||
|
type_specifier : type_specifier . STAR_CHR (73)
|
|||
|
function_declarator : type_specifier . identifier parameter_declarator (116)
|
|||
|
optional_init_declarator_list : . (65)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
STAR_CHR shift 15
|
|||
|
SEMI_CHR reduce 65
|
|||
|
|
|||
|
identifier goto 16
|
|||
|
optional_init_declarator_list goto 17
|
|||
|
init_declarator_list goto 18
|
|||
|
init_declarator goto 19
|
|||
|
declarator goto 20
|
|||
|
|
|||
|
|
|||
|
state 9
|
|||
|
translation_unit : external_declaration . (104)
|
|||
|
|
|||
|
. reduce 104
|
|||
|
|
|||
|
|
|||
|
state 10
|
|||
|
external_declaration : function_definition . (107)
|
|||
|
|
|||
|
. reduce 107
|
|||
|
|
|||
|
|
|||
|
state 11
|
|||
|
function_definition : function_declarator . compound_statement (117)
|
|||
|
|
|||
|
OPEN_BRACE_CHR shift 21
|
|||
|
. error
|
|||
|
|
|||
|
open_brace goto 22
|
|||
|
compound_statement goto 23
|
|||
|
open_block goto 24
|
|||
|
|
|||
|
|
|||
|
state 12
|
|||
|
type_specifier : CHAR STAR_CHR . (72)
|
|||
|
|
|||
|
. reduce 72
|
|||
|
|
|||
|
|
|||
|
state 13
|
|||
|
translation_unit : translation_unit external_declaration . (105)
|
|||
|
|
|||
|
. reduce 105
|
|||
|
|
|||
|
|
|||
|
state 14
|
|||
|
identifier : IDENTIFIER . (6)
|
|||
|
|
|||
|
. reduce 6
|
|||
|
|
|||
|
|
|||
|
state 15
|
|||
|
type_specifier : type_specifier STAR_CHR . (73)
|
|||
|
|
|||
|
. reduce 73
|
|||
|
|
|||
|
|
|||
|
state 16
|
|||
|
declarator : identifier . (70)
|
|||
|
function_declarator : type_specifier identifier . parameter_declarator (116)
|
|||
|
|
|||
|
OPEN_PAREN_CHR shift 25
|
|||
|
SEMI_CHR reduce 70
|
|||
|
COMMA_CHR reduce 70
|
|||
|
|
|||
|
parameter_declarator goto 26
|
|||
|
|
|||
|
|
|||
|
state 17
|
|||
|
declaration : type_specifier optional_init_declarator_list . SEMI_CHR (64)
|
|||
|
|
|||
|
SEMI_CHR shift 27
|
|||
|
. error
|
|||
|
|
|||
|
|
|||
|
state 18
|
|||
|
optional_init_declarator_list : init_declarator_list . (66)
|
|||
|
init_declarator_list : init_declarator_list . COMMA_CHR init_declarator (68)
|
|||
|
|
|||
|
COMMA_CHR shift 28
|
|||
|
SEMI_CHR reduce 66
|
|||
|
|
|||
|
|
|||
|
state 19
|
|||
|
init_declarator_list : init_declarator . (67)
|
|||
|
|
|||
|
. reduce 67
|
|||
|
|
|||
|
|
|||
|
state 20
|
|||
|
init_declarator : declarator . (69)
|
|||
|
|
|||
|
. reduce 69
|
|||
|
|
|||
|
|
|||
|
state 21
|
|||
|
open_brace : OPEN_BRACE_CHR . (7)
|
|||
|
|
|||
|
. reduce 7
|
|||
|
|
|||
|
|
|||
|
state 22
|
|||
|
open_block : open_brace . (80)
|
|||
|
|
|||
|
. reduce 80
|
|||
|
|
|||
|
|
|||
|
state 23
|
|||
|
function_definition : function_declarator compound_statement . (117)
|
|||
|
|
|||
|
. reduce 117
|
|||
|
|
|||
|
|
|||
|
state 24
|
|||
|
compound_statement : open_block . close_block (82)
|
|||
|
compound_statement : open_block . statement_list close_block (83)
|
|||
|
compound_statement : open_block . declaration_list close_block (84)
|
|||
|
compound_statement : open_block . declaration_list statement_list close_block (85)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
CONSTANT shift 29
|
|||
|
STRING_LITERAL shift 30
|
|||
|
INC_OP shift 31
|
|||
|
DEC_OP shift 32
|
|||
|
SEMI_CHR shift 33
|
|||
|
OPEN_BRACE_CHR shift 21
|
|||
|
CLOSE_BRACE_CHR shift 34
|
|||
|
OPEN_PAREN_CHR shift 35
|
|||
|
BANG_CHR shift 36
|
|||
|
TILDE_CHR shift 37
|
|||
|
ADD_CHR shift 38
|
|||
|
SUB_CHR shift 39
|
|||
|
CHAR shift 3
|
|||
|
INTEGER shift 4
|
|||
|
IF shift 40
|
|||
|
WHILE shift 41
|
|||
|
FOR shift 42
|
|||
|
RETURN shift 43
|
|||
|
. error
|
|||
|
|
|||
|
primary_expression goto 44
|
|||
|
identifier goto 45
|
|||
|
constant goto 46
|
|||
|
string_literal goto 47
|
|||
|
expression goto 48
|
|||
|
open_brace goto 22
|
|||
|
close_brace goto 49
|
|||
|
inc_op goto 50
|
|||
|
dec_op goto 51
|
|||
|
postfix_expression goto 52
|
|||
|
assignment_expression goto 53
|
|||
|
unary_expression goto 54
|
|||
|
unary_operator goto 55
|
|||
|
cast_expression goto 56
|
|||
|
add_chr goto 57
|
|||
|
sub_chr goto 58
|
|||
|
bang_chr goto 59
|
|||
|
tilde_chr goto 60
|
|||
|
multiplicative_expression goto 61
|
|||
|
additive_expression goto 62
|
|||
|
shift_expression goto 63
|
|||
|
relational_expression goto 64
|
|||
|
equality_expression goto 65
|
|||
|
and_expression goto 66
|
|||
|
exclusive_or_expression goto 67
|
|||
|
inclusive_or_expression goto 68
|
|||
|
logical_and_expression goto 69
|
|||
|
logical_or_expression goto 70
|
|||
|
conditional_expression goto 71
|
|||
|
declaration goto 72
|
|||
|
type_specifier goto 73
|
|||
|
statement goto 74
|
|||
|
compound_statement goto 75
|
|||
|
expression_statement goto 76
|
|||
|
selection_statement goto 77
|
|||
|
iteration_statement goto 78
|
|||
|
jump_statement goto 79
|
|||
|
open_block goto 24
|
|||
|
close_block goto 80
|
|||
|
statement_list goto 81
|
|||
|
declaration_list goto 82
|
|||
|
semi_chr goto 83
|
|||
|
ifkw goto 84
|
|||
|
whilekw goto 85
|
|||
|
forkw goto 86
|
|||
|
return goto 87
|
|||
|
|
|||
|
|
|||
|
state 25
|
|||
|
parameter_declarator : OPEN_PAREN_CHR . CLOSE_PAREN_CHR (114)
|
|||
|
parameter_declarator : OPEN_PAREN_CHR . parameter_type_list CLOSE_PAREN_CHR (115)
|
|||
|
|
|||
|
CLOSE_PAREN_CHR shift 88
|
|||
|
CHAR shift 3
|
|||
|
INTEGER shift 4
|
|||
|
. error
|
|||
|
|
|||
|
type_specifier goto 89
|
|||
|
parameter_declaration goto 90
|
|||
|
parameter_list goto 91
|
|||
|
parameter_type_list goto 92
|
|||
|
|
|||
|
|
|||
|
state 26
|
|||
|
function_declarator : type_specifier identifier parameter_declarator . (116)
|
|||
|
|
|||
|
. reduce 116
|
|||
|
|
|||
|
|
|||
|
state 27
|
|||
|
declaration : type_specifier optional_init_declarator_list SEMI_CHR . (64)
|
|||
|
|
|||
|
. reduce 64
|
|||
|
|
|||
|
|
|||
|
state 28
|
|||
|
init_declarator_list : init_declarator_list COMMA_CHR . init_declarator (68)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
. error
|
|||
|
|
|||
|
identifier goto 93
|
|||
|
init_declarator goto 94
|
|||
|
declarator goto 20
|
|||
|
|
|||
|
|
|||
|
state 29
|
|||
|
constant : CONSTANT . (5)
|
|||
|
|
|||
|
. reduce 5
|
|||
|
|
|||
|
|
|||
|
state 30
|
|||
|
string_literal : STRING_LITERAL . (9)
|
|||
|
string_literal : STRING_LITERAL . string_literal (10)
|
|||
|
|
|||
|
STRING_LITERAL shift 30
|
|||
|
INC_OP reduce 9
|
|||
|
DEC_OP reduce 9
|
|||
|
LE_OP reduce 9
|
|||
|
GE_OP reduce 9
|
|||
|
EQ_OP reduce 9
|
|||
|
NE_OP reduce 9
|
|||
|
AND_OP reduce 9
|
|||
|
OR_OP reduce 9
|
|||
|
SEMI_CHR reduce 9
|
|||
|
COMMA_CHR reduce 9
|
|||
|
COLON_CHR reduce 9
|
|||
|
EQ_CHR reduce 9
|
|||
|
CLOSE_PAREN_CHR reduce 9
|
|||
|
OPEN_BRACKET_CHR reduce 9
|
|||
|
CLOSE_BRACKET_CHR reduce 9
|
|||
|
ADD_CHR reduce 9
|
|||
|
SUB_CHR reduce 9
|
|||
|
STAR_CHR reduce 9
|
|||
|
DIV_CHR reduce 9
|
|||
|
MOD_CHR reduce 9
|
|||
|
OPEN_ANGLE_CHR reduce 9
|
|||
|
CLOSE_ANGLE_CHR reduce 9
|
|||
|
QUES_CHR reduce 9
|
|||
|
|
|||
|
string_literal goto 95
|
|||
|
|
|||
|
|
|||
|
state 31
|
|||
|
inc_op : INC_OP . (11)
|
|||
|
|
|||
|
. reduce 11
|
|||
|
|
|||
|
|
|||
|
state 32
|
|||
|
dec_op : DEC_OP . (12)
|
|||
|
|
|||
|
. reduce 12
|
|||
|
|
|||
|
|
|||
|
state 33
|
|||
|
semi_chr : SEMI_CHR . (92)
|
|||
|
|
|||
|
. reduce 92
|
|||
|
|
|||
|
|
|||
|
state 34
|
|||
|
close_brace : CLOSE_BRACE_CHR . (8)
|
|||
|
|
|||
|
. reduce 8
|
|||
|
|
|||
|
|
|||
|
state 35
|
|||
|
primary_expression : OPEN_PAREN_CHR . expression CLOSE_PAREN_CHR (4)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
CONSTANT shift 29
|
|||
|
STRING_LITERAL shift 30
|
|||
|
INC_OP shift 31
|
|||
|
DEC_OP shift 32
|
|||
|
OPEN_PAREN_CHR shift 35
|
|||
|
BANG_CHR shift 36
|
|||
|
TILDE_CHR shift 37
|
|||
|
ADD_CHR shift 38
|
|||
|
SUB_CHR shift 39
|
|||
|
. error
|
|||
|
|
|||
|
primary_expression goto 44
|
|||
|
identifier goto 45
|
|||
|
constant goto 46
|
|||
|
string_literal goto 47
|
|||
|
expression goto 96
|
|||
|
inc_op goto 50
|
|||
|
dec_op goto 51
|
|||
|
postfix_expression goto 52
|
|||
|
assignment_expression goto 53
|
|||
|
unary_expression goto 54
|
|||
|
unary_operator goto 55
|
|||
|
cast_expression goto 56
|
|||
|
add_chr goto 57
|
|||
|
sub_chr goto 58
|
|||
|
bang_chr goto 59
|
|||
|
tilde_chr goto 60
|
|||
|
multiplicative_expression goto 61
|
|||
|
additive_expression goto 62
|
|||
|
shift_expression goto 63
|
|||
|
relational_expression goto 64
|
|||
|
equality_expression goto 65
|
|||
|
and_expression goto 66
|
|||
|
exclusive_or_expression goto 67
|
|||
|
inclusive_or_expression goto 68
|
|||
|
logical_and_expression goto 69
|
|||
|
logical_or_expression goto 70
|
|||
|
conditional_expression goto 71
|
|||
|
|
|||
|
|
|||
|
state 36
|
|||
|
bang_chr : BANG_CHR . (31)
|
|||
|
|
|||
|
. reduce 31
|
|||
|
|
|||
|
|
|||
|
state 37
|
|||
|
tilde_chr : TILDE_CHR . (32)
|
|||
|
|
|||
|
. reduce 32
|
|||
|
|
|||
|
|
|||
|
state 38
|
|||
|
add_chr : ADD_CHR . (29)
|
|||
|
|
|||
|
. reduce 29
|
|||
|
|
|||
|
|
|||
|
state 39
|
|||
|
sub_chr : SUB_CHR . (30)
|
|||
|
|
|||
|
. reduce 30
|
|||
|
|
|||
|
|
|||
|
state 40
|
|||
|
ifkw : IF . (93)
|
|||
|
|
|||
|
. reduce 93
|
|||
|
|
|||
|
|
|||
|
state 41
|
|||
|
whilekw : WHILE . (96)
|
|||
|
|
|||
|
. reduce 96
|
|||
|
|
|||
|
|
|||
|
state 42
|
|||
|
forkw : FOR . (97)
|
|||
|
|
|||
|
. reduce 97
|
|||
|
|
|||
|
|
|||
|
state 43
|
|||
|
return : RETURN . (101)
|
|||
|
|
|||
|
. reduce 101
|
|||
|
|
|||
|
|
|||
|
state 44
|
|||
|
postfix_expression : primary_expression . (13)
|
|||
|
|
|||
|
. reduce 13
|
|||
|
|
|||
|
|
|||
|
state 45
|
|||
|
primary_expression : identifier . (1)
|
|||
|
postfix_expression : identifier . OPEN_PAREN_CHR close_paren (15)
|
|||
|
postfix_expression : identifier . OPEN_PAREN_CHR argument_expression_list close_paren (16)
|
|||
|
|
|||
|
OPEN_PAREN_CHR shift 97
|
|||
|
INC_OP reduce 1
|
|||
|
DEC_OP reduce 1
|
|||
|
LE_OP reduce 1
|
|||
|
GE_OP reduce 1
|
|||
|
EQ_OP reduce 1
|
|||
|
NE_OP reduce 1
|
|||
|
AND_OP reduce 1
|
|||
|
OR_OP reduce 1
|
|||
|
SEMI_CHR reduce 1
|
|||
|
COMMA_CHR reduce 1
|
|||
|
COLON_CHR reduce 1
|
|||
|
EQ_CHR reduce 1
|
|||
|
CLOSE_PAREN_CHR reduce 1
|
|||
|
OPEN_BRACKET_CHR reduce 1
|
|||
|
CLOSE_BRACKET_CHR reduce 1
|
|||
|
ADD_CHR reduce 1
|
|||
|
SUB_CHR reduce 1
|
|||
|
STAR_CHR reduce 1
|
|||
|
DIV_CHR reduce 1
|
|||
|
MOD_CHR reduce 1
|
|||
|
OPEN_ANGLE_CHR reduce 1
|
|||
|
CLOSE_ANGLE_CHR reduce 1
|
|||
|
QUES_CHR reduce 1
|
|||
|
|
|||
|
|
|||
|
state 46
|
|||
|
primary_expression : constant . (2)
|
|||
|
|
|||
|
. reduce 2
|
|||
|
|
|||
|
|
|||
|
state 47
|
|||
|
primary_expression : string_literal . (3)
|
|||
|
|
|||
|
. reduce 3
|
|||
|
|
|||
|
|
|||
|
state 48
|
|||
|
expression : expression . COMMA_CHR assignment_expression (63)
|
|||
|
expression_statement : expression . SEMI_CHR (91)
|
|||
|
|
|||
|
SEMI_CHR shift 98
|
|||
|
COMMA_CHR shift 99
|
|||
|
. error
|
|||
|
|
|||
|
|
|||
|
state 49
|
|||
|
close_block : close_brace . (81)
|
|||
|
|
|||
|
. reduce 81
|
|||
|
|
|||
|
|
|||
|
state 50
|
|||
|
unary_expression : inc_op . unary_expression (22)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
CONSTANT shift 29
|
|||
|
STRING_LITERAL shift 30
|
|||
|
INC_OP shift 31
|
|||
|
DEC_OP shift 32
|
|||
|
OPEN_PAREN_CHR shift 35
|
|||
|
BANG_CHR shift 36
|
|||
|
TILDE_CHR shift 37
|
|||
|
ADD_CHR shift 38
|
|||
|
SUB_CHR shift 39
|
|||
|
. error
|
|||
|
|
|||
|
primary_expression goto 44
|
|||
|
identifier goto 45
|
|||
|
constant goto 46
|
|||
|
string_literal goto 47
|
|||
|
inc_op goto 50
|
|||
|
dec_op goto 51
|
|||
|
postfix_expression goto 52
|
|||
|
unary_expression goto 100
|
|||
|
unary_operator goto 55
|
|||
|
add_chr goto 57
|
|||
|
sub_chr goto 58
|
|||
|
bang_chr goto 59
|
|||
|
tilde_chr goto 60
|
|||
|
|
|||
|
|
|||
|
state 51
|
|||
|
unary_expression : dec_op . unary_expression (23)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
CONSTANT shift 29
|
|||
|
STRING_LITERAL shift 30
|
|||
|
INC_OP shift 31
|
|||
|
DEC_OP shift 32
|
|||
|
OPEN_PAREN_CHR shift 35
|
|||
|
BANG_CHR shift 36
|
|||
|
TILDE_CHR shift 37
|
|||
|
ADD_CHR shift 38
|
|||
|
SUB_CHR shift 39
|
|||
|
. error
|
|||
|
|
|||
|
primary_expression goto 44
|
|||
|
identifier goto 45
|
|||
|
constant goto 46
|
|||
|
string_literal goto 47
|
|||
|
inc_op goto 50
|
|||
|
dec_op goto 51
|
|||
|
postfix_expression goto 52
|
|||
|
unary_expression goto 101
|
|||
|
unary_operator goto 55
|
|||
|
add_chr goto 57
|
|||
|
sub_chr goto 58
|
|||
|
bang_chr goto 59
|
|||
|
tilde_chr goto 60
|
|||
|
|
|||
|
|
|||
|
state 52
|
|||
|
postfix_expression : postfix_expression . OPEN_BRACKET_CHR expression close_bracket (14)
|
|||
|
postfix_expression : postfix_expression . inc_op (17)
|
|||
|
postfix_expression : postfix_expression . dec_op (18)
|
|||
|
unary_expression : postfix_expression . (21)
|
|||
|
|
|||
|
INC_OP shift 31
|
|||
|
DEC_OP shift 32
|
|||
|
OPEN_BRACKET_CHR shift 102
|
|||
|
LE_OP reduce 21
|
|||
|
GE_OP reduce 21
|
|||
|
EQ_OP reduce 21
|
|||
|
NE_OP reduce 21
|
|||
|
AND_OP reduce 21
|
|||
|
OR_OP reduce 21
|
|||
|
SEMI_CHR reduce 21
|
|||
|
COMMA_CHR reduce 21
|
|||
|
COLON_CHR reduce 21
|
|||
|
EQ_CHR reduce 21
|
|||
|
CLOSE_PAREN_CHR reduce 21
|
|||
|
CLOSE_BRACKET_CHR reduce 21
|
|||
|
ADD_CHR reduce 21
|
|||
|
SUB_CHR reduce 21
|
|||
|
STAR_CHR reduce 21
|
|||
|
DIV_CHR reduce 21
|
|||
|
MOD_CHR reduce 21
|
|||
|
OPEN_ANGLE_CHR reduce 21
|
|||
|
CLOSE_ANGLE_CHR reduce 21
|
|||
|
QUES_CHR reduce 21
|
|||
|
|
|||
|
inc_op goto 103
|
|||
|
dec_op goto 104
|
|||
|
|
|||
|
|
|||
|
state 53
|
|||
|
expression : assignment_expression . (62)
|
|||
|
|
|||
|
. reduce 62
|
|||
|
|
|||
|
|
|||
|
state 54
|
|||
|
cast_expression : unary_expression . (34)
|
|||
|
assignment_expression : unary_expression . EQ_CHR assignment_expression (61)
|
|||
|
|
|||
|
EQ_CHR shift 105
|
|||
|
LE_OP reduce 34
|
|||
|
GE_OP reduce 34
|
|||
|
EQ_OP reduce 34
|
|||
|
NE_OP reduce 34
|
|||
|
AND_OP reduce 34
|
|||
|
OR_OP reduce 34
|
|||
|
SEMI_CHR reduce 34
|
|||
|
COMMA_CHR reduce 34
|
|||
|
COLON_CHR reduce 34
|
|||
|
CLOSE_PAREN_CHR reduce 34
|
|||
|
CLOSE_BRACKET_CHR reduce 34
|
|||
|
ADD_CHR reduce 34
|
|||
|
SUB_CHR reduce 34
|
|||
|
STAR_CHR reduce 34
|
|||
|
DIV_CHR reduce 34
|
|||
|
MOD_CHR reduce 34
|
|||
|
OPEN_ANGLE_CHR reduce 34
|
|||
|
CLOSE_ANGLE_CHR reduce 34
|
|||
|
QUES_CHR reduce 34
|
|||
|
|
|||
|
|
|||
|
state 55
|
|||
|
unary_expression : unary_operator . cast_expression (24)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
CONSTANT shift 29
|
|||
|
STRING_LITERAL shift 30
|
|||
|
INC_OP shift 31
|
|||
|
DEC_OP shift 32
|
|||
|
OPEN_PAREN_CHR shift 35
|
|||
|
BANG_CHR shift 36
|
|||
|
TILDE_CHR shift 37
|
|||
|
ADD_CHR shift 38
|
|||
|
SUB_CHR shift 39
|
|||
|
. error
|
|||
|
|
|||
|
primary_expression goto 44
|
|||
|
identifier goto 45
|
|||
|
constant goto 46
|
|||
|
string_literal goto 47
|
|||
|
inc_op goto 50
|
|||
|
dec_op goto 51
|
|||
|
postfix_expression goto 52
|
|||
|
unary_expression goto 106
|
|||
|
unary_operator goto 55
|
|||
|
cast_expression goto 107
|
|||
|
add_chr goto 57
|
|||
|
sub_chr goto 58
|
|||
|
bang_chr goto 59
|
|||
|
tilde_chr goto 60
|
|||
|
|
|||
|
|
|||
|
state 56
|
|||
|
multiplicative_expression : cast_expression . (35)
|
|||
|
|
|||
|
. reduce 35
|
|||
|
|
|||
|
|
|||
|
state 57
|
|||
|
unary_operator : add_chr . (25)
|
|||
|
|
|||
|
. reduce 25
|
|||
|
|
|||
|
|
|||
|
state 58
|
|||
|
unary_operator : sub_chr . (26)
|
|||
|
|
|||
|
. reduce 26
|
|||
|
|
|||
|
|
|||
|
state 59
|
|||
|
unary_operator : bang_chr . (27)
|
|||
|
|
|||
|
. reduce 27
|
|||
|
|
|||
|
|
|||
|
state 60
|
|||
|
unary_operator : tilde_chr . (28)
|
|||
|
|
|||
|
. reduce 28
|
|||
|
|
|||
|
|
|||
|
state 61
|
|||
|
multiplicative_expression : multiplicative_expression . STAR_CHR cast_expression (36)
|
|||
|
multiplicative_expression : multiplicative_expression . DIV_CHR cast_expression (37)
|
|||
|
multiplicative_expression : multiplicative_expression . MOD_CHR cast_expression (38)
|
|||
|
additive_expression : multiplicative_expression . (39)
|
|||
|
|
|||
|
STAR_CHR shift 108
|
|||
|
DIV_CHR shift 109
|
|||
|
MOD_CHR shift 110
|
|||
|
LE_OP reduce 39
|
|||
|
GE_OP reduce 39
|
|||
|
EQ_OP reduce 39
|
|||
|
NE_OP reduce 39
|
|||
|
AND_OP reduce 39
|
|||
|
OR_OP reduce 39
|
|||
|
SEMI_CHR reduce 39
|
|||
|
COMMA_CHR reduce 39
|
|||
|
COLON_CHR reduce 39
|
|||
|
CLOSE_PAREN_CHR reduce 39
|
|||
|
CLOSE_BRACKET_CHR reduce 39
|
|||
|
ADD_CHR reduce 39
|
|||
|
SUB_CHR reduce 39
|
|||
|
OPEN_ANGLE_CHR reduce 39
|
|||
|
CLOSE_ANGLE_CHR reduce 39
|
|||
|
QUES_CHR reduce 39
|
|||
|
|
|||
|
|
|||
|
state 62
|
|||
|
additive_expression : additive_expression . ADD_CHR multiplicative_expression (40)
|
|||
|
additive_expression : additive_expression . SUB_CHR multiplicative_expression (41)
|
|||
|
shift_expression : additive_expression . (42)
|
|||
|
|
|||
|
ADD_CHR shift 111
|
|||
|
SUB_CHR shift 112
|
|||
|
LE_OP reduce 42
|
|||
|
GE_OP reduce 42
|
|||
|
EQ_OP reduce 42
|
|||
|
NE_OP reduce 42
|
|||
|
AND_OP reduce 42
|
|||
|
OR_OP reduce 42
|
|||
|
SEMI_CHR reduce 42
|
|||
|
COMMA_CHR reduce 42
|
|||
|
COLON_CHR reduce 42
|
|||
|
CLOSE_PAREN_CHR reduce 42
|
|||
|
CLOSE_BRACKET_CHR reduce 42
|
|||
|
OPEN_ANGLE_CHR reduce 42
|
|||
|
CLOSE_ANGLE_CHR reduce 42
|
|||
|
QUES_CHR reduce 42
|
|||
|
|
|||
|
|
|||
|
state 63
|
|||
|
relational_expression : shift_expression . (43)
|
|||
|
|
|||
|
. reduce 43
|
|||
|
|
|||
|
|
|||
|
state 64
|
|||
|
relational_expression : relational_expression . OPEN_ANGLE_CHR shift_expression (44)
|
|||
|
relational_expression : relational_expression . CLOSE_ANGLE_CHR shift_expression (45)
|
|||
|
relational_expression : relational_expression . LE_OP shift_expression (46)
|
|||
|
relational_expression : relational_expression . GE_OP shift_expression (47)
|
|||
|
equality_expression : relational_expression . (48)
|
|||
|
|
|||
|
LE_OP shift 113
|
|||
|
GE_OP shift 114
|
|||
|
OPEN_ANGLE_CHR shift 115
|
|||
|
CLOSE_ANGLE_CHR shift 116
|
|||
|
EQ_OP reduce 48
|
|||
|
NE_OP reduce 48
|
|||
|
AND_OP reduce 48
|
|||
|
OR_OP reduce 48
|
|||
|
SEMI_CHR reduce 48
|
|||
|
COMMA_CHR reduce 48
|
|||
|
COLON_CHR reduce 48
|
|||
|
CLOSE_PAREN_CHR reduce 48
|
|||
|
CLOSE_BRACKET_CHR reduce 48
|
|||
|
QUES_CHR reduce 48
|
|||
|
|
|||
|
|
|||
|
state 65
|
|||
|
equality_expression : equality_expression . EQ_OP relational_expression (49)
|
|||
|
equality_expression : equality_expression . NE_OP relational_expression (50)
|
|||
|
and_expression : equality_expression . (51)
|
|||
|
|
|||
|
EQ_OP shift 117
|
|||
|
NE_OP shift 118
|
|||
|
AND_OP reduce 51
|
|||
|
OR_OP reduce 51
|
|||
|
SEMI_CHR reduce 51
|
|||
|
COMMA_CHR reduce 51
|
|||
|
COLON_CHR reduce 51
|
|||
|
CLOSE_PAREN_CHR reduce 51
|
|||
|
CLOSE_BRACKET_CHR reduce 51
|
|||
|
QUES_CHR reduce 51
|
|||
|
|
|||
|
|
|||
|
state 66
|
|||
|
exclusive_or_expression : and_expression . (52)
|
|||
|
|
|||
|
. reduce 52
|
|||
|
|
|||
|
|
|||
|
state 67
|
|||
|
inclusive_or_expression : exclusive_or_expression . (53)
|
|||
|
|
|||
|
. reduce 53
|
|||
|
|
|||
|
|
|||
|
state 68
|
|||
|
logical_and_expression : inclusive_or_expression . (54)
|
|||
|
|
|||
|
. reduce 54
|
|||
|
|
|||
|
|
|||
|
state 69
|
|||
|
logical_and_expression : logical_and_expression . AND_OP inclusive_or_expression (55)
|
|||
|
logical_or_expression : logical_and_expression . (56)
|
|||
|
|
|||
|
AND_OP shift 119
|
|||
|
OR_OP reduce 56
|
|||
|
SEMI_CHR reduce 56
|
|||
|
COMMA_CHR reduce 56
|
|||
|
COLON_CHR reduce 56
|
|||
|
CLOSE_PAREN_CHR reduce 56
|
|||
|
CLOSE_BRACKET_CHR reduce 56
|
|||
|
QUES_CHR reduce 56
|
|||
|
|
|||
|
|
|||
|
state 70
|
|||
|
logical_or_expression : logical_or_expression . OR_OP logical_and_expression (57)
|
|||
|
conditional_expression : logical_or_expression . (58)
|
|||
|
conditional_expression : logical_or_expression . QUES_CHR expression COLON_CHR conditional_expression (59)
|
|||
|
|
|||
|
OR_OP shift 120
|
|||
|
QUES_CHR shift 121
|
|||
|
SEMI_CHR reduce 58
|
|||
|
COMMA_CHR reduce 58
|
|||
|
COLON_CHR reduce 58
|
|||
|
CLOSE_PAREN_CHR reduce 58
|
|||
|
CLOSE_BRACKET_CHR reduce 58
|
|||
|
|
|||
|
|
|||
|
state 71
|
|||
|
assignment_expression : conditional_expression . (60)
|
|||
|
|
|||
|
. reduce 60
|
|||
|
|
|||
|
|
|||
|
state 72
|
|||
|
declaration_list : declaration . (86)
|
|||
|
|
|||
|
. reduce 86
|
|||
|
|
|||
|
|
|||
|
state 73
|
|||
|
declaration : type_specifier . optional_init_declarator_list SEMI_CHR (64)
|
|||
|
type_specifier : type_specifier . STAR_CHR (73)
|
|||
|
optional_init_declarator_list : . (65)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
STAR_CHR shift 15
|
|||
|
SEMI_CHR reduce 65
|
|||
|
|
|||
|
identifier goto 93
|
|||
|
optional_init_declarator_list goto 17
|
|||
|
init_declarator_list goto 18
|
|||
|
init_declarator goto 19
|
|||
|
declarator goto 20
|
|||
|
|
|||
|
|
|||
|
state 74
|
|||
|
statement_list : statement . (88)
|
|||
|
|
|||
|
. reduce 88
|
|||
|
|
|||
|
|
|||
|
state 75
|
|||
|
statement : compound_statement . (75)
|
|||
|
|
|||
|
. reduce 75
|
|||
|
|
|||
|
|
|||
|
state 76
|
|||
|
statement : expression_statement . (76)
|
|||
|
|
|||
|
. reduce 76
|
|||
|
|
|||
|
|
|||
|
state 77
|
|||
|
statement : selection_statement . (77)
|
|||
|
|
|||
|
. reduce 77
|
|||
|
|
|||
|
|
|||
|
state 78
|
|||
|
statement : iteration_statement . (78)
|
|||
|
|
|||
|
. reduce 78
|
|||
|
|
|||
|
|
|||
|
state 79
|
|||
|
statement : jump_statement . (79)
|
|||
|
|
|||
|
. reduce 79
|
|||
|
|
|||
|
|
|||
|
state 80
|
|||
|
compound_statement : open_block close_block . (82)
|
|||
|
|
|||
|
. reduce 82
|
|||
|
|
|||
|
|
|||
|
state 81
|
|||
|
compound_statement : open_block statement_list . close_block (83)
|
|||
|
statement_list : statement_list . statement (89)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
CONSTANT shift 29
|
|||
|
STRING_LITERAL shift 30
|
|||
|
INC_OP shift 31
|
|||
|
DEC_OP shift 32
|
|||
|
SEMI_CHR shift 33
|
|||
|
OPEN_BRACE_CHR shift 21
|
|||
|
CLOSE_BRACE_CHR shift 34
|
|||
|
OPEN_PAREN_CHR shift 35
|
|||
|
BANG_CHR shift 36
|
|||
|
TILDE_CHR shift 37
|
|||
|
ADD_CHR shift 38
|
|||
|
SUB_CHR shift 39
|
|||
|
IF shift 40
|
|||
|
WHILE shift 41
|
|||
|
FOR shift 42
|
|||
|
RETURN shift 43
|
|||
|
. error
|
|||
|
|
|||
|
primary_expression goto 44
|
|||
|
identifier goto 45
|
|||
|
constant goto 46
|
|||
|
string_literal goto 47
|
|||
|
expression goto 48
|
|||
|
open_brace goto 22
|
|||
|
close_brace goto 49
|
|||
|
inc_op goto 50
|
|||
|
dec_op goto 51
|
|||
|
postfix_expression goto 52
|
|||
|
assignment_expression goto 53
|
|||
|
unary_expression goto 54
|
|||
|
unary_operator goto 55
|
|||
|
cast_expression goto 56
|
|||
|
add_chr goto 57
|
|||
|
sub_chr goto 58
|
|||
|
bang_chr goto 59
|
|||
|
tilde_chr goto 60
|
|||
|
multiplicative_expression goto 61
|
|||
|
additive_expression goto 62
|
|||
|
shift_expression goto 63
|
|||
|
relational_expression goto 64
|
|||
|
equality_expression goto 65
|
|||
|
and_expression goto 66
|
|||
|
exclusive_or_expression goto 67
|
|||
|
inclusive_or_expression goto 68
|
|||
|
logical_and_expression goto 69
|
|||
|
logical_or_expression goto 70
|
|||
|
conditional_expression goto 71
|
|||
|
statement goto 122
|
|||
|
compound_statement goto 75
|
|||
|
expression_statement goto 76
|
|||
|
selection_statement goto 77
|
|||
|
iteration_statement goto 78
|
|||
|
jump_statement goto 79
|
|||
|
open_block goto 24
|
|||
|
close_block goto 123
|
|||
|
semi_chr goto 83
|
|||
|
ifkw goto 84
|
|||
|
whilekw goto 85
|
|||
|
forkw goto 86
|
|||
|
return goto 87
|
|||
|
|
|||
|
|
|||
|
state 82
|
|||
|
compound_statement : open_block declaration_list . close_block (84)
|
|||
|
compound_statement : open_block declaration_list . statement_list close_block (85)
|
|||
|
declaration_list : declaration_list . declaration (87)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
CONSTANT shift 29
|
|||
|
STRING_LITERAL shift 30
|
|||
|
INC_OP shift 31
|
|||
|
DEC_OP shift 32
|
|||
|
SEMI_CHR shift 33
|
|||
|
OPEN_BRACE_CHR shift 21
|
|||
|
CLOSE_BRACE_CHR shift 34
|
|||
|
OPEN_PAREN_CHR shift 35
|
|||
|
BANG_CHR shift 36
|
|||
|
TILDE_CHR shift 37
|
|||
|
ADD_CHR shift 38
|
|||
|
SUB_CHR shift 39
|
|||
|
CHAR shift 3
|
|||
|
INTEGER shift 4
|
|||
|
IF shift 40
|
|||
|
WHILE shift 41
|
|||
|
FOR shift 42
|
|||
|
RETURN shift 43
|
|||
|
. error
|
|||
|
|
|||
|
primary_expression goto 44
|
|||
|
identifier goto 45
|
|||
|
constant goto 46
|
|||
|
string_literal goto 47
|
|||
|
expression goto 48
|
|||
|
open_brace goto 22
|
|||
|
close_brace goto 49
|
|||
|
inc_op goto 50
|
|||
|
dec_op goto 51
|
|||
|
postfix_expression goto 52
|
|||
|
assignment_expression goto 53
|
|||
|
unary_expression goto 54
|
|||
|
unary_operator goto 55
|
|||
|
cast_expression goto 56
|
|||
|
add_chr goto 57
|
|||
|
sub_chr goto 58
|
|||
|
bang_chr goto 59
|
|||
|
tilde_chr goto 60
|
|||
|
multiplicative_expression goto 61
|
|||
|
additive_expression goto 62
|
|||
|
shift_expression goto 63
|
|||
|
relational_expression goto 64
|
|||
|
equality_expression goto 65
|
|||
|
and_expression goto 66
|
|||
|
exclusive_or_expression goto 67
|
|||
|
inclusive_or_expression goto 68
|
|||
|
logical_and_expression goto 69
|
|||
|
logical_or_expression goto 70
|
|||
|
conditional_expression goto 71
|
|||
|
declaration goto 124
|
|||
|
type_specifier goto 73
|
|||
|
statement goto 74
|
|||
|
compound_statement goto 75
|
|||
|
expression_statement goto 76
|
|||
|
selection_statement goto 77
|
|||
|
iteration_statement goto 78
|
|||
|
jump_statement goto 79
|
|||
|
open_block goto 24
|
|||
|
close_block goto 125
|
|||
|
statement_list goto 126
|
|||
|
semi_chr goto 83
|
|||
|
ifkw goto 84
|
|||
|
whilekw goto 85
|
|||
|
forkw goto 86
|
|||
|
return goto 87
|
|||
|
|
|||
|
|
|||
|
state 83
|
|||
|
expression_statement : semi_chr . (90)
|
|||
|
|
|||
|
. reduce 90
|
|||
|
|
|||
|
|
|||
|
state 84
|
|||
|
selection_statement : ifkw . OPEN_PAREN_CHR expression CLOSE_PAREN_CHR statement (94)
|
|||
|
selection_statement : ifkw . OPEN_PAREN_CHR expression CLOSE_PAREN_CHR statement ELSE statement (95)
|
|||
|
|
|||
|
OPEN_PAREN_CHR shift 127
|
|||
|
. error
|
|||
|
|
|||
|
|
|||
|
state 85
|
|||
|
iteration_statement : whilekw . OPEN_PAREN_CHR expression close_paren statement (98)
|
|||
|
|
|||
|
OPEN_PAREN_CHR shift 128
|
|||
|
. error
|
|||
|
|
|||
|
|
|||
|
state 86
|
|||
|
iteration_statement : forkw . OPEN_PAREN_CHR expression_statement expression_statement close_paren statement (99)
|
|||
|
iteration_statement : forkw . OPEN_PAREN_CHR expression_statement expression_statement expression close_paren statement (100)
|
|||
|
|
|||
|
OPEN_PAREN_CHR shift 129
|
|||
|
. error
|
|||
|
|
|||
|
|
|||
|
state 87
|
|||
|
jump_statement : return . SEMI_CHR (102)
|
|||
|
jump_statement : return . expression SEMI_CHR (103)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
CONSTANT shift 29
|
|||
|
STRING_LITERAL shift 30
|
|||
|
INC_OP shift 31
|
|||
|
DEC_OP shift 32
|
|||
|
SEMI_CHR shift 130
|
|||
|
OPEN_PAREN_CHR shift 35
|
|||
|
BANG_CHR shift 36
|
|||
|
TILDE_CHR shift 37
|
|||
|
ADD_CHR shift 38
|
|||
|
SUB_CHR shift 39
|
|||
|
. error
|
|||
|
|
|||
|
primary_expression goto 44
|
|||
|
identifier goto 45
|
|||
|
constant goto 46
|
|||
|
string_literal goto 47
|
|||
|
expression goto 131
|
|||
|
inc_op goto 50
|
|||
|
dec_op goto 51
|
|||
|
postfix_expression goto 52
|
|||
|
assignment_expression goto 53
|
|||
|
unary_expression goto 54
|
|||
|
unary_operator goto 55
|
|||
|
cast_expression goto 56
|
|||
|
add_chr goto 57
|
|||
|
sub_chr goto 58
|
|||
|
bang_chr goto 59
|
|||
|
tilde_chr goto 60
|
|||
|
multiplicative_expression goto 61
|
|||
|
additive_expression goto 62
|
|||
|
shift_expression goto 63
|
|||
|
relational_expression goto 64
|
|||
|
equality_expression goto 65
|
|||
|
and_expression goto 66
|
|||
|
exclusive_or_expression goto 67
|
|||
|
inclusive_or_expression goto 68
|
|||
|
logical_and_expression goto 69
|
|||
|
logical_or_expression goto 70
|
|||
|
conditional_expression goto 71
|
|||
|
|
|||
|
|
|||
|
state 88
|
|||
|
parameter_declarator : OPEN_PAREN_CHR CLOSE_PAREN_CHR . (114)
|
|||
|
|
|||
|
. reduce 114
|
|||
|
|
|||
|
|
|||
|
state 89
|
|||
|
type_specifier : type_specifier . STAR_CHR (73)
|
|||
|
parameter_declaration : type_specifier . declarator (109)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
STAR_CHR shift 15
|
|||
|
. error
|
|||
|
|
|||
|
identifier goto 93
|
|||
|
declarator goto 132
|
|||
|
|
|||
|
|
|||
|
state 90
|
|||
|
parameter_list : parameter_declaration . (110)
|
|||
|
|
|||
|
. reduce 110
|
|||
|
|
|||
|
|
|||
|
state 91
|
|||
|
parameter_list : parameter_list . COMMA_CHR parameter_declaration (111)
|
|||
|
parameter_type_list : parameter_list . (112)
|
|||
|
parameter_type_list : parameter_list . COMMA_CHR ELLIPSIS (113)
|
|||
|
|
|||
|
COMMA_CHR shift 133
|
|||
|
CLOSE_PAREN_CHR reduce 112
|
|||
|
|
|||
|
|
|||
|
state 92
|
|||
|
parameter_declarator : OPEN_PAREN_CHR parameter_type_list . CLOSE_PAREN_CHR (115)
|
|||
|
|
|||
|
CLOSE_PAREN_CHR shift 134
|
|||
|
. error
|
|||
|
|
|||
|
|
|||
|
state 93
|
|||
|
declarator : identifier . (70)
|
|||
|
|
|||
|
. reduce 70
|
|||
|
|
|||
|
|
|||
|
state 94
|
|||
|
init_declarator_list : init_declarator_list COMMA_CHR init_declarator . (68)
|
|||
|
|
|||
|
. reduce 68
|
|||
|
|
|||
|
|
|||
|
state 95
|
|||
|
string_literal : STRING_LITERAL string_literal . (10)
|
|||
|
|
|||
|
. reduce 10
|
|||
|
|
|||
|
|
|||
|
state 96
|
|||
|
primary_expression : OPEN_PAREN_CHR expression . CLOSE_PAREN_CHR (4)
|
|||
|
expression : expression . COMMA_CHR assignment_expression (63)
|
|||
|
|
|||
|
COMMA_CHR shift 99
|
|||
|
CLOSE_PAREN_CHR shift 135
|
|||
|
. error
|
|||
|
|
|||
|
|
|||
|
state 97
|
|||
|
postfix_expression : identifier OPEN_PAREN_CHR . close_paren (15)
|
|||
|
postfix_expression : identifier OPEN_PAREN_CHR . argument_expression_list close_paren (16)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
CONSTANT shift 29
|
|||
|
STRING_LITERAL shift 30
|
|||
|
INC_OP shift 31
|
|||
|
DEC_OP shift 32
|
|||
|
OPEN_PAREN_CHR shift 35
|
|||
|
CLOSE_PAREN_CHR shift 136
|
|||
|
BANG_CHR shift 36
|
|||
|
TILDE_CHR shift 37
|
|||
|
ADD_CHR shift 38
|
|||
|
SUB_CHR shift 39
|
|||
|
. error
|
|||
|
|
|||
|
primary_expression goto 44
|
|||
|
identifier goto 45
|
|||
|
constant goto 46
|
|||
|
string_literal goto 47
|
|||
|
inc_op goto 50
|
|||
|
dec_op goto 51
|
|||
|
postfix_expression goto 52
|
|||
|
close_paren goto 137
|
|||
|
argument_expression_list goto 138
|
|||
|
assignment_expression goto 139
|
|||
|
unary_expression goto 54
|
|||
|
unary_operator goto 55
|
|||
|
cast_expression goto 56
|
|||
|
add_chr goto 57
|
|||
|
sub_chr goto 58
|
|||
|
bang_chr goto 59
|
|||
|
tilde_chr goto 60
|
|||
|
multiplicative_expression goto 61
|
|||
|
additive_expression goto 62
|
|||
|
shift_expression goto 63
|
|||
|
relational_expression goto 64
|
|||
|
equality_expression goto 65
|
|||
|
and_expression goto 66
|
|||
|
exclusive_or_expression goto 67
|
|||
|
inclusive_or_expression goto 68
|
|||
|
logical_and_expression goto 69
|
|||
|
logical_or_expression goto 70
|
|||
|
conditional_expression goto 71
|
|||
|
|
|||
|
|
|||
|
state 98
|
|||
|
expression_statement : expression SEMI_CHR . (91)
|
|||
|
|
|||
|
. reduce 91
|
|||
|
|
|||
|
|
|||
|
state 99
|
|||
|
expression : expression COMMA_CHR . assignment_expression (63)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
CONSTANT shift 29
|
|||
|
STRING_LITERAL shift 30
|
|||
|
INC_OP shift 31
|
|||
|
DEC_OP shift 32
|
|||
|
OPEN_PAREN_CHR shift 35
|
|||
|
BANG_CHR shift 36
|
|||
|
TILDE_CHR shift 37
|
|||
|
ADD_CHR shift 38
|
|||
|
SUB_CHR shift 39
|
|||
|
. error
|
|||
|
|
|||
|
primary_expression goto 44
|
|||
|
identifier goto 45
|
|||
|
constant goto 46
|
|||
|
string_literal goto 47
|
|||
|
inc_op goto 50
|
|||
|
dec_op goto 51
|
|||
|
postfix_expression goto 52
|
|||
|
assignment_expression goto 140
|
|||
|
unary_expression goto 54
|
|||
|
unary_operator goto 55
|
|||
|
cast_expression goto 56
|
|||
|
add_chr goto 57
|
|||
|
sub_chr goto 58
|
|||
|
bang_chr goto 59
|
|||
|
tilde_chr goto 60
|
|||
|
multiplicative_expression goto 61
|
|||
|
additive_expression goto 62
|
|||
|
shift_expression goto 63
|
|||
|
relational_expression goto 64
|
|||
|
equality_expression goto 65
|
|||
|
and_expression goto 66
|
|||
|
exclusive_or_expression goto 67
|
|||
|
inclusive_or_expression goto 68
|
|||
|
logical_and_expression goto 69
|
|||
|
logical_or_expression goto 70
|
|||
|
conditional_expression goto 71
|
|||
|
|
|||
|
|
|||
|
state 100
|
|||
|
unary_expression : inc_op unary_expression . (22)
|
|||
|
|
|||
|
. reduce 22
|
|||
|
|
|||
|
|
|||
|
state 101
|
|||
|
unary_expression : dec_op unary_expression . (23)
|
|||
|
|
|||
|
. reduce 23
|
|||
|
|
|||
|
|
|||
|
state 102
|
|||
|
postfix_expression : postfix_expression OPEN_BRACKET_CHR . expression close_bracket (14)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
CONSTANT shift 29
|
|||
|
STRING_LITERAL shift 30
|
|||
|
INC_OP shift 31
|
|||
|
DEC_OP shift 32
|
|||
|
OPEN_PAREN_CHR shift 35
|
|||
|
BANG_CHR shift 36
|
|||
|
TILDE_CHR shift 37
|
|||
|
ADD_CHR shift 38
|
|||
|
SUB_CHR shift 39
|
|||
|
. error
|
|||
|
|
|||
|
primary_expression goto 44
|
|||
|
identifier goto 45
|
|||
|
constant goto 46
|
|||
|
string_literal goto 47
|
|||
|
expression goto 141
|
|||
|
inc_op goto 50
|
|||
|
dec_op goto 51
|
|||
|
postfix_expression goto 52
|
|||
|
assignment_expression goto 53
|
|||
|
unary_expression goto 54
|
|||
|
unary_operator goto 55
|
|||
|
cast_expression goto 56
|
|||
|
add_chr goto 57
|
|||
|
sub_chr goto 58
|
|||
|
bang_chr goto 59
|
|||
|
tilde_chr goto 60
|
|||
|
multiplicative_expression goto 61
|
|||
|
additive_expression goto 62
|
|||
|
shift_expression goto 63
|
|||
|
relational_expression goto 64
|
|||
|
equality_expression goto 65
|
|||
|
and_expression goto 66
|
|||
|
exclusive_or_expression goto 67
|
|||
|
inclusive_or_expression goto 68
|
|||
|
logical_and_expression goto 69
|
|||
|
logical_or_expression goto 70
|
|||
|
conditional_expression goto 71
|
|||
|
|
|||
|
|
|||
|
state 103
|
|||
|
postfix_expression : postfix_expression inc_op . (17)
|
|||
|
|
|||
|
. reduce 17
|
|||
|
|
|||
|
|
|||
|
state 104
|
|||
|
postfix_expression : postfix_expression dec_op . (18)
|
|||
|
|
|||
|
. reduce 18
|
|||
|
|
|||
|
|
|||
|
state 105
|
|||
|
assignment_expression : unary_expression EQ_CHR . assignment_expression (61)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
CONSTANT shift 29
|
|||
|
STRING_LITERAL shift 30
|
|||
|
INC_OP shift 31
|
|||
|
DEC_OP shift 32
|
|||
|
OPEN_PAREN_CHR shift 35
|
|||
|
BANG_CHR shift 36
|
|||
|
TILDE_CHR shift 37
|
|||
|
ADD_CHR shift 38
|
|||
|
SUB_CHR shift 39
|
|||
|
. error
|
|||
|
|
|||
|
primary_expression goto 44
|
|||
|
identifier goto 45
|
|||
|
constant goto 46
|
|||
|
string_literal goto 47
|
|||
|
inc_op goto 50
|
|||
|
dec_op goto 51
|
|||
|
postfix_expression goto 52
|
|||
|
assignment_expression goto 142
|
|||
|
unary_expression goto 54
|
|||
|
unary_operator goto 55
|
|||
|
cast_expression goto 56
|
|||
|
add_chr goto 57
|
|||
|
sub_chr goto 58
|
|||
|
bang_chr goto 59
|
|||
|
tilde_chr goto 60
|
|||
|
multiplicative_expression goto 61
|
|||
|
additive_expression goto 62
|
|||
|
shift_expression goto 63
|
|||
|
relational_expression goto 64
|
|||
|
equality_expression goto 65
|
|||
|
and_expression goto 66
|
|||
|
exclusive_or_expression goto 67
|
|||
|
inclusive_or_expression goto 68
|
|||
|
logical_and_expression goto 69
|
|||
|
logical_or_expression goto 70
|
|||
|
conditional_expression goto 71
|
|||
|
|
|||
|
|
|||
|
state 106
|
|||
|
cast_expression : unary_expression . (34)
|
|||
|
|
|||
|
. reduce 34
|
|||
|
|
|||
|
|
|||
|
state 107
|
|||
|
unary_expression : unary_operator cast_expression . (24)
|
|||
|
|
|||
|
. reduce 24
|
|||
|
|
|||
|
|
|||
|
state 108
|
|||
|
multiplicative_expression : multiplicative_expression STAR_CHR . cast_expression (36)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
CONSTANT shift 29
|
|||
|
STRING_LITERAL shift 30
|
|||
|
INC_OP shift 31
|
|||
|
DEC_OP shift 32
|
|||
|
OPEN_PAREN_CHR shift 35
|
|||
|
BANG_CHR shift 36
|
|||
|
TILDE_CHR shift 37
|
|||
|
ADD_CHR shift 38
|
|||
|
SUB_CHR shift 39
|
|||
|
. error
|
|||
|
|
|||
|
primary_expression goto 44
|
|||
|
identifier goto 45
|
|||
|
constant goto 46
|
|||
|
string_literal goto 47
|
|||
|
inc_op goto 50
|
|||
|
dec_op goto 51
|
|||
|
postfix_expression goto 52
|
|||
|
unary_expression goto 106
|
|||
|
unary_operator goto 55
|
|||
|
cast_expression goto 143
|
|||
|
add_chr goto 57
|
|||
|
sub_chr goto 58
|
|||
|
bang_chr goto 59
|
|||
|
tilde_chr goto 60
|
|||
|
|
|||
|
|
|||
|
state 109
|
|||
|
multiplicative_expression : multiplicative_expression DIV_CHR . cast_expression (37)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
CONSTANT shift 29
|
|||
|
STRING_LITERAL shift 30
|
|||
|
INC_OP shift 31
|
|||
|
DEC_OP shift 32
|
|||
|
OPEN_PAREN_CHR shift 35
|
|||
|
BANG_CHR shift 36
|
|||
|
TILDE_CHR shift 37
|
|||
|
ADD_CHR shift 38
|
|||
|
SUB_CHR shift 39
|
|||
|
. error
|
|||
|
|
|||
|
primary_expression goto 44
|
|||
|
identifier goto 45
|
|||
|
constant goto 46
|
|||
|
string_literal goto 47
|
|||
|
inc_op goto 50
|
|||
|
dec_op goto 51
|
|||
|
postfix_expression goto 52
|
|||
|
unary_expression goto 106
|
|||
|
unary_operator goto 55
|
|||
|
cast_expression goto 144
|
|||
|
add_chr goto 57
|
|||
|
sub_chr goto 58
|
|||
|
bang_chr goto 59
|
|||
|
tilde_chr goto 60
|
|||
|
|
|||
|
|
|||
|
state 110
|
|||
|
multiplicative_expression : multiplicative_expression MOD_CHR . cast_expression (38)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
CONSTANT shift 29
|
|||
|
STRING_LITERAL shift 30
|
|||
|
INC_OP shift 31
|
|||
|
DEC_OP shift 32
|
|||
|
OPEN_PAREN_CHR shift 35
|
|||
|
BANG_CHR shift 36
|
|||
|
TILDE_CHR shift 37
|
|||
|
ADD_CHR shift 38
|
|||
|
SUB_CHR shift 39
|
|||
|
. error
|
|||
|
|
|||
|
primary_expression goto 44
|
|||
|
identifier goto 45
|
|||
|
constant goto 46
|
|||
|
string_literal goto 47
|
|||
|
inc_op goto 50
|
|||
|
dec_op goto 51
|
|||
|
postfix_expression goto 52
|
|||
|
unary_expression goto 106
|
|||
|
unary_operator goto 55
|
|||
|
cast_expression goto 145
|
|||
|
add_chr goto 57
|
|||
|
sub_chr goto 58
|
|||
|
bang_chr goto 59
|
|||
|
tilde_chr goto 60
|
|||
|
|
|||
|
|
|||
|
state 111
|
|||
|
additive_expression : additive_expression ADD_CHR . multiplicative_expression (40)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
CONSTANT shift 29
|
|||
|
STRING_LITERAL shift 30
|
|||
|
INC_OP shift 31
|
|||
|
DEC_OP shift 32
|
|||
|
OPEN_PAREN_CHR shift 35
|
|||
|
BANG_CHR shift 36
|
|||
|
TILDE_CHR shift 37
|
|||
|
ADD_CHR shift 38
|
|||
|
SUB_CHR shift 39
|
|||
|
. error
|
|||
|
|
|||
|
primary_expression goto 44
|
|||
|
identifier goto 45
|
|||
|
constant goto 46
|
|||
|
string_literal goto 47
|
|||
|
inc_op goto 50
|
|||
|
dec_op goto 51
|
|||
|
postfix_expression goto 52
|
|||
|
unary_expression goto 106
|
|||
|
unary_operator goto 55
|
|||
|
cast_expression goto 56
|
|||
|
add_chr goto 57
|
|||
|
sub_chr goto 58
|
|||
|
bang_chr goto 59
|
|||
|
tilde_chr goto 60
|
|||
|
multiplicative_expression goto 146
|
|||
|
|
|||
|
|
|||
|
state 112
|
|||
|
additive_expression : additive_expression SUB_CHR . multiplicative_expression (41)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
CONSTANT shift 29
|
|||
|
STRING_LITERAL shift 30
|
|||
|
INC_OP shift 31
|
|||
|
DEC_OP shift 32
|
|||
|
OPEN_PAREN_CHR shift 35
|
|||
|
BANG_CHR shift 36
|
|||
|
TILDE_CHR shift 37
|
|||
|
ADD_CHR shift 38
|
|||
|
SUB_CHR shift 39
|
|||
|
. error
|
|||
|
|
|||
|
primary_expression goto 44
|
|||
|
identifier goto 45
|
|||
|
constant goto 46
|
|||
|
string_literal goto 47
|
|||
|
inc_op goto 50
|
|||
|
dec_op goto 51
|
|||
|
postfix_expression goto 52
|
|||
|
unary_expression goto 106
|
|||
|
unary_operator goto 55
|
|||
|
cast_expression goto 56
|
|||
|
add_chr goto 57
|
|||
|
sub_chr goto 58
|
|||
|
bang_chr goto 59
|
|||
|
tilde_chr goto 60
|
|||
|
multiplicative_expression goto 147
|
|||
|
|
|||
|
|
|||
|
state 113
|
|||
|
relational_expression : relational_expression LE_OP . shift_expression (46)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
CONSTANT shift 29
|
|||
|
STRING_LITERAL shift 30
|
|||
|
INC_OP shift 31
|
|||
|
DEC_OP shift 32
|
|||
|
OPEN_PAREN_CHR shift 35
|
|||
|
BANG_CHR shift 36
|
|||
|
TILDE_CHR shift 37
|
|||
|
ADD_CHR shift 38
|
|||
|
SUB_CHR shift 39
|
|||
|
. error
|
|||
|
|
|||
|
primary_expression goto 44
|
|||
|
identifier goto 45
|
|||
|
constant goto 46
|
|||
|
string_literal goto 47
|
|||
|
inc_op goto 50
|
|||
|
dec_op goto 51
|
|||
|
postfix_expression goto 52
|
|||
|
unary_expression goto 106
|
|||
|
unary_operator goto 55
|
|||
|
cast_expression goto 56
|
|||
|
add_chr goto 57
|
|||
|
sub_chr goto 58
|
|||
|
bang_chr goto 59
|
|||
|
tilde_chr goto 60
|
|||
|
multiplicative_expression goto 61
|
|||
|
additive_expression goto 62
|
|||
|
shift_expression goto 148
|
|||
|
|
|||
|
|
|||
|
state 114
|
|||
|
relational_expression : relational_expression GE_OP . shift_expression (47)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
CONSTANT shift 29
|
|||
|
STRING_LITERAL shift 30
|
|||
|
INC_OP shift 31
|
|||
|
DEC_OP shift 32
|
|||
|
OPEN_PAREN_CHR shift 35
|
|||
|
BANG_CHR shift 36
|
|||
|
TILDE_CHR shift 37
|
|||
|
ADD_CHR shift 38
|
|||
|
SUB_CHR shift 39
|
|||
|
. error
|
|||
|
|
|||
|
primary_expression goto 44
|
|||
|
identifier goto 45
|
|||
|
constant goto 46
|
|||
|
string_literal goto 47
|
|||
|
inc_op goto 50
|
|||
|
dec_op goto 51
|
|||
|
postfix_expression goto 52
|
|||
|
unary_expression goto 106
|
|||
|
unary_operator goto 55
|
|||
|
cast_expression goto 56
|
|||
|
add_chr goto 57
|
|||
|
sub_chr goto 58
|
|||
|
bang_chr goto 59
|
|||
|
tilde_chr goto 60
|
|||
|
multiplicative_expression goto 61
|
|||
|
additive_expression goto 62
|
|||
|
shift_expression goto 149
|
|||
|
|
|||
|
|
|||
|
state 115
|
|||
|
relational_expression : relational_expression OPEN_ANGLE_CHR . shift_expression (44)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
CONSTANT shift 29
|
|||
|
STRING_LITERAL shift 30
|
|||
|
INC_OP shift 31
|
|||
|
DEC_OP shift 32
|
|||
|
OPEN_PAREN_CHR shift 35
|
|||
|
BANG_CHR shift 36
|
|||
|
TILDE_CHR shift 37
|
|||
|
ADD_CHR shift 38
|
|||
|
SUB_CHR shift 39
|
|||
|
. error
|
|||
|
|
|||
|
primary_expression goto 44
|
|||
|
identifier goto 45
|
|||
|
constant goto 46
|
|||
|
string_literal goto 47
|
|||
|
inc_op goto 50
|
|||
|
dec_op goto 51
|
|||
|
postfix_expression goto 52
|
|||
|
unary_expression goto 106
|
|||
|
unary_operator goto 55
|
|||
|
cast_expression goto 56
|
|||
|
add_chr goto 57
|
|||
|
sub_chr goto 58
|
|||
|
bang_chr goto 59
|
|||
|
tilde_chr goto 60
|
|||
|
multiplicative_expression goto 61
|
|||
|
additive_expression goto 62
|
|||
|
shift_expression goto 150
|
|||
|
|
|||
|
|
|||
|
state 116
|
|||
|
relational_expression : relational_expression CLOSE_ANGLE_CHR . shift_expression (45)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
CONSTANT shift 29
|
|||
|
STRING_LITERAL shift 30
|
|||
|
INC_OP shift 31
|
|||
|
DEC_OP shift 32
|
|||
|
OPEN_PAREN_CHR shift 35
|
|||
|
BANG_CHR shift 36
|
|||
|
TILDE_CHR shift 37
|
|||
|
ADD_CHR shift 38
|
|||
|
SUB_CHR shift 39
|
|||
|
. error
|
|||
|
|
|||
|
primary_expression goto 44
|
|||
|
identifier goto 45
|
|||
|
constant goto 46
|
|||
|
string_literal goto 47
|
|||
|
inc_op goto 50
|
|||
|
dec_op goto 51
|
|||
|
postfix_expression goto 52
|
|||
|
unary_expression goto 106
|
|||
|
unary_operator goto 55
|
|||
|
cast_expression goto 56
|
|||
|
add_chr goto 57
|
|||
|
sub_chr goto 58
|
|||
|
bang_chr goto 59
|
|||
|
tilde_chr goto 60
|
|||
|
multiplicative_expression goto 61
|
|||
|
additive_expression goto 62
|
|||
|
shift_expression goto 151
|
|||
|
|
|||
|
|
|||
|
state 117
|
|||
|
equality_expression : equality_expression EQ_OP . relational_expression (49)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
CONSTANT shift 29
|
|||
|
STRING_LITERAL shift 30
|
|||
|
INC_OP shift 31
|
|||
|
DEC_OP shift 32
|
|||
|
OPEN_PAREN_CHR shift 35
|
|||
|
BANG_CHR shift 36
|
|||
|
TILDE_CHR shift 37
|
|||
|
ADD_CHR shift 38
|
|||
|
SUB_CHR shift 39
|
|||
|
. error
|
|||
|
|
|||
|
primary_expression goto 44
|
|||
|
identifier goto 45
|
|||
|
constant goto 46
|
|||
|
string_literal goto 47
|
|||
|
inc_op goto 50
|
|||
|
dec_op goto 51
|
|||
|
postfix_expression goto 52
|
|||
|
unary_expression goto 106
|
|||
|
unary_operator goto 55
|
|||
|
cast_expression goto 56
|
|||
|
add_chr goto 57
|
|||
|
sub_chr goto 58
|
|||
|
bang_chr goto 59
|
|||
|
tilde_chr goto 60
|
|||
|
multiplicative_expression goto 61
|
|||
|
additive_expression goto 62
|
|||
|
shift_expression goto 63
|
|||
|
relational_expression goto 152
|
|||
|
|
|||
|
|
|||
|
state 118
|
|||
|
equality_expression : equality_expression NE_OP . relational_expression (50)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
CONSTANT shift 29
|
|||
|
STRING_LITERAL shift 30
|
|||
|
INC_OP shift 31
|
|||
|
DEC_OP shift 32
|
|||
|
OPEN_PAREN_CHR shift 35
|
|||
|
BANG_CHR shift 36
|
|||
|
TILDE_CHR shift 37
|
|||
|
ADD_CHR shift 38
|
|||
|
SUB_CHR shift 39
|
|||
|
. error
|
|||
|
|
|||
|
primary_expression goto 44
|
|||
|
identifier goto 45
|
|||
|
constant goto 46
|
|||
|
string_literal goto 47
|
|||
|
inc_op goto 50
|
|||
|
dec_op goto 51
|
|||
|
postfix_expression goto 52
|
|||
|
unary_expression goto 106
|
|||
|
unary_operator goto 55
|
|||
|
cast_expression goto 56
|
|||
|
add_chr goto 57
|
|||
|
sub_chr goto 58
|
|||
|
bang_chr goto 59
|
|||
|
tilde_chr goto 60
|
|||
|
multiplicative_expression goto 61
|
|||
|
additive_expression goto 62
|
|||
|
shift_expression goto 63
|
|||
|
relational_expression goto 153
|
|||
|
|
|||
|
|
|||
|
state 119
|
|||
|
logical_and_expression : logical_and_expression AND_OP . inclusive_or_expression (55)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
CONSTANT shift 29
|
|||
|
STRING_LITERAL shift 30
|
|||
|
INC_OP shift 31
|
|||
|
DEC_OP shift 32
|
|||
|
OPEN_PAREN_CHR shift 35
|
|||
|
BANG_CHR shift 36
|
|||
|
TILDE_CHR shift 37
|
|||
|
ADD_CHR shift 38
|
|||
|
SUB_CHR shift 39
|
|||
|
. error
|
|||
|
|
|||
|
primary_expression goto 44
|
|||
|
identifier goto 45
|
|||
|
constant goto 46
|
|||
|
string_literal goto 47
|
|||
|
inc_op goto 50
|
|||
|
dec_op goto 51
|
|||
|
postfix_expression goto 52
|
|||
|
unary_expression goto 106
|
|||
|
unary_operator goto 55
|
|||
|
cast_expression goto 56
|
|||
|
add_chr goto 57
|
|||
|
sub_chr goto 58
|
|||
|
bang_chr goto 59
|
|||
|
tilde_chr goto 60
|
|||
|
multiplicative_expression goto 61
|
|||
|
additive_expression goto 62
|
|||
|
shift_expression goto 63
|
|||
|
relational_expression goto 64
|
|||
|
equality_expression goto 65
|
|||
|
and_expression goto 66
|
|||
|
exclusive_or_expression goto 67
|
|||
|
inclusive_or_expression goto 154
|
|||
|
|
|||
|
|
|||
|
state 120
|
|||
|
logical_or_expression : logical_or_expression OR_OP . logical_and_expression (57)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
CONSTANT shift 29
|
|||
|
STRING_LITERAL shift 30
|
|||
|
INC_OP shift 31
|
|||
|
DEC_OP shift 32
|
|||
|
OPEN_PAREN_CHR shift 35
|
|||
|
BANG_CHR shift 36
|
|||
|
TILDE_CHR shift 37
|
|||
|
ADD_CHR shift 38
|
|||
|
SUB_CHR shift 39
|
|||
|
. error
|
|||
|
|
|||
|
primary_expression goto 44
|
|||
|
identifier goto 45
|
|||
|
constant goto 46
|
|||
|
string_literal goto 47
|
|||
|
inc_op goto 50
|
|||
|
dec_op goto 51
|
|||
|
postfix_expression goto 52
|
|||
|
unary_expression goto 106
|
|||
|
unary_operator goto 55
|
|||
|
cast_expression goto 56
|
|||
|
add_chr goto 57
|
|||
|
sub_chr goto 58
|
|||
|
bang_chr goto 59
|
|||
|
tilde_chr goto 60
|
|||
|
multiplicative_expression goto 61
|
|||
|
additive_expression goto 62
|
|||
|
shift_expression goto 63
|
|||
|
relational_expression goto 64
|
|||
|
equality_expression goto 65
|
|||
|
and_expression goto 66
|
|||
|
exclusive_or_expression goto 67
|
|||
|
inclusive_or_expression goto 68
|
|||
|
logical_and_expression goto 155
|
|||
|
|
|||
|
|
|||
|
state 121
|
|||
|
conditional_expression : logical_or_expression QUES_CHR . expression COLON_CHR conditional_expression (59)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
CONSTANT shift 29
|
|||
|
STRING_LITERAL shift 30
|
|||
|
INC_OP shift 31
|
|||
|
DEC_OP shift 32
|
|||
|
OPEN_PAREN_CHR shift 35
|
|||
|
BANG_CHR shift 36
|
|||
|
TILDE_CHR shift 37
|
|||
|
ADD_CHR shift 38
|
|||
|
SUB_CHR shift 39
|
|||
|
. error
|
|||
|
|
|||
|
primary_expression goto 44
|
|||
|
identifier goto 45
|
|||
|
constant goto 46
|
|||
|
string_literal goto 47
|
|||
|
expression goto 156
|
|||
|
inc_op goto 50
|
|||
|
dec_op goto 51
|
|||
|
postfix_expression goto 52
|
|||
|
assignment_expression goto 53
|
|||
|
unary_expression goto 54
|
|||
|
unary_operator goto 55
|
|||
|
cast_expression goto 56
|
|||
|
add_chr goto 57
|
|||
|
sub_chr goto 58
|
|||
|
bang_chr goto 59
|
|||
|
tilde_chr goto 60
|
|||
|
multiplicative_expression goto 61
|
|||
|
additive_expression goto 62
|
|||
|
shift_expression goto 63
|
|||
|
relational_expression goto 64
|
|||
|
equality_expression goto 65
|
|||
|
and_expression goto 66
|
|||
|
exclusive_or_expression goto 67
|
|||
|
inclusive_or_expression goto 68
|
|||
|
logical_and_expression goto 69
|
|||
|
logical_or_expression goto 70
|
|||
|
conditional_expression goto 71
|
|||
|
|
|||
|
|
|||
|
state 122
|
|||
|
statement_list : statement_list statement . (89)
|
|||
|
|
|||
|
. reduce 89
|
|||
|
|
|||
|
|
|||
|
state 123
|
|||
|
compound_statement : open_block statement_list close_block . (83)
|
|||
|
|
|||
|
. reduce 83
|
|||
|
|
|||
|
|
|||
|
state 124
|
|||
|
declaration_list : declaration_list declaration . (87)
|
|||
|
|
|||
|
. reduce 87
|
|||
|
|
|||
|
|
|||
|
state 125
|
|||
|
compound_statement : open_block declaration_list close_block . (84)
|
|||
|
|
|||
|
. reduce 84
|
|||
|
|
|||
|
|
|||
|
state 126
|
|||
|
compound_statement : open_block declaration_list statement_list . close_block (85)
|
|||
|
statement_list : statement_list . statement (89)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
CONSTANT shift 29
|
|||
|
STRING_LITERAL shift 30
|
|||
|
INC_OP shift 31
|
|||
|
DEC_OP shift 32
|
|||
|
SEMI_CHR shift 33
|
|||
|
OPEN_BRACE_CHR shift 21
|
|||
|
CLOSE_BRACE_CHR shift 34
|
|||
|
OPEN_PAREN_CHR shift 35
|
|||
|
BANG_CHR shift 36
|
|||
|
TILDE_CHR shift 37
|
|||
|
ADD_CHR shift 38
|
|||
|
SUB_CHR shift 39
|
|||
|
IF shift 40
|
|||
|
WHILE shift 41
|
|||
|
FOR shift 42
|
|||
|
RETURN shift 43
|
|||
|
. error
|
|||
|
|
|||
|
primary_expression goto 44
|
|||
|
identifier goto 45
|
|||
|
constant goto 46
|
|||
|
string_literal goto 47
|
|||
|
expression goto 48
|
|||
|
open_brace goto 22
|
|||
|
close_brace goto 49
|
|||
|
inc_op goto 50
|
|||
|
dec_op goto 51
|
|||
|
postfix_expression goto 52
|
|||
|
assignment_expression goto 53
|
|||
|
unary_expression goto 54
|
|||
|
unary_operator goto 55
|
|||
|
cast_expression goto 56
|
|||
|
add_chr goto 57
|
|||
|
sub_chr goto 58
|
|||
|
bang_chr goto 59
|
|||
|
tilde_chr goto 60
|
|||
|
multiplicative_expression goto 61
|
|||
|
additive_expression goto 62
|
|||
|
shift_expression goto 63
|
|||
|
relational_expression goto 64
|
|||
|
equality_expression goto 65
|
|||
|
and_expression goto 66
|
|||
|
exclusive_or_expression goto 67
|
|||
|
inclusive_or_expression goto 68
|
|||
|
logical_and_expression goto 69
|
|||
|
logical_or_expression goto 70
|
|||
|
conditional_expression goto 71
|
|||
|
statement goto 122
|
|||
|
compound_statement goto 75
|
|||
|
expression_statement goto 76
|
|||
|
selection_statement goto 77
|
|||
|
iteration_statement goto 78
|
|||
|
jump_statement goto 79
|
|||
|
open_block goto 24
|
|||
|
close_block goto 157
|
|||
|
semi_chr goto 83
|
|||
|
ifkw goto 84
|
|||
|
whilekw goto 85
|
|||
|
forkw goto 86
|
|||
|
return goto 87
|
|||
|
|
|||
|
|
|||
|
state 127
|
|||
|
selection_statement : ifkw OPEN_PAREN_CHR . expression CLOSE_PAREN_CHR statement (94)
|
|||
|
selection_statement : ifkw OPEN_PAREN_CHR . expression CLOSE_PAREN_CHR statement ELSE statement (95)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
CONSTANT shift 29
|
|||
|
STRING_LITERAL shift 30
|
|||
|
INC_OP shift 31
|
|||
|
DEC_OP shift 32
|
|||
|
OPEN_PAREN_CHR shift 35
|
|||
|
BANG_CHR shift 36
|
|||
|
TILDE_CHR shift 37
|
|||
|
ADD_CHR shift 38
|
|||
|
SUB_CHR shift 39
|
|||
|
. error
|
|||
|
|
|||
|
primary_expression goto 44
|
|||
|
identifier goto 45
|
|||
|
constant goto 46
|
|||
|
string_literal goto 47
|
|||
|
expression goto 158
|
|||
|
inc_op goto 50
|
|||
|
dec_op goto 51
|
|||
|
postfix_expression goto 52
|
|||
|
assignment_expression goto 53
|
|||
|
unary_expression goto 54
|
|||
|
unary_operator goto 55
|
|||
|
cast_expression goto 56
|
|||
|
add_chr goto 57
|
|||
|
sub_chr goto 58
|
|||
|
bang_chr goto 59
|
|||
|
tilde_chr goto 60
|
|||
|
multiplicative_expression goto 61
|
|||
|
additive_expression goto 62
|
|||
|
shift_expression goto 63
|
|||
|
relational_expression goto 64
|
|||
|
equality_expression goto 65
|
|||
|
and_expression goto 66
|
|||
|
exclusive_or_expression goto 67
|
|||
|
inclusive_or_expression goto 68
|
|||
|
logical_and_expression goto 69
|
|||
|
logical_or_expression goto 70
|
|||
|
conditional_expression goto 71
|
|||
|
|
|||
|
|
|||
|
state 128
|
|||
|
iteration_statement : whilekw OPEN_PAREN_CHR . expression close_paren statement (98)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
CONSTANT shift 29
|
|||
|
STRING_LITERAL shift 30
|
|||
|
INC_OP shift 31
|
|||
|
DEC_OP shift 32
|
|||
|
OPEN_PAREN_CHR shift 35
|
|||
|
BANG_CHR shift 36
|
|||
|
TILDE_CHR shift 37
|
|||
|
ADD_CHR shift 38
|
|||
|
SUB_CHR shift 39
|
|||
|
. error
|
|||
|
|
|||
|
primary_expression goto 44
|
|||
|
identifier goto 45
|
|||
|
constant goto 46
|
|||
|
string_literal goto 47
|
|||
|
expression goto 159
|
|||
|
inc_op goto 50
|
|||
|
dec_op goto 51
|
|||
|
postfix_expression goto 52
|
|||
|
assignment_expression goto 53
|
|||
|
unary_expression goto 54
|
|||
|
unary_operator goto 55
|
|||
|
cast_expression goto 56
|
|||
|
add_chr goto 57
|
|||
|
sub_chr goto 58
|
|||
|
bang_chr goto 59
|
|||
|
tilde_chr goto 60
|
|||
|
multiplicative_expression goto 61
|
|||
|
additive_expression goto 62
|
|||
|
shift_expression goto 63
|
|||
|
relational_expression goto 64
|
|||
|
equality_expression goto 65
|
|||
|
and_expression goto 66
|
|||
|
exclusive_or_expression goto 67
|
|||
|
inclusive_or_expression goto 68
|
|||
|
logical_and_expression goto 69
|
|||
|
logical_or_expression goto 70
|
|||
|
conditional_expression goto 71
|
|||
|
|
|||
|
|
|||
|
state 129
|
|||
|
iteration_statement : forkw OPEN_PAREN_CHR . expression_statement expression_statement close_paren statement (99)
|
|||
|
iteration_statement : forkw OPEN_PAREN_CHR . expression_statement expression_statement expression close_paren statement (100)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
CONSTANT shift 29
|
|||
|
STRING_LITERAL shift 30
|
|||
|
INC_OP shift 31
|
|||
|
DEC_OP shift 32
|
|||
|
SEMI_CHR shift 33
|
|||
|
OPEN_PAREN_CHR shift 35
|
|||
|
BANG_CHR shift 36
|
|||
|
TILDE_CHR shift 37
|
|||
|
ADD_CHR shift 38
|
|||
|
SUB_CHR shift 39
|
|||
|
. error
|
|||
|
|
|||
|
primary_expression goto 44
|
|||
|
identifier goto 45
|
|||
|
constant goto 46
|
|||
|
string_literal goto 47
|
|||
|
expression goto 48
|
|||
|
inc_op goto 50
|
|||
|
dec_op goto 51
|
|||
|
postfix_expression goto 52
|
|||
|
assignment_expression goto 53
|
|||
|
unary_expression goto 54
|
|||
|
unary_operator goto 55
|
|||
|
cast_expression goto 56
|
|||
|
add_chr goto 57
|
|||
|
sub_chr goto 58
|
|||
|
bang_chr goto 59
|
|||
|
tilde_chr goto 60
|
|||
|
multiplicative_expression goto 61
|
|||
|
additive_expression goto 62
|
|||
|
shift_expression goto 63
|
|||
|
relational_expression goto 64
|
|||
|
equality_expression goto 65
|
|||
|
and_expression goto 66
|
|||
|
exclusive_or_expression goto 67
|
|||
|
inclusive_or_expression goto 68
|
|||
|
logical_and_expression goto 69
|
|||
|
logical_or_expression goto 70
|
|||
|
conditional_expression goto 71
|
|||
|
expression_statement goto 160
|
|||
|
semi_chr goto 83
|
|||
|
|
|||
|
|
|||
|
state 130
|
|||
|
jump_statement : return SEMI_CHR . (102)
|
|||
|
|
|||
|
. reduce 102
|
|||
|
|
|||
|
|
|||
|
state 131
|
|||
|
expression : expression . COMMA_CHR assignment_expression (63)
|
|||
|
jump_statement : return expression . SEMI_CHR (103)
|
|||
|
|
|||
|
SEMI_CHR shift 161
|
|||
|
COMMA_CHR shift 99
|
|||
|
. error
|
|||
|
|
|||
|
|
|||
|
state 132
|
|||
|
parameter_declaration : type_specifier declarator . (109)
|
|||
|
|
|||
|
. reduce 109
|
|||
|
|
|||
|
|
|||
|
state 133
|
|||
|
parameter_list : parameter_list COMMA_CHR . parameter_declaration (111)
|
|||
|
parameter_type_list : parameter_list COMMA_CHR . ELLIPSIS (113)
|
|||
|
|
|||
|
CHAR shift 3
|
|||
|
INTEGER shift 4
|
|||
|
ELLIPSIS shift 162
|
|||
|
. error
|
|||
|
|
|||
|
type_specifier goto 89
|
|||
|
parameter_declaration goto 163
|
|||
|
|
|||
|
|
|||
|
state 134
|
|||
|
parameter_declarator : OPEN_PAREN_CHR parameter_type_list CLOSE_PAREN_CHR . (115)
|
|||
|
|
|||
|
. reduce 115
|
|||
|
|
|||
|
|
|||
|
state 135
|
|||
|
primary_expression : OPEN_PAREN_CHR expression CLOSE_PAREN_CHR . (4)
|
|||
|
|
|||
|
. reduce 4
|
|||
|
|
|||
|
|
|||
|
state 136
|
|||
|
close_paren : CLOSE_PAREN_CHR . (33)
|
|||
|
|
|||
|
. reduce 33
|
|||
|
|
|||
|
|
|||
|
state 137
|
|||
|
postfix_expression : identifier OPEN_PAREN_CHR close_paren . (15)
|
|||
|
|
|||
|
. reduce 15
|
|||
|
|
|||
|
|
|||
|
state 138
|
|||
|
postfix_expression : identifier OPEN_PAREN_CHR argument_expression_list . close_paren (16)
|
|||
|
argument_expression_list : argument_expression_list . COMMA_CHR assignment_expression (20)
|
|||
|
|
|||
|
COMMA_CHR shift 164
|
|||
|
CLOSE_PAREN_CHR shift 136
|
|||
|
. error
|
|||
|
|
|||
|
close_paren goto 165
|
|||
|
|
|||
|
|
|||
|
state 139
|
|||
|
argument_expression_list : assignment_expression . (19)
|
|||
|
|
|||
|
. reduce 19
|
|||
|
|
|||
|
|
|||
|
state 140
|
|||
|
expression : expression COMMA_CHR assignment_expression . (63)
|
|||
|
|
|||
|
. reduce 63
|
|||
|
|
|||
|
|
|||
|
state 141
|
|||
|
postfix_expression : postfix_expression OPEN_BRACKET_CHR expression . close_bracket (14)
|
|||
|
expression : expression . COMMA_CHR assignment_expression (63)
|
|||
|
|
|||
|
COMMA_CHR shift 99
|
|||
|
CLOSE_BRACKET_CHR shift 166
|
|||
|
. error
|
|||
|
|
|||
|
close_bracket goto 167
|
|||
|
|
|||
|
|
|||
|
state 142
|
|||
|
assignment_expression : unary_expression EQ_CHR assignment_expression . (61)
|
|||
|
|
|||
|
. reduce 61
|
|||
|
|
|||
|
|
|||
|
state 143
|
|||
|
multiplicative_expression : multiplicative_expression STAR_CHR cast_expression . (36)
|
|||
|
|
|||
|
. reduce 36
|
|||
|
|
|||
|
|
|||
|
state 144
|
|||
|
multiplicative_expression : multiplicative_expression DIV_CHR cast_expression . (37)
|
|||
|
|
|||
|
. reduce 37
|
|||
|
|
|||
|
|
|||
|
state 145
|
|||
|
multiplicative_expression : multiplicative_expression MOD_CHR cast_expression . (38)
|
|||
|
|
|||
|
. reduce 38
|
|||
|
|
|||
|
|
|||
|
state 146
|
|||
|
multiplicative_expression : multiplicative_expression . STAR_CHR cast_expression (36)
|
|||
|
multiplicative_expression : multiplicative_expression . DIV_CHR cast_expression (37)
|
|||
|
multiplicative_expression : multiplicative_expression . MOD_CHR cast_expression (38)
|
|||
|
additive_expression : additive_expression ADD_CHR multiplicative_expression . (40)
|
|||
|
|
|||
|
STAR_CHR shift 108
|
|||
|
DIV_CHR shift 109
|
|||
|
MOD_CHR shift 110
|
|||
|
LE_OP reduce 40
|
|||
|
GE_OP reduce 40
|
|||
|
EQ_OP reduce 40
|
|||
|
NE_OP reduce 40
|
|||
|
AND_OP reduce 40
|
|||
|
OR_OP reduce 40
|
|||
|
SEMI_CHR reduce 40
|
|||
|
COMMA_CHR reduce 40
|
|||
|
COLON_CHR reduce 40
|
|||
|
CLOSE_PAREN_CHR reduce 40
|
|||
|
CLOSE_BRACKET_CHR reduce 40
|
|||
|
ADD_CHR reduce 40
|
|||
|
SUB_CHR reduce 40
|
|||
|
OPEN_ANGLE_CHR reduce 40
|
|||
|
CLOSE_ANGLE_CHR reduce 40
|
|||
|
QUES_CHR reduce 40
|
|||
|
|
|||
|
|
|||
|
state 147
|
|||
|
multiplicative_expression : multiplicative_expression . STAR_CHR cast_expression (36)
|
|||
|
multiplicative_expression : multiplicative_expression . DIV_CHR cast_expression (37)
|
|||
|
multiplicative_expression : multiplicative_expression . MOD_CHR cast_expression (38)
|
|||
|
additive_expression : additive_expression SUB_CHR multiplicative_expression . (41)
|
|||
|
|
|||
|
STAR_CHR shift 108
|
|||
|
DIV_CHR shift 109
|
|||
|
MOD_CHR shift 110
|
|||
|
LE_OP reduce 41
|
|||
|
GE_OP reduce 41
|
|||
|
EQ_OP reduce 41
|
|||
|
NE_OP reduce 41
|
|||
|
AND_OP reduce 41
|
|||
|
OR_OP reduce 41
|
|||
|
SEMI_CHR reduce 41
|
|||
|
COMMA_CHR reduce 41
|
|||
|
COLON_CHR reduce 41
|
|||
|
CLOSE_PAREN_CHR reduce 41
|
|||
|
CLOSE_BRACKET_CHR reduce 41
|
|||
|
ADD_CHR reduce 41
|
|||
|
SUB_CHR reduce 41
|
|||
|
OPEN_ANGLE_CHR reduce 41
|
|||
|
CLOSE_ANGLE_CHR reduce 41
|
|||
|
QUES_CHR reduce 41
|
|||
|
|
|||
|
|
|||
|
state 148
|
|||
|
relational_expression : relational_expression LE_OP shift_expression . (46)
|
|||
|
|
|||
|
. reduce 46
|
|||
|
|
|||
|
|
|||
|
state 149
|
|||
|
relational_expression : relational_expression GE_OP shift_expression . (47)
|
|||
|
|
|||
|
. reduce 47
|
|||
|
|
|||
|
|
|||
|
state 150
|
|||
|
relational_expression : relational_expression OPEN_ANGLE_CHR shift_expression . (44)
|
|||
|
|
|||
|
. reduce 44
|
|||
|
|
|||
|
|
|||
|
state 151
|
|||
|
relational_expression : relational_expression CLOSE_ANGLE_CHR shift_expression . (45)
|
|||
|
|
|||
|
. reduce 45
|
|||
|
|
|||
|
|
|||
|
state 152
|
|||
|
relational_expression : relational_expression . OPEN_ANGLE_CHR shift_expression (44)
|
|||
|
relational_expression : relational_expression . CLOSE_ANGLE_CHR shift_expression (45)
|
|||
|
relational_expression : relational_expression . LE_OP shift_expression (46)
|
|||
|
relational_expression : relational_expression . GE_OP shift_expression (47)
|
|||
|
equality_expression : equality_expression EQ_OP relational_expression . (49)
|
|||
|
|
|||
|
LE_OP shift 113
|
|||
|
GE_OP shift 114
|
|||
|
OPEN_ANGLE_CHR shift 115
|
|||
|
CLOSE_ANGLE_CHR shift 116
|
|||
|
EQ_OP reduce 49
|
|||
|
NE_OP reduce 49
|
|||
|
AND_OP reduce 49
|
|||
|
OR_OP reduce 49
|
|||
|
SEMI_CHR reduce 49
|
|||
|
COMMA_CHR reduce 49
|
|||
|
COLON_CHR reduce 49
|
|||
|
CLOSE_PAREN_CHR reduce 49
|
|||
|
CLOSE_BRACKET_CHR reduce 49
|
|||
|
QUES_CHR reduce 49
|
|||
|
|
|||
|
|
|||
|
state 153
|
|||
|
relational_expression : relational_expression . OPEN_ANGLE_CHR shift_expression (44)
|
|||
|
relational_expression : relational_expression . CLOSE_ANGLE_CHR shift_expression (45)
|
|||
|
relational_expression : relational_expression . LE_OP shift_expression (46)
|
|||
|
relational_expression : relational_expression . GE_OP shift_expression (47)
|
|||
|
equality_expression : equality_expression NE_OP relational_expression . (50)
|
|||
|
|
|||
|
LE_OP shift 113
|
|||
|
GE_OP shift 114
|
|||
|
OPEN_ANGLE_CHR shift 115
|
|||
|
CLOSE_ANGLE_CHR shift 116
|
|||
|
EQ_OP reduce 50
|
|||
|
NE_OP reduce 50
|
|||
|
AND_OP reduce 50
|
|||
|
OR_OP reduce 50
|
|||
|
SEMI_CHR reduce 50
|
|||
|
COMMA_CHR reduce 50
|
|||
|
COLON_CHR reduce 50
|
|||
|
CLOSE_PAREN_CHR reduce 50
|
|||
|
CLOSE_BRACKET_CHR reduce 50
|
|||
|
QUES_CHR reduce 50
|
|||
|
|
|||
|
|
|||
|
state 154
|
|||
|
logical_and_expression : logical_and_expression AND_OP inclusive_or_expression . (55)
|
|||
|
|
|||
|
. reduce 55
|
|||
|
|
|||
|
|
|||
|
state 155
|
|||
|
logical_and_expression : logical_and_expression . AND_OP inclusive_or_expression (55)
|
|||
|
logical_or_expression : logical_or_expression OR_OP logical_and_expression . (57)
|
|||
|
|
|||
|
AND_OP shift 119
|
|||
|
OR_OP reduce 57
|
|||
|
SEMI_CHR reduce 57
|
|||
|
COMMA_CHR reduce 57
|
|||
|
COLON_CHR reduce 57
|
|||
|
CLOSE_PAREN_CHR reduce 57
|
|||
|
CLOSE_BRACKET_CHR reduce 57
|
|||
|
QUES_CHR reduce 57
|
|||
|
|
|||
|
|
|||
|
state 156
|
|||
|
conditional_expression : logical_or_expression QUES_CHR expression . COLON_CHR conditional_expression (59)
|
|||
|
expression : expression . COMMA_CHR assignment_expression (63)
|
|||
|
|
|||
|
COMMA_CHR shift 99
|
|||
|
COLON_CHR shift 168
|
|||
|
. error
|
|||
|
|
|||
|
|
|||
|
state 157
|
|||
|
compound_statement : open_block declaration_list statement_list close_block . (85)
|
|||
|
|
|||
|
. reduce 85
|
|||
|
|
|||
|
|
|||
|
state 158
|
|||
|
expression : expression . COMMA_CHR assignment_expression (63)
|
|||
|
selection_statement : ifkw OPEN_PAREN_CHR expression . CLOSE_PAREN_CHR statement (94)
|
|||
|
selection_statement : ifkw OPEN_PAREN_CHR expression . CLOSE_PAREN_CHR statement ELSE statement (95)
|
|||
|
|
|||
|
COMMA_CHR shift 99
|
|||
|
CLOSE_PAREN_CHR shift 169
|
|||
|
. error
|
|||
|
|
|||
|
|
|||
|
state 159
|
|||
|
expression : expression . COMMA_CHR assignment_expression (63)
|
|||
|
iteration_statement : whilekw OPEN_PAREN_CHR expression . close_paren statement (98)
|
|||
|
|
|||
|
COMMA_CHR shift 99
|
|||
|
CLOSE_PAREN_CHR shift 136
|
|||
|
. error
|
|||
|
|
|||
|
close_paren goto 170
|
|||
|
|
|||
|
|
|||
|
state 160
|
|||
|
iteration_statement : forkw OPEN_PAREN_CHR expression_statement . expression_statement close_paren statement (99)
|
|||
|
iteration_statement : forkw OPEN_PAREN_CHR expression_statement . expression_statement expression close_paren statement (100)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
CONSTANT shift 29
|
|||
|
STRING_LITERAL shift 30
|
|||
|
INC_OP shift 31
|
|||
|
DEC_OP shift 32
|
|||
|
SEMI_CHR shift 33
|
|||
|
OPEN_PAREN_CHR shift 35
|
|||
|
BANG_CHR shift 36
|
|||
|
TILDE_CHR shift 37
|
|||
|
ADD_CHR shift 38
|
|||
|
SUB_CHR shift 39
|
|||
|
. error
|
|||
|
|
|||
|
primary_expression goto 44
|
|||
|
identifier goto 45
|
|||
|
constant goto 46
|
|||
|
string_literal goto 47
|
|||
|
expression goto 48
|
|||
|
inc_op goto 50
|
|||
|
dec_op goto 51
|
|||
|
postfix_expression goto 52
|
|||
|
assignment_expression goto 53
|
|||
|
unary_expression goto 54
|
|||
|
unary_operator goto 55
|
|||
|
cast_expression goto 56
|
|||
|
add_chr goto 57
|
|||
|
sub_chr goto 58
|
|||
|
bang_chr goto 59
|
|||
|
tilde_chr goto 60
|
|||
|
multiplicative_expression goto 61
|
|||
|
additive_expression goto 62
|
|||
|
shift_expression goto 63
|
|||
|
relational_expression goto 64
|
|||
|
equality_expression goto 65
|
|||
|
and_expression goto 66
|
|||
|
exclusive_or_expression goto 67
|
|||
|
inclusive_or_expression goto 68
|
|||
|
logical_and_expression goto 69
|
|||
|
logical_or_expression goto 70
|
|||
|
conditional_expression goto 71
|
|||
|
expression_statement goto 171
|
|||
|
semi_chr goto 83
|
|||
|
|
|||
|
|
|||
|
state 161
|
|||
|
jump_statement : return expression SEMI_CHR . (103)
|
|||
|
|
|||
|
. reduce 103
|
|||
|
|
|||
|
|
|||
|
state 162
|
|||
|
parameter_type_list : parameter_list COMMA_CHR ELLIPSIS . (113)
|
|||
|
|
|||
|
. reduce 113
|
|||
|
|
|||
|
|
|||
|
state 163
|
|||
|
parameter_list : parameter_list COMMA_CHR parameter_declaration . (111)
|
|||
|
|
|||
|
. reduce 111
|
|||
|
|
|||
|
|
|||
|
state 164
|
|||
|
argument_expression_list : argument_expression_list COMMA_CHR . assignment_expression (20)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
CONSTANT shift 29
|
|||
|
STRING_LITERAL shift 30
|
|||
|
INC_OP shift 31
|
|||
|
DEC_OP shift 32
|
|||
|
OPEN_PAREN_CHR shift 35
|
|||
|
BANG_CHR shift 36
|
|||
|
TILDE_CHR shift 37
|
|||
|
ADD_CHR shift 38
|
|||
|
SUB_CHR shift 39
|
|||
|
. error
|
|||
|
|
|||
|
primary_expression goto 44
|
|||
|
identifier goto 45
|
|||
|
constant goto 46
|
|||
|
string_literal goto 47
|
|||
|
inc_op goto 50
|
|||
|
dec_op goto 51
|
|||
|
postfix_expression goto 52
|
|||
|
assignment_expression goto 172
|
|||
|
unary_expression goto 54
|
|||
|
unary_operator goto 55
|
|||
|
cast_expression goto 56
|
|||
|
add_chr goto 57
|
|||
|
sub_chr goto 58
|
|||
|
bang_chr goto 59
|
|||
|
tilde_chr goto 60
|
|||
|
multiplicative_expression goto 61
|
|||
|
additive_expression goto 62
|
|||
|
shift_expression goto 63
|
|||
|
relational_expression goto 64
|
|||
|
equality_expression goto 65
|
|||
|
and_expression goto 66
|
|||
|
exclusive_or_expression goto 67
|
|||
|
inclusive_or_expression goto 68
|
|||
|
logical_and_expression goto 69
|
|||
|
logical_or_expression goto 70
|
|||
|
conditional_expression goto 71
|
|||
|
|
|||
|
|
|||
|
state 165
|
|||
|
postfix_expression : identifier OPEN_PAREN_CHR argument_expression_list close_paren . (16)
|
|||
|
|
|||
|
. reduce 16
|
|||
|
|
|||
|
|
|||
|
state 166
|
|||
|
close_bracket : CLOSE_BRACKET_CHR . (74)
|
|||
|
|
|||
|
. reduce 74
|
|||
|
|
|||
|
|
|||
|
state 167
|
|||
|
postfix_expression : postfix_expression OPEN_BRACKET_CHR expression close_bracket . (14)
|
|||
|
|
|||
|
. reduce 14
|
|||
|
|
|||
|
|
|||
|
state 168
|
|||
|
conditional_expression : logical_or_expression QUES_CHR expression COLON_CHR . conditional_expression (59)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
CONSTANT shift 29
|
|||
|
STRING_LITERAL shift 30
|
|||
|
INC_OP shift 31
|
|||
|
DEC_OP shift 32
|
|||
|
OPEN_PAREN_CHR shift 35
|
|||
|
BANG_CHR shift 36
|
|||
|
TILDE_CHR shift 37
|
|||
|
ADD_CHR shift 38
|
|||
|
SUB_CHR shift 39
|
|||
|
. error
|
|||
|
|
|||
|
primary_expression goto 44
|
|||
|
identifier goto 45
|
|||
|
constant goto 46
|
|||
|
string_literal goto 47
|
|||
|
inc_op goto 50
|
|||
|
dec_op goto 51
|
|||
|
postfix_expression goto 52
|
|||
|
unary_expression goto 106
|
|||
|
unary_operator goto 55
|
|||
|
cast_expression goto 56
|
|||
|
add_chr goto 57
|
|||
|
sub_chr goto 58
|
|||
|
bang_chr goto 59
|
|||
|
tilde_chr goto 60
|
|||
|
multiplicative_expression goto 61
|
|||
|
additive_expression goto 62
|
|||
|
shift_expression goto 63
|
|||
|
relational_expression goto 64
|
|||
|
equality_expression goto 65
|
|||
|
and_expression goto 66
|
|||
|
exclusive_or_expression goto 67
|
|||
|
inclusive_or_expression goto 68
|
|||
|
logical_and_expression goto 69
|
|||
|
logical_or_expression goto 70
|
|||
|
conditional_expression goto 173
|
|||
|
|
|||
|
|
|||
|
state 169
|
|||
|
selection_statement : ifkw OPEN_PAREN_CHR expression CLOSE_PAREN_CHR . statement (94)
|
|||
|
selection_statement : ifkw OPEN_PAREN_CHR expression CLOSE_PAREN_CHR . statement ELSE statement (95)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
CONSTANT shift 29
|
|||
|
STRING_LITERAL shift 30
|
|||
|
INC_OP shift 31
|
|||
|
DEC_OP shift 32
|
|||
|
SEMI_CHR shift 33
|
|||
|
OPEN_BRACE_CHR shift 21
|
|||
|
OPEN_PAREN_CHR shift 35
|
|||
|
BANG_CHR shift 36
|
|||
|
TILDE_CHR shift 37
|
|||
|
ADD_CHR shift 38
|
|||
|
SUB_CHR shift 39
|
|||
|
IF shift 40
|
|||
|
WHILE shift 41
|
|||
|
FOR shift 42
|
|||
|
RETURN shift 43
|
|||
|
. error
|
|||
|
|
|||
|
primary_expression goto 44
|
|||
|
identifier goto 45
|
|||
|
constant goto 46
|
|||
|
string_literal goto 47
|
|||
|
expression goto 48
|
|||
|
open_brace goto 22
|
|||
|
inc_op goto 50
|
|||
|
dec_op goto 51
|
|||
|
postfix_expression goto 52
|
|||
|
assignment_expression goto 53
|
|||
|
unary_expression goto 54
|
|||
|
unary_operator goto 55
|
|||
|
cast_expression goto 56
|
|||
|
add_chr goto 57
|
|||
|
sub_chr goto 58
|
|||
|
bang_chr goto 59
|
|||
|
tilde_chr goto 60
|
|||
|
multiplicative_expression goto 61
|
|||
|
additive_expression goto 62
|
|||
|
shift_expression goto 63
|
|||
|
relational_expression goto 64
|
|||
|
equality_expression goto 65
|
|||
|
and_expression goto 66
|
|||
|
exclusive_or_expression goto 67
|
|||
|
inclusive_or_expression goto 68
|
|||
|
logical_and_expression goto 69
|
|||
|
logical_or_expression goto 70
|
|||
|
conditional_expression goto 71
|
|||
|
statement goto 174
|
|||
|
compound_statement goto 75
|
|||
|
expression_statement goto 76
|
|||
|
selection_statement goto 77
|
|||
|
iteration_statement goto 78
|
|||
|
jump_statement goto 79
|
|||
|
open_block goto 24
|
|||
|
semi_chr goto 83
|
|||
|
ifkw goto 84
|
|||
|
whilekw goto 85
|
|||
|
forkw goto 86
|
|||
|
return goto 87
|
|||
|
|
|||
|
|
|||
|
state 170
|
|||
|
iteration_statement : whilekw OPEN_PAREN_CHR expression close_paren . statement (98)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
CONSTANT shift 29
|
|||
|
STRING_LITERAL shift 30
|
|||
|
INC_OP shift 31
|
|||
|
DEC_OP shift 32
|
|||
|
SEMI_CHR shift 33
|
|||
|
OPEN_BRACE_CHR shift 21
|
|||
|
OPEN_PAREN_CHR shift 35
|
|||
|
BANG_CHR shift 36
|
|||
|
TILDE_CHR shift 37
|
|||
|
ADD_CHR shift 38
|
|||
|
SUB_CHR shift 39
|
|||
|
IF shift 40
|
|||
|
WHILE shift 41
|
|||
|
FOR shift 42
|
|||
|
RETURN shift 43
|
|||
|
. error
|
|||
|
|
|||
|
primary_expression goto 44
|
|||
|
identifier goto 45
|
|||
|
constant goto 46
|
|||
|
string_literal goto 47
|
|||
|
expression goto 48
|
|||
|
open_brace goto 22
|
|||
|
inc_op goto 50
|
|||
|
dec_op goto 51
|
|||
|
postfix_expression goto 52
|
|||
|
assignment_expression goto 53
|
|||
|
unary_expression goto 54
|
|||
|
unary_operator goto 55
|
|||
|
cast_expression goto 56
|
|||
|
add_chr goto 57
|
|||
|
sub_chr goto 58
|
|||
|
bang_chr goto 59
|
|||
|
tilde_chr goto 60
|
|||
|
multiplicative_expression goto 61
|
|||
|
additive_expression goto 62
|
|||
|
shift_expression goto 63
|
|||
|
relational_expression goto 64
|
|||
|
equality_expression goto 65
|
|||
|
and_expression goto 66
|
|||
|
exclusive_or_expression goto 67
|
|||
|
inclusive_or_expression goto 68
|
|||
|
logical_and_expression goto 69
|
|||
|
logical_or_expression goto 70
|
|||
|
conditional_expression goto 71
|
|||
|
statement goto 175
|
|||
|
compound_statement goto 75
|
|||
|
expression_statement goto 76
|
|||
|
selection_statement goto 77
|
|||
|
iteration_statement goto 78
|
|||
|
jump_statement goto 79
|
|||
|
open_block goto 24
|
|||
|
semi_chr goto 83
|
|||
|
ifkw goto 84
|
|||
|
whilekw goto 85
|
|||
|
forkw goto 86
|
|||
|
return goto 87
|
|||
|
|
|||
|
|
|||
|
state 171
|
|||
|
iteration_statement : forkw OPEN_PAREN_CHR expression_statement expression_statement . close_paren statement (99)
|
|||
|
iteration_statement : forkw OPEN_PAREN_CHR expression_statement expression_statement . expression close_paren statement (100)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
CONSTANT shift 29
|
|||
|
STRING_LITERAL shift 30
|
|||
|
INC_OP shift 31
|
|||
|
DEC_OP shift 32
|
|||
|
OPEN_PAREN_CHR shift 35
|
|||
|
CLOSE_PAREN_CHR shift 136
|
|||
|
BANG_CHR shift 36
|
|||
|
TILDE_CHR shift 37
|
|||
|
ADD_CHR shift 38
|
|||
|
SUB_CHR shift 39
|
|||
|
. error
|
|||
|
|
|||
|
primary_expression goto 44
|
|||
|
identifier goto 45
|
|||
|
constant goto 46
|
|||
|
string_literal goto 47
|
|||
|
expression goto 176
|
|||
|
inc_op goto 50
|
|||
|
dec_op goto 51
|
|||
|
postfix_expression goto 52
|
|||
|
close_paren goto 177
|
|||
|
assignment_expression goto 53
|
|||
|
unary_expression goto 54
|
|||
|
unary_operator goto 55
|
|||
|
cast_expression goto 56
|
|||
|
add_chr goto 57
|
|||
|
sub_chr goto 58
|
|||
|
bang_chr goto 59
|
|||
|
tilde_chr goto 60
|
|||
|
multiplicative_expression goto 61
|
|||
|
additive_expression goto 62
|
|||
|
shift_expression goto 63
|
|||
|
relational_expression goto 64
|
|||
|
equality_expression goto 65
|
|||
|
and_expression goto 66
|
|||
|
exclusive_or_expression goto 67
|
|||
|
inclusive_or_expression goto 68
|
|||
|
logical_and_expression goto 69
|
|||
|
logical_or_expression goto 70
|
|||
|
conditional_expression goto 71
|
|||
|
|
|||
|
|
|||
|
state 172
|
|||
|
argument_expression_list : argument_expression_list COMMA_CHR assignment_expression . (20)
|
|||
|
|
|||
|
. reduce 20
|
|||
|
|
|||
|
|
|||
|
state 173
|
|||
|
conditional_expression : logical_or_expression QUES_CHR expression COLON_CHR conditional_expression . (59)
|
|||
|
|
|||
|
. reduce 59
|
|||
|
|
|||
|
|
|||
|
174: shift/reduce conflict (shift 178, reduce 94) on ELSE
|
|||
|
state 174
|
|||
|
selection_statement : ifkw OPEN_PAREN_CHR expression CLOSE_PAREN_CHR statement . (94)
|
|||
|
selection_statement : ifkw OPEN_PAREN_CHR expression CLOSE_PAREN_CHR statement . ELSE statement (95)
|
|||
|
|
|||
|
ELSE shift 178
|
|||
|
IDENTIFIER reduce 94
|
|||
|
CONSTANT reduce 94
|
|||
|
STRING_LITERAL reduce 94
|
|||
|
INC_OP reduce 94
|
|||
|
DEC_OP reduce 94
|
|||
|
SEMI_CHR reduce 94
|
|||
|
OPEN_BRACE_CHR reduce 94
|
|||
|
CLOSE_BRACE_CHR reduce 94
|
|||
|
OPEN_PAREN_CHR reduce 94
|
|||
|
BANG_CHR reduce 94
|
|||
|
TILDE_CHR reduce 94
|
|||
|
ADD_CHR reduce 94
|
|||
|
SUB_CHR reduce 94
|
|||
|
IF reduce 94
|
|||
|
WHILE reduce 94
|
|||
|
FOR reduce 94
|
|||
|
RETURN reduce 94
|
|||
|
|
|||
|
|
|||
|
state 175
|
|||
|
iteration_statement : whilekw OPEN_PAREN_CHR expression close_paren statement . (98)
|
|||
|
|
|||
|
. reduce 98
|
|||
|
|
|||
|
|
|||
|
state 176
|
|||
|
expression : expression . COMMA_CHR assignment_expression (63)
|
|||
|
iteration_statement : forkw OPEN_PAREN_CHR expression_statement expression_statement expression . close_paren statement (100)
|
|||
|
|
|||
|
COMMA_CHR shift 99
|
|||
|
CLOSE_PAREN_CHR shift 136
|
|||
|
. error
|
|||
|
|
|||
|
close_paren goto 179
|
|||
|
|
|||
|
|
|||
|
state 177
|
|||
|
iteration_statement : forkw OPEN_PAREN_CHR expression_statement expression_statement close_paren . statement (99)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
CONSTANT shift 29
|
|||
|
STRING_LITERAL shift 30
|
|||
|
INC_OP shift 31
|
|||
|
DEC_OP shift 32
|
|||
|
SEMI_CHR shift 33
|
|||
|
OPEN_BRACE_CHR shift 21
|
|||
|
OPEN_PAREN_CHR shift 35
|
|||
|
BANG_CHR shift 36
|
|||
|
TILDE_CHR shift 37
|
|||
|
ADD_CHR shift 38
|
|||
|
SUB_CHR shift 39
|
|||
|
IF shift 40
|
|||
|
WHILE shift 41
|
|||
|
FOR shift 42
|
|||
|
RETURN shift 43
|
|||
|
. error
|
|||
|
|
|||
|
primary_expression goto 44
|
|||
|
identifier goto 45
|
|||
|
constant goto 46
|
|||
|
string_literal goto 47
|
|||
|
expression goto 48
|
|||
|
open_brace goto 22
|
|||
|
inc_op goto 50
|
|||
|
dec_op goto 51
|
|||
|
postfix_expression goto 52
|
|||
|
assignment_expression goto 53
|
|||
|
unary_expression goto 54
|
|||
|
unary_operator goto 55
|
|||
|
cast_expression goto 56
|
|||
|
add_chr goto 57
|
|||
|
sub_chr goto 58
|
|||
|
bang_chr goto 59
|
|||
|
tilde_chr goto 60
|
|||
|
multiplicative_expression goto 61
|
|||
|
additive_expression goto 62
|
|||
|
shift_expression goto 63
|
|||
|
relational_expression goto 64
|
|||
|
equality_expression goto 65
|
|||
|
and_expression goto 66
|
|||
|
exclusive_or_expression goto 67
|
|||
|
inclusive_or_expression goto 68
|
|||
|
logical_and_expression goto 69
|
|||
|
logical_or_expression goto 70
|
|||
|
conditional_expression goto 71
|
|||
|
statement goto 180
|
|||
|
compound_statement goto 75
|
|||
|
expression_statement goto 76
|
|||
|
selection_statement goto 77
|
|||
|
iteration_statement goto 78
|
|||
|
jump_statement goto 79
|
|||
|
open_block goto 24
|
|||
|
semi_chr goto 83
|
|||
|
ifkw goto 84
|
|||
|
whilekw goto 85
|
|||
|
forkw goto 86
|
|||
|
return goto 87
|
|||
|
|
|||
|
|
|||
|
state 178
|
|||
|
selection_statement : ifkw OPEN_PAREN_CHR expression CLOSE_PAREN_CHR statement ELSE . statement (95)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
CONSTANT shift 29
|
|||
|
STRING_LITERAL shift 30
|
|||
|
INC_OP shift 31
|
|||
|
DEC_OP shift 32
|
|||
|
SEMI_CHR shift 33
|
|||
|
OPEN_BRACE_CHR shift 21
|
|||
|
OPEN_PAREN_CHR shift 35
|
|||
|
BANG_CHR shift 36
|
|||
|
TILDE_CHR shift 37
|
|||
|
ADD_CHR shift 38
|
|||
|
SUB_CHR shift 39
|
|||
|
IF shift 40
|
|||
|
WHILE shift 41
|
|||
|
FOR shift 42
|
|||
|
RETURN shift 43
|
|||
|
. error
|
|||
|
|
|||
|
primary_expression goto 44
|
|||
|
identifier goto 45
|
|||
|
constant goto 46
|
|||
|
string_literal goto 47
|
|||
|
expression goto 48
|
|||
|
open_brace goto 22
|
|||
|
inc_op goto 50
|
|||
|
dec_op goto 51
|
|||
|
postfix_expression goto 52
|
|||
|
assignment_expression goto 53
|
|||
|
unary_expression goto 54
|
|||
|
unary_operator goto 55
|
|||
|
cast_expression goto 56
|
|||
|
add_chr goto 57
|
|||
|
sub_chr goto 58
|
|||
|
bang_chr goto 59
|
|||
|
tilde_chr goto 60
|
|||
|
multiplicative_expression goto 61
|
|||
|
additive_expression goto 62
|
|||
|
shift_expression goto 63
|
|||
|
relational_expression goto 64
|
|||
|
equality_expression goto 65
|
|||
|
and_expression goto 66
|
|||
|
exclusive_or_expression goto 67
|
|||
|
inclusive_or_expression goto 68
|
|||
|
logical_and_expression goto 69
|
|||
|
logical_or_expression goto 70
|
|||
|
conditional_expression goto 71
|
|||
|
statement goto 181
|
|||
|
compound_statement goto 75
|
|||
|
expression_statement goto 76
|
|||
|
selection_statement goto 77
|
|||
|
iteration_statement goto 78
|
|||
|
jump_statement goto 79
|
|||
|
open_block goto 24
|
|||
|
semi_chr goto 83
|
|||
|
ifkw goto 84
|
|||
|
whilekw goto 85
|
|||
|
forkw goto 86
|
|||
|
return goto 87
|
|||
|
|
|||
|
|
|||
|
state 179
|
|||
|
iteration_statement : forkw OPEN_PAREN_CHR expression_statement expression_statement expression close_paren . statement (100)
|
|||
|
|
|||
|
IDENTIFIER shift 14
|
|||
|
CONSTANT shift 29
|
|||
|
STRING_LITERAL shift 30
|
|||
|
INC_OP shift 31
|
|||
|
DEC_OP shift 32
|
|||
|
SEMI_CHR shift 33
|
|||
|
OPEN_BRACE_CHR shift 21
|
|||
|
OPEN_PAREN_CHR shift 35
|
|||
|
BANG_CHR shift 36
|
|||
|
TILDE_CHR shift 37
|
|||
|
ADD_CHR shift 38
|
|||
|
SUB_CHR shift 39
|
|||
|
IF shift 40
|
|||
|
WHILE shift 41
|
|||
|
FOR shift 42
|
|||
|
RETURN shift 43
|
|||
|
. error
|
|||
|
|
|||
|
primary_expression goto 44
|
|||
|
identifier goto 45
|
|||
|
constant goto 46
|
|||
|
string_literal goto 47
|
|||
|
expression goto 48
|
|||
|
open_brace goto 22
|
|||
|
inc_op goto 50
|
|||
|
dec_op goto 51
|
|||
|
postfix_expression goto 52
|
|||
|
assignment_expression goto 53
|
|||
|
unary_expression goto 54
|
|||
|
unary_operator goto 55
|
|||
|
cast_expression goto 56
|
|||
|
add_chr goto 57
|
|||
|
sub_chr goto 58
|
|||
|
bang_chr goto 59
|
|||
|
tilde_chr goto 60
|
|||
|
multiplicative_expression goto 61
|
|||
|
additive_expression goto 62
|
|||
|
shift_expression goto 63
|
|||
|
relational_expression goto 64
|
|||
|
equality_expression goto 65
|
|||
|
and_expression goto 66
|
|||
|
exclusive_or_expression goto 67
|
|||
|
inclusive_or_expression goto 68
|
|||
|
logical_and_expression goto 69
|
|||
|
logical_or_expression goto 70
|
|||
|
conditional_expression goto 71
|
|||
|
statement goto 182
|
|||
|
compound_statement goto 75
|
|||
|
expression_statement goto 76
|
|||
|
selection_statement goto 77
|
|||
|
iteration_statement goto 78
|
|||
|
jump_statement goto 79
|
|||
|
open_block goto 24
|
|||
|
semi_chr goto 83
|
|||
|
ifkw goto 84
|
|||
|
whilekw goto 85
|
|||
|
forkw goto 86
|
|||
|
return goto 87
|
|||
|
|
|||
|
|
|||
|
state 180
|
|||
|
iteration_statement : forkw OPEN_PAREN_CHR expression_statement expression_statement close_paren statement . (99)
|
|||
|
|
|||
|
. reduce 99
|
|||
|
|
|||
|
|
|||
|
state 181
|
|||
|
selection_statement : ifkw OPEN_PAREN_CHR expression CLOSE_PAREN_CHR statement ELSE statement . (95)
|
|||
|
|
|||
|
. reduce 95
|
|||
|
|
|||
|
|
|||
|
state 182
|
|||
|
iteration_statement : forkw OPEN_PAREN_CHR expression_statement expression_statement expression close_paren statement . (100)
|
|||
|
|
|||
|
. reduce 100
|
|||
|
|
|||
|
|
|||
|
State 174 contains 1 shift/reduce conflict.
|
|||
|
|
|||
|
|
|||
|
87 terminals, 63 nonterminals
|
|||
|
119 grammar rules, 183 states
|