]> git.ipfire.org Git - thirdparty/gcc.git/blob - libobjc/ChangeLog
Update ChangeLog and version files for release
[thirdparty/gcc.git] / libobjc / ChangeLog
1 2022-06-28 Release Manager
2
3 * GCC 10.4.0 released.
4
5 2021-04-08 Release Manager
6
7 * GCC 10.3.0 released.
8
9 2021-01-03 Iain Sandoe <iain@sandoe.co.uk>
10 Jakub Jelinek <jakub@redhat.com>
11
12 PR target/97865
13 * configure: Regenerate.
14
15 2020-12-26 Iain Sandoe <iain@sandoe.co.uk>
16
17 Backported from master:
18 2020-10-11 Iain Sandoe <iain@sandoe.co.uk>
19
20 * encoding.c (_darwin_rs6000_special_round_type_align):
21 Use DFMode in the emulation of the special round type.
22
23 2020-07-23 Release Manager
24
25 * GCC 10.2.0 released.
26
27 2020-05-07 Release Manager
28
29 * GCC 10.1.0 released.
30
31 2020-02-12 Sandra Loosemore <sandra@codesourcery.com>
32
33 PR libstdc++/79193
34 PR libstdc++/88999
35
36 * configure: Regenerated.
37
38 2020-01-24 Maciej W. Rozycki <macro@wdc.com>
39
40 * Makefile.in (aclocal_deps): Add `toolexeclibdir.m4'.
41 * aclocal.m4: Include `toolexeclibdir.m4'.
42 * configure.ac: Handle `--with-toolexeclibdir='.
43 * configure: Regenerate.
44
45 2020-01-01 Andrew Pinski <pinskia@gmail.com>
46
47 PR libobjc/93099
48 * objc/objc-decls.h (objc_EXPORT): Define it to
49 extern for DLL_EXPORT define case.
50
51 2020-01-01 Jakub Jelinek <jakub@redhat.com>
52
53 Update copyright years.
54
55 2019-11-26 Tobias Burnus <tobias@codesourcery.com>
56
57 * Makefile.in (aclocal_deps): Fix path to cet.m4.
58
59 2019-09-27 Maciej W. Rozycki <macro@wdc.com>
60
61 * configure: Regenerate.
62
63 2019-04-23 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
64 Bernd Edlinger <bernd.edlinger@hotmail.de>
65 Jakub Jelinek <jakub@redhat.com>
66
67 PR target/89093
68 * exception.c (PERSONALITY_FUNCTION): Add general-regs-only target
69 attribute for ARM.
70
71 2019-03-06 Uroš Bizjak <ubizjak@gmail.com>
72
73 * encoding.c (DFmode): #undef before #define.
74
75 2019-01-09 Sandra Loosemore <sandra@codesourcery.com>
76
77 PR other/16615
78 * objc/runtime.h: Change "can not" to "cannot".
79
80 2019-01-09 Sandra Loosemore <sandra@codesourcery.com>
81
82 PR other/16615
83
84 * class.c: Mechanically replace "can not" with "cannot".
85 * objc/runtime.h: Likewise.
86 * sendmsg.c: Likewise.
87
88 2019-01-01 Jakub Jelinek <jakub@redhat.com>
89
90 Update copyright years.
91
92 2018-10-31 Joseph Myers <joseph@codesourcery.com>
93
94 PR bootstrap/82856
95 * configure.ac: Remove AC_PREREQ.
96 * aclocal.m4, config.h.in, configure: Regenerate.
97
98 2018-04-24 H.J. Lu <hongjiu.lu@intel.com>
99
100 * configure: Regenerated.
101
102 2018-04-19 Jakub Jelinek <jakub@redhat.com>
103
104 * configure: Regenerated.
105
106 2018-04-18 David Malcolm <dmalcolm@redhat.com>
107
108 PR jit/85384
109 * configure: Regenerate.
110
111 2018-02-14 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
112
113 PR target/84148
114 * configure: Regenerate.
115
116 2018-01-03 Jakub Jelinek <jakub@redhat.com>
117
118 Update copyright years.
119
120 2017-11-23 Tom de Vries <tom@codesourcery.com>
121
122 * class.c (CLASS_TABLE_HASH): Wrap in "do {} while (0)".
123
124 2017-11-17 Igor Tsimbalist <igor.v.tsimbalist@intel.com>
125
126 * Makefile.in: Regenerate.
127 * aclocal.m4: Likeiwse.
128 * configure: Likewise.
129 * configure.ac: Set CET_FLAGS. Update XCFLAGS.
130
131 2017-08-30 Richard Sandiford <richard.sandiford@linaro.org>
132 Alan Hayward <alan.hayward@arm.com>
133 David Sherwood <david.sherwood@arm.com>
134
135 * encoding.c (_darwin_rs6000_special_round_type_align): Prefix mode
136 names with E_ in case statements.
137
138 2017-02-07 Richard Biener <rguenther@suse.de>
139
140 PR tree-optimization/79256
141 PR middle-end/79278
142 * encoding.c (objc_layout_structure_next_member): Adjust
143 ADJUST_FIELD_ALIGN usage.
144
145 2017-01-18 Matthias Klose <doko@ubuntu.com>
146
147 PR libobjc/78697
148 * configure.ac: Allow default for --with-target-bdw-gc-include.
149 * configure: Regenerate.
150
151 PR libobjc/78698
152 * configure.ac: Use the libgc.la file when available.
153 * configure: Regenerate.
154
155 2017-01-17 Jakub Jelinek <jakub@redhat.com>
156
157 PR other/79046
158 * configure: Regenerated.
159 * configure.ac: Add GCC_BASE_VER.
160 * Makefile.in (gcc_version): Use @get_gcc_base_ver@ instead of cat to
161 get version from BASE-VER file.
162 * configure: Regenerated.
163
164 2017-01-01 Jakub Jelinek <jakub@redhat.com>
165
166 Update copyright years.
167
168 2016-12-01 Matthias Klose <doko@ubuntu.com>
169
170 * configure.ac: Don't use pkg-config to check for bdw-gc.
171 * configure: Regenerate.
172
173 2016-11-30 Matthias Klose <doko@ubuntu.com>
174
175 * configure.ac: Set BDW_GC_CFLAGS and BDW_GC_LIBS after checking
176 for the existence of the pkg-config modules.
177 * Regenerate.
178
179 2016-11-30 Jakub Jelinek <jakub@redhat.com>
180
181 * configure.ac (--enable-objc-gc): If not given, default to
182 enable_objc_gc=no.
183 * configure: Regenerated.
184
185 2016-11-30 Matthias Klose <doko@ubuntu.com>
186
187 * configure.ac (--enable-objc-gc): Allow to configure with a
188 system provided boehm-gc.
189 * configure: Regenerate.
190 * Makefile.in (OBJC_BOEHM_GC_LIBS): Get value from configure.
191 * gc.c: Include system bdw-gc headers.
192 * memory.c: Likewise.
193 * objects.c: Likewise.
194
195 2016-11-15 Matthias Klose <doko@ubuntu.com>
196
197 * aclocal.m4: Regenerate.
198 * configure: Likewise.
199
200 2016-01-04 Jakub Jelinek <jakub@redhat.com>
201
202 Update copyright years.
203
204 2015-11-07 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
205
206 PR libobjc/24775
207 * encoding.c (_darwin_rs6000_special_round_type_align): Use
208 __CHAR_BIT__ instead of BITS_PER_UNIT.
209 (objc_sizeof_type): Likewise.
210 (objc_layout_structure): Likewise.
211 (objc_layout_structure_next_member): Likewise.
212 (objc_layout_finish_structure): Likewise.
213 (objc_layout_structure_get_info): Likewise.
214
215 2015-11-03 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
216
217 PR libobjc/24775
218 * encoding.c (objc_layout_finish_structure): Remove usage of
219 ROUND_TYPE_SIZE.
220
221 2015-09-12 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
222
223 PR libobjc/24775
224 * sendmsg.c (tm.h): Remove include.
225
226 2015-09-12 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
227
228 PR libobjc/24775
229 * sendmsg.c (gen_rtx): Remove macro.
230 (gen_rtx_MEM): Likewise.
231 (gen_rtx_REG): Likewise.
232 (rtx): Likewise.
233
234 2015-09-12 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
235
236 PR libobjc/24775
237 * sendmsg.c: Remove check of STRUCT_VALUE macro.
238
239 2015-05-13 Eric Botcazou <ebotcazou@adacore.com>
240
241 * configure.ac: Remove manual SJLJ check.
242 * config.h.in: Regenerate.
243 * configure: Likewise.
244 * exception.c: Replace SJLJ_EXCEPTIONS by __USING_SJLJ_EXCEPTIONS__.
245
246 2015-05-13 Michael Haubenwallner <michael.haubenwallner@ssi-schaefer.com>
247
248 * aclocal.m4: Regenerated with automake-1.11.6.
249
250 2015-05-04 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
251
252 * configure: Regenerate.
253
254 2015-05-01 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
255
256 * acinclude.m4: Include bitfields.m4.
257 * config.h.in: Regenerate.
258 * configure: Likewise.
259 * configure.ac: Invoke gt_BITFIELD_TYPE_MATTERS.
260 * encoding.c: Check HAVE_BITFIELD_TYPE_MATTERS.
261
262 2015-04-29 Trevor Saunders <tbsaunde+gcc@tbsaunde.org>
263
264 * encoding.c (objc_layout_structure_next_member): Check the value of
265 PCC_BITFIELD_TYPE_MATTERS not if it is defined.
266
267 2015-02-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
268
269 PR libobjc/63765
270 * thr.c (_XOPEN_SOURCE): Remove.
271
272 2015-01-27 Matthias Klose <doko@ubuntu.com>
273
274 * sendmsg.c: Add prototypes for __objc_get_forward_imp and get_imp.
275
276 2015-01-09 Dimitris Papavasiliou <dpapavas@gmail.com>
277
278 PR libobjc/51891
279 * ivars.c: Add a check for classes without instance
280 variables, which have a NULL ivar list pointer.
281
282 2015-01-05 Jakub Jelinek <jakub@redhat.com>
283
284 Update copyright years.
285
286 2014-11-21 H.J. Lu <hongjiu.lu@intel.com>
287
288 PR bootstrap/63784
289 * configure: Regenerated.
290
291 2014-11-11 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
292
293 PR target/63610
294 * configure: Regenerate.
295
296 2014-11-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
297
298 * thr.c (_XOPEN_SOURCE): Define as 600.
299
300 2014-07-27 Alan Modra <amodra@gmail.com>
301 Matthias Klose <doko@ubuntu.com>
302
303 PR libobjc/61920
304
305 * encoding.c: Define rs6000_special_adjust_field_align_p.
306
307 2014-01-02 Richard Sandiford <rdsandiford@googlemail.com>
308
309 Update copyright years
310
311 2013-09-20 Alan Modra <amodra@gmail.com>
312
313 * configure: Regenerate.
314
315 2013-07-21 OndÅ\99ej Bílka <neleai@seznam.cz>
316
317 * class.c: Fix typos.
318 * encoding.c: Likewise.
319 * init.c: Likewise.
320 * objc-private/runtime.h: Likewise.
321 * objc/runtime.h: Likewise.
322 * objc-sync.c: Likewise.
323
324 2013-07-04 Kai Tietz <ktietz@redhat.com>
325
326 * exception.c: Add check for SjLj to SEH blocks.
327
328 2013-02-03 Richard Sandiford <rdsandiford@googlemail.com>
329
330 Update copyright years.
331
332 2012-10-19 Michael Meissner <meissner@linux.vnet.ibm.com>
333
334 * encoding.c (TARGET_VSX): Provide definitions based on the
335 current compilation options, and not based off the target options
336 structure.
337 (TARGET_ALTIVEC): Likewise.
338 (TARGET_64BIT): Likewise.
339
340 2012-09-14 David Edelsohn <dje.gcc@gmail.com>
341
342 * configure: Regenerated.
343
344 2012-07-19 Tristan Gingold <gingold@adacore.com>
345 Richard Henderson <rth@redhat.com>
346
347 * exception.c (__gnu_objc_personality_seh0): New function.
348
349 2012-05-16 H.J. Lu <hongjiu.lu@intel.com>
350
351 * configure: Regenerated.
352
353 2012-03-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
354
355 * configure.ac (enable_objc_gc): Remove alpha*-dec-osf* handling.
356 * configure: Regenerate.
357
358 * thr.c (_XOPEN_SOURCE): Define unconditionally.
359
360 2011-11-21 Andreas Tobler <andreast@fgznet.ch>
361
362 * configure: Regenerate.
363
364 2011-11-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
365
366 * Makefile.in (INCLUDES): Add -I$(MULTIBUILDTOP)../libgcc.
367 * configure.ac (target_thread_file, HAVE_GTHR_DEFAULT): Remove.
368 * configure: Regenerate.
369 * config.h.in: Regenerate.
370
371 2011-10-17 Paul Brook <paul@codesourcery.com>
372 Matthias Klose <doko@ubuntu.com>
373
374 * exception.c (parse_lsda_header): hardcode ttype_encoding for older
375 ARM EABI toolchains.
376 (get_ttype_entry) Remove __ARM_EABI_UNWINDER__ variant.
377
378 2011-10-09 Nicola Pero <nicola.pero@meta-innovation.com>
379
380 PR libobjc/49883
381 * init.c (__objc_exec_class): Work around a bug in clang's code
382 generation. Clang sets the class->info field to values different
383 from 0x1 or 0x2 (the only allowed values in the traditional GNU
384 Objective-C runtime ABI) to store some additional information, but
385 this breaks backwards compatibility. Wipe out all the bits in the
386 fields other than the first two upon loading a class.
387
388 2011-10-09 Nicola Pero <nicola.pero@meta-innovation.com>
389
390 * class.c (objc_lookup_class): Added back for compatibility with
391 clang which seems to emit calls to it.
392
393 2011-10-08 Richard Frith-Macdonald <rfm@gnu.org>
394 Nicola Pero <nicola.pero@meta-innovation.com>
395
396 PR libobjc/50428
397 * sendmsg.c (__objc_send_initialize): If a class does not have an
398 +initialize method, search for an +initialize method in the
399 superclass and in the ancestor classes and execute the first one
400 that is found. This makes the GNU runtime behave in the same way
401 as the Apple/NeXT runtime with respect to +initialize methods and
402 subclassing.
403
404 2011-08-06 Nicola Pero <nicola.pero@meta-innovation.com>
405
406 PR libobjc/50002
407 * class.c (__objc_update_classes_with_methods): Iterate over meta
408 classes as well as normal classes when refreshing the method
409 implementations. This fixes replacing class methods.
410
411 2011-08-06 Nicola Pero <nicola.pero@meta-innovation.com>
412
413 * class.c (class_getSuperclass): Fixed to work with meta classes
414 still in construction too.
415
416 2011-08-06 Nicola Pero <nicola.pero@meta-innovation.com>
417
418 * class.c (class_getSuperclass): Fixed typo in comment.
419
420 2011-08-06 Nicola Pero <nicola.pero@meta-innovation.com>
421
422 PR libobjc/49882
423 * class.c (class_getSuperclass): Return the superclass if the
424 class is in construction.
425 * objc/runtime.h (class_getSuperclass): Updated documentation.
426
427 2011-08-05 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
428
429 * Makefile.in (INCLUDES): Search
430 $(srcdir)/$(MULTISRCTOP)../libgcc.
431
432 2011-06-08 Nicola Pero <nicola.pero@meta-innovation.com>
433
434 * objc/objc.h (__GNU_LIBOBJC__): Bumped to 20110608.
435
436 2011-06-08 Nicola Pero <nicola.pero@meta-innovation.com>
437
438 * configure.ac (VERSION): Bumped to 4:0:0.
439 * configure (VERSION): Likewise.
440
441 2011-06-08 Nicola Pero <nicola.pero@meta-innovation.com>
442
443 * objc/README: Updated.
444 * objc-private/selector.h: Updated comments.
445
446 2011-06-07 Nicola Pero <nicola.pero@meta-innovation.com>
447
448 * sendmsg.c (class_get_instance_method): Removed.
449 (class_get_class_method): Removed.
450 (objc_get_uninstalled_dtable): Removed.
451
452 2011-06-07 Nicola Pero <nicola.pero@meta-innovation.com>
453
454 * objc-private/module-abi-8.h (class_get_instance_size): Removed.
455 * objects.c (class_create_instance): Removed.
456 * error.c (__USE_FIXED_PROTOTYPES__): Removed.
457 * gc.c (__objc_generate_gc_type_description): Use
458 class_getInstanceSize() instead of class_get_instance_size().
459 * selector.c (sel_types_match): Made static.
460 (sel_get_typed_uid): Removed.
461 (sel_get_any_typed_uid): Removed.
462 (sel_get_name): Removed.
463 (sel_get_type): Removed.
464 (sel_register_name): Removed.
465 (sel_register_typed_name): Removed.
466 (sel_get_uid): Removed.
467
468 2011-06-07 Nicola Pero <nicola.pero@meta-innovation.com>
469
470 * encoding.c (method_get_number_of_arguments): Removed.
471 (method_get_sizeof_arguments): Removed.
472
473 2011-06-07 Nicola Pero <nicola.pero@meta-innovation.com>
474
475 * class.c (objc_next_class): Removed.
476 (class_pose_as): Removed.
477 (CLASSOF): Removed.
478 (class_table_replace): Removed.
479 (objc_lookup_class): Removed.
480
481 2011-06-07 Nicola Pero <nicola.pero@meta-innovation.com>
482
483 Removed the Traditional Objective-C runtime public API.
484 * Makefile.in (OBJC_DEPRECATED_H): Variable removed.
485 (install-headers): Do not create the objc/deprecated directory and
486 do not install the deprecated headers.
487 (OBJC_H): Removed encoding.h and objc-api.h.
488 * Object.m: Removed all methods with the exception of -class and
489 -isEqual:. Updated includes. ([-class]): Use Modern API.
490 * objc/Object.h: Do not include deprecated/Object.h.
491 * objc/deprecated/Object.h: Removed.
492 * linking.m (__objc_linking): Call [Object class] instead of
493 [Object name].
494 * Protocol.m: Removed all methods with the exception of -isEqual:.
495 Updated includes.
496 * objc/Protocol.h: Do not include deprecated/Protocol.h.
497 * objc/deprecated/Protocol.h: Removed.
498 * objc/deprecated/struct_objc_symtab.h: Removed.
499 * objc/deprecated/struct_objc_module.h: Removed.
500 * objc/deprecated/struct_objc_ivar.h: Removed.
501 * objc/deprecated/struct_objc_ivar_list.h: Removed.
502 * objc/deprecated/struct_objc_method.h: Removed.
503 * objc/deprecated/struct_objc_method_list.h: Removed.
504 * objc/deprecated/struct_objc_protocol_list.h: Removed.
505 * objc/deprecated/struct_objc_category.h: Removed.
506 * objc/deprecated/MetaClass.h: Removed.
507 * objc/deprecated/objc_msg_sendv.h: Removed.
508 * objc/deprecated/README: Removed.
509 * objc/deprecated/struct_objc_class.h: Removed.
510 * objc/deprecated/struct_objc_protocol.h: Removed.
511 * objc/deprecated/struct_objc_selector.h: Removed.
512 * objc/encoding.h: Removed.
513 * objc/message.h (struct objc_super): Removed the definition for
514 the Traditional Objective-C runtime API.
515 * objc/objc.h: Do not include objc/objc-decls.h.
516 deprecated/struct_objc_selector.h, deprecated/MetaClass.h,
517 deprecated/struct_objc_class.h, deprecated/struct_objc_protocol.h
518 and deprecated/objc_msg_sendv.h. Uncommented new definition of
519 Protocol *.
520 * objc/objc-api.h: Removed.
521 * objc/runtime.h: Updated comments. Removed check to detect
522 concurrent usage of Traditional and Modern APIs.
523 * objc-private/module-abi-8.h: Always define struct objc_class and
524 struct objc_protocol. (struct objc_protocol_list): Changed type
525 of 'list' argument from 'Protocol *' to 'struct objc_protocol *'.
526 (class_get_instance_size): Added.
527 * objc-private/protocols.h (__objc_protocols_add_protocol): Take a
528 'struct objc_protocol *' as argument, not a 'Protocol *'.
529 * objc-private/runtime.h: Updated comments.
530 * objc-private/selector.h (struct objc_selector, sel_eq): Added.
531 * class.c: Include objc-private/selector.h.
532 (objc_get_meta_class): Return a Class instead of a MetaClass.
533 * encoding.c (method_get_next_argument): Removed.
534 (method_get_first_argument): Removed.
535 (method_get_nth_argument): Removed.
536 * gc.c: Include objc/runtime.h instead of objc/encoding.h.
537 Include objc-private/module-abi-8.h and ctype.h.
538 * protocols.c (__objc_protocols_add_protocol): Take a 'struct
539 objc_protocl *' as argument, not a 'Protocol *'.
540 (class_addProtocol): Added casts to 'struct objc_protocol *' and
541 'Protocol *'.
542 (class_copyProtocolList): Likewise.
543 (protocol_conformsToProtocol): Likewise.
544 (protocol_copyProtocolList): Likewise.
545 * sarray.c: Include objc-private/module-abi-8.h.
546 * sendmsg.c (method_get_next_argument): Removed.
547 (method_get_first_argument): Removed.
548 (method_get_nth_argument): Removed.
549 (objc_msg_sendv): Removed.
550 (arglist_t, retval_t): New. (class_get_class_method): Take a
551 'Class', not 'MetaClass', argument.
552 * thr.c: Include module-abi-8.h.
553
554 2011-06-03 Nicola Pero <nicola.pero@meta-innovation.com>
555
556 * Makefile.in (OBJC_DEPRECATED_H): Removed struct_objc_static_instances.h
557 and objc_get_uninstalled_dtable.h.
558 * objc/deprecated/struct_objc_static_instances.h: Removed.
559 * objc/deprecated/objc_get_uninstalled_dtable.h: Removed.
560 * objc/objc-api.h: Do not include deprecated/objc_static_instances.h
561 and deprecated/objc_get_uninstalled_dtable.h.
562
563 2011-06-03 Nicola Pero <nicola.pero@meta-innovation.com>
564
565 * Makefile.in (OBJC_DEPRECATED_H): Removed objc_object_alloc.h.
566 * objc/deprecated/objc_object_alloc.h: Removed.
567 * objc/objc-api.h: Do not include deprecated/objc_object_alloc.h.
568 * objects.c (_objc_object_alloc, _objc_object_dispose,
569 _objc_object_copy): Removed.
570 * libobjc.def (__objc_object_alloc, __objc_object_copy,
571 __objc_object_dispose): Removed.
572
573 2011-06-03 Nicola Pero <nicola.pero@meta-innovation.com>
574
575 * Makefile.in (OBJC_DEPRECATED_H): Removed METHOD_NULL.h.
576 * objc/objc-api.h: Do not include deprecated/METHOD_NULL.h.
577 * objc/deprecated/METHOD_NULL.h: Removed.
578
579 2011-06-03 Nicola Pero <nicola.pero@meta-innovation.com>
580
581 * Makefile.in (OBJC_DEPRECATED_H): Removed objc_valloc.h,
582 objc_malloc.h and objc_unexpected_exception.h.
583 (exception.lo): Do not use -Wno-deprecated-declarations.
584 (exception_gc.lo): Likewise.
585 * objc/objc-api.h: Do not include deprecated/objc_valloc.h,
586 deprecated/objc_malloc.h and
587 deprecated/objc_unexpected_exception.h.
588 * objc/deprecated/objc_valloc.h: Removed.
589 * objc/deprecated/objc_malloc.h: Removed.
590 * objc/deprecated/objc_unexpected_exception.h: Removed.
591 * exception.c (_objc_unexpected_exception): Removed.
592 (objc_exception_throw): Do not check for
593 _objc_unexpected_exception.
594 * memory.c (objc_valloc, _objc_malloc, _objc_atomic_malloc,
595 _objc_valloc, _objc_realloc, _objc_calloc, _objc_free): Removed.
596 * libobjc.def (_objc_unexpected_exception, objc_valloc): Removed.
597
598 2011-06-03 Nicola Pero <nicola.pero@meta-innovation.com>
599
600 * objc/objc.h: Do not include deprecated/STR.h.
601 * objc/deprecated/STR.h: Removed.
602 * Makefile.in (OBJC_DEPRECATED_H): removed STR.h.
603
604 2011-06-03 Nicola Pero <nicola.pero@meta-innovation.com>
605
606 * Makefile.in (OBJC_H): Removed hash.h and sarray.h.
607 (OBJC_DEPRECATED_H): Likewise.
608 * libobjc.def (objc_hash_new, objc_hash_delete, objc_hash_add,
609 objc_hash_remove, objc_hash_next, objc_hash_value_for_key,
610 objc_hash_is_key_in_hash, hash_add, hash_delete, hash_new,
611 hash_next, hash_remove, hash_value_for_key, hash_is_key_in_hash,
612 sarray_at_put, sarray_at_put_safe, sarray_free, sarray_lazy_copy,
613 sarray_new, sarray_realloc, sarray_remove_garbage): Removed.
614 * objc/sarray.h: Removed.
615 * objc/hash.h: Removed.
616 * objc/deprecated/sarray.h: Removed.
617 * objc/deprecated/hash.h: Removed.
618 * objc/Object.h: Do not include objc/deprecated/hash.h
619 * Object.m: Include string.h.
620 * objc/objc-api.h: Do not include objc/deprecated/hash.h.
621 * objc-private/common.h (GNU_LIBOBJC_COMPILING_LIBOBJC_ITSELF):
622 Removed.
623
624 2011-06-03 Nicola Pero <nicola.pero@meta-innovation.com>
625
626 * Object.m ([-forward::]): Removed.
627 * objc/deprecated/Object.h ([-forward::]): Removed.
628 * sendmsg.c (__objc_forward): Updated comments.
629
630 2011-06-03 Nicola Pero <nicola.pero@meta-innovation.com>
631
632 * Makefile.in (OBJC_H): Removed objc-list.h.
633 (OBJC_DEPRECATED_H): Removed objc-list.h.
634 * objc/objc-list.h: File removed.
635 * objc/deprecated/objc-list.h: File removed.
636
637 2011-06-03 Nicola Pero <nicola.pero@meta-innovation.com>
638
639 * Makefile.in (OBJC_H): Removed typedstream.h.
640 (OBJC_DEPRECATED_H): Removed typedstream.h.
641 (C_SOURCE_FILES): Removed archive.c.
642 (Object.lo): Rule removed.
643 (Object_gc.lo): Likewise.
644 (archive.lo): Likewise.
645 (archive_gc.lo): Likewise.
646 * objc/deprecated/Object.h ([+streamVersion:], [-read], [-write],
647 [-awake]): Removed.
648 Do not include deprecated/typedstream.h.
649 * Object.m: Removed the same methods.
650 * archive.c: File removed.
651 * objc/typedstream.h: File removed.
652 * objc/deprecated/typedstream.h: File removed.
653 * libobjc.def (__objc_read_nbyte_uint, __objc_read_nbyte_ulong,
654 __objc_write_class, __objc_write_object, __objc_write_selector,
655 objc_close_typed_stream, objc_end_of_typed_stream,
656 objc_flush_typed_stream, objc_get_stream_class_version,
657 objc_open_typed_stream, objc_open_typed_stream_for_file,
658 objc_read_array, objc_read_char, objc_read_int, objc_read_long,
659 objc_read_object, objc_read_selector, objc_read_short,
660 objc_read_string, objc_read_type, objc_read_types,
661 objc_read_unsigned_char, objc_read_unsigned_int,
662 objc_read_unsigned_long, objc_read_unsigned_short,
663 objc_write_array, objc_write_char, objc_write_int,
664 objc_write_long, objc_write_object, objc_write_object_reference,
665 objc_write_root_object, objc_write_selector, objc_write_short,
666 objc_write_string, objc_write_string_atomic, objc_write_type,
667 objc_write_types, objc_write_unsigned_char,
668 objc_write_unsigned_int, objc_write_unsigned_long,
669 objc_write_unsigned_short): Removed.
670
671 2011-06-02 Nicola Pero <nicola.pero@meta-innovation.com>
672
673 * Makefile.in (OBJC_DEPRECATED_H): Removed objc_error.h.
674 * objc/deprecated/objc_error.h: Removed.
675 * objc/objc-api.h: Do not include deprecated/objc_error.h.
676 * libobjc.def (objc_error, objc_verror): Removed.
677 * error.c (_objc_error_handler, objc_error, objc_verror,
678 objc_set_error_handler): Removed.
679 * Object.m ([-error:], [-perform:], [-perform:with:],
680 [-perform:with:with], [-subclassResponsibility:],
681 [-notImplemented:], [-shouldNotImplement:], [-doesNotRecognize:]):
682 Removed.
683 * objc/deprecated/Object.h: Removed the same methods.
684 * sendmsg.c (__objc_forward): Do not try to invoke the "error:"
685 method after trying to invoke the "doesNotRecognize:" method.
686
687 2011-05-26 Nicola Pero <nicola.pero@meta-innovation.com>
688
689 * sendmsg.c: Reindented part of the file. No non-trivial changes
690 in code.
691
692 2011-05-26 Nicola Pero <nicola.pero@meta-innovation.com>
693
694 * sendmsg.c (__objc_install_dtable_for_class): Use objc_getClass,
695 not objc_lookup_class.
696
697 2011-05-25 Richard Frith-Macdonald <rfm@gnu.org>
698 David Ayers <ayers@fsfe.org>
699
700 PR libobjc/38307
701 * sendmsg.c: Include objc/hash.h.
702 (get_implementation): New function, mostly with code from get_imp
703 updated to support the new +initialize dispatch table logic.
704 (get_imp): Use get_implementation.
705 (__objc_responds_to): Updated to support the new +initialize
706 dispatch table logic.
707 (class_respondsToSelector): Likewise.
708 (objc_msg_lookup): Use get_implementation.
709 (__objc_init_install_dtable): Removed.
710 (__objc_install_methods_in_dtable): Updated arguments.
711 (__objc_install_dispatch_table_for_class): Renamed to
712 __objc_install_dtable_for_class and updated to support the new
713 +initialize dispatch table logic.
714 (__objc_update_dispatch_table_for_class): Updated to support the
715 new +initialize dispatch table logic.
716 (__objc_forward): Call get_implementation instead of get_imp.
717 (prepared_dtable_table): New.
718 (__objc_prepare_dtable_for_class): New.
719 (__objc_prepared_dtable_for_class): New.
720 (__objc_get_prepared_imp): New.
721 (__objc_install_prepared_dtable_for_class): New.
722
723 2011-05-24 Nicola Pero <nicola.pero@meta-innovation.com>
724
725 PR libobjc/48177
726 * selector.c (__sel_register_typed_name): Use sel_types_match()
727 instead of strcmp() to compare selector types (Suggestion by
728 Richard Frith-Macdonald <rfm@gnu.org>).
729
730 2011-04-15 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
731
732 PR libobjc/32037
733 * Makefile.in (OBJC_GCFLAGS): Move ...
734 * configure.ac (enable_objc_gc): ... here.
735 Add $(libsuffix) to OBJC_BOEHM_GC.
736 * configure: Regenerate.
737
738 2011-02-28 Nicola Pero <nicola.pero@meta-innovation.com>
739
740 * selector.c (sel_getTypedSelector): Return NULL if there are
741 multiple selectors with conflicting types.
742 * objc/runtime.h (sel_getTypedSelector): Updated documentation.
743
744 2011-02-28 Richard Frith-Macdonald <rfm@gnu.org>
745
746 PR libobjc/47922
747 * gc.c (class_ivar_set_gcinvisible): Use _C_GCINVISIBLE instead of
748 a hardcoded "!".
749
750 2011-02-13 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
751
752 * configure: Regenerate.
753
754 2010-12-26 Nicola Pero <nicola.pero@meta-innovation.com>
755
756 * init.c (create_tree_of_subclasses_inherited_from): Use
757 class_superclass_of_class instead of assuming a class is
758 unresolved when it could be resolved. Tidied up assignment and
759 check.
760 (__objc_tree_insert_class): Enhanced DEBUG_PRINTF.
761 (objc_tree_insert_class): Tidied up loop; return immediately upon
762 inserting a class.
763 (__objc_exec_class): Do not set __objc_class_tree_list.
764
765 2010-12-24 Nicola Pero <nicola.pero@meta-innovation.com>
766
767 * selector.c (sel_getTypedSelector): Return NULL if given a NULL
768 argument.
769 (sel_registerTypedName): Same.
770 (sel_registerName): Same.
771 * objc/runtime.h: Updated documentation.
772
773 2010-12-24 Nicola Pero <nicola.pero@meta-innovation.com>
774
775 * objc/runtime.h (class_addIvar): Updated documentation. The
776 alignment is actually the log_2 of the alignment in bytes.
777 * ivars.c (class_addIvar): Corresponding change to the
778 implementation.
779
780 2010-12-24 Nicola Pero <nicola.pero@meta-innovation.com>
781
782 * objc/runtime.h (sel_getType): Renamed to sel_getTypeEncoding to
783 be consistent with method_getTypeEncoding and
784 ivar_getTypeEncoding.
785 (sel_copyTypedSelectorList, sel_getTypedSelector): New.
786 * selector.c (sel_getType): Renamed to sel_getTypeEncoding.
787 (sel_copyTypedSelectorList, sel_getTypedSelector): New.
788 (sel_get_type): Updated call to sel_getType.
789
790 2010-12-24 Nicola Pero <nicola.pero@meta-innovation.com>
791
792 * objc/runtime.h (class_conformsToProtocol,
793 class_copyProtocolList): Updated documentation.
794
795 2010-12-23 Nicola Pero <nicola.pero@meta-innovation.com>
796
797 * init.c (create_tree_of_subclasses_inherited_from): Updated
798 DEBUG_PRINTF messages.
799 (__objc_tree_insert_class): Same.
800 (__objc_send_load_using_method_list): Same.
801 (__objc_send_load): Same.
802 (__objc_exec_class): Same. In particular, do not print the module
803 name since it is no longer used.
804 * sendmsg.c (__objc_send_initialize): Added DEBUG_PRINTFs for
805 tracking +initialize calls.
806 (__objc_update_dispatch_table_for_class): Added DEBUG_PRINTFs for
807 tracking updates of dispatch tables.
808 (__objc_install_dispatch_table_for_class): Same.
809
810 2010-12-23 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
811
812 * Makefile.in (libobjc$(libsuffix).la): Link with -Wc,-shared-libgcc.
813 (libobjc_gc$(libsuffix).la): Likewise.
814
815 2010-12-23 Nicola Pero <nicola.pero@meta-innovation.com>
816
817 * sendmsg.c (class_addMethod): Return NO if the method already
818 exists in the class.
819
820 2010-12-22 Nicola Pero <nicola.pero@meta-innovation.com>
821
822 * init.c (duplicate_classes): New.
823 (__objc_exec_class): Initialize duplicate_classes.
824 (__objc_create_classes_tree): Ignore classes in the
825 duplicate_classes table.
826 (__objc_call_load_callback): Same.
827 (__objc_init_class): If a duplicate class is found, add it to
828 duplicate_classes instead of aborting. Return YES if the class is
829 not a duplicate, and NO if it is.
830 * objc-private/runtime.h (__objc_init_class): Updated prototype.
831
832 2010-12-22 Nicola Pero <nicola.pero@meta-innovation.com>
833
834 * objc-private/objc-list.h: Reindented file. No code changes.
835 * objc-private/sarray.h: Same change.
836
837 2010-12-22 Nicola Pero <nicola.pero@meta-innovation.com>
838
839 * objc-private/accessors.h: Removed 'extern "C"' guards. This
840 file is never compiled with C++.
841 * objc-private/hash.h: Same change.
842 * objc-private/objc-list.h: Same change.
843 * objc-private/objc-sync.h: Same change.
844 * objc-private/protocols.h: Same change.
845 * objc-private/runtime.h: Same change.
846 * objc-private/sarray.h: Same change.
847 * objc-private/selector.h: Same change.
848
849 2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
850
851 PR libobjc/18764
852 * class.c (__objc_add_class_to_hash): Return YES if the class was
853 added, and NO if it already existed.
854 * init.c (__objc_init_class): If __objc_add_class_to_hash returns
855 NO, then abort the program with an error message.
856 * objc-private/runtime.h (__objc_add_class_to_hash): Updated
857 declaration.
858
859 2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
860
861 * init.c (_objc_load_callback): Initialize with 0.
862 (__objc_call_callback): Renamed to __objc_call_load_callback.
863 Check _objc_load_callback only once, and if it is not set, return
864 immediately.
865 (objc_send_load): Updated call to __objc_call_callback.
866
867 2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
868
869 PR libobjc/16110
870 * init.c (__objc_send_message_in_list): Renamed to
871 __objc_send_load_using_method_list. Do not take an 'op' argument.
872 Register the 'load' selector if needed.
873 (__objc_send_load): Do not register the 'load' selector. Updated
874 call to __objc_send_message_in_list.
875 (__objc_create_classes_tree): Add the class of any claimed
876 category that was loaded in the module to the list of classes for
877 which we try to execute +load.
878
879 2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
880
881 * objc-private/common.h: When DEBUG is defined, include <stdio.h>.
882 Updated comments.
883 * init.c (__objc_tree_insert_class): Use %p, not %x, when printing
884 a pointer using DEBUG_PRINTF.
885
886 2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
887
888 PR libobjc/45953
889 * selector.c (__sel_register_typed_name): When registering a new
890 selector with the same name as an existing one, reuse the existing
891 name string. Also updated types, casts and comments in the whole
892 function.
893
894 2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
895
896 * objc-private/module-abi-8.h (struct objc_symtab): Declare 'refs'
897 to be 'struct objc_selector *' and not 'SEL'.
898 * init.c (__objc_exec_class): Call
899 __objc_register_selectors_from_module instead of iterating over
900 each selector and calling __sel_register_typed_name for each.
901 * objc-private/selector.h: Declare
902 __objc_register_selectors_from_module instead of
903 __sel_register_typed_name.
904 * selector.c (__objc_register_selectors_from_module): New.
905 (__sel_register_typed_name): Made static.
906
907 2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
908
909 * linking.m: Do not include objc/NXConstStr.h.
910
911 2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
912
913 * objc-private/runtime.h (DEBUG_PRINTF): Moved from here ...
914 * objc-private/common.h (DEBUG_PRINTF): To here.
915 * hash.c: Do not include objc-private/runtime.h and objc/thr.h.
916
917 2010-12-21 Nicola Pero <nicola.pero@meta-innovation.com>
918
919 * hash.c: Tidied up comments and indentation. No code changes.
920
921 2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
922
923 PR libobjc/47012
924 * accessors.m (objc_getProperty): If not atomic, do not
925 retain/autorelease the returned value.
926
927 2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
928
929 * objc-private/runtime.h (__objc_selector_max_index,
930 __objc_init_selector_tables, __objc_register_selectors_from_class,
931 __objc_register_selectors_from_list,
932 __objc_register_selectors_from_description_list): Moved to ...
933 * objc-private/selector.h: ... here.
934
935 2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
936
937 * objc-private/runtime.h (__objc_class_links_resolved): Removed.
938 (__objc_print_dtable_stats): Removed.
939 (__sel_register_typed_name): Removed.
940 * sendmsg.c (__objc_print_dtable_stats): Use 'void' as argument.
941
942 2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
943
944 * init.c (__objc_exec_class): Call __objc_resolve_class_links (),
945 if appropriate, after loading the module.
946
947 2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
948
949 * sendmsg.c (method_setImplementation): Do not declare.
950
951 2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
952
953 * objc/message.h: Updated comments.
954 * objc/runtime.h: Updated comments.
955
956 2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
957
958 * class.c (objc_lookupClass): Renamed to objc_lookUpClass.
959 * protocols.c: Updated all calls to objc_lookupClass to call
960 objc_lookUpClass instead.
961 * sendmsg.c (objc_lookupClass): Do not declare.
962 (get_imp): Update call to objc_lookupClass to call
963 objc_lookUpClass instead.
964 * objc/runtime.h (objc_lookupClass): Renamed to objc_lookUpClass.
965
966 2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
967
968 * objc/runtime.h (class_ivar_set_gcinvisible): Declare.
969 * sendmsg.c (_CLS_IN_CONSTRUCTION, CLS_IS_IN_CONSTRUCTION): Do not
970 define. Updated comments.
971
972 2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
973
974 * objc/encoding.h: Updated comments.
975 * objc/runtime.h: Updated comments.
976 (objc_setGetUnknownClassHandler): Mark with objc_EXPORT.
977 (objc_sizeof_type): Same.
978 (objc_alignof_type): Same.
979 (objc_aligned_size): Same.
980 (objc_promoted_size): Same.
981 (objc_skip_type_qualifiers): Same.
982 (objc_skip_typespec): Same.
983 (objc_skip_offset): Same.
984 (objc_skip_argspec): Same.
985 (objc_get_type_qualifiers): Same.
986 (objc_layout_structure): Same.
987 (objc_layout_structure_next_member): Same.
988 (objc_layout_finish_structure): Same.
989 (objc_layout_structure_get_info): Same.
990
991 2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
992
993 * init.c: Updated comments.
994 * objc/objc-api.h: Updated comments.
995 * objc/runtime.h (_objc_load_callback): Declare.
996
997 2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
998
999 * objc/Object.h: Include deprecated/typedstream.h and
1000 deprecated/hash.h instead of typedstream.h. Updated comments.
1001
1002 2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
1003
1004 * Makefile.in (OBJC_DEPRECATED_H): Added objc_msg_sendv.h.
1005 * objc/deprecated/objc_msg_sendv.h: New.
1006 * objc/message.h: Do not define retval_t, apply_t, arglist,
1007 arglist_t, objc_msg_sendv, now in
1008 objc/deprecated/objc_msg_sendv.h.
1009 * objc/objc.h: Do not include message.h; include
1010 objc/deprecated/objc_msg_sendv.h instead. Tidied up comments.
1011 * sendmsg.c: Include objc/message.h.
1012 * thr.c: Include objc/message.h.
1013
1014 2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
1015
1016 * objc/objc-exception.h: Include objc-decls.h. Mark all
1017 functions with objc_EXPORT.
1018 * objc/objc-sync.h: Same change.
1019
1020 2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
1021
1022 * Protocol.m: Moved all methods, with the exception of -isEqual:,
1023 into the 'Deprecated' category.
1024 * objc/Protocol.h: Removed all methods, moved to
1025 objc/deprecated/Protocol.h. Include objc/deprecated/Protocol.h.
1026 * objc/deprecated/Protocol.h: New.
1027 * Makefile.in (OBJC_DEPRECATED_H): Added Protocol.h.
1028
1029 2010-12-19 Nicola Pero <nicola.pero@meta-innovation.com>
1030
1031 * init.c: Include objc-private/selector.h. Do not declare
1032 __sel_register_typed_name.
1033 * objc-private/selector.h (__sel_register_typed_name): Declare.
1034 * selector.c: Include objc-private/selector.h.
1035
1036 2010-12-18 Nicola Pero <nicola.pero@meta-innovation.com>
1037
1038 * class.c: Tidied up comments and indentation. No code changes.
1039 * error.c: Same.
1040 * exception.c: Same.
1041 * init.c: Same.
1042 * ivars.c: Same.
1043 * memory.c: Same.
1044 * objc-foreach.c: Same.
1045 * objc-sync.c: Same.
1046 * objects.c: Same.
1047 * protocols.c: Same.
1048 * sarray.c: Same.
1049 * thr.c: Same.
1050
1051 2010-12-17 Nicola Pero <nicola.pero@meta-innovation.com>
1052
1053 * init.c: Include objc/runtime.h and objc-private/module-abi-8.h
1054 instead of objc/objc-api.h.
1055 (init_check_module_version): Take a 'struct objc_module *'
1056 argument instead of 'Module_t'. Use 'struct objc_module *'
1057 instead of 'Module_t'.
1058 (__objc_created_classes_tree): Take a 'struct objc_module *'
1059 argument instead of 'Module_t'; use 'struct objc_symtab *' instead
1060 of 'Symtab_t'.
1061 (__objc_call_callback): Take a 'struct objc_module *' argument
1062 instead of 'Module_t'; use 'struct objc_symtab *' instead of
1063 'Symtab_t' and 'struct objc_category *' instead of 'Category_t'.
1064 (_objc_load_callback): Take a 'struct objc_category *' argument
1065 instead of 'Category *'.
1066 (class_superclass_of_class): Use objc_getClass() instead of
1067 objc_lookup_class().
1068 (create_tree_of_subclasses_inherited_from): Same change (also, use
1069 an explicit 'if' instead of '?').
1070 (objc_init_statics): Same change.
1071 (objc_send_load): Same change.
1072 (__objc_init_protocol): same change.
1073 (__objc_send_message_in_list): Take a 'struct objc_method_list *'
1074 argument instead of 'MethodList_t'. Use 'struct objc_method *'
1075 instead of 'Method_t'.
1076 (__objc_send_load): Use 'struct objc_method_list *' instead of
1077 'MethodList_t'. Use sel_registerName() instead of
1078 sel_register_name().
1079 (__objc_exec_class): Take a 'struct objc_module *' argument
1080 instead of 'Module_t'. Use 'struct objc_symtab *' instead of
1081 'Symtab_t'. Use objc_getClass() instead of objc_lookup_class().
1082 Use 'struct objc_category *' instead of 'Category_t'.
1083
1084 2010-12-16 Nicola Pero <nicola.pero@meta-innovation.com>
1085
1086 * sendmsg.c: Include objc/runtime.h instead of objc/objc-api.h.
1087 Include objc-private/module-abi-8.h and objc-private/selector.h
1088 instead of objc/encoding.h.
1089 (objc_msg_lookup_super): Use super->super_class instead of
1090 super->class.
1091 (method_get_first_argument, method_get_next_argument): Declare
1092 locally.
1093 (class_get_instance_method): Declare before using.
1094 (objc_msg_sendv): Use 'struct objc_method' instead of 'Method'.
1095 (__objc_init_dispatch_tables, __objc_send_initialize): Use
1096 sel_registerName() instead of sel_register_name().
1097 (__objc_forward): Use sel_getName() instead of sel_get_name().
1098 (objc_get_uninstalled_dtable): Use 'void' as argument.
1099 * objc-private/selector.h: New.
1100
1101 2010-12-15 Nicola Pero <nicola.pero@meta-innovation.com>
1102
1103 * objc/message.h (objc_super): When using the modern API, do not
1104 define Super and Super_t, and always use 'super_class' for the
1105 super class field.
1106 (objc_msg_lookup_super): Updated prototype to use 'struct
1107 objc_super *' instead of 'Super_t'.
1108 * sendmsg.c (objc_msg_lookup_super): Updated prototype to use
1109 'struct objc_super *' instead of 'Super_t'.
1110
1111 2010-12-15 Nicola Pero <nicola.pero@meta-innovation.com>
1112
1113 * objc/message.h: Update comments, reindented code and moved
1114 deprecated types and functions at the end of the file. No code
1115 changes.
1116
1117 2010-12-15 Nicola Pero <nicola.pero@meta-innovation.com>
1118
1119 * ivars.c (class_addIvar): Use the 'size' argument instead of
1120 trying to calculate it using objc_sizeof_type().
1121 * objc/runtime.h (class_addIvar): Updated comments.
1122
1123 2010-12-15 Nicola Pero <nicola.pero@meta-innovation.com>
1124
1125 * sendmsg.c: Reindented some code and tidied up comments. No
1126 actual code changes.
1127
1128 2010-12-14 Nicola Pero <nicola.pero@meta-innovation.com>
1129
1130 * objc/Object.h: Moved all the methods, with the exception of
1131 -class and -isEqual:, into ...
1132 * objc/deprecated/Object.h: here.
1133 * Object.m: Moved all the methods, with the exception of -class
1134 and -isEqual: into the 'Deprecated' category.
1135
1136 2010-12-14 Nicola Pero <nicola.pero@meta-innovation.com>
1137
1138 * objects.c (object_copy): Do not #undef as we are no longer
1139 including objc/objc-api.h.
1140 * selector.c: Include objc/runtime.h and
1141 objc-private/module-abi-8.h. Do not include objc/objc-api.h and
1142 objc/encoding.h. Updated
1143 (__objc_register_selectors_from_class): Use struct
1144 objc_method_list * instead of MethodList_t.
1145 (__objc_register_selectors_from_list): Use Method instead of
1146 Method_t.
1147 (struct objc_method_description_list): Do not define here.
1148 (__objc_register_instance_methods_to_class): Use struct
1149 objc_method_list * instead of MethodList_t and Method instead of
1150 Method_t.
1151
1152 2010-12-14 Nicola Pero <nicola.pero@meta-innovation.com>
1153
1154 * selector.c: Reindented some code and tidied up comments. No
1155 actual code changes.
1156
1157 2010-12-13 Iain Sandoe <iains@gcc.gnu.org>
1158
1159 * encoding.c (_darwin_rs6000_special_round_type_align): New.
1160 (darwin_rs6000_special_round_type_align): Adjust to use new routine.
1161
1162 2010-12-11 Nicola Pero <nicola.pero@meta-innovation.com>
1163
1164 * sendmsg.c (selector_resolveClassMethod): New.
1165 (selector_resolveInstanceMethod): New.
1166 (__objc_resolve_class_method): New.
1167 (__objc_resolve_instance_method): New.
1168 (get_imp): Call __objc_resolve_class_method or
1169 __objc_resolve_instance_method at the appropriate time.
1170 (objc_msg_lookup): Same.
1171 (class_getClassMethod): Same.
1172 (class_getInstanceMethod): Same.
1173 (__objc_init_dispatch_tables): Initialize
1174 selector_resolveClassMethod and selector_resolveInstanceMethod.
1175 * objc/runtime.h: Updated documentation of class_getClassMethod,
1176 class_getInstanceMethod and class_getMethodImplementation.
1177
1178 2010-12-11 Nicola Pero <nicola.pero@meta-innovation.com>
1179
1180 * objc-private/module-abi-8.h (struct objc_symtab): Updated
1181 description of sel_ref_cnt and refs.
1182 * objc/deprecated/struct_objc_symtab.h (objc_symtab): Same change.
1183
1184 2010-12-06 Dave Korn <dave.korn.cygwin@gmail.com>
1185
1186 PR target/40125
1187 PR lto/46695
1188 * configure.ac (extra_ldflags_libobjc): Invoke ACX_LT_HOST_FLAGS.
1189 * Makefile.in (lt_host_flags): Import AC_SUBST'd value.
1190 * aclocal.m4: Regenerate.
1191 * configure: Regenerate.
1192
1193 2010-12-03 Matthias Klose <doko@ubuntu.com>
1194
1195 * configure.ac (VERSION): Bump the version to 3:0:0.
1196 * configure: Regenerate.
1197
1198 2010-11-23 Richard Frith-Macdonald <rfm@gnu.org>
1199
1200 * sendmsg.c (get_imp): Fixed call to __objc_get_forward_imp to
1201 pass nil as the receiver since we don't know the receiver at this
1202 point.
1203
1204 2010-11-18 Nicola Pero <nicola.pero@meta-innovation.com>
1205
1206 * ivars.c: Include stdlib.h.
1207 * protocols.c: Same change.
1208
1209 2010-10-24 Nicola Pero <nicola.pero@meta-innovation.com>
1210
1211 * Makefile.in (OBJC_SOURCE_FILES): Added accessors.m.
1212 * accessors.m: New.
1213 * init.c: Include objc-private/accessors.h.
1214 (__objc_exec_class): Call __objc_accessors_init.
1215 * objc-private/accessors.h: New.
1216
1217 2010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
1218
1219 * objc/message.h: Moved initial includes outside of extern "C".
1220 * objc/runtime.h: Add extern "C" for Objective-C++.
1221
1222 2010-10-17 Nicola Pero <nicola.pero@meta-innovation.com>
1223
1224 * init.c (objc_send_load): Do not wait for NXConstantString to be
1225 registered before executing +load. There is no point if
1226 -fconstant-string-class=xxx is used when compiling all modules,
1227 as is the case for almost all users.
1228 * linking.m (__objc_linking): Do not try to forcefully link in
1229 NXConstantString.
1230
1231 2010-10-16 Nicola Pero <nicola.pero@meta-innovation.com>
1232
1233 * objc/runtime.h: Updated comments.
1234 (class_addMethod): New.
1235 (class_addIvar): New.
1236 (class_replaceMethod): New.
1237 (objc_allocateClassPair): New.
1238 (objc_registerClassPair): New.
1239 (objc_disposeClassPair): New.
1240 * class.c (objc_allocateClassPair): New.
1241 (objc_registerClassPair): New.
1242 (objc_disposeClassPair): New.
1243 (class_getSuperclass): Return Nil if a class is in construction.
1244 * init.c (__objc_exec_class): Call __objc_init_class.
1245 (__objc_init_class): New.
1246 * ivars.c (class_copyIvarList): Return NULL if class is in
1247 construction. Do not lock the runtime mutex.
1248 (class_getInstanceVariable): Return NULL if class is in
1249 construction. Do not lock the runtime mutex.
1250 (class_addIvar): New.
1251 * sendmsg.c (class_addMethod): New.
1252 (class_replaceMethod): New.
1253 * objc-private/module-abi-8.h (__CLS_SETNOTINFO): New.
1254 (_CLS_IN_CONSTRUCTION): New.
1255 (CLS_IS_IN_CONSTRUCTION): New.
1256 (CLS_SET_IN_CONSTRUCTION): New.
1257 (CLS_SET_NOT_IN_CONSTRUCTION): New.
1258 * objc-private/runtime.h (__objc_init_class): New.
1259
1260 2010-10-16 Nicola Pero <nicola.pero@meta-innovation.com>
1261
1262 * class.c (class_getSuperclass): Call __objc_resolve_class_links
1263 if the class is not resolved yet.
1264 * ivars.c (class_getInstanceVariable): Use class_getSuperclass.
1265
1266 2010-10-16 Nicola Pero <nicola.pero@meta-innovation.com>
1267
1268 * objc/runtime.h (class_getIvarLayout): New.
1269 (class_getWeakIvarLayout): New.
1270 (class_setIvarLayout): New.
1271 (class_setWeakIvarLayout): New.
1272 * ivars.c (class_getIvarLayout): New.
1273 (class_getWeakIvarLayout): New.
1274 (class_setIvarLayout): New.
1275 (class_setWeakIvarLayout): New.
1276
1277 2010-10-15 Nicola Pero <nicola.pero@meta-innovation.com>
1278
1279 * objc/runtime.h (class_copyPropertyList): New.
1280 (class_getProperty): New.
1281 (property_getAttributes): New.
1282 (property_getName): New.
1283 * ivars.c (class_copyPropertyList): New.
1284 (class_getProperty): New.
1285 (property_getAttributes): New.
1286 (property_getName): New.
1287
1288 2010-10-15 Nicola Pero <nicola.pero@meta-innovation.com>
1289
1290 * objc-private/runtime.h (__objc_update_classes_with_methods): New.
1291 * class.c (__objc_update_classes_with_methods): New.
1292 (objc_getClassList): Do not lock the class lock.
1293 * methods.c (method_exchangeImplementations): New.
1294 (method_setImplementation): New.
1295 * objc/runtime.h (method_setImplementation): New.
1296 (method_exchangeImplementations): New.
1297
1298 2010-10-15 Nicola Pero <nicola.pero@meta-innovation.com>
1299
1300 * Protocol.m: Include objc/runtime.h and
1301 objc-private/module-abi-8.h instead of objc/objc-api.h. Do not
1302 repeat Protocol's instance variables.
1303 (struct objc_method_description_list): Do not define here.
1304 ([-conformsTo:]): Reimplemented on top of protocol_conformsTo().
1305 ([descriptionForInstanceMethod:]): Use sel_isEqual() to compare
1306 selectors directly instead of getting names and then using strcmp.
1307 ([descriptionForClassMethod:]): Same change.
1308 ([-isEqual:]): Reimplemented on top of protocol_isEqual().
1309 * protocols.c (protocol_getMethodDescription): Use sel_isEqual()
1310 to compare selectors directly instead of getting names and then
1311 using strcmp.
1312 * objc/Protocol.h: Updated comments.
1313
1314 2010-10-15 Nicola Pero <nicola.pero@meta-innovation.com>
1315
1316 * init.c (__objc_init_protocol): New function which fixes up a
1317 protocol's class pointer, registers it with the runtime, register
1318 all protocol selectors and registers associated protocols too.
1319 (objc_init_statics): Detect if we are initializing protocols, and
1320 if so, use __objc_init_protocol instead of only fixing up the
1321 class pointer.
1322 (__objc_init_protocls): Use __objc_init_protocol.
1323 * objc-private/module-abi-8.h: Updated comments.
1324 * objc-private/runtime.h
1325 (__objc_register_selectors_from_description_list): New.
1326 * selector.c (__objc_register_selectors_from_description_list):
1327 New. (struct objc_method_description_list): Declare.
1328 * Protocol.m ([-descriptionForInstanceMethod:]): Use sel_get_name
1329 when accessing the name of a method, which is now correctly a SEL.
1330 ([-descriptionForClassMethod:]): Same change.
1331 * protocols.c (protocol_getMethodDescription): Same change.
1332 * objc/runtime.h: Updated comments.
1333 (sel_registerTypedName): Fixed typo in function name.
1334
1335 2010-10-13 Nicola Pero <nicola.pero@meta-innovation.com>
1336
1337 PR libobjc/23214
1338 * init.c (objc_init_statics): Do not skip the initialization of a
1339 statics list if the first object has already been initialized; in
1340 the case of Protocols, while the first one may have been
1341 initialized, some others may not have been initialized yet.
1342
1343 2010-10-13 Nicola Pero <nicola.pero@meta-innovation.com>
1344
1345 * Makefile.in (OBJC_DEPRECATED_H): Added
1346 objc_get_uninstalled_dtable, objc_object_alloc.h and
1347 struct_objc_static_instances.h.
1348
1349 2010-10-13 Nicola Pero <nicola.pero@meta-innovation.com>
1350
1351 * encoding.c (method_copyReturnType): New.
1352 (method_copyArgumentType): New.
1353 (method_getReturnType): New.
1354 (method_getArgumentType): New.
1355 * methods.c (method_getDescription): New.
1356 * objc/runtime.h (method_copyReturnType): New.
1357 (method_copyArgumentType): New.
1358 (method_getReturnType): New.
1359 (method_getArgumentType): New.
1360 (method_getDescription): New.
1361
1362 2010-10-12 Nicola Pero <nicola.pero@meta-innovation.com>
1363
1364 * encoding.c: Tidied up comments.
1365 (objc_skip_variable_name): New static inline function.
1366 (objc_sizeof_type): Use objc_skip_variable_name instead of copying
1367 the same code over and over.
1368 (objc_alignof_type): Same.
1369 (objc_aligned_size): Same.
1370 (objc_promoted_size): Same.
1371 (objc_skip_typespec): Same.
1372 (objc_layout_structure_next_member): Same.
1373 (objc_skip_offset): Skip a '-' before the digits (if any). Fixed
1374 historical bug where objc_skip_offset would skip one byte even if
1375 there is no offset: check that the first offset digit is actually
1376 a digit before skipping it.
1377 (objc_skip_type_qualifiers): Mark as inline.
1378 (objc_skip_typespec): Mark as inline.
1379
1380 2010-10-12 Nicola Pero <nicola.pero@meta-innovation.com>
1381
1382 * Makefile.in (C_SOURCE_FILES): Added methods.c.
1383 * encoding.c (method_getNumberOfArguments): New.
1384 (method_get_number_of_arguments): Call
1385 method_getNumberOfArguments.
1386 * ivars.c (ivar_getName): Check for NULL variable argument.
1387 (ivar_getOffset): Check for NULL variable argument.
1388 (ivar_getTypeEncoding): Check for NULL variable argument.
1389 (class_copyIvarList): New.
1390 * methods.c: New.
1391 * protocols.c (class_copyProtocolList): Check for Nil class_
1392 argument.
1393 * sendmsg.c: Use 'struct objc_method *' instead of Method_t, and
1394 'struct objc_method_list *' instead of MethodList_t.
1395 (class_getMethodImplementation): New.
1396 (class_respondsToSelector): New.
1397 (class_getInstanceMethod): New.
1398 (class_getClassMethod): New.
1399 * objc/runtime.h: Updated comments.
1400 (class_copyIvarList): New.
1401 (class_getInstanceMethod): New.
1402 (class_getClassMethod): New.
1403 (class_getMethodImplementation): New.
1404 (class_respondsToSelector): New.
1405 (method_getName): New.
1406 (method_getImplementation): New.
1407 (method_getTypeEncoding): New.
1408 (class_copyMethodList): New.
1409 (method_getNumberOfArguments): New.
1410
1411 2010-10-12 Nicola Pero <nicola.pero@meta-innovation.com>
1412
1413 * class.c: Include objc/runtime.h and objc-private/module-abi-8.h
1414 instead of objc/objc-api.h.
1415 (objc_get_unknown_class_handler): Do not define.
1416 (class_isMetaClass): New.
1417 (class_getSuperclass): New.
1418 (class_getVersion): New.
1419 (class_setVersion): New.
1420 (class_getInstanceSize): New.
1421 * exceptions.c: Include objc/runtime.h instead of objc/objc-api.h.
1422 (is_kind_of_exception_matcher): Use objc_getSuperclass instead of
1423 objc_get_super_class.
1424 (get_ttype_entry): Use objc_getRequiredClass instead of
1425 objc_get_class.
1426 * ivars.c (class_getClassVariable): New.
1427 * objects.c: Include objc/runtime.h, objc/thr.h and
1428 objc-private/module-abi-8.h instead of objc/objc-api.h
1429 * objc/runtime.h (class_getClassVariable): New.
1430 (class_isMetaClass): New.
1431 (class_getSuperclass): New.
1432 (class_getVersion): New.
1433 (class_setVersion): New.
1434 (class_getInstanceSize): New.
1435 * objc-private/module-abi-8.h (HOST_BITS_PER_LONG): New (from
1436 objc/objc-api.h)
1437 (__CLS_INFO): Same.
1438 (__CLS_ISINFO): Same.
1439 (__CLS_SETINFO): Same.
1440 (CLS_ISMETA): Same.
1441 (CLS_ISCLASS): Same.
1442 (CLS_ISRESOLV): Same.
1443 (CLS_SETRESOLV): Same.
1444 (CLS_ISINITIALIZED): Same.
1445 (CLS_SETINITIALIZED): Same.
1446 (CLS_GETNUMBER): Same.
1447 (CLS_SETNUMBER): Same.
1448
1449 2010-10-12 Nicola Pero <nicola.pero@meta-innovation.com>
1450
1451 * archive.c: Do not include objc/objc.h.
1452 * class.c: Do not include objc/objc.h.
1453 * encoding.c: Include objc/runtime.h, ctype.h and
1454 objc-private/module-abi-8.h instead of objc/objc-api.h and
1455 objc/encoding.h.
1456 * error.c: Do not include objc/objc.h.
1457 * gc.c: Include tconfig.h and objc/encoding.h only if
1458 OBJC_WITH_GC.
1459 * hash.c: Include objc/runtime.h and objc/thr.h instead of
1460 objc/objc-api.h. Do not include objc/objc.h.
1461 * init.c: Do not include objc/objc.h.
1462 * ivars.c: Include objc/runtime.h, objc-private/module-abi-8.h and
1463 objc/thr.h instead of objc/objc-api.h. Do not include
1464 objc/objc.h.
1465 * linking.m: Tidied comment.
1466 * memory.c: Include objc/runtime.h instead of objc/objc-api.h.
1467 Do not include objc/objc.h.
1468 * objects.c: Do not include objc/objc.h.
1469 * objc-sync.c: Include objc/runtime.h instead of objc/objc-api.h.
1470 * protocols.c: Do not include objc/objc.h.
1471 * sarray.c: Include objc/runtime.h instead of objc/objc-api.h. Do
1472 not include objc/objc.h.
1473 * selector.c: Do not include objc/objc.h.
1474 * sendmsg.c: Do not include objc/objc.h.
1475 * thr.c: Include objc/runtime.h instead of objc/objc-api.h.
1476 Do not include objc/objc.h.
1477 * objc/objc-decls.h: Reindented code.
1478 * objc/runtime.h Include objc-decls.h. Updated comments.
1479 (objc_malloc): New.
1480 (objc_atomic_malloc): New.
1481 (objc_calloc): New.
1482 (objc_realloc): New.
1483 (objc_free): New.
1484 * objc-private/runtime.h: Updated comments.
1485
1486 2010-10-12 Nicola Pero <nicola.pero@meta-innovation.com>
1487
1488 * Makefile.in (C_SOURCE_FILES): Added protocols.c.
1489 * objc-private/protocols.h: New.
1490 * protocols.c: New.
1491 * init.c: Include objc-private/protocols.h.
1492 (__objc_exec_class): Call __objc_protocols_init on startup.
1493 (__objc_init_protocols): Call __objc_protocols_add_protocol.
1494 * objc-private/runtime.h: Use (struct objc_method_list *) instead
1495 of MethodList_t, and (struct objc_method *) instead of Method_t.
1496 * objc/deprecated/struct_objc_class.h: Define
1497 __objc_STRUCT_OBJC_CLASS_defined.
1498 * objc-private/module-abi-8.h (struct
1499 objc_method_description_list): New.
1500 (struct objc_class): Only define if
1501 __objc_STRUCT_OBJC_CLASS_defined is undefined.
1502 * objc/runtime.h (class_getName): New.
1503 (objc_getProtocol): New.
1504 (objc_copyProtocolList): New.
1505 (class_addProtocol): New.
1506 (class_conformsToProtocol): New.
1507 (class_copyProtocolList): New.
1508 (protocol_conformsToProtocol): New.
1509 (protocol_isEqual): New.
1510 (protocol_getName): New.
1511 (protocol_getMethodDescription): New.
1512 (protocol_copyMethodDescriptionList): New.
1513 (protocol_getProperty): New.
1514 (protocol_copyPropertyList): New.
1515 (protocol_copyProtocolList): New.
1516 * class.c (class_getName): New.
1517 * selector.c (sel_isEqual): New.
1518
1519 2010-10-12 Nicola Pero <nicola.pero@meta-innovation.com>
1520
1521 * selector.c (sel_getName): Return "<null selector>" for a NULL
1522 argument.
1523 (sel_get_name): Return 0 for a NULL argument.
1524 * objc/runtime.h (sel_getName): Updated documentation.
1525
1526 * objc-private/hash.h (class_hash_table): Unused declaration
1527 removed.
1528 (module_hash_table): Same.
1529 * objc/deprecated/hash.h: Same changes.
1530
1531 2010-10-11 Nicola Pero <nicola.pero@meta-innovation.com>
1532
1533 * class.c (objc_getClassList): New.
1534 (objc_getRequiredClass): New.
1535 (objc_getMetaClass): New.
1536 (objc_lookupClass): New.
1537 (objc_getClass): New.
1538 (__objc_get_unknown_class_handler): New.
1539 (objc_setGetUnknownClassHandler): New.
1540 (objc_get_class): Use __objc_get_unknown_class_handler.
1541 (objc_lookup_class): Call objc_getClass.
1542 * objc/objc-api.h: Updated comment and copyright notice.
1543 * objc/runtime.h: Updated comments.
1544 (objc_getClass): New.
1545 (objc_lookupClass): New.
1546 (objc_getMetaClass): New.
1547 (objc_getRequiredClass): New.
1548 (objc_getClassList): New.
1549 (objc_setGetUnknownClassHandler): New.
1550 (objc_get_unknown_class_handler): New.
1551 * objc-private/runtime.h: Use __objc_private_runtime_INCLUDE_GNU
1552 instead of __objc_runtime_INCLUDE_GNU as include guard.
1553 * objc-private/error.h (_objc_abort): Mark as noreturn.
1554
1555 2010-10-11 Nicola Pero <nicola.pero@meta-innovation.com>
1556
1557 * Makefile.in (C_SOURCE_FILES): Added ivars.c.
1558 * ivars.c: New.
1559 * objc/objc.h: Updated comments.
1560 * objc/runtime.h (object_getClass): New.
1561 (object_getClassName): New.
1562 (object_setClass): New.
1563 (class_getInstanceVariable): New.
1564 (object_getIndexedIvars): New.
1565 (object_getInstanceVariable): New.
1566 (object_setInstanceVariable): New.
1567 (object_getIvar): New.
1568 (object_setIvar): New.
1569 (ivar_getName): New.
1570 (ivar_getOffset): New.
1571 (ivar_getTypeEncoding): New.
1572 * objc-private/module-abi-8.h (struct objc_class): Added.
1573 * objects.c (object_getClassName): New.
1574 (object_setClass): New.
1575
1576 2010-10-11 Nicola Pero <nicola.pero@meta-innovation.com>
1577
1578 * objc/objc.h: Updated comments.
1579 * objc/objc-api.h: (object_copy): Added one argument; use a
1580 #define to maintain backwards-compatibility. Moved
1581 _objc_object_alloc, _objc_object_copy, _objc_object_dispose and
1582 objc_get_uninstalled_dtable into
1583 objc/deprecated/objc_get_uninstalled_dtable.h and
1584 objc/deprecated/objc_object_alloc.h. Include these files.
1585 * objc/deprecated/objc_get_uninstalled_dtable.h: New.
1586 * objc/deprecated/objc_object_alloc.h: New.
1587 * objc/runtime.h (set_getName): New.
1588 (sel_getType): New.
1589 (sel_getUid): New.
1590 (sel_registerName): New.
1591 (sel_registerTypedName): New.
1592 (sel_isEqual): New.
1593 (class_createInstance): New.
1594 (object_copy): New.
1595 (object_dispose): New.
1596 * objects.c: Do not include tconfig.h. Include gc_typed.h if
1597 building the garbage collection version.
1598 (__objc_object_alloc): Removed.
1599 (__objc_object_copy): Removed.
1600 (__objc_object_dispose): Removed.
1601 (class_createInstance): New from code in class_create_instance.
1602 Cast second argument of GC_malloc_explicitly_typed. Use
1603 objc_calloc. Do not call _objc_object_alloc.
1604 (class_create_instance): Call class_createInstance.
1605 (object_copy): Added extraBytes argument. Do not call
1606 _objc_object_copy.
1607 (object_dispose): Do not call _objc_object_dispose.
1608 * memory.c (objc_free): When using garbage collection, mark the
1609 argument as unused.
1610 * selector.c (sel_getName): New.
1611 (sel_get_name): Call sel_getName.
1612 (sel_getType): New.
1613 (sel_get_type): Call sel_getType.
1614 (sel_registerName): New.
1615 (sel_register_name): Call sel_registerName.
1616 (sel_registerTypedName): New.
1617 (sel_register_typed_name): Call sel_registerTypedName.
1618 (sel_getUid): New.
1619 (sel_get_uid): Call sel_getUid.
1620
1621 2010-10-10 Nicola Pero <nicola.pero@meta-innovation.com>
1622
1623 * objc/objc-api.h: Define Method, Method_t, Category and
1624 Category_t. Prevent including this file at the same time as
1625 objc/runtime.h. Updated comments.
1626 * objc/deprecated/struct_objc_method.h: Do not define Method,
1627 Method_t.
1628 * objc/deprecated/struct_objc_category.h: Do not define Category,
1629 Category_t.
1630 * objc-private/module-abi-8.h: New file containing a copy of all
1631 the structure definitions. Not used yet.
1632 * objc/encoding.h (objc_aligned_size): Removed duplicate
1633 declaration. Updated comments.
1634 * objc/runtime.h: Added Ivar, objc_property_t, Property, Method,
1635 Category, struct objc_method_description, _C_ID and similar,
1636 _C_CONST and similar and _F_CONST and similar. Added
1637 objc_sizeof_type, objc_alignof_type, objc_aligned_size,
1638 objc_promoted_size, objc_skip_type_qualifier, objc_skip_typespec,
1639 objc_skip_offset, objc_skip_argspec, objc_get_type_qualifiers,
1640 struct objc_struct_layout, objc_layout_structure,
1641 objc_layout_structure_next_member, objc_layout_finish_structure,
1642 objc_layout_structure_get_info. Prevent including this file at
1643 the same time as objc/objc-api.h.
1644
1645 2010-10-10 Nicola Pero <nicola.pero@meta-innovation.com>
1646
1647 * Makefile.in (OBJC_DEPRECATED_H): Added struct_objc_category.h,
1648 struct_objc_ivar.h, struct_objc_ivar_list.h, struct_objc_method.h,
1649 struct_objc_method_list.h, struct_objc_module.h,
1650 struct_objc_protocol_list.h, struct_objc_symtab.h.
1651 * objc/deprecated/struct_objc_category.h: New.
1652 * objc/deprecated/struct_objc_ivar.h: New.
1653 * objc/deprecated/struct_objc_ivar_list.h: New.
1654 * objc/deprecated/struct_objc_method.h: New.
1655 * objc/deprecated/struct_objc_method_list.h: New.
1656 * objc/deprecated/struct_objc_module.h: New.
1657 * objc/deprecated/struct_objc_protocol_list.h: New.
1658 * objc/deprecated/struct_objc_symtab.h: New.
1659 * objc/deprecated/struct_objc_static_instances.h: New.
1660 * objc/objc-api.h: Definitions of deprecated structures moved into
1661 the above header fragment files in objc/deprecated/. Include the
1662 files instead of definition the structures here. Updated
1663 comments.
1664 * objc/runtime.h: Updated comments. Do not include objc-api.h.
1665 (objc_set_enumeration_mutation_handler): Renamed to
1666 objc_setEnumerationMutationHandler.
1667 * objc-foreach.c (objc_set_enumeration_mutation_handler): Renamed
1668 to objc_setEnumerationMutationHandler.
1669 * objc/objc-exception.h (objc_set_exception_matcher): Renamed to
1670 objc_setExceptionMatcher.
1671 (objc_set_uncaught_exception_handler): Renamed to
1672 objc_setUncaughtExceptionHandler.
1673 * exception.c: Same changes.
1674
1675 2010-10-10 Nicola Pero <nicola.pero@meta-innovation.com>
1676
1677 * objc-sync.c: Include objc-private/common.h.
1678
1679 2010-10-10 Nicola Pero <nicola.pero@meta-innovation.com>
1680
1681 * objc-foreach.c: Include objc-private/common.h.
1682 * objc/deprecated/METHOD_NULL.h: New file.
1683 * objc/objc-api.h: Include deprecated/METHOD_NULL.h instead of
1684 defining METHOD_NULL here.
1685 * Makefile.in (OBJC_DEPRECATED_H): Added METHOD_NULL.h.
1686 * Object.m ([+instancesRespondTo:]): Use (Method_t)0 instead of
1687 METHOD_NULL.
1688 ([-respondsTo:]): Same change.
1689 * objc/objc-api.h (method_get_imp): Converted it into a normal
1690 function so that we can hide the internals of struct objc_method.
1691 * sendmsg.c (method_get_imp): Implemented.
1692
1693 2010-10-09 Nicola Pero <nicola.pero@meta-innovation.com>
1694
1695 * objc/objc-api.h (struct objc_super, Super, Super_t,
1696 objc_msg_lookup_super, objc_msg_sendv, objc_msg_forward,
1697 objc_msg_forward2): Declarations moved to objc/message.h. Include
1698 message.h here.
1699 * objc/message.h: Added such declarations; updated comments.
1700
1701 2010-10-06 Nicola Pero <nicola.pero@meta-innovation.com>
1702
1703 Implemented fast enumeration for Objective-C.
1704 * Makefile.in (C_SOURCE_FILES): Added objc-foreach.c.
1705 (OBJC_H): Added runtime.h
1706 * objc-foreach.c: New file.
1707 * objc/runtime.h: New file.
1708
1709 2010-09-30 Kai Tietz <kai.tietz@onevision.com>
1710
1711 * objc/deprecated/struct_objc_class.h: Add padding
1712 to avoid warning with -Wpadded.
1713
1714 2010-09-26 Nicola Pero <nicola.pero@meta-innovation.com>
1715
1716 * encoding.c (objc_sizeof_type): Added support for vector type and
1717 for double long types.
1718 (objc_alignof_type): Same change.
1719 (objc_skip_typespec): Same change.
1720 * objc/encoding.h (_C_GCINVISIBLE): Use '|' for _C_GCINVISIBLE
1721 instead of '!' since '!' is already used for _C_VECTOR.
1722 * objc/objc-api.h (_C_LNG_DBL): Added.
1723
1724 2010-09-26 Nicola Pero <nicola.pero@meta-innovation.com>
1725
1726 * libobjc_entry.c: File removed.
1727
1728 2010-09-26 Kai Tietz <kai.tietz@onevision.com>
1729
1730 * sendmsg.c (objc_msg_lookup): Remove inline.
1731 (objc_get_uninstalled_dtable): Likewise.
1732 * encoding.c (objc_skip_type_qualifiers): Likewise.
1733 (objc_skip_offset): Likewise.
1734 * archive.c (__objc_write_object): Likewise
1735 (__objc_write_class):
1736 (__objc_write_selector):
1737 (objc_read_char):
1738 (objc_read_unsigned_char):
1739 (objc_read_short):
1740 (objc_read_unsigned_short):
1741 (objc_read_int):
1742 (objc_read_long):
1743 (__objc_read_nbyte_uint):
1744 (objc_read_unsigned_int):
1745 (objc_read_unsigned_long):
1746 * objc/objc-decls.h (obc_EXPORT): Remove dllexport for DLL_EXPORT case.
1747 (objc_EXPORT): Likewise.
1748 * objc/message.h (objc-decls.h): Add include.
1749 * objc/objc-api.h: Mark API by objc_EXPORT.
1750 * libobjc.def (__objc_responds_to): Removed.
1751
1752 2010-09-18 Nicola Pero <nicola.pero@meta-innovation.com>
1753
1754 * hash.c: Include objc-private/hash.h instead of objc/hash.h.
1755
1756 * objc/sarray.h: Moved into objc/deprecated/sarray.h;
1757 objc/sarray.h replaced with a placeholder including the file from
1758 the deprecated/ directory.
1759 * objc-private/sarray.h: New file (private copy of sarray.h).
1760 * hash.c: Include <assert.h> instead of "assert.h"
1761 * sarray.c: Include <assert.h> instead of "assert.h". Include
1762 objc-private/sarray.h instead of objc/sarray.h.
1763 * selector.c: Include objc-private/sarray.h instead of
1764 objc/sarray.h.
1765 * sendmsg.c: Include <assert.h>. Include objc-private/sarray.h
1766 instead of objc/sarray.h.
1767 * Makefile.in (OBJC_DEPRECATED_H): Added sarray.h.
1768
1769 2010-09-17 Nicola Pero <nicola.pero@meta-innovation.com>
1770
1771 * objc-private/objc-list.h (list_remove_elem): Unused function
1772 removed. (list_nth): Unused function removed. (list_find):
1773 Unused function removed. (list_lenght): Unused function removed.
1774
1775 2010-09-17 Nicola Pero <nicola.pero@meta-innovation.com>
1776
1777 * objc/hash.h: Moved into objc/deprecated/hash.h; objc/hash.h
1778 replaced with a placeholder including the file from the
1779 deprecated/ directory.
1780 * objc/objc-api.h: Updated includes.
1781 * objc/typedstream.h: Updated includes.
1782 * objc-private/hash.h: New file (private copy of hash.h).
1783 * objc/objc-list.h: Moved into objc/deprecated/objc-list.h;
1784 objc/objc-list.h replaced with a placeholder including the file
1785 from the deprecated/ directory.
1786 * objc-private/objc-list.h: New file (private copy of objc-list.h).
1787 * init.c: Include objc-private/hash.h and objc-private/objc-list.h
1788 instead of objc/hash.h and objc/objc-list.h.
1789 * selector.c: Same change.
1790 * class.c: Added include <string.h>, which used to be implicitly included
1791 when hash.h was included.
1792 * exception.c: Same change.
1793 * objects.c: Same change.
1794 * sarray.c: Same change.
1795 * sendmsg.c: Same change.
1796 * Makefile.in (OBJC_DEPRECATED_H): Added hash.h and objc-list.h.
1797
1798 2010-09-14 Nicola Pero <nicola.pero@meta-innovation.com>
1799
1800 Implemented objc_sync_enter() and objc_sync_exit(), which are
1801 required by @synchronized() to work.
1802 * objc-sync.c: New file.
1803 * objc/objc-sync.h: New file.
1804 * objc-private/objc-sync.h: New file.
1805 * init.c (__objc_exec_class): Call __objc_sync_init() during the
1806 Objective-C runtime startup.
1807 * Makefile.in: Added objc-sync.c and objc-sync.h.
1808 * configure.ac: Added GCC_CHECK_TLS.
1809 * acinclude.m4: Include ../config/enable.m4 and ../config/tls.m4.
1810 * configure: Regenerated.
1811 * config.h.in: Regenerated.
1812
1813 2010-09-12 Nicola Pero <nicola.pero@meta-innovation.com>
1814
1815 * Makefile.in (%_gc.lo): New pattern rules to build the
1816 garbage-collected version of the library. Removed rules for
1817 specific files that are no longer needed. Standardized all rules.
1818 (C_SOURCE_FILES, OBJC_SOURCE_FILES): New variables.
1819 (OBJS, OBJS_GC): Compute these from C_SOURCE_FILES and
1820 OBJC_SOURCE_FILES.
1821 (INCLUDES): Removed the unused include -I$(srcdir)/objc.
1822
1823 2010-09-12 Nicola Pero <nicola.pero@meta-innovation.com>
1824
1825 * memory.c (objc_calloc): Fixed call to GC_malloc when building
1826 with Garbage Colletion.
1827
1828 2010-09-12 Nicola Pero <nicola.pero@meta-innovation.com>
1829
1830 * memory.c: Do not include objc-private/runtime.h.
1831
1832 2010-09-12 Nicola Pero <nicola.pero@meta-innovation.com>
1833
1834 * objc/deprecated/objc_malloc.h: New file.
1835 * objc/deprecated/objc_valloc.h: New file.
1836 * objc/objc-api.h: Include the files instead of defining
1837 objc_valloc, _objc_malloc() and similar.
1838 * Makefile.in (OBJC_DEPRECATED_H): Added objc_valloc.h and
1839 objc_malloc.h.
1840 * memory.c: Removed the extra layer of indirection of _objc_malloc
1841 and similar.
1842 (objc_calloc): Use GC_malloc in the garbage-collected
1843 implementation as GC_malloc returns memory that is already freed.
1844 (objc_valloc): Deprecated.
1845
1846 2010-09-12 Nicola Pero <nicola.pero@meta-innovation.com>
1847
1848 * objc/deprecated/objc_error.h: New file.
1849 * objc/objc-api.h: Include deprecated/objc_error.h instead of
1850 defining objc_error and related.
1851 * error.c: New file. Added _objc_abort function which replaces
1852 objc_error. No change in functionality as they both print an
1853 error and abort.
1854 * misc.c: File removed. Code moved into memory.c and error.c.
1855 * memory.c: New file.
1856 * objc-private/error.h: New file.
1857 * archive.c: Include objc-private/error.h and use _objc_abort
1858 instead of objc_error everywhere.
1859 * class.c: Same change.
1860 * encoding.c: Same change.
1861 * init.c: Same change, and simplified init_check_module_version.
1862 * memory.c: Same change.
1863 * sendmsg.c: Same change.
1864 * thr.c: Same change.
1865 * Makefile.in (OBJ_DEPRECATED_H): Added objc_error.h.
1866 (OBJ_H): Reordered list.
1867 (OBJS): Removed misc.lo, added memory.lo and error.lo.
1868 (OBJS_GC): Removed misc_gc.lo, added memory_gc.lo and error_gc.lo.
1869 (misc_gc.lo): Rule removed.
1870 (error_gc.lo): Rule added.
1871 (memory_gc.lo): Rule added.
1872
1873 2010-09-12 Nicola Pero <nicola.pero@meta-innovation.com>
1874
1875 * objc/objc.h (__GNU_LIBOBJC__): New #define providing an easy way
1876 to check the API version. Added some comments.
1877
1878 * objc-private/common.h: New file.
1879 * NXConstStr.m: Include objc-private/common.h.
1880 * Object.m: Same change.
1881 * Protocol.m: Same change.
1882 * archive.c: Same change.
1883 * class.c: Same change.
1884 * encoding.c: Same change.
1885 * exception.c: Same change.
1886 * gc.c: Same change.
1887 * hash.c: Same change.
1888 * init.c: Same change.
1889 * libobjc_entry.c: Same change.
1890 * linking.m: Same change.
1891 * misc.c: Same change (and added a comment).
1892 * nil_method.c: Same change.
1893 * objects.c: Same change.
1894 * sarray.c: Same change.
1895 * selector.c: Same change.
1896 * sendmsg.c: Same change.
1897 * thr.c: Same change.
1898
1899 2010-09-11 Nicola Pero <nicola.pero@meta-innovation.com>
1900
1901 * objc/objc-api.h: Removed obsolete #ifdef for NeXTSTEP.
1902
1903 2010-09-11 Nicola Pero <nicola.pero@meta-innovation.com>
1904
1905 * archive.c: Removed not needed includes.
1906 * class.c: Same change.
1907 * hash.c: Same change.
1908 * misc.c: Same change.
1909 * nil_method.c: Same change.
1910 * objects.c: Same change.
1911 * sarray.c: Same change.
1912 * sendmsg.c: Same change.
1913 * thr.c: Same change.
1914
1915 2010-09-11 Nicola Pero <nicola.pero@meta-innovation.com>
1916
1917 * objc/runtime.h: Moved to objc-private/runtime.h. Do not include
1918 all the objc/*.h files.
1919 * objc-private/runtime.h: New file.
1920 * archive.c: Include objc-private/runtime.h (and required objc/*.h
1921 files) instead of objc/runtime.h.
1922 * class.c: Same change.
1923 * hash.c: Same change.
1924 * init.c: Same change.
1925 * misc.c: Same change.
1926 * nil_method.c: Same change.
1927 * objects.c: Same change.
1928 * sarray.c: Same change.
1929 * selector.c: Same change.
1930 * sendmsg.c: Same change.
1931 * thr.c: Same change.
1932
1933 2010-09-11 Nicola Pero <nicola.pero@meta-innovation.com>
1934
1935 * objc/deprecated/struct_objc_selector.h: New file. Definition of
1936 'struct objc_selector' and 'sel_eq' moved here.
1937 * objc/deprecated/struct_objc_protocol.h: New file. Definition of
1938 'struct objc_procotol' moved here.
1939 * objc/deprecated/struct_objc_class.h: New file. Definition of
1940 'struct objc_class' moved here.
1941 * objc/deprecated/MetaClass.h: New file. Definition of MetClass
1942 moved here.
1943 * objc/deprecated/STR.h: New file. Definition of STR moved here.
1944 * objc/message.h: New file. Definitions for relval_t, apply_t,
1945 arglist, arglist_t and objc_msg_lookup were moved here.
1946 * objc/objc.h: Include the above files instead of defining the
1947 corresponding structs, types and functions here. Added new opaque
1948 definitions for SEL and Class. Use Class and not 'struct
1949 objc_class *' in the definition of 'struct objc_object'.
1950 Commented all types defined in the file. Removed special
1951 definition of BOOL as 'int' on __vxworks; use 'unsigned char'
1952 there as well.
1953 * objc/deprecated/objc-unexpected-exception.h: Renamed to
1954 objc_unexpected_exception.h.
1955 * objc/objc-api.h: Updated include of
1956 objc-unexpetected-exception.h
1957 * objc/objc-exception.h: Updated comments.
1958 * Makefile.in (OBJC_H, OBJC_DEPRECATED_H): Added the new header
1959 files. Reindented list of files.
1960
1961 2010-09-10 Nicola Pero <nicola.pero@meta-innovation.com>
1962
1963 * objc/objc-api.h (objc_trace): Unused variable removed.
1964
1965 2010-09-10 Nicola Pero <nicola.pero@meta-innovation.com>
1966
1967 * objc/deprecated: New directory.
1968 * objc/deprecated/README: New file.
1969 * objc/README: New file.
1970 * objc/typedstream.h: Moved into objc/deprecated/typedstream.h;
1971 objc/typedstream.h replaced with a placeholder including the file
1972 from the deprecated/ directory.
1973 * objc/deprecated/objc-unexpected-exception.h: New file with the
1974 definition of _objc_unexpected_exception.
1975 * objc/objc-api.h: Include deprecated/objc-unexcepted-exception.h
1976 instead of defining _objc_unexpected_exception.
1977 * objc/deprecated/Object.h: New file with the deprecated Object
1978 methods in a 'Deprecated' category.
1979 * objc/Object.h Include deprecated/Object.h instead of defining
1980 the deprecated methods.
1981 * Object.m: Moved deprecated methods into 'Deprecated' category.
1982 * objc-private: New directory.
1983 * objc-private/README: New file.
1984 * Makefile.in (OBJC_DEPRECATED_H): New variable.
1985 (install-headers): Create installation directory for
1986 OBJC_DEPRECATED_H headers, and install them.
1987
1988 2010-09-10 Nicola Pero <nicola.pero@meta-innovation.com>
1989
1990 * objc/objc-exception.h: Fixed include of objc.h.
1991
1992 2010-09-08 Nicola Pero <nicola.pero@meta-innovation.com>
1993
1994 * objc/objc-exception.h: New file.
1995 * exception.c (objc_set_uncaught_exception_handler): Implemented.
1996 (objc_set_exception_matcher): Implemented.
1997 (objc_exception_throw): Use the uncaught exception handler if set.
1998 (PERSONALITY_FUNCTION): Use the exception matcher instead of the
1999 hardcoded isKindOf.
2000 (isKindOf): Renamed to is_kind_of_exception_matcher. Tidied code
2001 up. Removed segmentation fault when value is 'nil'.
2002 * objc/objc-api.h (_objc_unexpected_exception): Mark as
2003 deprecated.
2004 * Makefile.in (exception.lo, exception_gc.lo): Use
2005 -Wno-deprecated-declarations when compiling.
2006 (OBJC_H): Added objc-exception.h
2007
2008 2010-09-08 Nicola Pero <nicola.pero@meta-innovation.com>
2009
2010 * objc/typedstream.h: Deprecate all functions in the file. This
2011 file is obsolete.
2012 * objc/Object.h ([+streamVersion:], [-read:], [-write:],
2013 [-awake]): Documented that these methods are deprecated. Added a
2014 brief description of the Object class and its relationship to the
2015 NSObject class.
2016 * Makefile.in: Compile archive.c and Object.m with
2017 -Wno-deprecated-declarations.
2018
2019 2010-09-08 Nicola Pero <nicola.pero@meta-innovation.com>
2020
2021 Removed obsolete intermediate threading layer.
2022 * thr.c: Use __gthread_objc_xxx functions directly instead of
2023 __objc_thread_xxx ones.
2024 * objc/thr.h: Removed prototypes of no longer existing
2025 __objc_thread_xxx functions.
2026 * Makefile.in: Removed thr-objc.lo.
2027 * thr-dce.c: File removed.
2028 * thr-decosf1.c: File removed.
2029 * thr-irix.c: File removed.
2030 * thr-mach.c: File removed.
2031 * thr-objc.c: File removed.
2032 * thr-os2.c: File removed.
2033 * thr-posix.c: File removed.
2034 * thr-pthreads.c: File removed.
2035 * thr-rtems.c: File removed.
2036 * thr-single.c: File removed.
2037 * thr-solaris.c: File removed.
2038 * thr-vxworks.c: File removed.
2039 * thr-win32.c: File removed.
2040 * README.threads: File removed.
2041 * THREADS.MACH: File removed.
2042 * THREADS: Updated.
2043
2044 2010-09-07 Nicola Pero <nicola.pero@meta-innovation.com>
2045
2046 * Object.m (MAX_CLASS_NAME_LEN): Unused define removed.
2047
2048 2010-09-06 Iain Sandoe <iains@gcc.gnu.org>
2049
2050 * encoding.c: Add TARGET_ALIGN_NATURAL definition for m64 powerpc darwin.
2051 Add a comment as to why, update FIXME comments.
2052
2053 2010-09-06 Nicola Pero <nicola.pero@meta-innovation.com>
2054
2055 * makefile.dos: Obsolete file removed.
2056
2057 2010-04-02 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2058
2059 * aclocal.m4: Regenerate.
2060
2061 2010-03-23 Dave Korn <dave.korn.cygwin@gmail.com>
2062
2063 PR libobjc/30445
2064 * configure.ac (extra_ldflags_libobjc): Define appropriately for
2065 Cygwin and MinGW hosts.
2066 * Makefile.am (libobjc_s.a): Remove dead pre-libtool target.
2067 (libobjc.dll): Likewise.
2068 * configure: Regenerate.
2069
2070 2009-12-05 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2071
2072 * configure: Regenerate.
2073
2074 2009-11-28 Jakub Jelinek <jakub@redhat.com>
2075
2076 * sarray.c (sarray_free): Use old_buckets variable.
2077 * encoding.c (objc_layout_structure_next_member): Remove unused
2078 bfld_type_size variable.
2079
2080 2009-08-24 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2081
2082 * configure.ac (AC_PREREQ): Bump to 2.64.
2083
2084 2009-08-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2085
2086 * aclocal.m4: Regenerate.
2087 * configure: Regenerate.
2088 * config.h.in: Regenerate.
2089
2090 2009-08-22 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2091
2092 * Makefile.in (LIBTOOL): Add $(LIBTOOLFLAGS).
2093
2094 2009-07-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2095
2096 * Makefile.in (AUTOCONF, ACLOCAL, ACLOCAL_AMFLAGS, aclocal_deps):
2097 New variables.
2098 ($(srcdir)/configure, $(srcdir)/aclocal.m4): New rules.
2099
2100 2009-07-30 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2101
2102 * configure.ac (_AC_ARG_VAR_PRECIOUS): Use m4_rename_force.
2103
2104 2009-04-09 Nick Clifton <nickc@redhat.com>
2105
2106 * sendmsg.c: Change copyright header to refer to version 3 of
2107 the GNU General Public License with version 3.1 of the GCC
2108 Runtime Library Exception and to point readers at the COPYING3
2109 and COPYING3.RUNTIME files and the FSF's license web page.
2110 * NXConstStr.m: Likewise.
2111 * Object.m: Likewise.
2112 * Protocol.m: Likewise.
2113 * archive.c: Likewise.
2114 * class.c: Likewise.
2115 * encoding.c: Likewise.
2116 * exception.c: Likewise.
2117 * gc.c: Likewise.
2118 * hash.c: Likewise.
2119 * init.c: Likewise.
2120 * libobjc_entry.c: Likewise.
2121 * linking.m: Likewise.
2122 * misc.c: Likewise.
2123 * nil_method.c: Likewise.
2124 * objc/NXConstStr.h: Likewise.
2125 * objc/Object.h: Likewise.
2126 * objc/Protocol.h: Likewise.
2127 * objc/encoding.h: Likewise.
2128 * objc/hash.h: Likewise.
2129 * objc/objc-api.h: Likewise.
2130 * objc/objc-decls.h: Likewise.
2131 * objc/objc-list.h: Likewise.
2132 * objc/objc.h: Likewise.
2133 * objc/runtime.h: Likewise.
2134 * objc/sarray.h: Likewise.
2135 * objc/thr.h: Likewise.
2136 * objc/typedstream.h: Likewise.
2137 * objects.c: Likewise.
2138 * sarray.c: Likewise.
2139 * selector.c: Likewise.
2140 * thr-dce.c: Likewise.
2141 * thr-decosf1.c: Likewise.
2142 * thr-irix.c: Likewise.
2143 * thr-mach.c: Likewise.
2144 * thr-objc.c: Likewise.
2145 * thr-os2.c: Likewise.
2146 * thr-posix.c: Likewise.
2147 * thr-pthreads.c: Likewise.
2148 * thr-rtems.c: Likewise.
2149 * thr-single.c: Likewise.
2150 * thr-solaris.c: Likewise.
2151 * thr-vxworks.c: Likewise.
2152 * thr-win32.c: Likewise.
2153 * thr.c: Likewise.
2154 * libobjc.def: Change copyright header to refer to version 3 of
2155 the GNU General Public License and to point readers at the COPYING3
2156 file and the FSF's license web page.
2157 * makefile.dos: Likewise.
2158
2159 2009-04-09 Jakub Jelinek <jakub@redhat.com>
2160
2161 * Makefile.in: Change copyright header to refer to version
2162 3 of the GNU General Public License and to point readers at the
2163 COPYING3 file and the FSF's license web page.
2164 * configure.ac: Likewise.
2165
2166 2009-03-12 Richard Frith-Macdonald <rfm@gnu.org>
2167 David Ayers <ayers@fsfe.org>
2168
2169 PR libobjc/27466
2170 * objc/objc-api.h (_objc_unexpected_exception): Declare
2171 new hook. Update copyright dates.
2172 * exception.c (objc_exception_throw): Use hook. Update
2173 copyright dates.
2174 * libobjc.def (_objc_unexpected_exception): Export hook.
2175 Update copyright dates.
2176
2177 2009-03-01 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2178
2179 * configure: Regenerate.
2180
2181 2008-12-18 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2182
2183 * configure: Regenerate.
2184
2185 2008-11-21 Kai Tietz <kai.tietz@onevision.com>
2186
2187 * Object.m (errno): Replaced by errno.h include.
2188 (compare): Cast self to id to prevent warning on comparison.
2189 * objc/objc.h (BOOL): Prevent redeclaration of BOOL, if it is
2190 already there.
2191 * sendmsg.c (__objc_print_dtable_stats): Remove type warnings.
2192 * thr-win32.c (__objc_thread_detach): Remove type warning.
2193 (__objc_thread_id): Likewise.
2194 * thr.c (__objc_thread_detach_functiont): Add __builtin_trap ()
2195 for noreturn.
2196
2197 2008-09-26 Peter O'Gorman <pogma@thewrittenword.com>
2198 Steve Ellcey <sje@cup.hp.com>
2199
2200 * configure: Regenerate for new libtool.
2201 * config.h.in: Regenerate for new libtool.
2202
2203 2008-07-18 Matthias Klose <doko@ubuntu.com>
2204
2205 * Makefile.in: Ignore missing ../boehm-gc/threads.mk.
2206
2207 2008-07-18 Matthias Klose <doko@ubuntu.com>
2208
2209 * Makefile.in: Include ../boehm-gc/threads.mk.
2210 (OBJC_BOEHM_GC_LIBS): Define, (libobjc_gc$(libsuffix).la): Use it.
2211
2212 2008-07-06 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2213
2214 * Makefile.in (install-info): New stub target.
2215
2216 2008-06-17 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
2217
2218 * configure: Regenerate.
2219
2220 2008-06-14 Kai Tietz <kai.tietz@onevision.com>
2221
2222 * exception.c (PERSONALITY_FUNCTION): Remove extra decrement
2223 if HAVE_GETIPINFO is not defined.
2224
2225 2008-06-10 Kai Tietz <kai.tietz@onevision.com>
2226
2227 * Object.m (compare): Add type id.
2228 * objc/Object.h: Likewise.
2229 * archive.c (objc_read_class): Use size_t to extend version to be
2230 size of pointer scalar width.
2231 * sendmsg.c (rtx): Undefine it before redefinition.
2232 (__objc_print_dtable_stats): Cast arguments to long as intended.
2233
2234 2008-05-30 Julian Brown <julian@codesourcery.com>
2235
2236 * exception.c (__objc_exception_class): Initialise as constant
2237 array for ARM EABI. Change macro to static const for non-ARM EABI.
2238 (ObjcException): Add note about structure layout. Remove landingPad
2239 and handlerSwitchValue for ARM EABI.
2240 (get_ttype_entry): Add __ARM_EABI_UNWINDER__ version
2241 of function.
2242 (CONTINUE_UNWINDING): Define for ARM EABI/otherwise cases.
2243 (PERSONALITY_FUNCTION): Use ARM EABI-specific arguments, and add
2244 ARM EABI unwinding support.
2245 (objc_exception_throw): Use memcpy to initialise exception class.
2246
2247 2008-05-25 Alan Modra <amodra@bigpond.net.au>
2248
2249 * encoding.c (strip_array_types): Rename from get_inner_array_type.
2250 (rs6000_special_round_type_align): Update.
2251
2252 2008-05-09 Julian Brown <julian@codesourcery.com>
2253
2254 * Makefile.in (LTLDFLAGS): New.
2255 (libobjc$(libsuffix).la, libobjc_gc$(libsuffix).la): Use above.
2256
2257 2008-04-18 Paolo Bonzini <bonzini@gnu.org>
2258
2259 PR bootstrap/35457
2260 * aclocal.m4: Regenerate.
2261 * configure: Regenerate.
2262
2263 2008-01-24 David Edelsohn <edelsohn@gnu.org>
2264
2265 * configure: Regenerate.
2266
2267 2007-10-14 H.J. Lu <hongjiu.lu@intel.com>
2268
2269 * configure.ac: Don't run config-ml.in directly.
2270 (multilib_arg): New.
2271 * configure: Regenerated.
2272
2273 2007-08-06 Andrew Pinski <pinskia@gmail.com>
2274
2275 PR libobjc/30731
2276 * exception.c (parse_lsda_header): Use _uleb128_t/_sleb128_t instead
2277 of _Unwind_Word for variables which are used in
2278 read_uleb128/read_sleb128.
2279 (PERSONALITY_FUNCTION): Likewise.
2280
2281 2007-07-05 H.J. Lu <hongjiu.lu@intel.com>
2282
2283 * aclocal.m4: Regenerated.
2284
2285 2007-06-03 Andrew Pinski <andrew_pinski@playstation.sony.com>
2286
2287 * configure.ac: Fix a typo in *-*-darwin clause.
2288 * configure: Regenerated.
2289
2290 2007-06-02 H.J. Lu <hongjiu.lu@intel.com>
2291
2292 * configure.ac: Fix a typo.
2293 * configure: Regenerated.
2294
2295 2007-06-02 Paolo Bonzini <bonzini@gnu.org>
2296
2297 * configure: Regenerate.
2298
2299 2007-06-01 Andrew Pinski <andrew_pinski@playstation.sony.com>
2300
2301 * Makefile.in: Replace all uses of libext with libsuffix.
2302 * configure.ac: Likewise.
2303 * configure: Regenerate.
2304
2305 Revert:
2306 * Makefile.in: Remove all uses of $(libext).
2307
2308 2007-05-23 Andrew Pinski <andrew_pinski@playstation.sony.com>
2309
2310 * Makefile.in: Remove all uses of $(libext).
2311
2312 2007-05-23 Steve Ellcey <sje@cup.hp.com>
2313
2314 * configure: Regenerate.
2315 * aclocal.m4: Regenerate.
2316
2317 2007-04-21 Andrew Ruder <andy@aeruder.net>
2318
2319 * sendmsg.c (__objc_get_forward_imp): Call
2320 __objc_msg_forward2 for real.
2321
2322 2007-04-09 Andrew Ruder <andy@aeruder.net>
2323
2324 * sendmsg.c: Added __objc_msg_forward2, a hook that allows
2325 external libraries to provide a function that returns the real
2326 forwarding function based on both the selector and the receiver.
2327 * objc/objc-api.h: Define __objc_msg_forward2.
2328
2329 2007-03-01 Brooks Moses <brooks.moses@codesourcery.com>
2330
2331 * Makefile.in: Add dummy install-pdf target.
2332
2333 2007-02-18 Manuel Lopez-Ibanez <manu@gcc.gnu.org>
2334
2335 * objc/objc-list.h (list_free): Add keyword 'inline' to avoid
2336 unused warning.
2337
2338 2006-10-31 Geoffrey Keating <geoffk@apple.com>
2339
2340 * encoding.c (darwin_rs6000_special_round_type_align): New.
2341
2342 2006-10-14 Geoffrey Keating <geoffk@apple.com>
2343
2344 * Makefile.in: Use multi_basedir instead of toplevel_srcdir.
2345 * configure.ac: Use multi.m4 from aclocal rather than custom
2346 code. Use multi_basedir instead of toplevel_srcdir.
2347 * aclocal.m4: Regenerate.
2348 * configure: Regenerate.
2349
2350 2006-10-10 Brooks Moses <bmoses@stanford.edu>
2351
2352 * Makefile.in: Added empty "pdf" target.
2353
2354 2006-07-18 Paolo Bonzini <bonzini@gnu.org>
2355
2356 * configure: Regenerate.
2357
2358 2006-05-23 Carlos O'Donell <carlos@codesourcery.com>
2359
2360 * Makefile.in: Add install-html target. Add install-html to .PHONY
2361
2362 2006-02-21 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2363
2364 PR libobjc/26309
2365 * thr-objc.c (_XOPEN_SOURCE): Don't define on Tru64 UNIX.
2366
2367 2006-01-24 David Ayers <d.ayers@inode.at>
2368
2369 PR libobjc/9751
2370 * gc.c (class_ivar_set_gcinvisible): Replace strncpy with memcpy
2371 and insure the new strings are '\0' termintated.
2372
2373 2006-01-24 David Ayers <d.ayers@inode.at>
2374
2375 PR libobjc/13946
2376 * configure.ac: Add include directives for --enable-objc-gc.
2377 * Makefile.in: Ditto.
2378 * configure: Regenerate.
2379
2380 * gc.c (__objc_class_structure_encoding): Increment the used bytes
2381 instead of the local pointer to them.
2382
2383 2005-12-14 Andrew Pinski <pinskia@physics.uc.edu>
2384
2385 PR objc/25360
2386 * objc/objc-api.c (_C_COMPLEX): New define.
2387 * encoding.c (objc_sizeof_type): Handle _C_Complex.
2388 (objc_alignof_type): Likewise.
2389 (objc_skip_typespec): Likewise.
2390
2391 2005-12-15 David Ayers <d.ayers@inode.at>
2392
2393 PR libobjc/14382
2394 * README (+load,+initialize): Fix documentation to reflect
2395 intended and implemented semantics for +load and +initialize.
2396
2397 2005-12-12 Andrew Pinski <pinskia@physics.uc.edu>
2398
2399 * encoding.c (TYPE_FIELDS): Fix to skip over just _C_STRUCT_B and
2400 the name.
2401 (get_inner_array_type): Fix to skip over _C_ARY_B and size.
2402 (rs6000_special_round_type_align): Update for the ABI fix.
2403 (objc_layout_finish_structure): Correct the encoding which is passed to
2404 ROUND_TYPE_ALIGN.
2405
2406 2005-12-11 Andrew Pinski <pinskia@physics.uc.edu>
2407
2408 PR libobjc/25347
2409 * encoding.c (objc_sizeof_type): Don't handle _C_UNION_B special
2410 but use the struct layout functions.
2411 (objc_alignof_type): Likewise.
2412 (objc_layout_structure): Handle _C_UNION_B also.
2413 (objc_layout_structure_next_member): Likewise.
2414 (objc_layout_finish_structure): Likewise.
2415
2416 2005-12-11 Andrew Pinski <pinskia@physics.uc.edu>
2417
2418 PR libobjc/25346
2419 * objc/objc-api.h (_C_BOOL): New define.
2420 * encoding.c (objc_sizeof_type): Handle _C_BOOL.
2421 (objc_alignof_type): Likewise.
2422 (objc_skip_typespec): Likewise.
2423
2424 2005-11-20 David Ayers <d.ayers@inode.at>
2425
2426 PR libobjc/19024
2427 * objc/hash.h: Remove deprecated hash API.
2428 * hash_compat.c: Remove.
2429 * Makefile.in: Remove reference to hash_compat.c.
2430
2431 * configure.ac (VERSION): Bump library version to 2:0:0.
2432 * configure: Regenerate.
2433
2434 2005-11-09 Alexandre Oliva <aoliva@redhat.com>
2435
2436 PR other/4372
2437 * thr-objc.c (_XOPEN_SOURCE): Define.
2438
2439 2005-10-07 Ulrich Weigand <uweigand@de.ibm.com>
2440
2441 PR libobjc/23612
2442 * objc/objc-api.h (struct objc_ivar): Move definition to
2443 global scope.
2444
2445 2005-09-04 Andrew Pinski <pinskia@physics.uc.edu>
2446 Rasmus Hahn <rassahah@neofonie.de>
2447
2448 PR libobjc/23108
2449 * archive.c (objc_write_type): Correct the element offset.
2450 (objc_read_type): Likewise.
2451
2452 2005-08-17 Kelley Cook <kcook@gcc.gnu.org>
2453
2454 * All files: Update FSF address.
2455
2456 2005-08-13 Marcin Koziej <creep@desk.pl>
2457 Andrew Pinski <pinskia@physics.uc.edu>
2458
2459 PR libobjc/22492
2460 * exception.c (PERSONALITY_FUNCTION): Fix the PC with finally.
2461
2462 2005-08-13 Andrew Pinski <pinskia@physics.uc.edu>
2463
2464 * Makefile.in (extra_ldflags_libobjc): New.
2465 (libobjc$(libext).la): Add extra_ldflags_libobjc to the link line.
2466 (libobjc_gc$(libext).la): Likewise.
2467 * configure.ac (extra_ldflags_libgfortran): Set for *-darwin* to
2468 "-Wl,-single_module".
2469 * configure: Regenerate.
2470 * linking.m (_objcInit): Remove.
2471
2472 2005-07-26 Andrew Pinski <pinskia@physics.uc.edu>
2473
2474 PR libobjc/22606
2475 * Makefile.in (ALL_CFLAGS): Add -fexceptions.
2476
2477 2005-06-08 David Ayers <d.ayers@inode.at>
2478
2479 * objc/NXConstStr.h, objc/Object.h, objc/Protocol.h,
2480 objc/encoding.h, objc/hash.h, objc/objc-api.h,
2481 objc/runtime.h, objc/sarray.h, objc/thr.h,
2482 objc/typedstream.h: Do not include Objective-C headers as
2483 system headers.
2484
2485 2005-06-07 David Ayers <d.ayers@inode.at>
2486
2487 * archive.c, init.c, selector.c: Include hash.h.
2488 * archive.c, class.c, encoding.c, gc.c, hash.c, hash_compat.c,
2489 init.c, misc.c, nil_method.c, objects.c, sarray.c, selector.c,
2490 sendmsg.c, thr-dce.c, thr-decosf1.c, thr-irix.c, thr-mach.c,
2491 thr-objc.c, thr-os2.c, thr-posix.c, thr-pthreads.c, thr-rtems.c,
2492 thr-single.c, thr-solaris.c, thr-vxworks.c, thr-win32.c, thr.c:
2493 Include Objective-C headers with quotes and objc/ directory
2494 prefix.
2495
2496 2005-05-19 Richard Henderson <rth@redhat.com>
2497
2498 * exception.c: Revert last change.
2499
2500 2005-05-19 David Ayers <d.ayers@inode.at>
2501
2502 * exception.c: Include tsystem.h for unwind.h.
2503
2504 2005-05-09 Mike Stump <mrs@apple.com>
2505
2506 * configure: Regenerate.
2507
2508 2005-04-12 Mike Stump <mrs@apple.com>
2509
2510 * configure: Regenerate.
2511
2512 2005-03-21 Zack Weinberg <zack@codesourcery.com>
2513
2514 * Makefile.in: Set gcc_version here.
2515 * configure.ac: Do not invoke TL_AC_GCC_VERSION. Adjust quoting
2516 in definition of toolexeclibdir so that $(gcc_version) is expanded
2517 by the Makefile.
2518 * aclocal.m4, configure: Regenerate.
2519
2520 2005-03-03 David Ayers <d.ayers@inode.at>
2521
2522 * objc/hash.h (OBJC_IGNORE_DEPRECATED_API): Update deprecated
2523 version reference. Correct typo.
2524
2525 2005-03-02 David Ayers <d.ayers@inode.at>
2526
2527 PR libobjc/19024
2528 * Makefile.in (OBJS): Add hash_compat.lo.
2529 (OBJS_GC): Add hash_compat_gc.lo.
2530 (hash_compat_gc.lo): New target and rule.
2531 * objc/hash.h (hash_new, hash_delete, hash_add, hash_remove)
2532 (hash_next, hash_value_for_key, hash_is_key_in_hash)
2533 (hash_ptr, hash_string, compare_ptrs, compare_strings): Prefix
2534 with objc_. Add deprecated non prefixed inlined versions.
2535 (OBJC_IGNORE_DEPRECATED_API): New macro to hide deprecated
2536 declarations.
2537 * hash.c (hash_new, hash_delete, hash_add, hash_remove, hash_next)
2538 (hash_value_for_key, hash_is_key_in_hash): Prefix with objc_ and
2539 update callers.
2540 * hash_compat.c: New file.
2541 * archive.c: Update callers.
2542 * init.c: Likewise.
2543 * selector.c: Likewise.
2544 * libobjc.def: Add objc_ versions of hash functions.
2545
2546 2005-02-28 Andrew Pinski <pinskia@physics.uc.edu>
2547
2548 PR libobjc/20252
2549 * Makefile.in (GTHREAD_FLAGS): Remove.
2550 (ALL_CFLAGS): Remove usage of GTHREAD_FLAGS.
2551 * thr-objc.c: Include config.h.
2552 * configure.ac: Instead of looking at GCC's makefile, figure out if
2553 GTHREAD_FLAGS should be defined by looking at the `thread model'
2554 of the current gcc.
2555 * configure: Regenerate.
2556 * config.h.in: Regenerate.
2557
2558 2005-02-28 Paolo Bonzini <bonzini@gnu.org>
2559
2560 PR bootstrap/17383
2561 * configure.ac: Call GCC_TOPLEV_SUBDIRS.
2562 (Determine CFLAGS for gthread): Use $host_subdir.
2563 * configure: Regenerate.
2564 * Makefile.in (host_subdir): New.
2565 (INCLUDES): Use it.
2566
2567 2004-12-20 Andrew Pinski <pinskia@physics.uc.edu>
2568
2569 PR libobjc/12035
2570 * gc.c: Remove definition of LOGWL, modWORDSZ, and divWORDSZ since
2571 they are not used.
2572 Include limits.h and stdlib.h.
2573 Define BITS_PER_WORD.
2574
2575 2004-12-12 Alexander Malmberg <alexander@malmberg.org>
2576
2577 * selector.c (__objc_init_selector_tables): Add missing void to
2578 definition.
2579
2580 2004-12-02 Richard Sandiford <rsandifo@redhat.com>
2581
2582 * configure.ac: Use TL_AC_GCC_VERSION to set gcc_version.
2583 * configure, aclocal.m4: Regenerate.
2584
2585 2004-11-29 Kelley Cook <kcook@gcc.gnu.org>
2586
2587 * configure: Regenerate for libtool change.
2588
2589 2004-11-25 Kelley Cook <kcook@gcc.gnu.org>
2590
2591 * configure: Regenerate for libtool reversion.
2592
2593 2004-11-24 Kelley Cook <kcook@gcc.gnu.org>
2594
2595 * configure: Regenerate for libtool change.
2596
2597 2004-11-24 Kelley Cook <kcook@gcc.gnu.org>
2598
2599 * aclocal.m4, config.h.in: Regenerate.
2600
2601 2004-10-08 Mike Stump <mrs@apple.com>
2602 Andrew Pinski <pinskia@physics.uc.edu>
2603
2604 * aclocal.m4: Rename to ...
2605 * acinclude.m4: here and also use m4_include instead of sinclude.
2606 * aclocal.m4: Regenerate.
2607 * configure: Regenerate.
2608 * configure.ac: Add AM_MAINTAINER_MODE and AM_PROG_CC_C_O.
2609 * Makefile.in (configure): Add @MAINT@ infront of configure.ac
2610
2611 2004-10-08 Andrew Pinski <pinskia@physics.uc.edu>
2612
2613 * archive.c: Fix all the warnings about passing unsigned char*
2614 to char* and the other way too.
2615
2616 2004-09-16 Andrew Pinski <pinskia@physics.uc.edu>
2617
2618 PR libobjc/16448
2619 * exception.c: Include config.h
2620 (objc_exception_throw): Change _GLIBCXX_SJLJ_EXCEPTIONS to
2621 SJLJ_EXCEPTIONS.
2622 * configure.ac: Find out what exception handling code we use.
2623 * configure: Regenerate.
2624 * config.h.in: New file, regenerate.
2625
2626 2004-09-16 Andrew Pinski <apinski@apple.com>
2627
2628 * encoding.c (ALTIVEC_VECTOR_MODE): Define a bogus macro.
2629
2630 2004-08-28 Nathanael Nerode <neroden@gcc.gnu.org>
2631
2632 * configure.ac: Switch from _GCC_TOPLEV_NONCANONICAL_TARGET to
2633 ACX_NONCANONICAL_TARGET.
2634 * configure: Regenerate.
2635
2636 2004-08-13 Ziemowit Laski <zlaski@apple.com>
2637
2638 * objc/sarray.h: Hoist include of assert.h near the top of file,
2639 and mark the remainder of the file 'extern "C"'.
2640
2641 2004-08-13 Andrew Pinski <pinskia@physics.uc.edu>
2642
2643 * objc/Object.h: Move includes out of extern "C" blocks.
2644 * objc/encoding.h: Likewise.
2645 * objc/hash.h: Likewise.
2646 * objc/objc-api.h: Likewise.
2647 * objc/runtime.h: Likewise.
2648 * objc/sarray.h: Likewise.
2649 * objc/typedstream.h: Likewise.
2650
2651 2004-08-12 Ziemowit Laski <zlaski@apple.com>
2652
2653 * objc/NXConstStr.h: Update copyright date; bracket with
2654 'extern "C"' for C++ use; make include syntax consistent
2655 by using <...> instead of "..."; hoist <objc/...> includes
2656 above the 'extern "C"' block.
2657 * objc/Object.h: Likewise.
2658 * objc/Protocol.h: Likewise.
2659 * objc/encoding.h: Likewise.
2660 * objc/hash.h: Likewise.
2661 * objc/runtime.h: Likewise.
2662 * objc/sarray.h: Likewise.
2663 * objc/thr.h: Likewise.
2664 * objc/typedstream.h: Likewise.
2665 * objc/objc-api.h: Add 'extern "C"' block for C++ use.
2666 (objc_static_instances): For C++ case, do away with
2667 zero-sized array.
2668 (objc_method): Hoist definition to file scope.
2669 (_objc_load_callback, _objc_object_alloc, class_get_class_method,
2670 class_get_instance_method, class_create_instance,
2671 class_get_class_name, class_get_instance_size,
2672 class_get_meta_class, class_get_super_class, class_get_version,
2673 class_is_class, class_is_meta_class, class_set_version,
2674 class_get_gc_object_type, class_ivar_set_gcinvisible,
2675 get_imp): Rename 'class' parameter to '_class'.
2676 * objc/objc-list.h: Add 'extern "C"' block for C++ use.
2677 * objc/objc.h: Update copyright date.
2678 (arglist_t): Provide a union tag.
2679
2680 2004-07-22 Andrew Pinski <pinskia@physics.uc.edu>
2681
2682 * thr.c (__objc_thread_detach_function): Do not mark as volatile
2683 but instead use the attribute noreturn.
2684
2685 2004-06-28 Zack Weinberg <zack@codesourcery.com>
2686
2687 * encoding.c: Rename target_flags with a #define to avoid
2688 conflict with a prior declaration.
2689
2690 2004-06-24 Andrew Pinski <apinski@apple.com>
2691
2692 * objc/encoding.h: Wrap the functions with extern "C" for C++
2693 mode.
2694 * objc/hash.h: Likewise.
2695 * objc/objc-api.h: Likewise.
2696 * objc/objc-list.h: Likewise.
2697 * objc/runtime.h: Likewise.
2698 * objc/sarray.h: Likewise.
2699 * objc/thr.h: Likewise.
2700 * objc/typedstream.h: Likewise.
2701
2702
2703 2004-06-21 Nick Clifton <nickc@redhat.com>
2704
2705 * encoding.c (BITS_PER_UNIT): Define if a definition is not
2706 provided.
2707
2708 2004-06-20 Alexander Malmberg <alexander@malmberg.org>
2709
2710 * Makefile.in (exception.lo): Remove $(OBJC_GCFLAGS).
2711 (exception_gc.lo): New.
2712 (OBJS_GC): Add exception_gc.lo.
2713
2714 2004-06-17 Richard Henderson <rth@redhat.com>
2715
2716 * exception.c: New file.
2717 * Makefile.in (exception.lo): New.
2718 (OBJS): Add it.
2719
2720 2004-06-14 Andrew Pinski <pinskia@physics.uc.edu>
2721
2722 * linking.m (_objcInit): New empty function
2723 for Darwin only.
2724
2725 2004-06-11 Andrew Pinski <pinskia@physics.uc.edu>
2726
2727 * configure.ac: Support --enable-shared=libobjc.
2728 * configure: Regenerate.
2729
2730 PR libobjc/15901
2731 * configure.ac: Do not disable shared by default.
2732 * configure: Regenerate.
2733
2734 2004-06-03 Nicola Pero <n.pero@mi.flashnet.it>
2735
2736 * Protocol.m ([-isEqual:]): Small optimizations returning
2737 immediately if the argument is equal to self, and accessing
2738 the argument's name directly if it's a protocol.
2739
2740 2004-06-03 David Ayers <d.ayers@inode.at>
2741
2742 * Protocol.m ([-isEqual:]): Test the class of the argument.
2743
2744 2004-05-25 Andrew Pinski <pinskia@physics.uc.edu>
2745
2746 * configure.ac (includedir): Rename to ...
2747 (includedirname).
2748 * Makefile.in: s/includedir/includedirname/.
2749
2750 PR target/11572
2751 * configure.ac (includedir): Set to "include"
2752 except for Darwin.
2753 (libext) Set to empty except for Darwin.
2754 * configure: Regenerate
2755 * Makefile.in: s/libobjc.la/libobjc$(libext).la/g.
2756 s/include/$(includedir)/g.
2757
2758 2004-05-25 Daniel Jacobowitz <drow@false.org>
2759
2760 * Makefile.in: Add .NOEXPORT.
2761
2762 2004-05-25 Andrew Pinski <pinskia@physics.uc.edu>
2763
2764 Merge from the libobjc-branch
2765 2004-02-09 Andrew Pinski <pinskia@physics.uc.edu>
2766
2767 * Makefile.in (OBJC_H): Change objc-deps.h to objc-decls.h.
2768
2769 2004-02-03 Andrew Pinski <pinskia@physics.uc.edu>
2770
2771 * Makefile.in (OBJC_H): Add objc-deps.h.
2772
2773 2004-01-27 Nicola Pero <n.pero@mi.flashnet.it>
2774
2775 * Protocol.m ([-conformsTo:]): If the argument is nil, return NO.
2776 ([-hash], [-isEqual:]): New methods.
2777
2778 2004-01-27 Richard Frith-Macdonald <rfm@gnu.org>
2779
2780 * sarray.c (sarray_free): Add a better comment.
2781
2782 2004-01-27 Adam Fedor <fedor@gnu.org>
2783
2784 * hash.c (hash_add): Cast cachep to int.
2785 * selector.c (__sel_register_typed_name): Cast
2786 soffset_decode to int.
2787
2788 2004-01-27 Alexander Malmberg <alexander@malmberg.org>
2789
2790 * selector.c: Rename register_selectors_from_list to
2791 __objc_register_selectors_from_list. Update caller.
2792 (__objc_register_selectors_from_list): Lock __objc_runtime_mutex
2793 while registering selectors. Use __sel_register_typed_name instead
2794 of sel_register_typed_name. Check for NULL method_name:s.
2795 (pool_alloc_selector): New function.
2796 (__sel_register_typed_name): Use pool_alloc_selector to allocate
2797 selector structures.
2798 * sendmsg.c (class_add_method_list): Use
2799 __objc_register_selectors_from_list.
2800 * objc/runtime.h: Add __objc_register_selectors_from_list.
2801
2802 2004-01-25 Adam Fedor <fedor@gnu.org>
2803 Nicola Pero <n.pero@mi.flashnet.it>
2804 Andrew Pinski <pinskia@physics.uc.edu>
2805
2806 * objc/objc-decls.h: New file.
2807 * objc/objc-api.h (_objc_lookup_class): Mark as export.
2808 (_objc_load_callback): Likewise.
2809 (_objc_object_alloc): Likewise.
2810 (_objc_object_copy): Likewise.
2811 (_objc_object_dispose): Likewise.
2812
2813 2004-01-25 Andrew Pinski <pinskia@physics.uc.edu>
2814
2815 * archive.c: s/__inline__/inline
2816 * sendmsg.c: Likewise.
2817
2818 * encoding.c: Remove FIXME about the warning
2819 about unused variable.
2820 * sendmsg.c: Add a FIXME comment saying that
2821 this should be using libffi.
2822
2823 * Makefile.in (LIBTOOL): Use @LIBTOOL@ now as it works.
2824
2825
2826 2004-05-13 Andrew Pinski <pinskia@physics.uc.edu>
2827
2828 * archive.c (objc_read_class): Initialize class_name.
2829 (objc_read_selector): Initialize selector_name.
2830
2831 2004-05-09 Richard Sandiford <rsandifo@redhat.com>
2832
2833 * Makefile.in (toolexecdir): Remove trailing space.
2834
2835 2004-04-15 Nathanael Nerode <neroden@gcc.gnu.org>
2836
2837 PR libobjc/14948
2838 * configure.ac: De-precious CC so multilibs work.
2839 * configure: Regenerate.
2840
2841 2004-04-14 Nathanael Nerode <neroden@gcc.gnu.org>
2842
2843 * configure.ac: Restore toolexecdir.
2844 * Makefile.in: Restore toolexecdir.
2845 * configure: Regenerate.
2846
2847 2004-04-09 Nathanael Nerode <neroden@gcc.gnu.org>
2848
2849 * configure.ac: Remove (unused) glibcpp_prefixdir.
2850 * configure: Regenerate.
2851
2852 * configure.in: Rename to configure.ac.
2853 * Makefile.in: Update to match.
2854
2855 * Makefile.in: Remove toolexecdir, glibcpp_toolexecdir (unused).
2856 Replace glibcpp_toolexeclibdir with toolexeclibdir.
2857 * configure.in: Remove glibcpp_toolexecdir (unused).
2858 Replace glibcpp_toolexeclibdir with toolexeclibdir. Don't generate
2859 config.h or stamp-h (unused). Move one comment to the right place.
2860 * configure: Regenerate.
2861 * config.h.in: Remove (unused).
2862
2863 * config.h.in: Regenerate with autoheader.
2864
2865 * Makefile.in: Remove (unused) gcc_version_trigger.
2866 * configure.in: Remove (unused) glibcpp_builddir. Don't AC_SUBST
2867 gcc_version_trigger.
2868 * configure: Regenerate.
2869
2870 * configure.in: Switch to modern style for AC_INIT, AC_OUTPUT.
2871 Sort file into sections. Remove dnl where appropriate. Fix
2872 other style issues.
2873 * configure: Regenerate.
2874
2875 * configure.in: Replace old AC_PROG_CC hack with new one.
2876 Define toplevel_srcdir in terms of srcdir, not top_srcdir (there
2877 are no subdirectory output files, so this is fine). Change prereq
2878 to autoconf 2.59.
2879 * aclocal.m4: Include ../config/no-executables.m4.
2880 * configure: Regenerate with autoconf 2.59.
2881
2882 * configure.in: Improve comments on gthread_cflags. Improve m4
2883 quotation, and replace 'if test' with 'case', for --enable-objc-gc.
2884 * configure: Regenerate.
2885
2886 * configure.in: Move PACKAGE and VERSION settings up top. Remove
2887 unused call to AC_PROG_LN_S. Default RANLIB to ':'. Remove
2888 redundant checks for values of RANLIB, AR, INSTALL.
2889 * configure: Regenerate.
2890
2891 * configure.in: Clean up handling of
2892 --enable-version-specific-runtime-libs and related variables;
2893 replace 'if test' with 'case' where reasonable. Fix comments.
2894 Remove useless libstdcxx_interface.
2895 * configure: Regenerate.
2896
2897 * configure.in: Use _GCC_TOPLEV_NONCANONICAL_TARGET.
2898 Replace uses of target_alias with target_noncanonical.
2899 * aclocal.m4: Include ../config/acx.m4.
2900 * configure: Regenerate.
2901 * Makefile.in: Replace uses of target_alias with target_noncanonical.
2902 Fix copyright statement.
2903
2904 * configure.in: Hand-inline bulky, confusing macros from
2905 aclocal.m4. Replace references to "GNU Objective C" with "GCC".
2906 Update copyright notice. Remove stuff for automake, which isn't
2907 used in this directory. Remove emacs local variables.
2908 * aclocal.m4: Remove hand-inlined macros. Update copyright notice.
2909 * configure: Regenerate.
2910
2911 2004-03-16 Manfred Hollstein <mh@suse.com>
2912
2913 * Makefile.in, configure.in, configure: Update copyright years.
2914
2915 2004-03-15 Manfred Hollstein <mh@suse.com>
2916
2917 * Makefile.in (LIBOBJC_VERSION, LIBOBJC_GC_VERSION): Use
2918 definition from configure.in.
2919 * configure.in (PACKAGE): Add definition.
2920 (VERSION): Add definition; substitute it in output files.
2921 * configure: Re-generate.
2922
2923 2004-03-05 Ziemowit Laski <zlaski@apple.com>
2924
2925 * objc/hash.h (hash_string, compare_strings):
2926 Add type-casts to make Objective-C++ happy.
2927 * objc/typedstream.h (objc_get_stream_class_version):
2928 Rename parameter from 'class' to 'class_name' to make
2929 Objective-C++ happy.
2930
2931 2004-03-01 Michael Matz <matz@suse.de>
2932
2933 * Makefile.in (ALL_CFLAGS): Add -fno-strict-aliasing.
2934
2935 2004-02-06 Ziemowit Laski <zlaski@apple.com>
2936
2937 * objc/objc-api.h (objc_super): The 'class' field shall
2938 be named 'super_class' #ifdef __cplusplus.
2939
2940 2004-01-17 Andrew Pinski <pinskia@physics.uc.edu>
2941
2942 PR target/10781
2943 * encoding.c (rs6000_special_round_type_align): Define.
2944
2945 2004-01-14 Adam Fedor <fedor@gnu.org>
2946
2947 PR libobjc/12155
2948 * selector.c (__objc_register_instance_methods_to_class): Free
2949 new_list if not used.
2950
2951 2004-01-09 Andrew Ruder <aeruder@ksu.edu>
2952
2953 PR libobjc/11904
2954 * sarray.c (sarray_free): Free array->is_copy_of latter.
2955
2956 2003-12-01 Zack Weinberg <zack@codesourcery.com>
2957
2958 PR 11433
2959 * Protocol.m (descriptionForInstanceMethod): Don't dereference
2960 instance_methods if it's NULL.
2961 (descriptionForClassMethod): Likewise for class_methods.
2962
2963 2003-10-24 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2964
2965 * Makefile.in (runtime-info.h): Remove -Wp.
2966
2967 2003-10-21 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2968
2969 * Makefile.in (CC1OBJ): Remove.
2970 (runtime-info.h): Invoke $(CC) so all MULTIFLAGS are handled
2971 correctly.
2972 Use .m extension for temporary file.
2973 Remove assembler temp file.
2974
2975 2003-10-20 Joseph S. Myers <jsm@polyomino.org.uk>
2976
2977 * objc/hash.h (hash_string): Don't use a cast as an lvalue.
2978
2979 2003-10-17 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
2980
2981 * Makefile.in (runtime-info.h): Use MULTIFLAGS.
2982
2983 2003-09-09 Alan Modra <amodra@bigpond.net.au>
2984
2985 * configure: Regenerate.
2986
2987 2003-08-27 Alexander Malmberg <alexander@malmberg.org>
2988
2989 * Makefile.in, aclocal.m4: Update to $(libdir)/gcc/ instead of
2990 (libdir)/gcc-lib/ when installing.
2991 * configure: Regenerate.
2992
2993 Thu Jul 10 10:27:43 2003 Nicola Pero <n.pero@mi.flashnet.it>
2994
2995 libobjc/9969
2996 * sendmsg.c (get_imp): Fixed rare threading problem.
2997 (__objc_responds_to): Similar fixes.
2998 (objc_msg_lookup): Similar fixes.
2999 (__objc_init_install_dtable): Lock the runtime before checking if the
3000 table is installed.
3001
3002 2003-05-23 Nathanael Nerode <neroden@gcc.gnu.org>
3003
3004 * hash.c, init.c, libobjc.def, libobjc_entry.c, linking.m,
3005 makefile.dos, misc.c, nil_method.c, objects.c, sarray.c,
3006 selector.c, sendmsg.c, thr-dce.c, thr-decosf1.c, thr-irix.c,
3007 thr-mach.c, thr-objc.c, thr-os2.c, thr-posix.c, thr-pthreads.c,
3008 thr-rtems.c, thr-single.c, thr-solaris.c, thr-vxworks.c,
3009 thr-win32.c, thr.c: Replace "GNU CC" with "GCC".
3010 * Makefile.in, NXConstStr.m, Object.m, Protocol.m, archive.c,
3011 class.c, encoding.c, gc.c, objc/NXConstStr.h, objc/Object.h,
3012 objc/Protocol.h, objc/encoding.h, objc/hash.h, objc/objc-api.h,
3013 objc/objc-list.h, objc/objc.h, ocjc/runtime.h, objc/sarray.h,
3014 objc/thr.h, objc/typedstream.h: Replace "GNU CC" with "GCC".
3015
3016 Tue May 13 14:56:03 2003 Richard Frith-Macdonald <rfm@gnu.org>
3017 Nicola Pero <n.pero@mi.flashnet.it>
3018
3019 libobjc/10742
3020 * init.c (class_superclass_of_class): New function.
3021 (create_tree_of_subclasses_inherited_from): Use it.
3022 (__objc_tree_insert_class): Likewise.
3023 (class_is_subclass_of_class): Likewise.
3024
3025 2003-04-11 David Chad <davidc@freebsd.org>
3026 Loren J. Rittle <ljrittle@acm.org>
3027
3028 libobjc/8562
3029 * objc/hash.h (hash_string): Constify correctly.
3030 (compare_ptrs): Use direct compare.
3031 * objc/objc-list.h (list_nth): Rename index to indx to avoid shadow.
3032 * objc/sarray.h: Global rename index to indx to avoid shadow.
3033
3034 2003-03-12 Andreas Schwab <schwab@suse.de>
3035
3036 * aclocal.m4 (GLIBCPP_EXPORT_INSTALL_INFO): Avoid trailing /. in
3037 glibcpp_toolexeclibdir.
3038 * configure: Rebuilt.
3039
3040 2003-02-20 Alexandre Oliva <aoliva@redhat.com>
3041
3042 * configure.in: Propagate ORIGINAL_LD_FOR_MULTILIBS to
3043 config.status.
3044 * configure: Rebuilt.
3045
3046 2003-01-27 Alexandre Oliva <aoliva@redhat.com>
3047
3048 * aclocal.m4 (glibcpp_toolexeclibdir): Instead of
3049 $(MULTISUBDIR), use `$CC -print-multi-os-directory`, unless
3050 version_specific_libs is enabled.
3051 * configure: Rebuilt.
3052
3053 2003-01-09 Christian Cornelssen <ccorn@cs.tu-berlin.de>
3054
3055 * Makefile.in (FLAGS_TO_PASS): Also pass DESTDIR.
3056 (install-libs, install-headers): Prepend $(DESTDIR) to
3057 destination paths in all (un)installation commands.
3058
3059 2002-12-02 Zack Weinberg <zack@codesourcery.com>
3060
3061 * thr-objc.c: Include coretypes.h and tm.h.
3062
3063 2002-12-01 Zack Weinberg <zack@codesourcery.com>
3064
3065 * encoding.c, sendmsg.c: Include coretypes.h and tm.h.
3066
3067 2002-11-26 Nathanael Nerode <neroden@gcc.gnu.org>
3068
3069 * configure.in: Remove skip-this-dir support.
3070 * configure: Regenerate.
3071
3072 2002-09-22 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3073
3074 * Makefile.in (all): Fix multilib parallel build.
3075
3076 Thu Sep 12 12:44:37 2002 Nicola Pero <n.pero@mi.flashnet.it>
3077
3078 * sendmsg.c (nil_method): Declare not to take a variable number of
3079 args.
3080 (objc_msg_lookup): Cast nil_method to IMP before returning it.
3081 (objc_msg_lookup_super): The same.
3082
3083 2002-09-10 Jan Hubicka <jh@suse.cz>
3084
3085 * nil_method.c (nil_method): No longer defined with variable
3086 arguments.
3087
3088 2002-07-02 Rodney Brown <rbrown64@csc.com.au>
3089
3090 * objc/encoding.h: Fix formatting.
3091 * objc/hash.h: Likewise.
3092 * objc/objc-api.h: Likewise.
3093 * objc/runtime.h: Likewise.
3094 * objc/thr.h: Likewise.
3095 * archive.c: Likewise.
3096 * class.c: Likewise.
3097 * encoding.c: Likewise.
3098 * gc.c: Likewise.
3099 * hash.c: Likewise.
3100 * init.c: Likewise.
3101 * misc.c: Likewise.
3102 * nil_method.c: Likewise.
3103 * objects.c: Likewise.
3104 * sarray.c: Likewise.
3105 * selector.c: Likewise.
3106 * sendmsg.c: Likewise.
3107 * thr-mach.c: Likewise.
3108 * thr.c: Likewise.
3109
3110 2002-06-25 DJ Delorie <dj@redhat.com>
3111
3112 * aclocal.m4 (GLIBCPP_CONFIGURE): Split out
3113 GLIBCPP_TOPREL_CONFIGURE.
3114 * configure.in: Call it before AC_CANONICAL_SYSTEM.
3115 * configure: Regenerate.
3116
3117 2002-06-21 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3118
3119 * Object.m (forward, read, write): Fix unused parameter warnings.
3120 * encoding.c: Include <stdlib.h>.
3121 (target_flags): Mark with attribute unused.
3122 (atoi): Delete.
3123 * runtime.h (__objc_selector_max_index): Change to unsigned int.
3124 (__objc_generate_gc_type_description): Prototype.
3125 * selector.c (__objc_selector_max_index): Change to unsigned int.
3126
3127 Mon Jun 17 18:37:42 2002 Nicola Pero <n.pero@mi.flashnet.it>
3128
3129 * sendmsg.c (__objc_get_forward_imp): Fix warning by making sure
3130 we always have a return value: if __objc_msg_forward does not
3131 supply a forwarding implementation, return the default
3132 __builtin_apply based one.
3133
3134 2002-06-15 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3135
3136 * Object.m: Fix signed/unsigned warning.
3137 * Protocol.m: Likewise.
3138 * archive.c: Always include stdlib.h.
3139 (objc_read_short, objc_read_unsigned_short, objc_read_int,
3140 objc_read_long, __objc_read_nbyte_uint, __objc_read_nbyte_ulong):
3141 Fix signed/unsigned warning.
3142 (objc_write_type, objc_read_type, objc_write_types,
3143 objc_read_types): Ensure ctype 8-bit safety.
3144 (__objc_no_write, __objc_no_read): Mark unused parameters.
3145 * class.c (class_table_setup): Specify void arg.
3146 * encoding.c (atoi, objc_sizeof_type, objc_alignof_type,
3147 objc_skip_typespec, objc_skip_offset,
3148 objc_layout_structure_next_member): Ensure ctype 8-bit safety.
3149 (objc_layout_structure_next_member): Ensure variables are
3150 initialized.
3151 * gc.c (__objc_generate_gc_type_description,
3152 class_ivar_set_gcinvisible): Mark unused parameters.
3153 * init.c (__objc_send_load, __objc_destroy_class_tree_node): Mark
3154 unused parameters.
3155 (__objc_init_protocols) Fix signed/unsigned warning.
3156 * nil_method.c (nil_method): Mark unused parameters.
3157 * thr.h (objc_thread_callback): Specify void arg.
3158 * sarray.c (sarray_new, sarray_realloc, sarray_free): Fix
3159 signed/unsigned warning.
3160 (sarray_free): Fix formatting.
3161 * selector.c (sel_types_match): Ensure ctype 8-bit safety.
3162 * sendmsg.c (__objc_init_install_dtable) Mark unused parameters.
3163
3164 2002-06-09 Andreas Jaeger <aj@suse.de>
3165
3166 * encoding.c (objc_layout_structure_next_member): Remove unused
3167 variable.
3168
3169 2002-05-20 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3170
3171 * Makefile.in (SHELL): Set to @SHELL@.
3172 (WARN_CFLAGS): New.
3173 (ALL_CFLAGS): Add $(WARN_CFLAGS).
3174
3175 2002-05-16 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
3176
3177 * aclocal.m4: Allow for PWDCMD to override hardcoded pwd.
3178 * configure: Regenerate.
3179
3180 2002-05-08 Alexandre Oliva <aoliva@redhat.com>
3181
3182 * configure.in (ORIGINAL_LD_FOR_MULTILIBS): Preserve LD at
3183 script entry, and set LD to it when configuring multilibs.
3184 * configure: Rebuilt.
3185
3186 2002-04-19 David O'Brien <obrien@FreeBSD.org>
3187
3188 * encoding.c (MAX, MIN, ROUNDING): #undef before defining.
3189
3190 2002-04-09 Hans-Peter Nilsson <hp@bitrange.com>
3191
3192 PR objc/6107
3193 * objc/objc-api.h (struct objc_protocol_list): Change type of
3194 member count from int to size_t.
3195
3196 2002-02-11 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
3197
3198 PR libobjc/4039
3199 * aclocal.m4: Replace with version copied from libstdc++-v3.
3200 * configure.in: Update for changes to aclocal and Makefile.
3201 * configure: Regenerate.
3202 * Makefile.in: Correct install of multilibs and shared libs, use
3203 INSTALL_DATA for include files.
3204
3205 Mon Dec 17 17:02:12 2001 Nicola Pero <nicola@brainstorm.co.uk>
3206
3207 * init.c (__objc_exec_class): Fixed bug in the loop on unclaimed
3208 categories - when an unclaimed category was found, the loop was
3209 doing two steps forward instead of one, so that in certain cases
3210 it was failing to properly load all the categories. (Reported
3211 with fix by Alexander Malmberg <alexander@malmberg.org>).
3212
3213 2001-11-14 Aldy Hernandez <aldyh@redhat.com>
3214
3215 * encoding.c: Add target_flags.
3216
3217 2001-11-07 Aldy Hernandez <aldyh@redhat.com>
3218
3219 * objc/objc-api.h (_C_VECTOR): New.
3220
3221 * encoding.c (VECTOR_TYPE): New.
3222
3223 Mon Oct 29 21:29:21 2001 Nicola Pero <n.pero@mi.flashnet.it>
3224
3225 * class.c: Rewritten the class table to use optimized, lock-free
3226 lookup. This more than doubles the speed of class method
3227 invocations. (class_table_setup), (class_table_insert),
3228 (class_table_replace), (class_table_get_safe),
3229 (class_table_next), (class_table_print),
3230 (class_table_print_histogram): New functions.
3231 (__objc_init_class_tables): Use class_table_setup.
3232 (__objc_add_class_to_hash): Use class_table_get_safe and
3233 class_table_insert. (objc_lookup_class), (objc_get_class): Do not
3234 assert the existence of the table; do not lock the runtime; use
3235 class_table_get_safe. (objc_next_class): Use class_table_next.
3236 (__objc_resolve_class_links): Use class_table_next.
3237 (class_pose_as): Use class_table_replace.
3238
3239 2001-09-10 Ovidiu Predescu <ovidiu@cup.hp.com>
3240
3241 * gc.c: Removed the DEBUG declaration.
3242
3243 Wed Jul 18 12:48:56 2001 Nicola Pero <n.pero@mi.flashnet.it>
3244
3245 * thr.c (objc_mutex_lock): Invoke __objc_thread_id directly,
3246 rather than through objc_thread_id, to save a function call.
3247 (objc_mutex_trylock, objc_mutex_unlock, objc_condition_wait):
3248 Ditto.
3249
3250 Mon Jul 16 12:15:00 2001 Nicola Pero <n.pero@mi.flashnet.it>
3251
3252 * objc/objc-api.h (object_is_class): Fixed - buggy code was trying
3253 to cast an id to a Class, which can not be done. Make the check
3254 by using CLS_ISMETA on the class pointer instead.
3255 (object_is_meta_class): Similar fix.
3256
3257 2001-06-09 Alexandre Oliva <aoliva@redhat.com>, Stephen L Moshier <moshier@mediaone.net>
3258
3259 * configure.in (AC_EXEEXT): Work around in case it expands to
3260 nothing, as in autoconf 2.50.
3261 * acinclude.m4: Likewise.
3262 * configure: Rebuilt.
3263
3264 2001-06-08 Nicola Pero <n.pero@mi.flashnet.it>
3265
3266 * THREADS: Explain that when we compile libobjc inside GCC, we
3267 always use thr-objc.c as a backend, which uses GCC's thread code.
3268
3269 2001-06-06 Richard Frith-Macdonald <rrfm@gnu.org>
3270
3271 * init.c (__objc_send_message_in_list): When setting a new entry
3272 in __objc_load_methods use the method IMP as key, but check to see
3273 if the method is in the hashtable by looking at the IMP also.
3274 Also ... call the method after adding it to the hashtable rather
3275 than before ... thus preventing an obscure possibility of infinite
3276 recursion if a +load method itself loads a subclass.
3277
3278 2001-05-25 Ovidiu Predescu <ovidiu@cup.hp.com>
3279
3280 * init.c (__objc_send_message_in_list): When setting a new entry
3281 in __objc_load_methods use the method name as key, not the method
3282 IMP (reported by Richard Frith-Macdonald <richard@brainstorm.co.uk>).
3283
3284 2001-05-09 Joseph S. Myers <jsm28@cam.ac.uk>
3285
3286 * objc-features.texi: Move to ../gcc/objc.texi.
3287 * fdl.texi: Remove.
3288 * Makefile.in: Don't generate documentation from
3289 objc-features.texi.
3290
3291 2001-05-01 Mark Mitchell <mark@codesourcery.com>
3292
3293 * fdl.texi: New file.
3294 * objc-features.texi: Simplify.
3295 * Makefile.in: Adjust accordingly.
3296
3297 2001-04-30 Mark Mitchell <mark@codesourcery.com>
3298
3299 * objc-features.texi: Use the GFDL.
3300
3301 Wed Mar 21 04:44:58 EST 2001 John Wehle (john@feith.com)
3302
3303 * encoding.c (REAL_TYPE): Define.
3304
3305 2001-03-19 David Edelsohn <edelsohn@gnu.org>
3306
3307 * encoding.c (TYPE_MODE): Define.
3308
3309 2001-03-14 Nicola Pero <n.pero@mi.flashnet.it>
3310
3311 * thr.c (objc_thread_add): New function.
3312 (objc_thread_remove): Ditto.
3313 * objc/thr.h: Declare them.
3314 * libobjc.def: Mention them.
3315
3316 2001-02-28 Ovidiu Predescu <ovidiu@cup.hp.com>
3317
3318 * objc-features.texi: Document the @compatibility_alias compiler
3319 directive (description from Nicola Pero <n.pero@mi.flashnet.it>).
3320
3321 Fri Feb 23 18:12:00 2001 Rainer Orth <ro@TechFak.Uni-Bielefeld.DE>
3322
3323 * sendmsg.c (__objc_forward): Delete strlen() declaration.
3324
3325 2001-02-08 Geoffrey Keating <geoffk@redhat.com>
3326
3327 * configure.in: Don't run AC_PROG_CC_WORKS or AC_EXEEXT, because
3328 we're not interested in the result and they might fail.
3329 * configure: Regenerated.
3330
3331 2001-01-12 Joseph S. Myers <jsm28@cam.ac.uk>
3332
3333 * objc-features.texi: Use @email.
3334
3335 2001-01-12 Joseph S. Myers <jsm28@cam.ac.uk>
3336
3337 * sendmsg.c (__objc_print_dtable_stats): Don't use #ifdef inside
3338 printf.
3339
3340 2000-01-11 Richard Earnshaw <rearnsha@arm.com>
3341
3342 * encoding.c (STRUCTURE_SIZE_BOUNDARY): Redefine in a way that
3343 determines the value dynamically.
3344
3345 Wed Jan 3 00:49:10 2001 Ovidiu Predescu <ovidiu@cup.hp.com>
3346
3347 * sendmsg.c: Added __objc_msg_forward, a hook that allows external
3348 libraries to provide a function that returns the real forwarding
3349 function. This can alleviate problems __builtin_apply() and
3350 friends have on various platforms. (Solution suggested by Helge
3351 Hess.)
3352
3353 * objc/objc-api.h: Define __objc_msg_forward.
3354
3355 * sendmsg.c: Define gen_rtx_REG.
3356
3357 2000-12-06 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
3358
3359 * thr-rtems.c: New file. Stub to compile.
3360
3361 2000-09-06 Alexandre Oliva <aoliva@redhat.com>
3362
3363 * configure: Rebuilt with new libtool.m4.
3364
3365 Tue Aug 15 00:38:56 2000 Ovidiu Predescu <ovidiu@cup.hp.com>
3366
3367 * configure.in: Create a config.h file. Check for <sched.h>.
3368 * configure: Regenerate.
3369
3370 * config.h.in: Check for <sched.h>.
3371
3372 2000-08-14 Zack Weinberg <zack@wolery.cumb.org>
3373
3374 * configure: Regenerate after change to ../libtool.m4.
3375
3376 2000-08-14 Andreas Schwab <schwab@suse.de>
3377
3378 * objc-features.texi (Top): Move @menu at end of node.
3379
3380 2000-08-11 Manfred Hollstein <manfredh@redhat.com>
3381
3382 * objc-features.texi: Move @node Top before @menu.
3383
3384 Sun Aug 6 23:27:49 2000 Ovidiu Predescu <ovidiu@cup.hp.com>
3385
3386 * objc-features.texi: Documented the new -fconstant-string-class
3387 option.
3388
3389 Sun Aug 6 22:51:16 2000 Ovidiu Predescu <ovidiu@cup.hp.com>
3390
3391 * thr-posix.c: Integrated Chris Ball's <cball@fmco.com> changes to
3392 improve the Posix thread support for Objective-C.
3393
3394 2000-08-04 Zack Weinberg <zack@wolery.cumb.org>
3395
3396 * aclocal.m4: Replace copy of ../libtool.m4 with
3397 sinclude(../libtool.m4).
3398
3399 Fri Jul 28 08:58:02 2000 Nicola Pero <nicola@brainstorm.co.uk>
3400
3401 * configure.in: Added libtool support; build shared libraries
3402 if --enable-shared was passed on command line.
3403 * Makefile.in: Modified most compilation commands to use libtool.
3404 * aclocal.m4: New symbolic link to the ../libtool.m4, from the
3405 libtool distribution.
3406
3407 Sat Jul 29 00:10:21 2000 Ovidiu Predescu <ovidiu@cup.hp.com>
3408
3409 * sarray.c, Object.m: Removed the explicit prototypes for strlen
3410 and memcpy on 64-bit platforms (Suggested by Rodney Brown
3411 <rdb@cup.hp.com>).
3412
3413 2000-05-12 H.J. Lu (hjl@gnu.org)
3414
3415 * Makefile.in (GTHREAD_FLAGS): New.
3416 (ALL_CFLAGS): Add $(GTHREAD_FLAGS).
3417 (OBJC_THREAD_FILE): Changed to thr-objc.
3418
3419 * configure.in (GTHREAD_FLAGS): New, check and replace it for
3420 Makefile.
3421 (OBJC_THREAD_FILE): Removed.
3422
3423 * thr-objc.c: New.
3424
3425 2000-07-13 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3426
3427 * objc/hash.h: Include string.h.
3428
3429 2000-04-15 David Edelsohn <edelsohn@gnu.org>
3430
3431 * Object.m (strlen): 64-bit PowerPC is a 64bit platform as well.
3432
3433 2000-04-12 Jakub Jelinek <jakub@redhat.com>
3434
3435 * Object.m (strlen): Provide prototype on all 64bit platforms,
3436 not only alpha.
3437 * sarray.c (memcpy): Likewise.
3438 * encoding.c (objc_layout_finish_structure): Don't use
3439 ROUND_TYPE_ALIGN on sparc.
3440
3441 * encoding.c (objc_layout_structure_next_member): Do the whole
3442 procedure even for the first member, so that we get correct
3443 alignment.
3444
3445 2000-03-29 Zack Weinberg <zack@wolery.cumb.org>
3446
3447 * objc/Protocol.h, objc/objc-list.h: Change #endif labels to
3448 comments.
3449
3450 2000-02-23 Zack Weinberg <zack@wolery.cumb.org>
3451
3452 * Makefile.in: Add -DIN_TARGET_LIBS to ALL_CFLAGS.
3453
3454 Thu Sep 23 07:19:12 1999 Chris Ball <cball@fmco.com>
3455
3456 * thr-posix.c (__objc_mutex_deallocate): made deallocate work.
3457
3458 Tue Sep 21 07:47:10 1999 Jeffrey A Law (law@cygnus.com)
3459
3460 * Makefile.in (gc.o, gc_gc.o): Do not pass -fgnu-runtime to
3461 the compiler when building C code.
3462
3463 Fri Aug 6 23:32:29 1999 Daniel Jacobowitz <drow@drow.them.org>
3464
3465 * Makefile.in (FLAGS_TO_PASS): Include prefix, exec_prefix,
3466 libdir, libsubdir and tooldir.
3467
3468 Mon Jun 21 05:40:15 1999 John David Anglin <dave@hiauly1>
3469
3470 * init.c (__objc_force_linking): Make global.
3471
3472 Thu May 20 03:20:59 1999 Jeffrey A Law (law@cygnus.com)
3473
3474 * configure.in (AC_EXEEXT): Remove call.
3475 (compiler_name): Explicitly check with no extension and .exe
3476 extension.
3477 * configure: Regenerate.
3478
3479 Sun Apr 25 01:15:34 1999 Mumit Khan <khan@xraylith.wisc.edu>
3480
3481 * Makefile.in (CC1OBJ): Define in terms of CC.
3482 (runtime-info.h): Use.
3483
3484 Fri April 8 08:21:07 1999 Ovidiu Predescu <ovidiu@cup.hp.com>
3485
3486 * objc-features.texi: Updated the URL to Boehm's GC page.
3487
3488 Fri Mar 26 23:41:07 1999 Ovidiu Predescu <ovidiu@cup.hp.com>
3489
3490 * archive.c (__objc_code_char, __objc_write_char): Explicitly specify
3491 the char as being signed (patch from Daniel Jacobowitz
3492 <drow@false.org>).
3493
3494 Wed Mar 24 22:41:28 1999 Mumit Khan <khan@xraylith.wisc.edu>
3495
3496 * configure.in (AC_PREREQ): Update to 2.13.
3497 (AC_EXEEXT): Call to find possible file extension.
3498 (compiler_name): Use.
3499 * configure: Regenerate.
3500
3501 Wed Jan 27 02:31:01 1999 Jeffrey A Law (law@cygnus.com)
3502
3503 * Makefile.in (ALL_CFLAGS): Add -DIN_GCC.
3504
3505 Tue Jan 5 01:38:53 1999 Jeffrey A Law (law@cygnus.com)
3506
3507 * configure.in (thread_file): Correct and simplify code to find
3508 the thread file.
3509 * configure: Rebuilt.
3510
3511 1998-11-26 Manfred Hollstein <manfred@s-direktnet.de>
3512
3513 * configure.in (compiler_name): Add check to detect if this
3514 language's compiler has been built.
3515 * configure: Regenerate.
3516
3517 Mon Nov 23 16:50:28 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3518
3519 * configure.in: Use AC_PREREQ(2.12.1).
3520
3521 Thu Nov 19 20:33:37 1998 Jeffrey A Law (law@cygnus.com)
3522
3523 * Makefile.in (runtime-info.h): Avoid GNU make extensions.
3524
3525 Sun Nov 8 17:46:14 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3526
3527 * Makefile.in (INCLUDES): Add -I$(srcdir)/$(MULTISRCTOP)../include.
3528
3529 Thu Oct 22 14:34:06 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
3530
3531 * configure.in: Use AC_CONFIG_AUX_DIR($topsrcdir).
3532
3533 Sat Oct 17 05:21:31 1998 Ovidiu Predescu <ovidiu@slip.net>
3534
3535 * objc-features.texi (Top): Changed the email address.
3536 * objc-features.texi (Garbage Collection): Use @uref instead of @url.
3537
3538 Mon Oct 11 21:25:27 1998 Ovidiu Predescu <ovidiu@slip.net>
3539
3540 * encoding.c: Redefine get_inner_array_type to get the first entry
3541 in the structure.
3542
3543 Thu Oct 8 12:21:14 1998 Richard Frith-Macdonald <richard@brainstorm.co.uk>
3544
3545 * encoding.c (objc_skip_type_qualifiers): Handle _C_BYREF.
3546 (objc_get_type_qualifiers): Similarly.
3547 * objc/encoding.h (_C_BYREF): Define.
3548 (_F_BYREF): Define.
3549
3550 1998-10-07 David S. Miller <davem@pierdol.cobaltmicro.com>
3551
3552 * objc/sarray.h: Make boffset be an unsigned long when sparc so it
3553 works out on 64-bit systems.
3554
3555 Tue Oct 6 20:32:06 1998 Alexandre Oliva <oliva@dcc.unicamp.br>
3556
3557 * Makefile.in (INCLUDES): Make it multilib-friendly.
3558
3559 Fri Oct 2 07:12:14 1998 H.J. Lu (hjl@gnu.org)
3560
3561 * Makefile.in (INCLUDES): Add -I$(srcdir)/../gcc.
3562
3563 Thu Oct 1 22:33:03 1998 Robert Lipe <robertl@dgii.com>
3564 Jeffrey A Law (law@cygnus.com)
3565
3566 * Makefile.in (INCLUDES): Reference gcc via $MULTIBUILDTOP.
3567 (FLAGS_TO_PASS): Added.
3568 (runtime-info.h): Reference cc1ibj via $MULTIBUILDTOP.
3569
3570 * archive.c: Change config.h to tconfig.h.
3571
3572 * configure.in: Find gcc's object directory even for multilibs.
3573
3574 Wed Sep 30 18:17:17 1998 Robert Lipe <robertl@dgii.com>
3575
3576 * configure.in: Escape ^ in grep string.
3577 * configure: Rebuilt.
3578
3579 Wed Sep 30 09:14:52 1998 Jeffrey A Law (law@cygnus.com)
3580
3581 * All .h files pushed down into the objc/ subdirectory.
3582 * Makefile.in (copy_headers): Corresponding changes.
3583 * configure.in (AC_INIT): Corresponding changes.
3584 * configure: Rebuilt.
3585
3586 1998-09-30 Ben Elliston <bje@cygnus.com>
3587 Jeff Law <law@cygnus.com>
3588
3589 * Makefile.in: Rewrite.
3590
3591 * configure.in: Likewise.
3592
3593 * configure: Regenerate.
3594
3595 * All .c files. Remove "objc" prefix when including objc header
3596 files. Include tconfig.h, not ../tconfig.h.
3597
3598 Mon Sep 21 23:27:10 1998 Ovidiu Predescu <ovidiu@slip.net>
3599
3600 * encoding.c (TREE_TYPE, ARRAY_TYPE): Define.
3601 (get_inner_array_type): Define.
3602
3603 1998-09-21 Ben Elliston <bje@cygnus.com>
3604
3605 * New directory. Moved files from ../gcc/objc.
3606 \f
3607 Copyright (C) 1998-2020 Free Software Foundation, Inc.
3608
3609 Copying and distribution of this file, with or without modification,
3610 are permitted in any medium without royalty provided the copyright
3611 notice and this notice are preserved.