From: Sylvestre Ledru Date: Sat, 14 Jun 2014 09:28:27 +0000 (+0000) Subject: One of our buildbot for FreeBSD does not support std::to_string. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=27557e70d37026da65f0b78a20552f0d79858181;p=clang One of our buildbot for FreeBSD does not support std::to_string. Use stringstream instead to convert int to string git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@210972 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/docs/ReleaseNotes.rst b/docs/ReleaseNotes.rst index 94c36930a7..1311e19639 100644 --- a/docs/ReleaseNotes.rst +++ b/docs/ReleaseNotes.rst @@ -51,10 +51,10 @@ Major New Features GCC 4.7 changed the mingw ABI. Clang 3.4 and older use the GCC 4.6 ABI. Clang 3.5 and newer use the GCC 4.7 abi. -- The __has_attribute feature test is now target-aware. Older versions of Clang - would return true when the attribute spelling was known, regardless of whether - the attribute was available to the specific target. Clang now returns true only - when the attribute pertains to the current compilation target. +- The __has_attribute feature test is now target-aware. Older versions of Clang + would return true when the attribute spelling was known, regardless of whether + the attribute was available to the specific target. Clang now returns true + only when the attribute pertains to the current compilation target. Improvements to Clang's diagnostics @@ -144,6 +144,16 @@ libclang Static Analyzer --------------- +The `-analyzer-config` options are now passed from scan-build through to +ccc-analyzer and then to Clang. + +With the option `-analyzer-config stable-report-filename=true`, +instead of `report-XXXXXX.html`, scan-build/clang analyzer generate +`report----.html`. +(id = i++ for several issues found in the same function/method). + +List the function/method name in the index page of scan-build. + ... Core Analysis Improvements diff --git a/lib/StaticAnalyzer/Core/HTMLDiagnostics.cpp b/lib/StaticAnalyzer/Core/HTMLDiagnostics.cpp index 2a45546482..b1e9f06cae 100644 --- a/lib/StaticAnalyzer/Core/HTMLDiagnostics.cpp +++ b/lib/StaticAnalyzer/Core/HTMLDiagnostics.cpp @@ -26,6 +26,7 @@ #include "llvm/Support/MemoryBuffer.h" #include "llvm/Support/Path.h" #include "llvm/Support/raw_ostream.h" +#include using namespace clang; using namespace ento; @@ -292,14 +293,15 @@ void HTMLDiagnostics::ReportDiag(const PathDiagnostic& D, std::error_code EC; do { // Find a filename which is not already used + std::stringstream filename; Model = ""; + filename << "report-" + << llvm::sys::path::filename(Entry->getName()).str() + << "-" << declName.c_str() + << "-" << offsetDecl + << "-" << i << ".html"; llvm::sys::path::append(Model, Directory, - "report-" + - llvm::sys::path::filename(Entry->getName()) + - "-" + - declName.c_str() + - "-" + std::to_string(offsetDecl) + - "-" + std::to_string(i) + ".html"); + filename.str()); EC = llvm::sys::fs::openFileForWrite(Model.str(), FD, llvm::sys::fs::F_RW |