]> granicus.if.org Git - clang/commitdiff
Handle null IdentifierInfo* in Selector::getAsString().
authorTed Kremenek <kremenek@apple.com>
Fri, 6 Mar 2009 23:36:28 +0000 (23:36 +0000)
committerTed Kremenek <kremenek@apple.com>
Fri, 6 Mar 2009 23:36:28 +0000 (23:36 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66307 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Basic/IdentifierTable.cpp

index bd4facd8355ef9be9688b51d7ab49eafc0d739bf..4e2e7005e3ede0b1a1b3719bd8cdc17cc8be38a5 100644 (file)
@@ -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;
   }