Add dump support for comments coming from
overridden symbols. OK'ed off-line by Doug.
// rdar://12378793
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165807 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/AST/CommentDumper.cpp b/lib/AST/CommentDumper.cpp
index f9050d5..36261c4 100644
--- a/lib/AST/CommentDumper.cpp
+++ b/lib/AST/CommentDumper.cpp
@@ -19,12 +19,16 @@
const CommandTraits *Traits;
const SourceManager *SM;
unsigned IndentLevel;
-
+ const FullComment *FC;
+
public:
CommentDumper(raw_ostream &OS,
const CommandTraits *Traits,
- const SourceManager *SM) :
- OS(OS), Traits(Traits), SM(SM), IndentLevel(0)
+ const SourceManager *SM,
+ const FullComment * FC) :
+ OS(OS), Traits(Traits), SM(SM), IndentLevel(0),
+ FC(FC)
+
{ }
void dumpIndent() const {
@@ -183,7 +187,7 @@
OS << " implicitly";
if (C->hasParamName())
- OS << " Param=\"" << C->getParamName(0) << "\"";
+ OS << " Param=\"" << C->getParamName(const_cast<FullComment*>(FC)) << "\"";
if (C->isParamIndexValid())
OS << " ParamIndex=" << C->getParamIndex();
@@ -234,7 +238,8 @@
void Comment::dump(llvm::raw_ostream &OS, const CommandTraits *Traits,
const SourceManager *SM) const {
- CommentDumper D(llvm::errs(), Traits, SM);
+ const FullComment *FC = dyn_cast<FullComment>(this);
+ CommentDumper D(llvm::errs(), Traits, SM, FC);
D.dumpSubtree(this);
llvm::errs() << '\n';
}