#include "clang/StaticAnalyzer/Checkers/BuiltinCheckerRegistration.h"
#include "clang/StaticAnalyzer/Core/BugReporter/BugType.h"
#include "clang/StaticAnalyzer/Core/Checker.h"
#include "clang/StaticAnalyzer/Core/CheckerManager.h"
#include "clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h"
#include "clang/StaticAnalyzer/Core/PathSensitive/ProgramStateTrait.h"
usingnamespaceclang;
usingnamespaceento;
namespace clang {
namespace ento {
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
> { … };
void CheckerDocumentation::checkPostStmt(const DeclStmt *DS,
CheckerContext &C) const { … }
void registerCheckerDocumentationChecker(CheckerManager &Mgr) { … }
bool shouldRegisterCheckerDocumentationChecker(const CheckerManager &) { … }
}
}