COMPILATION LISTING OF SEGMENT probe_get_misc_ Compiled by: Multics PL/I Compiler, Release 31a, of October 12, 1988 Compiled at: Honeywell Bull, Phoenix AZ, SysM Compiled on: 11/11/88 1544.3 mst Fri Options: optimize map 1 /****^ *********************************************************** 2* * * 3* * Copyright, (C) Honeywell Bull Inc., 1988 * 4* * * 5* * Copyright, (C) Honeywell Information Systems Inc., 1982 * 6* * * 7* * Copyright (c) 1972 by Massachusetts Institute of * 8* * Technology and Honeywell Information Systems, Inc. * 9* * * 10* *********************************************************** */ 11 12 13 14 /****^ HISTORY COMMENTS: 15* 1) change(88-09-07,WAAnderson), approve(88-09-30,MCR7952), 16* audit(88-09-30,JRGray), install(88-10-24,MR12.2-1184): 17* Added format control comment to make the source more readable. 18* END HISTORY COMMENTS */ 19 20 21 /* format: style1,insnl,ifthendo,indthenelse,^indnoniterdo,^inditerdo,indcom,^indthenbegin,^indprocbody,ind2,ll78,initcol0,dclind4,idind24,struclvlind1,comcol41 */ 22 23 /**** * * * * * * * * * * * * * * * * * * * * * * * */ 24 25 probe_get_misc_: 26 proc (); 27 28 call probe_error_$malfunction (); 29 return; /* not an entry */ 30 31 /* probe_get_misc_ - to parse a variety of constructs used in probe 32* 33* ENTRIES HERE: 34* io_switch 35* pathname 36* object 37* integer 38* request_list 39* control_arg 40* 41* someday: signed_integer 42* 43* Last Modified: 22 Sept 79 JRDavis to add object */ 44 /* Added $decimal to parse N.M into N and M 12/19/81 S. Herbst */ 45 46 dcl ( 47 P_probe_info_ptr pointer, 48 P_iocb_ptr pointer, 49 P_pathname char (*) varying, 50 P_source_info_ptr ptr, /* to source info to set */ 51 (P_integer, P_decimal) fixed bin (35), 52 P_line_ptr pointer, 53 P_line_lth fixed bin (21), 54 P_control_arg char (64) varying, 55 P_code fixed bin (35) 56 ); 57 58 dcl old_ct pointer; /* return this pointer if an attempted conversion fails */ 59 dcl code fixed bin (35); 60 61 dcl constant_string char (probe_info.ct -> constant.precision) 62 based (probe_info.ct -> constant.data_ptr); 63 64 dcl assign_ entry (ptr, fixed bin (35), fixed bin (35), ptr, 65 fixed bin (35), fixed bin (35)); 66 67 dcl ( 68 probe_et_$noarg, 69 probe_et_$bad_expression, 70 probe_et_$unbalanced_parens, 71 probe_et_$bad_integer, 72 probe_et_$recorded_message, 73 probe_et_$syntax_error 74 ) fixed bin (35) external static; 75 76 77 dcl probe_error_$malfunction 78 entry options (variable); 79 80 dcl (addr, dec, divide, fixed, null, substr) 81 builtin; 82 /* */ 83 84 SYNTAX_ERROR: /* general-purpose error exit */ 85 code = probe_et_$syntax_error; 86 goto SOME_ERROR; 87 88 89 RECORDED_MESSAGE: 90 code = probe_et_$recorded_message; 91 goto SOME_ERROR; 92 93 SOME_ERROR: 94 probe_info.ct = old_ct; 95 96 MAIN_RETURN: 97 P_code = code; 98 return; 99 100 io_switch: 101 entry (P_probe_info_ptr, P_iocb_ptr, P_code); 102 103 /* * This entry extracts an I/O switch name from the token chain, if possible */ 104 105 106 dcl switchname char (32) varying; 107 /* this is local to this block */ 108 dcl iox_$find_iocb entry (char (*), ptr, fixed bin (35)); 109 110 111 probe_info_ptr = P_probe_info_ptr; 112 code = 0; 113 114 old_ct = probe_info.ct; 115 P_iocb_ptr = null (); 116 117 if probe_info.ct -> token.type >= probe_info.end_token then do; 118 /* nothing to get */ 119 code = probe_et_$noarg; 120 goto SOME_ERROR; 121 end; 122 123 if probe_info.ct -> token.type = CONSTANT_TYPE then do; 124 if probe_info.ct -> constant.data_type = (char_dtype * 2) 125 then 126 switchname = constant_string; 127 else goto SYNTAX_ERROR; /* other constants useless */ 128 end; 129 130 else do; 131 call get_entryname (switchname, code); 132 if code ^= 0 133 then goto SOME_ERROR; 134 end; 135 136 if switchname = "" 137 then goto SYNTAX_ERROR; 138 139 if ct -> token.type < end_token 140 then goto SYNTAX_ERROR; 141 call iox_$find_iocb ((switchname), P_iocb_ptr, P_code); 142 return; /* end of code for get_io_switch entry */ 143 144 /* */ 145 146 pathname: 147 entry (P_probe_info_ptr, P_pathname, P_code); 148 149 /* * This entry gets a pathname; that is, any number of leading "<", followed 150* * by one or more entrynames, followed by any number of ">" entrynames */ 151 152 153 probe_info_ptr = P_probe_info_ptr; 154 code = 0; 155 156 old_ct = probe_info.ct; 157 158 call get_pathname (P_pathname, code); 159 if code ^= 0 160 then goto SOME_ERROR; 161 goto MAIN_RETURN; 162 163 164 control_arg: 165 entry (P_probe_info_ptr, P_control_arg, P_code); 166 167 /* * gets a control args from the chain, if one is there */ 168 169 170 probe_info_ptr = P_probe_info_ptr; 171 code = 0; 172 173 old_ct = probe_info.ct; 174 175 P_control_arg = ""; 176 if probe_info.ct -> token.type = MINUS 177 then 178 if probe_info.ct -> token.next -> token.type = NAME_TYPE 179 then 180 do; 181 call bump_ct (); /* past the minus */ 182 P_control_arg = current_identifier_name; 183 call bump_ct (); 184 end; 185 186 P_code = 0; 187 return; /* end of code for $control arg */ 188 189 190 191 integer: 192 entry (P_probe_info_ptr, P_integer, P_code); 193 194 dcl fb35_temp fixed bin (35); 195 196 197 probe_info_ptr = P_probe_info_ptr; 198 code = 0; 199 200 old_ct = probe_info.ct; 201 202 if ^data_type_info_$info ( 203 divide (probe_info.ct -> constant.data_type, 2, 17, 0)).computational 204 then do; 205 P_code = probe_et_$bad_integer; 206 return; 207 208 end; 209 210 call assign_ (addr (fb35_temp), 2, 35, (probe_info.ct -> constant.data_ptr), 211 (probe_info.ct -> constant.data_type), 212 probe_info.ct -> constant.scale_and_precision); 213 214 P_integer = fb35_temp; 215 call bump_ct (); 216 P_code = 0; 217 return; /* end of code for integer */ 218 219 220 221 decimal: 222 entry (P_probe_info_ptr, P_integer, P_decimal, P_code); 223 224 /* Given the number N.M, returns P_integer as N and P_decimal as M */ 225 /* Added as a kludge for "use level N.M" */ 226 227 dcl fdec_temp fixed dec (6, 3); 228 229 230 probe_info_ptr = P_probe_info_ptr; 231 code = 0; 232 233 if ^data_type_info_$info ( 234 divide (probe_info.ct -> constant.data_type, 2, 17, 0)).computational 235 then do; 236 P_code = probe_et_$bad_expression; 237 return; 238 end; 239 240 call assign_ (addr (fdec_temp), real_fix_dec_9bit_ls_dtype * 2, 241 786438 /* scale and precision of fixed dec (6, 3) */, 242 (probe_info.ct -> constant.data_ptr), 243 (probe_info.ct -> constant.data_type), 244 probe_info.ct -> constant.scale_and_precision); 245 246 P_integer = fdec_temp; 247 fdec_temp = fdec_temp - dec (P_integer); 248 P_decimal = fdec_temp * 10 ** fixed (probe_info.ct -> constant.scale); 249 250 call bump_ct (); 251 P_code = 0; 252 return; 253 254 /* */ 255 256 request_list: 257 entry (P_probe_info_ptr, P_line_ptr, P_line_lth, P_code); 258 259 /* * This entry extracts a request line from the token chain; Such request lines 260* * are seen in breakpoint requests, etc. */ 261 262 dcl (last_token, first_token) 263 pointer; 264 dcl first_time bit (1) aligned; 265 dcl paren_level fixed bin; 266 dcl line_lth fixed bin (21); 267 dcl based_str char (256) based; 268 269 270 probe_info_ptr = P_probe_info_ptr; 271 code = 0; 272 273 old_ct = probe_info.ct; 274 275 276 first_time = "1"b; 277 paren_level = 0; 278 do while ((probe_info.ct -> token.type < probe_info.end_token) 279 | (paren_level > 0) | (first_time)); 280 if probe_info.ct -> token.type = LEFT_PAREN 281 then 282 paren_level = paren_level + 1; 283 else if probe_info.ct -> token.type = RIGHT_PAREN 284 then 285 paren_level = paren_level - 1; 286 first_time = "0"b; 287 288 call bump_ct (); 289 if probe_info.ct = null () then do; /* moby lossage */ 290 code = probe_et_$unbalanced_parens; 291 goto SOME_ERROR; 292 end; 293 end; 294 295 if paren_level < 0 then do; /* should only happen if first token is ")" */ 296 code = probe_et_$unbalanced_parens; 297 goto SOME_ERROR; 298 end; 299 300 first_token = old_ct; /* get token pointers for first and last tokens */ 301 last_token = probe_info.ct -> token.prev; 302 /* since we have advanced past it */ 303 304 if first_token -> operator.type = LEFT_PAREN then do; 305 /* strip off outer pair of parens */ 306 first_token = first_token -> token.next; 307 /* simply skip over the first token */ 308 if last_token -> token.type ^= RIGHT_PAREN then do; 309 code = probe_et_$syntax_error;/* right paren is misplaced, as in "after: (foo; bar) baz" */ 310 goto SOME_ERROR; 311 end; 312 313 last_token = last_token -> token.prev; 314 /* token BEFORE final paren */ 315 end; 316 317 line_lth = 318 (last_token -> token.next -> token.location) 319 - (first_token -> token.location) + 1; 320 line_lth = line_lth - 1; /* since it now contains the final ")", reduce its length */ 321 /* by one to eliminate that character */ 322 if line_lth <= 0 then do; /* something like "()" */ 323 code = probe_et_$syntax_error; 324 goto SOME_ERROR; 325 end; 326 327 P_line_lth = line_lth; 328 P_line_ptr = addr (substr (first_token -> token.buffer_ptr -> based_str, 329 first_token -> token.location, 1)); 330 /* first char in string */ 331 332 P_code = 0; 333 return; /* end of code for $get_request_line entry */ 334 335 object: 336 entry (P_probe_info_ptr, P_source_info_ptr, P_code); 337 338 /* Parse and return an OBJECT 339* This can be a pathname or e refname of an EXTERNAL ENTRY. We are not interested in 340* internal entrypoints or procedures. This is a Multicious thing more than a PL/I 341* (or FORTRAN or COBOL or PASCAL or ALGOL) thing. 342* 343* James R. Davis 22 Sept 79 344**/ 345 346 dcl obj_pathname char (168) varying; 347 348 dcl probe_find_procedure_ entry (ptr, char (*), bit (36) aligned, ptr, 349 fixed bin (35)); 350 351 352 probe_info_ptr = P_probe_info_ptr; 353 code = 0; 354 old_ct = probe_info.ct; 355 356 call get_pathname (obj_pathname, code); 357 if code ^= 0 358 then 359 return; 360 361 if probe_info.execute then do; 362 call probe_find_procedure_ (probe_info_ptr, (obj_pathname), "111"b, 363 (P_source_info_ptr), code); 364 if code ^= 0 365 then goto SOME_ERROR; 366 end; 367 goto MAIN_RETURN; 368 369 370 /* INTERNAL PROCEDURES */ 371 372 bump_ct: 373 proc; 374 probe_info.ct = probe_info.ct -> token.next; 375 end bump_ct; 376 377 378 get_pathname: 379 proc (path, code); 380 381 /* parses a pathname for the sake of $pathname and $object */ 382 383 dcl path char (*) varying parameter; 384 dcl code fixed bin (35) parameter; 385 dcl path_entry char (32) varying; 386 387 388 path = ""; 389 code = 0; 390 391 do probe_info.ct = probe_info.ct repeat probe_info.ct -> token.next 392 while (probe_info.ct -> token.type = LESS_THAN); 393 path = path || "<"; 394 end; 395 396 call get_entryname (path_entry, code); 397 if code ^= 0 398 then 399 return; 400 401 path = path || path_entry; /* this may harmlessly be null */ 402 403 do while (probe_info.ct -> token.type = GREATER_THAN); 404 path = path || ">"; 405 probe_info.ct = probe_info.ct -> token.next; 406 407 call get_entryname (path_entry, code); 408 if code ^= 0 409 then 410 return; 411 path = path || path_entry; 412 end; 413 414 end get_pathname; 415 416 417 418 get_entryname: 419 proc (ename, code); 420 421 dcl ename char (32) varying parameter; 422 dcl code fixed bin (35) parameter; 423 424 425 ename = ""; 426 code = 0; 427 do probe_info.ct = probe_info.ct repeat probe_info.ct -> token.next 428 while (probe_info.ct ^= null); 429 if probe_info.ct -> token.type = NAME_TYPE 430 then ename = ename || current_identifier_name; 431 else if probe_info.ct -> operator.type = SLASH 432 then ename = ename || "/"; 433 else if probe_info.ct -> operator.type = PERIOD 434 then ename = ename || "."; 435 else if probe_info.ct -> operator.type = DOLLAR_SIGN 436 then ename = ename || "$"; 437 else if probe_info.ct -> operator.type = COMMA 438 then ename = ename || ","; 439 else 440 return; 441 end; /* snarfing tokens into the entryname */ 442 end get_entryname; 443 1 1 /* BEGIN INCLUDE FILE probe_info.incl.pl1 */ 1 2 1 3 1 4 1 5 /****^ HISTORY COMMENTS: 1 6* 1) change(88-10-24,WAAnderson), approve(88-10-24,MCR7952), 1 7* audit(88-10-24,RWaters), install(88-10-27,MR12.2-1194): 1 8* Added field 'retry_using_main' to add new C feature. 1 9* END HISTORY COMMENTS */ 1 10 1 11 1 12 /* Created: 04/22/79 W. Olin Sibert, from subsystem_info 1 13* Modified: 22 Sept 79 JRd to remove: default (ptr & (auto|based)) init (null ()); 1 14* Added flags.setting_break 08/22/83 Steve Herbst 1 15* Added flags.executing_quit_request 01/15/85 Steve Herbst 1 16**/ 1 17 1 18 dcl 1 probe_info aligned based (probe_info_ptr), /* standard data for a probe invocation */ 1 19 2 probe_info_version fixed bin, /* version of this structure */ 1 20 1 21 2 static_info_ptr pointer unaligned, /* pointer to static information structure */ 1 22 2 modes_ptr pointer unaligned, /* pointer to probe_modes structure */ 1 23 1 24 2 ptr_to_current_source ptr, /* current_source is based on this */ 1 25 2 ptr_to_initial_source ptr, /* initial_source is based on this */ 1 26 2 machine_cond_ptr pointer, /* pointer to machine conditions, if we faulted to get here */ 1 27 1 28 2 token_info aligned, /* information about token chain currently being processed */ 1 29 3 first_token pointer unaligned, /* first token in chain */ 1 30 3 ct pointer unaligned, /* pointer to current token; updated in MANY places */ 1 31 3 end_token bit (18) aligned, /* token type at which to stop scanning token chain */ 1 32 3 buffer_ptr pointer unaligned, /* pointer to input buffer */ 1 33 3 buffer_lth fixed bin (21), /* and length */ 1 34 1 35 2 random_info aligned, 1 36 3 current_stack_frame pointer unaligned, /* stack frame pointer for frame in which probe was invoked */ 1 37 3 input_type fixed bin, /* current input type */ 1 38 3 language_type fixed bin, /* current language being processed */ 1 39 3 return_method fixed bin, /* how we should return after exiting probe */ 1 40 3 entry_method fixed bin, /* how we got here in the first place */ 1 41 3 pad1 (19) bit (36) aligned, 1 42 1 43 2 break_info, /* break info -- only interesting if we got here via a break */ 1 44 3 break_slot_ptr pointer, /* pointer to break slot -- non-null IFF at a break */ 1 45 3 last_break_slot_ptr pointer unaligned, /* pointer to previous break slot, not presently used */ 1 46 3 break_reset bit (1) aligned, /* this break has been reset by somebody further on */ 1 47 3 real_break_return_loc pointer, /* where to REALLY return to, modulo previous bit */ 1 48 1 49 2 probe_area_info, /* information about various probe areas */ 1 50 3 break_segment_ptr pointer unaligned, /* pointer to Personid.probe */ 1 51 3 break_area_ptr pointer unaligned, /* pointer to area in break segment */ 1 52 3 scratch_area_ptr pointer unaligned, /* pointer to probe scratch seg in process dir */ 1 53 3 probe_area_ptr pointer unaligned, /* This area lasts as long as an invocation of probe. */ 1 54 3 work_area_ptr pointer unaligned, /* This area lasts as long as the current request line */ 1 55 3 expression_area_ptr pointer unaligned, /* This area lasts as long as the current command */ 1 56 1 57 2 flags aligned, /* this, in particular, should be saved and restored correctly */ 1 58 (3 execute, /* "1"b => execute requests, "0"b => just check syntax */ 1 59 3 in_listener, /* ON => in probe listener loop */ 1 60 3 executing_request, /* ON => executing a request */ 1 61 3 in_interpret_line, /* executing in probe_listen_$interpret_line */ 1 62 3 setting_break, /* executing "after" or "before": check syntax of "if" */ 1 63 3 executing_quit_request, /* to prevent error looping during "quit" request */ 1 64 3 pad (30)) bit (1) unaligned, 1 65 1 66 2 io_switches, /* switches probe will do normal I/O on */ 1 67 3 input_switch pointer, 1 68 3 output_switch pointer, 1 69 1 70 2 error_info, /* information about the last error saved for later printing */ 1 71 3 error_code fixed bin (35), 1 72 3 error_message char (300) varying, 1 73 1 74 2 listener_info, /* internal use by probe listener */ 1 75 3 request_name character (32) varying, /* primary name of the request being processed */ 1 76 3 abort_probe_label label variable, 1 77 3 abort_line_label label variable, 1 78 3 depth fixed binary, /* count of active invocations of probe */ 1 79 3 previous pointer unaligned, /* -> previous invocation's info */ 1 80 3 next pointer unaligned, 1 81 1 82 2 end_of_probe_info pointer aligned, 1 83 2 retry_using_main fixed bin aligned; 1 84 1 85 1 86 dcl probe_info_ptr pointer; 1 87 1 88 dcl probe_info_version fixed bin static options (constant) initial (1); 1 89 1 90 dcl probe_info_version_1 fixed bin static options (constant) initial (1); 1 91 1 92 dcl scratch_area area based (probe_info.scratch_area_ptr); 1 93 dcl probe_area area based (probe_info.probe_area_ptr); 1 94 dcl work_area area based (probe_info.work_area_ptr); 1 95 dcl expression_area area based (probe_info.expression_area_ptr); 1 96 1 97 /* END INCLUDE FILE probe_info.incl.pl1 */ 444 2 1 /* BEGIN INCLUDE FILE ... probe_source_info.incl.pl1 2 2* 2 3* James R. Davis 2 July 79 */ 2 4 2 5 dcl 1 source_info based aligned, 2 6 2 stmnt_map_entry_index fixed bin, /* index in stmnt map for this stmnt */ 2 7 2 instruction_ptr ptr, /* to last instruction executed */ 2 8 2 block_ptr ptr, /* to runtime_block node */ 2 9 2 stack_ptr ptr, /* to a stack frame */ 2 10 2 entry_ptr ptr, /* to entry seq. for this proc */ 2 11 2 seg_info_ptr ptr; /* to seg_info */ 2 12 2 13 dcl 1 current_source aligned like source_info based (probe_info.ptr_to_current_source); 2 14 dcl 1 initial_source aligned like source_info based (probe_info.ptr_to_initial_source); 2 15 2 16 /* END INCLUDE FILE ... probe_source_info.incl.pl1 */ 445 3 1 /* BEGIN INCLUDE FILE ... probe_seg_info.incl.pl1 3 2* 3 3* 25 June 79 JRDavis 3 4* 3 5* Modified 7 April 1983, TO - Add fields for character offset/line 3 6* correction per file. 3 7**/ 3 8 3 9 dcl 1 seg_info based aligned, /* place to remember information about object seg */ 3 10 2 language_type fixed bin, /* language of source program */ 3 11 2 bits aligned, 3 12 3 ignore_case bit (1) unal, 3 13 3 bound_segment bit (1) unaligned, 3 14 3 component bit (1) unaligned, 3 15 3 pad bit (33) unal, 3 16 2 names, /* where to find it */ 3 17 3 directory_name character (168) unal, /* what directory */ 3 18 3 entry_name character (32) unal, /* what segment */ 3 19 3 segname character (32) unal, /* procedure segname definition */ 3 20 2 identifier fixed bin (71), /* time of object creation */ 3 21 2 pointers, /* location of various parts of segment */ 3 22 3 symbol_header_ptr ptr unal, /* to symbol section */ 3 23 3 original_source_ptr ptr unal, /* to segment source map */ 3 24 3 statement_map_ptr ptr unal, /* to segment statement map */ 3 25 3 break_info ptr unal, /* for unbound segments, and start of chain for 3 26* bound ones, -> break_map !obsolete, I think! */ 3 27 3 chain ptr unal, /* to entry for next component if bound */ 3 28 3 linkage_ptr ptr unal, /* to linkage section */ 3 29 2 bounds aligned, /* structure of bounds information */ 3 30 3 text_bounds, 3 31 4 start fixed bin (35), 3 32 4 end fixed bin (35), 3 33 3 symbol_bounds, 3 34 4 start fixed bin (35), 3 35 4 end fixed bin (35), 3 36 2 map_size fixed bin, /* size of statement map */ 3 37 2 error_code fixed bin (35), /* errors encoutered while getting info, are recorded here */ 3 38 2 bound_create_time fixed bin (71), /* time seg containing was bound or compiled. */ 3 39 2 bound_sym_header ptr unal, /* to sym. section header for bound seg */ 3 40 2 pad (1) fixed bin (35), 3 41 3 42 2 nfiles fixed bin, 3 43 2 per_file (seg_info_nfiles refer (seg_info.nfiles)), 3 44 3 file_pointers ptr unal, 3 45 3 break_line (0:3) fixed bin (18) unsigned unaligned; 3 46 3 47 dcl seg_info_nfiles fixed bin; /* for allocation purposes */ 3 48 3 49 3 50 /* END INCLUDE FILE ... probe_seg_info.incl.pl1 */ 446 4 1 /* BEGIN INCLUDE FILE probe_tokens.incl.pl1 */ 4 2 /* Split up into probe_tokens and probe_references, 04/22/79 WOS */ 4 3 4 4 dcl 1 token_header aligned based, /* header information common to all tokens */ 4 5 2 next pointer unaligned, /* pointer to next token in chain */ 4 6 2 prev pointer unaligned, /* same for previous token */ 4 7 2 type bit (18) aligned, 4 8 2 buffer_ptr pointer unaligned, /* pointer to beginning of input buffer */ 4 9 2 location fixed bin (17) unal, /* offset in input buffer */ 4 10 2 length fixed bin (17) unal, 4 11 2 flags aligned, 4 12 (3 leading_whitespace, /* there is whitespace before thios token */ 4 13 3 trailing_whitespace) bit (1) unaligned, /* and same for after */ 4 14 3 pad1 bit (34) unaligned; 4 15 4 16 dcl 1 token aligned based, /* produced by scan_probe_input_ */ 4 17 2 header aligned like token_header; /* that's all there is */ 4 18 4 19 dcl 1 identifier aligned based, /* keyword or identifier token */ 4 20 2 header aligned like token_header, 4 21 2 length fixed bin, /* length of name */ 4 22 2 name pointer unaligned; /* to string in buffer containing name */ 4 23 4 24 dcl 1 operator aligned based, /* for punctuation */ 4 25 2 header aligned like token_header; /* nothing but a header here */ 4 26 4 27 dcl 1 constant aligned based, /* for strings pointers numbers etc */ 4 28 2 header aligned like token_header, 4 29 2 encoded_precision aligned, /* encoded precision kludge for assign_ */ 4 30 3 scale fixed bin (17) unaligned, /* arithmetic scale */ 4 31 3 precision fixed bin (17) unaligned, /* arithmetic precision or other size */ 4 32 2 scale_and_precision fixed bin (35), /* An identical copy of the two values above */ 4 33 2 data_type fixed bin, /* standard data type code + packed bit */ 4 34 2 data_ptr pointer unaligned; 4 35 4 36 4 37 dcl (OPERATOR_TYPE init ("100"b), /* types for above */ 4 38 NAME_TYPE init ("010"b), 4 39 CONSTANT_TYPE init ("001"b)) bit (18) internal static options (constant); 4 40 4 41 4 42 dcl current_identifier_name /* Overlays for looking at the current tokens */ 4 43 char (probe_info.ct -> identifier.length) based (probe_info.ct -> identifier.name); 4 44 dcl 1 current_constant aligned like constant based (probe_info.ct); 4 45 dcl 1 current_token aligned like token based (probe_info.ct); 4 46 4 47 /* END INCLUDE FILE probe_tokens.incl.pl1 */ 447 5 1 /* BEGIN INCLUDE FILE ... probe_operators.incl.pl1 */ 5 2 5 3 5 4 5 5 /****^ HISTORY COMMENTS: 5 6* 1) change(88-09-20,WAAnderson), approve(88-09-20,MCR7952), 5 7* audit(88-09-30,JRGray), install(88-10-24,MR12.2-1184): 5 8* Added new C operators. 5 9* END HISTORY COMMENTS */ 5 10 5 11 5 12 /* These are the operator.types for each defined operator */ 5 13 /* Modified June 83 JMAthane for PASCAL_ARROW new operator */ 5 14 /* Added PASCAL_RANGE and PASCAL_ASSIGN 07/26/83 S. Herbst */ 5 15 /* Modified April 88 Hinatsu Addition of C types */ 5 16 5 17 dcl (PLUS init ("400001"b3), MINUS init ("400002"b3), 5 18 TIMES init ("400003"b3), SLASH init ("400004"b3), 5 19 OR_BAR init ("400005"b3), NOT_SIGN init ("400006"b3), 5 20 LESS_THAN init ("400007"b3), GREATER_THAN init ("400010"b3), 5 21 EQUALS init ("400011"b3), NOT_EQUALS init ("400012"b3), 5 22 NOT_GREATER_THAN init ("400013"b3), NOT_LESS_THAN init ("400014"b3), 5 23 PERIOD init ("400015"b3), COLON init ("400016"b3), 5 24 AMPERSAND init ("400017"b3), PERCENT init ("400020"b3), 5 25 DOLLAR_SIGN init ("400021"b3), LEFT_BRACKET init ("400022"b3), 5 26 RIGHT_BRACKET init ("400023"b3), ARROW init ("400024"b3), 5 27 COMMA init ("400025"b3), QUESTION_MARK init ("400026"b3), 5 28 PASCAL_ARROW init ("400027"b3), PASCAL_RANGE init ("400030"b3), 5 29 PASCAL_ASSIGN init ("400031"b3), 5 30 5 31 /* Additons to support C types */ 5 32 C_LEFT_SHIFT init ("400032"b3), C_RIGHT_SHIFT init ("400033"b3), 5 33 5 34 /* operator 28 are left for future expansion */ 5 35 5 36 LEFT_PAREN init ("400035"b3), RIGHT_PAREN init ("400036"b3), 5 37 C_EQUAL init ("400037"b3), C_NOT_EQUAL init ("400040"b3), 5 38 SEMI_COLON init ("400041"b3), NEW_LINE init ("400042"b3), 5 39 C_INDIRECTION init ("400034"b3) 5 40 5 41 ) bit (18) aligned internal static options (constant); 5 42 5 43 dcl OPERATOR_VALUES (0:34) char (4) varying internal static options (constant) init 5 44 ("????", "+", "-", "*", "/", "|", "^", "<", 5 45 ">", "=", "^=", "<=", ">=", ".", ":", "&", 5 46 "%", "$", "[", "]", "->", ",", "?", "^", 5 47 "..", ":=", "<<", ">>", "*", "(", ")", 5 48 "==", "!=", ";"," 5 49 "); 5 50 5 51 /* END INCLUDE FILE ... probe_operators.incl.pl1 */ 448 6 1 /* BEGIN INCLUDE FILE probe_references.incl.pl1 */ 6 2 6 3 /****^ HISTORY COMMENTS: 6 4* 1) change(88-09-20,WAAnderson), approve(88-09-20,MCR7952), 6 5* audit(88-09-30,JRGray), install(88-10-24,MR12.2-1184): 6 6* Added new field (c_symbol) for C-Probe support. 6 7* 2) change(88-10-28,WAAnderson), approve(88-10-28,MCR7952), 6 8* audit(88-10-31,RWaters), install(88-11-11,MR12.2-1210): 6 9* Added new field (c_sub_c_ptr) for C-Probe_support. 6 10* END HISTORY COMMENTS */ 6 11 6 12 /* Split out of probe_tokens, 04/22/79 WOS */ 6 13 /* modified for probe variables Feb 19 80 JRD */ 6 14 /* Modified June 83 JMAthane to add "type_ptr" and "builtin" fields */ 6 15 6 16 dcl 1 reference_node aligned based, /* information about a reference */ 6 17 2 symbol_ptr pointer aligned, /* to symbol table entry for reference */ 6 18 2 type_ptr pointer aligned, /* to symbol table entry for type (null if none) */ 6 19 2 address_ptr pointer aligned, /* to location of variable */ 6 20 2 base_addr pointer aligned, /* pointer on which whole symbol is based */ 6 21 2 source_info_ptr pointer aligned, /* to symbol structure for reference */ 6 22 6 23 2 name char (256) unaligned varying, /* symbol name */ 6 24 6 25 2 type fixed bin (35), /* data type */ 6 26 2 descriptor fixed bin (35), /* type || packed */ 6 27 2 precision fixed bin (35), /* scale and precision */ 6 28 2 flags, 6 29 3 packed bit (1) unal, /* data is in packed format */ 6 30 3 constant bit (1) unal, /* data is really a constant */ 6 31 3 cross_section bit (1) unal, /* reference is an array cross-section */ 6 32 3 function bit (1) unal, /* reference is function value */ 6 33 3 octal bit (1) unal, /* indicates that this is the octal bif */ 6 34 3 star_extent bit (1) unal, /* reference is a star subscript for father */ 6 35 3 have_generation bit (1) unal, /* this reference has an explicitly specified generation */ 6 36 3 pseudo_var bit (1) unal, /* it is ok to assign to it */ 6 37 3 probe_variable bit (1) unal, 6 38 3 path bit (1) unal, /* it's a pathname/virtual entry */ 6 39 3 builtin bit (1) unal, /* probe builtinvalue */ 6 40 3 c_ptr_to_char bit (1) unal, 6 41 3 c_sub_c_ptr bit (1) unal, 6 42 3 pad2 bit (23) unal, 6 43 6 44 2 optional_info, /* information which may or may not be present */ 6 45 3 argument_list pointer unaligned, /* pointer to reference_arg_list */ 6 46 3 subscript_ptr pointer unaligned, /* pointer to reference_subscripts */ 6 47 3 n_arguments fixed bin, /* number of arguments in argument list */ 6 48 3 n_subscripts fixed bin, /* number of subscripts present */ 6 49 6 50 2 constant_token_ptr pointer unaligned, /* pointer to constant token if this is a constant */ 6 51 2 subscript_refs_ptr pointer unaligned, /* pointer to array of subscript reference node pointers */ 6 52 2 invocation_level fixed bin, /* invocation level number ("[-17]") for this reference */ 6 53 2 probe_var_info_ptr ptr unal, /* only if flags.probe_variable */ 6 54 2 c_symbol_ptr ptr unal, 6 55 2 pad1 (9) pointer unaligned, 6 56 2 end_of_reference_node pointer aligned; 6 57 6 58 6 59 dcl 1 reference_arg_list aligned based, /* argument list; based on reference.argument_list */ 6 60 2 number fixed bin, /* number of arguments actually present */ 6 61 2 node (16) pointer aligned; /* reference node pointers for each argument */ 6 62 6 63 6 64 dcl 1 reference_subscripts aligned based, /* subscript array; based on reference.subscript_ptr */ 6 65 2 number fixed bin, /* number actually present */ 6 66 2 value (2, 16) fixed bin (24); /* values for lower and upper bound for each */ 6 67 6 68 6 69 dcl 1 subscript_reference_ptrs aligned based, /* array of pointers to subscript reference nodes */ 6 70 2 ptr (2, 16) pointer aligned; 6 71 6 72 /* END INCLUDE FILE probe_references.incl.pl1 */ 449 450 7 1 /* --------------- BEGIN include file status_structures.incl.pl1 --------------- */ 7 2 7 3 /* Revised from existing include files 09/26/78 by C. D. Tavares */ 7 4 7 5 /* This include file contains branch and link structures returned by 7 6* hcs_$status_ and hcs_$status_long. */ 7 7 7 8 dcl 1 status_branch aligned based (status_ptr), 7 9 2 short aligned, 7 10 3 type fixed bin (2) unaligned unsigned, /* seg, dir, or link */ 7 11 3 nnames fixed bin (16) unaligned unsigned, /* number of names */ 7 12 3 names_relp bit (18) unaligned, /* see entry_names dcl */ 7 13 3 dtcm bit (36) unaligned, /* date/time contents last modified */ 7 14 3 dtu bit (36) unaligned, /* date/time last used */ 7 15 3 mode bit (5) unaligned, /* caller's effective access */ 7 16 3 raw_mode bit (5) unaligned, /* caller's raw "rew" modes */ 7 17 3 pad1 bit (8) unaligned, 7 18 3 records_used fixed bin (18) unaligned unsigned, /* number of NONZERO pages used */ 7 19 7 20 /* Limit of information returned by hcs_$status_ */ 7 21 7 22 2 long aligned, 7 23 3 dtd bit (36) unaligned, /* date/time last dumped */ 7 24 3 dtem bit (36) unaligned, /* date/time branch last modified */ 7 25 3 lvid bit (36) unaligned, /* logical volume ID */ 7 26 3 current_length fixed bin (12) unaligned unsigned, /* number of last page used */ 7 27 3 bit_count fixed bin (24) unaligned unsigned, /* reported length in bits */ 7 28 3 pad2 bit (8) unaligned, 7 29 3 copy_switch bit (1) unaligned, /* copy switch */ 7 30 3 tpd_switch bit (1) unaligned, /* transparent to paging device switch */ 7 31 3 mdir_switch bit (1) unaligned, /* is a master dir */ 7 32 3 damaged_switch bit (1) unaligned, /* salvager warned of possible damage */ 7 33 3 synchronized_switch bit (1) unaligned, /* DM synchronized file */ 7 34 3 pad3 bit (5) unaligned, 7 35 3 ring_brackets (0:2) fixed bin (6) unaligned unsigned, 7 36 3 uid bit (36) unaligned; /* unique ID */ 7 37 7 38 dcl 1 status_link aligned based (status_ptr), 7 39 2 type fixed bin (2) unaligned unsigned, /* as above */ 7 40 2 nnames fixed bin (16) unaligned unsigned, 7 41 2 names_relp bit (18) unaligned, 7 42 2 dtem bit (36) unaligned, 7 43 2 dtd bit (36) unaligned, 7 44 2 pathname_length fixed bin (17) unaligned, /* see pathname */ 7 45 2 pathname_relp bit (18) unaligned; /* see pathname */ 7 46 7 47 dcl status_entry_names (status_branch.nnames) character (32) aligned 7 48 based (pointer (status_area_ptr, status_branch.names_relp)), 7 49 /* array of names returned */ 7 50 status_pathname character (status_link.pathname_length) aligned 7 51 based (pointer (status_area_ptr, status_link.pathname_relp)), 7 52 /* link target path */ 7 53 status_area_ptr pointer, 7 54 status_ptr pointer; 7 55 7 56 dcl (Link initial (0), 7 57 Segment initial (1), 7 58 Directory initial (2)) fixed bin internal static options (constant); 7 59 /* values for type fields declared above */ 7 60 7 61 /* ---------------- END include file status_structures.incl.pl1 ---------------- */ 451 8 1 /* BEGIN INCLUDE FILE ... data_type_info_.incl.pl1 8 2* 8 3* attributes of each Multics data type. You may not rely on the dimension never exceeding 64 8 4* James R. Davis 6 Apr 79 8 5* Modified JMAthane June 83 to add "type" bit field 8 6* Upped bound from 64 to 80 10/18/83 S. Herbst 8 7* Added "hex" and "generic" bits 01/23/84 S. Herbst 8 8* Upped bound from 80 to 86 01/81/84 R. Gray 8 9* Upper bound from 86 to 87 JMAthane (for Pascal strings type dtype) 8 10**/ 8 11 8 12 8 13 /****^ HISTORY COMMENTS: 8 14* 1) change(86-09-05,JMAthane), approve(86-09-05,MCR7525), 8 15* audit(86-09-11,Martinson), install(86-11-12,MR12.0-1208): 8 16* The data_type_info array now has 87 entries instead of 86 due to 8 17* introduction of pascal_string_type_dtype. 8 18* END HISTORY COMMENTS */ 8 19 8 20 dcl data_type_info_$version_number fixed bin external static; 8 21 dcl data_type_info_this_version fixed bin internal static options (constant) init (1); 8 22 8 23 dcl 1 data_type_info_$info (87) aligned external static, 8 24 2 computational bit (1) unal, 8 25 2 arithmetic bit (1) unal, 8 26 2 arithmetic_attributes unal, /* only valid if arithmetic */ 8 27 3 fixed bit (1) unal, /* PL/I type */ 8 28 3 complex bit (1) unal, /* PL/I mode */ 8 29 3 decimal bit (1) unal, /* PL/I base */ 8 30 3 signed bit (1) unal, 8 31 3 trailing_sign bit (1) unal, /* only valid if signed */ 8 32 3 decimal_attributes unal, /* only valid if decimal */ 8 33 4 packed_dec bit (1) unal, /* 4 bits per digit or 9 */ 8 34 4 digit_aligned bit (1) unal, /* valid for packed_dec only */ 8 35 4 overpunched bit (1) unal, 8 36 2 char_string bit (1) unal, /* valid for non-arithmetic */ 8 37 2 bit_string bit (1) unal, /* valid for non-arithmetic */ 8 38 2 varying bit (1) unal, /* for bit or char only */ 8 39 2 type bit (1) unal, /* this symbol is a type */ 8 40 2 hex bit (1) unal, /* a hexadecimal type (eg., hex floating point) */ 8 41 2 generic bit (1) unal, /* eg., real_flt_dec_generic_dtype */ 8 42 2 pad bit (20) unal; 8 43 8 44 dcl data_type_info_$ninebit_sign_chars char (2) external static; 8 45 dcl data_type_info_$ninebit_digit_chars char (10) external static; 8 46 dcl data_type_info_$ninebit_overpunched_sign_chars char (22) external static; 8 47 8 48 dcl data_type_info_$max_decimal_precision fixed bin external static; 8 49 dcl data_type_info_$max_float_binary_precision fixed bin external static; 8 50 dcl data_type_info_$max_fixed_binary_precision fixed bin external static; 8 51 8 52 8 53 /* END INCLUDE FILE ... data_type_info_.incl.pl1 */ 452 9 1 /* BEGIN INCLUDE FILE ... std_descriptor_types.incl.pl1 */ 9 2 9 3 9 4 /****^ HISTORY COMMENTS: 9 5* 1) change(86-09-05,JMAthane), approve(86-09-05,MCR7525), 9 6* audit(86-09-11,Martinson), install(86-11-12,MR12.0-1208): 9 7* Added pascal_string_type_dtype descriptor type. Its number is 87. 9 8* Objects of this type are PASCAL string types. 9 9* 2) change(88-09-20,WAAnderson), approve(88-09-20,MCR7952), 9 10* audit(88-09-30,JRGray), install(88-10-24,MR12.2-1184): 9 11* Added the new C types. 9 12* END HISTORY COMMENTS */ 9 13 9 14 /* This include file defines mnemonic names for the Multics 9 15* standard descriptor types, using both pl1 and cobol terminology. 9 16* PG 780613 9 17* JRD 790530 9 18* JRD 791016 9 19* MBW 810731 9 20* TGO 830614 Add hex types. 9 21* Modified June 83 JMAthane to add PASCAL data types 9 22* TGO 840120 Add float dec extended and generic, float binary generic 9 23**/ 9 24 9 25 dcl (real_fix_bin_1_dtype init (1), 9 26 real_fix_bin_2_dtype init (2), 9 27 real_flt_bin_1_dtype init (3), 9 28 real_flt_bin_2_dtype init (4), 9 29 cplx_fix_bin_1_dtype init (5), 9 30 cplx_fix_bin_2_dtype init (6), 9 31 cplx_flt_bin_1_dtype init (7), 9 32 cplx_flt_bin_2_dtype init (8), 9 33 real_fix_dec_9bit_ls_dtype init (9), 9 34 real_flt_dec_9bit_dtype init (10), 9 35 cplx_fix_dec_9bit_ls_dtype init (11), 9 36 cplx_flt_dec_9bit_dtype init (12), 9 37 pointer_dtype init (13), 9 38 offset_dtype init (14), 9 39 label_dtype init (15), 9 40 entry_dtype init (16), 9 41 structure_dtype init (17), 9 42 area_dtype init (18), 9 43 bit_dtype init (19), 9 44 varying_bit_dtype init (20), 9 45 char_dtype init (21), 9 46 varying_char_dtype init (22), 9 47 file_dtype init (23), 9 48 real_fix_dec_9bit_ls_overp_dtype init (29), 9 49 real_fix_dec_9bit_ts_overp_dtype init (30), 9 50 real_fix_bin_1_uns_dtype init (33), 9 51 real_fix_bin_2_uns_dtype init (34), 9 52 real_fix_dec_9bit_uns_dtype init (35), 9 53 real_fix_dec_9bit_ts_dtype init (36), 9 54 real_fix_dec_4bit_uns_dtype init (38), /* digit-aligned */ 9 55 real_fix_dec_4bit_ts_dtype init (39), /* byte-aligned */ 9 56 real_fix_dec_4bit_bytealigned_uns_dtype init (40), /* COBOL */ 9 57 real_fix_dec_4bit_ls_dtype init (41), /* digit-aligned */ 9 58 real_flt_dec_4bit_dtype init (42), /* digit-aligned */ 9 59 real_fix_dec_4bit_bytealigned_ls_dtype init (43), 9 60 real_flt_dec_4bit_bytealigned_dtype init (44), 9 61 cplx_fix_dec_4bit_bytealigned_ls_dtype init (45), 9 62 cplx_flt_dec_4bit_bytealigned_dtype init (46), 9 63 real_flt_hex_1_dtype init (47), 9 64 real_flt_hex_2_dtype init (48), 9 65 cplx_flt_hex_1_dtype init (49), 9 66 cplx_flt_hex_2_dtype init (50), 9 67 c_typeref_dtype init (54), 9 68 c_enum_dtype init (55), 9 69 c_enum_const_dtype init (56), 9 70 c_union_dtype init (57), 9 71 algol68_straight_dtype init (59), 9 72 algol68_format_dtype init (60), 9 73 algol68_array_descriptor_dtype init (61), 9 74 algol68_union_dtype init (62), 9 75 9 76 cobol_comp_6_dtype init (1), 9 77 cobol_comp_7_dtype init (1), 9 78 cobol_display_ls_dtype init (9), 9 79 cobol_structure_dtype init (17), 9 80 cobol_char_string_dtype init (21), 9 81 cobol_display_ls_overp_dtype init (29), 9 82 cobol_display_ts_overp_dtype init (30), 9 83 cobol_display_uns_dtype init (35), 9 84 cobol_display_ts_dtype init (36), 9 85 cobol_comp_8_uns_dtype init (38), /* digit aligned */ 9 86 cobol_comp_5_ts_dtype init (39), /* byte aligned */ 9 87 cobol_comp_5_uns_dtype init (40), 9 88 cobol_comp_8_ls_dtype init (41), /* digit aligned */ 9 89 real_flt_dec_extended_dtype init (81), /* 9-bit exponent */ 9 90 cplx_flt_dec_extended_dtype init (82), /* 9-bit exponent */ 9 91 real_flt_dec_generic_dtype init (83), /* generic float decimal */ 9 92 cplx_flt_dec_generic_dtype init (84), 9 93 real_flt_bin_generic_dtype init (85), /* generic float binary */ 9 94 cplx_flt_bin_generic_dtype init (86)) fixed bin internal static options (constant); 9 95 9 96 dcl (ft_integer_dtype init (1), 9 97 ft_real_dtype init (3), 9 98 ft_double_dtype init (4), 9 99 ft_complex_dtype init (7), 9 100 ft_complex_double_dtype init (8), 9 101 ft_external_dtype init (16), 9 102 ft_logical_dtype init (19), 9 103 ft_char_dtype init (21), 9 104 ft_hex_real_dtype init (47), 9 105 ft_hex_double_dtype init (48), 9 106 ft_hex_complex_dtype init (49), 9 107 ft_hex_complex_double_dtype init (50) 9 108 ) fixed bin internal static options (constant); 9 109 9 110 dcl (algol68_short_int_dtype init (1), 9 111 algol68_int_dtype init (1), 9 112 algol68_long_int_dtype init (2), 9 113 algol68_real_dtype init (3), 9 114 algol68_long_real_dtype init (4), 9 115 algol68_compl_dtype init (7), 9 116 algol68_long_compl_dtype init (8), 9 117 algol68_bits_dtype init (19), 9 118 algol68_bool_dtype init (19), 9 119 algol68_char_dtype init (21), 9 120 algol68_byte_dtype init (21), 9 121 algol68_struct_struct_char_dtype init (22), 9 122 algol68_struct_struct_bool_dtype init (20) 9 123 ) fixed bin internal static options (constant); 9 124 9 125 dcl (label_constant_runtime_dtype init (24), 9 126 int_entry_runtime_dtype init (25), 9 127 ext_entry_runtime_dtype init (26), 9 128 ext_procedure_runtime_dtype init (27), 9 129 picture_runtime_dtype init (63) 9 130 ) fixed bin internal static options (constant); 9 131 9 132 dcl (pascal_integer_dtype init (1), 9 133 pascal_real_dtype init (4), 9 134 pascal_label_dtype init (24), 9 135 pascal_internal_procedure_dtype init (25), 9 136 pascal_exportable_procedure_dtype init (26), 9 137 pascal_imported_procedure_dtype init (27), 9 138 pascal_typed_pointer_type_dtype init (64), 9 139 pascal_char_dtype init (65), 9 140 pascal_boolean_dtype init (66), 9 141 pascal_record_file_type_dtype init (67), 9 142 pascal_record_type_dtype init (68), 9 143 pascal_set_dtype init (69), 9 144 pascal_enumerated_type_dtype init (70), 9 145 pascal_enumerated_type_element_dtype init (71), 9 146 pascal_enumerated_type_instance_dtype init (72), 9 147 pascal_user_defined_type_dtype init (73), 9 148 pascal_user_defined_type_instance_dtype init (74), 9 149 pascal_text_file_dtype init (75), 9 150 pascal_procedure_type_dtype init (76), 9 151 pascal_variable_formal_parameter_dtype init (77), 9 152 pascal_value_formal_parameter_dtype init (78), 9 153 pascal_entry_formal_parameter_dtype init (79), 9 154 pascal_parameter_procedure_dtype init (80), 9 155 pascal_string_type_dtype init (87)) fixed bin int static options (constant); 9 156 9 157 9 158 /* END INCLUDE FILE ... std_descriptor_types.incl.pl1 */ 453 454 end probe_get_misc_; SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 11/11/88 1544.3 probe_get_misc_.pl1 >spec>install>MR12.2-1210>probe_get_misc_.pl1 444 1 10/27/88 1339.2 probe_info.incl.pl1 >ldd>include>probe_info.incl.pl1 445 2 11/26/79 1320.6 probe_source_info.incl.pl1 >ldd>include>probe_source_info.incl.pl1 446 3 11/02/83 1845.0 probe_seg_info.incl.pl1 >ldd>include>probe_seg_info.incl.pl1 447 4 11/26/79 1320.6 probe_tokens.incl.pl1 >ldd>include>probe_tokens.incl.pl1 448 5 10/26/88 1255.5 probe_operators.incl.pl1 >ldd>include>probe_operators.incl.pl1 449 6 11/11/88 1543.8 probe_references.incl.pl1 >spec>install>MR12.2-1210>probe_references.incl.pl1 451 7 11/22/82 0955.7 status_structures.incl.pl1 >ldd>include>status_structures.incl.pl1 452 8 11/12/86 1748.0 data_type_info_.incl.pl1 >ldd>include>data_type_info_.incl.pl1 453 9 10/26/88 1255.5 std_descriptor_types.incl.pl1 >ldd>include>std_descriptor_types.incl.pl1 NAMES DECLARED IN THIS COMPILATION. IDENTIFIER OFFSET LOC STORAGE CLASS DATA TYPE ATTRIBUTES AND REFERENCES (* indicates a set context) NAMES DECLARED BY DECLARE STATEMENT. COMMA constant bit(18) initial dcl 5-17 ref 437 CONSTANT_TYPE constant bit(18) initial packed unaligned dcl 4-37 ref 123 DOLLAR_SIGN constant bit(18) initial dcl 5-17 ref 435 GREATER_THAN constant bit(18) initial dcl 5-17 ref 403 LEFT_PAREN constant bit(18) initial dcl 5-17 ref 280 304 LESS_THAN constant bit(18) initial dcl 5-17 ref 391 MINUS constant bit(18) initial dcl 5-17 ref 176 NAME_TYPE constant bit(18) initial packed unaligned dcl 4-37 ref 176 429 PERIOD constant bit(18) initial dcl 5-17 ref 433 P_code parameter fixed bin(35,0) dcl 46 set ref 96* 100 141* 146 164 186* 191 205* 216* 221 236* 251* 256 332* 335 P_control_arg parameter varying char(64) dcl 46 set ref 164 175* 182* P_decimal parameter fixed bin(35,0) dcl 46 set ref 221 248* P_integer parameter fixed bin(35,0) dcl 46 set ref 191 214* 221 246* 247 P_iocb_ptr parameter pointer dcl 46 set ref 100 115* 141* P_line_lth parameter fixed bin(21,0) dcl 46 set ref 256 327* P_line_ptr parameter pointer dcl 46 set ref 256 328* P_pathname parameter varying char dcl 46 set ref 146 158* P_probe_info_ptr parameter pointer dcl 46 ref 100 111 146 153 164 170 191 197 221 230 256 270 335 352 P_source_info_ptr parameter pointer dcl 46 ref 335 362 RIGHT_PAREN constant bit(18) initial dcl 5-17 ref 283 308 SLASH constant bit(18) initial dcl 5-17 ref 431 addr builtin function dcl 80 ref 210 210 240 240 328 assign_ 000012 constant entry external dcl 64 ref 210 240 based_str based char(256) packed unaligned dcl 267 set ref 328 buffer_ptr 3 based pointer level 3 packed packed unaligned dcl 4-16 ref 328 char_dtype constant fixed bin(17,0) initial dcl 9-25 ref 124 code parameter fixed bin(35,0) dcl 384 in procedure "get_pathname" set ref 378 389* 396* 397 407* 408 code 000102 automatic fixed bin(35,0) dcl 59 in procedure "probe_get_misc_" set ref 84* 89* 96 112* 119* 131* 132 154* 158* 159 171* 198* 231* 271* 290* 296* 309* 323* 353* 356* 357 362* 364 code parameter fixed bin(35,0) dcl 422 in procedure "get_entryname" set ref 418 426* computational 000036 external static bit(1) array level 2 packed packed unaligned dcl 8-23 ref 202 233 constant based structure level 1 dcl 4-27 constant_string based char packed unaligned dcl 61 ref 124 ct 13 based pointer level 3 packed packed unaligned dcl 1-18 set ref 93* 114 117 123 124 124 124 139 156 173 176 176 182 182 200 202 210 210 210 233 240 240 240 248 273 278 280 283 289 301 354 374* 374 391* 391 391* 394 403 405* 405 427* 427 427* 429 429 429 431 433 435 437* 441 current_identifier_name based char packed unaligned dcl 4-42 ref 182 429 data_ptr 11 based pointer level 2 packed packed unaligned dcl 4-27 ref 124 210 240 data_type 10 based fixed bin(17,0) level 2 dcl 4-27 ref 124 202 210 233 240 data_type_info_$info 000036 external static structure array level 1 dcl 8-23 dec builtin function dcl 80 ref 247 divide builtin function dcl 80 ref 202 233 ename parameter varying char(32) dcl 421 set ref 418 425* 429* 429 431* 431 433* 433 435* 435 437* 437 encoded_precision 6 based structure level 2 dcl 4-27 end_token 14 based bit(18) level 3 dcl 1-18 ref 117 139 278 execute 64 based bit(1) level 3 packed packed unaligned dcl 1-18 ref 361 fb35_temp 000114 automatic fixed bin(35,0) dcl 194 set ref 210 210 214 fdec_temp 000116 automatic fixed dec(6,3) dcl 227 set ref 240 240 246 247* 247 248 first_time 000124 automatic bit(1) dcl 264 set ref 276* 278 286* first_token 000122 automatic pointer dcl 262 set ref 300* 304 306* 306 317 328 328 fixed builtin function dcl 80 ref 248 flags 64 based structure level 2 dcl 1-18 header based structure level 2 in structure "token" dcl 4-16 in procedure "probe_get_misc_" header based structure level 2 in structure "operator" dcl 4-24 in procedure "probe_get_misc_" identifier based structure level 1 dcl 4-19 iox_$find_iocb 000032 constant entry external dcl 108 ref 141 last_token 000120 automatic pointer dcl 262 set ref 301* 308 313* 313 317 length 6 based fixed bin(17,0) level 2 dcl 4-19 ref 182 429 line_lth 000126 automatic fixed bin(21,0) dcl 266 set ref 317* 320* 320 322 327 location 4 based fixed bin(17,0) level 3 packed packed unaligned dcl 4-16 ref 317 317 328 name 7 based pointer level 2 packed packed unaligned dcl 4-19 ref 182 429 next based pointer level 3 packed packed unaligned dcl 4-16 ref 176 306 317 374 394 405 441 null builtin function dcl 80 ref 115 289 427 obj_pathname 000127 automatic varying char(168) dcl 346 set ref 356* 362 old_ct 000100 automatic pointer dcl 58 set ref 93 114* 156* 173* 200* 273* 300 354* operator based structure level 1 dcl 4-24 paren_level 000125 automatic fixed bin(17,0) dcl 265 set ref 277* 278 280* 280 283* 283 295 path parameter varying char dcl 383 set ref 378 388* 393* 393 401* 401 404* 404 411* 411 path_entry 000222 automatic varying char(32) dcl 385 set ref 396* 401 407* 411 precision 6(18) based fixed bin(17,0) level 3 packed packed unaligned dcl 4-27 ref 124 prev 1 based pointer level 3 packed packed unaligned dcl 4-16 ref 301 313 probe_error_$malfunction 000030 constant entry external dcl 77 ref 28 probe_et_$bad_expression 000016 external static fixed bin(35,0) dcl 67 ref 236 probe_et_$bad_integer 000022 external static fixed bin(35,0) dcl 67 ref 205 probe_et_$noarg 000014 external static fixed bin(35,0) dcl 67 ref 119 probe_et_$recorded_message 000024 external static fixed bin(35,0) dcl 67 ref 89 probe_et_$syntax_error 000026 external static fixed bin(35,0) dcl 67 ref 84 309 323 probe_et_$unbalanced_parens 000020 external static fixed bin(35,0) dcl 67 ref 290 296 probe_find_procedure_ 000034 constant entry external dcl 348 ref 362 probe_info based structure level 1 dcl 1-18 probe_info_ptr 000202 automatic pointer dcl 1-86 set ref 93 111* 114 117 117 123 124 124 124 139 139 153* 156 170* 173 176 176 182 182 197* 200 202 210 210 210 230* 233 240 240 240 248 270* 273 278 278 280 283 289 301 352* 354 361 362* 374 374 391 391 391 394 403 405 405 427 427 427 429 429 429 431 433 435 437 441 real_fix_dec_9bit_ls_dtype constant fixed bin(17,0) initial dcl 9-25 ref 240 scale 6 based fixed bin(17,0) level 3 packed packed unaligned dcl 4-27 ref 248 scale_and_precision 7 based fixed bin(35,0) level 2 dcl 4-27 set ref 210* 240* source_info based structure level 1 dcl 2-5 substr builtin function dcl 80 ref 328 switchname 000103 automatic varying char(32) dcl 106 set ref 124* 131* 136 141 token based structure level 1 dcl 4-16 token_header based structure level 1 dcl 4-4 token_info 12 based structure level 2 dcl 1-18 type 2 based bit(18) level 3 in structure "operator" dcl 4-24 in procedure "probe_get_misc_" ref 304 431 433 435 437 type 2 based bit(18) level 3 in structure "token" dcl 4-16 in procedure "probe_get_misc_" ref 117 123 139 176 176 278 280 283 308 391 403 429 NAMES DECLARED BY DECLARE STATEMENT AND NEVER REFERENCED. AMPERSAND internal static bit(18) initial dcl 5-17 ARROW internal static bit(18) initial dcl 5-17 COLON internal static bit(18) initial dcl 5-17 C_EQUAL internal static bit(18) initial dcl 5-17 C_INDIRECTION internal static bit(18) initial dcl 5-17 C_LEFT_SHIFT internal static bit(18) initial dcl 5-17 C_NOT_EQUAL internal static bit(18) initial dcl 5-17 C_RIGHT_SHIFT internal static bit(18) initial dcl 5-17 Directory internal static fixed bin(17,0) initial dcl 7-56 EQUALS internal static bit(18) initial dcl 5-17 LEFT_BRACKET internal static bit(18) initial dcl 5-17 Link internal static fixed bin(17,0) initial dcl 7-56 NEW_LINE internal static bit(18) initial dcl 5-17 NOT_EQUALS internal static bit(18) initial dcl 5-17 NOT_GREATER_THAN internal static bit(18) initial dcl 5-17 NOT_LESS_THAN internal static bit(18) initial dcl 5-17 NOT_SIGN internal static bit(18) initial dcl 5-17 OPERATOR_TYPE internal static bit(18) initial packed unaligned dcl 4-37 OPERATOR_VALUES internal static varying char(4) initial array dcl 5-43 OR_BAR internal static bit(18) initial dcl 5-17 PASCAL_ARROW internal static bit(18) initial dcl 5-17 PASCAL_ASSIGN internal static bit(18) initial dcl 5-17 PASCAL_RANGE internal static bit(18) initial dcl 5-17 PERCENT internal static bit(18) initial dcl 5-17 PLUS internal static bit(18) initial dcl 5-17 QUESTION_MARK internal static bit(18) initial dcl 5-17 RIGHT_BRACKET internal static bit(18) initial dcl 5-17 SEMI_COLON internal static bit(18) initial dcl 5-17 Segment internal static fixed bin(17,0) initial dcl 7-56 TIMES internal static bit(18) initial dcl 5-17 algol68_array_descriptor_dtype internal static fixed bin(17,0) initial dcl 9-25 algol68_bits_dtype internal static fixed bin(17,0) initial dcl 9-110 algol68_bool_dtype internal static fixed bin(17,0) initial dcl 9-110 algol68_byte_dtype internal static fixed bin(17,0) initial dcl 9-110 algol68_char_dtype internal static fixed bin(17,0) initial dcl 9-110 algol68_compl_dtype internal static fixed bin(17,0) initial dcl 9-110 algol68_format_dtype internal static fixed bin(17,0) initial dcl 9-25 algol68_int_dtype internal static fixed bin(17,0) initial dcl 9-110 algol68_long_compl_dtype internal static fixed bin(17,0) initial dcl 9-110 algol68_long_int_dtype internal static fixed bin(17,0) initial dcl 9-110 algol68_long_real_dtype internal static fixed bin(17,0) initial dcl 9-110 algol68_real_dtype internal static fixed bin(17,0) initial dcl 9-110 algol68_short_int_dtype internal static fixed bin(17,0) initial dcl 9-110 algol68_straight_dtype internal static fixed bin(17,0) initial dcl 9-25 algol68_struct_struct_bool_dtype internal static fixed bin(17,0) initial dcl 9-110 algol68_struct_struct_char_dtype internal static fixed bin(17,0) initial dcl 9-110 algol68_union_dtype internal static fixed bin(17,0) initial dcl 9-25 area_dtype internal static fixed bin(17,0) initial dcl 9-25 bit_dtype internal static fixed bin(17,0) initial dcl 9-25 c_enum_const_dtype internal static fixed bin(17,0) initial dcl 9-25 c_enum_dtype internal static fixed bin(17,0) initial dcl 9-25 c_typeref_dtype internal static fixed bin(17,0) initial dcl 9-25 c_union_dtype internal static fixed bin(17,0) initial dcl 9-25 cobol_char_string_dtype internal static fixed bin(17,0) initial dcl 9-25 cobol_comp_5_ts_dtype internal static fixed bin(17,0) initial dcl 9-25 cobol_comp_5_uns_dtype internal static fixed bin(17,0) initial dcl 9-25 cobol_comp_6_dtype internal static fixed bin(17,0) initial dcl 9-25 cobol_comp_7_dtype internal static fixed bin(17,0) initial dcl 9-25 cobol_comp_8_ls_dtype internal static fixed bin(17,0) initial dcl 9-25 cobol_comp_8_uns_dtype internal static fixed bin(17,0) initial dcl 9-25 cobol_display_ls_dtype internal static fixed bin(17,0) initial dcl 9-25 cobol_display_ls_overp_dtype internal static fixed bin(17,0) initial dcl 9-25 cobol_display_ts_dtype internal static fixed bin(17,0) initial dcl 9-25 cobol_display_ts_overp_dtype internal static fixed bin(17,0) initial dcl 9-25 cobol_display_uns_dtype internal static fixed bin(17,0) initial dcl 9-25 cobol_structure_dtype internal static fixed bin(17,0) initial dcl 9-25 cplx_fix_bin_1_dtype internal static fixed bin(17,0) initial dcl 9-25 cplx_fix_bin_2_dtype internal static fixed bin(17,0) initial dcl 9-25 cplx_fix_dec_4bit_bytealigned_ls_dtype internal static fixed bin(17,0) initial dcl 9-25 cplx_fix_dec_9bit_ls_dtype internal static fixed bin(17,0) initial dcl 9-25 cplx_flt_bin_1_dtype internal static fixed bin(17,0) initial dcl 9-25 cplx_flt_bin_2_dtype internal static fixed bin(17,0) initial dcl 9-25 cplx_flt_bin_generic_dtype internal static fixed bin(17,0) initial dcl 9-25 cplx_flt_dec_4bit_bytealigned_dtype internal static fixed bin(17,0) initial dcl 9-25 cplx_flt_dec_9bit_dtype internal static fixed bin(17,0) initial dcl 9-25 cplx_flt_dec_extended_dtype internal static fixed bin(17,0) initial dcl 9-25 cplx_flt_dec_generic_dtype internal static fixed bin(17,0) initial dcl 9-25 cplx_flt_hex_1_dtype internal static fixed bin(17,0) initial dcl 9-25 cplx_flt_hex_2_dtype internal static fixed bin(17,0) initial dcl 9-25 current_constant based structure level 1 dcl 4-44 current_source based structure level 1 dcl 2-13 current_token based structure level 1 dcl 4-45 data_type_info_$max_decimal_precision external static fixed bin(17,0) dcl 8-48 data_type_info_$max_fixed_binary_precision external static fixed bin(17,0) dcl 8-50 data_type_info_$max_float_binary_precision external static fixed bin(17,0) dcl 8-49 data_type_info_$ninebit_digit_chars external static char(10) packed unaligned dcl 8-45 data_type_info_$ninebit_overpunched_sign_chars external static char(22) packed unaligned dcl 8-46 data_type_info_$ninebit_sign_chars external static char(2) packed unaligned dcl 8-44 data_type_info_$version_number external static fixed bin(17,0) dcl 8-20 data_type_info_this_version internal static fixed bin(17,0) initial dcl 8-21 entry_dtype internal static fixed bin(17,0) initial dcl 9-25 expression_area based area(1024) dcl 1-95 ext_entry_runtime_dtype internal static fixed bin(17,0) initial dcl 9-125 ext_procedure_runtime_dtype internal static fixed bin(17,0) initial dcl 9-125 file_dtype internal static fixed bin(17,0) initial dcl 9-25 ft_char_dtype internal static fixed bin(17,0) initial dcl 9-96 ft_complex_double_dtype internal static fixed bin(17,0) initial dcl 9-96 ft_complex_dtype internal static fixed bin(17,0) initial dcl 9-96 ft_double_dtype internal static fixed bin(17,0) initial dcl 9-96 ft_external_dtype internal static fixed bin(17,0) initial dcl 9-96 ft_hex_complex_double_dtype internal static fixed bin(17,0) initial dcl 9-96 ft_hex_complex_dtype internal static fixed bin(17,0) initial dcl 9-96 ft_hex_double_dtype internal static fixed bin(17,0) initial dcl 9-96 ft_hex_real_dtype internal static fixed bin(17,0) initial dcl 9-96 ft_integer_dtype internal static fixed bin(17,0) initial dcl 9-96 ft_logical_dtype internal static fixed bin(17,0) initial dcl 9-96 ft_real_dtype internal static fixed bin(17,0) initial dcl 9-96 initial_source based structure level 1 dcl 2-14 int_entry_runtime_dtype internal static fixed bin(17,0) initial dcl 9-125 label_constant_runtime_dtype internal static fixed bin(17,0) initial dcl 9-125 label_dtype internal static fixed bin(17,0) initial dcl 9-25 offset_dtype internal static fixed bin(17,0) initial dcl 9-25 pascal_boolean_dtype internal static fixed bin(17,0) initial dcl 9-132 pascal_char_dtype internal static fixed bin(17,0) initial dcl 9-132 pascal_entry_formal_parameter_dtype internal static fixed bin(17,0) initial dcl 9-132 pascal_enumerated_type_dtype internal static fixed bin(17,0) initial dcl 9-132 pascal_enumerated_type_element_dtype internal static fixed bin(17,0) initial dcl 9-132 pascal_enumerated_type_instance_dtype internal static fixed bin(17,0) initial dcl 9-132 pascal_exportable_procedure_dtype internal static fixed bin(17,0) initial dcl 9-132 pascal_imported_procedure_dtype internal static fixed bin(17,0) initial dcl 9-132 pascal_integer_dtype internal static fixed bin(17,0) initial dcl 9-132 pascal_internal_procedure_dtype internal static fixed bin(17,0) initial dcl 9-132 pascal_label_dtype internal static fixed bin(17,0) initial dcl 9-132 pascal_parameter_procedure_dtype internal static fixed bin(17,0) initial dcl 9-132 pascal_procedure_type_dtype internal static fixed bin(17,0) initial dcl 9-132 pascal_real_dtype internal static fixed bin(17,0) initial dcl 9-132 pascal_record_file_type_dtype internal static fixed bin(17,0) initial dcl 9-132 pascal_record_type_dtype internal static fixed bin(17,0) initial dcl 9-132 pascal_set_dtype internal static fixed bin(17,0) initial dcl 9-132 pascal_string_type_dtype internal static fixed bin(17,0) initial dcl 9-132 pascal_text_file_dtype internal static fixed bin(17,0) initial dcl 9-132 pascal_typed_pointer_type_dtype internal static fixed bin(17,0) initial dcl 9-132 pascal_user_defined_type_dtype internal static fixed bin(17,0) initial dcl 9-132 pascal_user_defined_type_instance_dtype internal static fixed bin(17,0) initial dcl 9-132 pascal_value_formal_parameter_dtype internal static fixed bin(17,0) initial dcl 9-132 pascal_variable_formal_parameter_dtype internal static fixed bin(17,0) initial dcl 9-132 picture_runtime_dtype internal static fixed bin(17,0) initial dcl 9-125 pointer_dtype internal static fixed bin(17,0) initial dcl 9-25 probe_area based area(1024) dcl 1-93 probe_info_version internal static fixed bin(17,0) initial dcl 1-88 probe_info_version_1 internal static fixed bin(17,0) initial dcl 1-90 real_fix_bin_1_dtype internal static fixed bin(17,0) initial dcl 9-25 real_fix_bin_1_uns_dtype internal static fixed bin(17,0) initial dcl 9-25 real_fix_bin_2_dtype internal static fixed bin(17,0) initial dcl 9-25 real_fix_bin_2_uns_dtype internal static fixed bin(17,0) initial dcl 9-25 real_fix_dec_4bit_bytealigned_ls_dtype internal static fixed bin(17,0) initial dcl 9-25 real_fix_dec_4bit_bytealigned_uns_dtype internal static fixed bin(17,0) initial dcl 9-25 real_fix_dec_4bit_ls_dtype internal static fixed bin(17,0) initial dcl 9-25 real_fix_dec_4bit_ts_dtype internal static fixed bin(17,0) initial dcl 9-25 real_fix_dec_4bit_uns_dtype internal static fixed bin(17,0) initial dcl 9-25 real_fix_dec_9bit_ls_overp_dtype internal static fixed bin(17,0) initial dcl 9-25 real_fix_dec_9bit_ts_dtype internal static fixed bin(17,0) initial dcl 9-25 real_fix_dec_9bit_ts_overp_dtype internal static fixed bin(17,0) initial dcl 9-25 real_fix_dec_9bit_uns_dtype internal static fixed bin(17,0) initial dcl 9-25 real_flt_bin_1_dtype internal static fixed bin(17,0) initial dcl 9-25 real_flt_bin_2_dtype internal static fixed bin(17,0) initial dcl 9-25 real_flt_bin_generic_dtype internal static fixed bin(17,0) initial dcl 9-25 real_flt_dec_4bit_bytealigned_dtype internal static fixed bin(17,0) initial dcl 9-25 real_flt_dec_4bit_dtype internal static fixed bin(17,0) initial dcl 9-25 real_flt_dec_9bit_dtype internal static fixed bin(17,0) initial dcl 9-25 real_flt_dec_extended_dtype internal static fixed bin(17,0) initial dcl 9-25 real_flt_dec_generic_dtype internal static fixed bin(17,0) initial dcl 9-25 real_flt_hex_1_dtype internal static fixed bin(17,0) initial dcl 9-25 real_flt_hex_2_dtype internal static fixed bin(17,0) initial dcl 9-25 reference_arg_list based structure level 1 dcl 6-59 reference_node based structure level 1 dcl 6-16 reference_subscripts based structure level 1 dcl 6-64 scratch_area based area(1024) dcl 1-92 seg_info based structure level 1 dcl 3-9 seg_info_nfiles automatic fixed bin(17,0) dcl 3-47 status_area_ptr automatic pointer dcl 7-47 status_branch based structure level 1 dcl 7-8 status_entry_names based char(32) array dcl 7-47 status_link based structure level 1 dcl 7-38 status_pathname based char dcl 7-47 status_ptr automatic pointer dcl 7-47 structure_dtype internal static fixed bin(17,0) initial dcl 9-25 subscript_reference_ptrs based structure level 1 dcl 6-69 varying_bit_dtype internal static fixed bin(17,0) initial dcl 9-25 varying_char_dtype internal static fixed bin(17,0) initial dcl 9-25 work_area based area(1024) dcl 1-94 NAMES DECLARED BY EXPLICIT CONTEXT. MAIN_RETURN 000044 constant label dcl 96 ref 161 367 RECORDED_MESSAGE 000035 constant label dcl 89 SOME_ERROR 000041 constant label dcl 93 ref 86 91 120 132 159 291 297 310 324 364 SYNTAX_ERROR 000031 constant label dcl 84 ref 124 136 139 bump_ct 001056 constant entry internal dcl 372 ref 181 183 215 250 288 control_arg 000256 constant entry external dcl 164 decimal 000434 constant entry external dcl 221 get_entryname 001237 constant entry internal dcl 418 ref 131 396 407 get_pathname 001065 constant entry internal dcl 378 ref 158 356 integer 000334 constant entry external dcl 191 io_switch 000053 constant entry external dcl 100 object 000754 constant entry external dcl 335 pathname 000205 constant entry external dcl 146 probe_get_misc_ 000017 constant entry external dcl 25 request_list 000604 constant entry external dcl 256 THERE WERE NO NAMES DECLARED BY CONTEXT OR IMPLICATION. STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 1652 1712 1420 1662 Length 2320 1420 40 372 231 0 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME probe_get_misc_ 258 external procedure is an external procedure. bump_ct internal procedure shares stack frame of external procedure probe_get_misc_. get_pathname internal procedure shares stack frame of external procedure probe_get_misc_. get_entryname internal procedure shares stack frame of external procedure probe_get_misc_. STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME probe_get_misc_ 000100 old_ct probe_get_misc_ 000102 code probe_get_misc_ 000103 switchname probe_get_misc_ 000114 fb35_temp probe_get_misc_ 000116 fdec_temp probe_get_misc_ 000120 last_token probe_get_misc_ 000122 first_token probe_get_misc_ 000124 first_time probe_get_misc_ 000125 paren_level probe_get_misc_ 000126 line_lth probe_get_misc_ 000127 obj_pathname probe_get_misc_ 000202 probe_info_ptr probe_get_misc_ 000222 path_entry get_pathname THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. alloc_char_temp call_ext_out_desc call_ext_out return_mac shorten_stack ext_entry ext_entry_desc THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. assign_ decimal_exp_ iox_$find_iocb probe_error_$malfunction probe_find_procedure_ THE FOLLOWING EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. data_type_info_$info probe_et_$bad_expression probe_et_$bad_integer probe_et_$noarg probe_et_$recorded_message probe_et_$syntax_error probe_et_$unbalanced_parens LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC 25 000016 28 000024 29 000030 84 000031 86 000034 89 000035 91 000040 93 000041 96 000044 98 000046 100 000047 111 000063 112 000067 114 000070 115 000072 117 000074 119 000101 120 000104 123 000105 124 000107 128 000125 131 000126 132 000130 136 000132 139 000137 141 000145 142 000177 146 000201 153 000223 154 000227 156 000230 158 000232 159 000247 161 000251 164 000252 170 000266 171 000272 173 000273 175 000275 176 000277 181 000307 182 000310 183 000325 186 000326 187 000327 191 000330 197 000344 198 000350 200 000351 202 000353 205 000364 206 000366 210 000367 214 000421 215 000424 216 000425 217 000426 221 000427 230 000444 231 000450 233 000451 236 000462 237 000464 240 000465 246 000517 247 000527 248 000535 250 000574 251 000575 252 000576 256 000577 270 000614 271 000620 273 000621 276 000623 277 000625 278 000626 280 000641 283 000646 286 000652 288 000653 289 000654 290 000660 291 000663 293 000664 295 000665 296 000667 297 000672 300 000673 301 000675 304 000677 306 000703 308 000705 309 000710 310 000713 313 000714 317 000716 320 000730 322 000732 323 000734 324 000737 327 000740 328 000742 332 000750 333 000751 335 000752 352 000764 353 000770 354 000771 356 000773 357 000776 361 001000 362 001004 364 001052 367 001055 372 001056 374 001057 375 001064 378 001065 388 001076 389 001101 391 001102 393 001116 394 001127 396 001133 397 001144 401 001150 403 001163 404 001172 405 001203 407 001206 408 001216 411 001222 412 001235 414 001236 418 001237 425 001241 426 001243 427 001244 429 001256 431 001301 433 001316 435 001332 437 001346 439 001362 441 001363 442 001367 ----------------------------------------------------------- Historical Background This edition of the Multics software materials and documentation is provided and donated to Massachusetts Institute of Technology by Group BULL including BULL HN Information Systems Inc. as a contribution to computer science knowledge. This donation is made also to give evidence of the common contributions of Massachusetts Institute of Technology, Bell Laboratories, General Electric, Honeywell Information Systems Inc., Honeywell BULL Inc., Groupe BULL and BULL HN Information Systems Inc. to the development of this operating system. Multics development was initiated by Massachusetts Institute of Technology Project MAC (1963-1970), renamed the MIT Laboratory for Computer Science and Artificial Intelligence in the mid 1970s, under the leadership of Professor Fernando Jose Corbato. Users consider that Multics provided the best software architecture for managing computer hardware properly and for executing programs. Many subsequent operating systems incorporated Multics principles. Multics was distributed in 1975 to 2000 by Group Bull in Europe , and in the U.S. by Bull HN Information Systems Inc., as successor in interest by change in name only to Honeywell Bull Inc. and Honeywell Information Systems Inc. . ----------------------------------------------------------- Permission to use, copy, modify, and distribute these programs and their documentation for any purpose and without fee is hereby granted,provided that the below copyright notice and historical background appear in all copies and that both the copyright notice and historical background and this permission notice appear in supporting documentation, and that the names of MIT, HIS, BULL or BULL HN not be used in advertising or publicity pertaining to distribution of the programs without specific prior written permission. Copyright 1972 by Massachusetts Institute of Technology and Honeywell Information Systems Inc. Copyright 2006 by BULL HN Information Systems Inc. Copyright 2006 by Bull SAS All Rights Reserved