Handle null IdentifierInfo* in Selector::getAsString().

llvm-svn: 66307
diff --git a/clang/lib/Basic/IdentifierTable.cpp b/clang/lib/Basic/IdentifierTable.cpp
index bd4facd..4e2e700 100644
--- a/clang/lib/Basic/IdentifierTable.cpp
+++ b/clang/lib/Basic/IdentifierTable.cpp
@@ -349,11 +349,13 @@
 }
 
 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;
   }