1 
  2 /* BEGIN INCLUDE FILE ...   cobol_pd_decls.incl.pl1 */
  3 /*        <<< SYSTEM RECORDS USED BY PD SYNTAX    >>>       */
  4 /*        <<< MODIFIED ON 12-24-75 by fch         >>>       */
  5 /*        <<< MODIFIED ON 1-15_76 by fch          >>>       */
  6 /*        <<< MODIFIED ON 1-21-76 by fch          >>>       */
  7 
  8                     declare   1         header,
  9                               2                   size      fixed bin(15),
 10                               2                   line      fixed bin(15),
 11                               2                   column    fixed bin(7),
 12                               2                   type      fixed bin(7),
 13                               2                   body      char(2000);
 14 
 15                     declare   1         alphabet_name       based(addr_record),
 16 %include cobol_TYPE40;
 17 
 18 
 19 /* BEGIN INCLUDE FILE ...   cobol_type1.incl.pl1 */
 20 /*     <<<   TYPE 1 RESERVED WORD TOKEN   >>>     */
 21 /*     <<<   LAST MODIFIED ON 07-18-74   >>>     */
 22 
 23 /*        ***STRUCTURE SIZE INFORMATION***        */
 24 /*     THE SIZE OF THIS STRUCTURE IN BYTES, (EXCLUDING VARIABLE
 25        LENGTH ENTITIES), FOR EACH HARDWARE IMPLEMENTATION IS:
 26 
 27           HARDWARE  |         SIZE (BYTES)
 28           ---------------------------------
 29           645/6180  |         28
 30           P7        |         15
 31           ---------------------------------
 32 */
 33 
 34 /*
 35 A reserved word token is created in the minpral files for each occurrence
 36 of a reserved word in the source program.  The value of the key field
 37 indicates the specific reserved word which a type 1 token represents.
 38 */
 39 
 40 /*   THE RESERVED WORD TOKEN STRUCTURE   */
 41 
 42 dcl       1 reserved_word based (addr_record),
 43 %include cobol_TYPE1;
 44 
 45 /*     <<<   END OF TYPE 1 RESERVED WORD TOKEN   >>>     */
 46 /* END INCLUDE FILE ...   cobol_type1.incl.pl1 */
 47 
 48 
 49 /* BEGIN INCLUDE FILE ...   cobol_type2.incl.pl1 */
 50 
 51 /*     <<<   TYPE 2 NUMERIC LITERAL TOKEN    >>>     */
 52 /*     <<<   MODIFIED ON 11-29-74 by orn   >>>     */
 53 /*     <<<   MODIFIED ON 12-18-74 by fch   >>>    */
 54 
 55 /*        ***STRUCTURE SIZE INFORMATION***        */
 56 /*     THE SIZE OF THIS STRUCTURE IN BYTES, (EXCLUDING VARIABLE
 57        LENGTH ENTITIES), FOR EACH HARDWARE IMPLEMENTATION IS:
 58 
 59           HARDWARE  |         SIZE (BYTES)
 60           ---------------------------------
 61           6180      |         36
 62           P7        |         19
 63           ---------------------------------
 64 */
 65 
 66 
 67 /*
 68 A type 2 numeric literal token is entered into the minpral file by the
 69 lexical analysis phase for each numeric literal encountered in the source
 70 program.
 71 */
 72 
 73 /*   THE NUMERIC LITERAL TOKEN STRUCTURE   */
 74 
 75 dcl       1 numeric_lit based (addr_record),
 76 %include cobol_TYPE2;
 77 
 78 /*     <<<   END OF TYPE 2 NUMERIC LITERAL TOKEN    >>>     */
 79 
 80 /* END INCLUDE FILE ...   cobol_type2.incl.pl1 */
 81 
 82 
 83 /* BEGIN INCLUDE FILE ...   cobol_type3.incl.pl1 */
 84 /*     <<<   TYPE 3 ALPHANUMERIC LITERAL TOKEN    >>>     */
 85 /*     <<<   LAST MODIFIED ON 11-29-74 by orn   >>>     */
 86 
 87 /*        ***STRUCTURE SIZE INFORMATION***        */
 88 /*     THE SIZE OF THIS STRUCTURE IN BYTES, (EXCLUDING VARIABLE
 89        LENGTH ENTITIES), FOR EACH HARDWARE IMPLEMENTATION IS:
 90 
 91           HARDWARE  |         SIZE (BYTES)
 92           ---------------------------------
 93           6180      |         24
 94           P7        |         11
 95           ---------------------------------
 96 */
 97 
 98 
 99 /*
100 A type 3 alphanumeric literal token is entered into the minpral file by the
101 lexical analysis phase for each alphanumeric literal encountered in the
102 source program.
103 */
104 
105 /*   THE ALPHANUMERIC LITERAL TOKEN STRUCTURE   */
106 
107 dcl       1 alphanum_lit based (addr_record),
108 %include cobol_TYPE3;
109 
110 /*     <<<   END OF TYPE 3 ALPHANUMERIC LITERAL TOKEN    >>>     */
111 /* END INCLUDE FILE ...   cobol_type3.incl.pl1 */
112 
113           dcl 1 message based (addr_record),
114                                                                       /* 2 header */
115                     02 size fixed bin (15),
116                     02 line fixed bin(15),
117                     02 column fixed bin (7),
118                     02 type fixed bin (7),
119                     02 run fixed bin (7),         /*  phase no issuing diagnostic   for pd it is  */
120                                                                       /* 2 body */
121                     02 number fixed bin (15),
122                     02 info bit (15),   /*  bit1 means parameter to be inserted  */
123                     02 rep_bit bit (15),          /*  bit2 maans token has been replaced */
124                     02 infoa bit (6),
125                     02 length fixed bin (15),
126                     02 body char (message.length);
127 
128 
129           dcl 01 source based (addr_record),
130                                                                       /* 2 header */
131                     02 size fixed bin (15),
132                     02 line fixed bin (15),
133                     02 column fixed bin (7),
134                     02 type fixed bin (7),
135                                                                       /* 2 body */
136                     02 info bit (8),
137                     02 length fixed bin (15),
138                     02 image char (source.length);
139 
140 /* BEGIN INCLUDE FILE ...   cobol_type7.incl.pl1 */
141 /*     <<<   TYPE 7 PROCEDURE DEFINITION TOKEN    >>>     */
142 /*     <<<   LAST MODIFIED ON 08-24-74   >>>     */
143 
144 /*        ***STRUCTURE SIZE INFORMATION***        */
145 /*     THE SIZE OF THIS STRUCTURE IN BYTES, (EXCLUDING VARIABLE
146        LENGTH ENTITIES), FOR EACH HARDWARE IMPLEMENTATION IS:
147 
148           HARDWARE  |         SIZE (BYTES)
149           ---------------------------------
150           6180      |         52
151           P7        |         28
152           ---------------------------------
153 */
154 
155 /*
156 A type 7 procedure definition token is entered into the name table and into
157 the procedure division minpral file by the lexical analysis phase for each
158 procedure definition found in the source program.
159 */
160 
161 /*   THE PROCEDURE DEFINITION TOKEN STRUCTURE   */
162 
163 dcl       1 proc_def based (addr_record),
164 %include cobol_TYPE7;
165 
166 /*     <<<   END OF TYPE 7 PROCEDURE DEFINITION TOKEN    >>>     */
167 /* END INCLUDE FILE ...   cobol_type7.incl.pl1 */
168 
169 /* BEGIN INCLUDE FILE ...   cobol_type9.incl.pl1 */
170 /*     <<<    FOR TYPE 9 DATA NAME TOKEN   >>>     */
171 /*     <<<   LAST MODIFIED ON 7-11-75 by tlf   >>>     */
172 
173 /*        ***STRUCTURE SIZE INFORMATION***        */
174 /*     THE SIZE OF THIS STRUCTURE IN BYTES, (EXCLUDING VARIABLE
175        LENGTH ENTITIES), FOR EACH HARDWARE IMPLEMENTATION IS:
176 
177           HARDWARE  |         SIZE (BYTES)
178           ---------------------------------
179           645/6180  |         112
180           P7        |         68
181           ---------------------------------
182 */
183 
184 /*
185 A type 9 data name token is entered into the name table by the data
186 division syntax phase for each data name described in the data division.
187 The replacement phase subsequently replaces type 8 user word references
188 to data names in the procedure division minpral file with the corresponding
189 type 9 tokens from the name table.
190 */
191 
192 /*   THE DATA NAME TOKEN STRUCTURE   */
193 
194 dcl       1 data_name based (addr_record),
195 %include cobol_TYPE9;
196 
197 /*     <<<   END OF TYPE 9 DATA NAME TOKEN    >>>     */
198 /* END INCLUDE FILE ...   cobol_type9.incl.pl1 */
199 
200 
201 /* BEGIN INCLUDE FILE ...   cobol_occurs.incl.pl1 */
202 /*        >udd>L2COBOL>include>  cobol_occurs.incl.pl1      */
203 dcl 1 occurs based (occptr),
204     2 keyed fixed bin (7),
205     2 key_number fixed bin(15),
206     2 dimensions fixed bin (7),
207     2 level (3),
208     3 indexedno fixed bin (15),
209     3 min fixed bin (15),
210     3 max fixed bin (15),
211     3 struclength fixed bin (15),
212    3 cswdx fixed bin(15),
213     3 cswd fixed bin (31);
214 
215 /* END INCLUDE FILE ...   cobol_occurs.incl.pl1 */
216 
217 
218 /* BEGIN INCLUDE FILE ...   cobol_type10.incl.pl1 */
219 /*     <<<   TYPE 10 INDEX NAME TOKEN    >>>     */
220 /*     <<<   LAST MODIFIED ON 08-13-74   >>>     */
221 
222 /*        ***STRUCTURE SIZE INFORMATION***        */
223 /*     THE SIZE OF THIS STRUCTURE IN BYTES, (EXCLUDING VARIABLE
224        LENGTH ENTITIES), FOR EACH HARDWARE IMPLEMENTATION IS:
225 
226           HARDWARE  |         SIZE (BYTES)
227           ---------------------------------
228           6180      |         80
229           P7        |         43
230           ---------------------------------
231 */
232 
233 /*
234 A type 10 index name token is entered into the name table by the data
235 division syntax phase for each index name appearing in the data division.
236 An index name is declared in the indexed by phrase of an occurs clause.
237 Associated with each occurs clause, and thereby with each index name, is a
238 four-byte compute subscript word used by the object code to manipulate the
239 array defined by the occurs clause.  All index names in a single indexed by
240 clause are associated with the same compute subscript word.  A compute
241 subscript word consists of two 2-byte fields: the left-most field contains
242 one less than the number of elements in the associated array, and the
243 right-most field contains the number of bytes in one entry of the array.
244 An index name occupies six bytes.  The left-most four bytes are used to
245 maintain the binary byte offset, within the array, corresponding to the
246 current setting of the index name.  The right-most two bytes contain the
247 binary occurrence number to which the index name is set.
248 When the replacement phase processes the procedure division minpral file,
249 each reference to an index name is replaced with the type 10 token created
250 for that index name.
251 */
252 
253 /*   THE INDEX NAME TOKEN STRUCTURE   */
254 
255 dcl       1 index_name based (addr_record),
256 %include cobol_TYPE10;
257 
258 /*     <<<   END OF TYPE 10 INDEX NAME TOKEN    >>>     */
259 /* END INCLUDE FILE ...   cobol_type10.incl.pl1 */
260 
261 
262 /* BEGIN INCLUDE FILE ...   cobol_fd_token.incl.pl1 */
263 /*        last modified on 2/21/74                          */
264 dcl 1 fd_token based(addr_record),
265      2 size fixed bin(15),
266      2 line fixed bin(15),
267      2 column fixed bin(7),
268      2 type fixed bin(7),      /* FD =12  SD =16  */
269      2 string_ptr ptr,
270      2 prev_rec ptr,
271      2 info bit(8),
272      2 def_line fixed bin(15),
273      2 file_no fixed bin(7),
274      2 name_size fixed bin(15),
275      2 name char(31);
276 /* END INCLUDE FILE ...   cobol_fd_token.incl.pl1 */
277 
278 
279 /* BEGIN INCLUDE FILE ...   cobol_cdtoken.incl.pl1 */
280 
281 dcl 1 cdtoken based(addr_record),
282 2 forward ptr,
283 2 backward ptr,
284 2 size fixed bin(15),
285 2 line fixed bin(15),
286 2 column fixed bin(15),
287 2 type fixed bin(15),
288 2 stringptr ptr,
289 2 prevptr ptr,
290 2 info bit(8),
291 2 options,
292 3 input bit(1),
293 3 output bit(1),
294 3 initial bit(1),
295 3 spares bit(5),
296 2 defline fixed bin(15),
297 2 level fixed bin(7),
298 2 cd_seg fixed bin(15),
299 2 cd_ofs fixed bin(31),
300 2 max_redef fixed bin(31),
301 2 mdest fixed bin(15),
302 2 name_size fixed bin(15),
303 2 name char(cdtoken.name_size);
304 
305 /* END INCLUDE FILE ...   cobol_cdtoken.incl.pl1 */
306 
307           dcl 01 satoken based (addr( record)),
308                                                                       /* 2 header */
309                     03 size fixed bin(15),
310                     02 line fixed bin (15),
311                     02 column fixed bin (7),
312                     02 type fixed bin (7),
313                                                                       /* 2 body */
314                     02 stringptr ptr,
315                     02 defline fixed bin (15),
316                     02 address bit (32),
317                     02 sanum fixed bin (15),
318                     02 numrecs fixed bin (15),
319                     02 minchars fixed bin (15),
320                     02 maxchars fixed bin (15),
321                     02 namesize fixed bin (7),
322                     02 name char (30);
323 
324 /* BEGIN INCLUDE FILE ...   cobol_type17.incl.pl1 */
325 /*     <<<   TYPE 17 MNEMONIC NAME TOKEN    >>>     */
326 /*     <<<   LAST MODIFIED ON 03-19-74   >>>     */
327 
328 /*        ***STRUCTURE SIZE INFORMATION***        */
329 /*     THE SIZE OF THIS STRUCTURE IN BYTES, (EXCLUDING VARIABLE
330        LENGTH ENTITIES), FOR EACH HARDWARE IMPLEMENTATION IS:
331 
332           HARDWARE  |         SIZE (BYTES)
333           ---------------------------------
334           645/6180  |         56
335           P7        |         28
336           ---------------------------------
337 */
338 
339 /*
340 A type 17 mnemonic name token is entered into the name table by the
341 environment division syntax phase for each special name appearing in the
342 environment division.
343 */
344 
345 /*   THE MNEMONIC NAME TOKEN STRUCTURE   */
346 
347 dcl       1 mnemonic_name based (addr_record),
348 %include cobol_TYPE17;
349 
350 /*     <<<   END OF TYPE 17 MNEMONIC NAME TOKEN    >>>     */
351 /* END INCLUDE FILE ...   cobol_type17.incl.pl1 */
352 
353 
354 /* BEGIN INCLUDE FILE ...   cobol_type19.incl.pl1 */
355 /*     <<<    FOR TYPE 19 END OF STATEMENT TOKEN   >>>     */
356 /*     <<<   LAST MODIFIED ON 07-18-74   >>>     */
357 
358 /*        ***STRUCTURE SIZE INFORMATION***        */
359 /*     THE SIZE OF THIS STRUCTURE IN BYTES, (EXCLUDING VARIABLE
360        LENGTH ENTITIES), FOR EACH HARDWARE IMPLEMENTATION IS:
361 
362           HARDWARE  |         SIZE (BYTES)
363           ---------------------------------
364           6180      |         38
365           P7        |         20
366           ---------------------------------
367 */
368 
369 /*
370 A type 19 end of statement token is created in the procedure division
371 minpral file at the end of each minpral statement generated by the
372 procedure division syntax phase.  A minpral statement may be a complete or
373 partial source language statement.  A type 19 token contains information
374 describing the statement which it delimits.
375 */
376 
377 /*   THE END OF STATEMENT TOKEN STRUCTURE   */
378 
379                     declare eosptr      ptr;
380 
381 dcl       1 end_stmt static,
382 %include cobol_TYPE19;
383 
384 /*     <<<   END OF END OF STATEMENT    >>>     */
385 /* END INCLUDE FILE ...   cobol_type19.incl.pl1 */
386 
387 
388                               /* based area to get pointer */
389           dcl 01 headerb based (mptr),
390 
391           02 size fixed bin (15),
392           02 line fixed bin (15),
393           02 column fixed bin (7),
394           02 type fixed bin (7),
395           02 body char (header.size-16);
396                                                                       /* general form of internal record */
397                                                                       /* current word buffer */
398           /* used for i-o operations */
399           dcl  seq fixed bin (15) static;
400           dcl  mptr ptr; /* points to record of input minpral file */
401           dcl  input fixed bin (15) static;
402           dcl  rewind fixed bin (15) static;
403           dcl output fixed bin (15) static;
404                                         /* save items here */
405           dcl 01 saveitem,
406 
407           02 size fixed bin (15),
408           02 line fixed bin (15),
409           02 column fixed bin (7),
410           02 type fixed bin (7),
411           02 body char (430);
412           dcl itemsize char (512) based; /*length in bytes of current record */
413           dcl savitmptr ptr ; /* used for saveitem */
414                                         /* a dummy procedure name reference type 18 used for go to  action 49 */
415           dcl 01 dumprocname static,
416           02 size fixed bin (15),
417           02 line fixed bin (15),
418           02 column fixed bin (7),
419           02 type fixed bin (7),
420           02 string_ptr ptr,
421           02 prev_rec ptr,
422                     02 perform_bit bit (1),       /*1= end of perform*/
423                     02 true_false_bit bit (1),    /* 1= true*/
424           02 info bit (6),
425           02 priority char (2),
426           02 multics char (1),
427           02 section_num fixed bin (15),
428           02 proc_num fixed bin (15),
429           02 length fixed bin (15),
430           02 name char (1);
431                                         /* pointer for dummy procedure name */
432           dcl dpnptr ptr ;              /* pointer for dummy procedure name */
433                                         /* used to save the item for ident subrouttines */
434           dcl 01 saveident,
435           02 header,
436           03 size fixed bin (15),
437           03 line fixed bin (15),
438           03 column fixed bin (7),
439           03 type fixed bin (7),
440           02 body char (430);
441                                         /*  dummy alter verb for alter verb */
442           dcl 01 dumalter static,
443           02 size fixed bin (15),
444           02 line fixed bin (15),
445           02 column fixed bin (7),
446           02 type fixed bin (7),
447           02 key fixed bin (15),
448           02 class bit (36),
449           02 length fixed bin (15),
450           02 subset fixed bin (7),
451           02 word char (5);
452                                         /* dummy cancedl verb for action (105)*/
453           dcl 01 dumcancel static,
454           02 size fixed bin (15),
455           02 line fixed bin (15),
456           02 column fixed bin(7),
457           02 type fixed bin (7),
458           02 key fixed bin (15),
459           02 class bit (36),
460           02 length fixed bin (15),
461           02 subset fixed bin (7),
462           02 word char (6);
463                                         /* dummy close verb for action 106*/
464           dcl 01 dumclose static,
465           02 size fixed bin (15),
466           02 line fixed bin (15),
467           02 column fixed bin (7),
468           02 type fixed bin (7),
469           02 key fixed bin (15),
470                     02 class bit (1),
471                     02 classa bit (35),
472           02 length fixed bin (15),
473           02 subset fixed bin (7),
474           02 word char (5);
475                                         /* dummy initiate verb for action 111 */
476           dcl 01 duminitiate static,
477           02 size fixed bin (15),
478           02 line fixed bin (15),
479           02 column fixed bin (7),
480           02 type fixed bin (7),
481           02 key fixed bin (15),
482           class bit (36),
483           length fixed bin (15),
484           subset fixed bin (7),
485           word char (8);
486                                         /* operation eos used for action 115 */
487           dcl 01 opeos static,
488           02 header,
489           03 size fixed bin (15),
490           03 line fixed bin (15),
491           03 column fixed bin (7),
492           03 type fixed bin (7),
493           02 body,
494           03 verb fixed bin (7),
495           03 e fixed bin (7),
496           03 h fixed bin (7),
497           03 i fixed bin (7),
498           03 j fixed bin (7),
499           03 a bit (16);
500                                         /* dummy open verb for acton 119 */
501           dcl 01 dumopen static,
502           02 size fixed bin (15),
503           02 line fixed bin (15),
504           02 column fixed bin (7),
505           02 type fixed bin (7),
506           02 key fixed bin (15),
507                     02 class bit (1),
508                     02 classa bit (35),
509           02 length fixed bin(15),
510           02 subset fixed bin (7),
511           02 word char (4);
512                                         /* dummy suspend verb used by action 123 */
513           dcl 01 dumsuspend static,
514           02 size fixed bin (15),
515           02 line fixed bin (15),
516           02 column fixed bin (7),
517           02 type fixed bin (7),
518           02 key fixed bin (15),
519           02 class bit (36),
520           02 length fixed bin (15),
521           02 subset fixed bin (7),
522           02 word char (7);
523                                         /* dummy terminate veerb for action 124 */
524           dcl 01 dumterminate static,
525           02 size fixed bin (15),
526           02 line fixed bin (15),
527           02 column fixed bin (7),
528           02 type fixed bin (7),
529           02 key fixed bin (15),
530           02 class bit (36),
531           02 length fixed bin (15),
532           02 subset fixed bin (7),
533           02 word char (9);
534                                         /* type18 procedure name stored here for go to depending */
535           dcl 01 store_label_1,
536           02 size fixed bin (15),
537           02 line fixed bin (15),
538           02 column  fixed bin (7),
539           02 type fixed bin (7),
540           02 string_ptr ptr,
541           02 prev_rec ptr,
542           02 info bit (8),
543           02 priority char (2),
544           02 multics char (1),
545           02 section_num fixed bin (15),
546           02 proc_num fixed bin (15),
547           02 length fixed bin (15),
548           02 name char (30);
549                                         /* store type 18 for go dependig */
550           dcl 01 store_label_2,
551           02 size fixed bin (15),
552           02 line fixed bin (15),
553           02 column fixed bin (7),
554           02 type fixed bin (7),
555           02 string_ptr ptr,
556           02 prev_rec ptr,
557           02 info bit (8),
558           02 priority char (2),
559           02 multics char (1),
560           02 section_num fixed bin (15),
561           02 proc_num fixed bin (15),
562           02 length fixed bin (15),
563           02 name char (30);
564           dcl savidptr ptr ;            /* pointer for saved identifier */
565                                         /* used to reference the extensions of type 9 records */
566           dcl exten (430) char (1) based;
567           dcl occptr ptr; /* used to reference the subscript extension of type 9 */
568 
569                     /* a dummy RETURN for the SORT statement */
570 
571           dcl 01 dumreturn static,
572                     02 size fixed bin (15),
573                     02 line fixed bin (15),
574                     02 column fixed bin (7),
575                     02 type fixed bin (7),
576                     02 key fixed bin (15),
577                     02 class bit (1),
578                     02 classa bit (35),
579                     02 length fixed bin (15),
580                     02 subset fixed bin (7),
581                     02 word char (6);
582 
583                     /* a dummy WRITE for the SORT statement */
584 
585           dcl 01 dumwrite static,
586                     02 size fixed bin (15),
587                     02 line fixed bin (15),
588                     02 column fixed bin (7),
589                     02 type fixed bin (7),
590                     02 key fixed bin (15),
591                     02 class bit (1),
592                     02 classa bit (35),
593                     02 length fixed bin (15),
594                     02 subset fixed bin (7),
595                     02 word char (5);
596 
597                     /* a dummy READ for the SORT statement */
598 
599           dcl 01 dumread static,
600                     02 size fixed bin (15),
601                     02 line fixed bin (15),
602                     02 column fixed bin (7),
603                     02 type fixed bin (7),
604                     02 key fixed bin (15),
605                     02 class bit (1),
606                     02 classa bit (35),
607                     02 length fixed bin (15),
608                     02 subset fixed bin (7),
609                     02 word47 char (4);
610 
611                     /* a dummy  RELEASE for the SORT statement */
612 
613           dcl 01 dumrelease static,
614                     02 size fixed bin (15),
615                     02 line fixed bin (15),
616                     02 column fixed bin (7),
617                     02 type fixed bin (7),
618                     02 key fixed bin (15),
619                     02 class bit (1),
620                     02 classa bit (35),
621                     02 length fixed bin (15),
622                     02 subset fixed bin (7),
623                     02 word char (7);
624 
625                     /* save the SORTFILE RECORD here */
626 
627           dcl 01 sv_srtfil_rec,
628                     02 size fixed bin(15),
629                     02 body char (300);
630 
631                     /* a  dummy PERFORM for the SORT statement */
632 
633           dcl 01 dumperform static,
634                     02 size fixed bin (15),
635                     02 line fixed bin (15),
636                     02 column fixed bin (7),
637                     02 type fixed bin (7),
638                     02 key fixed bin (15),
639                     02 class bit (1),
640                     02 classa bit (35),
641                     02 length fixed bin (15),
642                     02 subset fixed bin (7),
643                     02 word char (25);
644 
645                     /* temp patch*/
646           dcl convtemp fixed bin (15);
647           dcl histno fixed bin (15);    /* used for IO verbs */
648 
649                     /* save  procedure definition from sort statement here */
650 
651           dcl 01 sv_proc_def,
652                     02 size fixed bin (15),
653                     02 body char (300);
654 
655                     /* save the FILE after USING or GIVING in SORT statement here */
656 
657           dcl 01 sv_usfil,
658                     02 size fixed bin (15),
659                     02 body char (300);
660 
661                     /* save the generated tag number here */
662 
663           dcl save_gentag fixed bin (15);
664           dcl seqvarptr ptr;
665           dcl seqvarleng fixed bin (15);
666           dcl varrecaddr char (5);
667                     declare   repcsbit bit(1);
668 
669                     declare     cobol_pdst        entry(ptr , fixed bin(15)) ext;
670 
671 
672 /* END INCLUDE FILE ...   cobol_pd_decls.incl.pl1 */
673