diff options
| author | Ted Kremenek <kremenek@apple.com> | 2012-02-08 04:32:27 +0000 |
|---|---|---|
| committer | Ted Kremenek <kremenek@apple.com> | 2012-02-08 04:32:27 +0000 |
| commit | 3116c4e5cdfa26ff9e3c73d3732b72c48f97096e (patch) | |
| tree | 90f69e8d0a4d7b531f600202a7ab2353d2ff3c3e | |
| parent | c03bdd9c803b12a90a717e35983f838208b533f2 (diff) | |
| download | bcm5719-llvm-3116c4e5cdfa26ff9e3c73d3732b72c48f97096e.tar.gz bcm5719-llvm-3116c4e5cdfa26ff9e3c73d3732b72c48f97096e.zip | |
Refactor pieces of PathDiagnostic into its own data structure. No functionality change.
llvm-svn: 150053
| -rw-r--r-- | clang/include/clang/StaticAnalyzer/Core/BugReporter/PathDiagnostic.h | 8 | ||||
| -rw-r--r-- | clang/lib/StaticAnalyzer/Core/PathDiagnostic.cpp | 6 |
2 files changed, 11 insertions, 3 deletions
diff --git a/clang/include/clang/StaticAnalyzer/Core/BugReporter/PathDiagnostic.h b/clang/include/clang/StaticAnalyzer/Core/BugReporter/PathDiagnostic.h index 9516fcea83c..08b48e529bb 100644 --- a/clang/include/clang/StaticAnalyzer/Core/BugReporter/PathDiagnostic.h +++ b/clang/include/clang/StaticAnalyzer/Core/BugReporter/PathDiagnostic.h @@ -44,6 +44,12 @@ class ExplodedNode; //===----------------------------------------------------------------------===// class PathDiagnostic; +class PathDiagnosticPiece; + +class PathPieces : public std::deque<PathDiagnosticPiece *> { +public: + ~PathPieces(); +}; class PathDiagnosticConsumer { virtual void anchor(); @@ -475,7 +481,7 @@ public: /// diagnostic. It represents an ordered-collection of PathDiagnosticPieces, /// each which represent the pieces of the path. class PathDiagnostic : public llvm::FoldingSetNode { - std::deque<PathDiagnosticPiece*> path; + PathPieces path; unsigned Size; std::string BugType; std::string Desc; diff --git a/clang/lib/StaticAnalyzer/Core/PathDiagnostic.cpp b/clang/lib/StaticAnalyzer/Core/PathDiagnostic.cpp index 0d2c2e82d97..bdf2e16a4be 100644 --- a/clang/lib/StaticAnalyzer/Core/PathDiagnostic.cpp +++ b/clang/lib/StaticAnalyzer/Core/PathDiagnostic.cpp @@ -62,10 +62,12 @@ PathDiagnosticMacroPiece::~PathDiagnosticMacroPiece() { PathDiagnostic::PathDiagnostic() : Size(0) {} -PathDiagnostic::~PathDiagnostic() { - for (iterator I = begin(), E = end(); I != E; ++I) delete &*I; +PathPieces::~PathPieces() { + for (iterator I = begin(), E = end(); I != E; ++I) delete *I; } +PathDiagnostic::~PathDiagnostic() {} + void PathDiagnostic::resetPath(bool deletePieces) { Size = 0; |

