aboutsummaryrefslogtreecommitdiff
path: root/libobjc
AgeCommit message (Collapse)AuthorFilesLines
2011-06-08In libobjc/: 2011-06-08 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero2-1/+5
In libobjc/: 2011-06-08 Nicola Pero <nicola.pero@meta-innovation.com> * objc/objc.h (__GNU_LIBOBJC__): Bumped to 20110608. From-SVN: r174799
2011-06-08In libobjc/: 2011-06-08 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero3-2/+7
In libobjc/: 2011-06-08 Nicola Pero <nicola.pero@meta-innovation.com> * configure.ac (VERSION): Bumped to 4:0:0. * configure (VERSION): Likewise. From-SVN: r174798
2011-06-08In libobjc/: 2011-06-08 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero3-15/+8
In libobjc/: 2011-06-08 Nicola Pero <nicola.pero@meta-innovation.com> * objc/README: Updated. * objc-private/selector.h: Updated comments. From-SVN: r174791
2011-06-07In libobjc/: 2011-06-07 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero2-25/+9
In libobjc/: 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. From-SVN: r174775
2011-06-07In libobjc/: 2011-06-07 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero6-131/+18
In libobjc/: 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. From-SVN: r174773
2011-06-07In libobjc/: 2011-06-07 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero2-16/+5
In libobjc/: 2011-06-07 Nicola Pero <nicola.pero@meta-innovation.com> * encoding.c (method_get_number_of_arguments): Removed. (method_get_sizeof_arguments): Removed. From-SVN: r174768
2011-06-07In libobjc/: 2011-06-07 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero2-151/+9
In libobjc/: 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. From-SVN: r174767
2011-06-07In libobjc/: 2011-06-07 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero39-1368/+134
In libobjc/: 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. From-SVN: r174765
2011-06-03In libobjc/: 2011-06-03 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero5-21/+9
In libobjc/: 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. From-SVN: r174618
2011-06-03In libobjc/: 2011-06-03 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero6-19/+10
In libobjc/: 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. From-SVN: r174617
2011-06-03In libobjc/: 2011-06-03 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero4-5/+6
In libobjc/: 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. From-SVN: r174616
2011-06-03In libobjc/: 2011-06-03 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero9-90/+21
In libobjc/: 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. From-SVN: r174615
2011-06-03In libobjc/: 2011-06-03 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero4-5/+6
In libobjc/: 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. From-SVN: r174614
2011-06-03In libobjc/: 2011-06-03 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero11-492/+22
In libobjc/: 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. In gcc/testsuite/: 2011-06-03 Nicola Pero <nicola.pero@meta-innovation.com> * objc.dg/headers.m: Do not include sarray.h and hash.h. From-SVN: r174610
2011-06-03In libobjc/: 2011-06-03 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero4-10/+12
In libobjc/: 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. From-SVN: r174607
2011-06-03In libobjc/: 2011-06-03 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero4-159/+7
In libobjc/: 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. In gcc/testsuite/: 2011-06-03 Nicola Pero <nicola.pero@meta-innovation.com> * objc.dg/headers.m: Do not include objc-list.h. From-SVN: r174594
2011-06-03In libobjc/: 2011-06-03 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero9-1910/+36
In libobjc/: 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. In gcc/testsuite/: 2011-06-03 Nicola Pero <nicola.pero@meta-innovation.com> * objc.dg/type-stream-1.m: Test removed. * objc.dg/headers.m: Do not include typedstream.h. From-SVN: r174593
2011-06-02In libobjc/: 2011-06-02 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero9-198/+18
In libobjc/: 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. In gcc/testsuite/: 2011-06-02 Nicola Pero <nicola.pero@meta-innovation.com> * objc.dg/torture/forward-1.m (main): Updated testcase. From-SVN: r174587
2011-05-26Fixed one of my last ChangeLog entriesNicola Pero1-1/+1
From-SVN: r174276
2011-05-26In libobjc/: 2011-05-26 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero2-132/+116
In libobjc/: 2011-05-26 Nicola Pero <nicola.pero@meta-innovation.com> * sendmsg.c: Reindented part of the file. No non-trivial changes in code. From-SVN: r174269
2011-05-26In libobjc/: 2011-05-26 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero2-1/+6
In libobjc/: 2011-05-26 Nicola Pero <nicola.pero@meta-innovation.com> * sendmsg.c (__objc_install_dtable_for_class): Use objc_getClass, not objc_lookupClass. From-SVN: r174268
2011-05-25Fixed typo in last ChangeLog entryNicola Pero1-1/+1
From-SVN: r174238
2011-05-25In libobjc/: 2011-05-25 Richard Frith-Macdonald <rfm@gnu.org> David Ayers ↵Richard Frith-Macdonald2-205/+412
<ayers@fsfe.org> In libobjc/: 2011-05-25 Richard Frith-Macdonald <rfm@gnu.org> David Ayers <ayers@fsfe.org> PR libobjc/38037 * 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. Co-Authored-By: David Ayers <ayers@fsfe.org> From-SVN: r174221
2011-05-24In libobjc/: 2011-05-24 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero2-1/+8
In libobjc/: 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>). In gcc/testsuite/: 2011-05-24 Nicola Pero <nicola.pero@meta-innovation.com> PR libobjc/48177 * objc.dg/pr48177.m: New testcase. From-SVN: r174143
2011-04-15re PR libobjc/32037 (--enable-objc-gc on OS X won't build)Rainer Orth4-9/+38
PR libobjc/32037 * Makefile.in (OBJC_GCFLAGS): Move ... * configure.ac (enable_objc_gc): ... here. Add $(libsuffix) to OBJC_BOEHM_GC. * configure: Regenerate. From-SVN: r172477
2011-02-28In libobjc/: 2011-02-28 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero3-6/+45
In libobjc/: 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. In gcc/testsuite/: 2011-02-28 Nicola Pero <nicola.pero@meta-innovation.com> * objc.dg/gnu-api-2-sel.m: Test that sel_getTypedSelector return NULL in case of a selector with conflicting types. * obj-c++.dg/gnu-api-2-sel.mm: Same change. From-SVN: r170563
2011-02-28Fixed critical typo in Objective-C runtime garbage collection codeRichard Frith-Macdonald2-3/+13
From-SVN: r170561
2011-02-13Remove freebsd1 from libtool.m4 macros and config.rpath.Ralf Wildenhues2-11/+7
/: Import from Libtool and gnulib: 2011-01-27 Gerald Pfeifer <gerald@pfeifer.com> Prepare for supporting FreeBSD 10. * config.rpath: Remove handling of freebsd1* which soon would match FreeBSD 10.0. 2011-01-20 Gerald Pfeifer <gerald@pfeifer.com> (tiny change) Remove support for FreeBSD 1.x. * libtool.m4 (_LT_LINKER_SHLIBS) (_LT_SYS_DYNAMIC_LINKER): Remove handling of freebsd1* which soon would incorrectly match FreeBSD 10.0. boehm-gc/: * configure: Regenerate. gcc/: * configure: Regenerate. libffi/: * configure: Regenerate. libgfortran/: * Makefile.in: Regenerate. * aclocal.m4: Likewise. * configure: Likewise. libgo/: * config/libtool.m4: (_LT_LINKER_SHLIBS) (_LT_SYS_DYNAMIC_LINKER): Remove handling of freebsd1* which soon would incorrectly match FreeBSD 10.0. * configure: Regenerate. libgomp/: * configure: Regenerate. libjava/: * configure: Regenerate. * shlibpath.m4 (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Remove handling of freebsd1* which soon would incorrectly match FreeBSD 10.0. libjava/classpath/: * config.rpath, ltcf-c.sh, ltcf-gcj.sh, ltconfig: Remove handling of freebsd1* which soon would match FreeBSD 10.0. * configure: Regenerate. libjava/libltdl/: * acinclude.m4 (AC_LIBTOOL_PROG_LD_SHLIBS) (AC_LIBTOOL_SYS_DYNAMIC_LINKER): Remove handling of freebsd1* which soon would incorrectly match FreeBSD 10.0. * configure: Regenerate. libmudflap/: * configure: Regenerate. libobjc/: * configure: Regenerate. libquadmath/: * Makefile.in: Regenerate. * aclocal.m4: Likewise. * configure: Likewise. libssp/: * Makefile.in: Regenerate. * aclocal.m4: Likewise. * configure: Likewise. libstdc++-v3/: * configure: Regenerate. lto-plugin/: * Makefile.in: Regenerate. * aclocal.m4: Regenerate. * configure: Regenerate. zlib/: * configure: Regenerate. From-SVN: r170106
2011-01-03Update Copyright years for files modified in 2010.Jakub Jelinek17-17/+27
From-SVN: r168438
2010-12-26In libobjc/: 2010-12-26 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero2-33/+50
In libobjc/: 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 code. (__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. In gcc/testsuite/: 2010-12-26 Nicola Pero <nicola.pero@meta-innovation.com> * objc.dg/special/special.exp: Added load-category-2 and load-category-3 tests. * objc.dg/special/load-category-2.h: New. * objc.dg/special/load-category-2.m: New. * objc.dg/special/load-category-2a.m: New. * objc.dg/special/load-category-3.h: New. * objc.dg/special/load-category-3.m: New. * objc.dg/special/load-category-3a.m: New. From-SVN: r168251
2010-12-24In libobjc/: 2010-12-24 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero3-4/+22
In libobjc/: 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. In gcc/testsuite/: 2010-12-24 Nicola Pero <nicola.pero@meta-innovation.com> * objc.dg/gnu-api-2-sel.m: Test calling sel_getUid, sel_registerName and sel_registerTypedName with NULL arguments. Updated the test to work with the Apple runtime as well. * obj-c++.dg/gnu-api-2-sel.mm: Same change. From-SVN: r168231
2010-12-24In libobjc/: 2010-12-24 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero3-10/+20
In libobjc/: 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. In gcc/testsuite/: 2010-12-24 Nicola Pero <nicola.pero@meta-innovation.com> * objc.dg/gnu-api-2-class.m: Updated test to pass log_2 of the alignment to class_addIvar, instead of the alignment itself. * obj-c++.dg/gnu-api-2-class.mm: Same change. From-SVN: r168230
2010-12-24In libobjc/: 2010-12-24 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero3-8/+146
In libobjc/: 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. In gcc/testsuite/: 2010-12-24 Nicola Pero <nicola.pero@meta-innovation.com> * objc.dg/gnu-api-2-sel.m: Updated for renaming of sel_getType to sel_getTypeEncoding. Test that sel_getTypeEncoding returns NULL when called with a NULL argument. Added test for sel_copyTypedSelectorList and sel_getTypedSelector. * obj-c++.dg/gnu-api-2-sel.mm: Same changes. From-SVN: r168229
2010-12-24In libobjc/: 2010-12-24 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero2-2/+13
In libobjc/: 2010-12-24 Nicola Pero <nicola.pero@meta-innovation.com> * objc/runtime.h (class_conformsToProtocol, class_copyProtocolList): Updated documentation. In gcc/testsuite/: 2010-12-24 Nicola Pero <nicola.pero@meta-innovation.com> * obj-c.dg/gnu-api-2-class.m: Test that class_conformsToProtocol() does not check the superclasses. * obj-c++.dg/gnu-api-2-class.mm: Same change. From-SVN: r168226
2010-12-23In libobjc/: 2010-12-23 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero3-21/+66
In libobjc/: 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. From-SVN: r168215
2010-12-23Makefile.in (libobjc$(libsuffix).la): Link with -Wc,-shared-libgcc.Rainer Orth2-3/+8
* Makefile.in (libobjc$(libsuffix).la): Link with -Wc,-shared-libgcc. (libobjc_gc$(libsuffix).la): Likewise. From-SVN: r168203
2010-12-23In gcc/testsuite/: 2010-12-23 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero2-0/+44
In gcc/testsuite/: 2010-12-23 Nicola Pero <nicola.pero@meta-innovation.com> * obj-c.dg/gnu-api-2-class.m: Test that class_addMethod() returns NO if the method is already implemented in the class. * obj-c++.dg/gnu-api-2-class.mm: Same change. In libobjc/: 2010-12-23 Nicola Pero <nicola.pero@meta-innovation.com> * sendmsg.c (class_addMethod): Return NO if the method already exists in the class. From-SVN: r168199
2010-12-22In libobjc/: 2010-12-22 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero3-20/+60
In libobjc/: 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. From-SVN: r168183
2010-12-22In libobjc/: 2010-12-22 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero3-92/+112
In libobjc/: 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. From-SVN: r168150
2010-12-22In libobjc/: 2010-12-22 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero9-68/+14
In libobjc/: 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. From-SVN: r168149
2010-12-21Fixed changelog entry for one of my libobjc patches of a few days agoNicola Pero1-1/+1
From-SVN: r168147
2010-12-21In libobjc/: 2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero4-34/+56
In libobjc/: 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. From-SVN: r168139
2010-12-21In libobjc/: 2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero2-31/+47
In libobjc/: 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. From-SVN: r168133
2010-12-21In libobjc/: 2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero2-23/+66
In libobjc/: 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. In gcc/testsuite/: 2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com> PR libobjc/16110 * objc.dg/special/special.exp: Added new test. * objc.dg/special/load-category-1.m: New. * objc.dg/special/load-category-1a.m: New. * objc.dg/special/load-category-1.h: New. From-SVN: r168122
2010-12-21In libobjc/: 2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero3-1/+15
In libobjc/: 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. From-SVN: r168119
2010-12-21In libobjc/: 2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero2-40/+64
In libobjc/: 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. In gcc/testsuite/: 2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com> PR libobjc/45953 * objc.dg/libobjc-selector-1.m: New test. From-SVN: r168115
2010-12-21In libobjc/: 2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero5-25/+61
In libobjc/: 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. From-SVN: r168113
2010-12-21In libobjc/: 2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero2-1/+4
In libobjc/: 2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com> * linking.m: Do not include objc/NXConstStr.h. From-SVN: r168112
2010-12-21In libobjc/: 2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero4-12/+14
In libobjc/: 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. From-SVN: r168111
2010-12-21In libobjc/: 2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>Nicola Pero2-137/+154
In libobjc/: 2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com> * hash.c: Tidied up comments and indentation. No code changes. From-SVN: r168110