Fixes/tweaks that prevent "defaults-i.m" from compiling.

- Allow classnames as the receiver (removing a FIXME from ParseObjCMessageExpression).
- Added a FIXME to ParseObjCMessageExpression()...we need to return a message expr AST node!



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@42001 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/AST/Decl.cpp b/AST/Decl.cpp
index 965ba21..4b464ee 100644
--- a/AST/Decl.cpp
+++ b/AST/Decl.cpp
@@ -28,6 +28,42 @@
 static unsigned nInterfaceDecls = 0;
 static bool StatSwitch = false;
 
+const char *Decl::getDeclKindName() {
+  switch (DeclKind) {
+  default: assert(0 && "Unknown decl kind!");
+  case Typedef:
+    return "Typedef";
+  case Function:
+    return "Function";
+  case BlockVariable:
+    return "BlockVariable";
+  case FileVariable:
+    return "FileVariable";
+  case ParmVariable:
+    return "ParmVariable";
+  case EnumConstant:
+    return "EnumConstant";
+  case ObjcInterface:
+    return "ObjcInterface";
+  case ObjcClass:
+    return "ObjcClass";
+  case ObjcMethod:
+    return "ObjcMethod";
+  case ObjcProtoMethod:
+    return "ObjcProtoMethod";
+  case ObjcProtocol:
+    return "ObjcProtocol";
+  case Struct:
+    return "Struct";
+  case Union:
+    return "Union";
+  case Class:
+    return "Class";
+  case Enum:
+    return "Enum";
+  }
+}
+
 bool Decl::CollectingStats(bool enable) {
   if (enable) StatSwitch = true;
 	return StatSwitch;