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