COMPILATION LISTING OF SEGMENT dm_vu_free_typed_vector Compiled by: Multics PL/I Compiler, Release 31a, of October 12, 1988 Compiled at: Honeywell Bull, Phoenix AZ, SysM Compiled on: 10/24/88 1532.0 mst Mon Options: optimize map 1 /* *********************************************************** 2* * * 3* * Copyright, (C) Honeywell Information Systems Inc., 1982 * 4* * * 5* *********************************************************** */ 6 /* DESCRIPTION: 7* 8* This module frees the storage associated with a typed_vector. This 9* includes determining the amount of storage used in the value storage as 10* indicated by the descriptor in the typed_vector_array. 11**/ 12 13 /* HISTORY: 14* 15*Written by Lindsey L. Spratt, 09/24/82. 16*Modified: 17*12/18/84 by Lindsey L. Spratt: Moved the proc stmt to standard location. 18* Changed to use the modern sub_err_flags. Changed to use 19* data_format_util_ instead of data_mgmt_util_. Uppercased the name 20* of the internal proc CHECK_VERSION. Added the cv_ prefix to the 21* CHECK_VERSION proc's variable names. 22*12/19/84 by Lindsey L. Spratt: Fixed to ignore null value_ptr's. Fixed to 23* check the return code from the dfu_$get_data_bit_length call. 24* Added the ERROR_RETURN proc. Changed storage_string to be 25* explicitly based on storage_string_ptr. 26**/ 27 28 /* format: style2,ind3 */ 29 dm_vu_free_typed_vector: 30 proc (p_work_area_ptr, p_typed_vector_array_ptr, p_typed_vector_ptr, p_code); 31 32 /* START OF DECLARATIONS */ 33 /* Parameter */ 34 35 dcl p_work_area_ptr ptr parameter; 36 dcl p_typed_vector_array_ptr 37 ptr parameter; 38 dcl p_typed_vector_ptr ptr parameter; 39 dcl p_code fixed bin (35) parameter; 40 41 /* Automatic */ 42 43 dcl dim_idx fixed bin; 44 dcl storage_size fixed bin (35); 45 dcl storage_string_ptr ptr init (null); 46 dcl work_area_ptr ptr init (null); 47 48 /* Based */ 49 50 dcl descriptor_string bit (36) aligned based; 51 dcl storage_string bit (storage_size) aligned based (storage_string_ptr); 52 dcl work_area area based (work_area_ptr); 53 54 /* Builtin */ 55 56 dcl null builtin; 57 58 /* Constant */ 59 60 dcl myname init ("dm_vu_free_typed_vector") char (32) varying options (constant) internal 61 static; 62 63 dcl ( 64 BITS_PER_BYTE init (9), 65 BITS_PER_WORD init (36) 66 ) fixed bin internal static options (constant); 67 68 /* Entry */ 69 70 dcl data_format_util_$get_data_bit_length 71 entry (bit (36) aligned, fixed bin (35), fixed bin (35)); 72 73 dcl sub_err_ entry () options (variable); 74 75 /* External */ 76 77 dcl error_table_$unimplemented_version 78 fixed bin (35); 79 80 /* END OF DECLARATIONS */ 81 82 work_area_ptr = p_work_area_ptr; 83 p_code = 0; 84 typed_vector_array_ptr = p_typed_vector_array_ptr; 85 call CHECK_VERSION (typed_vector_array.version, TYPED_VECTOR_ARRAY_VERSION_2, "typed_vector_array"); 86 87 simple_typed_vector_ptr = p_typed_vector_ptr; 88 if simple_typed_vector.type ^= SIMPLE_TYPED_VECTOR_TYPE 89 then call sub_err_ (error_table_$unimplemented_version, myname, ACTION_CANT_RESTART, null, 0, 90 "^/This module only works on simple typed vectors, type ^d. A type 91 of ^d was provided.", SIMPLE_TYPED_VECTOR_TYPE, simple_typed_vector.type); 92 93 do dim_idx = 1 to simple_typed_vector.number_of_dimensions; 94 arg_descriptor_ptr = typed_vector_array.dimension_table (dim_idx).descriptor_ptr; 95 if arg_descriptor.type = varying_char_dtype 96 then storage_size = arg_descriptor.size * BITS_PER_BYTE + BITS_PER_WORD; 97 else if arg_descriptor.type = varying_bit_dtype 98 then storage_size = arg_descriptor.size + BITS_PER_WORD; 99 else 100 do; 101 call data_format_util_$get_data_bit_length (arg_descriptor_ptr -> descriptor_string, storage_size, p_code); 102 if p_code ^= 0 103 then call ERROR_RETURN (p_code); 104 end; 105 106 storage_string_ptr = simple_typed_vector.dimension (dim_idx).value_ptr; 107 if storage_string_ptr ^= null 108 then free storage_string in (work_area); 109 end; 110 111 free simple_typed_vector in (work_area); 112 p_typed_vector_ptr = null; 113 114 MAIN_RETURN: 115 return; 116 117 118 ERROR_RETURN: 119 proc (er_p_code); 120 dcl er_p_code fixed bin (35) parm; 121 p_code = er_p_code; 122 goto MAIN_RETURN; 123 end ERROR_RETURN; 124 125 126 CHECK_VERSION: 127 proc (cv_p_received_version, cv_p_expected_version, cv_p_structure_name); 128 dcl cv_p_received_version fixed bin (35); 129 dcl cv_p_expected_version fixed bin (35); 130 dcl cv_p_structure_name char (*); 131 132 if cv_p_received_version ^= cv_p_expected_version 133 then call sub_err_ (error_table_$unimplemented_version, myname, ACTION_CANT_RESTART, null, 0, 134 "^/Expected version ^d of the ^a structure. 135 Received version ^d instead.", cv_p_expected_version, cv_p_structure_name, cv_p_received_version); 136 137 end CHECK_VERSION; 138 1 1 /* BEGIN INCLUDE FILE sub_err_flags.incl.pl1 BIM 11/81 */ 1 2 /* format: style3 */ 1 3 1 4 /* These constants are to be used for the flags argument of sub_err_ */ 1 5 /* They are just "string (condition_info_header.action_flags)" */ 1 6 1 7 declare ( 1 8 ACTION_CAN_RESTART init (""b), 1 9 ACTION_CANT_RESTART init ("1"b), 1 10 ACTION_DEFAULT_RESTART 1 11 init ("01"b), 1 12 ACTION_QUIET_RESTART 1 13 init ("001"b), 1 14 ACTION_SUPPORT_SIGNAL 1 15 init ("0001"b) 1 16 ) bit (36) aligned internal static options (constant); 1 17 1 18 /* End include file */ 139 140 2 1 /* BEGIN INCLUDE FILE ... arg_descriptor.incl.pl1 2 2* 2 3* James R. Davis 1 Mar 79 */ 2 4 /* Modified June 83 JMAthane for extended arg descriptor format */ 2 5 2 6 dcl 1 arg_descriptor based (arg_descriptor_ptr) aligned, 2 7 2 flag bit (1) unal, 2 8 2 type fixed bin (6) unsigned unal, 2 9 2 packed bit (1) unal, 2 10 2 number_dims fixed bin (4) unsigned unal, 2 11 2 size fixed bin (24) unsigned unal; 2 12 2 13 dcl 1 fixed_arg_descriptor based (arg_descriptor_ptr) aligned, 2 14 2 flag bit (1) unal, 2 15 2 type fixed bin (6) unsigned unal, 2 16 2 packed bit (1) unal, 2 17 2 number_dims fixed bin (4) unsigned unal, 2 18 2 scale fixed bin (11) unal, 2 19 2 precision fixed bin (12) unsigned unal; 2 20 2 21 dcl 1 extended_arg_descriptor based (arg_descriptor_ptr) aligned, 2 22 2 flag bit (1) unal, /* = "1"b */ 2 23 2 type fixed bin (6) unsigned unal, /* = 58 */ 2 24 2 packed bit (1) unal, /* significant if number_dims ^= 0 */ 2 25 2 number_dims fixed (4) unsigned unal,/* number of variable dimensions */ 2 26 2 size bit (24) unal, 2 27 2 dims (0 refer (extended_arg_descriptor.number_dims)), /* part referenced by called generated code */ 2 28 3 low fixed bin (35), 2 29 3 high fixed bin (35), 2 30 3 multiplier fixed bin (35), /* in bits if packed, in words if not */ 2 31 2 real_type fixed bin (18) unsigned unal, 2 32 2 type_offset fixed bin (18) unsigned unal; /* offset rel to symbol tree to symbol node for type, if any */ 2 33 2 34 dcl arg_descriptor_ptr ptr; 2 35 2 36 dcl extended_arg_type fixed bin init (58); 2 37 2 38 /* END INCLUDE file .... arg_descriptor.incl.pl1 */ 141 142 3 1 /* BEGIN INCLUDE FILE ... std_descriptor_types.incl.pl1 */ 3 2 3 3 3 4 /****^ HISTORY COMMENTS: 3 5* 1) change(86-09-05,JMAthane), approve(86-09-05,MCR7525), 3 6* audit(86-09-11,Martinson), install(86-11-12,MR12.0-1208): 3 7* Added pascal_string_type_dtype descriptor type. Its number is 87. 3 8* Objects of this type are PASCAL string types. 3 9* 2) change(88-09-20,WAAnderson), approve(88-09-20,MCR7952), 3 10* audit(88-09-30,JRGray), install(88-10-24,MR12.2-1184): 3 11* Added the new C types. 3 12* END HISTORY COMMENTS */ 3 13 3 14 /* This include file defines mnemonic names for the Multics 3 15* standard descriptor types, using both pl1 and cobol terminology. 3 16* PG 780613 3 17* JRD 790530 3 18* JRD 791016 3 19* MBW 810731 3 20* TGO 830614 Add hex types. 3 21* Modified June 83 JMAthane to add PASCAL data types 3 22* TGO 840120 Add float dec extended and generic, float binary generic 3 23**/ 3 24 3 25 dcl (real_fix_bin_1_dtype init (1), 3 26 real_fix_bin_2_dtype init (2), 3 27 real_flt_bin_1_dtype init (3), 3 28 real_flt_bin_2_dtype init (4), 3 29 cplx_fix_bin_1_dtype init (5), 3 30 cplx_fix_bin_2_dtype init (6), 3 31 cplx_flt_bin_1_dtype init (7), 3 32 cplx_flt_bin_2_dtype init (8), 3 33 real_fix_dec_9bit_ls_dtype init (9), 3 34 real_flt_dec_9bit_dtype init (10), 3 35 cplx_fix_dec_9bit_ls_dtype init (11), 3 36 cplx_flt_dec_9bit_dtype init (12), 3 37 pointer_dtype init (13), 3 38 offset_dtype init (14), 3 39 label_dtype init (15), 3 40 entry_dtype init (16), 3 41 structure_dtype init (17), 3 42 area_dtype init (18), 3 43 bit_dtype init (19), 3 44 varying_bit_dtype init (20), 3 45 char_dtype init (21), 3 46 varying_char_dtype init (22), 3 47 file_dtype init (23), 3 48 real_fix_dec_9bit_ls_overp_dtype init (29), 3 49 real_fix_dec_9bit_ts_overp_dtype init (30), 3 50 real_fix_bin_1_uns_dtype init (33), 3 51 real_fix_bin_2_uns_dtype init (34), 3 52 real_fix_dec_9bit_uns_dtype init (35), 3 53 real_fix_dec_9bit_ts_dtype init (36), 3 54 real_fix_dec_4bit_uns_dtype init (38), /* digit-aligned */ 3 55 real_fix_dec_4bit_ts_dtype init (39), /* byte-aligned */ 3 56 real_fix_dec_4bit_bytealigned_uns_dtype init (40), /* COBOL */ 3 57 real_fix_dec_4bit_ls_dtype init (41), /* digit-aligned */ 3 58 real_flt_dec_4bit_dtype init (42), /* digit-aligned */ 3 59 real_fix_dec_4bit_bytealigned_ls_dtype init (43), 3 60 real_flt_dec_4bit_bytealigned_dtype init (44), 3 61 cplx_fix_dec_4bit_bytealigned_ls_dtype init (45), 3 62 cplx_flt_dec_4bit_bytealigned_dtype init (46), 3 63 real_flt_hex_1_dtype init (47), 3 64 real_flt_hex_2_dtype init (48), 3 65 cplx_flt_hex_1_dtype init (49), 3 66 cplx_flt_hex_2_dtype init (50), 3 67 c_typeref_dtype init (54), 3 68 c_enum_dtype init (55), 3 69 c_enum_const_dtype init (56), 3 70 c_union_dtype init (57), 3 71 algol68_straight_dtype init (59), 3 72 algol68_format_dtype init (60), 3 73 algol68_array_descriptor_dtype init (61), 3 74 algol68_union_dtype init (62), 3 75 3 76 cobol_comp_6_dtype init (1), 3 77 cobol_comp_7_dtype init (1), 3 78 cobol_display_ls_dtype init (9), 3 79 cobol_structure_dtype init (17), 3 80 cobol_char_string_dtype init (21), 3 81 cobol_display_ls_overp_dtype init (29), 3 82 cobol_display_ts_overp_dtype init (30), 3 83 cobol_display_uns_dtype init (35), 3 84 cobol_display_ts_dtype init (36), 3 85 cobol_comp_8_uns_dtype init (38), /* digit aligned */ 3 86 cobol_comp_5_ts_dtype init (39), /* byte aligned */ 3 87 cobol_comp_5_uns_dtype init (40), 3 88 cobol_comp_8_ls_dtype init (41), /* digit aligned */ 3 89 real_flt_dec_extended_dtype init (81), /* 9-bit exponent */ 3 90 cplx_flt_dec_extended_dtype init (82), /* 9-bit exponent */ 3 91 real_flt_dec_generic_dtype init (83), /* generic float decimal */ 3 92 cplx_flt_dec_generic_dtype init (84), 3 93 real_flt_bin_generic_dtype init (85), /* generic float binary */ 3 94 cplx_flt_bin_generic_dtype init (86)) fixed bin internal static options (constant); 3 95 3 96 dcl (ft_integer_dtype init (1), 3 97 ft_real_dtype init (3), 3 98 ft_double_dtype init (4), 3 99 ft_complex_dtype init (7), 3 100 ft_complex_double_dtype init (8), 3 101 ft_external_dtype init (16), 3 102 ft_logical_dtype init (19), 3 103 ft_char_dtype init (21), 3 104 ft_hex_real_dtype init (47), 3 105 ft_hex_double_dtype init (48), 3 106 ft_hex_complex_dtype init (49), 3 107 ft_hex_complex_double_dtype init (50) 3 108 ) fixed bin internal static options (constant); 3 109 3 110 dcl (algol68_short_int_dtype init (1), 3 111 algol68_int_dtype init (1), 3 112 algol68_long_int_dtype init (2), 3 113 algol68_real_dtype init (3), 3 114 algol68_long_real_dtype init (4), 3 115 algol68_compl_dtype init (7), 3 116 algol68_long_compl_dtype init (8), 3 117 algol68_bits_dtype init (19), 3 118 algol68_bool_dtype init (19), 3 119 algol68_char_dtype init (21), 3 120 algol68_byte_dtype init (21), 3 121 algol68_struct_struct_char_dtype init (22), 3 122 algol68_struct_struct_bool_dtype init (20) 3 123 ) fixed bin internal static options (constant); 3 124 3 125 dcl (label_constant_runtime_dtype init (24), 3 126 int_entry_runtime_dtype init (25), 3 127 ext_entry_runtime_dtype init (26), 3 128 ext_procedure_runtime_dtype init (27), 3 129 picture_runtime_dtype init (63) 3 130 ) fixed bin internal static options (constant); 3 131 3 132 dcl (pascal_integer_dtype init (1), 3 133 pascal_real_dtype init (4), 3 134 pascal_label_dtype init (24), 3 135 pascal_internal_procedure_dtype init (25), 3 136 pascal_exportable_procedure_dtype init (26), 3 137 pascal_imported_procedure_dtype init (27), 3 138 pascal_typed_pointer_type_dtype init (64), 3 139 pascal_char_dtype init (65), 3 140 pascal_boolean_dtype init (66), 3 141 pascal_record_file_type_dtype init (67), 3 142 pascal_record_type_dtype init (68), 3 143 pascal_set_dtype init (69), 3 144 pascal_enumerated_type_dtype init (70), 3 145 pascal_enumerated_type_element_dtype init (71), 3 146 pascal_enumerated_type_instance_dtype init (72), 3 147 pascal_user_defined_type_dtype init (73), 3 148 pascal_user_defined_type_instance_dtype init (74), 3 149 pascal_text_file_dtype init (75), 3 150 pascal_procedure_type_dtype init (76), 3 151 pascal_variable_formal_parameter_dtype init (77), 3 152 pascal_value_formal_parameter_dtype init (78), 3 153 pascal_entry_formal_parameter_dtype init (79), 3 154 pascal_parameter_procedure_dtype init (80), 3 155 pascal_string_type_dtype init (87)) fixed bin int static options (constant); 3 156 3 157 3 158 /* END INCLUDE FILE ... std_descriptor_types.incl.pl1 */ 143 144 4 1 /* *********************************************************** 4 2* * * 4 3* * Copyright, (C) Honeywell Information Systems Inc., 1983 * 4 4* * * 4 5* *********************************************************** */ 4 6 /* BEGIN INCLUDE FILE vu_typed_vector_array.incl.pl1 */ 4 7 4 8 /* Written by Lindsey Spratt, 03/04/82. 4 9*Modified: 4 10*06/23/82 by Lindsey Spratt: Changed to version 2. The cv entry declarations 4 11* were altered. cv_to_typed now takes ptr to the descriptor, ptr to 4 12* the print_vector value (char varying), ptr to the typed_vector 4 13* value location, and a code. cv_to_print now takes ptr to the 4 14* descriptor, ptr to the typed_vector value, the print_vector value 4 15* (char(*) varying), the maximum allowed length for the print_vector 4 16* value, a temp_seg to put the value in if its to big to fit into 4 17* the print_vector, and a code. 4 18**/ 4 19 4 20 /* format: style2,ind3 */ 4 21 dcl 1 typed_vector_array based (typed_vector_array_ptr) aligned, 4 22 2 version fixed bin (35), 4 23 2 number_of_dimensions 4 24 fixed bin (17), 4 25 2 number_of_vectors fixed bin (17), 4 26 2 number_of_vector_slots 4 27 fixed bin (17), 4 28 2 maximum_dimension_name_length 4 29 fixed bin (17), 4 30 2 dimension_table (tva_number_of_dimensions refer (typed_vector_array.number_of_dimensions)), 4 31 3 name char (tva_maximum_dimension_name_length 4 32 refer (typed_vector_array.maximum_dimension_name_length)) varying, 4 33 3 descriptor_ptr ptr, /* call cv_to_print (descriptor_ptr, typed_value_ptr, */ 4 34 /* temp_seg_ptr, max_length_for_print_value, */ 4 35 /* print_value, code) */ 4 36 3 cv_to_print entry (ptr, ptr, ptr, fixed bin (35), char (*) varying, fixed bin (35)), 4 37 /* call cv_to_typed (descriptor_ptr, area_ptr, */ 4 38 /* print_value_ptr, typed_value_ptr, code) */ 4 39 3 cv_to_typed entry (ptr, ptr, ptr, ptr, fixed bin (35)), 4 40 2 vector_slot (tva_number_of_vector_slots refer (typed_vector_array.number_of_vector_slots)) 4 41 pointer; 4 42 4 43 dcl typed_vector_array_ptr ptr; 4 44 dcl tva_number_of_vector_slots 4 45 fixed bin; 4 46 dcl tva_number_of_dimensions 4 47 fixed bin; 4 48 dcl tva_maximum_dimension_name_length 4 49 fixed bin; 4 50 dcl TYPED_VECTOR_ARRAY_VERSION_2 4 51 fixed bin (35) int static options (constant) init (2); 4 52 4 53 /* END INCLUDE FILE vu_typed_vector_array.incl.pl1 */ 145 146 5 1 /* *********************************************************** 5 2* * * 5 3* * Copyright, (C) Honeywell Information Systems Inc., 1983 * 5 4* * * 5 5* *********************************************************** */ 5 6 /* BEGIN INCLUDE FILE - vu_typed_vector.incl.pl1 */ 5 7 5 8 /* Written by Lindsey Spratt, 04/02/82. 5 9*Modified: 5 10*09/01/82 by Lindsey Spratt: Changed value_ptr in simple_typed_vector to be 5 11* unaligned. Changed the type number of the simple_typed_vector to 5 12* "3" from "1". The OLD_SIMPLE_TYPED_VECTOR_TYPE is now an invalid 5 13* type. 5 14**/ 5 15 5 16 /* format: style2,ind3 */ 5 17 dcl 1 simple_typed_vector based (simple_typed_vector_ptr), 5 18 2 type fixed bin (17) unal, 5 19 2 number_of_dimensions 5 20 fixed bin (17) unal, 5 21 2 dimension (stv_number_of_dimensions refer (simple_typed_vector.number_of_dimensions)), 5 22 3 value_ptr ptr unaligned; 5 23 5 24 dcl 1 general_typed_vector based (general_typed_vector_ptr), 5 25 2 type fixed bin (17) unal, 5 26 2 number_of_dimensions 5 27 fixed bin (17) unal, 5 28 2 dimension (gtv_number_of_dimensions refer (general_typed_vector.number_of_dimensions)), 5 29 3 identifier fixed bin (17) unal, 5 30 3 pad bit (18) unal, 5 31 3 value_ptr ptr unal; 5 32 5 33 dcl simple_typed_vector_ptr 5 34 ptr; 5 35 dcl stv_number_of_dimensions 5 36 fixed bin (17); 5 37 5 38 dcl general_typed_vector_ptr 5 39 ptr; 5 40 dcl gtv_number_of_dimensions 5 41 fixed bin (17); 5 42 5 43 dcl ( 5 44 OLD_SIMPLE_TYPED_VECTOR_TYPE 5 45 init (1), /* value_ptr was aligned. */ 5 46 GENERAL_TYPED_VECTOR_TYPE 5 47 init (2), 5 48 SIMPLE_TYPED_VECTOR_TYPE 5 49 init (3) 5 50 ) fixed bin (17) internal static options (constant); 5 51 5 52 /* END INCLUDE FILE - vu_typed_vector.incl.pl1 */ 147 148 end dm_vu_free_typed_vector; SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 10/24/88 1400.1 dm_vu_free_typed_vector.pl1 >special_ldd>install>MR12.2-1184>dm_vu_free_typed_vector.pl1 139 1 04/16/82 0958.1 sub_err_flags.incl.pl1 >ldd>include>sub_err_flags.incl.pl1 141 2 11/02/83 1845.0 arg_descriptor.incl.pl1 >ldd>include>arg_descriptor.incl.pl1 143 3 10/24/88 1336.9 std_descriptor_types.incl.pl1 >special_ldd>install>MR12.2-1184>std_descriptor_types.incl.pl1 145 4 10/14/83 1609.1 vu_typed_vector_array.incl.pl1 >ldd>include>vu_typed_vector_array.incl.pl1 147 5 10/14/83 1609.1 vu_typed_vector.incl.pl1 >ldd>include>vu_typed_vector.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. ACTION_CANT_RESTART 000000 constant bit(36) initial dcl 1-7 set ref 88* 132* BITS_PER_BYTE constant fixed bin(17,0) initial dcl 63 ref 95 BITS_PER_WORD constant fixed bin(17,0) initial dcl 63 ref 95 97 SIMPLE_TYPED_VECTOR_TYPE 000024 constant fixed bin(17,0) initial dcl 5-43 set ref 88 88* TYPED_VECTOR_ARRAY_VERSION_2 000025 constant fixed bin(35,0) initial dcl 4-50 set ref 85* arg_descriptor based structure level 1 dcl 2-6 arg_descriptor_ptr 000110 automatic pointer dcl 2-34 set ref 94* 95 95 97 97 101 cv_p_expected_version parameter fixed bin(35,0) dcl 129 set ref 126 132 132* cv_p_received_version parameter fixed bin(35,0) dcl 128 set ref 126 132 132* cv_p_structure_name parameter char packed unaligned dcl 130 set ref 126 132* data_format_util_$get_data_bit_length 000010 constant entry external dcl 70 ref 101 descriptor_ptr based pointer array level 3 dcl 4-21 ref 94 descriptor_string based bit(36) dcl 50 set ref 101* dim_idx 000100 automatic fixed bin(17,0) dcl 43 set ref 93* 94 106* dimension 1 based structure array level 2 packed packed unaligned dcl 5-17 dimension_table 6 based structure array level 2 dcl 4-21 er_p_code parameter fixed bin(35,0) dcl 120 ref 118 121 error_table_$unimplemented_version 000106 automatic fixed bin(35,0) dcl 77 set ref 88* 132* extended_arg_type 000112 automatic fixed bin(17,0) initial dcl 2-36 set ref 2-36* maximum_dimension_name_length 4 based fixed bin(17,0) level 2 dcl 4-21 ref 94 94 94 myname 000001 constant varying char(32) initial dcl 60 set ref 88* 132* null builtin function dcl 56 ref 45 46 88 88 107 112 132 132 number_of_dimensions 0(18) based fixed bin(17,0) level 2 packed packed unaligned dcl 5-17 ref 93 111 p_code parameter fixed bin(35,0) dcl 39 set ref 29 83* 101* 102 102* 121* p_typed_vector_array_ptr parameter pointer dcl 36 ref 29 84 p_typed_vector_ptr parameter pointer dcl 38 set ref 29 87 112* p_work_area_ptr parameter pointer dcl 35 ref 29 82 simple_typed_vector based structure level 1 packed packed unaligned dcl 5-17 set ref 111 simple_typed_vector_ptr 000116 automatic pointer dcl 5-33 set ref 87* 88 88 93 106 111 size 0(12) based fixed bin(24,0) level 2 packed packed unsigned unaligned dcl 2-6 ref 95 97 storage_size 000101 automatic fixed bin(35,0) dcl 44 set ref 95* 97* 101* 107 107 storage_string based bit dcl 51 ref 107 storage_string_ptr 000102 automatic pointer initial dcl 45 set ref 45* 106* 107 107 sub_err_ 000012 constant entry external dcl 73 ref 88 132 type based fixed bin(17,0) level 2 in structure "simple_typed_vector" packed packed unaligned dcl 5-17 in procedure "dm_vu_free_typed_vector" set ref 88 88* type 0(01) based fixed bin(6,0) level 2 in structure "arg_descriptor" packed packed unsigned unaligned dcl 2-6 in procedure "dm_vu_free_typed_vector" ref 95 97 typed_vector_array based structure level 1 dcl 4-21 typed_vector_array_ptr 000114 automatic pointer dcl 4-43 set ref 84* 85 94 value_ptr 1 based pointer array level 3 packed packed unaligned dcl 5-17 ref 106 varying_bit_dtype constant fixed bin(17,0) initial dcl 3-25 ref 97 varying_char_dtype constant fixed bin(17,0) initial dcl 3-25 ref 95 version based fixed bin(35,0) level 2 dcl 4-21 set ref 85* work_area based area(1024) dcl 52 ref 107 111 work_area_ptr 000104 automatic pointer initial dcl 46 set ref 46* 82* 107 111 NAMES DECLARED BY DECLARE STATEMENT AND NEVER REFERENCED. ACTION_CAN_RESTART internal static bit(36) initial dcl 1-7 ACTION_DEFAULT_RESTART internal static bit(36) initial dcl 1-7 ACTION_QUIET_RESTART internal static bit(36) initial dcl 1-7 ACTION_SUPPORT_SIGNAL internal static bit(36) initial dcl 1-7 GENERAL_TYPED_VECTOR_TYPE internal static fixed bin(17,0) initial dcl 5-43 OLD_SIMPLE_TYPED_VECTOR_TYPE internal static fixed bin(17,0) initial dcl 5-43 algol68_array_descriptor_dtype internal static fixed bin(17,0) initial dcl 3-25 algol68_bits_dtype internal static fixed bin(17,0) initial dcl 3-110 algol68_bool_dtype internal static fixed bin(17,0) initial dcl 3-110 algol68_byte_dtype internal static fixed bin(17,0) initial dcl 3-110 algol68_char_dtype internal static fixed bin(17,0) initial dcl 3-110 algol68_compl_dtype internal static fixed bin(17,0) initial dcl 3-110 algol68_format_dtype internal static fixed bin(17,0) initial dcl 3-25 algol68_int_dtype internal static fixed bin(17,0) initial dcl 3-110 algol68_long_compl_dtype internal static fixed bin(17,0) initial dcl 3-110 algol68_long_int_dtype internal static fixed bin(17,0) initial dcl 3-110 algol68_long_real_dtype internal static fixed bin(17,0) initial dcl 3-110 algol68_real_dtype internal static fixed bin(17,0) initial dcl 3-110 algol68_short_int_dtype internal static fixed bin(17,0) initial dcl 3-110 algol68_straight_dtype internal static fixed bin(17,0) initial dcl 3-25 algol68_struct_struct_bool_dtype internal static fixed bin(17,0) initial dcl 3-110 algol68_struct_struct_char_dtype internal static fixed bin(17,0) initial dcl 3-110 algol68_union_dtype internal static fixed bin(17,0) initial dcl 3-25 area_dtype internal static fixed bin(17,0) initial dcl 3-25 bit_dtype internal static fixed bin(17,0) initial dcl 3-25 c_enum_const_dtype internal static fixed bin(17,0) initial dcl 3-25 c_enum_dtype internal static fixed bin(17,0) initial dcl 3-25 c_typeref_dtype internal static fixed bin(17,0) initial dcl 3-25 c_union_dtype internal static fixed bin(17,0) initial dcl 3-25 char_dtype internal static fixed bin(17,0) initial dcl 3-25 cobol_char_string_dtype internal static fixed bin(17,0) initial dcl 3-25 cobol_comp_5_ts_dtype internal static fixed bin(17,0) initial dcl 3-25 cobol_comp_5_uns_dtype internal static fixed bin(17,0) initial dcl 3-25 cobol_comp_6_dtype internal static fixed bin(17,0) initial dcl 3-25 cobol_comp_7_dtype internal static fixed bin(17,0) initial dcl 3-25 cobol_comp_8_ls_dtype internal static fixed bin(17,0) initial dcl 3-25 cobol_comp_8_uns_dtype internal static fixed bin(17,0) initial dcl 3-25 cobol_display_ls_dtype internal static fixed bin(17,0) initial dcl 3-25 cobol_display_ls_overp_dtype internal static fixed bin(17,0) initial dcl 3-25 cobol_display_ts_dtype internal static fixed bin(17,0) initial dcl 3-25 cobol_display_ts_overp_dtype internal static fixed bin(17,0) initial dcl 3-25 cobol_display_uns_dtype internal static fixed bin(17,0) initial dcl 3-25 cobol_structure_dtype internal static fixed bin(17,0) initial dcl 3-25 cplx_fix_bin_1_dtype internal static fixed bin(17,0) initial dcl 3-25 cplx_fix_bin_2_dtype internal static fixed bin(17,0) initial dcl 3-25 cplx_fix_dec_4bit_bytealigned_ls_dtype internal static fixed bin(17,0) initial dcl 3-25 cplx_fix_dec_9bit_ls_dtype internal static fixed bin(17,0) initial dcl 3-25 cplx_flt_bin_1_dtype internal static fixed bin(17,0) initial dcl 3-25 cplx_flt_bin_2_dtype internal static fixed bin(17,0) initial dcl 3-25 cplx_flt_bin_generic_dtype internal static fixed bin(17,0) initial dcl 3-25 cplx_flt_dec_4bit_bytealigned_dtype internal static fixed bin(17,0) initial dcl 3-25 cplx_flt_dec_9bit_dtype internal static fixed bin(17,0) initial dcl 3-25 cplx_flt_dec_extended_dtype internal static fixed bin(17,0) initial dcl 3-25 cplx_flt_dec_generic_dtype internal static fixed bin(17,0) initial dcl 3-25 cplx_flt_hex_1_dtype internal static fixed bin(17,0) initial dcl 3-25 cplx_flt_hex_2_dtype internal static fixed bin(17,0) initial dcl 3-25 entry_dtype internal static fixed bin(17,0) initial dcl 3-25 ext_entry_runtime_dtype internal static fixed bin(17,0) initial dcl 3-125 ext_procedure_runtime_dtype internal static fixed bin(17,0) initial dcl 3-125 extended_arg_descriptor based structure level 1 dcl 2-21 file_dtype internal static fixed bin(17,0) initial dcl 3-25 fixed_arg_descriptor based structure level 1 dcl 2-13 ft_char_dtype internal static fixed bin(17,0) initial dcl 3-96 ft_complex_double_dtype internal static fixed bin(17,0) initial dcl 3-96 ft_complex_dtype internal static fixed bin(17,0) initial dcl 3-96 ft_double_dtype internal static fixed bin(17,0) initial dcl 3-96 ft_external_dtype internal static fixed bin(17,0) initial dcl 3-96 ft_hex_complex_double_dtype internal static fixed bin(17,0) initial dcl 3-96 ft_hex_complex_dtype internal static fixed bin(17,0) initial dcl 3-96 ft_hex_double_dtype internal static fixed bin(17,0) initial dcl 3-96 ft_hex_real_dtype internal static fixed bin(17,0) initial dcl 3-96 ft_integer_dtype internal static fixed bin(17,0) initial dcl 3-96 ft_logical_dtype internal static fixed bin(17,0) initial dcl 3-96 ft_real_dtype internal static fixed bin(17,0) initial dcl 3-96 general_typed_vector based structure level 1 packed packed unaligned dcl 5-24 general_typed_vector_ptr automatic pointer dcl 5-38 gtv_number_of_dimensions automatic fixed bin(17,0) dcl 5-40 int_entry_runtime_dtype internal static fixed bin(17,0) initial dcl 3-125 label_constant_runtime_dtype internal static fixed bin(17,0) initial dcl 3-125 label_dtype internal static fixed bin(17,0) initial dcl 3-25 offset_dtype internal static fixed bin(17,0) initial dcl 3-25 pascal_boolean_dtype internal static fixed bin(17,0) initial dcl 3-132 pascal_char_dtype internal static fixed bin(17,0) initial dcl 3-132 pascal_entry_formal_parameter_dtype internal static fixed bin(17,0) initial dcl 3-132 pascal_enumerated_type_dtype internal static fixed bin(17,0) initial dcl 3-132 pascal_enumerated_type_element_dtype internal static fixed bin(17,0) initial dcl 3-132 pascal_enumerated_type_instance_dtype internal static fixed bin(17,0) initial dcl 3-132 pascal_exportable_procedure_dtype internal static fixed bin(17,0) initial dcl 3-132 pascal_imported_procedure_dtype internal static fixed bin(17,0) initial dcl 3-132 pascal_integer_dtype internal static fixed bin(17,0) initial dcl 3-132 pascal_internal_procedure_dtype internal static fixed bin(17,0) initial dcl 3-132 pascal_label_dtype internal static fixed bin(17,0) initial dcl 3-132 pascal_parameter_procedure_dtype internal static fixed bin(17,0) initial dcl 3-132 pascal_procedure_type_dtype internal static fixed bin(17,0) initial dcl 3-132 pascal_real_dtype internal static fixed bin(17,0) initial dcl 3-132 pascal_record_file_type_dtype internal static fixed bin(17,0) initial dcl 3-132 pascal_record_type_dtype internal static fixed bin(17,0) initial dcl 3-132 pascal_set_dtype internal static fixed bin(17,0) initial dcl 3-132 pascal_string_type_dtype internal static fixed bin(17,0) initial dcl 3-132 pascal_text_file_dtype internal static fixed bin(17,0) initial dcl 3-132 pascal_typed_pointer_type_dtype internal static fixed bin(17,0) initial dcl 3-132 pascal_user_defined_type_dtype internal static fixed bin(17,0) initial dcl 3-132 pascal_user_defined_type_instance_dtype internal static fixed bin(17,0) initial dcl 3-132 pascal_value_formal_parameter_dtype internal static fixed bin(17,0) initial dcl 3-132 pascal_variable_formal_parameter_dtype internal static fixed bin(17,0) initial dcl 3-132 picture_runtime_dtype internal static fixed bin(17,0) initial dcl 3-125 pointer_dtype internal static fixed bin(17,0) initial dcl 3-25 real_fix_bin_1_dtype internal static fixed bin(17,0) initial dcl 3-25 real_fix_bin_1_uns_dtype internal static fixed bin(17,0) initial dcl 3-25 real_fix_bin_2_dtype internal static fixed bin(17,0) initial dcl 3-25 real_fix_bin_2_uns_dtype internal static fixed bin(17,0) initial dcl 3-25 real_fix_dec_4bit_bytealigned_ls_dtype internal static fixed bin(17,0) initial dcl 3-25 real_fix_dec_4bit_bytealigned_uns_dtype internal static fixed bin(17,0) initial dcl 3-25 real_fix_dec_4bit_ls_dtype internal static fixed bin(17,0) initial dcl 3-25 real_fix_dec_4bit_ts_dtype internal static fixed bin(17,0) initial dcl 3-25 real_fix_dec_4bit_uns_dtype internal static fixed bin(17,0) initial dcl 3-25 real_fix_dec_9bit_ls_dtype internal static fixed bin(17,0) initial dcl 3-25 real_fix_dec_9bit_ls_overp_dtype internal static fixed bin(17,0) initial dcl 3-25 real_fix_dec_9bit_ts_dtype internal static fixed bin(17,0) initial dcl 3-25 real_fix_dec_9bit_ts_overp_dtype internal static fixed bin(17,0) initial dcl 3-25 real_fix_dec_9bit_uns_dtype internal static fixed bin(17,0) initial dcl 3-25 real_flt_bin_1_dtype internal static fixed bin(17,0) initial dcl 3-25 real_flt_bin_2_dtype internal static fixed bin(17,0) initial dcl 3-25 real_flt_bin_generic_dtype internal static fixed bin(17,0) initial dcl 3-25 real_flt_dec_4bit_bytealigned_dtype internal static fixed bin(17,0) initial dcl 3-25 real_flt_dec_4bit_dtype internal static fixed bin(17,0) initial dcl 3-25 real_flt_dec_9bit_dtype internal static fixed bin(17,0) initial dcl 3-25 real_flt_dec_extended_dtype internal static fixed bin(17,0) initial dcl 3-25 real_flt_dec_generic_dtype internal static fixed bin(17,0) initial dcl 3-25 real_flt_hex_1_dtype internal static fixed bin(17,0) initial dcl 3-25 real_flt_hex_2_dtype internal static fixed bin(17,0) initial dcl 3-25 structure_dtype internal static fixed bin(17,0) initial dcl 3-25 stv_number_of_dimensions automatic fixed bin(17,0) dcl 5-35 tva_maximum_dimension_name_length automatic fixed bin(17,0) dcl 4-48 tva_number_of_dimensions automatic fixed bin(17,0) dcl 4-46 tva_number_of_vector_slots automatic fixed bin(17,0) dcl 4-44 NAMES DECLARED BY EXPLICIT CONTEXT. CHECK_VERSION 000426 constant entry internal dcl 126 ref 85 ERROR_RETURN 000420 constant entry internal dcl 118 ref 102 MAIN_RETURN 000417 constant label dcl 114 ref 122 dm_vu_free_typed_vector 000114 constant entry external dcl 29 THERE WERE NO NAMES DECLARED BY CONTEXT OR IMPLICATION. STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 574 610 522 604 Length 1100 522 14 254 52 0 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME dm_vu_free_typed_vector 252 external procedure is an external procedure. ERROR_RETURN internal procedure shares stack frame of external procedure dm_vu_free_typed_vector. CHECK_VERSION internal procedure shares stack frame of external procedure dm_vu_free_typed_vector. STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME dm_vu_free_typed_vector 000100 dim_idx dm_vu_free_typed_vector 000101 storage_size dm_vu_free_typed_vector 000102 storage_string_ptr dm_vu_free_typed_vector 000104 work_area_ptr dm_vu_free_typed_vector 000106 error_table_$unimplemented_version dm_vu_free_typed_vector 000110 arg_descriptor_ptr dm_vu_free_typed_vector 000112 extended_arg_type dm_vu_free_typed_vector 000114 typed_vector_array_ptr dm_vu_free_typed_vector 000116 simple_typed_vector_ptr dm_vu_free_typed_vector THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. call_ext_out_desc call_ext_out return_mac ext_entry op_freen_ THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. data_format_util_$get_data_bit_length sub_err_ NO EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC 29 000107 45 000121 46 000123 2 36 000124 82 000126 83 000132 84 000133 85 000136 87 000163 88 000167 93 000251 94 000265 95 000311 97 000325 101 000334 102 000350 106 000361 107 000370 109 000401 111 000403 112 000414 114 000417 118 000420 121 000422 122 000425 126 000426 132 000437 137 000521 ----------------------------------------------------------- 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