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