1 2004-09-16 Andrew Pinski <pinskia@physics.uc.edu>
4 * exception.c: Include config.h
5 (objc_exception_throw): Change _GLIBCXX_SJLJ_EXCEPTIONS to
7 * configure.ac: Find out what exception handling code we use.
8 * configure: Regenerate.
9 * config.h.in: New file, regenerate.
11 2004-09-16 Andrew Pinski <apinski@apple.com>
13 * encoding.c (ALTIVEC_VECTOR_MODE): Define a bogus macro.
15 2004-08-28 Nathanael Nerode <neroden@gcc.gnu.org>
17 * configure.ac: Switch from _GCC_TOPLEV_NONCANONICAL_TARGET to
18 ACX_NONCANONICAL_TARGET.
19 * configure: Regenerate.
21 2004-08-13 Ziemowit Laski <zlaski@apple.com>
23 * objc/sarray.h: Hoist include of assert.h near the top of file,
24 and mark the remainder of the file 'extern "C"'.
26 2004-08-13 Andrew Pinski <pinskia@physics.uc.edu>
28 * objc/Object.h: Move includes out of extern "C" blocks.
29 * objc/encoding.h: Likewise.
30 * objc/hash.h: Likewise.
31 * objc/objc-api.h: Likewise.
32 * objc/runtime.h: Likewise.
33 * objc/sarray.h: Likewise.
34 * objc/typedstream.h: Likewise.
36 2004-08-12 Ziemowit Laski <zlaski@apple.com>
38 * objc/NXConstStr.h: Update copyright date; bracket with
39 'extern "C"' for C++ use; make include syntax consistent
40 by using <...> instead of "..."; hoist <objc/...> includes
41 above the 'extern "C"' block.
42 * objc/Object.h: Likewise.
43 * objc/Protocol.h: Likewise.
44 * objc/encoding.h: Likewise.
45 * objc/hash.h: Likewise.
46 * objc/runtime.h: Likewise.
47 * objc/sarray.h: Likewise.
48 * objc/thr.h: Likewise.
49 * objc/typedstream.h: Likewise.
50 * objc/objc-api.h: Add 'extern "C"' block for C++ use.
51 (objc_static_instances): For C++ case, do away with
53 (objc_method): Hoist definition to file scope.
54 (_objc_load_callback, _objc_object_alloc, class_get_class_method,
55 class_get_instance_method, class_create_instance,
56 class_get_class_name, class_get_instance_size,
57 class_get_meta_class, class_get_super_class, class_get_version,
58 class_is_class, class_is_meta_class, class_set_version,
59 class_get_gc_object_type, class_ivar_set_gcinvisible,
60 get_imp): Rename 'class' parameter to '_class'.
61 * objc/objc-list.h: Add 'extern "C"' block for C++ use.
62 * objc/objc.h: Update copyright date.
63 (arglist_t): Provide a union tag.
65 2004-07-22 Andrew Pinski <pinskia@physics.uc.edu>
67 * thr.c (__objc_thread_detach_function): Do not mark as volatile
68 but instead use the attribute noreturn.
70 2004-06-28 Zack Weinberg <zack@codesourcery.com>
72 * encoding.c: Rename target_flags with a #define to avoid
73 conflict with a prior declaration.
75 2004-06-24 Andrew Pinski <apinski@apple.com>
77 * objc/encoding.h: Wrap the functions with extern "C" for C++
79 * objc/hash.h: Likewise.
80 * objc/objc-api.h: Likewise.
81 * objc/objc-list.h: Likewise.
82 * objc/runtime.h: Likewise.
83 * objc/sarray.h: Likewise.
84 * objc/thr.h: Likewise.
85 * objc/typedstream.h: Likewise.
88 2004-06-21 Nick Clifton <nickc@redhat.com>
90 * encoding.c (BITS_PER_UNIT): Define if a definition is not
93 2004-06-20 Alexander Malmberg <alexander@malmberg.org>
95 * Makefile.in (exception.lo): Remove $(OBJC_GCFLAGS).
96 (exception_gc.lo): New.
97 (OBJS_GC): Add exception_gc.lo.
99 2004-06-17 Richard Henderson <rth@redhat.com>
101 * exception.c: New file.
102 * Makefile.in (exception.lo): New.
105 2004-06-14 Andrew Pinski <pinskia@physics.uc.edu>
107 * linking.m (_objcInit): New empty function
110 2004-06-11 Andrew Pinski <pinskia@physics.uc.edu>
112 * configure.ac: Support --enable-shared=libobjc.
113 * configure: Regenerate.
116 * configure.ac: Do not disable shared by default.
117 * configure: Regenerate.
119 2004-06-03 Nicola Pero <n.pero@mi.flashnet.it>
121 * Protocol.m ([-isEqual:]): Small optimizations returning
122 immediately if the argument is equal to self, and accessing
123 the argument's name directly if it's a protocol.
125 2004-06-03 David Ayers <d.ayers@inode.at>
127 * Protocol.m ([-isEqual:]): Test the class of the argument.
129 2004-05-25 Andrew Pinski <pinskia@physics.uc.edu>
131 * configure.ac (includedir): Rename to ...
133 * Makefile.in: s/includedir/includedirname/.
136 * configure.ac (includedir): Set to "include"
138 (libext) Set to empty except for Darwin.
139 * configure: Regenerate
140 * Makefile.in: s/libobjc.la/libobjc$(libext).la/g.
141 s/include/$(includedir)/g.
143 2004-05-25 Daniel Jacobowitz <drow@false.org>
145 * Makefile.in: Add .NOEXPORT.
147 2004-05-25 Andrew Pinski <pinskia@physics.uc.edu>
149 Merge from the libobjc-branch
150 2004-02-09 Andrew Pinski <pinskia@physics.uc.edu>
152 * Makefile.in (OBJC_H): Change objc-deps.h to objc-decls.h.
154 2004-02-03 Andrew Pinski <pinskia@physics.uc.edu>
156 * Makefile.in (OBJC_H): Add objc-deps.h.
158 2004-01-27 Nicola Pero <n.pero@mi.flashnet.it>
160 * Protocol.m ([-conformsTo:]): If the argument is nil, return NO.
161 ([-hash], [-isEqual:]): New methods.
163 2004-01-27 Richard Frith-Macdonald <rfm@gnu.org>
165 * sarray.c (sarray_free): Add a better comment.
167 2004-01-27 Adam Fedor <fedor@gnu.org>
169 * hash.c (hash_add): Cast cachep to int.
170 * selector.c (__sel_register_typed_name): Cast
171 soffset_decode to int.
173 2004-01-27 Alexander Malmberg <alexander@malmberg.org>
175 * selector.c: Rename register_selectors_from_list to
176 __objc_register_selectors_from_list. Update caller.
177 (__objc_register_selectors_from_list): Lock __objc_runtime_mutex
178 while registering selectors. Use __sel_register_typed_name instead
179 of sel_register_typed_name. Check for NULL method_name:s.
180 (pool_alloc_selector): New function.
181 (__sel_register_typed_name): Use pool_alloc_selector to allocate
183 * sendmsg.c (class_add_method_list): Use
184 __objc_register_selectors_from_list.
185 * objc/runtime.h: Add __objc_register_selectors_from_list.
187 2004-01-25 Adam Fedor <fedor@gnu.org>
188 Nicola Pero <n.pero@mi.flashnet.it>
189 Andrew Pinski <pinskia@physics.uc.edu>
191 * objc/objc-decls.h: New file.
192 * objc/objc-api.h (_objc_lookup_class): Mark as export.
193 (_objc_load_callback): Likewise.
194 (_objc_object_alloc): Likewise.
195 (_objc_object_copy): Likewise.
196 (_objc_object_dispose): Likewise.
198 2004-01-25 Andrew Pinski <pinskia@physics.uc.edu>
200 * archive.c: s/__inline__/inline
201 * sendmsg.c: Likewise.
203 * encoding.c: Remove FIXME about the warning
204 about unused variable.
205 * sendmsg.c: Add a FIXME comment saying that
206 this should be using libffi.
208 * Makefile.in (LIBTOOL): Use @LIBTOOL@ now as it works.
211 2004-05-13 Andrew Pinski <pinskia@physics.uc.edu>
213 * archive.c (objc_read_class): Initialize class_name.
214 (objc_read_selector): Initialize selector_name.
216 2004-05-09 Richard Sandiford <rsandifo@redhat.com>
218 * Makefile.in (toolexecdir): Remove trailing space.
220 2004-04-15 Nathanael Nerode <neroden@gcc.gnu.org>
223 * configure.ac: De-precious CC so multilibs work.
224 * configure: Regenerate.
226 2004-04-14 Nathanael Nerode <neroden@gcc.gnu.org>
228 * configure.ac: Restore toolexecdir.
229 * Makefile.in: Restore toolexecdir.
230 * configure: Regenerate.
232 2004-04-09 Nathanael Nerode <neroden@gcc.gnu.org>
234 * configure.ac: Remove (unused) glibcpp_prefixdir.
235 * configure: Regenerate.
237 * configure.in: Rename to configure.ac.
238 * Makefile.in: Update to match.
240 * Makefile.in: Remove toolexecdir, glibcpp_toolexecdir (unused).
241 Replace glibcpp_toolexeclibdir with toolexeclibdir.
242 * configure.in: Remove glibcpp_toolexecdir (unused).
243 Replace glibcpp_toolexeclibdir with toolexeclibdir. Don't generate
244 config.h or stamp-h (unused). Move one comment to the right place.
245 * configure: Regenerate.
246 * config.h.in: Remove (unused).
248 * config.h.in: Regenerate with autoheader.
250 * Makefile.in: Remove (unused) gcc_version_trigger.
251 * configure.in: Remove (unused) glibcpp_builddir. Don't AC_SUBST
253 * configure: Regenerate.
255 * configure.in: Switch to modern style for AC_INIT, AC_OUTPUT.
256 Sort file into sections. Remove dnl where appropriate. Fix
258 * configure: Regenerate.
260 * configure.in: Replace old AC_PROG_CC hack with new one.
261 Define toplevel_srcdir in terms of srcdir, not top_srcdir (there
262 are no subdirectory output files, so this is fine). Change prereq
264 * aclocal.m4: Include ../config/no-executables.m4.
265 * configure: Regenerate with autoconf 2.59.
267 * configure.in: Improve comments on gthread_cflags. Improve m4
268 quotation, and replace 'if test' with 'case', for --enable-objc-gc.
269 * configure: Regenerate.
271 * configure.in: Move PACKAGE and VERSION settings up top. Remove
272 unused call to AC_PROG_LN_S. Default RANLIB to ':'. Remove
273 redundant checks for values of RANLIB, AR, INSTALL.
274 * configure: Regenerate.
276 * configure.in: Clean up handling of
277 --enable-version-specific-runtime-libs and related variables;
278 replace 'if test' with 'case' where reasonable. Fix comments.
279 Remove useless libstdcxx_interface.
280 * configure: Regenerate.
282 * configure.in: Use _GCC_TOPLEV_NONCANONICAL_TARGET.
283 Replace uses of target_alias with target_noncanonical.
284 * aclocal.m4: Include ../config/acx.m4.
285 * configure: Regenerate.
286 * Makefile.in: Replace uses of target_alias with target_noncanonical.
287 Fix copyright statement.
289 * configure.in: Hand-inline bulky, confusing macros from
290 aclocal.m4. Replace references to "GNU Objective C" with "GCC".
291 Update copyright notice. Remove stuff for automake, which isn't
292 used in this directory. Remove emacs local variables.
293 * aclocal.m4: Remove hand-inlined macros. Update copyright notice.
294 * configure: Regenerate.
296 2004-03-16 Manfred Hollstein <mh@suse.com>
298 * Makefile.in, configure.in, configure: Update copyright years.
300 2004-03-15 Manfred Hollstein <mh@suse.com>
302 * Makefile.in (LIBOBJC_VERSION, LIBOBJC_GC_VERSION): Use
303 definition from configure.in.
304 * configure.in (PACKAGE): Add definition.
305 (VERSION): Add definition; substitute it in output files.
306 * configure: Re-generate.
308 2004-03-05 Ziemowit Laski <zlaski@apple.com>
310 * objc/hash.h (hash_string, compare_strings):
311 Add type-casts to make Objective-C++ happy.
312 * objc/typedstream.h (objc_get_stream_class_version):
313 Rename parameter from 'class' to 'class_name' to make
316 2004-03-01 Michael Matz <matz@suse.de>
318 * Makefile.in (ALL_CFLAGS): Add -fno-strict-aliasing.
320 2004-02-06 Ziemowit Laski <zlaski@apple.com>
322 * objc/objc-api.h (objc_super): The 'class' field shall
323 be named 'super_class' #ifdef __cplusplus.
325 2004-01-17 Andrew Pinski <pinskia@physics.uc.edu>
328 * encoding.c (rs6000_special_round_type_align): Define.
330 2004-01-14 Adam Fedor <fedor@gnu.org>
333 * selector.c (__objc_register_instance_methods_to_class): Free
334 new_list if not used.
336 2004-01-09 Andrew Ruder <aeruder@ksu.edu>
339 * sarray.c (sarray_free): Free array->is_copy_of latter.
341 2003-12-01 Zack Weinberg <zack@codesourcery.com>
344 * Protocol.m (descriptionForInstanceMethod): Don't dereference
345 instance_methods if it's NULL.
346 (descriptionForClassMethod): Likewise for class_methods.
348 2003-10-24 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
350 * Makefile.in (runtime-info.h): Remove -Wp.
352 2003-10-21 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
354 * Makefile.in (CC1OBJ): Remove.
355 (runtime-info.h): Invoke $(CC) so all MULTIFLAGS are handled
357 Use .m extension for temporary file.
358 Remove assembler temp file.
360 2003-10-20 Joseph S. Myers <jsm@polyomino.org.uk>
362 * objc/hash.h (hash_string): Don't use a cast as an lvalue.
364 2003-10-17 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
366 * Makefile.in (runtime-info.h): Use MULTIFLAGS.
368 2003-09-09 Alan Modra <amodra@bigpond.net.au>
370 * configure: Regenerate.
372 2003-08-27 Alexander Malmberg <alexander@malmberg.org>
374 * Makefile.in, aclocal.m4: Update to $(libdir)/gcc/ instead of
375 (libdir)/gcc-lib/ when installing.
376 * configure: Regenerate.
378 Thu Jul 10 10:27:43 2003 Nicola Pero <n.pero@mi.flashnet.it>
381 * sendmsg.c (get_imp): Fixed rare threading problem.
382 (__objc_responds_to): Similar fixes.
383 (objc_msg_lookup): Similar fixes.
384 (__objc_init_install_dtable): Lock the runtime before checking if the
387 2003-05-23 Nathanael Nerode <neroden@gcc.gnu.org>
389 * hash.c, init.c, libobjc.def, libobjc_entry.c, linking.m,
390 makefile.dos, misc.c, nil_method.c, objects.c, sarray.c,
391 selector.c, sendmsg.c, thr-dce.c, thr-decosf1.c, thr-irix.c,
392 thr-mach.c, thr-objc.c, thr-os2.c, thr-posix.c, thr-pthreads.c,
393 thr-rtems.c, thr-single.c, thr-solaris.c, thr-vxworks.c,
394 thr-win32.c, thr.c: Replace "GNU CC" with "GCC".
395 * Makefile.in, NXConstStr.m, Object.m, Protocol.m, archive.c,
396 class.c, encoding.c, gc.c, objc/NXConstStr.h, objc/Object.h,
397 objc/Protocol.h, objc/encoding.h, objc/hash.h, objc/objc-api.h,
398 objc/objc-list.h, objc/objc.h, ocjc/runtime.h, objc/sarray.h,
399 objc/thr.h, objc/typedstream.h: Replace "GNU CC" with "GCC".
401 Tue May 13 14:56:03 2003 Richard Frith-Macdonald <rfm@gnu.org>
402 Nicola Pero <n.pero@mi.flashnet.it>
405 * init.c (class_superclass_of_class): New function.
406 (create_tree_of_subclasses_inherited_from): Use it.
407 (__objc_tree_insert_class): Likewise.
408 (class_is_subclass_of_class): Likewise.
410 2003-04-11 David Chad <davidc@freebsd.org>
411 Loren J. Rittle <ljrittle@acm.org>
414 * objc/hash.h (hash_string): Constify correctly.
415 (compare_ptrs): Use direct compare.
416 * objc/objc-list.h (list_nth): Rename index to indx to avoid shadow.
417 * objc/sarray.h: Global rename index to indx to avoid shadow.
419 2003-03-12 Andreas Schwab <schwab@suse.de>
421 * aclocal.m4 (GLIBCPP_EXPORT_INSTALL_INFO): Avoid trailing /. in
422 glibcpp_toolexeclibdir.
423 * configure: Rebuilt.
425 2003-02-20 Alexandre Oliva <aoliva@redhat.com>
427 * configure.in: Propagate ORIGINAL_LD_FOR_MULTILIBS to
429 * configure: Rebuilt.
431 2003-01-27 Alexandre Oliva <aoliva@redhat.com>
433 * aclocal.m4 (glibcpp_toolexeclibdir): Instead of
434 $(MULTISUBDIR), use `$CC -print-multi-os-directory`, unless
435 version_specific_libs is enabled.
436 * configure: Rebuilt.
438 2003-01-09 Christian Cornelssen <ccorn@cs.tu-berlin.de>
440 * Makefile.in (FLAGS_TO_PASS): Also pass DESTDIR.
441 (install-libs, install-headers): Prepend $(DESTDIR) to
442 destination paths in all (un)installation commands.
444 2002-12-02 Zack Weinberg <zack@codesourcery.com>
446 * thr-objc.c: Include coretypes.h and tm.h.
448 2002-12-01 Zack Weinberg <zack@codesourcery.com>
450 * encoding.c, sendmsg.c: Include coretypes.h and tm.h.
452 2002-11-26 Nathanael Nerode <neroden@gcc.gnu.org>
454 * configure.in: Remove skip-this-dir support.
455 * configure: Regenerate.
457 2002-09-22 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
459 * Makefile.in (all): Fix multilib parallel build.
461 Thu Sep 12 12:44:37 2002 Nicola Pero <n.pero@mi.flashnet.it>
463 * sendmsg.c (nil_method): Declare not to take a variable number of
465 (objc_msg_lookup): Cast nil_method to IMP before returning it.
466 (objc_msg_lookup_super): The same.
468 2002-09-10 Jan Hubicka <jh@suse.cz>
470 * nil_method.c (nil_method): No longer defined with variable
473 2002-07-02 Rodney Brown <rbrown64@csc.com.au>
475 * objc/encoding.h: Fix formatting.
476 * objc/hash.h: Likewise.
477 * objc/objc-api.h: Likewise.
478 * objc/runtime.h: Likewise.
479 * objc/thr.h: Likewise.
480 * archive.c: Likewise.
482 * encoding.c: Likewise.
487 * nil_method.c: Likewise.
488 * objects.c: Likewise.
489 * sarray.c: Likewise.
490 * selector.c: Likewise.
491 * sendmsg.c: Likewise.
492 * thr-mach.c: Likewise.
495 2002-06-25 DJ Delorie <dj@redhat.com>
497 * aclocal.m4 (GLIBCPP_CONFIGURE): Split out
498 GLIBCPP_TOPREL_CONFIGURE.
499 * configure.in: Call it before AC_CANONICAL_SYSTEM.
500 * configure: Regenerate.
502 2002-06-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
504 * Object.m (forward, read, write): Fix unused parameter warnings.
505 * encoding.c: Include <stdlib.h>.
506 (target_flags): Mark with attribute unused.
508 * runtime.h (__objc_selector_max_index): Change to unsigned int.
509 (__objc_generate_gc_type_description): Prototype.
510 * selector.c (__objc_selector_max_index): Change to unsigned int.
512 Mon Jun 17 18:37:42 2002 Nicola Pero <n.pero@mi.flashnet.it>
514 * sendmsg.c (__objc_get_forward_imp): Fix warning by making sure
515 we always have a return value: if __objc_msg_forward does not
516 supply a forwarding implementation, return the default
517 __builtin_apply based one.
519 2002-06-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
521 * Object.m: Fix signed/unsigned warning.
522 * Protocol.m: Likewise.
523 * archive.c: Always include stdlib.h.
524 (objc_read_short, objc_read_unsigned_short, objc_read_int,
525 objc_read_long, __objc_read_nbyte_uint, __objc_read_nbyte_ulong):
526 Fix signed/unsigned warning.
527 (objc_write_type, objc_read_type, objc_write_types,
528 objc_read_types): Ensure ctype 8-bit safety.
529 (__objc_no_write, __objc_no_read): Mark unused parameters.
530 * class.c (class_table_setup): Specify void arg.
531 * encoding.c (atoi, objc_sizeof_type, objc_alignof_type,
532 objc_skip_typespec, objc_skip_offset,
533 objc_layout_structure_next_member): Ensure ctype 8-bit safety.
534 (objc_layout_structure_next_member): Ensure variables are
536 * gc.c (__objc_generate_gc_type_description,
537 class_ivar_set_gcinvisible): Mark unused parameters.
538 * init.c (__objc_send_load, __objc_destroy_class_tree_node): Mark
540 (__objc_init_protocols) Fix signed/unsigned warning.
541 * nil_method.c (nil_method): Mark unused parameters.
542 * thr.h (objc_thread_callback): Specify void arg.
543 * sarray.c (sarray_new, sarray_realloc, sarray_free): Fix
544 signed/unsigned warning.
545 (sarray_free): Fix formatting.
546 * selector.c (sel_types_match): Ensure ctype 8-bit safety.
547 * sendmsg.c (__objc_init_install_dtable) Mark unused parameters.
549 2002-06-09 Andreas Jaeger <aj@suse.de>
551 * encoding.c (objc_layout_structure_next_member): Remove unused
554 2002-05-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
556 * Makefile.in (SHELL): Set to @SHELL@.
558 (ALL_CFLAGS): Add $(WARN_CFLAGS).
560 2002-05-16 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
562 * aclocal.m4: Allow for PWDCMD to override hardcoded pwd.
563 * configure: Regenerate.
565 2002-05-08 Alexandre Oliva <aoliva@redhat.com>
567 * configure.in (ORIGINAL_LD_FOR_MULTILIBS): Preserve LD at
568 script entry, and set LD to it when configuring multilibs.
569 * configure: Rebuilt.
571 2002-04-19 David O'Brien <obrien@FreeBSD.org>
573 * encoding.c (MAX, MIN, ROUNDING): #undef before defining.
575 2002-04-09 Hans-Peter Nilsson <hp@bitrange.com>
578 * objc/objc-api.h (struct objc_protocol_list): Change type of
579 member count from int to size_t.
581 2002-02-11 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
584 * aclocal.m4: Replace with version copied from libstdc++-v3.
585 * configure.in: Update for changes to aclocal and Makefile.
586 * configure: Regenerate.
587 * Makefile.in: Correct install of multilibs and shared libs, use
588 INSTALL_DATA for include files.
590 Mon Dec 17 17:02:12 2001 Nicola Pero <nicola@brainstorm.co.uk>
592 * init.c (__objc_exec_class): Fixed bug in the loop on unclaimed
593 categories - when an unclaimed category was found, the loop was
594 doing two steps forward instead of one, so that in certain cases
595 it was failing to properly load all the categories. (Reported
596 with fix by Alexander Malmberg <alexander@malmberg.org>).
598 2001-11-14 Aldy Hernandez <aldyh@redhat.com>
600 * encoding.c: Add target_flags.
602 2001-11-07 Aldy Hernandez <aldyh@redhat.com>
604 * objc/objc-api.h (_C_VECTOR): New.
606 * encoding.c (VECTOR_TYPE): New.
608 Mon Oct 29 21:29:21 2001 Nicola Pero <n.pero@mi.flashnet.it>
610 * class.c: Rewritten the class table to use optimized, lock-free
611 lookup. This more than doubles the speed of class method
612 invocations. (class_table_setup), (class_table_insert),
613 (class_table_replace), (class_table_get_safe),
614 (class_table_next), (class_table_print),
615 (class_table_print_histogram): New functions.
616 (__objc_init_class_tables): Use class_table_setup.
617 (__objc_add_class_to_hash): Use class_table_get_safe and
618 class_table_insert. (objc_lookup_class), (objc_get_class): Do not
619 assert the existence of the table; do not lock the runtime; use
620 class_table_get_safe. (objc_next_class): Use class_table_next.
621 (__objc_resolve_class_links): Use class_table_next.
622 (class_pose_as): Use class_table_replace.
624 2001-09-10 Ovidiu Predescu <ovidiu@cup.hp.com>
626 * gc.c: Removed the DEBUG declaration.
628 Wed Jul 18 12:48:56 2001 Nicola Pero <n.pero@mi.flashnet.it>
630 * thr.c (objc_mutex_lock): Invoke __objc_thread_id directly,
631 rather than through objc_thread_id, to save a function call.
632 (objc_mutex_trylock, objc_mutex_unlock, objc_condition_wait):
635 Mon Jul 16 12:15:00 2001 Nicola Pero <n.pero@mi.flashnet.it>
637 * objc/objc-api.h (object_is_class): Fixed - buggy code was trying
638 to cast an id to a Class, which can not be done. Make the check
639 by using CLS_ISMETA on the class pointer instead.
640 (object_is_meta_class): Similar fix.
642 2001-06-09 Alexandre Oliva <aoliva@redhat.com>, Stephen L Moshier <moshier@mediaone.net>
644 * configure.in (AC_EXEEXT): Work around in case it expands to
645 nothing, as in autoconf 2.50.
646 * acinclude.m4: Likewise.
647 * configure: Rebuilt.
649 2001-06-08 Nicola Pero <n.pero@mi.flashnet.it>
651 * THREADS: Explain that when we compile libobjc inside GCC, we
652 always use thr-objc.c as a backend, which uses GCC's thread code.
654 2001-06-06 Richard Frith-Macdonald <rrfm@gnu.org>
656 * init.c (__objc_send_message_in_list): When setting a new entry
657 in __objc_load_methods use the method IMP as key, but check to see
658 if the method is in the hashtable by looking at the IMP also.
659 Also ... call the method after adding it to the hashtable rather
660 than before ... thus preventing an obscure possibility of infinite
661 recursion if a +load method itself loads a subclass.
663 2001-05-25 Ovidiu Predescu <ovidiu@cup.hp.com>
665 * init.c (__objc_send_message_in_list): When setting a new entry
666 in __objc_load_methods use the method name as key, not the method
667 IMP (reported by Richard Frith-Macdonald <richard@brainstorm.co.uk>).
669 2001-05-09 Joseph S. Myers <jsm28@cam.ac.uk>
671 * objc-features.texi: Move to ../gcc/objc.texi.
673 * Makefile.in: Don't generate documentation from
676 2001-05-01 Mark Mitchell <mark@codesourcery.com>
678 * fdl.texi: New file.
679 * objc-features.texi: Simplify.
680 * Makefile.in: Adjust accordingly.
682 2001-04-30 Mark Mitchell <mark@codesourcery.com>
684 * objc-features.texi: Use the GFDL.
686 Wed Mar 21 04:44:58 EST 2001 John Wehle (john@feith.com)
688 * encoding.c (REAL_TYPE): Define.
690 2001-03-19 David Edelsohn <edelsohn@gnu.org>
692 * encoding.c (TYPE_MODE): Define.
694 2001-03-14 Nicola Pero <n.pero@mi.flashnet.it>
696 * thr.c (objc_thread_add): New function.
697 (objc_thread_remove): Ditto.
698 * objc/thr.h: Declare them.
699 * libobjc.def: Mention them.
701 2001-02-28 Ovidiu Predescu <ovidiu@cup.hp.com>
703 * objc-features.texi: Document the @compatibility_alias compiler
704 directive (description from Nicola Pero <n.pero@mi.flashnet.it>).
706 Fri Feb 23 18:12:00 2001 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
708 * sendmsg.c (__objc_forward): Delete strlen() declaration.
710 2001-02-08 Geoffrey Keating <geoffk@redhat.com>
712 * configure.in: Don't run AC_PROG_CC_WORKS or AC_EXEEXT, because
713 we're not interested in the result and they might fail.
714 * configure: Regenerated.
716 2001-01-12 Joseph S. Myers <jsm28@cam.ac.uk>
718 * objc-features.texi: Use @email.
720 2001-01-12 Joseph S. Myers <jsm28@cam.ac.uk>
722 * sendmsg.c (__objc_print_dtable_stats): Don't use #ifdef inside
725 2000-01-11 Richard Earnshaw <rearnsha@arm.com>
727 * encoding.c (STRUCTURE_SIZE_BOUNDARY): Redefine in a way that
728 determines the value dynamically.
730 Wed Jan 3 00:49:10 2001 Ovidiu Predescu <ovidiu@cup.hp.com>
732 * sendmsg.c: Added __objc_msg_forward, a hook that allows external
733 libraries to provide a function that returns the real forwarding
734 function. This can alleviate problems __builtin_apply() and
735 friends have on various platforms. (Solution suggested by Helge
738 * objc/objc-api.h: Define __objc_msg_forward.
740 * sendmsg.c: Define gen_rtx_REG.
742 2000-12-06 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
744 * thr-rtems.c: New file. Stub to compile.
746 2000-09-06 Alexandre Oliva <aoliva@redhat.com>
748 * configure: Rebuilt with new libtool.m4.
750 Tue Aug 15 00:38:56 2000 Ovidiu Predescu <ovidiu@cup.hp.com>
752 * configure.in: Create a config.h file. Check for <sched.h>.
753 * configure: Regenerate.
755 * config.h.in: Check for <sched.h>.
757 2000-08-14 Zack Weinberg <zack@wolery.cumb.org>
759 * configure: Regenerate after change to ../libtool.m4.
761 2000-08-14 Andreas Schwab <schwab@suse.de>
763 * objc-features.texi (Top): Move @menu at end of node.
765 2000-08-11 Manfred Hollstein <manfredh@redhat.com>
767 * objc-features.texi: Move @node Top before @menu.
769 Sun Aug 6 23:27:49 2000 Ovidiu Predescu <ovidiu@cup.hp.com>
771 * objc-features.texi: Documented the new -fconstant-string-class
774 Sun Aug 6 22:51:16 2000 Ovidiu Predescu <ovidiu@cup.hp.com>
776 * thr-posix.c: Integrated Chris Ball's <cball@fmco.com> changes to
777 improve the Posix thread support for Objective-C.
779 2000-08-04 Zack Weinberg <zack@wolery.cumb.org>
781 * aclocal.m4: Replace copy of ../libtool.m4 with
782 sinclude(../libtool.m4).
784 Fri Jul 28 08:58:02 2000 Nicola Pero <nicola@brainstorm.co.uk>
786 * configure.in: Added libtool support; build shared libraries
787 if --enable-shared was passed on command line.
788 * Makefile.in: Modified most compilation commands to use libtool.
789 * aclocal.m4: New symbolic link to the ../libtool.m4, from the
790 libtool distribution.
792 Sat Jul 29 00:10:21 2000 Ovidiu Predescu <ovidiu@cup.hp.com>
794 * sarray.c, Object.m: Removed the explicit prototypes for strlen
795 and memcpy on 64-bit platforms (Suggested by Rodney Brown
798 2000-05-12 H.J. Lu (hjl@gnu.org)
800 * Makefile.in (GTHREAD_FLAGS): New.
801 (ALL_CFLAGS): Add $(GTHREAD_FLAGS).
802 (OBJC_THREAD_FILE): Changed to thr-objc.
804 * configure.in (GTHREAD_FLAGS): New, check and replace it for
806 (OBJC_THREAD_FILE): Removed.
810 2000-07-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
812 * objc/hash.h: Include string.h.
814 2000-04-15 David Edelsohn <edelsohn@gnu.org>
816 * Object.m (strlen): 64-bit PowerPC is a 64bit platform as well.
818 2000-04-12 Jakub Jelinek <jakub@redhat.com>
820 * Object.m (strlen): Provide prototype on all 64bit platforms,
822 * sarray.c (memcpy): Likewise.
823 * encoding.c (objc_layout_finish_structure): Don't use
824 ROUND_TYPE_ALIGN on sparc.
826 * encoding.c (objc_layout_structure_next_member): Do the whole
827 procedure even for the first member, so that we get correct
830 2000-03-29 Zack Weinberg <zack@wolery.cumb.org>
832 * objc/Protocol.h, objc/objc-list.h: Change #endif labels to
835 2000-02-23 Zack Weinberg <zack@wolery.cumb.org>
837 * Makefile.in: Add -DIN_TARGET_LIBS to ALL_CFLAGS.
839 Thu Sep 23 07:19:12 1999 Chris Ball <cball@fmco.com>
841 * thr-posix.c (__objc_mutex_deallocate): made deallocate work.
843 Tue Sep 21 07:47:10 1999 Jeffrey A Law (law@cygnus.com)
845 * Makefile.in (gc.o, gc_gc.o): Do not pass -fgnu-runtime to
846 the compiler when building C code.
848 Fri Aug 6 23:32:29 1999 Daniel Jacobowitz <drow@drow.them.org>
850 * Makefile.in (FLAGS_TO_PASS): Include prefix, exec_prefix,
851 libdir, libsubdir and tooldir.
853 Mon Jun 21 05:40:15 1999 John David Anglin <dave@hiauly1>
855 * init.c (__objc_force_linking): Make global.
857 Thu May 20 03:20:59 1999 Jeffrey A Law (law@cygnus.com)
859 * configure.in (AC_EXEEXT): Remove call.
860 (compiler_name): Explicitly check with no extension and .exe
862 * configure: Regenerate.
864 Sun Apr 25 01:15:34 1999 Mumit Khan <khan@xraylith.wisc.edu>
866 * Makefile.in (CC1OBJ): Define in terms of CC.
867 (runtime-info.h): Use.
869 Fri April 8 08:21:07 1999 Ovidiu Predescu <ovidiu@cup.hp.com>
871 * objc-features.texi: Updated the URL to Boehm's GC page.
873 Fri Mar 26 23:41:07 1999 Ovidiu Predescu <ovidiu@cup.hp.com>
875 * archive.c (__objc_code_char, __objc_write_char): Explicitly specify
876 the char as being signed (patch from Daniel Jacobowitz
879 Wed Mar 24 22:41:28 1999 Mumit Khan <khan@xraylith.wisc.edu>
881 * configure.in (AC_PREREQ): Update to 2.13.
882 (AC_EXEEXT): Call to find possible file extension.
883 (compiler_name): Use.
884 * configure: Regenerate.
886 Wed Jan 27 02:31:01 1999 Jeffrey A Law (law@cygnus.com)
888 * Makefile.in (ALL_CFLAGS): Add -DIN_GCC.
890 Tue Jan 5 01:38:53 1999 Jeffrey A Law (law@cygnus.com)
892 * configure.in (thread_file): Correct and simplify code to find
894 * configure: Rebuilt.
896 1998-11-26 Manfred Hollstein <manfred@s-direktnet.de>
898 * configure.in (compiler_name): Add check to detect if this
899 language's compiler has been built.
900 * configure: Regenerate.
902 Mon Nov 23 16:50:28 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
904 * configure.in: Use AC_PREREQ(2.12.1).
906 Thu Nov 19 20:33:37 1998 Jeffrey A Law (law@cygnus.com)
908 * Makefile.in (runtime-info.h): Avoid GNU make extensions.
910 Sun Nov 8 17:46:14 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
912 * Makefile.in (INCLUDES): Add -I$(srcdir)/$(MULTISRCTOP)../include.
914 Thu Oct 22 14:34:06 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
916 * configure.in: Use AC_CONFIG_AUX_DIR($topsrcdir).
918 Sat Oct 17 05:21:31 1998 Ovidiu Predescu <ovidiu@slip.net>
920 * objc-features.texi (Top): Changed the email address.
921 * objc-features.texi (Garbage Collection): Use @uref instead of @url.
923 Mon Oct 11 21:25:27 1998 Ovidiu Predescu <ovidiu@slip.net>
925 * encoding.c: Redefine get_inner_array_type to get the first entry
928 Thu Oct 8 12:21:14 1998 Richard Frith-Macdonald <richard@brainstorm.co.uk>
930 * encoding.c (objc_skip_type_qualifiers): Handle _C_BYREF.
931 (objc_get_type_qualifiers): Similarly.
932 * objc/encoding.h (_C_BYREF): Define.
935 1998-10-07 David S. Miller <davem@pierdol.cobaltmicro.com>
937 * objc/sarray.h: Make boffset be an unsigned long when sparc so it
938 works out on 64-bit systems.
940 Tue Oct 6 20:32:06 1998 Alexandre Oliva <oliva@dcc.unicamp.br>
942 * Makefile.in (INCLUDES): Make it multilib-friendly.
944 Fri Oct 2 07:12:14 1998 H.J. Lu (hjl@gnu.org)
946 * Makefile.in (INCLUDES): Add -I$(srcdir)/../gcc.
948 Thu Oct 1 22:33:03 1998 Robert Lipe <robertl@dgii.com>
949 Jeffrey A Law (law@cygnus.com)
951 * Makefile.in (INCLUDES): Reference gcc via $MULTIBUILDTOP.
952 (FLAGS_TO_PASS): Added.
953 (runtime-info.h): Reference cc1ibj via $MULTIBUILDTOP.
955 * archive.c: Change config.h to tconfig.h.
957 * configure.in: Find gcc's object directory even for multilibs.
959 Wed Sep 30 18:17:17 1998 Robert Lipe <robertl@dgii.com>
961 * configure.in: Escape ^ in grep string.
962 * configure: Rebuilt.
964 Wed Sep 30 09:14:52 1998 Jeffrey A Law (law@cygnus.com)
966 * All .h files pushed down into the objc/ subdirectory.
967 * Makefile.in (copy_headers): Corresponding changes.
968 * configure.in (AC_INIT): Corresponding changes.
969 * configure: Rebuilt.
971 1998-09-30 Ben Elliston <bje@cygnus.com>
972 Jeff Law <law@cygnus.com>
974 * Makefile.in: Rewrite.
976 * configure.in: Likewise.
978 * configure: Regenerate.
980 * All .c files. Remove "objc" prefix when including objc header
981 files. Include tconfig.h, not ../tconfig.h.
983 Mon Sep 21 23:27:10 1998 Ovidiu Predescu <ovidiu@slip.net>
985 * encoding.c (TREE_TYPE, ARRAY_TYPE): Define.
986 (get_inner_array_type): Define.
988 1998-09-21 Ben Elliston <bje@cygnus.com>
990 * New directory. Moved files from ../gcc/objc.