In gcc/objc/: 2010-11-01 Nicola Pero <nicola.pero@meta-innovation.com>
commit8f07a2aa357fd67ca7ef1e640424bc605c6cec31
authorNicola Pero <nicola.pero@meta-innovation.com>
Mon, 1 Nov 2010 20:06:36 +0000 (1 20:06 +0000)
committerNicola Pero <nicola@gcc.gnu.org>
Mon, 1 Nov 2010 20:06:36 +0000 (1 20:06 +0000)
tree53252370c4f738209d137b61fe83ed7b6b403a21
parent1fccc6c3464c8862297bdf74d7bf22ac245e4639
In gcc/objc/: 2010-11-01 Nicola Pero <nicola.pero@meta-innovation.com>

In gcc/objc/:
2010-11-01  Nicola Pero  <nicola.pero@meta-innovation.com>

        Implemented Objective-C 2.0 property accessors.
        * objc-act.h (enum objc_tree_index): Added OCTI_GET_PROPERTY_DECL,
        OCTI_SET_PROPERTY_DECL, OCTI_COPY_STRUCT_DECL,
        OCTI_GET_PROPERTY_STRUCT_DECL and OCTI_SET_PROPERTY_STRUCT_DECL.
        (objc_getProperty_decl): New.
        (objc_setProperty_decl): New.
        (objc_copyStruct_decl): New.
        (objc_getPropertyStruct_decl): New.
        (objc_setPropertyStruct_decl): New.
        * objc-act.c (build_objc_property_accessor_helpers): New.
        (synth_module_prologue): Call
        build_objc_property_accessor_helpers.
        (lookup_ivar): New.
        (objc_synthesize_getter): Implemented synthesizing getters that
        work with properties that are not nonatomic, assign properties.
        (objc_synthesize_setter): Implemented synthesizing setters that
        work with properties that are not nonatomic, assign properties.

In gcc/testsuite/:
2010-11-01  Nicola Pero  <nicola.pero@meta-innovation.com>

        Implemented Objective-C 2.0 property accessors.
        * objc.dg/property/at-property-6.m: Use nonatomic properties to
        avoid testing more complex accessors in this testcase which is not
        about them.
        * objc.dg/property/at-property-7.m: Same change.
        * objc.dg/property/at-property-8.m: Same change.
        * objc.dg/property/at-property-9.m: Same change.
        * objc.dg/property/at-property-10.m: Same change.
        * objc.dg/property/at-property-11.m: Same change.
        * obj-c++.dg/property/at-property-6.mm: Same change.
        * obj-c++.dg/property/at-property-7.mm: Same change.
        * obj-c++.dg/property/at-property-8.mm: Same change.
        * obj-c++.dg/property/at-property-9.mm: Same change.
        * obj-c++.dg/property/at-property-10.mm: Same change.
        * obj-c++.dg/property/at-property-11.mm: Same change.
        * objc.dg/property/at-property-12.m: New.
        * objc.dg/property/at-property-13.m: New.
        * obj-c++.dg/property/at-property-12.mm: New.
        * obj-c++.dg/property/at-property-13.mm: New.

From-SVN: r166143
20 files changed:
gcc/objc/ChangeLog
gcc/objc/objc-act.c
gcc/objc/objc-act.h
gcc/testsuite/ChangeLog
gcc/testsuite/obj-c++.dg/property/at-property-10.mm
gcc/testsuite/obj-c++.dg/property/at-property-11.mm
gcc/testsuite/obj-c++.dg/property/at-property-12.mm [copied from gcc/testsuite/obj-c++.dg/property/at-property-11.mm with 72% similarity]
gcc/testsuite/obj-c++.dg/property/at-property-13.mm [new file with mode: 0644]
gcc/testsuite/obj-c++.dg/property/at-property-6.mm
gcc/testsuite/obj-c++.dg/property/at-property-7.mm
gcc/testsuite/obj-c++.dg/property/at-property-8.mm
gcc/testsuite/obj-c++.dg/property/at-property-9.mm
gcc/testsuite/objc.dg/property/at-property-10.m
gcc/testsuite/objc.dg/property/at-property-11.m
gcc/testsuite/objc.dg/property/at-property-12.m [copied from gcc/testsuite/objc.dg/property/at-property-11.m with 72% similarity]
gcc/testsuite/objc.dg/property/at-property-13.m [new file with mode: 0644]
gcc/testsuite/objc.dg/property/at-property-6.m
gcc/testsuite/objc.dg/property/at-property-7.m
gcc/testsuite/objc.dg/property/at-property-8.m
gcc/testsuite/objc.dg/property/at-property-9.m