diff options
author | Ted Kremenek <kremenek@apple.com> | 2009-09-14 22:01:32 +0000 |
---|---|---|
committer | Ted Kremenek <kremenek@apple.com> | 2009-09-14 22:01:32 +0000 |
commit | 06c9cb4d1a29e708f51bce9f7ee5acbe1c3761c3 (patch) | |
tree | 6d46f295727454715e313f5c8c7a40da024d1d0f /include/clang/Analysis/PathSensitive/BugReporter.h | |
parent | 31fddcca28ffb7a569ee8f5d565a856827d92ada (diff) |
Fix: <rdar://problem/5905851> do not report a leak when post-dominated by a call
to a noreturn or panic function
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@81803 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/clang/Analysis/PathSensitive/BugReporter.h')
-rw-r--r-- | include/clang/Analysis/PathSensitive/BugReporter.h | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/include/clang/Analysis/PathSensitive/BugReporter.h b/include/clang/Analysis/PathSensitive/BugReporter.h index 97d7c3d444..1434fce811 100644 --- a/include/clang/Analysis/PathSensitive/BugReporter.h +++ b/include/clang/Analysis/PathSensitive/BugReporter.h @@ -189,13 +189,21 @@ private: const std::string Category; llvm::FoldingSet<BugReportEquivClass> EQClasses; friend class BugReporter; + bool SuppressonSink; public: - BugType(const char *name, const char* cat) : Name(name), Category(cat) {} + BugType(const char *name, const char* cat) + : Name(name), Category(cat), SuppressonSink(false) {} virtual ~BugType(); // FIXME: Should these be made strings as well? const std::string& getName() const { return Name; } const std::string& getCategory() const { return Category; } + + /// isSuppressOnSink - Returns true if bug reports associated with this bug + /// type should be suppressed if the end node of the report is post-dominated + /// by a sink node. + bool isSuppressOnSink() const { return SuppressonSink; } + void setSuppressOnSink(bool x) { SuppressonSink = x; } virtual void FlushReports(BugReporter& BR); |