Start development on BSD 2
[unix-history] / .ref-BSD-1 / pxp / y.output
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