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