1 2010-09-17 Nicola Pero <nicola.pero@meta-innovation.com>
3 * objc/hash.h: Moved into objc/deprecated/hash.h; objc/hash.h
4 replaced with a placeholder including the file from the
6 * objc/objc-api.h: Updated includes.
7 * objc/typedstream.h: Updated includes.
8 * objc-private/hash.h: New file (private copy of hash.h).
9 * objc/objc-list.h: Moved into objc/deprecated/objc-list.h;
10 objc/objc-list.h replaced with a placeholder including the file
11 from the deprecated/ directory.
12 * objc-private/objc-list.h: New file (private copy of objc-list.h).
13 * init.c: Include objc-private/hash.h and objc-private/objc-list.h
14 instead of objc/hash.h and objc/objc-list.h.
15 * selector.c: Same change.
16 * class.c: Added include <string.h>, which used to be implicitly included
17 when hash.h was included.
18 * exception.c: Same change.
19 * objects.c: Same change.
20 * sarray.c: Same change.
21 * sendmsg.c: Same change.
22 * Makefile.in (OBJC_DEPRECATED_H): Added hash.h and objc-list.h.
23 (OBJC_H): Removed hash.h and objc-list.h
25 2010-09-14 Nicola Pero <nicola.pero@meta-innovation.com>
27 Implemented objc_sync_enter() and objc_sync_exit(), which are
28 required by @synchronized() to work.
29 * objc-sync.c: New file.
30 * objc/objc-sync.h: New file.
31 * objc-private/objc-sync.h: New file.
32 * init.c (__objc_exec_class): Call __objc_sync_init() during the
33 Objective-C runtime startup.
34 * Makefile.in: Added objc-sync.c and objc-sync.h.
35 * configure.ac: Added GCC_CHECK_TLS.
36 * acinclude.m4: Include ../config/enable.m4 and ../config/tls.m4.
37 * configure: Regenerated.
38 * config.h.in: Regenerated.
40 2010-09-12 Nicola Pero <nicola.pero@meta-innovation.com>
42 * Makefile.in (%_gc.lo): New pattern rules to build the
43 garbage-collected version of the library. Removed rules for
44 specific files that are no longer needed. Standardized all rules.
45 (C_SOURCE_FILES, OBJC_SOURCE_FILES): New variables.
46 (OBJS, OBJS_GC): Compute these from C_SOURCE_FILES and
48 (INCLUDES): Removed the unused include -I$(srcdir)/objc.
50 2010-09-12 Nicola Pero <nicola.pero@meta-innovation.com>
52 * memory.c (objc_calloc): Fixed call to GC_malloc when building
53 with Garbage Colletion.
55 2010-09-12 Nicola Pero <nicola.pero@meta-innovation.com>
57 * memory.c: Do not include objc-private/runtime.h.
59 2010-09-12 Nicola Pero <nicola.pero@meta-innovation.com>
61 * objc/deprecated/objc_malloc.h: New file.
62 * objc/deprecated/objc_valloc.h: New file.
63 * objc/objc-api.h: Include the files instead of defining
64 objc_valloc, _objc_malloc() and similar.
65 * Makefile.in (OBJC_DEPRECATED_H): Added objc_valloc.h and
67 * memory.c: Removed the extra layer of indirection of _objc_malloc
69 (objc_calloc): Use GC_malloc in the garbage-collected
70 implementation as GC_malloc returns memory that is already freed.
71 (objc_valloc): Deprecated.
73 2010-09-12 Nicola Pero <nicola.pero@meta-innovation.com>
75 * objc/deprecated/objc_error.h: New file.
76 * objc/objc-api.h: Include deprecated/objc_error.h instead of
77 defining objc_error and related.
78 * error.c: New file. Added _objc_abort function which replaces
79 objc_error. No change in functionality as they both print an
81 * misc.c: File removed. Code moved into memory.c and error.c.
83 * objc-private/error.h: New file.
84 * archive.c: Include objc-private/error.h and use _objc_abort
85 instead of objc_error everywhere.
86 * class.c: Same change.
87 * encoding.c: Same change.
88 * init.c: Same change, and simplified init_check_module_version.
89 * memory.c: Same change.
90 * sendmsg.c: Same change.
92 * Makefile.in (OBJ_DEPRECATED_H): Added objc_error.h.
93 (OBJ_H): Reordered list.
94 (OBJS): Removed misc.lo, added memory.lo and error.lo.
95 (OBJS_GC): Removed misc_gc.lo, added memory_gc.lo and error_gc.lo.
96 (misc_gc.lo): Rule removed.
97 (error_gc.lo): Rule added.
98 (memory_gc.lo): Rule added.
100 2010-09-12 Nicola Pero <nicola.pero@meta-innovation.com>
102 * objc/objc.h (__GNU_LIBOBJC__): New #define providing an easy way
103 to check the API version. Added some comments.
105 * objc-private/common.h: New file.
106 * NXConstStr.m: Include objc-private/common.h.
107 * Object.m: Same change.
108 * Protocol.m: Same change.
109 * archive.c: Same change.
110 * class.c: Same change.
111 * encoding.c: Same change.
112 * exception.c: Same change.
114 * hash.c: Same change.
115 * init.c: Same change.
116 * libobjc_entry.c: Same change.
117 * linking.m: Same change.
118 * misc.c: Same change (and added a comment).
119 * nil_method.c: Same change.
120 * objects.c: Same change.
121 * sarray.c: Same change.
122 * selector.c: Same change.
123 * sendmsg.c: Same change.
124 * thr.c: Same change.
126 2010-09-11 Nicola Pero <nicola.pero@meta-innovation.com>
128 * objc/objc-api.h: Removed obsolete #ifdef for NeXTSTEP.
130 2010-09-11 Nicola Pero <nicola.pero@meta-innovation.com>
132 * archive.c: Removed not needed includes.
133 * class.c: Same change.
134 * hash.c: Same change.
135 * misc.c: Same change.
136 * nil_method.c: Same change.
137 * objects.c: Same change.
138 * sarray.c: Same change.
139 * sendmsg.c: Same change.
140 * thr.c: Same change.
142 2010-09-11 Nicola Pero <nicola.pero@meta-innovation.com>
144 * objc/runtime.h: Moved to objc-private/runtime.h. Do not include
145 all the objc/*.h files.
146 * objc-private/runtime.h: New file.
147 * archive.c: Include objc-private/runtime.h (and required objc/*.h
148 files) instead of objc/runtime.h.
149 * class.c: Same change.
150 * hash.c: Same change.
151 * init.c: Same change.
152 * misc.c: Same change.
153 * nil_method.c: Same change.
154 * objects.c: Same change.
155 * sarray.c: Same change.
156 * selector.c: Same change.
157 * sendmsg.c: Same change.
158 * thr.c: Same change.
160 2010-09-11 Nicola Pero <nicola.pero@meta-innovation.com>
162 * objc/deprecated/struct_objc_selector.h: New file. Definition of
163 'struct objc_selector' and 'sel_eq' moved here.
164 * objc/deprecated/struct_objc_protocol.h: New file. Definition of
165 'struct objc_procotol' moved here.
166 * objc/deprecated/struct_objc_class.h: New file. Definition of
167 'struct objc_class' moved here.
168 * objc/deprecated/MetaClass.h: New file. Definition of MetClass
170 * objc/deprecated/STR.h: New file. Definition of STR moved here.
171 * objc/message.h: New file. Definitions for relval_t, apply_t,
172 arglist, arglist_t and objc_msg_lookup were moved here.
173 * objc/objc.h: Include the above files instead of defining the
174 corresponding structs, types and functions here. Added new opaque
175 definitions for SEL and Class. Use Class and not 'struct
176 objc_class *' in the definition of 'struct objc_object'.
177 Commented all types defined in the file. Removed special
178 definition of BOOL as 'int' on __vxworks; use 'unsigned char'
180 * objc/deprecated/objc-unexpected-exception.h: Renamed to
181 objc_unexpected_exception.h.
182 * objc/objc-api.h: Updated include of
183 objc-unexpetected-exception.h
184 * objc/objc-exception.h: Updated comments.
185 * Makefile.in (OBJC_H, OBJC_DEPRECATED_H): Added the new header
186 files. Reindented list of files.
188 2010-09-10 Nicola Pero <nicola.pero@meta-innovation.com>
190 * objc/objc-api.h (objc_trace): Unused variable removed.
192 2010-09-10 Nicola Pero <nicola.pero@meta-innovation.com>
194 * objc/deprecated: New directory.
195 * objc/deprecated/README: New file.
196 * objc/README: New file.
197 * objc/typedstream.h: Moved into objc/deprecated/typedstream.h;
198 objc/typedstream.h replaced with a placeholder including the file
199 from the deprecated/ directory.
200 * objc/deprecated/objc-unexpected-exception.h: New file with the
201 definition of _objc_unexpected_exception.
202 * objc/objc-api.h: Include deprecated/objc-unexcepted-exception.h
203 instead of defining _objc_unexpected_exception.
204 * objc/deprecated/Object.h: New file with the deprecated Object
205 methods in a 'Deprecated' category.
206 * objc/Object.h Include deprecated/Object.h instead of defining
207 the deprecated methods.
208 * Object.m: Moved deprecated methods into 'Deprecated' category.
209 * objc-private: New directory.
210 * objc-private/README: New file.
211 * Makefile.in (OBJC_DEPRECATED_H): New variable.
212 (install-headers): Create installation directory for
213 OBJC_DEPRECATED_H headers, and install them.
215 2010-09-10 Nicola Pero <nicola.pero@meta-innovation.com>
217 * objc/objc-exception.h: Fixed include of objc.h.
219 2010-09-08 Nicola Pero <nicola.pero@meta-innovation.com>
221 * objc/objc-exception.h: New file.
222 * exception.c (objc_set_uncaught_exception_handler): Implemented.
223 (objc_set_exception_matcher): Implemented.
224 (objc_exception_throw): Use the uncaught exception handler if set.
225 (PERSONALITY_FUNCTION): Use the exception matcher instead of the
227 (isKindOf): Renamed to is_kind_of_exception_matcher. Tidied code
228 up. Removed segmentation fault when value is 'nil'.
229 * objc/objc-api.h (_objc_unexpected_exception): Mark as
231 * Makefile.in (exception.lo, exception_gc.lo): Use
232 -Wno-deprecated-declarations when compiling.
233 (OBJC_H): Added objc-exception.h
235 2010-09-08 Nicola Pero <nicola@nicola.brainstorm.co.uk>
237 * objc/typedstream.h: Deprecate all functions in the file. This
239 * objc/Object.h ([+streamVersion:], [-read:], [-write:],
240 [-awake]): Documented that these methods are deprecated. Added a
241 brief description of the Object class and its relationship to the
243 * Makefile.in: Compile archive.c and Object.m with
244 -Wno-deprecated-declarations.
246 2010-09-08 Nicola Pero <nicola.pero@meta-innovation.com>
248 Removed obsolete intermediate threading layer.
249 * thr.c: Use __gthread_objc_xxx functions directly instead of
250 __objc_thread_xxx ones.
251 * objc/thr.h: Removed prototypes of no longer existing
252 __objc_thread_xxx functions.
253 * Makefile.in: Removed thr-objc.lo.
254 * thr-dce.c: File removed.
255 * thr-decosf1.c: File removed.
256 * thr-irix.c: File removed.
257 * thr-mach.c: File removed.
258 * thr-objc.c: File removed.
259 * thr-os2.c: File removed.
260 * thr-posix.c: File removed.
261 * thr-pthreads.c: File removed.
262 * thr-rtems.c: File removed.
263 * thr-single.c: File removed.
264 * thr-solaris.c: File removed.
265 * thr-vxworks.c: File removed.
266 * thr-win32.c: File removed.
267 * README.threads: File removed.
268 * THREADS.MACH: File removed.
271 2010-09-07 Nicola Pero <nicola.pero@meta-innovation.com>
273 * Object.m (MAX_CLASS_NAME_LEN): Unused define removed.
275 2010-09-06 Iain Sandoe <iains@gcc.gnu.org>
277 * encoding.c: Add TARGET_ALIGN_NATURAL definition for m64 powerpc darwin.
278 Add a comment as to why, update FIXME comments.
280 2010-09-06 Nicola Pero <nicola.pero@meta-innovation.com>
282 * makefile.dos: Obsolete file removed.
284 2010-04-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
286 * aclocal.m4: Regenerate.
288 2010-03-23 Dave Korn <dave.korn.cygwin@gmail.com>
291 * configure.ac (extra_ldflags_libobjc): Define appropriately for
292 Cygwin and MinGW hosts.
293 * Makefile.am (libobjc_s.a): Remove dead pre-libtool target.
294 (libobjc.dll): Likewise.
295 * configure: Regenerate.
297 2009-12-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
299 * configure: Regenerate.
301 2009-11-28 Jakub Jelinek <jakub@redhat.com>
303 * sarray.c (sarray_free): Use old_buckets variable.
304 * encoding.c (objc_layout_structure_next_member): Remove unused
305 bfld_type_size variable.
307 2009-08-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
309 * configure.ac (AC_PREREQ): Bump to 2.64.
311 2009-08-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
313 * aclocal.m4: Regenerate.
314 * configure: Regenerate.
315 * config.h.in: Regenerate.
317 2009-08-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
319 * Makefile.in (LIBTOOL): Add $(LIBTOOLFLAGS).
321 2009-07-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
323 * Makefile.in (AUTOCONF, ACLOCAL, ACLOCAL_AMFLAGS, aclocal_deps):
325 ($(srcdir)/configure, $(srcdir)/aclocal.m4): New rules.
327 2009-07-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
329 * configure.ac (_AC_ARG_VAR_PRECIOUS): Use m4_rename_force.
331 2009-04-09 Nick Clifton <nickc@redhat.com>
333 * sendmsg.c: Change copyright header to refer to version 3 of
334 the GNU General Public License with version 3.1 of the GCC
335 Runtime Library Exception and to point readers at the COPYING3
336 and COPYING3.RUNTIME files and the FSF's license web page.
337 * NXConstStr.m: Likewise.
338 * Object.m: Likewise.
339 * Protocol.m: Likewise.
340 * archive.c: Likewise.
342 * encoding.c: Likewise.
343 * exception.c: Likewise.
347 * libobjc_entry.c: Likewise.
348 * linking.m: Likewise.
350 * nil_method.c: Likewise.
351 * objc/NXConstStr.h: Likewise.
352 * objc/Object.h: Likewise.
353 * objc/Protocol.h: Likewise.
354 * objc/encoding.h: Likewise.
355 * objc/hash.h: Likewise.
356 * objc/objc-api.h: Likewise.
357 * objc/objc-decls.h: Likewise.
358 * objc/objc-list.h: Likewise.
359 * objc/objc.h: Likewise.
360 * objc/runtime.h: Likewise.
361 * objc/sarray.h: Likewise.
362 * objc/thr.h: Likewise.
363 * objc/typedstream.h: Likewise.
364 * objects.c: Likewise.
365 * sarray.c: Likewise.
366 * selector.c: Likewise.
367 * thr-dce.c: Likewise.
368 * thr-decosf1.c: Likewise.
369 * thr-irix.c: Likewise.
370 * thr-mach.c: Likewise.
371 * thr-objc.c: Likewise.
372 * thr-os2.c: Likewise.
373 * thr-posix.c: Likewise.
374 * thr-pthreads.c: Likewise.
375 * thr-rtems.c: Likewise.
376 * thr-single.c: Likewise.
377 * thr-solaris.c: Likewise.
378 * thr-vxworks.c: Likewise.
379 * thr-win32.c: Likewise.
381 * libobjc.def: Change copyright header to refer to version 3 of
382 the GNU General Public License and to point readers at the COPYING3
383 file and the FSF's license web page.
384 * makefile.dos: Likewise.
386 2009-04-09 Jakub Jelinek <jakub@redhat.com>
388 * Makefile.in: Change copyright header to refer to version
389 3 of the GNU General Public License and to point readers at the
390 COPYING3 file and the FSF's license web page.
391 * configure.ac: Likewise.
393 2009-03-12 Richard Frith-Macdonald <rfm@gnu.org>
394 David Ayers <ayers@fsfe.org>
397 * objc/objc-api.h (_objc_unexpected_exception): Declare
398 new hook. Update copyright dates.
399 * exception.c (objc_exception_throw): Use hook. Update
401 * libobjc.def (_objc_unexpected_exception): Export hook.
402 Update copyright dates.
404 2009-03-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
406 * configure: Regenerate.
408 2008-12-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
410 * configure: Regenerate.
412 2008-11-21 Kai Tietz <kai.tietz@onevision.com>
414 * Object.m (errno): Replaced by errno.h include.
415 (compare): Cast self to id to prevent warning on comparison.
416 * objc/objc.h (BOOL): Prevent redeclaration of BOOL, if it is
418 * sendmsg.c (__objc_print_dtable_stats): Remove type warnings.
419 * thr-win32.c (__objc_thread_detach): Remove type warning.
420 (__objc_thread_id): Likewise.
421 * thr.c (__objc_thread_detach_functiont): Add __builtin_trap ()
424 2008-09-26 Peter O'Gorman <pogma@thewrittenword.com>
425 Steve Ellcey <sje@cup.hp.com>
427 * configure: Regenerate for new libtool.
428 * config.h.in: Regenerate for new libtool.
430 2008-07-18 Matthias Klose <doko@ubuntu.com>
432 * Makefile.in: Ignore missing ../boehm-gc/threads.mk.
434 2008-07-18 Matthias Klose <doko@ubuntu.com>
436 * Makefile.in: Include ../boehm-gc/threads.mk.
437 (OBJC_BOEHM_GC_LIBS): Define, (libobjc_gc$(libsuffix).la): Use it.
439 2008-07-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
441 * Makefile.in (install-info): New stub target.
443 2008-06-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
445 * configure: Regenerate.
447 2008-06-14 Kai Tietz <kai.tietz@onevision.com>
449 * exception.c (PERSONALITY_FUNCTION): Remove extra decrement
450 if HAVE_GETIPINFO is not defined.
452 2008-06-10 Kai Tietz <kai.tietz@onevision.com>
454 * Object.m (compare): Add type id.
455 * objc/Object.h: Likewise.
456 * archive.c (objc_read_class): Use size_t to extend version to be
457 size of pointer scalar width.
458 * sendmsg.c (rtx): Undefine it before redefinition.
459 (__objc_print_dtable_stats): Cast arguments to long as intended.
461 2008-05-30 Julian Brown <julian@codesourcery.com>
463 * exception.c (__objc_exception_class): Initialise as constant
464 array for ARM EABI. Change macro to static const for non-ARM EABI.
465 (ObjcException): Add note about structure layout. Remove landingPad
466 and handlerSwitchValue for ARM EABI.
467 (get_ttype_entry): Add __ARM_EABI_UNWINDER__ version
469 (CONTINUE_UNWINDING): Define for ARM EABI/otherwise cases.
470 (PERSONALITY_FUNCTION): Use ARM EABI-specific arguments, and add
471 ARM EABI unwinding support.
472 (objc_exception_throw): Use memcpy to initialise exception class.
474 2008-05-25 Alan Modra <amodra@bigpond.net.au>
476 * encoding.c (strip_array_types): Rename from get_inner_array_type.
477 (rs6000_special_round_type_align): Update.
479 2008-05-09 Julian Brown <julian@codesourcery.com>
481 * Makefile.in (LTLDFLAGS): New.
482 (libobjc$(libsuffix).la, libobjc_gc$(libsuffix).la): Use above.
484 2008-04-18 Paolo Bonzini <bonzini@gnu.org>
487 * aclocal.m4: Regenerate.
488 * configure: Regenerate.
490 2008-01-24 David Edelsohn <edelsohn@gnu.org>
492 * configure: Regenerate.
494 2007-10-14 H.J. Lu <hongjiu.lu@intel.com>
496 * configure.ac: Don't run config-ml.in directly.
498 * configure: Regenerated.
500 2007-08-06 Andrew Pinski <pinskia@gmail.com>
503 * exception.c (parse_lsda_header): Use _uleb128_t/_sleb128_t instead
504 of _Unwind_Word for variables which are used in
505 read_uleb128/read_sleb128.
506 (PERSONALITY_FUNCTION): Likewise.
508 2007-07-05 H.J. Lu <hongjiu.lu@intel.com>
510 * aclocal.m4: Regenerated.
512 2007-06-03 Andrew Pinski <andrew_pinski@playstation.sony.com>
514 * configure.ac: Fix a typo in *-*-darwin clause.
515 * configure: Regenerated.
517 2007-06-02 H.J. Lu <hongjiu.lu@intel.com>
519 * configure.ac: Fix a typo.
520 * configure: Regenerated.
522 2007-06-02 Paolo Bonzini <bonzini@gnu.org>
524 * configure: Regenerate.
526 2007-06-01 Andrew Pinski <andrew_pinski@playstation.sony.com>
528 * Makefile.in: Replace all uses of libext with libsuffix.
529 * configure.ac: Likewise.
530 * configure: Regenerate.
533 * Makefile.in: Remove all uses of $(libext).
535 2007-05-23 Andrew Pinski <andrew_pinski@playstation.sony.com>
537 * Makefile.in: Remove all uses of $(libext).
539 2007-05-23 Steve Ellcey <sje@cup.hp.com>
541 * configure: Regenerate.
542 * aclocal.m4: Regenerate.
544 2007-04-21 Andrew Ruder <andy@aeruder.net>
546 * sendmsg.c (__objc_get_forward_imp): Call
547 __objc_msg_forward2 for real.
549 2007-04-09 Andrew Ruder <andy@aeruder.net>
551 * sendmsg.c: Added __objc_msg_forward2, a hook that allows
552 external libraries to provide a function that returns the real
553 forwarding function based on both the selector and the receiver.
554 * objc/objc-api.h: Define __objc_msg_forward2.
556 2007-03-01 Brooks Moses <brooks.moses@codesourcery.com>
558 * Makefile.in: Add dummy install-pdf target.
560 2007-02-18 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
562 * objc/objc-list.h (list_free): Add keyword 'inline' to avoid
565 2006-10-31 Geoffrey Keating <geoffk@apple.com>
567 * encoding.c (darwin_rs6000_special_round_type_align): New.
569 2006-10-14 Geoffrey Keating <geoffk@apple.com>
571 * Makefile.in: Use multi_basedir instead of toplevel_srcdir.
572 * configure.ac: Use multi.m4 from aclocal rather than custom
573 code. Use multi_basedir instead of toplevel_srcdir.
574 * aclocal.m4: Regenerate.
575 * configure: Regenerate.
577 2006-10-10 Brooks Moses <bmoses@stanford.edu>
579 * Makefile.in: Added empty "pdf" target.
581 2006-07-18 Paolo Bonzini <bonzini@gnu.org>
583 * configure: Regenerate.
585 2006-05-23 Carlos O'Donell <carlos@codesourcery.com>
587 * Makefile.in: Add install-html target. Add install-html to .PHONY
589 2006-02-21 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
592 * thr-objc.c (_XOPEN_SOURCE): Don't define on Tru64 UNIX.
594 2006-01-24 David Ayers <d.ayers@inode.at>
597 * gc.c (class_ivar_set_gcinvisible): Replace strncpy with memcpy
598 and insure the new strings are '\0' termintated.
600 2006-01-24 David Ayers <d.ayers@inode.at>
603 * configure.ac: Add include directives for --enable-objc-gc.
604 * Makefile.in: Ditto.
605 * configure: Regenerate.
607 * gc.c (__objc_class_structure_encoding): Increment the used bytes
608 instead of the local pointer to them.
610 2005-12-14 Andrew Pinski <pinskia@physics.uc.edu>
613 * objc/objc-api.c (_C_COMPLEX): New define.
614 * encoding.c (objc_sizeof_type): Handle _C_Complex.
615 (objc_alignof_type): Likewise.
616 (objc_skip_typespec): Likewise.
618 2005-12-15 David Ayers <d.ayers@inode.at>
621 * README (+load,+initialize): Fix documentation to reflect
622 intended and implemented semantics for +load and +initialize.
624 2005-12-12 Andrew Pinski <pinskia@physics.uc.edu>
626 * encoding.c (TYPE_FIELDS): Fix to skip over just _C_STRUCT_B and
628 (get_inner_array_type): Fix to skip over _C_ARY_B and size.
629 (rs6000_special_round_type_align): Update for the ABI fix.
630 (objc_layout_finish_structure): Correct the encoding which is passed to
633 2005-12-11 Andrew Pinski <pinskia@physics.uc.edu>
636 * encoding.c (objc_sizeof_type): Don't handle _C_UNION_B special
637 but use the struct layout functions.
638 (objc_alignof_type): Likewise.
639 (objc_layout_structure): Handle _C_UNION_B also.
640 (objc_layout_structure_next_member): Likewise.
641 (objc_layout_finish_structure): Likewise.
643 2005-12-11 Andrew Pinski <pinskia@physics.uc.edu>
646 * objc/objc-api.h (_C_BOOL): New define.
647 * encoding.c (objc_sizeof_type): Handle _C_BOOL.
648 (objc_alignof_type): Likewise.
649 (objc_skip_typespec): Likewise.
651 2005-11-20 David Ayers <d.ayers@inode.at>
654 * objc/hash.h: Remove deprecated hash API.
655 * hash_compat.c: Remove.
656 * Makefile.in: Remove reference to hash_compat.c.
658 * configure.ac (VERSION): Bump library version to 2:0:0.
659 * configure: Regenerate.
661 2005-11-09 Alexandre Oliva <aoliva@redhat.com>
664 * thr-objc.c (_XOPEN_SOURCE): Define.
666 2005-10-07 Ulrich Weigand <uweigand@de.ibm.com>
669 * objc/objc-api.h (struct objc_ivar): Move definition to
672 2005-09-04 Andrew Pinski <pinskia@physics.uc.edu>
673 Rasmus Hahn <rassahah@neofonie.de>
676 * archive.c (objc_write_type): Correct the element offset.
677 (objc_read_type): Likewise.
679 2005-08-17 Kelley Cook <kcook@gcc.gnu.org>
681 * All files: Update FSF address.
683 2005-08-13 Marcin Koziej <creep@desk.pl>
684 Andrew Pinski <pinskia@physics.uc.edu>
687 * exception.c (PERSONALITY_FUNCTION): Fix the PC with finally.
689 2005-08-13 Andrew Pinski <pinskia@physics.uc.edu>
691 * Makefile.in (extra_ldflags_libobjc): New.
692 (libobjc$(libext).la): Add extra_ldflags_libobjc to the link line.
693 (libobjc_gc$(libext).la): Likewise.
694 * configure.ac (extra_ldflags_libgfortran): Set for *-darwin* to
695 "-Wl,-single_module".
696 * configure: Regenerate.
697 * linking.m (_objcInit): Remove.
699 2005-07-26 Andrew Pinski <pinskia@physics.uc.edu>
702 * Makefile.in (ALL_CFLAGS): Add -fexceptions.
704 2005-06-08 David Ayers <d.ayers@inode.at>
706 * objc/NXConstStr.h, objc/Object.h, objc/Protocol.h,
707 objc/encoding.h, objc/hash.h, objc/objc-api.h,
708 objc/runtime.h, objc/sarray.h, objc/thr.h,
709 objc/typedstream.h: Do not include Objective-C headers as
712 2005-06-07 David Ayers <d.ayers@inode.at>
714 * archive.c, init.c, selector.c: Include hash.h.
715 * archive.c, class.c, encoding.c, gc.c, hash.c, hash_compat.c,
716 init.c, misc.c, nil_method.c, objects.c, sarray.c, selector.c,
717 sendmsg.c, thr-dce.c, thr-decosf1.c, thr-irix.c, thr-mach.c,
718 thr-objc.c, thr-os2.c, thr-posix.c, thr-pthreads.c, thr-rtems.c,
719 thr-single.c, thr-solaris.c, thr-vxworks.c, thr-win32.c, thr.c:
720 Include Objective-C headers with quotes and objc/ directory
723 2005-05-19 Richard Henderson <rth@redhat.com>
725 * exception.c: Revert last change.
727 2005-05-19 David Ayers <d.ayers@inode.at>
729 * exception.c: Include tsystem.h for unwind.h.
731 2005-05-09 Mike Stump <mrs@apple.com>
733 * configure: Regenerate.
735 2005-04-12 Mike Stump <mrs@apple.com>
737 * configure: Regenerate.
739 2005-03-21 Zack Weinberg <zack@codesourcery.com>
741 * Makefile.in: Set gcc_version here.
742 * configure.ac: Do not invoke TL_AC_GCC_VERSION. Adjust quoting
743 in definition of toolexeclibdir so that $(gcc_version) is expanded
745 * aclocal.m4, configure: Regenerate.
747 2005-03-03 David Ayers <d.ayers@inode.at>
749 * objc/hash.h (OBJC_IGNORE_DEPRECATED_API): Update deprecated
750 version reference. Correct typo.
752 2005-03-02 David Ayers <d.ayers@inode.at>
755 * Makefile.in (OBJS): Add hash_compat.lo.
756 (OBJS_GC): Add hash_compat_gc.lo.
757 (hash_compat_gc.lo): New target and rule.
758 * objc/hash.h (hash_new, hash_delete, hash_add, hash_remove)
759 (hash_next, hash_value_for_key, hash_is_key_in_hash)
760 (hash_ptr, hash_string, compare_ptrs, compare_strings): Prefix
761 with objc_. Add deprecated non prefixed inlined versions.
762 (OBJC_IGNORE_DEPRECATED_API): New macro to hide deprecated
764 * hash.c (hash_new, hash_delete, hash_add, hash_remove, hash_next)
765 (hash_value_for_key, hash_is_key_in_hash): Prefix with objc_ and
767 * hash_compat.c: New file.
768 * archive.c: Update callers.
770 * selector.c: Likewise.
771 * libobjc.def: Add objc_ versions of hash functions.
773 2005-02-28 Andrew Pinski <pinskia@physics.uc.edu>
776 * Makefile.in (GTHREAD_FLAGS): Remove.
777 (ALL_CFLAGS): Remove usage of GTHREAD_FLAGS.
778 * thr-objc.c: Include config.h.
779 * configure.ac: Instead of looking at GCC's makefile, figure out if
780 GTHREAD_FLAGS should be defined by looking at the `thread model'
782 * configure: Regenerate.
783 * config.h.in: Regenerate.
785 2005-02-28 Paolo Bonzini <bonzini@gnu.org>
788 * configure.ac: Call GCC_TOPLEV_SUBDIRS.
789 (Determine CFLAGS for gthread): Use $host_subdir.
790 * configure: Regenerate.
791 * Makefile.in (host_subdir): New.
794 2004-12-20 Andrew Pinski <pinskia@physics.uc.edu>
797 * gc.c: Remove definition of LOGWL, modWORDSZ, and divWORDSZ since
799 Include limits.h and stdlib.h.
800 Define BITS_PER_WORD.
802 2004-12-12 Alexander Malmberg <alexander@malmberg.org>
804 * selector.c (__objc_init_selector_tables): Add missing void to
807 2004-12-02 Richard Sandiford <rsandifo@redhat.com>
809 * configure.ac: Use TL_AC_GCC_VERSION to set gcc_version.
810 * configure, aclocal.m4: Regenerate.
812 2004-11-29 Kelley Cook <kcook@gcc.gnu.org>
814 * configure: Regenerate for libtool change.
816 2004-11-25 Kelley Cook <kcook@gcc.gnu.org>
818 * configure: Regenerate for libtool reversion.
820 2004-11-24 Kelley Cook <kcook@gcc.gnu.org>
822 * configure: Regenerate for libtool change.
824 2004-11-24 Kelley Cook <kcook@gcc.gnu.org>
826 * aclocal.m4, config.h.in: Regenerate.
828 2004-10-08 Mike Stump <mrs@apple.com>
829 Andrew Pinski <pinskia@physics.uc.edu>
831 * aclocal.m4: Rename to ...
832 * acinclude.m4: here and also use m4_include instead of sinclude.
833 * aclocal.m4: Regenerate.
834 * configure: Regenerate.
835 * configure.ac: Add AM_MAINTAINER_MODE and AM_PROG_CC_C_O.
836 * Makefile.in (configure): Add @MAINT@ infront of configure.ac
838 2004-10-08 Andrew Pinski <pinskia@physics.uc.edu>
840 * archive.c: Fix all the warnings about passing unsigned char*
841 to char* and the other way too.
843 2004-09-16 Andrew Pinski <pinskia@physics.uc.edu>
846 * exception.c: Include config.h
847 (objc_exception_throw): Change _GLIBCXX_SJLJ_EXCEPTIONS to
849 * configure.ac: Find out what exception handling code we use.
850 * configure: Regenerate.
851 * config.h.in: New file, regenerate.
853 2004-09-16 Andrew Pinski <apinski@apple.com>
855 * encoding.c (ALTIVEC_VECTOR_MODE): Define a bogus macro.
857 2004-08-28 Nathanael Nerode <neroden@gcc.gnu.org>
859 * configure.ac: Switch from _GCC_TOPLEV_NONCANONICAL_TARGET to
860 ACX_NONCANONICAL_TARGET.
861 * configure: Regenerate.
863 2004-08-13 Ziemowit Laski <zlaski@apple.com>
865 * objc/sarray.h: Hoist include of assert.h near the top of file,
866 and mark the remainder of the file 'extern "C"'.
868 2004-08-13 Andrew Pinski <pinskia@physics.uc.edu>
870 * objc/Object.h: Move includes out of extern "C" blocks.
871 * objc/encoding.h: Likewise.
872 * objc/hash.h: Likewise.
873 * objc/objc-api.h: Likewise.
874 * objc/runtime.h: Likewise.
875 * objc/sarray.h: Likewise.
876 * objc/typedstream.h: Likewise.
878 2004-08-12 Ziemowit Laski <zlaski@apple.com>
880 * objc/NXConstStr.h: Update copyright date; bracket with
881 'extern "C"' for C++ use; make include syntax consistent
882 by using <...> instead of "..."; hoist <objc/...> includes
883 above the 'extern "C"' block.
884 * objc/Object.h: Likewise.
885 * objc/Protocol.h: Likewise.
886 * objc/encoding.h: Likewise.
887 * objc/hash.h: Likewise.
888 * objc/runtime.h: Likewise.
889 * objc/sarray.h: Likewise.
890 * objc/thr.h: Likewise.
891 * objc/typedstream.h: Likewise.
892 * objc/objc-api.h: Add 'extern "C"' block for C++ use.
893 (objc_static_instances): For C++ case, do away with
895 (objc_method): Hoist definition to file scope.
896 (_objc_load_callback, _objc_object_alloc, class_get_class_method,
897 class_get_instance_method, class_create_instance,
898 class_get_class_name, class_get_instance_size,
899 class_get_meta_class, class_get_super_class, class_get_version,
900 class_is_class, class_is_meta_class, class_set_version,
901 class_get_gc_object_type, class_ivar_set_gcinvisible,
902 get_imp): Rename 'class' parameter to '_class'.
903 * objc/objc-list.h: Add 'extern "C"' block for C++ use.
904 * objc/objc.h: Update copyright date.
905 (arglist_t): Provide a union tag.
907 2004-07-22 Andrew Pinski <pinskia@physics.uc.edu>
909 * thr.c (__objc_thread_detach_function): Do not mark as volatile
910 but instead use the attribute noreturn.
912 2004-06-28 Zack Weinberg <zack@codesourcery.com>
914 * encoding.c: Rename target_flags with a #define to avoid
915 conflict with a prior declaration.
917 2004-06-24 Andrew Pinski <apinski@apple.com>
919 * objc/encoding.h: Wrap the functions with extern "C" for C++
921 * objc/hash.h: Likewise.
922 * objc/objc-api.h: Likewise.
923 * objc/objc-list.h: Likewise.
924 * objc/runtime.h: Likewise.
925 * objc/sarray.h: Likewise.
926 * objc/thr.h: Likewise.
927 * objc/typedstream.h: Likewise.
930 2004-06-21 Nick Clifton <nickc@redhat.com>
932 * encoding.c (BITS_PER_UNIT): Define if a definition is not
935 2004-06-20 Alexander Malmberg <alexander@malmberg.org>
937 * Makefile.in (exception.lo): Remove $(OBJC_GCFLAGS).
938 (exception_gc.lo): New.
939 (OBJS_GC): Add exception_gc.lo.
941 2004-06-17 Richard Henderson <rth@redhat.com>
943 * exception.c: New file.
944 * Makefile.in (exception.lo): New.
947 2004-06-14 Andrew Pinski <pinskia@physics.uc.edu>
949 * linking.m (_objcInit): New empty function
952 2004-06-11 Andrew Pinski <pinskia@physics.uc.edu>
954 * configure.ac: Support --enable-shared=libobjc.
955 * configure: Regenerate.
958 * configure.ac: Do not disable shared by default.
959 * configure: Regenerate.
961 2004-06-03 Nicola Pero <n.pero@mi.flashnet.it>
963 * Protocol.m ([-isEqual:]): Small optimizations returning
964 immediately if the argument is equal to self, and accessing
965 the argument's name directly if it's a protocol.
967 2004-06-03 David Ayers <d.ayers@inode.at>
969 * Protocol.m ([-isEqual:]): Test the class of the argument.
971 2004-05-25 Andrew Pinski <pinskia@physics.uc.edu>
973 * configure.ac (includedir): Rename to ...
975 * Makefile.in: s/includedir/includedirname/.
978 * configure.ac (includedir): Set to "include"
980 (libext) Set to empty except for Darwin.
981 * configure: Regenerate
982 * Makefile.in: s/libobjc.la/libobjc$(libext).la/g.
983 s/include/$(includedir)/g.
985 2004-05-25 Daniel Jacobowitz <drow@false.org>
987 * Makefile.in: Add .NOEXPORT.
989 2004-05-25 Andrew Pinski <pinskia@physics.uc.edu>
991 Merge from the libobjc-branch
992 2004-02-09 Andrew Pinski <pinskia@physics.uc.edu>
994 * Makefile.in (OBJC_H): Change objc-deps.h to objc-decls.h.
996 2004-02-03 Andrew Pinski <pinskia@physics.uc.edu>
998 * Makefile.in (OBJC_H): Add objc-deps.h.
1000 2004-01-27 Nicola Pero <n.pero@mi.flashnet.it>
1002 * Protocol.m ([-conformsTo:]): If the argument is nil, return NO.
1003 ([-hash], [-isEqual:]): New methods.
1005 2004-01-27 Richard Frith-Macdonald <rfm@gnu.org>
1007 * sarray.c (sarray_free): Add a better comment.
1009 2004-01-27 Adam Fedor <fedor@gnu.org>
1011 * hash.c (hash_add): Cast cachep to int.
1012 * selector.c (__sel_register_typed_name): Cast
1013 soffset_decode to int.
1015 2004-01-27 Alexander Malmberg <alexander@malmberg.org>
1017 * selector.c: Rename register_selectors_from_list to
1018 __objc_register_selectors_from_list. Update caller.
1019 (__objc_register_selectors_from_list): Lock __objc_runtime_mutex
1020 while registering selectors. Use __sel_register_typed_name instead
1021 of sel_register_typed_name. Check for NULL method_name:s.
1022 (pool_alloc_selector): New function.
1023 (__sel_register_typed_name): Use pool_alloc_selector to allocate
1024 selector structures.
1025 * sendmsg.c (class_add_method_list): Use
1026 __objc_register_selectors_from_list.
1027 * objc/runtime.h: Add __objc_register_selectors_from_list.
1029 2004-01-25 Adam Fedor <fedor@gnu.org>
1030 Nicola Pero <n.pero@mi.flashnet.it>
1031 Andrew Pinski <pinskia@physics.uc.edu>
1033 * objc/objc-decls.h: New file.
1034 * objc/objc-api.h (_objc_lookup_class): Mark as export.
1035 (_objc_load_callback): Likewise.
1036 (_objc_object_alloc): Likewise.
1037 (_objc_object_copy): Likewise.
1038 (_objc_object_dispose): Likewise.
1040 2004-01-25 Andrew Pinski <pinskia@physics.uc.edu>
1042 * archive.c: s/__inline__/inline
1043 * sendmsg.c: Likewise.
1045 * encoding.c: Remove FIXME about the warning
1046 about unused variable.
1047 * sendmsg.c: Add a FIXME comment saying that
1048 this should be using libffi.
1050 * Makefile.in (LIBTOOL): Use @LIBTOOL@ now as it works.
1053 2004-05-13 Andrew Pinski <pinskia@physics.uc.edu>
1055 * archive.c (objc_read_class): Initialize class_name.
1056 (objc_read_selector): Initialize selector_name.
1058 2004-05-09 Richard Sandiford <rsandifo@redhat.com>
1060 * Makefile.in (toolexecdir): Remove trailing space.
1062 2004-04-15 Nathanael Nerode <neroden@gcc.gnu.org>
1065 * configure.ac: De-precious CC so multilibs work.
1066 * configure: Regenerate.
1068 2004-04-14 Nathanael Nerode <neroden@gcc.gnu.org>
1070 * configure.ac: Restore toolexecdir.
1071 * Makefile.in: Restore toolexecdir.
1072 * configure: Regenerate.
1074 2004-04-09 Nathanael Nerode <neroden@gcc.gnu.org>
1076 * configure.ac: Remove (unused) glibcpp_prefixdir.
1077 * configure: Regenerate.
1079 * configure.in: Rename to configure.ac.
1080 * Makefile.in: Update to match.
1082 * Makefile.in: Remove toolexecdir, glibcpp_toolexecdir (unused).
1083 Replace glibcpp_toolexeclibdir with toolexeclibdir.
1084 * configure.in: Remove glibcpp_toolexecdir (unused).
1085 Replace glibcpp_toolexeclibdir with toolexeclibdir. Don't generate
1086 config.h or stamp-h (unused). Move one comment to the right place.
1087 * configure: Regenerate.
1088 * config.h.in: Remove (unused).
1090 * config.h.in: Regenerate with autoheader.
1092 * Makefile.in: Remove (unused) gcc_version_trigger.
1093 * configure.in: Remove (unused) glibcpp_builddir. Don't AC_SUBST
1094 gcc_version_trigger.
1095 * configure: Regenerate.
1097 * configure.in: Switch to modern style for AC_INIT, AC_OUTPUT.
1098 Sort file into sections. Remove dnl where appropriate. Fix
1100 * configure: Regenerate.
1102 * configure.in: Replace old AC_PROG_CC hack with new one.
1103 Define toplevel_srcdir in terms of srcdir, not top_srcdir (there
1104 are no subdirectory output files, so this is fine). Change prereq
1106 * aclocal.m4: Include ../config/no-executables.m4.
1107 * configure: Regenerate with autoconf 2.59.
1109 * configure.in: Improve comments on gthread_cflags. Improve m4
1110 quotation, and replace 'if test' with 'case', for --enable-objc-gc.
1111 * configure: Regenerate.
1113 * configure.in: Move PACKAGE and VERSION settings up top. Remove
1114 unused call to AC_PROG_LN_S. Default RANLIB to ':'. Remove
1115 redundant checks for values of RANLIB, AR, INSTALL.
1116 * configure: Regenerate.
1118 * configure.in: Clean up handling of
1119 --enable-version-specific-runtime-libs and related variables;
1120 replace 'if test' with 'case' where reasonable. Fix comments.
1121 Remove useless libstdcxx_interface.
1122 * configure: Regenerate.
1124 * configure.in: Use _GCC_TOPLEV_NONCANONICAL_TARGET.
1125 Replace uses of target_alias with target_noncanonical.
1126 * aclocal.m4: Include ../config/acx.m4.
1127 * configure: Regenerate.
1128 * Makefile.in: Replace uses of target_alias with target_noncanonical.
1129 Fix copyright statement.
1131 * configure.in: Hand-inline bulky, confusing macros from
1132 aclocal.m4. Replace references to "GNU Objective C" with "GCC".
1133 Update copyright notice. Remove stuff for automake, which isn't
1134 used in this directory. Remove emacs local variables.
1135 * aclocal.m4: Remove hand-inlined macros. Update copyright notice.
1136 * configure: Regenerate.
1138 2004-03-16 Manfred Hollstein <mh@suse.com>
1140 * Makefile.in, configure.in, configure: Update copyright years.
1142 2004-03-15 Manfred Hollstein <mh@suse.com>
1144 * Makefile.in (LIBOBJC_VERSION, LIBOBJC_GC_VERSION): Use
1145 definition from configure.in.
1146 * configure.in (PACKAGE): Add definition.
1147 (VERSION): Add definition; substitute it in output files.
1148 * configure: Re-generate.
1150 2004-03-05 Ziemowit Laski <zlaski@apple.com>
1152 * objc/hash.h (hash_string, compare_strings):
1153 Add type-casts to make Objective-C++ happy.
1154 * objc/typedstream.h (objc_get_stream_class_version):
1155 Rename parameter from 'class' to 'class_name' to make
1156 Objective-C++ happy.
1158 2004-03-01 Michael Matz <matz@suse.de>
1160 * Makefile.in (ALL_CFLAGS): Add -fno-strict-aliasing.
1162 2004-02-06 Ziemowit Laski <zlaski@apple.com>
1164 * objc/objc-api.h (objc_super): The 'class' field shall
1165 be named 'super_class' #ifdef __cplusplus.
1167 2004-01-17 Andrew Pinski <pinskia@physics.uc.edu>
1170 * encoding.c (rs6000_special_round_type_align): Define.
1172 2004-01-14 Adam Fedor <fedor@gnu.org>
1175 * selector.c (__objc_register_instance_methods_to_class): Free
1176 new_list if not used.
1178 2004-01-09 Andrew Ruder <aeruder@ksu.edu>
1181 * sarray.c (sarray_free): Free array->is_copy_of latter.
1183 2003-12-01 Zack Weinberg <zack@codesourcery.com>
1186 * Protocol.m (descriptionForInstanceMethod): Don't dereference
1187 instance_methods if it's NULL.
1188 (descriptionForClassMethod): Likewise for class_methods.
1190 2003-10-24 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
1192 * Makefile.in (runtime-info.h): Remove -Wp.
1194 2003-10-21 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
1196 * Makefile.in (CC1OBJ): Remove.
1197 (runtime-info.h): Invoke $(CC) so all MULTIFLAGS are handled
1199 Use .m extension for temporary file.
1200 Remove assembler temp file.
1202 2003-10-20 Joseph S. Myers <jsm@polyomino.org.uk>
1204 * objc/hash.h (hash_string): Don't use a cast as an lvalue.
1206 2003-10-17 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
1208 * Makefile.in (runtime-info.h): Use MULTIFLAGS.
1210 2003-09-09 Alan Modra <amodra@bigpond.net.au>
1212 * configure: Regenerate.
1214 2003-08-27 Alexander Malmberg <alexander@malmberg.org>
1216 * Makefile.in, aclocal.m4: Update to $(libdir)/gcc/ instead of
1217 (libdir)/gcc-lib/ when installing.
1218 * configure: Regenerate.
1220 Thu Jul 10 10:27:43 2003 Nicola Pero <n.pero@mi.flashnet.it>
1223 * sendmsg.c (get_imp): Fixed rare threading problem.
1224 (__objc_responds_to): Similar fixes.
1225 (objc_msg_lookup): Similar fixes.
1226 (__objc_init_install_dtable): Lock the runtime before checking if the
1229 2003-05-23 Nathanael Nerode <neroden@gcc.gnu.org>
1231 * hash.c, init.c, libobjc.def, libobjc_entry.c, linking.m,
1232 makefile.dos, misc.c, nil_method.c, objects.c, sarray.c,
1233 selector.c, sendmsg.c, thr-dce.c, thr-decosf1.c, thr-irix.c,
1234 thr-mach.c, thr-objc.c, thr-os2.c, thr-posix.c, thr-pthreads.c,
1235 thr-rtems.c, thr-single.c, thr-solaris.c, thr-vxworks.c,
1236 thr-win32.c, thr.c: Replace "GNU CC" with "GCC".
1237 * Makefile.in, NXConstStr.m, Object.m, Protocol.m, archive.c,
1238 class.c, encoding.c, gc.c, objc/NXConstStr.h, objc/Object.h,
1239 objc/Protocol.h, objc/encoding.h, objc/hash.h, objc/objc-api.h,
1240 objc/objc-list.h, objc/objc.h, ocjc/runtime.h, objc/sarray.h,
1241 objc/thr.h, objc/typedstream.h: Replace "GNU CC" with "GCC".
1243 Tue May 13 14:56:03 2003 Richard Frith-Macdonald <rfm@gnu.org>
1244 Nicola Pero <n.pero@mi.flashnet.it>
1247 * init.c (class_superclass_of_class): New function.
1248 (create_tree_of_subclasses_inherited_from): Use it.
1249 (__objc_tree_insert_class): Likewise.
1250 (class_is_subclass_of_class): Likewise.
1252 2003-04-11 David Chad <davidc@freebsd.org>
1253 Loren J. Rittle <ljrittle@acm.org>
1256 * objc/hash.h (hash_string): Constify correctly.
1257 (compare_ptrs): Use direct compare.
1258 * objc/objc-list.h (list_nth): Rename index to indx to avoid shadow.
1259 * objc/sarray.h: Global rename index to indx to avoid shadow.
1261 2003-03-12 Andreas Schwab <schwab@suse.de>
1263 * aclocal.m4 (GLIBCPP_EXPORT_INSTALL_INFO): Avoid trailing /. in
1264 glibcpp_toolexeclibdir.
1265 * configure: Rebuilt.
1267 2003-02-20 Alexandre Oliva <aoliva@redhat.com>
1269 * configure.in: Propagate ORIGINAL_LD_FOR_MULTILIBS to
1271 * configure: Rebuilt.
1273 2003-01-27 Alexandre Oliva <aoliva@redhat.com>
1275 * aclocal.m4 (glibcpp_toolexeclibdir): Instead of
1276 $(MULTISUBDIR), use `$CC -print-multi-os-directory`, unless
1277 version_specific_libs is enabled.
1278 * configure: Rebuilt.
1280 2003-01-09 Christian Cornelssen <ccorn@cs.tu-berlin.de>
1282 * Makefile.in (FLAGS_TO_PASS): Also pass DESTDIR.
1283 (install-libs, install-headers): Prepend $(DESTDIR) to
1284 destination paths in all (un)installation commands.
1286 2002-12-02 Zack Weinberg <zack@codesourcery.com>
1288 * thr-objc.c: Include coretypes.h and tm.h.
1290 2002-12-01 Zack Weinberg <zack@codesourcery.com>
1292 * encoding.c, sendmsg.c: Include coretypes.h and tm.h.
1294 2002-11-26 Nathanael Nerode <neroden@gcc.gnu.org>
1296 * configure.in: Remove skip-this-dir support.
1297 * configure: Regenerate.
1299 2002-09-22 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1301 * Makefile.in (all): Fix multilib parallel build.
1303 Thu Sep 12 12:44:37 2002 Nicola Pero <n.pero@mi.flashnet.it>
1305 * sendmsg.c (nil_method): Declare not to take a variable number of
1307 (objc_msg_lookup): Cast nil_method to IMP before returning it.
1308 (objc_msg_lookup_super): The same.
1310 2002-09-10 Jan Hubicka <jh@suse.cz>
1312 * nil_method.c (nil_method): No longer defined with variable
1315 2002-07-02 Rodney Brown <rbrown64@csc.com.au>
1317 * objc/encoding.h: Fix formatting.
1318 * objc/hash.h: Likewise.
1319 * objc/objc-api.h: Likewise.
1320 * objc/runtime.h: Likewise.
1321 * objc/thr.h: Likewise.
1322 * archive.c: Likewise.
1323 * class.c: Likewise.
1324 * encoding.c: Likewise.
1329 * nil_method.c: Likewise.
1330 * objects.c: Likewise.
1331 * sarray.c: Likewise.
1332 * selector.c: Likewise.
1333 * sendmsg.c: Likewise.
1334 * thr-mach.c: Likewise.
1337 2002-06-25 DJ Delorie <dj@redhat.com>
1339 * aclocal.m4 (GLIBCPP_CONFIGURE): Split out
1340 GLIBCPP_TOPREL_CONFIGURE.
1341 * configure.in: Call it before AC_CANONICAL_SYSTEM.
1342 * configure: Regenerate.
1344 2002-06-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1346 * Object.m (forward, read, write): Fix unused parameter warnings.
1347 * encoding.c: Include <stdlib.h>.
1348 (target_flags): Mark with attribute unused.
1350 * runtime.h (__objc_selector_max_index): Change to unsigned int.
1351 (__objc_generate_gc_type_description): Prototype.
1352 * selector.c (__objc_selector_max_index): Change to unsigned int.
1354 Mon Jun 17 18:37:42 2002 Nicola Pero <n.pero@mi.flashnet.it>
1356 * sendmsg.c (__objc_get_forward_imp): Fix warning by making sure
1357 we always have a return value: if __objc_msg_forward does not
1358 supply a forwarding implementation, return the default
1359 __builtin_apply based one.
1361 2002-06-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1363 * Object.m: Fix signed/unsigned warning.
1364 * Protocol.m: Likewise.
1365 * archive.c: Always include stdlib.h.
1366 (objc_read_short, objc_read_unsigned_short, objc_read_int,
1367 objc_read_long, __objc_read_nbyte_uint, __objc_read_nbyte_ulong):
1368 Fix signed/unsigned warning.
1369 (objc_write_type, objc_read_type, objc_write_types,
1370 objc_read_types): Ensure ctype 8-bit safety.
1371 (__objc_no_write, __objc_no_read): Mark unused parameters.
1372 * class.c (class_table_setup): Specify void arg.
1373 * encoding.c (atoi, objc_sizeof_type, objc_alignof_type,
1374 objc_skip_typespec, objc_skip_offset,
1375 objc_layout_structure_next_member): Ensure ctype 8-bit safety.
1376 (objc_layout_structure_next_member): Ensure variables are
1378 * gc.c (__objc_generate_gc_type_description,
1379 class_ivar_set_gcinvisible): Mark unused parameters.
1380 * init.c (__objc_send_load, __objc_destroy_class_tree_node): Mark
1382 (__objc_init_protocols) Fix signed/unsigned warning.
1383 * nil_method.c (nil_method): Mark unused parameters.
1384 * thr.h (objc_thread_callback): Specify void arg.
1385 * sarray.c (sarray_new, sarray_realloc, sarray_free): Fix
1386 signed/unsigned warning.
1387 (sarray_free): Fix formatting.
1388 * selector.c (sel_types_match): Ensure ctype 8-bit safety.
1389 * sendmsg.c (__objc_init_install_dtable) Mark unused parameters.
1391 2002-06-09 Andreas Jaeger <aj@suse.de>
1393 * encoding.c (objc_layout_structure_next_member): Remove unused
1396 2002-05-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1398 * Makefile.in (SHELL): Set to @SHELL@.
1400 (ALL_CFLAGS): Add $(WARN_CFLAGS).
1402 2002-05-16 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
1404 * aclocal.m4: Allow for PWDCMD to override hardcoded pwd.
1405 * configure: Regenerate.
1407 2002-05-08 Alexandre Oliva <aoliva@redhat.com>
1409 * configure.in (ORIGINAL_LD_FOR_MULTILIBS): Preserve LD at
1410 script entry, and set LD to it when configuring multilibs.
1411 * configure: Rebuilt.
1413 2002-04-19 David O'Brien <obrien@FreeBSD.org>
1415 * encoding.c (MAX, MIN, ROUNDING): #undef before defining.
1417 2002-04-09 Hans-Peter Nilsson <hp@bitrange.com>
1420 * objc/objc-api.h (struct objc_protocol_list): Change type of
1421 member count from int to size_t.
1423 2002-02-11 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
1426 * aclocal.m4: Replace with version copied from libstdc++-v3.
1427 * configure.in: Update for changes to aclocal and Makefile.
1428 * configure: Regenerate.
1429 * Makefile.in: Correct install of multilibs and shared libs, use
1430 INSTALL_DATA for include files.
1432 Mon Dec 17 17:02:12 2001 Nicola Pero <nicola@brainstorm.co.uk>
1434 * init.c (__objc_exec_class): Fixed bug in the loop on unclaimed
1435 categories - when an unclaimed category was found, the loop was
1436 doing two steps forward instead of one, so that in certain cases
1437 it was failing to properly load all the categories. (Reported
1438 with fix by Alexander Malmberg <alexander@malmberg.org>).
1440 2001-11-14 Aldy Hernandez <aldyh@redhat.com>
1442 * encoding.c: Add target_flags.
1444 2001-11-07 Aldy Hernandez <aldyh@redhat.com>
1446 * objc/objc-api.h (_C_VECTOR): New.
1448 * encoding.c (VECTOR_TYPE): New.
1450 Mon Oct 29 21:29:21 2001 Nicola Pero <n.pero@mi.flashnet.it>
1452 * class.c: Rewritten the class table to use optimized, lock-free
1453 lookup. This more than doubles the speed of class method
1454 invocations. (class_table_setup), (class_table_insert),
1455 (class_table_replace), (class_table_get_safe),
1456 (class_table_next), (class_table_print),
1457 (class_table_print_histogram): New functions.
1458 (__objc_init_class_tables): Use class_table_setup.
1459 (__objc_add_class_to_hash): Use class_table_get_safe and
1460 class_table_insert. (objc_lookup_class), (objc_get_class): Do not
1461 assert the existence of the table; do not lock the runtime; use
1462 class_table_get_safe. (objc_next_class): Use class_table_next.
1463 (__objc_resolve_class_links): Use class_table_next.
1464 (class_pose_as): Use class_table_replace.
1466 2001-09-10 Ovidiu Predescu <ovidiu@cup.hp.com>
1468 * gc.c: Removed the DEBUG declaration.
1470 Wed Jul 18 12:48:56 2001 Nicola Pero <n.pero@mi.flashnet.it>
1472 * thr.c (objc_mutex_lock): Invoke __objc_thread_id directly,
1473 rather than through objc_thread_id, to save a function call.
1474 (objc_mutex_trylock, objc_mutex_unlock, objc_condition_wait):
1477 Mon Jul 16 12:15:00 2001 Nicola Pero <n.pero@mi.flashnet.it>
1479 * objc/objc-api.h (object_is_class): Fixed - buggy code was trying
1480 to cast an id to a Class, which can not be done. Make the check
1481 by using CLS_ISMETA on the class pointer instead.
1482 (object_is_meta_class): Similar fix.
1484 2001-06-09 Alexandre Oliva <aoliva@redhat.com>, Stephen L Moshier <moshier@mediaone.net>
1486 * configure.in (AC_EXEEXT): Work around in case it expands to
1487 nothing, as in autoconf 2.50.
1488 * acinclude.m4: Likewise.
1489 * configure: Rebuilt.
1491 2001-06-08 Nicola Pero <n.pero@mi.flashnet.it>
1493 * THREADS: Explain that when we compile libobjc inside GCC, we
1494 always use thr-objc.c as a backend, which uses GCC's thread code.
1496 2001-06-06 Richard Frith-Macdonald <rrfm@gnu.org>
1498 * init.c (__objc_send_message_in_list): When setting a new entry
1499 in __objc_load_methods use the method IMP as key, but check to see
1500 if the method is in the hashtable by looking at the IMP also.
1501 Also ... call the method after adding it to the hashtable rather
1502 than before ... thus preventing an obscure possibility of infinite
1503 recursion if a +load method itself loads a subclass.
1505 2001-05-25 Ovidiu Predescu <ovidiu@cup.hp.com>
1507 * init.c (__objc_send_message_in_list): When setting a new entry
1508 in __objc_load_methods use the method name as key, not the method
1509 IMP (reported by Richard Frith-Macdonald <richard@brainstorm.co.uk>).
1511 2001-05-09 Joseph S. Myers <jsm28@cam.ac.uk>
1513 * objc-features.texi: Move to ../gcc/objc.texi.
1515 * Makefile.in: Don't generate documentation from
1518 2001-05-01 Mark Mitchell <mark@codesourcery.com>
1520 * fdl.texi: New file.
1521 * objc-features.texi: Simplify.
1522 * Makefile.in: Adjust accordingly.
1524 2001-04-30 Mark Mitchell <mark@codesourcery.com>
1526 * objc-features.texi: Use the GFDL.
1528 Wed Mar 21 04:44:58 EST 2001 John Wehle (john@feith.com)
1530 * encoding.c (REAL_TYPE): Define.
1532 2001-03-19 David Edelsohn <edelsohn@gnu.org>
1534 * encoding.c (TYPE_MODE): Define.
1536 2001-03-14 Nicola Pero <n.pero@mi.flashnet.it>
1538 * thr.c (objc_thread_add): New function.
1539 (objc_thread_remove): Ditto.
1540 * objc/thr.h: Declare them.
1541 * libobjc.def: Mention them.
1543 2001-02-28 Ovidiu Predescu <ovidiu@cup.hp.com>
1545 * objc-features.texi: Document the @compatibility_alias compiler
1546 directive (description from Nicola Pero <n.pero@mi.flashnet.it>).
1548 Fri Feb 23 18:12:00 2001 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
1550 * sendmsg.c (__objc_forward): Delete strlen() declaration.
1552 2001-02-08 Geoffrey Keating <geoffk@redhat.com>
1554 * configure.in: Don't run AC_PROG_CC_WORKS or AC_EXEEXT, because
1555 we're not interested in the result and they might fail.
1556 * configure: Regenerated.
1558 2001-01-12 Joseph S. Myers <jsm28@cam.ac.uk>
1560 * objc-features.texi: Use @email.
1562 2001-01-12 Joseph S. Myers <jsm28@cam.ac.uk>
1564 * sendmsg.c (__objc_print_dtable_stats): Don't use #ifdef inside
1567 2000-01-11 Richard Earnshaw <rearnsha@arm.com>
1569 * encoding.c (STRUCTURE_SIZE_BOUNDARY): Redefine in a way that
1570 determines the value dynamically.
1572 Wed Jan 3 00:49:10 2001 Ovidiu Predescu <ovidiu@cup.hp.com>
1574 * sendmsg.c: Added __objc_msg_forward, a hook that allows external
1575 libraries to provide a function that returns the real forwarding
1576 function. This can alleviate problems __builtin_apply() and
1577 friends have on various platforms. (Solution suggested by Helge
1580 * objc/objc-api.h: Define __objc_msg_forward.
1582 * sendmsg.c: Define gen_rtx_REG.
1584 2000-12-06 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
1586 * thr-rtems.c: New file. Stub to compile.
1588 2000-09-06 Alexandre Oliva <aoliva@redhat.com>
1590 * configure: Rebuilt with new libtool.m4.
1592 Tue Aug 15 00:38:56 2000 Ovidiu Predescu <ovidiu@cup.hp.com>
1594 * configure.in: Create a config.h file. Check for <sched.h>.
1595 * configure: Regenerate.
1597 * config.h.in: Check for <sched.h>.
1599 2000-08-14 Zack Weinberg <zack@wolery.cumb.org>
1601 * configure: Regenerate after change to ../libtool.m4.
1603 2000-08-14 Andreas Schwab <schwab@suse.de>
1605 * objc-features.texi (Top): Move @menu at end of node.
1607 2000-08-11 Manfred Hollstein <manfredh@redhat.com>
1609 * objc-features.texi: Move @node Top before @menu.
1611 Sun Aug 6 23:27:49 2000 Ovidiu Predescu <ovidiu@cup.hp.com>
1613 * objc-features.texi: Documented the new -fconstant-string-class
1616 Sun Aug 6 22:51:16 2000 Ovidiu Predescu <ovidiu@cup.hp.com>
1618 * thr-posix.c: Integrated Chris Ball's <cball@fmco.com> changes to
1619 improve the Posix thread support for Objective-C.
1621 2000-08-04 Zack Weinberg <zack@wolery.cumb.org>
1623 * aclocal.m4: Replace copy of ../libtool.m4 with
1624 sinclude(../libtool.m4).
1626 Fri Jul 28 08:58:02 2000 Nicola Pero <nicola@brainstorm.co.uk>
1628 * configure.in: Added libtool support; build shared libraries
1629 if --enable-shared was passed on command line.
1630 * Makefile.in: Modified most compilation commands to use libtool.
1631 * aclocal.m4: New symbolic link to the ../libtool.m4, from the
1632 libtool distribution.
1634 Sat Jul 29 00:10:21 2000 Ovidiu Predescu <ovidiu@cup.hp.com>
1636 * sarray.c, Object.m: Removed the explicit prototypes for strlen
1637 and memcpy on 64-bit platforms (Suggested by Rodney Brown
1640 2000-05-12 H.J. Lu (hjl@gnu.org)
1642 * Makefile.in (GTHREAD_FLAGS): New.
1643 (ALL_CFLAGS): Add $(GTHREAD_FLAGS).
1644 (OBJC_THREAD_FILE): Changed to thr-objc.
1646 * configure.in (GTHREAD_FLAGS): New, check and replace it for
1648 (OBJC_THREAD_FILE): Removed.
1652 2000-07-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1654 * objc/hash.h: Include string.h.
1656 2000-04-15 David Edelsohn <edelsohn@gnu.org>
1658 * Object.m (strlen): 64-bit PowerPC is a 64bit platform as well.
1660 2000-04-12 Jakub Jelinek <jakub@redhat.com>
1662 * Object.m (strlen): Provide prototype on all 64bit platforms,
1664 * sarray.c (memcpy): Likewise.
1665 * encoding.c (objc_layout_finish_structure): Don't use
1666 ROUND_TYPE_ALIGN on sparc.
1668 * encoding.c (objc_layout_structure_next_member): Do the whole
1669 procedure even for the first member, so that we get correct
1672 2000-03-29 Zack Weinberg <zack@wolery.cumb.org>
1674 * objc/Protocol.h, objc/objc-list.h: Change #endif labels to
1677 2000-02-23 Zack Weinberg <zack@wolery.cumb.org>
1679 * Makefile.in: Add -DIN_TARGET_LIBS to ALL_CFLAGS.
1681 Thu Sep 23 07:19:12 1999 Chris Ball <cball@fmco.com>
1683 * thr-posix.c (__objc_mutex_deallocate): made deallocate work.
1685 Tue Sep 21 07:47:10 1999 Jeffrey A Law (law@cygnus.com)
1687 * Makefile.in (gc.o, gc_gc.o): Do not pass -fgnu-runtime to
1688 the compiler when building C code.
1690 Fri Aug 6 23:32:29 1999 Daniel Jacobowitz <drow@drow.them.org>
1692 * Makefile.in (FLAGS_TO_PASS): Include prefix, exec_prefix,
1693 libdir, libsubdir and tooldir.
1695 Mon Jun 21 05:40:15 1999 John David Anglin <dave@hiauly1>
1697 * init.c (__objc_force_linking): Make global.
1699 Thu May 20 03:20:59 1999 Jeffrey A Law (law@cygnus.com)
1701 * configure.in (AC_EXEEXT): Remove call.
1702 (compiler_name): Explicitly check with no extension and .exe
1704 * configure: Regenerate.
1706 Sun Apr 25 01:15:34 1999 Mumit Khan <khan@xraylith.wisc.edu>
1708 * Makefile.in (CC1OBJ): Define in terms of CC.
1709 (runtime-info.h): Use.
1711 Fri April 8 08:21:07 1999 Ovidiu Predescu <ovidiu@cup.hp.com>
1713 * objc-features.texi: Updated the URL to Boehm's GC page.
1715 Fri Mar 26 23:41:07 1999 Ovidiu Predescu <ovidiu@cup.hp.com>
1717 * archive.c (__objc_code_char, __objc_write_char): Explicitly specify
1718 the char as being signed (patch from Daniel Jacobowitz
1721 Wed Mar 24 22:41:28 1999 Mumit Khan <khan@xraylith.wisc.edu>
1723 * configure.in (AC_PREREQ): Update to 2.13.
1724 (AC_EXEEXT): Call to find possible file extension.
1725 (compiler_name): Use.
1726 * configure: Regenerate.
1728 Wed Jan 27 02:31:01 1999 Jeffrey A Law (law@cygnus.com)
1730 * Makefile.in (ALL_CFLAGS): Add -DIN_GCC.
1732 Tue Jan 5 01:38:53 1999 Jeffrey A Law (law@cygnus.com)
1734 * configure.in (thread_file): Correct and simplify code to find
1736 * configure: Rebuilt.
1738 1998-11-26 Manfred Hollstein <manfred@s-direktnet.de>
1740 * configure.in (compiler_name): Add check to detect if this
1741 language's compiler has been built.
1742 * configure: Regenerate.
1744 Mon Nov 23 16:50:28 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1746 * configure.in: Use AC_PREREQ(2.12.1).
1748 Thu Nov 19 20:33:37 1998 Jeffrey A Law (law@cygnus.com)
1750 * Makefile.in (runtime-info.h): Avoid GNU make extensions.
1752 Sun Nov 8 17:46:14 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1754 * Makefile.in (INCLUDES): Add -I$(srcdir)/$(MULTISRCTOP)../include.
1756 Thu Oct 22 14:34:06 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
1758 * configure.in: Use AC_CONFIG_AUX_DIR($topsrcdir).
1760 Sat Oct 17 05:21:31 1998 Ovidiu Predescu <ovidiu@slip.net>
1762 * objc-features.texi (Top): Changed the email address.
1763 * objc-features.texi (Garbage Collection): Use @uref instead of @url.
1765 Mon Oct 11 21:25:27 1998 Ovidiu Predescu <ovidiu@slip.net>
1767 * encoding.c: Redefine get_inner_array_type to get the first entry
1770 Thu Oct 8 12:21:14 1998 Richard Frith-Macdonald <richard@brainstorm.co.uk>
1772 * encoding.c (objc_skip_type_qualifiers): Handle _C_BYREF.
1773 (objc_get_type_qualifiers): Similarly.
1774 * objc/encoding.h (_C_BYREF): Define.
1777 1998-10-07 David S. Miller <davem@pierdol.cobaltmicro.com>
1779 * objc/sarray.h: Make boffset be an unsigned long when sparc so it
1780 works out on 64-bit systems.
1782 Tue Oct 6 20:32:06 1998 Alexandre Oliva <oliva@dcc.unicamp.br>
1784 * Makefile.in (INCLUDES): Make it multilib-friendly.
1786 Fri Oct 2 07:12:14 1998 H.J. Lu (hjl@gnu.org)
1788 * Makefile.in (INCLUDES): Add -I$(srcdir)/../gcc.
1790 Thu Oct 1 22:33:03 1998 Robert Lipe <robertl@dgii.com>
1791 Jeffrey A Law (law@cygnus.com)
1793 * Makefile.in (INCLUDES): Reference gcc via $MULTIBUILDTOP.
1794 (FLAGS_TO_PASS): Added.
1795 (runtime-info.h): Reference cc1ibj via $MULTIBUILDTOP.
1797 * archive.c: Change config.h to tconfig.h.
1799 * configure.in: Find gcc's object directory even for multilibs.
1801 Wed Sep 30 18:17:17 1998 Robert Lipe <robertl@dgii.com>
1803 * configure.in: Escape ^ in grep string.
1804 * configure: Rebuilt.
1806 Wed Sep 30 09:14:52 1998 Jeffrey A Law (law@cygnus.com)
1808 * All .h files pushed down into the objc/ subdirectory.
1809 * Makefile.in (copy_headers): Corresponding changes.
1810 * configure.in (AC_INIT): Corresponding changes.
1811 * configure: Rebuilt.
1813 1998-09-30 Ben Elliston <bje@cygnus.com>
1814 Jeff Law <law@cygnus.com>
1816 * Makefile.in: Rewrite.
1818 * configure.in: Likewise.
1820 * configure: Regenerate.
1822 * All .c files. Remove "objc" prefix when including objc header
1823 files. Include tconfig.h, not ../tconfig.h.
1825 Mon Sep 21 23:27:10 1998 Ovidiu Predescu <ovidiu@slip.net>
1827 * encoding.c (TREE_TYPE, ARRAY_TYPE): Define.
1828 (get_inner_array_type): Define.
1830 1998-09-21 Ben Elliston <bje@cygnus.com>
1832 * New directory. Moved files from ../gcc/objc.