COMPILATION LISTING OF SEGMENT pl1_macro_error_ Compiled by: Multics PL/I Compiler, Release 29, of July 28, 1986 Compiled at: Honeywell Bull, Phoenix AZ, SysM Compiled on: 12/01/87 1554.3 mst Tue Options: optimize map 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 11 /* format: style2 */ 12 pl1_macro_error_: 13 procedure (P_error_severity, P_error_string, P_source_ptr, P_source_index, P_source_length); 14 15 declare P_error_severity fixed binary (35); /* (Input) error_severity of the error */ 16 declare P_error_string char (*); /* (Input) error message */ 17 declare P_source_ptr pointer; /* (Input) pointer to the source */ 18 declare P_source_index fixed binary (21); /* INPUT: char index where error occured */ 19 declare P_source_length fixed binary (21); /* INPUT: length in chars of source segment */ 20 /* automatic */ 21 22 declare line_length fixed binary (21); 23 declare line_number fixed binary (21); 24 declare line_start fixed binary (21); 25 26 declare loop bit (1); /* based */ 27 28 declare source_string char (P_source_length) based (P_source_ptr); 29 30 /* builtin */ 31 32 declare index builtin; 33 declare length builtin; 34 declare max builtin; 35 declare null builtin; 36 declare substr builtin; 37 38 /* internal static */ 39 40 declare NL char (1) internal static options (constant) initial (" 41 "); 42 43 /* entry */ 44 45 declare ioa_ entry options (variable); 46 1 1 /* Begin include file pl1_macro_lex_dcls.incl.pl1 */ 1 2 1 3 1 4 /****^ HISTORY COMMENTS: 1 5* 1) change(87-05-11,Huen), approve(87-05-11,MCR7675), 1 6* audit(87-05-11,RWaters), install(87-12-01,MR12.2-1005): 1 7* Fix PL/1 bug2163 : Speeding up the macro processing. 1 8* END HISTORY COMMENTS */ 1 9 1 10 /* format: style2 */ 1 11 1 12 /* Created Dec 80 M E Presser 1 13* Modified 1 14* 11 May 87 - SH, speeding up the macro processing 1 15* 3 August 81 - MEP redefined token 1 16* 18 May 81 - MEP, redefined token, temp_seg_3, and token types 1 17**/ 1 18 1 19 /* automatic */ 1 20 1 21 declare temp_segs (5) pointer; 1 22 1 23 /* use of temp_segs: 1 24* 1. tokens in pl1_macro_lex_ 1 25* 2. output_string 1 26* 3. job information 1 27* 4. listing and cross_ref 1 28* 5. Unused just now 1 29**/ 1 30 /* area */ 1 31 1 32 declare area area based (temp_seg_3.area_ptr); 1 33 1 34 /* based */ 1 35 1 36 declare 1 atoken aligned based, 1 37 2 string_size fixed binary (21) unaligned, 1 38 /* length of token string */ 1 39 2 created bit (1) unaligned, /* "1" iff created by pl1_macro */ 1 40 2 pct_type fixed binary (5) unsigned unaligned, 1 41 2 type fixed binary (8) unsigned unaligned, 1 42 /* token_type */ 1 43 2 replace_by fixed binary, /* index of replacement value, if any */ 1 44 2 string_ptr unaligned pointer; /* pointer to start of token */ 1 45 1 46 declare 1 token (divide (sys_info$max_seg_size, size (atoken), 19)) aligned based (temp_segs (1)) 1 47 like atoken; 1 48 1 49 /* builtin */ 1 50 1 51 declare size builtin; 1 52 1 53 /* structure for command line args */ 1 54 1 55 declare 1 args aligned based, 1 56 2 string_size fixed binary (21), 1 57 2 string_ptr unaligned pointer; 1 58 1 59 /* structure for command line parameter control arg arguments */ 1 60 1 61 declare 1 params aligned based, 1 62 2 name aligned like args, 1 63 2 value aligned like token; 1 64 1 65 /* temp_seg_3 is used for general storage of system wide information */ 1 66 1 67 declare 1 temp_seg_3 aligned based (temp_segs (3)), 1 68 2 area_ptr pointer, /* base of area */ 1 69 2 source_ptr pointer, /* ptr to source seg */ 1 70 2 source_length fixed binary (21), /* lenght (chars) of source */ 1 71 2 output_length fixed binary (21), /* length (chars) of output */ 1 72 2 constant_base pointer, /* start of chain of constant nodes */ 1 73 2 variable_base pointer, /* start of chain of variable nodes */ 1 74 2 source_depth fixed binary, /* depth of file_macro_stack */ 1 75 2 file_stack_ptr pointer, /* ptr -> file_macro_stack */ 1 76 2 flags unaligned, 1 77 3 list bit (1), /* if .maclist to be made */ 1 78 3 pad1 bit (35), 1 79 2 target_value fixed binary (17), /* as returned by system_type_ */ 1 80 2 number_of_clargs fixed binary, 1 81 2 number_of_params fixed binary, 1 82 2 cl_args (64) aligned like args, 1 83 2 cl_params (64) aligned like params; 1 84 1 85 1 86 declare output_string char (4 * sys_info$max_seg_size) based (temp_segs (2)); 1 87 1 88 /* variable node */ 1 89 1 90 declare 1 variable aligned based, 1 91 2 next pointer unaligned, /* next alloc in chain */ 1 92 2 nextv pointer unaligned, /* next var in hash chain */ 1 93 2 alias_id fixed binary (17) unaligned, 1 94 /* index into token chain */ 1 95 2 variable_type fixed binary unaligned, /* default, replace or set type */ 1 96 2 name_length fixed binary (17) unaligned, 1 97 2 name character (variable_name_length refer (variable.name_length)); 1 98 1 99 declare variable_name_length fixed binary; 1 100 1 101 /* constant node */ 1 102 1 103 declare 1 constant aligned based, 1 104 2 next pointer, /* next in chain */ 1 105 2 string_length fixed binary (21), 1 106 2 string_value character (constant_length refer (constant.string_length)); 1 107 1 108 declare constant_length fixed binary (21); 1 109 1 110 /* token types */ 1 111 1 112 declare ( 1 113 no_token initial (0), 1 114 invalid_char initial (1), 1 115 identifier initial (2), 1 116 keyword_token initial (3), 1 117 isub initial (4), 1 118 plus initial (5), 1 119 minus initial (6), 1 120 asterisk initial (7), 1 121 slash initial (8), 1 122 expon initial (9), 1 123 not initial (10), 1 124 and initial (11), 1 125 or initial (12), 1 126 cat initial (13), 1 127 eq initial (14), 1 128 ne initial (15), 1 129 lt initial (16), 1 130 gt initial (17), 1 131 le initial (18), 1 132 ge initial (19), 1 133 ngt initial (20), 1 134 nlt initial (21), 1 135 prefix_plus initial (22), 1 136 prefix_minus initial (23), 1 137 assignment initial (24), 1 138 colon initial (25), 1 139 semi_colon initial (26), 1 140 comma initial (27), 1 141 period initial (28), 1 142 arrow initial (29), 1 143 left_parn initial (30), 1 144 right_parn initial (31), 1 145 percent initial (32), 1 146 target_comma initial (33), 1 147 comment_token initial (34), 1 148 nl_vt_np_token initial (35), 1 149 bit_string initial (36), 1 150 char_string initial (37), 1 151 fixed_bin initial (38), 1 152 bin_integer initial (39), 1 153 fixed_dec initial (40), 1 154 dec_integer initial (41), 1 155 float_bin initial (42), 1 156 token_hole_1 initial (43), 1 157 float_dec initial (44), 1 158 token_hole_2 initial (45), 1 159 i_fixed_bin initial (46), 1 160 i_bin_integer initial (47), 1 161 i_fixed_dec initial (48), 1 162 i_dec_integer initial (49), 1 163 i_float_bin initial (50), 1 164 token_hole_3 initial (51), 1 165 i_float_dec initial (52), 1 166 token_hole_4 initial (53), 1 167 white_space_token initial (54) 1 168 ) fixed binary (8) unsigned internal static options (constant); 1 169 1 170 /* token class limits */ 1 171 1 172 declare ( 1 173 min_delimiter_token initial (5), 1 174 max_delimiter_token initial (35), 1 175 min_constant_token initial (36), 1 176 max_constant_token initial (53), 1 177 min_arithmetic_token initial (38), 1 178 max_arithmetic_token initial (53) 1 179 ) fixed binary (8) unsigned internal static options (constant); 1 180 1 181 /* arithmetic token type masks */ 1 182 1 183 declare ( 1 184 is_imaginary_constant initial ("1000"b), 1 185 is_float_constant initial ("0100"b), 1 186 is_decimal_constant initial ("0010"b), 1 187 is_integral_constant initial ("0001"b) 1 188 ) bit (4) aligned internal static options (constant); 1 189 1 190 /* valid keyword following a percent_sign and their attributes */ 1 191 1 192 /* format: off */ 1 193 1 194 declare 1 pct_keywords (19) aligned structure internal static options (constant), 1 195 2 name character (8) varying 1 196 initial( 1 197 "page", "skip", "replace", "default", "target", "isarg", "isdef", 1 198 "include","if", "then", "else", "elseif", "endif", "print", 1 199 "error", "warn", "abort", "INCLUDE", "set"), 1 200 1 201 2 terminator fixed binary (17) unaligned /* refer to macro stack types */ 1 202 initial( 1 203 3, 3, 3, 3, 1, 1, 1, 1 204 3, 2, 2, 2, 2, 2, 3, 1 205 3, 3, 3, 3, 3), 1 206 1 207 2 needs_reinterpreation bit (1) unaligned 1 208 initial( 1 209 "0"b, "0"b, "1"b, "1"b, "1"b, "1"b, "1"b, 1 210 "0"b, "1"b, "1"b, "1"b, "1"b, "1"b, "1"b, 1 211 "1"b, "1"b, "1"b, "1"b, "1"b), 1 212 1 213 2 m_index fixed binary (17) unaligned 1 214 initial( 1 215 2, 3, 4, 1, 7, 8, 6, 1 216 15, 9, 10, 11, 12, 13, 16, 1 217 5, 17, 18, 14, 19); 1 218 1 219 /* format: on */ 1 220 1 221 /* pct_types */ 1 222 1 223 declare ( 1 224 pct_default initial (1), 1 225 pct_page initial (2), 1 226 pct_skip initial (3), 1 227 pct_replace initial (4), 1 228 pct_error initial (5), 1 229 pct_isdef initial (6), 1 230 pct_target initial (7), 1 231 pct_isarg initial (8), 1 232 pct_if initial (9), 1 233 pct_then initial (10), 1 234 pct_else initial (11), 1 235 pct_elseif initial (12), 1 236 pct_endif initial (13), 1 237 pct_INCLUDE initial (14), 1 238 pct_include initial (15), 1 239 pct_print initial (16), 1 240 pct_warn initial (17), 1 241 pct_abort initial (18), 1 242 pct_set initial (19) 1 243 ) fixed binary internal static options (constant); 1 244 1 245 /* variable types - in which statement type they were first declared */ 1 246 1 247 declare ( 1 248 replace_var initial (1), 1 249 default_var initial (2), 1 250 set_var initial (3), 1 251 parameter_var initial (4) 1 252 ) fixed binary internal static options (constant); 1 253 1 254 /* macro stack types */ 1 255 1 256 declare ( 1 257 paren_macro initial (1), 1 258 if_macro initial (2), 1 259 semicolon_macro initial (3), 1 260 reinterpret_macro initial (4) 1 261 ) fixed binary internal static options (constant); 1 262 1 263 /* lexical limits */ 1 264 1 265 declare ( 1 266 max_bit_string_constant 1 267 initial (253), 1 268 max_char_string_constant 1 269 initial (254), 1 270 max_identifier_length initial (256) 1 271 ) fixed binary internal static options (constant); 1 272 1 273 1 274 /* external static */ 1 275 1 276 declare pl1_macro_severity_ fixed binary (35) external static; 1 277 declare sys_info$max_seg_size fixed binary (19) external static; 1 278 1 279 /* entry */ 1 280 1 281 declare pl1_macro_error_ entry (fixed binary (35), char (*), pointer, fixed binary (21), fixed binary (21)); 1 282 declare pl1_macro_lex_ entry ((*) pointer, fixed binary (35)); 1 283 declare pl1_macro_lex_$cleanup entry ((*) pointer); 1 284 declare system_type_ entry (char (*), char (*), fixed binary (17), fixed binary (35)); 1 285 1 286 /* constants mostly used by lex */ 1 287 1 288 declare arithchar char (28) internal static options (constant) 1 289 initial ("0123456789(=^=<=>=+-*/) ."" 1 290 "); 1 291 declare alphabetics char (52) internal static options (constant) 1 292 initial ("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"); 1 293 1 294 declare numerals char (10) internal static options (constant) initial ("0123456789"); 1 295 1 296 declare identifier_chars char (64) internal static options (constant) 1 297 initial ("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_$"); 1 298 1 299 declare lower_case_letters char (26) internal static options (constant) initial ("abcdefghijklmnopqrstuvwxyz"); 1 300 declare upper_case_letters char (26) internal static options (constant) initial ("ABCDEFGHIJKLMNOPQRSTUVWXYZ"); 1 301 1 302 declare zero_one char (2) internal static options (constant) initial ("01"); 1 303 declare QUOTE char (1) internal static options (constant) initial (""""); 1 304 declare QUOTEQUOTE char (2) internal static options (constant) initial (""""""); 1 305 1 306 /* miscellaneous constants */ 1 307 1 308 declare none fixed binary internal static options (constant) initial (0); 1 309 1 310 declare macro_version character (5) internal static options (constant) initial (" 2.0 "); 1 311 declare command character (9) internal static options (constant) initial ("pl1_macro"); 1 312 1 313 /* error codes */ 1 314 1 315 declare NO_RESULT fixed binary (35) internal static options (constant) initial (1); 1 316 declare COMPILER_ERROR fixed binary (35) internal static options (constant) initial (2); 1 317 declare SYNTAX_ERROR fixed binary (35) internal static options (constant) initial (3); 1 318 declare SEMANTIC_ERROR fixed binary (35) internal static options (constant) initial (4); 1 319 declare STORAGE_SYSTEM_ERROR fixed binary (35) internal static options (constant) initial (5); 1 320 declare IMPLEMENTATION_RESTRICTION 1 321 fixed binary (35) internal static options (constant) initial (6); 1 322 declare TARGET_STRING_ERROR fixed binary (35) internal static options (constant) initial (7); 1 323 2 1 /* BEGIN INCLUDE FILE ... system_types.incl.pl1 ... 03/23/81 ... W. Olin Sibert */ 2 2 2 3 dcl L68_SYSTEM fixed bin (17) internal static options (constant) init (1); 2 4 dcl ADP_SYSTEM fixed bin (17) internal static options (constant) init (2); 2 5 2 6 dcl SYSTEM_TYPE_NAME (2) char (8) internal static options (constant) init 2 7 ("Level68", "ADP"); 2 8 2 9 /* END INCLUDE FILE ... system_types.incl.pl1 */ 1 324 1 325 1 326 /* END INCLUDE FILE . . . pl1_macro_lex_dcls.incl. */ 47 48 49 /* program */ 50 51 pl1_macro_severity_ = max (P_error_severity, pl1_macro_severity_); 52 53 line_number = 0; 54 55 /* find the line in the source, if there is one */ 56 57 if P_source_ptr ^= null () 58 then do; 59 60 line_start = 1; 61 line_length = 0; 62 63 loop = "1"b; 64 do while (loop); 65 line_number = line_number + 1; 66 line_start = line_start + line_length; 67 line_length = index (substr (source_string, line_start), NL); 68 69 loop = line_start + line_length <= P_source_index & line_length > 0; 70 71 if line_length = 0 72 then line_length = length (substr (source_string, line_start)) + 1; 73 end; 74 end; 75 76 /* Print the error message. */ 77 78 call ioa_ ("^/^[WARNING^s^;SEVERITY ^d ERROR^]^[^s^; ON LINE ^d^]", P_error_severity = 1, P_error_severity, 79 line_number = 0, line_number); 80 81 if P_error_string ^= "" 82 then call ioa_ ("^a", P_error_string); 83 84 if line_number > 0 85 then call ioa_ ("SOURCE:^-^a", substr (source_string, line_start, line_length - 1)); 86 end pl1_macro_error_; SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 12/01/87 1554.3 pl1_macro_error_.pl1 >spec>install>MR12.2-1005>pl1_macro_error_.pl1 47 1 12/01/87 1552.3 pl1_macro_lex_dcls.incl.pl1 >spec>install>MR12.2-1005>pl1_macro_lex_dcls.incl.pl1 1-324 2 06/19/81 2115.0 system_types.incl.pl1 >ldd>include>system_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. NL constant char(1) initial unaligned dcl 40 ref 67 P_error_severity parameter fixed bin(35,0) dcl 15 set ref 12 51 78 78* P_error_string parameter char unaligned dcl 16 set ref 12 81 81* P_source_index parameter fixed bin(21,0) dcl 18 ref 12 69 P_source_length parameter fixed bin(21,0) dcl 19 ref 12 67 71 84 84 P_source_ptr parameter pointer dcl 17 ref 12 57 67 71 84 84 args based structure level 1 dcl 1-55 atoken based structure level 1 dcl 1-36 index builtin function dcl 32 ref 67 ioa_ 000010 constant entry external dcl 45 ref 78 81 84 length builtin function dcl 33 ref 71 line_length 000100 automatic fixed bin(21,0) dcl 22 set ref 61* 66 67* 69 69 71 71* 84 84 line_number 000101 automatic fixed bin(21,0) dcl 23 set ref 53* 65* 65 78 78* 84 line_start 000102 automatic fixed bin(21,0) dcl 24 set ref 60* 66* 66 67 69 71 84 84 loop 000103 automatic bit(1) unaligned dcl 26 set ref 63* 64 69* max builtin function dcl 34 ref 51 null builtin function dcl 35 ref 57 params based structure level 1 dcl 1-61 pl1_macro_severity_ 000012 external static fixed bin(35,0) dcl 1-276 set ref 51* 51 source_string based char unaligned dcl 28 ref 67 71 84 84 substr builtin function dcl 36 ref 67 71 84 84 token based structure array level 1 dcl 1-46 NAMES DECLARED BY DECLARE STATEMENT AND NEVER REFERENCED. ADP_SYSTEM internal static fixed bin(17,0) initial dcl 2-4 COMPILER_ERROR internal static fixed bin(35,0) initial dcl 1-316 IMPLEMENTATION_RESTRICTION internal static fixed bin(35,0) initial dcl 1-320 L68_SYSTEM internal static fixed bin(17,0) initial dcl 2-3 NO_RESULT internal static fixed bin(35,0) initial dcl 1-315 QUOTE internal static char(1) initial unaligned dcl 1-303 QUOTEQUOTE internal static char(2) initial unaligned dcl 1-304 SEMANTIC_ERROR internal static fixed bin(35,0) initial dcl 1-318 STORAGE_SYSTEM_ERROR internal static fixed bin(35,0) initial dcl 1-319 SYNTAX_ERROR internal static fixed bin(35,0) initial dcl 1-317 SYSTEM_TYPE_NAME internal static char(8) initial array unaligned dcl 2-6 TARGET_STRING_ERROR internal static fixed bin(35,0) initial dcl 1-322 alphabetics internal static char(52) initial unaligned dcl 1-291 and internal static fixed bin(8,0) initial unsigned dcl 1-112 area based area(1024) dcl 1-32 arithchar internal static char(28) initial unaligned dcl 1-288 arrow internal static fixed bin(8,0) initial unsigned dcl 1-112 assignment internal static fixed bin(8,0) initial unsigned dcl 1-112 asterisk internal static fixed bin(8,0) initial unsigned dcl 1-112 bin_integer internal static fixed bin(8,0) initial unsigned dcl 1-112 bit_string internal static fixed bin(8,0) initial unsigned dcl 1-112 cat internal static fixed bin(8,0) initial unsigned dcl 1-112 char_string internal static fixed bin(8,0) initial unsigned dcl 1-112 colon internal static fixed bin(8,0) initial unsigned dcl 1-112 comma internal static fixed bin(8,0) initial unsigned dcl 1-112 command internal static char(9) initial unaligned dcl 1-311 comment_token internal static fixed bin(8,0) initial unsigned dcl 1-112 constant based structure level 1 dcl 1-103 constant_length automatic fixed bin(21,0) dcl 1-108 dec_integer internal static fixed bin(8,0) initial unsigned dcl 1-112 default_var internal static fixed bin(17,0) initial dcl 1-247 eq internal static fixed bin(8,0) initial unsigned dcl 1-112 expon internal static fixed bin(8,0) initial unsigned dcl 1-112 fixed_bin internal static fixed bin(8,0) initial unsigned dcl 1-112 fixed_dec internal static fixed bin(8,0) initial unsigned dcl 1-112 float_bin internal static fixed bin(8,0) initial unsigned dcl 1-112 float_dec internal static fixed bin(8,0) initial unsigned dcl 1-112 ge internal static fixed bin(8,0) initial unsigned dcl 1-112 gt internal static fixed bin(8,0) initial unsigned dcl 1-112 i_bin_integer internal static fixed bin(8,0) initial unsigned dcl 1-112 i_dec_integer internal static fixed bin(8,0) initial unsigned dcl 1-112 i_fixed_bin internal static fixed bin(8,0) initial unsigned dcl 1-112 i_fixed_dec internal static fixed bin(8,0) initial unsigned dcl 1-112 i_float_bin internal static fixed bin(8,0) initial unsigned dcl 1-112 i_float_dec internal static fixed bin(8,0) initial unsigned dcl 1-112 identifier internal static fixed bin(8,0) initial unsigned dcl 1-112 identifier_chars internal static char(64) initial unaligned dcl 1-296 if_macro internal static fixed bin(17,0) initial dcl 1-256 invalid_char internal static fixed bin(8,0) initial unsigned dcl 1-112 is_decimal_constant internal static bit(4) initial dcl 1-183 is_float_constant internal static bit(4) initial dcl 1-183 is_imaginary_constant internal static bit(4) initial dcl 1-183 is_integral_constant internal static bit(4) initial dcl 1-183 isub internal static fixed bin(8,0) initial unsigned dcl 1-112 keyword_token internal static fixed bin(8,0) initial unsigned dcl 1-112 le internal static fixed bin(8,0) initial unsigned dcl 1-112 left_parn internal static fixed bin(8,0) initial unsigned dcl 1-112 lower_case_letters internal static char(26) initial unaligned dcl 1-299 lt internal static fixed bin(8,0) initial unsigned dcl 1-112 macro_version internal static char(5) initial unaligned dcl 1-310 max_arithmetic_token internal static fixed bin(8,0) initial unsigned dcl 1-172 max_bit_string_constant internal static fixed bin(17,0) initial dcl 1-265 max_char_string_constant internal static fixed bin(17,0) initial dcl 1-265 max_constant_token internal static fixed bin(8,0) initial unsigned dcl 1-172 max_delimiter_token internal static fixed bin(8,0) initial unsigned dcl 1-172 max_identifier_length internal static fixed bin(17,0) initial dcl 1-265 min_arithmetic_token internal static fixed bin(8,0) initial unsigned dcl 1-172 min_constant_token internal static fixed bin(8,0) initial unsigned dcl 1-172 min_delimiter_token internal static fixed bin(8,0) initial unsigned dcl 1-172 minus internal static fixed bin(8,0) initial unsigned dcl 1-112 ne internal static fixed bin(8,0) initial unsigned dcl 1-112 ngt internal static fixed bin(8,0) initial unsigned dcl 1-112 nl_vt_np_token internal static fixed bin(8,0) initial unsigned dcl 1-112 nlt internal static fixed bin(8,0) initial unsigned dcl 1-112 no_token internal static fixed bin(8,0) initial unsigned dcl 1-112 none internal static fixed bin(17,0) initial dcl 1-308 not internal static fixed bin(8,0) initial unsigned dcl 1-112 numerals internal static char(10) initial unaligned dcl 1-294 or internal static fixed bin(8,0) initial unsigned dcl 1-112 output_string based char unaligned dcl 1-86 parameter_var internal static fixed bin(17,0) initial dcl 1-247 paren_macro internal static fixed bin(17,0) initial dcl 1-256 pct_INCLUDE internal static fixed bin(17,0) initial dcl 1-223 pct_abort internal static fixed bin(17,0) initial dcl 1-223 pct_default internal static fixed bin(17,0) initial dcl 1-223 pct_else internal static fixed bin(17,0) initial dcl 1-223 pct_elseif internal static fixed bin(17,0) initial dcl 1-223 pct_endif internal static fixed bin(17,0) initial dcl 1-223 pct_error internal static fixed bin(17,0) initial dcl 1-223 pct_if internal static fixed bin(17,0) initial dcl 1-223 pct_include internal static fixed bin(17,0) initial dcl 1-223 pct_isarg internal static fixed bin(17,0) initial dcl 1-223 pct_isdef internal static fixed bin(17,0) initial dcl 1-223 pct_keywords internal static structure array level 1 dcl 1-194 pct_page internal static fixed bin(17,0) initial dcl 1-223 pct_print internal static fixed bin(17,0) initial dcl 1-223 pct_replace internal static fixed bin(17,0) initial dcl 1-223 pct_set internal static fixed bin(17,0) initial dcl 1-223 pct_skip internal static fixed bin(17,0) initial dcl 1-223 pct_target internal static fixed bin(17,0) initial dcl 1-223 pct_then internal static fixed bin(17,0) initial dcl 1-223 pct_warn internal static fixed bin(17,0) initial dcl 1-223 percent internal static fixed bin(8,0) initial unsigned dcl 1-112 period internal static fixed bin(8,0) initial unsigned dcl 1-112 pl1_macro_error_ 000000 constant entry external dcl 1-281 pl1_macro_lex_ 000000 constant entry external dcl 1-282 pl1_macro_lex_$cleanup 000000 constant entry external dcl 1-283 plus internal static fixed bin(8,0) initial unsigned dcl 1-112 prefix_minus internal static fixed bin(8,0) initial unsigned dcl 1-112 prefix_plus internal static fixed bin(8,0) initial unsigned dcl 1-112 reinterpret_macro internal static fixed bin(17,0) initial dcl 1-256 replace_var internal static fixed bin(17,0) initial dcl 1-247 right_parn internal static fixed bin(8,0) initial unsigned dcl 1-112 semi_colon internal static fixed bin(8,0) initial unsigned dcl 1-112 semicolon_macro internal static fixed bin(17,0) initial dcl 1-256 set_var internal static fixed bin(17,0) initial dcl 1-247 size builtin function dcl 1-51 slash internal static fixed bin(8,0) initial unsigned dcl 1-112 sys_info$max_seg_size external static fixed bin(19,0) dcl 1-277 system_type_ 000000 constant entry external dcl 1-284 target_comma internal static fixed bin(8,0) initial unsigned dcl 1-112 temp_seg_3 based structure level 1 dcl 1-67 temp_segs automatic pointer array dcl 1-21 token_hole_1 internal static fixed bin(8,0) initial unsigned dcl 1-112 token_hole_2 internal static fixed bin(8,0) initial unsigned dcl 1-112 token_hole_3 internal static fixed bin(8,0) initial unsigned dcl 1-112 token_hole_4 internal static fixed bin(8,0) initial unsigned dcl 1-112 upper_case_letters internal static char(26) initial unaligned dcl 1-300 variable based structure level 1 dcl 1-90 variable_name_length automatic fixed bin(17,0) dcl 1-99 white_space_token internal static fixed bin(8,0) initial unsigned dcl 1-112 zero_one internal static char(2) initial unaligned dcl 1-302 NAME DECLARED BY EXPLICIT CONTEXT. pl1_macro_error_ 000042 constant entry external dcl 12 THERE WERE NO NAMES DECLARED BY CONTEXT OR IMPLICATION. STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 344 360 277 354 Length 570 277 14 174 45 0 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME pl1_macro_error_ 110 external procedure is an external procedure. STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME pl1_macro_error_ 000100 line_length pl1_macro_error_ 000101 line_number pl1_macro_error_ 000102 line_start pl1_macro_error_ 000103 loop pl1_macro_error_ THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. r_g_a r_e_as r_le_a alloc_char_temp call_ext_out_desc return_mac shorten_stack ext_entry_desc THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. ioa_ THE FOLLOWING EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. pl1_macro_severity_ LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC 12 000035 51 000055 53 000063 57 000064 60 000070 61 000072 63 000073 64 000075 65 000100 66 000101 67 000103 69 000126 71 000135 73 000142 78 000143 81 000206 84 000235 86 000275 ----------------------------------------------------------- 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