1 /* BEGIN INCLUDE FILE mrds_rst_parse_stack.incl.pl1 jeg 8/8/78 */ 2 3 declare 1 lex_stack (-5:50) based (lex_stack_ptr), 4 2 symptr ptr, /* pointer to terminal symbol in source input */ 5 2 symlen fixed binary (24), /* length of terminal symbol in input */ 6 2 line fixed binary (24), /* line number in source for this symbol */ 7 2 symbol fixed binary (24), /* parser's encoding value for the terminal symbol */ 8 2 val fixed binary (71), /* conversion value for numbers */ 9 2 float float binary (63), /* conversion value if floating point number */ 10 2 line_strt ptr, /* pointer to start of current line */ 11 2 line_size fixed binary (24), /* current length of line */ 12 2 token_num fixed binary (24) ; /* number of this token in current line, 13 0 if <error_symbol> for missing or wrong symbol */ 14 15 declare lex_stack_ptr ptr ; /* pointer to lexical stack */ 16 17 declare debug_sw bit (1) static init ("0"b) ; /* on => output debug messages */ 18 19 dcl 1 p_struct (50) aligned based (p_struct_ptr), 20 2 parse_stack fixed bin (24), /* * parse stack */ 21 2 parse_stack2 fixed bin (24); /* * copy of parse stack used 22 with local error recovery */ 23 24 dcl p_struct_ptr ptr ; 25 26 27 dcl cur_lex_top (50) fixed bin (24) aligned based (cur_lex_top_ptr) ; /* current lex top stack (with parse_stack) */ 28 29 declare cur_lex_top_ptr ptr ; 30 31 32 /* END INCLUDE FILE mrds_rst_parse_stack.incl.pl1 */ 33