On Darwin, the linker removes functions in CommentDumper.o (Comment::dump())
despite __attribute__(__used__). As explained by Argyrios,
> .a archive files do some stripping of their own and they remove .o files that
> contain functions that are not referenced by any other .o file.
The fix is to use these functions from another .o file.
Thanks, Argyrios!
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160437 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/AST/CommentDumper.cpp b/lib/AST/CommentDumper.cpp
index 7a075a6..5de5ef5 100644
--- a/lib/AST/CommentDumper.cpp
+++ b/lib/AST/CommentDumper.cpp
@@ -181,14 +181,8 @@
} // unnamed namespace
-void Comment::dump() const {
- CommentDumper D(llvm::errs(), NULL);
- D.dumpSubtree(this);
- llvm::errs() << '\n';
-}
-
-void Comment::dump(SourceManager &SM) const {
- CommentDumper D(llvm::errs(), &SM);
+void Comment::dump(llvm::raw_ostream &OS, SourceManager *SM) const {
+ CommentDumper D(llvm::errs(), SM);
D.dumpSubtree(this);
llvm::errs() << '\n';
}