r235135 - [Objective-C Sema]. In my last patch change the

Fariborz Jahanian fjahanian at apple.com
Thu Apr 16 14:52:34 PDT 2015


Author: fjahanian
Date: Thu Apr 16 16:52:34 2015
New Revision: 235135

URL: http://llvm.org/viewvc/llvm-project?rev=235135&view=rev
Log:
[Objective-C Sema]. In my last patch change the
attribute name to objc_independent_class. 
rdar://20255473

Added:
    cfe/trunk/test/SemaObjC/objc-independent-class-attribute.m
      - copied, changed from r235128, cfe/trunk/test/SemaObjC/psuedo-class-attribute.m
Removed:
    cfe/trunk/test/SemaObjC/psuedo-class-attribute.m
Modified:
    cfe/trunk/include/clang/AST/Type.h
    cfe/trunk/include/clang/Basic/Attr.td
    cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td

Modified: cfe/trunk/include/clang/AST/Type.h
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/AST/Type.h?rev=235135&r1=235134&r2=235135&view=diff
==============================================================================
--- cfe/trunk/include/clang/AST/Type.h (original)
+++ cfe/trunk/include/clang/AST/Type.h Thu Apr 16 16:52:34 2015
@@ -1575,7 +1575,7 @@ public:
   bool isObjCLifetimeType() const;              // (array of)* retainable type
   bool isObjCIndirectLifetimeType() const;      // (pointer to)* lifetime type
   bool isObjCNSObjectType() const;              // __attribute__((NSObject))
-  bool isObjCIndependentClassType() const;      // __attribute__((IndependentClass))
+  bool isObjCIndependentClassType() const;      // __attribute__((objc_independent_class))
   // FIXME: change this to 'raw' interface type, so we can used 'interface' type
   // for the common case.
   bool isObjCObjectType() const;                // NSString or typeof(*(id)0)

Modified: cfe/trunk/include/clang/Basic/Attr.td
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Basic/Attr.td?rev=235135&r1=235134&r2=235135&view=diff
==============================================================================
--- cfe/trunk/include/clang/Basic/Attr.td (original)
+++ cfe/trunk/include/clang/Basic/Attr.td Thu Apr 16 16:52:34 2015
@@ -1059,7 +1059,7 @@ def ObjCNSObject : InheritableAttr {
 }
 
 def ObjCIndependentClass : InheritableAttr {
-  let Spellings = [GNU<"IndependentClass">];
+  let Spellings = [GNU<"objc_independent_class">];
   let Documentation = [Undocumented];
 }
 

Modified: cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td?rev=235135&r1=235134&r2=235135&view=diff
==============================================================================
--- cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td (original)
+++ cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td Thu Apr 16 16:52:34 2015
@@ -2201,11 +2201,11 @@ def warn_nsobject_attribute : Warning<
   "'NSObject' attribute may be put on a typedef only; attribute is ignored">,
   InGroup<NSobjectAttribute>;
 def warn_independentclass_attribute : Warning<
-  "'IndependentClass' attribute may be put on a typedef only; "
+  "'objc_independent_class' attribute may be put on a typedef only; "
   "attribute is ignored">,
   InGroup<IndependentClassAttribute>;
 def warn_ptr_independentclass_attribute : Warning<
-  "'IndependentClass' attribute may be put on Objective-C object "
+  "'objc_independent_class' attribute may be put on Objective-C object "
   "pointer type only; attribute is ignored">,
   InGroup<IndependentClassAttribute>;
 def warn_attribute_weak_on_local : Warning<

Copied: cfe/trunk/test/SemaObjC/objc-independent-class-attribute.m (from r235128, cfe/trunk/test/SemaObjC/psuedo-class-attribute.m)
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/SemaObjC/objc-independent-class-attribute.m?p2=cfe/trunk/test/SemaObjC/objc-independent-class-attribute.m&p1=cfe/trunk/test/SemaObjC/psuedo-class-attribute.m&r1=235128&r2=235135&rev=235135&view=diff
==============================================================================
--- cfe/trunk/test/SemaObjC/psuedo-class-attribute.m (original)
+++ cfe/trunk/test/SemaObjC/objc-independent-class-attribute.m Thu Apr 16 16:52:34 2015
@@ -3,23 +3,23 @@
 
 @interface NSObject @end
 
-typedef NSObject * __attribute__((IndependentClass))dispatch_queue_t;
+typedef NSObject * __attribute__((objc_independent_class))dispatch_queue_t;
 
-typedef struct S {int ii; } * __attribute__((IndependentClass))dispatch_queue_t_2; // expected-warning {{Objective-C object}}
+typedef struct S {int ii; } * __attribute__((objc_independent_class))dispatch_queue_t_2; // expected-warning {{Objective-C object}}
 
-typedef struct { // expected-warning {{'IndependentClass' attribute may be put on a typedef only; attribute is ignored}}
-   NSObject *__attribute__((IndependentClass)) ns; // expected-warning {{'IndependentClass' attribute may be put on a typedef only; attribute is ignored}}
-} __attribute__((IndependentClass)) T;
+typedef struct { // expected-warning {{'objc_independent_class' attribute may be put on a typedef only; attribute is ignored}}
+   NSObject *__attribute__((objc_independent_class)) ns; // expected-warning {{'objc_independent_class' attribute may be put on a typedef only; attribute is ignored}}
+} __attribute__((objc_independent_class)) T;
 
 dispatch_queue_t dispatch_queue_create();
 
 @interface DispatchQPointerCastIssue : NSObject {
-  NSObject *__attribute__((IndependentClass)) Ivar; // expected-warning {{'IndependentClass' attribute may be put on a typedef only; attribute is ignored}}
+  NSObject *__attribute__((objc_independent_class)) Ivar; // expected-warning {{'objc_independent_class' attribute may be put on a typedef only; attribute is ignored}}
 }
 
- at property (copy) NSObject *__attribute__((IndependentClass)) Prop; // expected-warning {{'IndependentClass' attribute may be put on a typedef only; attribute is ignored}}
+ at property (copy) NSObject *__attribute__((objc_independent_class)) Prop; // expected-warning {{'objc_independent_class' attribute may be put on a typedef only; attribute is ignored}}
 
-typedef NSObject * __attribute__((IndependentClass))dispatch_queue_t_1;
+typedef NSObject * __attribute__((objc_independent_class))dispatch_queue_t_1;
 
 @end
 
@@ -30,7 +30,7 @@ typedef NSObject * __attribute__((Indepe
 @end
 
 NSObject *get_nsobject() {
-  typedef NSObject * __attribute__((IndependentClass))dispatch_queue_t;
+  typedef NSObject * __attribute__((objc_independent_class))dispatch_queue_t;
   dispatch_queue_t dt;
   return dt;
 }

Removed: cfe/trunk/test/SemaObjC/psuedo-class-attribute.m
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/SemaObjC/psuedo-class-attribute.m?rev=235134&view=auto
==============================================================================
--- cfe/trunk/test/SemaObjC/psuedo-class-attribute.m (original)
+++ cfe/trunk/test/SemaObjC/psuedo-class-attribute.m (removed)
@@ -1,36 +0,0 @@
-// RUN: %clang_cc1 -fsyntax-only -verify -Wno-objc-root-class %s
-// rdar://20255473
-
- at interface NSObject @end
-
-typedef NSObject * __attribute__((IndependentClass))dispatch_queue_t;
-
-typedef struct S {int ii; } * __attribute__((IndependentClass))dispatch_queue_t_2; // expected-warning {{Objective-C object}}
-
-typedef struct { // expected-warning {{'IndependentClass' attribute may be put on a typedef only; attribute is ignored}}
-   NSObject *__attribute__((IndependentClass)) ns; // expected-warning {{'IndependentClass' attribute may be put on a typedef only; attribute is ignored}}
-} __attribute__((IndependentClass)) T;
-
-dispatch_queue_t dispatch_queue_create();
-
- at interface DispatchQPointerCastIssue : NSObject {
-  NSObject *__attribute__((IndependentClass)) Ivar; // expected-warning {{'IndependentClass' attribute may be put on a typedef only; attribute is ignored}}
-}
-
- at property (copy) NSObject *__attribute__((IndependentClass)) Prop; // expected-warning {{'IndependentClass' attribute may be put on a typedef only; attribute is ignored}}
-
-typedef NSObject * __attribute__((IndependentClass))dispatch_queue_t_1;
-
- at end
-
- at implementation DispatchQPointerCastIssue
-+ (dispatch_queue_t) newDispatchQueue {
-    return dispatch_queue_create();
-}
- at end
-
-NSObject *get_nsobject() {
-  typedef NSObject * __attribute__((IndependentClass))dispatch_queue_t;
-  dispatch_queue_t dt;
-  return dt;
-}





More information about the cfe-commits mailing list