llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT--> @llvm/pr-subscribers-clang-static-analyzer-1 Author: Balazs Benics (steakhal) <details> <summary>Changes</summary> Fixes #<!-- -->73764 With this patch, now all the callbacks are demonstrated here. --- Full diff: https://github.com/llvm/llvm-project/pull/84160.diff 1 Files Affected: - (modified) clang/lib/StaticAnalyzer/Checkers/CheckerDocumentation.cpp (+34-24) ``````````diff diff --git a/clang/lib/StaticAnalyzer/Checkers/CheckerDocumentation.cpp b/clang/lib/StaticAnalyzer/Checkers/CheckerDocumentation.cpp index 01e0bed54cc6ed..ba66a2254cc777 100644 --- a/clang/lib/StaticAnalyzer/Checkers/CheckerDocumentation.cpp +++ b/clang/lib/StaticAnalyzer/Checkers/CheckerDocumentation.cpp @@ -33,30 +33,33 @@ namespace ento { /// checking. /// /// \sa CheckerContext -class CheckerDocumentation : public Checker< check::PreStmt<ReturnStmt>, - check::PostStmt<DeclStmt>, - check::PreObjCMessage, - check::PostObjCMessage, - check::ObjCMessageNil, - check::PreCall, - check::PostCall, - check::BranchCondition, - check::NewAllocator, - check::Location, - check::Bind, - check::DeadSymbols, - check::BeginFunction, - check::EndFunction, - check::EndAnalysis, - check::EndOfTranslationUnit, - eval::Call, - eval::Assume, - check::LiveSymbols, - check::RegionChanges, - check::PointerEscape, - check::ConstPointerEscape, - check::Event<ImplicitNullDerefEvent>, - check::ASTDecl<FunctionDecl> > { +class CheckerDocumentation : public Checker< // + check::ASTCodeBody, // + check::ASTDecl<FunctionDecl>, // + check::BeginFunction, // + check::Bind, // + check::BranchCondition, // + check::ConstPointerEscape, // + check::DeadSymbols, // + check::EndAnalysis, // + check::EndFunction, // + check::EndOfTranslationUnit, // + check::Event<ImplicitNullDerefEvent>, // + check::LiveSymbols, // + check::Location, // + check::NewAllocator, // + check::ObjCMessageNil, // + check::PointerEscape, // + check::PostCall, // + check::PostObjCMessage, // + check::PostStmt<DeclStmt>, // + check::PreCall, // + check::PreObjCMessage, // + check::PreStmt<ReturnStmt>, // + check::RegionChanges, // + eval::Assume, // + eval::Call // + > { public: /// Pre-visit the Statement. /// @@ -321,6 +324,13 @@ class CheckerDocumentation : public Checker< check::PreStmt<ReturnStmt>, void checkASTDecl(const FunctionDecl *D, AnalysisManager &Mgr, BugReporter &BR) const {} + + /// Check every declaration that has a statement body in the AST. + /// + /// As AST traversal callback, which should only be used when the checker is + /// not path sensitive. It will be called for every Declaration in the AST. + void checkASTCodeBody(const Decl *D, AnalysisManager &Mgr, + BugReporter &BR) const {} }; void CheckerDocumentation::checkPostStmt(const DeclStmt *DS, `````````` </details> https://github.com/llvm/llvm-project/pull/84160 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits