aboutsummaryrefslogtreecommitdiff
path: root/gcc/objc/objc-tree.def
diff options
context:
space:
mode:
authorNicola Pero <nicola.pero@meta-innovation.com>2010-11-03 10:39:15 +0000
committerNicola Pero <nicola@gcc.gnu.org>2010-11-03 10:39:15 +0000
commit43236c265b65d3e9447f84272300db648416d37e (patch)
tree343b86bc8aefd1ff013b186a12e04ffedd18269c /gcc/objc/objc-tree.def
parent87c20fe7623b31c72d31b015254fd7f7964f2ead (diff)
downloadgcc-43236c265b65d3e9447f84272300db648416d37e.zip
gcc-43236c265b65d3e9447f84272300db648416d37e.tar.gz
gcc-43236c265b65d3e9447f84272300db648416d37e.tar.bz2
In gcc/objc/: 2010-11-03 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/objc/: 2010-11-03 Nicola Pero <nicola.pero@meta-innovation.com> * objc-act.c (maybe_make_artificial_property_decl): New. (objc_maybe_build_component_ref): Call maybe_make_artificial_property_decl if a property can not be found. Do not call objc_finish_message_expr if PROPERTY_HAS_NO_GETTER. * objc-act.h Updated comments. (PROPERTY_HAS_NO_GETTER): New. (PROPERTY_HAS_NO_SETTER): New. * objc-tree.def: Updated comment. In gcc/testsuite/: 2010-11-03 Nicola Pero <nicola.pero@meta-innovation.com> * objc.dg/property/dotsyntax-1.m: New. * objc.dg/property/dotsyntax-2.m: New. * obj-c++.dg/property/dotsyntax-1.mm: New. * obj-c++.dg/property/dotsyntax-2.mm: New. From-SVN: r166237
Diffstat (limited to 'gcc/objc/objc-tree.def')
-rw-r--r--gcc/objc/objc-tree.def6
1 files changed, 5 insertions, 1 deletions
diff --git a/gcc/objc/objc-tree.def b/gcc/objc/objc-tree.def
index 5da2671..7316675 100644
--- a/gcc/objc/objc-tree.def
+++ b/gcc/objc/objc-tree.def
@@ -55,7 +55,11 @@ DEFTREECODE (CLASS_REFERENCE_EXPR, "class_reference_expr", tcc_expression, 1)
* else, it will remain as a PROPERTY_REF until we get to
gimplification; at that point, we convert each PROPERTY_REF into
a 'getter' call during ObjC/ObjC++ gimplify.
-*/
+
+ Please note that when the Objective-C 2.0 "dot-syntax" 'object.component'
+ is encountered, where 'component' is not a property but there are valid
+ setter/getter methods for it, an artificial PROPERTY_DECL is generated
+ and used in the PROPERTY_REF. */
DEFTREECODE (PROPERTY_REF, "property_ref", tcc_expression, 2)
/*