diff options
| author | Erik Pilkington <erik.pilkington@gmail.com> | 2018-09-10 22:20:09 +0000 |
|---|---|---|
| committer | Erik Pilkington <erik.pilkington@gmail.com> | 2018-09-10 22:20:09 +0000 |
| commit | 4257857bf8a508b56f73f61bdf941194913bac92 (patch) | |
| tree | c1bbee49ba07de5139af63fe8131842938ef0b69 /clang/lib/AST/NSAPI.cpp | |
| parent | afb8b5d95430eed2148e58c88319dded587010c5 (diff) | |
| download | bcm5719-llvm-4257857bf8a508b56f73f61bdf941194913bac92.tar.gz bcm5719-llvm-4257857bf8a508b56f73f61bdf941194913bac92.zip | |
[Sema][ObjC] Infer availability of +new from availability of -init.
When defined in NSObject, +new will call -init. If -init has been marked
unavailable, diagnose uses of +new.
rdar://18335828
Differential revision: https://reviews.llvm.org/D51189
llvm-svn: 341874
Diffstat (limited to 'clang/lib/AST/NSAPI.cpp')
| -rw-r--r-- | clang/lib/AST/NSAPI.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/clang/lib/AST/NSAPI.cpp b/clang/lib/AST/NSAPI.cpp index 94ad87b6e33..9d591313f26 100644 --- a/clang/lib/AST/NSAPI.cpp +++ b/clang/lib/AST/NSAPI.cpp @@ -607,3 +607,11 @@ Selector NSAPI::getOrInitSelector(ArrayRef<StringRef> Ids, } return Sel; } + +Selector NSAPI::getOrInitNullarySelector(StringRef Id, Selector &Sel) const { + if (Sel.isNull()) { + IdentifierInfo *Ident = &Ctx.Idents.get(Id); + Sel = Ctx.Selectors.getSelector(0, &Ident); + } + return Sel; +} |

