class RefCountReportVisitor

Declaration

class RefCountReportVisitor : public BugReporterVisitor { /* full declaration omitted */ };

Description

BugReporterVisitors are used to add custom diagnostics along a path.

Declared at: clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountDiagnostics.cpp:312

Inherits from: BugReporterVisitor

Member Variables

protected clang::ento::SymbolRef Sym

Method Overview

  • public void Profile(llvm::FoldingSetNodeID & ID) const
  • public RefCountReportVisitor(clang::ento::SymbolRef sym)
  • public clang::ento::PathDiagnosticPieceRef VisitNode(const clang::ento::ExplodedNode * N, clang::ento::BugReporterContext & BRC, clang::ento::PathSensitiveBugReport & BR)
  • public clang::ento::PathDiagnosticPieceRef getEndPath(clang::ento::BugReporterContext & BRC, const clang::ento::ExplodedNode * N, clang::ento::PathSensitiveBugReport & BR)

Inherited from BugReporterVisitor:

Inherited from FoldingSetBase::Node:

Methods

void Profile(llvm::FoldingSetNodeID& ID) const

Declared at: clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountDiagnostics.cpp:319

Parameters

llvm::FoldingSetNodeID& ID

RefCountReportVisitor(clang::ento::SymbolRef sym)

Declared at: clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountDiagnostics.cpp:317

Parameters

clang::ento::SymbolRef sym

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/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountDiagnostics.cpp:325

Parameters

const clang::ento::ExplodedNode* N
clang::ento::BugReporterContext& BRC
clang::ento::PathSensitiveBugReport& BR

clang::ento::PathDiagnosticPieceRef getEndPath(
    clang::ento::BugReporterContext& BRC,
    const clang::ento::ExplodedNode* N,
    clang::ento::PathSensitiveBugReport& BR)

Description

Provide custom definition for the final diagnostic piece on the path - the piece, which is displayed before the path is expanded. NOTE that this function can be implemented on at most one used visitor, and otherwise it crahes at runtime.

Declared at: clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountDiagnostics.cpp:329

Parameters

clang::ento::BugReporterContext& BRC
const clang::ento::ExplodedNode* N
clang::ento::PathSensitiveBugReport& BR