In gcc/objc/: 2010-12-30 Nicola Pero <nicola.pero@meta-innovation.com>
authorNicola Pero <nicola.pero@meta-innovation.com>
Wed, 29 Dec 2010 22:59:46 +0000 (22:59 +0000)
committerNicola Pero <nicola@gcc.gnu.org>
Wed, 29 Dec 2010 22:59:46 +0000 (22:59 +0000)
In gcc/objc/:
2010-12-30  Nicola Pero  <nicola.pero@meta-innovation.com>

* objc-act.c (objc_set_method_opt): Tidy up error messages.  In
particular, explicitly mention whether the error is due to the
@optional or @required keyword instead of mentioning
"@optional/@required".

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

* objc.dg/enhanced-proto-2.m: Updated.
* obj-c++.dg/enhanced-proto-2.mm: Updated.

From-SVN: r168327

gcc/objc/ChangeLog
gcc/objc/objc-act.c
gcc/testsuite/ChangeLog
gcc/testsuite/obj-c++.dg/enhanced-proto-2.mm
gcc/testsuite/objc.dg/enhanced-proto-2.m

index 5523829f13cff73c80ef962a6e3085d030d92d13..562081b98763a7164945a4e757733d140827f56a 100644 (file)
@@ -1,3 +1,10 @@
+2010-12-30  Nicola Pero  <nicola.pero@meta-innovation.com>
+
+       * objc-act.c (objc_set_method_opt): Tidy up error messages.  In
+       particular, explicitly mention whether the error is due to the
+       @optional or @required keyword instead of mentioning
+       "@optional/@required".
+
 2010-12-29  Nicola Pero  <nicola.pero@meta-innovation.com>
 
        PR objc/47118
index 47f3fbc379247a41c95cf0368dc7ed6abd3696ba..bc959d6060bb73dfc6b2d6dc16595f3a3f87d3cd 100644 (file)
@@ -876,13 +876,21 @@ void
 objc_set_method_opt (bool optional)
 {
   if (flag_objc1_only)
-    error_at (input_location, "@optional/@required are not available in Objective-C 1.0");     
+    {
+      if (optional)
+       error_at (input_location, "%<@optional%> is not available in Objective-C 1.0"); 
+      else
+       error_at (input_location, "%<@required%> is not available in Objective-C 1.0"); 
+    }
 
   objc_method_optional_flag = optional;
   if (!objc_interface_context 
       || TREE_CODE (objc_interface_context) != PROTOCOL_INTERFACE_TYPE)
     {
-      error ("@optional/@required is allowed in @protocol context only");
+      if (optional)
+       error ("%<@optional%> is allowed in @protocol context only");
+      else
+       error ("%<@required%> is allowed in @protocol context only");
       objc_method_optional_flag = false;
     }
 }
index 9019f79a1883f4990fd1d72736ecfd80013a28fe..a364a4e64ff144e8c6e588b53e18cb51cf3ea6df 100644 (file)
@@ -1,3 +1,8 @@
+2010-12-30  Nicola Pero  <nicola.pero@meta-innovation.com>
+
+       * objc.dg/enhanced-proto-2.m: Updated.
+       * obj-c++.dg/enhanced-proto-2.mm: Updated.
+
 2010-12-29  Nicola Pero  <nicola.pero@meta-innovation.com>
 
        PR objc/47118
index 4aacbda8127123011a049f766ec9a867df631ac6..31c2e509b7a15e5b9641872db14741aceef045a4 100644 (file)
@@ -11,9 +11,9 @@
 @end
 
 @interface  MyProto2 <MyProto1>
-@required              /* { dg-error "@optional/@required is allowed in @protocol context only" }  */
+@required              /* { dg-error ".@required. is allowed in @protocol context only" }  */
 - (void) FOO2;
-@optional              /* { dg-error "@optional/@required is allowed in @protocol context only" }  */
+@optional              /* { dg-error ".@optional. is allowed in @protocol context only" }  */
 - (void) FOO3;
 @end
 
index 6944ec86627389d12dddefe8836aba50fb0fe2c5..c196b5151c9d6bade1f64597b0229f27befbcd4e 100644 (file)
@@ -12,9 +12,9 @@
 @end
 
 @interface  MyProto2 <MyProto1>
-@required              /* { dg-error "@optional/@required is allowed in @protocol context only" }  */
+@required              /* { dg-error ".@required. is allowed in @protocol context only" }  */
 - (void) FOO2;
-@optional              /* { dg-error "@optional/@required is allowed in @protocol context only" }  */
+@optional              /* { dg-error ".@optional. is allowed in @protocol context only" }  */
 - (void) FOO3;
 @end