summaryrefslogtreecommitdiff
path: root/libobjc
Commit message (Collapse)AuthorAgeFilesLines
* In libobjc/:nicola2011-08-062-21/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. In gcc/testsuite/: 2011-08-06 Nicola Pero <nicola.pero@meta-innovation.com> PR libobjc/50002 * objc.dg/gnu-api-2-class.m: Updated comments. * obj-c++.dg/gnu-api-2-class.mm: Likewise. * objc.dg/gnu-api-2-class-meta.m: New test. * obj-c++.dg/gnu-api-2-class-meta.mm: Likewise. 2011-08-06 Nicola Pero <nicola.pero@meta-innovation.com> PR libobjc/49882 * obj-c++.dg/gnu-api-2-class.mm (main): Test class_getSuperclass() with classes that are in construction. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177510 138bc75d-0d04-0410-961f-82ee72b054a4
* In libobjc/:nicola2011-08-062-1/+5
| | | | | | | | | 2011-08-06 Nicola Pero <nicola.pero@meta-innovation.com> * class.c (class_getSuperclass): Fixed typo in comment. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177506 138bc75d-0d04-0410-961f-82ee72b054a4
* In libobjc/:nicola2011-08-063-7/+17
| | | | | | | | | | | | | | | | | | | 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. In gcc/testsuite/: 2011-08-06 Nicola Pero <nicola.pero@meta-innovation.com> PR libobjc/49882 * objc.dg/gnu-api-2-class.m (main): Test class_getSuperclass() with classes that are in construction. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177505 138bc75d-0d04-0410-961f-82ee72b054a4
* gcc:ro2011-08-052-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Makefile.in (UNWIND_H): Remove. (LIB2ADDEH, LIB2ADDEHSTATIC, LIB2ADDEHSHARED): Move to ../libgcc/Makefile.in. (LIBUNWIND, SHLIBUNWIND_LINK, SHLIBUNWIND_INSTALL): Likewise. (LIBUNWINDDEP): Remove. (libgcc-support): Remove LIB2ADDEH, $(srcdir)/emutls.c dependencies. (libgcc.mvars): Remove LIB2ADDEH, LIB2ADDEHSTATIC, LIB2ADDEHSHARED, LIBUNWIND, SHLIBUNWIND_LINK, SHLIBUNWIND_INSTALL. (stmp-int-hdrs): Remove $(UNWIND_H) dependency. Don't copy $(UNWIND_H). * config.gcc (ia64*-*-linux*): Remove with_system_libunwind handling. * configure.ac (GCC_CHECK_UNWIND_GETIPINFO): Remove. * aclocal.m4: Regenerate. * configure: Regenerate. * emutls.c, unwind-c.c, unwind-compat.c, unwind-compat.h, unwind-dw2-fde-compat.c, unwind-dw2-fde-glibc.c, unwind-dw2-fde.c, unwind-dw2-fde.h, unwind-dw2.c, unwind-dw2.h, unwind-generic.h, unwind-pe.h, unwind-sjlj.c, unwind.inc: Move to ../libgcc. * unwind-dw2-fde-darwin.c: Move to ../libgcc/config. * config/arm/libunwind.S, config/arm/pr-support.c, config/arm/unwind-arm.c, config/arm/unwind-arm.h: Move to ../libgcc/config/arm. * config/arm/t-bpabi (UNWIND_H, LIB2ADDEH): Remove. * config/arm/t-symbian (UNWIND_H, LIB2ADDEH): Remove. * config/frv/t-frv ($(T)frvbegin$(objext)): Use $(srcdir)/../libgcc to refer to unwind-dw2-fde.h. ($(T)frvend$(objext)): Likewise. * config/ia64/t-glibc (LIB2ADDEH): Remove. * config/ia64/t-glibc-libunwind: Move to ../libgcc/config/ia64. * config/ia64/fde-glibc.c, config/ia64/fde-vms.c, config/ia64/unwind-ia64.c, config/ia64/unwind-ia64.h: Move to ../libgcc/config/ia64. * config/ia64/t-hpux (LIB2ADDEH): Remove. * config/ia64/t-ia64 (LIB2ADDEH): Remove. * config/ia64/t-vms (LIB2ADDEH): Remove. * config/ia64/vms.h (UNW_IVMS_MODE, MD_UNW_COMPATIBLE_PERSONALITY_P): Remove. * config/picochip/t-picochip (LIB2ADDEH): Remove. * config/rs6000/aix.h (R_LR, MD_FROB_UPDATE_CONTEXT): Remove. * config/rs6000/t-darwin (LIB2ADDEH): Remove. * config/rs6000/darwin-fallback.c: Move to ../libgcc/config/rs6000. * config/sh/t-sh ($(T)unwind-dw2-Os-4-200.o): Use $(srcdir)/../libgcc to refer to unwinder sources. * config/spu/t-spu-elf (LIB2ADDEH): Remove. * config/t-darwin (LIB2ADDEH): Remove. * config/t-freebsd (LIB2ADDEH): Remove. * config/t-libunwind (LIB2ADDEH, LIB2ADDEHSTATIC): Remove. * config/t-libunwind-elf: Move to ../libgcc/config. * config/t-linux (LIB2ADDEH): Remove. * config/t-sol2 (LIB2ADDEH): Remove. * config/xtensa/t-xtensa (LIB2ADDEH): Remove. * system.h (MD_FROB_UPDATE_CONTEXT): Poison. gcc/po: * EXCLUDES (unwind-c.c, unwind-dw2-fde-darwin.c) (unwind-dw2-fde-glibc.c, unwind-dw2-fde.c, unwind-dw2-fde.h) (unwind-dw2.c, unwind-pe.h, unwind-sjlj.c, unwind.h): Remove. libgcc: * Makefile.in (LIB2ADDEH, LIB2ADDEHSTATIC, LIB2ADDEHSHARED): New variables. (LIBUNWIND, SHLIBUNWIND_LINK, SHLIBUNWIND_INSTALL): New variables. (LIB2ADDEH, LIB2ADDEHSTATIC, LIB2ADDEHSHARED): Add $(srcdir)/emutls.c. (install-unwind_h): New target. (all): Depend on it. * config.host (unwind_header): New variable. (*-*-freebsd*): Set tmake_file to t-eh-dw2-dip. (*-*-linux*, frv-*-*linux*, *-*-kfreebsd*-gnu, *-*-knetbsd*-gnu, *-*-gnu*): Likewise, also for *-*-kopensolaris*-gnu. (*-*-solaris2*): Add t-eh-dw2-dip to tmake_file. (arm*-*-linux*): Add arm/t-bpabi for arm*-*-linux-*eabi. Set unwind_header. (arm*-*-uclinux*): Add arm/t-bpabi for arm*-*-uclinux*eabi. Set unwind_header. (arm*-*-eabi*, arm*-*-symbianelf*): Add arm/t-bpabi for arm*-*-eabi*. Add arm/t-symbian to tmake_file for arm*-*-symbianelf*. Set unwind_header. (ia64*-*-elf*): Add ia64/t-eh-ia64 to tmake_file. (ia64*-*-freebsd*): Likewise. (ia64*-*-linux*): Add ia64/t-glibc, ia64/t-eh-ia64, t-libunwind to tmake_file. Add t-libunwind-elf, ia64/t-glibc-libunwind unless $with_system_libunwind. (ia64*-*-hpux*): Set tmake_file. (ia64-hp-*vms*): Add ia64/t-eh-ia64 to tmake_file. (picochip-*-*): Set tmake_file. (rs6000-ibm-aix4.[3456789]*, powerpc-ibm-aix4.[3456789]*): Set md_unwind_header. (rs6000-ibm-aix5.1.*, powerpc-ibm-aix5.1.*): Likewise. (rs6000-ibm-aix[56789].*, powerpc-ibm-aix[56789].*): Likewise. (s390x-ibm-tpf*): Add t-eh-dw2-dip to tmake_file. (xtensa*-*-elf*): Set tmake_file. (xtensa*-*-linux*): Likewise. * configure.ac: Include ../config/unwind_ipinfo.m4. Call GCC_CHECK_UNWIND_GETIPINFO. Link unwind.h to $unwind_header. * configure: Regenerate. * emutls.c, unwind-c.c, unwind-compat.c, unwind-compat.h, unwind-dw2-fde-compat.c, unwind-dw2-fde-dip.c, unwind-dw2-fde.c, unwind-dw2-fde.h, unwind-dw2.c, unwind-dw2.h, unwind-generic.h, unwind-pe.h, unwind-sjlj.c, unwind.inc: New files. * config/unwind-dw2-fde-darwin.c: New file. * config/arm/libunwind.S, config/arm/pr-support.c, config/arm/t-bpabi, config/arm/t-symbian, config/arm/unwind-arm.c, config/arm/unwind-arm.h,: New files. * config/ia64/fde-glibc.c, config/ia64/fde-vms.c, config/ia64/t-eh-ia64, config/ia64/t-glibc, config/ia64/t-glibc-libunwind, config/ia64/t-hpux, config/ia64/t-vms, config/ia64/unwind-ia64.c, config/ia64/unwind-ia64.h: New files. * config/picochip/t-picochip: New file. * config/rs6000/aix-unwind.h, config/rs6000/darwin-fallback.c: New files. * config/rs6000/t-darwin (LIB2ADDEH): Set. * config/s390/t-tpf (LIB2ADDEH): Remove. * config/t-darwin (LIB2ADDEH): Set. * config/t-eh-dw2-dip: New file. * config/t-libunwind, config/t-libunwind-elf: New files. * config/t-sol2 (LIB2ADDEH): Remove. * config/xtensa/t-xtensa: New file. gcc/ada: * gcc-interface/Makefile.in (raise-gcc.o): Search $(srcdir)/../libgcc. libgo: * Makefile.am (AM_CFLAGS): Search $(srcdir)/../libgcc. * Makefile.in: Regenerate. libjava: * configure.ac (GCC_UNWIND_INCLUDE): Rename to LIBGCC_UNWIND_INCLUDE. Point to $(multi_basedir)/./libjava/../libgcc. * configure: Regenerate. * Makefile.am (GCC_UNWIND_INCLUDE): Reflect this. * Makefile.in: Regenerate. libobjc: * Makefile.in (INCLUDES): Search $(srcdir)/$(MULTISRCTOP)../libgcc. libstdc++-v3: * acinclude.m4 (GLIBCXX_EXPORT_INCLUDES): Point TOPLEVEL_INCLUDES to $(toplevel_srcdir)/libgcc. * configure: Regenerate. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177447 138bc75d-0d04-0410-961f-82ee72b054a4
* In libobjc/:nicola2011-06-082-1/+5
| | | | | | | | | 2011-06-08 Nicola Pero <nicola.pero@meta-innovation.com> * objc/objc.h (__GNU_LIBOBJC__): Bumped to 20110608. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174799 138bc75d-0d04-0410-961f-82ee72b054a4
* In libobjc/:nicola2011-06-083-2/+7
| | | | | | | | | | 2011-06-08 Nicola Pero <nicola.pero@meta-innovation.com> * configure.ac (VERSION): Bumped to 4:0:0. * configure (VERSION): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174798 138bc75d-0d04-0410-961f-82ee72b054a4
* In libobjc/:nicola2011-06-083-15/+8
| | | | | | | | | | 2011-06-08 Nicola Pero <nicola.pero@meta-innovation.com> * objc/README: Updated. * objc-private/selector.h: Updated comments. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174791 138bc75d-0d04-0410-961f-82ee72b054a4
* In libobjc/:nicola2011-06-072-25/+9
| | | | | | | | | | | 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174775 138bc75d-0d04-0410-961f-82ee72b054a4
* In libobjc/:nicola2011-06-076-131/+18
| | | | | | | | | | | | | | | | | | | | | 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174773 138bc75d-0d04-0410-961f-82ee72b054a4
* In libobjc/:nicola2011-06-072-16/+5
| | | | | | | | | | 2011-06-07 Nicola Pero <nicola.pero@meta-innovation.com> * encoding.c (method_get_number_of_arguments): Removed. (method_get_sizeof_arguments): Removed. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174768 138bc75d-0d04-0410-961f-82ee72b054a4
* In libobjc/:nicola2011-06-072-151/+9
| | | | | | | | | | | | | 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174767 138bc75d-0d04-0410-961f-82ee72b054a4
* In libobjc/:nicola2011-06-0739-1368/+134
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174765 138bc75d-0d04-0410-961f-82ee72b054a4
* In libobjc/:nicola2011-06-035-21/+9
| | | | | | | | | | | | | | 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174618 138bc75d-0d04-0410-961f-82ee72b054a4
* In libobjc/:nicola2011-06-036-19/+10
| | | | | | | | | | | | | | | 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174617 138bc75d-0d04-0410-961f-82ee72b054a4
* In libobjc/:nicola2011-06-034-5/+6
| | | | | | | | | | | 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174616 138bc75d-0d04-0410-961f-82ee72b054a4
* In libobjc/:nicola2011-06-039-90/+21
| | | | | | | | | | | | | | | | | | | | | | | | 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174615 138bc75d-0d04-0410-961f-82ee72b054a4
* In libobjc/:nicola2011-06-034-5/+6
| | | | | | | | | | | 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174614 138bc75d-0d04-0410-961f-82ee72b054a4
* In libobjc/:nicola2011-06-0311-492/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174610 138bc75d-0d04-0410-961f-82ee72b054a4
* In libobjc/:nicola2011-06-034-10/+12
| | | | | | | | | | | 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174607 138bc75d-0d04-0410-961f-82ee72b054a4
* In libobjc/:nicola2011-06-034-159/+7
| | | | | | | | | | | | | | | | | 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174594 138bc75d-0d04-0410-961f-82ee72b054a4
* In libobjc/:nicola2011-06-039-1910/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174593 138bc75d-0d04-0410-961f-82ee72b054a4
* In libobjc/:nicola2011-06-029-198/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174587 138bc75d-0d04-0410-961f-82ee72b054a4
* Fixed one of my last ChangeLog entriesnicola2011-05-261-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174276 138bc75d-0d04-0410-961f-82ee72b054a4
* In libobjc/:nicola2011-05-262-132/+116
| | | | | | | | | | 2011-05-26 Nicola Pero <nicola.pero@meta-innovation.com> * sendmsg.c: Reindented part of the file. No non-trivial changes in code. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174269 138bc75d-0d04-0410-961f-82ee72b054a4
* In libobjc/:nicola2011-05-262-1/+6
| | | | | | | | | | 2011-05-26 Nicola Pero <nicola.pero@meta-innovation.com> * sendmsg.c (__objc_install_dtable_for_class): Use objc_getClass, not objc_lookupClass. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174268 138bc75d-0d04-0410-961f-82ee72b054a4
* Fixed typo in last ChangeLog entrynicola2011-05-251-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174238 138bc75d-0d04-0410-961f-82ee72b054a4
* In libobjc/:nicola2011-05-252-205/+412
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174221 138bc75d-0d04-0410-961f-82ee72b054a4
* In libobjc/:nicola2011-05-242-1/+8
| | | | | | | | | | | | | | | | | | 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@174143 138bc75d-0d04-0410-961f-82ee72b054a4
* PR libobjc/32037ro2011-04-154-9/+38
| | | | | | | | | | * Makefile.in (OBJC_GCFLAGS): Move ... * configure.ac (enable_objc_gc): ... here. Add $(libsuffix) to OBJC_BOEHM_GC. * configure: Regenerate. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172477 138bc75d-0d04-0410-961f-82ee72b054a4
* In libobjc/:nicola2011-02-283-6/+45
| | | | | | | | | | | | | | | | | | | | 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@170563 138bc75d-0d04-0410-961f-82ee72b054a4
* Fixed critical typo in Objective-C runtime garbage collection codenicola2011-02-282-3/+13
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@170561 138bc75d-0d04-0410-961f-82ee72b054a4
* Remove freebsd1 from libtool.m4 macros and config.rpath.rwild2011-02-132-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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@170106 138bc75d-0d04-0410-961f-82ee72b054a4
* Update Copyright years for files modified in 2010.jakub2011-01-0317-17/+27
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@168438 138bc75d-0d04-0410-961f-82ee72b054a4
* In libobjc/:nicola2010-12-262-33/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@168251 138bc75d-0d04-0410-961f-82ee72b054a4
* In libobjc/:nicola2010-12-243-4/+22
| | | | | | | | | | | | | | | | | | | | | 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@168231 138bc75d-0d04-0410-961f-82ee72b054a4
* In libobjc/:nicola2010-12-243-10/+20
| | | | | | | | | | | | | | | | | | | 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@168230 138bc75d-0d04-0410-961f-82ee72b054a4
* In libobjc/:nicola2010-12-243-8/+146
| | | | | | | | | | | | | | | | | | | | | | | | 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@168229 138bc75d-0d04-0410-961f-82ee72b054a4
* In libobjc/:nicola2010-12-242-2/+13
| | | | | | | | | | | | | | | | | 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@168226 138bc75d-0d04-0410-961f-82ee72b054a4
* In libobjc/:nicola2010-12-233-21/+66
| | | | | | | | | | | | | | | | | | | | 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@168215 138bc75d-0d04-0410-961f-82ee72b054a4
* * Makefile.in (libobjc$(libsuffix).la): Link with -Wc,-shared-libgcc.ro2010-12-232-3/+8
| | | | | | | (libobjc_gc$(libsuffix).la): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@168203 138bc75d-0d04-0410-961f-82ee72b054a4
* In gcc/testsuite/:nicola2010-12-232-0/+44
| | | | | | | | | | | | | | | | | 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@168199 138bc75d-0d04-0410-961f-82ee72b054a4
* In libobjc/:nicola2010-12-223-20/+60
| | | | | | | | | | | | | | | | | 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@168183 138bc75d-0d04-0410-961f-82ee72b054a4
* In libobjc/:nicola2010-12-223-92/+112
| | | | | | | | | | 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@168150 138bc75d-0d04-0410-961f-82ee72b054a4
* In libobjc/:nicola2010-12-229-68/+14
| | | | | | | | | | | | | | | | | 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@168149 138bc75d-0d04-0410-961f-82ee72b054a4
* Fixed changelog entry for one of my libobjc patches of a few days agonicola2010-12-211-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@168147 138bc75d-0d04-0410-961f-82ee72b054a4
* In libobjc/:nicola2010-12-214-34/+56
| | | | | | | | | | | | | | | 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@168139 138bc75d-0d04-0410-961f-82ee72b054a4
* In libobjc/:nicola2010-12-212-31/+47
| | | | | | | | | | | | | 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@168133 138bc75d-0d04-0410-961f-82ee72b054a4
* In libobjc/:nicola2010-12-212-23/+66
| | | | | | | | | | | | | | | | | | | | | | | | | | | 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@168122 138bc75d-0d04-0410-961f-82ee72b054a4
* In libobjc/:nicola2010-12-213-1/+15
| | | | | | | | | | | | 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@168119 138bc75d-0d04-0410-961f-82ee72b054a4
* In libobjc/:nicola2010-12-212-40/+64
| | | | | | | | | | | | | | | | | | | | 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@168115 138bc75d-0d04-0410-961f-82ee72b054a4