[Bug objc/47075] Missed deprecation warnings for @property when using getter/setter directly

2010-12-29 Thread nicola at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47075

Nicola Pero  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
  Known to work||4.6.0
 Resolution||FIXED
   Target Milestone|--- |4.6.0

--- Comment #3 from Nicola Pero  2010-12-29 15:32:59 
UTC ---
Fixed in trunk.

Thanks


[Bug objc/47075] Missed deprecation warnings for @property when using getter/setter directly

2010-12-29 Thread nicola at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47075

--- Comment #2 from Nicola Pero  2010-12-29 12:22:13 
UTC ---
Author: nicola
Date: Wed Dec 29 12:22:09 2010
New Revision: 168315

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=168315
Log:
In gcc/c-family/:
2010-12-29  Nicola Pero  

PR objc/47075
* c-objc.h (objc_finish_message_expr): Added argument to
prototype.

In gcc/objc/:
2010-12-29  Nicola Pero  

PR objc/47075
* objc-act.h (PROPERTY_REF_DEPRECATED_GETTER): New.
* objc-tree.def (PROPERTY_REF): Increased the number of operands
from 3 to 4.
* objc-act.c (objc_finish_message_expr): Added optional argument
allowing to return the deprecated method prototype for deprecated
methods, instead of immediately emitting the deprecation warning.
(objc_maybe_build_component_ref): Do not warn for a deprecated
property.  When building the getter call, get the deprecated
method prototype from objc_finish_message_expr() and put it into
the PROPERTY_REF.
(objc_build_class_component_ref): Same change.
(finish_class): Mark the getter and setter as deprecated if they
are generated from a deprecated property.
(objc_gimplify_property_ref): If the getter is deprecated, emit a
deprecation warning.
(objc_build_setter_call, objc_build_message_expr,
objc_finish_foreach_loop): Updated call to
objc_finish_message_expr.

In gcc/objcp/:
2010-12-29  Nicola Pero  

* objcp-lang.c (objcp_tsubst_copy_and_build): Update call to
objc_finish_message_expr.

In gcc/testsuite/:
2010-12-29  Nicola Pero  

PR objc/47075
* objc.dg/property/at-property-deprecated-1.m: Updated.
* objc.dg/property/at-property-deprecated-2.m: New.
* objc.dg/property/dotsyntax-deprecated-1.m: New.
* obj-c++.dg/property/at-property-deprecated-1.mm: Updated.
* obj-c++.dg/property/at-property-deprecated-2.mm: New.
* obj-c++.dg/property/dotsyntax-deprecated-1.mm: New.

Added:
trunk/gcc/testsuite/obj-c++.dg/property/at-property-deprecated-2.mm
trunk/gcc/testsuite/obj-c++.dg/property/dotsyntax-deprecated-1.mm
trunk/gcc/testsuite/objc.dg/property/at-property-deprecated-2.m
trunk/gcc/testsuite/objc.dg/property/dotsyntax-deprecated-1.m
Modified:
trunk/gcc/c-family/ChangeLog
trunk/gcc/c-family/c-objc.h
trunk/gcc/objc/ChangeLog
trunk/gcc/objc/objc-act.c
trunk/gcc/objc/objc-act.h
trunk/gcc/objc/objc-tree.def
trunk/gcc/objcp/ChangeLog
trunk/gcc/objcp/objcp-lang.c
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/obj-c++.dg/property/at-property-deprecated-1.mm
trunk/gcc/testsuite/objc.dg/property/at-property-deprecated-1.m


[Bug objc/47075] Missed deprecation warnings for @property when using getter/setter directly

2010-12-28 Thread nicola at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47075

Nicola Pero  changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2010.12.28 15:40:37
 Ever Confirmed|0   |1

--- Comment #1 from Nicola Pero  2010-12-28 15:40:37 
UTC ---
Confirmed.

Thanks