BSD 1 development
authorBill Joy <wnj@ucbvax.Berkeley.EDU>
Mon, 30 Jan 1978 00:55:05 +0000 (16:55 -0800)
committerBill Joy <wnj@ucbvax.Berkeley.EDU>
Mon, 30 Jan 1978 00:55:05 +0000 (16:55 -0800)
Work on file pxp/y.output
Work on file UPDATE
Work on file printd

Synthesized-from: 1bsd

UPDATE [new file with mode: 0644]
printd [new file with mode: 0755]
pxp/y.output [new file with mode: 0644]

diff --git a/UPDATE b/UPDATE
new file mode 100644 (file)
index 0000000..72b2adc
--- /dev/null
+++ b/UPDATE
@@ -0,0 +1 @@
+This tape reflects updates to Thu Jan 19 10:34:29 PST 1978
diff --git a/printd b/printd
new file mode 100755 (executable)
index 0000000..3756057
--- /dev/null
+++ b/printd
@@ -0,0 +1,6 @@
+tbl -ms READ_ME | nroff
+pr */READ_ME
+cd ex-1.1
+pr SETUP SYSDEP
+nroff -ms NOTE
+nroff -ms CORRECTIONS
diff --git a/pxp/y.output b/pxp/y.output
new file mode 100644 (file)
index 0000000..1e628dd
--- /dev/null
@@ -0,0 +1,3626 @@
+
+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