Modified dumping of Decl information to including the Decl type.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@41796 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/AST/StmtDumper.cpp b/AST/StmtDumper.cpp
index ea43ad7..332931b 100644
--- a/AST/StmtDumper.cpp
+++ b/AST/StmtDumper.cpp
@@ -256,8 +256,25 @@
void StmtDumper::VisitDeclRefExpr(DeclRefExpr *Node) {
DumpExpr(Node);
- fprintf(F, " Decl='%s' %p", Node->getDecl()->getName(),
- (void*)Node->getDecl());
+
+ fprintf(F, " ");
+ switch (Node->getDecl()->getKind()) {
+ case Decl::Function: fprintf(F,"FunctionDecl"); break;
+ case Decl::BlockVariable: fprintf(F,"BlockVariable"); break;
+ case Decl::FileVariable: fprintf(F,"FileVariable"); break;
+ case Decl::ParmVariable: fprintf(F,"ParmVariable"); break;
+ case Decl::EnumConstant: fprintf(F,"EnumConstant"); break;
+ case Decl::Typedef: fprintf(F,"Typedef"); break;
+ case Decl::Struct: fprintf(F,"Struct"); break;
+ case Decl::Union: fprintf(F,"Union"); break;
+ case Decl::Class: fprintf(F,"Class"); break;
+ case Decl::Enum: fprintf(F,"Enum"); break;
+ case Decl::ObjcInterface: fprintf(F,"ObjcInterface"); break;
+ case Decl::ObjcClass: fprintf(F,"ObjcClass"); break;
+ default: fprintf(F,"Decl"); break;
+ }
+
+ fprintf(F, "='%s' %p", Node->getDecl()->getName(), (void*)Node->getDecl());
}
void StmtDumper::VisitPreDefinedExpr(PreDefinedExpr *Node) {