COMPILATION LISTING OF SEGMENT cobol_db_phase Compiled by: Multics PL/I Compiler, Release 31b, of April 24, 1989 Compiled at: Bull HN, Phoenix AZ, System-M Compiled on: 05/24/89 1003.9 mst Wed Options: optimize map 1 /****^ *********************************************************** 2* * * 3* * Copyright, (C) BULL HN Information Systems Inc., 1989 * 4* * * 5* * Copyright, (C) Honeywell Information Systems Inc., 1982 * 6* * * 7* * Copyright (c) 1972 by Massachusetts Institute of * 8* * Technology and Honeywell Information Systems, Inc. * 9* * * 10* *********************************************************** */ 11 12 13 14 15 /****^ HISTORY COMMENTS: 16* 1) change(89-04-23,Zimmerman), approve(89-04-23,MCR8082), 17* audit(89-05-05,RWaters), install(89-05-24,MR12.3-1048): 18* MCR8082 cobol_db_phase.pl1 Fix wild array subscript. 19* END HISTORY COMMENTS */ 20 21 22 /* Modified on 02/11/85 by FCH, [5.3-1], conditional statements revised, BUG561 */ 23 /* Modified on 12/30/81 by FCH, [5.1-1], eof not properly detected if debugging mode, phx11819(BUG517)*/ 24 /* Modified on 09/17/81 by FCH, debug proc not exec on ACCEPT MESSAGE COUNT, BUG505 */ 25 /* Modified on 07/10/81 by FCH, [4.4-4], debug cards not processed unless use for debugging used (phx10378, BUG493) */ 26 /* Modified on 02/20/81 by FCH, [4.4-3], fix debugging for communication statements, BUG465 */ 27 /* Modified on 12/10/80 by FCH, [4.4-2], cobol_db_phase$initialize called by cobol_lex instead of cobol_res_words */ 28 /* Modified on 10/20/80 by FCH, [4.4-1], automatic items changed to static int options(const) */ 29 /* Modified on 06/13/80 by FCH, [4.3-1], debug-sub-i described with sign */ 30 /* Modified on 05/08/80 by FCH, [4.2-1], END-PERFORM not written after PERFORM pn1 THRU pn2 */ 31 /* Modified on 09/21/79 by FCH, [4.0-1], Fix DEBUG-LINE on pn (DB101) */ 32 /* Created for Version 4.0 by FCH on 03/20/79 */ 33 34 35 36 37 38 39 /* format: style3 */ 40 cobol_db_phase: 41 proc; 42 43 start: /* the following are init changed to assign */ 44 gotodep = "0"b; 45 preospn_bit = "0"b; 46 nestifcnt = 0; 47 cssub = 0; 48 mod_num = 0; 49 50 emrec = "0"b; 51 copy_tab.size = 0; 52 copy_mode = "0"b; 53 impswitch = 0; 54 decswitch = 0; 55 nest_lev = 0; 56 N_L = "1"b; 57 secswitch = 0; 58 59 i1 = 0; 60 syntax_line_ptr = addr (sline); 61 sline.s_exit = 59; /* 59*5+5 */ 62 63 call cobol_db (pointer_to_internal, dumfix); /* initialize diag item */ 64 65 dg_ptr = addr (diag_item); 66 diag_item.size = 28; 67 diag_item.type = 5; 68 diag_item.run = 10; 69 TOK_ptr, ft_ptr, occptr = null (); 70 71 /*[4.0-1]*/ 72 ln_not_emitted = "1"b; /*[4.0-1]*/ 73 nines_ptr = null (); 74 lev_dg_ptr = addr (lev_diag_item); 75 lev_diag_item.size = 28; 76 lev_diag_item.type = 5; 77 lev_diag_item.run = 9; 78 79 diag_item.info = "00000000"b; 80 DIAG_NUM = 0; 81 trace_ptr = addr (interp); 82 tbit = fixed_common.syntax_trace; 83 pn_count = 0; 84 85 debug_table.cd.first_ptr, debug_table.cd.last_ptr = null (); 86 debug_table.file.first_ptr, debug_table.file.last_ptr = null (); 87 debug_table.proc.first_ptr, debug_table.proc.last_ptr = null (); 88 debug_table.data.first_ptr, debug_table.data.last_ptr = null (); 89 90 debug_table.cd.size = 0; 91 debug_table.file.size = 0; 92 debug_table.proc.size = 0; 93 debug_table.data.size = 0; 94 95 debug_table.cd.max = 5; 96 debug_table.file.max = 20; 97 debug_table.proc.max = 50; 98 debug_table.data.max = 50; 99 100 string (debug_table.data.all_refs) = "0"b; 101 102 data_size = size (data_entry); 103 proc_size = size (proc_entry); 104 file_size = size (file_entry); 105 cd_size = size (cd_entry); 106 107 call st_init; 108 all_procs = "0"b; 109 TOK_TAB.size = 0; 110 111 if tbit 112 then call cobol_syntax_trace_$initialize_phase (trace_ptr, 4); 113 114 call SCAN; 115 116 current_line = syntax_line.s_exit; 117 118 go to new_inst; 119 120 get_rec: 121 entry (crp, REC_NUM); 122 123 /* called by cobol_get_rec which */ 124 /* is called by cobol_res_words after */ 125 /* PROCEDURE DIVISION */ 126 127 128 crp = addr (DD (REC_NUM)); 129 130 /*[5.1-1]*/ 131 if REC_NUM = 17 132 then REC_NUM = 0; 133 134 return; 135 136 declare crp ptr, 137 REC_NUM fixed bin; 138 139 /*[4.4-1]*/ 140 declare DD (16) char (73) static int options (constant) 141 init ("~~~~~~ 01 debug-item. 142 ", "~~~~~~ 02 debug-line picture is x(6). 143 ", "~~~~~~ 02 filler picture is x value space. 144 ", "~~~~~~ 02 debug-name picture is x(30). 145 ", "~~~~~~ 02 filler picture is x value space. 146 ", "~~~~~~ 02 debug-subs. 147 ", "~~~~~~ 03 debug-sub-1 pic is s9999 148 ", "~~~~~~ sign is leading separate character. 149 ", "~~~~~~ 03 filler picture is x value space. 150 ", "~~~~~~ 03 debug-sub-2 pic is s9999 151 ", "~~~~~~ sign is leading separate character. 152 ", "~~~~~~ 03 filler picture is x value space. 153 ", "~~~~~~ 03 debug-sub-3 pic is s9999 154 ", "~~~~~~ sign is leading separate character. 155 ", "~~~~~~ 03 filler picture is x value space. 156 ", "~~~~~~ 02 debug-contents picture is x(2048). ""~~~~~~"" 157 "); 158 159 get_perf: 160 entry (crp, REC_NUM); 161 162 /* called by cobol_get_rec which */ 163 /* is called by cobol_res_words after */ 164 /* END DECLARATIVES */ 165 166 /*[4.4-1]*/ 167 declare perf_line char (72) static int; 168 169 declare proc_count fixed bin static int; 170 171 /*[5.1-1]*/ 172 if proc_def_size = 0 | proc_count >= proc_def_size + 1 173 then do; 174 REC_NUM = 0; 175 return; 176 end; 177 178 proc_count = proc_count + 1; 179 180 if proc_count <= proc_def_size 181 then do; 182 183 perf_line = "~~~~~~ perform " || proc_def_table (proc_count) -> proc_def.name || ". 184 "; 185 186 /*[4.4-1]*/ 187 crp = perf_line_ptr; 188 189 end; 190 191 else crp = addr (TKN (17)); 192 193 return; 194 195 196 get_tok: 197 entry (crp, REC_NUM); 198 199 /* called by cobol_get_rec which */ 200 /* is called by cobol_res_words after */ 201 /* WORKING STORAGE */ 202 203 crp = addr (TKN (REC_NUM)); 204 205 /*[5.1-1]*/ 206 if REC_NUM = 18 207 then REC_NUM = 0; 208 209 210 return; 211 212 /*[4.4-1]*/ 213 dcl TKN (17) char (73) static int options (constant) 214 init ("~~~~~~ debug-line debug-name debug-contents 215 ", "~~~~~~ debug-sub-1 debug-sub-2 debug-sub-3 216 ", "~~~~~~ ""LLLLLL"" ""NNNNNNNNNNNNNNNNNNNNNNNNNNNNNN"" 217 ", "~~~~~~ move to ""~"" ""~"" = space perform 218 ", "~~~~~~ ""START PROGRAM"" ""SORT INPUT"" ""SORT OUTPUT"" ""MERGE OUTPUT"" 219 ", "~~~~~~ ""PERFORM LOOP"" ""USE PROCEDURE"" ""FALL THROUGH"" 220 ", "~~~~~~ set compute up by end-perform times until not ) 221 ", "~~~~~~ thru add end-if 222 ", "~~~~~~ on size error at end invalid key eop overflow 223 ", "~~~~~~ with data exception no end-add end-call 224 ", "~~~~~~ end-compute end-delete 225 ", "~~~~~~ end-divide end-evaluate end-if end-multiply end-perform 226 ", "~~~~~~ end-read end-receive end-return end-rewrite 227 ", "~~~~~~ end-search end-start 228 ", "~~~~~~ end-string end-subtract end-unstring end-write 229 ", "~~~~~~ ( if DEBUG-ON . debug-subs ""999999"" 230 ", "~~~~~~ ""~~~"" 231 "); 232 233 proc_def_ptr: 234 entry (proc_def_ptr); /* used by cobol_res_words, use for debugging */ 235 declare proc_def_table (64) ptr static internal; 236 declare proc_def_size fixed bin static internal; 237 238 declare proc_def_ptr ptr; 239 240 proc_def_size = proc_def_size + 1; 241 proc_def_table (proc_def_size) = addrel (proc_def_ptr, 1); 242 243 return; 244 245 initialize: 246 entry; 247 248 /*[4.4-1]*/ 249 declare perf_line_ptr ptr static int; /* called by cobol_lex */ 250 proc_def_size, proc_count = 0; /*[4.4-2]*/ 251 /* fixed_common.debug = "1"b;*/ 252 /*[4.4-1]*/ 253 perf_line_ptr = addr (perf_line); 254 255 return; 256 257 /* */ 258 /* syntax interpreter */ 259 /* */ 260 261 fail: /*failure */ 262 if tbit 263 then call cobol_syntax_trace_$trace (trace_ptr, tm2); 264 265 next_inst: 266 current_line = current_line + 1; 267 268 new_inst: /* new instruction */ 269 syntax_line_ptr = addr (syntax_table (current_line)); 270 271 go to test (syntax_line.t_type); 272 273 test (0): /* reserved word test */ 274 if reserved_word.type ^= 1 275 then go to fail; 276 277 if reserved_word.key ^= syntax_line.t_field 278 then go to fail; 279 280 success: /* success */ 281 if tbit 282 then call cobol_syntax_trace_$trace (trace_ptr, tm1); 283 284 ucon: 285 if syntax_line.o_bit ^= " " 286 then do; 287 if syntax_line.o_bit > fixed_common.comp_level 288 then call lev_diag (syntax_line.a_num); 289 go to ret; 290 end; 291 292 go to action (syntax_line.a_num); 293 294 test (1): /* check routine test */ 295 go to check (syntax_line.t_field); 296 297 test (2): /* unconditional branch */ 298 DIAG_NUM = syntax_line.t_field; 299 act_num = syntax_line.a_num; 300 301 if syntax_line.o_bit ^= " " 302 then do; 303 if syntax_line.o_bit > fixed_common.comp_level 304 then do; 305 mod_num = syntax_line.a_num; 306 call lev_diag (DIAG_NUM); 307 end; 308 309 DIAG_NUM = 0; 310 act_num = 0; 311 end; 312 313 if tbit 314 then call cobol_syntax_trace_$trace (trace_ptr, tm1); 315 316 go to action (act_num); 317 318 test (3): 319 i1 = i1 + 1; 320 if tbit 321 then call cobol_syntax_trace_$trace (trace_ptr, tm3); 322 323 if i1 > 75 324 then go to comp_error; 325 326 intrp_stack (i1) = current_line; 327 current_line = syntax_line.t_field; 328 329 go to new_inst; 330 331 ret: 332 action (0): 333 if DIAG_NUM ^= 0 334 then call diag (DIAG_NUM); 335 336 if syntax_line.s_bit = "s" 337 then call SCAN; 338 339 current_line = syntax_line.s_exit; 340 341 go to new_inst; 342 343 action (1): /* exit true */ 344 current_line = intrp_stack (i1); 345 346 if tbit 347 then call cobol_syntax_trace_$trace (trace_ptr, tm4); 348 349 syntax_line_ptr = addr (syntax_table (current_line)); 350 i1 = i1 - 1; 351 352 go to ucon; 353 354 action (2): /* exit false */ 355 current_line = intrp_stack (i1); 356 357 if tbit 358 then call cobol_syntax_trace_$trace (trace_ptr, tm5); 359 360 i1 = i1 - 1; 361 362 go to next_inst; 363 364 comp_error: 365 diag_item.number = 183; 366 diag_item.column = header.column; 367 diag_item.line = header.line; 368 369 call cobol_c_list (dg_ptr); 370 371 return; 372 373 st_init: 374 proc; 375 376 bad_token = "0"b; 377 inhibit_db = "0"b; 378 statement.cd.size, statement.file.size, statement.proc.size, statement.data.size = 0; 379 380 381 end; 382 383 emit_nl: 384 proc; 385 386 N_L = "0"b; 387 call emit; 388 N_L = "1"b; 389 390 end; 391 392 EMIT: 393 proc; 394 395 declare i fixed bin, 396 AR ptr; 397 398 if TOK_TAB.size ^= 0 399 then do i = 1 by 1 to TOK_TAB.size; 400 401 AR = TOK_TAB.ptr (i); 402 last_line = header.line; 403 last_col = header.column; 404 405 RP = AR; 406 call PUT_REC; 407 408 end; 409 410 end; 411 412 PUT_REC: 413 proc; 414 415 /* make entry in output stream */ 416 /* enter copy stack if required */ 417 if copy_mode 418 then do; 419 copy_tab.size = copy_tab.size + 1; 420 421 call cobol_db_put (cobol_x3fp, st, RP, RP -> header.size, RP1); 422 423 copy_tab.ptr (copy_tab.size) = addrel (RP1, 1); 424 end; 425 else call cobol_db_put (cobol_x3fp, st, RP, RP -> header.size, RP1); 426 end; 427 428 emit_copy: 429 proc (loc); 430 431 declare loc fixed bin; 432 declare p ptr, 433 i fixed bin; 434 435 /* process entry in copy stack */ 436 437 if loc > copy_tab.size 438 then return; 439 440 do i = loc by 1 to copy_tab.size; 441 442 p = copy_tab.ptr (i); 443 444 call cobol_db_put (cobol_x3fp, st, p, p -> header.size, RP1); 445 446 p = addrel (RP1, 1); 447 448 p -> header.line = 0; 449 p -> header.column = 0; 450 451 end; 452 453 copy_tab.size = loc - 1; 454 455 end; 456 457 SCAN: 458 proc; 459 460 do while ("1"b); 461 462 TOK_TAB.size = TOK_TAB.size + 1; 463 464 call cobol_swf_get (cobol_rmin2fp, st, addr_record, tln); 465 466 if substr (st, 17, 16) ^= "0"b 467 then return; 468 469 TOK_TAB.ptr (TOK_TAB.size) = addr_record; 470 471 if header.type ^= 5 & header.type ^= 6 472 then return; 473 474 bad_token = "1"b; 475 476 end; 477 478 end; 479 480 diag: 481 proc (diag_num); 482 483 declare diag_num fixed bin; 484 485 diag_item.number = diag_num; 486 diag_item.column = header.column; 487 diag_item.line = header.line; 488 call cobol_c_list (dg_ptr); 489 end diag; 490 491 lev_diag: 492 proc (diag_num); 493 494 declare diag_num fixed bin; 495 496 lev_diag_item.line = header.line; 497 lev_diag_item.column = header.column; 498 lev_diag_item.number = diag_num; 499 lev_diag_item.module = mod_num; 500 501 call cobol_c_list (lev_dg_ptr); 502 503 mod_num = 0; 504 505 end; 506 507 /* is item an 01 or 77 item in linkage section */ 508 509 510 511 check (2): 512 lident: 513 if (header.type = 9) & ((data_name.level = 01) | (data_name.level = 77)) & data_name.linkage_section 514 then go to success; 515 go to fail; /* is it a section header */ 516 check (4): 517 sechdr: 518 if (header.type = 7) & (proc_def.section_name = "1"b) 519 then go to success; 520 go to fail; /* is it a non sort file name */ 521 522 523 524 check (5): 525 filenm: 526 if header.type = 12 527 then go to success; 528 else go to fail; 529 530 check (6): 531 res_test: 532 if db_res = 1 533 then inhibit_db = "0"b; 534 else inhibit_db = "1"b; 535 536 current_line = current_line + res; 537 go to new_inst; /* is it a report section group item */ 538 check (7): 539 rident: 540 if header.type = 21 541 then go to success; 542 go to fail; /* is it a procedure definition */ 543 check (8): 544 paranm: 545 prdef: 546 if (header.type = 7 & proc_def.section_name = "0"b) 547 then go to success; 548 go to fail; /* is it a verb */ 549 550 551 552 check (9): 553 verb: 554 if ((header.type = 1) & (reserved_word.verb = "1"b)) 555 then go to success; 556 go to fail; /* is section number legitimate */ 557 558 559 check (10): 560 prnum: 561 if header.type = 2 & numeric_lit.integral = "1"b & numeric_lit.sign = " " & numeric_lit.seg_range = "1"b 562 then go to success; 563 go to fail; 564 565 check (11): 566 not_opt: 567 if ST.parity (nest_lev) = 1 568 then go to success; 569 else go to fail; 570 571 572 check (12): 573 numlit: 574 if header.type = 2 575 then go to success; 576 go to fail; /* is it a procedure name reference */ 577 578 579 check (14): 580 prnm: 581 if header.type = 18 582 then go to success; 583 go to fail; /* is it a non numeric literal */ 584 check (15): 585 nonumlit: 586 if header.type = 3 587 then go to success; 588 go to fail; /* is it an 01 or 77 item within file working-storage communication or link section */ 589 590 591 check (16): 592 useid: 593 if header.type = 2 | header.type = 3 594 then go to success; 595 596 if header.type = 9 597 then do; 598 if ((data_name.level = 1 | data_name.level = 77) 599 & (data_name.file_section | data_name.working_storage | data_name.communication_section 600 | data_name.linkage_section | data_name.constant_section)) 601 then go to success; 602 end; 603 604 go to fail; 605 606 /* is it a non sort file name */ 607 608 609 check (17): 610 nsfilnm: 611 if header.type = 12 612 then go to success; 613 else go to fail; /* is it an input cd name */ 614 615 /*[5.0-1]*/ 616 dcl cd_pres bit (1); 617 check (18): 618 incdnm: 619 if (addr_record -> cdtoken.type = 13 & addr_record -> cdtoken.options.input) 620 /*[5.0-1]*/ 621 then do; 622 cd_pres = "1"b; 623 go to success; 624 end; /*[5.0-1]*/ 625 else do; 626 cd_pres = "0"b; 627 go to fail; 628 end; /* is it an output cd name */ 629 630 631 check (19): 632 outcdnm: 633 if (addr_record -> cdtoken.type = 13 & addr_record -> cdtoken.output) 634 then go to success; 635 go to fail; 636 637 /* is it a literal */ 638 639 640 641 check (21): 642 lit: 643 if header.type = 2 | header.type = 3 644 then go to success; 645 go to fail; /* is item a figurative constant except all */ 646 check (22): 647 figconall: 648 if header.type = 1 & reserved_word.figcon 649 then go to success; 650 651 go to fail; 652 653 check (25): 654 rpid: /* if report_name.type = 20 | (group_name.type = 21 & group_name.group_type = 4) then go to success; 655*go to fail; */ 656 /* is it a declarative section name reference */ 657 check (26): 658 descnm: 659 if header.type = 18 & proc_def.section_name & proc_def.declarative_proc 660 then go to success; 661 go to fail; /* is it an rd report name */ 662 check (27): 663 repnm: 664 if header.type = 20 665 then go to success; 666 go to fail; /*is file not sequentila access 667* not file table already in core from check 38 */ 668 669 check (29): 670 notseqac: 671 if access > 1 672 then go to success; 673 go to fail; 674 675 /* is it a non sort mass storage file */ 676 check (31): 677 msfilnm: /* according to ron ham we do not check for ms file regardless of codasyl rules */ 678 if header.type = 12 679 then go to success; 680 go to fail; 681 682 /* is it an index name */ 683 check (33): 684 xnm: 685 if header.type = 10 686 then do; 687 min_index = max (min_index, index_name.min); 688 max_index = min (max_index, index_name.max); 689 go to success; 690 end; 691 go to fail; 692 693 /* is item a declarative section name reference */ 694 /* and is it a random processing section */ 695 696 697 698 check (35): 699 descnmra: 700 if header.type = 18 & proc_def.section_name 701 then go to success; 702 go to fail; /* is it an sa area name */ 703 check (36): 704 saanm: 705 if header.type = 15 706 then go to success; 707 go to fail; /* is it an 01 data name under sa */ 708 check (37): 709 said: 710 if header.type = 9 & data_name.level_01 & data_name.exp_redefining 711 then go to success; 712 go to fail; 713 714 /* is it end cobol statement */ 715 check (39): 716 endcob: 717 if header.type = 1 & reserved_word.end_cobol = "1"b 718 then go to success; 719 go to fail; /* is verb an imperative verb */ 720 check (41): 721 impvrb: 722 if header.type = 1 & reserved_word.imper_verb = "1"b 723 then go to success; 724 go to fail; 725 726 /* is this item a record within the associated sort file */ 727 check (46): 728 recnm: 729 if header.type ^= 9 730 then go to fail; 731 732 go to success; 733 734 /* is this file the same as associated file in the sort statement */ 735 check (49): 736 asfil: 737 if header.type ^= 16 738 then go to fail; 739 740 741 go to success; 742 743 /* is item not subscripted and not indexed */ 744 /* but still has the occurs and indexed by clauses */ 745 check (50): 746 srchid: 747 if header.type = 9 & data_name.subscripted & data_name.indexed_by 748 then go to success; 749 else go to fail; /* is item an integer type or is it usage is index */ 750 check (51): 751 usornm: 752 if header.type = 9 & (data_name.pic_integer | data_name.usage_index) 753 then go to success; 754 else go to fail; /* does item have the key is clause */ 755 check (52): 756 keylbl: 757 if data_name.key_a | data_name.key_d 758 then go to success; 759 else go to fail; 760 761 /* is it a one character integer without an operational sign */ 762 763 764 765 check (54): 766 onechnosn: 767 if data_name.item_length = 1 & data_name.pic_integer & ^data_name.item_signed 768 then go to success; 769 go to fail; 770 771 /* is it a mnemonic name */ 772 check (56): 773 mnenm: 774 if header.type = 17 775 then go to success; 776 go to fail; 777 778 /* does the file have an associated format 1 use procedure */ 779 780 /* is it an index data item or 781* is it an elementary integer item */ 782 check (58): 783 xint: 784 if header.type = 9 & data_name.elementary & data_name.usage_index = "1"b 785 then go to success; 786 787 if header.type = 9 & data_name.elementary = "1"b & data_name.pic_integer = "1"b 788 then go to success; 789 go to fail; /* is it a positive integer literal */ 790 791 792 793 check (59): 794 posint: 795 if header.type = 2 & numeric_lit.integral = "1"b & numeric_lit.sign ^= "-" 796 then go to success; 797 go to fail; /* is it a sortt file */ 798 799 800 801 check (60): 802 srtfil: 803 if header.type = 16 804 then go to success; 805 go to fail; /* is itt a data_name within the saved file */ 806 807 808 check (61): 809 dninfl: 810 if header.type = 9 811 then go to success; 812 go to fail; /* does item have usage is display clause */ 813 814 check (62): 815 usisds: 816 if data_name.non_elementary | (data_name.elementary & data_name.display) 817 then go to success; 818 go to fail; /* is item fixed length with usage is display clause */ 819 check (63): 820 flusisds: 821 if data_name.display & ^data_name.variable_length 822 then go to success; 823 go to fail; /* is item an elementary data item with usage is display clause 824* and with no edit symbols */ 825 check (64): 826 elneds: 827 if data_name.elementary & data_name.display & ^data_name.numeric_edited & ^data_name.alphanum_edited 828 & ^data_name.alphabetic_edited 829 then go to success; 830 go to fail; /* is itt an elementary numeric integer data item */ 831 check (65): 832 elnuindi: 833 if data_name.elementary & data_name.numeric & data_name.pic_integer 834 then go to success; 835 go to fail; /* is it an elementary numeric item */ 836 837 838 839 check (66): 840 elnuit: 841 if header.type = 9 & data_name.elementary & data_name.numeric 842 then go to success; 843 go to fail; /* is it a file name */ 844 845 846 847 check (67): 848 file: 849 if header.type = 12 | header.type = 16 850 then go to success; 851 go to fail; /* is it an alphanumeric data item */ 852 check (68): 853 andait: 854 if data_name.alphanum | data_name.alphanum_edited 855 then go to success; 856 go to fail; /* is item a non_sort record name */ 857 858 859 860 check (70): 861 nsrecnm: 862 if header.type = 9 863 then go to success; 864 else go to fail; /* does saved item have linage clause */ 865 /* not to be executed until common is all set */ 866 check (71): 867 linage: 868 if file_table.linage 869 then go to success; 870 871 go to fail; 872 873 check (72): 874 in_line: 875 if IN_LINE = 0 876 then go to success; 877 else go to fail; 878 879 /* is item an unsubscripted data name excluding index data names */ 880 881 882 883 check (73): 884 undana: 885 if header.type = 9 & ^data_name.subscripted & ^data_name.usage_index 886 then go to success; 887 go to fail; 888 889 /* is item a subscripted data name excluding index data names */ 890 891 check (74): 892 sudana: 893 if header.type = 9 & data_name.subscripted & ^data_name.usage_index 894 then go to success; 895 go to fail; 896 897 /* is subcnt less than level of occurs in the saved ident */ 898 check (75): 899 ieqlvl: 900 if subcnt <= 3 901 then go to success; 902 go to fail; /* is the saved ident indexed at this level */ 903 check (76): 904 indexed: 905 if indexedno (subcnt) ^= 0 906 then do; 907 sub_loc = sub_loc + 1; 908 go to success; 909 end; 910 go to fail; /* is index no of curent item = to 911* index no of saved item */ 912 check (77): 913 indeqind: 914 if index_name.index_no = indexedno (subcnt) 915 then go to success; 916 go to fail; /* is item a positive integer whose value is greater than zero */ 917 check (78): 918 pigz: 919 call pigz_sub; 920 921 if pigz_res = 0 922 then go to success; 923 else go to fail; 924 925 pigz_sub: 926 proc; 927 928 pigz_res = 0; 929 litcnt = 1; 930 931 if header.type = 2 & numeric_lit.integral & numeric_lit.sign ^= "-" 932 then do while ("1"b); 933 934 if substr (numeric_lit.literal, litcnt, 1) ^= "0" 935 then return; 936 937 if litcnt = numeric_lit.places 938 then do; 939 pigz_res = 1; 940 return; 941 end; 942 943 litcnt = litcnt + 1; 944 945 end; 946 947 pigz_res = 1; 948 949 end; 950 951 /* is item an unsigned integer */ 952 check (79): 953 unsint: 954 if header.type = 2 & numeric_lit.integral & numeric_lit.sign = " " 955 then go to success; 956 go to fail; /* is item an arithemetic operator */ 957 check (80): 958 arop: 959 if header.type = 1 & reserved_word.arith_op 960 then go to success; 961 go to fail; 962 963 check (81): 964 examlitid: 965 if header.type = 9 | header.type = 1 | header.type = 3 966 then go to success; 967 else go to fail; /* is item a single character non numeric literal or a fig con */ 968 /* is item elementary or redefined */ 969 970 check (82): 971 elemred: 972 if data_name.elementary | data_name.s_of_rdf | data_name.o_of_rdf 973 then go to success; 974 go to fail; 975 976 977 /* does program contain sections */ 978 check (84): 979 secsw: 980 if secswitch = 1 981 then go to success; 982 go to fail; /* does imperative switch = 0 */ 983 984 985 986 check (85): 987 impsw: 988 if impswitch = 0 989 then go to success; 990 go to fail; /* is it a cdname */ 991 check (87): 992 cdname: 993 if header.type = 13 994 then go to success; 995 go to fail; /* is it a data name not in report section */ 996 check (88): 997 dana: 998 if header.type = 9 & data_name.report_section = "0"b 999 then go to success; 1000 go to fail; 1001 1002 1003 check (90): 1004 deswon: 1005 if decswitch > 1 & decswitch < 5 1006 then go to success; 1007 go to fail; 1008 1009 1010 /* is it an unsubscripted elementary data name */ 1011 1012 check (92): 1013 unelnudn: 1014 if header.type = 9 & data_name.subscripted = "0"b & data_name.elementary = "1"b & ^data_name.constant_section 1015 & data_name.numeric = "1"b 1016 then go to success; 1017 go to fail; /* is it a statement termiator */ 1018 check (93): 1019 sterm: 1020 if header.type = 1 & reserved_word.terminator = "1"b 1021 then go to success; 1022 1023 if header.type = 7 1024 then go to success; 1025 go to fail; /* is it a group item or does it have usage is display */ 1026 1027 1028 1029 check (94): 1030 usagid: 1031 if header.type = 9 & (data_name.non_elementary | data_name.display) 1032 then go to success; 1033 go to fail; 1034 1035 /* is item an elementary item with usage is display clause */ 1036 check (95): 1037 eldis: 1038 if header.type = 9 & data_name.display & data_name.elementary 1039 then go to success; 1040 go to fail; /* is it end declaratives */ 1041 1042 1043 check (115): 1044 enddec: 1045 if header.type = 1 & reserved_word.key = 98 & reserved_word.end_dec = "1"b 1046 then do; 1047 decswitch = 5; 1048 go to success; 1049 end; 1050 go to fail; /* is item alterable */ 1051 1052 check (116): 1053 edalit: 1054 if header.type = 9 & data_name.constant_section = "0"b 1055 then go to success; 1056 go to fail; /* is it an alterable elementary numeric item */ 1057 check (117): 1058 alelnuitm: 1059 if header.type = 9 & data_name.constant_section = "0"b & data_name.elementary = "1"b & data_name.numeric = "1"b 1060 then go to success; 1061 go to fail; /* is it an integer */ 1062 check (118): 1063 elnuint: 1064 if header.type = 2 & numeric_lit.integral 1065 then go to success; 1066 go to fail; /* is it an elementary numeric data name and an integer */ 1067 check (119): 1068 elnudnint: 1069 if header.type = 9 & data_name.elementary & data_name.pic_integer 1070 then go to success; 1071 go to fail; /* is it an edited or non edited alterable 1072* elementary numeric item */ 1073 check (120): 1074 edalelnue: 1075 if header.type = 9 & ^data_name.constant_section & data_name.elementary 1076 & (data_name.numeric | data_name.numeric_edited) 1077 then go to success; 1078 go to fail; /* is item alphabetic or alphanumeric */ 1079 check (122): 1080 alphoral: 1081 if data_name.alphanum | data_name.alphabetic 1082 then go to success; 1083 go to fail; /* is item an arithmetic operator or right paren */ 1084 check (123): 1085 aroprp: 1086 if header.type = 1 & reserved_word.arith_op 1087 then go to success; 1088 1089 if header.type = 1 & reserved_word.key = 188 1090 then go to success; 1091 go to fail; /* is item a relation operator */ 1092 1093 check (124): 1094 relop: 1095 if header.type = 1 & reserved_word.rel_op 1096 then go to success; 1097 1098 go to fail; /* is token res word positive or negative or zero */ 1099 check (125): 1100 pnz: 1101 if header.type = 1 1102 then if reserved_word.key = 141 | reserved_word.key = 127 | reserved_word.key = 180 1103 then go to success; 1104 go to fail; /* is subject not = 0 --- do we have a subject present */ 1105 check (126): 1106 is_sub_opt: 1107 if subj_req 1108 then go to fail; 1109 else go to success; 1110 1111 1112 /* is item a status switch condition name */ 1113 check (134): 1114 sscondnm: 1115 if mnemonic_name.type = 17 & mnemonic_name.class.switch_condition 1116 then go to success; 1117 1118 go to fail; 1119 1120 1121 check (137): 1122 lptopstk: 1123 if cssub >= 0 1124 then go to success; 1125 else go to fail; 1126 1127 /* is item an unsubscripted index data name */ 1128 1129 check (138): 1130 unxdnm: 1131 if header.type = 9 & ^data_name.subscripted & data_name.usage_index 1132 then go to success; 1133 go to fail; 1134 1135 check (141): 1136 nestedif: 1137 if nestifcnt = 0 1138 then go to success; 1139 else go to fail; 1140 1141 /* is item alphanumeric */ 1142 1143 check (147): 1144 nonumdn: 1145 if header.type = 9 & data_name.alphanum 1146 then go to success; 1147 go to fail; 1148 1149 /* is item elementary alphabetic,alphanumeric or numeric edited or a group item */ 1150 1151 1152 1153 check (149): 1154 elaanne: 1155 if header.type = 9 1156 & ((data_name.elementary & (data_name.numeric_edited | data_name.alphanum | data_name.alphabetic)) 1157 | data_name.non_elementary) 1158 then go to success; 1159 go to fail; 1160 1161 /* is item a subscribted idndex data name */ 1162 1163 1164 1165 check (150): 1166 suxdnm: 1167 if header.type = 9 & data_name.subscripted & data_name.usage_index 1168 then go to success; 1169 go to fail; 1170 1171 /* is this MNEMONIC NAME an input device */ 1172 1173 check (153): 1174 indev: 1175 if mnemonic_name.iw_key = 3 | mnemonic_name.iw_key = 1 1176 then go to success; 1177 go to fail; 1178 1179 /* is MNEMONIC NAME input device */ 1180 1181 check (154): 1182 outdev: 1183 if mnemonic_name.iw_key = 3 | mnemonic_name.iw_key = 2 1184 then go to success; 1185 go to fail; 1186 1187 check (158): 1188 adrisadr: 1189 if header.type = 9 1190 then go to success; 1191 else go to fail; 1192 1193 /* is ADDRESS same as FILE KEY in COMMON */ 1194 /* FILE TABLE already in core */ 1195 /* processing START verb */ 1196 1197 check (159): 1198 ssnm: 1199 if mnemonic_name.type = 17 & mnemonic_name.class.switch_name 1200 then go to success; 1201 1202 go to fail; 1203 1204 check (160): /* enter, routine name */ 1205 is_rout: 1206 if lang_num = 1 1207 then go to fail; 1208 1209 if header.type = 8 1210 then go to success; 1211 1212 go to fail; 1213 1214 check (161): 1215 edick: 1216 if data_name.alphanum | data_name.alphabetic 1217 | (data_name.numeric & data_name.places_left ^< 0 & data_name.places_right ^< 0) 1218 then go to success; 1219 go to fail; 1220 1221 check (162): 1222 cktp25: 1223 if header.type = 25 1224 then go to success; 1225 go to fail; 1226 1227 check (166): 1228 cklit: 1229 if header.type = 3 & alphanum_lit.lit_size < 31 1230 then go to success; 1231 go to fail; 1232 1233 /* check for a nonzero numeric literal */ 1234 check (169): 1235 nznumlit: 1236 if header.type = 2 1237 then do; 1238 litcnt = 1; 1239 1240 do while ("1"b); 1241 1242 if substr (numeric_lit.literal, litcnt, 1) ^= "0" 1243 then go to success; 1244 1245 if litcnt = numeric_lit.places 1246 then go to fail; 1247 1248 litcnt = litcnt + 1; 1249 1250 end; 1251 end; 1252 1253 go to fail; 1254 1255 /* check integer bit in saved identifier */ 1256 check (170): 1257 ckintbit: 1258 if numeric_lit.integral 1259 then go to success; 1260 go to fail; 1261 1262 /* is an lit < 32 chars for CALL */ 1263 1264 check (180): 1265 cklit1: 1266 if alphanum_lit.lit_size < 32 1267 then go to success; 1268 go to fail; 1269 1270 /* are we executing multics cobol compiler */ 1271 1272 check (181): 1273 mcobol: 1274 if compiler_id = 3 1275 then go to success; 1276 go to fail; 1277 1278 /* is an lit < 66 chars for CALL */ 1279 1280 check (182): 1281 cklit2: 1282 if alphanum_lit.lit_size < 66 1283 then go to success; 1284 go to fail; 1285 1286 /* is item unsubscripted data name excluding index data names, and, 1287* is it elementary, numeric ,integer data item. */ 1288 check (186): 1289 udneli: 1290 if header.type = 9 & ^data_name.subscripted & ^data_name.usage_index & data_name.elementary 1291 & data_name.numeric & data_name.pic_integer 1292 then do; 1293 sub_loc = sub_loc + 1; 1294 go to success; 1295 end; 1296 go to fail; 1297 1298 check (188): 1299 altst: 1300 if header.type = 9 & data_name.elementary 1301 then go to success; 1302 else go to fail; 1303 1304 check (189): 1305 edaltst: 1306 if header.type = 9 & data_name.elementary & (data_name.numeric | data_name.numeric_edited) 1307 then go to success; 1308 else go to fail; 1309 1310 check (193): 1311 resword: 1312 if reserved_word.type = 1 1313 then go to success; 1314 else go to fail; 1315 1316 check (194): 1317 type9: 1318 if header.type = 9 1319 then go to success; 1320 else go to fail; 1321 1322 check (195): 1323 alphnm: /* check for alphabet name token */ 1324 if alphabet_name.type ^= 40 1325 then go to fail; 1326 1327 go to success; 1328 1329 check (196): 1330 on_off: /* test for ON or OFF */ 1331 if reserved_word.type ^= 1 1332 then go to fail; 1333 1334 key = reserved_word.key; 1335 1336 if key ^= 134 & key ^= 574 1337 then go to fail; 1338 1339 go to success; 1340 1341 acc_dev: 1342 check (197): /* test for accept device */ 1343 if mnemonic_name.type = 17 & mnemonic_name.class.accept_device 1344 then go to success; 1345 1346 go to fail; 1347 1348 disp_dev: 1349 check (198): /* test for display device */ 1350 if mnemonic_name.type = 17 & mnemonic_name.class.display_device 1351 then go to success; 1352 1353 go to fail; 1354 1355 prt_con: 1356 check (199): /* test for printer control */ 1357 if mnemonic_name.type = 17 & mnemonic_name.class.printer_control 1358 then go to success; 1359 1360 go to fail; 1361 1362 check (200): /* enter, language name */ 1363 is_lang: 1364 lang_num = cobol_imp_word$lang_name (addr_record); 1365 1366 if lang_num = 0 1367 then go to fail; 1368 1369 go to success; 1370 1371 check (201): 1372 amarg: 1373 if header.column < 12 1374 then go to success; 1375 go to fail; 1376 1377 check (202): 1378 set_xint: 1379 if header.type = 9 & data_name.elementary 1380 then go to success; 1381 1382 go to fail; 1383 1384 check (203): 1385 set_pigz: 1386 call pigz_sub; 1387 1388 if pigz_res = 0 1389 then go to success; 1390 1391 go to fail; 1392 1393 check (206): 1394 is_user_word: 1395 if data_name.type = 9 1396 then go to success; 1397 1398 go to fail; 1399 1400 check (208): 1401 nlit: 1402 if header.type = 2 1403 then go to success; 1404 1405 go to fail; 1406 1407 check (209): 1408 pigz_by: 1409 litcnt = 1; 1410 1411 if header.type = 2 & numeric_lit.integral 1412 then do while ("1"b); 1413 1414 if substr (numeric_lit.literal, litcnt, 1) ^= "0" 1415 then go to success; 1416 1417 if litcnt = numeric_lit.places 1418 then go to fail; 1419 1420 litcnt = litcnt + 1; 1421 1422 end; 1423 1424 go to fail; 1425 1426 /***********************************************:*****************************/ 1427 /***** PLACE NEW CHECKS BEFORE THIS COMMENT ********/ 1428 /*****************************************************************************/ 1429 1430 1431 1432 action (12): 1433 call set_st_type (103); 1434 statement.line = proc_def.line; /* section header */ 1435 1436 call enter_st_table; 1437 1438 pn_count = pn_count + 1; 1439 go to ret; 1440 1441 action (13): 1442 if reserved_word.key = 2 1443 then end_word = 1; /* add */ 1444 else if reserved_word.key = 11 1445 then end_word = 17; /* subtract */ 1446 else if reserved_word.key = 40 1447 then end_word = 3; /* compute */ 1448 else if reserved_word.key = 10 1449 then end_word = 8; /* multiply */ 1450 else if reserved_word.key = 9 1451 then end_word = 5; /* divide */ 1452 1453 NL: 1454 nest_lev = nest_lev + 1; 1455 ST.end_word (nest_lev) = end_word; 1456 ST.parity (nest_lev) = 0; 1457 not_emitted = "0"b; 1458 1459 go to ret; 1460 1461 1462 1463 action (14): 1464 call set_st_type (104); 1465 statement.line = proc_def.line; /* paragraph header */ 1466 1467 call enter_st_table; 1468 1469 pn_count = pn_count + 1; 1470 go to ret; 1471 1472 action (15): 1473 nestifcnt = nestifcnt + 1; 1474 call set_until_ptr; 1475 go to action (28); 1476 1477 action (16): 1478 call set_st_type (reserved_word.key); 1479 1480 current_line = reserved_word.key; 1481 statement.line = reserved_word.line; 1482 go to new_inst; 1483 1484 action (17): 1485 decswitch = 3; 1486 section_ptr -> proc_def.type = 18; 1487 go to ret; 1488 1489 action (18): 1490 call set_st_type (106); /* . */ 1491 go to ret; 1492 1493 action (19): 1494 call set_st_type (107); /* P.goto. */ 1495 go to ret; 1496 1497 action (20): 1498 statement.type = 108; /* go to depending */ 1499 go to ret; 1500 1501 action (21): 1502 call set_st_type (109); /* P.exit. */ 1503 go to ret; 1504 1505 action (22): 1506 call set_st_type (110); /* stop statement */ 1507 go to ret; 1508 1509 action (23): 1510 call set_st_type (111); /* end declaratives*/ 1511 decswitch = 5; 1512 pn_count = 0; 1513 go to ret; 1514 1515 action (24): 1516 call set_st_type (112); /* end cobol */ 1517 go to ret; 1518 1519 action (25): 1520 call scan_to_end; /* type 25 token */ 1521 go to ret; 1522 1523 action (26): 1524 call set_st_type (114); /* use statement */ 1525 db_res = 1; 1526 go to ret; 1527 1528 action (27): 1529 call set_st_type (115); /* on size error */ 1530 go to ret; 1531 1532 action (28): 1533 if reserved_word.key = 47 1534 then end_word = 7; /*if */ 1535 else if reserved_word.key = 5 1536 then end_word = 2; /* call */ 1537 else if reserved_word.key = 34 1538 then end_word = 16; /* string */ 1539 else if reserved_word.key = 37 1540 then end_word = 18; /* unstring */ 1541 else if reserved_word.key = 25 1542 then end_word = 12; /* return */ 1543 1544 go to NL; 1545 1546 1547 action (29): 1548 from_pres = "0"b; 1549 1550 if reserved_word.key = 21 1551 then end_word = 10; /* read */ 1552 else if reserved_word.key = 38 1553 then end_word = 19; /* write */ 1554 else if reserved_word.key = 27 1555 then end_word = 13; /* rewrite */ 1556 else if reserved_word.key = 56 1557 then end_word = 15; /* start */ 1558 else if reserved_word.key = 22 1559 then end_word = 4; /* delete */ 1560 1561 go to NL; 1562 1563 1564 1565 action (30): 1566 call set_st_type (116); /* next statement */ 1567 go to ret; 1568 1569 action (31): 1570 if reserved_word.key = 20 /* perform */ 1571 then do; 1572 per_desc.pn1, per_desc.pn2 = 0; 1573 end_word = 9; 1574 end; 1575 else if reserved_word.key = 26 /* search */ 1576 then do; 1577 end_word = 14; 1578 call set_until_ptr; 1579 end; 1580 else if reserved_word.key = 23 1581 then end_word = 11; /* receive */ 1582 else if reserved_word.key = 500 1583 then end_word = 6; /* evaluate */ 1584 1585 go to NL; 1586 1587 1588 action (32): 1589 call set_st_type (117); /* else */ 1590 go to ret; 1591 1592 action (33): 1593 alphanum_lit.all_lit = "1"b; 1594 go to ret; 1595 1596 action (34): 1597 call set_st_type (100); 1598 decswitch = 1; /* procedure division */ 1599 go to ret; 1600 1601 action (35): 1602 item_tab.ptr (1) = TOK_TAB.ptr (1); 1603 TOK_TAB.size = 0; 1604 res, i = 2; 1605 1606 do while (res = 2); 1607 1608 call cobol_swf_get (cobol_rmin2fp, st, item_tab.ptr (i), tln); 1609 1610 addr_record = item_tab.ptr (i); 1611 1612 if alphanum_lit.type = 3 & alphanum_lit.string = "~~~" 1613 then res = 0; 1614 else i = i + 1; 1615 1616 end; 1617 1618 item_tab.size = i; 1619 1620 call define_macros; 1621 go to ret; 1622 1623 action (36): 1624 nest_lev = 0; 1625 go to ret; 1626 1627 action (37): 1628 call set_st_type (118); /* invalid key */ 1629 impswitch = 0; 1630 go to ret; 1631 1632 action (38): 1633 call set_st_type (119); /* at end */ 1634 go to ret; 1635 1636 action (39): 1637 impswitch = 1; 1638 go to ret; 1639 1640 action (40): 1641 impswitch = 0; 1642 go to ret; 1643 1644 action (41): 1645 nestifcnt = 0; 1646 nest_lev = 0; 1647 impswitch = 0; 1648 go to ret; 1649 1650 action (42): 1651 impswitch = 0; 1652 go to ret; 1653 1654 action (43): 1655 nest_lev = 0; 1656 go to ret; 1657 1658 action (44): 1659 call set_st_type (120); /* at eop */ 1660 go to ret; 1661 1662 action (45): 1663 subcnt = 0; 1664 go to ret; 1665 1666 action (46): 1667 subcnt = subcnt + 1; 1668 if QQ = null () 1669 then go to ret; 1670 statement_data_entry.dimen = statement_data_entry.dimen + 1; 1671 go to a46 (subcnt); 1672 1673 a46 (1): 1674 statement_data_entry.sub_1.TOK = TOK_TAB.size; 1675 statement_data_entry.sub_1.TOK_size = 1; 1676 go to ret; 1677 1678 a46 (2): 1679 statement_data_entry.sub_2.TOK = TOK_TAB.size; 1680 statement_data_entry.sub_2.TOK_size = 1; 1681 go to ret; 1682 1683 a46 (3): 1684 statement_data_entry.sub_3.TOK = TOK_TAB.size; 1685 statement_data_entry.sub_3.TOK_size = 1; 1686 go to ret; 1687 1688 action (47): 1689 impswitch = 0; 1690 cssub = 0; 1691 go to ret; 1692 1693 action (48): 1694 nestifcnt = nestifcnt - 1; 1695 go to ret; 1696 1697 action (49): 1698 nestifcnt = nestifcnt - 1; 1699 go to ret; 1700 1701 action (50): 1702 nestifcnt = nestifcnt - 1; 1703 call set_st_type (117); 1704 go to ret; 1705 1706 action (51): /* cd-name,data-name,file-name,proc-name */ 1707 ALL_REFS = "0"b; 1708 call enter_db_table; 1709 go to ret; 1710 1711 action (52): /* all refs, data-name */ 1712 ALL_REFS = "1"b; 1713 call enter_db_table; 1714 go to ret; 1715 1716 action (53): /* all procs */ 1717 if debug_table.proc.size ^= 0 1718 then call diag (6); 1719 else if all_procs 1720 then call diag (7); 1721 else do; 1722 all_procs, DB = "1"b; 1723 debug_table.proc.size = 1; 1724 debug_table.proc.entry.proc_ptr (1) = section_ptr; 1725 end; 1726 go to ret; 1727 1728 action (54): 1729 ALL_REFS = "0"b; 1730 go to ret; 1731 1732 action (55): 1733 decswitch = 4; 1734 go to ret; 1735 1736 action (56): 1737 call set_st_type (0); /* call ioa_("^d ^d",header.line,header.column); dcl ioa_ entry options(variable);*/ 1738 go to ret; 1739 1740 action (57): 1741 if EN ^= 0 1742 then statement.data.entry.TOK (EN) = -statement.data.entry.TOK (EN); 1743 go to ret; 1744 1745 action (58): /* go to PN */ 1746 call set_st_type (14); 1747 go to ret; 1748 1749 action (59): /* ident, sending field */ 1750 send_bit = "1"b; 1751 BEG_ID = TOK_TAB.size; 1752 if QQ ^= null () 1753 then statement_data_entry.TOK_size = 1; 1754 1755 call enter_st_table; 1756 go to ret; 1757 1758 action (60): /* ident, receiving field */ 1759 send_bit = "0"b; 1760 BEG_ID = TOK_TAB.size; 1761 if QQ ^= null () 1762 then statement_data_entry.TOK_size = 1; 1763 1764 call enter_st_table; 1765 go to ret; 1766 1767 action (61): 1768 statement.line = reserved_word.line; 1769 go to ret; 1770 1771 action (62): 1772 section_ptr = addr_record; 1773 go to ret; 1774 1775 action (63): 1776 cssub = cssub + 1; 1777 subj_req = "1"b; 1778 go to ret; 1779 1780 action (64): 1781 per_desc.format = 1; 1782 cssub = cssub - 1; 1783 go to ret; 1784 1785 action (65): 1786 subcnt = subcnt + 1; 1787 if QQ = null () 1788 then go to ret; 1789 statement_data_entry.dimen = statement_data_entry.dimen + 1; 1790 go to a65 (subcnt); 1791 1792 a65 (1): 1793 statement_data_entry.sub_1.TOK_size = 3; 1794 go to ret; 1795 1796 a65 (2): 1797 statement_data_entry.sub_2.TOK_size = 3; 1798 go to ret; 1799 1800 a65 (3): 1801 statement_data_entry.sub_3.TOK_size = 3; 1802 go to ret; 1803 action (66): 1804 IN_LINE = 1; 1805 dim = 0; 1806 per_desc.pn1 = 0; 1807 go to ret; 1808 1809 action (67): 1810 IN_LINE = 0; 1811 dim = 0; 1812 per_desc.pn1 = TOK_TAB.size; 1813 1814 call enter_st_table; 1815 go to ret; 1816 1817 action (68): 1818 per_desc.format = 1; 1819 go to ret; 1820 1821 action (69): 1822 per_desc.format = 2; 1823 per_desc.count.tok_no = TOK_TAB.size; 1824 go to ret; 1825 1826 action (70): 1827 per_desc.format = 3; 1828 per_desc.until.tok_no = TOK_TAB.size + 1; 1829 call set_until_ptr; 1830 go to ret; 1831 1832 action (71): 1833 per_desc.format = 4; 1834 per_desc.dim = 1; 1835 call set_per_cond_ptr; 1836 go to ret; 1837 1838 action (72): 1839 subj_req = "0"b; 1840 go to ret; 1841 1842 action (73): 1843 subj_req = "1"b; 1844 cssub = cssub - 1; 1845 go to ret; 1846 action (74): /*[5.3-1]*/ 1847 nest_lev = nest_lev - 1; 1848 go to ret; 1849 action (82): 1850 cssub = 0; 1851 subj_req = "1"b; 1852 go to ret; 1853 action (83): 1854 per_desc.loop.cond.size (per_desc.dim) = TOK_TAB.size - per_desc.loop.cond.tok_no (per_desc.dim); 1855 go to ret; 1856 1857 action (84): 1858 per_desc.pn2 = TOK_TAB.size; 1859 go to ret; 1860 1861 action (85): 1862 per_desc.until.size = TOK_TAB.size - per_desc.until.tok_no + 1; 1863 go to ret; 1864 1865 action (86): 1866 eos: 1867 if bad_token | inhibit_db | decswitch < 3 1868 then call emit_nl; 1869 else do; 1870 call db_emit; 1871 1872 if e_res = 1 1873 then if stne 1874 then call emit_db_code; 1875 end; 1876 1877 call st_init; 1878 go to ret; 1879 1880 action (87): 1881 endjob: 1882 return; 1883 1884 action (88): 1885 db_res = 2; 1886 go to ret; 1887 1888 action (89): 1889 per_desc.dim = per_desc.dim + 1; 1890 call set_per_cond_ptr; 1891 go to ret; 1892 1893 action (90): 1894 per_desc.loop.var.tok_no (per_desc.dim) = TOK_TAB.size; 1895 per_desc.loop.var.size (per_desc.dim) = 1; 1896 go to ret; 1897 1898 action (91): 1899 per_desc.loop.from.tok_no (per_desc.dim) = TOK_TAB.size; 1900 per_desc.loop.from.size (per_desc.dim) = 1; 1901 go to ret; 1902 1903 action (92): 1904 per_desc.loop.by.tok_no (per_desc.dim) = TOK_TAB.size; 1905 per_desc.loop.by.size (per_desc.dim) = 1; 1906 go to ret; 1907 1908 action (93): 1909 per_desc.loop.cond.tok_no (per_desc.dim) = TOK_TAB.size + 1; 1910 go to ret; 1911 1912 action (94): /* send-receive status */ 1913 TOK_NUM = -TOK_NUM; 1914 go to ret; 1915 1916 action (95): /* dispatch on end word */ 1917 end_word = ST.end_word (nest_lev); 1918 1919 if end_word < 0 1920 then end_word = -end_word; 1921 1922 if end_word = 0 | end_word > 19 1923 then end_word = 1; 1924 else end_word = end_word + 1; 1925 1926 current_line = current_line + end_word; 1927 go to new_inst; 1928 1929 action (96): 1930 ST.parity (nest_lev) = 0; 1931 call emit_not_option (1); /* on size error */ 1932 go to ret; 1933 1934 action (97): 1935 ST.parity (nest_lev) = 1; 1936 call emit; /* set to NOT */ 1937 call st_init; 1938 go to ret; 1939 1940 action (98): 1941 ST.parity (nest_lev) = 0; 1942 call emit_not_option (5); /* on overflow */ 1943 go to ret; 1944 1945 action (99): 1946 ST.parity (nest_lev) = 0; 1947 call emit_not_option (2); /* at end */ 1948 go to ret; 1949 1950 action (100): 1951 ST.parity (nest_lev) = 0; 1952 call emit_not_option (3); /* invalid key */ 1953 go to ret; 1954 1955 action (101): /*[4.4-3]*/ 1956 opt_word_num = 44; /* with */ 1957 ST.parity (nest_lev) = 0; 1958 call emit_not_option (8); /* no data */ 1959 go to ret; 1960 action (102): 1961 ST.parity (nest_lev) = 0; 1962 call emit_not_option (4); /* at eop */ 1963 go to ret; 1964 action (103): 1965 if not_emitted 1966 then call reset_TOK_TAB; 1967 else do; 1968 call emit_nl; 1969 call st_init; 1970 end; 1971 go to ret; 1972 action (104): 1973 call emit; 1974 call st_init; 1975 go to ret; 1976 1977 action (105): 1978 if not_emitted 1979 then call PUT (item_tab.ptr (47 + ST.end_word (nest_lev))); 1980 go to ret; 1981 1982 action (106): 1983 call set_st_type (101); 1984 decswitch = 2; 1985 go to ret; 1986 1987 action (107): 1988 decswitch = 5; 1989 pn_count = 0; 1990 go to ret; 1991 1992 action (108): 1993 if all_procs 1994 then res = 1; 1995 else call enter_st_table; 1996 1997 if res = 1 1998 then do; 1999 alt_ct = alt_ct + 1; 2000 alt_tab.pn1 (alt_ct) = TOK_TAB.size; 2001 end; 2002 go to ret; 2003 2004 action (109): 2005 sm_desc.ip_TOK, sm_desc.op_TOK = 0; /* initialize for sort-merge */ 2006 go to ret; 2007 2008 action (110): 2009 sm_desc.op_TOK = TOK_TAB.size; /* pn for output procedure */ 2010 go to action (60); 2011 2012 action (111): 2013 sm_desc.ip_TOK = TOK_TAB.size; /* pn for input procedure */ 2014 go to action (60); 2015 2016 action (112): 2017 alt_ct = 0; 2018 go to ret; 2019 2020 action (113): 2021 alt_tab.pn2 (alt_ct) = TOK_TAB.size; 2022 go to ret; 2023 2024 action (114): 2025 if QQ ^= null () 2026 then statement_data_entry.TOK_size = TOK_TAB.size - BEG_ID + 1; 2027 go to ret; 2028 action (115): 2029 send_bit = "0"b; 2030 call enter_st_table; /* call type12_token; */ 2031 /* form type 12 token, enter_st_table */ 2032 go to ret; 2033 2034 action (116): 2035 from_pres = "1"b; 2036 FR.TOK = TOK_TAB.size + 1; 2037 go to ret; 2038 2039 action (117): 2040 FR.TOK_size = TOK_TAB.size - FR.TOK + 1; 2041 go to ret; 2042 2043 action (118): 2044 per_desc.loop.var.size (per_desc.dim) = TOK_TAB.size - per_desc.loop.var.tok_no (per_desc.dim) + 1; 2045 go to ret; 2046 2047 action (119): 2048 per_desc.loop.from.size (per_desc.dim) = TOK_TAB.size - per_desc.loop.from.tok_no (per_desc.dim) + 1; 2049 go to ret; 2050 2051 action (120): 2052 per_desc.loop.by.size (per_desc.dim) = TOK_TAB.size - per_desc.loop.by.tok_no (per_desc.dim) + 1; 2053 go to ret; 2054 2055 action (121): 2056 per_desc.count.size = TOK_TAB.size - per_desc.count.tok_no + 1; 2057 go to ret; 2058 2059 action (122): 2060 call enter_st_table; 2061 go to ret; 2062 2063 action (123): 2064 if ST_NO = 0 2065 then go to ret; 2066 2067 if new_entry | cond_desc.tok_count = 0 2068 then ; 2069 else do i = 1 by 1 to cond_desc.tok_count; 2070 2071 if cond_desc.tok (i) = ST_NO 2072 then go to ret; 2073 2074 end; 2075 2076 cond_desc.tok_count = cond_desc.tok_count + 1; 2077 cond_desc.tok (cond_desc.tok_count) = ST_NO; 2078 go to ret; 2079 2080 action (124): 2081 ST_NO = 0; 2082 go to ret; 2083 2084 define_macros: 2085 proc; 2086 2087 M1.size = 4; 2088 M1.type (1) = 1; /* MOVE */ 2089 M1.ptr (1) = item_tab.ptr (9); 2090 M1.type (2) = 2; /* AN_LIT(statement.line) */ 2091 M1.ptr (2) = addr (statement.line); 2092 M1.type (3) = 1; /* TO */ 2093 M1.ptr (3) = item_tab.ptr (10); 2094 M1.type (4) = 1; /* DEBUG-LINE */ 2095 M1.ptr (4) = item_tab.ptr (1); 2096 2097 M2.size = 4; 2098 M2.type (1) = 1; /* MOVE */ 2099 M2.ptr (1) = item_tab.ptr (9); 2100 M2.type (2) = 3; /* NAME(token) */ 2101 M2.ptr (2) = null (); 2102 M2.type (3) = 1; /* TO */ 2103 M2.ptr (3) = item_tab.ptr (10); 2104 M2.type (4) = 1; /* DEBUG-NAME */ 2105 M2.ptr (4) = item_tab.ptr (2); 2106 2107 M3.size = 4; 2108 M3.type (1) = 1; /* MOVE */ 2109 M3.ptr (1) = item_tab.ptr (9); 2110 M3.type (2) = 1; /* SPACES */ 2111 M3.ptr (2) = item_tab.ptr (14); 2112 M3.type (3) = 1; /* TO */ 2113 M3.ptr (3) = item_tab.ptr (10); 2114 M3.type (4) = 1; /* DEBUG-CONTENTS */ 2115 M3.ptr (4) = item_tab.ptr (3); 2116 2117 M4.size = 4; 2118 M4.type (1) = 1; /* MOVE */ 2119 M4.ptr (1) = item_tab.ptr (9); 2120 M4.type (2) = 1; /* token */ 2121 M4.ptr (2) = null (); 2122 M4.type (3) = 1; /* TO */ 2123 M4.ptr (3) = item_tab.ptr (10); 2124 M4.type (4) = 1; /* DEBUG-CONTENTS */ 2125 M4.ptr (4) = item_tab.ptr (3); 2126 2127 M5.size = 10; 2128 M5.type (1) = 1; /* IF */ 2129 M5.ptr (1) = item_tab.ptr (68); 2130 2131 do i = 0 by 1 to 5; /* SWITCH-9 */ 2132 2133 M5.type (2 + i) = 1; 2134 M5.ptr (2 + i) = item_tab.ptr (69 + i); 2135 2136 end; 2137 2138 M5.type (8) = 1; /* PERFORM */ 2139 M5.ptr (8) = item_tab.ptr (15); 2140 M5.type (9) = 1; /* PN */ 2141 M5.ptr (9) = null (); 2142 M5.type (10) = 1; /* END-IF */ 2143 M5.ptr (10) = item_tab.ptr (34); 2144 2145 M6.size = 4; 2146 M6.type (1) = 1; /* MOVE */ 2147 M6.ptr (1) = item_tab.ptr (9); 2148 M6.type (2) = 3; /* NAME(token) */ 2149 M6.ptr (2) = null (); 2150 M6.type (3) = 1; /* TO */ 2151 M6.ptr (3) = item_tab.ptr (10); 2152 M6.type (4) = 1; /* DEBUG-CONTENTS */ 2153 M6.ptr (4) = item_tab.ptr (3); 2154 2155 end; 2156 2157 /* item_tab.ptr 2158* 2159* 1 type 9 DEBUG-LINE 2160* 2 type 9 DEBUG-NAME 2161* 3 type 9 DEBUG-CONTENTS 2162* 4 type 9 DEBUG-SUB-1 2163* 5 type 9 DEBUG-SUB-2 2164* 6 type 9 DEBUG-SUB-3 2165* 7 type 3 "(6)L" 2166* 8 type 3 "(30)N" 2167* 9 type 1 MOVE 2168* 10 type 1 TO 2169* 11 type 3 "~" 2170* 12 type3 "~" 2171* 13 type 1 = 2172* 14 type 1 SPACE 2173* 15 type 1 PERFORM 2174* 16 type 3 "START PROGRAM" 2175* 17 type 3 "SORT INPUT" 2176* 18 type 3 "SORT OUTPUT" 2177* 19 type 3 "MERGE OUTPUT" 2178* 20 type 3 "PERFORM LOOP" 2179* 21 type 3 "USE PROCEDURE" 2180* 22 type 3 "FALL THROUGH" 2181* 23 type 1 SET 2182* 24 type 1 COMPUTE 2183* 25 type 1 UP 2184* 26 type 1 BY 2185* 27 type 1 END-PERFORM 2186* 28 type 1 TIMES 2187* 29 type 1 UNTIL 2188* 30 type 1 NOT 2189* 31 type 1 ) 2190* 32 type 1 THRU 2191* 33 type 1 ADD 2192* 34 type1 END-IF 2193* 35 type1 ON 2194* 36 type1 SIZE 2195* 37 type1 ERROR 2196* 38 type1 AT 2197* 39 type1 END 2198* 40 type1 INVALID 2199* 41 type1 KEY 2200* 42 type1 EOP 2201* 43 type1 OVERFLOW 2202* 44 type1 WITH 2203* 45 type1 DATA 2204* 46 type1 EXCEPTION 2205* 47 type1 NO 2206* 48 type1 END-ADD 2207* 49 type1 END-CALL 2208* 50 type1 END-COMPUTE 2209* 51 type1 END-DELETE 2210* 52 type1 END-DIVIDE 2211* 53 type1 END-EVALUATE 2212* 54 type1 END-IF 2213* 55 type1 END-MULTIPLY 2214* 56 type1 END-PERFORM 2215* 57 type1 END-READ 2216* 58 type1 END-RECEIVE 2217* 59 type1 END-RETURN 2218* 60 type1 END-REWRITE 2219* 61 type1 END-SEARCH 2220* 62 type1 END-START 2221* 63 type1 END-STRING 2222* 64 type1 END-SUBTRACT 2223* 65 type1 END-UNSTRING 2224* 66 type1 END-WRITE 2225* 67 type 1 ( 2226* 68 type 1 if 2227* 69 type1 ( DEBUG-ON OF SWITCH-9 2228* 70 type9 DEBUG-ON | 2229* 71 type1 NOT | 2230* 72 type1 EQUALS | 2231* 73 type3 LOW-VALUE | 2232* 74 type1 ) | 2233* 75 type1 . 2234* 76 type9 DEBUG-SUBS 2235* 77 type3 "999999" 2236* 128 type 3 "~~~" 2237**/ 2238 declare 1 M1, /* MOVE AN-LIT(statement-line) TO DEBUG-LINE*/ 2239 2 size fixed bin, 2240 2 def (4), 2241 3 type fixed bin, 2242 3 num fixed bin, 2243 3 ptr ptr; 2244 2245 declare 1 M2, /* MOVE NAME(token) TO DEBUG-NAME */ 2246 2 size fixed bin, 2247 2 def (4), 2248 3 type fixed bin, 2249 3 num fixed bin, 2250 3 ptr ptr; 2251 2252 declare 1 M3, /* MOVE SPACES TO DEBUG-CONTENTS */ 2253 2 size fixed bin, 2254 2 def (4), 2255 3 type fixed bin, 2256 3 num fixed bin, 2257 3 ptr ptr; 2258 2259 declare 1 M4, /* MOVE token TO DEBUG-CONTENTS */ 2260 2 size fixed bin, 2261 2 def (4), 2262 3 type fixed bin, 2263 3 num fixed bin, 2264 3 ptr ptr; 2265 2266 declare 1 M5, /* IF DEBUG-ON PERFORM debug-section END-IF */ 2267 2 size fixed bin, 2268 2 def (10), 2269 3 type fixed bin, 2270 3 num fixed bin, 2271 3 ptr ptr; 2272 2273 declare 1 M6, /* MOVE NAME(token) TO DEBUG-CONTENTS */ 2274 2 size fixed bin, 2275 2 def (4), 2276 3 type fixed bin, 2277 3 num fixed bin, 2278 3 ptr ptr; 2279 2280 set_st_type: 2281 proc (type); 2282 2283 declare type fixed bin; 2284 2285 statement.type = type; 2286 stne = "0"b; 2287 2288 end; 2289 2290 emit_proc_name: 2291 proc; /* used by VERB(103): section header, VERB(104): para header */ 2292 2293 /* First Non-Declarative Procedure 2294* 2295* MOVE "START-PROGRAM TO DEBUG-CONTENTS. 2296* 2297* LL: PN section. 2298* LL: PN. 2299* 2300* MOVE "PN" TO DEBUG-NAME 2301* IF DEBUG-ON THEN PERFORM. 2302* 2303* Subsequent Non-Declarative Procedures 2304* 2305* MOVE "FALL-THROUGH" TO DEBUG-CONTENTS. 2306* 2307* LL: PN section. 2308* LL: PN. 2309* 2310* MOVE "PN" TO DEBUG-NAME 2311* IF DEBUG-ON THEN PERFORM. 2312* 2313* Use Procedure (Not For debugging) 2314* 2315* LL: PN section. 2316* USE ... 2317* 2318* MOVE "USE PROCEDURE" TO DEBUG-CONTENTS 2319* MOVE "PN" TO DEBUG-NAME 2320* IF DEBUG-ON THEN PERFORM. 2321* 2322**/ 2323 declare en fixed bin, 2324 ep ptr; 2325 2326 M2.ptr (2) = TOK_TAB.ptr (1); 2327 2328 go to EPN (decswitch); 2329 2330 EPN (0): /* 0: initial value */ 2331 EPN (1): /* 1: procedure division */ 2332 EPN (3): /* 3: use(debugging) */ 2333 call emit_nl; 2334 2335 if ^stne 2336 then return; 2337 2338 go to EPN2; 2339 2340 EPN (2): /* 2: declaratives */ 2341 EPN (4): /* 4: use(not debugging) */ 2342 call emit_nl; 2343 2344 if ^stne & ^all_procs 2345 then return; 2346 EPN2: 2347 M4.ptr (2) = item_tab.ptr (21); /* USE PROCEDURE */ 2348 2349 call emit_macro (addr (M4)); /* MOVE xx TO DEBUG-CONTENTS */ 2350 2351 2352 go to EPN1; 2353 2354 EPN (5): /* 5: end declaratives */ 2355 if ^stne & ^all_procs 2356 then do; 2357 call emit_nl; 2358 return; 2359 end; 2360 2361 /*[4.0-1]*/ 2362 if ln_not_emitted /*[4.0-1]*/ 2363 then do; 2364 call PUT (item_tab.ptr (9)); /* MOVE */ 2365 /*[4.0-1]*/ 2366 call PUT (item_tab.ptr (77)); /* "999999" */ 2367 2368 /*[4.0-1]*/ 2369 nines_ptr = addrel (RP1, 1); 2370 2371 /*[4.0-1]*/ 2372 call PUT (item_tab.ptr (10)); /* TO */ 2373 /*[4.0-1]*/ 2374 call PUT (item_tab.ptr (1)); /* DEBUG-LINE */ 2375 2376 /*[4.0-1]*/ 2377 ln_not_emitted = "0"b; 2378 2379 /*[4.0-1]*/ 2380 end; 2381 2382 if pn_count = 1 2383 then M4.ptr (2) = item_tab.ptr (16); /* START PROGRAM */ 2384 else M4.ptr (2) = item_tab.ptr (22); /* FALL THROUGH */ 2385 2386 call emit_macro (addr (M4)); /* MOVE xx TO DEBUG-CONTENTS */ 2387 call PUT (item_tab.ptr (75)); /* . */ 2388 call emit_nl; /* emit statement */ 2389 2390 go to EPN1; 2391 2392 EPN1: 2393 call emit_macro (addr (M2)); /* MOVE "PN" TO DEBUG-NAME */ 2394 2395 2396 2397 if all_procs 2398 then ep = debug_table.proc.entry.proc_ptr (1); /* use on all procs specified */ 2399 else do; 2400 en = statement.proc.entry.num (1); 2401 ep = debug_table.proc.entry.proc_ptr (en); 2402 end; 2403 2404 call emit_perform (ep); 2405 2406 call PUT (item_tab.ptr (75)); /* . */ 2407 end; 2408 2409 set_debug_line: 2410 proc; 2411 2412 /*[4.0-1]*/ 2413 call emit_macro (addr (M1)); /* MOVE AN_LIT(line) TO DEBUG-LINE */ 2414 2415 /*[4.0-1]*/ 2416 if nines_ptr ^= null () /*[4.0-1]*/ 2417 then do; 2418 substr (nines_ptr -> alphanum_lit.string, 1, 6) = LN1; 2419 2420 /*[4.0-1]*/ 2421 nines_ptr = null (); /*[4.0-1]*/ 2422 end; 2423 2424 /*[4.0-1]*/ 2425 ln_not_emitted = "0"b; 2426 2427 end; 2428 2429 2430 emit_alter: 2431 proc; /* alter statement */ 2432 2433 declare (i, num, TOK) fixed bin, 2434 (pn1, pn2, proc_ptr) 2435 ptr; 2436 2437 2438 /*[4.0-1]*/ 2439 call set_debug_line; /* MOVE AN-LIT(line) TO DEBUG-LINE */ 2440 if alt_ct > 0 2441 then do i = 1 by 1 to alt_ct; 2442 2443 pn1 = TOK_TAB.ptr (alt_tab.pn1 (i)); 2444 pn2 = TOK_TAB.ptr (alt_tab.pn2 (i)); 2445 2446 if all_procs 2447 then proc_ptr = debug_table.proc.entry.proc_ptr (1); 2448 /* use for all procs specified */ 2449 else do; 2450 num = statement.proc.entry.num (i); 2451 proc_ptr = debug_table.proc.entry.proc_ptr (num); 2452 end; 2453 2454 M2.ptr (2) = pn1; 2455 call emit_macro (addr (M2)); /* MOVE NAME(token) TO DEBUG-NAME */ 2456 2457 M6.ptr (2) = pn2; 2458 call emit_macro (addr (M6)); /* MOVE NAME(token) TO DEBUG-CONTENTS */ 2459 2460 call emit_perform (proc_ptr); /* IF SWITCH-8 THEN PERFORM ...*/ 2461 2462 end; 2463 2464 call emit_nl; 2465 2466 end; 2467 2468 emit_data: 2469 proc (p, q); 2470 2471 declare (p, q, dn_ptr) ptr, 2472 TOKNO fixed bin; 2473 2474 declare 1 state_dn based (p), 2475 2 num fixed bin, /* debug table entry */ 2476 2 TOK fixed bin; /* token table entry */ 2477 2478 declare 1 data_dn based (q), 2479 2 TOK_size fixed bin, 2480 2 dimen fixed bin, 2481 2 sub_1, 2482 3 TOK fixed bin, 2483 3 TOK_size fixed bin, 2484 2 sub_2, 2485 3 TOK fixed bin, 2486 3 TOK_size fixed bin, 2487 2 sub_3, 2488 3 TOK fixed bin, 2489 3 TOK_size fixed bin, 2490 2 sub_ptr ptr; 2491 2492 declare 1 dntok, 2493 2 TOK fixed bin, 2494 2 TOK_size fixed bin; 2495 2496 declare 1 entry_dn based (dn_ptr), 2497 2 seg_num fixed bin, 2498 2 offset fixed bin, 2499 2 level fixed bin, 2500 2 name_size fixed bin, 2501 2 name char (32), 2502 2 proc_ptr ptr; 2503 2504 if ^emrec 2505 then if state_dn.TOK < 0 & debug_table.data.all_refs (state_dn.num) = "0"b 2506 then return; 2507 2508 if state_dn.TOK < 0 2509 then TOKNO = -state_dn.TOK; 2510 else TOKNO = state_dn.TOK; 2511 2512 M2.ptr (2) = TOK_TAB.ptr (TOKNO); 2513 call emit_macro (addr (M2)); /* MOVE NAME(token TO DEBUG-NAME */ 2514 2515 if data_dn.dimen > 0 2516 then do; 2517 call set_subs; 2518 call emit_subs (q); 2519 end; 2520 2521 dntok.TOK = TOKNO; 2522 dntok.TOK_size = data_dn.TOK_size; 2523 dn_ptr = addr (debug_table.data.entry (state_dn.num)); 2524 2525 call PUT (item_tab.ptr (9)); /* MOVE */ 2526 call emit_range (addr (dntok)); /* identifier */ 2527 call PUT (item_tab.ptr (10)); /* TO */ 2528 call PUT (item_tab.ptr (3)); /* DEBUG-CONTENTS */ 2529 2530 call emit_perform (entry_dn.proc_ptr); 2531 end; 2532 2533 emit_subs: 2534 proc (p); 2535 2536 declare p ptr; 2537 2538 declare 1 data based (p), 2539 2 TOK_size fixed bin, 2540 2 dimen fixed bin, 2541 2 sub_1, 2542 3 TOK fixed bin, 2543 3 TOK_size fixed bin, 2544 2 sub_2, 2545 3 TOK fixed bin, 2546 3 TOK_size fixed bin, 2547 2 sub_3, 2548 3 TOK fixed bin, 2549 3 TOK_size fixed bin, 2550 2 sub_ptr ptr; 2551 2552 if data.dimen > 3 2553 then return; 2554 2555 go to DM (data.dimen); 2556 2557 DM (1): 2558 call emit_sub (item_tab.ptr (4), addr (data.sub_1)); 2559 go to DM1; 2560 2561 DM (2): 2562 call emit_sub (item_tab.ptr (4), addr (data.sub_1)); 2563 call emit_sub (item_tab.ptr (5), addr (data.sub_2)); 2564 go to DM1; 2565 2566 DN (3): 2567 call emit_sub (item_tab.ptr (4), addr (data.sub_1)); 2568 call emit_sub (item_tab.ptr (5), addr (data.sub_2)); 2569 call emit_sub (item_tab.ptr (6), addr (data.sub_3)); 2570 go to DM1; 2571 2572 DM1: 2573 end; 2574 2575 emit_sub: 2576 proc (item_tab_ptr, sub_ptr); 2577 2578 declare (item_tab_ptr, sub_ptr, PP) 2579 ptr; 2580 2581 declare 1 sub based (sub_ptr), 2582 2 TOK fixed bin, 2583 2 TOK_size fixed bin; 2584 2585 PP = TOK_TAB.ptr (sub.TOK); 2586 2587 if PP -> header.type = 10 2588 then do; 2589 if TOK_size > 4 2590 then return; 2591 2592 call PUT (item_tab.ptr (23)); /* SET */ 2593 call PUT (item_tab_ptr); /* DEBUG-SUB-i */ 2594 call PUT (item_tab.ptr (10)); /* TO */ 2595 call PUT (TOK_TAB.ptr (TOK)); /* index-name */ 2596 2597 if TOK_size = 3 2598 then do; 2599 call PUT (item_tab.ptr (24)); /* COMPUTE */ 2600 call PUT (item_tab_ptr); /* DEBUG-SUB-i */ 2601 call PUT (item_tab.ptr (13)); /* = */ 2602 call PUT (item_tab_ptr); /* DEBUG-SUB-i */ 2603 call PUT (TOK_TAB.ptr (TOK)); /* +- */ 2604 call PUT (TOK_TAB.ptr (TOK + 1)); 2605 /* integer */ 2606 end; 2607 end; 2608 else do; 2609 call PUT (item_tab.ptr (24)); /* COMPUTE */ 2610 call PUT (item_tab_ptr); /* DEBUG-SUB-i */ 2611 call PUT (item_tab.ptr (13)); /* = */ 2612 call emit_range (sub_ptr); 2613 end; 2614 end; 2615 2616 emit_range: 2617 proc (p); 2618 2619 declare p ptr, 2620 i fixed bin; 2621 2622 declare 1 sub based (p), 2623 2 TOK fixed bin, 2624 2 TOK_size fixed bin; 2625 2626 do i = sub.TOK by 1 to sub.TOK + sub.TOK_size - 1; 2627 2628 call PUT (TOK_TAB.ptr (i)); 2629 2630 end; 2631 end; 2632 2633 PUT: 2634 proc (p); 2635 2636 declare p ptr; 2637 2638 p -> header.line = last_line; 2639 p -> header.column = last_col; 2640 2641 RP = p; 2642 call PUT_REC; 2643 2644 end; 2645 2646 emit_macro: 2647 proc (p); 2648 2649 declare (p, rptr) ptr, 2650 LN char (6), 2651 ch char (1), 2652 NAME char (30), 2653 (i, j) fixed bin; 2654 2655 declare 1 def based (p), 2656 2 size fixed bin, 2657 2 def (128), 2658 3 type fixed bin, 2659 3 num fixed bin, 2660 3 ptr ptr; 2661 2662 /* type = 1 token(ptr) 2663* type = 2 debug-line value(ptr) 2664* type = 3 token name value(ptr) 2665* */ 2666 2667 declare line_num fixed bin based (def.def.ptr (i)); 2668 2669 declare ch30 char (30) based; 2670 2671 do i = 1 by 1 to def.size; 2672 2673 go to EM (def.def.type (i)); 2674 2675 EM (1): /* token */ 2676 rptr = def.def.ptr (i); 2677 go to EM1; 2678 2679 EM (2): /* DEBUG-LINE value */ 2680 LN = " "; 2681 call ioa_$rsnnl ("^d", LN, 6, line_num); 2682 2683 j = 6; 2684 LN1 = " "; 2685 ch = substr (LN, j, 1); 2686 2687 do while (ch = " " & j > 0); 2688 2689 j = j - 1; 2690 ch = substr (LN, j, 1); 2691 2692 end; 2693 2694 if j > 0 2695 then substr (LN1, 7 - j, j) = substr (LN, 1, j); 2696 2697 rptr = item_tab.ptr (7); 2698 rptr -> alphanum_lit.lit_size = 6; 2699 rptr -> alphanum_lit.string = LN1; 2700 go to EM1; 2701 2702 EM (3): /* DEBUG-NAME value */ 2703 PP, rptr = def.def.ptr (i); 2704 2705 call set_type; 2706 2707 go to TTP (DB_TYPE); 2708 2709 TTP (1): /* proc-name */ 2710 NAME = rptr -> proc_def.name; 2711 go to TTP1; 2712 2713 TTP (2): /* data-name */ 2714 NAME = rptr -> data_name.name; 2715 go to TTP1; 2716 2717 TTP (3): /* file-name */ 2718 NAME = rptr -> fd_token.name; 2719 go to TTP1; 2720 2721 TTP (4): /* cd-name */ 2722 NAME = rptr -> cdtoken.name; 2723 go to TTP1; 2724 2725 TTP1: 2726 rptr = item_tab.ptr (8); 2727 2728 NAME = translate (NAME, "ABCDEFGHIJKLMNOPQRSTUVWXYZ", "abcdefghijklmnopqrstuvwxyz"); 2729 2730 substr (rptr -> alphanum_lit.string, 1, 30) = NAME; 2731 /* form alphanumeric literal */ 2732 go to EM1; 2733 2734 EM1: 2735 rptr -> header.line = last_line; 2736 rptr -> header.column = last_col; 2737 2738 RP = rptr; 2739 call PUT_REC; 2740 2741 end; 2742 end; 2743 2744 emit_file: 2745 proc (p); 2746 2747 declare (p, fn_ptr) ptr; 2748 2749 /* execute debug section for file-name 2750* DEBUG-NAME = file-name 2751* DEBUG-CONTENTS = entire record(READ), SPACES(^READ) 2752* */ 2753 2754 declare 1 state_fn based (p), 2755 2 num fixed bin, /* debug table entry */ 2756 2 TOK fixed bin; /* TOK_TAB entry */ 2757 2758 declare 1 entry_fn based (fn_ptr), 2759 2 file_no fixed bin, 2760 2 proc_ptr ptr; 2761 2762 fn_ptr = addr (debug_table.file.entry (state_fn.num)); 2763 2764 call emit_debug_name (TOK_TAB.ptr (state_fn.TOK));/* MOVE NAME(token) TO DEBUG-NAME */ 2765 2766 if statement.type = 21 2767 then do; 2768 call emit_rec_name (fn_ptr); /* READ statement */ 2769 end; 2770 else do; 2771 call emit_macro (addr (M3)); 2772 end; 2773 2774 2775 2776 2777 2778 call emit_perform (entry_fn.proc_ptr); 2779 2780 end; 2781 2782 emit_perform: 2783 proc (p); /* IF SWITCH-9 PERFORM debug-section END-IF */ 2784 declare p ptr; 2785 2786 M5.ptr (9) = p; 2787 2788 call emit_macro (addr (M5)); 2789 2790 end; 2791 2792 emit_cd: 2793 proc (p); 2794 2795 declare (p, cd_ptr, cd_name_ptr) 2796 ptr; /* execute debug section for cd-name 2797* DEBUG-NAME = cd-name 2798* DEBUG-CONTENTS = area for cd-name 2799* */ 2800 2801 declare 1 state_cd based (p), 2802 2 num fixed bin, /* debug table entry */ 2803 2 TOK fixed bin; /* TOK_TAB entry */ 2804 2805 declare 1 entry_cd based (cd_ptr), 2806 2 cd_num fixed bin, 2807 2 proc_ptr ptr; 2808 2809 cd_ptr = addr (debug_table.cd.entry (state_cd.num)); 2810 2811 /*[4.4-3]*/ 2812 cd_name_ptr = TOK_TAB.ptr (state_cd.TOK); /*[4.4-3]*/ 2813 call emit_debug_name (cd_name_ptr); /*[4.4-3]*/ 2814 call emit_debug_contents (cd_name_ptr); 2815 2816 call emit_perform (entry_cd.proc_ptr); 2817 2818 end; 2819 2820 emit_db_code: 2821 proc; 2822 2823 /* execute the debug sections specified 2824* in the statement table 2825* */ 2826 2827 declare i fixed bin; 2828 2829 if statement.cd.size ^= 0 /* cd-names */ 2830 then do i = 1 by 1 to statement.cd.size; 2831 2832 call emit_cd (addr (statement.cd.entry (i))); 2833 2834 end; 2835 2836 if statement.file.size ^= 0 /* file-names */ 2837 then do i = 1 by 1 to statement.file.size; 2838 2839 call emit_file (addr (statement.file.entry (i))); 2840 2841 end; 2842 2843 if statement.data.size ^= 0 /* data-names */ 2844 then do i = 1 by 1 to statement.data.size; 2845 2846 call emit_data (addr (statement.data.entry (i)), addr (statement.data.data (i))); 2847 2848 end; 2849 end; 2850 2851 emit_debug_name: 2852 proc (p); /* MOVE NAME(token) TO DEBUG-LINE */ 2853 declare p ptr; 2854 2855 M2.ptr (2) = p; 2856 2857 call emit_macro (addr (M2)); 2858 end; 2859 2860 emit_debug_contents: 2861 proc (p); 2862 2863 declare p ptr; 2864 2865 M4.ptr (2) = p; 2866 2867 call emit_macro (addr (M4)); 2868 end; 2869 2870 open_db: 2871 proc (tab_ptr); /* initialize for debug table search */ 2872 /* TAB based(tab_ptr) */ 2873 /* (first_ptr,last_ptr,size,max) */ 2874 dcl tab_ptr ptr; 2875 2876 TAB_PTR = tab_ptr; 2877 ENT_NUM = 0; 2878 NEXT_PTR = null (); 2879 ENT_PTR = null (); 2880 eof = "0"b; 2881 main_tab = "1"b; 2882 2883 end; 2884 2885 extend_db: 2886 proc (ent_size); 2887 2888 declare ent_size fixed bin, 2889 new_ptr ptr; 2890 2891 ENT_NUM = ENT_NUM + 1; 2892 2893 if ENT_NUM <= TAB.max 2894 then return; 2895 2896 new_ptr = cobol$alloc (ent_size + 2); 2897 2898 if ENT_NUM = TAB.max + 1 2899 then do; 2900 TAB.first_ptr = new_ptr; 2901 main_tab = "0"b; 2902 end; 2903 else TAB.last_ptr -> ENTRY.next = new_ptr; 2904 2905 TAB.last_ptr, ENT_PTR = new_ptr; 2906 new_ptr -> ENTRY.next = null (); 2907 end; 2908 2909 get_next_db: 2910 proc; /* find next entry in a sub-table */ 2911 ENT_NUM = ENT_NUM + 1; 2912 2913 if ENT_NUM > TAB.size 2914 then do; 2915 eof = "1"b; /* end of table */ 2916 return; 2917 end; 2918 2919 if ENT_NUM <= TAB.max 2920 then do; 2921 main_tab = "1"b; /* entry in main table */ 2922 return; 2923 end; 2924 2925 if ENT_NUM = TAB.max + 1 2926 then do; 2927 main_tab = "0"b; 2928 2929 if TAB.first_ptr = null () /* first entry in extended table */ 2930 then do; 2931 eof = "1"b; /* end of table */ 2932 return; 2933 end; 2934 ENT_PTR = TAB.first_ptr; 2935 end; 2936 else do; 2937 if ENTRY.next = null () /* subseq entry in extended table */ 2938 then do; 2939 eof = "1"b; /* end of table */ 2940 return; 2941 end; 2942 ENT_PTR = ENTRY.next; 2943 end; 2944 end; 2945 2946 search_data: 2947 proc; /* search debug table for data-name */ 2948 call open_db (addr (debug_table.data)); 2949 2950 do while ("1"b); 2951 2952 call get_next_db; 2953 2954 if eof 2955 then do; 2956 if MODE ^= 0 2957 then call extend_db (data_size); 2958 2959 if main_tab 2960 then ENT_PTR = addr (TAB_PTR -> data_array (ENT_NUM)); 2961 return; 2962 end; 2963 2964 if main_tab 2965 then ENT_PTR = addr (TAB_PTR -> data_array (ENT_NUM)); 2966 else ENT_PTR = addr (ENTRY.data); 2967 2968 call dn_comp; 2969 if res = 1 2970 then return; 2971 end; 2972 end; 2973 2974 search_proc: 2975 proc; /* search debug table for proc-name */ 2976 call open_db (addr (debug_table.proc)); 2977 2978 do while ("1"b); 2979 2980 call get_next_db; 2981 2982 if eof 2983 then do; 2984 if MODE ^= 0 2985 then call extend_db (proc_size); 2986 2987 if main_tab 2988 then ENT_PTR = addr (TAB_PTR -> proc_array (ENT_NUM)); 2989 return; 2990 end; 2991 2992 if main_tab 2993 then ENT_PTR = addr (TAB_PTR -> proc_array (ENT_NUM)); 2994 else ENT_PTR = addr (ENTRY.data); 2995 2996 call pn_comp; 2997 if res = 1 2998 then return; 2999 end; 3000 end; 3001 3002 search_file: 3003 proc; /* search debug table for file-name */ 3004 call open_db (addr (debug_table.file)); 3005 3006 do while ("1"b); 3007 3008 call get_next_db; 3009 3010 if eof 3011 then do; 3012 if MODE ^= 0 3013 then call extend_db (file_size); 3014 3015 if main_tab 3016 then ENT_PTR = addr (TAB_PTR -> file_array (ENT_NUM)); 3017 return; 3018 end; 3019 3020 if main_tab 3021 then ENT_PTR = addr (TAB_PTR -> file_array (ENT_NUM)); 3022 else ENT_PTR = addr (ENTRY.data); 3023 3024 call fn_comp; 3025 if res = 1 3026 then return; 3027 end; 3028 end; 3029 3030 search_cd: 3031 proc; /* search debug table for cd-name */ 3032 call open_db (addr (debug_table.cd)); 3033 3034 do while ("1"b); 3035 3036 call get_next_db; 3037 3038 if eof 3039 then do; 3040 if MODE ^= 0 3041 then call extend_db (cd_size); 3042 3043 if main_tab 3044 then ENT_PTR = addr (TAB_PTR -> cd_array (ENT_NUM)); 3045 3046 return; 3047 end; 3048 3049 if main_tab 3050 then ENT_PTR = addr (TAB_PTR -> cd_array (ENT_NUM)); 3051 else ENT_PTR = addr (ENTRY.data); 3052 3053 call cd_comp; 3054 if res = 1 3055 then return; 3056 end; 3057 end; 3058 3059 emit_go_to: 3060 proc; 3061 3062 call emit_macro (addr (M3)); /* MOVE SPACES TO DEBUG-CONTENTS */ 3063 3064 call emit; 3065 call st_init; 3066 3067 end; 3068 3069 emit_go_to_dep: 3070 proc; 3071 3072 /*[4.0-1]*/ 3073 call set_debug_line; 3074 3075 if stne 3076 then call emit_db_code; 3077 3078 if statement.proc.size ^= 0 3079 then call emit_macro (addr (M3)); 3080 3081 call emit_nl; 3082 end; 3083 3084 emit_string: 3085 proc; /* string statement */ 3086 call emit; 3087 call st_init; 3088 end; 3089 3090 emit_unstring: 3091 proc; /* unstring statement */ 3092 call emit; 3093 call st_init; 3094 end; 3095 3096 SM_emit: 3097 proc (iw_ptr, TOK_NUM); 3098 3099 declare iw_ptr ptr, 3100 TOK_NUM fixed bin; 3101 3102 M4.ptr (2) = iw_ptr; /* literal */ 3103 M2.ptr (2) = TOK_TAB.ptr (TOK_NUM); /* PN */ 3104 3105 call emit_macro (addr (M4)); /* MOVE LL TO DEBUG-CONTENTS */ 3106 3107 call emit_macro (addr (M2)); /* MOVE "PN" TO DEBUG-NAME */ 3108 3109 /*[4.0-1]*/ 3110 call set_debug_line; /* MOVE LINE TO DEBUG-LINE */ 3111 3112 end; 3113 3114 emit_sort_merge: 3115 proc (type); /* sort/merge statements */ 3116 3117 declare type fixed bin; /* 0: sort, 1: merge */ 3118 declare sub_ptr ptr; 3119 3120 declare 1 sub, 3121 2 TOK fixed bin, 3122 2 TOK_size fixed bin; 3123 3124 sub_ptr = addr (sub); 3125 3126 3127 if sm_desc.ip_TOK ^= 0 3128 then do; 3129 sub.TOK = 1; 3130 sub.TOK_size = sm_desc.ip_TOK - 1; 3131 call emit_range (sub_ptr); 3132 3133 call SM_emit (item_tab.ptr (17), sm_desc.ip_TOK); 3134 /* SORT INPUT */ 3135 3136 if sm_desc.op_TOK ^= 0 3137 then do; 3138 sub.TOK = sm_desc.ip_TOK; 3139 sub.TOK_size = sm_desc.op_TOK - sm_desc.ip_TOK; 3140 call emit_range (sub_ptr); 3141 3142 call SM_emit (item_tab.ptr (18), sm_desc.op_TOK); 3143 /* SORT OUTPUT */ 3144 3145 sub.TOK = sm_desc.op_TOK; 3146 sub.TOK_size = TOK_TAB.size - sm_desc.op_TOK; 3147 call ER (sub_ptr); 3148 end; 3149 else do; 3150 sub.TOK = sm_desc.ip_TOK; 3151 sub.TOK_size = TOK_TAB.size - sm_desc.ip_TOK; 3152 call ER (sub_ptr); 3153 end; 3154 end; 3155 else do; 3156 if sm_desc.op_TOK ^= 0 3157 then do; 3158 sub.TOK = 1; 3159 sub.TOK_size = sm_desc.op_TOK - 1; 3160 call emit_range (sub_ptr); 3161 3162 if type = 0 3163 then call SM_emit (item_tab.ptr (18), sm_desc.op_TOK); 3164 /* SORT OUTPUT */ 3165 else call SM_emit (item_tab.ptr (19), sm_desc.op_TOK); 3166 /* MERGE OUTPUT */ 3167 3168 sub.TOK = sm_desc.op_TOK; 3169 sub.TOK_size = TOK_TAB.size - sm_desc.op_TOK; 3170 call ER (sub_ptr); 3171 end; 3172 else do; 3173 call emit; 3174 call st_init; 3175 end; 3176 end; 3177 end; 3178 3179 ER: 3180 proc (sub_ptr); 3181 3182 declare sub_ptr ptr; 3183 3184 call emit_range (sub_ptr); 3185 3186 TOK_TAB.ptr (1) = TOK_TAB.ptr (TOK_TAB.size); 3187 TOK_TAB.size = 1; 3188 3189 end; 3190 3191 emit_if: 3192 proc; /* if statement */ 3193 call emit; 3194 call st_init; 3195 end; 3196 3197 emit_move: 3198 proc; /* move statement */ 3199 call emit; 3200 if stne 3201 then call emit_db_code; 3202 call st_init; 3203 end; 3204 3205 emit_perform_state: 3206 proc; 3207 3208 declare i fixed bin; 3209 3210 if per_desc.pn1 = 0 3211 then do; 3212 call emit; /* in-line perform */ 3213 call st_init; 3214 return; 3215 end; 3216 3217 if ^stne 3218 then do; 3219 call emit; 3220 call st_init; 3221 return; 3222 end; 3223 3224 /*[4.0-1]*/ 3225 call set_debug_line; /* MOVE LINE-NUMBER TO DEBUG-LINE */ 3226 3227 if per_desc.format ^= 4 3228 then call PUT (item_tab.ptr (15)); /* PERFORM */ 3229 3230 emrec = "1"b; 3231 3232 go to PERF (per_desc.format); 3233 3234 PERF (1): 3235 go to PRF; 3236 3237 PERF (2): 3238 call emit_range (addr (per_desc.count)); 3239 3240 call PUT (item_tab.ptr (28)); /* TIMES */ 3241 3242 call get_st_num (per_desc.count.tok_no); 3243 3244 if st_no ^= 0 3245 then call ED (st_no); 3246 3247 go to PRF; 3248 PERF (3): 3249 call PUT (item_tab.ptr (29)); /* UNTIL */ 3250 call emit_range (addr (per_desc.until)); 3251 3252 per_desc.until.copy_loc = copy_tab.size + 1; 3253 copy_mode = "1"b; 3254 3255 call emit_db_cond (addr (per_desc.until)); /* debug(condition) */ 3256 3257 copy_mode = "0"b; 3258 3259 call perf_common; 3260 3261 /*[4.0-1]*/ 3262 call set_debug_line; /* MOVE LINE-NUMBER TO DEBUG-LINE */ 3263 3264 call PUT (item_tab.ptr (27)); /* END-PERFORM */ 3265 3266 /*[4.0-1]*/ 3267 call set_debug_line; /* MOVE LINE-NUMBER TO DEBUG-LINE */ 3268 3269 call emit_copy (per_desc.until.copy_loc); /* debug(condition) */ 3270 3271 go to PRF2; 3272 3273 PRF: 3274 call perf_common; 3275 call PUT (item_tab.ptr (27)); /* END-PERFORM */ 3276 PRF2: 3277 call reset_TOK_TAB; 3278 3279 emrec = "0"b; 3280 return; 3281 3282 PERF (4): 3283 do i = 1 by 1 to per_desc.dim; 3284 3285 call perf_set (i); 3286 3287 /* debug(V(i),R(i)) */ 3288 3289 end; 3290 3291 do i = 1 by 1 to per_desc.dim; 3292 3293 call perf_until (i); /* debug(cond(i)) */ 3294 3295 end; 3296 3297 call perf_common; 3298 3299 /*[4.0-1]*/ 3300 call set_debug_line; /* MOVE LINE-NUMBER TO DEBUG-LINE */ 3301 3302 call perf_incr (per_desc.dim); 3303 3304 /* debug(V,I) */ 3305 3306 call PUT (item_tab.ptr (27)); /* END-PERFORM */ 3307 3308 call emit_copy (per_desc.loop.cond.copy_loc (per_desc.dim)); 3309 /* debug(cond) */ 3310 3311 if per_desc.dim = 1 3312 then go to PRF2; 3313 3314 do i = per_desc.dim - 1 by -1 to 1; 3315 3316 call perf_set (i + 1); 3317 3318 /* debug(V,R) */ 3319 3320 call perf_incr (i); 3321 3322 /* debug(V,I) */ 3323 3324 call PUT (item_tab.ptr (27)); /* END-PERFORM */ 3325 3326 call emit_copy (per_desc.loop.cond.copy_loc (i)); 3327 /* debug(cond(i)) */ 3328 3329 end; 3330 3331 go to PRF2; 3332 end; 3333 3334 perf_common: 3335 proc; 3336 3337 declare (pn1, pn2) fixed bin; /* MOVE pn1 TO DEBUG-NAME */ 3338 st_no = 0; 3339 3340 if per_desc.pn1 ^= 0 & statement.proc.size ^= 0 3341 then call get_st_proc_num (per_desc.pn1); 3342 3343 if st_no ^= 0 3344 then do; 3345 3346 call emit_debug_name (TOK_TAB.ptr (per_desc.pn1)); 3347 3348 /* MOVE "PERFORM-LOOP" TO DEBUG-CONTENTS */ 3349 3350 call emit_debug_contents (item_tab.ptr (20)); 3351 3352 /* MOVE line-number TO DEBUG-LINE */ 3353 3354 end; 3355 3356 /* PERFORM pn1 THRU pn2 */ 3357 pn1 = per_desc.pn1; 3358 pn2 = per_desc.pn2; 3359 3360 call PUT (item_tab.ptr (15)); /* PERFORM */ 3361 call PUT (TOK_TAB.ptr (pn1)); /* PN */ 3362 call PUT (item_tab.ptr (32)); /* THRU */ 3363 3364 if pn2 ^= 0 3365 then call PUT (TOK_TAB.ptr (pn2)); 3366 else call PUT (TOK_TAB.ptr (pn1)); 3367 3368 3369 3370 /*[4.0-1]*/ 3371 call set_debug_line; /* MOVE LINE-NUMBER TO DEBUG-LINE */ 3372 3373 end; 3374 3375 perf_until: 3376 proc (i); 3377 3378 declare i fixed bin; 3379 3380 call PUT (item_tab.ptr (15)); /* PERFORM */ 3381 call PUT (item_tab.ptr (29)); /* UNTIL */ 3382 3383 call PUT (item_tab.ptr (67)); /* ( */ 3384 call emit_range (addr (per_desc.cond (i))); /* condition */ 3385 call PUT (item_tab.ptr (31)); /* ) */ 3386 3387 per_desc.loop.cond.copy_loc (i) = copy_tab.size + 1; 3388 copy_mode = "1"b; 3389 3390 call emit_db_cond (addr (per_desc.loop.cond (i)));/* debug(condition) */ 3391 3392 copy_mode = "0"b; 3393 3394 end; 3395 3396 perf_set: 3397 proc (i); 3398 3399 declare i fixed bin, 3400 (v, f) fixed bin, 3401 (vp, rp) ptr; 3402 3403 vp = addr (per_desc.loop.var (i)); 3404 rp = addr (per_desc.loop.from (i)); 3405 3406 if TOK_TAB.ptr (per_desc.loop.var.tok_no (i)) -> header.type = 10 3407 then do; 3408 call PUT (item_tab.ptr (23)); /* SET, V = index name */ 3409 call emit_range (vp); /* V */ 3410 call PUT (item_tab.ptr (10)); /* TO */ 3411 call emit_range (rp); /* R */ 3412 end; 3413 3414 else if TOK_TAB.ptr (per_desc.loop.from.tok_no (i)) -> header.type = 10 3415 then do; 3416 call PUT (item_tab.ptr (23)); /* SET, V = identifier */ 3417 call emit_range (vp); /* V */ 3418 call PUT (item_tab.ptr (10)); /* TO */ 3419 call emit_range (rp); /* R */ 3420 end; 3421 else do; 3422 call PUT (item_tab.ptr (9)); /* MOVE, R = inentifier */ 3423 call emit_range (rp); /* R */ 3424 call PUT (item_tab.ptr (10)); /* TO */ 3425 call emit_range (vp); /* V */ 3426 end; 3427 3428 call db_perf (rp, vp); 3429 3430 /* SET(V R) V = identifier R = identifier MOVE R TO V 3431* R = index-name SET V TO R 3432* R = literal MOVE R TO V 3433* V = index-name SET V TO R 3434**/ 3435 3436 end; 3437 3438 perf_incr: 3439 proc (i); 3440 3441 declare i fixed bin, 3442 (v, r) fixed bin, 3443 (vp, rp) ptr; 3444 3445 /* V = identifier R = identifier ADD R TO V 3446* R = index-name 3447* R = literal 3448* 3449* V = index-name R = identifier SET V UP BY R 3450* R = index-name 3451* R = literal 3452**/ 3453 3454 vp = addr (per_desc.loop.var (i)); 3455 rp = addr (per_desc.loop.by (i)); 3456 3457 if TOK_TAB.ptr (per_desc.loop.var.tok_no (i)) -> header.type = 10 3458 then do; 3459 call PUT (item_tab.ptr (23)); /* SET */ 3460 call emit_range (vp); /* V */ 3461 call PUT (item_tab.ptr (25)); /* UP */ 3462 call PUT (item_tab.ptr (26)); /* BY */ 3463 call emit_range (rp); /* R */ 3464 end; 3465 else do; 3466 call PUT (item_tab.ptr (33)); /* ADD */ 3467 call emit_range (rp); /* R */ 3468 call PUT (item_tab.ptr (10)); /* TO */ 3469 call emit_range (vp); /* V */ 3470 end; 3471 3472 call db_perf (rp, vp); 3473 end; 3474 3475 /* Perform Statement Expansion 3476* 3477* Format 1: 3478* 3479* XX PERFORM pn1 THRU pn2 3480* 3481* LINE = "XX" 3482* PERFORM 3483* NAME = "pn1" 3484* CONTENTS = "PERFORM=LOOP" 3485* PERFORM pn1 THRU pn2 3486* LINE = "XX" 3487* END-PERFORM 3488* 3489* Format 2: 3490* 3491* XX PERFORM pn1 THRU pn2 count TIMES 3492* 3493* LINE = "XX" 3494* PERFORM count TIMES 3495* NAME = "pn1" 3496* CONTENTS = "PERFORM-LOOP" 3497* PERFORM pn1 THRU pn2 3498* LINE = "XX" 3499* END-PERFORM 3500* 3501* Format 3: 3502* 3503* XX PERFORM pn1 THRU pn2 UNTIL condition 3504* 3505* LINE = "XX" 3506* PERFORM UNTIL condition 3507* debug(condition) 3508* NAME = "pn1" 3509* CONTENTS = "PERFORM-LOOP" 3510* PERFORM pn1 THRU pn2 3511* LINE = "XX" 3512* END-PERFORM 3513* LINE = "XX" 3514* debug(condition) 3515* 3516* Format 4: 3517* 3518* XX PERFORM pn1 THRU pn2 3519* VARYING V1 FROM R1 BY I1 UNTIL C1 3520* AFTER V2 FROM R2 BY I2 UNTIL C2 3521* AFTER V3 FROM R3 BY I3 UNTIL C3 3522* 3523* LINE = "XX" 3524* SET(V1 R1) debug(V1 R1) 3525* SET(V2 R2) debug(V2 R2) 3526* SET(V3 R3) debug(V3 R3) 3527* 3528* PERFORM UNTIL ( C1 ) 3529* debug( C1 ) 3530* PERFORM UNTIL ( C2 ) 3531* debug( C2) 3532* PERFORM UNTIL ( C3 ) 3533* debug( C3 ) 3534* NAME = "pn1" 3535* CONTENTS = "PERFORM-LOOP" 3536* PERFORM pn1 THRU pn2 3537* LINE = "XX" 3538* INCR(V3 I3) debug(V3 I3) 3539* END-PERFORM 3540* debug(C3) 3541* SET(V3 R3) debug(V3 R3) 3542* INCR(V2 I2) debug(V2 I2) 3543* END-PERFORM 3544* debug(C2) 3545* SET(V2 R2) debug(V2 R2) 3546* INCR(V1 I1) debug(V1 I1) 3547* END-PERFORM 3548* debug(C1) 3549**/ 3550 3551 reset_TOK_TAB: 3552 proc; 3553 3554 TOK_TAB.ptr (1) = TOK_TAB.ptr (TOK_TAB.size); 3555 TOK_TAB.size = 1; 3556 3557 end; 3558 3559 emit: 3560 proc; /* emit all but last token */ 3561 declare TOK_SIZE fixed bin; 3562 3563 TOK_SIZE = TOK_TAB.size; 3564 TOK_TAB.size = TOK_TAB.size - 1; 3565 3566 /*[4.0-1]*/ 3567 if N_L & DB & decswitch > 3 3568 then call set_debug_line; 3569 call EMIT; /* last token now first token */ 3570 TOK_TAB.ptr (1) = TOK_TAB.ptr (TOK_SIZE); 3571 TOK_TAB.size = 1; 3572 3573 end; /*[4.4-3]*/ 3574 declare opt_word_num fixed bin; 3575 emit_not_option: 3576 proc (not_option); 3577 3578 declare not_option fixed bin; 3579 3580 3581 3582 3583 call db_emit; /* emit statement */ 3584 3585 if ^stne 3586 then return; 3587 3588 /*[4.4-3]*/ 3589 if statement.type ^= 23 3590 then call PUT (item_tab.ptr (30)); /* emit NOT unless RECEIVE state */ 3591 3592 call emit_option (not_option); /* emit option clause */ 3593 3594 emit_option: 3595 proc (not_option); 3596 3597 declare not_option fixed bin; 3598 3599 go to ENO (not_option); 3600 3601 ENO (1): /* ON SIZE ERROR */ 3602 call PUT (item_tab.ptr (35)); 3603 call PUT (item_tab.ptr (36)); 3604 call PUT (item_tab.ptr (37)); 3605 go to ENO1; 3606 3607 ENO (2): /* AT END */ 3608 call PUT (item_tab.ptr (38)); 3609 call PUT (item_tab.ptr (39)); 3610 go to ENO1; 3611 3612 ENO (3): /* INVALID KEY */ 3613 call PUT (item_tab.ptr (40)); 3614 call PUT (item_tab.ptr (41)); 3615 go to ENO1; 3616 3617 ENO (4): /* AT EOP */ 3618 call PUT (item_tab.ptr (38)); 3619 call PUT (item_tab.ptr (42)); 3620 go to ENO1; 3621 3622 ENO (5): /* ON OVERFLOW */ 3623 call PUT (item_tab.ptr (35)); 3624 call PUT (item_tab.ptr (43)); 3625 go to ENO1; 3626 3627 ENO (6): /* WITH DATA */ 3628 call PUT (item_tab.ptr (44)); 3629 call PUT (item_tab.ptr (45)); 3630 go to ENO1; 3631 3632 ENO (7): /* ON EXCEPTION */ 3633 call PUT (item_tab.ptr (35)); 3634 call PUT (item_tab.ptr (46)); 3635 go to ENO1; 3636 3637 ENO (8): /* NO/WITH DATA */ 3638 call PUT (item_tab.ptr (opt_word_num)); 3639 call PUT (item_tab.ptr (45)); /*4.4-3]*/ 3640 opt_word_num = 47; /* no */ 3641 go to ENO1; 3642 ENO1: 3643 end; 3644 3645 call emit_db_code; 3646 3647 call emit_option (not_option); 3648 3649 if statement.type ^= 21 & statement.type ^= 23 3650 then call emit_db_code; 3651 3652 call st_init; 3653 3654 not_emitted = "1"b; 3655 end; 3656 3657 db_emit: 3658 proc; 3659 3660 go to VERB (statement.type); 3661 3662 VERB (0): /*[4.4-4]*/ 3663 call emit; /*[4.4-4]*/ 3664 e_res = 2; 3665 return; 3666 3667 VERB (1): /* accept */ 3668 call emit; /*[5.0-1]*/ 3669 if cd_pres 3670 then e_res = 1; 3671 else e_res = 2; 3672 return; 3673 VERB (2): /* add */ 3674 call emit; 3675 e_res = 1; 3676 return; 3677 VERB (3): /* illegal */ 3678 call emit_nl; 3679 e_res = 2; 3680 return; 3681 VERB (4): /* alter */ 3682 call emit_alter; 3683 e_res = 2; 3684 return; 3685 VERB (5): /* call */ 3686 call emit; 3687 e_res = 1; 3688 return; 3689 VERB (6): /* illegal */ 3690 call emit_nl; 3691 e_res = 2; 3692 return; 3693 VERB (7): /* cancel */ 3694 call emit; 3695 e_res = 1; 3696 return; 3697 VERB (8): /* close */ 3698 call emit; 3699 e_res = 1; 3700 return; 3701 VERB (9): /* divide */ 3702 call emit; 3703 e_res = 1; 3704 return; 3705 VERB (10): /* multiply */ 3706 call emit; 3707 e_res = 1; 3708 return; 3709 VERB (11): /* subtract */ 3710 call emit; 3711 e_res = 1; 3712 return; 3713 VERB (12): /* exit */ 3714 call emit_nl; 3715 e_res = 2; 3716 return; 3717 VERB (13): /* illegal */ 3718 call emit_nl; 3719 e_res = 2; 3720 return; 3721 VERB (14): /* go */ 3722 call emit_go_to; 3723 e_res = 2; 3724 return; 3725 VERB (15): /* merge */ 3726 call emit_sort_merge (1); 3727 ; 3728 e_res = 2; 3729 return; 3730 VERB (16): /* initiate */ 3731 call emit; 3732 e_res = 1; 3733 return; 3734 VERB (17): /* inspect */ 3735 call emit; 3736 e_res = 1; 3737 return; 3738 VERB (18): /* move */ 3739 call emit_move; 3740 e_res = 2; 3741 return; 3742 VERB (19): /* open */ 3743 call emit; 3744 e_res = 1; 3745 return; 3746 VERB (20): /* perform */ 3747 call emit_perform_state; 3748 e_res = 2; 3749 return; 3750 VERB (21): /* read */ 3751 call emit; 3752 e_res = 1; 3753 return; 3754 VERB (22): /* delete */ 3755 call emit; 3756 e_res = 1; 3757 return; 3758 VERB (23): /* receive */ 3759 call emit; 3760 e_res = 1; 3761 return; 3762 VERB (24): /* release */ 3763 call emit; 3764 e_res = 1; 3765 return; 3766 VERB (25): /* return */ 3767 call emit; 3768 e_res = 1; 3769 return; 3770 VERB (26): /* search */ 3771 call emit; 3772 e_res = 1; 3773 return; 3774 VERB (27): /* rewrite */ 3775 call emit_wr_rew; 3776 e_res = 1; 3777 return; 3778 VERB (28): /* illegal */ 3779 call emit_nl; 3780 e_res = 1; 3781 return; 3782 VERB (29): /* illegal */ 3783 call emit_nl; 3784 e_res = 1; 3785 return; 3786 VERB (30): /* send */ 3787 call emit; 3788 e_res = 1; 3789 return; 3790 VERB (31): /* set */ 3791 call emit; 3792 e_res = 1; 3793 return; 3794 VERB (32): /* illegal */ 3795 call emit_nl; 3796 e_res = 2; 3797 return; 3798 VERB (33): /* stop */ 3799 call emit; 3800 e_res = 2; 3801 return; 3802 VERB (34): /* string */ 3803 call emit_string; 3804 e_res = 2; 3805 return; 3806 VERB (35): /* suspend */ 3807 call emit; 3808 e_res = 1; 3809 return; 3810 VERB (36): /* terminate */ 3811 call emit; 3812 e_res = 1; 3813 return; 3814 VERB (37): /* unstring */ 3815 call emit_unstring; 3816 e_res = 2; 3817 return; 3818 VERB (38): /* write */ 3819 call emit_wr_rew; 3820 e_res = 1; 3821 return; 3822 VERB (39): /* illegal */ 3823 call emit_nl; 3824 e_res = 2; 3825 return; 3826 VERB (40): /* compute */ 3827 call emit; 3828 e_res = 1; 3829 return; 3830 VERB (41): /* disable */ 3831 call emit; 3832 e_res = 1; 3833 return; 3834 VERB (42): /* display */ 3835 call emit; 3836 e_res = 1; 3837 return; 3838 VERB (43): /* enable */ 3839 call emit; 3840 e_res = 1; 3841 return; 3842 VERB (44): /* enter */ 3843 call emit; 3844 e_res = 2; 3845 return; 3846 VERB (45): /* generate */ 3847 call emit; 3848 e_res = 1; 3849 return; 3850 VERB (46): /* hold */ 3851 call emit; 3852 e_res = 2; 3853 return; 3854 VERB (47): /* if */ 3855 call emit_if; 3856 return; 3857 VERB (48): /* process */ 3858 call emit; 3859 e_res = 2; 3860 return; 3861 VERB (49): /* sort */ 3862 call emit_sort_merge (0); 3863 e_res = 2; 3864 return; 3865 VERB (50): /* examine */ 3866 call emit; 3867 e_res = 1; 3868 return; 3869 VERB (51): /* transform */ 3870 call emit; 3871 e_res = 1; 3872 return; 3873 VERB (56): /* start */ 3874 call emit; 3875 e_res = 1; 3876 return; 3877 VERB (57): /* suppress */ 3878 call emit; 3879 e_res = 1; 3880 return; 3881 VERB (58): /* purge */ 3882 call emit; 3883 e_res = 1; 3884 return; 3885 VERB (100): /* procedure division */ 3886 call emit_nl; 3887 e_res = 2; 3888 return; 3889 VERB (101): /* declaratives */ 3890 call emit_nl; 3891 e_res = 2; 3892 return; 3893 VERB (103): /* section header */ 3894 call emit_proc_name; 3895 e_res = 2; 3896 return; 3897 VERB (104): /* paragraph header */ 3898 call emit_proc_name; 3899 e_res = 2; 3900 return; 3901 VERB (106): /* . */ 3902 call emit_nl; 3903 e_res = 2; 3904 return; 3905 VERB (107): /* P.go to. */ 3906 call emit_go_to; 3907 e_res = 2; 3908 return; 3909 VERB (108): /* go to depending */ 3910 call emit_go_to_dep; 3911 e_res = 2; 3912 return; 3913 VERB (109): /* P.exit [program] */ 3914 call emit_nl; 3915 e_res = 2; 3916 return; 3917 VERB (110): /* stop statement */ 3918 call emit_nl; 3919 e_res = 1; 3920 return; 3921 VERB (111): /* end declaratives */ 3922 call emit_nl; 3923 3924 if ^DB & ^all_procs 3925 then return; 3926 3927 res = 1; 3928 3929 if proc_def_size > 0 3930 then do while (res = 1); 3931 3932 call cobol_swf_get (cobol_rmin2fp, st, addr_record, tln); 3933 3934 if alphanum_lit.type = 3 & alphanum_lit.string = "~~~" 3935 then res = 0; 3936 3937 end; 3938 3939 call st_init; 3940 TOK_TAB.size = 0; 3941 call SCAN; 3942 return; 3943 VERB (112): /* end_cobol */ 3944 call emit_nl; 3945 e_res = 2; 3946 return; 3947 VERB (113): /* type 25 token */ 3948 call emit_nl; 3949 e_res = 2; 3950 return; 3951 VERB (114): /* use statement */ 3952 call emit_nl; 3953 e_res = 2; 3954 return; 3955 VERB (115): /* on size error */ 3956 call emit_nl; 3957 e_res = 2; 3958 return; 3959 VERB (116): /* next */ 3960 call emit_nl; 3961 e_res = 2; 3962 return; 3963 VERB (117): /* else */ 3964 call emit_nl; 3965 e_res = 2; 3966 return; 3967 VERB (118): /* invalid key */ 3968 call emit_nl; 3969 e_res = 2; 3970 return; 3971 VERB (119): /* at end */ 3972 call emit_nl; 3973 e_res = 2; 3974 return; 3975 VERB (120): /* at eop */ 3976 call emit_nl; 3977 e_res = 2; 3978 return; 3979 3980 end; 3981 3982 enter_db_table: 3983 proc; 3984 3985 PP = addr_record; 3986 call set_type; 3987 3988 if DB_TYPE = 1 & all_procs /* test for all procs */ 3989 then do; 3990 call diag (1); 3991 return; 3992 end; 3993 3994 MODE = 0; 3995 call search_debug_table; 3996 3997 if eof 3998 then DB = "1"b; 3999 4000 go to EDT (DB_TYPE); /* make new entry in debug table */ 4001 4002 EDT (1): /* proc-name */ 4003 if eof 4004 then do; 4005 proc_entry.section_name = PP -> proc_def.section_name; 4006 proc_entry.section_num = PP -> proc_def.section_num; 4007 proc_entry.proc_num = PP -> proc_def.proc_num; 4008 proc_entry.proc_ptr = section_ptr; 4009 end; 4010 else call diag (2); 4011 4012 go to EDT1; 4013 4014 EDT (2): /* identifier */ 4015 if eof 4016 then do; 4017 data_entry.proc_ptr = section_ptr; 4018 data_entry.seg_num = PP -> data_name.seg_num; 4019 data_entry.offset = PP -> data_name.offset; 4020 data_entry.level = PP -> data_name.level; 4021 data_entry.name_size = PP -> data_name.name_size; 4022 data_entry.name = PP -> data_name.name; 4023 4024 if ALL_REFS 4025 then debug_table.data.all_refs (debug_table.data.size + 1) = "1"b; 4026 4027 end; 4028 else call diag (3); 4029 4030 go to EDT1; 4031 4032 EDT (3): /* file-name */ 4033 if eof 4034 then do; 4035 file_entry.proc_ptr = section_ptr; 4036 file_entry.file_no = PP -> fd_token.file_no; 4037 end; 4038 else call diag (4); 4039 4040 go to EDT1; 4041 4042 EDT (4): /* cd-name */ 4043 if eof 4044 then do; 4045 cd_entry.proc_ptr = section_ptr; 4046 cd_entry.cd_num = PP -> cdtoken.cd_num; 4047 end; 4048 else call diag (5); 4049 4050 go to EDT1; 4051 4052 EDT1: 4053 TAB_PTR -> CD.size = TAB_PTR -> CD.size + 1; /* incr size of debug sub-table */ 4054 4055 end; 4056 4057 search_st_table: 4058 proc; /* search and enter statement table */ 4059 go to SST (DB_TYPE); 4060 4061 SST (1): /* proc-name */ 4062 tab_max = 50; 4063 tab_ptr = addr (statement.proc); 4064 call ent_tab; 4065 go to SS; 4066 4067 SST (2): /* identifier */ 4068 tab_max = 50; 4069 tab_ptr = addr (statement.data); 4070 call ent_tab; 4071 4072 if send_bit 4073 then do; 4074 if new_entry 4075 then statement.data.entry.TOK (EN) = -statement.data.entry.TOK (EN); 4076 end; 4077 else do; 4078 if statement.data.entry.TOK (EN) < 0 4079 then statement.data.entry.TOK (EN) = -statement.data.entry.TOK (EN); 4080 end; 4081 4082 QQ = addr (statement.data.data (EN)); 4083 statement_data_entry.dimen = 0; 4084 statement_data_entry.TOK_size = 1; 4085 ST_NO = EN; 4086 4087 go to SS; 4088 4089 SST (3): /* file-name */ 4090 tab_max = 20; 4091 tab_ptr = addr (statement.file); 4092 call ent_tab; 4093 go to SS; 4094 4095 SST (4): /* cd-name */ 4096 tab_max = 5; 4097 tab_ptr = addr (statement.cd); 4098 call ent_tab; 4099 4100 go to SS; 4101 4102 SS: 4103 end; 4104 4105 ent_tab: 4106 proc; 4107 4108 tab_size = TB.size; 4109 new_entry = "1"b; 4110 4111 if tab_size = 0 4112 then do; 4113 EN, TB.size = 1; 4114 stne = "1"b; 4115 TB.num (1) = ENT_NUM; 4116 TB.TOK (1) = TOK_TAB.size; 4117 4118 return; 4119 end; 4120 4121 do EN = 1 by 1 to tab_size; 4122 4123 if TB.num (EN) = ENT_NUM 4124 then do; 4125 new_entry = "0"b; 4126 return; 4127 end; 4128 4129 end; 4130 4131 if tab_size = tab_max 4132 then do; 4133 EN = 0; /* not found */ 4134 new_entry = "0"b; 4135 4136 return; 4137 end; 4138 4139 EN, tab_size = tab_size + 1; 4140 TB.size = tab_size; 4141 TB.num (tab_size) = ENT_NUM; 4142 TB.TOK (tab_size) = TOK_TAB.size; 4143 4144 end; 4145 4146 enter_st_table: 4147 proc; /* If token is in the debug table */ 4148 /* then search and enter the */ 4149 /* statement table */ 4150 QQ = null (); 4151 ST_NO = 0; 4152 4153 if decswitch < 3 4154 then do; 4155 res = 0; 4156 return; 4157 end; 4158 4159 PP = addr_record; 4160 MODE = 0; 4161 EN = 0; 4162 4163 call set_type; 4164 call search_debug_table; 4165 4166 if res = 0 4167 then return; /* send_bit = 1(sending) 0(receiving) */ 4168 call search_st_table; 4169 4170 res = 1; 4171 4172 end; 4173 4174 search_debug_table: 4175 proc; /* see if token mentioned in a use */ 4176 /* for debugging section */ 4177 4178 ENT_NUM = 0; 4179 ENT_PTR = null (); 4180 4181 if DB_TYPE = 0 4182 then return; 4183 4184 go to SCH (DB_TYPE); 4185 4186 SCH (1): /* proc-name */ 4187 if all_procs 4188 then res = 0; /* use on all procs specified */ 4189 else call search_proc; 4190 4191 go to SC; 4192 4193 SCH (2): /* identifier */ 4194 call search_data; 4195 go to SC; 4196 4197 SCH (3): /* file-name */ 4198 call search_file; 4199 go to SC; 4200 4201 SCH (4): /* cd-name */ 4202 call search_cd; 4203 go to SC; 4204 4205 SC: 4206 end; 4207 4208 dn_comp: 4209 proc; /* compare identifiers */ 4210 4211 4212 res = 0; 4213 4214 if PP -> data_name.seg_num = data_entry.seg_num & PP -> data_name.offset = data_entry.offset 4215 & PP -> data_name.level = data_entry.level & PP -> data_name.name_size = data_entry.name_size 4216 & PP -> data_name.name = substr (data_entry.name, 1, data_name.name_size) 4217 then res = 1; 4218 end; 4219 4220 pn_comp: 4221 proc; /* compare proc names */ 4222 res = 0; 4223 4224 if PP -> proc_def.section_name 4225 then do; 4226 if ^proc_entry.section_name 4227 then return; /* section name */ 4228 4229 if PP -> proc_def.section_num = proc_entry.proc_num 4230 then res = 1; 4231 end; 4232 else do; 4233 if proc_entry.section_name 4234 then return; /* paragraph name */ 4235 4236 if PP -> proc_def.proc_num = proc_entry.proc_num 4237 then res = 1; 4238 end; 4239 end; 4240 4241 fn_comp: 4242 proc; /* compare file-names */ 4243 res = 0; 4244 4245 if PP -> fd_token.file_no = file_entry.file_no 4246 then res = 1; 4247 end; 4248 4249 cd_comp: 4250 proc; /* compare cd-names */ 4251 res = 0; 4252 4253 if PP -> cdtoken.cd_num = cd_entry.cd_num 4254 then res = 1; 4255 end; 4256 4257 set_type: 4258 proc; /* token type -> DB_TYPE */ 4259 declare TYPE fixed bin; 4260 4261 TYPE = PP -> header.type; 4262 DB_TYPE, res = 0; 4263 4264 if TYPE <= 18 4265 then go to TYP (TYPE); 4266 4267 return; 4268 4269 4270 TYP (7): /* proc-name */ 4271 TYP (18): 4272 DB_TYPE = 1; 4273 go to TP; 4274 4275 TYP (9): /* identifier */ 4276 DB_TYPE = 2; 4277 go to TP; 4278 4279 TYP (12): /* file-name */ 4280 TYP (16): 4281 DB_TYPE = 3; 4282 go to TP; 4283 4284 TYP (13): /* cd-name */ 4285 DB_TYPE = 4; 4286 go to TP; 4287 4288 TYP (1): 4289 TYP (2): 4290 TYP (3): 4291 TYP (4): 4292 TYP (5): 4293 TYP (6): 4294 TYP (10): 4295 TYP (11): 4296 TYP (14): 4297 TYP (15): 4298 TYP (17): 4299 TP: 4300 end; 4301 4302 scan_to_end: 4303 proc; /* read and copy all tokens after the */ 4304 /* type 25 token */ 4305 call emit; 4306 call st_init; 4307 4308 do while ("1"b); 4309 4310 call cobol_swf_get (cobol_rmin2fp, st, addr_record, tln); 4311 /* read record */ 4312 4313 if substr (st, 17, 16) ^= "0"b 4314 then return; /* eof */ 4315 4316 call cobol_swf_put (cobol_x3fp, st, addr_record, header.size); 4317 /* write record */ 4318 4319 end; 4320 end; 4321 4322 emit_rec_name: 4323 proc (f_ptr); 4324 4325 declare f_ptr ptr, 4326 ch5 char (5); 4327 4328 declare FN fixed bin based (f_ptr); 4329 4330 ch5 = cobol_ddsyntax$get_file_key (FN); 4331 4332 if ch5 ^= "" 4333 then do; 4334 call cobol_read_rand_ (2, ch5, M4.ptr (2)); 4335 4336 call emit_macro (addr (M4)); /* MOVE RECORD NAME TO DEBUG-CONTENTS */ 4337 end; 4338 4339 else call emit_macro (addr (M3)); /* MOVE SPACES TO DEBUG-CONTENTS */ 4340 4341 end; 4342 4343 emit_wr_rew: 4344 proc; 4345 4346 /* WRITE record-name FROM identifier ... 4347* becomes 4348* MOVE identifier TO record-name 4349* DEBUG(identifier,record-name) 4350* WRITE record-name ... 4351* */ 4352 4353 declare i fixed bin, 4354 fn_save fixed bin; 4355 4356 if from_pres 4357 then do; 4358 call PUT (item_tab.ptr (9)); /* MOVE */ 4359 call emit_range (addr (FR)); /* identifier */ 4360 call PUT (item_tab.ptr (10)); /* TO */ 4361 call PUT (TOK_TAB.ptr (2)); /* record-name */ 4362 /*[4.0-1]*/ 4363 call set_debug_line; /* MOVE AN-LIT(statement.line) TO DEBUG-LINE */ 4364 fn_save = statement.file.size; 4365 statement.file.size = 0; 4366 4367 call emit_db_code; 4368 4369 statement.file.size = fn_save; 4370 statement.data.size = 0; 4371 4372 do i = FR.TOK + FR.TOK_size by 1 to TOK_TAB.size; 4373 4374 TOK_TAB.ptr (i - FR.TOK_size - 1) = TOK_TAB.ptr (i); 4375 4376 end; 4377 4378 TOK_TAB.size = TOK_TAB.size - FR.TOK_size - 1; 4379 4380 call emit_nl; 4381 4382 end; 4383 4384 else call emit; 4385 4386 end; 4387 4388 db_perf: 4389 proc (sp, rp); /*emit debug code during perform statement */ 4390 4391 declare (rp, sp) ptr; 4392 declare (sp_no, rp_no) fixed bin; 4393 declare TN fixed bin, 4394 p ptr; 4395 4396 declare 1 ident based, 4397 2 tok_no fixed bin, 4398 2 size fixed bin; 4399 4400 sp_no, rp_no = 0; /* entry numbers in statement table */ 4401 4402 TN = sp -> ident.tok_no; 4403 p = TOK_TAB.ptr (TN); 4404 4405 if p -> header.type = 9 | p -> header.type = 10 4406 then do; 4407 call get_st_num (TN); /* entry num in statement table */ 4408 sp_no = st_no; 4409 end; 4410 4411 TN = rp -> ident.tok_no; 4412 p = TOK_TAB.ptr (TN); 4413 4414 if p -> header.type = 9 | p -> header.type = 10 4415 then do; 4416 call get_st_num (TN); /* entry num in statement table */ 4417 rp_no = st_no; 4418 end; 4419 4420 if sp_no ^= 0 4421 then do; 4422 call ED (sp_no); /* emit code */ 4423 4424 if rp_no = 0 | rp_no = sp_no 4425 then return; 4426 4427 call ED (rp_no); /* emit code */ 4428 4429 end; 4430 else if rp_no ^= 0 4431 then call ED (rp_no); 4432 4433 end; 4434 4435 get_st_num: 4436 proc (tn); 4437 4438 declare (tn, data_tok_num, i) 4439 fixed bin; 4440 4441 st_no = 0; 4442 4443 if statement.data.size ^= 0 4444 then do i = 1 by 1 to statement.data.size; 4445 4446 data_tok_num = statement.data.entry.TOK (i); 4447 4448 if data_tok_num < 0 4449 then data_tok_num = -data_tok_num; 4450 4451 if tn = data_tok_num 4452 then do; 4453 st_no = i; 4454 return; 4455 end; 4456 end; 4457 end; 4458 4459 ED: 4460 proc (tn); 4461 4462 declare tn fixed bin; 4463 4464 call emit_data (addr (statement.data.entry (tn)), addr (statement.data.data (tn))); 4465 end; 4466 4467 get_st_proc_num: 4468 proc (tn); 4469 4470 /* get entry num in statement table for proc name */ 4471 4472 declare (tn, i) fixed bin; 4473 4474 do i = 1 by 1 to statement.proc.size; 4475 4476 if statement.proc.entry.TOK (i) = tn 4477 then do; 4478 st_no = i; 4479 return; 4480 end; 4481 end; 4482 end; 4483 4484 set_per_cond_ptr: 4485 proc; 4486 4487 per_cond_ptr = addr (per_desc.loop.cond (per_desc.dim)); 4488 per_desc.loop.cond.tok_count (per_desc.dim) = 0; 4489 4490 end; 4491 4492 set_until_ptr: 4493 proc; 4494 4495 per_cond_ptr = addr (per_desc.until); 4496 per_desc.until.tok_count = 0; 4497 4498 end; 4499 4500 emit_db_cond: 4501 proc (p); 4502 4503 declare p ptr; 4504 4505 declare 1 cond_desc based (p), 4506 2 tok_no fixed bin, 4507 2 size fixed bin, 4508 2 copy_loc fixed bin, 4509 2 tok_count fixed bin, 4510 2 tok (128) fixed bin; 4511 4512 if cond_desc.tok_count > 0 4513 then do i = 1 by 1 to cond_desc.tok_count; 4514 4515 call ED (cond_desc.tok (i)); 4516 4517 end; 4518 end; 4519 4520 set_subs: 4521 proc; 4522 4523 call PUT (item_tab.ptr (9)); /* MOVE */ 4524 call PUT (item_tab.ptr (14)); /* SPACE */ 4525 call PUT (item_tab.ptr (10)); /* TO */ 4526 call PUT (item_tab.ptr (76)); /* DEBUG-SUBS */ 4527 4528 end; 4529 4530 declare ST_NO fixed bin, 4531 per_cond_ptr ptr; 4532 4533 declare st_no fixed bin; /* entry num in statement table */ 4534 4535 declare 1 FR, 4536 2 TOK fixed bin, 4537 2 TOK_size fixed bin; 4538 4539 declare e_res fixed bin; 4540 4541 declare save_addr_record ptr; 4542 4543 declare 1 TOK_TAB, 4544 2 size fixed bin, 4545 2 ptr (1024) ptr; 4546 4547 declare proc_ptr ptr, 4548 proc_num fixed bin; 4549 4550 declare (tab_max, tab_size) fixed bin; 4551 4552 declare 1 TB based (tab_ptr), 4553 2 size fixed bin, 4554 2 entry (tab_max), 4555 3 num fixed bin, 4556 3 TOK fixed bin; 4557 4558 4559 declare 1 ST (256), 4560 2 parity fixed bin, /* 0 no NOT, 1 NOT */ 4561 2 end_word fixed bin; 4562 4563 /* end_word = 1 end-add 4564* 2 end-call 4565* 3 end-compute 4566* 4 end-delete 4567* 5 end-divide 4568* 6 end-evaluate 4569* 7 end-if 4570* 8 end-multiply 4571* 9 end-perform 4572* 10 end-read 4573* 11 end-receive 4574* 12 end-return 4575* 13 end-rewrite 4576* 14 end-search 4577* 15 end-start 4578* 16 end-string 4579* 17 end-subtract 4580* 18 end-unstring 4581* 19 end-write 4582**/ 4583 4584 declare (cd_size, end_word, nest_lev, PROC_NUM, pn_count) 4585 fixed bin; 4586 declare (tab_ptr, section_ptr) 4587 ptr; 4588 4589 declare MODE fixed bin, 4590 res fixed bin; 4591 declare (data_size, proc_size, file_size, cd, i, last_line, last_col) 4592 fixed bin; 4593 declare DB_TYPE fixed bin, 4594 PP ptr, 4595 EN fixed bin; 4596 declare (IN_LINE, dim, BEG_ID) 4597 fixed bin; 4598 4599 declare TOK_ptr ptr; 4600 declare TOK_NUM fixed bin based (TOK_ptr); 4601 4602 declare 1 sm_desc, 4603 2 ip_TOK fixed bin, /* input procedure */ 4604 2 op_TOK fixed bin; /* output procedure */ 4605 4606 declare 1 item_tab, 4607 2 size fixed bin, 4608 2 ptr (128) ptr; 4609 4610 declare 1 statement_entry based (QQ), 4611 2 num fixed bin, 4612 2 TOK fixed bin; 4613 4614 declare 1 statement_data_entry 4615 based (QQ), 4616 2 TOK_size fixed bin, 4617 2 dimen fixed bin, 4618 2 sub_1, 4619 3 TOK fixed bin, 4620 3 TOK_size fixed bin, 4621 2 sub_2, 4622 3 TOK fixed bin, 4623 3 TOK_size fixed bin, 4624 2 sub_3, 4625 3 TOK fixed bin, 4626 3 TOK_size fixed bin, 4627 2 sub_ptr ptr; 4628 4629 declare 1 table based (tab_ptr), 4630 2 size fixed bin, 4631 2 num (50) fixed bin; 4632 4633 declare 1 cd_entry based (ENT_PTR), 4634 2 cd_num fixed bin, 4635 2 proc_ptr ptr; 4636 4637 declare 1 file_entry based (ENT_PTR), 4638 2 file_no fixed bin, 4639 2 proc_ptr ptr; 4640 4641 declare 1 proc_entry based (ENT_PTR), 4642 2 section_name bit (1), 4643 2 section_num fixed bin, 4644 2 proc_num fixed bin, 4645 2 proc_ptr ptr; 4646 4647 declare 1 data_entry based (ENT_PTR), 4648 2 seg_num fixed bin, 4649 2 offset fixed bin, 4650 2 level fixed bin, 4651 2 name_size fixed bin, 4652 2 name char (32), 4653 2 proc_ptr ptr; 4654 4655 /* num: entry number in debug_table */ 4656 /* TOK: entry number in TOK_TAB */ 4657 declare 1 statement, 4658 2 type fixed bin, 4659 2 line fixed bin, 4660 2 cd, /* cd-names */ 4661 3 size fixed bin, 4662 3 entry (5), 4663 4 num fixed bin, 4664 4 TOK fixed bin, 4665 2 file, /* file-names */ 4666 3 size fixed bin, 4667 3 entry (20), 4668 4 num fixed bin, 4669 4 TOK fixed bin, 4670 2 proc, /* proc-names */ 4671 3 size fixed bin, 4672 3 entry (50), 4673 4 num fixed bin, 4674 4 TOK fixed bin, 4675 2 data, /* identifiers */ 4676 3 size fixed bin, 4677 3 entry (50), 4678 4 num fixed bin, 4679 4 TOK fixed bin, /* neg if sending field */ 4680 3 data (50), 4681 4 TOK_size fixed bin, 4682 4 dimen fixed bin, 4683 4 sub_1, 4684 5 TOK fixed bin, 4685 5 TOK_size fixed bin, 4686 4 sub_2, 4687 5 TOK fixed bin, 4688 5 TOK_size fixed bin, 4689 4 sub_3, 4690 5 TOK fixed bin, 4691 5 TOK_size fixed bin, 4692 4 sub_ptr ptr; 4693 4694 dcl 1 debug_table, 4695 2 cd, 4696 3 first_ptr ptr, 4697 3 last_ptr ptr, 4698 3 size fixed bin, 4699 3 max fixed bin, 4700 3 entry (5), /* cd_names */ 4701 4 cd_num fixed bin, 4702 4 proc_ptr ptr, 4703 2 file, 4704 3 first_ptr ptr, 4705 3 last_ptr ptr, 4706 3 size fixed bin, 4707 3 max fixed bin, 4708 3 entry (20), /* file names */ 4709 4 file_no fixed bin, 4710 4 proc_ptr ptr, 4711 2 proc, 4712 3 first_ptr ptr, 4713 3 last_ptr ptr, 4714 3 size fixed bin, 4715 3 max fixed bin, 4716 3 entry (50), /* proc names */ 4717 4 section_name 4718 bit (1), 4719 4 section_num fixed bin, 4720 4 proc_num fixed bin, 4721 4 proc_ptr ptr, 4722 2 data, 4723 3 first_ptr ptr, 4724 3 last_ptr ptr, 4725 3 size fixed bin, 4726 3 max fixed bin, 4727 3 entry (50), /* data names */ 4728 4 seg_num fixed bin, /* neg if all refs */ 4729 4 offset fixed bin, 4730 4 level fixed bin, 4731 4 name_size fixed bin, 4732 4 name char (32), 4733 4 proc_ptr ptr, 4734 3 all_refs (256) bit (1); 4735 4736 declare 1 alt_tab (128), /* alter statement table */ 4737 2 pn1 fixed bin, 4738 2 pn2 fixed bin; 4739 4740 dcl (TAB_PTR, NEXT_PTR, ENT_PTR, QQ) 4741 ptr; 4742 dcl alt_ct fixed bin; 4743 dcl ENT_NUM fixed bin; 4744 4745 declare 1 CD based, 4746 2 first_ptr ptr, 4747 2 last_ptr ptr, 4748 2 size fixed bin, 4749 2 max fixed bin, 4750 2 cd_array (5), 4751 3 cd_num fixed bin, 4752 3 proc_ptr ptr; 4753 4754 declare 1 FILE based, 4755 2 first_ptr ptr, 4756 2 last_ptr ptr, 4757 2 size fixed bin, 4758 2 max fixed bin, 4759 2 file_array (20), 4760 3 file_no fixed bin, 4761 3 proc_ptr ptr; 4762 4763 declare 1 PROC based, 4764 2 first_ptr ptr, 4765 2 last_ptr ptr, 4766 2 size fixed bin, 4767 2 max fixed bin, 4768 2 proc_array (50), 4769 3 section_name bit (1), 4770 3 section_num fixed bin, 4771 3 proc_num fixed bin, 4772 3 proc_ptr ptr; 4773 4774 declare 1 DATA based, 4775 2 first_ptr ptr, 4776 2 last_ptr ptr, 4777 2 size fixed bin, 4778 2 max fixed bin, 4779 2 data_array (50), 4780 3 seg_num fixed bin, 4781 3 offset fixed bin, 4782 3 level fixed bin, 4783 3 name_size fixed bin, 4784 3 name char (32), 4785 3 proc_ptr ptr; 4786 4787 declare 1 ENTRY based (ENT_PTR), 4788 2 next ptr, 4789 2 data fixed bin; 4790 4791 declare 1 TAB based (TAB_PTR), 4792 2 first_ptr ptr, 4793 2 last_ptr ptr, 4794 2 size fixed bin, 4795 2 max fixed bin; 4796 4797 declare (key, min_index, max_index) 4798 fixed bin; 4799 4800 4801 declare (file_org, seg_num, mod_num, act_num) 4802 fixed bin; 4803 declare last_seg_num fixed bin init (1000); 4804 declare pigz_res fixed bin; 4805 4806 declare DIAG_NUM fixed bin; 4807 declare tm1 fixed bin (24) init (1), 4808 tm2 fixed bin (24) init (2), 4809 tm3 fixed bin (24) init (3), 4810 tm4 fixed bin (24) init (4), 4811 tm5 fixed bin (24) init (5); 4812 4813 dcl vfile_key fixed bin; 4814 dcl kc fixed bin; 4815 4816 declare 1 cond_desc based (per_cond_ptr), 4817 2 tok_no fixed bin, 4818 2 size fixed bin, 4819 2 copy_loc fixed bin, 4820 2 tok_count fixed bin, 4821 2 tok (128) fixed bin; 4822 4823 declare (RP, RP1) ptr; 4824 4825 declare 1 copy_tab, 4826 2 size fixed bin, 4827 2 ptr (256) ptr; 4828 4829 declare 1 per_desc, /* perform statement description */ 4830 2 format fixed bin, /* 1,2 ,3,4 */ 4831 2 pn1 fixed bin, /* proc-name, 0 if in-line, TN */ 4832 2 pn2 fixed bin, /* proc-name, 0 if in-line, TN */ 4833 2 dim fixed bin, /* dimension */ 4834 2 loop (3), /* format 4 */ 4835 3 var, /* loop variable */ 4836 4 tok_no fixed bin, 4837 4 size fixed bin, 4838 3 from, /*from variable */ 4839 4 tok_no fixed bin, 4840 4 size fixed bin, 4841 3 by, /* by variable */ 4842 4 tok_no fixed bin, 4843 4 size fixed bin, 4844 3 cond, /* condition */ 4845 4 tok_no fixed bin, /* first token, TN */ 4846 4 size fixed bin, /* token count */ 4847 4 copy_loc fixed bin, /* copy stack loc */ 4848 4 tok_count fixed bin, 4849 4 tok (128) fixed bin, 4850 2 count, /* count control, format 2 */ 4851 3 tok_no fixed bin, 4852 3 size fixed bin, 4853 2 until, /* condition, format 3 */ 4854 3 tok_no fixed bin, /* first token, TN */ 4855 3 size fixed bin, /* token count */ 4856 3 copy_loc fixed bin, /* copy stack loc */ 4857 3 tok_count fixed bin, 4858 3 tok (128) fixed bin; 4859 4860 4861 4862 declare lev_save fixed bin (24); 4863 declare subs (3) fixed bin; 4864 declare sub_loc fixed bin; /*[4.0-1]*/ 4865 declare LN1 char (6), 4866 nines_ptr ptr; 4867 4868 4869 declare 1 indicators, 4870 2 tbit bit (1), 4871 2 res bit (1), 4872 2 SAE bit (1), 4873 2 send_bit bit (1), /* 0 receiving, 1 sending */ 4874 2 from_pres bit (1), /* FROM clause present */ 4875 2 not_emitted bit (1), /* 0 no NOT generated, 1 NOT generated */ 4876 2 UB_ind bit (1) init ("0"b), 4877 2 subj_req bit (1), 4878 2 db_use_state bit (1), 4879 2 emrec bit (1), 4880 2 copy_mode bit (1), /*[4.0-1]*/ 4881 2 ln_not_emitted bit (1), 4882 2 inhibit_db bit (1), 4883 2 new_entry bit (1), 4884 2 N_L bit (1), 4885 2 db_use_bit bit (1), 4886 2 bad_token bit (1), 4887 2 eof bit (1), /* item not in table */ 4888 2 main_tab bit (1), /* entry to made in main table */ 4889 2 stne bit (1), /* statement table is not empty */ 4890 2 ref_bit bit (1), 4891 2 ALL_REFS bit (1), /* all refs phrase used */ 4892 2 DB bit (1), /* debug table is not empty */ 4893 2 all_procs bit (1); /* use for db on all procs used */ 4894 4895 4896 dcl (cssub, db_res, lang_num) 4897 fixed bin; 4898 4899 dcl st bit (32); 4900 dcl tln fixed bin; 4901 4902 /* common area */ 4903 declare (a_ptr, w_ptr, sub_ptr) 4904 ptr; 4905 declare file_number fixed bin; 4906 4907 4908 dcl ft_ptr ptr; 4909 4910 4911 dcl gotodep bit (1) static; /* for go to depending verb found in an if statement */ 4912 4913 dcl preospn_bit bit (1) static; /* used by EXIT verb */ 4914 dcl (dg_ptr, lev_dg_ptr) 4915 ptr; /* pointer to diag item passed to print routine*/ 4916 /* type 5 structure used to construct diagnostics issued by pdsyntax */ 4917 dcl 1 diag_item, 4918 2 size fixed bin, 4919 2 line fixed bin, 4920 2 column fixed bin, 4921 2 type fixed bin, 4922 2 run fixed bin, 4923 2 number fixed bin, 4924 2 info bit (8), 4925 2 multics char (3); 4926 4927 declare 1 lev_diag_item, 4928 2 size fixed bin, 4929 2 line fixed bin, 4930 2 column fixed bin, 4931 2 type fixed bin, 4932 2 run fixed bin, 4933 2 number fixed bin, 4934 2 module fixed bin; 4935 4936 4937 4938 dcl srchfm2bit bit (1) static; /* format 2 of search verb */ 4939 dcl srchbit bit (1) static; /* when set we are processing a search verb */ 4940 dcl nestifcnt fixed bin static; /* counter for nested if statements */ 4941 dcl common_recsize fixed bin; /* size of record just read from common file */ 4942 4943 dcl tempkey fixed bin; /* used to hold res word key */ 4944 dcl litcnt fixed bin; /* used for size of numeric literal */ 4945 /* used to save the subscript count */ 4946 dcl (subcnt, dimensions) 4947 fixed bin; 4948 dcl impswitch fixed bin static; /* used for imp verbs */ 4949 dcl decswitch fixed bin static; /* if prog has sectons */ 4950 dcl secswitch fixed bin static; /* used for sections */ 4951 /* used for debugging sections */ 4952 4953 4954 4955 dcl x bit (8) based; /* length of one line in syntax table */ 4956 4957 declare 1 interp, 4958 2 current_line fixed bin (24), 4959 2 phase fixed bin (24), 4960 2 addr_record ptr, 4961 2 pointer_to_internal 4962 ptr, 4963 2 directory_ptr ptr, 4964 2 source_ptr ptr; 4965 4966 /* the following dcls are used in conjunction with the syntax table subroutines */ 4967 /* the current nested limit is 75 */ 4968 declare intrp_stack (75) fixed bin (24), /* used for syntax subroutine */ 4969 i1 fixed bin static; /* syntax table */ 4970 dcl p ptr; 4971 declare trace_ptr ptr; 4972 dcl dumfix fixed bin; 4973 4974 declare 1 syntax_table (0:10000) based (pointer_to_internal), 4975 2 b1 fixed bin, 4976 2 b2 fixed bin, 4977 2 b3 fixed bin, 4978 2 b4 fixed bin, 4979 2 b5 fixed bin; 4980 4981 declare 1 syntax_line based (syntax_line_ptr), 4982 2 s_bit char (1), 4983 2 o_bit char (1), 4984 2 t_type fixed bin, 4985 2 t_field fixed bin, 4986 2 s_exit fixed bin, 4987 2 a_num fixed bin; 4988 4989 declare syntax_line_ptr ptr; 4990 4991 declare 1 sline, 4992 2 s_bit char (1), 4993 2 o_bit char (1), 4994 2 t_type fixed bin, 4995 2 t_field fixed bin, 4996 2 s_exit fixed bin, 4997 2 a_num fixed bin; 4998 4999 declare 1 header based (addr_record), 5000 2 size fixed bin, 5001 2 line fixed bin, 5002 2 column fixed bin, 5003 2 type fixed bin; 5004 5005 5006 dcl occptr ptr; 5007 5008 5009 dcl seqvarptr ptr; 5010 dcl varrecaddr char (5); 5011 5012 dcl cobol$alloc entry (fixed bin) returns (ptr); 5013 dcl (addr, size, fixed, null, substr, unspec, min, max, addrel, translate, string) 5014 builtin; 5015 dcl cobol_syntax_trace_$trace 5016 entry (ptr, fixed bin (24)); 5017 dcl cobol_syntax_trace_$initialize_phase 5018 entry (ptr, fixed bin (24)); 5019 dcl cobol_imp_word$lang_name 5020 entry (ptr) returns (fixed bin); 5021 dcl cobol_swf_get entry (ptr, bit (32), ptr, fixed bin) ext; 5022 dcl cobol_read_rand_ entry (fixed bin, char (5), ptr); 5023 dcl cobol_read_ft entry (fixed bin, ptr); 5024 dcl cobol_vdwf_dget entry (ptr, bit (32), ptr, fixed bin, char (5)) ext; 5025 dcl ioa_$rsnnl entry options (variable); 5026 dcl cobol_swf_put entry (ptr, bit (32), ptr, fixed bin) ext; 5027 dcl cobol_db_put entry (ptr, bit (32), ptr, fixed bin, ptr); 5028 dcl cobol_vdwf_sput entry (ptr, bit (32), ptr, fixed bin, char (5)) ext; 5029 dcl cobol_vdwf_dput entry (ptr, bit (32), ptr, fixed bin, char (5)) ext; 5030 dcl cobol_ddsyntax$get_file_key 5031 entry (fixed bin) returns (char (5)); 5032 dcl cobol_c_list entry (ptr) ext; /* called to print sources and diags */ 5033 dcl cobol_db entry (ptr, fixed bin) ext; 1 1 1 2 /* BEGIN INCLUDE FILE ... cobol_ext_.incl.pl1 */ 1 3 /* Last modified on 06/17/76 by ORN */ 1 4 /* Last modified on 12/28/76 by FCH */ 1 5 /* Last modified on 12/01/80 by FCH */ 1 6 1 7 /* <<< SHARED EXTERNALS INCLUDE FILE >>> */ 1 8 1 9 1 10 dcl cobol_ext_$cobol_afp ptr ext; 1 11 dcl cobol_afp ptr defined ( cobol_ext_$cobol_afp); 1 12 dcl cobol_ext_$cobol_analin_fileno ptr ext; 1 13 dcl cobol_analin_fileno ptr defined ( cobol_ext_$cobol_analin_fileno); 1 14 dcl cobol_ext_$report_first_token ptr ext; 1 15 dcl report_first_token ptr defined( cobol_ext_$report_first_token); 1 16 dcl cobol_ext_$report_last_token ptr ext; 1 17 dcl report_last_token ptr defined ( cobol_ext_$report_last_token); 1 18 dcl cobol_ext_$cobol_eltp ptr ext; 1 19 dcl cobol_eltp ptr defined ( cobol_ext_$cobol_eltp); 1 20 dcl cobol_ext_$cobol_cmfp ptr ext; 1 21 dcl cobol_cmfp ptr defined ( cobol_ext_$cobol_cmfp); 1 22 dcl cobol_ext_$cobol_com_fileno ptr ext; 1 23 dcl cobol_com_fileno ptr defined ( cobol_ext_$cobol_com_fileno); 1 24 dcl cobol_ext_$cobol_com_ptr ptr ext; 1 25 dcl cobol_com_ptr ptr defined ( cobol_ext_$cobol_com_ptr); 1 26 dcl cobol_ext_$cobol_dfp ptr ext; 1 27 dcl cobol_dfp ptr defined ( cobol_ext_$cobol_dfp); 1 28 dcl cobol_ext_$cobol_hfp ptr ext; 1 29 dcl cobol_hfp ptr defined ( cobol_ext_$cobol_hfp); 1 30 dcl cobol_ext_$cobol_m1fp ptr ext; 1 31 dcl cobol_m1fp ptr defined ( cobol_ext_$cobol_m1fp); 1 32 dcl cobol_ext_$cobol_m2fp ptr ext; 1 33 dcl cobol_m2fp ptr defined ( cobol_ext_$cobol_m2fp); 1 34 dcl cobol_ext_$cobol_min1_fileno ptr ext; 1 35 dcl cobol_min1_fileno ptr defined ( cobol_ext_$cobol_min1_fileno); 1 36 dcl cobol_ext_$cobol_min2_fileno_ptr ptr ext; 1 37 dcl cobol_min2_fileno_ptr ptr defined ( cobol_ext_$cobol_min2_fileno_ptr); 1 38 dcl cobol_ext_$cobol_name_fileno ptr ext; 1 39 dcl cobol_name_fileno ptr defined ( cobol_ext_$cobol_name_fileno); 1 40 dcl cobol_ext_$cobol_name_fileno_ptr ptr ext; 1 41 dcl cobol_name_fileno_ptr ptr defined ( cobol_ext_$cobol_name_fileno_ptr); 1 42 dcl cobol_ext_$cobol_ntfp ptr ext; 1 43 dcl cobol_ntfp ptr defined ( cobol_ext_$cobol_ntfp); 1 44 dcl cobol_ext_$cobol_pdofp ptr ext; 1 45 dcl cobol_pdofp ptr defined ( cobol_ext_$cobol_pdofp); 1 46 dcl cobol_ext_$cobol_pfp ptr ext; 1 47 dcl cobol_pfp ptr defined ( cobol_ext_$cobol_pfp); 1 48 dcl cobol_ext_$cobol_rm2fp ptr ext; 1 49 dcl cobol_rm2fp ptr defined ( cobol_ext_$cobol_rm2fp); 1 50 dcl cobol_ext_$cobol_rmin2fp ptr ext; 1 51 dcl cobol_rmin2fp ptr defined ( cobol_ext_$cobol_rmin2fp); 1 52 dcl cobol_ext_$cobol_curr_in ptr ext; 1 53 dcl cobol_curr_in ptr defined ( cobol_ext_$cobol_curr_in); 1 54 dcl cobol_ext_$cobol_curr_out ptr ext; 1 55 dcl cobol_curr_out ptr defined ( cobol_ext_$cobol_curr_out); 1 56 dcl cobol_ext_$cobol_sfp ptr ext; 1 57 dcl cobol_sfp ptr defined ( cobol_ext_$cobol_sfp); 1 58 dcl cobol_ext_$cobol_w1p ptr ext; 1 59 dcl cobol_w1p ptr defined ( cobol_ext_$cobol_w1p); 1 60 dcl cobol_ext_$cobol_w2p ptr ext; 1 61 dcl cobol_w2p ptr defined ( cobol_ext_$cobol_w2p); 1 62 dcl cobol_ext_$cobol_w3p ptr ext; 1 63 dcl cobol_w3p ptr defined ( cobol_ext_$cobol_w3p); 1 64 dcl cobol_ext_$cobol_w5p ptr ext; 1 65 dcl cobol_w5p ptr defined ( cobol_ext_$cobol_w5p); 1 66 dcl cobol_ext_$cobol_w6p ptr ext; 1 67 dcl cobol_w6p ptr defined ( cobol_ext_$cobol_w6p); 1 68 dcl cobol_ext_$cobol_w7p ptr ext; 1 69 dcl cobol_w7p ptr defined ( cobol_ext_$cobol_w7p); 1 70 dcl cobol_ext_$cobol_x3fp ptr ext; 1 71 dcl cobol_x3fp ptr defined ( cobol_ext_$cobol_x3fp); 1 72 dcl cobol_ext_$cobol_rwdd ptr ext; 1 73 dcl cobol_rwdd ptr defined(cobol_ext_$cobol_rwdd); 1 74 dcl cobol_ext_$cobol_rwpd ptr ext; 1 75 dcl cobol_rwpd ptr defined(cobol_ext_$cobol_rwpd); 1 76 1 77 1 78 dcl cobol_ext_$cobol_fileno1 fixed bin(24)ext; 1 79 dcl cobol_fileno1 fixed bin(24)defined ( cobol_ext_$cobol_fileno1); 1 80 dcl cobol_ext_$cobol_options_len fixed bin(24)ext; 1 81 dcl cobol_options_len fixed bin(24)defined ( cobol_ext_$cobol_options_len); 1 82 dcl cobol_ext_$cobol_pdout_fileno fixed bin(24)ext; 1 83 dcl cobol_pdout_fileno fixed bin(24)defined ( cobol_ext_$cobol_pdout_fileno); 1 84 dcl cobol_ext_$cobol_print_fileno fixed bin(24)ext; 1 85 dcl cobol_print_fileno fixed bin(24)defined ( cobol_ext_$cobol_print_fileno); 1 86 dcl cobol_ext_$cobol_rmin2_fileno fixed bin(24)ext; 1 87 dcl cobol_rmin2_fileno fixed bin(24)defined ( cobol_ext_$cobol_rmin2_fileno); 1 88 dcl cobol_ext_$cobol_x1_fileno fixed bin(24)ext; 1 89 dcl cobol_x1_fileno fixed bin(24)defined ( cobol_ext_$cobol_x1_fileno); 1 90 dcl cobol_ext_$cobol_x2_fileno fixed bin(24)ext; 1 91 dcl cobol_x2_fileno fixed bin(24)defined ( cobol_ext_$cobol_x2_fileno); 1 92 dcl cobol_ext_$cobol_x3_fileno fixed bin(24)ext; 1 93 dcl cobol_x3_fileno fixed bin(24)defined ( cobol_ext_$cobol_x3_fileno); 1 94 1 95 dcl cobol_ext_$cobol_lpr char (5) ext; 1 96 dcl cobol_lpr char (5) defined ( cobol_ext_$cobol_lpr); /* -2- */ 1 97 dcl cobol_ext_$cobol_options char (120) ext; 1 98 dcl cobol_options char (120) defined ( cobol_ext_$cobol_options); /* -30- */ 1 99 1 100 dcl cobol_ext_$cobol_xlast8 bit (1) ext; 1 101 dcl cobol_xlast8 bit (1) defined ( cobol_ext_$cobol_xlast8); /* -1- */ 1 102 dcl cobol_ext_$report_exists bit (1) ext; 1 103 dcl report_exists bit (1) defined ( cobol_ext_$report_exists); 1 104 1 105 1 106 /* <<< END OF SHARED EXTERNALS INCLUDE FILE >>> */ 1 107 /* END INCLUDE FILE ... cobol_ext_.incl.pl1 */ 1 108 5034 5035 2 1 2 2 /* BEGIN INCLUDE FILE ... cobol_fixed_common.incl.pl1 */ 2 3 /* Modified on 10/27/82 by FCH, [5.1-1], cobol_cln added to save last line num, BUG543(phx13643) */ 2 4 /* Modified on 07/31/80 by FCH, [4.3-1], use_reporting field added for Report Writer */ 2 5 /* Modified on 03/30/79 by FCH, [4.1-1], -card option added */ 2 6 /* Modified on 03/30/79 by FCH, [4.0-2], -svNM option added */ 2 7 /* Modified on 03/02/79 by FCH, [4.0-1], -levNM option added */ 2 8 /* Modified by RAL on 10/13/78, [4.0-0], Added option exp from fil2. */ 2 9 /* Modified by BC on 06/20/77, descriptor added. */ 2 10 /* Modified by BC on 06/02/77, init_cd_seg, init_cd_offset added. */ 2 11 /* Modified by BC on 1/21/77, options.profile added. */ 2 12 /* Modified by FCH on 7/6/76, sysin_fno & sysout_fno deleted, accept_device & display_device added */ 2 13 /* Modified by FCH on 5/20/77, comp_level added */ 2 14 2 15 2 16 /* THE SIZE OF THIS STRUCTURE IN BYTES, (EXCLUDING VARIABLE 2 17* LENGTH ENTITIES), FOR EACH HARDWARE IMPLEMENTATION IS: 2 18* 2 19* HARDWARE | SIZE (BYTES) 2 20* --------------------------------- 2 21* 645/6180 | 464 2 22* P7 | 396 2 23* --------------------------------- 2 24* */ 2 25 2 26 dcl 1 fixed_common based ( cobol_com_ptr), 2 27 2 prog_name char (30), 2 28 2 compiler_rev_no char (25), 2 29 2 phase_name char (6), 2 30 2 currency char (1), 2 31 2 fatal_no fixed bin, 2 32 2 warn_no fixed bin, 2 33 2 proc_counter fixed bin, 2 34 2 spec_tag_counter fixed bin, 2 35 2 file_count fixed bin, 2 36 2 filedescr_offsets (20) char (5), 2 37 2 perf_alter_info char (5), 2 38 2 another_perform_info char (5), 2 39 2 sort_in_info char (5), 2 40 2 odo_info char (5), 2 41 2 size_seg fixed bin, 2 42 2 size_offset fixed bin(24), 2 43 2 size_perform_info char (5), 2 44 2 rename_info char (5), 2 45 2 report_names char (5), 2 46 2 rw_buf_seg fixed bin, 2 47 2 rw_buf_offset fixed bin(24), 2 48 2 rw_buf_length fixed bin(24), 2 49 2 file_keys char (5), 2 50 2 search_keys char (5), 2 51 2 dd_seg_size fixed bin(24), 2 52 2 pd_seg_size fixed bin(24), 2 53 2 seg_limit fixed bin , 2 54 2 number_of_dd_segs fixed bin, 2 55 2 seg_info char (5), 2 56 2 number_of_ls_pointers fixed bin, 2 57 2 link_sec_seg fixed bin, 2 58 2 link_sec_offset fixed bin(24), 2 59 2 sra_clauses fixed bin, 2 60 2 fix_up_info char (5), 2 61 2 linage_info char (5), 2 62 2 first_dd_item char (5), 2 63 2 sort_out_info char (5), 2 64 2 db_info char (5), 2 65 2 realm_info char (5), 2 66 2 rc_realm_info char (5), 2 67 2 last_file_key char (5), 2 68 2 prog_coll_seq fixed bin, 2 69 2 init_cd_seg fixed bin, 2 70 2 init_cd_offset fixed bin(24), 2 71 2 input_error_exit fixed bin, 2 72 2 output_error_exit fixed bin, 2 73 2 i_o_error_exit fixed bin, 2 74 2 extend_error_exit fixed bin, 2 75 2 dummy15 fixed bin, 2 76 2 options, 2 77 3 cu bit (1), 2 78 3 st bit (1), 2 79 3 wn bit (1), 2 80 3 obs bit (1), 2 81 3 dm bit (1), 2 82 3 xrl bit (1), 2 83 3 xrn bit (1), 2 84 3 src bit (1), 2 85 3 obj bit (1), 2 86 3 exs bit (1), 2 87 3 sck bit (1), 2 88 3 rno bit (1), 2 89 3 u_l bit (1), 2 90 3 cnv bit (1), 2 91 3 cos bit (1), 2 92 3 fmt bit (1), 2 93 3 profile bit(1), 2 94 3 nw bit (1), 2 95 3 exp bit (1), /* [4.0-0] */ 2 96 3 card bit (1), /*[4.1-1]*/ 2 97 3 fil2 bit (5), 2 98 3 m_map bit (1), 2 99 3 m_bf bit (1), 2 100 3 m_fat bit (1), 2 101 3 m_wn bit (1), 2 102 3 m_obs bit(1), 2 103 3 pd bit(1), 2 104 3 oc bit(1), 2 105 2 supervisor bit (1), 2 106 2 dec_comma bit (1), 2 107 2 init_cd bit (1), 2 108 2 corr bit (1), 2 109 2 initl bit (1), 2 110 2 debug bit (1), 2 111 2 report bit (1), 2 112 2 sync_in_prog bit (1), 2 113 2 pd_section bit (1), 2 114 2 list_switch bit (1), 2 115 2 alpha_cond bit (1), 2 116 2 num_cond bit (1), 2 117 2 spec_sysin bit (1), 2 118 2 spec_sysout bit (1), 2 119 2 cpl_files bit (1), 2 120 2 obj_dec_comma bit (1), 2 121 2 default_sign_type bit (3), 2 122 2 use_debug bit(1), 2 123 2 syntax_trace bit(1), 2 124 2 comp_defaults, 2 125 3 comp bit(1), 2 126 3 comp_1 bit(1), 2 127 3 comp_2 bit(1), 2 128 3 comp_3 bit(1), 2 129 3 comp_4 bit(1), 2 130 3 comp_5 bit(1), 2 131 3 comp_6 bit(1), 2 132 3 comp_7 bit(1), 2 133 3 comp_8 bit(1), 2 134 2 disp_defaults, 2 135 3 disp bit(1), 2 136 3 disp_1 bit(1), 2 137 3 disp_2 bit(1), 2 138 3 disp_3 bit(1), 2 139 3 disp_4 bit(1), 2 140 3 disp_5 bit(1), 2 141 3 disp_6 bit(1), 2 142 3 disp_7 bit(1), 2 143 2 descriptor bit(2), 2 144 2 levsv bit(3), /*[4.0-1]*/ 2 145 2 use_reporting bit(1), /*[4.3-1]*/ 2 146 2 cd bit(1), /*[4.4-1]*/ 2 147 2 dummy17 bit(3), 2 148 2 lvl_rstr bit(32), 2 149 2 inst_rstr bit(32), 2 150 2 comp_level char(1), 2 151 2 dummy18 char(30), 2 152 2 object_sign char (1), 2 153 2 last_print_rec char (5), 2 154 2 coll_seq_info char (5), 2 155 2 sys_status_seg fixed bin, 2 156 2 sys_status_offset fixed bin(24), 2 157 2 compiler_id fixed bin, 2 158 2 date_comp_ln fixed bin, 2 159 2 compile_mode bit(36), 2 160 2 default_temp fixed bin, 2 161 2 accept_device fixed bin, 2 162 2 display_device fixed bin, 2 163 2 cobol_cln fixed bin, /*[5.1-1]*/ 2 164 2 alphabet_offset fixed bin; 2 165 2 166 2 167 2 168 /* END INCLUDE FILE ... cobol_fixed_common.incl.pl1 */ 2 169 5036 5037 5038 5039 /* the layout of a file table */ 5040 5041 3 1 3 2 /* BEGIN INCLUDE FILE ... cobol_file_table.incl.pl1 */ 3 3 /* <<< INCLUDE FILE FOR FILE TABLE IN COMMON >>> */ 3 4 3 5 /* Modified on 09/30/80 by FCH, [4.4-1], density is 6250 is supported */ 3 6 /* Modified on 12/05/78 by RAL, [3.0-3], added dupl_alt from dummy102 */ 3 7 /* Modified on 11/21/78 by RAL, [3.0-2], added space for abs_record_offset from filler */ 3 8 /* Modified on 10/26/78 by RAL, [3.0-1], added space for file_desc_1 table offset from filler */ 3 9 /* <<< LAST MODIFIED ON 06-02-77 by GM >>> */ 3 10 /* <<< LAST MODIFIED ON 05-31-77 by GM >>> */ 3 11 /* <<< LAST MODIFIED ON 06-30-76 by GM >>> */ 3 12 /* <<< LAST MODIFIED ON 06-07-76 by GM >>> */ 3 13 /* <<< LAST MODIFIED ON 11-29-74 by orn >>> */ 3 14 3 15 /* 3 16*A file table is created in variable common for each file selected in the 3 17*environment division. The fields of a given file table provide information 3 18*about the specific file for which the file table is generated. The 3 19*addresses which may be contained in the various "info" fields of the file 3 20*table are addresses in variable common. 3 21**/ 3 22 3 23 /* THE FILE TABLE STRUCTURE */ 3 24 3 25 dcl 1 file_table based (ft_ptr), 3 26 2 next char (5), 3 27 2 ifn char (16), 3 28 2 attach_options_info char(5), /*06/02/77*/ 3 29 2 replacement_info char(5), /*06/02/77*/ 3 30 2 file_id_info char(5), /*05/31/77*/ 3 31 2 retention_info char(5), /*05/31/77*/ 3 32 2 filler0 char (3) , /* [3.0-1] */ 3 33 2 file_desc_1_offset fixed bin (24), /* [3.0-1] */ 3 34 2 abs_record_offset fixed bin (24), /* [3.-02] */ 3 35 2 filler char(5), /* this area is available.*/ 3 36 2 padding_char char (1), 3 37 2 banner_char char (1), 3 38 2 file_status_info char (5), 3 39 2 extra_status_info char (5), 3 40 2 cat_id_info char (5), 3 41 2 r_key_info char (5), 3 42 2 alt_key_info char (5), 3 43 2 rec_do_info char (5), 3 44 2 label_info char (5), 3 45 2 data_info char (5), 3 46 2 report_info char (5), 3 47 2 linage_info char (5), 3 48 2 optional bit (1), /*06/07/76*/ 3 49 2 external bit (1), 3 50 2 file_status bit (1), 3 51 2 extra_status bit (1), 3 52 2 sysin bit (1), 3 53 2 sysout bit (1), 3 54 2 move_mode bit (1), 3 55 2 locate_mode bit (1), 3 56 2 fixed_recs bit (1), 3 57 2 variable_recs bit (1), 3 58 2 spanned_recs bit (1), /*06/07/76*/ 3 59 2 interchange bit (1), /*06/07/76*/ 3 60 2 relative_key bit (1), 3 61 2 record_key bit (1), 3 62 2 even_parity bit (1), 3 63 2 odd_parity bit (1), 3 64 2 padding bit (1), 3 65 2 banner bit (1), 3 66 2 random bit (1), 3 67 2 no_file_lockout bit (1), 3 68 2 no_write_check bit (1), 3 69 2 no_resident_index bit (1), 3 70 2 same_file bit (1), 3 71 2 sort_file bit (1), 3 72 2 rec_do bit (1), 3 73 2 linage bit (1), 3 74 2 code_set_clause bit (1), 3 75 /* history */ 3 76 2 close bit (1), 3 77 2 delete bit (1), 3 78 2 open_in bit (1), 3 79 2 open_out bit (1), 3 80 2 open_io bit (1), 3 81 2 open_ext bit (1), 3 82 2 read bit (1), 3 83 2 release bit (1), 3 84 2 return_bit bit (1), 3 85 2 rewrite bit (1), 3 86 2 sort bit (1), 3 87 2 start bit (1), 3 88 2 use_error bit (1), 3 89 2 write bit (1), 3 90 2 read_next bit (1), 3 91 2 read_key bit (1), 3 92 2 accept bit (1), 3 93 2 display bit (1), 3 94 2 unequal_recs bit (1), 3 95 2 dummy_sysin bit (1), 3 96 2 dummy_sysout bit (1), 3 97 2 file_no fixed bin, 3 98 2 uca_offset fixed bin(24), 3 99 2 cra_seg fixed bin, 3 100 2 cra_offset fixed bin(24), 3 101 2 max_cra_size fixed bin(24), 3 102 2 catalogued fixed bin, 3 103 2 organization fixed bin, 3 104 2 org_qual fixed bin, 3 105 2 access fixed bin, 3 106 2 buffers fixed bin, 3 107 2 device fixed bin, 3 108 2 record_prefix fixed bin, /*06/07/76*/ 3 109 2 alternate_keys fixed bin, 3 110 2 record_format fixed bin, 3 111 2 label_format fixed bin, 3 112 2 key_location fixed bin, 3 113 2 key_size fixed bin, 3 114 2 temporary fixed bin, 3 115 2 address_format fixed bin, 3 116 2 same_area_clause fixed bin, 3 117 2 same_rec_clause fixed bin, 3 118 2 same_sort_clause fixed bin, 3 119 2 mult_clause_no fixed bin, 3 120 2 mult_position_no fixed bin, 3 121 2 block_desc fixed bin, 3 122 2 block_min fixed bin(24), 3 123 2 block_max fixed bin(24), 3 124 2 rec_min fixed bin(24), 3 125 2 rec_max fixed bin(24), 3 126 2 label_count fixed bin, 3 127 2 ifn_size fixed bin, 3 128 2 data_count fixed bin, 3 129 2 report_count fixed bin, 3 130 2 code_set fixed bin, 3 131 2 error_exit fixed bin, 3 132 2 prefix_size fixed bin, 3 133 2 blocked bit (1), 3 134 2 variable bit (1), 3 135 2 unbannered bit (1), 3 136 2 prefix_clause bit (1), 3 137 2 symbolic bit (1), 3 138 2 address_format_bit bit (1), 3 139 2 bsn bit(1), /*06/07/76*/ 3 140 2 process_area bit(1), /*06/07/76*/ 3 141 2 dupl_alt bit (1), /* [3.0-3] */ 3 142 2 dummy102 bit (23), 3 143 2 name_size fixed bin, 3 144 2 name char(32), 3 145 2 id char(32), 3 146 2 temp bit(1) , 3 147 2 perm bit(1) , 3 148 2 attach bit(1) , 3 149 2 detach bit(1) , 3 150 2 fsb , /* file state block */ 3 151 3 seg fixed bin(24), /* internal addr */ 3 152 3 off fixed bin(24), 3 153 2 tape, 3 154 3 density bit(1) , /* 0-hi 1-lo */ 3 155 3 retain bit(1), /* 0 not retained across attachment, 1 retained */ 3 156 3 force bit(1), /* 0 check retention date, 1 no check */ 3 157 3 protect bit(1) , /* 0-no 1-yes */ 3 158 3 den_6250 bit(1), /* 0-no 1-yes */ /*[4.4-1]*/ 3 159 2 cat_nm char(200), 3 160 2 ao_len fixed bin(24), /* attach options */ 3 161 2 ao_string char(256), 3 162 2 output_mode fixed bin, /* 0 not specified 3 163* 1 generation 3 164* 2 modification 3 165* 3 replacement literal 3 166* 4 replacement dataname */ 3 167 2 om_len fixed bin, /* length of output mode */ 3 168 2 om_string char(17), 3 169 2 tape_device fixed bin, /* 0 not specified 3 170* 1 integer 3 171* 2 dataname */ 3 172 2 tape_device_num fixed bin, 3 173 2 tape_device_key char(5), 3 174 2 add_cat_key char(5); 3 175 3 176 3 177 /* END INCLUDE FILE ... cobol_file_table.incl.pl1 */ 3 178 5042 4 1 4 2 /* BEGIN INCLUDE FILE ... cobol_diag_file.incl.pl1 */ 4 3 /* Last modified on 06/18/76 by ORN */ 4 4 4 5 /* This include file serves as a template for the file 4 6* (segment) containg MCOBOL diagnostic messages: 4 7* cobol_diag_table_$cobol_diag_table_ */ 4 8 4 9 dcl 1 diag_file based(cobol_$diag_ptr), 4 10 2 r_t_size fixed bin, 4 11 2 d_t_size fixed bin, 4 12 2 d_s_size fixed bin, 4 13 2 run_table (11), 4 14 3 base fixed bin, 4 15 3 size fixed bin, 4 16 2 diag_table(0 refer(diag_file.d_t_size)), 4 17 3 d_start fixed bin, 4 18 3 d_len fixed bin, 4 19 3 d_type fixed bin, 4 20 3 d_param fixed bin; 4 21 4 22 /* END INCLUDE FILE ... cobol_diag_file.incl.pl1 */ 4 23 5043 5 1 5 2 /* BEGIN INCLUDE FILE ... cobol_.incl.pl1 */ 5 3 /* last modified Feb 4, 1977 by ORN */ 5 4 5 5 /* This file defines all external data used in the generator phase of Multics Cobol */ 5 6 5 7 /* POINTERS */ 5 8 dcl cobol_$text_base_ptr ptr ext; 5 9 dcl text_base_ptr ptr defined (cobol_$text_base_ptr); 5 10 dcl cobol_$con_end_ptr ptr ext; 5 11 dcl con_end_ptr ptr defined (cobol_$con_end_ptr); 5 12 dcl cobol_$def_base_ptr ptr ext; 5 13 dcl def_base_ptr ptr defined (cobol_$def_base_ptr); 5 14 dcl cobol_$link_base_ptr ptr ext; 5 15 dcl link_base_ptr ptr defined (cobol_$link_base_ptr); 5 16 dcl cobol_$sym_base_ptr ptr ext; 5 17 dcl sym_base_ptr ptr defined (cobol_$sym_base_ptr); 5 18 dcl cobol_$reloc_text_base_ptr ptr ext; 5 19 dcl reloc_text_base_ptr ptr defined (cobol_$reloc_text_base_ptr); 5 20 dcl cobol_$reloc_def_base_ptr ptr ext; 5 21 dcl reloc_def_base_ptr ptr defined (cobol_$reloc_def_base_ptr); 5 22 dcl cobol_$reloc_link_base_ptr ptr ext; 5 23 dcl reloc_link_base_ptr ptr defined (cobol_$reloc_link_base_ptr); 5 24 dcl cobol_$reloc_sym_base_ptr ptr ext; 5 25 dcl reloc_sym_base_ptr ptr defined (cobol_$reloc_sym_base_ptr); 5 26 dcl cobol_$reloc_work_base_ptr ptr ext; 5 27 dcl reloc_work_base_ptr ptr defined (cobol_$reloc_work_base_ptr); 5 28 dcl cobol_$pd_map_ptr ptr ext; 5 29 dcl pd_map_ptr ptr defined (cobol_$pd_map_ptr); 5 30 dcl cobol_$fixup_ptr ptr ext; 5 31 dcl fixup_ptr ptr defined (cobol_$fixup_ptr); 5 32 dcl cobol_$initval_base_ptr ptr ext; 5 33 dcl initval_base_ptr ptr defined (cobol_$initval_base_ptr); 5 34 dcl cobol_$initval_file_ptr ptr ext; 5 35 dcl initval_file_ptr ptr defined (cobol_$initval_file_ptr); 5 36 dcl cobol_$perform_list_ptr ptr ext; 5 37 dcl perform_list_ptr ptr defined (cobol_$perform_list_ptr); 5 38 dcl cobol_$alter_list_ptr ptr ext; 5 39 dcl alter_list_ptr ptr defined (cobol_$alter_list_ptr); 5 40 dcl cobol_$seg_init_list_ptr ptr ext; 5 41 dcl seg_init_list_ptr ptr defined (cobol_$seg_init_list_ptr); 5 42 dcl cobol_$temp_token_area_ptr ptr ext; 5 43 dcl temp_token_area_ptr ptr defined (cobol_$temp_token_area_ptr); 5 44 dcl cobol_$temp_token_ptr ptr ext; 5 45 dcl temp_token_ptr ptr defined (cobol_$temp_token_ptr); 5 46 dcl cobol_$token_block1_ptr ptr ext; 5 47 dcl token_block1_ptr ptr defined (cobol_$token_block1_ptr); 5 48 dcl cobol_$token_block2_ptr ptr ext; 5 49 dcl token_block2_ptr ptr defined (cobol_$token_block2_ptr); 5 50 dcl cobol_$minpral5_ptr ptr ext; 5 51 dcl minpral5_ptr ptr defined (cobol_$minpral5_ptr); 5 52 dcl cobol_$tag_table_ptr ptr ext; 5 53 dcl tag_table_ptr ptr defined (cobol_$tag_table_ptr); 5 54 dcl cobol_$map_data_ptr ptr ext; 5 55 dcl map_data_ptr ptr defined (cobol_$map_data_ptr); 5 56 dcl cobol_$ptr_status_ptr ptr ext; 5 57 dcl ptr_status_ptr ptr defined (cobol_$ptr_status_ptr); 5 58 dcl cobol_$reg_status_ptr ptr ext; 5 59 dcl reg_status_ptr ptr defined (cobol_$reg_status_ptr); 5 60 dcl cobol_$misc_base_ptr ptr ext; 5 61 dcl misc_base_ptr ptr defined (cobol_$misc_base_ptr); 5 62 dcl cobol_$misc_end_ptr ptr ext; 5 63 dcl misc_end_ptr ptr defined (cobol_$misc_end_ptr); 5 64 dcl cobol_$list_ptr ptr ext; 5 65 dcl list_ptr ptr defined (cobol_$list_ptr); 5 66 dcl cobol_$allo1_ptr ptr ext; 5 67 dcl allo1_ptr ptr defined (cobol_$allo1_ptr); 5 68 dcl cobol_$eln_ptr ptr ext; 5 69 dcl eln_ptr ptr defined (cobol_$eln_ptr); 5 70 dcl cobol_$diag_ptr ptr ext; 5 71 dcl diag_ptr ptr defined (cobol_$diag_ptr); 5 72 dcl cobol_$xref_token_ptr ptr ext; 5 73 dcl xref_token_ptr ptr defined (cobol_$xref_token_ptr); 5 74 dcl cobol_$xref_chain_ptr ptr ext; 5 75 dcl xref_chain_ptr ptr defined (cobol_$xref_chain_ptr); 5 76 dcl cobol_$statement_info_ptr ptr ext; 5 77 dcl statement_info_ptr ptr defined (cobol_$statement_info_ptr); 5 78 dcl cobol_$reswd_ptr ptr ext; 5 79 dcl reswd_ptr ptr defined (cobol_$reswd_ptr); 5 80 dcl cobol_$op_con_ptr ptr ext; 5 81 dcl op_con_ptr ptr defined (cobol_$op_con_ptr); 5 82 dcl cobol_$ntbuf_ptr ptr ext; 5 83 dcl ntbuf_ptr ptr defined (cobol_$ntbuf_ptr); 5 84 dcl cobol_$main_pcs_ptr ptr ext; 5 85 dcl main_pcs_ptr ptr defined (cobol_$main_pcs_ptr); 5 86 dcl cobol_$include_info_ptr ptr ext; 5 87 dcl include_info_ptr ptr defined (cobol_$include_info_ptr); 5 88 5 89 /* FIXED BIN */ 5 90 dcl cobol_$text_wd_off fixed bin ext; 5 91 dcl text_wd_off fixed bin defined (cobol_$text_wd_off); 5 92 dcl cobol_$con_wd_off fixed bin ext; 5 93 dcl con_wd_off fixed bin defined (cobol_$con_wd_off); 5 94 dcl cobol_$def_wd_off fixed bin ext; 5 95 dcl def_wd_off fixed bin defined (cobol_$def_wd_off); 5 96 dcl cobol_$def_max fixed bin ext; 5 97 dcl def_max fixed bin defined (cobol_$def_max); 5 98 dcl cobol_$link_wd_off fixed bin ext; 5 99 dcl link_wd_off fixed bin defined (cobol_$link_wd_off); 5 100 dcl cobol_$link_max fixed bin ext; 5 101 dcl link_max fixed bin defined (cobol_$link_max); 5 102 dcl cobol_$sym_wd_off fixed bin ext; 5 103 dcl sym_wd_off fixed bin defined (cobol_$sym_wd_off); 5 104 dcl cobol_$sym_max fixed bin ext; 5 105 dcl sym_max fixed bin defined (cobol_$sym_max); 5 106 dcl cobol_$reloc_text_max fixed bin(24) ext; 5 107 dcl reloc_text_max fixed bin(24) defined (cobol_$reloc_text_max); 5 108 dcl cobol_$reloc_def_max fixed bin(24) ext; 5 109 dcl reloc_def_max fixed bin(24) defined (cobol_$reloc_def_max); 5 110 dcl cobol_$reloc_link_max fixed bin(24) ext; 5 111 dcl reloc_link_max fixed bin(24) defined (cobol_$reloc_link_max); 5 112 dcl cobol_$reloc_sym_max fixed bin(24) ext; 5 113 dcl reloc_sym_max fixed bin(24) defined (cobol_$reloc_sym_max); 5 114 dcl cobol_$reloc_work_max fixed bin(24) ext; 5 115 dcl reloc_work_max fixed bin(24) defined (cobol_$reloc_work_max); 5 116 dcl cobol_$pd_map_index fixed bin ext; 5 117 dcl pd_map_index fixed bin defined (cobol_$pd_map_index); 5 118 dcl cobol_$cobol_data_wd_off fixed bin ext; 5 119 dcl cobol_data_wd_off fixed bin defined (cobol_$cobol_data_wd_off); 5 120 dcl cobol_$stack_off fixed bin ext; 5 121 dcl stack_off fixed bin defined (cobol_$stack_off); 5 122 dcl cobol_$max_stack_off fixed bin ext; 5 123 dcl max_stack_off fixed bin defined (cobol_$max_stack_off); 5 124 dcl cobol_$init_stack_off fixed bin ext; 5 125 dcl init_stack_off fixed bin defined (cobol_$init_stack_off); 5 126 dcl cobol_$pd_map_sw fixed bin ext; 5 127 dcl pd_map_sw fixed bin defined (cobol_$pd_map_sw); 5 128 dcl cobol_$next_tag fixed bin ext; 5 129 dcl next_tag fixed bin defined (cobol_$next_tag); 5 130 dcl cobol_$data_init_flag fixed bin ext; 5 131 dcl data_init_flag fixed bin defined (cobol_$data_init_flag); 5 132 dcl cobol_$seg_init_flag fixed bin ext; 5 133 dcl seg_init_flag fixed bin defined (cobol_$seg_init_flag); 5 134 dcl cobol_$alter_flag fixed bin ext; 5 135 dcl alter_flag fixed bin defined (cobol_$alter_flag); 5 136 dcl cobol_$sect_eop_flag fixed bin ext; 5 137 dcl sect_eop_flag fixed bin defined (cobol_$sect_eop_flag); 5 138 dcl cobol_$para_eop_flag fixed bin ext; 5 139 dcl para_eop_flag fixed bin defined (cobol_$para_eop_flag); 5 140 dcl cobol_$priority_no fixed bin ext; 5 141 dcl priority_no fixed bin defined (cobol_$priority_no); 5 142 dcl cobol_$compile_count fixed bin ext; 5 143 dcl compile_count fixed bin defined (cobol_$compile_count); 5 144 dcl cobol_$ptr_assumption_ind fixed bin ext; 5 145 dcl ptr_assumption_ind fixed bin defined (cobol_$ptr_assumption_ind); 5 146 dcl cobol_$reg_assumption_ind fixed bin ext; 5 147 dcl reg_assumption_ind fixed bin defined (cobol_$reg_assumption_ind); 5 148 dcl cobol_$perform_para_index fixed bin ext; 5 149 dcl perform_para_index fixed bin defined (cobol_$perform_para_index); 5 150 dcl cobol_$perform_sect_index fixed bin ext; 5 151 dcl perform_sect_index fixed bin defined (cobol_$perform_sect_index); 5 152 dcl cobol_$alter_index fixed bin ext; 5 153 dcl alter_index fixed bin defined (cobol_$alter_index); 5 154 dcl cobol_$list_off fixed bin ext; 5 155 dcl list_off fixed bin defined (cobol_$list_off); 5 156 dcl cobol_$constant_offset fixed bin ext; 5 157 dcl constant_offset fixed bin defined (cobol_$constant_offset); 5 158 dcl cobol_$misc_max fixed bin ext; 5 159 dcl misc_max fixed bin defined (cobol_$misc_max); 5 160 dcl cobol_$pd_map_max fixed bin ext; 5 161 dcl pd_map_max fixed bin defined (cobol_$pd_map_max); 5 162 dcl cobol_$map_data_max fixed bin ext; 5 163 dcl map_data_max fixed bin defined (cobol_$map_data_max); 5 164 dcl cobol_$fixup_max fixed bin ext; 5 165 dcl fixup_max fixed bin defined (cobol_$fixup_max); 5 166 dcl cobol_$tag_table_max fixed bin ext; 5 167 dcl tag_table_max fixed bin defined (cobol_$tag_table_max); 5 168 dcl cobol_$temp_token_max fixed bin ext; 5 169 dcl temp_token_max fixed bin defined (cobol_$temp_token_max); 5 170 dcl cobol_$allo1_max fixed bin ext; 5 171 dcl allo1_max fixed bin defined (cobol_$allo1_max); 5 172 dcl cobol_$eln_max fixed bin ext; 5 173 dcl eln_max fixed bin defined (cobol_$eln_max); 5 174 dcl cobol_$debug_enable fixed bin ext; 5 175 dcl debug_enable fixed bin defined (cobol_$debug_enable); 5 176 dcl cobol_$non_source_offset fixed bin ext; 5 177 dcl non_source_offset fixed bin defined (cobol_$non_source_offset); 5 178 dcl cobol_$initval_flag fixed bin ext; 5 179 dcl initval_flag fixed bin defined (cobol_$initval_flag); 5 180 dcl cobol_$date_compiled_sw fixed bin ext; 5 181 dcl date_compiled_sw fixed bin defined (cobol_$date_compiled_sw); 5 182 dcl cobol_$include_cnt fixed bin ext; 5 183 dcl include_cnt fixed bin defined (cobol_$include_cnt); 5 184 dcl cobol_$fs_charcnt fixed bin ext; 5 185 dcl fs_charcnt fixed bin defined (cobol_$fs_charcnt); 5 186 dcl cobol_$ws_charcnt fixed bin ext; 5 187 dcl ws_charcnt fixed bin defined (cobol_$ws_charcnt); 5 188 dcl cobol_$coms_charcnt fixed bin ext; 5 189 dcl coms_charcnt fixed bin defined (cobol_$coms_charcnt); 5 190 dcl cobol_$ls_charcnt fixed bin ext; 5 191 dcl ls_charcnt fixed bin defined (cobol_$ls_charcnt); 5 192 dcl cobol_$cons_charcnt fixed bin ext; 5 193 dcl cons_charcnt fixed bin defined (cobol_$cons_charcnt); 5 194 dcl cobol_$value_cnt fixed bin ext; 5 195 dcl value_cnt fixed bin defined (cobol_$value_cnt); 5 196 dcl cobol_$cd_cnt fixed bin ext; 5 197 dcl cd_cnt fixed bin defined (cobol_$cd_cnt); 5 198 dcl cobol_$fs_wdoff fixed bin ext; 5 199 dcl fs_wdoff fixed bin defined (cobol_$fs_wdoff); 5 200 dcl cobol_$ws_wdoff fixed bin ext; 5 201 dcl ws_wdoff fixed bin defined (cobol_$ws_wdoff); 5 202 dcl cobol_$coms_wdoff fixed bin ext; 5 203 dcl coms_wdoff fixed bin defined (cobol_$coms_wdoff); 5 204 5 205 /* CHARACTER */ 5 206 dcl cobol_$scratch_dir char (168) aligned ext; 5 207 dcl scratch_dir char (168) aligned defined (cobol_$scratch_dir); /* -42- */ 5 208 dcl cobol_$obj_seg_name char (32) aligned ext; 5 209 dcl obj_seg_name char (32) aligned defined (cobol_$obj_seg_name); /* -8- */ 5 210 5 211 /* BIT */ 5 212 dcl cobol_$xref_bypass bit(1) aligned ext; 5 213 dcl xref_bypass bit(1) aligned defined (cobol_$xref_bypass); /* -1- */ 5 214 dcl cobol_$same_sort_merge_proc bit(1) aligned ext; 5 215 dcl same_sort_merge_proc bit(1) aligned defined (cobol_$same_sort_merge_proc); /* -1- */ 5 216 5 217 5 218 /* END INCLUDE FILE ... cobol_incl.pl1*/ 5 219 5 220 5044 5045 5046 declare 1 alphabet_name based (addr_record), 6 1 6 2 /* begin include file ... cobol_TYPE40.incl.pl1 */ 6 3 /* Last modified on 11/17/76 by ORN */ 6 4 6 5 /* header */ 6 6 2 size fixed bin, 6 7 2 line fixed bin, 6 8 2 column fixed bin, 6 9 2 type fixed bin, 6 10 /* body */ 6 11 2 string_ptr ptr, 6 12 2 prev_rec ptr, 6 13 2 info, 6 14 3 repl bit(8), 6 15 3 one_one bit(1), 6 16 3 onto bit(1), 6 17 2 hival_char char(1), 6 18 2 loval_char char(1), 6 19 2 iw_key fixed bin, 6 20 2 def_line fixed bin, 6 21 2 char_size fixed bin, 6 22 2 hi_value char(1), 6 23 2 segno fixed bin, 6 24 2 offset fixed bin, 6 25 2 dn_offset fixed bin, 6 26 2 table char(512), 6 27 2 name_size fixed bin, 6 28 2 name char(0 refer(alphabet_name.name_size)); 6 29 6 30 /* end include file ... cobol_TYPE40.incl.pl1 */ 6 31 5047 5048 5049 5050 dcl 1 reserved_word based (addr_record), 7 1 7 2 /* begin include file ... cobol_TYPE1.incl.pl1 */ 7 3 /* Last modified on 11/17/76 by ORN */ 7 4 /* Last modified on 12/28/76 by FCH */ 7 5 /* Last modified on 12/16/80 by FCH */ 7 6 7 7 /* header */ 7 8 2 size fixed bin, 7 9 2 line fixed bin, 7 10 2 column fixed bin, 7 11 2 type fixed bin, 7 12 /* body */ 7 13 2 key fixed bin, 7 14 /* procedure division class bits */ 7 15 2 verb bit (1), 7 16 2 arith_op bit (1), 7 17 2 figcon bit (1), 7 18 2 terminator bit (1), 7 19 2 end_dec bit (1), 7 20 2 rel_op bit (1), 7 21 2 imper_verb bit (1), 7 22 2 end_cobol bit (1), 7 23 /* data division class bits */ 7 24 2 section_header bit (1), 7 25 2 fs_ind bit (1), 7 26 2 fd_clause bit (1), 7 27 2 dd_clause bit (1), 7 28 2 cd_input bit (1), 7 29 2 cd_output bit (1), 7 30 2 cset_name bit (1), 7 31 2 ss_division bit (1), 7 32 2 repl_jump_ind bit (4), 7 33 2 ided_recovery bit (1), 7 34 2 report_writer bit (5), 7 35 2 ss_desc_entry bit (1), 7 36 2 jump_index fixed bin, 7 37 2 length fixed bin, 7 38 2 name char(0 refer(reserved_word.length)); 7 39 7 40 7 41 7 42 /* end include file ... cobol_TYPE1.incl.pl1 */ 7 43 5051 5052 5053 dcl 1 numeric_lit based (addr_record), 8 1 8 2 /* begin include file ... cobol_TYPE2.incl.pl1 */ 8 3 /* Last modified on 12/28/76 by FCH */ 8 4 8 5 /* header */ 8 6 2 size fixed bin, 8 7 2 line fixed bin, 8 8 2 column fixed bin, 8 9 2 type fixed bin, 8 10 /* body */ 8 11 2 integral bit(1), 8 12 2 floating bit(1), 8 13 2 seg_range bit(1), 8 14 2 filler1 bit(4), 8 15 2 subscript bit(1), 8 16 2 sign char(1), 8 17 2 exp_sign char(1), 8 18 2 exp_places fixed bin, 8 19 2 places_left fixed bin, 8 20 2 places_right fixed bin, 8 21 2 places fixed bin, 8 22 2 literal char(0 refer(numeric_lit.places)); 8 23 8 24 8 25 8 26 /* end include file ... cobol_TYPE2.incl.pl1 */ 8 27 5054 5055 5056 dcl 1 alphanum_lit based (addr_record), 9 1 9 2 /* begin include file ... cobol_TYPE3.incl.pl1 */ 9 3 /* Last modified on 11/17/76 by ORN */ 9 4 /* Last modified on 12/28/76 by FCH */ 9 5 9 6 /* header */ 9 7 2 size fixed bin, 9 8 2 line fixed bin, 9 9 2 column fixed bin, 9 10 2 type fixed bin, 9 11 /* body */ 9 12 2 lit_type bit (1), 9 13 2 all_lit bit (1), 9 14 2 filler1 bit (6), 9 15 2 lit_size fixed bin, 9 16 2 string char(0 refer(alphanum_lit.lit_size)); 9 17 9 18 9 19 9 20 /* end include file ... cobol_TYPE3.incl.pl1 */ 9 21 5057 5058 5059 dcl 1 proc_def based (addr_record), 10 1 10 2 /* begin include file ... cobol_TYPE7.incl.pl1 */ 10 3 /* Last modified on 11/17/76 by ORN */ 10 4 /* Last modified on 12/28/76 by FCH */ 10 5 10 6 /* header */ 10 7 2 size fixed bin, 10 8 2 line fixed bin, 10 9 2 column fixed bin, 10 10 2 type fixed bin, 10 11 /* body */ 10 12 2 string_ptr ptr, 10 13 2 prev_rec ptr, 10 14 2 searched bit (1), 10 15 2 duplicate bit (1), 10 16 2 filler1 bit (1), 10 17 2 debug_ind bit (1), 10 18 2 section_name bit (1), 10 19 2 declarative_proc bit (1), 10 20 2 filler2 bit (1), 10 21 2 alterable bit (1), 10 22 2 priority char (2), 10 23 2 sort_range bit (1), 10 24 2 input_range bit (1), 10 25 2 output_range bit (1), 10 26 2 merge_range bit(1), 10 27 2 filler3 bit (5), 10 28 2 section_num fixed bin, 10 29 2 proc_num fixed bin, 10 30 2 def_line fixed bin, 10 31 2 name_size fixed bin, 10 32 2 name char(0 refer(proc_def.name_size)); 10 33 10 34 10 35 10 36 /* end include file ... cobol_TYPE7.incl.pl1 */ 10 37 5060 5061 5062 dcl 1 data_name based (addr_record), 11 1 11 2 /* begin include file ... cobol_TYPE9.incl.pl1 */ 11 3 /* Last modified on 06/19/77 by ORN */ 11 4 /* Last modified on 12/28/76 by FCH */ 11 5 11 6 /* header */ 11 7 2 size fixed bin, 11 8 2 line fixed bin, 11 9 2 column fixed bin, 11 10 2 type fixed bin, 11 11 /* body */ 11 12 2 string_ptr ptr, 11 13 2 prev_rec ptr, 11 14 2 searched bit (1), 11 15 2 duplicate bit (1), 11 16 2 saved bit (1), 11 17 2 debug_ind bit (1), 11 18 2 filler2 bit (3), 11 19 2 used_as_sub bit (1), 11 20 2 def_line fixed bin, 11 21 2 level fixed bin, 11 22 2 linkage fixed bin, 11 23 2 file_num fixed bin, 11 24 2 size_rtn fixed bin, 11 25 2 item_length fixed bin(24), 11 26 2 places_left fixed bin, 11 27 2 places_right fixed bin, 11 28 /* description */ 11 29 2 file_section bit (1), 11 30 2 working_storage bit (1), 11 31 2 constant_section bit (1), 11 32 2 linkage_section bit (1), 11 33 2 communication_section bit (1), 11 34 2 report_section bit (1), 11 35 2 level_77 bit (1), 11 36 2 level_01 bit (1), 11 37 2 non_elementary bit (1), 11 38 2 elementary bit (1), 11 39 2 filler_item bit (1), 11 40 2 s_of_rdf bit (1), 11 41 2 o_of_rdf bit (1), 11 42 2 bin_18 bit (1), 11 43 2 bin_36 bit (1), 11 44 2 pic_has_l bit (1), 11 45 2 pic_is_do bit (1), 11 46 2 numeric bit (1), 11 47 2 numeric_edited bit (1), 11 48 2 alphanum bit (1), 11 49 2 alphanum_edited bit (1), 11 50 2 alphabetic bit (1), 11 51 2 alphabetic_edited bit (1), 11 52 2 pic_has_p bit (1), 11 53 2 pic_has_ast bit (1), 11 54 2 item_signed bit(1), 11 55 2 sign_separate bit (1), 11 56 2 display bit (1), 11 57 2 comp bit (1), 11 58 2 ascii_packed_dec_h bit (1), /* as of 8/16/76 this field used for comp8. */ 11 59 2 ascii_packed_dec bit (1), 11 60 2 ebcdic_packed_dec bit (1), 11 61 2 bin_16 bit (1), 11 62 2 bin_32 bit (1), 11 63 2 usage_index bit (1), 11 64 2 just_right bit (1), 11 65 2 compare_argument bit (1), 11 66 2 sync bit (1), 11 67 2 temporary bit (1), 11 68 2 bwz bit (1), 11 69 2 variable_length bit (1), 11 70 2 subscripted bit (1), 11 71 2 occurs_do bit (1), 11 72 2 key_a bit (1), 11 73 2 key_d bit (1), 11 74 2 indexed_by bit (1), 11 75 2 value_numeric bit (1), 11 76 2 value_non_numeric bit (1), 11 77 2 value_signed bit (1), 11 78 2 sign_type bit (3), 11 79 2 pic_integer bit (1), 11 80 2 ast_when_zero bit (1), 11 81 2 label_record bit (1), 11 82 2 sign_clause_occurred bit (1), 11 83 2 okey_dn bit (1), 11 84 2 subject_of_keyis bit (1), 11 85 2 exp_redefining bit (1), 11 86 2 sync_in_rec bit (1), 11 87 2 rounded bit (1), 11 88 2 ad_bit bit (1), 11 89 2 debug_all bit (1), 11 90 2 overlap bit (1), 11 91 2 sum_counter bit (1), 11 92 2 exp_occurs bit (1), 11 93 2 linage_counter bit (1), 11 94 2 rnm_01 bit (1), 11 95 2 aligned bit (1), 11 96 2 not_user_writable bit (1), 11 97 2 database_key bit (1), 11 98 2 database_data_item bit (1), 11 99 2 seg_num fixed bin, 11 100 2 offset fixed bin(24), 11 101 2 initial_ptr fixed bin, 11 102 2 edit_ptr fixed bin, 11 103 2 occurs_ptr fixed bin, 11 104 2 do_rec char(5), 11 105 2 bitt bit (1), 11 106 2 byte bit (1), 11 107 2 half_word bit (1), 11 108 2 word bit (1), 11 109 2 double_word bit (1), 11 110 2 half_byte bit (1), 11 111 2 filler5 bit (1), 11 112 2 bit_offset bit (4), 11 113 2 son_cnt bit (16), 11 114 2 max_red_size fixed bin(24), 11 115 2 name_size fixed bin, 11 116 2 name char(0 refer(data_name.name_size)); 11 117 11 118 11 119 11 120 /* end include file ... cobol_TYPE9.incl.pl1 */ 11 121 5063 5064 5065 dcl 1 occurs based (occptr), 12 1 12 2 /* begin include file ... cobol_OCCURS.incl.pl1 */ 12 3 /* Last modified on 12/28/76 by FCH */ 12 4 12 5 2 keyed fixed bin, 12 6 2 key_number fixed bin, 12 7 2 dimensions fixed bin, 12 8 2 level (3), 12 9 3 indexedno fixed bin, 12 10 3 min fixed bin, 12 11 3 max fixed bin, 12 12 3 struclength fixed bin, 12 13 3 cswdx fixed bin, 12 14 3 cswd fixed bin(24); 12 15 12 16 /* end include file ... cobol_OCCURS.incl.pl1 */ 12 17 5066 5067 5068 dcl 1 index_name based (addr_record), 13 1 13 2 /* begin include file ... cobol_TYPE10.incl.pl1 13 3*/* Last modified on 01/25/77 by ORN */ 13 4 13 5 /* header */ 13 6 2 size fixed bin, 13 7 2 line fixed bin, 13 8 2 column fixed bin, 13 9 2 type fixed bin, 13 10 /* body */ 13 11 2 string_ptr ptr, 13 12 2 prev_rec ptr, 13 13 2 searched bit(1), 13 14 2 duplicate bit(1), 13 15 2 saved bit(1), 13 16 2 debug_ind bit(1), 13 17 2 filler1 bit(3), 13 18 2 subscript bit(1), 13 19 2 def_line fixed bin, 13 20 2 level fixed bin, 13 21 2 seg_num fixed bin, 13 22 2 offset fixed bin(24), 13 23 2 index_no fixed bin, 13 24 2 min fixed bin, 13 25 2 max fixed bin, 13 26 2 struc_length fixed bin, 13 27 2 cswd_seg fixed bin, 13 28 2 cswd_offset fixed bin(24), 13 29 2 name_size fixed bin, 13 30 2 name char(0 refer(index_name.name_size)); 13 31 13 32 13 33 13 34 /* end include file ... cobol_TYPE10.incl.pl1 */ 13 35 5069 5070 5071 dcl 1 fd_token based (addr_record), 14 1 14 2 /* begin include file ... cobol_TYPE12.incl.pl1 */ 14 3 /* Last modified on 11/17/76 by ORN */ 14 4 14 5 /* header */ 14 6 2 size fixed bin, 14 7 2 line fixed bin, 14 8 2 column fixed bin, 14 9 2 type fixed bin, 14 10 /* body */ 14 11 2 string_ptr ptr, 14 12 2 prev_rec ptr, 14 13 2 info bit (8), 14 14 2 def_line fixed bin, 14 15 2 file_no fixed bin, 14 16 2 name_size fixed bin, 14 17 2 name char(0 refer(fd_token.name_size)); 14 18 14 19 /* end include file ... cobol_TYPE12.incl.pl1 */ 14 20 5072 5073 5074 15 1 15 2 /* BEGIN INCLUDE FILE ... cobol_type13.incl.pl1 */ 15 3 /* Last modified on 11/19/76 by ORN */ 15 4 15 5 dcl cdtoken_ptr ptr; 15 6 15 7 /* BEGIN DECLARATION OF TYPE13 (CD NAME) TOKEN */ 15 8 dcl 1 cdtoken based(cdtoken_ptr), 16 1 16 2 /* begin include file ... cobol_TYPE13.incl.pl1 16 3*/* Last modified on 11/18/76 by ORN */ 16 4 16 5 /* header */ 16 6 2 size fixed bin, 16 7 2 line fixed bin, 16 8 2 column fixed bin, 16 9 2 type fixed bin, /* cd = 13 */ 16 10 /* body */ 16 11 2 string_ptr ptr, 16 12 2 prev_rec ptr, 16 13 2 info, 16 14 3 searched bit(1), 16 15 3 duplicate bit(1), 16 16 3 filler1 bit(6), 16 17 2 options, 16 18 3 input bit(1), 16 19 3 output bit(1), 16 20 3 initial bit(1), 16 21 2 def_line fixed bin, 16 22 2 cd_num fixed bin, 16 23 2 cd_seg fixed bin, 16 24 2 cd_off fixed bin(24), 16 25 2 max_redef fixed bin, 16 26 2 mdest fixed bin, 16 27 2 name_size fixed bin, 16 28 2 name char(0 refer(cdtoken.name_size)); 16 29 16 30 /* end include file ... cobol_TYPE13.incl.pl1 */ 16 31 15 9 15 10 /* END DECLARATION OF TYPE13 (CD NAME) TOKEN */ 15 11 15 12 15 13 /* END INCLUDE FILE ... cobol_type13.incl.pl1 */ 15 14 5075 5076 dcl 1 mnemonic_name based (addr_record), 17 1 17 2 /* begin include file ... cobol_TYPE17.incl.pl1 */ 17 3 /* Last modified on 11/17/76 by ORN */ 17 4 17 5 /* header */ 17 6 2 size fixed bin, 17 7 2 line fixed bin, 17 8 2 column fixed bin, 17 9 2 type fixed bin, 17 10 /* body */ 17 11 2 string_ptr ptr, 17 12 2 prev_rec ptr, 17 13 2 info bit(8), 17 14 2 class, 17 15 3 switch_condition bit(1), 17 16 3 switch_name bit(1), 17 17 3 accept_device bit(1), 17 18 3 display_device bit(1), 17 19 3 printer_control bit(1), 17 20 3 alphabet_name bit(1), 17 21 2 on_status bit(1), 17 22 2 off_status bit(1), 17 23 2 def_line fixed bin, 17 24 2 iw_key fixed bin, 17 25 2 reserved bit(36), 17 26 2 alphabet_offset fixed bin, 17 27 2 name_size fixed bin, 17 28 2 name char(0 refer (mnemonic_name.name_size)); 17 29 17 30 17 31 /* end include file ... cobol_TYPE17.incl.pl1 */ 17 32 5077 5078 dcl 01 dumprocname static, 18 1 18 2 /* begin include file ... cobol_TYPE18.incl.pl1 */ 18 3 /* Last modified on 11/7/76 by ORN */ 18 4 18 5 /* header */ 18 6 2 size fixed bin, 18 7 2 line fixed bin, 18 8 2 column fixed bin, 18 9 2 type fixed bin, 18 10 /* body */ 18 11 2 string_ptr ptr, 18 12 2 prev_rec ptr, 18 13 2 searched bit (1), 18 14 2 duplicate bit (1), 18 15 2 filler1 bit (1), 18 16 2 debug_ind bit (1), 18 17 2 section_name bit (1), 18 18 2 declarative_proc bit (1), 18 19 2 filler2 bit (1), 18 20 2 alterable bit (1), 18 21 2 priority char (2), 18 22 2 sort_range bit (1), 18 23 2 input_range bit (1), 18 24 2 output_range bit (1), 18 25 2 merge_range bit(1), 18 26 2 filler3 bit (5), 18 27 2 section_num fixed bin, 18 28 2 proc_num fixed bin, 18 29 2 def_line fixed bin, 18 30 2 name_size fixed bin, 18 31 2 name char (30); 18 32 18 33 /* end include file ... cobol_TYPE18.incl.pl1 */ 18 34 5079 5080 /* type18 procedure name stored here for go to depending */ 5081 dcl 01 store_label_1 static internal, 19 1 19 2 /* begin include file ... cobol_TYPE18.incl.pl1 */ 19 3 /* Last modified on 11/7/76 by ORN */ 19 4 19 5 /* header */ 19 6 2 size fixed bin, 19 7 2 line fixed bin, 19 8 2 column fixed bin, 19 9 2 type fixed bin, 19 10 /* body */ 19 11 2 string_ptr ptr, 19 12 2 prev_rec ptr, 19 13 2 searched bit (1), 19 14 2 duplicate bit (1), 19 15 2 filler1 bit (1), 19 16 2 debug_ind bit (1), 19 17 2 section_name bit (1), 19 18 2 declarative_proc bit (1), 19 19 2 filler2 bit (1), 19 20 2 alterable bit (1), 19 21 2 priority char (2), 19 22 2 sort_range bit (1), 19 23 2 input_range bit (1), 19 24 2 output_range bit (1), 19 25 2 merge_range bit(1), 19 26 2 filler3 bit (5), 19 27 2 section_num fixed bin, 19 28 2 proc_num fixed bin, 19 29 2 def_line fixed bin, 19 30 2 name_size fixed bin, 19 31 2 name char (30); 19 32 19 33 /* end include file ... cobol_TYPE18.incl.pl1 */ 19 34 5082 5083 /* store type 18 for go dependig */ 5084 dcl 01 store_label_2 static internal, 20 1 20 2 /* begin include file ... cobol_TYPE18.incl.pl1 */ 20 3 /* Last modified on 11/7/76 by ORN */ 20 4 20 5 /* header */ 20 6 2 size fixed bin, 20 7 2 line fixed bin, 20 8 2 column fixed bin, 20 9 2 type fixed bin, 20 10 /* body */ 20 11 2 string_ptr ptr, 20 12 2 prev_rec ptr, 20 13 2 searched bit (1), 20 14 2 duplicate bit (1), 20 15 2 filler1 bit (1), 20 16 2 debug_ind bit (1), 20 17 2 section_name bit (1), 20 18 2 declarative_proc bit (1), 20 19 2 filler2 bit (1), 20 20 2 alterable bit (1), 20 21 2 priority char (2), 20 22 2 sort_range bit (1), 20 23 2 input_range bit (1), 20 24 2 output_range bit (1), 20 25 2 merge_range bit(1), 20 26 2 filler3 bit (5), 20 27 2 section_num fixed bin, 20 28 2 proc_num fixed bin, 20 29 2 def_line fixed bin, 20 30 2 name_size fixed bin, 20 31 2 name char (30); 20 32 20 33 /* end include file ... cobol_TYPE18.incl.pl1 */ 20 34 5085 21 1 /* BEGIN INCLUDE FILE ... cobol_file_desc_1.incl.pl1 */ 21 2 /* Last Modified on Oct. 14, 1978 by FCH */ 21 3 21 4 dcl file_desc_1_type fixed bin static init(1) options(constant); 21 5 dcl file_desc_1_ptr ptr; 21 6 21 7 dcl 1 file_desc_1 based(file_desc_1_ptr), 21 8 2 type fixed bin, 21 9 2 alt_key_count fixed bin, 21 10 2 prime_key, 21 11 3 offset fixed bin, 21 12 3 size fixed bin, 21 13 2 alt_key(0 refer(file_desc_1.alt_key_count)), 21 14 3 offset fixed bin, 21 15 3 size fixed bin; 21 16 21 17 /* 21 18* 21 19*FIELD CONTENTS 21 20* 21 21*type file type 21 22*alt_key_count alternate_key_count 21 23*prime key prime record key 21 24*alt_key alternate record keys 21 25*offset offset (in bytes) of key field in record 21 26*size size (in bytes) of key field in record 21 27* negative if duplicates legal 21 28* 21 29**/ 21 30 21 31 /* END INCLUDE FILE ... cobol_file_desc_1.incl.pl1 */ 5086 5087 end cobol_db_phase; SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 05/24/89 0832.9 cobol_db_phase.pl1 >spec>install>MR12.3-1048>cobol_db_phase.pl1 5034 1 03/27/82 0431.3 cobol_ext_.incl.pl1 >ldd>include>cobol_ext_.incl.pl1 5036 2 11/11/82 1712.8 cobol_fixed_common.incl.pl1 >ldd>include>cobol_fixed_common.incl.pl1 5042 3 11/11/82 1712.7 cobol_file_table.incl.pl1 >ldd>include>cobol_file_table.incl.pl1 5043 4 03/27/82 0439.7 cobol_diag_file.incl.pl1 >ldd>include>cobol_diag_file.incl.pl1 5044 5 11/11/82 1712.7 cobol_.incl.pl1 >ldd>include>cobol_.incl.pl1 5047 6 11/11/82 1712.8 cobol_TYPE40.incl.pl1 >ldd>include>cobol_TYPE40.incl.pl1 5051 7 11/11/82 1712.8 cobol_TYPE1.incl.pl1 >ldd>include>cobol_TYPE1.incl.pl1 5054 8 11/11/82 1712.8 cobol_TYPE2.incl.pl1 >ldd>include>cobol_TYPE2.incl.pl1 5057 9 11/11/82 1712.8 cobol_TYPE3.incl.pl1 >ldd>include>cobol_TYPE3.incl.pl1 5060 10 11/11/82 1712.7 cobol_TYPE7.incl.pl1 >ldd>include>cobol_TYPE7.incl.pl1 5063 11 11/11/82 1712.7 cobol_TYPE9.incl.pl1 >ldd>include>cobol_TYPE9.incl.pl1 5066 12 03/27/82 0439.6 cobol_OCCURS.incl.pl1 >ldd>include>cobol_OCCURS.incl.pl1 5069 13 11/11/82 1712.7 cobol_TYPE10.incl.pl1 >ldd>include>cobol_TYPE10.incl.pl1 5072 14 03/27/82 0439.6 cobol_TYPE12.incl.pl1 >ldd>include>cobol_TYPE12.incl.pl1 5075 15 11/11/82 1712.8 cobol_type13.incl.pl1 >ldd>include>cobol_type13.incl.pl1 15-9 16 03/27/82 0439.6 cobol_TYPE13.incl.pl1 >ldd>include>cobol_TYPE13.incl.pl1 5077 17 11/11/82 1712.8 cobol_TYPE17.incl.pl1 >ldd>include>cobol_TYPE17.incl.pl1 5079 18 03/27/82 0439.6 cobol_TYPE18.incl.pl1 >ldd>include>cobol_TYPE18.incl.pl1 5082 19 03/27/82 0439.6 cobol_TYPE18.incl.pl1 >ldd>include>cobol_TYPE18.incl.pl1 5085 20 03/27/82 0439.6 cobol_TYPE18.incl.pl1 >ldd>include>cobol_TYPE18.incl.pl1 5086 21 03/27/82 0439.4 cobol_file_desc_1.incl.pl1 >ldd>include>cobol_file_desc_1.incl.pl1 NAMES DECLARED IN THIS COMPILATION. IDENTIFIER OFFSET LOC STORAGE CLASS DATA TYPE ATTRIBUTES AND REFERENCES (* indicates a set context) NAMES DECLARED BY DECLARE STATEMENT. ALL_REFS 0(21) 014240 automatic bit(1) level 2 packed packed unaligned dcl 4869 set ref 1706* 1711* 1728* 4024 AR 014466 automatic pointer dcl 395 set ref 401* 405 BEG_ID 005353 automatic fixed bin(17,0) dcl 4596 set ref 1751* 1760* 2024 CD based structure level 1 unaligned dcl 4745 DATA based structure level 1 unaligned dcl 4774 DB 0(22) 014240 automatic bit(1) level 2 packed packed unaligned dcl 4869 set ref 1722* 3567 3924 3997* DB_TYPE 005344 automatic fixed bin(17,0) dcl 4593 set ref 2707 3988 4000 4059 4181 4184 4262* 4270* 4275* 4279* 4284* DD 001501 constant char(73) initial array packed unaligned dcl 140 set ref 128 DIAG_NUM 012145 automatic fixed bin(17,0) dcl 4806 set ref 80* 297* 306* 309* 331 331* EN 005350 automatic fixed bin(17,0) dcl 4593 set ref 1740 1740 1740 4074 4074 4078 4078 4078 4082 4085 4113* 4121* 4123* 4133* 4139* 4161* ENTRY based structure level 1 unaligned dcl 4787 ENT_NUM 012135 automatic fixed bin(17,0) dcl 4743 set ref 2877* 2891* 2891 2893 2898 2911* 2911 2913 2919 2925 2959 2964 2987 2992 3015 3020 3043 3049 4115 4123 4141 4178* ENT_PTR 012130 automatic pointer dcl 4740 set ref 102 103 104 105 2879* 2905* 2934* 2937 2942* 2942 2959* 2964* 2966* 2966 2987* 2992* 2994* 2994 3015* 3020* 3022* 3022 3043* 3049* 3051* 3051 4005 4006 4007 4008 4017 4018 4019 4020 4021 4022 4035 4036 4045 4046 4179* 4214 4214 4214 4214 4214 4226 4229 4233 4236 4245 4253 FILE based structure level 1 unaligned dcl 4754 FN based fixed bin(17,0) dcl 4328 set ref 4330* FR 000314 automatic structure level 1 unaligned dcl 4535 set ref 4359 4359 IN_LINE 005351 automatic fixed bin(17,0) dcl 4596 set ref 873 1803* 1809* LN 014676 automatic char(6) packed unaligned dcl 2649 set ref 2679* 2681* 2685 2690 2694 LN1 014234 automatic char(6) packed unaligned dcl 4865 set ref 2418 2684* 2694* 2699 M1 000102 automatic structure level 1 unaligned dcl 2238 set ref 2413 2413 M2 000124 automatic structure level 1 unaligned dcl 2245 set ref 2392 2392 2455 2455 2513 2513 2857 2857 3107 3107 M3 000146 automatic structure level 1 unaligned dcl 2252 set ref 2771 2771 3062 3062 3078 3078 4339 4339 M4 000170 automatic structure level 1 unaligned dcl 2259 set ref 2349 2349 2386 2386 2867 2867 3105 3105 4336 4336 M5 000212 automatic structure level 1 unaligned dcl 2266 set ref 2788 2788 M6 000264 automatic structure level 1 unaligned dcl 2273 set ref 2458 2458 MODE 005334 automatic fixed bin(17,0) dcl 4589 set ref 2956 2984 3012 3040 3994* 4160* NAME 014701 automatic char(30) packed unaligned dcl 2649 set ref 2709* 2713* 2717* 2721* 2728* 2728 2730 NEXT_PTR 012126 automatic pointer dcl 4740 set ref 2878* N_L 0(14) 014240 automatic bit(1) level 2 packed packed unaligned dcl 4869 set ref 56* 386* 388* 3567 PP 014646 automatic pointer dcl 2578 in procedure "emit_sub" set ref 2585* 2587 PP 005346 automatic pointer dcl 4593 in procedure "cobol_db_phase" set ref 2702* 3985* 4005 4006 4007 4018 4019 4020 4021 4022 4036 4046 4159* 4214 4214 4214 4214 4214 4224 4229 4236 4245 4253 4261 PROC based structure level 1 unaligned dcl 4763 QQ 012132 automatic pointer dcl 4740 set ref 1668 1670 1670 1673 1675 1678 1680 1683 1685 1752 1752 1761 1761 1787 1789 1789 1792 1796 1800 2024 2024 4082* 4083 4084 4150* REC_NUM parameter fixed bin(17,0) dcl 136 set ref 120 128 131 131* 159 174* 196 203 206 206* RP 012154 automatic pointer dcl 4823 set ref 405* 421* 421 425* 425 2641* 2738* RP1 012156 automatic pointer dcl 4823 set ref 421* 423 425* 444* 446 2369 ST 004324 automatic structure array level 1 unaligned dcl 4559 ST_NO 000307 automatic fixed bin(17,0) dcl 4530 set ref 2063 2071 2077 2080* 4085* 4151* TAB based structure level 1 unaligned dcl 4791 TAB_PTR 012124 automatic pointer dcl 4740 set ref 2876* 2893 2898 2900 2903 2905 2913 2919 2925 2929 2934 2959 2964 2987 2992 3015 3020 3043 3049 4052 4052 TB based structure level 1 unaligned dcl 4552 TKN 001012 constant char(73) initial array packed unaligned dcl 213 set ref 191 203 TN 015414 automatic fixed bin(17,0) dcl 4393 set ref 4402* 4403 4407* 4411* 4412 4416* TOK 1 based fixed bin(17,0) level 2 in structure "state_dn" dcl 2474 in procedure "emit_data" ref 2504 2508 2508 2510 TOK 2 based fixed bin(17,0) level 3 in structure "statement_data_entry" dcl 4614 in procedure "cobol_db_phase" set ref 1673* TOK 000314 automatic fixed bin(17,0) level 2 in structure "FR" dcl 4535 in procedure "cobol_db_phase" set ref 2036* 2039 4372 TOK 014630 automatic fixed bin(17,0) level 2 in structure "dntok" dcl 2492 in procedure "emit_data" set ref 2521* TOK 1 based fixed bin(17,0) level 2 in structure "state_fn" dcl 2754 in procedure "emit_file" ref 2764 TOK based fixed bin(17,0) level 2 in structure "sub" dcl 2622 in procedure "emit_range" ref 2626 2626 TOK 6 based fixed bin(17,0) level 3 in structure "statement_data_entry" dcl 4614 in procedure "cobol_db_phase" set ref 1683* TOK 236 005762 automatic fixed bin(17,0) array level 4 in structure "statement" dcl 4657 in procedure "cobol_db_phase" set ref 1740* 1740 4074* 4074 4078 4078* 4078 4446 TOK 1 based fixed bin(17,0) level 2 in structure "state_cd" dcl 2801 in procedure "emit_cd" ref 2812 TOK 70 005762 automatic fixed bin(17,0) array level 4 in structure "statement" dcl 4657 in procedure "cobol_db_phase" set ref 4476 TOK based fixed bin(17,0) level 2 in structure "sub" dcl 2581 in procedure "emit_sub" ref 2585 2595 2603 2604 TOK 015114 automatic fixed bin(17,0) level 2 in structure "sub" dcl 3120 in procedure "emit_sort_merge" set ref 3129* 3138* 3145* 3150* 3158* 3168* TOK 4 based fixed bin(17,0) level 3 in structure "statement_data_entry" dcl 4614 in procedure "cobol_db_phase" set ref 1678* TOK 2 based fixed bin(17,0) array level 3 in structure "TB" dcl 4552 in procedure "cobol_db_phase" set ref 4116* 4142* TOKNO 014626 automatic fixed bin(17,0) dcl 2471 set ref 2508* 2510* 2512 2521 TOK_NUM parameter fixed bin(17,0) dcl 3099 in procedure "SM_emit" ref 3096 3103 TOK_NUM based fixed bin(17,0) dcl 4600 in procedure "cobol_db_phase" set ref 1912* 1912 TOK_SIZE 015230 automatic fixed bin(17,0) dcl 3561 set ref 3563* 3570 TOK_TAB 000320 automatic structure level 1 unaligned dcl 4543 TOK_ptr 005354 automatic pointer dcl 4599 set ref 69* 1912 1912 TOK_size 1 014630 automatic fixed bin(17,0) level 2 in structure "dntok" dcl 2492 in procedure "emit_data" set ref 2522* TOK_size 1 015114 automatic fixed bin(17,0) level 2 in structure "sub" dcl 3120 in procedure "emit_sort_merge" set ref 3130* 3139* 3146* 3151* 3159* 3169* TOK_size 1 based fixed bin(17,0) level 2 in structure "sub" dcl 2622 in procedure "emit_range" ref 2626 TOK_size 1 based fixed bin(17,0) level 2 in structure "sub" dcl 2581 in procedure "emit_sub" ref 2589 2597 TOK_size based fixed bin(17,0) level 2 in structure "data_dn" dcl 2478 in procedure "emit_data" ref 2522 TOK_size based fixed bin(17,0) level 2 in structure "statement_data_entry" dcl 4614 in procedure "cobol_db_phase" set ref 1752* 1761* 2024* 4084* TOK_size 5 based fixed bin(17,0) level 3 in structure "statement_data_entry" dcl 4614 in procedure "cobol_db_phase" set ref 1680* 1796* TOK_size 3 based fixed bin(17,0) level 3 in structure "statement_data_entry" dcl 4614 in procedure "cobol_db_phase" set ref 1675* 1792* TOK_size 7 based fixed bin(17,0) level 3 in structure "statement_data_entry" dcl 4614 in procedure "cobol_db_phase" set ref 1685* 1800* TOK_size 1 000314 automatic fixed bin(17,0) level 2 in structure "FR" dcl 4535 in procedure "cobol_db_phase" set ref 2039* 4372 4374 4378 TYPE 015352 automatic fixed bin(17,0) dcl 4259 set ref 4261* 4264 4264 UB_ind 0(06) 014240 automatic bit(1) initial level 2 packed packed unaligned dcl 4869 set ref 4869* a_num 4 based fixed bin(17,0) level 2 dcl 4981 set ref 287* 292 299 305 accept_device 10(10) based bit(1) level 3 packed packed unaligned dcl 5076 ref 1341 access 45 based fixed bin(17,0) level 2 dcl 3-25 ref 669 act_num 012142 automatic fixed bin(17,0) dcl 4801 set ref 299* 310* 316 addr builtin function dcl 5013 ref 60 65 74 81 128 191 203 253 268 349 2091 2349 2349 2386 2386 2392 2392 2413 2413 2455 2455 2458 2458 2513 2513 2523 2526 2526 2557 2557 2561 2561 2563 2563 2566 2566 2568 2568 2569 2569 2762 2771 2771 2788 2788 2809 2832 2832 2839 2839 2846 2846 2846 2846 2857 2857 2867 2867 2948 2948 2959 2964 2966 2976 2976 2987 2992 2994 3004 3004 3015 3020 3022 3032 3032 3043 3049 3051 3062 3062 3078 3078 3105 3105 3107 3107 3124 3237 3237 3250 3250 3255 3255 3384 3384 3390 3390 3403 3404 3454 3455 4063 4069 4082 4091 4097 4336 4336 4339 4339 4359 4359 4464 4464 4464 4464 4487 4495 addr_record 2 014274 automatic pointer level 2 dcl 4957 set ref 273 277 366 367 402 403 464* 469 471 471 486 487 496 497 511 511 511 511 516 516 524 538 543 543 552 552 559 559 559 559 572 579 584 591 591 596 598 598 598 598 598 598 598 609 617 617 631 631 641 641 646 646 653 653 653 662 676 683 687 688 698 698 703 708 708 708 715 715 720 720 727 735 745 745 745 750 750 750 755 755 765 765 765 772 782 782 782 787 787 787 793 793 793 801 808 814 814 814 819 819 825 825 825 825 825 831 831 831 839 839 839 847 847 852 852 860 883 883 883 891 891 891 912 931 931 931 934 937 952 952 952 957 957 963 963 963 970 970 970 991 996 996 1012 1012 1012 1012 1012 1018 1018 1023 1029 1029 1029 1036 1036 1036 1043 1043 1043 1052 1052 1057 1057 1057 1057 1062 1062 1067 1067 1067 1073 1073 1073 1073 1073 1079 1079 1084 1084 1089 1089 1093 1093 1099 1099 1099 1099 1113 1113 1129 1129 1129 1143 1143 1153 1153 1153 1153 1153 1153 1165 1165 1165 1173 1173 1181 1181 1187 1197 1197 1209 1214 1214 1214 1214 1214 1221 1227 1227 1234 1242 1245 1256 1264 1280 1288 1288 1288 1288 1288 1288 1298 1298 1304 1304 1304 1304 1310 1316 1322 1329 1334 1341 1341 1348 1348 1355 1355 1362* 1371 1377 1377 1393 1400 1411 1411 1414 1417 1434 1441 1444 1446 1448 1450 1465 1477 1480 1481 1532 1535 1537 1539 1541 1550 1552 1554 1556 1558 1569 1575 1580 1582 1592 1610* 1612 1612 1767 1771 3932* 3934 3934 3985 4159 4214 4310* 4316* 4316 addrel builtin function dcl 5013 ref 241 423 446 2369 all_lit 4(01) based bit(1) level 2 packed packed unaligned dcl 5056 set ref 1592* all_procs 0(23) 014240 automatic bit(1) level 2 packed packed unaligned dcl 4869 set ref 108* 1719 1722* 1992 2344 2354 2397 2446 3924 3988 4186 all_refs 2144 007350 automatic bit(1) array level 3 packed packed unaligned dcl 4694 set ref 100* 2504 4024* alphabet_name based structure level 1 unaligned dcl 5046 alphabetic 21(21) based bit(1) level 2 packed packed unaligned dcl 5062 ref 1079 1153 1214 alphabetic_edited 21(22) based bit(1) level 2 packed packed unaligned dcl 5062 ref 825 alphanum 21(19) based bit(1) level 2 packed packed unaligned dcl 5062 ref 852 1079 1143 1153 1214 alphanum_edited 21(20) based bit(1) level 2 packed packed unaligned dcl 5062 ref 825 852 alphanum_lit based structure level 1 unaligned dcl 5056 alt_ct 012134 automatic fixed bin(17,0) dcl 4742 set ref 1999* 1999 2000 2016* 2020 2440 2440 alt_tab 011524 automatic structure array level 1 unaligned dcl 4736 arith_op 5(01) based bit(1) level 2 packed packed unaligned dcl 5050 ref 957 1084 bad_token 0(16) 014240 automatic bit(1) level 2 packed packed unaligned dcl 4869 set ref 376* 474* 1865 by 10 013162 automatic structure array level 3 unaligned dcl 4829 set ref 3455 cd 007350 automatic structure level 2 in structure "debug_table" unaligned dcl 4694 in procedure "cobol_db_phase" set ref 3032 3032 cd 2 005762 automatic structure level 2 in structure "statement" unaligned dcl 4657 in procedure "cobol_db_phase" set ref 4097 cd_array 6 based structure array level 2 unaligned dcl 4745 set ref 3043 3049 cd_entry based structure level 1 unaligned dcl 4633 set ref 105 cd_name_ptr 014742 automatic pointer dcl 2795 set ref 2812* 2813* 2814* cd_num 12 based fixed bin(17,0) level 2 in structure "cdtoken" dcl 15-8 in procedure "cobol_db_phase" ref 4046 4253 cd_num based fixed bin(17,0) level 2 in structure "cd_entry" dcl 4633 in procedure "cobol_db_phase" set ref 4046* 4253 cd_pres 000100 automatic bit(1) packed unaligned dcl 616 set ref 622* 626* 3669 cd_ptr 014740 automatic pointer dcl 2795 set ref 2809* 2816 cd_size 005324 automatic fixed bin(17,0) dcl 4584 set ref 105* 3040* cdtoken based structure level 1 unaligned dcl 15-8 ch 014700 automatic char(1) packed unaligned dcl 2649 set ref 2685* 2687 2690* ch5 015370 automatic char(5) packed unaligned dcl 4325 set ref 4330* 4332 4334* class 10(08) based structure level 2 packed packed unaligned dcl 5076 cobol$alloc 000250 constant entry external dcl 5012 ref 2896 cobol_c_list 000274 constant entry external dcl 5032 ref 369 488 501 cobol_com_ptr defined pointer dcl 1-25 ref 82 287 303 1272 cobol_db 000276 constant entry external dcl 5033 ref 63 cobol_db_put 000270 constant entry external dcl 5027 ref 421 425 444 cobol_ddsyntax$get_file_key 000272 constant entry external dcl 5030 ref 4330 cobol_ext_$cobol_com_ptr 000300 external static pointer dcl 1-24 ref 82 82 287 287 303 303 1272 1272 cobol_ext_$cobol_rmin2fp 000302 external static pointer dcl 1-50 ref 464 464 1608 1608 3932 3932 4310 4310 cobol_ext_$cobol_x3fp 000304 external static pointer dcl 1-70 ref 421 421 425 425 444 444 4316 4316 cobol_imp_word$lang_name 000256 constant entry external dcl 5019 ref 1362 cobol_read_rand_ 000262 constant entry external dcl 5022 ref 4334 cobol_rmin2fp defined pointer dcl 1-51 set ref 464* 1608* 3932* 4310* cobol_swf_get 000260 constant entry external dcl 5021 ref 464 1608 3932 4310 cobol_swf_put 000266 constant entry external dcl 5026 ref 4316 cobol_syntax_trace_$initialize_phase 000254 constant entry external dcl 5017 ref 111 cobol_syntax_trace_$trace 000252 constant entry external dcl 5015 ref 261 280 313 320 346 357 cobol_x3fp defined pointer dcl 1-71 set ref 421* 425* 444* 4316* column 2 014263 automatic fixed bin(17,0) level 2 in structure "lev_diag_item" dcl 4927 in procedure "cobol_db_phase" set ref 497* column 2 014254 automatic fixed bin(17,0) level 2 in structure "diag_item" dcl 4917 in procedure "cobol_db_phase" set ref 366* 486* column 2 based fixed bin(17,0) level 2 in structure "header" dcl 4999 in procedure "cobol_db_phase" set ref 366 403 449* 486 497 1371 2639* 2736* communication_section 21(04) based bit(1) level 2 packed packed unaligned dcl 5062 ref 598 comp_level 137 based char(1) level 2 packed packed unaligned dcl 2-26 ref 287 303 compiler_id 154 based fixed bin(17,0) level 2 dcl 2-26 ref 1272 cond 12 013162 automatic structure array level 3 unaligned dcl 4829 set ref 3384 3384 3390 3390 4487 cond_desc based structure level 1 unaligned dcl 4816 in procedure "cobol_db_phase" cond_desc based structure level 1 unaligned dcl 4505 in procedure "emit_db_cond" constant_section 21(02) based bit(1) level 2 packed packed unaligned dcl 5062 ref 598 1012 1052 1057 1073 copy_loc 14 013162 automatic fixed bin(17,0) array level 4 in structure "per_desc" dcl 4829 in procedure "cobol_db_phase" set ref 3308* 3326* 3387* copy_loc 646 013162 automatic fixed bin(17,0) level 3 in structure "per_desc" dcl 4829 in procedure "cobol_db_phase" set ref 3252* 3269* copy_mode 0(10) 014240 automatic bit(1) level 2 packed packed unaligned dcl 4869 set ref 52* 417 3253* 3257* 3388* 3392* copy_tab 012160 automatic structure level 1 unaligned dcl 4825 count 642 013162 automatic structure level 2 unaligned dcl 4829 set ref 3237 3237 crp parameter pointer dcl 136 set ref 120 128* 159 187* 191* 196 203* cssub 014241 automatic fixed bin(17,0) dcl 4896 set ref 47* 1121 1690* 1775* 1775 1782* 1782 1844* 1844 1849* current_line 014274 automatic fixed bin(24,0) level 2 dcl 4957 set ref 116* 265* 265 268 326 327* 339* 343* 349 354* 536* 536 1480* 1926* 1926 data based structure level 1 unaligned dcl 2538 in procedure "emit_subs" data 2 based fixed bin(17,0) level 2 in structure "ENTRY" dcl 4787 in procedure "cobol_db_phase" set ref 2966 2994 3022 3051 data 234 005762 automatic structure level 2 in structure "statement" unaligned dcl 4657 in procedure "cobol_db_phase" set ref 4069 data 642 007350 automatic structure level 2 in structure "debug_table" unaligned dcl 4694 in procedure "cobol_db_phase" set ref 2948 2948 data 402 005762 automatic structure array level 3 in structure "statement" unaligned dcl 4657 in procedure "cobol_db_phase" set ref 2846 2846 4082 4464 4464 data_array 6 based structure array level 2 unaligned dcl 4774 set ref 2959 2964 data_dn based structure level 1 unaligned dcl 2478 data_entry based structure level 1 unaligned dcl 4647 set ref 102 data_name based structure level 1 unaligned dcl 5062 data_size 005336 automatic fixed bin(17,0) dcl 4591 set ref 102* 2956* data_tok_num 015426 automatic fixed bin(17,0) dcl 4438 set ref 4446* 4448 4448* 4448 4451 db_res 014242 automatic fixed bin(17,0) dcl 4896 set ref 530 1525* 1884* debug_table 007350 automatic structure level 1 unaligned dcl 4694 declarative_proc 10(05) based bit(1) level 2 packed packed unaligned dcl 5059 ref 653 decswitch 000244 internal static fixed bin(17,0) dcl 4949 set ref 54* 1003 1003 1047* 1484* 1511* 1598* 1732* 1865 1984* 1987* 2328 3567 4153 def 2 000146 automatic structure array level 2 in structure "M3" unaligned dcl 2252 in procedure "cobol_db_phase" def 2 000124 automatic structure array level 2 in structure "M2" unaligned dcl 2245 in procedure "cobol_db_phase" def 2 000212 automatic structure array level 2 in structure "M5" unaligned dcl 2266 in procedure "cobol_db_phase" def 2 based structure array level 2 in structure "def" unaligned dcl 2655 in procedure "emit_macro" def 2 000264 automatic structure array level 2 in structure "M6" unaligned dcl 2273 in procedure "cobol_db_phase" def 2 000102 automatic structure array level 2 in structure "M1" unaligned dcl 2238 in procedure "cobol_db_phase" def 2 000170 automatic structure array level 2 in structure "M4" unaligned dcl 2259 in procedure "cobol_db_phase" def based structure level 1 unaligned dcl 2655 in procedure "emit_macro" dg_ptr 014250 automatic pointer dcl 4914 set ref 65* 369* 488* diag_item 014254 automatic structure level 1 unaligned dcl 4917 set ref 65 diag_num parameter fixed bin(17,0) dcl 494 in procedure "lev_diag" ref 491 498 diag_num parameter fixed bin(17,0) dcl 483 in procedure "diag" ref 480 485 dim 005352 automatic fixed bin(17,0) dcl 4596 in procedure "cobol_db_phase" set ref 1805* 1811* dim 3 013162 automatic fixed bin(17,0) level 2 in structure "per_desc" dcl 4829 in procedure "cobol_db_phase" set ref 1834* 1853 1853 1888* 1888 1893 1895 1898 1900 1903 1905 1908 2043 2043 2047 2047 2051 2051 3282 3291 3302* 3308 3311 3314 4487 4488 dimen 1 based fixed bin(17,0) level 2 in structure "statement_data_entry" dcl 4614 in procedure "cobol_db_phase" set ref 1670* 1670 1789* 1789 4083* dimen 1 based fixed bin(17,0) level 2 in structure "data_dn" dcl 2478 in procedure "emit_data" ref 2515 dimen 1 based fixed bin(17,0) level 2 in structure "data" dcl 2538 in procedure "emit_subs" ref 2552 2555 display 21(27) based bit(1) level 2 packed packed unaligned dcl 5062 ref 814 819 825 1029 1036 display_device 10(11) based bit(1) level 3 packed packed unaligned dcl 5076 ref 1348 dn_ptr 014624 automatic pointer dcl 2471 set ref 2523* 2530 dntok 014630 automatic structure level 1 unaligned dcl 2492 set ref 2526 2526 dumfix 014424 automatic fixed bin(17,0) dcl 4972 set ref 63* e_res 000316 automatic fixed bin(17,0) dcl 4539 set ref 1872 3664* 3669* 3671* 3675* 3679* 3683* 3687* 3691* 3695* 3699* 3703* 3707* 3711* 3715* 3719* 3723* 3728* 3732* 3736* 3740* 3744* 3748* 3752* 3756* 3760* 3764* 3768* 3772* 3776* 3780* 3784* 3788* 3792* 3796* 3800* 3804* 3808* 3812* 3816* 3820* 3824* 3828* 3832* 3836* 3840* 3844* 3848* 3852* 3859* 3863* 3867* 3871* 3875* 3879* 3883* 3887* 3891* 3895* 3899* 3903* 3907* 3911* 3915* 3919* 3945* 3949* 3953* 3957* 3961* 3965* 3969* 3973* 3977* elementary 21(09) based bit(1) level 2 packed packed unaligned dcl 5062 ref 782 787 814 825 831 839 970 1012 1036 1057 1067 1073 1153 1288 1298 1304 1377 emrec 0(09) 014240 automatic bit(1) level 2 packed packed unaligned dcl 4869 set ref 50* 2504 3230* 3279* en 014564 automatic fixed bin(17,0) dcl 2323 set ref 2400* 2401 end_cobol 5(07) based bit(1) level 2 packed packed unaligned dcl 5050 ref 715 end_dec 5(04) based bit(1) level 2 packed packed unaligned dcl 5050 ref 1043 end_word 005325 automatic fixed bin(17,0) dcl 4584 in procedure "cobol_db_phase" set ref 1441* 1444* 1446* 1448* 1450* 1455 1532* 1535* 1537* 1539* 1541* 1550* 1552* 1554* 1556* 1558* 1573* 1577* 1580* 1582* 1916* 1919 1919* 1919 1922 1922 1922* 1924* 1924 1926 end_word 1 004324 automatic fixed bin(17,0) array level 2 in structure "ST" dcl 4559 in procedure "cobol_db_phase" set ref 1455* 1916 1977 ent_size parameter fixed bin(17,0) dcl 2888 ref 2885 2896 entry 16 005762 automatic structure array level 3 in structure "statement" unaligned dcl 4657 in procedure "cobol_db_phase" set ref 2839 2839 entry 3 005762 automatic structure array level 3 in structure "statement" unaligned dcl 4657 in procedure "cobol_db_phase" set ref 2832 2832 entry 235 005762 automatic structure array level 3 in structure "statement" unaligned dcl 4657 in procedure "cobol_db_phase" set ref 2846 2846 4464 4464 entry 6 007350 automatic structure array level 3 in structure "debug_table" unaligned dcl 4694 in procedure "cobol_db_phase" set ref 2809 entry 67 005762 automatic structure array level 3 in structure "statement" unaligned dcl 4657 in procedure "cobol_db_phase" entry 40 007350 automatic structure array level 3 in structure "debug_table" unaligned dcl 4694 in procedure "cobol_db_phase" set ref 2762 entry 650 007350 automatic structure array level 3 in structure "debug_table" unaligned dcl 4694 in procedure "cobol_db_phase" set ref 2523 entry 166 007350 automatic structure array level 3 in structure "debug_table" unaligned dcl 4694 in procedure "cobol_db_phase" entry 1 based structure array level 2 in structure "TB" unaligned dcl 4552 in procedure "cobol_db_phase" entry_cd based structure level 1 unaligned dcl 2805 entry_dn based structure level 1 unaligned dcl 2496 entry_fn based structure level 1 unaligned dcl 2758 eof 0(17) 014240 automatic bit(1) level 2 packed packed unaligned dcl 4869 set ref 2880* 2915* 2931* 2939* 2954 2982 3010 3038 3997 4002 4014 4032 4042 ep 014566 automatic pointer dcl 2323 set ref 2397* 2401* 2404* exp_redefining 22(22) based bit(1) level 2 packed packed unaligned dcl 5062 ref 708 f_ptr parameter pointer dcl 4325 ref 4322 4330 fd_token based structure level 1 unaligned dcl 5071 figcon 5(02) based bit(1) level 2 packed packed unaligned dcl 5050 ref 646 file 15 005762 automatic structure level 2 in structure "statement" unaligned dcl 4657 in procedure "cobol_db_phase" set ref 4091 file 32 007350 automatic structure level 2 in structure "debug_table" unaligned dcl 4694 in procedure "cobol_db_phase" set ref 3004 3004 file_array 6 based structure array level 2 unaligned dcl 4754 set ref 3015 3020 file_entry based structure level 1 unaligned dcl 4637 set ref 104 file_no 12 based fixed bin(17,0) level 2 in structure "fd_token" dcl 5071 in procedure "cobol_db_phase" ref 4036 4245 file_no based fixed bin(17,0) level 2 in structure "file_entry" dcl 4637 in procedure "cobol_db_phase" set ref 4036* 4245 file_section 21 based bit(1) level 2 packed packed unaligned dcl 5062 ref 598 file_size 005340 automatic fixed bin(17,0) dcl 4591 set ref 104* 3012* file_table based structure level 1 unaligned dcl 3-25 first_ptr 642 007350 automatic pointer level 3 in structure "debug_table" dcl 4694 in procedure "cobol_db_phase" set ref 88* first_ptr 007350 automatic pointer level 3 in structure "debug_table" dcl 4694 in procedure "cobol_db_phase" set ref 85* first_ptr 160 007350 automatic pointer level 3 in structure "debug_table" dcl 4694 in procedure "cobol_db_phase" set ref 87* first_ptr 32 007350 automatic pointer level 3 in structure "debug_table" dcl 4694 in procedure "cobol_db_phase" set ref 86* first_ptr based pointer level 2 in structure "TAB" dcl 4791 in procedure "cobol_db_phase" set ref 2900* 2929 2934 fixed_common based structure level 1 unaligned dcl 2-26 fn_ptr 014722 automatic pointer dcl 2747 set ref 2762* 2768* 2778 fn_save 015401 automatic fixed bin(17,0) dcl 4353 set ref 4364* 4369 format 013162 automatic fixed bin(17,0) level 2 dcl 4829 set ref 1780* 1817* 1821* 1826* 1832* 3227 3232 from 6 013162 automatic structure array level 3 unaligned dcl 4829 set ref 3404 from_pres 0(04) 014240 automatic bit(1) level 2 packed packed unaligned dcl 4869 set ref 1547* 2034* 4356 ft_ptr 014246 automatic pointer dcl 4908 set ref 69* 669 866 gotodep 000240 internal static bit(1) packed unaligned dcl 4911 set ref 43* header based structure level 1 unaligned dcl 4999 i 014656 automatic fixed bin(17,0) dcl 2619 in procedure "emit_range" set ref 2626* 2628* i 015146 automatic fixed bin(17,0) dcl 3208 in procedure "emit_perform_state" set ref 3282* 3285* 3291* 3293* 3314* 3316 3320* 3326* i 014464 automatic fixed bin(17,0) dcl 395 in procedure "EMIT" set ref 398* 401* i 014752 automatic fixed bin(17,0) dcl 2827 in procedure "emit_db_code" set ref 2829* 2832 2832* 2836* 2839 2839* 2843* 2846 2846 2846 2846* i parameter fixed bin(17,0) dcl 3399 in procedure "perf_set" ref 3396 3403 3404 3406 3414 i 014711 automatic fixed bin(17,0) dcl 2649 in procedure "emit_macro" set ref 2671* 2673 2675 2681 2702* i 015446 automatic fixed bin(17,0) dcl 4472 in procedure "get_st_proc_num" set ref 4474* 4476 4478* i parameter fixed bin(17,0) dcl 3378 in procedure "perf_until" ref 3375 3384 3384 3387 3390 3390 i 014510 automatic fixed bin(17,0) dcl 432 in procedure "emit_copy" set ref 440* 442* i 005341 automatic fixed bin(17,0) dcl 4591 in procedure "cobol_db_phase" set ref 1604* 1608 1610 1614* 1614 1618 2069* 2071* 2131* 2133 2134 2134* 4512* 4515* i 014604 automatic fixed bin(17,0) dcl 2433 in procedure "emit_alter" set ref 2440* 2443 2444 2450* i 015427 automatic fixed bin(17,0) dcl 4438 in procedure "get_st_num" set ref 4443* 4446 4453* i 015400 automatic fixed bin(17,0) dcl 4353 in procedure "emit_wr_rew" set ref 4372* 4374 4374* i parameter fixed bin(17,0) dcl 3441 in procedure "perf_incr" ref 3438 3454 3455 3457 i1 000246 internal static fixed bin(17,0) dcl 4968 set ref 59* 318* 318 323 326 343 350* 350 354 360* 360 ident based structure level 1 unaligned dcl 4396 imper_verb 5(06) based bit(1) level 2 packed packed unaligned dcl 5050 ref 720 impswitch 000243 internal static fixed bin(17,0) dcl 4948 set ref 53* 986 1629* 1636* 1640* 1647* 1650* 1688* index_name based structure level 1 unaligned dcl 5068 index_no 15 based fixed bin(17,0) level 2 dcl 5068 ref 912 indexed_by 22(09) based bit(1) level 2 packed packed unaligned dcl 5062 ref 745 indexedno 3 based fixed bin(17,0) array level 3 dcl 5065 ref 903 912 indicators 014240 automatic structure level 1 packed packed unaligned dcl 4869 info 6 014254 automatic bit(8) level 2 packed packed unaligned dcl 4917 set ref 79* inhibit_db 0(12) 014240 automatic bit(1) level 2 packed packed unaligned dcl 4869 set ref 377* 530* 534* 1865 input 10(08) based bit(1) level 3 packed packed unaligned dcl 15-8 ref 617 integral 4 based bit(1) level 2 packed packed unaligned dcl 5053 ref 559 793 931 952 1062 1256 1411 interp 014274 automatic structure level 1 unaligned dcl 4957 set ref 81 intrp_stack 014306 automatic fixed bin(24,0) array dcl 4968 set ref 326* 343 354 ioa_$rsnnl 000264 constant entry external dcl 5025 ref 2681 ip_TOK 005356 automatic fixed bin(17,0) level 2 dcl 4602 set ref 2004* 2012* 3127 3130 3133* 3138 3139 3150 3151 item_length 16 based fixed bin(24,0) level 2 dcl 5062 ref 765 item_signed 21(25) based bit(1) level 2 packed packed unaligned dcl 5062 ref 765 item_tab 005360 automatic structure level 1 unaligned dcl 4606 item_tab_ptr parameter pointer dcl 2578 set ref 2575 2593* 2600* 2602* 2610* iw_key 12 based fixed bin(17,0) level 2 dcl 5076 ref 1173 1173 1181 1181 iw_ptr parameter pointer dcl 3099 ref 3096 3102 j 014712 automatic fixed bin(17,0) dcl 2649 set ref 2683* 2685 2687 2689* 2689 2690 2694 2694 2694 2694 key 4 based fixed bin(17,0) level 2 in structure "reserved_word" dcl 5050 in procedure "cobol_db_phase" set ref 277 1043 1089 1099 1099 1099 1334 1441 1444 1446 1448 1450 1477* 1480 1532 1535 1537 1539 1541 1550 1552 1554 1556 1558 1569 1575 1580 1582 key 012136 automatic fixed bin(17,0) dcl 4797 in procedure "cobol_db_phase" set ref 1334* 1336 1336 key_a 22(07) based bit(1) level 2 packed packed unaligned dcl 5062 ref 755 key_d 22(08) based bit(1) level 2 packed packed unaligned dcl 5062 ref 755 lang_num 014243 automatic fixed bin(17,0) dcl 4896 set ref 1204 1362* 1366 last_col 005343 automatic fixed bin(17,0) dcl 4591 set ref 403* 2639 2736 last_line 005342 automatic fixed bin(17,0) dcl 4591 set ref 402* 2638 2734 last_ptr 162 007350 automatic pointer level 3 in structure "debug_table" dcl 4694 in procedure "cobol_db_phase" set ref 87* last_ptr 2 based pointer level 2 in structure "TAB" dcl 4791 in procedure "cobol_db_phase" set ref 2903 2905* last_ptr 2 007350 automatic pointer level 3 in structure "debug_table" dcl 4694 in procedure "cobol_db_phase" set ref 85* last_ptr 34 007350 automatic pointer level 3 in structure "debug_table" dcl 4694 in procedure "cobol_db_phase" set ref 86* last_ptr 644 007350 automatic pointer level 3 in structure "debug_table" dcl 4694 in procedure "cobol_db_phase" set ref 88* last_seg_num 012143 automatic fixed bin(17,0) initial dcl 4803 set ref 4803* lev_dg_ptr 014252 automatic pointer dcl 4914 set ref 74* 501* lev_diag_item 014263 automatic structure level 1 unaligned dcl 4927 set ref 74 level 12 based fixed bin(17,0) level 2 in structure "data_name" dcl 5062 in procedure "cobol_db_phase" ref 511 511 598 598 4020 4214 level 3 based structure array level 2 in structure "occurs" unaligned dcl 5065 in procedure "cobol_db_phase" level 2 based fixed bin(17,0) level 2 in structure "data_entry" dcl 4647 in procedure "cobol_db_phase" set ref 4020* 4214 level_01 21(07) based bit(1) level 2 packed packed unaligned dcl 5062 ref 708 linage 33(34) based bit(1) level 2 packed packed unaligned dcl 3-25 ref 866 line 1 014263 automatic fixed bin(17,0) level 2 in structure "lev_diag_item" dcl 4927 in procedure "cobol_db_phase" set ref 496* line 1 014254 automatic fixed bin(17,0) level 2 in structure "diag_item" dcl 4917 in procedure "cobol_db_phase" set ref 367* 487* line 1 based fixed bin(17,0) level 2 in structure "header" dcl 4999 in procedure "cobol_db_phase" set ref 367 402 448* 487 496 2638* 2734* line 1 based fixed bin(17,0) level 2 in structure "reserved_word" dcl 5050 in procedure "cobol_db_phase" ref 1481 1767 line 1 based fixed bin(17,0) level 2 in structure "proc_def" dcl 5059 in procedure "cobol_db_phase" ref 1434 1465 line 1 005762 automatic fixed bin(17,0) level 2 in structure "statement" dcl 4657 in procedure "cobol_db_phase" set ref 1434* 1465* 1481* 1767* 2091 line_num based fixed bin(17,0) dcl 2667 set ref 2681* linkage_section 21(03) based bit(1) level 2 packed packed unaligned dcl 5062 ref 511 598 lit_size 5 based fixed bin(17,0) level 2 dcl 5056 set ref 1227 1264 1280 1612 2418 2698* 2699 2730 3934 litcnt 014272 automatic fixed bin(17,0) dcl 4944 set ref 929* 934 937 943* 943 1238* 1242 1245 1248* 1248 1407* 1414 1417 1420* 1420 literal 11 based char level 2 packed packed unaligned dcl 5053 ref 934 1242 1414 ln_not_emitted 0(11) 014240 automatic bit(1) level 2 packed packed unaligned dcl 4869 set ref 72* 2362 2377* 2425* loc parameter fixed bin(17,0) dcl 431 ref 428 437 440 453 loop 4 013162 automatic structure array level 2 unaligned dcl 4829 main_tab 0(18) 014240 automatic bit(1) level 2 packed packed unaligned dcl 4869 set ref 2881* 2901* 2921* 2927* 2959 2964 2987 2992 3015 3020 3043 3049 max 5 007350 automatic fixed bin(17,0) level 3 in structure "debug_table" dcl 4694 in procedure "cobol_db_phase" set ref 95* max builtin function dcl 5013 in procedure "cobol_db_phase" ref 687 max 17 based fixed bin(17,0) level 2 in structure "index_name" dcl 5068 in procedure "cobol_db_phase" ref 688 max 37 007350 automatic fixed bin(17,0) level 3 in structure "debug_table" dcl 4694 in procedure "cobol_db_phase" set ref 96* max 647 007350 automatic fixed bin(17,0) level 3 in structure "debug_table" dcl 4694 in procedure "cobol_db_phase" set ref 98* max 5 based fixed bin(17,0) level 2 in structure "TAB" dcl 4791 in procedure "cobol_db_phase" ref 2893 2898 2919 2925 max 165 007350 automatic fixed bin(17,0) level 3 in structure "debug_table" dcl 4694 in procedure "cobol_db_phase" set ref 97* max_index 012140 automatic fixed bin(17,0) dcl 4797 set ref 688* 688 min 16 based fixed bin(17,0) level 2 in structure "index_name" dcl 5068 in procedure "cobol_db_phase" ref 687 min builtin function dcl 5013 in procedure "cobol_db_phase" ref 688 min_index 012137 automatic fixed bin(17,0) dcl 4797 set ref 687* 687 mnemonic_name based structure level 1 unaligned dcl 5076 mod_num 012141 automatic fixed bin(17,0) dcl 4801 set ref 48* 305* 499 503* module 6 014263 automatic fixed bin(17,0) level 2 dcl 4927 set ref 499* name 15 based char level 2 in structure "proc_def" packed packed unaligned dcl 5059 in procedure "cobol_db_phase" ref 183 2709 name 14 based char level 2 in structure "fd_token" packed packed unaligned dcl 5071 in procedure "cobol_db_phase" ref 2717 name 20 based char level 2 in structure "cdtoken" packed packed unaligned dcl 15-8 in procedure "cobol_db_phase" ref 2721 name 34 based char level 2 in structure "data_name" packed packed unaligned dcl 5062 in procedure "cobol_db_phase" ref 2713 4022 4214 name 4 based char(32) level 2 in structure "data_entry" packed packed unaligned dcl 4647 in procedure "cobol_db_phase" set ref 4022* 4214 name_size 17 based fixed bin(17,0) level 2 in structure "cdtoken" dcl 15-8 in procedure "cobol_db_phase" ref 2721 name_size 3 based fixed bin(17,0) level 2 in structure "data_entry" dcl 4647 in procedure "cobol_db_phase" set ref 4021* 4214 name_size 14 based fixed bin(17,0) level 2 in structure "proc_def" dcl 5059 in procedure "cobol_db_phase" ref 183 2709 name_size 33 based fixed bin(17,0) level 2 in structure "data_name" dcl 5062 in procedure "cobol_db_phase" ref 2713 4021 4022 4214 4214 4214 name_size 13 based fixed bin(17,0) level 2 in structure "fd_token" dcl 5071 in procedure "cobol_db_phase" ref 2717 nest_lev 005326 automatic fixed bin(17,0) dcl 4584 set ref 55* 565 1453* 1453 1455 1456 1623* 1646* 1654* 1846* 1846 1916 1929 1934 1940 1945 1950 1957 1960 1977 nestifcnt 000242 internal static fixed bin(17,0) dcl 4940 set ref 46* 1135 1472* 1472 1644* 1693* 1693 1697* 1697 1701* 1701 new_entry 0(13) 014240 automatic bit(1) level 2 packed packed unaligned dcl 4869 set ref 2067 4074 4109* 4125* 4134* new_ptr 015006 automatic pointer dcl 2888 set ref 2896* 2900 2903 2905 2906 next based pointer level 2 dcl 4787 set ref 2903* 2906* 2937 2942 nines_ptr 014236 automatic pointer dcl 4865 set ref 73* 2369* 2416 2418 2421* non_elementary 21(08) based bit(1) level 2 packed packed unaligned dcl 5062 ref 814 1029 1153 not_emitted 0(05) 014240 automatic bit(1) level 2 packed packed unaligned dcl 4869 set ref 1457* 1964 1977 3654* not_option parameter fixed bin(17,0) dcl 3578 in procedure "emit_not_option" set ref 3575 3592* 3647* not_option parameter fixed bin(17,0) dcl 3597 in procedure "emit_option" ref 3594 3599 null builtin function dcl 5013 ref 69 73 85 86 87 88 1668 1752 1761 1787 2024 2101 2121 2141 2149 2416 2421 2878 2879 2906 2929 2937 4150 4179 num based fixed bin(17,0) level 2 in structure "state_fn" dcl 2754 in procedure "emit_file" ref 2762 num 67 005762 automatic fixed bin(17,0) array level 4 in structure "statement" dcl 4657 in procedure "cobol_db_phase" set ref 2400 2450 num 1 based fixed bin(17,0) array level 3 in structure "TB" dcl 4552 in procedure "cobol_db_phase" set ref 4115* 4123 4141* num based fixed bin(17,0) level 2 in structure "state_dn" dcl 2474 in procedure "emit_data" ref 2504 2523 num based fixed bin(17,0) level 2 in structure "state_cd" dcl 2801 in procedure "emit_cd" ref 2809 num 014605 automatic fixed bin(17,0) dcl 2433 in procedure "emit_alter" set ref 2450* 2451 number 5 014263 automatic fixed bin(17,0) level 2 in structure "lev_diag_item" dcl 4927 in procedure "cobol_db_phase" set ref 498* number 5 014254 automatic fixed bin(17,0) level 2 in structure "diag_item" dcl 4917 in procedure "cobol_db_phase" set ref 364* 485* numeric 21(17) based bit(1) level 2 packed packed unaligned dcl 5062 ref 831 839 1012 1057 1073 1214 1288 1304 numeric_edited 21(18) based bit(1) level 2 packed packed unaligned dcl 5062 ref 825 1073 1153 1304 numeric_lit based structure level 1 unaligned dcl 5053 o_bit 0(09) based char(1) level 2 packed packed unaligned dcl 4981 ref 284 287 301 303 o_of_rdf 21(12) based bit(1) level 2 packed packed unaligned dcl 5062 ref 970 occptr 014436 automatic pointer dcl 5006 set ref 69* 903 912 occurs based structure level 1 unaligned dcl 5065 offset 1 based fixed bin(17,0) level 2 in structure "data_entry" dcl 4647 in procedure "cobol_db_phase" set ref 4019* 4214 offset 24 based fixed bin(24,0) level 2 in structure "data_name" dcl 5062 in procedure "cobol_db_phase" ref 4019 4214 op_TOK 1 005356 automatic fixed bin(17,0) level 2 dcl 4602 set ref 2004* 2008* 3136 3139 3142* 3145 3146 3156 3159 3162* 3165* 3168 3169 opt_word_num 000306 automatic fixed bin(17,0) dcl 3574 set ref 1955* 3637 3640* options 10(08) based structure level 2 packed packed unaligned dcl 15-8 output 10(09) based bit(1) level 3 packed packed unaligned dcl 15-8 ref 631 p 015416 automatic pointer dcl 4393 in procedure "db_perf" set ref 4403* 4405 4405 4412* 4414 4414 p parameter pointer dcl 2747 in procedure "emit_file" ref 2744 2762 2764 p parameter pointer dcl 2471 in procedure "emit_data" ref 2468 2504 2504 2508 2508 2510 2523 p parameter pointer dcl 2619 in procedure "emit_range" ref 2616 2626 2626 2626 p parameter pointer dcl 2784 in procedure "emit_perform" ref 2782 2786 p parameter pointer dcl 2795 in procedure "emit_cd" ref 2792 2809 2812 p parameter pointer dcl 2863 in procedure "emit_debug_contents" ref 2860 2865 p parameter pointer dcl 2649 in procedure "emit_macro" ref 2646 2671 2673 2675 2681 2702 p parameter pointer dcl 2853 in procedure "emit_debug_name" ref 2851 2855 p parameter pointer dcl 4503 in procedure "emit_db_cond" ref 4500 4512 4512 4515 p parameter pointer dcl 2536 in procedure "emit_subs" ref 2533 2552 2555 2557 2557 2561 2561 2563 2563 2566 2566 2568 2568 2569 2569 p 014506 automatic pointer dcl 432 in procedure "emit_copy" set ref 442* 444* 444 446* 448 449 p parameter pointer dcl 2636 in procedure "PUT" ref 2633 2638 2639 2641 parity 004324 automatic fixed bin(17,0) array level 2 dcl 4559 set ref 565 1456* 1929* 1934* 1940* 1945* 1950* 1957* 1960* per_cond_ptr 000310 automatic pointer dcl 4530 set ref 2067 2069 2071 2076 2076 2077 2077 4487* 4495* per_desc 013162 automatic structure level 1 unaligned dcl 4829 perf_line 000010 internal static char(72) packed unaligned dcl 167 set ref 183* 253 perf_line_ptr 000236 internal static pointer dcl 249 set ref 187 253* pic_integer 22(16) based bit(1) level 2 packed packed unaligned dcl 5062 ref 750 765 787 831 1067 1288 pigz_res 012144 automatic fixed bin(17,0) dcl 4804 set ref 921 928* 939* 947* 1388 places 10 based fixed bin(17,0) level 2 dcl 5053 ref 934 937 1242 1245 1414 1417 places_left 17 based fixed bin(17,0) level 2 dcl 5062 ref 1214 places_right 20 based fixed bin(17,0) level 2 dcl 5062 ref 1214 pn1 015160 automatic fixed bin(17,0) dcl 3337 in procedure "perf_common" set ref 3357* 3361 3366 pn1 1 013162 automatic fixed bin(17,0) level 2 in structure "per_desc" dcl 4829 in procedure "cobol_db_phase" set ref 1572* 1806* 1812* 3210 3340 3340* 3346 3357 pn1 014606 automatic pointer dcl 2433 in procedure "emit_alter" set ref 2443* 2454 pn1 011524 automatic fixed bin(17,0) array level 2 in structure "alt_tab" dcl 4736 in procedure "cobol_db_phase" set ref 2000* 2443 pn2 015161 automatic fixed bin(17,0) dcl 3337 in procedure "perf_common" set ref 3358* 3364 3364 pn2 014610 automatic pointer dcl 2433 in procedure "emit_alter" set ref 2444* 2457 pn2 1 011524 automatic fixed bin(17,0) array level 2 in structure "alt_tab" dcl 4736 in procedure "cobol_db_phase" set ref 2020* 2444 pn2 2 013162 automatic fixed bin(17,0) level 2 in structure "per_desc" dcl 4829 in procedure "cobol_db_phase" set ref 1572* 1857* 3358 pn_count 005327 automatic fixed bin(17,0) dcl 4584 set ref 83* 1438* 1438 1469* 1469 1512* 1989* 2382 pointer_to_internal 4 014274 automatic pointer level 2 dcl 4957 set ref 63* 268 349 preospn_bit 000241 internal static bit(1) packed unaligned dcl 4913 set ref 45* printer_control 10(12) based bit(1) level 3 packed packed unaligned dcl 5076 ref 1355 proc 160 007350 automatic structure level 2 in structure "debug_table" unaligned dcl 4694 in procedure "cobol_db_phase" set ref 2976 2976 proc 66 005762 automatic structure level 2 in structure "statement" unaligned dcl 4657 in procedure "cobol_db_phase" set ref 4063 proc_array 6 based structure array level 2 unaligned dcl 4763 set ref 2987 2992 proc_count 000032 internal static fixed bin(17,0) dcl 169 set ref 172 178* 178 180 183 250* proc_def based structure level 1 unaligned dcl 5059 proc_def_ptr parameter pointer dcl 238 ref 233 241 proc_def_size 000234 internal static fixed bin(17,0) dcl 236 set ref 172 172 180 240* 240 241 250* 3929 proc_def_table 000034 internal static pointer array dcl 235 set ref 183 241* proc_entry based structure level 1 unaligned dcl 4641 set ref 103 proc_num 12 based fixed bin(17,0) level 2 in structure "proc_def" dcl 5059 in procedure "cobol_db_phase" ref 4007 4236 proc_num 2 based fixed bin(17,0) level 2 in structure "proc_entry" dcl 4641 in procedure "cobol_db_phase" set ref 4007* 4229 4236 proc_ptr 14 based pointer level 2 in structure "data_entry" dcl 4647 in procedure "cobol_db_phase" set ref 4017* proc_ptr 2 based pointer level 2 in structure "entry_fn" dcl 2758 in procedure "emit_file" set ref 2778* proc_ptr 4 based pointer level 2 in structure "proc_entry" dcl 4641 in procedure "cobol_db_phase" set ref 4008* proc_ptr 14 based pointer level 2 in structure "entry_dn" dcl 2496 in procedure "emit_data" set ref 2530* proc_ptr 2 based pointer level 2 in structure "entry_cd" dcl 2805 in procedure "emit_cd" set ref 2816* proc_ptr 172 007350 automatic pointer array level 4 in structure "debug_table" dcl 4694 in procedure "cobol_db_phase" set ref 1724* 2397 2401 2446 2451 proc_ptr 2 based pointer level 2 in structure "file_entry" dcl 4637 in procedure "cobol_db_phase" set ref 4035* proc_ptr 2 based pointer level 2 in structure "cd_entry" dcl 4633 in procedure "cobol_db_phase" set ref 4045* proc_ptr 014612 automatic pointer dcl 2433 in procedure "emit_alter" set ref 2446* 2451* 2460* proc_size 005337 automatic fixed bin(17,0) dcl 4591 set ref 103* 2984* ptr 4 000102 automatic pointer array level 3 in structure "M1" dcl 2238 in procedure "cobol_db_phase" set ref 2089* 2091* 2093* 2095* ptr 2 005360 automatic pointer array level 2 in structure "item_tab" dcl 4606 in procedure "cobol_db_phase" set ref 1601* 1608* 1610 1977* 2089 2093 2095 2099 2103 2105 2109 2111 2113 2115 2119 2123 2125 2129 2134 2139 2143 2147 2151 2153 2346 2364* 2366* 2372* 2374* 2382 2384 2387* 2406* 2525* 2527* 2528* 2557* 2561* 2563* 2566* 2568* 2569* 2592* 2594* 2599* 2601* 2609* 2611* 2697 2725 3133* 3142* 3162* 3165* 3227* 3240* 3248* 3264* 3275* 3306* 3324* 3350* 3360* 3362* 3380* 3381* 3383* 3385* 3408* 3410* 3416* 3418* 3422* 3424* 3459* 3461* 3462* 3466* 3468* 3589* 3601* 3603* 3604* 3607* 3609* 3612* 3614* 3617* 3619* 3622* 3624* 3627* 3629* 3632* 3634* 3637* 3639* 4358* 4360* 4523* 4524* 4525* 4526* ptr 2 012160 automatic pointer array level 2 in structure "copy_tab" dcl 4825 in procedure "cobol_db_phase" set ref 423* 442 ptr 4 000212 automatic pointer array level 3 in structure "M5" dcl 2266 in procedure "cobol_db_phase" set ref 2129* 2134* 2139* 2141* 2143* 2786* ptr 4 000170 automatic pointer array level 3 in structure "M4" dcl 2259 in procedure "cobol_db_phase" set ref 2119* 2121* 2123* 2125* 2346* 2382* 2384* 2865* 3102* 4334* ptr 4 000264 automatic pointer array level 3 in structure "M6" dcl 2273 in procedure "cobol_db_phase" set ref 2147* 2149* 2151* 2153* 2457* ptr 4 000146 automatic pointer array level 3 in structure "M3" dcl 2252 in procedure "cobol_db_phase" set ref 2109* 2111* 2113* 2115* ptr 2 000320 automatic pointer array level 2 in structure "TOK_TAB" dcl 4543 in procedure "cobol_db_phase" set ref 401 469* 1601 2326 2443 2444 2512 2585 2595* 2603* 2604* 2628* 2764* 2812 3103 3186* 3186 3346* 3361* 3364* 3366* 3406 3414 3457 3554* 3554 3570* 3570 4361* 4374* 4374 4403 4412 ptr 4 based pointer array level 3 in structure "def" dcl 2655 in procedure "emit_macro" ref 2675 2681 2702 ptr 4 000124 automatic pointer array level 3 in structure "M2" dcl 2245 in procedure "cobol_db_phase" set ref 2099* 2101* 2103* 2105* 2326* 2454* 2512* 2855* 3103* q parameter pointer dcl 2471 set ref 2468 2515 2518* 2522 rel_op 5(05) based bit(1) level 2 packed packed unaligned dcl 5050 ref 1093 report_section 21(05) based bit(1) level 2 packed packed unaligned dcl 5062 ref 996 res 005335 automatic fixed bin(17,0) dcl 4589 set ref 536 1604* 1606 1612* 1992* 1997 2969 2997 3025 3054 3927* 3929 3934* 4155* 4166 4170* 4186* 4212* 4214* 4222* 4229* 4236* 4243* 4245* 4251* 4253* 4262* reserved_word based structure level 1 unaligned dcl 5050 rp 015200 automatic pointer dcl 3399 in procedure "perf_set" set ref 3404* 3411* 3419* 3423* 3428* rp parameter pointer dcl 4391 in procedure "db_perf" ref 4388 4411 rp 015212 automatic pointer dcl 3441 in procedure "perf_incr" set ref 3455* 3463* 3467* 3472* rp_no 015413 automatic fixed bin(17,0) dcl 4392 set ref 4400* 4417* 4424 4424 4427* 4430 4430* rptr 014674 automatic pointer dcl 2649 set ref 2675* 2697* 2698 2699 2702* 2709 2713 2717 2721 2725* 2730 2734 2736 2738 run 4 014263 automatic fixed bin(17,0) level 2 in structure "lev_diag_item" dcl 4927 in procedure "cobol_db_phase" set ref 77* run 4 014254 automatic fixed bin(17,0) level 2 in structure "diag_item" dcl 4917 in procedure "cobol_db_phase" set ref 68* s_bit based char(1) level 2 packed packed unaligned dcl 4981 ref 336 s_exit 3 014430 automatic fixed bin(17,0) level 2 in structure "sline" dcl 4991 in procedure "cobol_db_phase" set ref 61* s_exit 3 based fixed bin(17,0) level 2 in structure "syntax_line" dcl 4981 in procedure "cobol_db_phase" ref 116 339 s_of_rdf 21(11) based bit(1) level 2 packed packed unaligned dcl 5062 ref 970 secswitch 000245 internal static fixed bin(17,0) dcl 4950 set ref 57* 978 section_name based bit(1) level 2 in structure "proc_entry" packed packed unaligned dcl 4641 in procedure "cobol_db_phase" set ref 4005* 4226 4233 section_name 10(04) based bit(1) level 2 in structure "proc_def" packed packed unaligned dcl 5059 in procedure "cobol_db_phase" ref 516 543 653 698 4005 4224 section_num 11 based fixed bin(17,0) level 2 in structure "proc_def" dcl 5059 in procedure "cobol_db_phase" ref 4006 4229 section_num 1 based fixed bin(17,0) level 2 in structure "proc_entry" dcl 4641 in procedure "cobol_db_phase" set ref 4006* section_ptr 005332 automatic pointer dcl 4586 set ref 1486 1724 1771* 4008 4017 4035 4045 seg_num based fixed bin(17,0) level 2 in structure "data_entry" dcl 4647 in procedure "cobol_db_phase" set ref 4018* 4214 seg_num 23 based fixed bin(17,0) level 2 in structure "data_name" dcl 5062 in procedure "cobol_db_phase" ref 4018 4214 seg_range 4(02) based bit(1) level 2 packed packed unaligned dcl 5053 ref 559 send_bit 0(03) 014240 automatic bit(1) level 2 packed packed unaligned dcl 4869 set ref 1749* 1758* 2028* 4072 sign 4(09) based char(1) level 2 packed packed unaligned dcl 5053 ref 559 793 931 952 size 646 007350 automatic fixed bin(17,0) level 3 in structure "debug_table" dcl 4694 in procedure "cobol_db_phase" set ref 93* 4024 size based fixed bin(17,0) level 2 in structure "def" dcl 2655 in procedure "emit_macro" ref 2671 size 4 based fixed bin(17,0) level 2 in structure "TAB" dcl 4791 in procedure "cobol_db_phase" ref 2913 size 66 005762 automatic fixed bin(17,0) level 3 in structure "statement" dcl 4657 in procedure "cobol_db_phase" set ref 378* 3078 3340 4474 size 643 013162 automatic fixed bin(17,0) level 3 in structure "per_desc" dcl 4829 in procedure "cobol_db_phase" set ref 2055* size 4 007350 automatic fixed bin(17,0) level 3 in structure "debug_table" dcl 4694 in procedure "cobol_db_phase" set ref 90* size 014263 automatic fixed bin(17,0) level 2 in structure "lev_diag_item" dcl 4927 in procedure "cobol_db_phase" set ref 75* size 4 based fixed bin(17,0) level 2 in structure "CD" dcl 4745 in procedure "cobol_db_phase" set ref 4052* 4052 size based fixed bin(17,0) level 2 in structure "TB" dcl 4552 in procedure "cobol_db_phase" set ref 4108 4113* 4140* size 7 013162 automatic fixed bin(17,0) array level 4 in structure "per_desc" dcl 4829 in procedure "cobol_db_phase" set ref 1900* 2047* size 005360 automatic fixed bin(17,0) level 2 in structure "item_tab" dcl 4606 in procedure "cobol_db_phase" set ref 1618* size 13 013162 automatic fixed bin(17,0) array level 4 in structure "per_desc" dcl 4829 in procedure "cobol_db_phase" set ref 1853* size 000212 automatic fixed bin(17,0) level 2 in structure "M5" dcl 2266 in procedure "cobol_db_phase" set ref 2127* size builtin function dcl 5013 in procedure "cobol_db_phase" ref 102 103 104 105 size 36 007350 automatic fixed bin(17,0) level 3 in structure "debug_table" dcl 4694 in procedure "cobol_db_phase" set ref 91* size 000146 automatic fixed bin(17,0) level 2 in structure "M3" dcl 2252 in procedure "cobol_db_phase" set ref 2107* size 000124 automatic fixed bin(17,0) level 2 in structure "M2" dcl 2245 in procedure "cobol_db_phase" set ref 2097* size 11 013162 automatic fixed bin(17,0) array level 4 in structure "per_desc" dcl 4829 in procedure "cobol_db_phase" set ref 1905* 2051* size 000102 automatic fixed bin(17,0) level 2 in structure "M1" dcl 2238 in procedure "cobol_db_phase" set ref 2087* size 5 013162 automatic fixed bin(17,0) array level 4 in structure "per_desc" dcl 4829 in procedure "cobol_db_phase" set ref 1895* 2043* size based fixed bin(17,0) level 2 in structure "header" dcl 4999 in procedure "cobol_db_phase" set ref 421* 425* 444* 4316* size 000320 automatic fixed bin(17,0) level 2 in structure "TOK_TAB" dcl 4543 in procedure "cobol_db_phase" set ref 109* 398 398 462* 462 469 1603* 1673 1678 1683 1751 1760 1812 1823 1828 1853 1857 1861 1893 1898 1903 1908 2000 2008 2012 2020 2024 2036 2039 2043 2047 2051 2055 3146 3151 3169 3186 3187* 3554 3555* 3563 3564* 3564 3571* 3940* 4116 4142 4372 4378* 4378 size 15 005762 automatic fixed bin(17,0) level 3 in structure "statement" dcl 4657 in procedure "cobol_db_phase" set ref 378* 2836 2836 4364 4365* 4369* size 234 005762 automatic fixed bin(17,0) level 3 in structure "statement" dcl 4657 in procedure "cobol_db_phase" set ref 378* 2843 2843 4370* 4443 4443 size 014254 automatic fixed bin(17,0) level 2 in structure "diag_item" dcl 4917 in procedure "cobol_db_phase" set ref 66* size 2 005762 automatic fixed bin(17,0) level 3 in structure "statement" dcl 4657 in procedure "cobol_db_phase" set ref 378* 2829 2829 size 164 007350 automatic fixed bin(17,0) level 3 in structure "debug_table" dcl 4694 in procedure "cobol_db_phase" set ref 92* 1716 1723* size 012160 automatic fixed bin(17,0) level 2 in structure "copy_tab" dcl 4825 in procedure "cobol_db_phase" set ref 51* 419* 419 423 437 440 453* 3252 3387 size 645 013162 automatic fixed bin(17,0) level 3 in structure "per_desc" dcl 4829 in procedure "cobol_db_phase" set ref 1861* size 000264 automatic fixed bin(17,0) level 2 in structure "M6" dcl 2273 in procedure "cobol_db_phase" set ref 2145* size 000170 automatic fixed bin(17,0) level 2 in structure "M4" dcl 2259 in procedure "cobol_db_phase" set ref 2117* sline 014430 automatic structure level 1 unaligned dcl 4991 set ref 60 sm_desc 005356 automatic structure level 1 unaligned dcl 4602 sp parameter pointer dcl 4391 ref 4388 4402 sp_no 015412 automatic fixed bin(17,0) dcl 4392 set ref 4400* 4408* 4420 4422* 4424 st 014244 automatic bit(32) packed unaligned dcl 4899 set ref 421* 425* 444* 464* 466 1608* 3932* 4310* 4313 4316* st_no 000312 automatic fixed bin(17,0) dcl 4533 set ref 3244 3244* 3338* 3343 4408 4417 4441* 4453* 4478* state_cd based structure level 1 unaligned dcl 2801 state_dn based structure level 1 unaligned dcl 2474 state_fn based structure level 1 unaligned dcl 2754 statement 005762 automatic structure level 1 unaligned dcl 4657 statement_data_entry based structure level 1 unaligned dcl 4614 stne 0(19) 014240 automatic bit(1) level 2 packed packed unaligned dcl 4869 set ref 1872 2286* 2335 2344 2354 3075 3200 3217 3585 4114* string builtin function dcl 5013 in procedure "cobol_db_phase" set ref 100* string 6 based char level 2 in structure "alphanum_lit" packed packed unaligned dcl 5056 in procedure "cobol_db_phase" set ref 1612 2418* 2699* 2730* 3934 sub 015114 automatic structure level 1 unaligned dcl 3120 in procedure "emit_sort_merge" set ref 3124 sub based structure level 1 unaligned dcl 2581 in procedure "emit_sub" sub based structure level 1 unaligned dcl 2622 in procedure "emit_range" sub_1 2 based structure level 2 in structure "statement_data_entry" unaligned dcl 4614 in procedure "cobol_db_phase" sub_1 2 based structure level 2 in structure "data" unaligned dcl 2538 in procedure "emit_subs" set ref 2557 2557 2561 2561 2566 2566 sub_2 4 based structure level 2 in structure "statement_data_entry" unaligned dcl 4614 in procedure "cobol_db_phase" sub_2 4 based structure level 2 in structure "data" unaligned dcl 2538 in procedure "emit_subs" set ref 2563 2563 2568 2568 sub_3 6 based structure level 2 in structure "data" unaligned dcl 2538 in procedure "emit_subs" set ref 2569 2569 sub_3 6 based structure level 2 in structure "statement_data_entry" unaligned dcl 4614 in procedure "cobol_db_phase" sub_loc 014232 automatic fixed bin(17,0) dcl 4864 set ref 907* 907 1293* 1293 sub_ptr parameter pointer dcl 2578 in procedure "emit_sub" set ref 2575 2585 2589 2595 2597 2603 2604 2612* sub_ptr parameter pointer dcl 3182 in procedure "ER" set ref 3179 3184* sub_ptr 015112 automatic pointer dcl 3118 in procedure "emit_sort_merge" set ref 3124* 3131* 3140* 3147* 3152* 3160* 3170* subcnt 014273 automatic fixed bin(17,0) dcl 4946 set ref 898 903 912 1662* 1666* 1666 1671 1785* 1785 1790 subj_req 0(07) 014240 automatic bit(1) level 2 packed packed unaligned dcl 4869 set ref 1105 1777* 1838* 1842* 1851* subscripted 22(05) based bit(1) level 2 packed packed unaligned dcl 5062 ref 745 883 891 1012 1129 1165 1288 substr builtin function dcl 5013 set ref 466 934 1242 1414 2418* 2685 2690 2694* 2694 2730* 4214 4313 switch_condition 10(08) based bit(1) level 3 packed packed unaligned dcl 5076 ref 1113 switch_name 10(09) based bit(1) level 3 packed packed unaligned dcl 5076 ref 1197 syntax_line based structure level 1 unaligned dcl 4981 syntax_line_ptr 014426 automatic pointer dcl 4989 set ref 60* 116 268* 271 277 284 287 287 292 294 297 299 301 303 305 327 336 339 349* syntax_table based structure array level 1 unaligned dcl 4974 set ref 268 349 syntax_trace 134(16) based bit(1) level 2 packed packed unaligned dcl 2-26 ref 82 t_field 2 based fixed bin(17,0) level 2 dcl 4981 ref 277 294 297 327 t_type 1 based fixed bin(17,0) level 2 dcl 4981 ref 271 tab_max 004322 automatic fixed bin(17,0) dcl 4550 set ref 4061* 4067* 4089* 4095* 4131 tab_ptr 005330 automatic pointer dcl 4586 in procedure "cobol_db_phase" set ref 4063* 4069* 4091* 4097* 4108 4113 4115 4116 4123 4140 4141 4142 tab_ptr parameter pointer dcl 2874 in procedure "open_db" ref 2870 2876 tab_size 004323 automatic fixed bin(17,0) dcl 4550 set ref 4108* 4111 4121 4131 4139 4139* 4140 4141 4142 tbit 014240 automatic bit(1) level 2 packed packed unaligned dcl 4869 set ref 82* 111 261 280 313 320 346 357 terminator 5(03) based bit(1) level 2 packed packed unaligned dcl 5050 ref 1018 tln 014245 automatic fixed bin(17,0) dcl 4900 set ref 464* 1608* 3932* 4310* tm1 012146 automatic fixed bin(24,0) initial dcl 4807 set ref 280* 313* 4807* tm2 012147 automatic fixed bin(24,0) initial dcl 4807 set ref 261* 4807* tm3 012150 automatic fixed bin(24,0) initial dcl 4807 set ref 320* 4807* tm4 012151 automatic fixed bin(24,0) initial dcl 4807 set ref 346* 4807* tm5 012152 automatic fixed bin(24,0) initial dcl 4807 set ref 357* 4807* tn parameter fixed bin(17,0) dcl 4472 in procedure "get_st_proc_num" ref 4467 4476 tn parameter fixed bin(17,0) dcl 4462 in procedure "ED" ref 4459 4464 4464 4464 4464 tn parameter fixed bin(17,0) dcl 4438 in procedure "get_st_num" ref 4435 4451 tok 4 based fixed bin(17,0) array level 2 in structure "cond_desc" dcl 4505 in procedure "emit_db_cond" set ref 4515* tok 4 based fixed bin(17,0) array level 2 in structure "cond_desc" dcl 4816 in procedure "cobol_db_phase" set ref 2071 2077* tok_count 3 based fixed bin(17,0) level 2 in structure "cond_desc" dcl 4816 in procedure "cobol_db_phase" set ref 2067 2069 2076* 2076 2077 tok_count 15 013162 automatic fixed bin(17,0) array level 4 in structure "per_desc" dcl 4829 in procedure "cobol_db_phase" set ref 4488* tok_count 3 based fixed bin(17,0) level 2 in structure "cond_desc" dcl 4505 in procedure "emit_db_cond" ref 4512 4512 tok_count 647 013162 automatic fixed bin(17,0) level 3 in structure "per_desc" dcl 4829 in procedure "cobol_db_phase" set ref 4496* tok_no 10 013162 automatic fixed bin(17,0) array level 4 in structure "per_desc" dcl 4829 in procedure "cobol_db_phase" set ref 1903* 2051 tok_no 12 013162 automatic fixed bin(17,0) array level 4 in structure "per_desc" dcl 4829 in procedure "cobol_db_phase" set ref 1853 1908* tok_no 642 013162 automatic fixed bin(17,0) level 3 in structure "per_desc" dcl 4829 in procedure "cobol_db_phase" set ref 1823* 2055 3242* tok_no 4 013162 automatic fixed bin(17,0) array level 4 in structure "per_desc" dcl 4829 in procedure "cobol_db_phase" set ref 1893* 2043 3406 3457 tok_no 644 013162 automatic fixed bin(17,0) level 3 in structure "per_desc" dcl 4829 in procedure "cobol_db_phase" set ref 1828* 1861 tok_no based fixed bin(17,0) level 2 in structure "ident" dcl 4396 in procedure "db_perf" ref 4402 4411 tok_no 6 013162 automatic fixed bin(17,0) array level 4 in structure "per_desc" dcl 4829 in procedure "cobol_db_phase" set ref 1898* 2047 3414 trace_ptr 014422 automatic pointer dcl 4971 set ref 81* 111* 261* 280* 313* 320* 346* 357* translate builtin function dcl 5013 ref 2728 type 2 000264 automatic fixed bin(17,0) array level 3 in structure "M6" dcl 2273 in procedure "cobol_db_phase" set ref 2146* 2148* 2150* 2152* type 3 based fixed bin(17,0) level 2 in structure "cdtoken" dcl 15-8 in procedure "cobol_db_phase" ref 617 631 type 3 based fixed bin(17,0) level 2 in structure "header" dcl 4999 in procedure "cobol_db_phase" ref 471 471 511 516 524 538 543 552 559 572 579 584 591 591 596 609 641 641 646 653 662 676 683 698 703 708 715 720 727 735 745 750 772 782 787 793 801 808 839 847 847 860 883 891 931 952 957 963 963 963 991 996 1012 1018 1023 1029 1036 1043 1052 1057 1062 1067 1073 1084 1089 1093 1099 1129 1143 1153 1165 1187 1209 1221 1227 1234 1288 1298 1304 1316 1377 1400 1411 2587 3406 3414 3457 4261 4405 4405 4414 4414 type 2 000212 automatic fixed bin(17,0) array level 3 in structure "M5" dcl 2266 in procedure "cobol_db_phase" set ref 2128* 2133* 2138* 2140* 2142* type 005762 automatic fixed bin(17,0) level 2 in structure "statement" dcl 4657 in procedure "cobol_db_phase" set ref 1497* 2285* 2766 3589 3649 3649 3660 type 3 014254 automatic fixed bin(17,0) level 2 in structure "diag_item" dcl 4917 in procedure "cobol_db_phase" set ref 67* type 3 based fixed bin(17,0) level 2 in structure "proc_def" dcl 5059 in procedure "cobol_db_phase" set ref 1486* type 3 based fixed bin(17,0) level 2 in structure "alphanum_lit" dcl 5056 in procedure "cobol_db_phase" ref 1612 3934 type 2 000124 automatic fixed bin(17,0) array level 3 in structure "M2" dcl 2245 in procedure "cobol_db_phase" set ref 2098* 2100* 2102* 2104* type 3 based fixed bin(17,0) level 2 in structure "reserved_word" dcl 5050 in procedure "cobol_db_phase" ref 273 1310 1329 type 2 000146 automatic fixed bin(17,0) array level 3 in structure "M3" dcl 2252 in procedure "cobol_db_phase" set ref 2108* 2110* 2112* 2114* type parameter fixed bin(17,0) dcl 3117 in procedure "emit_sort_merge" ref 3114 3162 type 2 000170 automatic fixed bin(17,0) array level 3 in structure "M4" dcl 2259 in procedure "cobol_db_phase" set ref 2118* 2120* 2122* 2124* type 3 based fixed bin(17,0) level 2 in structure "alphabet_name" dcl 5046 in procedure "cobol_db_phase" ref 1322 type 2 based fixed bin(17,0) array level 3 in structure "def" dcl 2655 in procedure "emit_macro" ref 2673 type 2 000102 automatic fixed bin(17,0) array level 3 in structure "M1" dcl 2238 in procedure "cobol_db_phase" set ref 2088* 2090* 2092* 2094* type parameter fixed bin(17,0) dcl 2283 in procedure "set_st_type" ref 2280 2285 type 3 based fixed bin(17,0) level 2 in structure "mnemonic_name" dcl 5076 in procedure "cobol_db_phase" ref 1113 1197 1341 1348 1355 type 3 014263 automatic fixed bin(17,0) level 2 in structure "lev_diag_item" dcl 4927 in procedure "cobol_db_phase" set ref 76* type 3 based fixed bin(17,0) level 2 in structure "data_name" dcl 5062 in procedure "cobol_db_phase" ref 1393 until 644 013162 automatic structure level 2 unaligned dcl 4829 set ref 3250 3250 3255 3255 4495 usage_index 21(34) based bit(1) level 2 packed packed unaligned dcl 5062 ref 750 782 883 891 1129 1165 1288 var 4 013162 automatic structure array level 3 unaligned dcl 4829 set ref 3403 3454 variable_length 22(04) based bit(1) level 2 packed packed unaligned dcl 5062 ref 819 verb 5 based bit(1) level 2 packed packed unaligned dcl 5050 ref 552 vp 015210 automatic pointer dcl 3441 in procedure "perf_incr" set ref 3454* 3460* 3469* 3472* vp 015176 automatic pointer dcl 3399 in procedure "perf_set" set ref 3403* 3409* 3417* 3425* 3428* working_storage 21(01) based bit(1) level 2 packed packed unaligned dcl 5062 ref 598 NAMES DECLARED BY DECLARE STATEMENT AND NEVER REFERENCED. PROC_NUM automatic fixed bin(17,0) dcl 4584 TOK automatic fixed bin(17,0) dcl 2433 a_ptr automatic pointer dcl 4903 allo1_max defined fixed bin(17,0) dcl 5-171 allo1_ptr defined pointer dcl 5-67 alter_flag defined fixed bin(17,0) dcl 5-135 alter_index defined fixed bin(17,0) dcl 5-153 alter_list_ptr defined pointer dcl 5-39 cd automatic fixed bin(17,0) dcl 4591 cd_cnt defined fixed bin(17,0) dcl 5-197 cdtoken_ptr automatic pointer dcl 15-5 ch30 based char(30) packed unaligned dcl 2669 cobol_$allo1_max external static fixed bin(17,0) dcl 5-170 cobol_$allo1_ptr external static pointer dcl 5-66 cobol_$alter_flag external static fixed bin(17,0) dcl 5-134 cobol_$alter_index external static fixed bin(17,0) dcl 5-152 cobol_$alter_list_ptr external static pointer dcl 5-38 cobol_$cd_cnt external static fixed bin(17,0) dcl 5-196 cobol_$cobol_data_wd_off external static fixed bin(17,0) dcl 5-118 cobol_$compile_count external static fixed bin(17,0) dcl 5-142 cobol_$coms_charcnt external static fixed bin(17,0) dcl 5-188 cobol_$coms_wdoff external static fixed bin(17,0) dcl 5-202 cobol_$con_end_ptr external static pointer dcl 5-10 cobol_$con_wd_off external static fixed bin(17,0) dcl 5-92 cobol_$cons_charcnt external static fixed bin(17,0) dcl 5-192 cobol_$constant_offset external static fixed bin(17,0) dcl 5-156 cobol_$data_init_flag external static fixed bin(17,0) dcl 5-130 cobol_$date_compiled_sw external static fixed bin(17,0) dcl 5-180 cobol_$debug_enable external static fixed bin(17,0) dcl 5-174 cobol_$def_base_ptr external static pointer dcl 5-12 cobol_$def_max external static fixed bin(17,0) dcl 5-96 cobol_$def_wd_off external static fixed bin(17,0) dcl 5-94 cobol_$diag_ptr external static pointer dcl 5-70 cobol_$eln_max external static fixed bin(17,0) dcl 5-172 cobol_$eln_ptr external static pointer dcl 5-68 cobol_$fixup_max external static fixed bin(17,0) dcl 5-164 cobol_$fixup_ptr external static pointer dcl 5-30 cobol_$fs_charcnt external static fixed bin(17,0) dcl 5-184 cobol_$fs_wdoff external static fixed bin(17,0) dcl 5-198 cobol_$include_cnt external static fixed bin(17,0) dcl 5-182 cobol_$include_info_ptr external static pointer dcl 5-86 cobol_$init_stack_off external static fixed bin(17,0) dcl 5-124 cobol_$initval_base_ptr external static pointer dcl 5-32 cobol_$initval_file_ptr external static pointer dcl 5-34 cobol_$initval_flag external static fixed bin(17,0) dcl 5-178 cobol_$link_base_ptr external static pointer dcl 5-14 cobol_$link_max external static fixed bin(17,0) dcl 5-100 cobol_$link_wd_off external static fixed bin(17,0) dcl 5-98 cobol_$list_off external static fixed bin(17,0) dcl 5-154 cobol_$list_ptr external static pointer dcl 5-64 cobol_$ls_charcnt external static fixed bin(17,0) dcl 5-190 cobol_$main_pcs_ptr external static pointer dcl 5-84 cobol_$map_data_max external static fixed bin(17,0) dcl 5-162 cobol_$map_data_ptr external static pointer dcl 5-54 cobol_$max_stack_off external static fixed bin(17,0) dcl 5-122 cobol_$minpral5_ptr external static pointer dcl 5-50 cobol_$misc_base_ptr external static pointer dcl 5-60 cobol_$misc_end_ptr external static pointer dcl 5-62 cobol_$misc_max external static fixed bin(17,0) dcl 5-158 cobol_$next_tag external static fixed bin(17,0) dcl 5-128 cobol_$non_source_offset external static fixed bin(17,0) dcl 5-176 cobol_$ntbuf_ptr external static pointer dcl 5-82 cobol_$obj_seg_name external static char(32) dcl 5-208 cobol_$op_con_ptr external static pointer dcl 5-80 cobol_$para_eop_flag external static fixed bin(17,0) dcl 5-138 cobol_$pd_map_index external static fixed bin(17,0) dcl 5-116 cobol_$pd_map_max external static fixed bin(17,0) dcl 5-160 cobol_$pd_map_ptr external static pointer dcl 5-28 cobol_$pd_map_sw external static fixed bin(17,0) dcl 5-126 cobol_$perform_list_ptr external static pointer dcl 5-36 cobol_$perform_para_index external static fixed bin(17,0) dcl 5-148 cobol_$perform_sect_index external static fixed bin(17,0) dcl 5-150 cobol_$priority_no external static fixed bin(17,0) dcl 5-140 cobol_$ptr_assumption_ind external static fixed bin(17,0) dcl 5-144 cobol_$ptr_status_ptr external static pointer dcl 5-56 cobol_$reg_assumption_ind external static fixed bin(17,0) dcl 5-146 cobol_$reg_status_ptr external static pointer dcl 5-58 cobol_$reloc_def_base_ptr external static pointer dcl 5-20 cobol_$reloc_def_max external static fixed bin(24,0) dcl 5-108 cobol_$reloc_link_base_ptr external static pointer dcl 5-22 cobol_$reloc_link_max external static fixed bin(24,0) dcl 5-110 cobol_$reloc_sym_base_ptr external static pointer dcl 5-24 cobol_$reloc_sym_max external static fixed bin(24,0) dcl 5-112 cobol_$reloc_text_base_ptr external static pointer dcl 5-18 cobol_$reloc_text_max external static fixed bin(24,0) dcl 5-106 cobol_$reloc_work_base_ptr external static pointer dcl 5-26 cobol_$reloc_work_max external static fixed bin(24,0) dcl 5-114 cobol_$reswd_ptr external static pointer dcl 5-78 cobol_$same_sort_merge_proc external static bit(1) dcl 5-214 cobol_$scratch_dir external static char(168) dcl 5-206 cobol_$sect_eop_flag external static fixed bin(17,0) dcl 5-136 cobol_$seg_init_flag external static fixed bin(17,0) dcl 5-132 cobol_$seg_init_list_ptr external static pointer dcl 5-40 cobol_$stack_off external static fixed bin(17,0) dcl 5-120 cobol_$statement_info_ptr external static pointer dcl 5-76 cobol_$sym_base_ptr external static pointer dcl 5-16 cobol_$sym_max external static fixed bin(17,0) dcl 5-104 cobol_$sym_wd_off external static fixed bin(17,0) dcl 5-102 cobol_$tag_table_max external static fixed bin(17,0) dcl 5-166 cobol_$tag_table_ptr external static pointer dcl 5-52 cobol_$temp_token_area_ptr external static pointer dcl 5-42 cobol_$temp_token_max external static fixed bin(17,0) dcl 5-168 cobol_$temp_token_ptr external static pointer dcl 5-44 cobol_$text_base_ptr external static pointer dcl 5-8 cobol_$text_wd_off external static fixed bin(17,0) dcl 5-90 cobol_$token_block1_ptr external static pointer dcl 5-46 cobol_$token_block2_ptr external static pointer dcl 5-48 cobol_$value_cnt external static fixed bin(17,0) dcl 5-194 cobol_$ws_charcnt external static fixed bin(17,0) dcl 5-186 cobol_$ws_wdoff external static fixed bin(17,0) dcl 5-200 cobol_$xref_bypass external static bit(1) dcl 5-212 cobol_$xref_chain_ptr external static pointer dcl 5-74 cobol_$xref_token_ptr external static pointer dcl 5-72 cobol_afp defined pointer dcl 1-11 cobol_analin_fileno defined pointer dcl 1-13 cobol_cmfp defined pointer dcl 1-21 cobol_com_fileno defined pointer dcl 1-23 cobol_curr_in defined pointer dcl 1-53 cobol_curr_out defined pointer dcl 1-55 cobol_data_wd_off defined fixed bin(17,0) dcl 5-119 cobol_dfp defined pointer dcl 1-27 cobol_eltp defined pointer dcl 1-19 cobol_ext_$cobol_afp external static pointer dcl 1-10 cobol_ext_$cobol_analin_fileno external static pointer dcl 1-12 cobol_ext_$cobol_cmfp external static pointer dcl 1-20 cobol_ext_$cobol_com_fileno external static pointer dcl 1-22 cobol_ext_$cobol_curr_in external static pointer dcl 1-52 cobol_ext_$cobol_curr_out external static pointer dcl 1-54 cobol_ext_$cobol_dfp external static pointer dcl 1-26 cobol_ext_$cobol_eltp external static pointer dcl 1-18 cobol_ext_$cobol_fileno1 external static fixed bin(24,0) dcl 1-78 cobol_ext_$cobol_hfp external static pointer dcl 1-28 cobol_ext_$cobol_lpr external static char(5) packed unaligned dcl 1-95 cobol_ext_$cobol_m1fp external static pointer dcl 1-30 cobol_ext_$cobol_m2fp external static pointer dcl 1-32 cobol_ext_$cobol_min1_fileno external static pointer dcl 1-34 cobol_ext_$cobol_min2_fileno_ptr external static pointer dcl 1-36 cobol_ext_$cobol_name_fileno external static pointer dcl 1-38 cobol_ext_$cobol_name_fileno_ptr external static pointer dcl 1-40 cobol_ext_$cobol_ntfp external static pointer dcl 1-42 cobol_ext_$cobol_options external static char(120) packed unaligned dcl 1-97 cobol_ext_$cobol_options_len external static fixed bin(24,0) dcl 1-80 cobol_ext_$cobol_pdofp external static pointer dcl 1-44 cobol_ext_$cobol_pdout_fileno external static fixed bin(24,0) dcl 1-82 cobol_ext_$cobol_pfp external static pointer dcl 1-46 cobol_ext_$cobol_print_fileno external static fixed bin(24,0) dcl 1-84 cobol_ext_$cobol_rm2fp external static pointer dcl 1-48 cobol_ext_$cobol_rmin2_fileno external static fixed bin(24,0) dcl 1-86 cobol_ext_$cobol_rwdd external static pointer dcl 1-72 cobol_ext_$cobol_rwpd external static pointer dcl 1-74 cobol_ext_$cobol_sfp external static pointer dcl 1-56 cobol_ext_$cobol_w1p external static pointer dcl 1-58 cobol_ext_$cobol_w2p external static pointer dcl 1-60 cobol_ext_$cobol_w3p external static pointer dcl 1-62 cobol_ext_$cobol_w5p external static pointer dcl 1-64 cobol_ext_$cobol_w6p external static pointer dcl 1-66 cobol_ext_$cobol_w7p external static pointer dcl 1-68 cobol_ext_$cobol_x1_fileno external static fixed bin(24,0) dcl 1-88 cobol_ext_$cobol_x2_fileno external static fixed bin(24,0) dcl 1-90 cobol_ext_$cobol_x3_fileno external static fixed bin(24,0) dcl 1-92 cobol_ext_$cobol_xlast8 external static bit(1) packed unaligned dcl 1-100 cobol_ext_$report_exists external static bit(1) packed unaligned dcl 1-102 cobol_ext_$report_first_token external static pointer dcl 1-14 cobol_ext_$report_last_token external static pointer dcl 1-16 cobol_fileno1 defined fixed bin(24,0) dcl 1-79 cobol_hfp defined pointer dcl 1-29 cobol_lpr defined char(5) packed unaligned dcl 1-96 cobol_m1fp defined pointer dcl 1-31 cobol_m2fp defined pointer dcl 1-33 cobol_min1_fileno defined pointer dcl 1-35 cobol_min2_fileno_ptr defined pointer dcl 1-37 cobol_name_fileno defined pointer dcl 1-39 cobol_name_fileno_ptr defined pointer dcl 1-41 cobol_ntfp defined pointer dcl 1-43 cobol_options defined char(120) packed unaligned dcl 1-98 cobol_options_len defined fixed bin(24,0) dcl 1-81 cobol_pdofp defined pointer dcl 1-45 cobol_pdout_fileno defined fixed bin(24,0) dcl 1-83 cobol_pfp defined pointer dcl 1-47 cobol_print_fileno defined fixed bin(24,0) dcl 1-85 cobol_read_ft 000000 constant entry external dcl 5023 cobol_rm2fp defined pointer dcl 1-49 cobol_rmin2_fileno defined fixed bin(24,0) dcl 1-87 cobol_rwdd defined pointer dcl 1-73 cobol_rwpd defined pointer dcl 1-75 cobol_sfp defined pointer dcl 1-57 cobol_vdwf_dget 000000 constant entry external dcl 5024 cobol_vdwf_dput 000000 constant entry external dcl 5029 cobol_vdwf_sput 000000 constant entry external dcl 5028 cobol_w1p defined pointer dcl 1-59 cobol_w2p defined pointer dcl 1-61 cobol_w3p defined pointer dcl 1-63 cobol_w5p defined pointer dcl 1-65 cobol_w6p defined pointer dcl 1-67 cobol_w7p defined pointer dcl 1-69 cobol_x1_fileno defined fixed bin(24,0) dcl 1-89 cobol_x2_fileno defined fixed bin(24,0) dcl 1-91 cobol_x3_fileno defined fixed bin(24,0) dcl 1-93 cobol_xlast8 defined bit(1) packed unaligned dcl 1-101 common_recsize automatic fixed bin(17,0) dcl 4941 compile_count defined fixed bin(17,0) dcl 5-143 coms_charcnt defined fixed bin(17,0) dcl 5-189 coms_wdoff defined fixed bin(17,0) dcl 5-203 con_end_ptr defined pointer dcl 5-11 con_wd_off defined fixed bin(17,0) dcl 5-93 cons_charcnt defined fixed bin(17,0) dcl 5-193 constant_offset defined fixed bin(17,0) dcl 5-157 data_init_flag defined fixed bin(17,0) dcl 5-131 date_compiled_sw defined fixed bin(17,0) dcl 5-181 debug_enable defined fixed bin(17,0) dcl 5-175 def_base_ptr defined pointer dcl 5-13 def_max defined fixed bin(17,0) dcl 5-97 def_wd_off defined fixed bin(17,0) dcl 5-95 diag_file based structure level 1 unaligned dcl 4-9 diag_ptr defined pointer dcl 5-71 dimensions automatic fixed bin(17,0) dcl 4946 dumprocname internal static structure level 1 unaligned dcl 5078 eln_max defined fixed bin(17,0) dcl 5-173 eln_ptr defined pointer dcl 5-69 f automatic fixed bin(17,0) dcl 3399 file_desc_1 based structure level 1 unaligned dcl 21-7 file_desc_1_ptr automatic pointer dcl 21-5 file_desc_1_type internal static fixed bin(17,0) initial dcl 21-4 file_number automatic fixed bin(17,0) dcl 4905 file_org automatic fixed bin(17,0) dcl 4801 fixed builtin function dcl 5013 fixup_max defined fixed bin(17,0) dcl 5-165 fixup_ptr defined pointer dcl 5-31 fs_charcnt defined fixed bin(17,0) dcl 5-185 fs_wdoff defined fixed bin(17,0) dcl 5-199 include_cnt defined fixed bin(17,0) dcl 5-183 include_info_ptr defined pointer dcl 5-87 init_stack_off defined fixed bin(17,0) dcl 5-125 initval_base_ptr defined pointer dcl 5-33 initval_file_ptr defined pointer dcl 5-35 initval_flag defined fixed bin(17,0) dcl 5-179 kc automatic fixed bin(17,0) dcl 4814 lev_save automatic fixed bin(24,0) dcl 4862 link_base_ptr defined pointer dcl 5-15 link_max defined fixed bin(17,0) dcl 5-101 link_wd_off defined fixed bin(17,0) dcl 5-99 list_off defined fixed bin(17,0) dcl 5-155 list_ptr defined pointer dcl 5-65 ls_charcnt defined fixed bin(17,0) dcl 5-191 main_pcs_ptr defined pointer dcl 5-85 map_data_max defined fixed bin(17,0) dcl 5-163 map_data_ptr defined pointer dcl 5-55 max_stack_off defined fixed bin(17,0) dcl 5-123 minpral5_ptr defined pointer dcl 5-51 misc_base_ptr defined pointer dcl 5-61 misc_end_ptr defined pointer dcl 5-63 misc_max defined fixed bin(17,0) dcl 5-159 next_tag defined fixed bin(17,0) dcl 5-129 non_source_offset defined fixed bin(17,0) dcl 5-177 ntbuf_ptr defined pointer dcl 5-83 obj_seg_name defined char(32) dcl 5-209 op_con_ptr defined pointer dcl 5-81 p automatic pointer dcl 4970 para_eop_flag defined fixed bin(17,0) dcl 5-139 pd_map_index defined fixed bin(17,0) dcl 5-117 pd_map_max defined fixed bin(17,0) dcl 5-161 pd_map_ptr defined pointer dcl 5-29 pd_map_sw defined fixed bin(17,0) dcl 5-127 perform_list_ptr defined pointer dcl 5-37 perform_para_index defined fixed bin(17,0) dcl 5-149 perform_sect_index defined fixed bin(17,0) dcl 5-151 priority_no defined fixed bin(17,0) dcl 5-141 proc_num automatic fixed bin(17,0) dcl 4547 proc_ptr automatic pointer dcl 4547 ptr_assumption_ind defined fixed bin(17,0) dcl 5-145 ptr_status_ptr defined pointer dcl 5-57 r automatic fixed bin(17,0) dcl 3441 reg_assumption_ind defined fixed bin(17,0) dcl 5-147 reg_status_ptr defined pointer dcl 5-59 reloc_def_base_ptr defined pointer dcl 5-21 reloc_def_max defined fixed bin(24,0) dcl 5-109 reloc_link_base_ptr defined pointer dcl 5-23 reloc_link_max defined fixed bin(24,0) dcl 5-111 reloc_sym_base_ptr defined pointer dcl 5-25 reloc_sym_max defined fixed bin(24,0) dcl 5-113 reloc_text_base_ptr defined pointer dcl 5-19 reloc_text_max defined fixed bin(24,0) dcl 5-107 reloc_work_base_ptr defined pointer dcl 5-27 reloc_work_max defined fixed bin(24,0) dcl 5-115 report_exists defined bit(1) packed unaligned dcl 1-103 report_first_token defined pointer dcl 1-15 report_last_token defined pointer dcl 1-17 reswd_ptr defined pointer dcl 5-79 same_sort_merge_proc defined bit(1) dcl 5-215 save_addr_record automatic pointer dcl 4541 scratch_dir defined char(168) dcl 5-207 sect_eop_flag defined fixed bin(17,0) dcl 5-137 seg_init_flag defined fixed bin(17,0) dcl 5-133 seg_init_list_ptr defined pointer dcl 5-41 seg_num automatic fixed bin(17,0) dcl 4801 seqvarptr automatic pointer dcl 5009 srchbit internal static bit(1) packed unaligned dcl 4939 srchfm2bit internal static bit(1) packed unaligned dcl 4938 stack_off defined fixed bin(17,0) dcl 5-121 statement_entry based structure level 1 unaligned dcl 4610 statement_info_ptr defined pointer dcl 5-77 store_label_1 internal static structure level 1 unaligned dcl 5081 store_label_2 internal static structure level 1 unaligned dcl 5084 sub_ptr automatic pointer dcl 4903 subs automatic fixed bin(17,0) array dcl 4863 sym_base_ptr defined pointer dcl 5-17 sym_max defined fixed bin(17,0) dcl 5-105 sym_wd_off defined fixed bin(17,0) dcl 5-103 table based structure level 1 unaligned dcl 4629 tag_table_max defined fixed bin(17,0) dcl 5-167 tag_table_ptr defined pointer dcl 5-53 temp_token_area_ptr defined pointer dcl 5-43 temp_token_max defined fixed bin(17,0) dcl 5-169 temp_token_ptr defined pointer dcl 5-45 tempkey automatic fixed bin(17,0) dcl 4943 text_base_ptr defined pointer dcl 5-9 text_wd_off defined fixed bin(17,0) dcl 5-91 token_block1_ptr defined pointer dcl 5-47 token_block2_ptr defined pointer dcl 5-49 unspec builtin function dcl 5013 v automatic fixed bin(17,0) dcl 3399 in procedure "perf_set" v automatic fixed bin(17,0) dcl 3441 in procedure "perf_incr" value_cnt defined fixed bin(17,0) dcl 5-195 varrecaddr automatic char(5) packed unaligned dcl 5010 vfile_key automatic fixed bin(17,0) dcl 4813 w_ptr automatic pointer dcl 4903 ws_charcnt defined fixed bin(17,0) dcl 5-187 ws_wdoff defined fixed bin(17,0) dcl 5-201 x based bit(8) packed unaligned dcl 4955 xref_bypass defined bit(1) dcl 5-213 xref_chain_ptr defined pointer dcl 5-75 xref_token_ptr defined pointer dcl 5-73 NAMES DECLARED BY EXPLICIT CONTEXT. DM 000535 constant label array(2) dcl 2557 ref 2555 DM1 007766 constant label dcl 2572 ref 2559 2564 2570 ED 014154 constant entry internal dcl 4459 ref 3244 4422 4427 4430 4515 EDT 000754 constant label array(4) dcl 4002 ref 4000 EDT1 013246 constant label dcl 4052 ref 4012 4030 4040 4050 EM 000540 constant label array(3) dcl 2675 ref 2673 EM1 010405 constant label dcl 2734 ref 2677 2700 2732 EMIT 006624 constant entry internal dcl 392 ref 3569 ENO 000553 constant label array(8) dcl 3601 ref 3599 ENO1 012340 constant label dcl 3642 ref 3605 3610 3615 3620 3625 3630 3635 3641 EPN 000527 constant label array(0:5) dcl 2330 ref 2328 EPN1 007446 constant label dcl 2392 ref 2352 2390 EPN2 007367 constant label dcl 2346 ref 2338 ER 011425 constant entry internal dcl 3179 ref 3147 3152 3170 NL 005154 constant label dcl 1453 ref 1544 1561 1585 PERF 000547 constant label array(4) dcl 3234 ref 3232 PRF 011555 constant label dcl 3273 ref 3234 3247 PRF2 011560 constant label dcl 3276 ref 3271 3311 3331 PUT 010163 constant entry internal dcl 2633 ref 1977 2364 2366 2372 2374 2387 2406 2525 2527 2528 2592 2593 2594 2595 2599 2600 2601 2602 2603 2604 2609 2610 2611 2628 3227 3240 3248 3264 3275 3306 3324 3360 3361 3362 3364 3366 3380 3381 3383 3385 3408 3410 3416 3418 3422 3424 3459 3461 3462 3466 3468 3589 3601 3603 3604 3607 3609 3612 3614 3617 3619 3622 3624 3627 3629 3632 3634 3637 3639 4358 4360 4361 4523 4524 4525 4526 PUT_REC 006652 constant entry internal dcl 412 ref 406 2642 2739 SC 013504 constant label dcl 4205 ref 4191 4195 4199 4203 SCAN 006777 constant entry internal dcl 457 ref 114 336 3941 SCH 000764 constant label array(4) dcl 4186 ref 4184 SM_emit 011274 constant entry internal dcl 3096 ref 3133 3142 3162 3165 SS 013341 constant label dcl 4102 ref 4065 4087 4093 4100 SST 000760 constant label array(4) dcl 4061 set ref 4059 TP 013640 constant label dcl 4288 ref 4273 4277 4282 4286 TTP 000543 constant label array(4) dcl 2709 ref 2707 TTP1 010365 constant label dcl 2725 ref 2711 2715 2719 2723 TYP 000770 constant label array(18) dcl 4270 ref 4264 VERB 000563 constant label array(0:120) dcl 3662 ref 3660 a46 000521 constant label array(3) dcl 1673 set ref 1671 a65 000524 constant label array(3) dcl 1792 set ref 1790 acc_dev 004763 constant label dcl 1341 action 000004 constant label array(0:124) dcl 331 ref 292 316 1475 2010 2014 adrisadr 004533 constant label dcl 1187 alelnuitm 004263 constant label dcl 1057 alphnm 004743 constant label dcl 1322 alphoral 004346 constant label dcl 1079 altst 004706 constant label dcl 1298 amarg 005027 constant label dcl 1371 andait 003746 constant label dcl 852 arop 004064 constant label dcl 957 aroprp 004353 constant label dcl 1084 asfil 003521 constant label dcl 735 cd_comp 013601 constant entry internal dcl 4249 ref 3053 cdname 004123 constant label dcl 991 check 000201 constant label array(2:209) dcl 511 ref 294 ckintbit 004634 constant label dcl 1256 cklit 004601 constant label dcl 1227 cklit1 004641 constant label dcl 1264 cklit2 004655 constant label dcl 1280 cktp25 004574 constant label dcl 1221 cobol_db_phase 002225 constant entry external dcl 40 comp_error 003114 constant label dcl 364 ref 323 dana 004130 constant label dcl 996 db_emit 012341 constant entry internal dcl 3657 ref 1870 3583 db_perf 014036 constant entry internal dcl 4388 ref 3428 3472 define_macros 007150 constant entry internal dcl 2084 ref 1620 descnm 003370 constant label dcl 653 descnmra 003440 constant label dcl 698 deswon 004140 constant label dcl 1003 diag 007041 constant entry internal dcl 480 ref 331 1716 1719 3990 4010 4028 4038 4048 disp_dev 004773 constant label dcl 1348 dn_comp 013505 constant entry internal dcl 4208 ref 2968 dninfl 003656 constant label dcl 808 edalelnue 004330 constant label dcl 1073 edalit 004253 constant label dcl 1052 edaltst 004716 constant label dcl 1304 edick 004560 constant label dcl 1214 elaanne 004464 constant label dcl 1153 eldis 004221 constant label dcl 1036 elemred 004105 constant label dcl 970 elneds 003704 constant label dcl 825 elnudnint 004315 constant label dcl 1067 elnuindi 003715 constant label dcl 831 elnuint 004305 constant label dcl 1062 elnuit 003726 constant label dcl 839 emit 012157 constant entry internal dcl 3559 ref 387 1936 1972 3064 3086 3092 3173 3193 3199 3212 3219 3662 3667 3673 3685 3693 3697 3701 3705 3709 3730 3734 3742 3750 3754 3758 3762 3766 3770 3786 3790 3798 3806 3810 3826 3830 3834 3838 3842 3846 3850 3857 3865 3869 3873 3877 3881 4305 4384 emit_alter 007514 constant entry internal dcl 2430 ref 3681 emit_cd 010473 constant entry internal dcl 2792 ref 2832 emit_copy 006724 constant entry internal dcl 428 ref 3269 3308 3326 emit_data 007576 constant entry internal dcl 2468 ref 2846 4464 emit_db_code 010523 constant entry internal dcl 2820 ref 1872 3075 3200 3645 3649 4367 emit_db_cond 014232 constant entry internal dcl 4500 ref 3255 3390 emit_debug_contents 010623 constant entry internal dcl 2860 ref 2814 3350 emit_debug_name 010611 constant entry internal dcl 2851 ref 2764 2813 3346 emit_file 010417 constant entry internal dcl 2744 ref 2839 emit_go_to 011236 constant entry internal dcl 3059 ref 3721 3905 emit_go_to_dep 011246 constant entry internal dcl 3069 ref 3909 emit_if 011444 constant entry internal dcl 3191 ref 3854 emit_macro 010176 constant entry internal dcl 2646 ref 2349 2386 2392 2413 2455 2458 2513 2771 2788 2857 2867 3062 3078 3105 3107 4336 4339 emit_move 011450 constant entry internal dcl 3197 ref 3738 emit_nl 006615 constant entry internal dcl 383 ref 1865 1968 2330 2340 2357 2388 2464 3081 3677 3689 3713 3717 3778 3782 3794 3822 3885 3889 3901 3913 3917 3921 3943 3947 3951 3955 3959 3963 3967 3971 3975 4380 emit_not_option 012205 constant entry internal dcl 3575 ref 1931 1942 1947 1952 1958 1962 emit_option 012252 constant entry internal dcl 3594 ref 3592 3647 emit_perform 010461 constant entry internal dcl 2782 ref 2404 2460 2530 2778 2816 emit_perform_state 011460 constant entry internal dcl 3205 ref 3746 emit_proc_name 007343 constant entry internal dcl 2290 ref 3893 3897 emit_range 010133 constant entry internal dcl 2616 ref 2526 2612 3131 3140 3160 3184 3237 3250 3384 3409 3411 3417 3419 3423 3425 3460 3463 3467 3469 4359 emit_rec_name 013704 constant entry internal dcl 4322 ref 2768 emit_sort_merge 011317 constant entry internal dcl 3114 ref 3725 3861 emit_string 011264 constant entry internal dcl 3084 ref 3802 emit_sub 007767 constant entry internal dcl 2575 ref 2557 2561 2563 2566 2568 2569 emit_subs 007706 constant entry internal dcl 2533 ref 2518 emit_unstring 011270 constant entry internal dcl 3090 ref 3814 emit_wr_rew 013757 constant entry internal dcl 4343 ref 3774 3818 endcob 003470 constant label dcl 715 enddec 004232 constant label dcl 1043 endjob 006162 constant label dcl 1880 ent_tab 013342 constant entry internal dcl 4105 ref 4064 4070 4092 4098 enter_db_table 013075 constant entry internal dcl 3982 ref 1708 1713 enter_st_table 013430 constant entry internal dcl 4146 ref 1436 1467 1755 1764 1814 1995 2030 2059 eos 006137 constant label dcl 1865 examlitid 004074 constant label dcl 963 extend_db 010653 constant entry internal dcl 2885 ref 2956 2984 3012 3040 fail 002630 constant label dcl 261 ref 273 277 515 520 528 542 548 556 563 569 576 583 588 604 613 627 635 645 651 661 666 673 680 691 702 707 712 719 724 727 735 749 754 759 769 776 789 797 805 812 818 823 830 835 843 851 856 864 871 877 887 895 902 910 916 923 956 961 967 974 982 990 995 1000 1007 1017 1025 1033 1040 1050 1056 1061 1066 1071 1078 1083 1091 1098 1104 1105 1118 1125 1133 1139 1147 1159 1169 1177 1185 1191 1202 1204 1212 1219 1225 1231 1245 1253 1260 1268 1276 1284 1296 1302 1308 1314 1320 1322 1329 1336 1346 1353 1360 1366 1375 1382 1391 1398 1405 1417 1424 figconall 003360 constant label dcl 646 file 003737 constant label dcl 847 filenm 003161 constant label dcl 524 flusisds 003674 constant label dcl 819 fn_comp 013570 constant entry internal dcl 4241 ref 3024 get_next_db 010720 constant entry internal dcl 2909 ref 2952 2980 3008 3036 get_perf 002457 constant entry external dcl 159 get_rec 002433 constant entry external dcl 120 get_st_num 014122 constant entry internal dcl 4435 ref 3242 4407 4416 get_st_proc_num 014171 constant entry internal dcl 4467 ref 3340 get_tok 002546 constant entry external dcl 196 ieqlvl 004016 constant label dcl 898 impsw 004117 constant label dcl 986 impvrb 003502 constant label dcl 720 in_line 003765 constant label dcl 873 incdnm 003325 constant label dcl 617 indeqind 004032 constant label dcl 912 indev 004515 constant label dcl 1173 indexed 004022 constant label dcl 903 initialize 002614 constant entry external dcl 245 is_lang 005013 constant label dcl 1362 is_rout 004550 constant label dcl 1204 is_sub_opt 004416 constant label dcl 1105 is_user_word 005050 constant label dcl 1393 keylbl 003552 constant label dcl 755 lev_diag 007062 constant entry internal dcl 491 ref 287 306 lident 003132 constant label dcl 511 linage 003760 constant label dcl 866 lit 003351 constant label dcl 641 lptopstk 004432 constant label dcl 1121 mcobol 004646 constant label dcl 1272 mnenm 003572 constant label dcl 772 msfilnm 003413 constant label dcl 676 nestedif 004450 constant label dcl 1135 new_inst 002645 constant label dcl 268 set ref 118 329 341 537 1482 1927 next_inst 002644 constant label dcl 265 ref 362 nlit 005055 constant label dcl 1400 nonumdn 004454 constant label dcl 1143 nonumlit 003272 constant label dcl 584 not_opt 003252 constant label dcl 565 notseqac 003406 constant label dcl 669 nsfilnm 003320 constant label dcl 609 nsrecnm 003753 constant label dcl 860 numlit 003260 constant label dcl 572 nznumlit 004611 constant label dcl 1234 on_off 004750 constant label dcl 1329 onechnosn 003557 constant label dcl 765 open_db 010635 constant entry internal dcl 2870 ref 2948 2976 3004 3032 outcdnm 003341 constant label dcl 631 outdev 004524 constant label dcl 1181 paranm 003206 constant label dcl 543 perf_common 011665 constant entry internal dcl 3334 ref 3259 3273 3297 perf_incr 012103 constant entry internal dcl 3438 ref 3302 3320 perf_set 012020 constant entry internal dcl 3396 ref 3285 3316 perf_until 011755 constant entry internal dcl 3375 ref 3293 pigz 004043 constant label dcl 917 pigz_by 005062 constant label dcl 1407 pigz_sub 007106 constant entry internal dcl 925 ref 917 1384 pn_comp 013536 constant entry internal dcl 4220 ref 2996 pnz 004402 constant label dcl 1099 posint 003633 constant label dcl 793 prdef 003206 constant label dcl 543 prnm 003265 constant label dcl 579 prnum 003227 constant label dcl 559 proc_def_ptr 002573 constant entry external dcl 233 prt_con 005003 constant label dcl 1355 recnm 003514 constant label dcl 727 relop 004372 constant label dcl 1093 repnm 003401 constant label dcl 662 res_test 003166 constant label dcl 530 reset_TOK_TAB 012147 constant entry internal dcl 3551 ref 1964 3276 resword 004731 constant label dcl 1310 ret 003025 constant label dcl 331 ref 289 1439 1459 1470 1487 1491 1495 1499 1503 1507 1513 1517 1521 1526 1530 1567 1590 1594 1599 1621 1625 1630 1634 1638 1642 1648 1652 1656 1660 1664 1668 1676 1681 1686 1691 1695 1699 1704 1709 1714 1726 1730 1734 1738 1743 1747 1756 1765 1769 1773 1778 1783 1787 1794 1798 1802 1807 1815 1819 1824 1830 1836 1840 1845 1848 1852 1855 1859 1863 1878 1886 1891 1896 1901 1906 1910 1914 1932 1938 1943 1948 1953 1959 1963 1971 1975 1980 1985 1990 2002 2006 2018 2022 2027 2032 2037 2041 2045 2049 2053 2057 2061 2063 2071 2078 2082 rident 003201 constant label dcl 538 rpid 003370 constant label dcl 653 saanm 003450 constant label dcl 703 said 003455 constant label dcl 708 scan_to_end 013641 constant entry internal dcl 4302 ref 1519 search_cd 011164 constant entry internal dcl 3030 ref 4201 search_data 010771 constant entry internal dcl 2946 ref 4193 search_debug_table 013457 constant entry internal dcl 4174 ref 3995 4164 search_file 011112 constant entry internal dcl 3002 ref 4197 search_proc 011042 constant entry internal dcl 2974 ref 4189 search_st_table 013251 constant entry internal dcl 4057 ref 4168 sechdr 003147 constant label dcl 516 secsw 004112 constant label dcl 978 set_debug_line 007472 constant entry internal dcl 2409 ref 2439 3073 3110 3225 3262 3267 3300 3371 3567 4363 set_per_cond_ptr 014216 constant entry internal dcl 4484 ref 1835 1890 set_pigz 005044 constant label dcl 1384 set_st_type 007334 constant entry internal dcl 2280 ref 1432 1463 1477 1489 1493 1501 1505 1509 1515 1523 1528 1565 1588 1596 1627 1632 1658 1703 1736 1745 1982 set_subs 014263 constant entry internal dcl 4520 ref 2517 set_type 013612 constant entry internal dcl 4257 ref 2705 3986 4163 set_until_ptr 014225 constant entry internal dcl 4492 ref 1474 1578 1829 set_xint 005034 constant label dcl 1377 srchid 003526 constant label dcl 745 srtfil 003651 constant label dcl 801 sscondnm 004422 constant label dcl 1113 ssnm 004540 constant label dcl 1197 st_init 006603 constant entry internal dcl 373 ref 107 1877 1937 1969 1974 3065 3087 3093 3174 3194 3202 3213 3220 3652 3939 4306 start 002233 constant label dcl 43 sterm 004174 constant label dcl 1018 success 002662 constant label dcl 280 ref 511 516 524 538 543 552 559 565 572 579 584 591 598 609 623 631 641 646 653 662 669 676 689 698 703 708 715 720 732 741 745 750 755 765 772 782 787 793 801 808 814 819 825 831 839 847 852 860 866 873 883 891 898 908 912 921 952 957 963 970 978 986 991 996 1003 1012 1018 1023 1029 1036 1048 1052 1057 1062 1067 1073 1079 1084 1089 1093 1099 1109 1113 1121 1129 1135 1143 1153 1165 1173 1181 1187 1197 1209 1214 1221 1227 1242 1256 1264 1272 1280 1294 1298 1304 1310 1316 1327 1339 1341 1348 1355 1369 1371 1377 1388 1393 1400 1414 sudana 004003 constant label dcl 891 suxdnm 004502 constant label dcl 1165 test 000000 constant label array(0:3) dcl 273 ref 271 type9 004736 constant label dcl 1316 ucon 002676 constant label dcl 284 ref 352 udneli 004662 constant label dcl 1288 undana 003770 constant label dcl 883 unelnudn 004147 constant label dcl 1012 unsint 004047 constant label dcl 952 unxdnm 004435 constant label dcl 1129 usagid 004211 constant label dcl 1029 useid 003277 constant label dcl 591 usisds 003663 constant label dcl 814 usornm 003537 constant label dcl 750 verb 003216 constant label dcl 552 xint 003577 constant label dcl 782 xnm 003420 constant label dcl 683 THERE WERE NO NAMES DECLARED BY CONTEXT OR IMPLICATION. STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 15626 16134 15355 15636 Length 17036 15355 306 665 250 240 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME cobol_db_phase 7242 external procedure is an external procedure. st_init internal procedure shares stack frame of external procedure cobol_db_phase. emit_nl internal procedure shares stack frame of external procedure cobol_db_phase. EMIT internal procedure shares stack frame of external procedure cobol_db_phase. PUT_REC internal procedure shares stack frame of external procedure cobol_db_phase. emit_copy internal procedure shares stack frame of external procedure cobol_db_phase. SCAN internal procedure shares stack frame of external procedure cobol_db_phase. diag internal procedure shares stack frame of external procedure cobol_db_phase. lev_diag internal procedure shares stack frame of external procedure cobol_db_phase. pigz_sub internal procedure shares stack frame of external procedure cobol_db_phase. define_macros internal procedure shares stack frame of external procedure cobol_db_phase. set_st_type internal procedure shares stack frame of external procedure cobol_db_phase. emit_proc_name internal procedure shares stack frame of external procedure cobol_db_phase. set_debug_line internal procedure shares stack frame of external procedure cobol_db_phase. emit_alter internal procedure shares stack frame of external procedure cobol_db_phase. emit_data internal procedure shares stack frame of external procedure cobol_db_phase. emit_subs internal procedure shares stack frame of external procedure cobol_db_phase. emit_sub internal procedure shares stack frame of external procedure cobol_db_phase. emit_range internal procedure shares stack frame of external procedure cobol_db_phase. PUT internal procedure shares stack frame of external procedure cobol_db_phase. emit_macro internal procedure shares stack frame of external procedure cobol_db_phase. emit_file internal procedure shares stack frame of external procedure cobol_db_phase. emit_perform internal procedure shares stack frame of external procedure cobol_db_phase. emit_cd internal procedure shares stack frame of external procedure cobol_db_phase. emit_db_code internal procedure shares stack frame of external procedure cobol_db_phase. emit_debug_name internal procedure shares stack frame of external procedure cobol_db_phase. emit_debug_contents internal procedure shares stack frame of external procedure cobol_db_phase. open_db internal procedure shares stack frame of external procedure cobol_db_phase. extend_db internal procedure shares stack frame of external procedure cobol_db_phase. get_next_db internal procedure shares stack frame of external procedure cobol_db_phase. search_data internal procedure shares stack frame of external procedure cobol_db_phase. search_proc internal procedure shares stack frame of external procedure cobol_db_phase. search_file internal procedure shares stack frame of external procedure cobol_db_phase. search_cd internal procedure shares stack frame of external procedure cobol_db_phase. emit_go_to internal procedure shares stack frame of external procedure cobol_db_phase. emit_go_to_dep internal procedure shares stack frame of external procedure cobol_db_phase. emit_string internal procedure shares stack frame of external procedure cobol_db_phase. emit_unstring internal procedure shares stack frame of external procedure cobol_db_phase. SM_emit internal procedure shares stack frame of external procedure cobol_db_phase. emit_sort_merge internal procedure shares stack frame of external procedure cobol_db_phase. ER internal procedure shares stack frame of external procedure cobol_db_phase. emit_if internal procedure shares stack frame of external procedure cobol_db_phase. emit_move internal procedure shares stack frame of external procedure cobol_db_phase. emit_perform_state internal procedure shares stack frame of external procedure cobol_db_phase. perf_common internal procedure shares stack frame of external procedure cobol_db_phase. perf_until internal procedure shares stack frame of external procedure cobol_db_phase. perf_set internal procedure shares stack frame of external procedure cobol_db_phase. perf_incr internal procedure shares stack frame of external procedure cobol_db_phase. reset_TOK_TAB internal procedure shares stack frame of external procedure cobol_db_phase. emit internal procedure shares stack frame of external procedure cobol_db_phase. emit_not_option internal procedure shares stack frame of external procedure cobol_db_phase. emit_option internal procedure shares stack frame of external procedure cobol_db_phase. db_emit internal procedure shares stack frame of external procedure cobol_db_phase. enter_db_table internal procedure shares stack frame of external procedure cobol_db_phase. search_st_table internal procedure shares stack frame of external procedure cobol_db_phase. ent_tab internal procedure shares stack frame of external procedure cobol_db_phase. enter_st_table internal procedure shares stack frame of external procedure cobol_db_phase. search_debug_table internal procedure shares stack frame of external procedure cobol_db_phase. dn_comp internal procedure shares stack frame of external procedure cobol_db_phase. pn_comp internal procedure shares stack frame of external procedure cobol_db_phase. fn_comp internal procedure shares stack frame of external procedure cobol_db_phase. cd_comp internal procedure shares stack frame of external procedure cobol_db_phase. set_type internal procedure shares stack frame of external procedure cobol_db_phase. scan_to_end internal procedure shares stack frame of external procedure cobol_db_phase. emit_rec_name internal procedure shares stack frame of external procedure cobol_db_phase. emit_wr_rew internal procedure shares stack frame of external procedure cobol_db_phase. db_perf internal procedure shares stack frame of external procedure cobol_db_phase. get_st_num internal procedure shares stack frame of external procedure cobol_db_phase. ED internal procedure shares stack frame of external procedure cobol_db_phase. get_st_proc_num internal procedure shares stack frame of external procedure cobol_db_phase. set_per_cond_ptr internal procedure shares stack frame of external procedure cobol_db_phase. set_until_ptr internal procedure shares stack frame of external procedure cobol_db_phase. emit_db_cond internal procedure shares stack frame of external procedure cobol_db_phase. set_subs internal procedure shares stack frame of external procedure cobol_db_phase. STORAGE FOR INTERNAL STATIC VARIABLES. LOC IDENTIFIER BLOCK NAME 000010 perf_line cobol_db_phase 000032 proc_count cobol_db_phase 000034 proc_def_table cobol_db_phase 000234 proc_def_size cobol_db_phase 000236 perf_line_ptr cobol_db_phase 000240 gotodep cobol_db_phase 000241 preospn_bit cobol_db_phase 000242 nestifcnt cobol_db_phase 000243 impswitch cobol_db_phase 000244 decswitch cobol_db_phase 000245 secswitch cobol_db_phase 000246 i1 cobol_db_phase STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME cobol_db_phase 000100 cd_pres cobol_db_phase 000102 M1 cobol_db_phase 000124 M2 cobol_db_phase 000146 M3 cobol_db_phase 000170 M4 cobol_db_phase 000212 M5 cobol_db_phase 000264 M6 cobol_db_phase 000306 opt_word_num cobol_db_phase 000307 ST_NO cobol_db_phase 000310 per_cond_ptr cobol_db_phase 000312 st_no cobol_db_phase 000314 FR cobol_db_phase 000316 e_res cobol_db_phase 000320 TOK_TAB cobol_db_phase 004322 tab_max cobol_db_phase 004323 tab_size cobol_db_phase 004324 ST cobol_db_phase 005324 cd_size cobol_db_phase 005325 end_word cobol_db_phase 005326 nest_lev cobol_db_phase 005327 pn_count cobol_db_phase 005330 tab_ptr cobol_db_phase 005332 section_ptr cobol_db_phase 005334 MODE cobol_db_phase 005335 res cobol_db_phase 005336 data_size cobol_db_phase 005337 proc_size cobol_db_phase 005340 file_size cobol_db_phase 005341 i cobol_db_phase 005342 last_line cobol_db_phase 005343 last_col cobol_db_phase 005344 DB_TYPE cobol_db_phase 005346 PP cobol_db_phase 005350 EN cobol_db_phase 005351 IN_LINE cobol_db_phase 005352 dim cobol_db_phase 005353 BEG_ID cobol_db_phase 005354 TOK_ptr cobol_db_phase 005356 sm_desc cobol_db_phase 005360 item_tab cobol_db_phase 005762 statement cobol_db_phase 007350 debug_table cobol_db_phase 011524 alt_tab cobol_db_phase 012124 TAB_PTR cobol_db_phase 012126 NEXT_PTR cobol_db_phase 012130 ENT_PTR cobol_db_phase 012132 QQ cobol_db_phase 012134 alt_ct cobol_db_phase 012135 ENT_NUM cobol_db_phase 012136 key cobol_db_phase 012137 min_index cobol_db_phase 012140 max_index cobol_db_phase 012141 mod_num cobol_db_phase 012142 act_num cobol_db_phase 012143 last_seg_num cobol_db_phase 012144 pigz_res cobol_db_phase 012145 DIAG_NUM cobol_db_phase 012146 tm1 cobol_db_phase 012147 tm2 cobol_db_phase 012150 tm3 cobol_db_phase 012151 tm4 cobol_db_phase 012152 tm5 cobol_db_phase 012154 RP cobol_db_phase 012156 RP1 cobol_db_phase 012160 copy_tab cobol_db_phase 013162 per_desc cobol_db_phase 014232 sub_loc cobol_db_phase 014234 LN1 cobol_db_phase 014236 nines_ptr cobol_db_phase 014240 indicators cobol_db_phase 014241 cssub cobol_db_phase 014242 db_res cobol_db_phase 014243 lang_num cobol_db_phase 014244 st cobol_db_phase 014245 tln cobol_db_phase 014246 ft_ptr cobol_db_phase 014250 dg_ptr cobol_db_phase 014252 lev_dg_ptr cobol_db_phase 014254 diag_item cobol_db_phase 014263 lev_diag_item cobol_db_phase 014272 litcnt cobol_db_phase 014273 subcnt cobol_db_phase 014274 interp cobol_db_phase 014306 intrp_stack cobol_db_phase 014422 trace_ptr cobol_db_phase 014424 dumfix cobol_db_phase 014426 syntax_line_ptr cobol_db_phase 014430 sline cobol_db_phase 014436 occptr cobol_db_phase 014464 i EMIT 014466 AR EMIT 014506 p emit_copy 014510 i emit_copy 014564 en emit_proc_name 014566 ep emit_proc_name 014604 i emit_alter 014605 num emit_alter 014606 pn1 emit_alter 014610 pn2 emit_alter 014612 proc_ptr emit_alter 014624 dn_ptr emit_data 014626 TOKNO emit_data 014630 dntok emit_data 014646 PP emit_sub 014656 i emit_range 014674 rptr emit_macro 014676 LN emit_macro 014700 ch emit_macro 014701 NAME emit_macro 014711 i emit_macro 014712 j emit_macro 014722 fn_ptr emit_file 014740 cd_ptr emit_cd 014742 cd_name_ptr emit_cd 014752 i emit_db_code 015006 new_ptr extend_db 015112 sub_ptr emit_sort_merge 015114 sub emit_sort_merge 015146 i emit_perform_state 015160 pn1 perf_common 015161 pn2 perf_common 015176 vp perf_set 015200 rp perf_set 015210 vp perf_incr 015212 rp perf_incr 015230 TOK_SIZE emit 015352 TYPE set_type 015370 ch5 emit_rec_name 015400 i emit_wr_rew 015401 fn_save emit_wr_rew 015412 sp_no db_perf 015413 rp_no db_perf 015414 TN db_perf 015416 p db_perf 015426 data_tok_num get_st_num 015427 i get_st_num 015446 i get_st_proc_num THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. r_e_as alloc_char_temp cat_realloc_chars call_ext_out_desc call_ext_out return_mac shorten_stack ext_entry THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. cobol$alloc cobol_c_list cobol_db cobol_db_put cobol_ddsyntax$get_file_key cobol_imp_word$lang_name cobol_read_rand_ cobol_swf_get cobol_swf_put cobol_syntax_trace_$initialize_phase cobol_syntax_trace_$trace ioa_$rsnnl THE FOLLOWING EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. cobol_ext_$cobol_com_ptr cobol_ext_$cobol_rmin2fp cobol_ext_$cobol_x3fp LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC 4803 002204 4807 002206 4869 002220 40 002224 43 002233 45 002235 46 002236 47 002237 48 002240 50 002241 51 002243 52 002244 53 002246 54 002247 55 002250 56 002251 57 002253 59 002254 60 002255 61 002257 63 002261 65 002271 66 002273 67 002275 68 002277 69 002301 72 002305 73 002307 74 002311 75 002313 76 002315 77 002317 79 002321 80 002323 81 002324 82 002326 83 002336 85 002337 86 002342 87 002345 88 002350 90 002353 91 002354 92 002355 93 002356 95 002357 96 002361 97 002363 98 002365 100 002366 102 002371 103 002373 104 002375 105 002377 107 002400 108 002401 109 002403 111 002404 114 002422 116 002423 118 002426 120 002427 128 002441 131 002450 134 002454 159 002455 172 002465 174 002473 175 002475 178 002476 180 002477 183 002502 187 002533 189 002537 191 002540 193 002543 196 002544 203 002554 206 002563 210 002567 233 002570 240 002601 241 002603 243 002612 245 002613 250 002622 253 002625 255 002627 261 002630 265 002644 268 002645 271 002651 273 002653 277 002657 280 002662 284 002676 287 002704 289 002722 292 002723 294 002726 297 002730 299 002732 301 002734 303 002741 305 002751 306 002753 309 002755 310 002756 313 002757 316 002773 318 002775 320 002777 323 003012 326 003016 327 003021 329 003024 331 003025 336 003031 339 003036 341 003041 343 003042 346 003046 349 003061 350 003065 352 003070 354 003071 357 003075 360 003110 362 003113 364 003114 366 003116 367 003121 369 003123 371 003131 511 003132 515 003146 516 003147 520 003160 524 003161 528 003165 530 003166 534 003174 536 003176 537 003200 538 003201 542 003205 543 003206 548 003215 552 003216 556 003226 559 003227 563 003251 565 003252 569 003257 572 003260 576 003264 579 003265 583 003271 584 003272 588 003276 591 003277 596 003305 598 003307 604 003317 609 003320 613 003324 617 003325 622 003334 623 003336 626 003337 627 003340 631 003341 635 003350 641 003351 645 003357 646 003360 651 003367 653 003370 661 003400 662 003401 666 003405 669 003406 673 003412 676 003413 680 003417 683 003420 687 003424 688 003431 689 003436 691 003437 698 003440 702 003447 703 003450 707 003454 708 003455 712 003467 715 003470 719 003501 720 003502 724 003513 727 003514 732 003520 735 003521 741 003525 745 003526 749 003536 750 003537 754 003551 755 003552 759 003556 765 003557 769 003571 772 003572 776 003576 782 003577 787 003620 789 003632 793 003633 797 003650 801 003651 805 003655 808 003656 812 003662 814 003663 818 003673 819 003674 823 003703 825 003704 830 003714 831 003715 835 003725 839 003726 843 003736 847 003737 851 003745 852 003746 856 003752 860 003753 864 003757 866 003760 871 003764 873 003765 877 003767 883 003770 887 004002 891 004003 895 004015 898 004016 902 004021 903 004022 907 004027 908 004030 910 004031 912 004032 916 004042 917 004043 921 004044 923 004046 952 004047 956 004063 957 004064 961 004073 963 004074 967 004104 970 004105 974 004111 978 004112 982 004116 986 004117 990 004122 991 004123 995 004127 996 004130 1000 004137 1003 004140 1007 004146 1012 004147 1017 004173 1018 004174 1023 004205 1025 004210 1029 004211 1033 004220 1036 004221 1040 004231 1043 004232 1047 004246 1048 004251 1050 004252 1052 004253 1056 004262 1057 004263 1061 004304 1062 004305 1066 004314 1067 004315 1071 004327 1073 004330 1078 004345 1079 004346 1083 004352 1084 004353 1089 004364 1091 004371 1093 004372 1098 004401 1099 004402 1104 004415 1105 004416 1109 004421 1113 004422 1118 004431 1121 004432 1125 004434 1129 004435 1133 004447 1135 004450 1139 004453 1143 004454 1147 004463 1153 004464 1159 004501 1165 004502 1169 004514 1173 004515 1177 004523 1181 004524 1185 004532 1187 004533 1191 004537 1197 004540 1202 004547 1204 004550 1209 004553 1212 004557 1214 004560 1219 004573 1221 004574 1225 004600 1227 004601 1231 004610 1234 004611 1238 004615 1240 004617 1242 004620 1245 004626 1248 004631 1250 004632 1253 004633 1256 004634 1260 004640 1264 004641 1268 004645 1272 004646 1276 004654 1280 004655 1284 004661 1288 004662 1293 004703 1294 004704 1296 004705 1298 004706 1302 004715 1304 004716 1308 004730 1310 004731 1314 004735 1316 004736 1320 004742 1322 004743 1327 004747 1329 004750 1334 004754 1336 004756 1339 004762 1341 004763 1346 004772 1348 004773 1353 005002 1355 005003 1360 005012 1362 005013 1366 005024 1369 005026 1371 005027 1375 005033 1377 005034 1382 005043 1384 005044 1388 005045 1391 005047 1393 005050 1398 005054 1400 005055 1405 005061 1407 005062 1411 005064 1414 005074 1417 005102 1420 005105 1422 005106 1424 005107 1432 005110 1434 005114 1436 005117 1438 005120 1439 005121 1441 005122 1444 005131 1446 005136 1448 005143 1450 005150 1453 005154 1455 005155 1456 005162 1457 005163 1459 005165 1463 005166 1465 005172 1467 005175 1469 005176 1470 005177 1472 005200 1474 005202 1475 005203 1477 005204 1480 005213 1481 005216 1482 005220 1484 005221 1486 005224 1487 005227 1489 005230 1491 005234 1493 005235 1495 005241 1497 005242 1499 005244 1501 005245 1503 005251 1505 005252 1507 005256 1509 005257 1511 005263 1512 005266 1513 005267 1515 005270 1517 005274 1519 005275 1521 005276 1523 005277 1525 005303 1526 005305 1528 005306 1530 005312 1532 005313 1535 005322 1537 005327 1539 005334 1541 005341 1544 005345 1547 005346 1550 005350 1552 005357 1554 005364 1556 005371 1558 005376 1561 005402 1565 005403 1567 005407 1569 005410 1572 005414 1573 005416 1574 005420 1575 005421 1577 005423 1578 005425 1579 005426 1580 005427 1582 005434 1585 005440 1588 005441 1590 005445 1592 005446 1594 005451 1596 005452 1598 005456 1599 005461 1601 005462 1603 005464 1604 005465 1606 005470 1608 005473 1610 005513 1612 005516 1614 005530 1616 005531 1618 005532 1620 005534 1621 005535 1623 005536 1625 005537 1627 005540 1629 005544 1630 005546 1632 005547 1634 005553 1636 005554 1638 005557 1640 005560 1642 005562 1644 005563 1646 005565 1647 005566 1648 005567 1650 005570 1652 005572 1654 005573 1656 005574 1658 005575 1660 005601 1662 005602 1664 005603 1666 005604 1668 005605 1670 005611 1671 005613 1673 005615 1675 005617 1676 005621 1678 005622 1680 005624 1681 005626 1683 005627 1685 005631 1686 005633 1688 005634 1690 005636 1691 005637 1693 005640 1695 005643 1697 005644 1699 005647 1701 005650 1703 005653 1704 005657 1706 005660 1708 005662 1709 005663 1711 005664 1713 005666 1714 005667 1716 005670 1719 005677 1722 005707 1723 005713 1724 005715 1726 005717 1728 005720 1730 005722 1732 005723 1734 005726 1736 005727 1738 005732 1740 005733 1743 005741 1745 005742 1747 005746 1749 005747 1751 005751 1752 005753 1755 005761 1756 005762 1758 005763 1760 005765 1761 005767 1764 005775 1765 005776 1767 005777 1769 006002 1771 006003 1773 006005 1775 006006 1777 006007 1778 006011 1780 006012 1782 006014 1783 006016 1785 006017 1787 006020 1789 006024 1790 006026 1792 006030 1794 006032 1796 006033 1798 006035 1800 006036 1802 006040 1803 006041 1805 006043 1806 006044 1807 006045 1809 006046 1811 006047 1812 006050 1814 006052 1815 006053 1817 006054 1819 006056 1821 006057 1823 006061 1824 006063 1826 006064 1828 006066 1829 006071 1830 006072 1832 006073 1834 006075 1835 006077 1836 006100 1838 006101 1840 006103 1842 006104 1844 006106 1845 006110 1846 006111 1848 006113 1849 006114 1851 006115 1852 006117 1853 006120 1855 006126 1857 006127 1859 006131 1861 006132 1863 006136 1865 006137 1870 006150 1872 006151 1877 006160 1878 006161 1880 006162 1884 006163 1886 006165 1888 006166 1890 006167 1891 006170 1893 006171 1895 006176 1896 006200 1898 006201 1900 006206 1901 006210 1903 006211 1905 006216 1906 006220 1908 006221 1910 006227 1912 006230 1914 006232 1916 006233 1919 006237 1922 006242 1924 006250 1926 006251 1927 006253 1929 006254 1931 006257 1932 006263 1934 006264 1936 006271 1937 006272 1938 006273 1940 006274 1942 006277 1943 006303 1945 006304 1947 006307 1948 006313 1950 006314 1952 006317 1953 006323 1955 006324 1957 006326 1958 006331 1959 006335 1960 006336 1962 006341 1963 006345 1964 006346 1968 006353 1969 006354 1971 006355 1972 006356 1974 006357 1975 006360 1977 006361 1980 006376 1982 006377 1984 006403 1985 006406 1987 006407 1989 006412 1990 006413 1992 006414 1995 006422 1997 006423 1999 006426 2000 006427 2002 006434 2004 006435 2006 006437 2008 006440 2010 006442 2012 006443 2014 006445 2016 006446 2018 006447 2020 006450 2022 006455 2024 006456 2027 006466 2028 006467 2030 006471 2032 006472 2034 006473 2036 006475 2037 006500 2039 006501 2041 006505 2043 006506 2045 006515 2047 006516 2049 006525 2051 006526 2053 006535 2055 006536 2057 006542 2059 006543 2061 006544 2063 006545 2067 006547 2069 006556 2071 006565 2074 006571 2076 006573 2077 006575 2078 006600 2080 006601 2082 006602 373 006603 376 006604 377 006606 378 006610 381 006614 383 006615 386 006616 387 006620 388 006621 390 006623 392 006624 398 006625 401 006635 402 006640 403 006643 405 006645 406 006646 408 006647 410 006651 412 006652 417 006653 419 006656 421 006657 423 006676 424 006703 425 006704 426 006723 428 006724 437 006726 440 006732 442 006741 444 006744 446 006763 448 006766 449 006767 451 006770 453 006772 455 006776 457 006777 462 007000 464 007001 466 007016 469 007022 471 007026 474 007035 476 007037 478 007040 480 007041 485 007043 486 007045 487 007050 488 007052 489 007061 491 007062 496 007064 497 007067 498 007071 499 007073 501 007075 503 007104 505 007105 925 007106 928 007107 929 007110 931 007112 934 007126 937 007135 939 007140 940 007142 943 007143 945 007144 947 007145 949 007147 2084 007150 2087 007151 2088 007153 2089 007155 2090 007157 2091 007161 2092 007163 2093 007165 2094 007167 2095 007170 2097 007172 2098 007174 2099 007176 2100 007200 2101 007202 2102 007204 2103 007206 2104 007210 2105 007211 2107 007213 2108 007215 2109 007217 2110 007221 2111 007222 2112 007224 2113 007225 2114 007227 2115 007230 2117 007232 2118 007234 2119 007236 2120 007240 2121 007241 2122 007243 2123 007245 2124 007247 2125 007250 2127 007252 2128 007254 2129 007256 2131 007260 2133 007265 2134 007271 2136 007275 2138 007277 2139 007301 2140 007303 2141 007304 2142 007306 2143 007310 2145 007312 2146 007314 2147 007316 2148 007320 2149 007322 2150 007324 2151 007326 2152 007330 2153 007331 2155 007333 2280 007334 2285 007336 2286 007340 2288 007342 2290 007343 2326 007344 2328 007346 2330 007351 2335 007352 2338 007356 2340 007357 2344 007360 2346 007367 2349 007371 2352 007375 2354 007376 2357 007404 2358 007405 2362 007406 2364 007411 2366 007413 2369 007415 2372 007420 2374 007422 2377 007424 2382 007426 2384 007434 2386 007436 2387 007442 2388 007444 2390 007445 2392 007446 2397 007452 2400 007460 2401 007462 2404 007465 2406 007467 2407 007471 2409 007472 2413 007473 2416 007477 2418 007503 2421 007507 2425 007511 2427 007513 2430 007514 2439 007515 2440 007516 2443 007527 2444 007535 2446 007541 2450 007550 2451 007552 2454 007555 2455 007556 2457 007562 2458 007564 2460 007570 2462 007572 2464 007574 2466 007575 2468 007576 2504 007600 2508 007615 2510 007624 2512 007625 2513 007630 2515 007634 2517 007641 2518 007642 2521 007651 2522 007653 2523 007657 2525 007664 2526 007666 2527 007672 2528 007674 2530 007676 2531 007705 2533 007706 2552 007710 2555 007716 2557 007717 2559 007723 2561 007724 2563 007730 2564 007737 2566 007740 2568 007747 2569 007756 2570 007765 2572 007766 2575 007767 2585 007771 2587 007776 2589 010001 2592 010006 2593 010010 2594 010017 2595 010021 2597 010033 2599 010041 2600 010043 2601 010052 2602 010054 2603 010063 2604 010075 2607 010107 2609 010110 2610 010112 2611 010121 2612 010123 2614 010132 2616 010133 2626 010135 2628 010151 2630 010160 2631 010162 2633 010163 2638 010165 2639 010171 2641 010173 2642 010174 2644 010175 2646 010176 2671 010200 2673 010211 2675 010220 2677 010222 2679 010223 2681 010225 2683 010257 2684 010261 2685 010264 2687 010271 2689 010277 2690 010301 2692 010306 2694 010307 2697 010317 2698 010321 2699 010323 2700 010326 2702 010327 2705 010332 2707 010333 2709 010335 2711 010342 2713 010343 2715 010350 2717 010351 2719 010356 2721 010357 2723 010364 2725 010365 2728 010367 2730 010400 2732 010404 2734 010405 2736 010410 2738 010412 2739 010413 2741 010414 2742 010416 2744 010417 2762 010421 2764 010426 2766 010437 2768 010442 2769 010444 2771 010445 2778 010451 2780 010460 2782 010461 2786 010463 2788 010466 2790 010472 2792 010473 2809 010475 2812 010502 2813 010507 2814 010511 2816 010513 2818 010522 2820 010523 2829 010524 2832 010535 2834 010542 2836 010544 2839 010555 2841 010562 2843 010564 2846 010575 2848 010606 2849 010610 2851 010611 2855 010613 2857 010616 2858 010622 2860 010623 2865 010625 2867 010630 2868 010634 2870 010635 2876 010637 2877 010642 2878 010643 2879 010645 2880 010646 2881 010650 2883 010652 2885 010653 2891 010655 2893 010656 2896 010663 2898 010677 2900 010704 2901 010706 2902 010710 2903 010711 2905 010713 2906 010715 2907 010717 2909 010720 2911 010721 2913 010722 2915 010726 2916 010730 2919 010731 2921 010733 2922 010735 2925 010736 2927 010742 2929 010744 2931 010750 2932 010752 2934 010753 2935 010755 2937 010756 2939 010762 2940 010764 2942 010765 2944 010770 2946 010771 2948 010772 2952 010776 2954 010777 2956 011002 2959 011006 2961 011016 2964 011017 2966 011030 2968 011033 2969 011034 2971 011040 2972 011041 2974 011042 2976 011043 2978 011047 2980 011050 2982 011051 2984 011054 2987 011060 2989 011067 2992 011070 2994 011100 2996 011103 2997 011104 2999 011110 3000 011111 3002 011112 3004 011113 3006 011117 3008 011120 3010 011121 3012 011124 3015 011130 3017 011140 3020 011141 3022 011152 3024 011155 3025 011156 3027 011162 3028 011163 3030 011164 3032 011165 3034 011171 3036 011172 3038 011173 3040 011176 3043 011202 3046 011212 3049 011213 3051 011224 3053 011227 3054 011230 3056 011234 3057 011235 3059 011236 3062 011237 3064 011243 3065 011244 3067 011245 3069 011246 3073 011247 3075 011250 3078 011254 3081 011262 3082 011263 3084 011264 3086 011265 3087 011266 3088 011267 3090 011270 3092 011271 3093 011272 3094 011273 3096 011274 3102 011276 3103 011301 3105 011305 3107 011311 3110 011315 3112 011316 3114 011317 3124 011321 3127 011323 3129 011325 3130 011327 3131 011332 3133 011334 3136 011336 3138 011340 3139 011342 3140 011345 3142 011347 3145 011351 3146 011353 3147 011356 3148 011360 3150 011361 3151 011363 3152 011366 3154 011370 3156 011371 3158 011373 3159 011375 3160 011400 3162 011402 3165 011410 3168 011412 3169 011414 3170 011417 3171 011421 3173 011422 3174 011423 3177 011424 3179 011425 3184 011427 3186 011435 3187 011441 3189 011443 3191 011444 3193 011445 3194 011446 3195 011447 3197 011450 3199 011451 3200 011452 3202 011456 3203 011457 3205 011460 3210 011461 3212 011463 3213 011464 3214 011465 3217 011466 3219 011471 3220 011472 3221 011473 3225 011474 3227 011475 3230 011502 3232 011504 3234 011506 3237 011507 3240 011513 3242 011515 3244 011517 3247 011523 3248 011524 3250 011526 3252 011532 3253 011535 3255 011537 3257 011543 3259 011545 3262 011546 3264 011547 3267 011551 3269 011552 3271 011554 3273 011555 3275 011556 3276 011560 3279 011561 3280 011563 3282 011564 3285 011573 3289 011575 3291 011577 3293 011607 3295 011611 3297 011613 3300 011614 3302 011615 3306 011617 3308 011621 3311 011631 3314 011634 3316 011641 3320 011645 3324 011647 3326 011651 3329 011661 3331 011664 3334 011665 3338 011666 3340 011667 3343 011675 3346 011677 3350 011707 3357 011711 3358 011713 3360 011715 3361 011717 3362 011727 3364 011731 3366 011743 3371 011753 3373 011754 3375 011755 3380 011757 3381 011761 3383 011763 3384 011765 3385 011774 3387 011776 3388 012005 3390 012007 3392 012015 3394 012017 3396 012020 3403 012022 3404 012026 3406 012030 3408 012037 3409 012041 3410 012043 3411 012045 3412 012047 3414 012050 3416 012057 3417 012061 3418 012063 3419 012065 3420 012067 3422 012070 3423 012072 3424 012074 3425 012076 3428 012100 3436 012102 3438 012103 3454 012105 3455 012111 3457 012113 3459 012121 3460 012123 3461 012125 3462 012127 3463 012131 3464 012133 3466 012134 3467 012136 3468 012140 3469 012142 3472 012144 3473 012146 3551 012147 3554 012150 3555 012154 3557 012156 3559 012157 3563 012160 3564 012162 3567 012164 3569 012175 3570 012176 3571 012202 3573 012204 3575 012205 3583 012207 3585 012210 3589 012214 3592 012221 3645 012230 3647 012231 3649 012240 3652 012246 3654 012247 3655 012251 3594 012252 3599 012254 3601 012256 3603 012260 3604 012262 3605 012264 3607 012265 3609 012267 3610 012271 3612 012272 3614 012274 3615 012276 3617 012277 3619 012301 3620 012303 3622 012304 3624 012306 3625 012310 3627 012311 3629 012313 3630 012315 3632 012316 3634 012320 3635 012322 3637 012323 3639 012333 3640 012335 3641 012337 3642 012340 3657 012341 3660 012342 3662 012344 3664 012345 3665 012347 3667 012350 3669 012351 3671 012356 3672 012360 3673 012361 3675 012362 3676 012364 3677 012365 3679 012366 3680 012370 3681 012371 3683 012372 3684 012374 3685 012375 3687 012376 3688 012400 3689 012401 3691 012402 3692 012404 3693 012405 3695 012406 3696 012410 3697 012411 3699 012412 3700 012414 3701 012415 3703 012416 3704 012420 3705 012421 3707 012422 3708 012424 3709 012425 3711 012426 3712 012430 3713 012431 3715 012432 3716 012434 3717 012435 3719 012436 3720 012440 3721 012441 3723 012442 3724 012444 3725 012445 3728 012451 3729 012453 3730 012454 3732 012455 3733 012457 3734 012460 3736 012461 3737 012463 3738 012464 3740 012465 3741 012467 3742 012470 3744 012471 3745 012473 3746 012474 3748 012475 3749 012477 3750 012500 3752 012501 3753 012503 3754 012504 3756 012505 3757 012507 3758 012510 3760 012511 3761 012513 3762 012514 3764 012515 3765 012517 3766 012520 3768 012521 3769 012523 3770 012524 3772 012525 3773 012527 3774 012530 3776 012531 3777 012533 3778 012534 3780 012535 3781 012537 3782 012540 3784 012541 3785 012543 3786 012544 3788 012545 3789 012547 3790 012550 3792 012551 3793 012553 3794 012554 3796 012555 3797 012557 3798 012560 3800 012561 3801 012563 3802 012564 3804 012565 3805 012567 3806 012570 3808 012571 3809 012573 3810 012574 3812 012575 3813 012577 3814 012600 3816 012601 3817 012603 3818 012604 3820 012605 3821 012607 3822 012610 3824 012611 3825 012613 3826 012614 3828 012615 3829 012617 3830 012620 3832 012621 3833 012623 3834 012624 3836 012625 3837 012627 3838 012630 3840 012631 3841 012633 3842 012634 3844 012635 3845 012637 3846 012640 3848 012641 3849 012643 3850 012644 3852 012645 3853 012647 3854 012650 3856 012651 3857 012652 3859 012653 3860 012655 3861 012656 3863 012661 3864 012663 3865 012664 3867 012665 3868 012667 3869 012670 3871 012671 3872 012673 3873 012674 3875 012675 3876 012677 3877 012700 3879 012701 3880 012703 3881 012704 3883 012705 3884 012707 3885 012710 3887 012711 3888 012713 3889 012714 3891 012715 3892 012717 3893 012720 3895 012721 3896 012723 3897 012724 3899 012725 3900 012727 3901 012730 3903 012731 3904 012733 3905 012734 3907 012735 3908 012737 3909 012740 3911 012741 3912 012743 3913 012744 3915 012745 3916 012747 3917 012750 3919 012751 3920 012753 3921 012754 3924 012755 3927 012764 3929 012766 3932 012775 3934 013012 3937 013024 3939 013025 3940 013026 3941 013027 3942 013030 3943 013031 3945 013032 3946 013034 3947 013035 3949 013036 3950 013040 3951 013041 3953 013042 3954 013044 3955 013045 3957 013046 3958 013050 3959 013051 3961 013052 3962 013054 3963 013055 3965 013056 3966 013060 3967 013061 3969 013062 3970 013064 3971 013065 3973 013066 3974 013070 3975 013071 3977 013072 3978 013074 3982 013075 3985 013076 3986 013100 3988 013101 3990 013107 3991 013113 3994 013114 3995 013115 3997 013116 4000 013125 4002 013127 4005 013131 4006 013136 4007 013141 4008 013143 4009 013145 4010 013146 4012 013152 4014 013153 4017 013155 4018 013160 4019 013163 4020 013165 4021 013167 4022 013171 4024 013175 4027 013204 4028 013205 4030 013211 4032 013212 4035 013214 4036 013217 4037 013222 4038 013223 4040 013227 4042 013230 4045 013232 4046 013235 4047 013240 4048 013241 4050 013245 4052 013246 4055 013250 4057 013251 4059 013252 4061 013254 4063 013256 4064 013260 4065 013261 4067 013262 4069 013264 4070 013266 4072 013267 4074 013272 4076 013302 4078 013303 4082 013313 4083 013317 4084 013320 4085 013322 4087 013324 4089 013325 4091 013327 4092 013331 4093 013332 4095 013333 4097 013335 4098 013337 4100 013340 4102 013341 4105 013342 4108 013343 4109 013345 4111 013347 4113 013351 4114 013354 4115 013356 4116 013361 4118 013363 4121 013364 4123 013373 4125 013400 4126 013402 4129 013403 4131 013405 4133 013410 4134 013411 4136 013413 4139 013414 4140 013417 4141 013420 4142 013425 4144 013427 4146 013430 4150 013431 4151 013433 4153 013434 4155 013440 4156 013441 4159 013442 4160 013444 4161 013445 4163 013446 4164 013447 4166 013450 4168 013453 4170 013454 4172 013456 4174 013457 4178 013460 4179 013461 4181 013463 4184 013466 4186 013467 4189 013474 4191 013475 4193 013476 4195 013477 4197 013500 4199 013501 4201 013502 4203 013503 4205 013504 4208 013505 4212 013506 4214 013507 4218 013535 4220 013536 4222 013537 4224 013540 4226 013544 4229 013547 4231 013555 4233 013556 4236 013561 4239 013567 4241 013570 4243 013571 4245 013572 4247 013600 4249 013601 4251 013602 4253 013603 4255 013611 4257 013612 4261 013613 4262 013616 4264 013620 4267 013623 4270 013624 4273 013626 4275 013627 4277 013631 4279 013632 4282 013634 4284 013635 4286 013637 4288 013640 4302 013641 4305 013642 4306 013643 4310 013644 4313 013661 4316 013665 4319 013702 4320 013703 4322 013704 4330 013706 4332 013720 4334 013730 4336 013745 4337 013751 4339 013752 4341 013756 4343 013757 4356 013760 4358 013763 4359 013765 4360 013771 4361 013773 4363 013775 4364 013776 4365 014000 4367 014001 4369 014002 4370 014004 4372 014005 4374 014015 4376 014024 4378 014026 4380 014032 4382 014033 4384 014034 4386 014035 4388 014036 4400 014040 4402 014042 4403 014045 4405 014050 4407 014055 4408 014057 4411 014061 4412 014065 4414 014070 4416 014075 4417 014077 4420 014101 4422 014103 4424 014105 4427 014112 4429 014114 4430 014115 4433 014121 4435 014122 4441 014124 4443 014125 4446 014135 4448 014140 4451 014143 4453 014146 4454 014150 4456 014151 4457 014153 4459 014154 4464 014156 4465 014170 4467 014171 4474 014173 4476 014203 4478 014210 4479 014212 4481 014213 4482 014215 4484 014216 4487 014217 4488 014223 4490 014224 4492 014225 4495 014226 4496 014230 4498 014231 4500 014232 4512 014234 4515 014247 4517 014260 4518 014262 4520 014263 4523 014264 4524 014266 4525 014270 4526 014272 4528 014274 ----------------------------------------------------------- Historical Background This edition of the Multics software materials and documentation is provided and donated to Massachusetts Institute of Technology by Group BULL including BULL HN Information Systems Inc. as a contribution to computer science knowledge. This donation is made also to give evidence of the common contributions of Massachusetts Institute of Technology, Bell Laboratories, General Electric, Honeywell Information Systems Inc., Honeywell BULL Inc., Groupe BULL and BULL HN Information Systems Inc. to the development of this operating system. Multics development was initiated by Massachusetts Institute of Technology Project MAC (1963-1970), renamed the MIT Laboratory for Computer Science and Artificial Intelligence in the mid 1970s, under the leadership of Professor Fernando Jose Corbato. Users consider that Multics provided the best software architecture for managing computer hardware properly and for executing programs. Many subsequent operating systems incorporated Multics principles. Multics was distributed in 1975 to 2000 by Group Bull in Europe , and in the U.S. by Bull HN Information Systems Inc., as successor in interest by change in name only to Honeywell Bull Inc. and Honeywell Information Systems Inc. . ----------------------------------------------------------- Permission to use, copy, modify, and distribute these programs and their documentation for any purpose and without fee is hereby granted,provided that the below copyright notice and historical background appear in all copies and that both the copyright notice and historical background and this permission notice appear in supporting documentation, and that the names of MIT, HIS, BULL or BULL HN not be used in advertising or publicity pertaining to distribution of the programs without specific prior written permission. Copyright 1972 by Massachusetts Institute of Technology and Honeywell Information Systems Inc. Copyright 2006 by BULL HN Information Systems Inc. Copyright 2006 by Bull SAS All Rights Reserved