aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--clang/include/clang/AST/TextNodeDumper.h2
-rw-r--r--clang/lib/AST/ASTDumper.cpp6
-rw-r--r--clang/lib/AST/TextNodeDumper.cpp8
3 files changed, 11 insertions, 5 deletions
diff --git a/clang/include/clang/AST/TextNodeDumper.h b/clang/include/clang/AST/TextNodeDumper.h
index b562d30ef36d..239435e98b76 100644
--- a/clang/include/clang/AST/TextNodeDumper.h
+++ b/clang/include/clang/AST/TextNodeDumper.h
@@ -161,6 +161,8 @@ public:
void Visit(const Type *T);
+ void Visit(QualType T);
+
void dumpPointer(const void *Ptr);
void dumpLocation(SourceLocation Loc);
void dumpSourceRange(SourceRange R);
diff --git a/clang/lib/AST/ASTDumper.cpp b/clang/lib/AST/ASTDumper.cpp
index 7af1f8163508..93a5f8b8a236 100644
--- a/clang/lib/AST/ASTDumper.cpp
+++ b/clang/lib/AST/ASTDumper.cpp
@@ -422,11 +422,7 @@ void ASTDumper::dumpTypeAsChild(QualType T) {
return dumpTypeAsChild(SQT.Ty);
dumpChild([=] {
- OS << "QualType";
- NodeDumper.dumpPointer(T.getAsOpaquePtr());
- OS << " ";
- NodeDumper.dumpBareType(T, false);
- OS << " " << T.split().Quals.getAsString();
+ NodeDumper.Visit(T);
dumpTypeAsChild(T.split().Ty);
});
}
diff --git a/clang/lib/AST/TextNodeDumper.cpp b/clang/lib/AST/TextNodeDumper.cpp
index 1a618ce71bdf..c106d0814d33 100644
--- a/clang/lib/AST/TextNodeDumper.cpp
+++ b/clang/lib/AST/TextNodeDumper.cpp
@@ -172,6 +172,14 @@ void TextNodeDumper::Visit(const Type *T) {
OS << " imported";
}
+void TextNodeDumper::Visit(QualType T) {
+ OS << "QualType";
+ dumpPointer(T.getAsOpaquePtr());
+ OS << " ";
+ dumpBareType(T, false);
+ OS << " " << T.split().Quals.getAsString();
+}
+
void TextNodeDumper::dumpPointer(const void *Ptr) {
ColorScope Color(OS, ShowColors, AddressColor);
OS << ' ' << Ptr;