clang 17.0.0git
|
Suppress reports that might lead to known false positives. More...
#include "clang/StaticAnalyzer/Core/BugReporter/BugReporterVisitors.h"
Public Member Functions | |
void | Profile (llvm::FoldingSetNodeID &ID) const override |
PathDiagnosticPieceRef | VisitNode (const ExplodedNode *, BugReporterContext &, PathSensitiveBugReport &) override |
Return a diagnostic piece which should be associated with the given node. | |
void | finalizeVisitor (BugReporterContext &BRC, const ExplodedNode *N, PathSensitiveBugReport &BR) override |
Last function called on the visitor, no further calls to VisitNode would follow. | |
![]() | |
BugReporterVisitor ()=default | |
BugReporterVisitor (const BugReporterVisitor &)=default | |
BugReporterVisitor (BugReporterVisitor &&) | |
BugReporterVisitor & | operator= (const BugReporterVisitor &)=delete |
BugReporterVisitor & | operator= (BugReporterVisitor &&)=delete |
virtual | ~BugReporterVisitor () |
virtual PathDiagnosticPieceRef | VisitNode (const ExplodedNode *Succ, BugReporterContext &BRC, PathSensitiveBugReport &BR)=0 |
Return a diagnostic piece which should be associated with the given node. | |
virtual void | finalizeVisitor (BugReporterContext &BRC, const ExplodedNode *EndPathNode, PathSensitiveBugReport &BR) |
Last function called on the visitor, no further calls to VisitNode would follow. | |
virtual PathDiagnosticPieceRef | getEndPath (BugReporterContext &BRC, const ExplodedNode *N, PathSensitiveBugReport &BR) |
Provide custom definition for the final diagnostic piece on the path - the piece, which is displayed before the path is expanded. | |
virtual void | Profile (llvm::FoldingSetNodeID &ID) const =0 |
Static Public Member Functions | |
static void * | getTag () |
![]() | |
static PathDiagnosticPieceRef | getDefaultEndPath (const BugReporterContext &BRC, const ExplodedNode *N, const PathSensitiveBugReport &BR) |
Generates the default final diagnostic piece. | |
Suppress reports that might lead to known false positives.
Currently this suppresses reports based on locations of bugs.
Definition at line 526 of file BugReporterVisitors.h.
|
overridevirtual |
Last function called on the visitor, no further calls to VisitNode would follow.
Reimplemented from clang::ento::BugReporterVisitor.
Definition at line 3274 of file BugReporterVisitors.cpp.
References clang::ento::PathDiagnosticLocation::asLocation(), clang::ento::BugReporterContext::getAnalyzerOptions(), clang::LocationContext::getDecl(), clang::ento::PathSensitiveBugReport::getLocation(), clang::ento::ExplodedNode::getLocationContext(), clang::NamedDecl::getName(), clang::DeclContext::getParent(), clang::LocationContext::getParent(), clang::ento::BugReporterContext::getSourceManager(), clang::AnalysisDeclContext::isInStdNamespace(), clang::ento::PathSensitiveBugReport::markInvalid(), and SM.
|
inlinestatic |
Definition at line 529 of file BugReporterVisitors.h.
Referenced by Profile().
|
inlineoverridevirtual |
Implements clang::ento::BugReporterVisitor.
Definition at line 534 of file BugReporterVisitors.h.
References getTag().
|
inlineoverridevirtual |
Return a diagnostic piece which should be associated with the given node.
Note that this function does not get run on the very last node of the report, as the PathDiagnosticPiece associated with the last node should be unique. Use getEndPath to customize the note associated with the report end instead.
The last parameter can be used to register a new visitor with the given BugReport while processing a node.
Implements clang::ento::BugReporterVisitor.
Definition at line 538 of file BugReporterVisitors.h.