diff options
author | Ted Kremenek <kremenek@apple.com> | 2009-03-07 01:22:02 +0000 |
---|---|---|
committer | Ted Kremenek <kremenek@apple.com> | 2009-03-07 01:22:02 +0000 |
commit | 0666a6ce703631d6f0c107afb6a42758208a6c42 (patch) | |
tree | edf0eb727bd42219e2a3c50b141fa4320545bc8e /clang/lib/Basic/IdentifierTable.cpp | |
parent | b6b7ce4b50ecc2ae104f1bef95b18b575bc59226 (diff) | |
download | bcm5719-llvm-0666a6ce703631d6f0c107afb6a42758208a6c42.tar.gz bcm5719-llvm-0666a6ce703631d6f0c107afb6a42758208a6c42.zip |
Selector: (changes made after discussing this more with Steve Naroff)
- Make Selector::getAsIdentifierInfo() private. Using IdentifierInfo* in
Selector is an implementation detail that clients shouldn't think about.
- Modify diagnostic emission in Sema::ProcessPropertyDecl to not use
Selector::getAsIdentifierInfo() (which could crash when IdentifierInfo* is
null) and instead use Selector::getAsString().
- Tidy up Selector::getAsString() implementation.
llvm-svn: 66313
Diffstat (limited to 'clang/lib/Basic/IdentifierTable.cpp')
-rw-r--r-- | clang/lib/Basic/IdentifierTable.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/clang/lib/Basic/IdentifierTable.cpp b/clang/lib/Basic/IdentifierTable.cpp index 4e2e7005e3e..f4acbec0199 100644 --- a/clang/lib/Basic/IdentifierTable.cpp +++ b/clang/lib/Basic/IdentifierTable.cpp @@ -352,8 +352,9 @@ std::string Selector::getAsString() const { if (InfoPtr & ArgFlags) { IdentifierInfo *II = getAsIdentifierInfo(); + // If the number of arguments is 0 then II is guaranteed to not be null. if (getNumArgs() == 0) - return II ? II->getName() : ""; + return II->getName(); std::string Res = II ? II->getName() : ""; Res += ":"; |