From: Ted Kremenek Date: Mon, 31 Mar 2008 23:30:12 +0000 (+0000) Subject: Embed linkable IDs in message bubbles. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=33bd942e7449f044ce6a9c81a008407dce4215da;p=clang Embed linkable IDs in message bubbles. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@49005 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/Driver/HTMLDiagnostics.cpp b/Driver/HTMLDiagnostics.cpp index 7f6a369de7..917949fac1 100644 --- a/Driver/HTMLDiagnostics.cpp +++ b/Driver/HTMLDiagnostics.cpp @@ -44,7 +44,9 @@ public: virtual void HandlePathDiagnostic(const PathDiagnostic& D); - void HandlePiece(Rewriter& R, const PathDiagnosticPiece& P, unsigned num); + void HandlePiece(Rewriter& R, const PathDiagnosticPiece& P, + unsigned num, unsigned max); + void HighlightRange(Rewriter& R, SourceRange Range, unsigned MainFileID); }; @@ -98,11 +100,12 @@ void HTMLDiagnostics::HandlePathDiagnostic(const PathDiagnostic& D) { // Process the path. unsigned n = D.size(); + unsigned max = n; for (PathDiagnostic::const_reverse_iterator I=D.rbegin(), E=D.rend(); I!=E; ++I, --n) { - HandlePiece(R, *I, n); + HandlePiece(R, *I, n, max); } // Add line numbers, header, footer, etc. @@ -172,7 +175,7 @@ void HTMLDiagnostics::HandlePathDiagnostic(const PathDiagnostic& D) { void HTMLDiagnostics::HandlePiece(Rewriter& R, const PathDiagnosticPiece& P, - unsigned num) { + unsigned num, unsigned max) { // For now, just draw a box above the line in question, and emit the // warning. @@ -212,7 +215,14 @@ void HTMLDiagnostics::HandlePiece(Rewriter& R, std::ostringstream os; os << "\n" - << "
"; os << html::EscapeText(P.getString()) << "
";