From: Ted Kremenek Date: Thu, 27 Mar 2008 07:35:49 +0000 (+0000) Subject: Added

tag in HTML file output that contains the name of the source file. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=2e93981a6262a7dae968ff8af38139d5b0cd1bbc;p=clang Added

tag in HTML file output that contains the name of the source file. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@48869 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/Driver/HTMLDiagnostics.cpp b/Driver/HTMLDiagnostics.cpp index 5e4ba971eb..6583064d18 100644 --- a/Driver/HTMLDiagnostics.cpp +++ b/Driver/HTMLDiagnostics.cpp @@ -13,6 +13,7 @@ #include "HTMLDiagnostics.h" #include "clang/Basic/SourceManager.h" +#include "clang/Basic/FileManager.h" #include "clang/AST/ASTContext.h" #include "clang/Analysis/PathDiagnostic.h" #include "clang/Rewrite/Rewriter.h" @@ -105,11 +106,21 @@ void HTMLDiagnostics::HandlePathDiagnostic(const PathDiagnostic& D) { } // Add line numbers, header, footer, etc. + unsigned FileID = R.getSourceMgr().getMainFileID(); html::EscapeText(R, FileID); html::AddLineNumbers(R, FileID); - // FIXME: Add the number of the file here. + // Add the name of the file. + + { + std::ostringstream os; + const FileEntry* Entry = SMgr.getFileEntryForID(FileID); + + os << "

" << Entry->getName() << "

\n"; + + R.InsertStrBefore(SourceLocation::getFileLoc(FileID, 0), os.str()); + } // Add CSS, header, and footer. diff --git a/lib/Rewrite/HTMLRewrite.cpp b/lib/Rewrite/HTMLRewrite.cpp index 6538d9e072..b886bec38b 100644 --- a/lib/Rewrite/HTMLRewrite.cpp +++ b/lib/Rewrite/HTMLRewrite.cpp @@ -138,6 +138,7 @@ void html::AddHeaderFooterInternalBuiltinCSS(Rewriter& R, unsigned FileID) { os << "\n\n" << "