diff options
-rw-r--r-- | lib/Basic/IdentifierTable.cpp | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/lib/Basic/IdentifierTable.cpp b/lib/Basic/IdentifierTable.cpp index bd4facd835..4e2e7005e3 100644 --- a/lib/Basic/IdentifierTable.cpp +++ b/lib/Basic/IdentifierTable.cpp @@ -349,11 +349,13 @@ std::string MultiKeywordSelector::getName() const { } std::string Selector::getAsString() const { - if (IdentifierInfo *II = getAsIdentifierInfo()) { - if (getNumArgs() == 0) - return II->getName(); + if (InfoPtr & ArgFlags) { + IdentifierInfo *II = getAsIdentifierInfo(); - std::string Res = II->getName(); + if (getNumArgs() == 0) + return II ? II->getName() : ""; + + std::string Res = II ? II->getName() : ""; Res += ":"; return Res; } |