OSDN Git Service

In gcc/objc/:
authornicola <nicola@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 1 Nov 2010 20:06:36 +0000 (20:06 +0000)
committernicola <nicola@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 1 Nov 2010 20:06:36 +0000 (20:06 +0000)
commit7fd68cee431dfeb92f7da50dd8513908415b5ebb
tree53252370c4f738209d137b61fe83ed7b6b403a21
parent8e3c5052d3fc0ece48329fa128725fd9b0010fba
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.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166143 138bc75d-0d04-0410-961f-82ee72b054a4
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 [new file with mode: 0644]
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 [new file with mode: 0644]
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