diff options
| author | Fariborz Jahanian <fjahanian@apple.com> | 2009-02-19 00:22:47 +0000 |
|---|---|---|
| committer | Fariborz Jahanian <fjahanian@apple.com> | 2009-02-19 00:22:47 +0000 |
| commit | d29fecd7466aa54c290f59606126e933c4ea6bf9 (patch) | |
| tree | 09de32cb73ebd38622f54bbaeb90f5c331c7f52a | |
| parent | dce6011eb557324ba572fe188fb5fe5375c0bc78 (diff) | |
| download | bcm5719-llvm-d29fecd7466aa54c290f59606126e933c4ea6bf9.tar.gz bcm5719-llvm-d29fecd7466aa54c290f59606126e933c4ea6bf9.zip | |
Couple of helpers for objc's gc attributes.
No change in functionality.
llvm-svn: 64989
| -rw-r--r-- | clang/include/clang/AST/Type.h | 10 | ||||
| -rw-r--r-- | clang/lib/Sema/SemaDecl.cpp | 2 |
2 files changed, 11 insertions, 1 deletions
diff --git a/clang/include/clang/AST/Type.h b/clang/include/clang/AST/Type.h index 644be13f5f7..7554b697e3c 100644 --- a/clang/include/clang/AST/Type.h +++ b/clang/include/clang/AST/Type.h @@ -195,6 +195,16 @@ public: /// GCAttrTypesAttr - Returns gc attribute of this type. inline QualType::GCAttrTypes getObjCGCAttr() const; + + /// isObjCGCWeak true when Type is objc's weak. + bool isObjCGCWeak() const { + return getObjCGCAttr() == Weak; + } + + /// isObjCGCStrong true when Type is objc's strong. + bool isObjCGCStrong() const { + return getObjCGCAttr() == Strong; + } /// Emit - Serialize a QualType to Bitcode. void Emit(llvm::Serializer& S) const; diff --git a/clang/lib/Sema/SemaDecl.cpp b/clang/lib/Sema/SemaDecl.cpp index 9cd5bc80694..294be704882 100644 --- a/clang/lib/Sema/SemaDecl.cpp +++ b/clang/lib/Sema/SemaDecl.cpp @@ -3510,7 +3510,7 @@ Sema::DeclTy *Sema::ActOnField(Scope *S, DeclTy *TagD, } ProcessDeclAttributes(NewFD, D); - if (T.getObjCGCAttr() == QualType::Weak) + if (T.isObjCGCWeak()) Diag(Loc, diag::warn_attribute_weak_on_field); if (D.getInvalidType() || InvalidDecl) |

