[cfe-commits] r126134 - in /cfe/trunk: lib/Parse/ParseDecl.cpp test/SemaObjC/auto-objective-c.m

Fariborz Jahanian fjahanian at apple.com
Mon Feb 21 10:37:13 PST 2011


Author: fjahanian
Date: Mon Feb 21 12:37:13 2011
New Revision: 126134

URL: http://llvm.org/viewvc/llvm-project?rev=126134&view=rev
Log:
Turn on 'auto' in plain  objc mode.


Added:
    cfe/trunk/test/SemaObjC/auto-objective-c.m
Modified:
    cfe/trunk/lib/Parse/ParseDecl.cpp

Modified: cfe/trunk/lib/Parse/ParseDecl.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Parse/ParseDecl.cpp?rev=126134&r1=126133&r2=126134&view=diff
==============================================================================
--- cfe/trunk/lib/Parse/ParseDecl.cpp (original)
+++ cfe/trunk/lib/Parse/ParseDecl.cpp Mon Feb 21 12:37:13 2011
@@ -1244,7 +1244,7 @@
                                          DiagID, getLang());
       break;
     case tok::kw_auto:
-      if (getLang().CPlusPlus0x)
+      if (getLang().CPlusPlus0x || getLang().ObjC1)
         isInvalid = DS.SetTypeSpecType(DeclSpec::TST_auto, Loc, PrevSpec,
                                        DiagID);
       else

Added: cfe/trunk/test/SemaObjC/auto-objective-c.m
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/SemaObjC/auto-objective-c.m?rev=126134&view=auto
==============================================================================
--- cfe/trunk/test/SemaObjC/auto-objective-c.m (added)
+++ cfe/trunk/test/SemaObjC/auto-objective-c.m Mon Feb 21 12:37:13 2011
@@ -0,0 +1,24 @@
+// RUN: %clang_cc1 -x objective-c -fblocks -fsyntax-only -verify %s
+
+ at interface I
+{
+  id pi;
+}
+- (id) Meth;
+ at end
+
+
+typedef int (^P) (int x);
+
+ at implementation I
+- (id) Meth {
+  auto p = [pi Meth];
+  return p;
+}
+
+- (P) bfunc {
+  auto my_block = ^int (int x) {return x; };
+  my_block(1);
+  return my_block;
+}
+ at end





More information about the cfe-commits mailing list