1 /* 2 * list of all objects known to the C-program ("program-constants") 3 * Bruno Haible 1990-2005, 2009, 2017-2018 4 * Sam Steingold 1998-2011, 2017 5 * German comments translated into English: Stefan Kain 2002-02-20 6 7 The symbols are already treated specially in CONSTSYM. 8 A table of all other objects known to the C-program is maintained here. 9 10 The macro LISPOBJ declares a LISP object. 11 LISPOBJ(name,initstring) 12 > name: object is addressable as object_tab.name or as O(name) 13 > initstring: initialization-string in LISP syntax */ 14 15 /* expander for the declaration of the object-table: */ 16 #define LISPOBJ_A(name,initstring) \ 17 gcv_object_t name; 18 19 /* expander for the initialization of the object-table: */ 20 #define LISPOBJ_B(name,initstring) \ 21 NIL, 22 #define LISPOBJ_C(name,initstring) \ 23 initstring, 24 25 /* Which expander is used, must be configured by the main file. 26 27 The macro LISPOBJ_S declares a LISP string. 28 > name: object is addressable as object_tab.name or as O(name) 29 > initstring: initialization-string in C-syntax, may not contain 30 backslashes */ 31 #define LISPOBJ_S(name,initstring) \ 32 LISPOBJ(name,"\"" initstring "\"") 33 34 /* for SPVW.D: 35 chained list of all active weak-pointers: */ 36 LISPOBJ(all_weakpointers,"0") 37 /* list of all finalizers: */ 38 LISPOBJ(all_finalizers,"0") 39 /* During GC: the list of finalizers to be processed after the GC: */ 40 LISPOBJ(pending_finalizers,"0") 41 /* for ENCODING.D: 42 Encodings for which both the charset and the line-terminator matter: 43 The default encoding for file streams, pipe streams, socket streams. */ 44 LISPOBJ(default_file_encoding,".") 45 /* The encoding of the terminal stream. */ 46 LISPOBJ(terminal_encoding,".") 47 /* Encodings for which only the charset matters: */ 48 #ifdef ENABLE_UNICODE 49 /* The encoding of the C strings compiled into the executable. */ 50 LISPOBJ(internal_encoding,".") 51 /* The encoding of pathnames on the file system. */ 52 LISPOBJ(pathname_encoding,".") 53 #if defined(HAVE_FFI) 54 /* The encoding of strings passed through the FFI. */ 55 LISPOBJ(foreign_encoding,".") 56 /* The encoding of characters passed through the FFI. 57 Must be 1:1, i.e. one of the nls_* encodings. */ 58 LISPOBJ(foreign_8bit_encoding,".") 59 #endif 60 /* The encoding for everything else (environment variables, command-line 61 options etc.) */ 62 LISPOBJ(misc_encoding,".") 63 #endif 64 LISPOBJ(type_line_terminator,"(MEMBER :DEFAULT :UNIX :MAC :DOS)") 65 LISPOBJ(type_input_error_action,"(OR (MEMBER :ERROR :IGNORE) CHARACTER)") 66 LISPOBJ(type_output_error_action,"(OR (MEMBER :ERROR :IGNORE) CHARACTER (UNSIGNED-BYTE 8))") 67 /* for CHARSTRG.D: 68 On change of character-names except of CONSTOBJ.D, also 69 readjust CHARSTRG.D, FORMAT.LISP, IMPNOTES.HTML! */ 70 #ifdef WIN32_CHARNAMES 71 /* names of characters with codes 0,7,...,13,26,27,32,8,10: */ 72 LISPOBJ(charname_0,"\"Null\"") 73 LISPOBJ(charname_7,"\"Bell\"") 74 LISPOBJ(charname_8,"\"Backspace\"") 75 LISPOBJ(charname_9,"\"Tab\"") 76 LISPOBJ(charname_10,"\"Newline\"") 77 LISPOBJ(charname_11,"\"Code11\"") 78 LISPOBJ(charname_12,"\"Page\"") 79 LISPOBJ(charname_13,"\"Return\"") 80 LISPOBJ(charname_26,"\"Code26\"") 81 LISPOBJ(charname_27,"\"Escape\"") 82 LISPOBJ(charname_32,"\"Space\"") 83 LISPOBJ(charname_127,"\"Rubout\"") 84 LISPOBJ(charname_10_1,"\"Linefeed\"") 85 LISPOBJ(charname_27_1,"\"Esc\"") 86 #endif 87 #ifdef UNIX_CHARNAMES 88 LISPOBJ(charname_0_1,"\"Null\"") 89 LISPOBJ(charname_7_1,"\"Bell\"") 90 LISPOBJ(charname_8_1,"\"Backspace\"") 91 LISPOBJ(charname_9_1,"\"Tab\"") 92 LISPOBJ(charname_10_1,"\"Newline\"") 93 LISPOBJ(charname_10_2,"\"Linefeed\"") 94 LISPOBJ(charname_10_3,"\"Lf\"") 95 LISPOBJ(charname_12_1,"\"Page\"") 96 LISPOBJ(charname_12_2,"\"Ff\"") 97 LISPOBJ(charname_13_1,"\"Return\"") 98 LISPOBJ(charname_27_1,"\"Escape\"") 99 LISPOBJ(charname_32_1,"\"Space\"") 100 LISPOBJ(charname_127_1,"\"Rubout\"") 101 LISPOBJ(charname_127_2,"\"Delete\"") 102 LISPOBJ(charname_0,"\"Nul\"") 103 LISPOBJ(charname_1,"\"Soh\"") 104 LISPOBJ(charname_2,"\"Stx\"") 105 LISPOBJ(charname_3,"\"Etx\"") 106 LISPOBJ(charname_4,"\"Eot\"") 107 LISPOBJ(charname_5,"\"Enq\"") 108 LISPOBJ(charname_6,"\"Ack\"") 109 LISPOBJ(charname_7,"\"Bel\"") 110 LISPOBJ(charname_8,"\"Bs\"") 111 LISPOBJ(charname_9,"\"Ht\"") 112 LISPOBJ(charname_10,"\"Nl\"") 113 LISPOBJ(charname_11,"\"Vt\"") 114 LISPOBJ(charname_12,"\"Np\"") 115 LISPOBJ(charname_13,"\"Cr\"") 116 LISPOBJ(charname_14,"\"So\"") 117 LISPOBJ(charname_15,"\"Si\"") 118 LISPOBJ(charname_16,"\"Dle\"") 119 LISPOBJ(charname_17,"\"Dc1\"") 120 LISPOBJ(charname_18,"\"Dc2\"") 121 LISPOBJ(charname_19,"\"Dc3\"") 122 LISPOBJ(charname_20,"\"Dc4\"") 123 LISPOBJ(charname_21,"\"Nak\"") 124 LISPOBJ(charname_22,"\"Syn\"") 125 LISPOBJ(charname_23,"\"Etb\"") 126 LISPOBJ(charname_24,"\"Can\"") 127 LISPOBJ(charname_25,"\"Em\"") 128 LISPOBJ(charname_26,"\"Sub\"") 129 LISPOBJ(charname_27,"\"Esc\"") 130 LISPOBJ(charname_28,"\"Fs\"") 131 LISPOBJ(charname_29,"\"Gs\"") 132 LISPOBJ(charname_30,"\"Rs\"") 133 LISPOBJ(charname_31,"\"Us\"") 134 LISPOBJ(charname_32,"\"Sp\"") 135 LISPOBJ(charname_127,"\"Del\"") 136 /* The proposal to add: 137 constobj.d (UNIX_CHARNAMES): #\Erik is a synonym for #\Null. 138 LISPOBJ(charname_0_2,"\"Erik\"") - special "honour" for Mr. Nutgum 139 has been rejected because of a seriousness attack. */ 140 #endif 141 /* for ARRAY.D: */ 142 LISPOBJ(type_vector_with_fill_pointer,"(AND VECTOR (SATISFIES ARRAY-HAS-FILL-POINTER-P))") /* type for error message */ 143 /* for HASHTABL.D: */ 144 #ifdef GENERATIONAL_GC 145 LISPOBJ(gc_count,"0") 146 #endif 147 LISPOBJ(type_eq_hashfunction,"(MEMBER EXT::FASTHASH-EQ EXT::STABLEHASH-EQ)") 148 LISPOBJ(type_eql_hashfunction,"(MEMBER EXT::FASTHASH-EQL EXT::STABLEHASH-EQL)") 149 LISPOBJ(type_equal_hashfunction,"(MEMBER EXT::FASTHASH-EQUAL EXT::STABLEHASH-EQUAL)") 150 LISPOBJ(type_weak_ht,"(MEMBER :KEY :VALUE :KEY-AND-VALUE :KEY-OR-VALUE NIL)") 151 /* for RECORD.D: */ 152 LISPOBJ(constant_initfunction_code,".") 153 LISPOBJ(endless_loop_code,".") 154 /* for WEAK.D: */ 155 LISPOBJ(type_weak_alist,"(MEMBER :KEY :VALUE :KEY-AND-VALUE :KEY-OR-VALUE)") 156 /* for SEQUENCE.D: 157 internal list of all defined sequence-types: */ 158 LISPOBJ(seq_types,"NIL") 159 LISPOBJ(type_recognizable_sequence_type,"(SATISFIES SYSTEM::RECOGNIZABLE-SEQUENCE-TYPE-P)") /* type for error message */ 160 /* keyword-pairs for test_start_end (do not separate pairs!): */ 161 LISPOBJ(kwpair_start,":START") 162 LISPOBJ(kwpair_end,":END") 163 LISPOBJ(kwpair_start1,":START1") 164 LISPOBJ(kwpair_end1,":END1") 165 LISPOBJ(kwpair_start2,":START2") 166 LISPOBJ(kwpair_end2,":END2") 167 /* for PREDTYPE.D: 168 distinctive marks for classes, are filled by CLOS::%DEFCLOS */ 169 LISPOBJ(class_version_standard_class,"#()") 170 LISPOBJ(class_version_structure_class,"#()") 171 LISPOBJ(class_version_built_in_class,"#()") 172 LISPOBJ(class_defined_class,"CLOS::DEFINED-CLASS") 173 LISPOBJ(class_potential_class,"CLOS::POTENTIAL-CLASS") 174 /* some built-in-classes, are filled by CLOS::%DEFCLOS */ 175 LISPOBJ(class_array,"ARRAY") /* ---+ */ 176 LISPOBJ(class_bit_vector,"BIT-VECTOR") /* | order */ 177 LISPOBJ(class_character,"CHARACTER") /* | coordinated */ 178 LISPOBJ(class_complex,"COMPLEX") /* | with clos-class3.lisp! */ 179 LISPOBJ(class_cons,"CONS") 180 LISPOBJ(class_float,"FLOAT") 181 LISPOBJ(class_function,"FUNCTION") 182 LISPOBJ(class_hash_table,"HASH-TABLE") 183 LISPOBJ(class_integer,"INTEGER") 184 LISPOBJ(class_list,"LIST") 185 LISPOBJ(class_null,"NULL") 186 LISPOBJ(class_package,"PACKAGE") 187 LISPOBJ(class_pathname,"PATHNAME") 188 LISPOBJ(class_logical_pathname,"LOGICAL-PATHNAME") 189 LISPOBJ(class_random_state,"RANDOM-STATE") 190 LISPOBJ(class_ratio,"RATIO") 191 LISPOBJ(class_readtable,"READTABLE") 192 LISPOBJ(class_stream,"STREAM") 193 LISPOBJ(class_file_stream,"FILE-STREAM") 194 LISPOBJ(class_synonym_stream,"SYNONYM-STREAM") 195 LISPOBJ(class_broadcast_stream,"BROADCAST-STREAM") 196 LISPOBJ(class_concatenated_stream,"CONCATENATED-STREAM") 197 LISPOBJ(class_two_way_stream,"TWO-WAY-STREAM") 198 LISPOBJ(class_echo_stream,"ECHO-STREAM") 199 LISPOBJ(class_string_stream,"STRING-STREAM") 200 LISPOBJ(class_string,"STRING") 201 LISPOBJ(class_symbol,"SYMBOL") /* | */ 202 LISPOBJ(class_t,"T") /* | */ 203 LISPOBJ(class_vector,"VECTOR") /* ---+ */ 204 LISPOBJ(type_designator_character,"(EXT::DESIGNATOR CHARACTER)") 205 #if (base_char_code_limit < char_code_limit) 206 LISPOBJ(type_designator_base_char,"(EXT::DESIGNATOR BASE-CHAR)") 207 #endif 208 LISPOBJ(type_designator_function,"(OR FUNCTION SYMBOL (CONS (EQL SETF) (CONS SYMBOL NULL)) (CONS (EQL LAMBDA)))") 209 /* Upper bound for the number of structure classes present in the system: */ 210 LISPOBJ(structure_class_count_max,"0") 211 /* Upper bound for the number of standard classes present in the system: */ 212 LISPOBJ(standard_class_count_max,"0") 213 /* built-in-types for HEAP-STATISTICS */ 214 LISPOBJ(hs_t,"T") /* ---+ */ 215 LISPOBJ(hs_cons,"CONS") /* | order */ 216 LISPOBJ(hs_null,"NULL") /* | coordinated */ 217 LISPOBJ(hs_symbol,"SYMBOL") /* | with enum_hs_... */ 218 LISPOBJ(hs_simple_bit_vector,"SIMPLE-BIT-VECTOR") /* | in predtype.d! */ 219 LISPOBJ(hs_simple_2bit_vector,"EXT::SIMPLE-2BIT-VECTOR") 220 LISPOBJ(hs_simple_4bit_vector,"EXT::SIMPLE-4BIT-VECTOR") 221 LISPOBJ(hs_simple_8bit_vector,"EXT::SIMPLE-8BIT-VECTOR") 222 LISPOBJ(hs_simple_16bit_vector,"EXT::SIMPLE-16BIT-VECTOR") 223 LISPOBJ(hs_simple_32bit_vector,"EXT::SIMPLE-32BIT-VECTOR") 224 LISPOBJ(hs_simple_nilvector,"EXT::SIMPLE-NIL-VECTOR") 225 LISPOBJ(hs_simple_string,"SIMPLE-STRING") 226 LISPOBJ(hs_simple_vector,"SIMPLE-VECTOR") 227 LISPOBJ(hs_bit_vector,"BIT-VECTOR") 228 LISPOBJ(hs_2bit_vector,"EXT::2BIT-VECTOR") 229 LISPOBJ(hs_4bit_vector,"EXT::4BIT-VECTOR") 230 LISPOBJ(hs_8bit_vector,"EXT::8BIT-VECTOR") 231 LISPOBJ(hs_16bit_vector,"EXT::16BIT-VECTOR") 232 LISPOBJ(hs_32bit_vector,"EXT::32BIT-VECTOR") 233 LISPOBJ(hs_nilvector,"EXT::NIL-VECTOR") 234 LISPOBJ(hs_string,"STRING") 235 LISPOBJ(hs_vector,"VECTOR") 236 LISPOBJ(hs_simple_array,"SIMPLE-ARRAY") 237 LISPOBJ(hs_array,"ARRAY") 238 LISPOBJ(hs_function,"FUNCTION") 239 LISPOBJ(hs_file_stream,"FILE-STREAM") 240 LISPOBJ(hs_synonym_stream,"SYNONYM-STREAM") 241 LISPOBJ(hs_broadcast_stream,"BROADCAST-STREAM") 242 LISPOBJ(hs_concatenated_stream,"CONCATENATED-STREAM") 243 LISPOBJ(hs_two_way_stream,"TWO-WAY-STREAM") 244 LISPOBJ(hs_echo_stream,"ECHO-STREAM") 245 LISPOBJ(hs_string_stream,"STRING-STREAM") 246 LISPOBJ(hs_stream,"STREAM") 247 LISPOBJ(hs_hash_table,"HASH-TABLE") 248 LISPOBJ(hs_package,"PACKAGE") 249 LISPOBJ(hs_readtable,"READTABLE") 250 LISPOBJ(hs_pathname,"PATHNAME") 251 LISPOBJ(hs_logical_pathname,"LOGICAL-PATHNAME") 252 LISPOBJ(hs_random_state,"RANDOM-STATE") 253 LISPOBJ(hs_byte,"BYTE") 254 LISPOBJ(hs_special_operator,"EXT::SPECIAL-OPERATOR") 255 LISPOBJ(hs_load_time_eval,"EXT::LOAD-TIME-EVAL") 256 LISPOBJ(hs_symbol_macro,"EXT::SYMBOL-MACRO") 257 LISPOBJ(hs_global_symbol_macro,"EXT::GLOBAL-SYMBOL-MACRO") 258 LISPOBJ(hs_macro,"SYS::MACRO") 259 LISPOBJ(hs_function_macro,"EXT::FUNCTION-MACRO") 260 LISPOBJ(hs_big_read_label,"SYS::READ-LABEL") 261 LISPOBJ(hs_encoding,"EXT::ENCODING") 262 #ifdef FOREIGN 263 LISPOBJ(hs_foreign_pointer,"EXT::FOREIGN-POINTER") 264 #endif 265 #ifdef DYNAMIC_FFI 266 LISPOBJ(hs_foreign_address,"FFI::FOREIGN-ADDRESS") 267 LISPOBJ(hs_foreign_variable,"FFI::FOREIGN-VARIABLE") 268 LISPOBJ(hs_foreign_function,"FFI::FOREIGN-FUNCTION") 269 #endif 270 #ifdef HAVE_SMALL_SSTRING 271 LISPOBJ(hs_realloc_simple_string,"EXT::FORWARD-POINTER-SIMPLE-STRING") 272 #endif 273 LISPOBJ(hs_realloc_instance,"EXT::FORWARD-POINTER-INSTANCE") 274 LISPOBJ(hs_weakpointer,"EXT::WEAK-POINTER") 275 LISPOBJ(hs_weak_list,"EXT::WEAK-LIST") 276 LISPOBJ(hs_weak_alist,"EXT::WEAK-ALIST") 277 LISPOBJ(hs_weakmapping,"EXT::WEAK-MAPPING") 278 LISPOBJ(hs_finalizer,"EXT::FINALIZER") 279 #ifdef SOCKET_STREAMS 280 LISPOBJ(hs_socket_server,"SOCKET::SOCKET-SERVER") 281 #endif 282 #ifdef MULTITHREAD 283 LISPOBJ(hs_thread,"THREADS::THREAD") 284 LISPOBJ(hs_mutex,"THREADS::MUTEX") 285 LISPOBJ(hs_exemption,"THREADS::EXEMPTION") 286 #endif 287 #ifdef YET_ANOTHER_RECORD 288 LISPOBJ(hs_yetanother,"SYS::YETANOTHER") 289 #endif 290 LISPOBJ(hs_internal_weak_list,"SYS::INTERNAL-WEAK-LIST") 291 LISPOBJ(hs_weak_and_relation,"EXT::WEAK-AND-RELATION") 292 LISPOBJ(hs_weak_or_relation,"EXT::WEAK-OR-RELATION") 293 LISPOBJ(hs_weak_and_mapping,"EXT::WEAK-AND-MAPPING") 294 LISPOBJ(hs_weak_or_mapping,"EXT::WEAK-OR-MAPPING") 295 LISPOBJ(hs_internal_weak_alist,"SYS::INTERNAL-WEAK-ALIST") 296 LISPOBJ(hs_internal_weak_hashed_alist,"SYS::INTERNAL-WEAK-HASHED-ALIST") 297 LISPOBJ(hs_system_function,"EXT::SYSTEM-FUNCTION") 298 LISPOBJ(hs_bignum,"BIGNUM") 299 LISPOBJ(hs_ratio,"RATIO") 300 #ifndef IMMEDIATE_FFLOAT 301 LISPOBJ(hs_single_float,"SINGLE-FLOAT") 302 #endif /* | */ 303 LISPOBJ(hs_double_float,"DOUBLE-FLOAT") /* | */ 304 LISPOBJ(hs_long_float,"LONG-FLOAT") /* | */ 305 LISPOBJ(hs_complex,"COMPLEX") /* ---+ */ 306 LISPOBJ(gc_statistics_list,"NIL") 307 /* for PACKAGE.D: 308 internal list of all packages: */ 309 LISPOBJ(all_packages,".") 310 /* the keyword-package: */ 311 LISPOBJ(keyword_package,".") 312 /* the charset-package: */ 313 LISPOBJ(charset_package,".") 314 /* the default-package for *PACKAGE*: */ 315 LISPOBJ(default_package,".") 316 /* default-use-list: */ 317 LISPOBJ(use_default,"(\"COMMON-LISP\")") 318 /* default-package for -modern: */ 319 LISPOBJ(modern_user_package,".") 320 /* for SYMBOL.D: */ 321 LISPOBJ_S(gensym_prefix,"G") /* prefix for gensym */ 322 LISPOBJ_S(gentemp_prefix, "T") /* prefix for gentemp */ 323 LISPOBJ(gentemp_counter, "0") /* gentemp internal counter */ 324 /* for MISC.D: 325 basic knowledge: */ 326 LISPOBJ_S(lisp_implementation_type_string,"CLISP") 327 LISPOBJ_S(lisp_implementation_package_version,PACKAGE_VERSION) 328 /* we want here the _LINK_ time, but I have no idea about how to get it */ 329 LISPOBJ_S(lisp_implementation_version_built_string,__DATE__ __TIME__) 330 LISPOBJ(lisp_implementation_version_string,"NIL") /* cache */ 331 LISPOBJ(memory_image_timestamp,"NIL") /* the dump date of the current image */ 332 LISPOBJ(memory_image_host,"NIL") /* the host on which this image was dumped */ 333 /* The date of the last change of the bytecode interpreter 334 or the arglist of any built-in function in FUNTAB or FUNTABR */ 335 /* when changing, remove legacy ABI! */ 336 LISPOBJ(version,"(20100806)") 337 LISPOBJ(machine_type_string,"NIL") 338 LISPOBJ(machine_version_string,"NIL") 339 LISPOBJ(machine_instance_string,"NIL") 340 LISPOBJ(software_type,"NIL") /* initialized later */ 341 #if defined(GNU) 342 LISPOBJ_S(c_compiler_version,__VERSION__) 343 #endif 344 LISPOBJ(argv,"NIL") 345 /* for I18N.D: */ 346 LISPOBJ(current_language,".") 347 LISPOBJ(ansi,"NIL") 348 /* for ERROR.D: 349 error-message-startstring: */ 350 LISPOBJ_S(error_string1,"*** - ") 351 /* vector with conditions and simple-conditions: */ 352 LISPOBJ(error_types,"#()") 353 /* for errors of type TYPE-ERROR: */ 354 LISPOBJ(type_function_name,"(OR SYMBOL (CONS (EQL SETF) (CONS SYMBOL NULL)))") 355 /* the following 8 object order should be in sync with error.d:prepare_c_integer_signal() */ 356 LISPOBJ(type_uint8,"(INTEGER 0 255)") /* or "(UNSIGNED-BYTE 8)" */ 357 LISPOBJ(type_sint8,"(INTEGER -128 127)") /* or "(SIGNED-BYTE 8)" */ 358 LISPOBJ(type_uint16,"(INTEGER 0 65535)") /* or "(UNSIGNED-BYTE 16)" */ 359 LISPOBJ(type_sint16,"(INTEGER -32768 32767)") /* or "(SIGNED-BYTE 16)" */ 360 LISPOBJ(type_uint32,"(INTEGER 0 4294967295)") /* or "(UNSIGNED-BYTE 32)" */ 361 LISPOBJ(type_sint32,"(INTEGER -2147483648 2147483647)") /* or "(SIGNED-BYTE 32)" */ 362 LISPOBJ(type_uint64,"(INTEGER 0 18446744073709551615)") /* or "(UNSIGNED-BYTE 64)" */ 363 LISPOBJ(type_sint64,"(INTEGER -9223372036854775808 9223372036854775807)") /* or "(SIGNED-BYTE 64)" */ 364 LISPOBJ(type_array_index,"(INTEGER 0 (#.ARRAY-DIMENSION-LIMIT))") 365 LISPOBJ(type_array_length,"(INTEGER 0 #.ARRAY-DIMENSION-LIMIT)") 366 LISPOBJ(type_array_bit,"(ARRAY BIT)") 367 LISPOBJ(type_posfixnum,"(INTEGER 0 #.MOST-POSITIVE-FIXNUM)") 368 LISPOBJ(type_negfixnum,"(INTEGER #.MOST-NEGATIVE-FIXNUM (0))") 369 LISPOBJ(type_posbignum,"(INTEGER (#.MOST-POSITIVE-FIXNUM))") 370 LISPOBJ(type_negbignum,"(INTEGER * (#.MOST-NEGATIVE-FIXNUM))") 371 LISPOBJ(type_posfixnum1,"(INTEGER (0) #.MOST-POSITIVE-FIXNUM)") 372 LISPOBJ(type_array_rank,"(INTEGER 0 (#.ARRAY-RANK-LIMIT))") 373 LISPOBJ(type_radix,"(INTEGER 2 36)") 374 LISPOBJ(type_end_index,"(OR NULL INTEGER)") 375 LISPOBJ(type_posinteger,"(INTEGER 0 *)") 376 LISPOBJ(type_stringsymchar,"(OR STRING SYMBOL CHARACTER)") 377 LISPOBJ(type_proper_list,"(SATISFIES EXT::PROPER-LIST-P)") 378 LISPOBJ(type_svector2,"(SIMPLE-VECTOR 2)") 379 LISPOBJ(type_svector5,"(SIMPLE-VECTOR 5)") 380 LISPOBJ(type_climb_mode,"(INTEGER 1 5)") 381 LISPOBJ(type_hashtable_test,"(MEMBER EQ EQL EQUAL EQUALP #.#'EQ #.#'EQL #.#'EQUAL #.#'EQUALP)") 382 LISPOBJ(type_hashtable_size,"(INTEGER 0 #.(ASH MOST-POSITIVE-FIXNUM -1))") 383 LISPOBJ(type_hashtable_rehash_size,"(OR (INTEGER 1 *) (FLOAT (1.0) *))") 384 LISPOBJ(type_hashtable_rehash_threshold,"(REAL 0 1)") 385 LISPOBJ(type_boole,"(INTEGER 0 15)") 386 LISPOBJ(type_not_digit,"(AND CHARACTER (NOT (SATISFIES DIGIT-CHAR-P)))") 387 LISPOBJ(type_rtcase,"(MEMBER :UPCASE :DOWNCASE :PRESERVE :INVERT)") 388 LISPOBJ(type_peektype,"(OR BOOLEAN CHARACTER)") 389 LISPOBJ(type_printcase,"(MEMBER :UPCASE :DOWNCASE :CAPITALIZE)") 390 LISPOBJ(type_pprint_newline,"(MEMBER :LINEAR :FILL :MISER :MANDATORY)") 391 LISPOBJ(type_pprint_indent,"(MEMBER :BLOCK :CURRENT)") 392 LISPOBJ(type_random_arg,"(OR (INTEGER (0) *) (FLOAT (0.0) *))") 393 LISPOBJ(type_packname,"(OR PACKAGE STRING SYMBOL CHARACTER)") 394 LISPOBJ(type_posint16,"(INTEGER (0) (65536))") 395 LISPOBJ(type_string_integer,"(OR STRING INTEGER)") 396 LISPOBJ(type_stringsize,"(INTEGER 0 (#.SYS::STRING-DIMENSION-LIMIT))") 397 LISPOBJ(type_uint8_vector,"(ARRAY (UNSIGNED-BYTE 8) (*))") 398 LISPOBJ(type_position,"(OR (MEMBER :START :END) (INTEGER 0 4294967295))") 399 LISPOBJ(type_host,"(OR NULL STRING)") 400 LISPOBJ(type_version,"(OR (MEMBER NIL :WILD :NEWEST) (INTEGER (0) #.MOST-POSITIVE-FIXNUM) PATHNAME)") 401 LISPOBJ(type_direction,"(MEMBER :INPUT :INPUT-IMMUTABLE :OUTPUT :IO :PROBE)") 402 LISPOBJ(type_if_exists,"(MEMBER :ERROR :NEW-VERSION :RENAME :RENAME-AND-DELETE :OVERWRITE :APPEND :SUPERSEDE NIL)") 403 LISPOBJ(type_if_does_not_exist,"(MEMBER :ERROR :CREATE NIL)") 404 LISPOBJ(type_directory_not_exist,"(MEMBER :DISCARD :ERROR :KEEP :IGNORE)") 405 LISPOBJ(type_external_format,"(OR EXT::ENCODING (MEMBER :DEFAULT :UNIX :MAC :DOS))") 406 LISPOBJ(type_pathname_field_key,"(MEMBER :HOST :DEVICE :DIRECTORY :NAME :TYPE :VERSION NIL)") 407 #ifdef SOCKET_STREAMS 408 LISPOBJ(type_socket_option,"(MEMBER :SO-DEBUG :SO-ACCEPTCONN :SO-BROADCAST :SO-REUSEADDR :SO-DONTROUTE :SO-KEEPALIVE :SO-ERROR :SO-LINGER :SO-OOBINLINE :SO-TYPE :SO-RCVBUF :SO-SNDBUF :SO-RCVLOWAT :SO-SNDLOWAT :SO-RCVTIMEO :SO-SNDTIMEO)") 409 #endif 410 LISPOBJ(type_logical_pathname,"(OR LOGICAL-PATHNAME STRING STREAM SYMBOL)") 411 LISPOBJ(type_builtin_stream,"(SATISFIES SYSTEM::BUILT-IN-STREAM-P)") 412 /* for PATHNAME.D: */ 413 LISPOBJ(lib_dir,"NIL") /* must be set via a command line option */ 414 LISPOBJ(type_designator_pathname,"(OR STRING FILE-STREAM PATHNAME)") 415 #if defined(UNIX) || defined (WIN32_NATIVE) 416 LISPOBJ(type_priority,"(OR (MEMBER :HIGH :NORMAL :LOW) INTEGER)") 417 #endif 418 LISPOBJ(empty_logical_pathname,".") /* (already initialized) */ 419 LISPOBJ(handler_for_parse_error,"(#(PARSE-ERROR NIL))") 420 LISPOBJ(type_logical_pathname_string,"(AND STRING (SATISFIES SYSTEM::VALID-LOGICAL-PATHNAME-STRING-P))") 421 LISPOBJ_S(default_logical_pathname_host,"SYS") 422 LISPOBJ_S(empty_string,"") 423 LISPOBJ_S(wild_string,"*") 424 LISPOBJ_S(colon_string,":") 425 LISPOBJ_S(semicolon_string,";") 426 #ifdef PATHNAME_WIN32 427 LISPOBJ(backslash_string,"\"\\\\\"") 428 #endif 429 #if defined(PATHNAME_WIN32) 430 LISPOBJ(backslashbackslash_string,"\"\\\\\\\\\"") 431 LISPOBJ_S(lnk_string,"lnk") /* for woe32 shell link resolution */ 432 #endif 433 #if defined(PATHNAME_UNIX) 434 LISPOBJ_S(slash_string,"/") 435 #endif 436 LISPOBJ_S(dot_string,".") 437 #if defined(PATHNAME_WIN32) || defined(PATHNAME_UNIX) 438 LISPOBJ_S(dotdot_string,"..") 439 LISPOBJ_S(dotdotdot_string,"...") 440 #endif 441 #ifdef PATHNAME_WIN32 442 LISPOBJ_S(backupextend_string,".bak") /* name-extension of backupfiles */ 443 #endif 444 #ifdef PATHNAME_UNIX 445 LISPOBJ_S(backupextend_string,"%") /* name-extension of backupfiles */ 446 #endif 447 #ifdef PATHNAME_WIN32 448 /* default-drive (as string of length 1): */ 449 LISPOBJ(default_drive,"NIL") 450 #endif 451 #if defined(PATHNAME_UNIX) || defined(PATHNAME_WIN32) 452 LISPOBJ_S(wildwild_string,"**") 453 LISPOBJ(directory_absolute,"(:ABSOLUTE)") /* directory of the empty absolute pathname */ 454 #endif 455 LISPOBJ(user_homedir,"#\".\"") /* user-homedir-pathname */ 456 #ifdef UNIX 457 LISPOBJ(command_shell, "\"" SHELL "\"") /* command-shell as string */ 458 LISPOBJ(command_shell_option,"\"-c\"") /* command-shell-option for command */ 459 LISPOBJ(user_shell,"\"/bin/csh\"") /* user-shell as string */ 460 #elif defined(WIN32_NATIVE) 461 LISPOBJ(command_shell,"NIL") /* command-interpreter as string */ 462 #else 463 #error command_shell is not defined 464 #endif 465 /* list of all open channel-streams, terminal-streams: */ 466 LISPOBJ(open_files,"NIL") 467 #ifdef GC_CLOSES_FILES 468 /* During the GC: the list of file-streams to be closed after the GC: */ 469 LISPOBJ(files_to_close,"NIL") 470 #endif 471 /* defaults for COMPILE-FILE-call in SPVW: */ 472 LISPOBJ(source_file_type,"#\".lisp\"") 473 LISPOBJ(compiled_file_type,"#\".fas\"") 474 LISPOBJ(listing_file_type,"#\".lis\"") 475 /* for STREAM.D: */ 476 LISPOBJ(class_fundamental_stream,"NIL") /* #<STANDARD-CLASS FUNDAMENTAL-STREAM> */ 477 LISPOBJ(class_fundamental_input_stream,"NIL") /* #<STANDARD-CLASS FUNDAMENTAL-INPUT-STREAM> */ 478 LISPOBJ(class_fundamental_output_stream,"NIL") /* #<STANDARD-CLASS FUNDAMENTAL-OUTPUT-STREAM> */ 479 LISPOBJ(type_input_stream,"(SATISFIES INPUT-STREAM-P)") /* type for error-message */ 480 LISPOBJ(type_output_stream,"(SATISFIES OUTPUT-STREAM-P)") /* type for error-message */ 481 LISPOBJ(type_string_with_fill_pointer,"(AND STRING (SATISFIES ARRAY-HAS-FILL-POINTER-P))") /* type for error-message */ 482 /* also used in PATHNAME */ 483 LISPOBJ(handler_for_charset_type_error,"(#(SYSTEM::CHARSET-TYPE-ERROR NIL))") 484 LISPOBJ(handler_for_error,"(#(ERROR NIL))") 485 LISPOBJ(setf_stream_element_type,"(SETF STREAM-ELEMENT-TYPE)") 486 LISPOBJ(type_endianness,"(MEMBER :LITTLE :BIG)") /* type for error-message */ 487 LISPOBJ(type_open_file_stream,"(AND FILE-STREAM (SATISFIES OPEN-STREAM-P))") /* type for error-message */ 488 LISPOBJ(strmtype_ubyte8,"(UNSIGNED-BYTE 8)") /* as stream-element-type */ 489 LISPOBJ(standard_input_file_stream,"NIL") 490 LISPOBJ(standard_output_file_stream,"NIL") 491 LISPOBJ(standard_error_file_stream,"NIL") 492 LISPOBJ(type_buffered_arg,"(MEMBER :DEFAULT T NIL)") 493 /* for IO.D: 494 four readtable-case-values: */ 495 LISPOBJ(rtcase_0,":UPCASE") 496 LISPOBJ(rtcase_1,":DOWNCASE") 497 LISPOBJ(rtcase_2,":PRESERVE") 498 LISPOBJ(rtcase_3,":INVERT") 499 /* for reader: 500 standard-readtable of Common Lisp */ 501 LISPOBJ(standard_readtable,".") 502 /* prototype of the dispatch-reader-functions */ 503 LISPOBJ(dispatch_reader,"NIL") 504 LISPOBJ(dispatch_reader_index,"0") 505 /* prefix for character-names: */ 506 LISPOBJ(charname_prefix,"\"Code\"") 507 /* handler-types: */ 508 LISPOBJ(handler_for_arithmetic_error,"(#(ARITHMETIC-ERROR NIL))") 509 LISPOBJ_S(tildeA,"~A") 510 /* for printer: 511 substrings used for output of objects: */ 512 LISPOBJ_S(printstring_array,"ARRAY") 513 LISPOBJ_S(printstring_fill_pointer,"FILL-POINTER=") 514 LISPOBJ_S(printstring_address,"ADDRESS") 515 LISPOBJ_S(printstring_system,"SYSTEM-POINTER") 516 LISPOBJ_S(printstring_frame_pointer,"FRAME-POINTER") 517 LISPOBJ_S(printstring_read_label,"READ-LABEL") 518 LISPOBJ_S(printstring_unbound,"#<UNBOUND>") 519 LISPOBJ_S(printstring_unbound_readably,"#.(SYS::%UNBOUND)") 520 LISPOBJ_S(printstring_special_reference,"#<SPECIAL REFERENCE>") 521 LISPOBJ_S(printstring_implementation_dependent,"#<IMPLEMENTATION-DEPENDENT>") 522 LISPOBJ_S(printstring_disabled_pointer,"#<DISABLED POINTER>") 523 LISPOBJ_S(printstring_dot,"#<DOT>") 524 LISPOBJ_S(printstring_eof,"#<END OF FILE>") 525 LISPOBJ_S(printstring_deleted,"DELETED ") 526 LISPOBJ_S(printstring_package,"PACKAGE") 527 LISPOBJ_S(printstring_readtable,"READTABLE") 528 LISPOBJ(pathname_slotlist,"#.(list (cons :HOST #'pathname-host) (cons :DEVICE #'pathname-device) (cons :DIRECTORY #'pathname-directory) (cons :NAME #'pathname-name) (cons :TYPE #'pathname-type) (cons :VERSION #'pathname-version))") 529 LISPOBJ(byte_slotlist,"#.(list (cons :SIZE #'byte-size) (cons :POSITION #'byte-position))") 530 LISPOBJ_S(printstring_symbolmacro,"SYMBOL-MACRO") 531 LISPOBJ_S(printstring_globalsymbolmacro,"GLOBAL SYMBOL-MACRO") 532 LISPOBJ_S(printstring_macro,"MACRO") 533 LISPOBJ_S(printstring_functionmacro,"FUNCTION-MACRO") 534 LISPOBJ_S(printstring_encoding,"ENCODING") 535 #ifdef FOREIGN 536 LISPOBJ_S(printstring_invalid,"INVALID ") 537 LISPOBJ_S(printstring_fpointer,"FOREIGN-POINTER") 538 #endif 539 #ifdef DYNAMIC_FFI 540 LISPOBJ_S(printstring_faddress,"FOREIGN-ADDRESS") 541 LISPOBJ_S(printstring_fvariable,"FOREIGN-VARIABLE") 542 LISPOBJ_S(printstring_ffunction,"FOREIGN-FUNCTION") 543 #endif 544 LISPOBJ_S(printstring_weakpointer,"WEAK-POINTER") 545 LISPOBJ_S(printstring_broken_weakpointer,"#<BROKEN WEAK-POINTER>") 546 LISPOBJ_S(printstring_weak_list,"WEAK-LIST") 547 LISPOBJ_S(printstring_weak_alist,"WEAK-ALIST") 548 LISPOBJ_S(printstring_weakmapping,"WEAK-MAPPING") 549 LISPOBJ_S(printstring_broken_weakmapping,"#<BROKEN WEAK-MAPPING>") 550 LISPOBJ_S(printstring_finalizer,"#<FINALIZER>") 551 #ifdef SOCKET_STREAMS 552 LISPOBJ_S(printstring_socket_server,"SOCKET-SERVER") 553 #endif 554 #ifdef YET_ANOTHER_RECORD 555 LISPOBJ_S(printstring_yetanother,"YET-ANOTHER") 556 #endif 557 LISPOBJ_S(printstring_internal_weak_list,"#<INTERNAL-WEAK-LIST>") 558 LISPOBJ_S(printstring_weak_and_relation,"WEAK-AND-RELATION") 559 LISPOBJ_S(printstring_broken_weak_and_relation,"#<BROKEN WEAK-AND-RELATION>") 560 LISPOBJ_S(printstring_weak_or_relation,"WEAK-OR-RELATION") 561 LISPOBJ_S(printstring_broken_weak_or_relation,"#<BROKEN WEAK-OR-RELATION>") 562 LISPOBJ_S(printstring_weak_and_mapping,"WEAK-AND-MAPPING") 563 LISPOBJ_S(printstring_broken_weak_and_mapping,"#<BROKEN WEAK-AND-MAPPING>") 564 LISPOBJ_S(printstring_weak_or_mapping,"WEAK-OR-MAPPING") 565 LISPOBJ_S(printstring_broken_weak_or_mapping,"#<BROKEN WEAK-OR-MAPPING>") 566 LISPOBJ_S(printstring_internal_weak_alist,"#<INTERNAL-WEAK-ALIST>") 567 LISPOBJ_S(printstring_internal_weak_hashed_alist,"#<INTERNAL-WEAK-HASHED-ALIST>") 568 LISPOBJ_S(printstring_closure,"FUNCTION") 569 LISPOBJ_S(printstring_compiled_closure,"COMPILED-FUNCTION") 570 LISPOBJ_S(printstring_subr,"SYSTEM-FUNCTION") 571 LISPOBJ_S(printstring_addon_subr,"ADD-ON-SYSTEM-FUNCTION") 572 LISPOBJ_S(printstring_fsubr,"SPECIAL-OPERATOR") 573 LISPOBJ_S(printstring_closed,"CLOSED ") 574 LISPOBJ_S(printstring_input,"INPUT ") 575 LISPOBJ_S(printstring_output,"OUTPUT ") 576 LISPOBJ_S(printstring_io,"IO ") 577 /* Buffering mode, addressed by 578 (bit(1) if input-buffered) | (bit(0) if output-buffered). */ 579 LISPOBJ_S(printstring_buffered_00,"UNBUFFERED ") 580 LISPOBJ_S(printstring_buffered_01,"OUTPUT-BUFFERED ") 581 LISPOBJ_S(printstring_buffered_10,"INPUT-BUFFERED ") 582 LISPOBJ_S(printstring_buffered_11,"BUFFERED ") 583 /* name-string for each streamtype, addressed by streamtype: */ 584 LISPOBJ_S(printstring_strmtype_synonym,"SYNONYM") 585 LISPOBJ_S(printstring_strmtype_broad,"BROADCAST") 586 LISPOBJ_S(printstring_strmtype_concat,"CONCATENATED") 587 LISPOBJ_S(printstring_strmtype_twoway,"TWO-WAY") 588 LISPOBJ_S(printstring_strmtype_echo,"ECHO") 589 LISPOBJ_S(printstring_strmtype_str_in,"STRING-INPUT") 590 LISPOBJ_S(printstring_strmtype_str_out,"STRING-OUTPUT") 591 LISPOBJ_S(printstring_strmtype_str_push,"STRING-PUSH") 592 LISPOBJ_S(printstring_strmtype_pphelp,"PRETTY-PRINTER-HELP") 593 LISPOBJ_S(printstring_strmtype_buff_in,"BUFFERED-INPUT") 594 LISPOBJ_S(printstring_strmtype_buff_out,"BUFFERED-OUTPUT") 595 #ifdef GENERIC_STREAMS 596 LISPOBJ_S(printstring_strmtype_generic,"GENERIC") 597 #endif 598 LISPOBJ_S(printstring_strmtype_file,"FILE") 599 #ifdef KEYBOARD 600 LISPOBJ_S(printstring_strmtype_keyboard,"KEYBOARD") 601 #endif 602 LISPOBJ_S(printstring_strmtype_terminal,"TERMINAL") 603 #ifdef SCREEN 604 LISPOBJ_S(printstring_strmtype_window,"WINDOW") 605 #endif 606 #ifdef PRINTER 607 LISPOBJ_S(printstring_strmtype_printer,"PRINTER") 608 #endif 609 #ifdef PIPES 610 LISPOBJ_S(printstring_strmtype_pipe_in,"PIPE-INPUT") 611 LISPOBJ_S(printstring_strmtype_pipe_out,"PIPE-OUTPUT") 612 #endif 613 #ifdef X11SOCKETS 614 LISPOBJ_S(printstring_strmtype_x11socket,"X11-SOCKET") 615 #endif 616 #ifdef SOCKET_STREAMS 617 LISPOBJ_S(printstring_strmtype_socket,"SOCKET") 618 LISPOBJ_S(printstring_strmtype_twoway_socket,"SOCKET") 619 #endif 620 LISPOBJ_S(printstring_stream,"-STREAM") 621 #ifdef MULTITHREAD 622 LISPOBJ_S(printstring_thread,"THREAD") 623 LISPOBJ_S(printstring_mutex,"MUTEX") 624 LISPOBJ_S(printstring_exemption,"EXEMPTION") 625 LISPOBJ_S(printstring_inactive,"INACTIVE ") 626 LISPOBJ_S(printstring_recursive,"RECURSIVE ") 627 LISPOBJ_S(thread_break_description,"Ctrl-C: User break") 628 LISPOBJ(all_threads,"NIL") 629 LISPOBJ(threads_to_release,"NIL") 630 /* init_package() adds package mutexes here, so later we do 631 not want it re-initialzied */ 632 LISPOBJ(all_mutexes,".") 633 LISPOBJ(mutexes_to_release,"NIL") 634 LISPOBJ(all_exemptions,"NIL") 635 LISPOBJ(exemptions_to_release,"NIL") 636 /* tag at the bottom of each thread stack. used for killing thread via 637 (THROW thread_exit_tag) */ 638 LISPOBJ(thread_exit_tag,"(GENSYM)") 639 LISPOBJ(type_name_arg,"(OR STRING SYMBOL INTEGER)") 640 #endif 641 /* for LISPARIT.D: 642 various constant numbers: */ 643 #ifndef IMMEDIATE_FFLOAT 644 LISPOBJ(FF_zero,"0.0F0") 645 LISPOBJ(FF_one,"1.0F0") 646 LISPOBJ(FF_minusone,"-1.0F0") 647 #endif 648 LISPOBJ(DF_zero,"0.0D0") 649 LISPOBJ(DF_one,"1.0D0") 650 LISPOBJ(DF_minusone,"-1.0D0") 651 /* defaultlength for reading of long-floats (Integer >=LF_minlen, <2^intWCsize): */ 652 LISPOBJ(LF_digits,".") /* (already initialized) */ 653 /* variable long-floats: (already initialized) */ 654 LISPOBJ(SF_pi,".") /* value of pi as Short-Float */ 655 LISPOBJ(FF_pi,".") /* value of pi as Single-Float */ 656 LISPOBJ(DF_pi,".") /* value of pi as Double-Float */ 657 LISPOBJ(pi,".") /* value of pi, Long-Float of default length */ 658 LISPOBJ(LF_pi,".") /* value of pi, as exact as known */ 659 LISPOBJ(LF_ln2,".") /* value of ln 2, as exact as known */ 660 LISPOBJ(LF_ln10,".") /* value of ln 10, as exact as known */ 661 /* for EVAL.D: 662 toplevel-declaration-environment: */ 663 LISPOBJ(top_decl_env,"(NIL)") /* list of O(declaration_types) (is initialized later) */ 664 /* decl-spec with list of declaration-types to be recognized: */ 665 LISPOBJ(declaration_types,"(DECLARATION OPTIMIZE DECLARATION CLOS::DYNAMICALLY-MODIFIABLE SYS::IMPLEMENTATION-DEPENDENT)") 666 /* for DEBUG.D: */ 667 LISPOBJ_S(newline_string,NLstring) 668 /* prompts: */ 669 LISPOBJ_S(prompt_string,"> ") 670 LISPOBJ_S(breakprompt_string,". Break> ") 671 /* various strings for description of the stack: */ 672 LISPOBJ_S(showstack_string_lisp_obj,"- ") 673 LISPOBJ_S(showstack_string_bindung,NLstring " | ") 674 LISPOBJ_S(showstack_string_zuord," <--> ") 675 LISPOBJ_S(showstack_string_zuordtag," --> ") 676 LISPOBJ_S(showstack_string_VENV_frame,NLstring " VAR_ENV <--> ") 677 LISPOBJ_S(showstack_string_FENV_frame,NLstring " FUN_ENV <--> ") 678 LISPOBJ_S(showstack_string_BENV_frame,NLstring " BLOCK_ENV <--> ") 679 LISPOBJ_S(showstack_string_GENV_frame,NLstring " GO_ENV <--> ") 680 LISPOBJ_S(showstack_string_DENV_frame,NLstring " DECL_ENV <--> ") 681 /* for SPVW.D: */ 682 #ifdef WIN32_NATIVE 683 LISPOBJ(load_extra_file_types,"(\"BAT\")") 684 #endif 685 /* for control & io, function seclass_object(): */ 686 LISPOBJ(seclass_no_se,"(NIL NIL NIL)") 687 LISPOBJ(seclass_read,"(T NIL NIL)") 688 LISPOBJ(seclass_rd_sig,"(T T NIL)") 689 LISPOBJ(seclass_write,"(NIL T T)") 690 LISPOBJ(seclass_default,"(T T T)") 691 #ifdef DYNAMIC_MODULES 692 LISPOBJ_S(unknown_error,"Unknown error") 693 LISPOBJ_S(oomst_error,"Out of memory for subr_tab") 694 #endif 695 /* for FOREIGN.D: */ 696 #ifdef DYNAMIC_FFI 697 LISPOBJ(fp_zero,"NIL") 698 LISPOBJ(foreign_variable_table,"#.(make-hash-table :test #'equal)") 699 LISPOBJ(foreign_function_table,"#.(make-hash-table :test #'equal)") 700 LISPOBJ(foreign_inttype_table,"#.(make-hash-table :test #'equal)") 701 LISPOBJ(type_foreign_variable,"(OR FFI::FOREIGN-VARIABLE FFI::FOREIGN-ADDRESS)") 702 LISPOBJ(type_foreign_function,"(OR FFI::FOREIGN-FUNCTION FFI::FOREIGN-ADDRESS)") 703 #if defined(WIN32_NATIVE) || defined(HAVE_DLOPEN) 704 LISPOBJ(foreign_libraries,"NIL") 705 #endif 706 LISPOBJ(foreign_callin_table,"#.(make-hash-table :test #'eq)") 707 LISPOBJ(foreign_callin_vector,"#.(let ((array (make-array 1 :adjustable t :fill-pointer 1))) (sys::store array 0 0) array)") 708 #endif 709 #if !defined(MULTITHREAD) 710 #define LISPOBJ_TL(n,initstring) LISPOBJ(n,initstring) 711 #include "constobj_tl.c" 712 #endif 713