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