aboutsummaryrefslogtreecommitdiff
path: root/Driver/HTMLDiagnostics.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Driver/HTMLDiagnostics.cpp')
-rw-r--r--Driver/HTMLDiagnostics.cpp13
1 files changed, 12 insertions, 1 deletions
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 << "<h1>" << Entry->getName() << "</h1>\n";
+
+ R.InsertStrBefore(SourceLocation::getFileLoc(FileID, 0), os.str());
+ }
// Add CSS, header, and footer.