diff options
author | Fariborz Jahanian <fjahanian@apple.com> | 2011-07-05 22:38:59 +0000 |
---|---|---|
committer | Fariborz Jahanian <fjahanian@apple.com> | 2011-07-05 22:38:59 +0000 |
commit | b7a773626fea0bed31db9c28da912ea1200c28ae (patch) | |
tree | 6d0d6cef98507e63a0d22ffab364ab3939b4fd48 /clang/lib/Basic/IdentifierTable.cpp | |
parent | 44f19ac3fb3df536b1a9cbfa429c7c7a0d77d7da (diff) | |
download | bcm5719-llvm-b7a773626fea0bed31db9c28da912ea1200c28ae.tar.gz bcm5719-llvm-b7a773626fea0bed31db9c28da912ea1200c28ae.zip |
objc-arc: enforce performSelector rules in rejecting retaining selectors
passed to it, and unknown selectors causing potential leak.
// rdar://9659270
llvm-svn: 134449
Diffstat (limited to 'clang/lib/Basic/IdentifierTable.cpp')
-rw-r--r-- | clang/lib/Basic/IdentifierTable.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/clang/lib/Basic/IdentifierTable.cpp b/clang/lib/Basic/IdentifierTable.cpp index 109761c9dc9..188e2d46f58 100644 --- a/clang/lib/Basic/IdentifierTable.cpp +++ b/clang/lib/Basic/IdentifierTable.cpp @@ -397,6 +397,8 @@ ObjCMethodFamily Selector::getMethodFamilyImpl(Selector sel) { if (name == "retainCount") return OMF_retainCount; if (name == "self") return OMF_self; } + + if (name == "performSelector") return OMF_performSelector; // The other method families may begin with a prefix of underscores. while (!name.empty() && name.front() == '_') |