OSDN Git Service

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