Implement ownership attribute 'objc_ownership_make_collectable'. This allows one
to add 'CFMakeCollectable' semantics to a method.

llvm-svn: 70336
diff --git a/clang/lib/Frontend/PCHReaderDecl.cpp b/clang/lib/Frontend/PCHReaderDecl.cpp
index fc14a26..22699e5 100644
--- a/clang/lib/Frontend/PCHReaderDecl.cpp
+++ b/clang/lib/Frontend/PCHReaderDecl.cpp
@@ -476,8 +476,9 @@
     SIMPLE_ATTR(ObjCException);
     SIMPLE_ATTR(ObjCNSObject);
     SIMPLE_ATTR(ObjCOwnershipCFRelease);
-    SIMPLE_ATTR(ObjCOwnershipRelease);
     SIMPLE_ATTR(ObjCOwnershipCFRetain);
+    SIMPLE_ATTR(ObjCOwnershipMakeCollectable);
+    SIMPLE_ATTR(ObjCOwnershipRelease);
     SIMPLE_ATTR(ObjCOwnershipRetain);
     SIMPLE_ATTR(ObjCOwnershipReturns);
     SIMPLE_ATTR(Overloadable);
diff --git a/clang/lib/Frontend/PCHWriter.cpp b/clang/lib/Frontend/PCHWriter.cpp
index 04b552a..8374e09 100644
--- a/clang/lib/Frontend/PCHWriter.cpp
+++ b/clang/lib/Frontend/PCHWriter.cpp
@@ -1545,8 +1545,9 @@
     case Attr::ObjCException:
     case Attr::ObjCNSObject:
     case Attr::ObjCOwnershipCFRelease:
-    case Attr::ObjCOwnershipRelease:
     case Attr::ObjCOwnershipCFRetain:
+    case Attr::ObjCOwnershipMakeCollectable:
+    case Attr::ObjCOwnershipRelease:
     case Attr::ObjCOwnershipRetain:
     case Attr::ObjCOwnershipReturns:
     case Attr::Overloadable: