class UndefOrNullArgVisitor
Declaration
class UndefOrNullArgVisitor : public BugReporterVisitor { /* full declaration omitted */ };
Description
When a region containing undefined value or '0' value is passed as an argument in a call, marks the call as interesting. As a result, BugReporter will not prune the path through the function even if the region's contents are not modified/accessed by the call.
Declared at: clang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporterVisitors.h:546
Inherits from: BugReporterVisitor
Member Variables
- private const clang::ento::MemRegion* R
- The interesting memory region this visitor is tracking.
Method Overview
- public void Profile(llvm::FoldingSetNodeID & ID) const
- public UndefOrNullArgVisitor(const clang::ento::MemRegion * InR)
- public clang::ento::PathDiagnosticPieceRef VisitNode(const clang::ento::ExplodedNode * N, clang::ento::BugReporterContext & BRC, clang::ento::PathSensitiveBugReport & BR)
Inherited from BugReporterVisitor:
Inherited from FoldingSetBase::Node:
Methods
¶void Profile(llvm::FoldingSetNodeID& ID) const
void Profile(llvm::FoldingSetNodeID& ID) const
Declared at: clang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporterVisitors.h:553
Parameters
¶UndefOrNullArgVisitor(
const clang::ento::MemRegion* InR)
UndefOrNullArgVisitor(
const clang::ento::MemRegion* InR)
Declared at: clang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporterVisitors.h:551
Parameters
- const clang::ento::MemRegion* InR
¶clang::ento::PathDiagnosticPieceRef VisitNode(
const clang::ento::ExplodedNode* N,
clang::ento::BugReporterContext& BRC,
clang::ento::PathSensitiveBugReport& BR)
clang::ento::PathDiagnosticPieceRef VisitNode(
const clang::ento::ExplodedNode* N,
clang::ento::BugReporterContext& BRC,
clang::ento::PathSensitiveBugReport& BR)
Description
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 \ref 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.
Declared at: clang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporterVisitors.h:559