]> gcc.gnu.org Git - gcc.git/blame - libobjc/ChangeLog
tree-prof.exp: Check for -fprofile-generate support.
[gcc.git] / libobjc / ChangeLog
CommitLineData
0dd5327a
NP
12011-05-26 Nicola Pero <nicola.pero@meta-innovation.com>
2
3 * sendmsg.c: Reindented part of the file. No non-trivial changes
4 in code.
5
1e49849c
NP
62011-05-26 Nicola Pero <nicola.pero@meta-innovation.com>
7
8 * sendmsg.c (__objc_install_dtable_for_class): Use objc_getClass,
9 not objc_lookupClass.
10
b5a3450f
RFM
112011-05-25 Richard Frith-Macdonald <rfm@gnu.org>
12 David Ayers <ayers@fsfe.org>
13
48126bcb 14 PR libobjc/38307
b5a3450f
RFM
15 * sendmsg.c: Include objc/hash.h.
16 (get_implementation): New function, mostly with code from get_imp
17 updated to support the new +initialize dispatch table logic.
18 (get_imp): Use get_implementation.
19 (__objc_responds_to): Updated to support the new +initialize
20 dispatch table logic.
21 (class_respondsToSelector): Likewise.
22 (objc_msg_lookup): Use get_implementation.
23 (__objc_init_install_dtable): Removed.
24 (__objc_install_methods_in_dtable): Updated arguments.
25 (__objc_install_dispatch_table_for_class): Renamed to
26 __objc_install_dtable_for_class and updated to support the new
27 +initialize dispatch table logic.
28 (__objc_update_dispatch_table_for_class): Updated to support the
29 new +initialize dispatch table logic.
30 (__objc_forward): Call get_implementation instead of get_imp.
31 (prepared_dtable_table): New.
32 (__objc_prepare_dtable_for_class): New.
33 (__objc_prepared_dtable_for_class): New.
34 (__objc_get_prepared_imp): New.
35 (__objc_install_prepared_dtable_for_class): New.
36
85fe6408
NP
372011-05-24 Nicola Pero <nicola.pero@meta-innovation.com>
38
39 PR libobjc/48177
40 * selector.c (__sel_register_typed_name): Use sel_types_match()
41 instead of strcmp() to compare selector types (Suggestion by
42 Richard Frith-Macdonald <rfm@gnu.org>).
43
b98b952f
RO
442011-04-15 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
45
46 PR libobjc/32037
47 * Makefile.in (OBJC_GCFLAGS): Move ...
48 * configure.ac (enable_objc_gc): ... here.
49 Add $(libsuffix) to OBJC_BOEHM_GC.
50 * configure: Regenerate.
51
68ade9e4
NP
522011-02-28 Nicola Pero <nicola.pero@meta-innovation.com>
53
54 * selector.c (sel_getTypedSelector): Return NULL if there are
55 multiple selectors with conflicting types.
56 * objc/runtime.h (sel_getTypedSelector): Updated documentation.
57
55b21c7a
RFM
582011-02-28 Richard Frith-Macdonald <rfm@gnu.org>
59
60 PR libobjc/47922
61 * gc.c (class_ivar_set_gcinvisible): Use _C_GCINVISIBLE instead of
62 a hardcoded "!".
63
029c8f3e
RW
642011-02-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
65
66 * configure: Regenerate.
67
fa539f51
NP
682010-12-26 Nicola Pero <nicola.pero@meta-innovation.com>
69
70 * init.c (create_tree_of_subclasses_inherited_from): Use
71 class_superclass_of_class instead of assuming a class is
72 unresolved when it could be resolved. Tidied up assignment and
73 check.
74 (__objc_tree_insert_class): Enhanced DEBUG_PRINTF.
75 (objc_tree_insert_class): Tidied up loop; return immediately upon
76 inserting a class.
77 (__objc_exec_class): Do not set __objc_class_tree_list.
78
9cacfc3e
NP
792010-12-24 Nicola Pero <nicola.pero@meta-innovation.com>
80
81 * selector.c (sel_getTypedSelector): Return NULL if given a NULL
82 argument.
83 (sel_registerTypedName): Same.
84 (sel_registerName): Same.
85 * objc/runtime.h: Updated documentation.
86
410644c4
NP
872010-12-24 Nicola Pero <nicola.pero@meta-innovation.com>
88
89 * objc/runtime.h (class_addIvar): Updated documentation. The
90 alignment is actually the log_2 of the alignment in bytes.
91 * ivars.c (class_addIvar): Corresponding change to the
92 implementation.
93
5750872c
NP
942010-12-24 Nicola Pero <nicola.pero@meta-innovation.com>
95
96 * objc/runtime.h (sel_getType): Renamed to sel_getTypeEncoding to
97 be consistent with method_getTypeEncoding and
98 ivar_getTypeEncoding.
99 (sel_copyTypedSelectorList, sel_getTypedSelector): New.
100 * selector.c (sel_getType): Renamed to sel_getTypeEncoding.
101 (sel_copyTypedSelectorList, sel_getTypedSelector): New.
102 (sel_get_type): Updated call to sel_getType.
103
877bf195
NP
1042010-12-24 Nicola Pero <nicola.pero@meta-innovation.com>
105
106 * objc/runtime.h (class_conformsToProtocol,
107 class_copyProtocolList): Updated documentation.
108
e99776d8
NP
1092010-12-23 Nicola Pero <nicola.pero@meta-innovation.com>
110
111 * init.c (create_tree_of_subclasses_inherited_from): Updated
112 DEBUG_PRINTF messages.
113 (__objc_tree_insert_class): Same.
114 (__objc_send_load_using_method_list): Same.
115 (__objc_send_load): Same.
116 (__objc_exec_class): Same. In particular, do not print the module
117 name since it is no longer used.
118 * sendmsg.c (__objc_send_initialize): Added DEBUG_PRINTFs for
119 tracking +initialize calls.
120 (__objc_update_dispatch_table_for_class): Added DEBUG_PRINTFs for
121 tracking updates of dispatch tables.
122 (__objc_install_dispatch_table_for_class): Same.
123
1d439e6c
RO
1242010-12-23 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
125
126 * Makefile.in (libobjc$(libsuffix).la): Link with -Wc,-shared-libgcc.
127 (libobjc_gc$(libsuffix).la): Likewise.
128
82883986
NP
1292010-12-23 Nicola Pero <nicola.pero@meta-innovation.com>
130
131 * sendmsg.c (class_addMethod): Return NO if the method already
132 exists in the class.
133
0bfe3fa1
NP
1342010-12-22 Nicola Pero <nicola.pero@meta-innovation.com>
135
136 * init.c (duplicate_classes): New.
137 (__objc_exec_class): Initialize duplicate_classes.
138 (__objc_create_classes_tree): Ignore classes in the
139 duplicate_classes table.
140 (__objc_call_load_callback): Same.
141 (__objc_init_class): If a duplicate class is found, add it to
142 duplicate_classes instead of aborting. Return YES if the class is
143 not a duplicate, and NO if it is.
144 * objc-private/runtime.h (__objc_init_class): Updated prototype.
145
9fd553cc
NP
1462010-12-22 Nicola Pero <nicola.pero@meta-innovation.com>
147
148 * objc-private/objc-list.h: Reindented file. No code changes.
149 * objc-private/sarray.h: Same change.
150
8637d320
NP
1512010-12-22 Nicola Pero <nicola.pero@meta-innovation.com>
152
153 * objc-private/accessors.h: Removed 'extern "C"' guards. This
154 file is never compiled with C++.
155 * objc-private/hash.h: Same change.
156 * objc-private/objc-list.h: Same change.
157 * objc-private/objc-sync.h: Same change.
158 * objc-private/protocols.h: Same change.
159 * objc-private/runtime.h: Same change.
160 * objc-private/sarray.h: Same change.
161 * objc-private/selector.h: Same change.
162
1588200e
NP
1632010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
164
1575c9de
NP
165 PR libobjc/18764
166 * class.c (__objc_add_class_to_hash): Return YES if the class was
167 added, and NO if it already existed.
168 * init.c (__objc_init_class): If __objc_add_class_to_hash returns
169 NO, then abort the program with an error message.
170 * objc-private/runtime.h (__objc_add_class_to_hash): Updated
171 declaration.
172
1732010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
174
1588200e
NP
175 * init.c (_objc_load_callback): Initialize with 0.
176 (__objc_call_callback): Renamed to __objc_call_load_callback.
177 Check _objc_load_callback only once, and if it is not set, return
178 immediately.
179 (objc_send_load): Updated call to __objc_call_callback.
180
c07499dc
NP
1812010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
182
183 PR libobjc/16110
184 * init.c (__objc_send_message_in_list): Renamed to
185 __objc_send_load_using_method_list. Do not take an 'op' argument.
186 Register the 'load' selector if needed.
187 (__objc_send_load): Do not register the 'load' selector. Updated
188 call to __objc_send_message_in_list.
189 (__objc_create_classes_tree): Add the class of any claimed
190 category that was loaded in the module to the list of classes for
191 which we try to execute +load.
192
df0820da
NP
1932010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
194
195 * objc-private/common.h: When DEBUG is defined, include <stdio.h>.
196 Updated comments.
197 * init.c (__objc_tree_insert_class): Use %p, not %x, when printing
198 a pointer using DEBUG_PRINTF.
199
c75534d1
NP
2002010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
201
202 PR libobjc/45953
203 * selector.c (__sel_register_typed_name): When registering a new
204 selector with the same name as an existing one, reuse the existing
205 name string. Also updated types, casts and comments in the whole
206 function.
207
600cbba2
NP
2082010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
209
210 * objc-private/module-abi-8.h (struct objc_symtab): Declare 'refs'
211 to be 'struct objc_selector *' and not 'SEL'.
212 * init.c (__objc_exec_class): Call
213 __objc_register_selectors_from_module instead of iterating over
214 each selector and calling __sel_register_typed_name for each.
215 * objc-private/selector.h: Declare
216 __objc_register_selectors_from_module instead of
217 __sel_register_typed_name.
218 * selector.c (__objc_register_selectors_from_module): New.
219 (__sel_register_typed_name): Made static.
220
bebf8772
NP
2212010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
222
223 * linking.m: Do not include objc/NXConstStr.h.
224
9c68c0e5
NP
2252010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
226
227 * objc-private/runtime.h (DEBUG_PRINTF): Moved from here ...
228 * objc-private/common.h (DEBUG_PRINTF): To here.
229 * hash.c: Do not include objc-private/runtime.h and objc/thr.h.
230
57d75eeb
NP
2312010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
232
233 * hash.c: Tidied up comments and indentation. No code changes.
234
ef7ed5df
NP
2352010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
236
237 PR libobjc/47012
238 * accessors.m (objc_getProperty): If not atomic, do not
522c4f1f 239 retain/autorelease the returned value.
ef7ed5df 240
f94e723b
NP
2412010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
242
243 * objc-private/runtime.h (__objc_selector_max_index,
244 __objc_init_selector_tables, __objc_register_selectors_from_class,
245 __objc_register_selectors_from_list,
246 __objc_register_selectors_from_description_list): Moved to ...
247 * objc-private/selector.h: ... here.
248
d9df3365
NP
2492010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
250
251 * objc-private/runtime.h (__objc_class_links_resolved): Removed.
252 (__objc_print_dtable_stats): Removed.
253 (__sel_register_typed_name): Removed.
254 * sendmsg.c (__objc_print_dtable_stats): Use 'void' as argument.
255
41720477
NP
2562010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
257
258 * init.c (__objc_exec_class): Call __objc_resolve_class_links (),
259 if appropriate, after loading the module.
260
5f38ced1
NP
2612010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
262
263 * sendmsg.c (method_setImplementation): Do not declare.
264
ecfc2705
NP
2652010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
266
267 * objc/message.h: Updated comments.
268 * objc/runtime.h: Updated comments.
269
6e45b376
NP
2702010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
271
272 * class.c (objc_lookupClass): Renamed to objc_lookUpClass.
273 * protocols.c: Updated all calls to objc_lookupClass to call
274 objc_lookUpClass instead.
275 * sendmsg.c (objc_lookupClass): Do not declare.
276 (get_imp): Update call to objc_lookupClass to call
277 objc_lookUpClass instead.
278 * objc/runtime.h (objc_lookupClass): Renamed to objc_lookUpClass.
279
fea78205
NP
2802010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
281
282 * objc/runtime.h (class_ivar_set_gcinvisible): Declare.
283 * sendmsg.c (_CLS_IN_CONSTRUCTION, CLS_IS_IN_CONSTRUCTION): Do not
284 define. Updated comments.
285
2899534b
NP
2862010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
287
288 * objc/encoding.h: Updated comments.
289 * objc/runtime.h: Updated comments.
290 (objc_setGetUnknownClassHandler): Mark with objc_EXPORT.
291 (objc_sizeof_type): Same.
292 (objc_alignof_type): Same.
293 (objc_aligned_size): Same.
294 (objc_promoted_size): Same.
295 (objc_skip_type_qualifiers): Same.
296 (objc_skip_typespec): Same.
297 (objc_skip_offset): Same.
298 (objc_skip_argspec): Same.
299 (objc_get_type_qualifiers): Same.
300 (objc_layout_structure): Same.
301 (objc_layout_structure_next_member): Same.
302 (objc_layout_finish_structure): Same.
303 (objc_layout_structure_get_info): Same.
304
120d5f8e
NP
3052010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
306
307 * init.c: Updated comments.
308 * objc/objc-api.h: Updated comments.
309 * objc/runtime.h (_objc_load_callback): Declare.
310
c34fc988
NP
3112010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
312
313 * objc/Object.h: Include deprecated/typedstream.h and
314 deprecated/hash.h instead of typedstream.h. Updated comments.
315
5ec582f9
NP
3162010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
317
318 * Makefile.in (OBJC_DEPRECATED_H): Added objc_msg_sendv.h.
319 * objc/deprecated/objc_msg_sendv.h: New.
320 * objc/message.h: Do not define retval_t, apply_t, arglist,
321 arglist_t, objc_msg_sendv, now in
322 objc/deprecated/objc_msg_sendv.h.
323 * objc/objc.h: Do not include message.h; include
324 objc/deprecated/objc_msg_sendv.h instead. Tidied up comments.
325 * sendmsg.c: Include objc/message.h.
326 * thr.c: Include objc/message.h.
327
805a07f1
NP
3282010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
329
330 * objc/objc-exception.h: Include objc-decls.h. Mark all
331 functions with objc_EXPORT.
332 * objc/objc-sync.h: Same change.
333
c06a8664
NP
3342010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
335
336 * Protocol.m: Moved all methods, with the exception of -isEqual:,
337 into the 'Deprecated' category.
338 * objc/Protocol.h: Removed all methods, moved to
339 objc/deprecated/Protocol.h. Include objc/deprecated/Protocol.h.
340 * objc/deprecated/Protocol.h: New.
341 * Makefile.in (OBJC_DEPRECATED_H): Added Protocol.h.
342
1af5b8f5
NP
3432010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
344
345 * init.c: Include objc-private/selector.h. Do not declare
346 __sel_register_typed_name.
347 * objc-private/selector.h (__sel_register_typed_name): Declare.
348 * selector.c: Include objc-private/selector.h.
349
575584a9
NP
3502010-12-18 Nicola Pero <nicola.pero@meta-innovation.com>
351
352 * class.c: Tidied up comments and indentation. No code changes.
353 * error.c: Same.
354 * exception.c: Same.
355 * init.c: Same.
356 * ivars.c: Same.
357 * memory.c: Same.
358 * objc-foreach.c: Same.
359 * objc-sync.c: Same.
360 * objects.c: Same.
361 * protocols.c: Same.
362 * sarray.c: Same.
363 * thr.c: Same.
364
fed2b101
NP
3652010-12-17 Nicola Pero <nicola.pero@meta-innovation.com>
366
367 * init.c: Include objc/runtime.h and objc-private/module-abi-8.h
368 instead of objc/objc-api.h.
369 (init_check_module_version): Take a 'struct objc_module *'
370 argument instead of 'Module_t'. Use 'struct objc_module *'
371 instead of 'Module_t'.
372 (__objc_created_classes_tree): Take a 'struct objc_module *'
373 argument instead of 'Module_t'; use 'struct objc_symtab *' instead
374 of 'Symtab_t'.
375 (__objc_call_callback): Take a 'struct objc_module *' argument
376 instead of 'Module_t'; use 'struct objc_symtab *' instead of
377 'Symtab_t' and 'struct objc_category *' instead of 'Category_t'.
378 (_objc_load_callback): Take a 'struct objc_category *' argument
379 instead of 'Category *'.
380 (class_superclass_of_class): Use objc_getClass() instead of
381 objc_lookup_class().
382 (create_tree_of_subclasses_inherited_from): Same change (also, use
383 an explicit 'if' instead of '?').
384 (objc_init_statics): Same change.
385 (objc_send_load): Same change.
386 (__objc_init_protocol): same change.
387 (__objc_send_message_in_list): Take a 'struct objc_method_list *'
388 argument instead of 'MethodList_t'. Use 'struct objc_method *'
389 instead of 'Method_t'.
390 (__objc_send_load): Use 'struct objc_method_list *' instead of
391 'MethodList_t'. Use sel_registerName() instead of
392 sel_register_name().
393 (__objc_exec_class): Take a 'struct objc_module *' argument
394 instead of 'Module_t'. Use 'struct objc_symtab *' instead of
395 'Symtab_t'. Use objc_getClass() instead of objc_lookup_class().
396 Use 'struct objc_category *' instead of 'Category_t'.
397
114dae43
NP
3982010-12-16 Nicola Pero <nicola.pero@meta-innovation.com>
399
400 * sendmsg.c: Include objc/runtime.h instead of objc/objc-api.h.
401 Include objc-private/module-abi-8.h and objc-private/selector.h
402 instead of objc/encoding.h.
403 (objc_msg_lookup_super): Use super->super_class instead of
404 super->class.
405 (method_get_first_argument, method_get_next_argument): Declare
406 locally.
407 (class_get_instance_method): Declare before using.
408 (objc_msg_sendv): Use 'struct objc_method' instead of 'Method'.
409 (__objc_init_dispatch_tables, __objc_send_initialize): Use
410 sel_registerName() instead of sel_register_name().
411 (__objc_forward): Use sel_getName() instead of sel_get_name().
412 (objc_get_uninstalled_dtable): Use 'void' as argument.
413 * objc-private/selector.h: New.
414
53f672ca
NP
4152010-12-15 Nicola Pero <nicola.pero@meta-innovation.com>
416
417 * objc/message.h (objc_super): When using the modern API, do not
418 define Super and Super_t, and always use 'super_class' for the
419 super class field.
420 (objc_msg_lookup_super): Updated prototype to use 'struct
421 objc_super *' instead of 'Super_t'.
422 * sendmsg.c (objc_msg_lookup_super): Updated prototype to use
423 'struct objc_super *' instead of 'Super_t'.
424
db1792ee
NP
4252010-12-15 Nicola Pero <nicola.pero@meta-innovation.com>
426
427 * objc/message.h: Update comments, reindented code and moved
428 deprecated types and functions at the end of the file. No code
429 changes.
430
3db1a28c
NP
4312010-12-15 Nicola Pero <nicola.pero@meta-innovation.com>
432
433 * ivars.c (class_addIvar): Use the 'size' argument instead of
434 trying to calculate it using objc_sizeof_type().
435 * objc/runtime.h (class_addIvar): Updated comments.
436
b427203d
NP
4372010-12-15 Nicola Pero <nicola.pero@meta-innovation.com>
438
439 * sendmsg.c: Reindented some code and tidied up comments. No
440 actual code changes.
441
002d4675
NP
4422010-12-14 Nicola Pero <nicola.pero@meta-innovation.com>
443
444 * objc/Object.h: Moved all the methods, with the exception of
445 -class and -isEqual:, into ...
446 * objc/deprecated/Object.h: here.
447 * Object.m: Moved all the methods, with the exception of -class
448 and -isEqual: into the 'Deprecated' category.
449
9ecfa8de
NP
4502010-12-14 Nicola Pero <nicola.pero@meta-innovation.com>
451
452 * objects.c (object_copy): Do not #undef as we are no longer
453 including objc/objc-api.h.
454 * selector.c: Include objc/runtime.h and
455 objc-private/module-abi-8.h. Do not include objc/objc-api.h and
456 objc/encoding.h. Updated
457 (__objc_register_selectors_from_class): Use struct
458 objc_method_list * instead of MethodList_t.
459 (__objc_register_selectors_from_list): Use Method instead of
460 Method_t.
461 (struct objc_method_description_list): Do not define here.
462 (__objc_register_instance_methods_to_class): Use struct
463 objc_method_list * instead of MethodList_t and Method instead of
464 Method_t.
465
d4645ada
NP
4662010-12-14 Nicola Pero <nicola.pero@meta-innovation.com>
467
468 * selector.c: Reindented some code and tidied up comments. No
469 actual code changes.
470
f436d2ff
IS
4712010-12-13 Iain Sandoe <iains@gcc.gnu.org>
472
473 * encoding.c (_darwin_rs6000_special_round_type_align): New.
474 (darwin_rs6000_special_round_type_align): Adjust to use new routine.
475
e97cfd97
NP
4762010-12-11 Nicola Pero <nicola.pero@meta-innovation.com>
477
478 * sendmsg.c (selector_resolveClassMethod): New.
479 (selector_resolveInstanceMethod): New.
480 (__objc_resolve_class_method): New.
481 (__objc_resolve_instance_method): New.
482 (get_imp): Call __objc_resolve_class_method or
483 __objc_resolve_instance_method at the appropriate time.
484 (objc_msg_lookup): Same.
485 (class_getClassMethod): Same.
486 (class_getInstanceMethod): Same.
487 (__objc_init_dispatch_tables): Initialize
488 selector_resolveClassMethod and selector_resolveInstanceMethod.
489 * objc/runtime.h: Updated documentation of class_getClassMethod,
490 class_getInstanceMethod and class_getMethodImplementation.
491
375d1239
NP
4922010-12-11 Nicola Pero <nicola.pero@meta-innovation.com>
493
494 * objc-private/module-abi-8.h (struct objc_symtab): Updated
495 description of sel_ref_cnt and refs.
496 * objc/deprecated/struct_objc_symtab.h (objc_symtab): Same change.
497
7de6ba7a
DK
4982010-12-06 Dave Korn <dave.korn.cygwin@gmail.com>
499
500 PR target/40125
501 PR lto/46695
502 * configure.ac (extra_ldflags_libobjc): Invoke ACX_LT_HOST_FLAGS.
503 * Makefile.in (lt_host_flags): Import AC_SUBST'd value.
504 * aclocal.m4: Regenerate.
505 * configure: Regenerate.
506
196891b5
MK
5072010-12-03 Matthias Klose <doko@ubuntu.com>
508
509 * configure.ac (VERSION): Bump the version to 3:0:0.
510 * configure: Regenerate.
511
d81e30b8
RFM
5122010-11-23 Richard Frith-Macdonald <rfm@gnu.org>
513
514 * sendmsg.c (get_imp): Fixed call to __objc_get_forward_imp to
515 pass nil as the receiver since we don't know the receiver at this
516 point.
517
49a35931
NP
5182010-11-18 Nicola Pero <nicola.pero@meta-innovation.com>
519
520 * ivars.c: Include stdlib.h.
521 * protocols.c: Same change.
522
682e805a
NP
5232010-10-24 Nicola Pero <nicola.pero@meta-innovation.com>
524
525 * Makefile.in (OBJC_SOURCE_FILES): Added accessors.m.
526 * accessors.m: New.
527 * init.c: Include objc-private/accessors.h.
528 (__objc_exec_class): Call __objc_accessors_init.
529 * objc-private/accessors.h: New.
530
5b8b526e
NP
5312010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
532
533 * objc/message.h: Moved initial includes outside of extern "C".
534 * objc/runtime.h: Add extern "C" for Objective-C++.
535
1501d094
NP
5362010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
537
538 * init.c (objc_send_load): Do not wait for NXConstantString to be
539 registered before executing +load. There is no point if
540 -fconstant-string-class=xxx is used when compiling all modules,
541 as is the case for almost all users.
542 * linking.m (__objc_linking): Do not try to forcefully link in
543 NXConstantString.
5b8b526e 544
6c5c7efd
NP
5452010-10-16 Nicola Pero <nicola.pero@meta-innovation.com>
546
547 * objc/runtime.h: Updated comments.
548 (class_addMethod): New.
549 (class_addIvar): New.
550 (class_replaceMethod): New.
551 (objc_allocateClassPair): New.
552 (objc_registerClassPair): New.
553 (objc_disposeClassPair): New.
554 * class.c (objc_allocateClassPair): New.
555 (objc_registerClassPair): New.
556 (objc_disposeClassPair): New.
557 (class_getSuperclass): Return Nil if a class is in construction.
558 * init.c (__objc_exec_class): Call __objc_init_class.
559 (__objc_init_class): New.
560 * ivars.c (class_copyIvarList): Return NULL if class is in
561 construction. Do not lock the runtime mutex.
562 (class_getInstanceVariable): Return NULL if class is in
563 construction. Do not lock the runtime mutex.
564 (class_addIvar): New.
565 * sendmsg.c (class_addMethod): New.
566 (class_replaceMethod): New.
567 * objc-private/module-abi-8.h (__CLS_SETNOTINFO): New.
568 (_CLS_IN_CONSTRUCTION): New.
569 (CLS_IS_IN_CONSTRUCTION): New.
570 (CLS_SET_IN_CONSTRUCTION): New.
571 (CLS_SET_NOT_IN_CONSTRUCTION): New.
572 * objc-private/runtime.h (__objc_init_class): New.
573
1cde73d7
NP
5742010-10-16 Nicola Pero <nicola.pero@meta-innovation.com>
575
576 * class.c (class_getSuperclass): Call __objc_resolve_class_links
577 if the class is not resolved yet.
578 * ivars.c (class_getInstanceVariable): Use class_getSuperclass.
579
3c44c190
NP
5802010-10-16 Nicola Pero <nicola.pero@meta-innovation.com>
581
582 * objc/runtime.h (class_getIvarLayout): New.
583 (class_getWeakIvarLayout): New.
584 (class_setIvarLayout): New.
585 (class_setWeakIvarLayout): New.
586 * ivars.c (class_getIvarLayout): New.
587 (class_getWeakIvarLayout): New.
588 (class_setIvarLayout): New.
589 (class_setWeakIvarLayout): New.
590
8437e063
NP
5912010-10-15 Nicola Pero <nicola.pero@meta-innovation.com>
592
593 * objc/runtime.h (class_copyPropertyList): New.
594 (class_getProperty): New.
595 (property_getAttributes): New.
596 (property_getName): New.
597 * ivars.c (class_copyPropertyList): New.
598 (class_getProperty): New.
599 (property_getAttributes): New.
600 (property_getName): New.
601
51194e8e
NP
6022010-10-15 Nicola Pero <nicola.pero@meta-innovation.com>
603
604 * objc-private/runtime.h (__objc_update_classes_with_methods): New.
605 * class.c (__objc_update_classes_with_methods): New.
606 (objc_getClassList): Do not lock the class lock.
607 * methods.c (method_exchangeImplementations): New.
608 (method_setImplementation): New.
609 * objc/runtime.h (method_setImplementation): New.
610 (method_exchangeImplementations): New.
611
ae422ccd
NP
6122010-10-15 Nicola Pero <nicola.pero@meta-innovation.com>
613
614 * Protocol.m: Include objc/runtime.h and
615 objc-private/module-abi-8.h instead of objc/objc-api.h. Do not
616 repeat Protocol's instance variables.
617 (struct objc_method_description_list): Do not define here.
618 ([-conformsTo:]): Reimplemented on top of protocol_conformsTo().
619 ([descriptionForInstanceMethod:]): Use sel_isEqual() to compare
620 selectors directly instead of getting names and then using strcmp.
621 ([descriptionForClassMethod:]): Same change.
622 ([-isEqual:]): Reimplemented on top of protocol_isEqual().
623 * protocols.c (protocol_getMethodDescription): Use sel_isEqual()
624 to compare selectors directly instead of getting names and then
625 using strcmp.
626 * objc/Protocol.h: Updated comments.
627
97764753 6282010-10-15 Nicola Pero <nicola.pero@meta-innovation.com>
f7185d47
NP
629
630 * init.c (__objc_init_protocol): New function which fixes up a
631 protocol's class pointer, registers it with the runtime, register
632 all protocol selectors and registers associated protocols too.
633 (objc_init_statics): Detect if we are initializing protocols, and
634 if so, use __objc_init_protocol instead of only fixing up the
635 class pointer.
636 (__objc_init_protocls): Use __objc_init_protocol.
637 * objc-private/module-abi-8.h: Updated comments.
638 * objc-private/runtime.h
639 (__objc_register_selectors_from_description_list): New.
640 * selector.c (__objc_register_selectors_from_description_list):
641 New. (struct objc_method_description_list): Declare.
642 * Protocol.m ([-descriptionForInstanceMethod:]): Use sel_get_name
643 when accessing the name of a method, which is now correctly a SEL.
644 ([-descriptionForClassMethod:]): Same change.
645 * protocols.c (protocol_getMethodDescription): Same change.
646 * objc/runtime.h: Updated comments.
647 (sel_registerTypedName): Fixed typo in function name.
648
5254c66b
NP
6492010-10-13 Nicola Pero <nicola.pero@meta-innovation.com>
650
651 PR libobjc/23214
652 * init.c (objc_init_statics): Do not skip the initialization of a
653 statics list if the first object has already been initialized; in
654 the case of Protocols, while the first one may have been
655 initialized, some others may not have been initialized yet.
656
b0453850
NP
6572010-10-13 Nicola Pero <nicola.pero@meta-innovation.com>
658
659 * Makefile.in (OBJC_DEPRECATED_H): Added
660 objc_get_uninstalled_dtable, objc_object_alloc.h and
661 struct_objc_static_instances.h.
662
ad49efbd
NP
6632010-10-13 Nicola Pero <nicola.pero@meta-innovation.com>
664
665 * encoding.c (method_copyReturnType): New.
666 (method_copyArgumentType): New.
667 (method_getReturnType): New.
668 (method_getArgumentType): New.
669 * methods.c (method_getDescription): New.
670 * objc/runtime.h (method_copyReturnType): New.
671 (method_copyArgumentType): New.
672 (method_getReturnType): New.
673 (method_getArgumentType): New.
674 (method_getDescription): New.
675
c994cc85
NP
6762010-10-12 Nicola Pero <nicola.pero@meta-innovation.com>
677
678 * encoding.c: Tidied up comments.
679 (objc_skip_variable_name): New static inline function.
680 (objc_sizeof_type): Use objc_skip_variable_name instead of copying
681 the same code over and over.
682 (objc_alignof_type): Same.
683 (objc_aligned_size): Same.
684 (objc_promoted_size): Same.
685 (objc_skip_typespec): Same.
686 (objc_layout_structure_next_member): Same.
687 (objc_skip_offset): Skip a '-' before the digits (if any). Fixed
688 historical bug where objc_skip_offset would skip one byte even if
689 there is no offset: check that the first offset digit is actually
690 a digit before skipping it.
691 (objc_skip_type_qualifiers): Mark as inline.
692 (objc_skip_typespec): Mark as inline.
693
ad9eef11
NP
6942010-10-12 Nicola Pero <nicola.pero@meta-innovation.com>
695
696 * Makefile.in (C_SOURCE_FILES): Added methods.c.
697 * encoding.c (method_getNumberOfArguments): New.
698 (method_get_number_of_arguments): Call
699 method_getNumberOfArguments.
700 * ivars.c (ivar_getName): Check for NULL variable argument.
701 (ivar_getOffset): Check for NULL variable argument.
702 (ivar_getTypeEncoding): Check for NULL variable argument.
703 (class_copyIvarList): New.
704 * methods.c: New.
705 * protocols.c (class_copyProtocolList): Check for Nil class_
706 argument.
707 * sendmsg.c: Use 'struct objc_method *' instead of Method_t, and
708 'struct objc_method_list *' instead of MethodList_t.
709 (class_getMethodImplementation): New.
710 (class_respondsToSelector): New.
711 (class_getInstanceMethod): New.
712 (class_getClassMethod): New.
713 * objc/runtime.h: Updated comments.
714 (class_copyIvarList): New.
715 (class_getInstanceMethod): New.
716 (class_getClassMethod): New.
717 (class_getMethodImplementation): New.
718 (class_respondsToSelector): New.
719 (method_getName): New.
720 (method_getImplementation): New.
721 (method_getTypeEncoding): New.
722 (class_copyMethodList): New.
723 (method_getNumberOfArguments): New.
724
be05b0f5
NP
7252010-10-12 Nicola Pero <nicola.pero@meta-innovation.com>
726
727 * class.c: Include objc/runtime.h and objc-private/module-abi-8.h
728 instead of objc/objc-api.h.
729 (objc_get_unknown_class_handler): Do not define.
730 (class_isMetaClass): New.
731 (class_getSuperclass): New.
732 (class_getVersion): New.
733 (class_setVersion): New.
734 (class_getInstanceSize): New.
735 * exceptions.c: Include objc/runtime.h instead of objc/objc-api.h.
736 (is_kind_of_exception_matcher): Use objc_getSuperclass instead of
737 objc_get_super_class.
738 (get_ttype_entry): Use objc_getRequiredClass instead of
739 objc_get_class.
740 * ivars.c (class_getClassVariable): New.
741 * objects.c: Include objc/runtime.h, objc/thr.h and
742 objc-private/module-abi-8.h instead of objc/objc-api.h
743 * objc/runtime.h (class_getClassVariable): New.
744 (class_isMetaClass): New.
745 (class_getSuperclass): New.
746 (class_getVersion): New.
747 (class_setVersion): New.
748 (class_getInstanceSize): New.
749 * objc-private/module-abi-8.h (HOST_BITS_PER_LONG): New (from
750 objc/objc-api.h)
751 (__CLS_INFO): Same.
752 (__CLS_ISINFO): Same.
753 (__CLS_SETINFO): Same.
754 (CLS_ISMETA): Same.
755 (CLS_ISCLASS): Same.
756 (CLS_ISRESOLV): Same.
757 (CLS_SETRESOLV): Same.
758 (CLS_ISINITIALIZED): Same.
759 (CLS_SETINITIALIZED): Same.
760 (CLS_GETNUMBER): Same.
761 (CLS_SETNUMBER): Same.
762
718a8e53
NP
7632010-10-12 Nicola Pero <nicola.pero@meta-innovation.com>
764
765 * archive.c: Do not include objc/objc.h.
766 * class.c: Do not include objc/objc.h.
767 * encoding.c: Include objc/runtime.h, ctype.h and
768 objc-private/module-abi-8.h instead of objc/objc-api.h and
769 objc/encoding.h.
770 * error.c: Do not include objc/objc.h.
771 * gc.c: Include tconfig.h and objc/encoding.h only if
772 OBJC_WITH_GC.
773 * hash.c: Include objc/runtime.h and objc/thr.h instead of
774 objc/objc-api.h. Do not include objc/objc.h.
775 * init.c: Do not include objc/objc.h.
776 * ivars.c: Include objc/runtime.h, objc-private/module-abi-8.h and
777 objc/thr.h instead of objc/objc-api.h. Do not include
778 objc/objc.h.
779 * linking.m: Tidied comment.
780 * memory.c: Include objc/runtime.h instead of objc/objc-api.h.
781 Do not include objc/objc.h.
782 * objects.c: Do not include objc/objc.h.
783 * objc-sync.c: Include objc/runtime.h instead of objc/objc-api.h.
784 * protocols.c: Do not include objc/objc.h.
785 * sarray.c: Include objc/runtime.h instead of objc/objc-api.h. Do
786 not include objc/objc.h.
787 * selector.c: Do not include objc/objc.h.
788 * sendmsg.c: Do not include objc/objc.h.
789 * thr.c: Include objc/runtime.h instead of objc/objc-api.h.
790 Do not include objc/objc.h.
791 * objc/objc-decls.h: Reindented code.
792 * objc/runtime.h Include objc-decls.h. Updated comments.
793 (objc_malloc): New.
794 (objc_atomic_malloc): New.
795 (objc_calloc): New.
796 (objc_realloc): New.
797 (objc_free): New.
798 * objc-private/runtime.h: Updated comments.
799
debfbfee
NP
8002010-10-12 Nicola Pero <nicola.pero@meta-innovation.com>
801
802 * Makefile.in (C_SOURCE_FILES): Added protocols.c.
803 * objc-private/protocols.h: New.
804 * protocols.c: New.
805 * init.c: Include objc-private/protocols.h.
806 (__objc_exec_class): Call __objc_protocols_init on startup.
807 (__objc_init_protocols): Call __objc_protocols_add_protocol.
808 * objc-private/runtime.h: Use (struct objc_method_list *) instead
809 of MethodList_t, and (struct objc_method *) instead of Method_t.
810 * objc/deprecated/struct_objc_class.h: Define
811 __objc_STRUCT_OBJC_CLASS_defined.
812 * objc-private/module-abi-8.h (struct
813 objc_method_description_list): New.
814 (struct objc_class): Only define if
815 __objc_STRUCT_OBJC_CLASS_defined is undefined.
816 * objc/runtime.h (class_getName): New.
817 (objc_getProtocol): New.
818 (objc_copyProtocolList): New.
819 (class_addProtocol): New.
820 (class_conformsToProtocol): New.
821 (class_copyProtocolList): New.
822 (protocol_conformsToProtocol): New.
823 (protocol_isEqual): New.
824 (protocol_getName): New.
825 (protocol_getMethodDescription): New.
826 (protocol_copyMethodDescriptionList): New.
827 (protocol_getProperty): New.
828 (protocol_copyPropertyList): New.
829 (protocol_copyProtocolList): New.
830 * class.c (class_getName): New.
831 * selector.c (sel_isEqual): New.
832
524660d2
NP
8332010-10-12 Nicola Pero <nicola.pero@meta-innovation.com>
834
835 * selector.c (sel_getName): Return "<null selector>" for a NULL
836 argument.
837 (sel_get_name): Return 0 for a NULL argument.
838 * objc/runtime.h (sel_getName): Updated documentation.
839
840 * objc-private/hash.h (class_hash_table): Unused declaration
841 removed.
842 (module_hash_table): Same.
843 * objc/deprecated/hash.h: Same changes.
844
90a2689f
NP
8452010-10-11 Nicola Pero <nicola.pero@meta-innovation.com>
846
847 * class.c (objc_getClassList): New.
848 (objc_getRequiredClass): New.
849 (objc_getMetaClass): New.
850 (objc_lookupClass): New.
851 (objc_getClass): New.
852 (__objc_get_unknown_class_handler): New.
853 (objc_setGetUnknownClassHandler): New.
854 (objc_get_class): Use __objc_get_unknown_class_handler.
855 (objc_lookup_class): Call objc_getClass.
856 * objc/objc-api.h: Updated comment and copyright notice.
857 * objc/runtime.h: Updated comments.
858 (objc_getClass): New.
859 (objc_lookupClass): New.
860 (objc_getMetaClass): New.
861 (objc_getRequiredClass): New.
862 (objc_getClassList): New.
863 (objc_setGetUnknownClassHandler): New.
864 (objc_get_unknown_class_handler): New.
865 * objc-private/runtime.h: Use __objc_private_runtime_INCLUDE_GNU
866 instead of __objc_runtime_INCLUDE_GNU as include guard.
867 * objc-private/error.h (_objc_abort): Mark as noreturn.
868
fdcbbfe7
NP
8692010-10-11 Nicola Pero <nicola.pero@meta-innovation.com>
870
871 * Makefile.in (C_SOURCE_FILES): Added ivars.c.
872 * ivars.c: New.
873 * objc/objc.h: Updated comments.
874 * objc/runtime.h (object_getClass): New.
875 (object_getClassName): New.
876 (object_setClass): New.
877 (class_getInstanceVariable): New.
878 (object_getIndexedIvars): New.
879 (object_getInstanceVariable): New.
880 (object_setInstanceVariable): New.
881 (object_getIvar): New.
882 (object_setIvar): New.
883 (ivar_getName): New.
884 (ivar_getOffset): New.
885 (ivar_getTypeEncoding): New.
886 * objc-private/module-abi-8.h (struct objc_class): Added.
887 * objects.c (object_getClassName): New.
888 (object_setClass): New.
889
bc18535a
NP
8902010-10-11 Nicola Pero <nicola.pero@meta-innovation.com>
891
892 * objc/objc.h: Updated comments.
893 * objc/objc-api.h: (object_copy): Added one argument; use a
894 #define to maintain backwards-compatibility. Moved
895 _objc_object_alloc, _objc_object_copy, _objc_object_dispose and
896 objc_get_uninstalled_dtable into
897 objc/deprecated/objc_get_uninstalled_dtable.h and
898 objc/deprecated/objc_object_alloc.h. Include these files.
899 * objc/deprecated/objc_get_uninstalled_dtable.h: New.
900 * objc/deprecated/objc_object_alloc.h: New.
901 * objc/runtime.h (set_getName): New.
902 (sel_getType): New.
903 (sel_getUid): New.
904 (sel_registerName): New.
905 (sel_registerTypedName): New.
906 (sel_isEqual): New.
907 (class_createInstance): New.
908 (object_copy): New.
909 (object_dispose): New.
910 * objects.c: Do not include tconfig.h. Include gc_typed.h if
911 building the garbage collection version.
912 (__objc_object_alloc): Removed.
913 (__objc_object_copy): Removed.
914 (__objc_object_dispose): Removed.
915 (class_createInstance): New from code in class_create_instance.
916 Cast second argument of GC_malloc_explicitly_typed. Use
917 objc_calloc. Do not call _objc_object_alloc.
918 (class_create_instance): Call class_createInstance.
919 (object_copy): Added extraBytes argument. Do not call
920 _objc_object_copy.
921 (object_dispose): Do not call _objc_object_dispose.
922 * memory.c (objc_free): When using garbage collection, mark the
923 argument as unused.
924 * selector.c (sel_getName): New.
925 (sel_get_name): Call sel_getName.
926 (sel_getType): New.
927 (sel_get_type): Call sel_getType.
928 (sel_registerName): New.
929 (sel_register_name): Call sel_registerName.
930 (sel_registerTypedName): New.
931 (sel_register_typed_name): Call sel_registerTypedName.
932 (sel_getUid): New.
933 (sel_get_uid): Call sel_getUid.
934
e4d50866
NP
9352010-10-10 Nicola Pero <nicola.pero@meta-innovation.com>
936
937 * objc/objc-api.h: Define Method, Method_t, Category and
938 Category_t. Prevent including this file at the same time as
939 objc/runtime.h. Updated comments.
940 * objc/deprecated/struct_objc_method.h: Do not define Method,
941 Method_t.
942 * objc/deprecated/struct_objc_category.h: Do not define Category,
943 Category_t.
944 * objc-private/module-abi-8.h: New file containing a copy of all
945 the structure definitions. Not used yet.
946 * objc/encoding.h (objc_aligned_size): Removed duplicate
947 declaration. Updated comments.
948 * objc/runtime.h: Added Ivar, objc_property_t, Property, Method,
949 Category, struct objc_method_description, _C_ID and similar,
950 _C_CONST and similar and _F_CONST and similar. Added
951 objc_sizeof_type, objc_alignof_type, objc_aligned_size,
952 objc_promoted_size, objc_skip_type_qualifier, objc_skip_typespec,
953 objc_skip_offset, objc_skip_argspec, objc_get_type_qualifiers,
954 struct objc_struct_layout, objc_layout_structure,
955 objc_layout_structure_next_member, objc_layout_finish_structure,
956 objc_layout_structure_get_info. Prevent including this file at
957 the same time as objc/objc-api.h.
958
2461ab4b
NP
9592010-10-10 Nicola Pero <nicola.pero@meta-innovation.com>
960
961 * Makefile.in (OBJC_DEPRECATED_H): Added struct_objc_category.h,
962 struct_objc_ivar.h, struct_objc_ivar_list.h, struct_objc_method.h,
963 struct_objc_method_list.h, struct_objc_module.h,
964 struct_objc_protocol_list.h, struct_objc_symtab.h.
965 * objc/deprecated/struct_objc_category.h: New.
966 * objc/deprecated/struct_objc_ivar.h: New.
967 * objc/deprecated/struct_objc_ivar_list.h: New.
968 * objc/deprecated/struct_objc_method.h: New.
969 * objc/deprecated/struct_objc_method_list.h: New.
970 * objc/deprecated/struct_objc_module.h: New.
971 * objc/deprecated/struct_objc_protocol_list.h: New.
972 * objc/deprecated/struct_objc_symtab.h: New.
973 * objc/deprecated/struct_objc_static_instances.h: New.
974 * objc/objc-api.h: Definitions of deprecated structures moved into
975 the above header fragment files in objc/deprecated/. Include the
976 files instead of definition the structures here. Updated
977 comments.
978 * objc/runtime.h: Updated comments. Do not include objc-api.h.
979 (objc_set_enumeration_mutation_handler): Renamed to
980 objc_setEnumerationMutationHandler.
981 * objc-foreach.c (objc_set_enumeration_mutation_handler): Renamed
982 to objc_setEnumerationMutationHandler.
983 * objc/objc-exception.h (objc_set_exception_matcher): Renamed to
984 objc_setExceptionMatcher.
985 (objc_set_uncaught_exception_handler): Renamed to
986 objc_setUncaughtExceptionHandler.
987 * exception.c: Same changes.
988
e2633f25
NP
9892010-10-10 Nicola Pero <nicola.pero@meta-innovation.com>
990
991 * objc-sync.c: Include objc-private/common.h.
992
cf3822f1
NP
9932010-10-10 Nicola Pero <nicola.pero@meta-innovation.com>
994
995 * objc-foreach.c: Include objc-private/common.h.
996 * objc/deprecated/METHOD_NULL.h: New file.
997 * objc/objc-api.h: Include deprecated/METHOD_NULL.h instead of
998 defining METHOD_NULL here.
999 * Makefile.in (OBJC_DEPRECATED_H): Added METHOD_NULL.h.
1000 * Object.m ([+instancesRespondTo:]): Use (Method_t)0 instead of
1001 METHOD_NULL.
1002 ([-respondsTo:]): Same change.
1003 * objc/objc-api.h (method_get_imp): Converted it into a normal
1004 function so that we can hide the internals of struct objc_method.
1005 * sendmsg.c (method_get_imp): Implemented.
1006
6176c2a9
NP
10072010-10-09 Nicola Pero <nicola.pero@meta-innovation.com>
1008
1009 * objc/objc-api.h (struct objc_super, Super, Super_t,
1010 objc_msg_lookup_super, objc_msg_sendv, objc_msg_forward,
1011 objc_msg_forward2): Declarations moved to objc/message.h. Include
1012 message.h here.
1013 * objc/message.h: Added such declarations; updated comments.
1014
f05b9d93
NP
10152010-10-06 Nicola Pero <nicola.pero@meta-innovation.com>
1016
1017 Implemented fast enumeration for Objective-C.
1018 * Makefile.in (C_SOURCE_FILES): Added objc-foreach.c.
1019 (OBJC_H): Added runtime.h
1020 * objc-foreach.c: New file.
1021 * objc/runtime.h: New file.
1022
2de87f04
KT
10232010-09-30 Kai Tietz <kai.tietz@onevision.com>
1024
1025 * objc/deprecated/struct_objc_class.h: Add padding
1026 to avoid warning with -Wpadded.
1027
177b48f9
NP
10282010-09-26 Nicola Pero <nicola.pero@meta-innovation.com>
1029
1030 * encoding.c (objc_sizeof_type): Added support for vector type and
1031 for double long types.
1032 (objc_alignof_type): Same change.
1033 (objc_skip_typespec): Same change.
1034 * objc/encoding.h (_C_GCINVISIBLE): Use '|' for _C_GCINVISIBLE
1035 instead of '!' since '!' is already used for _C_VECTOR.
1036 * objc/objc-api.h (_C_LNG_DBL): Added.
1037
d284c684
NP
10382010-09-26 Nicola Pero <nicola.pero@meta-innovation.com>
1039
1040 * libobjc_entry.c: File removed.
1041
7116b6ea
KT
10422010-09-26 Kai Tietz <kai.tietz@onevision.com>
1043
bd74d88b 1044 * sendmsg.c (objc_msg_lookup): Remove inline.
7116b6ea
KT
1045 (objc_get_uninstalled_dtable): Likewise.
1046 * encoding.c (objc_skip_type_qualifiers): Likewise.
1047 (objc_skip_offset): Likewise.
1048 * archive.c (__objc_write_object): Likewise
1049 (__objc_write_class):
1050 (__objc_write_selector):
1051 (objc_read_char):
1052 (objc_read_unsigned_char):
1053 (objc_read_short):
1054 (objc_read_unsigned_short):
1055 (objc_read_int):
1056 (objc_read_long):
1057 (__objc_read_nbyte_uint):
1058 (objc_read_unsigned_int):
1059 (objc_read_unsigned_long):
1060 * objc/objc-decls.h (obc_EXPORT): Remove dllexport for DLL_EXPORT case.
1061 (objc_EXPORT): Likewise.
1062 * objc/message.h (objc-decls.h): Add include.
1063 * objc/objc-api.h: Mark API by objc_EXPORT.
1064 * libobjc.def (__objc_responds_to): Removed.
1065
5d3b14bd
NP
10662010-09-18 Nicola Pero <nicola.pero@meta-innovation.com>
1067
1068 * hash.c: Include objc-private/hash.h instead of objc/hash.h.
1069
1070 * objc/sarray.h: Moved into objc/deprecated/sarray.h;
1071 objc/sarray.h replaced with a placeholder including the file from
1072 the deprecated/ directory.
1073 * objc-private/sarray.h: New file (private copy of sarray.h).
1074 * hash.c: Include <assert.h> instead of "assert.h"
1075 * sarray.c: Include <assert.h> instead of "assert.h". Include
1076 objc-private/sarray.h instead of objc/sarray.h.
1077 * selector.c: Include objc-private/sarray.h instead of
1078 objc/sarray.h.
1079 * sendmsg.c: Include <assert.h>. Include objc-private/sarray.h
1080 instead of objc/sarray.h.
1081 * Makefile.in (OBJC_DEPRECATED_H): Added sarray.h.
1082
349cfd93
NP
10832010-09-17 Nicola Pero <nicola.pero@meta-innovation.com>
1084
1085 * objc-private/objc-list.h (list_remove_elem): Unused function
1086 removed. (list_nth): Unused function removed. (list_find):
1087 Unused function removed. (list_lenght): Unused function removed.
1088
5be9cdc1
NP
10892010-09-17 Nicola Pero <nicola.pero@meta-innovation.com>
1090
1091 * objc/hash.h: Moved into objc/deprecated/hash.h; objc/hash.h
1092 replaced with a placeholder including the file from the
1093 deprecated/ directory.
1094 * objc/objc-api.h: Updated includes.
1095 * objc/typedstream.h: Updated includes.
1096 * objc-private/hash.h: New file (private copy of hash.h).
1097 * objc/objc-list.h: Moved into objc/deprecated/objc-list.h;
1098 objc/objc-list.h replaced with a placeholder including the file
1099 from the deprecated/ directory.
1100 * objc-private/objc-list.h: New file (private copy of objc-list.h).
1101 * init.c: Include objc-private/hash.h and objc-private/objc-list.h
1102 instead of objc/hash.h and objc/objc-list.h.
1103 * selector.c: Same change.
1104 * class.c: Added include <string.h>, which used to be implicitly included
1105 when hash.h was included.
1106 * exception.c: Same change.
1107 * objects.c: Same change.
1108 * sarray.c: Same change.
1109 * sendmsg.c: Same change.
1110 * Makefile.in (OBJC_DEPRECATED_H): Added hash.h and objc-list.h.
5be9cdc1 1111
fd312537
NP
11122010-09-14 Nicola Pero <nicola.pero@meta-innovation.com>
1113
1114 Implemented objc_sync_enter() and objc_sync_exit(), which are
1115 required by @synchronized() to work.
1116 * objc-sync.c: New file.
1117 * objc/objc-sync.h: New file.
1118 * objc-private/objc-sync.h: New file.
1119 * init.c (__objc_exec_class): Call __objc_sync_init() during the
1120 Objective-C runtime startup.
1121 * Makefile.in: Added objc-sync.c and objc-sync.h.
1122 * configure.ac: Added GCC_CHECK_TLS.
1123 * acinclude.m4: Include ../config/enable.m4 and ../config/tls.m4.
1124 * configure: Regenerated.
1125 * config.h.in: Regenerated.
1126
7e268280
NP
11272010-09-12 Nicola Pero <nicola.pero@meta-innovation.com>
1128
1129 * Makefile.in (%_gc.lo): New pattern rules to build the
1130 garbage-collected version of the library. Removed rules for
1131 specific files that are no longer needed. Standardized all rules.
1132 (C_SOURCE_FILES, OBJC_SOURCE_FILES): New variables.
1133 (OBJS, OBJS_GC): Compute these from C_SOURCE_FILES and
1134 OBJC_SOURCE_FILES.
1135 (INCLUDES): Removed the unused include -I$(srcdir)/objc.
1136
11372010-09-12 Nicola Pero <nicola.pero@meta-innovation.com>
1138
1139 * memory.c (objc_calloc): Fixed call to GC_malloc when building
1140 with Garbage Colletion.
1141
457e68e7
NP
11422010-09-12 Nicola Pero <nicola.pero@meta-innovation.com>
1143
1144 * memory.c: Do not include objc-private/runtime.h.
1145
d1be5d82
NP
11462010-09-12 Nicola Pero <nicola.pero@meta-innovation.com>
1147
1148 * objc/deprecated/objc_malloc.h: New file.
1149 * objc/deprecated/objc_valloc.h: New file.
1150 * objc/objc-api.h: Include the files instead of defining
1151 objc_valloc, _objc_malloc() and similar.
1152 * Makefile.in (OBJC_DEPRECATED_H): Added objc_valloc.h and
1153 objc_malloc.h.
1154 * memory.c: Removed the extra layer of indirection of _objc_malloc
1155 and similar.
1156 (objc_calloc): Use GC_malloc in the garbage-collected
1157 implementation as GC_malloc returns memory that is already freed.
1158 (objc_valloc): Deprecated.
1159
7b869986
NP
11602010-09-12 Nicola Pero <nicola.pero@meta-innovation.com>
1161
1162 * objc/deprecated/objc_error.h: New file.
1163 * objc/objc-api.h: Include deprecated/objc_error.h instead of
1164 defining objc_error and related.
1165 * error.c: New file. Added _objc_abort function which replaces
1166 objc_error. No change in functionality as they both print an
1167 error and abort.
1168 * misc.c: File removed. Code moved into memory.c and error.c.
1169 * memory.c: New file.
1170 * objc-private/error.h: New file.
1171 * archive.c: Include objc-private/error.h and use _objc_abort
1172 instead of objc_error everywhere.
1173 * class.c: Same change.
1174 * encoding.c: Same change.
1175 * init.c: Same change, and simplified init_check_module_version.
1176 * memory.c: Same change.
1177 * sendmsg.c: Same change.
1178 * thr.c: Same change.
1179 * Makefile.in (OBJ_DEPRECATED_H): Added objc_error.h.
1180 (OBJ_H): Reordered list.
1181 (OBJS): Removed misc.lo, added memory.lo and error.lo.
1182 (OBJS_GC): Removed misc_gc.lo, added memory_gc.lo and error_gc.lo.
1183 (misc_gc.lo): Rule removed.
1184 (error_gc.lo): Rule added.
1185 (memory_gc.lo): Rule added.
1186
6dead247
NP
11872010-09-12 Nicola Pero <nicola.pero@meta-innovation.com>
1188
1189 * objc/objc.h (__GNU_LIBOBJC__): New #define providing an easy way
1190 to check the API version. Added some comments.
1191
1192 * objc-private/common.h: New file.
1193 * NXConstStr.m: Include objc-private/common.h.
1194 * Object.m: Same change.
1195 * Protocol.m: Same change.
1196 * archive.c: Same change.
1197 * class.c: Same change.
1198 * encoding.c: Same change.
1199 * exception.c: Same change.
1200 * gc.c: Same change.
1201 * hash.c: Same change.
1202 * init.c: Same change.
1203 * libobjc_entry.c: Same change.
1204 * linking.m: Same change.
1205 * misc.c: Same change (and added a comment).
1206 * nil_method.c: Same change.
1207 * objects.c: Same change.
1208 * sarray.c: Same change.
1209 * selector.c: Same change.
1210 * sendmsg.c: Same change.
1211 * thr.c: Same change.
1212
83c28dfd
NP
12132010-09-11 Nicola Pero <nicola.pero@meta-innovation.com>
1214
1215 * objc/objc-api.h: Removed obsolete #ifdef for NeXTSTEP.
1216
0c11b8fb
NP
12172010-09-11 Nicola Pero <nicola.pero@meta-innovation.com>
1218
1219 * archive.c: Removed not needed includes.
1220 * class.c: Same change.
1221 * hash.c: Same change.
1222 * misc.c: Same change.
1223 * nil_method.c: Same change.
1224 * objects.c: Same change.
1225 * sarray.c: Same change.
1226 * sendmsg.c: Same change.
1227 * thr.c: Same change.
1228
a19fac96
NP
12292010-09-11 Nicola Pero <nicola.pero@meta-innovation.com>
1230
1231 * objc/runtime.h: Moved to objc-private/runtime.h. Do not include
1232 all the objc/*.h files.
1233 * objc-private/runtime.h: New file.
1234 * archive.c: Include objc-private/runtime.h (and required objc/*.h
1235 files) instead of objc/runtime.h.
1236 * class.c: Same change.
1237 * hash.c: Same change.
1238 * init.c: Same change.
1239 * misc.c: Same change.
1240 * nil_method.c: Same change.
1241 * objects.c: Same change.
1242 * sarray.c: Same change.
1243 * selector.c: Same change.
1244 * sendmsg.c: Same change.
1245 * thr.c: Same change.
1246
3d0d8739
NP
12472010-09-11 Nicola Pero <nicola.pero@meta-innovation.com>
1248
1249 * objc/deprecated/struct_objc_selector.h: New file. Definition of
1250 'struct objc_selector' and 'sel_eq' moved here.
1251 * objc/deprecated/struct_objc_protocol.h: New file. Definition of
1252 'struct objc_procotol' moved here.
1253 * objc/deprecated/struct_objc_class.h: New file. Definition of
1254 'struct objc_class' moved here.
1255 * objc/deprecated/MetaClass.h: New file. Definition of MetClass
1256 moved here.
1257 * objc/deprecated/STR.h: New file. Definition of STR moved here.
1258 * objc/message.h: New file. Definitions for relval_t, apply_t,
1259 arglist, arglist_t and objc_msg_lookup were moved here.
1260 * objc/objc.h: Include the above files instead of defining the
1261 corresponding structs, types and functions here. Added new opaque
1262 definitions for SEL and Class. Use Class and not 'struct
1263 objc_class *' in the definition of 'struct objc_object'.
1264 Commented all types defined in the file. Removed special
1265 definition of BOOL as 'int' on __vxworks; use 'unsigned char'
1266 there as well.
1267 * objc/deprecated/objc-unexpected-exception.h: Renamed to
1268 objc_unexpected_exception.h.
1269 * objc/objc-api.h: Updated include of
1270 objc-unexpetected-exception.h
1271 * objc/objc-exception.h: Updated comments.
1272 * Makefile.in (OBJC_H, OBJC_DEPRECATED_H): Added the new header
1273 files. Reindented list of files.
1274
4c26f0a5
NP
12752010-09-10 Nicola Pero <nicola.pero@meta-innovation.com>
1276
1277 * objc/objc-api.h (objc_trace): Unused variable removed.
1278
e976a775
NP
12792010-09-10 Nicola Pero <nicola.pero@meta-innovation.com>
1280
1281 * objc/deprecated: New directory.
1282 * objc/deprecated/README: New file.
1283 * objc/README: New file.
1284 * objc/typedstream.h: Moved into objc/deprecated/typedstream.h;
1285 objc/typedstream.h replaced with a placeholder including the file
1286 from the deprecated/ directory.
1287 * objc/deprecated/objc-unexpected-exception.h: New file with the
1288 definition of _objc_unexpected_exception.
1289 * objc/objc-api.h: Include deprecated/objc-unexcepted-exception.h
1290 instead of defining _objc_unexpected_exception.
1291 * objc/deprecated/Object.h: New file with the deprecated Object
1292 methods in a 'Deprecated' category.
1293 * objc/Object.h Include deprecated/Object.h instead of defining
1294 the deprecated methods.
1295 * Object.m: Moved deprecated methods into 'Deprecated' category.
1296 * objc-private: New directory.
1297 * objc-private/README: New file.
1298 * Makefile.in (OBJC_DEPRECATED_H): New variable.
1299 (install-headers): Create installation directory for
1300 OBJC_DEPRECATED_H headers, and install them.
1301
13022010-09-10 Nicola Pero <nicola.pero@meta-innovation.com>
1303
1304 * objc/objc-exception.h: Fixed include of objc.h.
1305
e30511ed
NP
13062010-09-08 Nicola Pero <nicola.pero@meta-innovation.com>
1307
1308 * objc/objc-exception.h: New file.
1309 * exception.c (objc_set_uncaught_exception_handler): Implemented.
1310 (objc_set_exception_matcher): Implemented.
1311 (objc_exception_throw): Use the uncaught exception handler if set.
1312 (PERSONALITY_FUNCTION): Use the exception matcher instead of the
1313 hardcoded isKindOf.
1314 (isKindOf): Renamed to is_kind_of_exception_matcher. Tidied code
1315 up. Removed segmentation fault when value is 'nil'.
1316 * objc/objc-api.h (_objc_unexpected_exception): Mark as
1317 deprecated.
1318 * Makefile.in (exception.lo, exception_gc.lo): Use
1319 -Wno-deprecated-declarations when compiling.
1320 (OBJC_H): Added objc-exception.h
1321
d6f62ada 13222010-09-08 Nicola Pero <nicola.pero@meta-innovation.com>
4470254f
NP
1323
1324 * objc/typedstream.h: Deprecate all functions in the file. This
1325 file is obsolete.
1326 * objc/Object.h ([+streamVersion:], [-read:], [-write:],
1327 [-awake]): Documented that these methods are deprecated. Added a
1328 brief description of the Object class and its relationship to the
1329 NSObject class.
1330 * Makefile.in: Compile archive.c and Object.m with
1331 -Wno-deprecated-declarations.
1332
88a2722e
NP
13332010-09-08 Nicola Pero <nicola.pero@meta-innovation.com>
1334
1335 Removed obsolete intermediate threading layer.
1336 * thr.c: Use __gthread_objc_xxx functions directly instead of
1337 __objc_thread_xxx ones.
1338 * objc/thr.h: Removed prototypes of no longer existing
1339 __objc_thread_xxx functions.
1340 * Makefile.in: Removed thr-objc.lo.
1341 * thr-dce.c: File removed.
1342 * thr-decosf1.c: File removed.
1343 * thr-irix.c: File removed.
1344 * thr-mach.c: File removed.
1345 * thr-objc.c: File removed.
1346 * thr-os2.c: File removed.
1347 * thr-posix.c: File removed.
1348 * thr-pthreads.c: File removed.
1349 * thr-rtems.c: File removed.
1350 * thr-single.c: File removed.
1351 * thr-solaris.c: File removed.
1352 * thr-vxworks.c: File removed.
1353 * thr-win32.c: File removed.
1354 * README.threads: File removed.
1355 * THREADS.MACH: File removed.
1356 * THREADS: Updated.
1357
29b71c02
NP
13582010-09-07 Nicola Pero <nicola.pero@meta-innovation.com>
1359
1360 * Object.m (MAX_CLASS_NAME_LEN): Unused define removed.
1361
265a000d
IS
13622010-09-06 Iain Sandoe <iains@gcc.gnu.org>
1363
1364 * encoding.c: Add TARGET_ALIGN_NATURAL definition for m64 powerpc darwin.
1365 Add a comment as to why, update FIXME comments.
1366
7b74bb63
NP
13672010-09-06 Nicola Pero <nicola.pero@meta-innovation.com>
1368
1369 * makefile.dos: Obsolete file removed.
1370
4d9e8446
RW
13712010-04-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1372
1373 * aclocal.m4: Regenerate.
1374
19222959
DK
13752010-03-23 Dave Korn <dave.korn.cygwin@gmail.com>
1376
1377 PR libobjc/30445
1378 * configure.ac (extra_ldflags_libobjc): Define appropriately for
1379 Cygwin and MinGW hosts.
1380 * Makefile.am (libobjc_s.a): Remove dead pre-libtool target.
1381 (libobjc.dll): Likewise.
1382 * configure: Regenerate.
1383
43e02a8a
RW
13842009-12-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1385
1386 * configure: Regenerate.
1387
288d6a77
JJ
13882009-11-28 Jakub Jelinek <jakub@redhat.com>
1389
1390 * sarray.c (sarray_free): Use old_buckets variable.
1391 * encoding.c (objc_layout_structure_next_member): Remove unused
1392 bfld_type_size variable.
1393
df58e648
RW
13942009-08-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1395
1396 * configure.ac (AC_PREREQ): Bump to 2.64.
1397
5213506e
RW
13982009-08-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1399
1400 * aclocal.m4: Regenerate.
1401 * configure: Regenerate.
1402 * config.h.in: Regenerate.
1403
84fec8a5
RW
14042009-08-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1405
1406 * Makefile.in (LIBTOOL): Add $(LIBTOOLFLAGS).
1407
6efbd53f
RW
14082009-07-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1409
1410 * Makefile.in (AUTOCONF, ACLOCAL, ACLOCAL_AMFLAGS, aclocal_deps):
1411 New variables.
1412 ($(srcdir)/configure, $(srcdir)/aclocal.m4): New rules.
1413
1b3b24c2
RW
14142009-07-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1415
1416 * configure.ac (_AC_ARG_VAR_PRECIOUS): Use m4_rename_force.
1417
748086b7
JJ
14182009-04-09 Nick Clifton <nickc@redhat.com>
1419
1420 * sendmsg.c: Change copyright header to refer to version 3 of
1421 the GNU General Public License with version 3.1 of the GCC
1422 Runtime Library Exception and to point readers at the COPYING3
1423 and COPYING3.RUNTIME files and the FSF's license web page.
1424 * NXConstStr.m: Likewise.
1425 * Object.m: Likewise.
1426 * Protocol.m: Likewise.
1427 * archive.c: Likewise.
1428 * class.c: Likewise.
1429 * encoding.c: Likewise.
1430 * exception.c: Likewise.
1431 * gc.c: Likewise.
1432 * hash.c: Likewise.
1433 * init.c: Likewise.
1434 * libobjc_entry.c: Likewise.
1435 * linking.m: Likewise.
1436 * misc.c: Likewise.
1437 * nil_method.c: Likewise.
1438 * objc/NXConstStr.h: Likewise.
1439 * objc/Object.h: Likewise.
1440 * objc/Protocol.h: Likewise.
1441 * objc/encoding.h: Likewise.
1442 * objc/hash.h: Likewise.
1443 * objc/objc-api.h: Likewise.
1444 * objc/objc-decls.h: Likewise.
1445 * objc/objc-list.h: Likewise.
1446 * objc/objc.h: Likewise.
1447 * objc/runtime.h: Likewise.
1448 * objc/sarray.h: Likewise.
1449 * objc/thr.h: Likewise.
1450 * objc/typedstream.h: Likewise.
1451 * objects.c: Likewise.
1452 * sarray.c: Likewise.
1453 * selector.c: Likewise.
1454 * thr-dce.c: Likewise.
1455 * thr-decosf1.c: Likewise.
1456 * thr-irix.c: Likewise.
1457 * thr-mach.c: Likewise.
1458 * thr-objc.c: Likewise.
1459 * thr-os2.c: Likewise.
1460 * thr-posix.c: Likewise.
1461 * thr-pthreads.c: Likewise.
1462 * thr-rtems.c: Likewise.
1463 * thr-single.c: Likewise.
1464 * thr-solaris.c: Likewise.
1465 * thr-vxworks.c: Likewise.
1466 * thr-win32.c: Likewise.
1467 * thr.c: Likewise.
1468 * libobjc.def: Change copyright header to refer to version 3 of
1469 the GNU General Public License and to point readers at the COPYING3
1470 file and the FSF's license web page.
1471 * makefile.dos: Likewise.
1472
14732009-04-09 Jakub Jelinek <jakub@redhat.com>
1474
1475 * Makefile.in: Change copyright header to refer to version
1476 3 of the GNU General Public License and to point readers at the
1477 COPYING3 file and the FSF's license web page.
1478 * configure.ac: Likewise.
1479
faef499b
DA
14802009-03-12 Richard Frith-Macdonald <rfm@gnu.org>
1481 David Ayers <ayers@fsfe.org>
1482
1483 PR libobjc/27466
1484 * objc/objc-api.h (_objc_unexpected_exception): Declare
1485 new hook. Update copyright dates.
1486 * exception.c (objc_exception_throw): Use hook. Update
1487 copyright dates.
1488 * libobjc.def (_objc_unexpected_exception): Export hook.
1489 Update copyright dates.
1490
7a9d3fe8
RW
14912009-03-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1492
1493 * configure: Regenerate.
1494
baafc534
RW
14952008-12-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1496
1497 * configure: Regenerate.
1498
b15b7ef8
KT
14992008-11-21 Kai Tietz <kai.tietz@onevision.com>
1500
1501 * Object.m (errno): Replaced by errno.h include.
1502 (compare): Cast self to id to prevent warning on comparison.
1503 * objc/objc.h (BOOL): Prevent redeclaration of BOOL, if it is
1504 already there.
1505 * sendmsg.c (__objc_print_dtable_stats): Remove type warnings.
1506 * thr-win32.c (__objc_thread_detach): Remove type warning.
1507 (__objc_thread_id): Likewise.
1508 * thr.c (__objc_thread_detach_functiont): Add __builtin_trap ()
1509 for noreturn.
1510
467b2e9e
PG
15112008-09-26 Peter O'Gorman <pogma@thewrittenword.com>
1512 Steve Ellcey <sje@cup.hp.com>
1513
1514 * configure: Regenerate for new libtool.
1515 * config.h.in: Regenerate for new libtool.
1516
920d063d
MK
15172008-07-18 Matthias Klose <doko@ubuntu.com>
1518
1519 * Makefile.in: Ignore missing ../boehm-gc/threads.mk.
1520
785fad0a
MK
15212008-07-18 Matthias Klose <doko@ubuntu.com>
1522
1523 * Makefile.in: Include ../boehm-gc/threads.mk.
1524 (OBJC_BOEHM_GC_LIBS): Define, (libobjc_gc$(libsuffix).la): Use it.
1525
a0ed5099
RW
15262008-07-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1527
1528 * Makefile.in (install-info): New stub target.
1529
18c04407
RW
15302008-06-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
1531
1532 * configure: Regenerate.
1533
b01bd5fe
KT
15342008-06-14 Kai Tietz <kai.tietz@onevision.com>
1535
1536 * exception.c (PERSONALITY_FUNCTION): Remove extra decrement
1537 if HAVE_GETIPINFO is not defined.
1538
c24aadf3
KT
15392008-06-10 Kai Tietz <kai.tietz@onevision.com>
1540
1541 * Object.m (compare): Add type id.
1542 * objc/Object.h: Likewise.
1543 * archive.c (objc_read_class): Use size_t to extend version to be
1544 size of pointer scalar width.
1545 * sendmsg.c (rtx): Undefine it before redefinition.
1546 (__objc_print_dtable_stats): Cast arguments to long as intended.
1547
3f6383d3
JB
15482008-05-30 Julian Brown <julian@codesourcery.com>
1549
1550 * exception.c (__objc_exception_class): Initialise as constant
1551 array for ARM EABI. Change macro to static const for non-ARM EABI.
1552 (ObjcException): Add note about structure layout. Remove landingPad
1553 and handlerSwitchValue for ARM EABI.
1554 (get_ttype_entry): Add __ARM_EABI_UNWINDER__ version
1555 of function.
1556 (CONTINUE_UNWINDING): Define for ARM EABI/otherwise cases.
1557 (PERSONALITY_FUNCTION): Use ARM EABI-specific arguments, and add
1558 ARM EABI unwinding support.
1559 (objc_exception_throw): Use memcpy to initialise exception class.
1560
dd25a747
AM
15612008-05-25 Alan Modra <amodra@bigpond.net.au>
1562
1563 * encoding.c (strip_array_types): Rename from get_inner_array_type.
1564 (rs6000_special_round_type_align): Update.
1565
7afa92c5
JB
15662008-05-09 Julian Brown <julian@codesourcery.com>
1567
1568 * Makefile.in (LTLDFLAGS): New.
1569 (libobjc$(libsuffix).la, libobjc_gc$(libsuffix).la): Use above.
1570
deb984e6
PB
15712008-04-18 Paolo Bonzini <bonzini@gnu.org>
1572
1573 PR bootstrap/35457
1574 * aclocal.m4: Regenerate.
1575 * configure: Regenerate.
1576
e7ad4ca7
DE
15772008-01-24 David Edelsohn <edelsohn@gnu.org>
1578
1579 * configure: Regenerate.
1580
2c888488
L
15812007-10-14 H.J. Lu <hongjiu.lu@intel.com>
1582
1583 * configure.ac: Don't run config-ml.in directly.
1584 (multilib_arg): New.
1585 * configure: Regenerated.
1586
30cad60d
AP
15872007-08-06 Andrew Pinski <pinskia@gmail.com>
1588
1589 PR libobjc/30731
1590 * exception.c (parse_lsda_header): Use _uleb128_t/_sleb128_t instead
1591 of _Unwind_Word for variables which are used in
1592 read_uleb128/read_sleb128.
1593 (PERSONALITY_FUNCTION): Likewise.
1594
12a27363
L
15952007-07-05 H.J. Lu <hongjiu.lu@intel.com>
1596
1597 * aclocal.m4: Regenerated.
1598
af333b9a
AP
15992007-06-03 Andrew Pinski <andrew_pinski@playstation.sony.com>
1600
1601 * configure.ac: Fix a typo in *-*-darwin clause.
1602 * configure: Regenerated.
1603
4620d81e
L
16042007-06-02 H.J. Lu <hongjiu.lu@intel.com>
1605
1606 * configure.ac: Fix a typo.
1607 * configure: Regenerated.
1608
82a6cadf
PB
16092007-06-02 Paolo Bonzini <bonzini@gnu.org>
1610
1611 * configure: Regenerate.
1612
45d5f86c
AP
16132007-06-01 Andrew Pinski <andrew_pinski@playstation.sony.com>
1614
1615 * Makefile.in: Replace all uses of libext with libsuffix.
1616 * configure.ac: Likewise.
1617 * configure: Regenerate.
1618
1619 Revert:
1620 * Makefile.in: Remove all uses of $(libext).
1621
8b5dda41
AP
16222007-05-23 Andrew Pinski <andrew_pinski@playstation.sony.com>
1623
1624 * Makefile.in: Remove all uses of $(libext).
1625
1cf3d07d
SE
16262007-05-23 Steve Ellcey <sje@cup.hp.com>
1627
1628 * configure: Regenerate.
1629 * aclocal.m4: Regenerate.
1630
8972bcd8
AR
16312007-04-21 Andrew Ruder <andy@aeruder.net>
1632
1633 * sendmsg.c (__objc_get_forward_imp): Call
1634 __objc_msg_forward2 for real.
1635
80ae8e8a
AR
16362007-04-09 Andrew Ruder <andy@aeruder.net>
1637
1638 * sendmsg.c: Added __objc_msg_forward2, a hook that allows
1639 external libraries to provide a function that returns the real
1640 forwarding function based on both the selector and the receiver.
1641 * objc/objc-api.h: Define __objc_msg_forward2.
1642
38593123
BM
16432007-03-01 Brooks Moses <brooks.moses@codesourcery.com>
1644
1645 * Makefile.in: Add dummy install-pdf target.
1646
3034b453
MLI
16472007-02-18 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
1648
1649 * objc/objc-list.h (list_free): Add keyword 'inline' to avoid
1650 unused warning.
1651
58182de3
GK
16522006-10-31 Geoffrey Keating <geoffk@apple.com>
1653
1654 * encoding.c (darwin_rs6000_special_round_type_align): New.
1655
5b043f08
GK
16562006-10-14 Geoffrey Keating <geoffk@apple.com>
1657
1658 * Makefile.in: Use multi_basedir instead of toplevel_srcdir.
1659 * configure.ac: Use multi.m4 from aclocal rather than custom
1660 code. Use multi_basedir instead of toplevel_srcdir.
1661 * aclocal.m4: Regenerate.
1662 * configure: Regenerate.
1663
b5422ad7
BM
16642006-10-10 Brooks Moses <bmoses@stanford.edu>
1665
1666 * Makefile.in: Added empty "pdf" target.
1667
57255173
PB
16682006-07-18 Paolo Bonzini <bonzini@gnu.org>
1669
91ba215a 1670 * configure: Regenerate.
57255173 1671
2788992b
CD
16722006-05-23 Carlos O'Donell <carlos@codesourcery.com>
1673
1674 * Makefile.in: Add install-html target. Add install-html to .PHONY
1675
529490b4
RO
16762006-02-21 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
1677
1678 PR libobjc/26309
1679 * thr-objc.c (_XOPEN_SOURCE): Don't define on Tru64 UNIX.
1680
801a91f9
DA
16812006-01-24 David Ayers <d.ayers@inode.at>
1682
1683 PR libobjc/9751
1684 * gc.c (class_ivar_set_gcinvisible): Replace strncpy with memcpy
1685 and insure the new strings are '\0' termintated.
1686
8c3e5222
DA
16872006-01-24 David Ayers <d.ayers@inode.at>
1688
1689 PR libobjc/13946
1690 * configure.ac: Add include directives for --enable-objc-gc.
1691 * Makefile.in: Ditto.
1692 * configure: Regenerate.
1693
1694 * gc.c (__objc_class_structure_encoding): Increment the used bytes
1695 instead of the local pointer to them.
1696
06b11455
AP
16972005-12-14 Andrew Pinski <pinskia@physics.uc.edu>
1698
1699 PR objc/25360
91ba215a
AP
1700 * objc/objc-api.c (_C_COMPLEX): New define.
1701 * encoding.c (objc_sizeof_type): Handle _C_Complex.
1702 (objc_alignof_type): Likewise.
1703 (objc_skip_typespec): Likewise.
06b11455 1704
bf5b295c
DA
17052005-12-15 David Ayers <d.ayers@inode.at>
1706
1707 PR libobjc/14382
1708 * README (+load,+initialize): Fix documentation to reflect
1709 intended and implemented semantics for +load and +initialize.
1710
761c0d29
AP
17112005-12-12 Andrew Pinski <pinskia@physics.uc.edu>
1712
1713 * encoding.c (TYPE_FIELDS): Fix to skip over just _C_STRUCT_B and
1714 the name.
1715 (get_inner_array_type): Fix to skip over _C_ARY_B and size.
1716 (rs6000_special_round_type_align): Update for the ABI fix.
1717 (objc_layout_finish_structure): Correct the encoding which is passed to
1718 ROUND_TYPE_ALIGN.
1719
4540a3ad
AP
17202005-12-11 Andrew Pinski <pinskia@physics.uc.edu>
1721
1722 PR libobjc/25347
1723 * encoding.c (objc_sizeof_type): Don't handle _C_UNION_B special
1724 but use the struct layout functions.
1725 (objc_alignof_type): Likewise.
1726 (objc_layout_structure): Handle _C_UNION_B also.
1727 (objc_layout_structure_next_member): Likewise.
1728 (objc_layout_finish_structure): Likewise.
1729
153b4898
AP
17302005-12-11 Andrew Pinski <pinskia@physics.uc.edu>
1731
1732 PR libobjc/25346
1733 * objc/objc-api.h (_C_BOOL): New define.
1734 * encoding.c (objc_sizeof_type): Handle _C_BOOL.
1735 (objc_alignof_type): Likewise.
1736 (objc_skip_typespec): Likewise.
1737
84700346
DA
17382005-11-20 David Ayers <d.ayers@inode.at>
1739
1740 PR libobjc/19024
1741 * objc/hash.h: Remove deprecated hash API.
1742 * hash_compat.c: Remove.
1743 * Makefile.in: Remove reference to hash_compat.c.
1744
1745 * configure.ac (VERSION): Bump library version to 2:0:0.
1746 * configure: Regenerate.
1747
7ef67393
AO
17482005-11-09 Alexandre Oliva <aoliva@redhat.com>
1749
1750 PR other/4372
1751 * thr-objc.c (_XOPEN_SOURCE): Define.
1752
b7add506
UW
17532005-10-07 Ulrich Weigand <uweigand@de.ibm.com>
1754
1755 PR libobjc/23612
1756 * objc/objc-api.h (struct objc_ivar): Move definition to
1757 global scope.
1758
ca59f04b
AP
17592005-09-04 Andrew Pinski <pinskia@physics.uc.edu>
1760 Rasmus Hahn <rassahah@neofonie.de>
1761
1762 PR libobjc/23108
1763 * archive.c (objc_write_type): Correct the element offset.
1764 (objc_read_type): Likewise.
1765
f9d09c43
KC
17662005-08-17 Kelley Cook <kcook@gcc.gnu.org>
1767
1768 * All files: Update FSF address.
1769
ee1658f3
MK
17702005-08-13 Marcin Koziej <creep@desk.pl>
1771 Andrew Pinski <pinskia@physics.uc.edu>
1772
1773 PR libobjc/22492
1774 * exception.c (PERSONALITY_FUNCTION): Fix the PC with finally.
1775
a5a813f8
AP
17762005-08-13 Andrew Pinski <pinskia@physics.uc.edu>
1777
1778 * Makefile.in (extra_ldflags_libobjc): New.
1779 (libobjc$(libext).la): Add extra_ldflags_libobjc to the link line.
1780 (libobjc_gc$(libext).la): Likewise.
1781 * configure.ac (extra_ldflags_libgfortran): Set for *-darwin* to
1782 "-Wl,-single_module".
1783 * configure: Regenerate.
1784 * linking.m (_objcInit): Remove.
1785
84fd360d
AP
17862005-07-26 Andrew Pinski <pinskia@physics.uc.edu>
1787
1788 PR libobjc/22606
1789 * Makefile.in (ALL_CFLAGS): Add -fexceptions.
1790
cf223603
DA
17912005-06-08 David Ayers <d.ayers@inode.at>
1792
1793 * objc/NXConstStr.h, objc/Object.h, objc/Protocol.h,
1794 objc/encoding.h, objc/hash.h, objc/objc-api.h,
1795 objc/runtime.h, objc/sarray.h, objc/thr.h,
1796 objc/typedstream.h: Do not include Objective-C headers as
1797 system headers.
1798
348a3445
DA
17992005-06-07 David Ayers <d.ayers@inode.at>
1800
1801 * archive.c, init.c, selector.c: Include hash.h.
1802 * archive.c, class.c, encoding.c, gc.c, hash.c, hash_compat.c,
1803 init.c, misc.c, nil_method.c, objects.c, sarray.c, selector.c,
1804 sendmsg.c, thr-dce.c, thr-decosf1.c, thr-irix.c, thr-mach.c,
1805 thr-objc.c, thr-os2.c, thr-posix.c, thr-pthreads.c, thr-rtems.c,
1806 thr-single.c, thr-solaris.c, thr-vxworks.c, thr-win32.c, thr.c:
1807 Include Objective-C headers with quotes and objc/ directory
1808 prefix.
1809
4419e343
RH
18102005-05-19 Richard Henderson <rth@redhat.com>
1811
1812 * exception.c: Revert last change.
1813
2e8a88f0
DA
18142005-05-19 David Ayers <d.ayers@inode.at>
1815
1816 * exception.c: Include tsystem.h for unwind.h.
1817
f4c767fd
MS
18182005-05-09 Mike Stump <mrs@apple.com>
1819
1820 * configure: Regenerate.
1821
6dab073b
MS
18222005-04-12 Mike Stump <mrs@apple.com>
1823
1824 * configure: Regenerate.
1825
2b37e3d5
ZW
18262005-03-21 Zack Weinberg <zack@codesourcery.com>
1827
1828 * Makefile.in: Set gcc_version here.
1829 * configure.ac: Do not invoke TL_AC_GCC_VERSION. Adjust quoting
1830 in definition of toolexeclibdir so that $(gcc_version) is expanded
1831 by the Makefile.
1832 * aclocal.m4, configure: Regenerate.
1833
e59ef543
DA
18342005-03-03 David Ayers <d.ayers@inode.at>
1835
1836 * objc/hash.h (OBJC_IGNORE_DEPRECATED_API): Update deprecated
1837 version reference. Correct typo.
1838
270a1283
DA
18392005-03-02 David Ayers <d.ayers@inode.at>
1840
1841 PR libobjc/19024
1842 * Makefile.in (OBJS): Add hash_compat.lo.
1843 (OBJS_GC): Add hash_compat_gc.lo.
1844 (hash_compat_gc.lo): New target and rule.
1845 * objc/hash.h (hash_new, hash_delete, hash_add, hash_remove)
1846 (hash_next, hash_value_for_key, hash_is_key_in_hash)
1847 (hash_ptr, hash_string, compare_ptrs, compare_strings): Prefix
1848 with objc_. Add deprecated non prefixed inlined versions.
1849 (OBJC_IGNORE_DEPRECATED_API): New macro to hide deprecated
1850 declarations.
1851 * hash.c (hash_new, hash_delete, hash_add, hash_remove, hash_next)
1852 (hash_value_for_key, hash_is_key_in_hash): Prefix with objc_ and
1853 update callers.
1854 * hash_compat.c: New file.
1855 * archive.c: Update callers.
1856 * init.c: Likewise.
1857 * selector.c: Likewise.
1858 * libobjc.def: Add objc_ versions of hash functions.
1859
6886e18e
AP
18602005-02-28 Andrew Pinski <pinskia@physics.uc.edu>
1861
1862 PR libobjc/20252
1863 * Makefile.in (GTHREAD_FLAGS): Remove.
1864 (ALL_CFLAGS): Remove usage of GTHREAD_FLAGS.
1865 * thr-objc.c: Include config.h.
1866 * configure.ac: Instead of looking at GCC's makefile, figure out if
1867 GTHREAD_FLAGS should be defined by looking at the `thread model'
1868 of the current gcc.
1869 * configure: Regenerate.
1870 * config.h.in: Regenerate.
1871
215c351a
PB
18722005-02-28 Paolo Bonzini <bonzini@gnu.org>
1873
1874 PR bootstrap/17383
1875 * configure.ac: Call GCC_TOPLEV_SUBDIRS.
1876 (Determine CFLAGS for gthread): Use $host_subdir.
1877 * configure: Regenerate.
1878 * Makefile.in (host_subdir): New.
1879 (INCLUDES): Use it.
1880
63b6f9ea
AP
18812004-12-20 Andrew Pinski <pinskia@physics.uc.edu>
1882
1883 PR libobjc/12035
1884 * gc.c: Remove definition of LOGWL, modWORDSZ, and divWORDSZ since
def9360c
AP
1885 they are not used.
1886 Include limits.h and stdlib.h.
1887 Define BITS_PER_WORD.
63b6f9ea 1888
64cbe55e
AM
18892004-12-12 Alexander Malmberg <alexander@malmberg.org>
1890
1891 * selector.c (__objc_init_selector_tables): Add missing void to
1892 definition.
1893
afabd8e6
RS
18942004-12-02 Richard Sandiford <rsandifo@redhat.com>
1895
1896 * configure.ac: Use TL_AC_GCC_VERSION to set gcc_version.
1897 * configure, aclocal.m4: Regenerate.
1898
2539bffe
KC
18992004-11-29 Kelley Cook <kcook@gcc.gnu.org>
1900
1901 * configure: Regenerate for libtool change.
1902
767f726e
KC
19032004-11-25 Kelley Cook <kcook@gcc.gnu.org>
1904
1905 * configure: Regenerate for libtool reversion.
1906
2c92e90f
KC
19072004-11-24 Kelley Cook <kcook@gcc.gnu.org>
1908
1909 * configure: Regenerate for libtool change.
1910
2fc30700
KC
19112004-11-24 Kelley Cook <kcook@gcc.gnu.org>
1912
1913 * aclocal.m4, config.h.in: Regenerate.
1914
dd365157 19152004-10-08 Mike Stump <mrs@apple.com>
2b37e3d5 1916 Andrew Pinski <pinskia@physics.uc.edu>
dd365157
MS
1917
1918 * aclocal.m4: Rename to ...
1919 * acinclude.m4: here and also use m4_include instead of sinclude.
1920 * aclocal.m4: Regenerate.
1921 * configure: Regenerate.
1922 * configure.ac: Add AM_MAINTAINER_MODE and AM_PROG_CC_C_O.
5a59530d 1923 * Makefile.in (configure): Add @MAINT@ infront of configure.ac
dd365157 1924
8d488306
AP
19252004-10-08 Andrew Pinski <pinskia@physics.uc.edu>
1926
1927 * archive.c: Fix all the warnings about passing unsigned char*
1928 to char* and the other way too.
1929
049bc404
AP
19302004-09-16 Andrew Pinski <pinskia@physics.uc.edu>
1931
1932 PR libobjc/16448
1933 * exception.c: Include config.h
1934 (objc_exception_throw): Change _GLIBCXX_SJLJ_EXCEPTIONS to
1935 SJLJ_EXCEPTIONS.
1936 * configure.ac: Find out what exception handling code we use.
1937 * configure: Regenerate.
1938 * config.h.in: New file, regenerate.
1939
45f17969
AP
19402004-09-16 Andrew Pinski <apinski@apple.com>
1941
1942 * encoding.c (ALTIVEC_VECTOR_MODE): Define a bogus macro.
1943
1506eac1
NN
19442004-08-28 Nathanael Nerode <neroden@gcc.gnu.org>
1945
1946 * configure.ac: Switch from _GCC_TOPLEV_NONCANONICAL_TARGET to
1947 ACX_NONCANONICAL_TARGET.
1948 * configure: Regenerate.
1949
f13bb199
ZL
19502004-08-13 Ziemowit Laski <zlaski@apple.com>
1951
1952 * objc/sarray.h: Hoist include of assert.h near the top of file,
1953 and mark the remainder of the file 'extern "C"'.
1954
9567d415
AP
19552004-08-13 Andrew Pinski <pinskia@physics.uc.edu>
1956
1957 * objc/Object.h: Move includes out of extern "C" blocks.
1958 * objc/encoding.h: Likewise.
1959 * objc/hash.h: Likewise.
1960 * objc/objc-api.h: Likewise.
1961 * objc/runtime.h: Likewise.
1962 * objc/sarray.h: Likewise.
1963 * objc/typedstream.h: Likewise.
1964
1a6213c3
ZL
19652004-08-12 Ziemowit Laski <zlaski@apple.com>
1966
1967 * objc/NXConstStr.h: Update copyright date; bracket with
1968 'extern "C"' for C++ use; make include syntax consistent
1969 by using <...> instead of "..."; hoist <objc/...> includes
1970 above the 'extern "C"' block.
1971 * objc/Object.h: Likewise.
1972 * objc/Protocol.h: Likewise.
1973 * objc/encoding.h: Likewise.
1974 * objc/hash.h: Likewise.
1975 * objc/runtime.h: Likewise.
1976 * objc/sarray.h: Likewise.
1977 * objc/thr.h: Likewise.
1978 * objc/typedstream.h: Likewise.
1979 * objc/objc-api.h: Add 'extern "C"' block for C++ use.
1980 (objc_static_instances): For C++ case, do away with
1981 zero-sized array.
1982 (objc_method): Hoist definition to file scope.
1983 (_objc_load_callback, _objc_object_alloc, class_get_class_method,
2b37e3d5 1984 class_get_instance_method, class_create_instance,
1a6213c3
ZL
1985 class_get_class_name, class_get_instance_size,
1986 class_get_meta_class, class_get_super_class, class_get_version,
1987 class_is_class, class_is_meta_class, class_set_version,
1988 class_get_gc_object_type, class_ivar_set_gcinvisible,
1989 get_imp): Rename 'class' parameter to '_class'.
1990 * objc/objc-list.h: Add 'extern "C"' block for C++ use.
1991 * objc/objc.h: Update copyright date.
1992 (arglist_t): Provide a union tag.
1993
bc012a44
AP
19942004-07-22 Andrew Pinski <pinskia@physics.uc.edu>
1995
1996 * thr.c (__objc_thread_detach_function): Do not mark as volatile
1997 but instead use the attribute noreturn.
1998
0cf61401
ZW
19992004-06-28 Zack Weinberg <zack@codesourcery.com>
2000
2001 * encoding.c: Rename target_flags with a #define to avoid
2002 conflict with a prior declaration.
2003
6f0aa5e1
AP
20042004-06-24 Andrew Pinski <apinski@apple.com>
2005
2006 * objc/encoding.h: Wrap the functions with extern "C" for C++
0cf61401 2007 mode.
6f0aa5e1
AP
2008 * objc/hash.h: Likewise.
2009 * objc/objc-api.h: Likewise.
2010 * objc/objc-list.h: Likewise.
2011 * objc/runtime.h: Likewise.
2012 * objc/sarray.h: Likewise.
2013 * objc/thr.h: Likewise.
2014 * objc/typedstream.h: Likewise.
2015
2016
e7ebc32a
NC
20172004-06-21 Nick Clifton <nickc@redhat.com>
2018
2019 * encoding.c (BITS_PER_UNIT): Define if a definition is not
2020 provided.
2021
5520b936
AM
20222004-06-20 Alexander Malmberg <alexander@malmberg.org>
2023
0cf61401
ZW
2024 * Makefile.in (exception.lo): Remove $(OBJC_GCFLAGS).
2025 (exception_gc.lo): New.
2026 (OBJS_GC): Add exception_gc.lo.
2027
a776161b
RH
20282004-06-17 Richard Henderson <rth@redhat.com>
2029
2030 * exception.c: New file.
2031 * Makefile.in (exception.lo): New.
2032 (OBJS): Add it.
2033
da727eab
AP
20342004-06-14 Andrew Pinski <pinskia@physics.uc.edu>
2035
2036 * linking.m (_objcInit): New empty function
2037 for Darwin only.
2038
3f35ff6f
AP
20392004-06-11 Andrew Pinski <pinskia@physics.uc.edu>
2040
684c64bf
AP
2041 * configure.ac: Support --enable-shared=libobjc.
2042 * configure: Regenerate.
2043
3f35ff6f
AP
2044 PR libobjc/15901
2045 * configure.ac: Do not disable shared by default.
2046 * configure: Regenerate.
2047
1600b7d6
NP
20482004-06-03 Nicola Pero <n.pero@mi.flashnet.it>
2049
2050 * Protocol.m ([-isEqual:]): Small optimizations returning
2051 immediately if the argument is equal to self, and accessing
2052 the argument's name directly if it's a protocol.
2053
20542004-06-03 David Ayers <d.ayers@inode.at>
2055
2056 * Protocol.m ([-isEqual:]): Test the class of the argument.
2057
ff65de76
AP
20582004-05-25 Andrew Pinski <pinskia@physics.uc.edu>
2059
7d34a5a9
AP
2060 * configure.ac (includedir): Rename to ...
2061 (includedirname).
2062 * Makefile.in: s/includedir/includedirname/.
2063
ff65de76
AP
2064 PR target/11572
2065 * configure.ac (includedir): Set to "include"
2066 except for Darwin.
2067 (libext) Set to empty except for Darwin.
2068 * configure: Regenerate
2069 * Makefile.in: s/libobjc.la/libobjc$(libext).la/g.
2070 s/include/$(includedir)/g.
2071
54b2f310
DJ
20722004-05-25 Daniel Jacobowitz <drow@false.org>
2073
2074 * Makefile.in: Add .NOEXPORT.
2075
435317e2
AP
20762004-05-25 Andrew Pinski <pinskia@physics.uc.edu>
2077
2078 Merge from the libobjc-branch
2079 2004-02-09 Andrew Pinski <pinskia@physics.uc.edu>
0cf61401 2080
435317e2 2081 * Makefile.in (OBJC_H): Change objc-deps.h to objc-decls.h.
0cf61401 2082
435317e2 2083 2004-02-03 Andrew Pinski <pinskia@physics.uc.edu>
0cf61401 2084
435317e2 2085 * Makefile.in (OBJC_H): Add objc-deps.h.
0cf61401 2086
435317e2 2087 2004-01-27 Nicola Pero <n.pero@mi.flashnet.it>
0cf61401 2088
435317e2
AP
2089 * Protocol.m ([-conformsTo:]): If the argument is nil, return NO.
2090 ([-hash], [-isEqual:]): New methods.
0cf61401 2091
435317e2 2092 2004-01-27 Richard Frith-Macdonald <rfm@gnu.org>
0cf61401 2093
435317e2 2094 * sarray.c (sarray_free): Add a better comment.
0cf61401 2095
435317e2 2096 2004-01-27 Adam Fedor <fedor@gnu.org>
0cf61401 2097
435317e2
AP
2098 * hash.c (hash_add): Cast cachep to int.
2099 * selector.c (__sel_register_typed_name): Cast
2100 soffset_decode to int.
0cf61401 2101
435317e2 2102 2004-01-27 Alexander Malmberg <alexander@malmberg.org>
0cf61401 2103
435317e2
AP
2104 * selector.c: Rename register_selectors_from_list to
2105 __objc_register_selectors_from_list. Update caller.
2106 (__objc_register_selectors_from_list): Lock __objc_runtime_mutex
2107 while registering selectors. Use __sel_register_typed_name instead
2108 of sel_register_typed_name. Check for NULL method_name:s.
2109 (pool_alloc_selector): New function.
2110 (__sel_register_typed_name): Use pool_alloc_selector to allocate
2111 selector structures.
2112 * sendmsg.c (class_add_method_list): Use
2113 __objc_register_selectors_from_list.
2114 * objc/runtime.h: Add __objc_register_selectors_from_list.
0cf61401 2115
435317e2 2116 2004-01-25 Adam Fedor <fedor@gnu.org>
0cf61401
ZW
2117 Nicola Pero <n.pero@mi.flashnet.it>
2118 Andrew Pinski <pinskia@physics.uc.edu>
2119
435317e2
AP
2120 * objc/objc-decls.h: New file.
2121 * objc/objc-api.h (_objc_lookup_class): Mark as export.
2122 (_objc_load_callback): Likewise.
2123 (_objc_object_alloc): Likewise.
2124 (_objc_object_copy): Likewise.
2125 (_objc_object_dispose): Likewise.
0cf61401 2126
435317e2 2127 2004-01-25 Andrew Pinski <pinskia@physics.uc.edu>
0cf61401 2128
435317e2 2129 * archive.c: s/__inline__/inline
0cf61401
ZW
2130 * sendmsg.c: Likewise.
2131
435317e2
AP
2132 * encoding.c: Remove FIXME about the warning
2133 about unused variable.
2134 * sendmsg.c: Add a FIXME comment saying that
2135 this should be using libffi.
0cf61401 2136
435317e2 2137 * Makefile.in (LIBTOOL): Use @LIBTOOL@ now as it works.
0cf61401 2138
435317e2 2139
755bddc8
AP
21402004-05-13 Andrew Pinski <pinskia@physics.uc.edu>
2141
2142 * archive.c (objc_read_class): Initialize class_name.
2143 (objc_read_selector): Initialize selector_name.
2144
eb01299a
RS
21452004-05-09 Richard Sandiford <rsandifo@redhat.com>
2146
2147 * Makefile.in (toolexecdir): Remove trailing space.
2148
db7f3c69
NN
21492004-04-15 Nathanael Nerode <neroden@gcc.gnu.org>
2150
2151 PR libobjc/14948
2152 * configure.ac: De-precious CC so multilibs work.
2153 * configure: Regenerate.
2154
a42a57cb
NN
21552004-04-14 Nathanael Nerode <neroden@gcc.gnu.org>
2156
2157 * configure.ac: Restore toolexecdir.
2158 * Makefile.in: Restore toolexecdir.
2159 * configure: Regenerate.
2160
9c01f395
NN
21612004-04-09 Nathanael Nerode <neroden@gcc.gnu.org>
2162
d770b996
NN
2163 * configure.ac: Remove (unused) glibcpp_prefixdir.
2164 * configure: Regenerate.
2165
3adc31d1
NN
2166 * configure.in: Rename to configure.ac.
2167 * Makefile.in: Update to match.
2168
608e1e0c
NN
2169 * Makefile.in: Remove toolexecdir, glibcpp_toolexecdir (unused).
2170 Replace glibcpp_toolexeclibdir with toolexeclibdir.
2171 * configure.in: Remove glibcpp_toolexecdir (unused).
2172 Replace glibcpp_toolexeclibdir with toolexeclibdir. Don't generate
2173 config.h or stamp-h (unused). Move one comment to the right place.
2174 * configure: Regenerate.
2175 * config.h.in: Remove (unused).
2176
88b16960
NN
2177 * config.h.in: Regenerate with autoheader.
2178
af0c82b3
NN
2179 * Makefile.in: Remove (unused) gcc_version_trigger.
2180 * configure.in: Remove (unused) glibcpp_builddir. Don't AC_SUBST
2181 gcc_version_trigger.
2182 * configure: Regenerate.
2183
252dde64
NN
2184 * configure.in: Switch to modern style for AC_INIT, AC_OUTPUT.
2185 Sort file into sections. Remove dnl where appropriate. Fix
2186 other style issues.
2187 * configure: Regenerate.
2188
88386050
NN
2189 * configure.in: Replace old AC_PROG_CC hack with new one.
2190 Define toplevel_srcdir in terms of srcdir, not top_srcdir (there
2191 are no subdirectory output files, so this is fine). Change prereq
2192 to autoconf 2.59.
2193 * aclocal.m4: Include ../config/no-executables.m4.
2194 * configure: Regenerate with autoconf 2.59.
2195
b43e7294
NN
2196 * configure.in: Improve comments on gthread_cflags. Improve m4
2197 quotation, and replace 'if test' with 'case', for --enable-objc-gc.
2198 * configure: Regenerate.
2199
1fcfac98
NN
2200 * configure.in: Move PACKAGE and VERSION settings up top. Remove
2201 unused call to AC_PROG_LN_S. Default RANLIB to ':'. Remove
2202 redundant checks for values of RANLIB, AR, INSTALL.
2203 * configure: Regenerate.
2204
9c01f395
NN
2205 * configure.in: Clean up handling of
2206 --enable-version-specific-runtime-libs and related variables;
2207 replace 'if test' with 'case' where reasonable. Fix comments.
2208 Remove useless libstdcxx_interface.
2209 * configure: Regenerate.
2210
2211 * configure.in: Use _GCC_TOPLEV_NONCANONICAL_TARGET.
2212 Replace uses of target_alias with target_noncanonical.
2213 * aclocal.m4: Include ../config/acx.m4.
2214 * configure: Regenerate.
2215 * Makefile.in: Replace uses of target_alias with target_noncanonical.
2216 Fix copyright statement.
2217
2218 * configure.in: Hand-inline bulky, confusing macros from
2219 aclocal.m4. Replace references to "GNU Objective C" with "GCC".
2220 Update copyright notice. Remove stuff for automake, which isn't
2221 used in this directory. Remove emacs local variables.
2222 * aclocal.m4: Remove hand-inlined macros. Update copyright notice.
2223 * configure: Regenerate.
2224
1adc3fec
MH
22252004-03-16 Manfred Hollstein <mh@suse.com>
2226
2227 * Makefile.in, configure.in, configure: Update copyright years.
2228
68a1af87
MH
22292004-03-15 Manfred Hollstein <mh@suse.com>
2230
2231 * Makefile.in (LIBOBJC_VERSION, LIBOBJC_GC_VERSION): Use
2232 definition from configure.in.
2233 * configure.in (PACKAGE): Add definition.
2234 (VERSION): Add definition; substitute it in output files.
2235 * configure: Re-generate.
2236
d5e63fce
ZL
22372004-03-05 Ziemowit Laski <zlaski@apple.com>
2238
2239 * objc/hash.h (hash_string, compare_strings):
2240 Add type-casts to make Objective-C++ happy.
2241 * objc/typedstream.h (objc_get_stream_class_version):
2242 Rename parameter from 'class' to 'class_name' to make
2243 Objective-C++ happy.
2244
8f8cdf33
MM
22452004-03-01 Michael Matz <matz@suse.de>
2246
2247 * Makefile.in (ALL_CFLAGS): Add -fno-strict-aliasing.
2248
25fe8680
ZL
22492004-02-06 Ziemowit Laski <zlaski@apple.com>
2250
2251 * objc/objc-api.h (objc_super): The 'class' field shall
2252 be named 'super_class' #ifdef __cplusplus.
2253
95727fb8
AP
22542004-01-17 Andrew Pinski <pinskia@physics.uc.edu>
2255
2256 PR target/10781
2257 * encoding.c (rs6000_special_round_type_align): Define.
2258
5af0e6ae
AF
22592004-01-14 Adam Fedor <fedor@gnu.org>
2260
2261 PR libobjc/12155
2262 * selector.c (__objc_register_instance_methods_to_class): Free
2263 new_list if not used.
2264
b39f1868
AR
22652004-01-09 Andrew Ruder <aeruder@ksu.edu>
2266
2267 PR libobjc/11904
2268 * sarray.c (sarray_free): Free array->is_copy_of latter.
2269
75d3baee
ZW
22702003-12-01 Zack Weinberg <zack@codesourcery.com>
2271
2272 PR 11433
2273 * Protocol.m (descriptionForInstanceMethod): Don't dereference
2274 instance_methods if it's NULL.
2275 (descriptionForClassMethod): Likewise for class_methods.
2276
7989e4dc
RO
22772003-10-24 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2278
2279 * Makefile.in (runtime-info.h): Remove -Wp.
2280
54b98a47
RO
22812003-10-21 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2282
2283 * Makefile.in (CC1OBJ): Remove.
2284 (runtime-info.h): Invoke $(CC) so all MULTIFLAGS are handled
2285 correctly.
2286 Use .m extension for temporary file.
2287 Remove assembler temp file.
2288
beca20d2
JM
22892003-10-20 Joseph S. Myers <jsm@polyomino.org.uk>
2290
2291 * objc/hash.h (hash_string): Don't use a cast as an lvalue.
2292
05dcec66
RO
22932003-10-17 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2294
2295 * Makefile.in (runtime-info.h): Use MULTIFLAGS.
2296
e517f636
AM
22972003-09-09 Alan Modra <amodra@bigpond.net.au>
2298
2299 * configure: Regenerate.
2300
45dff86e
AM
23012003-08-27 Alexander Malmberg <alexander@malmberg.org>
2302
2303 * Makefile.in, aclocal.m4: Update to $(libdir)/gcc/ instead of
2304 (libdir)/gcc-lib/ when installing.
2305 * configure: Regenerate.
2306
c19f8e35
NP
2307Thu Jul 10 10:27:43 2003 Nicola Pero <n.pero@mi.flashnet.it>
2308
2309 libobjc/9969
2310 * sendmsg.c (get_imp): Fixed rare threading problem.
2311 (__objc_responds_to): Similar fixes.
2312 (objc_msg_lookup): Similar fixes.
2313 (__objc_init_install_dtable): Lock the runtime before checking if the
2314 table is installed.
75d3baee 2315
6c82ad25
NN
23162003-05-23 Nathanael Nerode <neroden@gcc.gnu.org>
2317
38709cad
NN
2318 * hash.c, init.c, libobjc.def, libobjc_entry.c, linking.m,
2319 makefile.dos, misc.c, nil_method.c, objects.c, sarray.c,
2320 selector.c, sendmsg.c, thr-dce.c, thr-decosf1.c, thr-irix.c,
2321 thr-mach.c, thr-objc.c, thr-os2.c, thr-posix.c, thr-pthreads.c,
75d3baee 2322 thr-rtems.c, thr-single.c, thr-solaris.c, thr-vxworks.c,
38709cad 2323 thr-win32.c, thr.c: Replace "GNU CC" with "GCC".
6c82ad25
NN
2324 * Makefile.in, NXConstStr.m, Object.m, Protocol.m, archive.c,
2325 class.c, encoding.c, gc.c, objc/NXConstStr.h, objc/Object.h,
2326 objc/Protocol.h, objc/encoding.h, objc/hash.h, objc/objc-api.h,
2327 objc/objc-list.h, objc/objc.h, ocjc/runtime.h, objc/sarray.h,
2328 objc/thr.h, objc/typedstream.h: Replace "GNU CC" with "GCC".
2329
e083f3f9 2330Tue May 13 14:56:03 2003 Richard Frith-Macdonald <rfm@gnu.org>
75d3baee 2331 Nicola Pero <n.pero@mi.flashnet.it>
e083f3f9
RFM
2332
2333 libobjc/10742
2334 * init.c (class_superclass_of_class): New function.
2335 (create_tree_of_subclasses_inherited_from): Use it.
2336 (__objc_tree_insert_class): Likewise.
2337 (class_is_subclass_of_class): Likewise.
75d3baee 2338
0b87e18e
DC
23392003-04-11 David Chad <davidc@freebsd.org>
2340 Loren J. Rittle <ljrittle@acm.org>
2341
2342 libobjc/8562
2343 * objc/hash.h (hash_string): Constify correctly.
2344 (compare_ptrs): Use direct compare.
2345 * objc/objc-list.h (list_nth): Rename index to indx to avoid shadow.
2346 * objc/sarray.h: Global rename index to indx to avoid shadow.
2347
ff8b9ca8
AS
23482003-03-12 Andreas Schwab <schwab@suse.de>
2349
2350 * aclocal.m4 (GLIBCPP_EXPORT_INSTALL_INFO): Avoid trailing /. in
2351 glibcpp_toolexeclibdir.
2352 * configure: Rebuilt.
2353
3343fdd2
AO
23542003-02-20 Alexandre Oliva <aoliva@redhat.com>
2355
2356 * configure.in: Propagate ORIGINAL_LD_FOR_MULTILIBS to
2357 config.status.
2358 * configure: Rebuilt.
2359
c5e3e1ed
AO
23602003-01-27 Alexandre Oliva <aoliva@redhat.com>
2361
2362 * aclocal.m4 (glibcpp_toolexeclibdir): Instead of
2363 $(MULTISUBDIR), use `$CC -print-multi-os-directory`, unless
2364 version_specific_libs is enabled.
2365 * configure: Rebuilt.
2366
90e5b39f
CC
23672003-01-09 Christian Cornelssen <ccorn@cs.tu-berlin.de>
2368
2369 * Makefile.in (FLAGS_TO_PASS): Also pass DESTDIR.
2370 (install-libs, install-headers): Prepend $(DESTDIR) to
2371 destination paths in all (un)installation commands.
2372
4977bab6
ZW
23732002-12-02 Zack Weinberg <zack@codesourcery.com>
2374
2375 * thr-objc.c: Include coretypes.h and tm.h.
2376
23772002-12-01 Zack Weinberg <zack@codesourcery.com>
2378
2379 * encoding.c, sendmsg.c: Include coretypes.h and tm.h.
2380
23812002-11-26 Nathanael Nerode <neroden@gcc.gnu.org>
2382
2383 * configure.in: Remove skip-this-dir support.
2384 * configure: Regenerate.
2385
6c5d742e
KG
23862002-09-22 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2387
2388 * Makefile.in (all): Fix multilib parallel build.
2389
c2a68741
NP
2390Thu Sep 12 12:44:37 2002 Nicola Pero <n.pero@mi.flashnet.it>
2391
2392 * sendmsg.c (nil_method): Declare not to take a variable number of
2393 args.
2394 (objc_msg_lookup): Cast nil_method to IMP before returning it.
2395 (objc_msg_lookup_super): The same.
2396
edf4d41e
JH
23972002-09-10 Jan Hubicka <jh@suse.cz>
2398
65a8189e
AJ
2399 * nil_method.c (nil_method): No longer defined with variable
2400 arguments.
edf4d41e 2401
40165636
RB
24022002-07-02 Rodney Brown <rbrown64@csc.com.au>
2403
2404 * objc/encoding.h: Fix formatting.
2405 * objc/hash.h: Likewise.
2406 * objc/objc-api.h: Likewise.
2407 * objc/runtime.h: Likewise.
2408 * objc/thr.h: Likewise.
2409 * archive.c: Likewise.
2410 * class.c: Likewise.
2411 * encoding.c: Likewise.
2412 * gc.c: Likewise.
2413 * hash.c: Likewise.
2414 * init.c: Likewise.
2415 * misc.c: Likewise.
2416 * nil_method.c: Likewise.
2417 * objects.c: Likewise.
2418 * sarray.c: Likewise.
2419 * selector.c: Likewise.
2420 * sendmsg.c: Likewise.
2421 * thr-mach.c: Likewise.
2422 * thr.c: Likewise.
2423
aebb8c22
DD
24242002-06-25 DJ Delorie <dj@redhat.com>
2425
2426 * aclocal.m4 (GLIBCPP_CONFIGURE): Split out
2427 GLIBCPP_TOPREL_CONFIGURE.
2428 * configure.in: Call it before AC_CANONICAL_SYSTEM.
2429 * configure: Regenerate.
2430
b62cc13a
KG
24312002-06-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2432
2433 * Object.m (forward, read, write): Fix unused parameter warnings.
2434 * encoding.c: Include <stdlib.h>.
2435 (target_flags): Mark with attribute unused.
2436 (atoi): Delete.
2437 * runtime.h (__objc_selector_max_index): Change to unsigned int.
2438 (__objc_generate_gc_type_description): Prototype.
2439 * selector.c (__objc_selector_max_index): Change to unsigned int.
2440
10cb24df
NP
2441Mon Jun 17 18:37:42 2002 Nicola Pero <n.pero@mi.flashnet.it>
2442
2443 * sendmsg.c (__objc_get_forward_imp): Fix warning by making sure
2444 we always have a return value: if __objc_msg_forward does not
2445 supply a forwarding implementation, return the default
2446 __builtin_apply based one.
2447
8f8c44cb
KG
24482002-06-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2449
2450 * Object.m: Fix signed/unsigned warning.
2451 * Protocol.m: Likewise.
2452 * archive.c: Always include stdlib.h.
2453 (objc_read_short, objc_read_unsigned_short, objc_read_int,
2454 objc_read_long, __objc_read_nbyte_uint, __objc_read_nbyte_ulong):
2455 Fix signed/unsigned warning.
2456 (objc_write_type, objc_read_type, objc_write_types,
2457 objc_read_types): Ensure ctype 8-bit safety.
2458 (__objc_no_write, __objc_no_read): Mark unused parameters.
2459 * class.c (class_table_setup): Specify void arg.
2460 * encoding.c (atoi, objc_sizeof_type, objc_alignof_type,
2461 objc_skip_typespec, objc_skip_offset,
2462 objc_layout_structure_next_member): Ensure ctype 8-bit safety.
2463 (objc_layout_structure_next_member): Ensure variables are
2464 initialized.
2465 * gc.c (__objc_generate_gc_type_description,
2466 class_ivar_set_gcinvisible): Mark unused parameters.
2467 * init.c (__objc_send_load, __objc_destroy_class_tree_node): Mark
2468 unused parameters.
2469 (__objc_init_protocols) Fix signed/unsigned warning.
2470 * nil_method.c (nil_method): Mark unused parameters.
2471 * thr.h (objc_thread_callback): Specify void arg.
2472 * sarray.c (sarray_new, sarray_realloc, sarray_free): Fix
2473 signed/unsigned warning.
2474 (sarray_free): Fix formatting.
2475 * selector.c (sel_types_match): Ensure ctype 8-bit safety.
2476 * sendmsg.c (__objc_init_install_dtable) Mark unused parameters.
2477
42bac116
AJ
24782002-06-09 Andreas Jaeger <aj@suse.de>
2479
2480 * encoding.c (objc_layout_structure_next_member): Remove unused
2481 variable.
2482
9aa338ec
KG
24832002-05-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2484
2485 * Makefile.in (SHELL): Set to @SHELL@.
2486 (WARN_CFLAGS): New.
2487 (ALL_CFLAGS): Add $(WARN_CFLAGS).
2488
1e6347d8
RO
24892002-05-16 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2490
2491 * aclocal.m4: Allow for PWDCMD to override hardcoded pwd.
2492 * configure: Regenerate.
2493
6706f116
AO
24942002-05-08 Alexandre Oliva <aoliva@redhat.com>
2495
2496 * configure.in (ORIGINAL_LD_FOR_MULTILIBS): Preserve LD at
2497 script entry, and set LD to it when configuring multilibs.
2498 * configure: Rebuilt.
2499
d0d091ae
DB
25002002-04-19 David O'Brien <obrien@FreeBSD.org>
2501
2502 * encoding.c (MAX, MIN, ROUNDING): #undef before defining.
2503
ed426a38 25042002-04-09 Hans-Peter Nilsson <hp@bitrange.com>
0bd9dd55
HPN
2505
2506 PR objc/6107
2507 * objc/objc-api.h (struct objc_protocol_list): Change type of
2508 member count from int to size_t.
2509
b150efee
FS
25102002-02-11 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
2511
2512 PR libobjc/4039
2513 * aclocal.m4: Replace with version copied from libstdc++-v3.
2514 * configure.in: Update for changes to aclocal and Makefile.
2515 * configure: Regenerate.
2516 * Makefile.in: Correct install of multilibs and shared libs, use
2517 INSTALL_DATA for include files.
2518
e5e0f6f5
NP
2519Mon Dec 17 17:02:12 2001 Nicola Pero <nicola@brainstorm.co.uk>
2520
2521 * init.c (__objc_exec_class): Fixed bug in the loop on unclaimed
2522 categories - when an unclaimed category was found, the loop was
2523 doing two steps forward instead of one, so that in certain cases
2524 it was failing to properly load all the categories. (Reported
2525 with fix by Alexander Malmberg <alexander@malmberg.org>).
2526
d5114db1
AH
25272001-11-14 Aldy Hernandez <aldyh@redhat.com>
2528
4977bab6 2529 * encoding.c: Add target_flags.
d5114db1 2530
f4fdaeda
AH
25312001-11-07 Aldy Hernandez <aldyh@redhat.com>
2532
2533 * objc/objc-api.h (_C_VECTOR): New.
2534
2535 * encoding.c (VECTOR_TYPE): New.
2536
26e51caa
NP
2537Mon Oct 29 21:29:21 2001 Nicola Pero <n.pero@mi.flashnet.it>
2538
2539 * class.c: Rewritten the class table to use optimized, lock-free
4977bab6
ZW
2540 lookup. This more than doubles the speed of class method
2541 invocations. (class_table_setup), (class_table_insert),
2542 (class_table_replace), (class_table_get_safe),
2543 (class_table_next), (class_table_print),
2544 (class_table_print_histogram): New functions.
2545 (__objc_init_class_tables): Use class_table_setup.
2546 (__objc_add_class_to_hash): Use class_table_get_safe and
2547 class_table_insert. (objc_lookup_class), (objc_get_class): Do not
2548 assert the existence of the table; do not lock the runtime; use
2549 class_table_get_safe. (objc_next_class): Use class_table_next.
2550 (__objc_resolve_class_links): Use class_table_next.
2551 (class_pose_as): Use class_table_replace.
26e51caa 2552
71a18acf
OP
25532001-09-10 Ovidiu Predescu <ovidiu@cup.hp.com>
2554
2555 * gc.c: Removed the DEBUG declaration.
2556
5f1ecf82
NP
2557Wed Jul 18 12:48:56 2001 Nicola Pero <n.pero@mi.flashnet.it>
2558
2559 * thr.c (objc_mutex_lock): Invoke __objc_thread_id directly,
2560 rather than through objc_thread_id, to save a function call.
2561 (objc_mutex_trylock, objc_mutex_unlock, objc_condition_wait):
2562 Ditto.
2563
42d28de5
NP
2564Mon Jul 16 12:15:00 2001 Nicola Pero <n.pero@mi.flashnet.it>
2565
2566 * objc/objc-api.h (object_is_class): Fixed - buggy code was trying
2567 to cast an id to a Class, which can not be done. Make the check
2568 by using CLS_ISMETA on the class pointer instead.
2569 (object_is_meta_class): Similar fix.
2570
4173be7f
AO
25712001-06-09 Alexandre Oliva <aoliva@redhat.com>, Stephen L Moshier <moshier@mediaone.net>
2572
2573 * configure.in (AC_EXEEXT): Work around in case it expands to
2574 nothing, as in autoconf 2.50.
2575 * acinclude.m4: Likewise.
2576 * configure: Rebuilt.
2577
27132e64
NP
25782001-06-08 Nicola Pero <n.pero@mi.flashnet.it>
2579
2580 * THREADS: Explain that when we compile libobjc inside GCC, we
2581 always use thr-objc.c as a backend, which uses GCC's thread code.
2582
e6be21fe
RFM
25832001-06-06 Richard Frith-Macdonald <rrfm@gnu.org>
2584
2585 * init.c (__objc_send_message_in_list): When setting a new entry
2586 in __objc_load_methods use the method IMP as key, but check to see
2587 if the method is in the hashtable by looking at the IMP also.
2588 Also ... call the method after adding it to the hashtable rather
2589 than before ... thus preventing an obscure possibility of infinite
2590 recursion if a +load method itself loads a subclass.
2591
12e01066
OP
25922001-05-25 Ovidiu Predescu <ovidiu@cup.hp.com>
2593
2594 * init.c (__objc_send_message_in_list): When setting a new entry
2595 in __objc_load_methods use the method name as key, not the method
2596 IMP (reported by Richard Frith-Macdonald <richard@brainstorm.co.uk>).
2597
10c179f3
JM
25982001-05-09 Joseph S. Myers <jsm28@cam.ac.uk>
2599
2600 * objc-features.texi: Move to ../gcc/objc.texi.
2601 * fdl.texi: Remove.
2602 * Makefile.in: Don't generate documentation from
2603 objc-features.texi.
2604
bcecb0b0
MM
26052001-05-01 Mark Mitchell <mark@codesourcery.com>
2606
2607 * fdl.texi: New file.
2608 * objc-features.texi: Simplify.
2609 * Makefile.in: Adjust accordingly.
2610
c3aac512
MM
26112001-04-30 Mark Mitchell <mark@codesourcery.com>
2612
2613 * objc-features.texi: Use the GFDL.
2614
49073def
JW
2615Wed Mar 21 04:44:58 EST 2001 John Wehle (john@feith.com)
2616
2617 * encoding.c (REAL_TYPE): Define.
2618
120d59bf
DE
26192001-03-19 David Edelsohn <edelsohn@gnu.org>
2620
2621 * encoding.c (TYPE_MODE): Define.
2622
b894530e
NP
26232001-03-14 Nicola Pero <n.pero@mi.flashnet.it>
2624
2625 * thr.c (objc_thread_add): New function.
2626 (objc_thread_remove): Ditto.
2627 * objc/thr.h: Declare them.
2628 * libobjc.def: Mention them.
2629
11014a3b
OP
26302001-02-28 Ovidiu Predescu <ovidiu@cup.hp.com>
2631
2632 * objc-features.texi: Document the @compatibility_alias compiler
2633 directive (description from Nicola Pero <n.pero@mi.flashnet.it>).
2634
a79ffa5a
RO
2635Fri Feb 23 18:12:00 2001 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2636
2637 * sendmsg.c (__objc_forward): Delete strlen() declaration.
2638
7c6b0e92
GK
26392001-02-08 Geoffrey Keating <geoffk@redhat.com>
2640
2641 * configure.in: Don't run AC_PROG_CC_WORKS or AC_EXEEXT, because
2642 we're not interested in the result and they might fail.
2643 * configure: Regenerated.
2644
01d9cb8b
JM
26452001-01-12 Joseph S. Myers <jsm28@cam.ac.uk>
2646
2647 * objc-features.texi: Use @email.
2648
0fc39d8a
JM
26492001-01-12 Joseph S. Myers <jsm28@cam.ac.uk>
2650
2651 * sendmsg.c (__objc_print_dtable_stats): Don't use #ifdef inside
2652 printf.
2653
919ee051
RE
26542000-01-11 Richard Earnshaw <rearnsha@arm.com>
2655
2656 * encoding.c (STRUCTURE_SIZE_BOUNDARY): Redefine in a way that
2657 determines the value dynamically.
2658
1104c18d
OP
2659Wed Jan 3 00:49:10 2001 Ovidiu Predescu <ovidiu@cup.hp.com>
2660
2661 * sendmsg.c: Added __objc_msg_forward, a hook that allows external
2662 libraries to provide a function that returns the real forwarding
2663 function. This can alleviate problems __builtin_apply() and
2664 friends have on various platforms. (Solution suggested by Helge
2665 Hess.)
42bac116 2666
1104c18d
OP
2667 * objc/objc-api.h: Define __objc_msg_forward.
2668
2669 * sendmsg.c: Define gen_rtx_REG.
2670
68c9c61a
RC
26712000-12-06 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
2672
42bac116 2673 * thr-rtems.c: New file. Stub to compile.
68c9c61a 2674
6d93bca4
AO
26752000-09-06 Alexandre Oliva <aoliva@redhat.com>
2676
2677 * configure: Rebuilt with new libtool.m4.
2678
9d10fcf9
OP
2679Tue Aug 15 00:38:56 2000 Ovidiu Predescu <ovidiu@cup.hp.com>
2680
2681 * configure.in: Create a config.h file. Check for <sched.h>.
2682 * configure: Regenerate.
2683
2684 * config.h.in: Check for <sched.h>.
2685
57119aa9
ZW
26862000-08-14 Zack Weinberg <zack@wolery.cumb.org>
2687
2688 * configure: Regenerate after change to ../libtool.m4.
2689
b310e725
AS
26902000-08-14 Andreas Schwab <schwab@suse.de>
2691
2692 * objc-features.texi (Top): Move @menu at end of node.
2693
82fbe835
MH
26942000-08-11 Manfred Hollstein <manfredh@redhat.com>
2695
2696 * objc-features.texi: Move @node Top before @menu.
2697
b3dc253f
OP
2698Sun Aug 6 23:27:49 2000 Ovidiu Predescu <ovidiu@cup.hp.com>
2699
2700 * objc-features.texi: Documented the new -fconstant-string-class
2701 option.
2702
9bc3876e
OP
2703Sun Aug 6 22:51:16 2000 Ovidiu Predescu <ovidiu@cup.hp.com>
2704
2705 * thr-posix.c: Integrated Chris Ball's <cball@fmco.com> changes to
2706 improve the Posix thread support for Objective-C.
2707
8cab40f7
ZW
27082000-08-04 Zack Weinberg <zack@wolery.cumb.org>
2709
2710 * aclocal.m4: Replace copy of ../libtool.m4 with
2711 sinclude(../libtool.m4).
2712
c161c99b
NP
2713Fri Jul 28 08:58:02 2000 Nicola Pero <nicola@brainstorm.co.uk>
2714
42bac116 2715 * configure.in: Added libtool support; build shared libraries
c161c99b
NP
2716 if --enable-shared was passed on command line.
2717 * Makefile.in: Modified most compilation commands to use libtool.
2718 * aclocal.m4: New symbolic link to the ../libtool.m4, from the
2719 libtool distribution.
2720
9c14a607
OP
2721Sat Jul 29 00:10:21 2000 Ovidiu Predescu <ovidiu@cup.hp.com>
2722
2723 * sarray.c, Object.m: Removed the explicit prototypes for strlen
2724 and memcpy on 64-bit platforms (Suggested by Rodney Brown
2725 <rdb@cup.hp.com>).
2726
15794a95
L
27272000-05-12 H.J. Lu (hjl@gnu.org)
2728
2729 * Makefile.in (GTHREAD_FLAGS): New.
2730 (ALL_CFLAGS): Add $(GTHREAD_FLAGS).
2731 (OBJC_THREAD_FILE): Changed to thr-objc.
2732
2733 * configure.in (GTHREAD_FLAGS): New, check and replace it for
2734 Makefile.
2735 (OBJC_THREAD_FILE): Removed.
2736
2737 * thr-objc.c: New.
2738
8dd8d754
KG
27392000-07-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2740
2741 * objc/hash.h: Include string.h.
2742
39b48e02
DE
27432000-04-15 David Edelsohn <edelsohn@gnu.org>
2744
2745 * Object.m (strlen): 64-bit PowerPC is a 64bit platform as well.
2746
bcdb1106
JJ
27472000-04-12 Jakub Jelinek <jakub@redhat.com>
2748
2749 * Object.m (strlen): Provide prototype on all 64bit platforms,
2750 not only alpha.
2751 * sarray.c (memcpy): Likewise.
2752 * encoding.c (objc_layout_finish_structure): Don't use
2753 ROUND_TYPE_ALIGN on sparc.
2754
35f10998
JJ
2755 * encoding.c (objc_layout_structure_next_member): Do the whole
2756 procedure even for the first member, so that we get correct
2757 alignment.
2758
2e3120e8
ZW
27592000-03-29 Zack Weinberg <zack@wolery.cumb.org>
2760
2761 * objc/Protocol.h, objc/objc-list.h: Change #endif labels to
2762 comments.
2763
6fc605d8
ZW
27642000-02-23 Zack Weinberg <zack@wolery.cumb.org>
2765
2766 * Makefile.in: Add -DIN_TARGET_LIBS to ALL_CFLAGS.
2767
224a6bca
CB
2768Thu Sep 23 07:19:12 1999 Chris Ball <cball@fmco.com>
2769
2770 * thr-posix.c (__objc_mutex_deallocate): made deallocate work.
2771
e36e6e02
JL
2772Tue Sep 21 07:47:10 1999 Jeffrey A Law (law@cygnus.com)
2773
2774 * Makefile.in (gc.o, gc_gc.o): Do not pass -fgnu-runtime to
2775 the compiler when building C code.
42bac116 2776
76632dd0
DJ
2777Fri Aug 6 23:32:29 1999 Daniel Jacobowitz <drow@drow.them.org>
2778
2779 * Makefile.in (FLAGS_TO_PASS): Include prefix, exec_prefix,
2780 libdir, libsubdir and tooldir.
2781
6000b42b
JDA
2782Mon Jun 21 05:40:15 1999 John David Anglin <dave@hiauly1>
2783
2784 * init.c (__objc_force_linking): Make global.
2785
6de94858
JL
2786Thu May 20 03:20:59 1999 Jeffrey A Law (law@cygnus.com)
2787
2788 * configure.in (AC_EXEEXT): Remove call.
2789 (compiler_name): Explicitly check with no extension and .exe
2790 extension.
2791 * configure: Regenerate.
2792
7af06410
MK
2793Sun Apr 25 01:15:34 1999 Mumit Khan <khan@xraylith.wisc.edu>
2794
2795 * Makefile.in (CC1OBJ): Define in terms of CC.
2796 (runtime-info.h): Use.
2797
09608fa2
OP
2798Fri April 8 08:21:07 1999 Ovidiu Predescu <ovidiu@cup.hp.com>
2799
2800 * objc-features.texi: Updated the URL to Boehm's GC page.
2801
56d654e4
OP
2802Fri Mar 26 23:41:07 1999 Ovidiu Predescu <ovidiu@cup.hp.com>
2803
2804 * archive.c (__objc_code_char, __objc_write_char): Explicitly specify
2805 the char as being signed (patch from Daniel Jacobowitz
2806 <drow@false.org>).
2807
e33abc2d
MK
2808Wed Mar 24 22:41:28 1999 Mumit Khan <khan@xraylith.wisc.edu>
2809
2810 * configure.in (AC_PREREQ): Update to 2.13.
2811 (AC_EXEEXT): Call to find possible file extension.
2812 (compiler_name): Use.
2813 * configure: Regenerate.
2814
ab87f8c8
JL
2815Wed Jan 27 02:31:01 1999 Jeffrey A Law (law@cygnus.com)
2816
2817 * Makefile.in (ALL_CFLAGS): Add -DIN_GCC.
2818
79014e6f
JL
2819Tue Jan 5 01:38:53 1999 Jeffrey A Law (law@cygnus.com)
2820
2821 * configure.in (thread_file): Correct and simplify code to find
2822 the thread file.
2823 * configure: Rebuilt.
2824
71205e0b
MH
28251998-11-26 Manfred Hollstein <manfred@s-direktnet.de>
2826
2827 * configure.in (compiler_name): Add check to detect if this
2828 language's compiler has been built.
2829 * configure: Regenerate.
2830
223a8848
KG
2831Mon Nov 23 16:50:28 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2832
2833 * configure.in: Use AC_PREREQ(2.12.1).
2834
74285159
JL
2835Thu Nov 19 20:33:37 1998 Jeffrey A Law (law@cygnus.com)
2836
2837 * Makefile.in (runtime-info.h): Avoid GNU make extensions.
2838
84beab38
KG
2839Sun Nov 8 17:46:14 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2840
2841 * Makefile.in (INCLUDES): Add -I$(srcdir)/$(MULTISRCTOP)../include.
2842
8a829fd9
KG
2843Thu Oct 22 14:34:06 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
2844
2845 * configure.in: Use AC_CONFIG_AUX_DIR($topsrcdir).
2846
befb6d14
OP
2847Sat Oct 17 05:21:31 1998 Ovidiu Predescu <ovidiu@slip.net>
2848
2849 * objc-features.texi (Top): Changed the email address.
2850 * objc-features.texi (Garbage Collection): Use @uref instead of @url.
2851
2852Mon Oct 11 21:25:27 1998 Ovidiu Predescu <ovidiu@slip.net>
2853
2854 * encoding.c: Redefine get_inner_array_type to get the first entry
42bac116 2855 in the structure.
befb6d14 2856
1df287f8
RFM
2857Thu Oct 8 12:21:14 1998 Richard Frith-Macdonald <richard@brainstorm.co.uk>
2858
2859 * encoding.c (objc_skip_type_qualifiers): Handle _C_BYREF.
2860 (objc_get_type_qualifiers): Similarly.
2861 * objc/encoding.h (_C_BYREF): Define.
2862 (_F_BYREF): Define.
2863
07181a20
DM
28641998-10-07 David S. Miller <davem@pierdol.cobaltmicro.com>
2865
2866 * objc/sarray.h: Make boffset be an unsigned long when sparc so it
2867 works out on 64-bit systems.
2868
5e2f657b
AO
2869Tue Oct 6 20:32:06 1998 Alexandre Oliva <oliva@dcc.unicamp.br>
2870
ceff9b14 2871 * Makefile.in (INCLUDES): Make it multilib-friendly.
5e2f657b 2872
4afb3646
L
2873Fri Oct 2 07:12:14 1998 H.J. Lu (hjl@gnu.org)
2874
2875 * Makefile.in (INCLUDES): Add -I$(srcdir)/../gcc.
2876
4102f627
RL
2877Thu Oct 1 22:33:03 1998 Robert Lipe <robertl@dgii.com>
2878 Jeffrey A Law (law@cygnus.com)
2879
2880 * Makefile.in (INCLUDES): Reference gcc via $MULTIBUILDTOP.
2881 (FLAGS_TO_PASS): Added.
2882 (runtime-info.h): Reference cc1ibj via $MULTIBUILDTOP.
2883
2884 * archive.c: Change config.h to tconfig.h.
2885
2886 * configure.in: Find gcc's object directory even for multilibs.
2887
2888Wed Sep 30 18:17:17 1998 Robert Lipe <robertl@dgii.com>
5ae4c799
RL
2889
2890 * configure.in: Escape ^ in grep string.
2891 * configure: Rebuilt.
2892
789eb4f5
JL
2893Wed Sep 30 09:14:52 1998 Jeffrey A Law (law@cygnus.com)
2894
2895 * All .h files pushed down into the objc/ subdirectory.
2896 * Makefile.in (copy_headers): Corresponding changes.
2897 * configure.in (AC_INIT): Corresponding changes.
2898 * configure: Rebuilt.
2899
bce1b489
BE
29001998-09-30 Ben Elliston <bje@cygnus.com>
2901 Jeff Law <law@cygnus.com>
2902
2903 * Makefile.in: Rewrite.
2904
2905 * configure.in: Likewise.
2906
2907 * configure: Regenerate.
2908
2909 * All .c files. Remove "objc" prefix when including objc header
2910 files. Include tconfig.h, not ../tconfig.h.
2911
2e5f02a3
OP
2912Mon Sep 21 23:27:10 1998 Ovidiu Predescu <ovidiu@slip.net>
2913
2914 * encoding.c (TREE_TYPE, ARRAY_TYPE): Define.
2915 (get_inner_array_type): Define.
2916
88e17b57
BE
29171998-09-21 Ben Elliston <bje@cygnus.com>
2918
2919 * New directory. Moved files from ../gcc/objc.
This page took 1.323163 seconds and 5 git commands to generate.