aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.7/libobjc/ChangeLog
diff options
context:
space:
mode:
Diffstat (limited to 'gcc-4.7/libobjc/ChangeLog')
-rw-r--r--gcc-4.7/libobjc/ChangeLog3258
1 files changed, 3258 insertions, 0 deletions
diff --git a/gcc-4.7/libobjc/ChangeLog b/gcc-4.7/libobjc/ChangeLog
new file mode 100644
index 000000000..d2c4912a6
--- /dev/null
+++ b/gcc-4.7/libobjc/ChangeLog
@@ -0,0 +1,3258 @@
+2012-09-20 Release Manager
+
+ * GCC 4.7.2 released.
+
+2012-06-14 Release Manager
+
+ * GCC 4.7.1 released.
+
+2012-03-22 Release Manager
+
+ * GCC 4.7.0 released.
+
+2011-11-21 Andreas Tobler <andreast@fgznet.ch>
+
+ * configure: Regenerate.
+
+2011-11-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ * Makefile.in (INCLUDES): Add -I$(MULTIBUILDTOP)../libgcc.
+ * configure.ac (target_thread_file, HAVE_GTHR_DEFAULT): Remove.
+ * configure: Regenerate.
+ * config.h.in: Regenerate.
+
+2011-10-17 Paul Brook <paul@codesourcery.com>
+ Matthias Klose <doko@ubuntu.com>
+
+ * exception.c (parse_lsda_header): hardcode ttype_encoding for older
+ ARM EABI toolchains.
+ (get_ttype_entry) Remove __ARM_EABI_UNWINDER__ variant.
+
+2011-10-09 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ PR libobjc/49883
+ * init.c (__objc_exec_class): Work around a bug in clang's code
+ generation. Clang sets the class->info field to values different
+ from 0x1 or 0x2 (the only allowed values in the traditional GNU
+ Objective-C runtime ABI) to store some additional information, but
+ this breaks backwards compatibility. Wipe out all the bits in the
+ fields other than the first two upon loading a class.
+
+2011-10-09 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * class.c (objc_lookup_class): Added back for compatibility with
+ clang which seems to emit calls to it.
+
+2011-10-08 Richard Frith-Macdonald <rfm@gnu.org>
+ Nicola Pero <nicola.pero@meta-innovation.com>
+
+ PR libobjc/50428
+ * sendmsg.c (__objc_send_initialize): If a class does not have an
+ +initialize method, search for an +initialize method in the
+ superclass and in the ancestor classes and execute the first one
+ that is found. This makes the GNU runtime behave in the same way
+ as the Apple/NeXT runtime with respect to +initialize methods and
+ subclassing.
+
+2011-08-06 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ PR libobjc/50002
+ * class.c (__objc_update_classes_with_methods): Iterate over meta
+ classes as well as normal classes when refreshing the method
+ implementations. This fixes replacing class methods.
+
+2011-08-06 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * class.c (class_getSuperclass): Fixed to work with meta classes
+ still in construction too.
+
+2011-08-06 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * class.c (class_getSuperclass): Fixed typo in comment.
+
+2011-08-06 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ PR libobjc/49882
+ * class.c (class_getSuperclass): Return the superclass if the
+ class is in construction.
+ * objc/runtime.h (class_getSuperclass): Updated documentation.
+
+2011-08-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ * Makefile.in (INCLUDES): Search
+ $(srcdir)/$(MULTISRCTOP)../libgcc.
+
+2011-06-08 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc/objc.h (__GNU_LIBOBJC__): Bumped to 20110608.
+
+2011-06-08 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * configure.ac (VERSION): Bumped to 4:0:0.
+ * configure (VERSION): Likewise.
+
+2011-06-08 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc/README: Updated.
+ * objc-private/selector.h: Updated comments.
+
+2011-06-07 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * sendmsg.c (class_get_instance_method): Removed.
+ (class_get_class_method): Removed.
+ (objc_get_uninstalled_dtable): Removed.
+
+2011-06-07 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc-private/module-abi-8.h (class_get_instance_size): Removed.
+ * objects.c (class_create_instance): Removed.
+ * error.c (__USE_FIXED_PROTOTYPES__): Removed.
+ * gc.c (__objc_generate_gc_type_description): Use
+ class_getInstanceSize() instead of class_get_instance_size().
+ * selector.c (sel_types_match): Made static.
+ (sel_get_typed_uid): Removed.
+ (sel_get_any_typed_uid): Removed.
+ (sel_get_name): Removed.
+ (sel_get_type): Removed.
+ (sel_register_name): Removed.
+ (sel_register_typed_name): Removed.
+ (sel_get_uid): Removed.
+
+2011-06-07 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * encoding.c (method_get_number_of_arguments): Removed.
+ (method_get_sizeof_arguments): Removed.
+
+2011-06-07 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * class.c (objc_next_class): Removed.
+ (class_pose_as): Removed.
+ (CLASSOF): Removed.
+ (class_table_replace): Removed.
+ (objc_lookup_class): Removed.
+
+2011-06-07 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ Removed the Traditional Objective-C runtime public API.
+ * Makefile.in (OBJC_DEPRECATED_H): Variable removed.
+ (install-headers): Do not create the objc/deprecated directory and
+ do not install the deprecated headers.
+ (OBJC_H): Removed encoding.h and objc-api.h.
+ * Object.m: Removed all methods with the exception of -class and
+ -isEqual:. Updated includes. ([-class]): Use Modern API.
+ * objc/Object.h: Do not include deprecated/Object.h.
+ * objc/deprecated/Object.h: Removed.
+ * linking.m (__objc_linking): Call [Object class] instead of
+ [Object name].
+ * Protocol.m: Removed all methods with the exception of -isEqual:.
+ Updated includes.
+ * objc/Protocol.h: Do not include deprecated/Protocol.h.
+ * objc/deprecated/Protocol.h: Removed.
+ * objc/deprecated/struct_objc_symtab.h: Removed.
+ * objc/deprecated/struct_objc_module.h: Removed.
+ * objc/deprecated/struct_objc_ivar.h: Removed.
+ * objc/deprecated/struct_objc_ivar_list.h: Removed.
+ * objc/deprecated/struct_objc_method.h: Removed.
+ * objc/deprecated/struct_objc_method_list.h: Removed.
+ * objc/deprecated/struct_objc_protocol_list.h: Removed.
+ * objc/deprecated/struct_objc_category.h: Removed.
+ * objc/deprecated/MetaClass.h: Removed.
+ * objc/deprecated/objc_msg_sendv.h: Removed.
+ * objc/deprecated/README: Removed.
+ * objc/deprecated/struct_objc_class.h: Removed.
+ * objc/deprecated/struct_objc_protocol.h: Removed.
+ * objc/deprecated/struct_objc_selector.h: Removed.
+ * objc/encoding.h: Removed.
+ * objc/message.h (struct objc_super): Removed the definition for
+ the Traditional Objective-C runtime API.
+ * objc/objc.h: Do not include objc/objc-decls.h.
+ deprecated/struct_objc_selector.h, deprecated/MetaClass.h,
+ deprecated/struct_objc_class.h, deprecated/struct_objc_protocol.h
+ and deprecated/objc_msg_sendv.h. Uncommented new definition of
+ Protocol *.
+ * objc/objc-api.h: Removed.
+ * objc/runtime.h: Updated comments. Removed check to detect
+ concurrent usage of Traditional and Modern APIs.
+ * objc-private/module-abi-8.h: Always define struct objc_class and
+ struct objc_protocol. (struct objc_protocol_list): Changed type
+ of 'list' argument from 'Protocol *' to 'struct objc_protocol *'.
+ (class_get_instance_size): Added.
+ * objc-private/protocols.h (__objc_protocols_add_protocol): Take a
+ 'struct objc_protocol *' as argument, not a 'Protocol *'.
+ * objc-private/runtime.h: Updated comments.
+ * objc-private/selector.h (struct objc_selector, sel_eq): Added.
+ * class.c: Include objc-private/selector.h.
+ (objc_get_meta_class): Return a Class instead of a MetaClass.
+ * encoding.c (method_get_next_argument): Removed.
+ (method_get_first_argument): Removed.
+ (method_get_nth_argument): Removed.
+ * gc.c: Include objc/runtime.h instead of objc/encoding.h.
+ Include objc-private/module-abi-8.h and ctype.h.
+ * protocols.c (__objc_protocols_add_protocol): Take a 'struct
+ objc_protocl *' as argument, not a 'Protocol *'.
+ (class_addProtocol): Added casts to 'struct objc_protocol *' and
+ 'Protocol *'.
+ (class_copyProtocolList): Likewise.
+ (protocol_conformsToProtocol): Likewise.
+ (protocol_copyProtocolList): Likewise.
+ * sarray.c: Include objc-private/module-abi-8.h.
+ * sendmsg.c (method_get_next_argument): Removed.
+ (method_get_first_argument): Removed.
+ (method_get_nth_argument): Removed.
+ (objc_msg_sendv): Removed.
+ (arglist_t, retval_t): New. (class_get_class_method): Take a
+ 'Class', not 'MetaClass', argument.
+ * thr.c: Include module-abi-8.h.
+
+2011-06-03 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * Makefile.in (OBJC_DEPRECATED_H): Removed struct_objc_static_instances.h
+ and objc_get_uninstalled_dtable.h.
+ * objc/deprecated/struct_objc_static_instances.h: Removed.
+ * objc/deprecated/objc_get_uninstalled_dtable.h: Removed.
+ * objc/objc-api.h: Do not include deprecated/objc_static_instances.h
+ and deprecated/objc_get_uninstalled_dtable.h.
+
+2011-06-03 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * Makefile.in (OBJC_DEPRECATED_H): Removed objc_object_alloc.h.
+ * objc/deprecated/objc_object_alloc.h: Removed.
+ * objc/objc-api.h: Do not include deprecated/objc_object_alloc.h.
+ * objects.c (_objc_object_alloc, _objc_object_dispose,
+ _objc_object_copy): Removed.
+ * libobjc.def (__objc_object_alloc, __objc_object_copy,
+ __objc_object_dispose): Removed.
+
+2011-06-03 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * Makefile.in (OBJC_DEPRECATED_H): Removed METHOD_NULL.h.
+ * objc/objc-api.h: Do not include deprecated/METHOD_NULL.h.
+ * objc/deprecated/METHOD_NULL.h: Removed.
+
+2011-06-03 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * Makefile.in (OBJC_DEPRECATED_H): Removed objc_valloc.h,
+ objc_malloc.h and objc_unexpected_exception.h.
+ (exception.lo): Do not use -Wno-deprecated-declarations.
+ (exception_gc.lo): Likewise.
+ * objc/objc-api.h: Do not include deprecated/objc_valloc.h,
+ deprecated/objc_malloc.h and
+ deprecated/objc_unexpected_exception.h.
+ * objc/deprecated/objc_valloc.h: Removed.
+ * objc/deprecated/objc_malloc.h: Removed.
+ * objc/deprecated/objc_unexpected_exception.h: Removed.
+ * exception.c (_objc_unexpected_exception): Removed.
+ (objc_exception_throw): Do not check for
+ _objc_unexpected_exception.
+ * memory.c (objc_valloc, _objc_malloc, _objc_atomic_malloc,
+ _objc_valloc, _objc_realloc, _objc_calloc, _objc_free): Removed.
+ * libobjc.def (_objc_unexpected_exception, objc_valloc): Removed.
+
+2011-06-03 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc/objc.h: Do not include deprecated/STR.h.
+ * objc/deprecated/STR.h: Removed.
+ * Makefile.in (OBJC_DEPRECATED_H): removed STR.h.
+
+2011-06-03 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * Makefile.in (OBJC_H): Removed hash.h and sarray.h.
+ (OBJC_DEPRECATED_H): Likewise.
+ * libobjc.def (objc_hash_new, objc_hash_delete, objc_hash_add,
+ objc_hash_remove, objc_hash_next, objc_hash_value_for_key,
+ objc_hash_is_key_in_hash, hash_add, hash_delete, hash_new,
+ hash_next, hash_remove, hash_value_for_key, hash_is_key_in_hash,
+ sarray_at_put, sarray_at_put_safe, sarray_free, sarray_lazy_copy,
+ sarray_new, sarray_realloc, sarray_remove_garbage): Removed.
+ * objc/sarray.h: Removed.
+ * objc/hash.h: Removed.
+ * objc/deprecated/sarray.h: Removed.
+ * objc/deprecated/hash.h: Removed.
+ * objc/Object.h: Do not include objc/deprecated/hash.h
+ * Object.m: Include string.h.
+ * objc/objc-api.h: Do not include objc/deprecated/hash.h.
+ * objc-private/common.h (GNU_LIBOBJC_COMPILING_LIBOBJC_ITSELF):
+ Removed.
+
+2011-06-03 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * Object.m ([-forward::]): Removed.
+ * objc/deprecated/Object.h ([-forward::]): Removed.
+ * sendmsg.c (__objc_forward): Updated comments.
+
+2011-06-03 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * Makefile.in (OBJC_H): Removed objc-list.h.
+ (OBJC_DEPRECATED_H): Removed objc-list.h.
+ * objc/objc-list.h: File removed.
+ * objc/deprecated/objc-list.h: File removed.
+
+2011-06-03 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * Makefile.in (OBJC_H): Removed typedstream.h.
+ (OBJC_DEPRECATED_H): Removed typedstream.h.
+ (C_SOURCE_FILES): Removed archive.c.
+ (Object.lo): Rule removed.
+ (Object_gc.lo): Likewise.
+ (archive.lo): Likewise.
+ (archive_gc.lo): Likewise.
+ * objc/deprecated/Object.h ([+streamVersion:], [-read], [-write],
+ [-awake]): Removed.
+ Do not include deprecated/typedstream.h.
+ * Object.m: Removed the same methods.
+ * archive.c: File removed.
+ * objc/typedstream.h: File removed.
+ * objc/deprecated/typedstream.h: File removed.
+ * libobjc.def (__objc_read_nbyte_uint, __objc_read_nbyte_ulong,
+ __objc_write_class, __objc_write_object, __objc_write_selector,
+ objc_close_typed_stream, objc_end_of_typed_stream,
+ objc_flush_typed_stream, objc_get_stream_class_version,
+ objc_open_typed_stream, objc_open_typed_stream_for_file,
+ objc_read_array, objc_read_char, objc_read_int, objc_read_long,
+ objc_read_object, objc_read_selector, objc_read_short,
+ objc_read_string, objc_read_type, objc_read_types,
+ objc_read_unsigned_char, objc_read_unsigned_int,
+ objc_read_unsigned_long, objc_read_unsigned_short,
+ objc_write_array, objc_write_char, objc_write_int,
+ objc_write_long, objc_write_object, objc_write_object_reference,
+ objc_write_root_object, objc_write_selector, objc_write_short,
+ objc_write_string, objc_write_string_atomic, objc_write_type,
+ objc_write_types, objc_write_unsigned_char,
+ objc_write_unsigned_int, objc_write_unsigned_long,
+ objc_write_unsigned_short): Removed.
+
+2011-06-02 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * Makefile.in (OBJC_DEPRECATED_H): Removed objc_error.h.
+ * objc/deprecated/objc_error.h: Removed.
+ * objc/objc-api.h: Do not include deprecated/objc_error.h.
+ * libobjc.def (objc_error, objc_verror): Removed.
+ * error.c (_objc_error_handler, objc_error, objc_verror,
+ objc_set_error_handler): Removed.
+ * Object.m ([-error:], [-perform:], [-perform:with:],
+ [-perform:with:with], [-subclassResponsibility:],
+ [-notImplemented:], [-shouldNotImplement:], [-doesNotRecognize:]):
+ Removed.
+ * objc/deprecated/Object.h: Removed the same methods.
+ * sendmsg.c (__objc_forward): Do not try to invoke the "error:"
+ method after trying to invoke the "doesNotRecognize:" method.
+
+2011-05-26 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * sendmsg.c: Reindented part of the file. No non-trivial changes
+ in code.
+
+2011-05-26 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * sendmsg.c (__objc_install_dtable_for_class): Use objc_getClass,
+ not objc_lookup_class.
+
+2011-05-25 Richard Frith-Macdonald <rfm@gnu.org>
+ David Ayers <ayers@fsfe.org>
+
+ PR libobjc/38307
+ * sendmsg.c: Include objc/hash.h.
+ (get_implementation): New function, mostly with code from get_imp
+ updated to support the new +initialize dispatch table logic.
+ (get_imp): Use get_implementation.
+ (__objc_responds_to): Updated to support the new +initialize
+ dispatch table logic.
+ (class_respondsToSelector): Likewise.
+ (objc_msg_lookup): Use get_implementation.
+ (__objc_init_install_dtable): Removed.
+ (__objc_install_methods_in_dtable): Updated arguments.
+ (__objc_install_dispatch_table_for_class): Renamed to
+ __objc_install_dtable_for_class and updated to support the new
+ +initialize dispatch table logic.
+ (__objc_update_dispatch_table_for_class): Updated to support the
+ new +initialize dispatch table logic.
+ (__objc_forward): Call get_implementation instead of get_imp.
+ (prepared_dtable_table): New.
+ (__objc_prepare_dtable_for_class): New.
+ (__objc_prepared_dtable_for_class): New.
+ (__objc_get_prepared_imp): New.
+ (__objc_install_prepared_dtable_for_class): New.
+
+2011-05-24 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ PR libobjc/48177
+ * selector.c (__sel_register_typed_name): Use sel_types_match()
+ instead of strcmp() to compare selector types (Suggestion by
+ Richard Frith-Macdonald <rfm@gnu.org>).
+
+2011-04-15 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ PR libobjc/32037
+ * Makefile.in (OBJC_GCFLAGS): Move ...
+ * configure.ac (enable_objc_gc): ... here.
+ Add $(libsuffix) to OBJC_BOEHM_GC.
+ * configure: Regenerate.
+
+2011-02-28 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * selector.c (sel_getTypedSelector): Return NULL if there are
+ multiple selectors with conflicting types.
+ * objc/runtime.h (sel_getTypedSelector): Updated documentation.
+
+2011-02-28 Richard Frith-Macdonald <rfm@gnu.org>
+
+ PR libobjc/47922
+ * gc.c (class_ivar_set_gcinvisible): Use _C_GCINVISIBLE instead of
+ a hardcoded "!".
+
+2011-02-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ * configure: Regenerate.
+
+2010-12-26 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * init.c (create_tree_of_subclasses_inherited_from): Use
+ class_superclass_of_class instead of assuming a class is
+ unresolved when it could be resolved. Tidied up assignment and
+ check.
+ (__objc_tree_insert_class): Enhanced DEBUG_PRINTF.
+ (objc_tree_insert_class): Tidied up loop; return immediately upon
+ inserting a class.
+ (__objc_exec_class): Do not set __objc_class_tree_list.
+
+2010-12-24 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * selector.c (sel_getTypedSelector): Return NULL if given a NULL
+ argument.
+ (sel_registerTypedName): Same.
+ (sel_registerName): Same.
+ * objc/runtime.h: Updated documentation.
+
+2010-12-24 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc/runtime.h (class_addIvar): Updated documentation. The
+ alignment is actually the log_2 of the alignment in bytes.
+ * ivars.c (class_addIvar): Corresponding change to the
+ implementation.
+
+2010-12-24 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc/runtime.h (sel_getType): Renamed to sel_getTypeEncoding to
+ be consistent with method_getTypeEncoding and
+ ivar_getTypeEncoding.
+ (sel_copyTypedSelectorList, sel_getTypedSelector): New.
+ * selector.c (sel_getType): Renamed to sel_getTypeEncoding.
+ (sel_copyTypedSelectorList, sel_getTypedSelector): New.
+ (sel_get_type): Updated call to sel_getType.
+
+2010-12-24 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc/runtime.h (class_conformsToProtocol,
+ class_copyProtocolList): Updated documentation.
+
+2010-12-23 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * init.c (create_tree_of_subclasses_inherited_from): Updated
+ DEBUG_PRINTF messages.
+ (__objc_tree_insert_class): Same.
+ (__objc_send_load_using_method_list): Same.
+ (__objc_send_load): Same.
+ (__objc_exec_class): Same. In particular, do not print the module
+ name since it is no longer used.
+ * sendmsg.c (__objc_send_initialize): Added DEBUG_PRINTFs for
+ tracking +initialize calls.
+ (__objc_update_dispatch_table_for_class): Added DEBUG_PRINTFs for
+ tracking updates of dispatch tables.
+ (__objc_install_dispatch_table_for_class): Same.
+
+2010-12-23 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ * Makefile.in (libobjc$(libsuffix).la): Link with -Wc,-shared-libgcc.
+ (libobjc_gc$(libsuffix).la): Likewise.
+
+2010-12-23 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * sendmsg.c (class_addMethod): Return NO if the method already
+ exists in the class.
+
+2010-12-22 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * init.c (duplicate_classes): New.
+ (__objc_exec_class): Initialize duplicate_classes.
+ (__objc_create_classes_tree): Ignore classes in the
+ duplicate_classes table.
+ (__objc_call_load_callback): Same.
+ (__objc_init_class): If a duplicate class is found, add it to
+ duplicate_classes instead of aborting. Return YES if the class is
+ not a duplicate, and NO if it is.
+ * objc-private/runtime.h (__objc_init_class): Updated prototype.
+
+2010-12-22 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc-private/objc-list.h: Reindented file. No code changes.
+ * objc-private/sarray.h: Same change.
+
+2010-12-22 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc-private/accessors.h: Removed 'extern "C"' guards. This
+ file is never compiled with C++.
+ * objc-private/hash.h: Same change.
+ * objc-private/objc-list.h: Same change.
+ * objc-private/objc-sync.h: Same change.
+ * objc-private/protocols.h: Same change.
+ * objc-private/runtime.h: Same change.
+ * objc-private/sarray.h: Same change.
+ * objc-private/selector.h: Same change.
+
+2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ PR libobjc/18764
+ * class.c (__objc_add_class_to_hash): Return YES if the class was
+ added, and NO if it already existed.
+ * init.c (__objc_init_class): If __objc_add_class_to_hash returns
+ NO, then abort the program with an error message.
+ * objc-private/runtime.h (__objc_add_class_to_hash): Updated
+ declaration.
+
+2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * init.c (_objc_load_callback): Initialize with 0.
+ (__objc_call_callback): Renamed to __objc_call_load_callback.
+ Check _objc_load_callback only once, and if it is not set, return
+ immediately.
+ (objc_send_load): Updated call to __objc_call_callback.
+
+2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ PR libobjc/16110
+ * init.c (__objc_send_message_in_list): Renamed to
+ __objc_send_load_using_method_list. Do not take an 'op' argument.
+ Register the 'load' selector if needed.
+ (__objc_send_load): Do not register the 'load' selector. Updated
+ call to __objc_send_message_in_list.
+ (__objc_create_classes_tree): Add the class of any claimed
+ category that was loaded in the module to the list of classes for
+ which we try to execute +load.
+
+2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc-private/common.h: When DEBUG is defined, include <stdio.h>.
+ Updated comments.
+ * init.c (__objc_tree_insert_class): Use %p, not %x, when printing
+ a pointer using DEBUG_PRINTF.
+
+2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ PR libobjc/45953
+ * selector.c (__sel_register_typed_name): When registering a new
+ selector with the same name as an existing one, reuse the existing
+ name string. Also updated types, casts and comments in the whole
+ function.
+
+2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc-private/module-abi-8.h (struct objc_symtab): Declare 'refs'
+ to be 'struct objc_selector *' and not 'SEL'.
+ * init.c (__objc_exec_class): Call
+ __objc_register_selectors_from_module instead of iterating over
+ each selector and calling __sel_register_typed_name for each.
+ * objc-private/selector.h: Declare
+ __objc_register_selectors_from_module instead of
+ __sel_register_typed_name.
+ * selector.c (__objc_register_selectors_from_module): New.
+ (__sel_register_typed_name): Made static.
+
+2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * linking.m: Do not include objc/NXConstStr.h.
+
+2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc-private/runtime.h (DEBUG_PRINTF): Moved from here ...
+ * objc-private/common.h (DEBUG_PRINTF): To here.
+ * hash.c: Do not include objc-private/runtime.h and objc/thr.h.
+
+2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * hash.c: Tidied up comments and indentation. No code changes.
+
+2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ PR libobjc/47012
+ * accessors.m (objc_getProperty): If not atomic, do not
+ retain/autorelease the returned value.
+
+2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc-private/runtime.h (__objc_selector_max_index,
+ __objc_init_selector_tables, __objc_register_selectors_from_class,
+ __objc_register_selectors_from_list,
+ __objc_register_selectors_from_description_list): Moved to ...
+ * objc-private/selector.h: ... here.
+
+2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc-private/runtime.h (__objc_class_links_resolved): Removed.
+ (__objc_print_dtable_stats): Removed.
+ (__sel_register_typed_name): Removed.
+ * sendmsg.c (__objc_print_dtable_stats): Use 'void' as argument.
+
+2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * init.c (__objc_exec_class): Call __objc_resolve_class_links (),
+ if appropriate, after loading the module.
+
+2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * sendmsg.c (method_setImplementation): Do not declare.
+
+2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc/message.h: Updated comments.
+ * objc/runtime.h: Updated comments.
+
+2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * class.c (objc_lookupClass): Renamed to objc_lookUpClass.
+ * protocols.c: Updated all calls to objc_lookupClass to call
+ objc_lookUpClass instead.
+ * sendmsg.c (objc_lookupClass): Do not declare.
+ (get_imp): Update call to objc_lookupClass to call
+ objc_lookUpClass instead.
+ * objc/runtime.h (objc_lookupClass): Renamed to objc_lookUpClass.
+
+2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc/runtime.h (class_ivar_set_gcinvisible): Declare.
+ * sendmsg.c (_CLS_IN_CONSTRUCTION, CLS_IS_IN_CONSTRUCTION): Do not
+ define. Updated comments.
+
+2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc/encoding.h: Updated comments.
+ * objc/runtime.h: Updated comments.
+ (objc_setGetUnknownClassHandler): Mark with objc_EXPORT.
+ (objc_sizeof_type): Same.
+ (objc_alignof_type): Same.
+ (objc_aligned_size): Same.
+ (objc_promoted_size): Same.
+ (objc_skip_type_qualifiers): Same.
+ (objc_skip_typespec): Same.
+ (objc_skip_offset): Same.
+ (objc_skip_argspec): Same.
+ (objc_get_type_qualifiers): Same.
+ (objc_layout_structure): Same.
+ (objc_layout_structure_next_member): Same.
+ (objc_layout_finish_structure): Same.
+ (objc_layout_structure_get_info): Same.
+
+2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * init.c: Updated comments.
+ * objc/objc-api.h: Updated comments.
+ * objc/runtime.h (_objc_load_callback): Declare.
+
+2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc/Object.h: Include deprecated/typedstream.h and
+ deprecated/hash.h instead of typedstream.h. Updated comments.
+
+2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * Makefile.in (OBJC_DEPRECATED_H): Added objc_msg_sendv.h.
+ * objc/deprecated/objc_msg_sendv.h: New.
+ * objc/message.h: Do not define retval_t, apply_t, arglist,
+ arglist_t, objc_msg_sendv, now in
+ objc/deprecated/objc_msg_sendv.h.
+ * objc/objc.h: Do not include message.h; include
+ objc/deprecated/objc_msg_sendv.h instead. Tidied up comments.
+ * sendmsg.c: Include objc/message.h.
+ * thr.c: Include objc/message.h.
+
+2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc/objc-exception.h: Include objc-decls.h. Mark all
+ functions with objc_EXPORT.
+ * objc/objc-sync.h: Same change.
+
+2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * Protocol.m: Moved all methods, with the exception of -isEqual:,
+ into the 'Deprecated' category.
+ * objc/Protocol.h: Removed all methods, moved to
+ objc/deprecated/Protocol.h. Include objc/deprecated/Protocol.h.
+ * objc/deprecated/Protocol.h: New.
+ * Makefile.in (OBJC_DEPRECATED_H): Added Protocol.h.
+
+2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * init.c: Include objc-private/selector.h. Do not declare
+ __sel_register_typed_name.
+ * objc-private/selector.h (__sel_register_typed_name): Declare.
+ * selector.c: Include objc-private/selector.h.
+
+2010-12-18 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * class.c: Tidied up comments and indentation. No code changes.
+ * error.c: Same.
+ * exception.c: Same.
+ * init.c: Same.
+ * ivars.c: Same.
+ * memory.c: Same.
+ * objc-foreach.c: Same.
+ * objc-sync.c: Same.
+ * objects.c: Same.
+ * protocols.c: Same.
+ * sarray.c: Same.
+ * thr.c: Same.
+
+2010-12-17 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * init.c: Include objc/runtime.h and objc-private/module-abi-8.h
+ instead of objc/objc-api.h.
+ (init_check_module_version): Take a 'struct objc_module *'
+ argument instead of 'Module_t'. Use 'struct objc_module *'
+ instead of 'Module_t'.
+ (__objc_created_classes_tree): Take a 'struct objc_module *'
+ argument instead of 'Module_t'; use 'struct objc_symtab *' instead
+ of 'Symtab_t'.
+ (__objc_call_callback): Take a 'struct objc_module *' argument
+ instead of 'Module_t'; use 'struct objc_symtab *' instead of
+ 'Symtab_t' and 'struct objc_category *' instead of 'Category_t'.
+ (_objc_load_callback): Take a 'struct objc_category *' argument
+ instead of 'Category *'.
+ (class_superclass_of_class): Use objc_getClass() instead of
+ objc_lookup_class().
+ (create_tree_of_subclasses_inherited_from): Same change (also, use
+ an explicit 'if' instead of '?').
+ (objc_init_statics): Same change.
+ (objc_send_load): Same change.
+ (__objc_init_protocol): same change.
+ (__objc_send_message_in_list): Take a 'struct objc_method_list *'
+ argument instead of 'MethodList_t'. Use 'struct objc_method *'
+ instead of 'Method_t'.
+ (__objc_send_load): Use 'struct objc_method_list *' instead of
+ 'MethodList_t'. Use sel_registerName() instead of
+ sel_register_name().
+ (__objc_exec_class): Take a 'struct objc_module *' argument
+ instead of 'Module_t'. Use 'struct objc_symtab *' instead of
+ 'Symtab_t'. Use objc_getClass() instead of objc_lookup_class().
+ Use 'struct objc_category *' instead of 'Category_t'.
+
+2010-12-16 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * sendmsg.c: Include objc/runtime.h instead of objc/objc-api.h.
+ Include objc-private/module-abi-8.h and objc-private/selector.h
+ instead of objc/encoding.h.
+ (objc_msg_lookup_super): Use super->super_class instead of
+ super->class.
+ (method_get_first_argument, method_get_next_argument): Declare
+ locally.
+ (class_get_instance_method): Declare before using.
+ (objc_msg_sendv): Use 'struct objc_method' instead of 'Method'.
+ (__objc_init_dispatch_tables, __objc_send_initialize): Use
+ sel_registerName() instead of sel_register_name().
+ (__objc_forward): Use sel_getName() instead of sel_get_name().
+ (objc_get_uninstalled_dtable): Use 'void' as argument.
+ * objc-private/selector.h: New.
+
+2010-12-15 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc/message.h (objc_super): When using the modern API, do not
+ define Super and Super_t, and always use 'super_class' for the
+ super class field.
+ (objc_msg_lookup_super): Updated prototype to use 'struct
+ objc_super *' instead of 'Super_t'.
+ * sendmsg.c (objc_msg_lookup_super): Updated prototype to use
+ 'struct objc_super *' instead of 'Super_t'.
+
+2010-12-15 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc/message.h: Update comments, reindented code and moved
+ deprecated types and functions at the end of the file. No code
+ changes.
+
+2010-12-15 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * ivars.c (class_addIvar): Use the 'size' argument instead of
+ trying to calculate it using objc_sizeof_type().
+ * objc/runtime.h (class_addIvar): Updated comments.
+
+2010-12-15 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * sendmsg.c: Reindented some code and tidied up comments. No
+ actual code changes.
+
+2010-12-14 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc/Object.h: Moved all the methods, with the exception of
+ -class and -isEqual:, into ...
+ * objc/deprecated/Object.h: here.
+ * Object.m: Moved all the methods, with the exception of -class
+ and -isEqual: into the 'Deprecated' category.
+
+2010-12-14 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objects.c (object_copy): Do not #undef as we are no longer
+ including objc/objc-api.h.
+ * selector.c: Include objc/runtime.h and
+ objc-private/module-abi-8.h. Do not include objc/objc-api.h and
+ objc/encoding.h. Updated
+ (__objc_register_selectors_from_class): Use struct
+ objc_method_list * instead of MethodList_t.
+ (__objc_register_selectors_from_list): Use Method instead of
+ Method_t.
+ (struct objc_method_description_list): Do not define here.
+ (__objc_register_instance_methods_to_class): Use struct
+ objc_method_list * instead of MethodList_t and Method instead of
+ Method_t.
+
+2010-12-14 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * selector.c: Reindented some code and tidied up comments. No
+ actual code changes.
+
+2010-12-13 Iain Sandoe <iains@gcc.gnu.org>
+
+ * encoding.c (_darwin_rs6000_special_round_type_align): New.
+ (darwin_rs6000_special_round_type_align): Adjust to use new routine.
+
+2010-12-11 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * sendmsg.c (selector_resolveClassMethod): New.
+ (selector_resolveInstanceMethod): New.
+ (__objc_resolve_class_method): New.
+ (__objc_resolve_instance_method): New.
+ (get_imp): Call __objc_resolve_class_method or
+ __objc_resolve_instance_method at the appropriate time.
+ (objc_msg_lookup): Same.
+ (class_getClassMethod): Same.
+ (class_getInstanceMethod): Same.
+ (__objc_init_dispatch_tables): Initialize
+ selector_resolveClassMethod and selector_resolveInstanceMethod.
+ * objc/runtime.h: Updated documentation of class_getClassMethod,
+ class_getInstanceMethod and class_getMethodImplementation.
+
+2010-12-11 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc-private/module-abi-8.h (struct objc_symtab): Updated
+ description of sel_ref_cnt and refs.
+ * objc/deprecated/struct_objc_symtab.h (objc_symtab): Same change.
+
+2010-12-06 Dave Korn <dave.korn.cygwin@gmail.com>
+
+ PR target/40125
+ PR lto/46695
+ * configure.ac (extra_ldflags_libobjc): Invoke ACX_LT_HOST_FLAGS.
+ * Makefile.in (lt_host_flags): Import AC_SUBST'd value.
+ * aclocal.m4: Regenerate.
+ * configure: Regenerate.
+
+2010-12-03 Matthias Klose <doko@ubuntu.com>
+
+ * configure.ac (VERSION): Bump the version to 3:0:0.
+ * configure: Regenerate.
+
+2010-11-23 Richard Frith-Macdonald <rfm@gnu.org>
+
+ * sendmsg.c (get_imp): Fixed call to __objc_get_forward_imp to
+ pass nil as the receiver since we don't know the receiver at this
+ point.
+
+2010-11-18 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * ivars.c: Include stdlib.h.
+ * protocols.c: Same change.
+
+2010-10-24 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * Makefile.in (OBJC_SOURCE_FILES): Added accessors.m.
+ * accessors.m: New.
+ * init.c: Include objc-private/accessors.h.
+ (__objc_exec_class): Call __objc_accessors_init.
+ * objc-private/accessors.h: New.
+
+2010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc/message.h: Moved initial includes outside of extern "C".
+ * objc/runtime.h: Add extern "C" for Objective-C++.
+
+2010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * init.c (objc_send_load): Do not wait for NXConstantString to be
+ registered before executing +load. There is no point if
+ -fconstant-string-class=xxx is used when compiling all modules,
+ as is the case for almost all users.
+ * linking.m (__objc_linking): Do not try to forcefully link in
+ NXConstantString.
+
+2010-10-16 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc/runtime.h: Updated comments.
+ (class_addMethod): New.
+ (class_addIvar): New.
+ (class_replaceMethod): New.
+ (objc_allocateClassPair): New.
+ (objc_registerClassPair): New.
+ (objc_disposeClassPair): New.
+ * class.c (objc_allocateClassPair): New.
+ (objc_registerClassPair): New.
+ (objc_disposeClassPair): New.
+ (class_getSuperclass): Return Nil if a class is in construction.
+ * init.c (__objc_exec_class): Call __objc_init_class.
+ (__objc_init_class): New.
+ * ivars.c (class_copyIvarList): Return NULL if class is in
+ construction. Do not lock the runtime mutex.
+ (class_getInstanceVariable): Return NULL if class is in
+ construction. Do not lock the runtime mutex.
+ (class_addIvar): New.
+ * sendmsg.c (class_addMethod): New.
+ (class_replaceMethod): New.
+ * objc-private/module-abi-8.h (__CLS_SETNOTINFO): New.
+ (_CLS_IN_CONSTRUCTION): New.
+ (CLS_IS_IN_CONSTRUCTION): New.
+ (CLS_SET_IN_CONSTRUCTION): New.
+ (CLS_SET_NOT_IN_CONSTRUCTION): New.
+ * objc-private/runtime.h (__objc_init_class): New.
+
+2010-10-16 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * class.c (class_getSuperclass): Call __objc_resolve_class_links
+ if the class is not resolved yet.
+ * ivars.c (class_getInstanceVariable): Use class_getSuperclass.
+
+2010-10-16 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc/runtime.h (class_getIvarLayout): New.
+ (class_getWeakIvarLayout): New.
+ (class_setIvarLayout): New.
+ (class_setWeakIvarLayout): New.
+ * ivars.c (class_getIvarLayout): New.
+ (class_getWeakIvarLayout): New.
+ (class_setIvarLayout): New.
+ (class_setWeakIvarLayout): New.
+
+2010-10-15 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc/runtime.h (class_copyPropertyList): New.
+ (class_getProperty): New.
+ (property_getAttributes): New.
+ (property_getName): New.
+ * ivars.c (class_copyPropertyList): New.
+ (class_getProperty): New.
+ (property_getAttributes): New.
+ (property_getName): New.
+
+2010-10-15 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc-private/runtime.h (__objc_update_classes_with_methods): New.
+ * class.c (__objc_update_classes_with_methods): New.
+ (objc_getClassList): Do not lock the class lock.
+ * methods.c (method_exchangeImplementations): New.
+ (method_setImplementation): New.
+ * objc/runtime.h (method_setImplementation): New.
+ (method_exchangeImplementations): New.
+
+2010-10-15 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * Protocol.m: Include objc/runtime.h and
+ objc-private/module-abi-8.h instead of objc/objc-api.h. Do not
+ repeat Protocol's instance variables.
+ (struct objc_method_description_list): Do not define here.
+ ([-conformsTo:]): Reimplemented on top of protocol_conformsTo().
+ ([descriptionForInstanceMethod:]): Use sel_isEqual() to compare
+ selectors directly instead of getting names and then using strcmp.
+ ([descriptionForClassMethod:]): Same change.
+ ([-isEqual:]): Reimplemented on top of protocol_isEqual().
+ * protocols.c (protocol_getMethodDescription): Use sel_isEqual()
+ to compare selectors directly instead of getting names and then
+ using strcmp.
+ * objc/Protocol.h: Updated comments.
+
+2010-10-15 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * init.c (__objc_init_protocol): New function which fixes up a
+ protocol's class pointer, registers it with the runtime, register
+ all protocol selectors and registers associated protocols too.
+ (objc_init_statics): Detect if we are initializing protocols, and
+ if so, use __objc_init_protocol instead of only fixing up the
+ class pointer.
+ (__objc_init_protocls): Use __objc_init_protocol.
+ * objc-private/module-abi-8.h: Updated comments.
+ * objc-private/runtime.h
+ (__objc_register_selectors_from_description_list): New.
+ * selector.c (__objc_register_selectors_from_description_list):
+ New. (struct objc_method_description_list): Declare.
+ * Protocol.m ([-descriptionForInstanceMethod:]): Use sel_get_name
+ when accessing the name of a method, which is now correctly a SEL.
+ ([-descriptionForClassMethod:]): Same change.
+ * protocols.c (protocol_getMethodDescription): Same change.
+ * objc/runtime.h: Updated comments.
+ (sel_registerTypedName): Fixed typo in function name.
+
+2010-10-13 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ PR libobjc/23214
+ * init.c (objc_init_statics): Do not skip the initialization of a
+ statics list if the first object has already been initialized; in
+ the case of Protocols, while the first one may have been
+ initialized, some others may not have been initialized yet.
+
+2010-10-13 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * Makefile.in (OBJC_DEPRECATED_H): Added
+ objc_get_uninstalled_dtable, objc_object_alloc.h and
+ struct_objc_static_instances.h.
+
+2010-10-13 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * encoding.c (method_copyReturnType): New.
+ (method_copyArgumentType): New.
+ (method_getReturnType): New.
+ (method_getArgumentType): New.
+ * methods.c (method_getDescription): New.
+ * objc/runtime.h (method_copyReturnType): New.
+ (method_copyArgumentType): New.
+ (method_getReturnType): New.
+ (method_getArgumentType): New.
+ (method_getDescription): New.
+
+2010-10-12 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * encoding.c: Tidied up comments.
+ (objc_skip_variable_name): New static inline function.
+ (objc_sizeof_type): Use objc_skip_variable_name instead of copying
+ the same code over and over.
+ (objc_alignof_type): Same.
+ (objc_aligned_size): Same.
+ (objc_promoted_size): Same.
+ (objc_skip_typespec): Same.
+ (objc_layout_structure_next_member): Same.
+ (objc_skip_offset): Skip a '-' before the digits (if any). Fixed
+ historical bug where objc_skip_offset would skip one byte even if
+ there is no offset: check that the first offset digit is actually
+ a digit before skipping it.
+ (objc_skip_type_qualifiers): Mark as inline.
+ (objc_skip_typespec): Mark as inline.
+
+2010-10-12 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * Makefile.in (C_SOURCE_FILES): Added methods.c.
+ * encoding.c (method_getNumberOfArguments): New.
+ (method_get_number_of_arguments): Call
+ method_getNumberOfArguments.
+ * ivars.c (ivar_getName): Check for NULL variable argument.
+ (ivar_getOffset): Check for NULL variable argument.
+ (ivar_getTypeEncoding): Check for NULL variable argument.
+ (class_copyIvarList): New.
+ * methods.c: New.
+ * protocols.c (class_copyProtocolList): Check for Nil class_
+ argument.
+ * sendmsg.c: Use 'struct objc_method *' instead of Method_t, and
+ 'struct objc_method_list *' instead of MethodList_t.
+ (class_getMethodImplementation): New.
+ (class_respondsToSelector): New.
+ (class_getInstanceMethod): New.
+ (class_getClassMethod): New.
+ * objc/runtime.h: Updated comments.
+ (class_copyIvarList): New.
+ (class_getInstanceMethod): New.
+ (class_getClassMethod): New.
+ (class_getMethodImplementation): New.
+ (class_respondsToSelector): New.
+ (method_getName): New.
+ (method_getImplementation): New.
+ (method_getTypeEncoding): New.
+ (class_copyMethodList): New.
+ (method_getNumberOfArguments): New.
+
+2010-10-12 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * class.c: Include objc/runtime.h and objc-private/module-abi-8.h
+ instead of objc/objc-api.h.
+ (objc_get_unknown_class_handler): Do not define.
+ (class_isMetaClass): New.
+ (class_getSuperclass): New.
+ (class_getVersion): New.
+ (class_setVersion): New.
+ (class_getInstanceSize): New.
+ * exceptions.c: Include objc/runtime.h instead of objc/objc-api.h.
+ (is_kind_of_exception_matcher): Use objc_getSuperclass instead of
+ objc_get_super_class.
+ (get_ttype_entry): Use objc_getRequiredClass instead of
+ objc_get_class.
+ * ivars.c (class_getClassVariable): New.
+ * objects.c: Include objc/runtime.h, objc/thr.h and
+ objc-private/module-abi-8.h instead of objc/objc-api.h
+ * objc/runtime.h (class_getClassVariable): New.
+ (class_isMetaClass): New.
+ (class_getSuperclass): New.
+ (class_getVersion): New.
+ (class_setVersion): New.
+ (class_getInstanceSize): New.
+ * objc-private/module-abi-8.h (HOST_BITS_PER_LONG): New (from
+ objc/objc-api.h)
+ (__CLS_INFO): Same.
+ (__CLS_ISINFO): Same.
+ (__CLS_SETINFO): Same.
+ (CLS_ISMETA): Same.
+ (CLS_ISCLASS): Same.
+ (CLS_ISRESOLV): Same.
+ (CLS_SETRESOLV): Same.
+ (CLS_ISINITIALIZED): Same.
+ (CLS_SETINITIALIZED): Same.
+ (CLS_GETNUMBER): Same.
+ (CLS_SETNUMBER): Same.
+
+2010-10-12 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * archive.c: Do not include objc/objc.h.
+ * class.c: Do not include objc/objc.h.
+ * encoding.c: Include objc/runtime.h, ctype.h and
+ objc-private/module-abi-8.h instead of objc/objc-api.h and
+ objc/encoding.h.
+ * error.c: Do not include objc/objc.h.
+ * gc.c: Include tconfig.h and objc/encoding.h only if
+ OBJC_WITH_GC.
+ * hash.c: Include objc/runtime.h and objc/thr.h instead of
+ objc/objc-api.h. Do not include objc/objc.h.
+ * init.c: Do not include objc/objc.h.
+ * ivars.c: Include objc/runtime.h, objc-private/module-abi-8.h and
+ objc/thr.h instead of objc/objc-api.h. Do not include
+ objc/objc.h.
+ * linking.m: Tidied comment.
+ * memory.c: Include objc/runtime.h instead of objc/objc-api.h.
+ Do not include objc/objc.h.
+ * objects.c: Do not include objc/objc.h.
+ * objc-sync.c: Include objc/runtime.h instead of objc/objc-api.h.
+ * protocols.c: Do not include objc/objc.h.
+ * sarray.c: Include objc/runtime.h instead of objc/objc-api.h. Do
+ not include objc/objc.h.
+ * selector.c: Do not include objc/objc.h.
+ * sendmsg.c: Do not include objc/objc.h.
+ * thr.c: Include objc/runtime.h instead of objc/objc-api.h.
+ Do not include objc/objc.h.
+ * objc/objc-decls.h: Reindented code.
+ * objc/runtime.h Include objc-decls.h. Updated comments.
+ (objc_malloc): New.
+ (objc_atomic_malloc): New.
+ (objc_calloc): New.
+ (objc_realloc): New.
+ (objc_free): New.
+ * objc-private/runtime.h: Updated comments.
+
+2010-10-12 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * Makefile.in (C_SOURCE_FILES): Added protocols.c.
+ * objc-private/protocols.h: New.
+ * protocols.c: New.
+ * init.c: Include objc-private/protocols.h.
+ (__objc_exec_class): Call __objc_protocols_init on startup.
+ (__objc_init_protocols): Call __objc_protocols_add_protocol.
+ * objc-private/runtime.h: Use (struct objc_method_list *) instead
+ of MethodList_t, and (struct objc_method *) instead of Method_t.
+ * objc/deprecated/struct_objc_class.h: Define
+ __objc_STRUCT_OBJC_CLASS_defined.
+ * objc-private/module-abi-8.h (struct
+ objc_method_description_list): New.
+ (struct objc_class): Only define if
+ __objc_STRUCT_OBJC_CLASS_defined is undefined.
+ * objc/runtime.h (class_getName): New.
+ (objc_getProtocol): New.
+ (objc_copyProtocolList): New.
+ (class_addProtocol): New.
+ (class_conformsToProtocol): New.
+ (class_copyProtocolList): New.
+ (protocol_conformsToProtocol): New.
+ (protocol_isEqual): New.
+ (protocol_getName): New.
+ (protocol_getMethodDescription): New.
+ (protocol_copyMethodDescriptionList): New.
+ (protocol_getProperty): New.
+ (protocol_copyPropertyList): New.
+ (protocol_copyProtocolList): New.
+ * class.c (class_getName): New.
+ * selector.c (sel_isEqual): New.
+
+2010-10-12 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * selector.c (sel_getName): Return "<null selector>" for a NULL
+ argument.
+ (sel_get_name): Return 0 for a NULL argument.
+ * objc/runtime.h (sel_getName): Updated documentation.
+
+ * objc-private/hash.h (class_hash_table): Unused declaration
+ removed.
+ (module_hash_table): Same.
+ * objc/deprecated/hash.h: Same changes.
+
+2010-10-11 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * class.c (objc_getClassList): New.
+ (objc_getRequiredClass): New.
+ (objc_getMetaClass): New.
+ (objc_lookupClass): New.
+ (objc_getClass): New.
+ (__objc_get_unknown_class_handler): New.
+ (objc_setGetUnknownClassHandler): New.
+ (objc_get_class): Use __objc_get_unknown_class_handler.
+ (objc_lookup_class): Call objc_getClass.
+ * objc/objc-api.h: Updated comment and copyright notice.
+ * objc/runtime.h: Updated comments.
+ (objc_getClass): New.
+ (objc_lookupClass): New.
+ (objc_getMetaClass): New.
+ (objc_getRequiredClass): New.
+ (objc_getClassList): New.
+ (objc_setGetUnknownClassHandler): New.
+ (objc_get_unknown_class_handler): New.
+ * objc-private/runtime.h: Use __objc_private_runtime_INCLUDE_GNU
+ instead of __objc_runtime_INCLUDE_GNU as include guard.
+ * objc-private/error.h (_objc_abort): Mark as noreturn.
+
+2010-10-11 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * Makefile.in (C_SOURCE_FILES): Added ivars.c.
+ * ivars.c: New.
+ * objc/objc.h: Updated comments.
+ * objc/runtime.h (object_getClass): New.
+ (object_getClassName): New.
+ (object_setClass): New.
+ (class_getInstanceVariable): New.
+ (object_getIndexedIvars): New.
+ (object_getInstanceVariable): New.
+ (object_setInstanceVariable): New.
+ (object_getIvar): New.
+ (object_setIvar): New.
+ (ivar_getName): New.
+ (ivar_getOffset): New.
+ (ivar_getTypeEncoding): New.
+ * objc-private/module-abi-8.h (struct objc_class): Added.
+ * objects.c (object_getClassName): New.
+ (object_setClass): New.
+
+2010-10-11 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc/objc.h: Updated comments.
+ * objc/objc-api.h: (object_copy): Added one argument; use a
+ #define to maintain backwards-compatibility. Moved
+ _objc_object_alloc, _objc_object_copy, _objc_object_dispose and
+ objc_get_uninstalled_dtable into
+ objc/deprecated/objc_get_uninstalled_dtable.h and
+ objc/deprecated/objc_object_alloc.h. Include these files.
+ * objc/deprecated/objc_get_uninstalled_dtable.h: New.
+ * objc/deprecated/objc_object_alloc.h: New.
+ * objc/runtime.h (set_getName): New.
+ (sel_getType): New.
+ (sel_getUid): New.
+ (sel_registerName): New.
+ (sel_registerTypedName): New.
+ (sel_isEqual): New.
+ (class_createInstance): New.
+ (object_copy): New.
+ (object_dispose): New.
+ * objects.c: Do not include tconfig.h. Include gc_typed.h if
+ building the garbage collection version.
+ (__objc_object_alloc): Removed.
+ (__objc_object_copy): Removed.
+ (__objc_object_dispose): Removed.
+ (class_createInstance): New from code in class_create_instance.
+ Cast second argument of GC_malloc_explicitly_typed. Use
+ objc_calloc. Do not call _objc_object_alloc.
+ (class_create_instance): Call class_createInstance.
+ (object_copy): Added extraBytes argument. Do not call
+ _objc_object_copy.
+ (object_dispose): Do not call _objc_object_dispose.
+ * memory.c (objc_free): When using garbage collection, mark the
+ argument as unused.
+ * selector.c (sel_getName): New.
+ (sel_get_name): Call sel_getName.
+ (sel_getType): New.
+ (sel_get_type): Call sel_getType.
+ (sel_registerName): New.
+ (sel_register_name): Call sel_registerName.
+ (sel_registerTypedName): New.
+ (sel_register_typed_name): Call sel_registerTypedName.
+ (sel_getUid): New.
+ (sel_get_uid): Call sel_getUid.
+
+2010-10-10 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc/objc-api.h: Define Method, Method_t, Category and
+ Category_t. Prevent including this file at the same time as
+ objc/runtime.h. Updated comments.
+ * objc/deprecated/struct_objc_method.h: Do not define Method,
+ Method_t.
+ * objc/deprecated/struct_objc_category.h: Do not define Category,
+ Category_t.
+ * objc-private/module-abi-8.h: New file containing a copy of all
+ the structure definitions. Not used yet.
+ * objc/encoding.h (objc_aligned_size): Removed duplicate
+ declaration. Updated comments.
+ * objc/runtime.h: Added Ivar, objc_property_t, Property, Method,
+ Category, struct objc_method_description, _C_ID and similar,
+ _C_CONST and similar and _F_CONST and similar. Added
+ objc_sizeof_type, objc_alignof_type, objc_aligned_size,
+ objc_promoted_size, objc_skip_type_qualifier, objc_skip_typespec,
+ objc_skip_offset, objc_skip_argspec, objc_get_type_qualifiers,
+ struct objc_struct_layout, objc_layout_structure,
+ objc_layout_structure_next_member, objc_layout_finish_structure,
+ objc_layout_structure_get_info. Prevent including this file at
+ the same time as objc/objc-api.h.
+
+2010-10-10 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * Makefile.in (OBJC_DEPRECATED_H): Added struct_objc_category.h,
+ struct_objc_ivar.h, struct_objc_ivar_list.h, struct_objc_method.h,
+ struct_objc_method_list.h, struct_objc_module.h,
+ struct_objc_protocol_list.h, struct_objc_symtab.h.
+ * objc/deprecated/struct_objc_category.h: New.
+ * objc/deprecated/struct_objc_ivar.h: New.
+ * objc/deprecated/struct_objc_ivar_list.h: New.
+ * objc/deprecated/struct_objc_method.h: New.
+ * objc/deprecated/struct_objc_method_list.h: New.
+ * objc/deprecated/struct_objc_module.h: New.
+ * objc/deprecated/struct_objc_protocol_list.h: New.
+ * objc/deprecated/struct_objc_symtab.h: New.
+ * objc/deprecated/struct_objc_static_instances.h: New.
+ * objc/objc-api.h: Definitions of deprecated structures moved into
+ the above header fragment files in objc/deprecated/. Include the
+ files instead of definition the structures here. Updated
+ comments.
+ * objc/runtime.h: Updated comments. Do not include objc-api.h.
+ (objc_set_enumeration_mutation_handler): Renamed to
+ objc_setEnumerationMutationHandler.
+ * objc-foreach.c (objc_set_enumeration_mutation_handler): Renamed
+ to objc_setEnumerationMutationHandler.
+ * objc/objc-exception.h (objc_set_exception_matcher): Renamed to
+ objc_setExceptionMatcher.
+ (objc_set_uncaught_exception_handler): Renamed to
+ objc_setUncaughtExceptionHandler.
+ * exception.c: Same changes.
+
+2010-10-10 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc-sync.c: Include objc-private/common.h.
+
+2010-10-10 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc-foreach.c: Include objc-private/common.h.
+ * objc/deprecated/METHOD_NULL.h: New file.
+ * objc/objc-api.h: Include deprecated/METHOD_NULL.h instead of
+ defining METHOD_NULL here.
+ * Makefile.in (OBJC_DEPRECATED_H): Added METHOD_NULL.h.
+ * Object.m ([+instancesRespondTo:]): Use (Method_t)0 instead of
+ METHOD_NULL.
+ ([-respondsTo:]): Same change.
+ * objc/objc-api.h (method_get_imp): Converted it into a normal
+ function so that we can hide the internals of struct objc_method.
+ * sendmsg.c (method_get_imp): Implemented.
+
+2010-10-09 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc/objc-api.h (struct objc_super, Super, Super_t,
+ objc_msg_lookup_super, objc_msg_sendv, objc_msg_forward,
+ objc_msg_forward2): Declarations moved to objc/message.h. Include
+ message.h here.
+ * objc/message.h: Added such declarations; updated comments.
+
+2010-10-06 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ Implemented fast enumeration for Objective-C.
+ * Makefile.in (C_SOURCE_FILES): Added objc-foreach.c.
+ (OBJC_H): Added runtime.h
+ * objc-foreach.c: New file.
+ * objc/runtime.h: New file.
+
+2010-09-30 Kai Tietz <kai.tietz@onevision.com>
+
+ * objc/deprecated/struct_objc_class.h: Add padding
+ to avoid warning with -Wpadded.
+
+2010-09-26 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * encoding.c (objc_sizeof_type): Added support for vector type and
+ for double long types.
+ (objc_alignof_type): Same change.
+ (objc_skip_typespec): Same change.
+ * objc/encoding.h (_C_GCINVISIBLE): Use '|' for _C_GCINVISIBLE
+ instead of '!' since '!' is already used for _C_VECTOR.
+ * objc/objc-api.h (_C_LNG_DBL): Added.
+
+2010-09-26 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * libobjc_entry.c: File removed.
+
+2010-09-26 Kai Tietz <kai.tietz@onevision.com>
+
+ * sendmsg.c (objc_msg_lookup): Remove inline.
+ (objc_get_uninstalled_dtable): Likewise.
+ * encoding.c (objc_skip_type_qualifiers): Likewise.
+ (objc_skip_offset): Likewise.
+ * archive.c (__objc_write_object): Likewise
+ (__objc_write_class):
+ (__objc_write_selector):
+ (objc_read_char):
+ (objc_read_unsigned_char):
+ (objc_read_short):
+ (objc_read_unsigned_short):
+ (objc_read_int):
+ (objc_read_long):
+ (__objc_read_nbyte_uint):
+ (objc_read_unsigned_int):
+ (objc_read_unsigned_long):
+ * objc/objc-decls.h (obc_EXPORT): Remove dllexport for DLL_EXPORT case.
+ (objc_EXPORT): Likewise.
+ * objc/message.h (objc-decls.h): Add include.
+ * objc/objc-api.h: Mark API by objc_EXPORT.
+ * libobjc.def (__objc_responds_to): Removed.
+
+2010-09-18 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * hash.c: Include objc-private/hash.h instead of objc/hash.h.
+
+ * objc/sarray.h: Moved into objc/deprecated/sarray.h;
+ objc/sarray.h replaced with a placeholder including the file from
+ the deprecated/ directory.
+ * objc-private/sarray.h: New file (private copy of sarray.h).
+ * hash.c: Include <assert.h> instead of "assert.h"
+ * sarray.c: Include <assert.h> instead of "assert.h". Include
+ objc-private/sarray.h instead of objc/sarray.h.
+ * selector.c: Include objc-private/sarray.h instead of
+ objc/sarray.h.
+ * sendmsg.c: Include <assert.h>. Include objc-private/sarray.h
+ instead of objc/sarray.h.
+ * Makefile.in (OBJC_DEPRECATED_H): Added sarray.h.
+
+2010-09-17 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc-private/objc-list.h (list_remove_elem): Unused function
+ removed. (list_nth): Unused function removed. (list_find):
+ Unused function removed. (list_lenght): Unused function removed.
+
+2010-09-17 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc/hash.h: Moved into objc/deprecated/hash.h; objc/hash.h
+ replaced with a placeholder including the file from the
+ deprecated/ directory.
+ * objc/objc-api.h: Updated includes.
+ * objc/typedstream.h: Updated includes.
+ * objc-private/hash.h: New file (private copy of hash.h).
+ * objc/objc-list.h: Moved into objc/deprecated/objc-list.h;
+ objc/objc-list.h replaced with a placeholder including the file
+ from the deprecated/ directory.
+ * objc-private/objc-list.h: New file (private copy of objc-list.h).
+ * init.c: Include objc-private/hash.h and objc-private/objc-list.h
+ instead of objc/hash.h and objc/objc-list.h.
+ * selector.c: Same change.
+ * class.c: Added include <string.h>, which used to be implicitly included
+ when hash.h was included.
+ * exception.c: Same change.
+ * objects.c: Same change.
+ * sarray.c: Same change.
+ * sendmsg.c: Same change.
+ * Makefile.in (OBJC_DEPRECATED_H): Added hash.h and objc-list.h.
+
+2010-09-14 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ Implemented objc_sync_enter() and objc_sync_exit(), which are
+ required by @synchronized() to work.
+ * objc-sync.c: New file.
+ * objc/objc-sync.h: New file.
+ * objc-private/objc-sync.h: New file.
+ * init.c (__objc_exec_class): Call __objc_sync_init() during the
+ Objective-C runtime startup.
+ * Makefile.in: Added objc-sync.c and objc-sync.h.
+ * configure.ac: Added GCC_CHECK_TLS.
+ * acinclude.m4: Include ../config/enable.m4 and ../config/tls.m4.
+ * configure: Regenerated.
+ * config.h.in: Regenerated.
+
+2010-09-12 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * Makefile.in (%_gc.lo): New pattern rules to build the
+ garbage-collected version of the library. Removed rules for
+ specific files that are no longer needed. Standardized all rules.
+ (C_SOURCE_FILES, OBJC_SOURCE_FILES): New variables.
+ (OBJS, OBJS_GC): Compute these from C_SOURCE_FILES and
+ OBJC_SOURCE_FILES.
+ (INCLUDES): Removed the unused include -I$(srcdir)/objc.
+
+2010-09-12 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * memory.c (objc_calloc): Fixed call to GC_malloc when building
+ with Garbage Colletion.
+
+2010-09-12 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * memory.c: Do not include objc-private/runtime.h.
+
+2010-09-12 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc/deprecated/objc_malloc.h: New file.
+ * objc/deprecated/objc_valloc.h: New file.
+ * objc/objc-api.h: Include the files instead of defining
+ objc_valloc, _objc_malloc() and similar.
+ * Makefile.in (OBJC_DEPRECATED_H): Added objc_valloc.h and
+ objc_malloc.h.
+ * memory.c: Removed the extra layer of indirection of _objc_malloc
+ and similar.
+ (objc_calloc): Use GC_malloc in the garbage-collected
+ implementation as GC_malloc returns memory that is already freed.
+ (objc_valloc): Deprecated.
+
+2010-09-12 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc/deprecated/objc_error.h: New file.
+ * objc/objc-api.h: Include deprecated/objc_error.h instead of
+ defining objc_error and related.
+ * error.c: New file. Added _objc_abort function which replaces
+ objc_error. No change in functionality as they both print an
+ error and abort.
+ * misc.c: File removed. Code moved into memory.c and error.c.
+ * memory.c: New file.
+ * objc-private/error.h: New file.
+ * archive.c: Include objc-private/error.h and use _objc_abort
+ instead of objc_error everywhere.
+ * class.c: Same change.
+ * encoding.c: Same change.
+ * init.c: Same change, and simplified init_check_module_version.
+ * memory.c: Same change.
+ * sendmsg.c: Same change.
+ * thr.c: Same change.
+ * Makefile.in (OBJ_DEPRECATED_H): Added objc_error.h.
+ (OBJ_H): Reordered list.
+ (OBJS): Removed misc.lo, added memory.lo and error.lo.
+ (OBJS_GC): Removed misc_gc.lo, added memory_gc.lo and error_gc.lo.
+ (misc_gc.lo): Rule removed.
+ (error_gc.lo): Rule added.
+ (memory_gc.lo): Rule added.
+
+2010-09-12 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc/objc.h (__GNU_LIBOBJC__): New #define providing an easy way
+ to check the API version. Added some comments.
+
+ * objc-private/common.h: New file.
+ * NXConstStr.m: Include objc-private/common.h.
+ * Object.m: Same change.
+ * Protocol.m: Same change.
+ * archive.c: Same change.
+ * class.c: Same change.
+ * encoding.c: Same change.
+ * exception.c: Same change.
+ * gc.c: Same change.
+ * hash.c: Same change.
+ * init.c: Same change.
+ * libobjc_entry.c: Same change.
+ * linking.m: Same change.
+ * misc.c: Same change (and added a comment).
+ * nil_method.c: Same change.
+ * objects.c: Same change.
+ * sarray.c: Same change.
+ * selector.c: Same change.
+ * sendmsg.c: Same change.
+ * thr.c: Same change.
+
+2010-09-11 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc/objc-api.h: Removed obsolete #ifdef for NeXTSTEP.
+
+2010-09-11 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * archive.c: Removed not needed includes.
+ * class.c: Same change.
+ * hash.c: Same change.
+ * misc.c: Same change.
+ * nil_method.c: Same change.
+ * objects.c: Same change.
+ * sarray.c: Same change.
+ * sendmsg.c: Same change.
+ * thr.c: Same change.
+
+2010-09-11 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc/runtime.h: Moved to objc-private/runtime.h. Do not include
+ all the objc/*.h files.
+ * objc-private/runtime.h: New file.
+ * archive.c: Include objc-private/runtime.h (and required objc/*.h
+ files) instead of objc/runtime.h.
+ * class.c: Same change.
+ * hash.c: Same change.
+ * init.c: Same change.
+ * misc.c: Same change.
+ * nil_method.c: Same change.
+ * objects.c: Same change.
+ * sarray.c: Same change.
+ * selector.c: Same change.
+ * sendmsg.c: Same change.
+ * thr.c: Same change.
+
+2010-09-11 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc/deprecated/struct_objc_selector.h: New file. Definition of
+ 'struct objc_selector' and 'sel_eq' moved here.
+ * objc/deprecated/struct_objc_protocol.h: New file. Definition of
+ 'struct objc_procotol' moved here.
+ * objc/deprecated/struct_objc_class.h: New file. Definition of
+ 'struct objc_class' moved here.
+ * objc/deprecated/MetaClass.h: New file. Definition of MetClass
+ moved here.
+ * objc/deprecated/STR.h: New file. Definition of STR moved here.
+ * objc/message.h: New file. Definitions for relval_t, apply_t,
+ arglist, arglist_t and objc_msg_lookup were moved here.
+ * objc/objc.h: Include the above files instead of defining the
+ corresponding structs, types and functions here. Added new opaque
+ definitions for SEL and Class. Use Class and not 'struct
+ objc_class *' in the definition of 'struct objc_object'.
+ Commented all types defined in the file. Removed special
+ definition of BOOL as 'int' on __vxworks; use 'unsigned char'
+ there as well.
+ * objc/deprecated/objc-unexpected-exception.h: Renamed to
+ objc_unexpected_exception.h.
+ * objc/objc-api.h: Updated include of
+ objc-unexpetected-exception.h
+ * objc/objc-exception.h: Updated comments.
+ * Makefile.in (OBJC_H, OBJC_DEPRECATED_H): Added the new header
+ files. Reindented list of files.
+
+2010-09-10 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc/objc-api.h (objc_trace): Unused variable removed.
+
+2010-09-10 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc/deprecated: New directory.
+ * objc/deprecated/README: New file.
+ * objc/README: New file.
+ * objc/typedstream.h: Moved into objc/deprecated/typedstream.h;
+ objc/typedstream.h replaced with a placeholder including the file
+ from the deprecated/ directory.
+ * objc/deprecated/objc-unexpected-exception.h: New file with the
+ definition of _objc_unexpected_exception.
+ * objc/objc-api.h: Include deprecated/objc-unexcepted-exception.h
+ instead of defining _objc_unexpected_exception.
+ * objc/deprecated/Object.h: New file with the deprecated Object
+ methods in a 'Deprecated' category.
+ * objc/Object.h Include deprecated/Object.h instead of defining
+ the deprecated methods.
+ * Object.m: Moved deprecated methods into 'Deprecated' category.
+ * objc-private: New directory.
+ * objc-private/README: New file.
+ * Makefile.in (OBJC_DEPRECATED_H): New variable.
+ (install-headers): Create installation directory for
+ OBJC_DEPRECATED_H headers, and install them.
+
+2010-09-10 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc/objc-exception.h: Fixed include of objc.h.
+
+2010-09-08 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc/objc-exception.h: New file.
+ * exception.c (objc_set_uncaught_exception_handler): Implemented.
+ (objc_set_exception_matcher): Implemented.
+ (objc_exception_throw): Use the uncaught exception handler if set.
+ (PERSONALITY_FUNCTION): Use the exception matcher instead of the
+ hardcoded isKindOf.
+ (isKindOf): Renamed to is_kind_of_exception_matcher. Tidied code
+ up. Removed segmentation fault when value is 'nil'.
+ * objc/objc-api.h (_objc_unexpected_exception): Mark as
+ deprecated.
+ * Makefile.in (exception.lo, exception_gc.lo): Use
+ -Wno-deprecated-declarations when compiling.
+ (OBJC_H): Added objc-exception.h
+
+2010-09-08 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * objc/typedstream.h: Deprecate all functions in the file. This
+ file is obsolete.
+ * objc/Object.h ([+streamVersion:], [-read:], [-write:],
+ [-awake]): Documented that these methods are deprecated. Added a
+ brief description of the Object class and its relationship to the
+ NSObject class.
+ * Makefile.in: Compile archive.c and Object.m with
+ -Wno-deprecated-declarations.
+
+2010-09-08 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ Removed obsolete intermediate threading layer.
+ * thr.c: Use __gthread_objc_xxx functions directly instead of
+ __objc_thread_xxx ones.
+ * objc/thr.h: Removed prototypes of no longer existing
+ __objc_thread_xxx functions.
+ * Makefile.in: Removed thr-objc.lo.
+ * thr-dce.c: File removed.
+ * thr-decosf1.c: File removed.
+ * thr-irix.c: File removed.
+ * thr-mach.c: File removed.
+ * thr-objc.c: File removed.
+ * thr-os2.c: File removed.
+ * thr-posix.c: File removed.
+ * thr-pthreads.c: File removed.
+ * thr-rtems.c: File removed.
+ * thr-single.c: File removed.
+ * thr-solaris.c: File removed.
+ * thr-vxworks.c: File removed.
+ * thr-win32.c: File removed.
+ * README.threads: File removed.
+ * THREADS.MACH: File removed.
+ * THREADS: Updated.
+
+2010-09-07 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * Object.m (MAX_CLASS_NAME_LEN): Unused define removed.
+
+2010-09-06 Iain Sandoe <iains@gcc.gnu.org>
+
+ * encoding.c: Add TARGET_ALIGN_NATURAL definition for m64 powerpc darwin.
+ Add a comment as to why, update FIXME comments.
+
+2010-09-06 Nicola Pero <nicola.pero@meta-innovation.com>
+
+ * makefile.dos: Obsolete file removed.
+
+2010-04-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ * aclocal.m4: Regenerate.
+
+2010-03-23 Dave Korn <dave.korn.cygwin@gmail.com>
+
+ PR libobjc/30445
+ * configure.ac (extra_ldflags_libobjc): Define appropriately for
+ Cygwin and MinGW hosts.
+ * Makefile.am (libobjc_s.a): Remove dead pre-libtool target.
+ (libobjc.dll): Likewise.
+ * configure: Regenerate.
+
+2009-12-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ * configure: Regenerate.
+
+2009-11-28 Jakub Jelinek <jakub@redhat.com>
+
+ * sarray.c (sarray_free): Use old_buckets variable.
+ * encoding.c (objc_layout_structure_next_member): Remove unused
+ bfld_type_size variable.
+
+2009-08-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ * configure.ac (AC_PREREQ): Bump to 2.64.
+
+2009-08-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ * aclocal.m4: Regenerate.
+ * configure: Regenerate.
+ * config.h.in: Regenerate.
+
+2009-08-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ * Makefile.in (LIBTOOL): Add $(LIBTOOLFLAGS).
+
+2009-07-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ * Makefile.in (AUTOCONF, ACLOCAL, ACLOCAL_AMFLAGS, aclocal_deps):
+ New variables.
+ ($(srcdir)/configure, $(srcdir)/aclocal.m4): New rules.
+
+2009-07-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ * configure.ac (_AC_ARG_VAR_PRECIOUS): Use m4_rename_force.
+
+2009-04-09 Nick Clifton <nickc@redhat.com>
+
+ * sendmsg.c: Change copyright header to refer to version 3 of
+ the GNU General Public License with version 3.1 of the GCC
+ Runtime Library Exception and to point readers at the COPYING3
+ and COPYING3.RUNTIME files and the FSF's license web page.
+ * NXConstStr.m: Likewise.
+ * Object.m: Likewise.
+ * Protocol.m: Likewise.
+ * archive.c: Likewise.
+ * class.c: Likewise.
+ * encoding.c: Likewise.
+ * exception.c: Likewise.
+ * gc.c: Likewise.
+ * hash.c: Likewise.
+ * init.c: Likewise.
+ * libobjc_entry.c: Likewise.
+ * linking.m: Likewise.
+ * misc.c: Likewise.
+ * nil_method.c: Likewise.
+ * objc/NXConstStr.h: Likewise.
+ * objc/Object.h: Likewise.
+ * objc/Protocol.h: Likewise.
+ * objc/encoding.h: Likewise.
+ * objc/hash.h: Likewise.
+ * objc/objc-api.h: Likewise.
+ * objc/objc-decls.h: Likewise.
+ * objc/objc-list.h: Likewise.
+ * objc/objc.h: Likewise.
+ * objc/runtime.h: Likewise.
+ * objc/sarray.h: Likewise.
+ * objc/thr.h: Likewise.
+ * objc/typedstream.h: Likewise.
+ * objects.c: Likewise.
+ * sarray.c: Likewise.
+ * selector.c: Likewise.
+ * thr-dce.c: Likewise.
+ * thr-decosf1.c: Likewise.
+ * thr-irix.c: Likewise.
+ * thr-mach.c: Likewise.
+ * thr-objc.c: Likewise.
+ * thr-os2.c: Likewise.
+ * thr-posix.c: Likewise.
+ * thr-pthreads.c: Likewise.
+ * thr-rtems.c: Likewise.
+ * thr-single.c: Likewise.
+ * thr-solaris.c: Likewise.
+ * thr-vxworks.c: Likewise.
+ * thr-win32.c: Likewise.
+ * thr.c: Likewise.
+ * libobjc.def: Change copyright header to refer to version 3 of
+ the GNU General Public License and to point readers at the COPYING3
+ file and the FSF's license web page.
+ * makefile.dos: Likewise.
+
+2009-04-09 Jakub Jelinek <jakub@redhat.com>
+
+ * Makefile.in: Change copyright header to refer to version
+ 3 of the GNU General Public License and to point readers at the
+ COPYING3 file and the FSF's license web page.
+ * configure.ac: Likewise.
+
+2009-03-12 Richard Frith-Macdonald <rfm@gnu.org>
+ David Ayers <ayers@fsfe.org>
+
+ PR libobjc/27466
+ * objc/objc-api.h (_objc_unexpected_exception): Declare
+ new hook. Update copyright dates.
+ * exception.c (objc_exception_throw): Use hook. Update
+ copyright dates.
+ * libobjc.def (_objc_unexpected_exception): Export hook.
+ Update copyright dates.
+
+2009-03-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ * configure: Regenerate.
+
+2008-12-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ * configure: Regenerate.
+
+2008-11-21 Kai Tietz <kai.tietz@onevision.com>
+
+ * Object.m (errno): Replaced by errno.h include.
+ (compare): Cast self to id to prevent warning on comparison.
+ * objc/objc.h (BOOL): Prevent redeclaration of BOOL, if it is
+ already there.
+ * sendmsg.c (__objc_print_dtable_stats): Remove type warnings.
+ * thr-win32.c (__objc_thread_detach): Remove type warning.
+ (__objc_thread_id): Likewise.
+ * thr.c (__objc_thread_detach_functiont): Add __builtin_trap ()
+ for noreturn.
+
+2008-09-26 Peter O'Gorman <pogma@thewrittenword.com>
+ Steve Ellcey <sje@cup.hp.com>
+
+ * configure: Regenerate for new libtool.
+ * config.h.in: Regenerate for new libtool.
+
+2008-07-18 Matthias Klose <doko@ubuntu.com>
+
+ * Makefile.in: Ignore missing ../boehm-gc/threads.mk.
+
+2008-07-18 Matthias Klose <doko@ubuntu.com>
+
+ * Makefile.in: Include ../boehm-gc/threads.mk.
+ (OBJC_BOEHM_GC_LIBS): Define, (libobjc_gc$(libsuffix).la): Use it.
+
+2008-07-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ * Makefile.in (install-info): New stub target.
+
+2008-06-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ * configure: Regenerate.
+
+2008-06-14 Kai Tietz <kai.tietz@onevision.com>
+
+ * exception.c (PERSONALITY_FUNCTION): Remove extra decrement
+ if HAVE_GETIPINFO is not defined.
+
+2008-06-10 Kai Tietz <kai.tietz@onevision.com>
+
+ * Object.m (compare): Add type id.
+ * objc/Object.h: Likewise.
+ * archive.c (objc_read_class): Use size_t to extend version to be
+ size of pointer scalar width.
+ * sendmsg.c (rtx): Undefine it before redefinition.
+ (__objc_print_dtable_stats): Cast arguments to long as intended.
+
+2008-05-30 Julian Brown <julian@codesourcery.com>
+
+ * exception.c (__objc_exception_class): Initialise as constant
+ array for ARM EABI. Change macro to static const for non-ARM EABI.
+ (ObjcException): Add note about structure layout. Remove landingPad
+ and handlerSwitchValue for ARM EABI.
+ (get_ttype_entry): Add __ARM_EABI_UNWINDER__ version
+ of function.
+ (CONTINUE_UNWINDING): Define for ARM EABI/otherwise cases.
+ (PERSONALITY_FUNCTION): Use ARM EABI-specific arguments, and add
+ ARM EABI unwinding support.
+ (objc_exception_throw): Use memcpy to initialise exception class.
+
+2008-05-25 Alan Modra <amodra@bigpond.net.au>
+
+ * encoding.c (strip_array_types): Rename from get_inner_array_type.
+ (rs6000_special_round_type_align): Update.
+
+2008-05-09 Julian Brown <julian@codesourcery.com>
+
+ * Makefile.in (LTLDFLAGS): New.
+ (libobjc$(libsuffix).la, libobjc_gc$(libsuffix).la): Use above.
+
+2008-04-18 Paolo Bonzini <bonzini@gnu.org>
+
+ PR bootstrap/35457
+ * aclocal.m4: Regenerate.
+ * configure: Regenerate.
+
+2008-01-24 David Edelsohn <edelsohn@gnu.org>
+
+ * configure: Regenerate.
+
+2007-10-14 H.J. Lu <hongjiu.lu@intel.com>
+
+ * configure.ac: Don't run config-ml.in directly.
+ (multilib_arg): New.
+ * configure: Regenerated.
+
+2007-08-06 Andrew Pinski <pinskia@gmail.com>
+
+ PR libobjc/30731
+ * exception.c (parse_lsda_header): Use _uleb128_t/_sleb128_t instead
+ of _Unwind_Word for variables which are used in
+ read_uleb128/read_sleb128.
+ (PERSONALITY_FUNCTION): Likewise.
+
+2007-07-05 H.J. Lu <hongjiu.lu@intel.com>
+
+ * aclocal.m4: Regenerated.
+
+2007-06-03 Andrew Pinski <andrew_pinski@playstation.sony.com>
+
+ * configure.ac: Fix a typo in *-*-darwin clause.
+ * configure: Regenerated.
+
+2007-06-02 H.J. Lu <hongjiu.lu@intel.com>
+
+ * configure.ac: Fix a typo.
+ * configure: Regenerated.
+
+2007-06-02 Paolo Bonzini <bonzini@gnu.org>
+
+ * configure: Regenerate.
+
+2007-06-01 Andrew Pinski <andrew_pinski@playstation.sony.com>
+
+ * Makefile.in: Replace all uses of libext with libsuffix.
+ * configure.ac: Likewise.
+ * configure: Regenerate.
+
+ Revert:
+ * Makefile.in: Remove all uses of $(libext).
+
+2007-05-23 Andrew Pinski <andrew_pinski@playstation.sony.com>
+
+ * Makefile.in: Remove all uses of $(libext).
+
+2007-05-23 Steve Ellcey <sje@cup.hp.com>
+
+ * configure: Regenerate.
+ * aclocal.m4: Regenerate.
+
+2007-04-21 Andrew Ruder <andy@aeruder.net>
+
+ * sendmsg.c (__objc_get_forward_imp): Call
+ __objc_msg_forward2 for real.
+
+2007-04-09 Andrew Ruder <andy@aeruder.net>
+
+ * sendmsg.c: Added __objc_msg_forward2, a hook that allows
+ external libraries to provide a function that returns the real
+ forwarding function based on both the selector and the receiver.
+ * objc/objc-api.h: Define __objc_msg_forward2.
+
+2007-03-01 Brooks Moses <brooks.moses@codesourcery.com>
+
+ * Makefile.in: Add dummy install-pdf target.
+
+2007-02-18 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
+
+ * objc/objc-list.h (list_free): Add keyword 'inline' to avoid
+ unused warning.
+
+2006-10-31 Geoffrey Keating <geoffk@apple.com>
+
+ * encoding.c (darwin_rs6000_special_round_type_align): New.
+
+2006-10-14 Geoffrey Keating <geoffk@apple.com>
+
+ * Makefile.in: Use multi_basedir instead of toplevel_srcdir.
+ * configure.ac: Use multi.m4 from aclocal rather than custom
+ code. Use multi_basedir instead of toplevel_srcdir.
+ * aclocal.m4: Regenerate.
+ * configure: Regenerate.
+
+2006-10-10 Brooks Moses <bmoses@stanford.edu>
+
+ * Makefile.in: Added empty "pdf" target.
+
+2006-07-18 Paolo Bonzini <bonzini@gnu.org>
+
+ * configure: Regenerate.
+
+2006-05-23 Carlos O'Donell <carlos@codesourcery.com>
+
+ * Makefile.in: Add install-html target. Add install-html to .PHONY
+
+2006-02-21 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ PR libobjc/26309
+ * thr-objc.c (_XOPEN_SOURCE): Don't define on Tru64 UNIX.
+
+2006-01-24 David Ayers <d.ayers@inode.at>
+
+ PR libobjc/9751
+ * gc.c (class_ivar_set_gcinvisible): Replace strncpy with memcpy
+ and insure the new strings are '\0' termintated.
+
+2006-01-24 David Ayers <d.ayers@inode.at>
+
+ PR libobjc/13946
+ * configure.ac: Add include directives for --enable-objc-gc.
+ * Makefile.in: Ditto.
+ * configure: Regenerate.
+
+ * gc.c (__objc_class_structure_encoding): Increment the used bytes
+ instead of the local pointer to them.
+
+2005-12-14 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR objc/25360
+ * objc/objc-api.c (_C_COMPLEX): New define.
+ * encoding.c (objc_sizeof_type): Handle _C_Complex.
+ (objc_alignof_type): Likewise.
+ (objc_skip_typespec): Likewise.
+
+2005-12-15 David Ayers <d.ayers@inode.at>
+
+ PR libobjc/14382
+ * README (+load,+initialize): Fix documentation to reflect
+ intended and implemented semantics for +load and +initialize.
+
+2005-12-12 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * encoding.c (TYPE_FIELDS): Fix to skip over just _C_STRUCT_B and
+ the name.
+ (get_inner_array_type): Fix to skip over _C_ARY_B and size.
+ (rs6000_special_round_type_align): Update for the ABI fix.
+ (objc_layout_finish_structure): Correct the encoding which is passed to
+ ROUND_TYPE_ALIGN.
+
+2005-12-11 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR libobjc/25347
+ * encoding.c (objc_sizeof_type): Don't handle _C_UNION_B special
+ but use the struct layout functions.
+ (objc_alignof_type): Likewise.
+ (objc_layout_structure): Handle _C_UNION_B also.
+ (objc_layout_structure_next_member): Likewise.
+ (objc_layout_finish_structure): Likewise.
+
+2005-12-11 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR libobjc/25346
+ * objc/objc-api.h (_C_BOOL): New define.
+ * encoding.c (objc_sizeof_type): Handle _C_BOOL.
+ (objc_alignof_type): Likewise.
+ (objc_skip_typespec): Likewise.
+
+2005-11-20 David Ayers <d.ayers@inode.at>
+
+ PR libobjc/19024
+ * objc/hash.h: Remove deprecated hash API.
+ * hash_compat.c: Remove.
+ * Makefile.in: Remove reference to hash_compat.c.
+
+ * configure.ac (VERSION): Bump library version to 2:0:0.
+ * configure: Regenerate.
+
+2005-11-09 Alexandre Oliva <aoliva@redhat.com>
+
+ PR other/4372
+ * thr-objc.c (_XOPEN_SOURCE): Define.
+
+2005-10-07 Ulrich Weigand <uweigand@de.ibm.com>
+
+ PR libobjc/23612
+ * objc/objc-api.h (struct objc_ivar): Move definition to
+ global scope.
+
+2005-09-04 Andrew Pinski <pinskia@physics.uc.edu>
+ Rasmus Hahn <rassahah@neofonie.de>
+
+ PR libobjc/23108
+ * archive.c (objc_write_type): Correct the element offset.
+ (objc_read_type): Likewise.
+
+2005-08-17 Kelley Cook <kcook@gcc.gnu.org>
+
+ * All files: Update FSF address.
+
+2005-08-13 Marcin Koziej <creep@desk.pl>
+ Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR libobjc/22492
+ * exception.c (PERSONALITY_FUNCTION): Fix the PC with finally.
+
+2005-08-13 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * Makefile.in (extra_ldflags_libobjc): New.
+ (libobjc$(libext).la): Add extra_ldflags_libobjc to the link line.
+ (libobjc_gc$(libext).la): Likewise.
+ * configure.ac (extra_ldflags_libgfortran): Set for *-darwin* to
+ "-Wl,-single_module".
+ * configure: Regenerate.
+ * linking.m (_objcInit): Remove.
+
+2005-07-26 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR libobjc/22606
+ * Makefile.in (ALL_CFLAGS): Add -fexceptions.
+
+2005-06-08 David Ayers <d.ayers@inode.at>
+
+ * objc/NXConstStr.h, objc/Object.h, objc/Protocol.h,
+ objc/encoding.h, objc/hash.h, objc/objc-api.h,
+ objc/runtime.h, objc/sarray.h, objc/thr.h,
+ objc/typedstream.h: Do not include Objective-C headers as
+ system headers.
+
+2005-06-07 David Ayers <d.ayers@inode.at>
+
+ * archive.c, init.c, selector.c: Include hash.h.
+ * archive.c, class.c, encoding.c, gc.c, hash.c, hash_compat.c,
+ init.c, misc.c, nil_method.c, objects.c, sarray.c, selector.c,
+ sendmsg.c, thr-dce.c, thr-decosf1.c, thr-irix.c, thr-mach.c,
+ thr-objc.c, thr-os2.c, thr-posix.c, thr-pthreads.c, thr-rtems.c,
+ thr-single.c, thr-solaris.c, thr-vxworks.c, thr-win32.c, thr.c:
+ Include Objective-C headers with quotes and objc/ directory
+ prefix.
+
+2005-05-19 Richard Henderson <rth@redhat.com>
+
+ * exception.c: Revert last change.
+
+2005-05-19 David Ayers <d.ayers@inode.at>
+
+ * exception.c: Include tsystem.h for unwind.h.
+
+2005-05-09 Mike Stump <mrs@apple.com>
+
+ * configure: Regenerate.
+
+2005-04-12 Mike Stump <mrs@apple.com>
+
+ * configure: Regenerate.
+
+2005-03-21 Zack Weinberg <zack@codesourcery.com>
+
+ * Makefile.in: Set gcc_version here.
+ * configure.ac: Do not invoke TL_AC_GCC_VERSION. Adjust quoting
+ in definition of toolexeclibdir so that $(gcc_version) is expanded
+ by the Makefile.
+ * aclocal.m4, configure: Regenerate.
+
+2005-03-03 David Ayers <d.ayers@inode.at>
+
+ * objc/hash.h (OBJC_IGNORE_DEPRECATED_API): Update deprecated
+ version reference. Correct typo.
+
+2005-03-02 David Ayers <d.ayers@inode.at>
+
+ PR libobjc/19024
+ * Makefile.in (OBJS): Add hash_compat.lo.
+ (OBJS_GC): Add hash_compat_gc.lo.
+ (hash_compat_gc.lo): New target and rule.
+ * objc/hash.h (hash_new, hash_delete, hash_add, hash_remove)
+ (hash_next, hash_value_for_key, hash_is_key_in_hash)
+ (hash_ptr, hash_string, compare_ptrs, compare_strings): Prefix
+ with objc_. Add deprecated non prefixed inlined versions.
+ (OBJC_IGNORE_DEPRECATED_API): New macro to hide deprecated
+ declarations.
+ * hash.c (hash_new, hash_delete, hash_add, hash_remove, hash_next)
+ (hash_value_for_key, hash_is_key_in_hash): Prefix with objc_ and
+ update callers.
+ * hash_compat.c: New file.
+ * archive.c: Update callers.
+ * init.c: Likewise.
+ * selector.c: Likewise.
+ * libobjc.def: Add objc_ versions of hash functions.
+
+2005-02-28 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR libobjc/20252
+ * Makefile.in (GTHREAD_FLAGS): Remove.
+ (ALL_CFLAGS): Remove usage of GTHREAD_FLAGS.
+ * thr-objc.c: Include config.h.
+ * configure.ac: Instead of looking at GCC's makefile, figure out if
+ GTHREAD_FLAGS should be defined by looking at the `thread model'
+ of the current gcc.
+ * configure: Regenerate.
+ * config.h.in: Regenerate.
+
+2005-02-28 Paolo Bonzini <bonzini@gnu.org>
+
+ PR bootstrap/17383
+ * configure.ac: Call GCC_TOPLEV_SUBDIRS.
+ (Determine CFLAGS for gthread): Use $host_subdir.
+ * configure: Regenerate.
+ * Makefile.in (host_subdir): New.
+ (INCLUDES): Use it.
+
+2004-12-20 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR libobjc/12035
+ * gc.c: Remove definition of LOGWL, modWORDSZ, and divWORDSZ since
+ they are not used.
+ Include limits.h and stdlib.h.
+ Define BITS_PER_WORD.
+
+2004-12-12 Alexander Malmberg <alexander@malmberg.org>
+
+ * selector.c (__objc_init_selector_tables): Add missing void to
+ definition.
+
+2004-12-02 Richard Sandiford <rsandifo@redhat.com>
+
+ * configure.ac: Use TL_AC_GCC_VERSION to set gcc_version.
+ * configure, aclocal.m4: Regenerate.
+
+2004-11-29 Kelley Cook <kcook@gcc.gnu.org>
+
+ * configure: Regenerate for libtool change.
+
+2004-11-25 Kelley Cook <kcook@gcc.gnu.org>
+
+ * configure: Regenerate for libtool reversion.
+
+2004-11-24 Kelley Cook <kcook@gcc.gnu.org>
+
+ * configure: Regenerate for libtool change.
+
+2004-11-24 Kelley Cook <kcook@gcc.gnu.org>
+
+ * aclocal.m4, config.h.in: Regenerate.
+
+2004-10-08 Mike Stump <mrs@apple.com>
+ Andrew Pinski <pinskia@physics.uc.edu>
+
+ * aclocal.m4: Rename to ...
+ * acinclude.m4: here and also use m4_include instead of sinclude.
+ * aclocal.m4: Regenerate.
+ * configure: Regenerate.
+ * configure.ac: Add AM_MAINTAINER_MODE and AM_PROG_CC_C_O.
+ * Makefile.in (configure): Add @MAINT@ infront of configure.ac
+
+2004-10-08 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * archive.c: Fix all the warnings about passing unsigned char*
+ to char* and the other way too.
+
+2004-09-16 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR libobjc/16448
+ * exception.c: Include config.h
+ (objc_exception_throw): Change _GLIBCXX_SJLJ_EXCEPTIONS to
+ SJLJ_EXCEPTIONS.
+ * configure.ac: Find out what exception handling code we use.
+ * configure: Regenerate.
+ * config.h.in: New file, regenerate.
+
+2004-09-16 Andrew Pinski <apinski@apple.com>
+
+ * encoding.c (ALTIVEC_VECTOR_MODE): Define a bogus macro.
+
+2004-08-28 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * configure.ac: Switch from _GCC_TOPLEV_NONCANONICAL_TARGET to
+ ACX_NONCANONICAL_TARGET.
+ * configure: Regenerate.
+
+2004-08-13 Ziemowit Laski <zlaski@apple.com>
+
+ * objc/sarray.h: Hoist include of assert.h near the top of file,
+ and mark the remainder of the file 'extern "C"'.
+
+2004-08-13 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * objc/Object.h: Move includes out of extern "C" blocks.
+ * objc/encoding.h: Likewise.
+ * objc/hash.h: Likewise.
+ * objc/objc-api.h: Likewise.
+ * objc/runtime.h: Likewise.
+ * objc/sarray.h: Likewise.
+ * objc/typedstream.h: Likewise.
+
+2004-08-12 Ziemowit Laski <zlaski@apple.com>
+
+ * objc/NXConstStr.h: Update copyright date; bracket with
+ 'extern "C"' for C++ use; make include syntax consistent
+ by using <...> instead of "..."; hoist <objc/...> includes
+ above the 'extern "C"' block.
+ * objc/Object.h: Likewise.
+ * objc/Protocol.h: Likewise.
+ * objc/encoding.h: Likewise.
+ * objc/hash.h: Likewise.
+ * objc/runtime.h: Likewise.
+ * objc/sarray.h: Likewise.
+ * objc/thr.h: Likewise.
+ * objc/typedstream.h: Likewise.
+ * objc/objc-api.h: Add 'extern "C"' block for C++ use.
+ (objc_static_instances): For C++ case, do away with
+ zero-sized array.
+ (objc_method): Hoist definition to file scope.
+ (_objc_load_callback, _objc_object_alloc, class_get_class_method,
+ class_get_instance_method, class_create_instance,
+ class_get_class_name, class_get_instance_size,
+ class_get_meta_class, class_get_super_class, class_get_version,
+ class_is_class, class_is_meta_class, class_set_version,
+ class_get_gc_object_type, class_ivar_set_gcinvisible,
+ get_imp): Rename 'class' parameter to '_class'.
+ * objc/objc-list.h: Add 'extern "C"' block for C++ use.
+ * objc/objc.h: Update copyright date.
+ (arglist_t): Provide a union tag.
+
+2004-07-22 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * thr.c (__objc_thread_detach_function): Do not mark as volatile
+ but instead use the attribute noreturn.
+
+2004-06-28 Zack Weinberg <zack@codesourcery.com>
+
+ * encoding.c: Rename target_flags with a #define to avoid
+ conflict with a prior declaration.
+
+2004-06-24 Andrew Pinski <apinski@apple.com>
+
+ * objc/encoding.h: Wrap the functions with extern "C" for C++
+ mode.
+ * objc/hash.h: Likewise.
+ * objc/objc-api.h: Likewise.
+ * objc/objc-list.h: Likewise.
+ * objc/runtime.h: Likewise.
+ * objc/sarray.h: Likewise.
+ * objc/thr.h: Likewise.
+ * objc/typedstream.h: Likewise.
+
+
+2004-06-21 Nick Clifton <nickc@redhat.com>
+
+ * encoding.c (BITS_PER_UNIT): Define if a definition is not
+ provided.
+
+2004-06-20 Alexander Malmberg <alexander@malmberg.org>
+
+ * Makefile.in (exception.lo): Remove $(OBJC_GCFLAGS).
+ (exception_gc.lo): New.
+ (OBJS_GC): Add exception_gc.lo.
+
+2004-06-17 Richard Henderson <rth@redhat.com>
+
+ * exception.c: New file.
+ * Makefile.in (exception.lo): New.
+ (OBJS): Add it.
+
+2004-06-14 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * linking.m (_objcInit): New empty function
+ for Darwin only.
+
+2004-06-11 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * configure.ac: Support --enable-shared=libobjc.
+ * configure: Regenerate.
+
+ PR libobjc/15901
+ * configure.ac: Do not disable shared by default.
+ * configure: Regenerate.
+
+2004-06-03 Nicola Pero <n.pero@mi.flashnet.it>
+
+ * Protocol.m ([-isEqual:]): Small optimizations returning
+ immediately if the argument is equal to self, and accessing
+ the argument's name directly if it's a protocol.
+
+2004-06-03 David Ayers <d.ayers@inode.at>
+
+ * Protocol.m ([-isEqual:]): Test the class of the argument.
+
+2004-05-25 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * configure.ac (includedir): Rename to ...
+ (includedirname).
+ * Makefile.in: s/includedir/includedirname/.
+
+ PR target/11572
+ * configure.ac (includedir): Set to "include"
+ except for Darwin.
+ (libext) Set to empty except for Darwin.
+ * configure: Regenerate
+ * Makefile.in: s/libobjc.la/libobjc$(libext).la/g.
+ s/include/$(includedir)/g.
+
+2004-05-25 Daniel Jacobowitz <drow@false.org>
+
+ * Makefile.in: Add .NOEXPORT.
+
+2004-05-25 Andrew Pinski <pinskia@physics.uc.edu>
+
+ Merge from the libobjc-branch
+ 2004-02-09 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * Makefile.in (OBJC_H): Change objc-deps.h to objc-decls.h.
+
+ 2004-02-03 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * Makefile.in (OBJC_H): Add objc-deps.h.
+
+ 2004-01-27 Nicola Pero <n.pero@mi.flashnet.it>
+
+ * Protocol.m ([-conformsTo:]): If the argument is nil, return NO.
+ ([-hash], [-isEqual:]): New methods.
+
+ 2004-01-27 Richard Frith-Macdonald <rfm@gnu.org>
+
+ * sarray.c (sarray_free): Add a better comment.
+
+ 2004-01-27 Adam Fedor <fedor@gnu.org>
+
+ * hash.c (hash_add): Cast cachep to int.
+ * selector.c (__sel_register_typed_name): Cast
+ soffset_decode to int.
+
+ 2004-01-27 Alexander Malmberg <alexander@malmberg.org>
+
+ * selector.c: Rename register_selectors_from_list to
+ __objc_register_selectors_from_list. Update caller.
+ (__objc_register_selectors_from_list): Lock __objc_runtime_mutex
+ while registering selectors. Use __sel_register_typed_name instead
+ of sel_register_typed_name. Check for NULL method_name:s.
+ (pool_alloc_selector): New function.
+ (__sel_register_typed_name): Use pool_alloc_selector to allocate
+ selector structures.
+ * sendmsg.c (class_add_method_list): Use
+ __objc_register_selectors_from_list.
+ * objc/runtime.h: Add __objc_register_selectors_from_list.
+
+ 2004-01-25 Adam Fedor <fedor@gnu.org>
+ Nicola Pero <n.pero@mi.flashnet.it>
+ Andrew Pinski <pinskia@physics.uc.edu>
+
+ * objc/objc-decls.h: New file.
+ * objc/objc-api.h (_objc_lookup_class): Mark as export.
+ (_objc_load_callback): Likewise.
+ (_objc_object_alloc): Likewise.
+ (_objc_object_copy): Likewise.
+ (_objc_object_dispose): Likewise.
+
+ 2004-01-25 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * archive.c: s/__inline__/inline
+ * sendmsg.c: Likewise.
+
+ * encoding.c: Remove FIXME about the warning
+ about unused variable.
+ * sendmsg.c: Add a FIXME comment saying that
+ this should be using libffi.
+
+ * Makefile.in (LIBTOOL): Use @LIBTOOL@ now as it works.
+
+
+2004-05-13 Andrew Pinski <pinskia@physics.uc.edu>
+
+ * archive.c (objc_read_class): Initialize class_name.
+ (objc_read_selector): Initialize selector_name.
+
+2004-05-09 Richard Sandiford <rsandifo@redhat.com>
+
+ * Makefile.in (toolexecdir): Remove trailing space.
+
+2004-04-15 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ PR libobjc/14948
+ * configure.ac: De-precious CC so multilibs work.
+ * configure: Regenerate.
+
+2004-04-14 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * configure.ac: Restore toolexecdir.
+ * Makefile.in: Restore toolexecdir.
+ * configure: Regenerate.
+
+2004-04-09 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * configure.ac: Remove (unused) glibcpp_prefixdir.
+ * configure: Regenerate.
+
+ * configure.in: Rename to configure.ac.
+ * Makefile.in: Update to match.
+
+ * Makefile.in: Remove toolexecdir, glibcpp_toolexecdir (unused).
+ Replace glibcpp_toolexeclibdir with toolexeclibdir.
+ * configure.in: Remove glibcpp_toolexecdir (unused).
+ Replace glibcpp_toolexeclibdir with toolexeclibdir. Don't generate
+ config.h or stamp-h (unused). Move one comment to the right place.
+ * configure: Regenerate.
+ * config.h.in: Remove (unused).
+
+ * config.h.in: Regenerate with autoheader.
+
+ * Makefile.in: Remove (unused) gcc_version_trigger.
+ * configure.in: Remove (unused) glibcpp_builddir. Don't AC_SUBST
+ gcc_version_trigger.
+ * configure: Regenerate.
+
+ * configure.in: Switch to modern style for AC_INIT, AC_OUTPUT.
+ Sort file into sections. Remove dnl where appropriate. Fix
+ other style issues.
+ * configure: Regenerate.
+
+ * configure.in: Replace old AC_PROG_CC hack with new one.
+ Define toplevel_srcdir in terms of srcdir, not top_srcdir (there
+ are no subdirectory output files, so this is fine). Change prereq
+ to autoconf 2.59.
+ * aclocal.m4: Include ../config/no-executables.m4.
+ * configure: Regenerate with autoconf 2.59.
+
+ * configure.in: Improve comments on gthread_cflags. Improve m4
+ quotation, and replace 'if test' with 'case', for --enable-objc-gc.
+ * configure: Regenerate.
+
+ * configure.in: Move PACKAGE and VERSION settings up top. Remove
+ unused call to AC_PROG_LN_S. Default RANLIB to ':'. Remove
+ redundant checks for values of RANLIB, AR, INSTALL.
+ * configure: Regenerate.
+
+ * configure.in: Clean up handling of
+ --enable-version-specific-runtime-libs and related variables;
+ replace 'if test' with 'case' where reasonable. Fix comments.
+ Remove useless libstdcxx_interface.
+ * configure: Regenerate.
+
+ * configure.in: Use _GCC_TOPLEV_NONCANONICAL_TARGET.
+ Replace uses of target_alias with target_noncanonical.
+ * aclocal.m4: Include ../config/acx.m4.
+ * configure: Regenerate.
+ * Makefile.in: Replace uses of target_alias with target_noncanonical.
+ Fix copyright statement.
+
+ * configure.in: Hand-inline bulky, confusing macros from
+ aclocal.m4. Replace references to "GNU Objective C" with "GCC".
+ Update copyright notice. Remove stuff for automake, which isn't
+ used in this directory. Remove emacs local variables.
+ * aclocal.m4: Remove hand-inlined macros. Update copyright notice.
+ * configure: Regenerate.
+
+2004-03-16 Manfred Hollstein <mh@suse.com>
+
+ * Makefile.in, configure.in, configure: Update copyright years.
+
+2004-03-15 Manfred Hollstein <mh@suse.com>
+
+ * Makefile.in (LIBOBJC_VERSION, LIBOBJC_GC_VERSION): Use
+ definition from configure.in.
+ * configure.in (PACKAGE): Add definition.
+ (VERSION): Add definition; substitute it in output files.
+ * configure: Re-generate.
+
+2004-03-05 Ziemowit Laski <zlaski@apple.com>
+
+ * objc/hash.h (hash_string, compare_strings):
+ Add type-casts to make Objective-C++ happy.
+ * objc/typedstream.h (objc_get_stream_class_version):
+ Rename parameter from 'class' to 'class_name' to make
+ Objective-C++ happy.
+
+2004-03-01 Michael Matz <matz@suse.de>
+
+ * Makefile.in (ALL_CFLAGS): Add -fno-strict-aliasing.
+
+2004-02-06 Ziemowit Laski <zlaski@apple.com>
+
+ * objc/objc-api.h (objc_super): The 'class' field shall
+ be named 'super_class' #ifdef __cplusplus.
+
+2004-01-17 Andrew Pinski <pinskia@physics.uc.edu>
+
+ PR target/10781
+ * encoding.c (rs6000_special_round_type_align): Define.
+
+2004-01-14 Adam Fedor <fedor@gnu.org>
+
+ PR libobjc/12155
+ * selector.c (__objc_register_instance_methods_to_class): Free
+ new_list if not used.
+
+2004-01-09 Andrew Ruder <aeruder@ksu.edu>
+
+ PR libobjc/11904
+ * sarray.c (sarray_free): Free array->is_copy_of latter.
+
+2003-12-01 Zack Weinberg <zack@codesourcery.com>
+
+ PR 11433
+ * Protocol.m (descriptionForInstanceMethod): Don't dereference
+ instance_methods if it's NULL.
+ (descriptionForClassMethod): Likewise for class_methods.
+
+2003-10-24 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * Makefile.in (runtime-info.h): Remove -Wp.
+
+2003-10-21 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * Makefile.in (CC1OBJ): Remove.
+ (runtime-info.h): Invoke $(CC) so all MULTIFLAGS are handled
+ correctly.
+ Use .m extension for temporary file.
+ Remove assembler temp file.
+
+2003-10-20 Joseph S. Myers <jsm@polyomino.org.uk>
+
+ * objc/hash.h (hash_string): Don't use a cast as an lvalue.
+
+2003-10-17 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * Makefile.in (runtime-info.h): Use MULTIFLAGS.
+
+2003-09-09 Alan Modra <amodra@bigpond.net.au>
+
+ * configure: Regenerate.
+
+2003-08-27 Alexander Malmberg <alexander@malmberg.org>
+
+ * Makefile.in, aclocal.m4: Update to $(libdir)/gcc/ instead of
+ (libdir)/gcc-lib/ when installing.
+ * configure: Regenerate.
+
+Thu Jul 10 10:27:43 2003 Nicola Pero <n.pero@mi.flashnet.it>
+
+ libobjc/9969
+ * sendmsg.c (get_imp): Fixed rare threading problem.
+ (__objc_responds_to): Similar fixes.
+ (objc_msg_lookup): Similar fixes.
+ (__objc_init_install_dtable): Lock the runtime before checking if the
+ table is installed.
+
+2003-05-23 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * hash.c, init.c, libobjc.def, libobjc_entry.c, linking.m,
+ makefile.dos, misc.c, nil_method.c, objects.c, sarray.c,
+ selector.c, sendmsg.c, thr-dce.c, thr-decosf1.c, thr-irix.c,
+ thr-mach.c, thr-objc.c, thr-os2.c, thr-posix.c, thr-pthreads.c,
+ thr-rtems.c, thr-single.c, thr-solaris.c, thr-vxworks.c,
+ thr-win32.c, thr.c: Replace "GNU CC" with "GCC".
+ * Makefile.in, NXConstStr.m, Object.m, Protocol.m, archive.c,
+ class.c, encoding.c, gc.c, objc/NXConstStr.h, objc/Object.h,
+ objc/Protocol.h, objc/encoding.h, objc/hash.h, objc/objc-api.h,
+ objc/objc-list.h, objc/objc.h, ocjc/runtime.h, objc/sarray.h,
+ objc/thr.h, objc/typedstream.h: Replace "GNU CC" with "GCC".
+
+Tue May 13 14:56:03 2003 Richard Frith-Macdonald <rfm@gnu.org>
+ Nicola Pero <n.pero@mi.flashnet.it>
+
+ libobjc/10742
+ * init.c (class_superclass_of_class): New function.
+ (create_tree_of_subclasses_inherited_from): Use it.
+ (__objc_tree_insert_class): Likewise.
+ (class_is_subclass_of_class): Likewise.
+
+2003-04-11 David Chad <davidc@freebsd.org>
+ Loren J. Rittle <ljrittle@acm.org>
+
+ libobjc/8562
+ * objc/hash.h (hash_string): Constify correctly.
+ (compare_ptrs): Use direct compare.
+ * objc/objc-list.h (list_nth): Rename index to indx to avoid shadow.
+ * objc/sarray.h: Global rename index to indx to avoid shadow.
+
+2003-03-12 Andreas Schwab <schwab@suse.de>
+
+ * aclocal.m4 (GLIBCPP_EXPORT_INSTALL_INFO): Avoid trailing /. in
+ glibcpp_toolexeclibdir.
+ * configure: Rebuilt.
+
+2003-02-20 Alexandre Oliva <aoliva@redhat.com>
+
+ * configure.in: Propagate ORIGINAL_LD_FOR_MULTILIBS to
+ config.status.
+ * configure: Rebuilt.
+
+2003-01-27 Alexandre Oliva <aoliva@redhat.com>
+
+ * aclocal.m4 (glibcpp_toolexeclibdir): Instead of
+ $(MULTISUBDIR), use `$CC -print-multi-os-directory`, unless
+ version_specific_libs is enabled.
+ * configure: Rebuilt.
+
+2003-01-09 Christian Cornelssen <ccorn@cs.tu-berlin.de>
+
+ * Makefile.in (FLAGS_TO_PASS): Also pass DESTDIR.
+ (install-libs, install-headers): Prepend $(DESTDIR) to
+ destination paths in all (un)installation commands.
+
+2002-12-02 Zack Weinberg <zack@codesourcery.com>
+
+ * thr-objc.c: Include coretypes.h and tm.h.
+
+2002-12-01 Zack Weinberg <zack@codesourcery.com>
+
+ * encoding.c, sendmsg.c: Include coretypes.h and tm.h.
+
+2002-11-26 Nathanael Nerode <neroden@gcc.gnu.org>
+
+ * configure.in: Remove skip-this-dir support.
+ * configure: Regenerate.
+
+2002-09-22 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (all): Fix multilib parallel build.
+
+Thu Sep 12 12:44:37 2002 Nicola Pero <n.pero@mi.flashnet.it>
+
+ * sendmsg.c (nil_method): Declare not to take a variable number of
+ args.
+ (objc_msg_lookup): Cast nil_method to IMP before returning it.
+ (objc_msg_lookup_super): The same.
+
+2002-09-10 Jan Hubicka <jh@suse.cz>
+
+ * nil_method.c (nil_method): No longer defined with variable
+ arguments.
+
+2002-07-02 Rodney Brown <rbrown64@csc.com.au>
+
+ * objc/encoding.h: Fix formatting.
+ * objc/hash.h: Likewise.
+ * objc/objc-api.h: Likewise.
+ * objc/runtime.h: Likewise.
+ * objc/thr.h: Likewise.
+ * archive.c: Likewise.
+ * class.c: Likewise.
+ * encoding.c: Likewise.
+ * gc.c: Likewise.
+ * hash.c: Likewise.
+ * init.c: Likewise.
+ * misc.c: Likewise.
+ * nil_method.c: Likewise.
+ * objects.c: Likewise.
+ * sarray.c: Likewise.
+ * selector.c: Likewise.
+ * sendmsg.c: Likewise.
+ * thr-mach.c: Likewise.
+ * thr.c: Likewise.
+
+2002-06-25 DJ Delorie <dj@redhat.com>
+
+ * aclocal.m4 (GLIBCPP_CONFIGURE): Split out
+ GLIBCPP_TOPREL_CONFIGURE.
+ * configure.in: Call it before AC_CANONICAL_SYSTEM.
+ * configure: Regenerate.
+
+2002-06-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Object.m (forward, read, write): Fix unused parameter warnings.
+ * encoding.c: Include <stdlib.h>.
+ (target_flags): Mark with attribute unused.
+ (atoi): Delete.
+ * runtime.h (__objc_selector_max_index): Change to unsigned int.
+ (__objc_generate_gc_type_description): Prototype.
+ * selector.c (__objc_selector_max_index): Change to unsigned int.
+
+Mon Jun 17 18:37:42 2002 Nicola Pero <n.pero@mi.flashnet.it>
+
+ * sendmsg.c (__objc_get_forward_imp): Fix warning by making sure
+ we always have a return value: if __objc_msg_forward does not
+ supply a forwarding implementation, return the default
+ __builtin_apply based one.
+
+2002-06-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Object.m: Fix signed/unsigned warning.
+ * Protocol.m: Likewise.
+ * archive.c: Always include stdlib.h.
+ (objc_read_short, objc_read_unsigned_short, objc_read_int,
+ objc_read_long, __objc_read_nbyte_uint, __objc_read_nbyte_ulong):
+ Fix signed/unsigned warning.
+ (objc_write_type, objc_read_type, objc_write_types,
+ objc_read_types): Ensure ctype 8-bit safety.
+ (__objc_no_write, __objc_no_read): Mark unused parameters.
+ * class.c (class_table_setup): Specify void arg.
+ * encoding.c (atoi, objc_sizeof_type, objc_alignof_type,
+ objc_skip_typespec, objc_skip_offset,
+ objc_layout_structure_next_member): Ensure ctype 8-bit safety.
+ (objc_layout_structure_next_member): Ensure variables are
+ initialized.
+ * gc.c (__objc_generate_gc_type_description,
+ class_ivar_set_gcinvisible): Mark unused parameters.
+ * init.c (__objc_send_load, __objc_destroy_class_tree_node): Mark
+ unused parameters.
+ (__objc_init_protocols) Fix signed/unsigned warning.
+ * nil_method.c (nil_method): Mark unused parameters.
+ * thr.h (objc_thread_callback): Specify void arg.
+ * sarray.c (sarray_new, sarray_realloc, sarray_free): Fix
+ signed/unsigned warning.
+ (sarray_free): Fix formatting.
+ * selector.c (sel_types_match): Ensure ctype 8-bit safety.
+ * sendmsg.c (__objc_init_install_dtable) Mark unused parameters.
+
+2002-06-09 Andreas Jaeger <aj@suse.de>
+
+ * encoding.c (objc_layout_structure_next_member): Remove unused
+ variable.
+
+2002-05-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (SHELL): Set to @SHELL@.
+ (WARN_CFLAGS): New.
+ (ALL_CFLAGS): Add $(WARN_CFLAGS).
+
+2002-05-16 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * aclocal.m4: Allow for PWDCMD to override hardcoded pwd.
+ * configure: Regenerate.
+
+2002-05-08 Alexandre Oliva <aoliva@redhat.com>
+
+ * configure.in (ORIGINAL_LD_FOR_MULTILIBS): Preserve LD at
+ script entry, and set LD to it when configuring multilibs.
+ * configure: Rebuilt.
+
+2002-04-19 David O'Brien <obrien@FreeBSD.org>
+
+ * encoding.c (MAX, MIN, ROUNDING): #undef before defining.
+
+2002-04-09 Hans-Peter Nilsson <hp@bitrange.com>
+
+ PR objc/6107
+ * objc/objc-api.h (struct objc_protocol_list): Change type of
+ member count from int to size_t.
+
+2002-02-11 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
+
+ PR libobjc/4039
+ * aclocal.m4: Replace with version copied from libstdc++-v3.
+ * configure.in: Update for changes to aclocal and Makefile.
+ * configure: Regenerate.
+ * Makefile.in: Correct install of multilibs and shared libs, use
+ INSTALL_DATA for include files.
+
+Mon Dec 17 17:02:12 2001 Nicola Pero <nicola@brainstorm.co.uk>
+
+ * init.c (__objc_exec_class): Fixed bug in the loop on unclaimed
+ categories - when an unclaimed category was found, the loop was
+ doing two steps forward instead of one, so that in certain cases
+ it was failing to properly load all the categories. (Reported
+ with fix by Alexander Malmberg <alexander@malmberg.org>).
+
+2001-11-14 Aldy Hernandez <aldyh@redhat.com>
+
+ * encoding.c: Add target_flags.
+
+2001-11-07 Aldy Hernandez <aldyh@redhat.com>
+
+ * objc/objc-api.h (_C_VECTOR): New.
+
+ * encoding.c (VECTOR_TYPE): New.
+
+Mon Oct 29 21:29:21 2001 Nicola Pero <n.pero@mi.flashnet.it>
+
+ * class.c: Rewritten the class table to use optimized, lock-free
+ lookup. This more than doubles the speed of class method
+ invocations. (class_table_setup), (class_table_insert),
+ (class_table_replace), (class_table_get_safe),
+ (class_table_next), (class_table_print),
+ (class_table_print_histogram): New functions.
+ (__objc_init_class_tables): Use class_table_setup.
+ (__objc_add_class_to_hash): Use class_table_get_safe and
+ class_table_insert. (objc_lookup_class), (objc_get_class): Do not
+ assert the existence of the table; do not lock the runtime; use
+ class_table_get_safe. (objc_next_class): Use class_table_next.
+ (__objc_resolve_class_links): Use class_table_next.
+ (class_pose_as): Use class_table_replace.
+
+2001-09-10 Ovidiu Predescu <ovidiu@cup.hp.com>
+
+ * gc.c: Removed the DEBUG declaration.
+
+Wed Jul 18 12:48:56 2001 Nicola Pero <n.pero@mi.flashnet.it>
+
+ * thr.c (objc_mutex_lock): Invoke __objc_thread_id directly,
+ rather than through objc_thread_id, to save a function call.
+ (objc_mutex_trylock, objc_mutex_unlock, objc_condition_wait):
+ Ditto.
+
+Mon Jul 16 12:15:00 2001 Nicola Pero <n.pero@mi.flashnet.it>
+
+ * objc/objc-api.h (object_is_class): Fixed - buggy code was trying
+ to cast an id to a Class, which can not be done. Make the check
+ by using CLS_ISMETA on the class pointer instead.
+ (object_is_meta_class): Similar fix.
+
+2001-06-09 Alexandre Oliva <aoliva@redhat.com>, Stephen L Moshier <moshier@mediaone.net>
+
+ * configure.in (AC_EXEEXT): Work around in case it expands to
+ nothing, as in autoconf 2.50.
+ * acinclude.m4: Likewise.
+ * configure: Rebuilt.
+
+2001-06-08 Nicola Pero <n.pero@mi.flashnet.it>
+
+ * THREADS: Explain that when we compile libobjc inside GCC, we
+ always use thr-objc.c as a backend, which uses GCC's thread code.
+
+2001-06-06 Richard Frith-Macdonald <rrfm@gnu.org>
+
+ * init.c (__objc_send_message_in_list): When setting a new entry
+ in __objc_load_methods use the method IMP as key, but check to see
+ if the method is in the hashtable by looking at the IMP also.
+ Also ... call the method after adding it to the hashtable rather
+ than before ... thus preventing an obscure possibility of infinite
+ recursion if a +load method itself loads a subclass.
+
+2001-05-25 Ovidiu Predescu <ovidiu@cup.hp.com>
+
+ * init.c (__objc_send_message_in_list): When setting a new entry
+ in __objc_load_methods use the method name as key, not the method
+ IMP (reported by Richard Frith-Macdonald <richard@brainstorm.co.uk>).
+
+2001-05-09 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * objc-features.texi: Move to ../gcc/objc.texi.
+ * fdl.texi: Remove.
+ * Makefile.in: Don't generate documentation from
+ objc-features.texi.
+
+2001-05-01 Mark Mitchell <mark@codesourcery.com>
+
+ * fdl.texi: New file.
+ * objc-features.texi: Simplify.
+ * Makefile.in: Adjust accordingly.
+
+2001-04-30 Mark Mitchell <mark@codesourcery.com>
+
+ * objc-features.texi: Use the GFDL.
+
+Wed Mar 21 04:44:58 EST 2001 John Wehle (john@feith.com)
+
+ * encoding.c (REAL_TYPE): Define.
+
+2001-03-19 David Edelsohn <edelsohn@gnu.org>
+
+ * encoding.c (TYPE_MODE): Define.
+
+2001-03-14 Nicola Pero <n.pero@mi.flashnet.it>
+
+ * thr.c (objc_thread_add): New function.
+ (objc_thread_remove): Ditto.
+ * objc/thr.h: Declare them.
+ * libobjc.def: Mention them.
+
+2001-02-28 Ovidiu Predescu <ovidiu@cup.hp.com>
+
+ * objc-features.texi: Document the @compatibility_alias compiler
+ directive (description from Nicola Pero <n.pero@mi.flashnet.it>).
+
+Fri Feb 23 18:12:00 2001 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
+
+ * sendmsg.c (__objc_forward): Delete strlen() declaration.
+
+2001-02-08 Geoffrey Keating <geoffk@redhat.com>
+
+ * configure.in: Don't run AC_PROG_CC_WORKS or AC_EXEEXT, because
+ we're not interested in the result and they might fail.
+ * configure: Regenerated.
+
+2001-01-12 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * objc-features.texi: Use @email.
+
+2001-01-12 Joseph S. Myers <jsm28@cam.ac.uk>
+
+ * sendmsg.c (__objc_print_dtable_stats): Don't use #ifdef inside
+ printf.
+
+2000-01-11 Richard Earnshaw <rearnsha@arm.com>
+
+ * encoding.c (STRUCTURE_SIZE_BOUNDARY): Redefine in a way that
+ determines the value dynamically.
+
+Wed Jan 3 00:49:10 2001 Ovidiu Predescu <ovidiu@cup.hp.com>
+
+ * sendmsg.c: Added __objc_msg_forward, a hook that allows external
+ libraries to provide a function that returns the real forwarding
+ function. This can alleviate problems __builtin_apply() and
+ friends have on various platforms. (Solution suggested by Helge
+ Hess.)
+
+ * objc/objc-api.h: Define __objc_msg_forward.
+
+ * sendmsg.c: Define gen_rtx_REG.
+
+2000-12-06 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
+
+ * thr-rtems.c: New file. Stub to compile.
+
+2000-09-06 Alexandre Oliva <aoliva@redhat.com>
+
+ * configure: Rebuilt with new libtool.m4.
+
+Tue Aug 15 00:38:56 2000 Ovidiu Predescu <ovidiu@cup.hp.com>
+
+ * configure.in: Create a config.h file. Check for <sched.h>.
+ * configure: Regenerate.
+
+ * config.h.in: Check for <sched.h>.
+
+2000-08-14 Zack Weinberg <zack@wolery.cumb.org>
+
+ * configure: Regenerate after change to ../libtool.m4.
+
+2000-08-14 Andreas Schwab <schwab@suse.de>
+
+ * objc-features.texi (Top): Move @menu at end of node.
+
+2000-08-11 Manfred Hollstein <manfredh@redhat.com>
+
+ * objc-features.texi: Move @node Top before @menu.
+
+Sun Aug 6 23:27:49 2000 Ovidiu Predescu <ovidiu@cup.hp.com>
+
+ * objc-features.texi: Documented the new -fconstant-string-class
+ option.
+
+Sun Aug 6 22:51:16 2000 Ovidiu Predescu <ovidiu@cup.hp.com>
+
+ * thr-posix.c: Integrated Chris Ball's <cball@fmco.com> changes to
+ improve the Posix thread support for Objective-C.
+
+2000-08-04 Zack Weinberg <zack@wolery.cumb.org>
+
+ * aclocal.m4: Replace copy of ../libtool.m4 with
+ sinclude(../libtool.m4).
+
+Fri Jul 28 08:58:02 2000 Nicola Pero <nicola@brainstorm.co.uk>
+
+ * configure.in: Added libtool support; build shared libraries
+ if --enable-shared was passed on command line.
+ * Makefile.in: Modified most compilation commands to use libtool.
+ * aclocal.m4: New symbolic link to the ../libtool.m4, from the
+ libtool distribution.
+
+Sat Jul 29 00:10:21 2000 Ovidiu Predescu <ovidiu@cup.hp.com>
+
+ * sarray.c, Object.m: Removed the explicit prototypes for strlen
+ and memcpy on 64-bit platforms (Suggested by Rodney Brown
+ <rdb@cup.hp.com>).
+
+2000-05-12 H.J. Lu (hjl@gnu.org)
+
+ * Makefile.in (GTHREAD_FLAGS): New.
+ (ALL_CFLAGS): Add $(GTHREAD_FLAGS).
+ (OBJC_THREAD_FILE): Changed to thr-objc.
+
+ * configure.in (GTHREAD_FLAGS): New, check and replace it for
+ Makefile.
+ (OBJC_THREAD_FILE): Removed.
+
+ * thr-objc.c: New.
+
+2000-07-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * objc/hash.h: Include string.h.
+
+2000-04-15 David Edelsohn <edelsohn@gnu.org>
+
+ * Object.m (strlen): 64-bit PowerPC is a 64bit platform as well.
+
+2000-04-12 Jakub Jelinek <jakub@redhat.com>
+
+ * Object.m (strlen): Provide prototype on all 64bit platforms,
+ not only alpha.
+ * sarray.c (memcpy): Likewise.
+ * encoding.c (objc_layout_finish_structure): Don't use
+ ROUND_TYPE_ALIGN on sparc.
+
+ * encoding.c (objc_layout_structure_next_member): Do the whole
+ procedure even for the first member, so that we get correct
+ alignment.
+
+2000-03-29 Zack Weinberg <zack@wolery.cumb.org>
+
+ * objc/Protocol.h, objc/objc-list.h: Change #endif labels to
+ comments.
+
+2000-02-23 Zack Weinberg <zack@wolery.cumb.org>
+
+ * Makefile.in: Add -DIN_TARGET_LIBS to ALL_CFLAGS.
+
+Thu Sep 23 07:19:12 1999 Chris Ball <cball@fmco.com>
+
+ * thr-posix.c (__objc_mutex_deallocate): made deallocate work.
+
+Tue Sep 21 07:47:10 1999 Jeffrey A Law (law@cygnus.com)
+
+ * Makefile.in (gc.o, gc_gc.o): Do not pass -fgnu-runtime to
+ the compiler when building C code.
+
+Fri Aug 6 23:32:29 1999 Daniel Jacobowitz <drow@drow.them.org>
+
+ * Makefile.in (FLAGS_TO_PASS): Include prefix, exec_prefix,
+ libdir, libsubdir and tooldir.
+
+Mon Jun 21 05:40:15 1999 John David Anglin <dave@hiauly1>
+
+ * init.c (__objc_force_linking): Make global.
+
+Thu May 20 03:20:59 1999 Jeffrey A Law (law@cygnus.com)
+
+ * configure.in (AC_EXEEXT): Remove call.
+ (compiler_name): Explicitly check with no extension and .exe
+ extension.
+ * configure: Regenerate.
+
+Sun Apr 25 01:15:34 1999 Mumit Khan <khan@xraylith.wisc.edu>
+
+ * Makefile.in (CC1OBJ): Define in terms of CC.
+ (runtime-info.h): Use.
+
+Fri April 8 08:21:07 1999 Ovidiu Predescu <ovidiu@cup.hp.com>
+
+ * objc-features.texi: Updated the URL to Boehm's GC page.
+
+Fri Mar 26 23:41:07 1999 Ovidiu Predescu <ovidiu@cup.hp.com>
+
+ * archive.c (__objc_code_char, __objc_write_char): Explicitly specify
+ the char as being signed (patch from Daniel Jacobowitz
+ <drow@false.org>).
+
+Wed Mar 24 22:41:28 1999 Mumit Khan <khan@xraylith.wisc.edu>
+
+ * configure.in (AC_PREREQ): Update to 2.13.
+ (AC_EXEEXT): Call to find possible file extension.
+ (compiler_name): Use.
+ * configure: Regenerate.
+
+Wed Jan 27 02:31:01 1999 Jeffrey A Law (law@cygnus.com)
+
+ * Makefile.in (ALL_CFLAGS): Add -DIN_GCC.
+
+Tue Jan 5 01:38:53 1999 Jeffrey A Law (law@cygnus.com)
+
+ * configure.in (thread_file): Correct and simplify code to find
+ the thread file.
+ * configure: Rebuilt.
+
+1998-11-26 Manfred Hollstein <manfred@s-direktnet.de>
+
+ * configure.in (compiler_name): Add check to detect if this
+ language's compiler has been built.
+ * configure: Regenerate.
+
+Mon Nov 23 16:50:28 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * configure.in: Use AC_PREREQ(2.12.1).
+
+Thu Nov 19 20:33:37 1998 Jeffrey A Law (law@cygnus.com)
+
+ * Makefile.in (runtime-info.h): Avoid GNU make extensions.
+
+Sun Nov 8 17:46:14 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * Makefile.in (INCLUDES): Add -I$(srcdir)/$(MULTISRCTOP)../include.
+
+Thu Oct 22 14:34:06 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
+
+ * configure.in: Use AC_CONFIG_AUX_DIR($topsrcdir).
+
+Sat Oct 17 05:21:31 1998 Ovidiu Predescu <ovidiu@slip.net>
+
+ * objc-features.texi (Top): Changed the email address.
+ * objc-features.texi (Garbage Collection): Use @uref instead of @url.
+
+Mon Oct 11 21:25:27 1998 Ovidiu Predescu <ovidiu@slip.net>
+
+ * encoding.c: Redefine get_inner_array_type to get the first entry
+ in the structure.
+
+Thu Oct 8 12:21:14 1998 Richard Frith-Macdonald <richard@brainstorm.co.uk>
+
+ * encoding.c (objc_skip_type_qualifiers): Handle _C_BYREF.
+ (objc_get_type_qualifiers): Similarly.
+ * objc/encoding.h (_C_BYREF): Define.
+ (_F_BYREF): Define.
+
+1998-10-07 David S. Miller <davem@pierdol.cobaltmicro.com>
+
+ * objc/sarray.h: Make boffset be an unsigned long when sparc so it
+ works out on 64-bit systems.
+
+Tue Oct 6 20:32:06 1998 Alexandre Oliva <oliva@dcc.unicamp.br>
+
+ * Makefile.in (INCLUDES): Make it multilib-friendly.
+
+Fri Oct 2 07:12:14 1998 H.J. Lu (hjl@gnu.org)
+
+ * Makefile.in (INCLUDES): Add -I$(srcdir)/../gcc.
+
+Thu Oct 1 22:33:03 1998 Robert Lipe <robertl@dgii.com>
+ Jeffrey A Law (law@cygnus.com)
+
+ * Makefile.in (INCLUDES): Reference gcc via $MULTIBUILDTOP.
+ (FLAGS_TO_PASS): Added.
+ (runtime-info.h): Reference cc1ibj via $MULTIBUILDTOP.
+
+ * archive.c: Change config.h to tconfig.h.
+
+ * configure.in: Find gcc's object directory even for multilibs.
+
+Wed Sep 30 18:17:17 1998 Robert Lipe <robertl@dgii.com>
+
+ * configure.in: Escape ^ in grep string.
+ * configure: Rebuilt.
+
+Wed Sep 30 09:14:52 1998 Jeffrey A Law (law@cygnus.com)
+
+ * All .h files pushed down into the objc/ subdirectory.
+ * Makefile.in (copy_headers): Corresponding changes.
+ * configure.in (AC_INIT): Corresponding changes.
+ * configure: Rebuilt.
+
+1998-09-30 Ben Elliston <bje@cygnus.com>
+ Jeff Law <law@cygnus.com>
+
+ * Makefile.in: Rewrite.
+
+ * configure.in: Likewise.
+
+ * configure: Regenerate.
+
+ * All .c files. Remove "objc" prefix when including objc header
+ files. Include tconfig.h, not ../tconfig.h.
+
+Mon Sep 21 23:27:10 1998 Ovidiu Predescu <ovidiu@slip.net>
+
+ * encoding.c (TREE_TYPE, ARRAY_TYPE): Define.
+ (get_inner_array_type): Define.
+
+1998-09-21 Ben Elliston <bje@cygnus.com>
+
+ * New directory. Moved files from ../gcc/objc.