From 5f080b43fa896eca4ec181fa8c6853603eaceaf1 Mon Sep 17 00:00:00 2001 From: Ted Kremenek Date: Fri, 6 Mar 2009 23:36:28 +0000 Subject: Handle null IdentifierInfo* in Selector::getAsString(). llvm-svn: 66307 --- clang/lib/Basic/IdentifierTable.cpp | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'clang/lib/Basic') diff --git a/clang/lib/Basic/IdentifierTable.cpp b/clang/lib/Basic/IdentifierTable.cpp index bd4facd8355..4e2e7005e3e 100644 --- a/clang/lib/Basic/IdentifierTable.cpp +++ b/clang/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; } -- cgit v1.2.3