1 /* ***********************************************************
   2    *                                                         *
   3    * Copyright, (C) Honeywell Information Systems Inc., 1982 *
   4    *                                                         *
   5    * Copyright (c) 1972 by Massachusetts Institute of        *
   6    * Technology and Honeywell Information Systems, Inc.      *
   7    *                                                         *
   8    *********************************************************** */
   9 
  10 /* format: style2 */
  11 (stringrange, stringsize):
  12 pl1_data:
  13      proc;
  14 
  15 /*
  16           Converted to create_data_segment_  07/07/76 by Bernard Greenberg
  17           Modified: 27 Dec 1976 by Richard Barnes for after, before, ltrim, rtrim
  18           Modified: 30 Dec 1976 by RAB for collate9 and high9
  19           Modified: 17 Feb 1977 by RAB for -check_ansi
  20           Modified: April 1977 to add codeptr, currentsize, clock, environmentptr,
  21                                         maxlength, stackbaseptr, stackframeptr,
  22                                         stacq, vclock by RHS
  23           Modified: 10 May 1977 by RAB to fix 1573 (sum & prod)
  24           Modified 770519 by PG to add substraddr
  25           Modified: 12 July 1977 by RAB to fix maxlength & change stacq definition
  26           Modified: 29 Mar 1978 by PCK to add codeptr, environmentptr, stackbaseptr, and stackframeptr
  27           Modified 790202 by PG to add byte and rank
  28           Modified 830101 by BIM add addcharno addbitno addwordno setcharno
  29                     setbitno setwordno, remove substraddr.
  30 */
  31 
  32           dcl     create_data_segment_   ext entry (ptr, fixed bin (35) aligned);
  33           dcl     com_err_               entry options (variable);
  34           dcl     1 cdsa                 like cds_args aligned;
  35           dcl     (get_temp_segments_, release_temp_segments_)
  36                                          entry (char (*), (*) ptr, fixed bin (35));
  37           dcl     (cleanup, stringrange, stringsize, error)
  38                                          condition;
  39           dcl     code                   fixed bin (35);
  40           dcl     myname                 char (10) init ("pl1_data") static internal options (constant);
  41           dcl     segptrs                (1) ptr init (null ());
  42 
  43 
  44           dcl     (i, j)                 fixed bin (15);
  45 
  46           dcl     p                      ptr;
  47 
  48 
  49           dcl     (addr, collate, divide, substr, unspec, null)
  50                                          builtin;
  51 
  52           dcl     ioa_                   entry options (variable);
  53 
  54           dcl     collating_overlay      (0:511) bit (9) unal based (addr (p -> long_collating_sequence));
  55 
  56           dcl     1 pl1_data             based (p),
  57                     2 long_collating_sequence
  58                                          char (512) aligned,
  59                     2 builtin_name,
  60                       3 number_of_names  fixed bin (15),
  61                       3 description      (127 refer (pl1_data.number_of_names)),
  62                         4 name           char (14),
  63                         4 aggregate_result
  64                                          bit (1),
  65                         4 nonstandard    bit (1),
  66                         4 unused         bit (7),
  67                         4 opcode         bit (9),
  68                         4 reserve_list_number
  69                                          fixed bin (15),
  70                         4 jump_index     fixed bin (15),
  71                         4 check_indicator
  72                                          fixed bin (15),
  73                         4 number1        fixed bin (15),
  74                         4 number2        fixed bin (15),
  75                         4 number_of_descriptions
  76                                          fixed bin (15),
  77                         4 descriptor     (4),
  78                           5 check_code   fixed bin (15),
  79                           5 type         bit (36) aligned;
  80 
  81 /*        check_indicator               resulting action:
  82 
  83           1                             number1 is required number of arguments
  84           2                             number1 is minimum number of arguments
  85           3                             number1 is minimum number of arguments,
  86                                         number2 is maximum number of arguments.
  87 
  88           check_code                    resulting action:
  89 
  90           1                             argument must be of this type
  91           2                             argument should be converted to this type
  92           3                             argument should be converted to float binary
  93           4                             argument should be converted to arithmetic type
  94           5                             argument should be converted to integer type
  95           6                             argument should be real decimal fixed constant
  96           7                             argument should be converted to string type
  97           8                             argument must either be a bit string or real fixed binary
  98           9                             argument must be variable
  99           10                            argument must be computational
 100           11                            argument must be real and converted to float binary
 101           12                            argument must be entry, label, or format value
 102                                                             */
 103 
 104 
 105 %include cds_args;
 106 
 107 %include mask;
 108 %include op_codes;
 109 %include system;
 110 
 111 /*   ^L   */
 112 
 113           on stringsize
 114                begin;
 115                     call com_err_ (0, myname, "Stringsize condition raised.");
 116                     signal error;
 117                end;
 118           on cleanup call release_temp_segments_ (myname, segptrs, (0));
 119           call get_temp_segments_ (myname, segptrs, code);
 120           if code ^= 0
 121           then do;
 122                     call com_err_ (code, myname, "Getting temp segments");
 123                     return;
 124                end;
 125 
 126           p = segptrs (1);
 127 
 128 /*   ^L   */
 129 
 130           i = 1;
 131           p -> builtin_name.description (i).name = "abs";
 132           p -> builtin_name.description (i).aggregate_result = "1"b;
 133           p -> builtin_name.description (i).opcode = abs_fun;
 134           p -> builtin_name.description (i).jump_index = 13;
 135           p -> builtin_name.description (i).check_indicator = 1;
 136           p -> builtin_name.description (i).number1 = 1;
 137           p -> builtin_name.description (i).number_of_descriptions = 1;
 138           p -> builtin_name.description (i).descriptor (1).check_code = 4;
 139 
 140           i = i + 1;
 141           p -> builtin_name.description (i).name = "acos";
 142           p -> builtin_name.description (i).aggregate_result = "1"b;
 143           p -> builtin_name.description (i).opcode = acos_fun;
 144           p -> builtin_name.description (i).reserve_list_number = 85;
 145           p -> builtin_name.description (i).jump_index = 54;
 146           p -> builtin_name.description (i).check_indicator = 1;
 147           p -> builtin_name.description (i).number1 = 1;
 148           p -> builtin_name.description (i).number_of_descriptions = 1;
 149           p -> builtin_name.description (i).descriptor (1).check_code = 11;
 150 
 151           i = i + 1;
 152           p -> builtin_name.description (i).name = "add";
 153           p -> builtin_name.description (i).aggregate_result = "1"b;
 154           p -> builtin_name.description (i).opcode = add;
 155           p -> builtin_name.description (i).jump_index = 14;
 156           p -> builtin_name.description (i).check_indicator = 3;
 157           p -> builtin_name.description (i).number1 = 3;
 158           p -> builtin_name.description (i).number2 = 4;
 159           p -> builtin_name.description (i).number_of_descriptions = 4;
 160           p -> builtin_name.description (i).descriptor (3).check_code = 6;
 161           p -> builtin_name.description (i).descriptor (4).check_code = 6;
 162 
 163           i = i + 1;
 164           p -> builtin_name.description (i).name = "addr";
 165           p -> builtin_name.description (i).opcode = addr_fun;
 166           p -> builtin_name.description (i).jump_index = 33;
 167           p -> builtin_name.description (i).check_indicator = 1;
 168           p -> builtin_name.description (i).number1 = 1;
 169           p -> builtin_name.description (i).number_of_descriptions = 1;
 170           p -> builtin_name.description (i).descriptor (1).check_code = 9;
 171 
 172           i = i + 1;
 173           p -> builtin_name.description (i).name = "addrel";/* multics function */
 174           p -> builtin_name.description (i).opcode = addrel_fun;
 175           p -> builtin_name.description (i).nonstandard = "1"b;
 176           p -> builtin_name.description (i).jump_index = 41;
 177           p -> builtin_name.description (i).check_indicator = 1;
 178           p -> builtin_name.description (i).number1 = 2;
 179           p -> builtin_name.description (i).number_of_descriptions = 2;
 180           p -> builtin_name.description (i).descriptor (1).check_code = 1;
 181           p -> builtin_name.description (i).descriptor (1).type = pointer_type;
 182           p -> builtin_name.description (i).descriptor (2).check_code = 8;
 183           i = i + 1;
 184           p -> builtin_name.description (i).name = "addwordno";/* multics function */
 185           p -> builtin_name.description (i).opcode = addrel_fun;
 186           p -> builtin_name.description (i).nonstandard = "1"b;
 187           p -> builtin_name.description (i).jump_index = 41;
 188           p -> builtin_name.description (i).check_indicator = 1;
 189           p -> builtin_name.description (i).number1 = 2;
 190           p -> builtin_name.description (i).number_of_descriptions = 2;
 191           p -> builtin_name.description (i).descriptor (1).check_code = 1;
 192           p -> builtin_name.description (i).descriptor (1).type = pointer_type;
 193           p -> builtin_name.description (i).descriptor (2).check_code = 5;
 194 
 195           i = i + 1;
 196           p -> builtin_name.description (i).name = "allocation";
 197           p -> builtin_name.description (i).opcode = allocation_fun;
 198           p -> builtin_name.description (i).jump_index = 36;
 199           p -> builtin_name.description (i).check_indicator = 1;
 200           p -> builtin_name.description (i).number1 = 1;
 201 
 202           i = i + 1;
 203           p -> builtin_name.description (i).name = "allocn";
 204           p -> builtin_name.description (i).opcode = allocation_fun;
 205           p -> builtin_name.description (i).jump_index = 36;
 206           p -> builtin_name.description (i).check_indicator = 1;
 207           p -> builtin_name.description (i).number1 = 1;
 208 
 209           i = i + 1;
 210           p -> builtin_name.description (i).name = "after";
 211           p -> builtin_name.description (i).aggregate_result = "1"b;
 212           p -> builtin_name.description (i).opcode = index_after_fun;
 213           p -> builtin_name.description (i).jump_index = 55;
 214           p -> builtin_name.description (i).check_indicator = 1;
 215           p -> builtin_name.description (i).number1 = 2;
 216 
 217           i = i + 1;
 218           p -> builtin_name.description (i).name = "asin";
 219           p -> builtin_name.description (i).aggregate_result = "1"b;
 220           p -> builtin_name.description (i).opcode = asin_fun;
 221           p -> builtin_name.description (i).reserve_list_number = 77;
 222           p -> builtin_name.description (i).jump_index = 54;
 223           p -> builtin_name.description (i).check_indicator = 1;
 224           p -> builtin_name.description (i).number1 = 1;
 225           p -> builtin_name.description (i).number_of_descriptions = 1;
 226           p -> builtin_name.description (i).descriptor (1).check_code = 11;
 227 
 228           i = i + 1;
 229           p -> builtin_name.description (i).name = "atan";
 230           p -> builtin_name.description (i).aggregate_result = "1"b;
 231           p -> builtin_name.description (i).opcode = atan_fun;
 232           p -> builtin_name.description (i).reserve_list_number = 93;
 233           p -> builtin_name.description (i).jump_index = 54;
 234           p -> builtin_name.description (i).check_indicator = 3;
 235           p -> builtin_name.description (i).number1 = 1;
 236           p -> builtin_name.description (i).number2 = 2;
 237           p -> builtin_name.description (i).number_of_descriptions = 2;
 238           p -> builtin_name.description (i).descriptor (1).check_code = 11;
 239           p -> builtin_name.description (i).descriptor (2).check_code = 11;
 240 
 241           i = i + 1;
 242           p -> builtin_name.description (i).name = "atand";
 243           p -> builtin_name.description (i).aggregate_result = "1"b;
 244           p -> builtin_name.description (i).opcode = atand_fun;
 245           p -> builtin_name.description (i).reserve_list_number = 97;
 246           p -> builtin_name.description (i).jump_index = 54;
 247           p -> builtin_name.description (i).check_indicator = 3;
 248           p -> builtin_name.description (i).number1 = 1;
 249           p -> builtin_name.description (i).number2 = 2;
 250           p -> builtin_name.description (i).number_of_descriptions = 2;
 251           p -> builtin_name.description (i).descriptor (1).check_code = 11;
 252           p -> builtin_name.description (i).descriptor (2).check_code = 11;
 253 
 254           i = i + 1;
 255           p -> builtin_name.description (i).name = "atanh";
 256           p -> builtin_name.description (i).aggregate_result = "1"b;
 257           p -> builtin_name.description (i).reserve_list_number = 45;
 258           p -> builtin_name.description (i).jump_index = 25;
 259           p -> builtin_name.description (i).check_indicator = 1;
 260           p -> builtin_name.description (i).number1 = 1;
 261           p -> builtin_name.description (i).number_of_descriptions = 1;
 262           p -> builtin_name.description (i).descriptor (1).check_code = 3;
 263 
 264           i = i + 1;
 265           p -> builtin_name.description (i).name = "baseno";/* multics function */
 266           p -> builtin_name.description (i).opcode = baseno_fun;
 267           p -> builtin_name.description (i).nonstandard = "1"b;
 268           p -> builtin_name.description (i).jump_index = 39;
 269           p -> builtin_name.description (i).check_indicator = 1;
 270                                                             /* Exact # of args */
 271           p -> builtin_name.description (i).number1 = 1;    /* One argument */
 272           p -> builtin_name.description (i).number_of_descriptions = 1;
 273 
 274           i = i + 1;
 275           p -> builtin_name.description (i).name = "segno"; /* multics function */
 276           p -> builtin_name.description (i).opcode = segno_fun;
 277           p -> builtin_name.description (i).nonstandard = "1"b;
 278           p -> builtin_name.description (i).jump_index = 70;
 279           p -> builtin_name.description (i).check_indicator = 1;
 280           p -> builtin_name.description (i).number1 = 1;
 281           p -> builtin_name.description (i).number_of_descriptions = 1;
 282 
 283           i = i + 1;
 284           p -> builtin_name.description (i).name = "baseptr";
 285                                                             /* multics function */
 286           p -> builtin_name.description (i).opcode = baseptr_fun;
 287           p -> builtin_name.description (i).nonstandard = "1"b;
 288           p -> builtin_name.description (i).jump_index = 41;
 289           p -> builtin_name.description (i).check_indicator = 1;
 290           p -> builtin_name.description (i).number1 = 1;
 291           p -> builtin_name.description (i).number_of_descriptions = 1;
 292           p -> builtin_name.description (i).descriptor (1).check_code = 8;
 293 
 294           i = i + 1;
 295           p -> builtin_name.description (i).name = "before";
 296           p -> builtin_name.description (i).aggregate_result = "1"b;
 297           p -> builtin_name.description (i).opcode = index_before_fun;
 298           p -> builtin_name.description (i).jump_index = 56;
 299           p -> builtin_name.description (i).check_indicator = 1;
 300           p -> builtin_name.description (i).number1 = 2;
 301 
 302           i = i + 1;
 303           p -> builtin_name.description (i).name = "bin";
 304           p -> builtin_name.description (i).aggregate_result = "1"b;
 305           p -> builtin_name.description (i).jump_index = 15;
 306           p -> builtin_name.description (i).check_indicator = 3;
 307           p -> builtin_name.description (i).number1 = 1;
 308           p -> builtin_name.description (i).number2 = 3;
 309           p -> builtin_name.description (i).number_of_descriptions = 3;
 310           p -> builtin_name.description (i).descriptor (1).check_code = 10;
 311           p -> builtin_name.description (i).descriptor (1).type = binary_mask;
 312           p -> builtin_name.description (i).descriptor (2).check_code = 6;
 313           p -> builtin_name.description (i).descriptor (3).check_code = 6;
 314 
 315           i = i + 1;
 316           p -> builtin_name.description (i).name = "binary";
 317           p -> builtin_name.description (i).aggregate_result = "1"b;
 318           p -> builtin_name.description (i).jump_index = 15;
 319           p -> builtin_name.description (i).check_indicator = 3;
 320           p -> builtin_name.description (i).number1 = 1;
 321           p -> builtin_name.description (i).number2 = 3;
 322           p -> builtin_name.description (i).number_of_descriptions = 3;
 323           p -> builtin_name.description (i).descriptor (1).check_code = 10;
 324           p -> builtin_name.description (i).descriptor (1).type = binary_mask;
 325           p -> builtin_name.description (i).descriptor (2).check_code = 6;
 326           p -> builtin_name.description (i).descriptor (3).check_code = 6;
 327 
 328           i = i + 1;
 329           p -> builtin_name.description (i).name = "bit";
 330           p -> builtin_name.description (i).aggregate_result = "1"b;
 331           p -> builtin_name.description (i).jump_index = 18;
 332           p -> builtin_name.description (i).check_indicator = 3;
 333           p -> builtin_name.description (i).number1 = 1;
 334           p -> builtin_name.description (i).number2 = 2;
 335           p -> builtin_name.description (i).number_of_descriptions = 2;
 336           p -> builtin_name.description (i).descriptor (1).check_code = 10;
 337           p -> builtin_name.description (i).descriptor (1).type = bit_mask;
 338           p -> builtin_name.description (i).descriptor (2).check_code = 5;
 339 
 340           i = i + 1;
 341           p -> builtin_name.description (i).name = "bool";
 342           p -> builtin_name.description (i).aggregate_result = "1"b;
 343           p -> builtin_name.description (i).opcode = bool_fun;
 344           p -> builtin_name.description (i).jump_index = 23;
 345           p -> builtin_name.description (i).check_indicator = 1;
 346           p -> builtin_name.description (i).number1 = 3;
 347           p -> builtin_name.description (i).number_of_descriptions = 3;
 348           p -> builtin_name.description (i).descriptor (1).check_code = 2;
 349           p -> builtin_name.description (i).descriptor (1).type = bit_mask;
 350           p -> builtin_name.description (i).descriptor (2).check_code = 2;
 351           p -> builtin_name.description (i).descriptor (2).type = bit_mask;
 352           p -> builtin_name.description (i).descriptor (3).check_code = 2;
 353           p -> builtin_name.description (i).descriptor (3).type = bit_mask;
 354 
 355           i = i + 1;
 356           p -> builtin_name.description (i).name = "byte";  /* multics function */
 357           p -> builtin_name.description (i).aggregate_result = "1"b;
 358           p -> builtin_name.description (i).nonstandard = "1"b;
 359           p -> builtin_name.description (i).opcode = byte_fun;
 360           p -> builtin_name.description (i).jump_index = 68;
 361           p -> builtin_name.description (i).check_indicator = 1;
 362           p -> builtin_name.description (i).number1 = 1;
 363           p -> builtin_name.description (i).number_of_descriptions = 1;
 364           p -> builtin_name.description (i).descriptor (1).check_code = 2;
 365           p -> builtin_name.description (i).descriptor (1).type = fixed_binary_real_mask;
 366 
 367           i = i + 1;
 368           p -> builtin_name.description (i).name = "ceil";
 369           p -> builtin_name.description (i).aggregate_result = "1"b;
 370           p -> builtin_name.description (i).opcode = ceil_fun;
 371           p -> builtin_name.description (i).jump_index = 16;
 372           p -> builtin_name.description (i).check_indicator = 1;
 373           p -> builtin_name.description (i).number1 = 1;
 374           p -> builtin_name.description (i).number_of_descriptions = 1;
 375           p -> builtin_name.description (i).descriptor (1).check_code = 4;
 376 
 377           i = i + 1;
 378           p -> builtin_name.description (i).name = "char";
 379           p -> builtin_name.description (i).aggregate_result = "1"b;
 380           p -> builtin_name.description (i).jump_index = 18;
 381           p -> builtin_name.description (i).check_indicator = 3;
 382           p -> builtin_name.description (i).number1 = 1;
 383           p -> builtin_name.description (i).number2 = 2;
 384           p -> builtin_name.description (i).number_of_descriptions = 2;
 385           p -> builtin_name.description (i).descriptor (1).check_code = 10;
 386           p -> builtin_name.description (i).descriptor (1).type = char_mask;
 387           p -> builtin_name.description (i).descriptor (2).check_code = 5;
 388 
 389           i = i + 1;
 390           p -> builtin_name.description (i).name = "character";
 391           p -> builtin_name.description (i).aggregate_result = "1"b;
 392           p -> builtin_name.description (i).jump_index = 18;
 393           p -> builtin_name.description (i).check_indicator = 3;
 394           p -> builtin_name.description (i).number1 = 1;
 395           p -> builtin_name.description (i).number2 = 2;
 396           p -> builtin_name.description (i).number_of_descriptions = 2;
 397           p -> builtin_name.description (i).descriptor (1).check_code = 10;
 398           p -> builtin_name.description (i).descriptor (1).type = char_mask;
 399           p -> builtin_name.description (i).descriptor (2).check_code = 5;
 400 
 401           i = i + 1;
 402           p -> builtin_name.description (i).name = "clock"; /* multics function */
 403           p -> builtin_name.description (i).nonstandard = "1"b;
 404           p -> builtin_name.description (i).opcode = clock_fun;
 405           p -> builtin_name.description (i).jump_index = 62;
 406           p -> builtin_name.description (i).check_indicator = 1;
 407           p -> builtin_name.description (i).number1 = 0;
 408 
 409           i = i + 1;
 410           p -> builtin_name.description (i).name = "codeptr";
 411                                                             /* multics function */
 412           p -> builtin_name.description (i).nonstandard = "1"b;
 413           p -> builtin_name.description (i).aggregate_result = "1"b;
 414           p -> builtin_name.description (i).opcode = codeptr_fun;
 415           p -> builtin_name.description (i).jump_index = 63;
 416           p -> builtin_name.description (i).check_indicator = 1;
 417           p -> builtin_name.description (i).number1 = 1;
 418           p -> builtin_name.description (i).number_of_descriptions = 1;
 419           p -> builtin_name.description (i).descriptor (1).check_code = 12;
 420 
 421           i = i + 1;
 422           p -> builtin_name.description (i).name = "collate";
 423           p -> builtin_name.description (i).jump_index = 1;
 424           p -> builtin_name.description (i).check_indicator = 1;
 425           p -> builtin_name.description (i).number1 = 0;
 426 
 427           i = i + 1;
 428           p -> builtin_name.description (i).name = "collate9";
 429                                                             /* multics function */
 430           p -> builtin_name.description (i).nonstandard = "1"b;
 431           p -> builtin_name.description (i).jump_index = 59;
 432           p -> builtin_name.description (i).check_indicator = 1;
 433           p -> builtin_name.description (i).number1 = 0;
 434 
 435           i = i + 1;
 436           p -> builtin_name.description (i).name = "complex";
 437           p -> builtin_name.description (i).aggregate_result = "1"b;
 438           p -> builtin_name.description (i).opcode = complex_fun;
 439           p -> builtin_name.description (i).jump_index = 17;
 440           p -> builtin_name.description (i).check_indicator = 1;
 441           p -> builtin_name.description (i).number1 = 2;
 442 
 443           i = i + 1;
 444           p -> builtin_name.description (i).name = "conjg";
 445           p -> builtin_name.description (i).aggregate_result = "1"b;
 446           p -> builtin_name.description (i).opcode = conjg_fun;
 447           p -> builtin_name.description (i).jump_index = 50;
 448           p -> builtin_name.description (i).check_indicator = 1;
 449           p -> builtin_name.description (i).number1 = 1;
 450           p -> builtin_name.description (i).number_of_descriptions = 1;
 451           p -> builtin_name.description (i).descriptor (1).check_code = 1;
 452           p -> builtin_name.description (i).descriptor (1).type = complex_mask;
 453 
 454           i = i + 1;
 455           p -> builtin_name.description (i).name = "convert";
 456                                                             /* multics function */
 457           p -> builtin_name.description (i).nonstandard = "1"b;
 458           p -> builtin_name.description (i).jump_index = 46;
 459           p -> builtin_name.description (i).check_indicator = 1;
 460           p -> builtin_name.description (i).number1 = 2;
 461 
 462           i = i + 1;
 463           p -> builtin_name.description (i).name = "copy";
 464           p -> builtin_name.description (i).aggregate_result = "1"b;
 465           p -> builtin_name.description (i).opcode = repeat_fun;
 466           p -> builtin_name.description (i).jump_index = 9;
 467           p -> builtin_name.description (i).check_indicator = 1;
 468           p -> builtin_name.description (i).number1 = 2;
 469           p -> builtin_name.description (i).number_of_descriptions = 2;
 470           p -> builtin_name.description (i).descriptor (1).check_code = 7;
 471           p -> builtin_name.description (i).descriptor (2).check_code = 5;
 472 
 473           i = i + 1;
 474           p -> builtin_name.description (i).name = "cos";
 475           p -> builtin_name.description (i).aggregate_result = "1"b;
 476           p -> builtin_name.description (i).opcode = cos_fun;
 477           p -> builtin_name.description (i).reserve_list_number = 61;
 478           p -> builtin_name.description (i).jump_index = 54;
 479           p -> builtin_name.description (i).check_indicator = 1;
 480           p -> builtin_name.description (i).number1 = 1;
 481           p -> builtin_name.description (i).number_of_descriptions = 1;
 482           p -> builtin_name.description (i).descriptor (1).check_code = 3;
 483 
 484           i = i + 1;
 485           p -> builtin_name.description (i).name = "cosd";
 486           p -> builtin_name.description (i).aggregate_result = "1"b;
 487           p -> builtin_name.description (i).opcode = cosd_fun;
 488           p -> builtin_name.description (i).reserve_list_number = 65;
 489           p -> builtin_name.description (i).jump_index = 54;
 490           p -> builtin_name.description (i).check_indicator = 1;
 491           p -> builtin_name.description (i).number1 = 1;
 492           p -> builtin_name.description (i).number_of_descriptions = 1;
 493           p -> builtin_name.description (i).descriptor (1).check_code = 11;
 494 
 495           i = i + 1;
 496           p -> builtin_name.description (i).name = "cosh";
 497           p -> builtin_name.description (i).aggregate_result = "1"b;
 498           p -> builtin_name.description (i).reserve_list_number = 113;
 499           p -> builtin_name.description (i).jump_index = 25;
 500           p -> builtin_name.description (i).check_indicator = 1;
 501           p -> builtin_name.description (i).number1 = 1;
 502           p -> builtin_name.description (i).number_of_descriptions = 1;
 503           p -> builtin_name.description (i).descriptor (1).check_code = 3;
 504 
 505           i = i + 1;
 506           p -> builtin_name.description (i).name = "cplx";
 507           p -> builtin_name.description (i).aggregate_result = "1"b;
 508           p -> builtin_name.description (i).opcode = complex_fun;
 509           p -> builtin_name.description (i).jump_index = 17;
 510           p -> builtin_name.description (i).check_indicator = 1;
 511           p -> builtin_name.description (i).number1 = 2;
 512 
 513           i = i + 1;
 514           p -> builtin_name.description (i).name = "currentsize";
 515                                                             /* multics function */
 516           p -> builtin_name.description (i).nonstandard = "1"b;
 517           p -> builtin_name.description (i).jump_index = 64;
 518           p -> builtin_name.description (i).check_indicator = 1;
 519           p -> builtin_name.description (i).number1 = 1;
 520 
 521           i = i + 1;
 522           p -> builtin_name.description (i).name = "date";
 523           p -> builtin_name.description (i).reserve_list_number = 186;
 524           p -> builtin_name.description (i).jump_index = 31;
 525           p -> builtin_name.description (i).check_indicator = 1;
 526           p -> builtin_name.description (i).number1 = 0;
 527 
 528           i = i + 1;
 529           p -> builtin_name.description (i).name = "dec";
 530           p -> builtin_name.description (i).aggregate_result = "1"b;
 531           p -> builtin_name.description (i).jump_index = 15;
 532           p -> builtin_name.description (i).check_indicator = 3;
 533           p -> builtin_name.description (i).number1 = 1;
 534           p -> builtin_name.description (i).number2 = 3;
 535           p -> builtin_name.description (i).number_of_descriptions = 3;
 536           p -> builtin_name.description (i).descriptor (1).check_code = 10;
 537           p -> builtin_name.description (i).descriptor (1).type = decimal_mask;
 538           p -> builtin_name.description (i).descriptor (2).check_code = 6;
 539           p -> builtin_name.description (i).descriptor (3).check_code = 6;
 540 
 541           i = i + 1;
 542           p -> builtin_name.description (i).name = "decat";
 543           p -> builtin_name.description (i).aggregate_result = "1"b;
 544           p -> builtin_name.description (i).reserve_list_number = 190;
 545           p -> builtin_name.description (i).jump_index = 24;
 546           p -> builtin_name.description (i).check_indicator = 1;
 547           p -> builtin_name.description (i).number1 = 3;
 548 
 549           i = i + 1;
 550           p -> builtin_name.description (i).name = "decimal";
 551           p -> builtin_name.description (i).aggregate_result = "1"b;
 552           p -> builtin_name.description (i).jump_index = 15;
 553           p -> builtin_name.description (i).check_indicator = 3;
 554           p -> builtin_name.description (i).number1 = 1;
 555           p -> builtin_name.description (i).number2 = 3;
 556           p -> builtin_name.description (i).number_of_descriptions = 3;
 557           p -> builtin_name.description (i).descriptor (1).check_code = 10;
 558           p -> builtin_name.description (i).descriptor (1).type = decimal_mask;
 559           p -> builtin_name.description (i).descriptor (2).check_code = 6;
 560           p -> builtin_name.description (i).descriptor (3).check_code = 6;
 561 
 562           i = i + 1;
 563           p -> builtin_name.description (i).name = "dim";
 564           p -> builtin_name.description (i).opcode = sub;
 565           p -> builtin_name.description (i).reserve_list_number = 3;
 566                                                             /* third argument in call to bounds_ */
 567           p -> builtin_name.description (i).jump_index = 26;
 568           p -> builtin_name.description (i).check_indicator = 1;
 569           p -> builtin_name.description (i).number1 = 2;
 570           p -> builtin_name.description (i).number_of_descriptions = 2;
 571           p -> builtin_name.description (i).descriptor (2).check_code = 5;
 572 
 573           i = i + 1;
 574           p -> builtin_name.description (i).name = "dimension";
 575           p -> builtin_name.description (i).opcode = sub;
 576           p -> builtin_name.description (i).reserve_list_number = 3;
 577                                                             /* third argument in call to bounds_ */
 578           p -> builtin_name.description (i).jump_index = 26;
 579           p -> builtin_name.description (i).check_indicator = 1;
 580           p -> builtin_name.description (i).number1 = 2;
 581           p -> builtin_name.description (i).number_of_descriptions = 2;
 582           p -> builtin_name.description (i).descriptor (2).check_code = 5;
 583 
 584           i = i + 1;
 585           p -> builtin_name.description (i).name = "divide";
 586           p -> builtin_name.description (i).aggregate_result = "1"b;
 587           p -> builtin_name.description (i).opcode = div;
 588           p -> builtin_name.description (i).jump_index = 14;
 589           p -> builtin_name.description (i).check_indicator = 3;
 590           p -> builtin_name.description (i).number1 = 3;
 591           p -> builtin_name.description (i).number2 = 4;
 592           p -> builtin_name.description (i).number_of_descriptions = 4;
 593           p -> builtin_name.description (i).descriptor (3).check_code = 6;
 594           p -> builtin_name.description (i).descriptor (4).check_code = 6;
 595 
 596           i = i + 1;
 597           p -> builtin_name.description (i).name = "dot";
 598           p -> builtin_name.description (i).opcode = add;
 599           p -> builtin_name.description (i).jump_index = 45;
 600           p -> builtin_name.description (i).check_indicator = 3;
 601           p -> builtin_name.description (i).number1 = 3;
 602           p -> builtin_name.description (i).number2 = 4;
 603           p -> builtin_name.description (i).number_of_descriptions = 4;
 604           p -> builtin_name.description (i).descriptor (3).check_code = 6;
 605           p -> builtin_name.description (i).descriptor (4).check_code = 6;
 606 
 607           i = i + 1;
 608           p -> builtin_name.description (i).name = "empty";
 609           p -> builtin_name.description (i).jump_index = 28;
 610           p -> builtin_name.description (i).check_indicator = 1;
 611           p -> builtin_name.description (i).number1 = 0;
 612 
 613           i = i + 1;
 614           p -> builtin_name.description (i).name = "environmentptr";
 615                                                             /* multics function */
 616           p -> builtin_name.description (i).nonstandard = "1"b;
 617           p -> builtin_name.description (i).aggregate_result = "1"b;
 618           p -> builtin_name.description (i).opcode = environmentptr_fun;
 619           p -> builtin_name.description (i).jump_index = 63;
 620           p -> builtin_name.description (i).check_indicator = 1;
 621           p -> builtin_name.description (i).number1 = 1;
 622           p -> builtin_name.description (i).number_of_descriptions = 1;
 623           p -> builtin_name.description (i).descriptor (1).check_code = 12;
 624 
 625           i = i + 1;
 626           p -> builtin_name.description (i).name = "erf";
 627           p -> builtin_name.description (i).aggregate_result = "1"b;
 628           p -> builtin_name.description (i).reserve_list_number = 129;
 629           p -> builtin_name.description (i).jump_index = 25;
 630           p -> builtin_name.description (i).check_indicator = 1;
 631           p -> builtin_name.description (i).number1 = 1;
 632           p -> builtin_name.description (i).number_of_descriptions = 1;
 633           p -> builtin_name.description (i).descriptor (1).check_code = 11;
 634 
 635           i = i + 1;
 636           p -> builtin_name.description (i).name = "erfc";
 637           p -> builtin_name.description (i).aggregate_result = "1"b;
 638           p -> builtin_name.description (i).reserve_list_number = 133;
 639           p -> builtin_name.description (i).jump_index = 25;
 640           p -> builtin_name.description (i).check_indicator = 1;
 641           p -> builtin_name.description (i).number1 = 1;
 642           p -> builtin_name.description (i).number_of_descriptions = 1;
 643           p -> builtin_name.description (i).descriptor (1).check_code = 11;
 644 
 645           i = i + 1;
 646           p -> builtin_name.description (i).name = "exp";
 647           p -> builtin_name.description (i).aggregate_result = "1"b;
 648           p -> builtin_name.description (i).opcode = exp_fun;
 649           p -> builtin_name.description (i).reserve_list_number = 29;
 650           p -> builtin_name.description (i).jump_index = 54;
 651           p -> builtin_name.description (i).check_indicator = 1;
 652           p -> builtin_name.description (i).number1 = 1;
 653           p -> builtin_name.description (i).number_of_descriptions = 1;
 654           p -> builtin_name.description (i).descriptor (1).check_code = 3;
 655 
 656           i = i + 1;
 657           p -> builtin_name.description (i).name = "fixed";
 658           p -> builtin_name.description (i).aggregate_result = "1"b;
 659           p -> builtin_name.description (i).jump_index = 3;
 660           p -> builtin_name.description (i).check_indicator = 3;
 661           p -> builtin_name.description (i).number1 = 1;
 662           p -> builtin_name.description (i).number2 = 3;
 663           p -> builtin_name.description (i).number_of_descriptions = 3;
 664           p -> builtin_name.description (i).descriptor (1).check_code = 10;
 665           p -> builtin_name.description (i).descriptor (2).check_code = 6;
 666           p -> builtin_name.description (i).descriptor (3).check_code = 6;
 667 
 668           i = i + 1;
 669           p -> builtin_name.description (i).name = "float";
 670           p -> builtin_name.description (i).aggregate_result = "1"b;
 671           p -> builtin_name.description (i).jump_index = 2;
 672           p -> builtin_name.description (i).check_indicator = 3;
 673           p -> builtin_name.description (i).number1 = 1;
 674           p -> builtin_name.description (i).number2 = 2;
 675           p -> builtin_name.description (i).number_of_descriptions = 2;
 676           p -> builtin_name.description (i).descriptor (1).check_code = 10;
 677           p -> builtin_name.description (i).descriptor (2).check_code = 6;
 678 
 679           i = i + 1;
 680           p -> builtin_name.description (i).name = "floor";
 681           p -> builtin_name.description (i).aggregate_result = "1"b;
 682           p -> builtin_name.description (i).opcode = floor_fun;
 683           p -> builtin_name.description (i).jump_index = 16;
 684           p -> builtin_name.description (i).check_indicator = 1;
 685           p -> builtin_name.description (i).number1 = 1;
 686           p -> builtin_name.description (i).number_of_descriptions = 1;
 687           p -> builtin_name.description (i).descriptor (1).check_code = 4;
 688 
 689           i = i + 1;
 690           p -> builtin_name.description (i).name = "hbound";
 691           p -> builtin_name.description (i).reserve_list_number = 2;
 692                                                             /* third argument in call to bounds_ */
 693           p -> builtin_name.description (i).jump_index = 26;
 694           p -> builtin_name.description (i).check_indicator = 1;
 695           p -> builtin_name.description (i).number1 = 2;
 696           p -> builtin_name.description (i).number_of_descriptions = 2;
 697           p -> builtin_name.description (i).descriptor (2).check_code = 5;
 698 
 699           i = i + 1;
 700           p -> builtin_name.description (i).name = "high";
 701           p -> builtin_name.description (i).opcode = repeat_fun;
 702           p -> builtin_name.description (i).jump_index = 5;
 703           p -> builtin_name.description (i).check_indicator = 1;
 704           p -> builtin_name.description (i).number1 = 1;
 705           p -> builtin_name.description (i).number_of_descriptions = 1;
 706           p -> builtin_name.description (i).descriptor (1).check_code = 5;
 707 
 708           i = i + 1;
 709           p -> builtin_name.description (i).name = "high9"; /* multics function */
 710           p -> builtin_name.description (i).nonstandard = "1"b;
 711           p -> builtin_name.description (i).opcode = repeat_fun;
 712           p -> builtin_name.description (i).jump_index = 60;
 713           p -> builtin_name.description (i).check_indicator = 1;
 714           p -> builtin_name.description (i).number1 = 1;
 715           p -> builtin_name.description (i).number_of_descriptions = 1;
 716           p -> builtin_name.description (i).descriptor (1).check_code = 5;
 717 
 718           i = i + 1;
 719           p -> builtin_name.description (i).name = "imag";
 720           p -> builtin_name.description (i).aggregate_result = "1"b;
 721           p -> builtin_name.description (i).opcode = imag_fun;
 722           p -> builtin_name.description (i).jump_index = 19;
 723           p -> builtin_name.description (i).check_indicator = 1;
 724           p -> builtin_name.description (i).number1 = 1;
 725           p -> builtin_name.description (i).number_of_descriptions = 1;
 726           p -> builtin_name.description (i).descriptor (1).check_code = 1;
 727           p -> builtin_name.description (i).descriptor (1).type = complex_mask;
 728 
 729           i = i + 1;
 730           p -> builtin_name.description (i).name = "index";
 731           p -> builtin_name.description (i).aggregate_result = "1"b;
 732           p -> builtin_name.description (i).opcode = index_fun;
 733           p -> builtin_name.description (i).jump_index = 6;
 734           p -> builtin_name.description (i).check_indicator = 1;
 735           p -> builtin_name.description (i).number1 = 2;
 736 
 737           i = i + 1;
 738           p -> builtin_name.description (i).name = "lbound";
 739           p -> builtin_name.description (i).reserve_list_number = 1;
 740                                                             /* third argument in call to bounds_ */
 741           p -> builtin_name.description (i).jump_index = 26;
 742           p -> builtin_name.description (i).check_indicator = 1;
 743           p -> builtin_name.description (i).number1 = 2;
 744           p -> builtin_name.description (i).number_of_descriptions = 2;
 745           p -> builtin_name.description (i).descriptor (2).check_code = 5;
 746 
 747           i = i + 1;
 748           p -> builtin_name.description (i).name = "length";
 749           p -> builtin_name.description (i).aggregate_result = "1"b;
 750           p -> builtin_name.description (i).opcode = length_fun;
 751           p -> builtin_name.description (i).jump_index = 7;
 752           p -> builtin_name.description (i).check_indicator = 1;
 753           p -> builtin_name.description (i).number1 = 1;
 754           p -> builtin_name.description (i).number_of_descriptions = 1;
 755           p -> builtin_name.description (i).descriptor (1).check_code = 7;
 756 
 757           i = i + 1;
 758           p -> builtin_name.description (i).name = "lineno";
 759           p -> builtin_name.description (i).reserve_list_number = 183;
 760           p -> builtin_name.description (i).jump_index = 30;
 761           p -> builtin_name.description (i).check_indicator = 1;
 762           p -> builtin_name.description (i).number1 = 1;
 763           p -> builtin_name.description (i).number_of_descriptions = 1;
 764           p -> builtin_name.description (i).descriptor (1).check_code = 1;
 765           p -> builtin_name.description (i).descriptor (1).type = file_mask;
 766 
 767           i = i + 1;
 768           p -> builtin_name.description (i).name = "log";
 769           p -> builtin_name.description (i).aggregate_result = "1"b;
 770           p -> builtin_name.description (i).opcode = log_fun;
 771           p -> builtin_name.description (i).reserve_list_number = 33;
 772           p -> builtin_name.description (i).jump_index = 54;
 773           p -> builtin_name.description (i).check_indicator = 1;
 774           p -> builtin_name.description (i).number1 = 1;
 775           p -> builtin_name.description (i).number_of_descriptions = 1;
 776           p -> builtin_name.description (i).descriptor (1).check_code = 3;
 777 
 778           i = i + 1;
 779           p -> builtin_name.description (i).name = "log10";
 780           p -> builtin_name.description (i).aggregate_result = "1"b;
 781           p -> builtin_name.description (i).opcode = log10_fun;
 782           p -> builtin_name.description (i).reserve_list_number = 41;
 783           p -> builtin_name.description (i).jump_index = 54;
 784           p -> builtin_name.description (i).check_indicator = 1;
 785           p -> builtin_name.description (i).number1 = 1;
 786           p -> builtin_name.description (i).number_of_descriptions = 1;
 787           p -> builtin_name.description (i).descriptor (1).check_code = 11;
 788 
 789           i = i + 1;
 790           p -> builtin_name.description (i).name = "log2";
 791           p -> builtin_name.description (i).aggregate_result = "1"b;
 792           p -> builtin_name.description (i).opcode = log2_fun;
 793           p -> builtin_name.description (i).reserve_list_number = 37;
 794           p -> builtin_name.description (i).jump_index = 54;
 795           p -> builtin_name.description (i).check_indicator = 1;
 796           p -> builtin_name.description (i).number1 = 1;
 797           p -> builtin_name.description (i).number_of_descriptions = 1;
 798           p -> builtin_name.description (i).descriptor (1).check_code = 11;
 799 
 800           i = i + 1;
 801           p -> builtin_name.description (i).name = "low";
 802           p -> builtin_name.description (i).opcode = repeat_fun;
 803           p -> builtin_name.description (i).jump_index = 8;
 804           p -> builtin_name.description (i).check_indicator = 1;
 805           p -> builtin_name.description (i).number1 = 1;
 806           p -> builtin_name.description (i).number_of_descriptions = 1;
 807           p -> builtin_name.description (i).descriptor (1).check_code = 5;
 808 
 809           i = i + 1;
 810           p -> builtin_name.description (i).name = "ltrim"; /* multics function */
 811           p -> builtin_name.description (i).nonstandard = "1"b;
 812           p -> builtin_name.description (i).aggregate_result = "1"b;
 813           p -> builtin_name.description (i).opcode = verify_ltrim_fun;
 814           p -> builtin_name.description (i).jump_index = 57;
 815           p -> builtin_name.description (i).check_indicator = 3;
 816           p -> builtin_name.description (i).number1 = 1;
 817           p -> builtin_name.description (i).number2 = 2;
 818           p -> builtin_name.description (i).number_of_descriptions = 2;
 819           p -> builtin_name.description (i).descriptor (1).check_code = 2;
 820           p -> builtin_name.description (i).descriptor (1).type = char_mask;
 821           p -> builtin_name.description (i).descriptor (2).check_code = 2;
 822           p -> builtin_name.description (i).descriptor (2).type = char_mask;
 823 
 824           i = i + 1;
 825           p -> builtin_name.description (i).name = "max";
 826           p -> builtin_name.description (i).aggregate_result = "1"b;
 827           p -> builtin_name.description (i).opcode = max_fun;
 828           p -> builtin_name.description (i).jump_index = 20;
 829           p -> builtin_name.description (i).check_indicator = 2;
 830           p -> builtin_name.description (i).number1 = 2;
 831 
 832           i = i + 1;
 833           p -> builtin_name.description (i).name = "maxlength";
 834                                                             /* multics function */
 835           p -> builtin_name.description (i).nonstandard = "1"b;
 836           p -> builtin_name.description (i).aggregate_result = "1"b;
 837           p -> builtin_name.description (i).jump_index = 65;
 838           p -> builtin_name.description (i).check_indicator = 1;
 839           p -> builtin_name.description (i).number1 = 1;
 840           p -> builtin_name.description (i).number_of_descriptions = 1;
 841           p -> builtin_name.description (i).descriptor (1).check_code = 7;
 842 
 843           i = i + 1;
 844           p -> builtin_name.description (i).name = "min";
 845           p -> builtin_name.description (i).aggregate_result = "1"b;
 846           p -> builtin_name.description (i).opcode = min_fun;
 847           p -> builtin_name.description (i).jump_index = 20;
 848           p -> builtin_name.description (i).check_indicator = 2;
 849           p -> builtin_name.description (i).number1 = 2;
 850 
 851           i = i + 1;
 852           p -> builtin_name.description (i).name = "mod";
 853           p -> builtin_name.description (i).aggregate_result = "1"b;
 854           p -> builtin_name.description (i).opcode = pl1_mod_fun;
 855           p -> builtin_name.description (i).jump_index = 21;
 856           p -> builtin_name.description (i).check_indicator = 1;
 857           p -> builtin_name.description (i).number1 = 2;
 858 
 859           i = i + 1;
 860           p -> builtin_name.description (i).name = "multiply";
 861           p -> builtin_name.description (i).aggregate_result = "1"b;
 862           p -> builtin_name.description (i).opcode = mult;
 863           p -> builtin_name.description (i).jump_index = 14;
 864           p -> builtin_name.description (i).check_indicator = 3;
 865           p -> builtin_name.description (i).number1 = 3;
 866           p -> builtin_name.description (i).number2 = 4;
 867           p -> builtin_name.description (i).number_of_descriptions = 4;
 868           p -> builtin_name.description (i).descriptor (3).check_code = 6;
 869           p -> builtin_name.description (i).descriptor (4).check_code = 6;
 870 
 871           i = i + 1;
 872           p -> builtin_name.description (i).name = "null";
 873           p -> builtin_name.description (i).jump_index = 29;
 874           p -> builtin_name.description (i).check_indicator = 1;
 875           p -> builtin_name.description (i).number1 = 0;
 876 
 877           i = i + 1;
 878           p -> builtin_name.description (i).name = "nullo"; /* multics function */
 879           p -> builtin_name.description (i).nonstandard = "1"b;
 880           p -> builtin_name.description (i).jump_index = 44;
 881           p -> builtin_name.description (i).check_indicator = 1;
 882           p -> builtin_name.description (i).number1 = 0;
 883 
 884           i = i + 1;
 885           p -> builtin_name.description (i).name = "offset";
 886           p -> builtin_name.description (i).opcode = off_fun;
 887           p -> builtin_name.description (i).jump_index = 35;
 888           p -> builtin_name.description (i).check_indicator = 1;
 889           p -> builtin_name.description (i).number1 = 2;
 890           p -> builtin_name.description (i).number_of_descriptions = 2;
 891           p -> builtin_name.description (i).descriptor (1).check_code = 1;
 892           p -> builtin_name.description (i).descriptor (1).type = pointer_type;
 893           p -> builtin_name.description (i).descriptor (2).check_code = 1;
 894           p -> builtin_name.description (i).descriptor (2).type = area_mask;
 895 
 896           i = i + 1;
 897           p -> builtin_name.description (i).name = "onchar";
 898           p -> builtin_name.description (i).reserve_list_number = 9;
 899           p -> builtin_name.description (i).jump_index = 51;
 900           p -> builtin_name.description (i).check_indicator = 1;
 901           p -> builtin_name.description (i).number1 = 0;
 902 
 903           i = i + 1;
 904           p -> builtin_name.description (i).name = "oncode";
 905           p -> builtin_name.description (i).reserve_list_number = 10;
 906           p -> builtin_name.description (i).jump_index = 53;
 907           p -> builtin_name.description (i).check_indicator = 1;
 908           p -> builtin_name.description (i).number1 = 0;
 909 
 910           i = i + 1;
 911           p -> builtin_name.description (i).name = "onfield";
 912           p -> builtin_name.description (i).reserve_list_number = 8;
 913           p -> builtin_name.description (i).jump_index = 42;
 914           p -> builtin_name.description (i).check_indicator = 1;
 915           p -> builtin_name.description (i).number1 = 0;
 916 
 917           i = i + 1;
 918           p -> builtin_name.description (i).name = "onfile";
 919           p -> builtin_name.description (i).reserve_list_number = 12;
 920           p -> builtin_name.description (i).jump_index = 42;
 921           p -> builtin_name.description (i).check_indicator = 1;
 922           p -> builtin_name.description (i).number1 = 0;
 923 
 924           i = i + 1;
 925           p -> builtin_name.description (i).name = "onkey";
 926           p -> builtin_name.description (i).reserve_list_number = 13;
 927           p -> builtin_name.description (i).jump_index = 42;
 928           p -> builtin_name.description (i).check_indicator = 1;
 929           p -> builtin_name.description (i).number1 = 0;
 930 
 931           i = i + 1;
 932           p -> builtin_name.description (i).name = "onloc";
 933           p -> builtin_name.description (i).reserve_list_number = 7;
 934           p -> builtin_name.description (i).jump_index = 42;
 935           p -> builtin_name.description (i).check_indicator = 1;
 936           p -> builtin_name.description (i).number1 = 0;
 937 
 938           i = i + 1;
 939           p -> builtin_name.description (i).name = "onsource";
 940           p -> builtin_name.description (i).reserve_list_number = 14;
 941           p -> builtin_name.description (i).jump_index = 52;
 942           p -> builtin_name.description (i).check_indicator = 1;
 943           p -> builtin_name.description (i).number1 = 0;
 944 
 945           i = i + 1;
 946           p -> builtin_name.description (i).name = "pageno";
 947           p -> builtin_name.description (i).reserve_list_number = 184;
 948           p -> builtin_name.description (i).jump_index = 30;
 949           p -> builtin_name.description (i).check_indicator = 1;
 950           p -> builtin_name.description (i).number1 = 1;
 951           p -> builtin_name.description (i).number_of_descriptions = 1;
 952           p -> builtin_name.description (i).descriptor (1).check_code = 1;
 953           p -> builtin_name.description (i).descriptor (1).type = file_mask;
 954 
 955           i = i + 1;
 956           p -> builtin_name.description (i).name = "pointer";
 957           p -> builtin_name.description (i).opcode = ptr_fun;
 958           p -> builtin_name.description (i).jump_index = 34;
 959           p -> builtin_name.description (i).check_indicator = 1;
 960           p -> builtin_name.description (i).number1 = 2;
 961 
 962           i = i + 1;
 963           p -> builtin_name.description (i).name = "setwordno"; /* multics function */
 964           p -> builtin_name.description (i).opcode = ptr_fun;
 965           p -> builtin_name.description (i).jump_index = 34;
 966           p -> builtin_name.description (i).check_indicator = 1;
 967           p -> builtin_name.description (i).number1 = 2;
 968           p -> builtin_name.description (i).number_of_descriptions = 2;
 969           p -> builtin_name.description (i).descriptor (1).check_code = 1;
 970           p -> builtin_name.description (i).descriptor (1).type = pointer_type;
 971           p -> builtin_name.description (i).descriptor (2).check_code = 5;
 972 
 973           i = i + 1;
 974           p -> builtin_name.description (i).name = "prec";
 975           p -> builtin_name.description (i).aggregate_result = "1"b;
 976           p -> builtin_name.description (i).jump_index = 4;
 977           p -> builtin_name.description (i).check_indicator = 3;
 978           p -> builtin_name.description (i).number1 = 2;
 979           p -> builtin_name.description (i).number2 = 3;
 980           p -> builtin_name.description (i).number_of_descriptions = 3;
 981           p -> builtin_name.description (i).descriptor (1).check_code = 10;
 982           p -> builtin_name.description (i).descriptor (2).check_code = 6;
 983           p -> builtin_name.description (i).descriptor (3).check_code = 6;
 984 
 985           i = i + 1;
 986           p -> builtin_name.description (i).name = "precision";
 987           p -> builtin_name.description (i).aggregate_result = "1"b;
 988           p -> builtin_name.description (i).jump_index = 4;
 989           p -> builtin_name.description (i).check_indicator = 3;
 990           p -> builtin_name.description (i).number1 = 2;
 991           p -> builtin_name.description (i).number2 = 3;
 992           p -> builtin_name.description (i).number_of_descriptions = 3;
 993           p -> builtin_name.description (i).descriptor (1).check_code = 10;
 994           p -> builtin_name.description (i).descriptor (2).check_code = 6;
 995           p -> builtin_name.description (i).descriptor (3).check_code = 6;
 996 
 997           i = i + 1;
 998           p -> builtin_name.description (i).name = "prod";
 999           p -> builtin_name.description (i).opcode = mult;
1000           p -> builtin_name.description (i).jump_index = 43;
1001           p -> builtin_name.description (i).check_indicator = 1;
1002           p -> builtin_name.description (i).number1 = 1;
1003           p -> builtin_name.description (i).number_of_descriptions = 1;
1004           p -> builtin_name.description (i).descriptor (1).check_code = 10;
1005 
1006           i = i + 1;
1007           p -> builtin_name.description (i).name = "ptr";
1008           p -> builtin_name.description (i).opcode = ptr_fun;
1009           p -> builtin_name.description (i).jump_index = 34;
1010           p -> builtin_name.description (i).check_indicator = 1;
1011           p -> builtin_name.description (i).number1 = 2;
1012 
1013           i = i + 1;
1014           p -> builtin_name.description (i).name = "rank";  /* multics function */
1015           p -> builtin_name.description (i).aggregate_result = "1"b;
1016           p -> builtin_name.description (i).nonstandard = "1"b;
1017           p -> builtin_name.description (i).opcode = rank_fun;
1018           p -> builtin_name.description (i).jump_index = 69;
1019           p -> builtin_name.description (i).check_indicator = 1;
1020           p -> builtin_name.description (i).number1 = 1;
1021           p -> builtin_name.description (i).number_of_descriptions = 1;
1022           p -> builtin_name.description (i).descriptor (1).check_code = 1;
1023           p -> builtin_name.description (i).descriptor (1).type = char_mask;
1024 
1025           i = i + 1;
1026           p -> builtin_name.description (i).name = "real";
1027           p -> builtin_name.description (i).aggregate_result = "1"b;
1028           p -> builtin_name.description (i).opcode = real_fun;
1029           p -> builtin_name.description (i).jump_index = 19;
1030           p -> builtin_name.description (i).check_indicator = 1;
1031           p -> builtin_name.description (i).number1 = 1;
1032           p -> builtin_name.description (i).number_of_descriptions = 1;
1033           p -> builtin_name.description (i).descriptor (1).check_code = 1;
1034           p -> builtin_name.description (i).descriptor (1).type = complex_mask;
1035 
1036           i = i + 1;
1037           p -> builtin_name.description (i).name = "rel";   /* multics function */
1038           p -> builtin_name.description (i).opcode = rel_fun;
1039           p -> builtin_name.description (i).nonstandard = "1"b;
1040           p -> builtin_name.description (i).jump_index = 39;
1041           p -> builtin_name.description (i).check_indicator = 1;
1042           p -> builtin_name.description (i).number1 = 1;
1043           p -> builtin_name.description (i).number_of_descriptions = 1;
1044 
1045           i = i + 1;
1046           p -> builtin_name.description (i).name = "wordno";/* multics function */
1047           p -> builtin_name.description (i).opcode = wordno_fun;
1048           p -> builtin_name.description (i).nonstandard = "1"b;
1049           p -> builtin_name.description (i).jump_index = 71;
1050           p -> builtin_name.description (i).check_indicator = 1;
1051           p -> builtin_name.description (i).number1 = 1;
1052           p -> builtin_name.description (i).number_of_descriptions = 1;
1053 
1054           i = i + 1;
1055           p -> builtin_name.description (i).name = "charno";
1056           p -> builtin_name.description (i).opcode = charno_fun;
1057           p -> builtin_name.description (i).nonstandard = "1"b;
1058           p -> builtin_name.description (i).jump_index = 71;
1059           p -> builtin_name.description (i).check_indicator = 1;
1060           p -> builtin_name.description (i).number1 = 1;
1061           p -> builtin_name.description (i).number_of_descriptions = 1;
1062 
1063           i = i + 1;
1064           p -> builtin_name.description (i).name = "bitno";
1065           p -> builtin_name.description (i).opcode = bitno_fun;
1066           p -> builtin_name.description (i).nonstandard = "1"b;
1067           p -> builtin_name.description (i).jump_index = 71;
1068           p -> builtin_name.description (i).check_indicator = 1;
1069           p -> builtin_name.description (i).number1 = 1;
1070           p -> builtin_name.description (i).number_of_descriptions = 1;
1071 
1072           begin;
1073                declare NAMES                  (4) char (12) init ("setcharno", "addcharno", "setbitno", "addbitno")
1074                                               int static options (constant);
1075                declare OP                     (4) bit (9)
1076                                               init (setcharno_fun, addcharno_fun, setbitno_fun, addbitno_fun);
1077 
1078                declare nx                     fixed bin;
1079 
1080                do nx = 1 to 4;
1081                     i = i + 1;
1082                     p -> builtin_name.description (i).name = NAMES (nx);
1083                     p -> builtin_name.description (i).opcode = OP (nx);
1084                     p -> builtin_name.description (i).jump_index = 74;
1085                     p -> builtin_name.description (i).check_indicator = 1;
1086                                                             /* fixed argument count */
1087                     p -> builtin_name.description (i).number1 = 2;
1088                     p -> builtin_name.description (i).number_of_descriptions = 2;
1089                     p -> builtin_name.description (i).descriptor (1).check_code = 1;
1090                     p -> builtin_name.description (i).descriptor (1).type = pointer_type;
1091                     p -> builtin_name.description (i).descriptor (2).check_code = 5;
1092                end;
1093           end;
1094           i = i + 1;
1095           p -> builtin_name.description (i).name = "reverse";
1096           p -> builtin_name.description (i).aggregate_result = "1"b;
1097           p -> builtin_name.description (i).opcode = reverse_fun;
1098           p -> builtin_name.description (i).jump_index = 27;
1099           p -> builtin_name.description (i).check_indicator = 1;
1100           p -> builtin_name.description (i).number1 = 1;
1101           p -> builtin_name.description (i).number_of_descriptions = 1;
1102           p -> builtin_name.description (i).descriptor (1).check_code = 7;
1103 
1104           i = i + 1;
1105           p -> builtin_name.description (i).name = "round";
1106           p -> builtin_name.description (i).aggregate_result = "1"b;
1107           p -> builtin_name.description (i).opcode = round_fun;
1108           p -> builtin_name.description (i).jump_index = 22;
1109           p -> builtin_name.description (i).check_indicator = 1;
1110           p -> builtin_name.description (i).number1 = 2;
1111           p -> builtin_name.description (i).number_of_descriptions = 4;
1112           p -> builtin_name.description (i).descriptor (1).check_code = 4;
1113           p -> builtin_name.description (i).descriptor (2).check_code = 6;
1114 
1115           i = i + 1;
1116           p -> builtin_name.description (i).name = "rtrim"; /* multics function */
1117           p -> builtin_name.description (i).nonstandard = "1"b;
1118           p -> builtin_name.description (i).aggregate_result = "1"b;
1119           p -> builtin_name.description (i).opcode = verify_rtrim_fun;
1120           p -> builtin_name.description (i).jump_index = 58;
1121           p -> builtin_name.description (i).check_indicator = 3;
1122           p -> builtin_name.description (i).number1 = 1;
1123           p -> builtin_name.description (i).number2 = 2;
1124           p -> builtin_name.description (i).number_of_descriptions = 2;
1125           p -> builtin_name.description (i).descriptor (1).check_code = 2;
1126           p -> builtin_name.description (i).descriptor (1).type = char_mask;
1127           p -> builtin_name.description (i).descriptor (2).check_code = 2;
1128           p -> builtin_name.description (i).descriptor (2).type = char_mask;
1129 
1130           i = i + 1;
1131           p -> builtin_name.description (i).name = "search";/* multics function */
1132           p -> builtin_name.description (i).nonstandard = "1"b;
1133           p -> builtin_name.description (i).aggregate_result = "1"b;
1134           p -> builtin_name.description (i).opcode = search_fun;
1135           p -> builtin_name.description (i).jump_index = 37;
1136           p -> builtin_name.description (i).check_indicator = 1;
1137           p -> builtin_name.description (i).number1 = 2;
1138           p -> builtin_name.description (i).number_of_descriptions = 2;
1139           p -> builtin_name.description (i).descriptor (1).check_code = 2;
1140           p -> builtin_name.description (i).descriptor (1).type = char_mask;
1141           p -> builtin_name.description (i).descriptor (2).check_code = 2;
1142           p -> builtin_name.description (i).descriptor (2).type = char_mask;
1143 
1144           i = i + 1;
1145           p -> builtin_name.description (i).name = "sign";
1146           p -> builtin_name.description (i).aggregate_result = "1"b;
1147           p -> builtin_name.description (i).opcode = sign_fun;
1148           p -> builtin_name.description (i).jump_index = 38;
1149           p -> builtin_name.description (i).check_indicator = 1;
1150           p -> builtin_name.description (i).number1 = 1;
1151           p -> builtin_name.description (i).number_of_descriptions = 1;
1152           p -> builtin_name.description (i).descriptor (1).check_code = 4;
1153 
1154           i = i + 1;
1155           p -> builtin_name.description (i).name = "sin";
1156           p -> builtin_name.description (i).aggregate_result = "1"b;
1157           p -> builtin_name.description (i).opcode = sin_fun;
1158           p -> builtin_name.description (i).reserve_list_number = 53;
1159           p -> builtin_name.description (i).jump_index = 54;
1160           p -> builtin_name.description (i).check_indicator = 1;
1161           p -> builtin_name.description (i).number1 = 1;
1162           p -> builtin_name.description (i).number_of_descriptions = 1;
1163           p -> builtin_name.description (i).descriptor (1).check_code = 3;
1164 
1165           i = i + 1;
1166           p -> builtin_name.description (i).name = "sind";
1167           p -> builtin_name.description (i).aggregate_result = "1"b;
1168           p -> builtin_name.description (i).opcode = sind_fun;
1169           p -> builtin_name.description (i).reserve_list_number = 57;
1170           p -> builtin_name.description (i).jump_index = 54;
1171           p -> builtin_name.description (i).check_indicator = 1;
1172           p -> builtin_name.description (i).number1 = 1;
1173           p -> builtin_name.description (i).number_of_descriptions = 1;
1174           p -> builtin_name.description (i).descriptor (1).check_code = 11;
1175 
1176           i = i + 1;
1177           p -> builtin_name.description (i).name = "sinh";
1178           p -> builtin_name.description (i).aggregate_result = "1"b;
1179           p -> builtin_name.description (i).reserve_list_number = 109;
1180           p -> builtin_name.description (i).jump_index = 25;
1181           p -> builtin_name.description (i).check_indicator = 1;
1182           p -> builtin_name.description (i).number1 = 1;
1183           p -> builtin_name.description (i).number_of_descriptions = 1;
1184           p -> builtin_name.description (i).descriptor (1).check_code = 3;
1185 
1186           i = i + 1;
1187           p -> builtin_name.description (i).name = "size";  /* multics function */
1188           p -> builtin_name.description (i).nonstandard = "1"b;
1189           p -> builtin_name.description (i).jump_index = 47;
1190           p -> builtin_name.description (i).check_indicator = 1;
1191           p -> builtin_name.description (i).number1 = 1;
1192 
1193           i = i + 1;
1194           p -> builtin_name.description (i).name = "sqrt";
1195           p -> builtin_name.description (i).aggregate_result = "1"b;
1196           p -> builtin_name.description (i).opcode = sqrt_fun;
1197           p -> builtin_name.description (i).reserve_list_number = 25;
1198           p -> builtin_name.description (i).jump_index = 54;
1199           p -> builtin_name.description (i).check_indicator = 1;
1200           p -> builtin_name.description (i).number1 = 1;
1201           p -> builtin_name.description (i).number_of_descriptions = 1;
1202           p -> builtin_name.description (i).descriptor (1).check_code = 3;
1203 
1204           i = i + 1;
1205           p -> builtin_name.description (i).name = "stac";  /* multics function */
1206           p -> builtin_name.description (i).nonstandard = "1"b;
1207           p -> builtin_name.description (i).opcode = lock_fun;
1208           p -> builtin_name.description (i).jump_index = 40;
1209           p -> builtin_name.description (i).check_indicator = 1;
1210           p -> builtin_name.description (i).number1 = 2;
1211           p -> builtin_name.description (i).number_of_descriptions = 2;
1212           p -> builtin_name.description (i).descriptor (1).check_code = 1;
1213           p -> builtin_name.description (i).descriptor (1).type = pointer_type;
1214           p -> builtin_name.description (i).descriptor (2).check_code = 1;
1215           p -> builtin_name.description (i).descriptor (2).type = bit_mask;
1216 
1217           i = i + 1;
1218           p -> builtin_name.description (i).name = "stackbaseptr";
1219                                                             /* multics function */
1220           p -> builtin_name.description (i).nonstandard = "1"b;
1221           p -> builtin_name.description (i).opcode = stackbaseptr_fun;
1222           p -> builtin_name.description (i).jump_index = 61;
1223           p -> builtin_name.description (i).check_indicator = 1;
1224           p -> builtin_name.description (i).number1 = 0;
1225 
1226           i = i + 1;
1227           p -> builtin_name.description (i).name = "stackframeptr";
1228                                                             /* multics function */
1229           p -> builtin_name.description (i).nonstandard = "1"b;
1230           p -> builtin_name.description (i).opcode = stackframeptr_fun;
1231           p -> builtin_name.description (i).jump_index = 61;
1232           p -> builtin_name.description (i).check_indicator = 1;
1233           p -> builtin_name.description (i).number1 = 0;
1234 
1235           i = i + 1;
1236           p -> builtin_name.description (i).name = "stacq"; /* multics function */
1237           p -> builtin_name.description (i).nonstandard = "1"b;
1238           p -> builtin_name.description (i).opcode = stacq_fun;
1239           p -> builtin_name.description (i).jump_index = 66;
1240           p -> builtin_name.description (i).check_indicator = 1;
1241           p -> builtin_name.description (i).number1 = 3;
1242           p -> builtin_name.description (i).number_of_descriptions = 3;
1243           p -> builtin_name.description (i).descriptor (1).check_code = 1;
1244           p -> builtin_name.description (i).descriptor (1).type = bit_mask;
1245           p -> builtin_name.description (i).descriptor (2).check_code = 1;
1246           p -> builtin_name.description (i).descriptor (2).type = bit_mask;
1247           p -> builtin_name.description (i).descriptor (3).check_code = 1;
1248           p -> builtin_name.description (i).descriptor (3).type = bit_mask;
1249 
1250           i = i + 1;
1251           p -> builtin_name.description (i).name = "string";
1252           p -> builtin_name.description (i).jump_index = 10;
1253           p -> builtin_name.description (i).check_indicator = 1;
1254           p -> builtin_name.description (i).number1 = 1;
1255 
1256           i = i + 1;
1257           p -> builtin_name.description (i).name = "substr";
1258           p -> builtin_name.description (i).aggregate_result = "1"b;
1259           p -> builtin_name.description (i).jump_index = 11;
1260           p -> builtin_name.description (i).check_indicator = 3;
1261           p -> builtin_name.description (i).number1 = 2;
1262           p -> builtin_name.description (i).number2 = 3;
1263           p -> builtin_name.description (i).number_of_descriptions = 3;
1264           p -> builtin_name.description (i).descriptor (1).check_code = 7;
1265           p -> builtin_name.description (i).descriptor (2).check_code = 5;
1266           p -> builtin_name.description (i).descriptor (3).check_code = 5;
1267 
1268           i = i + 1;
1269           p -> builtin_name.description (i).name = "subtract";
1270           p -> builtin_name.description (i).aggregate_result = "1"b;
1271           p -> builtin_name.description (i).opcode = sub;
1272           p -> builtin_name.description (i).jump_index = 14;
1273           p -> builtin_name.description (i).check_indicator = 3;
1274           p -> builtin_name.description (i).number1 = 3;
1275           p -> builtin_name.description (i).number2 = 4;
1276           p -> builtin_name.description (i).number_of_descriptions = 4;
1277           p -> builtin_name.description (i).descriptor (3).check_code = 6;
1278           p -> builtin_name.description (i).descriptor (4).check_code = 6;
1279 
1280           i = i + 1;
1281           p -> builtin_name.description (i).name = "sum";
1282           p -> builtin_name.description (i).opcode = add;
1283           p -> builtin_name.description (i).jump_index = 43;
1284           p -> builtin_name.description (i).check_indicator = 1;
1285           p -> builtin_name.description (i).number1 = 1;
1286           p -> builtin_name.description (i).number_of_descriptions = 1;
1287           p -> builtin_name.description (i).descriptor (1).check_code = 10;
1288 
1289           i = i + 1;
1290           p -> builtin_name.description (i).name = "tan";
1291           p -> builtin_name.description (i).aggregate_result = "1"b;
1292           p -> builtin_name.description (i).opcode = tan_fun;
1293           p -> builtin_name.description (i).reserve_list_number = 69;
1294           p -> builtin_name.description (i).jump_index = 54;
1295           p -> builtin_name.description (i).check_indicator = 1;
1296           p -> builtin_name.description (i).number1 = 1;
1297           p -> builtin_name.description (i).number_of_descriptions = 1;
1298           p -> builtin_name.description (i).descriptor (1).check_code = 3;
1299 
1300           i = i + 1;
1301           p -> builtin_name.description (i).name = "tand";
1302           p -> builtin_name.description (i).aggregate_result = "1"b;
1303           p -> builtin_name.description (i).opcode = tand_fun;
1304           p -> builtin_name.description (i).reserve_list_number = 73;
1305           p -> builtin_name.description (i).jump_index = 54;
1306           p -> builtin_name.description (i).check_indicator = 1;
1307           p -> builtin_name.description (i).number1 = 1;
1308           p -> builtin_name.description (i).number_of_descriptions = 1;
1309           p -> builtin_name.description (i).descriptor (1).check_code = 11;
1310 
1311           i = i + 1;
1312           p -> builtin_name.description (i).name = "tanh";
1313           p -> builtin_name.description (i).aggregate_result = "1"b;
1314           p -> builtin_name.description (i).reserve_list_number = 117;
1315           p -> builtin_name.description (i).jump_index = 25;
1316           p -> builtin_name.description (i).check_indicator = 1;
1317           p -> builtin_name.description (i).number1 = 1;
1318           p -> builtin_name.description (i).number_of_descriptions = 1;
1319           p -> builtin_name.description (i).descriptor (1).check_code = 3;
1320 
1321           i = i + 1;
1322           p -> builtin_name.description (i).name = "time";
1323           p -> builtin_name.description (i).reserve_list_number = 187;
1324           p -> builtin_name.description (i).jump_index = 32;
1325           p -> builtin_name.description (i).check_indicator = 1;
1326           p -> builtin_name.description (i).number1 = 0;
1327 
1328           i = i + 1;
1329           p -> builtin_name.description (i).name = "translate";
1330           p -> builtin_name.description (i).aggregate_result = "1"b;
1331           p -> builtin_name.description (i).opcode = translate_fun;
1332           p -> builtin_name.description (i).jump_index = 49;
1333           p -> builtin_name.description (i).check_indicator = 3;
1334           p -> builtin_name.description (i).number1 = 2;
1335           p -> builtin_name.description (i).number2 = 3;
1336           p -> builtin_name.description (i).number_of_descriptions = 3;
1337           p -> builtin_name.description (i).descriptor (1).check_code = 2;
1338           p -> builtin_name.description (i).descriptor (1).type = char_mask;
1339           p -> builtin_name.description (i).descriptor (2).check_code = 2;
1340           p -> builtin_name.description (i).descriptor (2).type = char_mask;
1341           p -> builtin_name.description (i).descriptor (3).check_code = 2;
1342           p -> builtin_name.description (i).descriptor (3).type = char_mask;
1343 
1344           i = i + 1;
1345           p -> builtin_name.description (i).name = "trunc";
1346           p -> builtin_name.description (i).aggregate_result = "1"b;
1347           p -> builtin_name.description (i).opcode = trunc_fun;
1348           p -> builtin_name.description (i).jump_index = 16;
1349           p -> builtin_name.description (i).check_indicator = 1;
1350           p -> builtin_name.description (i).number1 = 1;
1351           p -> builtin_name.description (i).number_of_descriptions = 1;
1352           p -> builtin_name.description (i).descriptor (1).check_code = 4;
1353 
1354           i = i + 1;
1355           p -> builtin_name.description (i).name = "unspec";
1356           p -> builtin_name.description (i).jump_index = 12;
1357           p -> builtin_name.description (i).check_indicator = 1;
1358           p -> builtin_name.description (i).number1 = 1;
1359 
1360           i = i + 1;
1361           p -> builtin_name.description (i).name = "valid";
1362           p -> builtin_name.description (i).reserve_list_number = 185;
1363           p -> builtin_name.description (i).jump_index = 48;
1364           p -> builtin_name.description (i).check_indicator = 1;
1365           p -> builtin_name.description (i).number1 = 1;
1366 
1367           i = i + 1;
1368           p -> builtin_name.description (i).name = "vclock";/* multics function */
1369           p -> builtin_name.description (i).nonstandard = "1"b;
1370           p -> builtin_name.description (i).opcode = vclock_fun;
1371           p -> builtin_name.description (i).jump_index = 62;
1372           p -> builtin_name.description (i).check_indicator = 1;
1373           p -> builtin_name.description (i).number1 = 0;
1374 
1375           i = i + 1;
1376           p -> builtin_name.description (i).name = "verify";
1377           p -> builtin_name.description (i).aggregate_result = "1"b;
1378           p -> builtin_name.description (i).opcode = verify_fun;
1379           p -> builtin_name.description (i).jump_index = 37;
1380           p -> builtin_name.description (i).check_indicator = 1;
1381           p -> builtin_name.description (i).number1 = 2;
1382           p -> builtin_name.description (i).number_of_descriptions = 2;
1383           p -> builtin_name.description (i).descriptor (1).check_code = 2;
1384           p -> builtin_name.description (i).descriptor (1).type = char_mask;
1385           p -> builtin_name.description (i).descriptor (2).check_code = 2;
1386           p -> builtin_name.description (i).descriptor (2).type = char_mask;
1387 
1388           p -> builtin_name.number_of_names = i;
1389 
1390           call ioa_ ("^a: ^d names processed.", myname, i);
1391 
1392 /* prepare long_collating_sequence */
1393 
1394           substr (p -> long_collating_sequence, 1, 128) = collate ();
1395           do j = 128 to 511;
1396                collating_overlay (j) = bit (fixed (j, 9), 9);
1397           end;
1398 
1399 /* now call create_data_segment_ */
1400 
1401           unspec (cdsa) = "0"b;
1402           cdsa.have_text = "1"b;
1403           cdsa.sections (1).p = p;
1404           cdsa.sections (1).len = divide (length (unspec (pl1_data)), 36, 17, 0);
1405           cdsa.sections (1).struct_name = "pl1_data";
1406           cdsa.seg_name = myname;
1407 
1408           call create_data_segment_ (addr (cdsa), code);
1409           if code ^= 0
1410           then call com_err_ (code, myname, "Creating ^a data segment", myname);
1411 
1412           call release_temp_segments_ (myname, segptrs, (0));
1413      end pl1_data;