Commit Graph

603 Commits

Author SHA1 Message Date
Richard Kenner
c15648f7aa Changes to support ObjC as a front-end language.
From-SVN: r14284
1997-06-21 20:56:18 -04:00
Richard Kenner
14bb9bd890 Initial revision
From-SVN: r14283
1997-06-21 20:55:08 -04:00
Richard Kenner
d5d0a377e6 Initial revision
From-SVN: r14282
1997-06-21 20:42:06 -04:00
Richard Kenner
14499ba4f3 (__objc_block_return): Remove function.
(__objc_word_return, __objc_double_return): Remove functions.
(__objc_get_forward_imp): New function.
(__objc_init_dispatch_tables): Install zero instead of
__objc_init_install_dtable.
(__objc_init_install_dtable): No longer call the method but
allow objc_msg_lookup return it for normal execution.
(obj_msg_lookup): Differentiate between when a method isn't
implemented and when the dispatch table needs to be installed.
Return the IMP when the dispatch table is installed versus
having __objc_init_install_dtable call it.
(get_imp): Install dispatch table if needed and return IMP
from the newly installed dispatch table.
(__objc_responds_to): Install dispatch table if needed before
checking if method is implemented.

From-SVN: r13723
1997-03-17 17:00:10 -05:00
Richard Kenner
c8163b58ed Correct include path.
From-SVN: r13716
1997-03-16 08:41:08 -05:00
Richard Kenner
8235e418bc (__objc_block_return): New function.
(__objc_word_return, __objc_double_return): New functions.
(__objc_init_install_dtable): Call appropriate return function
based upon method type.

From-SVN: r13715
1997-03-16 08:40:47 -05:00
Richard Kenner
12d94bff7e (objc_module): Eliminate statics variable.
From-SVN: r13713
1997-03-15 07:57:55 -05:00
Richard Kenner
d3d71914cb (OBJC_O): Add linking.m.
From-SVN: r13712
1997-03-15 07:57:36 -05:00
Richard Kenner
7084b319a3 (class_add_method_list): Check for the +load method when adding a methods list to a class.
(class_add_method_list): Check for the +load method when adding a
methods list to a class.
(__objc_install_methods_in_dtable): New function.
(class_add_method_list): Don't check anymore for duplicate methods.

From-SVN: r13711
1997-03-15 07:57:06 -05:00
Richard Kenner
e29e95701b Initial revision
From-SVN: r13710
1997-03-15 07:56:24 -05:00
Richard Kenner
f0a5229172 (OBJC_VERSION): Increment version.
(objc_send_load, __objc_send_load): New functions.
(__objc_send_message_in_list): New function.
(__objc_force_linking): New function.
(__objc_exec_class): Don't call _objc_load_callback here.
(__objc_exec_class): Access statics from their new place in the defs variable.

From-SVN: r13709
1997-03-15 07:56:13 -05:00
Richard Kenner
e335b3ee7e (OBJC_VERSION): Increment version as recent changes have made old compiled code incompatible with current ObjC runtime.
(OBJC_VERSION): Increment version as recent changes have made old
compiled code incompatible with current ObjC runtime.
(build_objc_symtab_template): Make sure defs in objc_symtab is a NULL
terminated array.
(init_def_list): Attach statics to end of def list.
(init_objc_symtab): Take statics list into account.
(init_module_descriptor, build_module_descriptor): Don't add statics.
(generate_static_references): Indicate that statics are used.
(finish_objc): Process statics in the beginning.

From-SVN: r13708
1997-03-15 07:53:30 -05:00
Richard Kenner
f19911e44a Update documentation.
From-SVN: r13606
1997-02-04 06:14:25 -05:00
Richard Kenner
5ff0385cdb (__sel_register_typed_name): Eliminate compiler warnings with explicit cast.
From-SVN: r13599
1997-02-02 20:15:14 -05:00
Richard Kenner
e0d0c8a162 (__objc_runtime_mutex): Eliminate leading underscore from name of objc
mutex and thread structures.

From-SVN: r13598
1997-02-02 19:57:44 -05:00
Richard Kenner
47a84c97bf Prototypes for new functions.
(__objc_runtime_mutex): Eliminate leading underscore from name of objc
mutex and thread structures.

From-SVN: r13597
1997-02-02 19:54:47 -05:00
Richard Kenner
e64f9262e6 (objc_condition_{,de}allocate): New functions.
(objc_condition_{wait,broadcast,signal}): New functions.
(__objc_runtime_mutex): Eliminate leading underscore
from name of objc mutex and thread structures.

From-SVN: r13596
1997-02-02 19:53:23 -05:00
Richard Kenner
f4d01e7962 (objc_condition_{,de}allocate): New functions.
(objc_condition_{wait,broadcast,signal}): New functions.
(__objc_runtime_mutex): Eliminate leading underscore from name of objc mutex
and thread structures.

From-SVN: r13595
1997-02-02 19:52:38 -05:00
Richard Kenner
3136f75db4 (objc_condition_{,de}allocate): New functions.
(objc_condition_{wait,broadcast,signal}): New functions.
(__objc_runtime_mutex): Eliminate leading underscore from name of objc
mutex and thread structures.

From-SVN: r13594
1997-02-02 19:51:58 -05:00
Richard Kenner
3cec07d501 (hash_delete): Step through the hash nodes versus using hash_next to
increase efficiency.

From-SVN: r13593
1997-02-02 19:42:48 -05:00
Richard Kenner
eb0bc1e9b4 (__objc_forward): Replace call to abort function with call to
objc_error function.

From-SVN: r13592
1997-02-02 19:42:25 -05:00
Richard Kenner
efa7c88e59 Remove error handling declarations.
From-SVN: r13591
1997-02-02 19:42:01 -05:00
Richard Kenner
d2c60b5c23 Declare error handling functions and typedef for user specified error handler function.
Declare error handling functions and typedef for user specified error
handler function.  Define error codes used by the runtime library.

From-SVN: r13590
1997-02-02 19:41:41 -05:00
Richard Kenner
7e46250027 (objc_verror): New function.
(objc_fatal): Remove function.
(objc_set_error_handler): New function.
(_objc_error_handler): New global variable.
(__alpha__): Remove unneeded code.
(objc_error): Allow user specified error handler function to trap and
handle the objc error.  Added an error code parameter which indicates
the specific error that occured.
(objc_malloc, objc_atomic_malloc): Replace call to objc_fatal function
with call to objc_error function.
(objc_valloc, objc_realloc, objc_calloc): Likewise.

From-SVN: r13589
1997-02-02 19:41:03 -05:00
Richard Kenner
241365d3cc (init_check_module_version): Replace call to abort function with call
to objc_error function.

From-SVN: r13588
1997-02-02 19:40:12 -05:00
Richard Kenner
b2948281c3 (objc_sizeof_type, objc_alignof_type): Replace call to abort function with call to objc_error function.
(objc_sizeof_type, objc_alignof_type): Replace call to abort function
with call to objc_error function.
(objc_skip_typespec): Likewise.

From-SVN: r13587
1997-02-02 19:39:52 -05:00
Richard Kenner
86eb7fef04 (objc_get_class): Replace call to abort function with call to
objc_error function.

From-SVN: r13586
1997-02-02 19:39:22 -05:00
Richard Kenner
72c6da8a74 Replace call to abort or __objc_fatal functions with call to objc_error function throughout the complete file.
Replace call to abort or __objc_fatal functions with call to
objc_error function throughout the complete file.
(__objc_finish_read_root_object): Use hash table instead of list.

From-SVN: r13585
1997-02-02 19:39:00 -05:00
Richard Kenner
5b9b7438f3 (-error:): Call objc_error function instead of using function pointer.
From-SVN: r13584
1997-02-02 19:38:23 -05:00
Richard Kenner
71ccd1fc55 (encode_aggregate_within): New function.
(encode_aggregate): Generates encodings for unions similar to those for
structs except surrounded by parenthesis instead of braces.

From-SVN: r13583
1997-02-02 08:24:57 -05:00
Richard Kenner
6fceaa5f5b (stdlib.h): Define __USE_FIXED_PROTOTYPES__ before including stdlib.h.
From-SVN: r13250
1996-12-07 18:58:28 -05:00
Richard Kenner
1ebf4f3910 (BOOL): Define BOOL as int for VxWorks.
From-SVN: r12827
1996-09-23 22:45:12 -04:00
Richard Kenner
039f5fb1a8 Replace use of __objc_xmalloc and free with objc_malloc and objc_free.
From-SVN: r12768
1996-09-22 10:49:59 -04:00
Richard Kenner
df7fbc8cd8 Replace use of __objc_xcalloc, __objc_xrealloc, and __objc_xmalloc
with objc_calloc, objc_realloc, and objc_malloc.

From-SVN: r12767
1996-09-22 10:41:58 -04:00
Richard Kenner
2dac9ca60b (__objc_xmalloc, __objc_xrealloc): Delete.
From-SVN: r12766
1996-09-22 10:39:18 -04:00
Richard Kenner
a1feef752b Replace use of __obj_xmalloc and free with objc_malloc and objc_free.
From-SVN: r12765
1996-09-22 10:36:59 -04:00
Richard Kenner
d2ca2ea6e8 (_objc_malloc): New function pointer.
(_objc_atomic_malloc, _objc_valloc): Likewise.
(_objc_realloc, _objc_calloc, _objc_free): Likewise

From-SVN: r12764
1996-09-22 10:36:08 -04:00
Richard Kenner
79236a0da5 (objc_malloc): Renamed from __objc_xmalloc.
(objc_realloc): Renamed from __objc_realloc.
(objc_atomic_malloc): New function.
(objc_valloc): New function.
(objc_calloc): Renamed from __objc_calloc.
(objc_free): New function.

From-SVN: r12763
1996-09-22 10:35:45 -04:00
Richard Kenner
9d46282b6c Replace use of free with objc_free.
From-SVN: r12762
1996-09-22 10:35:09 -04:00
Richard Kenner
6f18718f3f Replace use of __objc_xcalloc and free with objc_calloc and objc_free.
From-SVN: r12761
1996-09-22 10:34:13 -04:00
Richard Kenner
ed40285ff6 Replace use of __objc_xmalloc and free with objc_malloc and objc_free.
From-SVN: r12760
1996-09-22 10:33:49 -04:00
Richard Kenner
6a305f32b2 Formatting changes.
From-SVN: r12617
1996-08-11 22:27:09 -04:00
Richard Kenner
2a7c93ee56 Formattign changes.
From-SVN: r12616
1996-08-11 22:26:19 -04:00
Richard Kenner
ca4da59718 Formtting changes.
From-SVN: r12615
1996-08-11 22:25:33 -04:00
Richard Kenner
f92076037c (hash_is_key_in_hash): Function somehow got lost.
From-SVN: r12614
1996-08-11 22:25:20 -04:00
Mike Stump
1ef08c6373 install EH code
From-SVN: r12550
1996-07-23 20:09:26 +00:00
Mike Stump
0f41302f47 formatting tweaks
From-SVN: r12390
1996-07-03 22:07:53 +00:00
Richard Kenner
d5d5fa1824 (objc_thread_id): Use pthread_getunique_np to obtain a thread ID value.
(objc_mutex_allocate): Cast mutex->owner to _objc_thread_t.
(objc_mutex_deallocate): Likewise.
(objc_mutex_unlock): Likewise.
(objc_mutex_trylock):  Declare thread_id as _objc_thread_t.
(objc_mutex_lock): Likewise.
(objc_mutex_unlock): Likewise.

From-SVN: r12375
1996-06-28 18:50:43 -04:00
Richard Kenner
b05a8d8a6b (ifdef __alpha__): Don't declare `free'.
From-SVN: r12374
1996-06-28 18:50:18 -04:00
Richard Kenner
ad24823466 (__objc_block_forward): New function.
(get_imp, objc_msg_lookup): Use different forwarding function
when the returning a floating point value.

From-SVN: r12371
1996-06-28 16:48:18 -04:00
Richard Kenner
018086d1d0 (__sel_register_typed_name): Additional parameter that indicates
whether name and type parameters are constant or not.

From-SVN: r12262
1996-06-10 11:59:30 -04:00
Richard Kenner
1717ec5915 (__objc_thread_detach_function): Clear thread storage.
Call the thread hook function when first becoming multi-threaded.
(objc_set_thread_callback): New function.

From-SVN: r12261
1996-06-10 11:58:41 -04:00
Richard Kenner
f2433f89b4 (objc_set_thread_callback): New function.
(objc_thread_callback): Typedef for the hook function.

From-SVN: r12260
1996-06-10 11:58:20 -04:00
Richard Kenner
8c3f352664 (libobjc.a): Don't delete the library.
From-SVN: r12259
1996-06-10 11:58:05 -04:00
Richard Kenner
8c55cd7870 (__objc_init_protocols): Need to unlock mutex.
From-SVN: r12258
1996-06-10 11:49:49 -04:00
Richard Kenner
2361ec2a84 Initial revision
From-SVN: r12220
1996-06-07 19:22:01 -04:00
Richard Kenner
7cc5b18f7b (__objc_thread_exit_status): Declare global variable.
From-SVN: r12219
1996-06-07 19:21:30 -04:00
Richard Kenner
8341df325a Remove inclusion of source files.
From-SVN: r12218
1996-06-07 19:21:17 -04:00
Richard Kenner
cc782a7e9e Now compiles as a separate source file, so include appropriate
Objective-C headers.

From-SVN: r12217
1996-06-07 19:21:00 -04:00
Richard Kenner
7228791ecf (OBJC_THREAD_FILE): Add target and dependency.
From-SVN: r12216
1996-06-07 19:16:50 -04:00
Richard Kenner
673a261e4f (objc_get_uninstalled_dtable): New declaration.
From-SVN: r12020
1996-05-17 19:53:18 -04:00
Richard Kenner
7136f13204 (objc_get_uninstalled_dtable): New function.
From-SVN: r12019
1996-05-17 19:52:54 -04:00
Richard Kenner
fc94a55b92 Initial revision
From-SVN: r11985
1996-05-17 08:28:54 -04:00
Richard Kenner
b8abf72abb entered into RCS
From-SVN: r11984
1996-05-17 08:27:31 -04:00
Richard Kenner
a3381c2a7d Initial revision
From-SVN: r11983
1996-05-17 08:17:48 -04:00
Richard Kenner
b2c6b6c6ac (OBJC_O): Add dependency for nil_method.c.
From-SVN: r11982
1996-05-17 08:17:07 -04:00
Richard Kenner
44ffc80b50 (nil_method): Deleted from here.
From-SVN: r11981
1996-05-17 08:16:46 -04:00
Richard Kenner
cc06bcdb37 Include objc/objc.h here instead of in objc/hash.c to get BOOL typedef.
From-SVN: r11980
1996-05-17 08:12:32 -04:00
Richard Kenner
168887fa2c (hash_is_key_in_hash): New function.
From-SVN: r11979
1996-05-17 08:12:15 -04:00
Richard Kenner
1139608504 (hash_value_for_key): Prevent endless loop when 0 was stored in a
hashtable.

From-SVN: r11926
1996-05-05 13:13:21 -04:00
Richard Kenner
8b7bf67189 (_objc_thread_id): Correct return type from int to _objc_thread_id.
From-SVN: r11821
1996-04-16 16:31:17 -04:00
Richard Kenner
f061780b03 (objc_skip_typespec): Don't abort for _C_UNDEF.
From-SVN: r11761
1996-04-14 07:52:23 -04:00
Richard Kenner
489c81a38f Inlcude thr.h, not thread.h.
From-SVN: r11666
1996-04-04 12:35:55 -05:00
Richard Kenner
5f79ec0ec0 Include thr.h, not thread.h.
From-SVN: r11665
1996-04-04 12:35:00 -05:00
Richard Kenner
7fb04be124 Rename thread-* to thr-*.
From-SVN: r11664
1996-04-04 12:26:03 -05:00
Richard Kenner
cd9255f6d3 Rename thread* to thr*.
From-SVN: r11663
1996-04-04 12:24:18 -05:00
Richard Kenner
06f5c9df49 (objc_mutex_unlock): Properly declare thread_id.
From-SVN: r11612
1996-03-25 08:09:26 -05:00
Richard Kenner
8d95e9ad11 Initial revision
From-SVN: r11453
1996-03-05 09:22:13 -05:00
Richard Kenner
ca10c449d6 Delete reference to thread-test directory.
From-SVN: r11452
1996-03-05 09:14:02 -05:00
Richard Kenner
10c6702fa3 Initial revision
From-SVN: r11451
1996-03-05 09:13:36 -05:00
Richard Kenner
749815a2e8 Delete reference to thread-test.
From-SVN: r11450
1996-03-05 09:13:24 -05:00
Richard Kenner
271809f768 Initial revision
From-SVN: r11449
1996-03-05 09:13:02 -05:00
Richard Kenner
d50e6b7b37 (get_imp, __objc_responds_to): Surround sarray access with mutex lock/unlock.
(__objc_init_install_dtable): Likewise.
(__objc_update_dispatch_table_for_class): Likewise.
(__objc_print_dtable_stats): Likewise.

From-SVN: r11448
1996-03-05 09:12:47 -05:00
Richard Kenner
2dae9809ee (sel_get_typed_uid, sel_get_any_typed_uid): Likewise.
(sel_get_any_uid, sel_get_name, sel_register_name): Likewise.
(sel_register_typed_name): Likewise.

From-SVN: r11447
1996-03-05 09:12:08 -05:00
Richard Kenner
9f26926521 (union sversion): New.
(struct sarray): Maintain multiple versions.
(sarray_remove_garbage): Add prototype.

From-SVN: r11446
1996-03-05 09:11:25 -05:00
Richard Kenner
1ebb5fcc64 (sarray_{remove,free}_garbage): New functions.
(sarray_at_put, sarray_new, sarray_lazy_copy):
Modify/copy sarray structure/data in a thread-safe manner
(sarray_{realloc,free}): Reallocate/free sarray structure/data in a
thread-safe manner.

From-SVN: r11445
1996-03-05 09:10:50 -05:00
Richard Kenner
54d643f6f2 Include objc/thread.h.
From-SVN: r11444
1996-03-05 09:10:10 -05:00
Richard Kenner
691466c0b5 Update comments.
From-SVN: r11443
1996-03-05 09:09:10 -05:00
Richard Kenner
aef85e6a98 (__objc_runtime_mutux, __objc_runtime_thread_alive): New variables.
(objc_init_statics, __objc_init_protocols): Surround sarray access
with mutex lock/unlock
(__objc_exec_class): Likewise.
Initialization for thread-safe global variables.
Declarations for thread-safe functions and global variables

From-SVN: r11442
1996-03-05 09:07:56 -05:00
Richard Kenner
53cc7066b8 (__objc_init_class_tables): Surround sarray access with mutex lock/unlock.
(__objc_add_class_to_hash, objc_lookup_class): Likewise.
(objc_get_class, objc_get_next_class): Likweise.
(__objc_resolve_class_links, class_pose_as) Likewise.

From-SVN: r11441
1996-03-05 09:06:45 -05:00
Richard Kenner
625fc99df2 Changes to compile new files and name renaming.
From-SVN: r11440
1996-03-05 09:06:02 -05:00
Richard Kenner
605bf7304d (objc_{write,read}_type, case _C_STRUCT_B): Fix typo.
From-SVN: r10990
1996-01-15 12:31:49 -05:00
Richard Kenner
3ea4ff2e26 (objc_alignof_type): Handle _C_PTR case.
From-SVN: r10807
1995-12-18 19:31:18 -05:00
Richard Kenner
fb3ba99d63 (objc_alignof_type): Handle _C_PTR case.
From-SVN: r10723
1995-12-14 18:13:16 -05:00
Richard Kenner
c0cacfd5a5 Changed archive command for libobjc.a to use $? for objects.
From-SVN: r10332
1995-09-12 17:40:04 -04:00
Richard Kenner
abc95ed36d Fix spelling errors.
From-SVN: r10289
1995-08-28 06:54:22 -04:00
Richard Kenner
682d017157 objc-api.h (sel_get_any_typed_uid): Declare new function.
From-SVN: r10234
1995-08-13 21:47:53 -04:00
Richard Kenner
8b4d4a9da8 (sel_get_any_typed_uid): New function.
From-SVN: r10233
1995-08-13 21:47:34 -04:00
Richard Kenner
66759bfbb7 Change FSF address.
From-SVN: r9990
1995-06-15 17:07:30 -04:00
Richard Kenner
ed2ecfcbc9 Update header.
From-SVN: r9989
1995-06-15 17:07:13 -04:00
Richard Kenner
de18aff348 Change FSF address.
From-SVN: r9988
1995-06-15 17:06:59 -04:00
Richard Kenner
0af195cf99 Update FSF address.
From-SVN: r9972
1995-06-15 08:55:05 -04:00
Richard Kenner
4c38e45bc6 Update header.
From-SVN: r9971
1995-06-15 08:44:50 -04:00
Richard Kenner
84c09f78a1 Update FSF address.
From-SVN: r9970
1995-06-15 08:44:04 -04:00
Richard Kenner
701a1e6342 Update header.
From-SVN: r9969
1995-06-15 08:37:49 -04:00
Richard Kenner
6bc06b8f99 Update FSF address.
From-SVN: r9968
1995-06-15 08:37:21 -04:00
Richard Kenner
7f3ebb7ba9 Update header.
From-SVN: r9963
1995-06-15 07:54:51 -04:00
Richard Kenner
890edadebf Update FSF address.
From-SVN: r9962
1995-06-15 07:54:32 -04:00
Richard Kenner
f7ca2fe71e (hack_method_prototype): Set DECL_CONTEXT of parms.
From-SVN: r9953
1995-06-14 17:32:36 -04:00
Richard Kenner
0763f3ab57 (build_module_descriptor, really_start_method): Pass extra parm to
start_function.

From-SVN: r9945
1995-06-14 08:08:06 -04:00
Richard Kenner
2d2af5169d (PRECOMPUTE_SELECTORS, struct soffset): Use #ifdef __sparc__, not
sparc.

From-SVN: r9821
1995-05-25 17:27:36 -04:00
Richard Kenner
51900510d2 Numerous formatting changes.
(NULLT): Deleted; all uses changed to NULL_TREE.
(get_{static,object}_reference, objc_add_static_instance):
Use push_obstacks instead of saving obstacks manually.
(build_{selector,class}_reference_decl): Likewise.
(build_objc_string_decl, build_protocol_reference): Likewise.
(comp_{method,proto}_with_proto): Likewise.
(create_builtin_decl, synth_module_prologue): Set DECL_ARTIFICIAL for internal
objects.
(build_{selector,class}_reference_decl, add_objc_decls): Likewise.
(generate_objc_symtab_decl, build_module_descriptor): Likewise.
(build_protocol_reference): Likewise.
(build_objc_string_decl, synch_forward_declarations): Likewise.
Delete call to end_temporary_allocation.
(generate_static_references, generate_strings): Likewise.
(build_selector_translation_table, generate_category): Likewise.
(generate_{ivars,protocol}_list, build_protocol_reference): Likewise.
(build_objc_string_object): If next_runtime, put everything in
permanent obstack.
(objc_add_static_instance): Use build_decl instead of start_decl
and finish_decl_top_level.
(build_{class_reference,objc_string}_decl): Clear DECL_CONTEXT.
(start_class): Exit with FATAL_EXIT_CODE, not 1.
(add_objc_decls): Don't set DECL_IN_SYSTEM_HEADER.

From-SVN: r9764
1995-05-22 17:02:40 -04:00
Richard Kenner
bbcffef3ad (struct sarray): Make capacity size_t.
From-SVN: r9722
1995-05-16 17:46:53 -04:00
Richard Kenner
2b61d00a8b (sarray_realloc): Make array index variables size_t.
From-SVN: r9721
1995-05-16 17:46:42 -04:00
Richard Kenner
2c89fb2e66 (__objc_write_class): Write class version.
(__objc_write_selector, objc_{write,read}_selector): Handle null selector.

From-SVN: r9720
1995-05-16 17:46:23 -04:00
Richard Kenner
9faa82d8c0 Fix typos in comments.
From-SVN: r9712
1995-05-16 08:39:54 -04:00
Richard Kenner
8e3dc5f661 (__objc_init_install_dtable): Fix misspelling in name of local label
`already_initialized'.

From-SVN: r9708
1995-05-16 07:09:02 -04:00
Richard Kenner
73bddf80d5 entered into RCS
From-SVN: r9700
1995-05-15 23:12:15 -04:00
Richard Kenner
0ad228e654 (start_method_def): Mark _self as possibly unused.
From-SVN: r9683
1995-05-14 11:38:31 -04:00
Richard Kenner
fc55cc66b2 (unused_list): New variable.
(build_tmp_function_decl): Call push_parm_decl with new format.
(start_class): Initialize unused_list.
(start_method_def): Call push_parm_decl with new format and mark _cmp as
possibly unused.

From-SVN: r9658
1995-05-12 15:54:00 -04:00
Richard Kenner
df27f225b7 (objc_init_statics): Fix missing part of last change.
From-SVN: r9604
1995-05-09 19:11:43 -04:00
Richard Kenner
a142e7ccfe (__objc_send_initialize): Call superclass if object does not implement
+initialize.

From-SVN: r9597
1995-05-09 11:44:43 -04:00
Richard Kenner
a4137a04de (_objc_load_callback): Add declaration.
From-SVN: r9593
1995-05-08 18:13:53 -04:00
Richard Kenner
d8a55d0960 (_objc_load_callback): Add declaration.
(__objc_exec_class): Call _objc_load_callback after every Class or Category
is added.

From-SVN: r9592
1995-05-08 18:13:33 -04:00
Richard Kenner
3ce88d8f5c (SHELL): Now /bin/sh.
From-SVN: r9582
1995-05-05 16:54:10 -04:00
Doug Evans
5a1f85b4f3 NXConstantString.h renamed to NXConstStr.h.
From-SVN: r9579
1995-05-05 17:32:07 +00:00
Richard Kenner
48b2b6676f NXConstantString renamed to NXConstStr.
From-SVN: r9575
1995-05-04 18:01:21 -04:00
Doug Evans
f4f2475387 (*): Update calls to start_decl, finish_struct (pass NULLs for attributes).
From-SVN: r9528
1995-04-28 05:07:47 +00:00
Richard Kenner
4cb8c14b60 (OBJC_VERSION): Version 7.
(build_objc_string_object): Build a full declaration if not using the next
runtime.
(objc_add_static_instance): New function.
(init_module_descriptor): Add reference to static instances table.
(build_module_descriptor): Add field for static instances table.
(get_objc_string_decl): New function.
(generate_static_references): New function.
(finish_objc): Call generate_static_references if needed.

From-SVN: r9500
1995-04-26 19:18:37 -04:00
Richard Kenner
0994488a6b Changed Class * to Class in order to match NEXTSTEP and OpenStep
runtime.

From-SVN: r9497
1995-04-26 19:16:05 -04:00
Richard Kenner
bc1f3f7791 (OBJC_O): Added bare-bones implementation of NXConstantString.
From-SVN: r9496
1995-04-26 19:08:38 -04:00
Richard Kenner
f76bab0219 Initial revision
From-SVN: r9495
1995-04-26 19:08:15 -04:00
Richard Kenner
4426bf3fe6 Changed Class * to Class in order to match NEXTSTEP and OpenStep runtime.
Changed Class * to Class in order to match NEXTSTEP and OpenStep
runtime.
(OBJC_VERSION): Version 7.
(objc_init_statics): New function.
(__objc_exec_class): Invoke objc_init_statics if needed.

From-SVN: r9494
1995-04-26 19:07:00 -04:00
Richard Kenner
e35ec8520b Changed Class * to Class in order to match NEXTSTEP and OpenStep runtime.
Changed Class * to Class in order to match NEXTSTEP and OpenStep
runtime.
(objc_static_instances): New struct to record static instances of a certain
class.
(objc_module): New tag STATICS to point to the table of objc_statics_instances.

From-SVN: r9493
1995-04-26 19:05:45 -04:00
Richard Kenner
2a50a79275 (SHELL): New definition.
From-SVN: r9288
1995-04-01 09:46:59 -05:00
Richard Kenner
ac6b994fe0 Put Alpha-specific decls before #include of runtime.h.
From-SVN: r9212
1995-03-20 08:03:42 -05:00
Richard Kenner
d8d27748c5 (build_module_descriptor, really_start_method): Pass new parm to
start_function.

From-SVN: r9150
1995-03-09 21:32:43 -05:00
Richard Kenner
8c4caa3de9 Added {} around file variable.
From-SVN: r9023
1995-02-21 19:02:59 -05:00
Jason Merrill
2c5f4139a9 __attribute__ ((constructor))
From-SVN: r8747
1995-01-14 01:09:01 +00:00
Richard Kenner
d5e4fa5e17 (class_create_instance): Replace memchr with memset.
From-SVN: r8515
1994-11-18 19:10:21 -05:00
Ian Lance Taylor
f76b9db287 Check target endianness at run time, not compile time
From-SVN: r8470
1994-11-16 21:10:09 +00:00
Richard Kenner
a2991183af (init_objc): Add missing casts to args of bcopy.
From-SVN: r8407
1994-11-10 15:07:16 -05:00
Richard Kenner
bab5e7d550 (lang_init): Ensure line number is 0, not -1.
From-SVN: r8406
1994-11-10 15:04:44 -05:00
Richard Kenner
8be3ef7d1d (__objc_xcalloc): Use calloc instead malloc/bzero.
From-SVN: r8357
1994-10-28 19:13:10 -04:00
Doug Evans
8184390eea archive.c (__objc_free): New function.
* objc/archive.c (__objc_free): New function.
(__objc_finish_read_root_object): Use it.

From-SVN: r8243
1994-10-08 15:16:09 +00:00
Kresten Krab Thorup
ffa8bd9bcb (BOOL): Changed from char to unsigned char.
From-SVN: r8230
1994-10-06 16:24:03 +00:00
Kresten Krab Thorup
b962cd0b23 Delay eeing when unarchiving.
From-SVN: r8229
1994-10-06 16:17:38 +00:00
Richard Kenner
627c097fdc (warn_with_method): Make arg int, not char.
From-SVN: r8148
1994-09-27 18:31:04 -04:00
Michael Meissner
b840bfb0a2 Respin DI support to be combine friendly; Allow push of SF without temp reg; Fix broken i386 untyped_call
From-SVN: r8098
1994-09-20 18:36:51 +00:00
Kresten Krab Thorup
2acb03882a (__objc_init_protocols): Remove assertion
,

From-SVN: r8031
1994-09-07 15:30:01 +00:00
Kresten Krab Thorup
ad4f2e420b (conformsTo:): Change implementati to allways use class to do lookup.
From-SVN: r8030
1994-09-07 15:28:04 +00:00
Kresten Krab Thorup
f6df50cfd6 (objc_get_meta_class): New function.
From-SVN: r7997
1994-08-29 15:43:01 +00:00
Kresten Krab Thorup
2691a6224f (get_imp): don't inline on i386.
From-SVN: r7996
1994-08-29 15:42:11 +00:00
Kresten Krab Thorup
4d4d7c0e7f (build_selector_translation_table): Reset current_function_decl after hack_function_prototype build it.
(build_selector_translation_table): Reset
current_function_decl after hack_function_prototype build it.
(build_module_descriptor): Return constructor name from functions
decl_rtl.

From-SVN: r7944
1994-08-19 15:36:22 +00:00
Kresten Krab Thorup
f4e12fadd1 (objc_sizeof_type): Assign from ROUND,
don't increment.  Remove ; after while to fix infinite loop.
        Add float and double cases.
        (objc_alignof_type):  Add float and double cases.

From-SVN: r7929
1994-08-15 16:03:36 +00:00
Kresten Krab Thorup
121b312b90 encoding.c (objc_sizeof_type): Should assign from ROUND, not increment.
* objc/encoding.c (objc_sizeof_type): Should assign from ROUND,
	not increment.  Remove ; after while to fix infinite loop.
	Add support for floats and doubles.
	(objc_alignof_type):  Add support for floats and doubles.
	* objc/selector.c (): Use __objc_selector_names, not
	__objc_selector_array.
	(sel_types_match): New function.
	(sel_get_typed_uid): Modified to use sel_types_match, so that we
	can get typed selectors in an architecture-independent way.  Fixed
	strcmp that should have been !strcmp.

From-SVN: r7928
1994-08-15 15:51:03 +00:00
Kresten Krab Thorup
15408e26c2 removed declaration of bzero
From-SVN: r7805
1994-07-28 16:56:52 +00:00
Jim Wilson
b1cf6cee09 (build_module_descriptor): Don't set DECL_EXTERNAL on
current_function_decl.

From-SVN: r7789
1994-07-21 15:13:24 -07:00
Richard Kenner
ccccb52764 Include stdarg.h before stdio.h.
From-SVN: r7757
1994-07-13 06:47:59 -04:00
Kresten Krab Thorup
50b07e5b2a *** empty log message ***
From-SVN: r7705
1994-07-11 18:00:49 +00:00
Kresten Krab Thorup
42cfe4cf3e incremented objc_version iff using gnu runtime.
From-SVN: r7623
1994-06-30 16:22:23 +00:00
Kresten Krab Thorup
a39d31bc0c This patch makes selectors in the Objective-C language be pointers to a struct { void *sel_id...
This patch makes selectors in the Objective-C language be pointers
        to a struct { void *sel_id, char *sel_types }, where the sel_types
        element is the type encoding of the method arguments.

From-SVN: r7622
1994-06-30 16:18:55 +00:00
Kresten Krab Thorup
7a1dd32325 (read:, write:, streamVersion:):
Un-disable for alpha.  (forward::, performv::): Declare and fix to
        return retval_t. .

From-SVN: r7621
1994-06-30 16:18:55 +00:00
Kresten Krab Thorup
5d0f30f711 objc-act.c (get_proto_encoding, [...]): New fucnctions.
* objc-act.c (get_proto_encoding, build_typed_selector_reference):
        New fucnctions. (UTAG_PROTOCOL): New define.
        (objc_selector_template, flag_typed_selectors): New variables.
        (objc_init): set flag_typed_selectors if -fgnu-runtime.
        (synth_module_prologue): Change declaration of
        _OBJC_SELECTOR_TABLE when flag_typed_selectors is non-null.
        (build_module_descriptor): Make sure the generated constructor
        function is declared public.
        (build_selector): Only cast to SEL when not doing typed selectors.
        (build_selector_translation_table): Rewrite initialization.
        (build_tmp_function_decl): Make up new name when called, since it
        may now be called multiple times.
        (hack_method_prototype): Use init_function_start to reinit args
        machinery.  Also set current_function_decl before calling
        assign_parms.
        (generate_protocols):  Don't generate encoding twice.
        (build_selector_template): New function.
        (build_method_list_template): Generate (void*)0 as first element,
        not (int)0.
        (build_message_expr): move the call to build_selector_reference
        towards the end, where we have determined the function prototype.

From-SVN: r7620
1994-06-30 16:17:36 +00:00
Richard Kenner
3d89634a51 (OBJC_O): Add encoding.o.
From-SVN: r7049
1994-04-16 16:51:12 -04:00
Jim Wilson
d2a1b32f57 Delete use of IN_GCC to control stddef.h/gstddef.h include.
From-SVN: r6948
1994-03-31 21:50:23 -08:00
Jim Wilson
c2ab36e655 Change "gstddef.h" to <stddef.h>. Change "gstdarg.h" to <stdarg.h>.
From-SVN: r6945
1994-03-31 21:33:24 -08:00
Jim Wilson
cb55fc67b7 Change "gstdarg.h" to <stdarg.h>.
From-SVN: r6944
1994-03-31 21:31:21 -08:00
Doug Evans
5366ab1d32 (*.o): Add explicit dependencies for Sun's VPATH.
From-SVN: r6788
1994-03-14 20:15:59 +00:00
Richard Kenner
82812e560c (SUBDIR_INCLUDES): Add -I for include directory.
From-SVN: r6465
1994-02-02 14:21:50 -05:00
Doug Evans
ff942a9829 #ifdef out uses of TypedStream for the alpha, not supported yet.
From-SVN: r6426
1994-01-24 23:28:33 +00:00
Richard Kenner
2663b06b38 Initial revision
From-SVN: r6214
1993-12-12 06:13:42 -05:00
Richard Kenner
cb778d408a Include ctype.h.
From-SVN: r6190
1993-12-06 07:40:22 -05:00
Richard Stallman
c3c1218645 Include "tconfig.h" before "runtime.h".
From-SVN: r6112
1993-11-18 08:08:17 +00:00
Richard Stallman
6c8747b19a (compare_strings): Check for null pointers.
From-SVN: r6014
1993-11-05 20:32:06 +00:00
Richard Stallman
c35a847ec5 (objc_read_string): Allocate string properly.
From-SVN: r6013
1993-11-05 20:31:48 +00:00
Richard Stallman
83a4b97f7d Include tconfig.h.
From-SVN: r5971
1993-11-02 07:53:45 +00:00
Richard Kenner
415f766a65 (check_methods_accessible): Fix bug in -Wno-protocol.
(check_methods_accessible): Fix bug in -Wno-protocol.  Reset chain to
bottom class for each search.

From-SVN: r5927
1993-10-28 21:33:07 -04:00
Kresten Krab Thorup
3ac2f5d2ae (objc_read_object): Added declaration.
From-SVN: r5488
1993-09-27 21:28:23 +00:00
Kresten Krab Thorup
214a36e850 (-compare:, -shouldNotImplement:): Added.
From-SVN: r5399
1993-09-22 18:00:23 +00:00
Kresten Krab Thorup
d4b130122f (objc_write_type, objc_write_types): Take take char** args for writing strings in stead of char* to match NeXT.
(objc_write_type, objc_write_types): Take
       take char** args for writing strings in stead of char* to
       match NeXT.  Also correct some typos in error messages.

From-SVN: r5398
1993-09-22 17:59:50 +00:00
Kresten Krab Thorup
9cf8d5481b (objc_read_string): Allocate n+1 chars instead of just n.
From-SVN: r5371
1993-09-20 10:27:23 +00:00
Kresten Krab Thorup
b783df230b Initial revision
From-SVN: r5206
1993-08-24 10:05:25 +00:00
Kresten Krab Thorup
772fa04a92 (objc_msg_sendv): Use new encoding facilities.
(__objc_update_dispatch_table_for_class):
        Don't free dtable... (memory leak to make posing work)
(__objc_update_dispatch_table_for_class):
        Free old dispatch table and install a new.

From-SVN: r5205
1993-08-24 10:01:23 +00:00
Kresten Krab Thorup
2224b8ccb3 (nil_method): Don't define it, import it from sendmsg.c.
(arglist_t): Data-definition changed.

From-SVN: r5204
1993-08-24 10:00:49 +00:00
Kresten Krab Thorup
62b9a71206 (CLS_SETNUMBER): Clear old number
From-SVN: r5203
1993-08-24 10:00:19 +00:00
Kresten Krab Thorup
499056939e (class_pose_as): lazy copy dtables.
#include sarray.h
(class_pose_as): Rewritten

From-SVN: r5202
1993-08-24 09:59:41 +00:00
Kresten Krab Thorup
0b3d89ca54 (-performv): Use new objc_msg_sendv.
From-SVN: r5201
1993-08-24 09:59:14 +00:00
Kresten Krab Thorup
a62354a0db (sendmsg.c, fflags, xforward): Targets removed;
(OBJC_O): Added encoding.o;
(OBJC_H): Added encoding.h, removed mutex.h.

From-SVN: r5200
1993-08-24 09:58:45 +00:00
Kresten Krab Thorup
30c0e2df8c (offset_is_register): New variable
(offset_is_register): New variable
        (forwarding_offset): Use apply_args_register_offset to get
        register offset.
        (encode_method_def, encode_method_prototype): Prepend argument
        offset by '+' if passed in register.
        (apply_args_register_offset): Added declaration.
(generate_method_descriptors, generate_ivar_lists,
        generate_dispatch_tables): Reorganized use of constructors.
        (build_descriptor_table_initializer, build_ivar_list_initializer,
        build_dispatch_table_initializer): Removed argument `int *size'.

From-SVN: r5199
1993-08-24 09:56:48 +00:00
Per Bothner
6b3cf8c6c4 (build_module_descriptor): Use new function get_file_function_name.
From-SVN: r5137
1993-08-11 19:45:47 -07:00
Richard Stallman
89ef104634 Call default_conversion for NAME.
(build_shared_structure_initializer):
Call default_conversion for NAME.
(add_objc_string): Make an ADDR_EXPR to return.
(init_objc_symtab): Make ADDR_EXPR for UOBJC_SELECTOR_TABLE_decl.

Build all CONSTRUCTORs with types.
(build_constructor): New function.  All CONSTRUCTOR builds changed.
(init_def_list, init_objc_symtab): New arg TYPE.
(init_module_descriptor): Likewise.
(init_objc_symtab): Pass TYPE arg to init_def_list.
(generate_objc_symtab_decl): Pass TYPE arg to init_objc_symtab.
(build_module_descriptor): Pass TYPE arg to init_module_descriptor.
(build_descriptor_table_initializer): New arg TYPE.
(generate_method_descriptors): Pass TYPE arg to
build_descriptor_table_initializer.
(generate_protocols): Pass TYPE arg to build_protocol_initializer.
(uild_protocol_initializer): New arg TYPE.
(build_ivar_list_initializer): New arg TYPE.
(generate_ivar_lists): Pass TYPE arg to build_ivar_list_initializer.
(build_dispatch_table_initializer): New arg TYPE.
(generate_dispatch_tables): Pass TYPE arg to
build_dispatch_table_initializer.
(build_category_initializer): New arg TYPE.
(build_shared_structure_initializer): New arg TYPE.
(generate_category): Pass TYPE arg to build_category_initializer.
(generate_shared_structures): Pass TYPE arg to
build_shared_structure_initializer.

From-SVN: r5049
1993-08-01 05:53:52 +00:00
Richard Stallman
081be30bbf (synth_module_prologue): Call layout_type for the array
type used for _OBJC_SELECTOR_TABLE.

From-SVN: r4932
1993-07-18 05:29:38 +00:00
Richard Stallman
2a73b0b200 (encode_type_qualifiers): Add casts to enums in indices.
From-SVN: r4844
1993-07-05 21:16:10 +00:00
Richard Stallman
e287a52ca0 (encode_type): Add cases for DImode, encoded as 'q' and 'Q' respectively.
From-SVN: r4643
1993-06-06 22:55:40 +00:00
Richard Stallman
1cd88c716e (objc_msg_sendv): Pass a dummy va_list, not 0, to objc_error.
From-SVN: r4631
1993-06-05 03:00:59 +00:00
Richard Stallman
0a8305859d (copy-headers): chmod the headers, not the dir.
From-SVN: r4625
1993-06-03 04:58:40 +00:00
Richard Stallman
eba92c951e (__objc_init_protocols): Call recursively on super protocols.
(__objc_init_protocols): Call recursively
on super protocols.  Make local var `proto_class' static.

From-SVN: r4544
1993-05-23 19:33:55 +00:00
Richard Stallman
ecd023b662 (objc_protocol): New field `class_pointer'.
From-SVN: r4543
1993-05-23 19:33:36 +00:00
Richard Stallman
5c940d7a7e (sarray_at_put): Add #ifdef case for
!defined(PRECOMPUTE_SELECTORS) and OBJC_SPARSE2.

From-SVN: r4526
1993-05-21 15:39:23 +00:00
Richard Stallman
d0b85cd13e (sarray_get): Add #ifdef case for
!defined(PRECOMPUTE_SELECTORS) and OBJC_SPARSE2.

From-SVN: r4525
1993-05-21 15:38:47 +00:00
Richard Stallman
b0bdbfb34f *** empty log message ***
From-SVN: r4511
1993-05-20 03:13:00 +00:00
Richard Stallman
4f52d29057 (handle_class_ref): Call assemble_constant_align before output_constant.
From-SVN: r4510
1993-05-20 03:11:40 +00:00
Richard Stallman
0046ffa3f0 (__objc_init_protocols): Don't install protocol class pointer twice.
From-SVN: r4450
1993-05-14 16:05:19 +00:00
Richard Stallman
36d5f78c02 Include gstdarg.h before stdio.h.
From-SVN: r4435
1993-05-13 12:34:36 +00:00
Richard Stallman
677849a795 Include gstdarg.h, not stdarg.h.
From-SVN: r4407
1993-05-10 06:03:43 +00:00
Kresten Krab Thorup
8c357b2d96 Conditionally include gstddef or stddef
From-SVN: r4396
1993-05-09 13:08:15 +00:00
Richard Stallman
6b7e6ce457 (string_section): Delete comma before close-brace.
From-SVN: r4392
1993-05-09 04:52:03 +00:00
Richard Stallman
7518f9cc23 Use gstddef.h, with doublequotes.
From-SVN: r4374
1993-05-06 23:10:46 +00:00
Richard Stallman
b54b3fb023 (OBJC_GEN_METHOD_LABEL): Do use CAT_NAME.
From-SVN: r4364
1993-05-06 17:39:52 +00:00
Richard Stallman
266dd51787 (check_methods_accessible): Handle interface types.
From-SVN: r4357
1993-05-06 15:59:25 +00:00
Kresten Krab Thorup
d9d27c6e36 calloc -> __objc_xcalloc, bzero instances
From-SVN: r4351
1993-05-06 09:23:58 +00:00
Richard Stallman
4be7cc989c (__objc_send_initialize, class_add_method_list):
Allow multiple +initialize methods per class.

From-SVN: r4349
1993-05-06 02:42:55 +00:00
Kresten Krab Thorup
90a0448559 undid freed+error patch
From-SVN: r4336
1993-05-05 15:52:00 +00:00
Kresten Krab Thorup
d8f779eadf (OBJC_O): FREED.o added
(OBJC_O): FREED.o added
(OBJC_H): error.h added

From-SVN: r4334
1993-05-05 13:54:10 +00:00
Kresten Krab Thorup
4665616f99 (__objc_add_handler, __objc_remove_handler,
__objc_raise_error): New functions.
(__ex_last_handler): New variable

From-SVN: r4333
1993-05-05 13:52:15 +00:00
Kresten Krab Thorup
c8266dd238 (-shouldNotImplement:): New method
(-shouldNotImplement:): New method
(-free): assign [FREED class] to isa when freeing

From-SVN: r4332
1993-05-05 13:51:43 +00:00
Kresten Krab Thorup
27f581c390 (-shouldNotImplement:): New method
From-SVN: r4331
1993-05-05 13:51:15 +00:00
Kresten Krab Thorup
1df03188a2 Initial revision
From-SVN: r4330
1993-05-05 08:19:48 +00:00
Kresten Krab Thorup
991d3e71ce Headerfiles reorganized
From-SVN: r4329
1993-05-05 08:13:15 +00:00
Richard Stallman
a34f8b66ba (copy-headers): Put `-' on mkdir command.
From-SVN: r4307
1993-05-03 10:42:16 +00:00
Richard Stallman
5690d33f63 (xforward): Add `else true;' for Ultrix 4.2 make.
From-SVN: r4297
1993-05-01 21:02:10 +00:00
Tom Wood
a878dab7ef (build_ivar_reference): Warn when a class method
refers to an instance variable.

From-SVN: r4294
1993-05-01 10:48:31 +00:00
Kresten Krab Thorup
1b61a40eca _forward.c renamed to xforward.c
From-SVN: r4276
1993-04-29 17:16:48 +00:00
Kresten Krab Thorup
bb29a1a848 Added check for selectors==0
From-SVN: r4271
1993-04-29 11:50:17 +00:00
Kresten Krab Thorup
65e1be69ba Uninstalled argframe macros
From-SVN: r4270
1993-04-29 07:06:18 +00:00
Kresten Krab Thorup
e0cf078f81 Fixed bug in argframe
From-SVN: r4256
1993-04-28 14:30:33 +00:00
Kresten Krab Thorup
d5247e3ea2 Changed to use argframe macros
From-SVN: r4253
1993-04-27 20:36:53 +00:00
Kresten Krab Thorup
6cac0166dc -x test changed to -s test in fflags target
From-SVN: r4245
1993-04-27 10:30:12 +00:00
Kresten Krab Thorup
d0b575120e Definition of (Meta)Class_t eliminated, using Class*
From-SVN: r4244
1993-04-27 07:41:50 +00:00
Kresten Krab Thorup
a7ab3794a9 Runtime portability cleanup
From-SVN: r4235
1993-04-26 16:06:37 +00:00
Kresten Krab Thorup
33d9bef5ab Changed unsigned int to size_t when casting pointers to integers
From-SVN: r4233
1993-04-26 09:45:17 +00:00
Kresten Krab Thorup
e312f9659f Updated to use IN_OBJC
From-SVN: r4232
1993-04-26 07:40:03 +00:00
Kresten Krab Thorup
c455809014 Updated to use the above IN_OBJC
From-SVN: r4231
1993-04-26 07:39:32 +00:00
Kresten Krab Thorup
a1d7405ce0 Take out archiving for alpha
From-SVN: r4230
1993-04-26 07:39:17 +00:00
Kresten Krab Thorup
0f7b4f6905 Take out archiving support for alpha
From-SVN: r4229
1993-04-26 07:38:58 +00:00
Kresten Krab Thorup
f60897dace Take out archiving support for alpha.
From-SVN: r4228
1993-04-26 07:38:28 +00:00
Kresten Krab Thorup
c68873264d new #define used to control inclusion of gstdarg or stdarg for the runtime.
new #define used to control inclusion
        of gstdarg or stdarg for the runtime. .

From-SVN: r4227
1993-04-26 07:38:11 +00:00
Richard Kenner
963342adbf (HASHFUNCTION): Cast pointers to widest int type.
From-SVN: r4205
1993-04-24 11:14:44 -04:00
Tom Wood
392202b07d *** empty log message ***
From-SVN: r4192
1993-04-22 11:48:29 +00:00
Tom Wood
f620c21b9f Rename and add types and constants
From-SVN: r4159
1993-04-15 17:30:36 +00:00
Tom Wood
59ce3fc81a (IS_ID, IS_PROTOCOL_QUALIFIED_ID, IS_SUPER): New type checking macros.
(IS_ID, IS_PROTOCOL_QUALIFIED_ID, IS_SUPER): New type
        checking macros.
        (objc_comptypes, build_message_expr, gen_declspecs): Use them.
(IS_ID, IS_PROTOCOL_QUALIFIED_ID, IS_SUPER): New type
        checking macros.
        (objc_comptypes, build_message_expr, gen_declspecs): Use them.
(gen_declarator): Don't use strcpy's return value.
(build_message_expr): Allow any type that matches
        objc_class_type.
(get_class_reference): We already have a name.
(build_objc_string): Use TREE_SET_CODE instead of
        assigning to TREE_CODE.
        (build_objc_string_object): Ditto.

From-SVN: r4158
1993-04-15 17:27:29 +00:00
Tom Wood
81e4c08f9f (maybe_objc_comptypes): Return 0 (incompatible) rather than 2 (similar enough) as the default.
(maybe_objc_comptypes): Return 0
        (incompatible) rather than 2 (similar enough) as the default.
        This was an inadvertent change in the Objective-C merge.

From-SVN: r4153
1993-04-14 17:32:18 +00:00
Tom Wood
7651f8f787 (get_class_reference): Call add_class_reference for
the GNU runtimes.

From-SVN: r4151
1993-04-14 16:08:43 +00:00
Kresten Krab Thorup
034dec7319 (-awake): Corrected name of method -awake: to -awake for compatibility
(-awake): Corrected name of method -awake: to -awake for compatibility
(+streamVersion:): New method

From-SVN: r4150
1993-04-14 09:12:35 +00:00
Kresten Krab Thorup
d9a2904b7e (objc_get_stream_class_version): Added prototype
From-SVN: r4149
1993-04-14 09:12:35 +00:00
Kresten Krab Thorup
adfab6dfca (__objc_finish_read_root_object): Corrected name of method -awake: to -awake for compatibility
(__objc_finish_read_root_object): Corrected name of method -awake: to -awake for compatibility
(objc_get_stream_class_version): New function

From-SVN: r4148
1993-04-14 09:12:35 +00:00
Kresten Krab Thorup
a6b66e343f *** empty log message ***
From-SVN: r4126
1993-04-13 17:45:32 +00:00
Kresten Krab Thorup
40a254f6c8 Updated to new filenames
From-SVN: r4125
1993-04-13 17:37:55 +00:00
Kresten Krab Thorup
bd075bad8e Updated for new filenames
From-SVN: r4124
1993-04-13 17:24:08 +00:00
Kresten Krab Thorup
ff2fda34f6 Changed includes to double quote style
From-SVN: r4123
1993-04-13 17:21:11 +00:00
Kresten Krab Thorup
b0033312d6 Changed includes to doublequote style
From-SVN: r4122
1993-04-13 17:19:49 +00:00
Kresten Krab Thorup
143dc6466f (-Wprotocol): added
(-Wprotocol): added
(flag_warn_protocol): New variable
(check_methods_accessible): New function
(check_protocol): Use check_methods or check_methods_accessible
depending on flag_warn_protocol to check protocol conformance.

(start_class): For class implementations Assign
SUPER_CLASS_NAME from interface specification if not present.

From-SVN: r4121
1993-04-13 12:57:23 +00:00
Kresten Krab Thorup
36be30f1bc includes changed to double quote style
From-SVN: r4113
1993-04-13 02:12:40 +00:00
Tom Wood
ba2e27865b *** empty log message ***
From-SVN: r4112
1993-04-13 01:58:32 +00:00
Kresten Krab Thorup
f5689463af (_forward, fflags): made target error phrone
(_forward, fflags): made target error phrone
(objc-msg.o, _forward): Now uses explicit path in stead of implicit $<

From-SVN: r4111
1993-04-13 00:49:57 +00:00
Tom Wood
5fa63f2ada (get_static_reference, get_objcect_reference,
start_protocol): Make a tree vector for new protocol types.
	(start_class): The tree vector for class types is longer.

From-SVN: r4109
1993-04-12 23:52:10 +00:00
Tom Wood
812207f08b (CLASS_PROTOCOL_LIST, PROTOCOL_LIST,
PROTOCOL_FORWARD_DECL, TYPE_PROTOCOL_LIST): Rearrange use of type
	members to avoid use of noncopied_parts.

From-SVN: r4108
1993-04-12 23:51:07 +00:00
Kresten Krab Thorup
24e5fe8bae (-awake:): added methods
From-SVN: r4097
1993-04-12 15:50:02 +00:00
Kresten Krab Thorup
8117ac5599 Update for new runtime
From-SVN: r4096
1993-04-12 15:44:52 +00:00
Kresten Krab Thorup
2ebb305328 *** empty log message ***
From-SVN: r4095
1993-04-12 15:44:37 +00:00
Kresten Krab Thorup
6d9bd62495 now "#include"s objc-archive.h
From-SVN: r4094
1993-04-12 15:44:25 +00:00
Kresten Krab Thorup
d408c5dad6 (__objc_init_install_dtable,
__objc_install_dtable_for_class): Call to
__objc_resolve_class_links moved to the latter.

From-SVN: r4093
1993-04-12 15:44:02 +00:00
Kresten Krab Thorup
eca33b05fb Stripped anything added by
kane@cc.purdue.edu which is not considered "minor changes"

From-SVN: r4092
1993-04-12 15:43:31 +00:00
Kresten Krab Thorup
ab65ae3cec Deleted #include "mutext.h"
From-SVN: r4091
1993-04-12 15:42:44 +00:00
Kresten Krab Thorup
e9dce16126 (-read:, -write:): added
Stripped anything added by
kane@cc.purdue.edu which is not considered "minor changes"

From-SVN: r4090
1993-04-12 15:41:52 +00:00
Kresten Krab Thorup
5375a2043d (objc_write_reference) added
From-SVN: r4089
1993-04-12 15:12:59 +00:00
Kresten Krab Thorup
305f8c5baf Updated for new runtime
From-SVN: r4088
1993-04-12 15:00:55 +00:00
Tom Wood
c72fc2d9d9 Initial revision
From-SVN: r4077
1993-04-10 01:05:19 +00:00
Tom Wood
b2055d6de3 Update to new runtimes.
From-SVN: r4076
1993-04-10 01:05:19 +00:00
Tom Wood
3e676e9922 Initial revision
From-SVN: r4075
1993-04-10 01:03:51 +00:00
Tom Wood
2fb3112712 Add support for protocols, classes, and strings.
Add support for protocols, classes, and
	strings.  Update the runtime targets for the new GNU runtimes as
	well as existing NeXT runtimes.

From-SVN: r4069
1993-04-09 23:12:37 +00:00
Tom Wood
e31c7eec77 *** empty log message ***
From-SVN: r4068
1993-04-09 23:12:37 +00:00
Mike Stump
d0d4af87cc Added front-end taggint to object files.
From-SVN: r3874
1993-03-25 08:51:26 +00:00
Richard Kenner
f005288757 (build_objc_method_call, get_class_reference):
Call assemble_external on anything we are about to generate a call to.
(get_super_receiver): Likewise.
(handle_class_ref): Put constant in readonly-data section, not text.
(build_objc_symtab_template): Correctly build index type for 0-length array.

From-SVN: r3734
1993-03-14 17:21:33 -05:00
Richard Stallman
7bbc643254 (OBJC_GEN_METHOD_LABEL): Convert colons to _'s.
Don't use the category name or the number.

From-SVN: r3691
1993-03-10 07:19:29 +00:00
Michael Meissner
c3c03e50c0 Close #ifdef NEXT_OBJC_RUNTIME properly.
From-SVN: r3687
1993-03-09 16:32:42 +00:00
Richard Stallman
187e4b0f22 (really_start_method): Always use OBJC_GEN_METHOD_LABEL.
Pass method_slot as additional arg.
(OBJC_GEN_METHOD_LABEL): Add default definition.

From-SVN: r3677
1993-03-08 21:17:33 +00:00
Richard Stallman
d33edda78e (handle_class_ref): Call assemble_external.
From-SVN: r3649
1993-03-04 21:20:14 +00:00
Richard Stallman
b16f586d98 (HASHFUNCTION): Insure nonnegative hash even if addresses are negative.
From-SVN: r3473
1993-02-15 07:18:09 +00:00
Richard Stallman
f79322f009 (init_objc): Use xrealoc, not realloc.
From-SVN: r3419
1993-02-03 23:23:22 +00:00
Doug Evans
8935266327 * (build_module_descriptor): fix call to start_function
From-SVN: r3397
1993-01-31 20:24:19 +00:00
Richard Stallman
e58232cd7b Include objc-act.h.
From-SVN: r3272
1993-01-19 03:21:31 +00:00
Richard Stallman
25eddb2cc5 Comment change.
From-SVN: r3271
1993-01-19 03:20:52 +00:00
Richard Stallman
51480b1e3e (encode_method_def): Null-terminate encoding.
(build_ivar_list_initializer): Null-terminate type encoding.

From-SVN: r3270
1993-01-19 03:18:50 +00:00
Paul Eggert
d09c632362 # Fix misspellings in comments.
From-SVN: r3190
1993-01-11 05:12:26 +00:00
Richard Stallman
c55dc79a59 (init_module_descriptor):
Use size_in_bytes to get size of `struct objc_module'.

From-SVN: r3168
1993-01-09 09:14:53 +00:00
Richard Stallman
80485a6d56 Rename decls for vars renamed to _objc_alloc, _objc_dealloc,
_objc_realloc, _objc_copy, _objc_error.

From-SVN: r3101
1993-01-05 19:55:35 +00:00
Richard Stallman
bc957254f8 Minor typographical changes.
From-SVN: r2913
1992-12-26 22:09:40 +00:00
Richard Stallman
b53241dce5 (build_encode_expr): Terminate the encode string with a null.
(encode_aggregate): Distinguish pointer to record from a
record.  Output fields for record.  Fix unions.

From-SVN: r2896
1992-12-19 09:04:47 +00:00
Richard Stallman
0e9934c8fc (finish_objc) [OBJC_SELECTORS_WITHOUT_LABELS]:
Always call build_selector_translation_table.

From-SVN: r2895
1992-12-19 08:47:33 +00:00
Richard Stallman
61fab23682 (build_message_expr): Don't crash if super_type is 0.
From-SVN: r2723
1992-11-09 17:42:55 +00:00
Richard Stallman
66a35ceaa8 (build_message_expr): Use save_expr for receiver.
From-SVN: r2681
1992-11-03 08:12:39 +00:00
Richard Stallman
152551c656 (OBJC_SELECTORS_WITHOUT_LABELS): Define by default.
From-SVN: r2662
1992-10-31 20:41:23 +00:00
Richard Stallman
56358f7f02 Don't include gstdarg.h here.
From-SVN: r2641
1992-10-28 21:52:36 +00:00
Richard Stallman
012473fbc4 Include tconfig.h, not config.h.
Include gstdarg.h.

From-SVN: r2640
1992-10-28 21:52:01 +00:00
Richard Stallman
97d5530df4 (hash_ptr): Renamed from hash_int.
(compare_ptrs): Renamed from compare_ints.
Do not cast args to int; just compare.

From-SVN: r2611
1992-10-26 08:16:20 +00:00
Richard Stallman
c50dca4443 (handle_impent, handle_class_ref): Use __
to start the generated names, not period.

From-SVN: r2554
1992-10-22 12:30:09 +00:00
Richard Stallman
f6ba5fe9cc (start_class): For an INTERFACE_TYPE, push to permanent obstack.
(build_message_expr): Use TYPE_MAIN_VARIANT when comparing types.

From-SVN: r2494
1992-10-17 01:37:08 +00:00
Richard Stallman
a4f6608ca2 Some comments and whitespace cleaned up. RCS headers removed.
Include gstddef.h and objc-proto.h.
Don't include objcP.h or objc-protoP.h.
Avoid use of u_int, etc. so no need for sys/types.h.
Adjust for change in node_table field data type.

Fix calls to DEBUG_PRINTF; no longer wants stream as arg.

From-SVN: r2456
1992-10-14 09:49:27 +00:00