OSDN Git Service

gcc:
[pf3gnuchains/gcc-fork.git] / libobjc / ChangeLog
1 2011-08-05  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2
3         * Makefile.in (INCLUDES): Search
4         $(srcdir)/$(MULTISRCTOP)../libgcc.
5
6 2011-06-08  Nicola Pero  <nicola.pero@meta-innovation.com>
7
8         * objc/objc.h (__GNU_LIBOBJC__): Bumped to 20110608.
9
10 2011-06-08  Nicola Pero  <nicola.pero@meta-innovation.com>
11
12         * configure.ac (VERSION): Bumped to 4:0:0.
13         * configure (VERSION): Likewise.
14
15 2011-06-08  Nicola Pero  <nicola.pero@meta-innovation.com>
16
17         * objc/README: Updated.
18         * objc-private/selector.h: Updated comments.
19         
20 2011-06-07  Nicola Pero  <nicola.pero@meta-innovation.com>
21
22         * sendmsg.c (class_get_instance_method): Removed.
23         (class_get_class_method): Removed.
24         (objc_get_uninstalled_dtable): Removed.
25
26 2011-06-07  Nicola Pero  <nicola.pero@meta-innovation.com>
27
28         * objc-private/module-abi-8.h (class_get_instance_size): Removed.
29         * objects.c (class_create_instance): Removed.
30         * error.c (__USE_FIXED_PROTOTYPES__): Removed.
31         * gc.c (__objc_generate_gc_type_description): Use
32         class_getInstanceSize() instead of class_get_instance_size().
33         * selector.c (sel_types_match): Made static.
34         (sel_get_typed_uid): Removed.
35         (sel_get_any_typed_uid): Removed.
36         (sel_get_name): Removed.
37         (sel_get_type): Removed.
38         (sel_register_name): Removed.
39         (sel_register_typed_name): Removed.
40         (sel_get_uid): Removed.
41
42 2011-06-07  Nicola Pero  <nicola.pero@meta-innovation.com>
43
44         * encoding.c (method_get_number_of_arguments): Removed.
45         (method_get_sizeof_arguments): Removed.
46
47 2011-06-07  Nicola Pero  <nicola.pero@meta-innovation.com>
48
49         * class.c (objc_next_class): Removed.
50         (class_pose_as): Removed.
51         (CLASSOF): Removed.
52         (class_table_replace): Removed.
53         (objc_lookup_class): Removed.
54
55 2011-06-07  Nicola Pero  <nicola.pero@meta-innovation.com>
56
57         Removed the Traditional Objective-C runtime public API.
58         * Makefile.in (OBJC_DEPRECATED_H): Variable removed.
59         (install-headers): Do not create the objc/deprecated directory and
60         do not install the deprecated headers.
61         (OBJC_H): Removed encoding.h and objc-api.h.
62         * Object.m: Removed all methods with the exception of -class and
63         -isEqual:.  Updated includes.  ([-class]): Use Modern API.
64         * objc/Object.h: Do not include deprecated/Object.h.
65         * objc/deprecated/Object.h: Removed.
66         * linking.m (__objc_linking): Call [Object class] instead of
67         [Object name].
68         * Protocol.m: Removed all methods with the exception of -isEqual:.
69         Updated includes.
70         * objc/Protocol.h: Do not include deprecated/Protocol.h.
71         * objc/deprecated/Protocol.h: Removed.
72         * objc/deprecated/struct_objc_symtab.h: Removed.
73         * objc/deprecated/struct_objc_module.h: Removed.
74         * objc/deprecated/struct_objc_ivar.h: Removed.
75         * objc/deprecated/struct_objc_ivar_list.h: Removed.
76         * objc/deprecated/struct_objc_method.h: Removed.
77         * objc/deprecated/struct_objc_method_list.h: Removed.
78         * objc/deprecated/struct_objc_protocol_list.h: Removed.
79         * objc/deprecated/struct_objc_category.h: Removed.
80         * objc/deprecated/MetaClass.h: Removed.
81         * objc/deprecated/objc_msg_sendv.h: Removed.  
82         * objc/deprecated/README: Removed.
83         * objc/deprecated/struct_objc_class.h: Removed.
84         * objc/deprecated/struct_objc_protocol.h: Removed.
85         * objc/deprecated/struct_objc_selector.h: Removed.
86         * objc/encoding.h: Removed.
87         * objc/message.h (struct objc_super): Removed the definition for
88         the Traditional Objective-C runtime API.
89         * objc/objc.h: Do not include objc/objc-decls.h.
90         deprecated/struct_objc_selector.h, deprecated/MetaClass.h,
91         deprecated/struct_objc_class.h, deprecated/struct_objc_protocol.h
92         and deprecated/objc_msg_sendv.h.  Uncommented new definition of
93         Protocol *.
94         * objc/objc-api.h: Removed.
95         * objc/runtime.h: Updated comments.  Removed check to detect
96         concurrent usage of Traditional and Modern APIs.
97         * objc-private/module-abi-8.h: Always define struct objc_class and
98         struct objc_protocol.  (struct objc_protocol_list): Changed type
99         of 'list' argument from 'Protocol *' to 'struct objc_protocol *'.
100         (class_get_instance_size): Added.
101         * objc-private/protocols.h (__objc_protocols_add_protocol): Take a
102         'struct objc_protocol *' as argument, not a 'Protocol *'.
103         * objc-private/runtime.h: Updated comments.
104         * objc-private/selector.h (struct objc_selector, sel_eq): Added.
105         * class.c: Include objc-private/selector.h.
106         (objc_get_meta_class): Return a Class instead of a MetaClass.
107         * encoding.c (method_get_next_argument): Removed.
108         (method_get_first_argument): Removed.
109         (method_get_nth_argument): Removed.
110         * gc.c: Include objc/runtime.h instead of objc/encoding.h.
111         Include objc-private/module-abi-8.h and ctype.h.
112         * protocols.c (__objc_protocols_add_protocol): Take a 'struct
113         objc_protocl *' as argument, not a 'Protocol *'.
114         (class_addProtocol): Added casts to 'struct objc_protocol *' and
115         'Protocol *'.
116         (class_copyProtocolList): Likewise.
117         (protocol_conformsToProtocol): Likewise.
118         (protocol_copyProtocolList): Likewise.
119         * sarray.c: Include objc-private/module-abi-8.h.
120         * sendmsg.c (method_get_next_argument): Removed.
121         (method_get_first_argument): Removed.
122         (method_get_nth_argument): Removed.
123         (objc_msg_sendv): Removed.
124         (arglist_t, retval_t): New.  (class_get_class_method): Take a
125         'Class', not 'MetaClass', argument.
126         * thr.c: Include module-abi-8.h.
127         
128 2011-06-03  Nicola Pero  <nicola.pero@meta-innovation.com>
129
130         * Makefile.in (OBJC_DEPRECATED_H): Removed struct_objc_static_instances.h
131         and objc_get_uninstalled_dtable.h.
132         * objc/deprecated/struct_objc_static_instances.h: Removed.
133         * objc/deprecated/objc_get_uninstalled_dtable.h: Removed.       
134         * objc/objc-api.h: Do not include deprecated/objc_static_instances.h
135         and deprecated/objc_get_uninstalled_dtable.h.
136         
137 2011-06-03  Nicola Pero  <nicola.pero@meta-innovation.com>
138
139         * Makefile.in (OBJC_DEPRECATED_H): Removed objc_object_alloc.h.
140         * objc/deprecated/objc_object_alloc.h: Removed.
141         * objc/objc-api.h: Do not include deprecated/objc_object_alloc.h.
142         * objects.c (_objc_object_alloc, _objc_object_dispose,
143         _objc_object_copy): Removed.
144         * libobjc.def (__objc_object_alloc, __objc_object_copy,
145         __objc_object_dispose): Removed.
146         
147 2011-06-03  Nicola Pero  <nicola.pero@meta-innovation.com>
148
149         * Makefile.in (OBJC_DEPRECATED_H): Removed METHOD_NULL.h.
150         * objc/objc-api.h: Do not include deprecated/METHOD_NULL.h.
151         * objc/deprecated/METHOD_NULL.h: Removed.
152         
153 2011-06-03  Nicola Pero  <nicola.pero@meta-innovation.com>
154
155         * Makefile.in (OBJC_DEPRECATED_H): Removed objc_valloc.h,
156         objc_malloc.h and objc_unexpected_exception.h.
157         (exception.lo): Do not use -Wno-deprecated-declarations.
158         (exception_gc.lo): Likewise.
159         * objc/objc-api.h: Do not include deprecated/objc_valloc.h,
160         deprecated/objc_malloc.h and
161         deprecated/objc_unexpected_exception.h.
162         * objc/deprecated/objc_valloc.h: Removed.
163         * objc/deprecated/objc_malloc.h: Removed.
164         * objc/deprecated/objc_unexpected_exception.h: Removed.
165         * exception.c (_objc_unexpected_exception): Removed.
166         (objc_exception_throw): Do not check for
167         _objc_unexpected_exception.
168         * memory.c (objc_valloc, _objc_malloc, _objc_atomic_malloc,
169         _objc_valloc, _objc_realloc, _objc_calloc, _objc_free): Removed.        
170         * libobjc.def (_objc_unexpected_exception, objc_valloc): Removed.
171         
172 2011-06-03  Nicola Pero  <nicola.pero@meta-innovation.com>
173
174         * objc/objc.h: Do not include deprecated/STR.h.
175         * objc/deprecated/STR.h: Removed.
176         * Makefile.in (OBJC_DEPRECATED_H): removed STR.h.
177         
178 2011-06-03  Nicola Pero  <nicola.pero@meta-innovation.com>
179
180         * Makefile.in (OBJC_H): Removed hash.h and sarray.h.
181         (OBJC_DEPRECATED_H): Likewise.
182         * libobjc.def (objc_hash_new, objc_hash_delete, objc_hash_add,
183         objc_hash_remove, objc_hash_next, objc_hash_value_for_key,
184         objc_hash_is_key_in_hash, hash_add, hash_delete, hash_new,
185         hash_next, hash_remove, hash_value_for_key, hash_is_key_in_hash,
186         sarray_at_put, sarray_at_put_safe, sarray_free, sarray_lazy_copy,
187         sarray_new, sarray_realloc, sarray_remove_garbage): Removed.
188         * objc/sarray.h: Removed.
189         * objc/hash.h: Removed.
190         * objc/deprecated/sarray.h: Removed.
191         * objc/deprecated/hash.h: Removed.
192         * objc/Object.h: Do not include objc/deprecated/hash.h
193         * Object.m: Include string.h.
194         * objc/objc-api.h: Do not include objc/deprecated/hash.h.
195         * objc-private/common.h (GNU_LIBOBJC_COMPILING_LIBOBJC_ITSELF):
196         Removed.
197
198 2011-06-03  Nicola Pero  <nicola.pero@meta-innovation.com>
199
200         * Object.m ([-forward::]): Removed.
201         * objc/deprecated/Object.h ([-forward::]): Removed.
202         * sendmsg.c (__objc_forward): Updated comments.
203         
204 2011-06-03  Nicola Pero  <nicola.pero@meta-innovation.com>
205
206         * Makefile.in (OBJC_H): Removed objc-list.h.
207         (OBJC_DEPRECATED_H): Removed objc-list.h.
208         * objc/objc-list.h: File removed.
209         * objc/deprecated/objc-list.h: File removed.
210
211 2011-06-03  Nicola Pero  <nicola.pero@meta-innovation.com>
212
213         * Makefile.in (OBJC_H): Removed typedstream.h.
214         (OBJC_DEPRECATED_H): Removed typedstream.h.
215         (C_SOURCE_FILES): Removed archive.c.
216         (Object.lo): Rule removed.
217         (Object_gc.lo): Likewise.
218         (archive.lo): Likewise.
219         (archive_gc.lo): Likewise.
220         * objc/deprecated/Object.h ([+streamVersion:], [-read], [-write],
221         [-awake]): Removed.
222         Do not include deprecated/typedstream.h.
223         * Object.m: Removed the same methods.
224         * archive.c: File removed.
225         * objc/typedstream.h: File removed.
226         * objc/deprecated/typedstream.h: File removed.
227         * libobjc.def (__objc_read_nbyte_uint, __objc_read_nbyte_ulong,
228         __objc_write_class, __objc_write_object, __objc_write_selector,
229         objc_close_typed_stream, objc_end_of_typed_stream,
230         objc_flush_typed_stream, objc_get_stream_class_version,
231         objc_open_typed_stream, objc_open_typed_stream_for_file,
232         objc_read_array, objc_read_char, objc_read_int, objc_read_long,
233         objc_read_object, objc_read_selector, objc_read_short,
234         objc_read_string, objc_read_type, objc_read_types,
235         objc_read_unsigned_char, objc_read_unsigned_int,
236         objc_read_unsigned_long, objc_read_unsigned_short,
237         objc_write_array, objc_write_char, objc_write_int,
238         objc_write_long, objc_write_object, objc_write_object_reference,
239         objc_write_root_object, objc_write_selector, objc_write_short,
240         objc_write_string, objc_write_string_atomic, objc_write_type,
241         objc_write_types, objc_write_unsigned_char,
242         objc_write_unsigned_int, objc_write_unsigned_long,
243         objc_write_unsigned_short): Removed.
244         
245 2011-06-02  Nicola Pero  <nicola.pero@meta-innovation.com>
246
247         * Makefile.in (OBJC_DEPRECATED_H): Removed objc_error.h.
248         * objc/deprecated/objc_error.h: Removed.
249         * objc/objc-api.h: Do not include deprecated/objc_error.h.
250         * libobjc.def (objc_error, objc_verror): Removed.
251         * error.c (_objc_error_handler, objc_error, objc_verror,
252         objc_set_error_handler): Removed.
253         * Object.m ([-error:], [-perform:], [-perform:with:],
254         [-perform:with:with], [-subclassResponsibility:],
255         [-notImplemented:], [-shouldNotImplement:], [-doesNotRecognize:]):
256         Removed.
257         * objc/deprecated/Object.h: Removed the same methods.
258         * sendmsg.c (__objc_forward): Do not try to invoke the "error:"
259         method after trying to invoke the "doesNotRecognize:" method.
260         
261 2011-05-26  Nicola Pero  <nicola.pero@meta-innovation.com>
262
263         * sendmsg.c: Reindented part of the file.  No non-trivial changes
264         in code.
265
266 2011-05-26  Nicola Pero  <nicola.pero@meta-innovation.com>
267
268         * sendmsg.c (__objc_install_dtable_for_class): Use objc_getClass,
269         not objc_lookup_class.
270
271 2011-05-25  Richard Frith-Macdonald <rfm@gnu.org>
272             David Ayers  <ayers@fsfe.org>
273
274         PR libobjc/38307
275         * sendmsg.c: Include objc/hash.h.
276         (get_implementation): New function, mostly with code from get_imp
277         updated to support the new +initialize dispatch table logic.
278         (get_imp): Use get_implementation.
279         (__objc_responds_to): Updated to support the new +initialize
280         dispatch table logic.
281         (class_respondsToSelector): Likewise.
282         (objc_msg_lookup): Use get_implementation.
283         (__objc_init_install_dtable): Removed.
284         (__objc_install_methods_in_dtable): Updated arguments.
285         (__objc_install_dispatch_table_for_class): Renamed to
286         __objc_install_dtable_for_class and updated to support the new
287         +initialize dispatch table logic.
288         (__objc_update_dispatch_table_for_class): Updated to support the
289         new +initialize dispatch table logic.
290         (__objc_forward): Call get_implementation instead of get_imp.
291         (prepared_dtable_table): New.
292         (__objc_prepare_dtable_for_class): New. 
293         (__objc_prepared_dtable_for_class): New.
294         (__objc_get_prepared_imp): New.
295         (__objc_install_prepared_dtable_for_class): New.
296         
297 2011-05-24  Nicola Pero  <nicola.pero@meta-innovation.com>
298
299         PR libobjc/48177
300         * selector.c (__sel_register_typed_name): Use sel_types_match()
301         instead of strcmp() to compare selector types (Suggestion by
302         Richard Frith-Macdonald <rfm@gnu.org>).
303
304 2011-04-15  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
305
306         PR libobjc/32037
307         * Makefile.in (OBJC_GCFLAGS): Move ...
308         * configure.ac (enable_objc_gc): ... here.
309         Add $(libsuffix) to OBJC_BOEHM_GC.
310         * configure: Regenerate.
311
312 2011-02-28  Nicola Pero  <nicola.pero@meta-innovation.com>
313         
314         * selector.c (sel_getTypedSelector): Return NULL if there are
315         multiple selectors with conflicting types.
316         * objc/runtime.h (sel_getTypedSelector): Updated documentation.
317         
318 2011-02-28  Richard Frith-Macdonald <rfm@gnu.org>
319
320         PR libobjc/47922
321         * gc.c (class_ivar_set_gcinvisible): Use _C_GCINVISIBLE instead of
322         a hardcoded "!".
323
324 2011-02-13  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
325
326         * configure: Regenerate.
327
328 2010-12-26  Nicola Pero  <nicola.pero@meta-innovation.com>
329
330         * init.c (create_tree_of_subclasses_inherited_from): Use
331         class_superclass_of_class instead of assuming a class is
332         unresolved when it could be resolved.  Tidied up assignment and
333         check.
334         (__objc_tree_insert_class): Enhanced DEBUG_PRINTF.
335         (objc_tree_insert_class): Tidied up loop; return immediately upon
336         inserting a class.
337         (__objc_exec_class): Do not set __objc_class_tree_list.
338         
339 2010-12-24  Nicola Pero  <nicola.pero@meta-innovation.com>
340
341         * selector.c (sel_getTypedSelector): Return NULL if given a NULL
342         argument.
343         (sel_registerTypedName): Same.
344         (sel_registerName): Same.
345         * objc/runtime.h: Updated documentation.
346         
347 2010-12-24  Nicola Pero  <nicola.pero@meta-innovation.com>
348
349         * objc/runtime.h (class_addIvar): Updated documentation.  The
350         alignment is actually the log_2 of the alignment in bytes.
351         * ivars.c (class_addIvar): Corresponding change to the
352         implementation.
353         
354 2010-12-24  Nicola Pero  <nicola.pero@meta-innovation.com>
355
356         * objc/runtime.h (sel_getType): Renamed to sel_getTypeEncoding to
357         be consistent with method_getTypeEncoding and
358         ivar_getTypeEncoding.
359         (sel_copyTypedSelectorList, sel_getTypedSelector): New.
360         * selector.c (sel_getType): Renamed to sel_getTypeEncoding.
361         (sel_copyTypedSelectorList, sel_getTypedSelector): New.
362         (sel_get_type): Updated call to sel_getType.
363         
364 2010-12-24  Nicola Pero  <nicola.pero@meta-innovation.com>
365
366         * objc/runtime.h (class_conformsToProtocol,
367         class_copyProtocolList): Updated documentation.
368
369 2010-12-23  Nicola Pero  <nicola.pero@meta-innovation.com>
370
371         * init.c (create_tree_of_subclasses_inherited_from): Updated
372         DEBUG_PRINTF messages.
373         (__objc_tree_insert_class): Same.
374         (__objc_send_load_using_method_list): Same.
375         (__objc_send_load): Same.
376         (__objc_exec_class): Same.  In particular, do not print the module
377         name since it is no longer used.
378         * sendmsg.c (__objc_send_initialize): Added DEBUG_PRINTFs for
379         tracking +initialize calls.
380         (__objc_update_dispatch_table_for_class): Added DEBUG_PRINTFs for
381         tracking updates of dispatch tables.
382         (__objc_install_dispatch_table_for_class): Same.
383         
384 2010-12-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
385
386         * Makefile.in (libobjc$(libsuffix).la): Link with -Wc,-shared-libgcc.
387         (libobjc_gc$(libsuffix).la): Likewise.
388
389 2010-12-23  Nicola Pero  <nicola.pero@meta-innovation.com>
390
391         * sendmsg.c (class_addMethod): Return NO if the method already
392         exists in the class.
393
394 2010-12-22  Nicola Pero  <nicola.pero@meta-innovation.com>
395
396         * init.c (duplicate_classes): New.
397         (__objc_exec_class): Initialize duplicate_classes.
398         (__objc_create_classes_tree): Ignore classes in the
399         duplicate_classes table.
400         (__objc_call_load_callback): Same.
401         (__objc_init_class): If a duplicate class is found, add it to
402         duplicate_classes instead of aborting.  Return YES if the class is
403         not a duplicate, and NO if it is.
404         * objc-private/runtime.h (__objc_init_class): Updated prototype.
405
406 2010-12-22  Nicola Pero  <nicola.pero@meta-innovation.com>
407
408         * objc-private/objc-list.h: Reindented file.  No code changes.
409         * objc-private/sarray.h: Same change.
410
411 2010-12-22  Nicola Pero  <nicola.pero@meta-innovation.com>
412
413         * objc-private/accessors.h: Removed 'extern "C"' guards.  This
414         file is never compiled with C++.
415         * objc-private/hash.h: Same change.
416         * objc-private/objc-list.h: Same change.
417         * objc-private/objc-sync.h: Same change.
418         * objc-private/protocols.h: Same change.
419         * objc-private/runtime.h: Same change.
420         * objc-private/sarray.h: Same change.
421         * objc-private/selector.h: Same change.
422
423 2010-12-21  Nicola Pero  <nicola.pero@meta-innovation.com>
424
425         PR libobjc/18764
426         * class.c (__objc_add_class_to_hash): Return YES if the class was
427         added, and NO if it already existed.
428         * init.c (__objc_init_class): If __objc_add_class_to_hash returns
429         NO, then abort the program with an error message.
430         * objc-private/runtime.h (__objc_add_class_to_hash): Updated
431         declaration.
432
433 2010-12-21  Nicola Pero  <nicola.pero@meta-innovation.com>      
434
435         * init.c (_objc_load_callback): Initialize with 0.
436         (__objc_call_callback): Renamed to __objc_call_load_callback.
437         Check _objc_load_callback only once, and if it is not set, return
438         immediately.
439         (objc_send_load): Updated call to __objc_call_callback.
440         
441 2010-12-21  Nicola Pero  <nicola.pero@meta-innovation.com>
442
443         PR libobjc/16110
444         * init.c (__objc_send_message_in_list): Renamed to
445         __objc_send_load_using_method_list.  Do not take an 'op' argument.
446         Register the 'load' selector if needed.
447         (__objc_send_load): Do not register the 'load' selector.  Updated
448         call to __objc_send_message_in_list.
449         (__objc_create_classes_tree): Add the class of any claimed
450         category that was loaded in the module to the list of classes for
451         which we try to execute +load.
452         
453 2010-12-21  Nicola Pero  <nicola.pero@meta-innovation.com>
454
455         * objc-private/common.h: When DEBUG is defined, include <stdio.h>.
456         Updated comments.
457         * init.c (__objc_tree_insert_class): Use %p, not %x, when printing
458         a pointer using DEBUG_PRINTF.
459         
460 2010-12-21  Nicola Pero  <nicola.pero@meta-innovation.com>
461
462         PR libobjc/45953
463         * selector.c (__sel_register_typed_name): When registering a new
464         selector with the same name as an existing one, reuse the existing
465         name string.  Also updated types, casts and comments in the whole
466         function.
467
468 2010-12-21  Nicola Pero  <nicola.pero@meta-innovation.com>
469
470         * objc-private/module-abi-8.h (struct objc_symtab): Declare 'refs'
471         to be 'struct objc_selector *' and not 'SEL'.
472         * init.c (__objc_exec_class): Call
473         __objc_register_selectors_from_module instead of iterating over
474         each selector and calling __sel_register_typed_name for each.
475         * objc-private/selector.h: Declare
476         __objc_register_selectors_from_module instead of
477         __sel_register_typed_name.
478         * selector.c (__objc_register_selectors_from_module): New.
479         (__sel_register_typed_name): Made static.
480         
481 2010-12-21  Nicola Pero  <nicola.pero@meta-innovation.com>
482
483         * linking.m: Do not include objc/NXConstStr.h.
484
485 2010-12-21  Nicola Pero  <nicola.pero@meta-innovation.com>
486         
487         * objc-private/runtime.h (DEBUG_PRINTF): Moved from here ...
488         * objc-private/common.h (DEBUG_PRINTF): To here.
489         * hash.c: Do not include objc-private/runtime.h and objc/thr.h.
490         
491 2010-12-21  Nicola Pero  <nicola.pero@meta-innovation.com>
492
493         * hash.c: Tidied up comments and indentation.  No code changes.
494
495 2010-12-19  Nicola Pero  <nicola.pero@meta-innovation.com>
496
497         PR libobjc/47012
498         * accessors.m (objc_getProperty): If not atomic, do not
499         retain/autorelease the returned value.
500
501 2010-12-19  Nicola Pero  <nicola.pero@meta-innovation.com>
502
503         * objc-private/runtime.h (__objc_selector_max_index,
504         __objc_init_selector_tables, __objc_register_selectors_from_class,
505         __objc_register_selectors_from_list,
506         __objc_register_selectors_from_description_list): Moved to ...
507         * objc-private/selector.h: ... here.
508
509 2010-12-19  Nicola Pero  <nicola.pero@meta-innovation.com>
510
511         * objc-private/runtime.h (__objc_class_links_resolved): Removed.
512         (__objc_print_dtable_stats): Removed.
513         (__sel_register_typed_name): Removed.
514         * sendmsg.c (__objc_print_dtable_stats): Use 'void' as argument.
515         
516 2010-12-19  Nicola Pero  <nicola.pero@meta-innovation.com>
517
518         * init.c (__objc_exec_class): Call __objc_resolve_class_links (),
519         if appropriate, after loading the module.
520
521 2010-12-19  Nicola Pero  <nicola.pero@meta-innovation.com>
522
523         * sendmsg.c (method_setImplementation): Do not declare.
524
525 2010-12-19  Nicola Pero  <nicola.pero@meta-innovation.com>
526
527         * objc/message.h: Updated comments.
528         * objc/runtime.h: Updated comments.
529         
530 2010-12-19  Nicola Pero  <nicola.pero@meta-innovation.com>
531
532         * class.c (objc_lookupClass): Renamed to objc_lookUpClass.
533         * protocols.c: Updated all calls to objc_lookupClass to call
534         objc_lookUpClass instead.
535         * sendmsg.c (objc_lookupClass): Do not declare.
536         (get_imp): Update call to objc_lookupClass to call
537         objc_lookUpClass instead.
538         * objc/runtime.h (objc_lookupClass): Renamed to objc_lookUpClass.
539
540 2010-12-19  Nicola Pero  <nicola.pero@meta-innovation.com>
541
542         * objc/runtime.h (class_ivar_set_gcinvisible): Declare.
543         * sendmsg.c (_CLS_IN_CONSTRUCTION, CLS_IS_IN_CONSTRUCTION): Do not
544         define.  Updated comments.
545         
546 2010-12-19  Nicola Pero  <nicola.pero@meta-innovation.com>
547
548         * objc/encoding.h: Updated comments.
549         * objc/runtime.h: Updated comments.
550         (objc_setGetUnknownClassHandler): Mark with objc_EXPORT.
551         (objc_sizeof_type): Same.
552         (objc_alignof_type): Same.
553         (objc_aligned_size): Same.
554         (objc_promoted_size): Same.
555         (objc_skip_type_qualifiers): Same.
556         (objc_skip_typespec): Same.
557         (objc_skip_offset): Same.
558         (objc_skip_argspec): Same.
559         (objc_get_type_qualifiers): Same.
560         (objc_layout_structure): Same.
561         (objc_layout_structure_next_member): Same.
562         (objc_layout_finish_structure): Same.
563         (objc_layout_structure_get_info): Same.
564         
565 2010-12-19  Nicola Pero  <nicola.pero@meta-innovation.com>
566
567         * init.c: Updated comments.
568         * objc/objc-api.h: Updated comments.
569         * objc/runtime.h (_objc_load_callback): Declare.
570         
571 2010-12-19  Nicola Pero  <nicola.pero@meta-innovation.com>
572
573         * objc/Object.h: Include deprecated/typedstream.h and
574         deprecated/hash.h instead of typedstream.h.  Updated comments.
575
576 2010-12-19  Nicola Pero  <nicola.pero@meta-innovation.com>
577
578         * Makefile.in (OBJC_DEPRECATED_H): Added objc_msg_sendv.h.
579         * objc/deprecated/objc_msg_sendv.h: New.
580         * objc/message.h: Do not define retval_t, apply_t, arglist,
581         arglist_t, objc_msg_sendv, now in
582         objc/deprecated/objc_msg_sendv.h.
583         * objc/objc.h: Do not include message.h; include
584         objc/deprecated/objc_msg_sendv.h instead.  Tidied up comments.
585         * sendmsg.c: Include objc/message.h.
586         * thr.c: Include objc/message.h.
587         
588 2010-12-19  Nicola Pero  <nicola.pero@meta-innovation.com>
589
590         * objc/objc-exception.h: Include objc-decls.h.  Mark all
591         functions with objc_EXPORT.
592         * objc/objc-sync.h: Same change.
593
594 2010-12-19  Nicola Pero  <nicola.pero@meta-innovation.com>
595
596         * Protocol.m: Moved all methods, with the exception of -isEqual:,
597         into the 'Deprecated' category.
598         * objc/Protocol.h: Removed all methods, moved to
599         objc/deprecated/Protocol.h.  Include objc/deprecated/Protocol.h.
600         * objc/deprecated/Protocol.h: New.
601         * Makefile.in (OBJC_DEPRECATED_H): Added Protocol.h.
602         
603 2010-12-19  Nicola Pero  <nicola.pero@meta-innovation.com>
604
605         * init.c: Include objc-private/selector.h.  Do not declare
606         __sel_register_typed_name.
607         * objc-private/selector.h (__sel_register_typed_name): Declare.
608         * selector.c: Include objc-private/selector.h.
609         
610 2010-12-18  Nicola Pero  <nicola.pero@meta-innovation.com>
611
612         * class.c: Tidied up comments and indentation.  No code changes.
613         * error.c: Same.
614         * exception.c: Same.
615         * init.c: Same.
616         * ivars.c: Same.
617         * memory.c: Same.
618         * objc-foreach.c: Same.
619         * objc-sync.c: Same.
620         * objects.c: Same.
621         * protocols.c: Same.
622         * sarray.c: Same.
623         * thr.c: Same.
624
625 2010-12-17  Nicola Pero  <nicola.pero@meta-innovation.com>
626
627         * init.c: Include objc/runtime.h and objc-private/module-abi-8.h
628         instead of objc/objc-api.h.
629         (init_check_module_version): Take a 'struct objc_module *'
630         argument instead of 'Module_t'.  Use 'struct objc_module *'
631         instead of 'Module_t'.
632         (__objc_created_classes_tree): Take a 'struct objc_module *'
633         argument instead of 'Module_t'; use 'struct objc_symtab *' instead
634         of 'Symtab_t'.
635         (__objc_call_callback): Take a 'struct objc_module *' argument
636         instead of 'Module_t'; use 'struct objc_symtab *' instead of
637         'Symtab_t' and 'struct objc_category *' instead of 'Category_t'.
638         (_objc_load_callback): Take a 'struct objc_category *' argument
639         instead of 'Category *'.
640         (class_superclass_of_class): Use objc_getClass() instead of
641         objc_lookup_class().
642         (create_tree_of_subclasses_inherited_from): Same change (also, use
643         an explicit 'if' instead of '?').
644         (objc_init_statics): Same change.
645         (objc_send_load): Same change.
646         (__objc_init_protocol): same change.
647         (__objc_send_message_in_list): Take a 'struct objc_method_list *'
648         argument instead of 'MethodList_t'.  Use 'struct objc_method *'
649         instead of 'Method_t'.
650         (__objc_send_load): Use 'struct objc_method_list *' instead of
651         'MethodList_t'.  Use sel_registerName() instead of
652         sel_register_name().
653         (__objc_exec_class): Take a 'struct objc_module *' argument
654         instead of 'Module_t'.  Use 'struct objc_symtab *' instead of
655         'Symtab_t'.  Use objc_getClass() instead of objc_lookup_class().
656         Use 'struct objc_category *' instead of 'Category_t'.
657         
658 2010-12-16  Nicola Pero  <nicola.pero@meta-innovation.com>
659
660         * sendmsg.c: Include objc/runtime.h instead of objc/objc-api.h.
661         Include objc-private/module-abi-8.h and objc-private/selector.h
662         instead of objc/encoding.h.
663         (objc_msg_lookup_super): Use super->super_class instead of
664         super->class.
665         (method_get_first_argument, method_get_next_argument): Declare
666         locally.
667         (class_get_instance_method): Declare before using.
668         (objc_msg_sendv): Use 'struct objc_method' instead of 'Method'.
669         (__objc_init_dispatch_tables, __objc_send_initialize): Use
670         sel_registerName() instead of sel_register_name().
671         (__objc_forward): Use sel_getName() instead of sel_get_name().
672         (objc_get_uninstalled_dtable): Use 'void' as argument.
673         * objc-private/selector.h: New.
674
675 2010-12-15  Nicola Pero  <nicola.pero@meta-innovation.com>
676
677         * objc/message.h (objc_super): When using the modern API, do not
678         define Super and Super_t, and always use 'super_class' for the
679         super class field.      
680         (objc_msg_lookup_super): Updated prototype to use 'struct
681         objc_super *' instead of 'Super_t'.
682         * sendmsg.c (objc_msg_lookup_super): Updated prototype to use
683         'struct objc_super *' instead of 'Super_t'.
684
685 2010-12-15  Nicola Pero  <nicola.pero@meta-innovation.com>
686
687         * objc/message.h: Update comments, reindented code and moved
688         deprecated types and functions at the end of the file.  No code
689         changes.
690
691 2010-12-15  Nicola Pero  <nicola.pero@meta-innovation.com>
692
693         * ivars.c (class_addIvar): Use the 'size' argument instead of
694         trying to calculate it using objc_sizeof_type().
695         * objc/runtime.h (class_addIvar): Updated comments.
696         
697 2010-12-15  Nicola Pero  <nicola.pero@meta-innovation.com>
698
699         * sendmsg.c: Reindented some code and tidied up comments.  No
700         actual code changes.
701         
702 2010-12-14  Nicola Pero  <nicola.pero@meta-innovation.com>
703
704         * objc/Object.h: Moved all the methods, with the exception of
705         -class and -isEqual:, into ...
706         * objc/deprecated/Object.h: here.
707         * Object.m: Moved all the methods, with the exception of -class
708         and -isEqual: into the 'Deprecated' category.
709
710 2010-12-14  Nicola Pero  <nicola.pero@meta-innovation.com>
711
712         * objects.c (object_copy): Do not #undef as we are no longer
713         including objc/objc-api.h.
714         * selector.c: Include objc/runtime.h and
715         objc-private/module-abi-8.h.  Do not include objc/objc-api.h and
716         objc/encoding.h.  Updated
717         (__objc_register_selectors_from_class): Use struct
718         objc_method_list * instead of MethodList_t.
719         (__objc_register_selectors_from_list): Use Method instead of
720         Method_t.
721         (struct objc_method_description_list): Do not define here.
722         (__objc_register_instance_methods_to_class): Use struct
723         objc_method_list * instead of MethodList_t and Method instead of
724         Method_t.
725         
726 2010-12-14  Nicola Pero  <nicola.pero@meta-innovation.com>
727
728         * selector.c: Reindented some code and tidied up comments.  No
729         actual code changes.
730
731 2010-12-13  Iain Sandoe  <iains@gcc.gnu.org>
732
733         * encoding.c (_darwin_rs6000_special_round_type_align): New.
734         (darwin_rs6000_special_round_type_align): Adjust to use new routine.
735
736 2010-12-11  Nicola Pero  <nicola.pero@meta-innovation.com>
737
738         * sendmsg.c (selector_resolveClassMethod): New.
739         (selector_resolveInstanceMethod): New.
740         (__objc_resolve_class_method): New.
741         (__objc_resolve_instance_method): New.
742         (get_imp): Call __objc_resolve_class_method or
743         __objc_resolve_instance_method at the appropriate time.
744         (objc_msg_lookup): Same.
745         (class_getClassMethod): Same.   
746         (class_getInstanceMethod): Same.
747         (__objc_init_dispatch_tables): Initialize
748         selector_resolveClassMethod and selector_resolveInstanceMethod.
749         * objc/runtime.h: Updated documentation of class_getClassMethod,
750         class_getInstanceMethod and class_getMethodImplementation.
751         
752 2010-12-11  Nicola Pero  <nicola.pero@meta-innovation.com>
753
754         * objc-private/module-abi-8.h (struct objc_symtab): Updated
755         description of sel_ref_cnt and refs.
756         * objc/deprecated/struct_objc_symtab.h (objc_symtab): Same change.
757         
758 2010-12-06  Dave Korn  <dave.korn.cygwin@gmail.com>
759
760         PR target/40125
761         PR lto/46695
762         * configure.ac (extra_ldflags_libobjc): Invoke ACX_LT_HOST_FLAGS.
763         * Makefile.in (lt_host_flags): Import AC_SUBST'd value.
764         * aclocal.m4: Regenerate.
765         * configure: Regenerate.
766
767 2010-12-03  Matthias Klose  <doko@ubuntu.com> 
768
769         * configure.ac (VERSION): Bump the version to 3:0:0.
770         * configure: Regenerate.
771
772 2010-11-23  Richard Frith-Macdonald <rfm@gnu.org>
773
774         * sendmsg.c (get_imp): Fixed call to __objc_get_forward_imp to
775         pass nil as the receiver since we don't know the receiver at this
776         point.
777         
778 2010-11-18  Nicola Pero  <nicola.pero@meta-innovation.com>
779
780         * ivars.c: Include stdlib.h.
781         * protocols.c: Same change.
782
783 2010-10-24  Nicola Pero  <nicola.pero@meta-innovation.com>
784
785         * Makefile.in (OBJC_SOURCE_FILES): Added accessors.m.
786         * accessors.m: New.
787         * init.c: Include objc-private/accessors.h.
788         (__objc_exec_class): Call __objc_accessors_init.
789         * objc-private/accessors.h: New.
790
791 2010-10-17  Nicola Pero  <nicola.pero@meta-innovation.com>
792
793         * objc/message.h: Moved initial includes outside of extern "C".
794         * objc/runtime.h: Add extern "C" for Objective-C++.
795
796 2010-10-17  Nicola Pero  <nicola.pero@meta-innovation.com>
797
798         * init.c (objc_send_load): Do not wait for NXConstantString to be
799         registered before executing +load.  There is no point if
800         -fconstant-string-class=xxx is used when compiling all modules,
801         as is the case for almost all users.
802         * linking.m (__objc_linking): Do not try to forcefully link in
803         NXConstantString.
804
805 2010-10-16  Nicola Pero  <nicola.pero@meta-innovation.com>
806
807         * objc/runtime.h: Updated comments.
808         (class_addMethod): New.
809         (class_addIvar): New.
810         (class_replaceMethod): New.
811         (objc_allocateClassPair): New.
812         (objc_registerClassPair): New.
813         (objc_disposeClassPair): New.
814         * class.c (objc_allocateClassPair): New.
815         (objc_registerClassPair): New.
816         (objc_disposeClassPair): New.
817         (class_getSuperclass): Return Nil if a class is in construction.
818         * init.c (__objc_exec_class): Call __objc_init_class.
819         (__objc_init_class): New.
820         * ivars.c (class_copyIvarList): Return NULL if class is in
821         construction.  Do not lock the runtime mutex.
822         (class_getInstanceVariable): Return NULL if class is in
823         construction.  Do not lock the runtime mutex.
824         (class_addIvar): New.
825         * sendmsg.c (class_addMethod): New.
826         (class_replaceMethod): New.
827         * objc-private/module-abi-8.h (__CLS_SETNOTINFO): New.
828         (_CLS_IN_CONSTRUCTION): New.
829         (CLS_IS_IN_CONSTRUCTION): New.
830         (CLS_SET_IN_CONSTRUCTION): New.
831         (CLS_SET_NOT_IN_CONSTRUCTION): New.
832         * objc-private/runtime.h (__objc_init_class): New.
833
834 2010-10-16  Nicola Pero  <nicola.pero@meta-innovation.com>
835
836         * class.c (class_getSuperclass): Call __objc_resolve_class_links
837         if the class is not resolved yet.
838         * ivars.c (class_getInstanceVariable): Use class_getSuperclass.
839         
840 2010-10-16  Nicola Pero  <nicola.pero@meta-innovation.com>
841
842         * objc/runtime.h (class_getIvarLayout): New.
843         (class_getWeakIvarLayout): New.
844         (class_setIvarLayout): New.
845         (class_setWeakIvarLayout): New.
846         * ivars.c (class_getIvarLayout): New.
847         (class_getWeakIvarLayout): New.
848         (class_setIvarLayout): New.
849         (class_setWeakIvarLayout): New. 
850
851 2010-10-15  Nicola Pero  <nicola.pero@meta-innovation.com>
852         
853         * objc/runtime.h (class_copyPropertyList): New.
854         (class_getProperty): New.
855         (property_getAttributes): New.
856         (property_getName): New.
857         * ivars.c (class_copyPropertyList): New.
858         (class_getProperty): New.
859         (property_getAttributes): New.
860         (property_getName): New.
861         
862 2010-10-15  Nicola Pero  <nicola.pero@meta-innovation.com>
863
864         * objc-private/runtime.h (__objc_update_classes_with_methods): New.
865         * class.c (__objc_update_classes_with_methods): New.
866         (objc_getClassList): Do not lock the class lock.
867         * methods.c (method_exchangeImplementations): New.
868         (method_setImplementation): New.
869         * objc/runtime.h (method_setImplementation): New.
870         (method_exchangeImplementations): New.
871         
872 2010-10-15  Nicola Pero  <nicola.pero@meta-innovation.com>
873
874         * Protocol.m: Include objc/runtime.h and
875         objc-private/module-abi-8.h instead of objc/objc-api.h.  Do not
876         repeat Protocol's instance variables.
877         (struct objc_method_description_list): Do not define here.
878         ([-conformsTo:]): Reimplemented on top of protocol_conformsTo().
879         ([descriptionForInstanceMethod:]): Use sel_isEqual() to compare
880         selectors directly instead of getting names and then using strcmp.
881         ([descriptionForClassMethod:]): Same change.
882         ([-isEqual:]): Reimplemented on top of protocol_isEqual().
883         * protocols.c (protocol_getMethodDescription): Use sel_isEqual()
884         to compare selectors directly instead of getting names and then
885         using strcmp.
886         * objc/Protocol.h: Updated comments.
887         
888 2010-10-15  Nicola Pero  <nicola.pero@meta-innovation.com>
889
890         * init.c (__objc_init_protocol): New function which fixes up a
891         protocol's class pointer, registers it with the runtime, register
892         all protocol selectors and registers associated protocols too.
893         (objc_init_statics): Detect if we are initializing protocols, and
894         if so, use __objc_init_protocol instead of only fixing up the
895         class pointer.
896         (__objc_init_protocls): Use __objc_init_protocol.
897         * objc-private/module-abi-8.h: Updated comments.
898         * objc-private/runtime.h
899         (__objc_register_selectors_from_description_list): New.
900         * selector.c (__objc_register_selectors_from_description_list):
901         New.  (struct objc_method_description_list): Declare.
902         * Protocol.m ([-descriptionForInstanceMethod:]): Use sel_get_name
903         when accessing the name of a method, which is now correctly a SEL.
904         ([-descriptionForClassMethod:]): Same change.
905         * protocols.c (protocol_getMethodDescription): Same change.
906         * objc/runtime.h: Updated comments.
907         (sel_registerTypedName): Fixed typo in function name.
908         
909 2010-10-13  Nicola Pero  <nicola.pero@meta-innovation.com>
910
911         PR libobjc/23214
912         * init.c (objc_init_statics): Do not skip the initialization of a
913         statics list if the first object has already been initialized; in
914         the case of Protocols, while the first one may have been
915         initialized, some others may not have been initialized yet.
916
917 2010-10-13  Nicola Pero  <nicola.pero@meta-innovation.com>
918
919         * Makefile.in (OBJC_DEPRECATED_H): Added
920         objc_get_uninstalled_dtable, objc_object_alloc.h and
921         struct_objc_static_instances.h.
922
923 2010-10-13  Nicola Pero  <nicola.pero@meta-innovation.com>
924
925         * encoding.c (method_copyReturnType): New.
926         (method_copyArgumentType): New.
927         (method_getReturnType): New.
928         (method_getArgumentType): New.
929         * methods.c (method_getDescription): New.
930         * objc/runtime.h (method_copyReturnType): New.
931         (method_copyArgumentType): New.
932         (method_getReturnType): New.
933         (method_getArgumentType): New.
934         (method_getDescription): New.
935         
936 2010-10-12  Nicola Pero  <nicola.pero@meta-innovation.com>
937
938         * encoding.c: Tidied up comments.
939         (objc_skip_variable_name): New static inline function.
940         (objc_sizeof_type): Use objc_skip_variable_name instead of copying
941         the same code over and over.
942         (objc_alignof_type): Same.
943         (objc_aligned_size): Same.
944         (objc_promoted_size): Same.
945         (objc_skip_typespec): Same.
946         (objc_layout_structure_next_member): Same.
947         (objc_skip_offset): Skip a '-' before the digits (if any).  Fixed
948         historical bug where objc_skip_offset would skip one byte even if
949         there is no offset: check that the first offset digit is actually
950         a digit before skipping it.
951         (objc_skip_type_qualifiers): Mark as inline.
952         (objc_skip_typespec): Mark as inline.   
953         
954 2010-10-12  Nicola Pero  <nicola.pero@meta-innovation.com>
955
956         * Makefile.in (C_SOURCE_FILES): Added methods.c.
957         * encoding.c (method_getNumberOfArguments): New.
958         (method_get_number_of_arguments): Call
959         method_getNumberOfArguments.
960         * ivars.c (ivar_getName): Check for NULL variable argument.
961         (ivar_getOffset): Check for NULL variable argument.
962         (ivar_getTypeEncoding): Check for NULL variable argument.
963         (class_copyIvarList): New.
964         * methods.c: New.
965         * protocols.c (class_copyProtocolList): Check for Nil class_
966         argument.
967         * sendmsg.c: Use 'struct objc_method *' instead of Method_t, and
968         'struct objc_method_list *' instead of MethodList_t.
969         (class_getMethodImplementation): New.
970         (class_respondsToSelector): New.
971         (class_getInstanceMethod): New.
972         (class_getClassMethod): New.
973         * objc/runtime.h: Updated comments.
974         (class_copyIvarList): New.
975         (class_getInstanceMethod): New.
976         (class_getClassMethod): New.
977         (class_getMethodImplementation): New.
978         (class_respondsToSelector): New.
979         (method_getName): New.
980         (method_getImplementation): New.
981         (method_getTypeEncoding): New.
982         (class_copyMethodList): New.
983         (method_getNumberOfArguments): New.
984         
985 2010-10-12  Nicola Pero  <nicola.pero@meta-innovation.com>
986
987         * class.c: Include objc/runtime.h and objc-private/module-abi-8.h
988         instead of objc/objc-api.h.
989         (objc_get_unknown_class_handler): Do not define.
990         (class_isMetaClass): New.
991         (class_getSuperclass): New.
992         (class_getVersion): New.
993         (class_setVersion): New.
994         (class_getInstanceSize): New.
995         * exceptions.c: Include objc/runtime.h instead of objc/objc-api.h.
996         (is_kind_of_exception_matcher): Use objc_getSuperclass instead of
997         objc_get_super_class.
998         (get_ttype_entry): Use objc_getRequiredClass instead of
999         objc_get_class.
1000         * ivars.c (class_getClassVariable): New.
1001         * objects.c: Include objc/runtime.h, objc/thr.h and
1002         objc-private/module-abi-8.h instead of objc/objc-api.h
1003         * objc/runtime.h (class_getClassVariable): New.
1004         (class_isMetaClass): New.
1005         (class_getSuperclass): New.
1006         (class_getVersion): New.
1007         (class_setVersion): New.
1008         (class_getInstanceSize): New.
1009         * objc-private/module-abi-8.h (HOST_BITS_PER_LONG): New (from
1010         objc/objc-api.h)
1011         (__CLS_INFO): Same.
1012         (__CLS_ISINFO): Same.
1013         (__CLS_SETINFO): Same.
1014         (CLS_ISMETA): Same.
1015         (CLS_ISCLASS): Same.
1016         (CLS_ISRESOLV): Same.
1017         (CLS_SETRESOLV): Same.
1018         (CLS_ISINITIALIZED): Same.
1019         (CLS_SETINITIALIZED): Same.
1020         (CLS_GETNUMBER): Same.
1021         (CLS_SETNUMBER): Same.
1022
1023 2010-10-12  Nicola Pero  <nicola.pero@meta-innovation.com>
1024
1025         * archive.c: Do not include objc/objc.h.
1026         * class.c: Do not include objc/objc.h.
1027         * encoding.c: Include objc/runtime.h, ctype.h and
1028         objc-private/module-abi-8.h instead of objc/objc-api.h and
1029         objc/encoding.h.
1030         * error.c: Do not include objc/objc.h.
1031         * gc.c: Include tconfig.h and objc/encoding.h only if
1032         OBJC_WITH_GC.
1033         * hash.c: Include objc/runtime.h and objc/thr.h instead of
1034         objc/objc-api.h.  Do not include objc/objc.h.
1035         * init.c: Do not include objc/objc.h.
1036         * ivars.c: Include objc/runtime.h, objc-private/module-abi-8.h and
1037         objc/thr.h instead of objc/objc-api.h.  Do not include
1038         objc/objc.h.
1039         * linking.m: Tidied comment.
1040         * memory.c: Include objc/runtime.h instead of objc/objc-api.h.
1041         Do not include objc/objc.h.
1042         * objects.c: Do not include objc/objc.h.
1043         * objc-sync.c: Include objc/runtime.h instead of objc/objc-api.h.
1044         * protocols.c: Do not include objc/objc.h.
1045         * sarray.c: Include objc/runtime.h instead of objc/objc-api.h.  Do
1046         not include objc/objc.h.
1047         * selector.c: Do not include objc/objc.h.
1048         * sendmsg.c: Do not include objc/objc.h.        
1049         * thr.c: Include objc/runtime.h instead of objc/objc-api.h.
1050         Do not include objc/objc.h.
1051         * objc/objc-decls.h: Reindented code.
1052         * objc/runtime.h Include objc-decls.h.  Updated comments.
1053         (objc_malloc): New.
1054         (objc_atomic_malloc): New.
1055         (objc_calloc): New.
1056         (objc_realloc): New.
1057         (objc_free): New.
1058         * objc-private/runtime.h: Updated comments.
1059         
1060 2010-10-12  Nicola Pero  <nicola.pero@meta-innovation.com>
1061
1062         * Makefile.in (C_SOURCE_FILES): Added protocols.c.
1063         * objc-private/protocols.h: New.
1064         * protocols.c: New.
1065         * init.c: Include objc-private/protocols.h.
1066         (__objc_exec_class): Call __objc_protocols_init on startup.
1067         (__objc_init_protocols): Call __objc_protocols_add_protocol.
1068         * objc-private/runtime.h: Use (struct objc_method_list *) instead
1069         of MethodList_t, and (struct objc_method *) instead of Method_t.
1070         * objc/deprecated/struct_objc_class.h: Define
1071         __objc_STRUCT_OBJC_CLASS_defined.
1072         * objc-private/module-abi-8.h (struct
1073         objc_method_description_list): New.
1074         (struct objc_class): Only define if
1075         __objc_STRUCT_OBJC_CLASS_defined is undefined.
1076         * objc/runtime.h (class_getName): New.
1077         (objc_getProtocol): New.
1078         (objc_copyProtocolList): New.
1079         (class_addProtocol): New.
1080         (class_conformsToProtocol): New.
1081         (class_copyProtocolList): New.
1082         (protocol_conformsToProtocol): New.
1083         (protocol_isEqual): New.
1084         (protocol_getName): New.
1085         (protocol_getMethodDescription): New.
1086         (protocol_copyMethodDescriptionList): New.
1087         (protocol_getProperty): New.
1088         (protocol_copyPropertyList): New.
1089         (protocol_copyProtocolList): New.
1090         * class.c (class_getName): New.
1091         * selector.c (sel_isEqual): New.
1092         
1093 2010-10-12  Nicola Pero  <nicola.pero@meta-innovation.com>
1094
1095         * selector.c (sel_getName): Return "<null selector>" for a NULL
1096         argument.
1097         (sel_get_name): Return 0 for a NULL argument.
1098         * objc/runtime.h (sel_getName): Updated documentation.
1099
1100         * objc-private/hash.h (class_hash_table): Unused declaration
1101         removed.
1102         (module_hash_table): Same.
1103         * objc/deprecated/hash.h: Same changes.
1104         
1105 2010-10-11  Nicola Pero  <nicola.pero@meta-innovation.com>
1106
1107         * class.c (objc_getClassList): New.
1108         (objc_getRequiredClass): New.
1109         (objc_getMetaClass): New.
1110         (objc_lookupClass): New.
1111         (objc_getClass): New.
1112         (__objc_get_unknown_class_handler): New.
1113         (objc_setGetUnknownClassHandler): New.
1114         (objc_get_class): Use __objc_get_unknown_class_handler.
1115         (objc_lookup_class): Call objc_getClass.
1116         * objc/objc-api.h: Updated comment and copyright notice.
1117         * objc/runtime.h: Updated comments.
1118         (objc_getClass): New.
1119         (objc_lookupClass): New.
1120         (objc_getMetaClass): New.
1121         (objc_getRequiredClass): New.
1122         (objc_getClassList): New.
1123         (objc_setGetUnknownClassHandler): New.
1124         (objc_get_unknown_class_handler): New.
1125         * objc-private/runtime.h: Use __objc_private_runtime_INCLUDE_GNU
1126         instead of __objc_runtime_INCLUDE_GNU as include guard.
1127         * objc-private/error.h (_objc_abort): Mark as noreturn.
1128         
1129 2010-10-11  Nicola Pero  <nicola.pero@meta-innovation.com>
1130
1131         * Makefile.in (C_SOURCE_FILES): Added ivars.c.
1132         * ivars.c: New.
1133         * objc/objc.h: Updated comments.
1134         * objc/runtime.h (object_getClass): New.
1135         (object_getClassName): New.
1136         (object_setClass): New.
1137         (class_getInstanceVariable): New.
1138         (object_getIndexedIvars): New.
1139         (object_getInstanceVariable): New.
1140         (object_setInstanceVariable): New.
1141         (object_getIvar): New.
1142         (object_setIvar): New.  
1143         (ivar_getName): New.
1144         (ivar_getOffset): New.
1145         (ivar_getTypeEncoding): New.
1146         * objc-private/module-abi-8.h (struct objc_class): Added.
1147         * objects.c (object_getClassName): New.
1148         (object_setClass): New.
1149         
1150 2010-10-11  Nicola Pero  <nicola.pero@meta-innovation.com>
1151
1152         * objc/objc.h: Updated comments.
1153         * objc/objc-api.h: (object_copy): Added one argument; use a
1154         #define to maintain backwards-compatibility.  Moved
1155         _objc_object_alloc, _objc_object_copy, _objc_object_dispose and
1156         objc_get_uninstalled_dtable into
1157         objc/deprecated/objc_get_uninstalled_dtable.h and
1158         objc/deprecated/objc_object_alloc.h.  Include these files.
1159         * objc/deprecated/objc_get_uninstalled_dtable.h: New.
1160         * objc/deprecated/objc_object_alloc.h: New.
1161         * objc/runtime.h (set_getName): New.
1162         (sel_getType): New.
1163         (sel_getUid): New.
1164         (sel_registerName): New.
1165         (sel_registerTypedName): New.
1166         (sel_isEqual): New.
1167         (class_createInstance): New.
1168         (object_copy): New.
1169         (object_dispose): New.
1170         * objects.c: Do not include tconfig.h.  Include gc_typed.h if
1171         building the garbage collection version.
1172         (__objc_object_alloc): Removed.
1173         (__objc_object_copy): Removed.
1174         (__objc_object_dispose): Removed.
1175         (class_createInstance): New from code in class_create_instance.
1176         Cast second argument of GC_malloc_explicitly_typed.  Use
1177         objc_calloc.  Do not call _objc_object_alloc.
1178         (class_create_instance): Call class_createInstance.
1179         (object_copy): Added extraBytes argument.  Do not call
1180         _objc_object_copy.
1181         (object_dispose): Do not call _objc_object_dispose.
1182         * memory.c (objc_free): When using garbage collection, mark the
1183         argument as unused.
1184         * selector.c (sel_getName): New.
1185         (sel_get_name): Call sel_getName.
1186         (sel_getType): New.
1187         (sel_get_type): Call sel_getType.
1188         (sel_registerName): New.
1189         (sel_register_name): Call sel_registerName.
1190         (sel_registerTypedName): New.
1191         (sel_register_typed_name): Call sel_registerTypedName.
1192         (sel_getUid): New.
1193         (sel_get_uid): Call sel_getUid.
1194         
1195 2010-10-10  Nicola Pero  <nicola.pero@meta-innovation.com>
1196
1197         * objc/objc-api.h: Define Method, Method_t, Category and
1198         Category_t.  Prevent including this file at the same time as
1199         objc/runtime.h.  Updated comments.
1200         * objc/deprecated/struct_objc_method.h: Do not define Method,
1201         Method_t.
1202         * objc/deprecated/struct_objc_category.h: Do not define Category,
1203         Category_t.
1204         * objc-private/module-abi-8.h: New file containing a copy of all
1205         the structure definitions.  Not used yet.
1206         * objc/encoding.h (objc_aligned_size): Removed duplicate
1207         declaration.  Updated comments.
1208         * objc/runtime.h: Added Ivar, objc_property_t, Property, Method,
1209         Category, struct objc_method_description, _C_ID and similar,
1210         _C_CONST and similar and _F_CONST and similar.  Added
1211         objc_sizeof_type, objc_alignof_type, objc_aligned_size,
1212         objc_promoted_size, objc_skip_type_qualifier, objc_skip_typespec,
1213         objc_skip_offset, objc_skip_argspec, objc_get_type_qualifiers,
1214         struct objc_struct_layout, objc_layout_structure,
1215         objc_layout_structure_next_member, objc_layout_finish_structure,
1216         objc_layout_structure_get_info.  Prevent including this file at
1217         the same time as objc/objc-api.h.
1218         
1219 2010-10-10  Nicola Pero  <nicola.pero@meta-innovation.com>
1220
1221         * Makefile.in (OBJC_DEPRECATED_H): Added struct_objc_category.h,
1222         struct_objc_ivar.h, struct_objc_ivar_list.h, struct_objc_method.h,
1223         struct_objc_method_list.h, struct_objc_module.h,
1224         struct_objc_protocol_list.h, struct_objc_symtab.h.
1225         * objc/deprecated/struct_objc_category.h: New.
1226         * objc/deprecated/struct_objc_ivar.h: New.
1227         * objc/deprecated/struct_objc_ivar_list.h: New.
1228         * objc/deprecated/struct_objc_method.h: New.
1229         * objc/deprecated/struct_objc_method_list.h: New.
1230         * objc/deprecated/struct_objc_module.h: New.
1231         * objc/deprecated/struct_objc_protocol_list.h: New.
1232         * objc/deprecated/struct_objc_symtab.h: New.
1233         * objc/deprecated/struct_objc_static_instances.h: New.
1234         * objc/objc-api.h: Definitions of deprecated structures moved into
1235         the above header fragment files in objc/deprecated/.  Include the
1236         files instead of definition the structures here.  Updated
1237         comments.
1238         * objc/runtime.h: Updated comments.  Do not include objc-api.h.
1239         (objc_set_enumeration_mutation_handler): Renamed to
1240         objc_setEnumerationMutationHandler.
1241         * objc-foreach.c (objc_set_enumeration_mutation_handler): Renamed
1242         to objc_setEnumerationMutationHandler.
1243         * objc/objc-exception.h (objc_set_exception_matcher): Renamed to
1244         objc_setExceptionMatcher.
1245         (objc_set_uncaught_exception_handler): Renamed to
1246         objc_setUncaughtExceptionHandler.
1247         * exception.c: Same changes.
1248
1249 2010-10-10  Nicola Pero  <nicola.pero@meta-innovation.com>
1250
1251         * objc-sync.c: Include objc-private/common.h.
1252
1253 2010-10-10  Nicola Pero  <nicola.pero@meta-innovation.com>
1254
1255         * objc-foreach.c: Include objc-private/common.h.
1256         * objc/deprecated/METHOD_NULL.h: New file.
1257         * objc/objc-api.h: Include deprecated/METHOD_NULL.h instead of
1258         defining METHOD_NULL here.
1259         * Makefile.in (OBJC_DEPRECATED_H): Added METHOD_NULL.h.
1260         * Object.m ([+instancesRespondTo:]): Use (Method_t)0 instead of
1261         METHOD_NULL.
1262         ([-respondsTo:]): Same change.
1263         * objc/objc-api.h (method_get_imp): Converted it into a normal
1264         function so that we can hide the internals of struct objc_method.
1265         * sendmsg.c (method_get_imp): Implemented.
1266
1267 2010-10-09  Nicola Pero  <nicola.pero@meta-innovation.com>
1268
1269         * objc/objc-api.h (struct objc_super, Super, Super_t,
1270         objc_msg_lookup_super, objc_msg_sendv, objc_msg_forward,
1271         objc_msg_forward2): Declarations moved to objc/message.h.  Include
1272         message.h here.
1273         * objc/message.h: Added such declarations; updated comments.
1274
1275 2010-10-06  Nicola Pero  <nicola.pero@meta-innovation.com>
1276
1277         Implemented fast enumeration for Objective-C.
1278         * Makefile.in (C_SOURCE_FILES): Added objc-foreach.c.
1279         (OBJC_H): Added runtime.h
1280         * objc-foreach.c: New file.
1281         * objc/runtime.h: New file.
1282         
1283 2010-09-30  Kai Tietz  <kai.tietz@onevision.com>
1284
1285         * objc/deprecated/struct_objc_class.h: Add padding
1286         to avoid warning with -Wpadded.
1287
1288 2010-09-26  Nicola Pero  <nicola.pero@meta-innovation.com>
1289
1290         * encoding.c (objc_sizeof_type): Added support for vector type and
1291         for double long types.  
1292         (objc_alignof_type): Same change.
1293         (objc_skip_typespec): Same change.
1294         * objc/encoding.h (_C_GCINVISIBLE): Use '|' for _C_GCINVISIBLE
1295         instead of '!' since '!' is already used for _C_VECTOR.
1296         * objc/objc-api.h (_C_LNG_DBL): Added.
1297         
1298 2010-09-26  Nicola Pero  <nicola.pero@meta-innovation.com>
1299
1300         * libobjc_entry.c: File removed.
1301
1302 2010-09-26  Kai Tietz  <kai.tietz@onevision.com>
1303
1304         * sendmsg.c (objc_msg_lookup): Remove inline.
1305         (objc_get_uninstalled_dtable): Likewise.
1306         * encoding.c (objc_skip_type_qualifiers): Likewise.
1307         (objc_skip_offset): Likewise.
1308         * archive.c (__objc_write_object): Likewise
1309         (__objc_write_class):
1310         (__objc_write_selector):
1311         (objc_read_char):
1312         (objc_read_unsigned_char):
1313         (objc_read_short):
1314         (objc_read_unsigned_short):
1315         (objc_read_int):
1316         (objc_read_long):
1317         (__objc_read_nbyte_uint):
1318         (objc_read_unsigned_int):
1319         (objc_read_unsigned_long):
1320         * objc/objc-decls.h (obc_EXPORT): Remove dllexport for DLL_EXPORT case.
1321         (objc_EXPORT): Likewise.
1322         * objc/message.h (objc-decls.h): Add include.
1323         * objc/objc-api.h: Mark API by objc_EXPORT.
1324         * libobjc.def (__objc_responds_to): Removed.
1325
1326 2010-09-18  Nicola Pero  <nicola.pero@meta-innovation.com>
1327
1328         * hash.c: Include objc-private/hash.h instead of objc/hash.h.
1329
1330         * objc/sarray.h: Moved into objc/deprecated/sarray.h;
1331         objc/sarray.h replaced with a placeholder including the file from
1332         the deprecated/ directory.
1333         * objc-private/sarray.h: New file (private copy of sarray.h).
1334         * hash.c: Include <assert.h> instead of "assert.h"
1335         * sarray.c: Include <assert.h> instead of "assert.h".  Include
1336         objc-private/sarray.h instead of objc/sarray.h.
1337         * selector.c: Include objc-private/sarray.h instead of
1338         objc/sarray.h.
1339         * sendmsg.c: Include <assert.h>.  Include objc-private/sarray.h
1340         instead of objc/sarray.h.
1341         * Makefile.in (OBJC_DEPRECATED_H): Added sarray.h.      
1342
1343 2010-09-17  Nicola Pero  <nicola.pero@meta-innovation.com>
1344
1345         * objc-private/objc-list.h (list_remove_elem): Unused function
1346         removed.  (list_nth): Unused function removed.  (list_find):
1347         Unused function removed.  (list_lenght): Unused function removed.
1348         
1349 2010-09-17  Nicola Pero  <nicola.pero@meta-innovation.com>
1350
1351         * objc/hash.h: Moved into objc/deprecated/hash.h; objc/hash.h
1352         replaced with a placeholder including the file from the
1353         deprecated/ directory.
1354         * objc/objc-api.h: Updated includes.
1355         * objc/typedstream.h: Updated includes.
1356         * objc-private/hash.h: New file (private copy of hash.h).
1357         * objc/objc-list.h: Moved into objc/deprecated/objc-list.h;
1358         objc/objc-list.h replaced with a placeholder including the file
1359         from the deprecated/ directory.
1360         * objc-private/objc-list.h: New file (private copy of objc-list.h).
1361         * init.c: Include objc-private/hash.h and objc-private/objc-list.h
1362         instead of objc/hash.h and objc/objc-list.h.
1363         * selector.c: Same change.
1364         * class.c: Added include <string.h>, which used to be implicitly included
1365         when hash.h was included.
1366         * exception.c: Same change.
1367         * objects.c: Same change.
1368         * sarray.c: Same change.
1369         * sendmsg.c: Same change.
1370         * Makefile.in (OBJC_DEPRECATED_H): Added hash.h and objc-list.h.
1371
1372 2010-09-14  Nicola Pero  <nicola.pero@meta-innovation.com>
1373
1374         Implemented objc_sync_enter() and objc_sync_exit(), which are
1375         required by @synchronized() to work.
1376         * objc-sync.c: New file.
1377         * objc/objc-sync.h: New file.
1378         * objc-private/objc-sync.h: New file.
1379         * init.c (__objc_exec_class): Call __objc_sync_init() during the
1380         Objective-C runtime startup.
1381         * Makefile.in: Added objc-sync.c and objc-sync.h.
1382         * configure.ac: Added GCC_CHECK_TLS.
1383         * acinclude.m4: Include ../config/enable.m4 and ../config/tls.m4.
1384         * configure: Regenerated.
1385         * config.h.in: Regenerated.
1386         
1387 2010-09-12  Nicola Pero  <nicola.pero@meta-innovation.com>
1388
1389         * Makefile.in (%_gc.lo): New pattern rules to build the
1390         garbage-collected version of the library.  Removed rules for
1391         specific files that are no longer needed.  Standardized all rules.
1392         (C_SOURCE_FILES, OBJC_SOURCE_FILES): New variables.
1393         (OBJS, OBJS_GC): Compute these from C_SOURCE_FILES and
1394         OBJC_SOURCE_FILES.
1395         (INCLUDES): Removed the unused include -I$(srcdir)/objc.
1396
1397 2010-09-12  Nicola Pero  <nicola.pero@meta-innovation.com>
1398         
1399         * memory.c (objc_calloc): Fixed call to GC_malloc when building
1400         with Garbage Colletion.
1401         
1402 2010-09-12  Nicola Pero  <nicola.pero@meta-innovation.com>
1403
1404         * memory.c: Do not include objc-private/runtime.h.
1405
1406 2010-09-12  Nicola Pero  <nicola.pero@meta-innovation.com>
1407         
1408         * objc/deprecated/objc_malloc.h: New file.
1409         * objc/deprecated/objc_valloc.h: New file.
1410         * objc/objc-api.h: Include the files instead of defining
1411         objc_valloc, _objc_malloc() and similar.
1412         * Makefile.in (OBJC_DEPRECATED_H): Added objc_valloc.h and
1413         objc_malloc.h.
1414         * memory.c: Removed the extra layer of indirection of _objc_malloc
1415         and similar.
1416         (objc_calloc): Use GC_malloc in the garbage-collected
1417         implementation as GC_malloc returns memory that is already freed.
1418         (objc_valloc): Deprecated.      
1419         
1420 2010-09-12  Nicola Pero  <nicola.pero@meta-innovation.com>
1421
1422         * objc/deprecated/objc_error.h: New file.
1423         * objc/objc-api.h: Include deprecated/objc_error.h instead of
1424         defining objc_error and related.
1425         * error.c: New file.  Added _objc_abort function which replaces
1426         objc_error.  No change in functionality as they both print an
1427         error and abort.
1428         * misc.c: File removed.  Code moved into memory.c and error.c.
1429         * memory.c: New file.
1430         * objc-private/error.h: New file.
1431         * archive.c: Include objc-private/error.h and use _objc_abort
1432         instead of objc_error everywhere.
1433         * class.c: Same change.
1434         * encoding.c: Same change.
1435         * init.c: Same change, and simplified init_check_module_version.
1436         * memory.c: Same change.
1437         * sendmsg.c:  Same change.
1438         * thr.c: Same change.
1439         * Makefile.in (OBJ_DEPRECATED_H): Added objc_error.h.
1440         (OBJ_H): Reordered list.
1441         (OBJS): Removed misc.lo, added memory.lo and error.lo.
1442         (OBJS_GC): Removed misc_gc.lo, added memory_gc.lo and error_gc.lo.
1443         (misc_gc.lo): Rule removed.
1444         (error_gc.lo): Rule added.
1445         (memory_gc.lo): Rule added.
1446         
1447 2010-09-12  Nicola Pero  <nicola.pero@meta-innovation.com>
1448
1449         * objc/objc.h (__GNU_LIBOBJC__): New #define providing an easy way
1450         to check the API version.  Added some comments.
1451
1452         * objc-private/common.h: New file.
1453         * NXConstStr.m: Include objc-private/common.h.
1454         * Object.m: Same change.
1455         * Protocol.m: Same change.
1456         * archive.c: Same change.
1457         * class.c: Same change.
1458         * encoding.c: Same change.
1459         * exception.c: Same change.
1460         * gc.c: Same change.
1461         * hash.c: Same change.
1462         * init.c: Same change.
1463         * libobjc_entry.c: Same change.
1464         * linking.m: Same change.
1465         * misc.c: Same change (and added a comment).
1466         * nil_method.c: Same change.
1467         * objects.c: Same change.
1468         * sarray.c: Same change.
1469         * selector.c: Same change.
1470         * sendmsg.c: Same change.
1471         * thr.c: Same change.
1472
1473 2010-09-11  Nicola Pero  <nicola.pero@meta-innovation.com>
1474
1475         * objc/objc-api.h: Removed obsolete #ifdef for NeXTSTEP.
1476
1477 2010-09-11  Nicola Pero  <nicola.pero@meta-innovation.com>
1478
1479         * archive.c: Removed not needed includes.
1480         * class.c: Same change.
1481         * hash.c: Same change.
1482         * misc.c: Same change.
1483         * nil_method.c: Same change.
1484         * objects.c: Same change.
1485         * sarray.c: Same change.
1486         * sendmsg.c: Same change.
1487         * thr.c: Same change.
1488
1489 2010-09-11  Nicola Pero  <nicola.pero@meta-innovation.com>
1490
1491         * objc/runtime.h: Moved to objc-private/runtime.h.  Do not include
1492         all the objc/*.h files.
1493         * objc-private/runtime.h: New file.
1494         * archive.c: Include objc-private/runtime.h (and required objc/*.h
1495         files) instead of objc/runtime.h.
1496         * class.c: Same change.
1497         * hash.c: Same change.
1498         * init.c: Same change.
1499         * misc.c: Same change.
1500         * nil_method.c: Same change.
1501         * objects.c: Same change.
1502         * sarray.c: Same change.
1503         * selector.c: Same change.
1504         * sendmsg.c: Same change.
1505         * thr.c: Same change.
1506         
1507 2010-09-11  Nicola Pero  <nicola.pero@meta-innovation.com>
1508
1509         * objc/deprecated/struct_objc_selector.h: New file.  Definition of
1510         'struct objc_selector' and 'sel_eq' moved here.
1511         * objc/deprecated/struct_objc_protocol.h: New file.  Definition of
1512         'struct objc_procotol' moved here.
1513         * objc/deprecated/struct_objc_class.h: New file.  Definition of
1514         'struct objc_class' moved here.
1515         * objc/deprecated/MetaClass.h: New file.  Definition of MetClass
1516         moved here.
1517         * objc/deprecated/STR.h: New file.  Definition of STR moved here.       
1518         * objc/message.h: New file.  Definitions for relval_t, apply_t,
1519         arglist, arglist_t and objc_msg_lookup were moved here.
1520         * objc/objc.h: Include the above files instead of defining the
1521         corresponding structs, types and functions here.  Added new opaque
1522         definitions for SEL and Class.  Use Class and not 'struct
1523         objc_class *' in the definition of 'struct objc_object'.
1524         Commented all types defined in the file.  Removed special
1525         definition of BOOL as 'int' on __vxworks; use 'unsigned char'
1526         there as well.
1527         * objc/deprecated/objc-unexpected-exception.h: Renamed to
1528         objc_unexpected_exception.h.
1529         * objc/objc-api.h: Updated include of
1530         objc-unexpetected-exception.h
1531         * objc/objc-exception.h: Updated comments.
1532         * Makefile.in (OBJC_H, OBJC_DEPRECATED_H): Added the new header
1533         files.  Reindented list of files.
1534         
1535 2010-09-10  Nicola Pero  <nicola.pero@meta-innovation.com>
1536
1537         * objc/objc-api.h (objc_trace): Unused variable removed.
1538
1539 2010-09-10  Nicola Pero  <nicola.pero@meta-innovation.com>
1540
1541         * objc/deprecated: New directory.
1542         * objc/deprecated/README: New file.
1543         * objc/README: New file.
1544         * objc/typedstream.h: Moved into objc/deprecated/typedstream.h;
1545         objc/typedstream.h replaced with a placeholder including the file
1546         from the deprecated/ directory.
1547         * objc/deprecated/objc-unexpected-exception.h: New file with the
1548         definition of _objc_unexpected_exception.       
1549         * objc/objc-api.h: Include deprecated/objc-unexcepted-exception.h
1550         instead of defining _objc_unexpected_exception.
1551         * objc/deprecated/Object.h: New file with the deprecated Object
1552         methods in a 'Deprecated' category.
1553         * objc/Object.h Include deprecated/Object.h instead of defining
1554         the deprecated methods.
1555         * Object.m: Moved deprecated methods into 'Deprecated' category.
1556         * objc-private: New directory.
1557         * objc-private/README: New file.
1558         * Makefile.in (OBJC_DEPRECATED_H): New variable.
1559         (install-headers): Create installation directory for
1560         OBJC_DEPRECATED_H headers, and install them.
1561
1562 2010-09-10  Nicola Pero  <nicola.pero@meta-innovation.com>
1563
1564         * objc/objc-exception.h: Fixed include of objc.h.
1565         
1566 2010-09-08  Nicola Pero  <nicola.pero@meta-innovation.com>
1567
1568         * objc/objc-exception.h: New file.
1569         * exception.c (objc_set_uncaught_exception_handler): Implemented.
1570         (objc_set_exception_matcher): Implemented.
1571         (objc_exception_throw): Use the uncaught exception handler if set.
1572         (PERSONALITY_FUNCTION): Use the exception matcher instead of the
1573         hardcoded isKindOf.
1574         (isKindOf): Renamed to is_kind_of_exception_matcher.  Tidied code
1575         up.  Removed segmentation fault when value is 'nil'.
1576         * objc/objc-api.h (_objc_unexpected_exception): Mark as
1577         deprecated.
1578         * Makefile.in (exception.lo, exception_gc.lo): Use
1579         -Wno-deprecated-declarations when compiling.
1580         (OBJC_H): Added objc-exception.h
1581
1582 2010-09-08  Nicola Pero  <nicola.pero@meta-innovation.com>
1583
1584         * objc/typedstream.h: Deprecate all functions in the file.  This
1585         file is obsolete.
1586         * objc/Object.h ([+streamVersion:], [-read:], [-write:],
1587         [-awake]): Documented that these methods are deprecated.  Added a
1588         brief description of the Object class and its relationship to the
1589         NSObject class.
1590         * Makefile.in: Compile archive.c and Object.m with
1591         -Wno-deprecated-declarations.
1592
1593 2010-09-08  Nicola Pero  <nicola.pero@meta-innovation.com>
1594
1595         Removed obsolete intermediate threading layer.
1596         * thr.c: Use __gthread_objc_xxx functions directly instead of
1597         __objc_thread_xxx ones.
1598         * objc/thr.h: Removed prototypes of no longer existing
1599         __objc_thread_xxx functions.
1600         * Makefile.in: Removed thr-objc.lo.
1601         * thr-dce.c: File removed.
1602         * thr-decosf1.c: File removed.
1603         * thr-irix.c: File removed.
1604         * thr-mach.c: File removed.
1605         * thr-objc.c: File removed.
1606         * thr-os2.c: File removed.
1607         * thr-posix.c: File removed.
1608         * thr-pthreads.c: File removed.
1609         * thr-rtems.c: File removed.
1610         * thr-single.c: File removed.
1611         * thr-solaris.c: File removed.
1612         * thr-vxworks.c: File removed.
1613         * thr-win32.c: File removed.
1614         * README.threads: File removed.
1615         * THREADS.MACH: File removed.
1616         * THREADS: Updated.
1617
1618 2010-09-07  Nicola Pero  <nicola.pero@meta-innovation.com>
1619
1620         * Object.m (MAX_CLASS_NAME_LEN): Unused define removed.
1621
1622 2010-09-06  Iain Sandoe  <iains@gcc.gnu.org>
1623
1624         * encoding.c: Add TARGET_ALIGN_NATURAL definition for m64 powerpc darwin.
1625         Add a comment as to why, update FIXME comments.
1626
1627 2010-09-06  Nicola Pero  <nicola.pero@meta-innovation.com>
1628
1629         * makefile.dos: Obsolete file removed.
1630         
1631 2010-04-02  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1632
1633         * aclocal.m4: Regenerate.
1634
1635 2010-03-23  Dave Korn  <dave.korn.cygwin@gmail.com>
1636
1637         PR libobjc/30445
1638         * configure.ac (extra_ldflags_libobjc): Define appropriately for
1639         Cygwin and MinGW hosts.
1640         * Makefile.am (libobjc_s.a): Remove dead pre-libtool target.
1641         (libobjc.dll): Likewise.
1642         * configure: Regenerate.
1643
1644 2009-12-05  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1645
1646         * configure: Regenerate.
1647
1648 2009-11-28  Jakub Jelinek  <jakub@redhat.com>
1649
1650         * sarray.c (sarray_free): Use old_buckets variable.
1651         * encoding.c (objc_layout_structure_next_member): Remove unused
1652         bfld_type_size variable.
1653
1654 2009-08-24  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1655
1656         * configure.ac (AC_PREREQ): Bump to 2.64.
1657
1658 2009-08-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1659
1660         * aclocal.m4: Regenerate.
1661         * configure: Regenerate.
1662         * config.h.in: Regenerate.
1663
1664 2009-08-22  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1665
1666         * Makefile.in (LIBTOOL): Add $(LIBTOOLFLAGS).
1667
1668 2009-07-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1669
1670         * Makefile.in (AUTOCONF, ACLOCAL, ACLOCAL_AMFLAGS, aclocal_deps):
1671         New variables.
1672         ($(srcdir)/configure, $(srcdir)/aclocal.m4): New rules.
1673
1674 2009-07-30  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1675
1676         * configure.ac (_AC_ARG_VAR_PRECIOUS): Use m4_rename_force.
1677
1678 2009-04-09  Nick Clifton  <nickc@redhat.com>
1679
1680         * sendmsg.c: Change copyright header to refer to version 3 of
1681         the GNU General Public License with version 3.1 of the GCC
1682         Runtime Library Exception and to point readers at the COPYING3
1683         and COPYING3.RUNTIME files and the FSF's license web page.
1684         * NXConstStr.m: Likewise.
1685         * Object.m: Likewise.
1686         * Protocol.m: Likewise.
1687         * archive.c: Likewise.
1688         * class.c: Likewise.
1689         * encoding.c: Likewise.
1690         * exception.c: Likewise.
1691         * gc.c: Likewise.
1692         * hash.c: Likewise.
1693         * init.c: Likewise.
1694         * libobjc_entry.c: Likewise.
1695         * linking.m: Likewise.
1696         * misc.c: Likewise.
1697         * nil_method.c: Likewise.
1698         * objc/NXConstStr.h: Likewise.
1699         * objc/Object.h: Likewise.
1700         * objc/Protocol.h: Likewise.
1701         * objc/encoding.h: Likewise.
1702         * objc/hash.h: Likewise.
1703         * objc/objc-api.h: Likewise.
1704         * objc/objc-decls.h: Likewise.
1705         * objc/objc-list.h: Likewise.
1706         * objc/objc.h: Likewise.
1707         * objc/runtime.h: Likewise.
1708         * objc/sarray.h: Likewise.
1709         * objc/thr.h: Likewise.
1710         * objc/typedstream.h: Likewise.
1711         * objects.c: Likewise.
1712         * sarray.c: Likewise.
1713         * selector.c: Likewise.
1714         * thr-dce.c: Likewise.
1715         * thr-decosf1.c: Likewise.
1716         * thr-irix.c: Likewise.
1717         * thr-mach.c: Likewise.
1718         * thr-objc.c: Likewise.
1719         * thr-os2.c: Likewise.
1720         * thr-posix.c: Likewise.
1721         * thr-pthreads.c: Likewise.
1722         * thr-rtems.c: Likewise.
1723         * thr-single.c: Likewise.
1724         * thr-solaris.c: Likewise.
1725         * thr-vxworks.c: Likewise.
1726         * thr-win32.c: Likewise.
1727         * thr.c: Likewise.
1728         * libobjc.def: Change copyright header to refer to version 3 of
1729         the GNU General Public License and to point readers at the COPYING3
1730         file and the FSF's license web page.
1731         * makefile.dos: Likewise.
1732
1733 2009-04-09  Jakub Jelinek  <jakub@redhat.com>
1734
1735         * Makefile.in: Change copyright header to refer to version
1736         3 of the GNU General Public License and to point readers at the
1737         COPYING3 file and the FSF's license web page.
1738         * configure.ac: Likewise.
1739
1740 2009-03-12  Richard Frith-Macdonald  <rfm@gnu.org>
1741             David Ayers  <ayers@fsfe.org>
1742
1743         PR libobjc/27466
1744         * objc/objc-api.h (_objc_unexpected_exception): Declare
1745         new hook.  Update copyright dates.
1746         * exception.c (objc_exception_throw): Use hook.  Update
1747         copyright dates.
1748         * libobjc.def (_objc_unexpected_exception): Export hook.
1749         Update copyright dates.
1750         
1751 2009-03-01  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1752
1753         * configure: Regenerate.
1754
1755 2008-12-18  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1756
1757         * configure: Regenerate.
1758
1759 2008-11-21  Kai Tietz  <kai.tietz@onevision.com>
1760
1761         *  Object.m (errno): Replaced by errno.h include.
1762         (compare): Cast self to id to prevent warning on comparison.
1763         * objc/objc.h (BOOL): Prevent redeclaration of BOOL, if it is
1764         already there.
1765         * sendmsg.c (__objc_print_dtable_stats): Remove type warnings.
1766         * thr-win32.c (__objc_thread_detach): Remove type warning.
1767         (__objc_thread_id): Likewise.
1768         * thr.c (__objc_thread_detach_functiont): Add __builtin_trap ()
1769         for noreturn.
1770
1771 2008-09-26  Peter O'Gorman  <pogma@thewrittenword.com>
1772             Steve Ellcey  <sje@cup.hp.com>
1773
1774         * configure: Regenerate for new libtool.
1775         * config.h.in: Regenerate for new libtool.
1776
1777 2008-07-18  Matthias Klose  <doko@ubuntu.com> 
1778
1779         * Makefile.in: Ignore missing ../boehm-gc/threads.mk. 
1780
1781 2008-07-18  Matthias Klose  <doko@ubuntu.com> 
1782
1783         * Makefile.in: Include ../boehm-gc/threads.mk. 
1784         (OBJC_BOEHM_GC_LIBS): Define, (libobjc_gc$(libsuffix).la): Use it.
1785
1786 2008-07-06  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1787
1788         * Makefile.in (install-info): New stub target.
1789
1790 2008-06-17  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
1791
1792         * configure: Regenerate.
1793
1794 2008-06-14  Kai Tietz  <kai.tietz@onevision.com>
1795
1796         * exception.c (PERSONALITY_FUNCTION): Remove extra decrement
1797         if HAVE_GETIPINFO is not defined.
1798
1799 2008-06-10  Kai Tietz  <kai.tietz@onevision.com>
1800
1801         * Object.m (compare): Add type id.
1802         * objc/Object.h: Likewise.
1803         * archive.c (objc_read_class): Use size_t to extend version to be
1804         size of pointer scalar width.
1805         * sendmsg.c (rtx): Undefine it before redefinition.
1806         (__objc_print_dtable_stats): Cast arguments to long as intended.
1807
1808 2008-05-30  Julian Brown  <julian@codesourcery.com>
1809
1810         * exception.c (__objc_exception_class): Initialise as constant
1811         array for ARM EABI. Change macro to static const for non-ARM EABI.
1812         (ObjcException): Add note about structure layout. Remove landingPad
1813         and handlerSwitchValue for ARM EABI.
1814         (get_ttype_entry): Add __ARM_EABI_UNWINDER__ version
1815         of function.
1816         (CONTINUE_UNWINDING): Define for ARM EABI/otherwise cases.
1817         (PERSONALITY_FUNCTION): Use ARM EABI-specific arguments, and add
1818         ARM EABI unwinding support.
1819         (objc_exception_throw): Use memcpy to initialise exception class.
1820
1821 2008-05-25  Alan Modra  <amodra@bigpond.net.au>
1822
1823         * encoding.c (strip_array_types): Rename from get_inner_array_type.
1824         (rs6000_special_round_type_align): Update.
1825
1826 2008-05-09  Julian Brown  <julian@codesourcery.com>
1827
1828         * Makefile.in (LTLDFLAGS): New.
1829         (libobjc$(libsuffix).la, libobjc_gc$(libsuffix).la): Use above.
1830
1831 2008-04-18  Paolo Bonzini  <bonzini@gnu.org>
1832
1833         PR bootstrap/35457
1834         * aclocal.m4: Regenerate.
1835         * configure: Regenerate.
1836
1837 2008-01-24  David Edelsohn  <edelsohn@gnu.org>
1838
1839         * configure: Regenerate.
1840
1841 2007-10-14  H.J. Lu  <hongjiu.lu@intel.com>
1842
1843         * configure.ac: Don't run config-ml.in directly.
1844         (multilib_arg): New.
1845         * configure: Regenerated.
1846
1847 2007-08-06  Andrew Pinski  <pinskia@gmail.com>
1848
1849         PR libobjc/30731
1850         * exception.c (parse_lsda_header): Use _uleb128_t/_sleb128_t instead
1851         of _Unwind_Word for variables which are used in
1852         read_uleb128/read_sleb128.
1853         (PERSONALITY_FUNCTION): Likewise.
1854
1855 2007-07-05  H.J. Lu  <hongjiu.lu@intel.com>
1856
1857         * aclocal.m4: Regenerated.
1858
1859 2007-06-03  Andrew Pinski  <andrew_pinski@playstation.sony.com>
1860
1861         * configure.ac: Fix a typo in *-*-darwin clause.
1862         * configure: Regenerated.
1863
1864 2007-06-02  H.J. Lu  <hongjiu.lu@intel.com>
1865
1866         * configure.ac: Fix a typo.
1867         * configure: Regenerated.
1868
1869 2007-06-02  Paolo Bonzini  <bonzini@gnu.org>
1870
1871         * configure: Regenerate.
1872
1873 2007-06-01  Andrew Pinski  <andrew_pinski@playstation.sony.com>
1874
1875         * Makefile.in: Replace all uses of libext with libsuffix.
1876         * configure.ac: Likewise.
1877         * configure: Regenerate.
1878
1879         Revert:
1880         * Makefile.in: Remove all uses of $(libext).
1881
1882 2007-05-23  Andrew Pinski  <andrew_pinski@playstation.sony.com>
1883
1884         * Makefile.in: Remove all uses of $(libext).
1885
1886 2007-05-23  Steve Ellcey  <sje@cup.hp.com>
1887
1888         * configure: Regenerate.
1889         * aclocal.m4: Regenerate.
1890
1891 2007-04-21  Andrew Ruder  <andy@aeruder.net>
1892
1893         * sendmsg.c (__objc_get_forward_imp): Call
1894         __objc_msg_forward2 for real.
1895
1896 2007-04-09  Andrew Ruder  <andy@aeruder.net>
1897
1898         * sendmsg.c: Added __objc_msg_forward2, a hook that allows
1899         external libraries to provide a function that returns the real
1900         forwarding function based on both the selector and the receiver.
1901         * objc/objc-api.h: Define __objc_msg_forward2.
1902
1903 2007-03-01  Brooks Moses  <brooks.moses@codesourcery.com>
1904
1905         * Makefile.in: Add dummy install-pdf target.
1906
1907 2007-02-18  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>
1908
1909         * objc/objc-list.h (list_free): Add keyword 'inline' to avoid
1910         unused warning.
1911         
1912 2006-10-31  Geoffrey Keating  <geoffk@apple.com>
1913
1914         * encoding.c (darwin_rs6000_special_round_type_align): New.
1915
1916 2006-10-14  Geoffrey Keating  <geoffk@apple.com>
1917
1918         * Makefile.in: Use multi_basedir instead of toplevel_srcdir.
1919         * configure.ac: Use multi.m4 from aclocal rather than custom
1920         code.  Use multi_basedir instead of toplevel_srcdir.
1921         * aclocal.m4: Regenerate.
1922         * configure: Regenerate.
1923
1924 2006-10-10  Brooks Moses  <bmoses@stanford.edu>
1925
1926         * Makefile.in: Added empty "pdf" target.
1927
1928 2006-07-18  Paolo Bonzini  <bonzini@gnu.org>
1929
1930         * configure: Regenerate.
1931
1932 2006-05-23  Carlos O'Donell  <carlos@codesourcery.com>
1933
1934         * Makefile.in: Add install-html target. Add install-html to .PHONY
1935
1936 2006-02-21  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1937
1938         PR libobjc/26309
1939         * thr-objc.c (_XOPEN_SOURCE): Don't define on Tru64 UNIX.
1940
1941 2006-01-24  David Ayers  <d.ayers@inode.at>
1942
1943         PR libobjc/9751
1944         * gc.c (class_ivar_set_gcinvisible): Replace strncpy with memcpy
1945         and insure the new strings are '\0' termintated.
1946
1947 2006-01-24  David Ayers  <d.ayers@inode.at>
1948
1949         PR libobjc/13946
1950         * configure.ac: Add include directives for --enable-objc-gc.
1951         * Makefile.in: Ditto.
1952         * configure: Regenerate.
1953
1954         * gc.c (__objc_class_structure_encoding): Increment the used bytes
1955         instead of the local pointer to them.
1956
1957 2005-12-14  Andrew Pinski  <pinskia@physics.uc.edu>
1958
1959         PR objc/25360
1960         * objc/objc-api.c (_C_COMPLEX): New define.
1961         * encoding.c (objc_sizeof_type): Handle _C_Complex.
1962         (objc_alignof_type): Likewise.
1963         (objc_skip_typespec): Likewise.
1964
1965 2005-12-15  David Ayers  <d.ayers@inode.at>
1966
1967         PR libobjc/14382
1968         * README (+load,+initialize): Fix documentation to reflect
1969         intended and implemented semantics for +load and +initialize.
1970         
1971 2005-12-12  Andrew Pinski  <pinskia@physics.uc.edu>
1972
1973         * encoding.c (TYPE_FIELDS): Fix to skip over just _C_STRUCT_B and
1974         the name.
1975         (get_inner_array_type): Fix to skip over _C_ARY_B and size.
1976         (rs6000_special_round_type_align): Update for the ABI fix.
1977         (objc_layout_finish_structure): Correct the encoding which is passed to
1978         ROUND_TYPE_ALIGN.
1979
1980 2005-12-11  Andrew Pinski  <pinskia@physics.uc.edu>
1981
1982         PR libobjc/25347
1983         * encoding.c (objc_sizeof_type): Don't handle _C_UNION_B special
1984         but use the struct layout functions.
1985         (objc_alignof_type): Likewise.
1986         (objc_layout_structure): Handle _C_UNION_B also.
1987         (objc_layout_structure_next_member): Likewise.
1988         (objc_layout_finish_structure): Likewise.
1989
1990 2005-12-11  Andrew Pinski  <pinskia@physics.uc.edu>
1991
1992         PR libobjc/25346
1993         * objc/objc-api.h (_C_BOOL): New define.
1994         * encoding.c (objc_sizeof_type): Handle _C_BOOL.
1995         (objc_alignof_type): Likewise.
1996         (objc_skip_typespec): Likewise.
1997
1998 2005-11-20  David Ayers  <d.ayers@inode.at>
1999
2000         PR libobjc/19024
2001         * objc/hash.h: Remove deprecated hash API.
2002         * hash_compat.c: Remove.
2003         * Makefile.in: Remove reference to hash_compat.c.
2004
2005         * configure.ac (VERSION): Bump library version to 2:0:0.
2006         * configure: Regenerate.
2007
2008 2005-11-09  Alexandre Oliva  <aoliva@redhat.com>
2009
2010         PR other/4372
2011         * thr-objc.c (_XOPEN_SOURCE): Define.
2012
2013 2005-10-07  Ulrich Weigand  <uweigand@de.ibm.com>
2014
2015         PR libobjc/23612
2016         * objc/objc-api.h (struct objc_ivar): Move definition to
2017         global scope.
2018
2019 2005-09-04  Andrew Pinski  <pinskia@physics.uc.edu>
2020             Rasmus Hahn  <rassahah@neofonie.de>
2021
2022         PR libobjc/23108
2023         * archive.c (objc_write_type): Correct the element offset.
2024         (objc_read_type): Likewise.
2025
2026 2005-08-17  Kelley Cook  <kcook@gcc.gnu.org>
2027
2028         * All files: Update FSF address.
2029
2030 2005-08-13  Marcin Koziej  <creep@desk.pl>
2031             Andrew Pinski  <pinskia@physics.uc.edu>
2032
2033         PR libobjc/22492
2034         * exception.c (PERSONALITY_FUNCTION): Fix the PC with finally.
2035
2036 2005-08-13  Andrew Pinski  <pinskia@physics.uc.edu>
2037
2038         * Makefile.in (extra_ldflags_libobjc): New.
2039         (libobjc$(libext).la): Add extra_ldflags_libobjc to the link line.
2040         (libobjc_gc$(libext).la): Likewise.
2041         * configure.ac (extra_ldflags_libgfortran): Set for *-darwin* to
2042         "-Wl,-single_module".
2043         * configure: Regenerate.
2044         * linking.m (_objcInit): Remove.
2045
2046 2005-07-26  Andrew Pinski  <pinskia@physics.uc.edu>
2047
2048         PR libobjc/22606
2049         * Makefile.in (ALL_CFLAGS): Add -fexceptions.
2050
2051 2005-06-08  David Ayers  <d.ayers@inode.at>
2052
2053         * objc/NXConstStr.h, objc/Object.h, objc/Protocol.h,
2054         objc/encoding.h, objc/hash.h, objc/objc-api.h,
2055         objc/runtime.h, objc/sarray.h, objc/thr.h, 
2056         objc/typedstream.h: Do not include Objective-C headers as
2057         system headers.
2058
2059 2005-06-07  David Ayers  <d.ayers@inode.at>
2060
2061         * archive.c, init.c, selector.c: Include hash.h.
2062         * archive.c, class.c, encoding.c, gc.c, hash.c, hash_compat.c,
2063         init.c, misc.c, nil_method.c, objects.c, sarray.c, selector.c,
2064         sendmsg.c, thr-dce.c, thr-decosf1.c, thr-irix.c, thr-mach.c,
2065         thr-objc.c, thr-os2.c, thr-posix.c, thr-pthreads.c, thr-rtems.c,
2066         thr-single.c, thr-solaris.c, thr-vxworks.c, thr-win32.c, thr.c:
2067         Include Objective-C headers with quotes and objc/ directory
2068         prefix.
2069
2070 2005-05-19  Richard Henderson  <rth@redhat.com>
2071
2072         * exception.c: Revert last change.
2073
2074 2005-05-19  David Ayers  <d.ayers@inode.at>
2075
2076         * exception.c: Include tsystem.h for unwind.h.
2077
2078 2005-05-09  Mike Stump  <mrs@apple.com>
2079
2080         * configure: Regenerate.
2081
2082 2005-04-12  Mike Stump  <mrs@apple.com>
2083
2084         * configure: Regenerate.
2085
2086 2005-03-21  Zack Weinberg  <zack@codesourcery.com>
2087
2088         * Makefile.in: Set gcc_version here.
2089         * configure.ac: Do not invoke TL_AC_GCC_VERSION.  Adjust quoting
2090         in definition of toolexeclibdir so that $(gcc_version) is expanded
2091         by the Makefile.
2092         * aclocal.m4, configure: Regenerate.
2093
2094 2005-03-03  David Ayers  <d.ayers@inode.at>
2095
2096         * objc/hash.h (OBJC_IGNORE_DEPRECATED_API): Update deprecated
2097         version reference.  Correct typo.
2098
2099 2005-03-02  David Ayers  <d.ayers@inode.at>
2100
2101         PR libobjc/19024
2102         * Makefile.in (OBJS): Add hash_compat.lo.
2103         (OBJS_GC): Add hash_compat_gc.lo.
2104         (hash_compat_gc.lo): New target and rule.
2105         * objc/hash.h (hash_new, hash_delete, hash_add, hash_remove)
2106         (hash_next, hash_value_for_key, hash_is_key_in_hash)
2107         (hash_ptr, hash_string, compare_ptrs, compare_strings): Prefix
2108         with objc_.  Add deprecated non prefixed inlined versions.
2109         (OBJC_IGNORE_DEPRECATED_API): New macro to hide deprecated
2110         declarations.
2111         * hash.c (hash_new, hash_delete, hash_add, hash_remove, hash_next)
2112         (hash_value_for_key, hash_is_key_in_hash): Prefix with objc_ and
2113         update callers.
2114         * hash_compat.c: New file.
2115         * archive.c: Update callers.
2116         * init.c: Likewise.
2117         * selector.c: Likewise.
2118         * libobjc.def: Add objc_ versions of hash functions.
2119
2120 2005-02-28  Andrew Pinski <pinskia@physics.uc.edu>
2121
2122         PR libobjc/20252
2123         * Makefile.in (GTHREAD_FLAGS): Remove.
2124         (ALL_CFLAGS): Remove usage of GTHREAD_FLAGS.
2125         * thr-objc.c: Include config.h.
2126         * configure.ac: Instead of looking at GCC's makefile, figure out if
2127         GTHREAD_FLAGS should be defined by looking at the `thread model'
2128         of the current gcc.
2129         * configure: Regenerate.
2130         * config.h.in: Regenerate.
2131
2132 2005-02-28  Paolo Bonzini  <bonzini@gnu.org>
2133
2134         PR bootstrap/17383
2135         * configure.ac: Call GCC_TOPLEV_SUBDIRS.
2136         (Determine CFLAGS for gthread): Use $host_subdir.
2137         * configure: Regenerate.
2138         * Makefile.in (host_subdir): New.
2139         (INCLUDES): Use it.
2140
2141 2004-12-20  Andrew Pinski  <pinskia@physics.uc.edu>
2142
2143         PR libobjc/12035
2144         * gc.c: Remove definition of LOGWL, modWORDSZ, and divWORDSZ since
2145         they are not used.
2146         Include limits.h and stdlib.h.
2147         Define BITS_PER_WORD.
2148
2149 2004-12-12  Alexander Malmberg  <alexander@malmberg.org>
2150
2151         * selector.c (__objc_init_selector_tables): Add missing void to
2152         definition.
2153
2154 2004-12-02  Richard Sandiford  <rsandifo@redhat.com>
2155
2156         * configure.ac: Use TL_AC_GCC_VERSION to set gcc_version.
2157         * configure, aclocal.m4: Regenerate.
2158
2159 2004-11-29  Kelley Cook  <kcook@gcc.gnu.org>
2160
2161         * configure: Regenerate for libtool change.
2162
2163 2004-11-25  Kelley Cook  <kcook@gcc.gnu.org>
2164
2165         * configure: Regenerate for libtool reversion.
2166
2167 2004-11-24  Kelley Cook  <kcook@gcc.gnu.org>
2168
2169         * configure: Regenerate for libtool change.
2170
2171 2004-11-24  Kelley Cook  <kcook@gcc.gnu.org>
2172
2173         * aclocal.m4, config.h.in: Regenerate.
2174
2175 2004-10-08  Mike Stump  <mrs@apple.com>
2176             Andrew Pinski  <pinskia@physics.uc.edu>
2177
2178         * aclocal.m4: Rename to ...
2179         * acinclude.m4: here and also use m4_include instead of sinclude.
2180         * aclocal.m4: Regenerate.
2181         * configure: Regenerate.
2182         * configure.ac: Add AM_MAINTAINER_MODE and AM_PROG_CC_C_O.
2183         * Makefile.in (configure): Add @MAINT@ infront of configure.ac
2184
2185 2004-10-08  Andrew Pinski  <pinskia@physics.uc.edu>
2186
2187         * archive.c: Fix all the warnings about passing unsigned char*
2188         to char* and the other way too.
2189
2190 2004-09-16  Andrew Pinski  <pinskia@physics.uc.edu>
2191
2192         PR libobjc/16448
2193         * exception.c: Include config.h
2194         (objc_exception_throw): Change _GLIBCXX_SJLJ_EXCEPTIONS to
2195         SJLJ_EXCEPTIONS.
2196         * configure.ac: Find out what exception handling code we use.
2197         * configure: Regenerate.
2198         * config.h.in: New file, regenerate.
2199
2200 2004-09-16  Andrew Pinski  <apinski@apple.com>
2201
2202         * encoding.c (ALTIVEC_VECTOR_MODE): Define a bogus macro.
2203
2204 2004-08-28  Nathanael Nerode  <neroden@gcc.gnu.org>
2205
2206         * configure.ac: Switch from _GCC_TOPLEV_NONCANONICAL_TARGET to
2207         ACX_NONCANONICAL_TARGET.
2208         * configure: Regenerate.
2209
2210 2004-08-13  Ziemowit Laski  <zlaski@apple.com>
2211
2212         * objc/sarray.h: Hoist include of assert.h near the top of file,
2213         and mark the remainder of the file 'extern "C"'.
2214
2215 2004-08-13  Andrew Pinski  <pinskia@physics.uc.edu>
2216
2217         * objc/Object.h: Move includes out of extern "C" blocks.
2218         * objc/encoding.h: Likewise.
2219         * objc/hash.h: Likewise.
2220         * objc/objc-api.h: Likewise.
2221         * objc/runtime.h: Likewise.
2222         * objc/sarray.h: Likewise.
2223         * objc/typedstream.h: Likewise.
2224
2225 2004-08-12  Ziemowit Laski  <zlaski@apple.com>
2226
2227         * objc/NXConstStr.h: Update copyright date; bracket with
2228         'extern "C"' for C++ use; make include syntax consistent
2229         by using <...> instead of "..."; hoist <objc/...> includes
2230         above the 'extern "C"' block.
2231         * objc/Object.h: Likewise.
2232         * objc/Protocol.h: Likewise.
2233         * objc/encoding.h: Likewise.
2234         * objc/hash.h: Likewise.
2235         * objc/runtime.h: Likewise.
2236         * objc/sarray.h: Likewise.
2237         * objc/thr.h: Likewise.
2238         * objc/typedstream.h: Likewise.
2239         * objc/objc-api.h: Add 'extern "C"' block for C++ use.
2240         (objc_static_instances): For C++ case, do away with
2241         zero-sized array.
2242         (objc_method): Hoist definition to file scope.
2243         (_objc_load_callback, _objc_object_alloc, class_get_class_method,
2244         class_get_instance_method, class_create_instance,
2245         class_get_class_name, class_get_instance_size,
2246         class_get_meta_class, class_get_super_class, class_get_version,
2247         class_is_class, class_is_meta_class, class_set_version,
2248         class_get_gc_object_type, class_ivar_set_gcinvisible,
2249         get_imp): Rename 'class' parameter to '_class'.
2250         * objc/objc-list.h: Add 'extern "C"' block for C++ use.
2251         * objc/objc.h: Update copyright date.
2252         (arglist_t): Provide a union tag.
2253
2254 2004-07-22  Andrew Pinski  <pinskia@physics.uc.edu>
2255
2256         * thr.c (__objc_thread_detach_function): Do not mark as volatile
2257         but instead use the attribute noreturn.
2258
2259 2004-06-28  Zack Weinberg  <zack@codesourcery.com>
2260
2261         * encoding.c: Rename target_flags with a #define to avoid
2262         conflict with a prior declaration.
2263
2264 2004-06-24  Andrew Pinski  <apinski@apple.com>
2265
2266         * objc/encoding.h: Wrap the functions with extern "C" for C++
2267         mode.
2268         * objc/hash.h: Likewise.
2269         * objc/objc-api.h: Likewise.
2270         * objc/objc-list.h: Likewise.
2271         * objc/runtime.h: Likewise.
2272         * objc/sarray.h: Likewise.
2273         * objc/thr.h: Likewise.
2274         * objc/typedstream.h: Likewise.
2275
2276
2277 2004-06-21  Nick Clifton  <nickc@redhat.com>
2278
2279         * encoding.c (BITS_PER_UNIT): Define if a definition is not
2280         provided.
2281
2282 2004-06-20  Alexander Malmberg  <alexander@malmberg.org>
2283
2284         * Makefile.in (exception.lo): Remove $(OBJC_GCFLAGS).
2285         (exception_gc.lo): New.
2286         (OBJS_GC): Add exception_gc.lo.
2287
2288 2004-06-17  Richard Henderson  <rth@redhat.com>
2289
2290         * exception.c: New file.
2291         * Makefile.in (exception.lo): New.
2292         (OBJS): Add it.
2293
2294 2004-06-14  Andrew Pinski  <pinskia@physics.uc.edu>
2295
2296         * linking.m (_objcInit): New empty function
2297         for Darwin only.
2298
2299 2004-06-11  Andrew Pinski  <pinskia@physics.uc.edu>
2300
2301         * configure.ac: Support --enable-shared=libobjc.
2302         * configure: Regenerate.
2303
2304         PR libobjc/15901
2305         * configure.ac: Do not disable shared by default.
2306         * configure: Regenerate.
2307
2308 2004-06-03  Nicola Pero  <n.pero@mi.flashnet.it>
2309
2310         * Protocol.m ([-isEqual:]): Small optimizations returning
2311         immediately if the argument is equal to self, and accessing
2312         the argument's name directly if it's a protocol.
2313
2314 2004-06-03  David Ayers  <d.ayers@inode.at>
2315
2316         * Protocol.m ([-isEqual:]): Test the class of the argument.
2317
2318 2004-05-25  Andrew Pinski  <pinskia@physics.uc.edu>
2319
2320         * configure.ac (includedir): Rename to ...
2321         (includedirname).
2322         * Makefile.in: s/includedir/includedirname/.
2323
2324         PR target/11572
2325         * configure.ac (includedir): Set to "include"
2326         except for Darwin.
2327         (libext) Set to empty except for Darwin.
2328         * configure: Regenerate
2329         * Makefile.in: s/libobjc.la/libobjc$(libext).la/g.
2330         s/include/$(includedir)/g.
2331
2332 2004-05-25  Daniel Jacobowitz  <drow@false.org>
2333
2334         * Makefile.in: Add .NOEXPORT.
2335
2336 2004-05-25  Andrew Pinski  <pinskia@physics.uc.edu>
2337
2338         Merge from the libobjc-branch
2339         2004-02-09  Andrew Pinski  <pinskia@physics.uc.edu>
2340
2341                 * Makefile.in (OBJC_H): Change objc-deps.h to objc-decls.h.
2342
2343         2004-02-03  Andrew Pinski  <pinskia@physics.uc.edu>
2344
2345                 * Makefile.in (OBJC_H): Add objc-deps.h.
2346
2347         2004-01-27  Nicola Pero  <n.pero@mi.flashnet.it>
2348
2349                 * Protocol.m ([-conformsTo:]): If the argument is nil, return NO.
2350                 ([-hash], [-isEqual:]): New methods.
2351
2352         2004-01-27  Richard Frith-Macdonald <rfm@gnu.org>
2353
2354                 * sarray.c (sarray_free): Add a better comment.
2355
2356         2004-01-27  Adam Fedor  <fedor@gnu.org>
2357
2358                 * hash.c (hash_add): Cast cachep to int.
2359                 * selector.c (__sel_register_typed_name): Cast
2360                 soffset_decode to int.
2361
2362         2004-01-27  Alexander Malmberg  <alexander@malmberg.org>
2363
2364                 * selector.c: Rename register_selectors_from_list to
2365                 __objc_register_selectors_from_list. Update caller.
2366                 (__objc_register_selectors_from_list): Lock __objc_runtime_mutex
2367                 while registering selectors. Use __sel_register_typed_name instead
2368                 of sel_register_typed_name. Check for NULL method_name:s.
2369                 (pool_alloc_selector): New function.
2370                 (__sel_register_typed_name): Use pool_alloc_selector to allocate
2371                 selector structures.
2372                 * sendmsg.c (class_add_method_list): Use
2373                 __objc_register_selectors_from_list.
2374                 * objc/runtime.h: Add __objc_register_selectors_from_list.
2375
2376         2004-01-25  Adam Fedor  <fedor@gnu.org>
2377                     Nicola Pero  <n.pero@mi.flashnet.it>
2378                     Andrew Pinski  <pinskia@physics.uc.edu>
2379
2380                 * objc/objc-decls.h: New file.
2381                 * objc/objc-api.h (_objc_lookup_class): Mark as export.
2382                 (_objc_load_callback): Likewise.
2383                 (_objc_object_alloc): Likewise.
2384                 (_objc_object_copy): Likewise.
2385                 (_objc_object_dispose): Likewise.
2386
2387         2004-01-25  Andrew Pinski  <pinskia@physics.uc.edu>
2388
2389                 * archive.c: s/__inline__/inline
2390                 * sendmsg.c: Likewise.
2391
2392                 * encoding.c: Remove FIXME about the warning
2393                 about unused variable.
2394                 * sendmsg.c: Add a FIXME comment saying that
2395                 this should be using libffi.
2396
2397                 * Makefile.in (LIBTOOL): Use @LIBTOOL@ now as it works.
2398
2399
2400 2004-05-13  Andrew Pinski  <pinskia@physics.uc.edu>
2401
2402         * archive.c (objc_read_class): Initialize class_name.
2403         (objc_read_selector): Initialize selector_name.
2404
2405 2004-05-09  Richard Sandiford  <rsandifo@redhat.com>
2406
2407         * Makefile.in (toolexecdir): Remove trailing space.
2408
2409 2004-04-15  Nathanael Nerode  <neroden@gcc.gnu.org>
2410
2411         PR libobjc/14948
2412         * configure.ac: De-precious CC so multilibs work.
2413         * configure: Regenerate.
2414
2415 2004-04-14  Nathanael Nerode  <neroden@gcc.gnu.org>
2416
2417         * configure.ac: Restore toolexecdir.
2418         * Makefile.in: Restore toolexecdir.
2419         * configure: Regenerate.
2420
2421 2004-04-09  Nathanael Nerode  <neroden@gcc.gnu.org>
2422
2423         * configure.ac: Remove (unused) glibcpp_prefixdir.
2424         * configure: Regenerate.
2425
2426         * configure.in: Rename to configure.ac.
2427         * Makefile.in: Update to match.
2428
2429         * Makefile.in: Remove toolexecdir, glibcpp_toolexecdir (unused).
2430         Replace glibcpp_toolexeclibdir with toolexeclibdir.
2431         * configure.in: Remove glibcpp_toolexecdir (unused).
2432         Replace glibcpp_toolexeclibdir with toolexeclibdir.  Don't generate
2433         config.h or stamp-h (unused).  Move one comment to the right place.
2434         * configure: Regenerate.
2435         * config.h.in: Remove (unused).
2436
2437         * config.h.in: Regenerate with autoheader.
2438
2439         * Makefile.in: Remove (unused) gcc_version_trigger.
2440         * configure.in: Remove (unused) glibcpp_builddir.  Don't AC_SUBST
2441         gcc_version_trigger.
2442         * configure: Regenerate.
2443
2444         * configure.in: Switch to modern style for AC_INIT, AC_OUTPUT.
2445         Sort file into sections.  Remove dnl where appropriate.  Fix
2446         other style issues.
2447         * configure: Regenerate.
2448
2449         * configure.in: Replace old AC_PROG_CC hack with new one.
2450         Define toplevel_srcdir in terms of srcdir, not top_srcdir (there
2451         are no subdirectory output files, so this is fine).  Change prereq
2452         to autoconf 2.59.
2453         * aclocal.m4: Include ../config/no-executables.m4.
2454         * configure: Regenerate with autoconf 2.59.
2455
2456         * configure.in: Improve comments on gthread_cflags.  Improve m4
2457         quotation, and replace 'if test' with 'case', for --enable-objc-gc.
2458         * configure: Regenerate.
2459
2460         * configure.in: Move PACKAGE and VERSION settings up top.  Remove
2461         unused call to AC_PROG_LN_S.  Default RANLIB to ':'.  Remove
2462         redundant checks for values of RANLIB, AR, INSTALL.
2463         * configure: Regenerate.
2464
2465         * configure.in: Clean up handling of
2466         --enable-version-specific-runtime-libs and related variables;
2467         replace 'if test' with 'case' where reasonable.  Fix comments.
2468         Remove useless libstdcxx_interface.
2469         * configure: Regenerate.
2470
2471         * configure.in: Use _GCC_TOPLEV_NONCANONICAL_TARGET.
2472         Replace uses of target_alias with target_noncanonical.
2473         * aclocal.m4: Include ../config/acx.m4.
2474         * configure: Regenerate.
2475         * Makefile.in: Replace uses of target_alias with target_noncanonical.
2476         Fix copyright statement.
2477
2478         * configure.in: Hand-inline bulky, confusing macros from
2479         aclocal.m4.  Replace references to "GNU Objective C" with "GCC".
2480         Update copyright notice.  Remove stuff for automake, which isn't
2481         used in this directory.  Remove emacs local variables.
2482         * aclocal.m4: Remove hand-inlined macros.  Update copyright notice.
2483         * configure: Regenerate.
2484
2485 2004-03-16  Manfred Hollstein  <mh@suse.com>
2486
2487         * Makefile.in, configure.in, configure: Update copyright years.
2488
2489 2004-03-15  Manfred Hollstein  <mh@suse.com>
2490
2491         * Makefile.in (LIBOBJC_VERSION, LIBOBJC_GC_VERSION): Use
2492         definition from configure.in.
2493         * configure.in (PACKAGE): Add definition.
2494         (VERSION): Add definition; substitute it in output files.
2495         * configure: Re-generate.
2496
2497 2004-03-05  Ziemowit Laski  <zlaski@apple.com>
2498
2499         * objc/hash.h (hash_string, compare_strings):
2500         Add type-casts to make Objective-C++ happy.
2501         * objc/typedstream.h (objc_get_stream_class_version):
2502         Rename parameter from 'class' to 'class_name' to make
2503         Objective-C++ happy.
2504
2505 2004-03-01  Michael Matz  <matz@suse.de>
2506
2507         * Makefile.in (ALL_CFLAGS): Add -fno-strict-aliasing.
2508
2509 2004-02-06  Ziemowit Laski  <zlaski@apple.com>
2510
2511         * objc/objc-api.h (objc_super): The 'class' field shall
2512         be named 'super_class' #ifdef __cplusplus.
2513
2514 2004-01-17  Andrew Pinski  <pinskia@physics.uc.edu>
2515
2516         PR target/10781
2517         * encoding.c (rs6000_special_round_type_align): Define.
2518
2519 2004-01-14  Adam Fedor  <fedor@gnu.org>
2520
2521         PR libobjc/12155
2522         * selector.c (__objc_register_instance_methods_to_class): Free
2523         new_list if not used.
2524
2525 2004-01-09  Andrew Ruder  <aeruder@ksu.edu>
2526
2527         PR libobjc/11904
2528         * sarray.c (sarray_free): Free array->is_copy_of latter.
2529
2530 2003-12-01  Zack Weinberg  <zack@codesourcery.com>
2531
2532         PR 11433
2533         * Protocol.m (descriptionForInstanceMethod): Don't dereference
2534         instance_methods if it's NULL.
2535         (descriptionForClassMethod): Likewise for class_methods.
2536
2537 2003-10-24  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2538
2539         * Makefile.in (runtime-info.h): Remove -Wp.
2540
2541 2003-10-21  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2542
2543         * Makefile.in (CC1OBJ): Remove.
2544         (runtime-info.h): Invoke $(CC) so all MULTIFLAGS are handled
2545         correctly.
2546         Use .m extension for temporary file.
2547         Remove assembler temp file.
2548
2549 2003-10-20  Joseph S. Myers  <jsm@polyomino.org.uk>
2550
2551         * objc/hash.h (hash_string): Don't use a cast as an lvalue.
2552
2553 2003-10-17  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2554
2555         * Makefile.in (runtime-info.h): Use MULTIFLAGS.
2556
2557 2003-09-09  Alan Modra  <amodra@bigpond.net.au>
2558
2559         * configure: Regenerate.
2560
2561 2003-08-27  Alexander Malmberg  <alexander@malmberg.org>
2562
2563         * Makefile.in, aclocal.m4: Update to $(libdir)/gcc/ instead of
2564         (libdir)/gcc-lib/ when installing.
2565         * configure: Regenerate.
2566
2567 Thu Jul 10 10:27:43 2003  Nicola Pero  <n.pero@mi.flashnet.it>
2568
2569         libobjc/9969
2570         * sendmsg.c (get_imp): Fixed rare threading problem.
2571         (__objc_responds_to): Similar fixes.
2572         (objc_msg_lookup): Similar fixes.
2573         (__objc_init_install_dtable): Lock the runtime before checking if the
2574         table is installed.
2575
2576 2003-05-23  Nathanael Nerode  <neroden@gcc.gnu.org>
2577
2578         * hash.c, init.c, libobjc.def, libobjc_entry.c, linking.m,
2579         makefile.dos, misc.c, nil_method.c, objects.c, sarray.c,
2580         selector.c, sendmsg.c, thr-dce.c, thr-decosf1.c, thr-irix.c,
2581         thr-mach.c, thr-objc.c, thr-os2.c, thr-posix.c, thr-pthreads.c,
2582         thr-rtems.c, thr-single.c, thr-solaris.c, thr-vxworks.c,
2583         thr-win32.c, thr.c: Replace "GNU CC" with "GCC".
2584         * Makefile.in, NXConstStr.m, Object.m, Protocol.m, archive.c,
2585         class.c, encoding.c, gc.c, objc/NXConstStr.h, objc/Object.h,
2586         objc/Protocol.h, objc/encoding.h, objc/hash.h, objc/objc-api.h,
2587         objc/objc-list.h, objc/objc.h, ocjc/runtime.h, objc/sarray.h,
2588         objc/thr.h, objc/typedstream.h: Replace "GNU CC" with "GCC".
2589
2590 Tue May 13 14:56:03 2003  Richard Frith-Macdonald <rfm@gnu.org>
2591                           Nicola Pero  <n.pero@mi.flashnet.it>
2592
2593         libobjc/10742
2594         * init.c (class_superclass_of_class): New function.
2595         (create_tree_of_subclasses_inherited_from): Use it.
2596         (__objc_tree_insert_class): Likewise.
2597         (class_is_subclass_of_class): Likewise.
2598
2599 2003-04-11  David Chad  <davidc@freebsd.org>
2600             Loren J. Rittle  <ljrittle@acm.org>
2601
2602         libobjc/8562
2603         * objc/hash.h (hash_string): Constify correctly.
2604         (compare_ptrs): Use direct compare.
2605         * objc/objc-list.h (list_nth): Rename index to indx to avoid shadow.
2606         * objc/sarray.h: Global rename index to indx to avoid shadow.
2607
2608 2003-03-12  Andreas Schwab  <schwab@suse.de>
2609
2610         * aclocal.m4 (GLIBCPP_EXPORT_INSTALL_INFO): Avoid trailing /. in
2611         glibcpp_toolexeclibdir.
2612         * configure: Rebuilt.
2613
2614 2003-02-20  Alexandre Oliva  <aoliva@redhat.com>
2615
2616         * configure.in: Propagate ORIGINAL_LD_FOR_MULTILIBS to
2617         config.status.
2618         * configure: Rebuilt.
2619
2620 2003-01-27  Alexandre Oliva  <aoliva@redhat.com>
2621
2622         * aclocal.m4 (glibcpp_toolexeclibdir): Instead of
2623         $(MULTISUBDIR), use `$CC -print-multi-os-directory`, unless
2624         version_specific_libs is enabled.
2625         * configure: Rebuilt.
2626
2627 2003-01-09  Christian Cornelssen  <ccorn@cs.tu-berlin.de>
2628
2629         * Makefile.in (FLAGS_TO_PASS): Also pass DESTDIR.
2630         (install-libs, install-headers): Prepend $(DESTDIR) to
2631         destination paths in all (un)installation commands.
2632
2633 2002-12-02  Zack Weinberg  <zack@codesourcery.com>
2634
2635         * thr-objc.c: Include coretypes.h and tm.h.
2636
2637 2002-12-01  Zack Weinberg  <zack@codesourcery.com>
2638
2639         * encoding.c, sendmsg.c: Include coretypes.h and tm.h.
2640
2641 2002-11-26  Nathanael Nerode  <neroden@gcc.gnu.org>
2642
2643         * configure.in: Remove skip-this-dir support.
2644         * configure: Regenerate.
2645
2646 2002-09-22  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2647
2648         * Makefile.in (all): Fix multilib parallel build.
2649
2650 Thu Sep 12 12:44:37 2002  Nicola Pero  <n.pero@mi.flashnet.it>
2651
2652         * sendmsg.c (nil_method): Declare not to take a variable number of
2653         args.
2654         (objc_msg_lookup): Cast nil_method to IMP before returning it.
2655         (objc_msg_lookup_super): The same.
2656
2657 2002-09-10  Jan Hubicka  <jh@suse.cz>
2658
2659         * nil_method.c (nil_method): No longer defined with variable
2660         arguments.
2661
2662 2002-07-02  Rodney Brown  <rbrown64@csc.com.au>
2663
2664         * objc/encoding.h: Fix formatting.
2665         * objc/hash.h: Likewise.
2666         * objc/objc-api.h: Likewise.
2667         * objc/runtime.h: Likewise.
2668         * objc/thr.h: Likewise.
2669         * archive.c: Likewise.
2670         * class.c: Likewise.
2671         * encoding.c: Likewise.
2672         * gc.c: Likewise.
2673         * hash.c: Likewise.
2674         * init.c: Likewise.
2675         * misc.c: Likewise.
2676         * nil_method.c: Likewise.
2677         * objects.c: Likewise.
2678         * sarray.c: Likewise.
2679         * selector.c: Likewise.
2680         * sendmsg.c: Likewise.
2681         * thr-mach.c: Likewise.
2682         * thr.c: Likewise.
2683
2684 2002-06-25  DJ Delorie  <dj@redhat.com>
2685
2686         * aclocal.m4 (GLIBCPP_CONFIGURE): Split out
2687         GLIBCPP_TOPREL_CONFIGURE.
2688         * configure.in: Call it before AC_CANONICAL_SYSTEM.
2689         * configure: Regenerate.
2690
2691 2002-06-21  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2692
2693         * Object.m (forward, read, write): Fix unused parameter warnings.
2694         * encoding.c: Include <stdlib.h>.
2695         (target_flags): Mark with attribute unused.
2696         (atoi): Delete.
2697         * runtime.h (__objc_selector_max_index): Change to unsigned int.
2698         (__objc_generate_gc_type_description): Prototype.
2699         * selector.c (__objc_selector_max_index): Change to unsigned int.
2700
2701 Mon Jun 17 18:37:42 2002  Nicola Pero  <n.pero@mi.flashnet.it>
2702
2703         * sendmsg.c (__objc_get_forward_imp): Fix warning by making sure
2704         we always have a return value: if __objc_msg_forward does not
2705         supply a forwarding implementation, return the default
2706         __builtin_apply based one.
2707
2708 2002-06-15  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2709
2710         * Object.m: Fix signed/unsigned warning.
2711         * Protocol.m: Likewise.
2712         * archive.c: Always include stdlib.h.
2713         (objc_read_short, objc_read_unsigned_short, objc_read_int,
2714         objc_read_long, __objc_read_nbyte_uint, __objc_read_nbyte_ulong):
2715         Fix signed/unsigned warning.
2716         (objc_write_type, objc_read_type, objc_write_types,
2717         objc_read_types): Ensure ctype 8-bit safety.
2718         (__objc_no_write, __objc_no_read): Mark unused parameters.
2719         * class.c (class_table_setup): Specify void arg.
2720         * encoding.c (atoi, objc_sizeof_type, objc_alignof_type,
2721         objc_skip_typespec, objc_skip_offset,
2722         objc_layout_structure_next_member): Ensure ctype 8-bit safety.
2723         (objc_layout_structure_next_member): Ensure variables are
2724         initialized.
2725         * gc.c (__objc_generate_gc_type_description,
2726         class_ivar_set_gcinvisible): Mark unused parameters.
2727         * init.c (__objc_send_load, __objc_destroy_class_tree_node): Mark
2728         unused parameters.
2729         (__objc_init_protocols) Fix signed/unsigned warning.
2730         * nil_method.c (nil_method): Mark unused parameters.
2731         * thr.h (objc_thread_callback): Specify void arg.
2732         * sarray.c (sarray_new, sarray_realloc, sarray_free): Fix
2733         signed/unsigned warning.
2734         (sarray_free): Fix formatting.
2735         * selector.c (sel_types_match): Ensure ctype 8-bit safety.
2736         * sendmsg.c (__objc_init_install_dtable) Mark unused parameters.
2737
2738 2002-06-09  Andreas Jaeger  <aj@suse.de>
2739
2740         * encoding.c (objc_layout_structure_next_member): Remove unused
2741         variable.
2742
2743 2002-05-20  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
2744
2745         * Makefile.in (SHELL): Set to @SHELL@.
2746         (WARN_CFLAGS): New.
2747         (ALL_CFLAGS): Add $(WARN_CFLAGS).
2748
2749 2002-05-16  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2750
2751         * aclocal.m4: Allow for PWDCMD to override hardcoded pwd.
2752         * configure: Regenerate.
2753
2754 2002-05-08  Alexandre Oliva  <aoliva@redhat.com>
2755
2756         * configure.in (ORIGINAL_LD_FOR_MULTILIBS): Preserve LD at
2757         script entry, and set LD to it when configuring multilibs.
2758         * configure: Rebuilt.
2759
2760 2002-04-19  David O'Brien  <obrien@FreeBSD.org>
2761
2762         * encoding.c (MAX, MIN, ROUNDING): #undef before defining.
2763
2764 2002-04-09  Hans-Peter Nilsson  <hp@bitrange.com>
2765
2766         PR objc/6107
2767         * objc/objc-api.h (struct objc_protocol_list): Change type of
2768         member count from int to size_t.
2769
2770 2002-02-11  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
2771
2772         PR libobjc/4039
2773         * aclocal.m4: Replace with version copied from libstdc++-v3.
2774         * configure.in: Update for changes to aclocal and Makefile.
2775         * configure: Regenerate.
2776         * Makefile.in: Correct install of multilibs and shared libs, use
2777         INSTALL_DATA for include files.
2778
2779 Mon Dec 17 17:02:12 2001  Nicola Pero  <nicola@brainstorm.co.uk>
2780
2781         * init.c (__objc_exec_class): Fixed bug in the loop on unclaimed
2782         categories - when an unclaimed category was found, the loop was
2783         doing two steps forward instead of one, so that in certain cases
2784         it was failing to properly load all the categories.  (Reported
2785         with fix by Alexander Malmberg <alexander@malmberg.org>).
2786
2787 2001-11-14  Aldy Hernandez  <aldyh@redhat.com>
2788
2789         * encoding.c: Add target_flags.
2790
2791 2001-11-07  Aldy Hernandez  <aldyh@redhat.com>
2792
2793          * objc/objc-api.h (_C_VECTOR): New.
2794
2795          * encoding.c (VECTOR_TYPE): New.
2796
2797 Mon Oct 29 21:29:21 2001  Nicola Pero  <n.pero@mi.flashnet.it>
2798
2799         * class.c: Rewritten the class table to use optimized, lock-free
2800         lookup.  This more than doubles the speed of class method
2801         invocations.  (class_table_setup), (class_table_insert),
2802         (class_table_replace), (class_table_get_safe),
2803         (class_table_next), (class_table_print),
2804         (class_table_print_histogram): New functions.
2805         (__objc_init_class_tables): Use class_table_setup.
2806         (__objc_add_class_to_hash): Use class_table_get_safe and
2807         class_table_insert.  (objc_lookup_class), (objc_get_class): Do not
2808         assert the existence of the table; do not lock the runtime; use
2809         class_table_get_safe.  (objc_next_class): Use class_table_next.
2810         (__objc_resolve_class_links): Use class_table_next.
2811         (class_pose_as): Use class_table_replace.
2812
2813 2001-09-10  Ovidiu Predescu  <ovidiu@cup.hp.com>
2814
2815         * gc.c: Removed the DEBUG declaration.
2816
2817 Wed Jul 18 12:48:56 2001  Nicola Pero  <n.pero@mi.flashnet.it>
2818
2819         * thr.c (objc_mutex_lock): Invoke __objc_thread_id directly,
2820         rather than through objc_thread_id, to save a function call.
2821         (objc_mutex_trylock, objc_mutex_unlock, objc_condition_wait):
2822         Ditto.
2823
2824 Mon Jul 16 12:15:00 2001  Nicola Pero  <n.pero@mi.flashnet.it>
2825
2826         * objc/objc-api.h (object_is_class): Fixed - buggy code was trying
2827         to cast an id to a Class, which can not be done.  Make the check
2828         by using CLS_ISMETA on the class pointer instead.
2829         (object_is_meta_class): Similar fix.
2830
2831 2001-06-09  Alexandre Oliva  <aoliva@redhat.com>, Stephen L Moshier  <moshier@mediaone.net>
2832
2833         * configure.in (AC_EXEEXT): Work around in case it expands to
2834         nothing, as in autoconf 2.50.
2835         * acinclude.m4: Likewise.
2836         * configure: Rebuilt.
2837
2838 2001-06-08  Nicola Pero  <n.pero@mi.flashnet.it>
2839
2840         * THREADS: Explain that when we compile libobjc inside GCC, we
2841         always use thr-objc.c as a backend, which uses GCC's thread code.
2842
2843 2001-06-06  Richard Frith-Macdonald  <rrfm@gnu.org>
2844
2845         * init.c (__objc_send_message_in_list): When setting a new entry
2846         in __objc_load_methods use the method IMP as key, but check to see
2847         if the method is in the hashtable by looking at the IMP also.
2848         Also ... call the method after adding it to the hashtable rather
2849         than before ... thus preventing an obscure possibility of infinite
2850         recursion if a +load method itself loads a subclass.
2851
2852 2001-05-25  Ovidiu Predescu  <ovidiu@cup.hp.com>
2853
2854         * init.c (__objc_send_message_in_list): When setting a new entry
2855         in __objc_load_methods use the method name as key, not the method
2856         IMP (reported by Richard Frith-Macdonald <richard@brainstorm.co.uk>).
2857
2858 2001-05-09  Joseph S. Myers  <jsm28@cam.ac.uk>
2859
2860         * objc-features.texi: Move to ../gcc/objc.texi.
2861         * fdl.texi: Remove.
2862         * Makefile.in: Don't generate documentation from
2863         objc-features.texi.
2864
2865 2001-05-01  Mark Mitchell  <mark@codesourcery.com>
2866
2867         * fdl.texi: New file.
2868         * objc-features.texi: Simplify.
2869         * Makefile.in: Adjust accordingly.
2870
2871 2001-04-30  Mark Mitchell  <mark@codesourcery.com>
2872
2873         * objc-features.texi: Use the GFDL.
2874
2875 Wed Mar 21 04:44:58 EST 2001  John Wehle  (john@feith.com)
2876
2877         * encoding.c (REAL_TYPE): Define.
2878
2879 2001-03-19  David Edelsohn  <edelsohn@gnu.org>
2880
2881         * encoding.c (TYPE_MODE): Define.
2882
2883 2001-03-14  Nicola Pero  <n.pero@mi.flashnet.it>
2884
2885         * thr.c (objc_thread_add): New function.
2886         (objc_thread_remove): Ditto.
2887         * objc/thr.h: Declare them.
2888         * libobjc.def: Mention them.
2889
2890 2001-02-28  Ovidiu Predescu  <ovidiu@cup.hp.com>
2891
2892         * objc-features.texi: Document the @compatibility_alias compiler
2893         directive (description from Nicola Pero <n.pero@mi.flashnet.it>).
2894
2895 Fri Feb 23 18:12:00 2001  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
2896
2897         * sendmsg.c (__objc_forward): Delete strlen() declaration.
2898
2899 2001-02-08  Geoffrey Keating  <geoffk@redhat.com>
2900
2901         * configure.in: Don't run AC_PROG_CC_WORKS or AC_EXEEXT, because
2902         we're not interested in the result and they might fail.
2903         * configure: Regenerated.
2904
2905 2001-01-12  Joseph S. Myers  <jsm28@cam.ac.uk>
2906
2907         * objc-features.texi: Use @email.
2908
2909 2001-01-12  Joseph S. Myers  <jsm28@cam.ac.uk>
2910
2911         * sendmsg.c (__objc_print_dtable_stats): Don't use #ifdef inside
2912         printf.
2913
2914 2000-01-11  Richard Earnshaw  <rearnsha@arm.com>
2915
2916         * encoding.c (STRUCTURE_SIZE_BOUNDARY): Redefine in a way that
2917         determines the value dynamically.
2918
2919 Wed Jan  3 00:49:10 2001  Ovidiu Predescu  <ovidiu@cup.hp.com>
2920
2921         * sendmsg.c: Added __objc_msg_forward, a hook that allows external
2922         libraries to provide a function that returns the real forwarding
2923         function. This can alleviate problems __builtin_apply() and
2924         friends have on various platforms. (Solution suggested by Helge
2925         Hess.)
2926
2927         * objc/objc-api.h: Define __objc_msg_forward.
2928
2929         * sendmsg.c: Define gen_rtx_REG.
2930
2931 2000-12-06      Ralf Corsepius <corsepiu@faw.uni-ulm.de>
2932
2933         * thr-rtems.c: New file. Stub to compile.
2934
2935 2000-09-06  Alexandre Oliva  <aoliva@redhat.com>
2936
2937         * configure: Rebuilt with new libtool.m4.
2938
2939 Tue Aug 15 00:38:56 2000  Ovidiu Predescu  <ovidiu@cup.hp.com>
2940
2941         * configure.in: Create a config.h file. Check for <sched.h>.
2942         * configure: Regenerate.
2943
2944         * config.h.in: Check for <sched.h>.
2945
2946 2000-08-14  Zack Weinberg  <zack@wolery.cumb.org>
2947
2948         * configure: Regenerate after change to ../libtool.m4.
2949
2950 2000-08-14  Andreas Schwab  <schwab@suse.de>
2951
2952         * objc-features.texi (Top): Move @menu at end of node.
2953
2954 2000-08-11  Manfred Hollstein  <manfredh@redhat.com>
2955
2956         * objc-features.texi: Move @node Top before @menu.
2957
2958 Sun Aug  6 23:27:49 2000  Ovidiu Predescu  <ovidiu@cup.hp.com>
2959
2960         * objc-features.texi: Documented the new -fconstant-string-class
2961         option.
2962
2963 Sun Aug  6 22:51:16 2000  Ovidiu Predescu  <ovidiu@cup.hp.com>
2964
2965         * thr-posix.c: Integrated Chris Ball's <cball@fmco.com> changes to
2966         improve the Posix thread support for Objective-C.
2967
2968 2000-08-04  Zack Weinberg  <zack@wolery.cumb.org>
2969
2970         * aclocal.m4: Replace copy of ../libtool.m4 with
2971         sinclude(../libtool.m4).
2972
2973 Fri Jul 28 08:58:02 2000  Nicola Pero  <nicola@brainstorm.co.uk>
2974
2975         * configure.in: Added libtool support; build shared libraries
2976         if --enable-shared was passed on command line.
2977         * Makefile.in: Modified most compilation commands to use libtool.
2978         * aclocal.m4: New symbolic link to the ../libtool.m4, from the
2979         libtool distribution.
2980
2981 Sat Jul 29 00:10:21 2000  Ovidiu Predescu  <ovidiu@cup.hp.com>
2982
2983         * sarray.c, Object.m: Removed the explicit prototypes for strlen
2984         and memcpy on 64-bit platforms (Suggested by Rodney Brown
2985         <rdb@cup.hp.com>).
2986
2987 2000-05-12  H.J. Lu  (hjl@gnu.org)
2988
2989         * Makefile.in (GTHREAD_FLAGS): New.
2990         (ALL_CFLAGS): Add $(GTHREAD_FLAGS).
2991         (OBJC_THREAD_FILE): Changed to thr-objc.
2992
2993         * configure.in (GTHREAD_FLAGS): New, check and replace it for
2994         Makefile.
2995         (OBJC_THREAD_FILE): Removed.
2996
2997         * thr-objc.c: New.
2998
2999 2000-07-13  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
3000
3001         * objc/hash.h: Include string.h.
3002
3003 2000-04-15  David Edelsohn  <edelsohn@gnu.org>
3004
3005         * Object.m (strlen): 64-bit PowerPC is a 64bit platform as well.
3006
3007 2000-04-12  Jakub Jelinek  <jakub@redhat.com>
3008
3009         * Object.m (strlen): Provide prototype on all 64bit platforms,
3010         not only alpha.
3011         * sarray.c (memcpy): Likewise.
3012         * encoding.c (objc_layout_finish_structure): Don't use
3013         ROUND_TYPE_ALIGN on sparc.
3014
3015         * encoding.c (objc_layout_structure_next_member): Do the whole
3016         procedure even for the first member, so that we get correct
3017         alignment.
3018
3019 2000-03-29  Zack Weinberg  <zack@wolery.cumb.org>
3020
3021         * objc/Protocol.h, objc/objc-list.h: Change #endif labels to
3022         comments.
3023
3024 2000-02-23  Zack Weinberg  <zack@wolery.cumb.org>
3025
3026         * Makefile.in: Add -DIN_TARGET_LIBS to ALL_CFLAGS.
3027
3028 Thu Sep 23 07:19:12 1999   Chris Ball <cball@fmco.com>
3029
3030         * thr-posix.c (__objc_mutex_deallocate): made deallocate work.
3031
3032 Tue Sep 21 07:47:10 1999  Jeffrey A Law  (law@cygnus.com)
3033
3034         * Makefile.in (gc.o, gc_gc.o): Do not pass -fgnu-runtime to
3035         the compiler when building C code.
3036
3037 Fri Aug  6 23:32:29 1999  Daniel Jacobowitz <drow@drow.them.org>
3038
3039         * Makefile.in (FLAGS_TO_PASS): Include prefix, exec_prefix,
3040         libdir, libsubdir and tooldir.
3041
3042 Mon Jun 21 05:40:15 1999  John David Anglin <dave@hiauly1>
3043
3044         * init.c (__objc_force_linking): Make global.
3045
3046 Thu May 20 03:20:59 1999  Jeffrey A Law  (law@cygnus.com)
3047
3048         * configure.in (AC_EXEEXT): Remove call.
3049         (compiler_name): Explicitly check with no extension and .exe
3050         extension.
3051         * configure: Regenerate.
3052
3053 Sun Apr 25 01:15:34 1999  Mumit Khan  <khan@xraylith.wisc.edu>
3054
3055         * Makefile.in (CC1OBJ): Define in terms of CC.
3056         (runtime-info.h): Use.
3057
3058 Fri April 8 08:21:07 1999 Ovidiu Predescu <ovidiu@cup.hp.com>
3059
3060         * objc-features.texi: Updated the URL to Boehm's GC page.
3061
3062 Fri Mar 26 23:41:07 1999 Ovidiu Predescu <ovidiu@cup.hp.com>
3063
3064         * archive.c (__objc_code_char, __objc_write_char): Explicitly specify
3065         the char as being signed (patch from Daniel Jacobowitz
3066         <drow@false.org>).
3067
3068 Wed Mar 24 22:41:28 1999  Mumit Khan  <khan@xraylith.wisc.edu>
3069
3070         * configure.in (AC_PREREQ): Update to 2.13.
3071         (AC_EXEEXT): Call to find possible file extension.
3072         (compiler_name): Use.
3073         * configure: Regenerate.
3074
3075 Wed Jan 27 02:31:01 1999  Jeffrey A Law  (law@cygnus.com)
3076
3077         * Makefile.in (ALL_CFLAGS): Add -DIN_GCC.
3078
3079 Tue Jan  5 01:38:53 1999  Jeffrey A Law  (law@cygnus.com)
3080
3081         * configure.in (thread_file): Correct and simplify code to find
3082         the thread file.
3083         * configure: Rebuilt.
3084
3085 1998-11-26  Manfred Hollstein  <manfred@s-direktnet.de>
3086
3087         * configure.in (compiler_name): Add check to detect if this
3088         language's compiler has been built.
3089         * configure: Regenerate.
3090
3091 Mon Nov 23 16:50:28 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
3092
3093         *  configure.in: Use AC_PREREQ(2.12.1).
3094
3095 Thu Nov 19 20:33:37 1998  Jeffrey A Law  (law@cygnus.com)
3096
3097         * Makefile.in (runtime-info.h): Avoid GNU make extensions.
3098
3099 Sun Nov  8 17:46:14 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
3100
3101         * Makefile.in (INCLUDES): Add -I$(srcdir)/$(MULTISRCTOP)../include.
3102
3103 Thu Oct 22 14:34:06 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
3104
3105         * configure.in: Use AC_CONFIG_AUX_DIR($topsrcdir).
3106
3107 Sat Oct 17 05:21:31 1998  Ovidiu Predescu  <ovidiu@slip.net>
3108
3109         * objc-features.texi (Top): Changed the email address.
3110         * objc-features.texi (Garbage Collection): Use @uref instead of @url.
3111
3112 Mon Oct 11 21:25:27 1998  Ovidiu Predescu  <ovidiu@slip.net>
3113
3114         * encoding.c: Redefine get_inner_array_type to get the first entry
3115         in the structure.
3116
3117 Thu Oct  8 12:21:14 1998  Richard Frith-Macdonald <richard@brainstorm.co.uk>
3118
3119         * encoding.c (objc_skip_type_qualifiers): Handle _C_BYREF.
3120         (objc_get_type_qualifiers): Similarly.
3121         * objc/encoding.h (_C_BYREF): Define.
3122         (_F_BYREF): Define.
3123
3124 1998-10-07  David S. Miller  <davem@pierdol.cobaltmicro.com>
3125
3126         * objc/sarray.h: Make boffset be an unsigned long when sparc so it
3127         works out on 64-bit systems.
3128
3129 Tue Oct  6 20:32:06 1998  Alexandre Oliva  <oliva@dcc.unicamp.br>
3130
3131         * Makefile.in (INCLUDES): Make it multilib-friendly.
3132
3133 Fri Oct  2 07:12:14 1998  H.J. Lu  (hjl@gnu.org)
3134
3135         * Makefile.in (INCLUDES): Add -I$(srcdir)/../gcc.
3136
3137 Thu Oct  1 22:33:03 1998 Robert Lipe  <robertl@dgii.com>
3138                          Jeffrey A Law  (law@cygnus.com)
3139
3140         * Makefile.in (INCLUDES): Reference gcc via $MULTIBUILDTOP.
3141         (FLAGS_TO_PASS): Added.
3142         (runtime-info.h): Reference cc1ibj via $MULTIBUILDTOP.
3143
3144         * archive.c: Change config.h to tconfig.h.
3145
3146         * configure.in: Find gcc's object directory even for multilibs.
3147
3148 Wed Sep 30 18:17:17 1998  Robert Lipe  <robertl@dgii.com>
3149
3150         * configure.in: Escape ^ in grep string.
3151         * configure: Rebuilt.
3152
3153 Wed Sep 30 09:14:52 1998  Jeffrey A Law  (law@cygnus.com)
3154
3155         * All .h files pushed down into the objc/ subdirectory.
3156         * Makefile.in (copy_headers): Corresponding changes.
3157         * configure.in (AC_INIT): Corresponding changes.
3158         * configure: Rebuilt.
3159
3160 1998-09-30  Ben Elliston  <bje@cygnus.com>
3161             Jeff Law      <law@cygnus.com>
3162
3163         * Makefile.in: Rewrite.
3164
3165         * configure.in: Likewise.
3166
3167         * configure: Regenerate.
3168
3169         * All .c files.  Remove "objc" prefix when including objc header
3170         files.  Include tconfig.h, not ../tconfig.h.
3171
3172 Mon Sep 21 23:27:10 1998  Ovidiu Predescu <ovidiu@slip.net>
3173
3174         * encoding.c (TREE_TYPE, ARRAY_TYPE): Define.
3175         (get_inner_array_type): Define.
3176
3177 1998-09-21  Ben Elliston  <bje@cygnus.com>
3178
3179         * New directory.  Moved files from ../gcc/objc.