+
+state 0
+ $accept : _goal $end
+
+ YPROG shift 3
+ . error
+
+
+state 1
+ $accept : goal_$end
+
+ $end accept
+ . error
+
+
+state 2
+ goal : prog_hedr_decls procs block .
+
+ . reduce 7
+
+
+state 3
+ prog_hedr : YPROG_YID ( id_list ) ;
+ prog_hedr : YPROG_error
+
+ error shift 6
+ YID shift 5
+ . error
+
+
+state 4
+ goal : prog_hedr decls_procs block .
+ decls : decls_decl
+ decls : decls_error
+
+ error shift 9
+ YBEGIN reduce 27
+ YCONST shift 15
+ YFUNCTION reduce 27
+ YLABEL shift 14
+ YPROCEDURE reduce 27
+ YTYPE shift 16
+ YVAR shift 17
+ . error
+
+
+state 5
+ prog_hedr : YPROG YID_( id_list ) ;
+
+ ( shift 18
+ . error
+
+
+state 6
+ prog_hedr : YPROG error_
+
+ . reduce 3
+
+
+state 7
+ goal : prog_hedr decls procs_block .
+ procs : procs_proc
+
+ YBEGIN shift 21
+ YFUNCTION shift 26
+ YPROCEDURE shift 25
+ . error
+
+
+state 8
+ decls : decls decl_
+
+ . reduce 5
+
+
+state 9
+ decls : decls error_
+
+ . reduce 6
+
+
+state 10
+ decl : labels_
+
+ . reduce 8
+
+
+11: shift/reduce conflict (shift 28, red'n 9) on error
+state 11
+ decl : const_decl_
+ const_decl : const_decl_YID = const ;
+ const_decl : const_decl_error
+
+ error shift 28
+ YBEGIN reduce 9
+ YCONST reduce 9
+ YFUNCTION reduce 9
+ YID shift 27
+ YLABEL reduce 9
+ YPROCEDURE reduce 9
+ YTYPE reduce 9
+ YVAR reduce 9
+ . error
+
+
+12: shift/reduce conflict (shift 30, red'n 10) on error
+state 12
+ decl : type_decl_
+ type_decl : type_decl_YID = type ;
+ type_decl : type_decl_error
+
+ error shift 30
+ YBEGIN reduce 10
+ YCONST reduce 10
+ YFUNCTION reduce 10
+ YID shift 29
+ YLABEL reduce 10
+ YPROCEDURE reduce 10
+ YTYPE reduce 10
+ YVAR reduce 10
+ . error
+
+
+13: shift/reduce conflict (shift 32, red'n 11) on error
+state 13
+ decl : var_decl_
+ var_decl : var_decl_id_list : type ;
+ var_decl : var_decl_error
+
+ error shift 32
+ YBEGIN reduce 11
+ YCONST reduce 11
+ YFUNCTION reduce 11
+ YID shift 33
+ YLABEL reduce 11
+ YPROCEDURE reduce 11
+ YTYPE reduce 11
+ YVAR reduce 11
+ . error
+
+
+state 14
+ labels : YLABEL_label_decl ;
+
+ YINT shift 35
+ . error
+
+
+state 15
+ const_decl : YCONST_YID = const ;
+ const_decl : YCONST_error
+
+ error shift 37
+ YID shift 36
+ . error
+
+
+state 16
+ type_decl : YTYPE_YID = type ;
+ type_decl : YTYPE_error
+
+ error shift 39
+ YID shift 38
+ . error
+
+
+state 17
+ var_decl : YVAR_id_list : type ;
+ var_decl : YVAR_error
+
+ error shift 41
+ YID shift 33
+ . error
+
+
+state 18
+ prog_hedr : YPROG YID (_id_list ) ;
+
+ YID shift 33
+ . error
+
+
+state 19
+ goal : prog_hedr decls procs block_.
+
+ . shift 43
+ . error
+
+
+state 20
+ procs : procs proc_
+
+ . reduce 28
+
+
+state 21
+ block : YBEGIN_stat_list YEND
+
+ error shift 60
+ YBEGIN shift 51
+ YCASE shift 52
+ YEND reduce 93
+ YFOR shift 56
+ YGOTO shift 57
+ YID shift 49
+ YIF shift 58
+ YINT shift 47
+ YREPEAT shift 55
+ YWHILE shift 54
+ YWITH shift 53
+ YASSERT shift 59
+ ; reduce 93
+ . error
+
+
+state 22
+ proc : phead_YFORWARD ;
+ pheadres : phead_
+
+ YFORWARD shift 66
+ . reduce 31
+
+
+state 23
+ proc : pheadres_decls procs block ;
+
+ same as 2
+
+
+state 24
+ phead : porf_YID params ftype ;
+
+ YID shift 68
+ . error
+
+
+state 25
+ porf : YPROCEDURE_
+
+ . reduce 33
+
+
+state 26
+ porf : YFUNCTION_
+
+ . reduce 34
+
+
+state 27
+ const_decl : const_decl YID_= const ;
+
+ = shift 69
+ . error
+
+
+state 28
+ const_decl : const_decl error_
+
+ . reduce 18
+
+
+state 29
+ type_decl : type_decl YID_= type ;
+
+ = shift 70
+ . error
+
+
+state 30
+ type_decl : type_decl error_
+
+ . reduce 22
+
+
+state 31
+ var_decl : var_decl id_list_: type ;
+ id_list : id_list_, YID
+
+ , shift 72
+ : shift 71
+ . error
+
+
+state 32
+ var_decl : var_decl error_
+
+ . reduce 26
+
+
+state 33
+ id_list : YID_
+
+ . reduce 173
+
+
+state 34
+ labels : YLABEL label_decl_;
+ label_decl : label_decl_, YINT
+
+ ; shift 73
+ , shift 74
+ . error
+
+
+state 35
+ label_decl : YINT_
+
+ . reduce 13
+
+
+state 36
+ const_decl : YCONST YID_= const ;
+
+ = shift 75
+ . error
+
+
+state 37
+ const_decl : YCONST error_
+
+ . reduce 17
+
+
+state 38
+ type_decl : YTYPE YID_= type ;
+
+ = shift 76
+ . error
+
+
+state 39
+ type_decl : YTYPE error_
+
+ . reduce 21
+
+
+state 40
+ var_decl : YVAR id_list_: type ;
+ id_list : id_list_, YID
+
+ , shift 72
+ : shift 77
+ . error
+
+
+state 41
+ var_decl : YVAR error_
+
+ . reduce 25
+
+
+state 42
+ prog_hedr : YPROG YID ( id_list_) ;
+ id_list : id_list_, YID
+
+ ) shift 78
+ , shift 72
+ . error
+
+
+state 43
+ goal : prog_hedr decls procs block ._
+
+ . reduce 1
+
+
+state 44
+ block : YBEGIN stat_list_YEND
+ stat_lsth : stat_list_;
+
+ YEND shift 79
+ ; shift 80
+ . error
+
+
+state 45
+ stat_list : stat_
+
+ . reduce 83
+
+
+state 46
+ stat_list : stat_lsth_stat
+
+ error shift 60
+ YBEGIN shift 51
+ YCASE shift 52
+ YEND reduce 93
+ YFOR shift 56
+ YGOTO shift 57
+ YID shift 49
+ YIF shift 58
+ YINT shift 47
+ YREPEAT shift 55
+ YUNTIL reduce 93
+ YWHILE shift 54
+ YWITH shift 53
+ YASSERT shift 59
+ ; reduce 93
+ . error
+
+
+state 47
+ stat : YINT_: stat
+
+ : shift 82
+ . error
+
+
+state 48
+ stat : proc_id_
+ stat : proc_id_( wexpr_list )
+
+ ( shift 83
+ . reduce 95
+
+
+49: shift/reduce conflict (shift 84, red'n 182) on error
+state 49
+ stat : YID_error
+ variable : YID_
+ array_id : YID_
+ ptr_id : YID_
+ record_id : YID_
+ proc_id : YID_
+
+ error shift 84
+ YELSE reduce 182
+ YEND reduce 182
+ YUNTIL reduce 182
+ . reduce 180
+ ( reduce 182
+ ; reduce 182
+ : reduce 135
+ ^ reduce 179
+ [ reduce 178
+ . error
+
+
+state 50
+ stat : assign_
+
+ . reduce 98
+
+
+state 51
+ stat : YBEGIN_stat_list YEND
+
+ same as 21
+
+
+state 52
+ stat : YCASE_expr YOF cstat_list YEND
+
+ error shift 87
+ YID shift 96
+ YINT shift 92
+ YNOT shift 99
+ YNUMB shift 94
+ YNIL shift 90
+ YSTRING shift 91
+ YBINT shift 93
+ + shift 88
+ - shift 89
+ ( shift 98
+ [ shift 100
+ . error
+
+
+state 53
+ stat : YWITH_var_list YDO stat
+
+ YID shift 103
+ . error
+
+
+state 54
+ stat : YWHILE_expr YDO stat
+
+ same as 52
+
+
+state 55
+ stat : YREPEAT_stat_list YUNTIL expr
+
+ same as 21
+
+
+state 56
+ stat : YFOR_assign YTO expr YDO stat
+ stat : YFOR_assign YDOWNTO expr YDO stat
+
+ YID shift 103
+ . error
+
+
+state 57
+ stat : YGOTO_YINT
+
+ YINT shift 107
+ . error
+
+
+state 58
+ stat : YIF_expr YTHEN stat
+ stat : YIF_expr YTHEN stat YELSE stat
+ stat : YIF_expr YTHEN stat YELSE
+
+ same as 52
+
+
+state 59
+ stat : YASSERT_expr
+
+ same as 52
+
+
+state 60
+ stat : error_
+
+ . reduce 111
+
+
+state 61
+ assign : variable_: = expr
+
+ : shift 110
+ . error
+
+
+state 62
+ variable : qual_var_
+ qual_var : qual_var_[ expr_list ]
+ qual_var : qual_var_. field_id
+ qual_var : qual_var_^
+
+ . shift 112
+ ^ shift 113
+ [ shift 111
+ . reduce 136
+
+
+state 63
+ qual_var : array_id_[ expr_list ]
+
+ [ shift 114
+ . error
+
+
+state 64
+ qual_var : record_id_. field_id
+
+ . shift 115
+ . error
+
+
+state 65
+ qual_var : ptr_id_^
+
+ ^ shift 116
+ . error
+
+
+state 66
+ proc : phead YFORWARD_;
+
+ ; shift 117
+ . error
+
+
+state 67
+ decls : decls_decl
+ decls : decls_error
+ proc : pheadres decls_procs block ;
+
+ error shift 9
+ YBEGIN reduce 27
+ YCONST shift 15
+ YFUNCTION reduce 27
+ YLABEL shift 14
+ YPROCEDURE reduce 27
+ YTYPE shift 16
+ YVAR shift 17
+ . error
+
+
+state 68
+ phead : porf YID_params ftype ;
+
+ ( shift 120
+ . reduce 36
+
+
+state 69
+ const_decl : const_decl YID =_const ;
+
+ YID shift 130
+ YINT shift 127
+ YNUMB shift 129
+ YSTRING shift 122
+ YBINT shift 128
+ + shift 124
+ - shift 125
+ . error
+
+
+state 70
+ type_decl : type_decl YID =_type ;
+
+ YARRAY shift 139
+ YFILE shift 140
+ YID shift 143
+ YINT shift 127
+ YNUMB shift 129
+ YPACKED shift 135
+ YRECORD shift 142
+ YSET shift 141
+ YSTRING shift 122
+ YBINT shift 128
+ + shift 124
+ - shift 125
+ ( shift 137
+ ^ shift 133
+ . error
+
+
+state 71
+ var_decl : var_decl id_list :_type ;
+
+ same as 70
+
+
+state 72
+ id_list : id_list ,_YID
+
+ YID shift 145
+ . error
+
+
+state 73
+ labels : YLABEL label_decl ;_
+
+ . reduce 12
+
+
+state 74
+ label_decl : label_decl ,_YINT
+
+ YINT shift 146
+ . error
+
+
+state 75
+ const_decl : YCONST YID =_const ;
+
+ same as 69
+
+
+state 76
+ type_decl : YTYPE YID =_type ;
+
+ same as 70
+
+
+state 77
+ var_decl : YVAR id_list :_type ;
+
+ same as 70
+
+
+state 78
+ prog_hedr : YPROG YID ( id_list )_;
+
+ ; shift 150
+ . error
+
+
+state 79
+ block : YBEGIN stat_list YEND_
+
+ . reduce 4
+
+
+state 80
+ stat_lsth : stat_list ;_
+
+ . reduce 85
+
+
+state 81
+ stat_list : stat_lsth stat_
+
+ . reduce 84
+
+
+82: shift/reduce conflict (shift 60, red'n 93) on error
+state 82
+ stat : YINT :_stat
+
+ same as 46
+
+
+state 83
+ stat : proc_id (_wexpr_list )
+
+ error shift 87
+ YID shift 96
+ YINT shift 92
+ YNOT shift 99
+ YNUMB shift 94
+ YNIL shift 90
+ YSTRING shift 91
+ YBINT shift 93
+ + shift 88
+ - shift 89
+ ( shift 98
+ [ shift 100
+ . error
+
+
+state 84
+ stat : YID error_
+
+ . reduce 97
+
+
+state 85
+ stat_lsth : stat_list_;
+ stat : YBEGIN stat_list_YEND
+
+ YEND shift 155
+ ; shift 80
+ . error
+
+
+state 86
+ stat : YCASE expr_YOF cstat_list YEND
+ expr : expr_relop expr
+ expr : expr_addop expr
+ expr : expr_divop expr
+
+ YAND shift 172
+ YDIV shift 170
+ YIN shift 163
+ YMOD shift 171
+ YOF shift 156
+ YOR shift 166
+ < shift 161
+ = shift 160
+ > shift 162
+ + shift 164
+ - shift 165
+ | shift 167
+ * shift 168
+ / shift 169
+ & shift 173
+ . error
+
+
+state 87
+ expr : error_
+
+ . reduce 113
+
+
+state 88
+ expr : +_expr
+
+ same as 52
+
+
+state 89
+ expr : -_expr
+
+ same as 52
+
+
+state 90
+ expr : YNIL_
+
+ . reduce 119
+
+
+state 91
+ expr : YSTRING_
+
+ . reduce 120
+
+
+state 92
+ expr : YINT_
+
+ . reduce 121
+
+
+state 93
+ expr : YBINT_
+
+ . reduce 122
+
+
+state 94
+ expr : YNUMB_
+
+ . reduce 123
+
+
+state 95
+ expr : variable_
+
+ . reduce 124
+
+
+96: shift/reduce conflict (shift 176, red'n 135) on error
+state 96
+ expr : YID_error
+ variable : YID_
+ array_id : YID_
+ ptr_id : YID_
+ record_id : YID_
+ func_id : YID_
+
+ error shift 176
+ YAND reduce 135
+ YDIV reduce 135
+ YDO reduce 135
+ YDOTDOT reduce 135
+ YTO reduce 135
+ YELSE reduce 135
+ YEND reduce 135
+ YIN reduce 135
+ YMOD reduce 135
+ YOF reduce 135
+ YOR reduce 135
+ YTHEN reduce 135
+ YDOWNTO reduce 135
+ YUNTIL reduce 135
+ YOCT reduce 135
+ YHEX reduce 135
+ < reduce 135
+ = reduce 135
+ > reduce 135
+ + reduce 135
+ - reduce 135
+ | reduce 135
+ * reduce 135
+ / reduce 135
+ & reduce 135
+ . reduce 180
+ ( reduce 183
+ ) reduce 135
+ ; reduce 135
+ , reduce 135
+ : reduce 135
+ ^ reduce 179
+ [ reduce 178
+ ] reduce 135
+ . error
+
+
+state 97
+ expr : func_id_( wexpr_list )
+
+ ( shift 177
+ . error
+
+
+state 98
+ expr : (_expr )
+
+ same as 52
+
+
+state 99
+ expr : YNOT_expr
+
+ same as 52
+
+
+state 100
+ expr : [_element_list ]
+ expr : [_]
+
+ error shift 87
+ YID shift 96
+ YINT shift 92
+ YNOT shift 99
+ YNUMB shift 94
+ YNIL shift 90
+ YSTRING shift 91
+ YBINT shift 93
+ + shift 88
+ - shift 89
+ ( shift 98
+ [ shift 100
+ ] shift 181
+ . error
+
+
+state 101
+ stat : YWITH var_list_YDO stat
+ var_list : var_list_, variable
+
+ YDO shift 184
+ , shift 185
+ . error
+
+
+state 102
+ var_list : variable_
+
+ . reduce 171
+
+
+state 103
+ variable : YID_
+ array_id : YID_
+ ptr_id : YID_
+ record_id : YID_
+
+ . reduce 180
+ ^ reduce 179
+ [ reduce 178
+ . reduce 135
+
+
+state 104
+ stat : YWHILE expr_YDO stat
+ expr : expr_relop expr
+ expr : expr_addop expr
+ expr : expr_divop expr
+
+ YAND shift 172
+ YDIV shift 170
+ YDO shift 186
+ YIN shift 163
+ YMOD shift 171
+ YOR shift 166
+ < shift 161
+ = shift 160
+ > shift 162
+ + shift 164
+ - shift 165
+ | shift 167
+ * shift 168
+ / shift 169
+ & shift 173
+ . error
+
+
+state 105
+ stat_lsth : stat_list_;
+ stat : YREPEAT stat_list_YUNTIL expr
+
+ YUNTIL shift 187
+ ; shift 80
+ . error
+
+
+state 106
+ stat : YFOR assign_YTO expr YDO stat
+ stat : YFOR assign_YDOWNTO expr YDO stat
+
+ YTO shift 188
+ YDOWNTO shift 189
+ . error
+
+
+state 107
+ stat : YGOTO YINT_
+
+ . reduce 106
+
+
+state 108
+ stat : YIF expr_YTHEN stat
+ stat : YIF expr_YTHEN stat YELSE stat
+ stat : YIF expr_YTHEN stat YELSE
+ expr : expr_relop expr
+ expr : expr_addop expr
+ expr : expr_divop expr
+
+ YAND shift 172
+ YDIV shift 170
+ YIN shift 163
+ YMOD shift 171
+ YOR shift 166
+ YTHEN shift 190
+ < shift 161
+ = shift 160
+ > shift 162
+ + shift 164
+ - shift 165
+ | shift 167
+ * shift 168
+ / shift 169
+ & shift 173
+ . error
+
+
+state 109
+ stat : YASSERT expr_
+ expr : expr_relop expr
+ expr : expr_addop expr
+ expr : expr_divop expr
+
+ YAND shift 172
+ YDIV shift 170
+ YIN shift 163
+ YMOD shift 171
+ YOR shift 166
+ < shift 161
+ = shift 160
+ > shift 162
+ + shift 164
+ - shift 165
+ | shift 167
+ * shift 168
+ / shift 169
+ & shift 173
+ . reduce 110
+
+
+state 110
+ assign : variable :_= expr
+
+ = shift 191
+ . error
+
+
+state 111
+ qual_var : qual_var [_expr_list ]
+
+ error shift 87
+ YID shift 96
+ YINT shift 92
+ YNOT shift 99
+ YNUMB shift 94
+ YNIL shift 90
+ YSTRING shift 91
+ YBINT shift 93
+ + shift 88
+ - shift 89
+ ( shift 98
+ [ shift 100
+ . error
+
+
+state 112
+ qual_var : qual_var ._field_id
+
+ YID shift 195
+ . error
+
+
+state 113
+ qual_var : qual_var ^_
+
+ . reduce 142
+
+
+state 114
+ qual_var : array_id [_expr_list ]
+
+ same as 111
+
+
+state 115
+ qual_var : record_id ._field_id
+
+ same as 112
+
+
+state 116
+ qual_var : ptr_id ^_
+
+ . reduce 141
+
+
+state 117
+ proc : phead YFORWARD ;_
+
+ . reduce 29
+
+
+state 118
+ procs : procs_proc
+ proc : pheadres decls procs_block ;
+
+ YBEGIN shift 21
+ YFUNCTION shift 26
+ YPROCEDURE shift 25
+ . error
+
+
+state 119
+ phead : porf YID params_ftype ;
+
+ : shift 200
+ . reduce 42
+
+
+state 120
+ params : (_param_list )
+
+ YFUNCTION shift 205
+ YID shift 33
+ YPROCEDURE shift 206
+ YVAR shift 204
+ . error
+
+
+state 121
+ const_decl : const_decl YID = const_;
+
+ ; shift 207
+ . error
+
+
+state 122
+ const : YSTRING_
+
+ . reduce 45
+
+
+state 123
+ const : number_
+
+ . reduce 46
+
+
+state 124
+ const : +_number
+
+ YID shift 130
+ YINT shift 127
+ YNUMB shift 129
+ YBINT shift 128
+ . error
+
+
+state 125
+ const : -_number
+
+ same as 124
+
+
+state 126
+ number : const_id_
+
+ . reduce 49
+
+
+state 127
+ number : YINT_
+
+ . reduce 50
+
+
+state 128
+ number : YBINT_
+
+ . reduce 51
+
+
+state 129
+ number : YNUMB_
+
+ . reduce 52
+
+
+state 130
+ const_id : YID_
+
+ . reduce 175
+
+
+state 131
+ type_decl : type_decl YID = type_;
+
+ ; shift 210
+ . error
+
+
+state 132
+ type : simple_type_
+
+ . reduce 55
+
+
+state 133
+ type : ^_YID
+
+ YID shift 211
+ . error
+
+
+state 134
+ type : struct_type_
+
+ . reduce 57
+
+
+state 135
+ type : YPACKED_struct_type
+
+ YARRAY shift 139
+ YFILE shift 140
+ YRECORD shift 142
+ YSET shift 141
+ . error
+
+
+state 136
+ simple_type : type_id_
+
+ . reduce 59
+
+
+state 137
+ simple_type : (_id_list )
+
+ same as 18
+
+
+state 138
+ simple_type : const_YDOTDOT const
+
+ YDOTDOT shift 214
+ . error
+
+
+state 139
+ struct_type : YARRAY_[ simple_type_list ] YOF type
+
+ [ shift 215
+ . error
+
+
+state 140
+ struct_type : YFILE_YOF type
+
+ YOF shift 216
+ . error
+
+
+state 141
+ struct_type : YSET_YOF simple_type
+
+ YOF shift 217
+ . error
+
+
+state 142
+ struct_type : YRECORD_field_list YEND
+
+ YID shift 33
+ . reduce 72
+
+
+state 143
+ const_id : YID_
+ type_id : YID_
+
+ YDOTDOT reduce 175
+ . reduce 176
+
+
+state 144
+ var_decl : var_decl id_list : type_;
+
+ ; shift 222
+ . error
+
+
+state 145
+ id_list : id_list , YID_
+
+ . reduce 174
+
+
+state 146
+ label_decl : label_decl , YINT_
+
+ . reduce 14
+
+
+state 147
+ const_decl : YCONST YID = const_;
+
+ ; shift 223
+ . error
+
+
+state 148
+ type_decl : YTYPE YID = type_;
+
+ ; shift 224
+ . error
+
+
+state 149
+ var_decl : YVAR id_list : type_;
+
+ ; shift 225
+ . error
+
+
+state 150
+ prog_hedr : YPROG YID ( id_list ) ;_
+
+ . reduce 2
+
+
+state 151
+ stat : YINT : stat_
+
+ . reduce 94
+
+
+state 152
+ stat : proc_id ( wexpr_list_)
+ wexpr_list : wexpr_list_, wexpr
+
+ ) shift 226
+ , shift 227
+ . error
+
+
+state 153
+ wexpr_list : wexpr_
+
+ . reduce 152
+
+
+state 154
+ expr : expr_relop expr
+ expr : expr_addop expr
+ expr : expr_divop expr
+ wexpr : expr_
+ wexpr : expr_: expr
+ wexpr : expr_: expr : expr
+ wexpr : expr_octhex
+ wexpr : expr_: expr octhex
+
+ YAND shift 172
+ YDIV shift 170
+ YIN shift 163
+ YMOD shift 171
+ YOR shift 166
+ YOCT shift 230
+ YHEX shift 231
+ < shift 161
+ = shift 160
+ > shift 162
+ + shift 164
+ - shift 165
+ | shift 167
+ * shift 168
+ / shift 169
+ & shift 173
+ : shift 228
+ . reduce 143
+
+
+state 155
+ stat : YBEGIN stat_list YEND_
+
+ . reduce 99
+
+
+156: shift/reduce conflict (shift 234, red'n 92) on error
+state 156
+ stat : YCASE expr YOF_cstat_list YEND
+
+ error shift 234
+ YEND reduce 92
+ YID shift 130
+ YINT shift 127
+ YNUMB shift 129
+ YSTRING shift 122
+ YBINT shift 128
+ YCASELAB shift 236
+ + shift 124
+ - shift 125
+ ; reduce 92
+ . error
+
+
+state 157
+ expr : expr relop_expr
+
+ same as 52
+
+
+state 158
+ expr : expr addop_expr
+
+ same as 52
+
+
+state 159
+ expr : expr divop_expr
+
+ same as 52
+
+
+state 160
+ relop : =_
+
+ . reduce 154
+
+
+state 161
+ relop : <_
+ relop : <_>
+ relop : <_=
+
+ = shift 242
+ > shift 241
+ . reduce 155
+
+
+state 162
+ relop : >_
+ relop : >_=
+
+ = shift 243
+ . reduce 156
+
+
+state 163
+ relop : YIN_
+
+ . reduce 160
+
+
+state 164
+ addop : +_
+
+ . reduce 161
+
+
+state 165
+ addop : -_
+
+ . reduce 162
+
+
+state 166
+ addop : YOR_
+
+ . reduce 163
+
+
+state 167
+ addop : |_
+
+ . reduce 164
+
+
+state 168
+ divop : *_
+
+ . reduce 165
+
+
+state 169
+ divop : /_
+
+ . reduce 166
+
+
+state 170
+ divop : YDIV_
+
+ . reduce 167
+
+
+state 171
+ divop : YMOD_
+
+ . reduce 168
+
+
+state 172
+ divop : YAND_
+
+ . reduce 169
+
+
+state 173
+ divop : &_
+
+ . reduce 170
+
+
+state 174
+ expr : expr_relop expr
+ expr : + expr_
+ expr : expr_addop expr
+ expr : expr_divop expr
+
+ YAND shift 172
+ YDIV shift 170
+ YMOD shift 171
+ * shift 168
+ / shift 169
+ & shift 173
+ . reduce 115
+
+
+state 175
+ expr : expr_relop expr
+ expr : - expr_
+ expr : expr_addop expr
+ expr : expr_divop expr
+
+ YAND shift 172
+ YDIV shift 170
+ YMOD shift 171
+ * shift 168
+ / shift 169
+ & shift 173
+ . reduce 116
+
+
+state 176
+ expr : YID error_
+
+ . reduce 125
+
+
+state 177
+ expr : func_id (_wexpr_list )
+
+ same as 83
+
+
+state 178
+ expr : expr_relop expr
+ expr : expr_addop expr
+ expr : expr_divop expr
+ expr : ( expr_)
+
+ YAND shift 172
+ YDIV shift 170
+ YIN shift 163
+ YMOD shift 171
+ YOR shift 166
+ < shift 161
+ = shift 160
+ > shift 162
+ + shift 164
+ - shift 165
+ | shift 167
+ * shift 168
+ / shift 169
+ & shift 173
+ ) shift 245
+ . error
+
+
+state 179
+ expr : expr_relop expr
+ expr : expr_addop expr
+ expr : expr_divop expr
+ expr : YNOT expr_
+
+ . reduce 128
+
+
+state 180
+ expr : [ element_list_]
+ element_list : element_list_, element
+
+ , shift 247
+ ] shift 246
+ . error
+
+
+state 181
+ expr : [ ]_
+
+ . reduce 130
+
+
+state 182
+ element_list : element_
+
+ . reduce 131
+
+
+state 183
+ expr : expr_relop expr
+ expr : expr_addop expr
+ expr : expr_divop expr
+ element : expr_
+ element : expr_YDOTDOT expr
+
+ YAND shift 172
+ YDIV shift 170
+ YDOTDOT shift 248
+ YIN shift 163
+ YMOD shift 171
+ YOR shift 166
+ < shift 161
+ = shift 160
+ > shift 162
+ + shift 164
+ - shift 165
+ | shift 167
+ * shift 168
+ / shift 169
+ & shift 173
+ . reduce 133
+
+
+184: shift/reduce conflict (shift 60, red'n 93) on error
+state 184
+ stat : YWITH var_list YDO_stat
+
+ same as 46
+
+
+state 185
+ var_list : var_list ,_variable
+
+ YID shift 103
+ . error
+
+
+186: shift/reduce conflict (shift 60, red'n 93) on error
+state 186
+ stat : YWHILE expr YDO_stat
+
+ same as 46
+
+
+state 187
+ stat : YREPEAT stat_list YUNTIL_expr
+
+ same as 52
+
+
+state 188
+ stat : YFOR assign YTO_expr YDO stat
+
+ same as 52
+
+
+state 189
+ stat : YFOR assign YDOWNTO_expr YDO stat
+
+ same as 52
+
+
+190: shift/reduce conflict (shift 60, red'n 93) on error
+state 190
+ stat : YIF expr YTHEN_stat
+ stat : YIF expr YTHEN_stat YELSE stat
+ stat : YIF expr YTHEN_stat YELSE
+
+ same as 46
+
+
+state 191
+ assign : variable : =_expr
+
+ same as 52
+
+
+state 192
+ qual_var : qual_var [ expr_list_]
+ expr_list : expr_list_, expr
+
+ , shift 258
+ ] shift 257
+ . error
+
+
+state 193
+ expr : expr_relop expr
+ expr : expr_addop expr
+ expr : expr_divop expr
+ expr_list : expr_
+
+ YAND shift 172
+ YDIV shift 170
+ YIN shift 163
+ YMOD shift 171
+ YOR shift 166
+ < shift 161
+ = shift 160
+ > shift 162
+ + shift 164
+ - shift 165
+ | shift 167
+ * shift 168
+ / shift 169
+ & shift 173
+ . reduce 150
+
+
+state 194
+ qual_var : qual_var . field_id_
+
+ . reduce 140
+
+
+state 195
+ field_id : YID_
+
+ . reduce 181
+
+
+state 196
+ qual_var : array_id [ expr_list_]
+ expr_list : expr_list_, expr
+
+ , shift 258
+ ] shift 259
+ . error
+
+
+state 197
+ qual_var : record_id . field_id_
+
+ . reduce 139
+
+
+state 198
+ proc : pheadres decls procs block_;
+
+ ; shift 260
+ . error
+
+
+state 199
+ phead : porf YID params ftype_;
+
+ ; shift 261
+ . error
+
+
+state 200
+ ftype : :_type
+
+ same as 70
+
+
+state 201
+ params : ( param_list_)
+ param_list : param_list_; param
+
+ ) shift 263
+ ; shift 264
+ . error
+
+
+state 202
+ param_list : param_
+
+ . reduce 43
+
+
+state 203
+ param : id_list_: type
+ id_list : id_list_, YID
+
+ , shift 72
+ : shift 265
+ . error
+
+
+state 204
+ param : YVAR_id_list : type
+
+ same as 18
+
+
+state 205
+ param : YFUNCTION_id_list : type
+
+ same as 18
+
+
+state 206
+ param : YPROCEDURE_id_list
+
+ same as 18
+
+
+state 207
+ const_decl : const_decl YID = const ;_
+
+ . reduce 16
+
+
+state 208
+ const : + number_
+
+ . reduce 47
+
+
+state 209
+ const : - number_
+
+ . reduce 48
+
+
+state 210
+ type_decl : type_decl YID = type ;_
+
+ . reduce 20
+
+
+state 211
+ type : ^ YID_
+
+ . reduce 56
+
+
+state 212
+ type : YPACKED struct_type_
+
+ . reduce 58
+
+
+state 213
+ simple_type : ( id_list_)
+ id_list : id_list_, YID
+
+ ) shift 269
+ , shift 72
+ . error
+
+
+state 214
+ simple_type : const YDOTDOT_const
+
+ same as 69
+
+
+state 215
+ struct_type : YARRAY [_simple_type_list ] YOF type
+
+ YID shift 143
+ YINT shift 127
+ YNUMB shift 129
+ YSTRING shift 122
+ YBINT shift 128
+ + shift 124
+ - shift 125
+ ( shift 137
+ . error
+
+
+state 216
+ struct_type : YFILE YOF_type
+
+ same as 70
+
+
+state 217
+ struct_type : YSET YOF_simple_type
+
+ YID shift 143
+ YINT shift 127
+ YNUMB shift 129
+ YSTRING shift 122
+ YBINT shift 128
+ + shift 124
+ - shift 125
+ ( shift 137
+ . error
+
+
+state 218
+ struct_type : YRECORD field_list_YEND
+
+ YEND shift 275
+ . error
+
+
+state 219
+ field_list : fixed_part_variant_part
+ fixed_part : fixed_part_; field
+ fixed_part : fixed_part_error
+
+ error shift 278
+ YCASE shift 279
+ YEND reduce 74
+ ) reduce 74
+ ; shift 277
+ . error
+
+
+state 220
+ fixed_part : field_
+
+ . reduce 69
+
+
+state 221
+ field : id_list_: type
+ id_list : id_list_, YID
+
+ , shift 72
+ : shift 280
+ . error
+
+
+state 222
+ var_decl : var_decl id_list : type ;_
+
+ . reduce 24
+
+
+state 223
+ const_decl : YCONST YID = const ;_
+
+ . reduce 15
+
+
+state 224
+ type_decl : YTYPE YID = type ;_
+
+ . reduce 19
+
+
+state 225
+ var_decl : YVAR id_list : type ;_
+
+ . reduce 23
+
+
+state 226
+ stat : proc_id ( wexpr_list )_
+
+ . reduce 96
+
+
+state 227
+ wexpr_list : wexpr_list ,_wexpr
+
+ error shift 87
+ YID shift 96
+ YINT shift 92
+ YNOT shift 99
+ YNUMB shift 94
+ YNIL shift 90
+ YSTRING shift 91
+ YBINT shift 93
+ + shift 88
+ - shift 89
+ ( shift 98
+ [ shift 100
+ . error
+
+
+state 228
+ wexpr : expr :_expr
+ wexpr : expr :_expr : expr
+ wexpr : expr :_expr octhex
+
+ same as 52
+
+
+state 229
+ wexpr : expr octhex_
+
+ . reduce 146
+
+
+state 230
+ octhex : YOCT_
+
+ . reduce 148
+
+
+state 231
+ octhex : YHEX_
+
+ . reduce 149
+
+
+state 232
+ cstat_list : cstat_list_; cstat
+ cstat_list : cstat_list_error
+ stat : YCASE expr YOF cstat_list_YEND
+
+ error shift 284
+ YEND shift 285
+ ; shift 283
+ . error
+
+
+state 233
+ cstat_list : cstat_
+
+ . reduce 86
+
+
+state 234
+ cstat_list : error_
+
+ . reduce 88
+
+
+state 235
+ const_list : const_list_, const
+ cstat : const_list_: stat
+
+ , shift 286
+ : shift 287
+ . error
+
+
+236: shift/reduce conflict (shift 60, red'n 93) on error
+state 236
+ cstat : YCASELAB_stat
+
+ same as 46
+
+
+state 237
+ const_list : const_
+
+ . reduce 53
+
+
+state 238
+ expr : expr_relop expr
+ expr : expr relop expr_
+ expr : expr_addop expr
+ expr : expr_divop expr
+
+ YAND shift 172
+ YDIV shift 170
+ YIN error
+ YMOD shift 171
+ YOR shift 166
+ < error
+ = error
+ > error
+ + shift 164
+ - shift 165
+ | shift 167
+ * shift 168
+ / shift 169
+ & shift 173
+ . reduce 114
+
+
+state 239
+ expr : expr_relop expr
+ expr : expr_addop expr
+ expr : expr addop expr_
+ expr : expr_divop expr
+
+ YAND shift 172
+ YDIV shift 170
+ YMOD shift 171
+ * shift 168
+ / shift 169
+ & shift 173
+ . reduce 117
+
+
+state 240
+ expr : expr_relop expr
+ expr : expr_addop expr
+ expr : expr_divop expr
+ expr : expr divop expr_
+
+ . reduce 118
+
+
+state 241
+ relop : < >_
+
+ . reduce 157
+
+
+state 242
+ relop : < =_
+
+ . reduce 158
+
+
+state 243
+ relop : > =_
+
+ . reduce 159
+
+
+state 244
+ expr : func_id ( wexpr_list_)
+ wexpr_list : wexpr_list_, wexpr
+
+ ) shift 289
+ , shift 227
+ . error
+
+
+state 245
+ expr : ( expr )_
+
+ . reduce 127
+
+
+state 246
+ expr : [ element_list ]_
+
+ . reduce 129
+
+
+state 247
+ element_list : element_list ,_element
+
+ error shift 87
+ YID shift 96
+ YINT shift 92
+ YNOT shift 99
+ YNUMB shift 94
+ YNIL shift 90
+ YSTRING shift 91
+ YBINT shift 93
+ + shift 88
+ - shift 89
+ ( shift 98
+ [ shift 100
+ . error
+
+
+state 248
+ element : expr YDOTDOT_expr
+
+ same as 52
+
+
+state 249
+ stat : YWITH var_list YDO stat_
+
+ . reduce 101
+
+
+state 250
+ var_list : var_list , variable_
+
+ . reduce 172
+
+
+state 251
+ stat : YWHILE expr YDO stat_
+
+ . reduce 102
+
+
+state 252
+ stat : YREPEAT stat_list YUNTIL expr_
+ expr : expr_relop expr
+ expr : expr_addop expr
+ expr : expr_divop expr
+
+ YAND shift 172
+ YDIV shift 170
+ YIN shift 163
+ YMOD shift 171
+ YOR shift 166
+ < shift 161
+ = shift 160
+ > shift 162
+ + shift 164
+ - shift 165
+ | shift 167
+ * shift 168
+ / shift 169
+ & shift 173
+ . reduce 103
+
+
+state 253
+ stat : YFOR assign YTO expr_YDO stat
+ expr : expr_relop expr
+ expr : expr_addop expr
+ expr : expr_divop expr
+
+ YAND shift 172
+ YDIV shift 170
+ YDO shift 292
+ YIN shift 163
+ YMOD shift 171
+ YOR shift 166
+ < shift 161
+ = shift 160
+ > shift 162
+ + shift 164
+ - shift 165
+ | shift 167
+ * shift 168
+ / shift 169
+ & shift 173
+ . error
+
+
+state 254
+ stat : YFOR assign YDOWNTO expr_YDO stat
+ expr : expr_relop expr
+ expr : expr_addop expr
+ expr : expr_divop expr
+
+ YAND shift 172
+ YDIV shift 170
+ YDO shift 293
+ YIN shift 163
+ YMOD shift 171
+ YOR shift 166
+ < shift 161
+ = shift 160
+ > shift 162
+ + shift 164
+ - shift 165
+ | shift 167
+ * shift 168
+ / shift 169
+ & shift 173
+ . error
+
+
+255: shift/reduce conflict (shift 294, red'n 107) on YELSE
+state 255
+ stat : YIF expr YTHEN stat_
+ stat : YIF expr YTHEN stat_YELSE stat
+ stat : YIF expr YTHEN stat_YELSE
+
+ YELSE shift 294
+ . reduce 107
+
+
+state 256
+ assign : variable : = expr_
+ expr : expr_relop expr
+ expr : expr_addop expr
+ expr : expr_divop expr
+
+ YAND shift 172
+ YDIV shift 170
+ YIN shift 163
+ YMOD shift 171
+ YOR shift 166
+ < shift 161
+ = shift 160
+ > shift 162
+ + shift 164
+ - shift 165
+ | shift 167
+ * shift 168
+ / shift 169
+ & shift 173
+ . reduce 112
+
+
+state 257
+ qual_var : qual_var [ expr_list ]_
+
+ . reduce 138
+
+
+state 258
+ expr_list : expr_list ,_expr
+
+ same as 52
+
+
+state 259
+ qual_var : array_id [ expr_list ]_
+
+ . reduce 137
+
+
+state 260
+ proc : pheadres decls procs block ;_
+
+ . reduce 30
+
+
+state 261
+ phead : porf YID params ftype ;_
+
+ . reduce 32
+
+
+state 262
+ ftype : : type_
+
+ . reduce 41
+
+
+state 263
+ params : ( param_list )_
+
+ . reduce 35
+
+
+state 264
+ param_list : param_list ;_param
+
+ YFUNCTION shift 205
+ YID shift 33
+ YPROCEDURE shift 206
+ YVAR shift 204
+ . error
+
+
+state 265
+ param : id_list :_type
+
+ same as 70
+
+
+state 266
+ param : YVAR id_list_: type
+ id_list : id_list_, YID
+
+ , shift 72
+ : shift 298
+ . error
+
+
+state 267
+ param : YFUNCTION id_list_: type
+ id_list : id_list_, YID
+
+ , shift 72
+ : shift 299
+ . error
+
+
+state 268
+ param : YPROCEDURE id_list_
+ id_list : id_list_, YID
+
+ , shift 72
+ . reduce 40
+
+
+state 269
+ simple_type : ( id_list )_
+
+ . reduce 60
+
+
+state 270
+ simple_type : const YDOTDOT const_
+
+ . reduce 61
+
+
+state 271
+ struct_type : YARRAY [ simple_type_list_] YOF type
+ simple_type_list : simple_type_list_, simple_type
+
+ , shift 301
+ ] shift 300
+ . error
+
+
+state 272
+ simple_type_list : simple_type_
+
+ . reduce 66
+
+
+state 273
+ struct_type : YFILE YOF type_
+
+ . reduce 63
+
+
+state 274
+ struct_type : YSET YOF simple_type_
+
+ . reduce 64
+
+
+state 275
+ struct_type : YRECORD field_list YEND_
+
+ . reduce 65
+
+
+state 276
+ field_list : fixed_part variant_part_
+
+ . reduce 68
+
+
+state 277
+ fixed_part : fixed_part ;_field
+
+ YID shift 33
+ . reduce 72
+
+
+state 278
+ fixed_part : fixed_part error_
+
+ . reduce 71
+
+
+state 279
+ variant_part : YCASE_type_id YOF variant_list
+ variant_part : YCASE_YID : type_id YOF variant_list
+
+ YID shift 304
+ . error
+
+
+state 280
+ field : id_list :_type
+
+ same as 70
+
+
+state 281
+ wexpr_list : wexpr_list , wexpr_
+
+ . reduce 153
+
+
+state 282
+ expr : expr_relop expr
+ expr : expr_addop expr
+ expr : expr_divop expr
+ wexpr : expr : expr_
+ wexpr : expr : expr_: expr
+ wexpr : expr : expr_octhex
+
+ YAND shift 172
+ YDIV shift 170
+ YIN shift 163
+ YMOD shift 171
+ YOR shift 166
+ YOCT shift 230
+ YHEX shift 231
+ < shift 161
+ = shift 160
+ > shift 162
+ + shift 164
+ - shift 165
+ | shift 167
+ * shift 168
+ / shift 169
+ & shift 173
+ : shift 306
+ . reduce 144
+
+
+state 283
+ cstat_list : cstat_list ;_cstat
+
+ YID shift 130
+ YINT shift 127
+ YNUMB shift 129
+ YSTRING shift 122
+ YBINT shift 128
+ YCASELAB shift 236
+ + shift 124
+ - shift 125
+ . reduce 92
+
+
+state 284
+ cstat_list : cstat_list error_
+
+ . reduce 89
+
+
+state 285
+ stat : YCASE expr YOF cstat_list YEND_
+
+ . reduce 100
+
+
+state 286
+ const_list : const_list ,_const
+
+ same as 69
+
+
+287: shift/reduce conflict (shift 60, red'n 93) on error
+state 287
+ cstat : const_list :_stat
+
+ same as 46
+
+
+state 288
+ cstat : YCASELAB stat_
+
+ . reduce 91
+
+
+state 289
+ expr : func_id ( wexpr_list )_
+
+ . reduce 126
+
+
+state 290
+ element_list : element_list , element_
+
+ . reduce 132
+
+
+state 291
+ expr : expr_relop expr
+ expr : expr_addop expr
+ expr : expr_divop expr
+ element : expr YDOTDOT expr_
+
+ YAND shift 172
+ YDIV shift 170
+ YIN shift 163
+ YMOD shift 171
+ YOR shift 166
+ < shift 161
+ = shift 160
+ > shift 162
+ + shift 164
+ - shift 165
+ | shift 167
+ * shift 168
+ / shift 169
+ & shift 173
+ . reduce 134
+
+
+292: shift/reduce conflict (shift 60, red'n 93) on error
+state 292
+ stat : YFOR assign YTO expr YDO_stat
+
+ same as 46
+
+
+293: shift/reduce conflict (shift 60, red'n 93) on error
+state 293
+ stat : YFOR assign YDOWNTO expr YDO_stat
+
+ same as 46
+
+
+294: shift/reduce conflict (shift 60, red'n 109) on error
+294: shift/reduce conflict (shift 60, red'n 93) on error
+294: reduce/reduce conflict (red'ns 109 and 93 ) on YELSE
+294: reduce/reduce conflict (red'ns 109 and 93 ) on YEND
+294: reduce/reduce conflict (red'ns 109 and 93 ) on YUNTIL
+294: reduce/reduce conflict (red'ns 109 and 93 ) on ;
+state 294
+ stat : YIF expr YTHEN stat YELSE_stat
+ stat : YIF expr YTHEN stat YELSE_
+
+ error shift 60
+ YBEGIN shift 51
+ YCASE shift 52
+ YELSE reduce 93
+ YEND reduce 93
+ YFOR shift 56
+ YGOTO shift 57
+ YID shift 49
+ YIF shift 58
+ YINT shift 47
+ YREPEAT shift 55
+ YUNTIL reduce 93
+ YWHILE shift 54
+ YWITH shift 53
+ YASSERT shift 59
+ ; reduce 93
+ . error
+
+
+state 295
+ expr : expr_relop expr
+ expr : expr_addop expr
+ expr : expr_divop expr
+ expr_list : expr_list , expr_
+
+ YAND shift 172
+ YDIV shift 170
+ YIN shift 163
+ YMOD shift 171
+ YOR shift 166
+ < shift 161
+ = shift 160
+ > shift 162
+ + shift 164
+ - shift 165
+ | shift 167
+ * shift 168
+ / shift 169
+ & shift 173
+ . reduce 151
+
+
+state 296
+ param_list : param_list ; param_
+
+ . reduce 44
+
+
+state 297
+ param : id_list : type_
+
+ . reduce 37
+
+
+state 298
+ param : YVAR id_list :_type
+
+ same as 70
+
+
+state 299
+ param : YFUNCTION id_list :_type
+
+ same as 70
+
+
+state 300
+ struct_type : YARRAY [ simple_type_list ]_YOF type
+
+ YOF shift 316
+ . error
+
+
+state 301
+ simple_type_list : simple_type_list ,_simple_type
+
+ same as 217
+
+
+state 302
+ fixed_part : fixed_part ; field_
+
+ . reduce 70
+
+
+state 303
+ variant_part : YCASE type_id_YOF variant_list
+
+ YOF shift 318
+ . error
+
+
+state 304
+ variant_part : YCASE YID_: type_id YOF variant_list
+ type_id : YID_
+
+ : shift 319
+ . reduce 176
+
+
+state 305
+ field : id_list : type_
+
+ . reduce 73
+
+
+state 306
+ wexpr : expr : expr :_expr
+
+ same as 52
+
+
+state 307
+ wexpr : expr : expr octhex_
+
+ . reduce 147
+
+
+state 308
+ cstat_list : cstat_list ; cstat_
+
+ . reduce 87
+
+
+state 309
+ const_list : const_list , const_
+
+ . reduce 54
+
+
+state 310
+ cstat : const_list : stat_
+
+ . reduce 90
+
+
+state 311
+ stat : YFOR assign YTO expr YDO stat_
+
+ . reduce 104
+
+
+state 312
+ stat : YFOR assign YDOWNTO expr YDO stat_
+
+ . reduce 105
+
+
+state 313
+ stat : YIF expr YTHEN stat YELSE stat_
+
+ . reduce 108
+
+
+state 314
+ param : YVAR id_list : type_
+
+ . reduce 38
+
+
+state 315
+ param : YFUNCTION id_list : type_
+
+ . reduce 39
+
+
+state 316
+ struct_type : YARRAY [ simple_type_list ] YOF_type
+
+ same as 70
+
+
+state 317
+ simple_type_list : simple_type_list , simple_type_
+
+ . reduce 67
+
+
+state 318
+ variant_part : YCASE type_id YOF_variant_list
+
+ YID shift 130
+ YINT shift 127
+ YNUMB shift 129
+ YSTRING shift 122
+ YBINT shift 128
+ + shift 124
+ - shift 125
+ . reduce 80
+
+
+state 319
+ variant_part : YCASE YID :_type_id YOF variant_list
+
+ YID shift 326
+ . error
+
+
+state 320
+ expr : expr_relop expr
+ expr : expr_addop expr
+ expr : expr_divop expr
+ wexpr : expr : expr : expr_
+
+ YAND shift 172
+ YDIV shift 170
+ YIN shift 163
+ YMOD shift 171
+ YOR shift 166
+ < shift 161
+ = shift 160
+ > shift 162
+ + shift 164
+ - shift 165
+ | shift 167
+ * shift 168
+ / shift 169
+ & shift 173
+ . reduce 145
+
+
+state 321
+ struct_type : YARRAY [ simple_type_list ] YOF type_
+
+ . reduce 62
+
+
+state 322
+ variant_part : YCASE type_id YOF variant_list_
+ variant_list : variant_list_; variant
+ variant_list : variant_list_error
+
+ error shift 328
+ YEND reduce 75
+ ) reduce 75
+ ; shift 327
+ . error
+
+
+state 323
+ variant_list : variant_
+
+ . reduce 77
+
+
+state 324
+ const_list : const_list_, const
+ variant : const_list_: ( field_list )
+ variant : const_list_: ( )
+
+ , shift 286
+ : shift 329
+ . error
+
+
+state 325
+ variant_part : YCASE YID : type_id_YOF variant_list
+
+ YOF shift 330
+ . error
+
+
+state 326
+ type_id : YID_
+
+ . reduce 176
+
+
+state 327
+ variant_list : variant_list ;_variant
+
+ YID shift 130
+ YINT shift 127
+ YNUMB shift 129
+ YSTRING shift 122
+ YBINT shift 128
+ + shift 124
+ - shift 125
+ . reduce 80
+
+
+state 328
+ variant_list : variant_list error_
+
+ . reduce 79
+
+
+state 329
+ variant : const_list :_( field_list )
+ variant : const_list :_( )
+
+ ( shift 332
+ . error
+
+
+state 330
+ variant_part : YCASE YID : type_id YOF_variant_list
+
+ same as 318
+
+
+state 331
+ variant_list : variant_list ; variant_
+
+ . reduce 78
+
+
+332: shift/reduce conflict (shift 335, red'n 72) on )
+state 332
+ variant : const_list : (_field_list )
+ variant : const_list : (_)
+
+ YID shift 33
+ ) shift 335
+ . reduce 72
+
+
+state 333
+ variant_part : YCASE YID : type_id YOF variant_list_
+ variant_list : variant_list_; variant
+ variant_list : variant_list_error
+
+ error shift 328
+ YEND reduce 76
+ ) reduce 76
+ ; shift 327
+ . error
+
+
+state 334
+ variant : const_list : ( field_list_)
+
+ ) shift 336
+ . error
+
+
+state 335
+ variant : const_list : ( )_
+
+ . reduce 82
+
+
+state 336
+ variant : const_list : ( field_list )_
+
+ . reduce 81
+
+
+nonterminal goal
+ 0 1
+
+nonterminal prog_hedr
+ 0 2
+
+nonterminal decls
+ 2 4
+ 23 67
+
+nonterminal procs
+ 4 7
+ 67 118
+
+nonterminal block
+ 7 19
+ 118 198
+
+nonterminal id_list
+ 13 31
+ 17 40
+ 18 42
+ 120 203
+ 137 213
+ 142 221
+ 204 266
+ 205 267
+ 206 268
+ 264 203
+ 277 221
+ 332 221
+
+nonterminal stat_list
+ 21 44
+ 51 85
+ 55 105
+
+nonterminal decl
+ 4 8
+ 67 8
+
+nonterminal labels
+ 4 10
+ 67 10
+
+nonterminal const_decl
+ 4 11
+ 67 11
+
+nonterminal type_decl
+ 4 12
+ 67 12
+
+nonterminal var_decl
+ 4 13
+ 67 13
+
+nonterminal label_decl
+ 14 34
+
+nonterminal const
+ 69 121
+ 70 138
+ 71 138
+ 75 147
+ 76 138
+ 77 138
+ 156 237
+ 200 138
+ 214 270
+ 215 138
+ 216 138
+ 217 138
+ 265 138
+ 280 138
+ 283 237
+ 286 309
+ 298 138
+ 299 138
+ 301 138
+ 316 138
+ 318 237
+ 327 237
+ 330 237
+
+nonterminal type
+ 70 131
+ 71 144
+ 76 148
+ 77 149
+ 200 262
+ 216 273
+ 265 297
+ 280 305
+ 298 314
+ 299 315
+ 316 321
+
+nonterminal proc
+ 7 20
+ 118 20
+
+nonterminal phead
+ 7 22
+ 118 22
+
+nonterminal pheadres
+ 7 23
+ 118 23
+
+nonterminal porf
+ 7 24
+ 118 24
+
+nonterminal params
+ 68 119
+
+nonterminal ftype
+ 119 199
+
+nonterminal param_list
+ 120 201
+
+nonterminal param
+ 120 202
+ 264 296
+
+nonterminal number
+ 69 123
+ 70 123
+ 71 123
+ 75 123
+ 76 123
+ 77 123
+ 124 208
+ 125 209
+ 156 123
+ 200 123
+ 214 123
+ 215 123
+ 216 123
+ 217 123
+ 265 123
+ 280 123
+ 283 123
+ 286 123
+ 298 123
+ 299 123
+ 301 123
+ 316 123
+ 318 123
+ 327 123
+ 330 123
+
+nonterminal const_id
+ 69 126
+ 70 126
+ 71 126
+ 75 126
+ 76 126
+ 77 126
+ 124 126
+ 125 126
+ 156 126
+ 200 126
+ 214 126
+ 215 126
+ 216 126
+ 217 126
+ 265 126
+ 280 126
+ 283 126
+ 286 126
+ 298 126
+ 299 126
+ 301 126
+ 316 126
+ 318 126
+ 327 126
+ 330 126
+
+nonterminal const_list
+ 156 235
+ 283 235
+ 318 324
+ 327 324
+ 330 324
+
+nonterminal simple_type
+ 70 132
+ 71 132
+ 76 132
+ 77 132
+ 200 132
+ 215 272
+ 216 132
+ 217 274
+ 265 132
+ 280 132
+ 298 132
+ 299 132
+ 301 317
+ 316 132
+
+nonterminal struct_type
+ 70 134
+ 71 134
+ 76 134
+ 77 134
+ 135 212
+ 200 134
+ 216 134
+ 265 134
+ 280 134
+ 298 134
+ 299 134
+ 316 134
+
+nonterminal type_id
+ 70 136
+ 71 136
+ 76 136
+ 77 136
+ 200 136
+ 215 136
+ 216 136
+ 217 136
+ 265 136
+ 279 303
+ 280 136
+ 298 136
+ 299 136
+ 301 136
+ 316 136
+ 319 325
+
+nonterminal simple_type_list
+ 215 271
+
+nonterminal field_list
+ 142 218
+ 332 334
+
+nonterminal fixed_part
+ 142 219
+ 332 219
+
+nonterminal variant_part
+ 219 276
+
+nonterminal field
+ 142 220
+ 277 302
+ 332 220
+
+nonterminal variant_list
+ 318 322
+ 330 333
+
+nonterminal variant
+ 318 323
+ 327 331
+ 330 323
+
+nonterminal stat
+ 21 45
+ 46 81
+ 51 45
+ 55 45
+ 82 151
+ 184 249
+ 186 251
+ 190 255
+ 236 288
+ 287 310
+ 292 311
+ 293 312
+ 294 313
+
+nonterminal stat_lsth
+ 21 46
+ 51 46
+ 55 46
+
+nonterminal cstat_list
+ 156 232
+
+nonterminal cstat
+ 156 233
+ 283 308
+
+nonterminal proc_id
+ 21 48
+ 46 48
+ 51 48
+ 55 48
+ 82 48
+ 184 48
+ 186 48
+ 190 48
+ 236 48
+ 287 48
+ 292 48
+ 293 48
+ 294 48
+
+nonterminal wexpr_list
+ 83 152
+ 177 244
+
+nonterminal assign
+ 21 50
+ 46 50
+ 51 50
+ 55 50
+ 56 106
+ 82 50
+ 184 50
+ 186 50
+ 190 50
+ 236 50
+ 287 50
+ 292 50
+ 293 50
+ 294 50
+
+nonterminal expr
+ 52 86
+ 54 104
+ 58 108
+ 59 109
+ 83 154
+ 88 174
+ 89 175
+ 98 178
+ 99 179
+ 100 183
+ 111 193
+ 114 193
+ 157 238
+ 158 239
+ 159 240
+ 177 154
+ 187 252
+ 188 253
+ 189 254
+ 191 256
+ 227 154
+ 228 282
+ 247 183
+ 248 291
+ 258 295
+ 306 320
+
+nonterminal var_list
+ 53 101
+
+nonterminal variable
+ 21 61
+ 46 61
+ 51 61
+ 52 95
+ 53 102
+ 54 95
+ 55 61
+ 56 61
+ 58 95
+ 59 95
+ 82 61
+ 83 95
+ 88 95
+ 89 95
+ 98 95
+ 99 95
+ 100 95
+ 111 95
+ 114 95
+ 157 95
+ 158 95
+ 159 95
+ 177 95
+ 184 61
+ 185 250
+ 186 61
+ 187 95
+ 188 95
+ 189 95
+ 190 61
+ 191 95
+ 227 95
+ 228 95
+ 236 61
+ 247 95
+ 248 95
+ 258 95
+ 287 61
+ 292 61
+ 293 61
+ 294 61
+ 306 95
+
+nonterminal relop
+ 86 157
+ 104 157
+ 108 157
+ 109 157
+ 154 157
+ 174 157
+ 175 157
+ 178 157
+ 179 157
+ 183 157
+ 193 157
+ 238 157
+ 239 157
+ 240 157
+ 252 157
+ 253 157
+ 254 157
+ 256 157
+ 282 157
+ 291 157
+ 295 157
+ 320 157
+
+nonterminal addop
+ 86 158
+ 104 158
+ 108 158
+ 109 158
+ 154 158
+ 174 158
+ 175 158
+ 178 158
+ 179 158
+ 183 158
+ 193 158
+ 238 158
+ 239 158
+ 240 158
+ 252 158
+ 253 158
+ 254 158
+ 256 158
+ 282 158
+ 291 158
+ 295 158
+ 320 158
+
+nonterminal divop
+ 86 159
+ 104 159
+ 108 159
+ 109 159
+ 154 159
+ 174 159
+ 175 159
+ 178 159
+ 179 159
+ 183 159
+ 193 159
+ 238 159
+ 239 159
+ 240 159
+ 252 159
+ 253 159
+ 254 159
+ 256 159
+ 282 159
+ 291 159
+ 295 159
+ 320 159
+
+nonterminal func_id
+ 52 97
+ 54 97
+ 58 97
+ 59 97
+ 83 97
+ 88 97
+ 89 97
+ 98 97
+ 99 97
+ 100 97
+ 111 97
+ 114 97
+ 157 97
+ 158 97
+ 159 97
+ 177 97
+ 187 97
+ 188 97
+ 189 97
+ 191 97
+ 227 97
+ 228 97
+ 247 97
+ 248 97
+ 258 97
+ 306 97
+
+nonterminal element_list
+ 100 180
+
+nonterminal element
+ 100 182
+ 247 290
+
+nonterminal qual_var
+ 21 62
+ 46 62
+ 51 62
+ 52 62
+ 53 62
+ 54 62
+ 55 62
+ 56 62
+ 58 62
+ 59 62
+ 82 62
+ 83 62
+ 88 62
+ 89 62
+ 98 62
+ 99 62
+ 100 62
+ 111 62
+ 114 62
+ 157 62
+ 158 62
+ 159 62
+ 177 62
+ 184 62
+ 185 62
+ 186 62
+ 187 62
+ 188 62
+ 189 62
+ 190 62
+ 191 62
+ 227 62
+ 228 62
+ 236 62
+ 247 62
+ 248 62
+ 258 62
+ 287 62
+ 292 62
+ 293 62
+ 294 62
+ 306 62
+
+nonterminal array_id
+ 21 63
+ 46 63
+ 51 63
+ 52 63
+ 53 63
+ 54 63
+ 55 63
+ 56 63
+ 58 63
+ 59 63
+ 82 63
+ 83 63
+ 88 63
+ 89 63
+ 98 63
+ 99 63
+ 100 63
+ 111 63
+ 114 63
+ 157 63
+ 158 63
+ 159 63
+ 177 63
+ 184 63
+ 185 63
+ 186 63
+ 187 63
+ 188 63
+ 189 63
+ 190 63
+ 191 63
+ 227 63
+ 228 63
+ 236 63
+ 247 63
+ 248 63
+ 258 63
+ 287 63
+ 292 63
+ 293 63
+ 294 63
+ 306 63
+
+nonterminal expr_list
+ 111 192
+ 114 196
+
+nonterminal record_id
+ 21 64
+ 46 64
+ 51 64
+ 52 64
+ 53 64
+ 54 64
+ 55 64
+ 56 64
+ 58 64
+ 59 64
+ 82 64
+ 83 64
+ 88 64
+ 89 64
+ 98 64
+ 99 64
+ 100 64
+ 111 64
+ 114 64
+ 157 64
+ 158 64
+ 159 64
+ 177 64
+ 184 64
+ 185 64
+ 186 64
+ 187 64
+ 188 64
+ 189 64
+ 190 64
+ 191 64
+ 227 64
+ 228 64
+ 236 64
+ 247 64
+ 248 64
+ 258 64
+ 287 64
+ 292 64
+ 293 64
+ 294 64
+ 306 64
+
+nonterminal field_id
+ 112 194
+ 115 197
+
+nonterminal ptr_id
+ 21 65
+ 46 65
+ 51 65
+ 52 65
+ 53 65
+ 54 65
+ 55 65
+ 56 65
+ 58 65
+ 59 65
+ 82 65
+ 83 65
+ 88 65
+ 89 65
+ 98 65
+ 99 65
+ 100 65
+ 111 65
+ 114 65
+ 157 65
+ 158 65
+ 159 65
+ 177 65
+ 184 65
+ 185 65
+ 186 65
+ 187 65
+ 188 65
+ 189 65
+ 190 65
+ 191 65
+ 227 65
+ 228 65
+ 236 65
+ 247 65
+ 248 65
+ 258 65
+ 287 65
+ 292 65
+ 293 65
+ 294 65
+ 306 65
+
+nonterminal wexpr
+ 83 153
+ 177 153
+ 227 281
+
+nonterminal octhex
+ 154 229
+ 282 307
+
+nonterminal var_id
+
+69/95 terminals, 61/150 nonterminals
+184/300 grammar rules, 337/700 states
+18 shift/reduce, 4 reduce/reduce conflicts reported
+38/400 working sets used
+memory: states,etc. 2143/3000, parser 1005/2500
+139/600 distinct lookahead sets
+350 extra closures
+1697 action entries
+1198 action entries saved through merging 52 states
+332 goto entries
+830 entries saved by goto default