/Users/buildslave/jenkins/workspace/coverage/llvm-project/clang/include/clang/StaticAnalyzer/Core/Checker.h
Line | Count | Source |
1 | | //== Checker.h - Registration mechanism for checkers -------------*- C++ -*--=// |
2 | | // |
3 | | // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. |
4 | | // See https://llvm.org/LICENSE.txt for license information. |
5 | | // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception |
6 | | // |
7 | | //===----------------------------------------------------------------------===// |
8 | | // |
9 | | // This file defines Checker, used to create and register checkers. |
10 | | // |
11 | | //===----------------------------------------------------------------------===// |
12 | | |
13 | | #ifndef LLVM_CLANG_STATICANALYZER_CORE_CHECKER_H |
14 | | #define LLVM_CLANG_STATICANALYZER_CORE_CHECKER_H |
15 | | |
16 | | #include "clang/Analysis/ProgramPoint.h" |
17 | | #include "clang/Basic/LangOptions.h" |
18 | | #include "clang/StaticAnalyzer/Core/CheckerManager.h" |
19 | | #include "clang/StaticAnalyzer/Core/PathSensitive/SVals.h" |
20 | | #include "llvm/Support/Casting.h" |
21 | | |
22 | | namespace clang { |
23 | | namespace ento { |
24 | | class BugReporter; |
25 | | |
26 | | namespace check { |
27 | | |
28 | | template <typename DECL> |
29 | | class ASTDecl { |
30 | | template <typename CHECKER> |
31 | | static void _checkDecl(void *checker, const Decl *D, AnalysisManager& mgr, |
32 | 838 | BugReporter &BR) { |
33 | 838 | ((const CHECKER *)checker)->checkASTDecl(cast<DECL>(D), mgr, BR); |
34 | 838 | } CheckObjCDealloc.cpp:void clang::ento::check::ASTDecl<clang::ObjCImplementationDecl>::_checkDecl<(anonymous namespace)::ObjCDeallocChecker>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 32 | 128 | BugReporter &BR) { | 33 | 128 | ((const CHECKER *)checker)->checkASTDecl(cast<DECL>(D), mgr, BR); | 34 | 128 | } |
CheckObjCInstMethSignature.cpp:void clang::ento::check::ASTDecl<clang::ObjCImplementationDecl>::_checkDecl<(anonymous namespace)::ObjCMethSigsChecker>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 32 | 15 | BugReporter &BR) { | 33 | 15 | ((const CHECKER *)checker)->checkASTDecl(cast<DECL>(D), mgr, BR); | 34 | 15 | } |
Unexecuted instantiation: DebugCheckers.cpp:void clang::ento::check::ASTDecl<clang::TranslationUnitDecl>::_checkDecl<(anonymous namespace)::CallGraphViewer>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) DebugCheckers.cpp:void clang::ento::check::ASTDecl<clang::TranslationUnitDecl>::_checkDecl<(anonymous namespace)::CallGraphDumper>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 32 | 3 | BugReporter &BR) { | 33 | 3 | ((const CHECKER *)checker)->checkASTDecl(cast<DECL>(D), mgr, BR); | 34 | 3 | } |
DirectIvarAssignment.cpp:void clang::ento::check::ASTDecl<clang::ObjCImplementationDecl>::_checkDecl<(anonymous namespace)::DirectIvarAssignment>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 32 | 2 | BugReporter &BR) { | 33 | 2 | ((const CHECKER *)checker)->checkASTDecl(cast<DECL>(D), mgr, BR); | 34 | 2 | } |
ErrnoModeling.cpp:void clang::ento::check::ASTDecl<clang::TranslationUnitDecl>::_checkDecl<(anonymous namespace)::ErrnoModeling>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 32 | 56 | BugReporter &BR) { | 33 | 56 | ((const CHECKER *)checker)->checkASTDecl(cast<DECL>(D), mgr, BR); | 34 | 56 | } |
IvarInvalidationChecker.cpp:void clang::ento::check::ASTDecl<clang::ObjCImplementationDecl>::_checkDecl<(anonymous namespace)::IvarInvalidationChecker>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 32 | 28 | BugReporter &BR) { | 33 | 28 | ((const CHECKER *)checker)->checkASTDecl(cast<DECL>(D), mgr, BR); | 34 | 28 | } |
LLVMConventionsChecker.cpp:void clang::ento::check::ASTDecl<clang::CXXRecordDecl>::_checkDecl<(anonymous namespace)::LLVMConventionsChecker>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 32 | 14 | BugReporter &BR) { | 33 | 14 | ((const CHECKER *)checker)->checkASTDecl(cast<DECL>(D), mgr, BR); | 34 | 14 | } |
LocalizationChecker.cpp:void clang::ento::check::ASTDecl<clang::ObjCImplementationDecl>::_checkDecl<(anonymous namespace)::EmptyLocalizationContextChecker>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 32 | 2 | BugReporter &BR) { | 33 | 2 | ((const CHECKER *)checker)->checkASTDecl(cast<DECL>(D), mgr, BR); | 34 | 2 | } |
NSErrorChecker.cpp:void clang::ento::check::ASTDecl<clang::ObjCMethodDecl>::_checkDecl<(anonymous namespace)::NSErrorMethodChecker>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 32 | 138 | BugReporter &BR) { | 33 | 138 | ((const CHECKER *)checker)->checkASTDecl(cast<DECL>(D), mgr, BR); | 34 | 138 | } |
NSErrorChecker.cpp:void clang::ento::check::ASTDecl<clang::FunctionDecl>::_checkDecl<(anonymous namespace)::CFErrorFunctionChecker>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 32 | 384 | BugReporter &BR) { | 33 | 384 | ((const CHECKER *)checker)->checkASTDecl(cast<DECL>(D), mgr, BR); | 34 | 384 | } |
ObjCMissingSuperCallChecker.cpp:void clang::ento::check::ASTDecl<clang::ObjCImplementationDecl>::_checkDecl<(anonymous namespace)::ObjCSuperCallChecker>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 32 | 18 | BugReporter &BR) { | 33 | 18 | ((const CHECKER *)checker)->checkASTDecl(cast<DECL>(D), mgr, BR); | 34 | 18 | } |
ObjCPropertyChecker.cpp:void clang::ento::check::ASTDecl<clang::ObjCPropertyDecl>::_checkDecl<(anonymous namespace)::ObjCPropertyChecker>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 32 | 19 | BugReporter &BR) { | 33 | 19 | ((const CHECKER *)checker)->checkASTDecl(cast<DECL>(D), mgr, BR); | 34 | 19 | } |
ObjCUnusedIVarsChecker.cpp:void clang::ento::check::ASTDecl<clang::ObjCImplementationDecl>::_checkDecl<(anonymous namespace)::ObjCUnusedIvarsChecker>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 32 | 15 | BugReporter &BR) { | 33 | 15 | ((const CHECKER *)checker)->checkASTDecl(cast<DECL>(D), mgr, BR); | 34 | 15 | } |
PaddingChecker.cpp:void clang::ento::check::ASTDecl<clang::TranslationUnitDecl>::_checkDecl<(anonymous namespace)::PaddingChecker>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 32 | 6 | BugReporter &BR) { | 33 | 6 | ((const CHECKER *)checker)->checkASTDecl(cast<DECL>(D), mgr, BR); | 34 | 6 | } |
NoUncountedMembersChecker.cpp:void clang::ento::check::ASTDecl<clang::TranslationUnitDecl>::_checkDecl<(anonymous namespace)::NoUncountedMemberChecker>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 32 | 3 | BugReporter &BR) { | 33 | 3 | ((const CHECKER *)checker)->checkASTDecl(cast<DECL>(D), mgr, BR); | 34 | 3 | } |
RefCntblBaseVirtualDtorChecker.cpp:void clang::ento::check::ASTDecl<clang::TranslationUnitDecl>::_checkDecl<(anonymous namespace)::RefCntblBaseVirtualDtorChecker>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 32 | 3 | BugReporter &BR) { | 33 | 3 | ((const CHECKER *)checker)->checkASTDecl(cast<DECL>(D), mgr, BR); | 34 | 3 | } |
UncountedCallArgsChecker.cpp:void clang::ento::check::ASTDecl<clang::TranslationUnitDecl>::_checkDecl<(anonymous namespace)::UncountedCallArgsChecker>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 32 | 2 | BugReporter &BR) { | 33 | 2 | ((const CHECKER *)checker)->checkASTDecl(cast<DECL>(D), mgr, BR); | 34 | 2 | } |
UncountedLambdaCapturesChecker.cpp:void clang::ento::check::ASTDecl<clang::TranslationUnitDecl>::_checkDecl<(anonymous namespace)::UncountedLambdaCapturesChecker>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 32 | 1 | BugReporter &BR) { | 33 | 1 | ((const CHECKER *)checker)->checkASTDecl(cast<DECL>(D), mgr, BR); | 34 | 1 | } |
UncountedLocalVarsChecker.cpp:void clang::ento::check::ASTDecl<clang::TranslationUnitDecl>::_checkDecl<(anonymous namespace)::UncountedLocalVarsChecker>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 32 | 1 | BugReporter &BR) { | 33 | 1 | ((const CHECKER *)checker)->checkASTDecl(cast<DECL>(D), mgr, BR); | 34 | 1 | } |
|
35 | | |
36 | 2.25k | static bool _handlesDecl(const Decl *D) { |
37 | 2.25k | return isa<DECL>(D); |
38 | 2.25k | } clang::ento::check::ASTDecl<clang::ObjCImplementationDecl>::_handlesDecl(clang::Decl const*) Line | Count | Source | 36 | 1.12k | static bool _handlesDecl(const Decl *D) { | 37 | 1.12k | return isa<DECL>(D); | 38 | 1.12k | } |
clang::ento::check::ASTDecl<clang::TranslationUnitDecl>::_handlesDecl(clang::Decl const*) Line | Count | Source | 36 | 363 | static bool _handlesDecl(const Decl *D) { | 37 | 363 | return isa<DECL>(D); | 38 | 363 | } |
clang::ento::check::ASTDecl<clang::CXXRecordDecl>::_handlesDecl(clang::Decl const*) Line | Count | Source | 36 | 16 | static bool _handlesDecl(const Decl *D) { | 37 | 16 | return isa<DECL>(D); | 38 | 16 | } |
clang::ento::check::ASTDecl<clang::ObjCMethodDecl>::_handlesDecl(clang::Decl const*) Line | Count | Source | 36 | 258 | static bool _handlesDecl(const Decl *D) { | 37 | 258 | return isa<DECL>(D); | 38 | 258 | } |
clang::ento::check::ASTDecl<clang::FunctionDecl>::_handlesDecl(clang::Decl const*) Line | Count | Source | 36 | 253 | static bool _handlesDecl(const Decl *D) { | 37 | 253 | return isa<DECL>(D); | 38 | 253 | } |
clang::ento::check::ASTDecl<clang::ObjCPropertyDecl>::_handlesDecl(clang::Decl const*) Line | Count | Source | 36 | 245 | static bool _handlesDecl(const Decl *D) { | 37 | 245 | return isa<DECL>(D); | 38 | 245 | } |
|
39 | | public: |
40 | | template <typename CHECKER> |
41 | 420 | static void _register(CHECKER *checker, CheckerManager &mgr) { |
42 | 420 | mgr._registerForDecl(CheckerManager::CheckDeclFunc(checker, |
43 | 420 | _checkDecl<CHECKER>), |
44 | 420 | _handlesDecl); |
45 | 420 | } CheckObjCDealloc.cpp:void clang::ento::check::ASTDecl<clang::ObjCImplementationDecl>::_register<(anonymous namespace)::ObjCDeallocChecker>((anonymous namespace)::ObjCDeallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 41 | 50 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 42 | 50 | mgr._registerForDecl(CheckerManager::CheckDeclFunc(checker, | 43 | 50 | _checkDecl<CHECKER>), | 44 | 50 | _handlesDecl); | 45 | 50 | } |
CheckObjCInstMethSignature.cpp:void clang::ento::check::ASTDecl<clang::ObjCImplementationDecl>::_register<(anonymous namespace)::ObjCMethSigsChecker>((anonymous namespace)::ObjCMethSigsChecker*, clang::ento::CheckerManager&) Line | Count | Source | 41 | 49 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 42 | 49 | mgr._registerForDecl(CheckerManager::CheckDeclFunc(checker, | 43 | 49 | _checkDecl<CHECKER>), | 44 | 49 | _handlesDecl); | 45 | 49 | } |
Unexecuted instantiation: DebugCheckers.cpp:void clang::ento::check::ASTDecl<clang::TranslationUnitDecl>::_register<(anonymous namespace)::CallGraphViewer>((anonymous namespace)::CallGraphViewer*, clang::ento::CheckerManager&) DebugCheckers.cpp:void clang::ento::check::ASTDecl<clang::TranslationUnitDecl>::_register<(anonymous namespace)::CallGraphDumper>((anonymous namespace)::CallGraphDumper*, clang::ento::CheckerManager&) Line | Count | Source | 41 | 3 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 42 | 3 | mgr._registerForDecl(CheckerManager::CheckDeclFunc(checker, | 43 | 3 | _checkDecl<CHECKER>), | 44 | 3 | _handlesDecl); | 45 | 3 | } |
DirectIvarAssignment.cpp:void clang::ento::check::ASTDecl<clang::ObjCImplementationDecl>::_register<(anonymous namespace)::DirectIvarAssignment>((anonymous namespace)::DirectIvarAssignment*, clang::ento::CheckerManager&) Line | Count | Source | 41 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 42 | 2 | mgr._registerForDecl(CheckerManager::CheckDeclFunc(checker, | 43 | 2 | _checkDecl<CHECKER>), | 44 | 2 | _handlesDecl); | 45 | 2 | } |
ErrnoModeling.cpp:void clang::ento::check::ASTDecl<clang::TranslationUnitDecl>::_register<(anonymous namespace)::ErrnoModeling>((anonymous namespace)::ErrnoModeling*, clang::ento::CheckerManager&) Line | Count | Source | 41 | 56 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 42 | 56 | mgr._registerForDecl(CheckerManager::CheckDeclFunc(checker, | 43 | 56 | _checkDecl<CHECKER>), | 44 | 56 | _handlesDecl); | 45 | 56 | } |
IvarInvalidationChecker.cpp:void clang::ento::check::ASTDecl<clang::ObjCImplementationDecl>::_register<(anonymous namespace)::IvarInvalidationChecker>((anonymous namespace)::IvarInvalidationChecker*, clang::ento::CheckerManager&) Line | Count | Source | 41 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 42 | 2 | mgr._registerForDecl(CheckerManager::CheckDeclFunc(checker, | 43 | 2 | _checkDecl<CHECKER>), | 44 | 2 | _handlesDecl); | 45 | 2 | } |
LLVMConventionsChecker.cpp:void clang::ento::check::ASTDecl<clang::CXXRecordDecl>::_register<(anonymous namespace)::LLVMConventionsChecker>((anonymous namespace)::LLVMConventionsChecker*, clang::ento::CheckerManager&) Line | Count | Source | 41 | 1 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 42 | 1 | mgr._registerForDecl(CheckerManager::CheckDeclFunc(checker, | 43 | 1 | _checkDecl<CHECKER>), | 44 | 1 | _handlesDecl); | 45 | 1 | } |
LocalizationChecker.cpp:void clang::ento::check::ASTDecl<clang::ObjCImplementationDecl>::_register<(anonymous namespace)::EmptyLocalizationContextChecker>((anonymous namespace)::EmptyLocalizationContextChecker*, clang::ento::CheckerManager&) Line | Count | Source | 41 | 1 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 42 | 1 | mgr._registerForDecl(CheckerManager::CheckDeclFunc(checker, | 43 | 1 | _checkDecl<CHECKER>), | 44 | 1 | _handlesDecl); | 45 | 1 | } |
NSErrorChecker.cpp:void clang::ento::check::ASTDecl<clang::ObjCMethodDecl>::_register<(anonymous namespace)::NSErrorMethodChecker>((anonymous namespace)::NSErrorMethodChecker*, clang::ento::CheckerManager&) Line | Count | Source | 41 | 48 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 42 | 48 | mgr._registerForDecl(CheckerManager::CheckDeclFunc(checker, | 43 | 48 | _checkDecl<CHECKER>), | 44 | 48 | _handlesDecl); | 45 | 48 | } |
NSErrorChecker.cpp:void clang::ento::check::ASTDecl<clang::FunctionDecl>::_register<(anonymous namespace)::CFErrorFunctionChecker>((anonymous namespace)::CFErrorFunctionChecker*, clang::ento::CheckerManager&) Line | Count | Source | 41 | 48 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 42 | 48 | mgr._registerForDecl(CheckerManager::CheckDeclFunc(checker, | 43 | 48 | _checkDecl<CHECKER>), | 44 | 48 | _handlesDecl); | 45 | 48 | } |
ObjCMissingSuperCallChecker.cpp:void clang::ento::check::ASTDecl<clang::ObjCImplementationDecl>::_register<(anonymous namespace)::ObjCSuperCallChecker>((anonymous namespace)::ObjCSuperCallChecker*, clang::ento::CheckerManager&) Line | Count | Source | 41 | 48 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 42 | 48 | mgr._registerForDecl(CheckerManager::CheckDeclFunc(checker, | 43 | 48 | _checkDecl<CHECKER>), | 44 | 48 | _handlesDecl); | 45 | 48 | } |
ObjCPropertyChecker.cpp:void clang::ento::check::ASTDecl<clang::ObjCPropertyDecl>::_register<(anonymous namespace)::ObjCPropertyChecker>((anonymous namespace)::ObjCPropertyChecker*, clang::ento::CheckerManager&) Line | Count | Source | 41 | 47 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 42 | 47 | mgr._registerForDecl(CheckerManager::CheckDeclFunc(checker, | 43 | 47 | _checkDecl<CHECKER>), | 44 | 47 | _handlesDecl); | 45 | 47 | } |
ObjCUnusedIVarsChecker.cpp:void clang::ento::check::ASTDecl<clang::ObjCImplementationDecl>::_register<(anonymous namespace)::ObjCUnusedIvarsChecker>((anonymous namespace)::ObjCUnusedIvarsChecker*, clang::ento::CheckerManager&) Line | Count | Source | 41 | 48 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 42 | 48 | mgr._registerForDecl(CheckerManager::CheckDeclFunc(checker, | 43 | 48 | _checkDecl<CHECKER>), | 44 | 48 | _handlesDecl); | 45 | 48 | } |
PaddingChecker.cpp:void clang::ento::check::ASTDecl<clang::TranslationUnitDecl>::_register<(anonymous namespace)::PaddingChecker>((anonymous namespace)::PaddingChecker*, clang::ento::CheckerManager&) Line | Count | Source | 41 | 7 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 42 | 7 | mgr._registerForDecl(CheckerManager::CheckDeclFunc(checker, | 43 | 7 | _checkDecl<CHECKER>), | 44 | 7 | _handlesDecl); | 45 | 7 | } |
NoUncountedMembersChecker.cpp:void clang::ento::check::ASTDecl<clang::TranslationUnitDecl>::_register<(anonymous namespace)::NoUncountedMemberChecker>((anonymous namespace)::NoUncountedMemberChecker*, clang::ento::CheckerManager&) Line | Count | Source | 41 | 3 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 42 | 3 | mgr._registerForDecl(CheckerManager::CheckDeclFunc(checker, | 43 | 3 | _checkDecl<CHECKER>), | 44 | 3 | _handlesDecl); | 45 | 3 | } |
RefCntblBaseVirtualDtorChecker.cpp:void clang::ento::check::ASTDecl<clang::TranslationUnitDecl>::_register<(anonymous namespace)::RefCntblBaseVirtualDtorChecker>((anonymous namespace)::RefCntblBaseVirtualDtorChecker*, clang::ento::CheckerManager&) Line | Count | Source | 41 | 3 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 42 | 3 | mgr._registerForDecl(CheckerManager::CheckDeclFunc(checker, | 43 | 3 | _checkDecl<CHECKER>), | 44 | 3 | _handlesDecl); | 45 | 3 | } |
UncountedCallArgsChecker.cpp:void clang::ento::check::ASTDecl<clang::TranslationUnitDecl>::_register<(anonymous namespace)::UncountedCallArgsChecker>((anonymous namespace)::UncountedCallArgsChecker*, clang::ento::CheckerManager&) Line | Count | Source | 41 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 42 | 2 | mgr._registerForDecl(CheckerManager::CheckDeclFunc(checker, | 43 | 2 | _checkDecl<CHECKER>), | 44 | 2 | _handlesDecl); | 45 | 2 | } |
UncountedLambdaCapturesChecker.cpp:void clang::ento::check::ASTDecl<clang::TranslationUnitDecl>::_register<(anonymous namespace)::UncountedLambdaCapturesChecker>((anonymous namespace)::UncountedLambdaCapturesChecker*, clang::ento::CheckerManager&) Line | Count | Source | 41 | 1 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 42 | 1 | mgr._registerForDecl(CheckerManager::CheckDeclFunc(checker, | 43 | 1 | _checkDecl<CHECKER>), | 44 | 1 | _handlesDecl); | 45 | 1 | } |
UncountedLocalVarsChecker.cpp:void clang::ento::check::ASTDecl<clang::TranslationUnitDecl>::_register<(anonymous namespace)::UncountedLocalVarsChecker>((anonymous namespace)::UncountedLocalVarsChecker*, clang::ento::CheckerManager&) Line | Count | Source | 41 | 1 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 42 | 1 | mgr._registerForDecl(CheckerManager::CheckDeclFunc(checker, | 43 | 1 | _checkDecl<CHECKER>), | 44 | 1 | _handlesDecl); | 45 | 1 | } |
|
46 | | }; |
47 | | |
48 | | class ASTCodeBody { |
49 | | template <typename CHECKER> |
50 | | static void _checkBody(void *checker, const Decl *D, AnalysisManager& mgr, |
51 | 9.19k | BugReporter &BR) { |
52 | 9.19k | ((const CHECKER *)checker)->checkASTCodeBody(D, mgr, BR); |
53 | 9.19k | } CStringSyntaxChecker.cpp:void clang::ento::check::ASTCodeBody::_checkBody<(anonymous namespace)::CStringSyntaxChecker>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 51 | 1.97k | BugReporter &BR) { | 52 | 1.97k | ((const CHECKER *)checker)->checkASTCodeBody(D, mgr, BR); | 53 | 1.97k | } |
CastToStructChecker.cpp:void clang::ento::check::ASTCodeBody::_checkBody<(anonymous namespace)::CastToStructChecker>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 51 | 1.36k | BugReporter &BR) { | 52 | 1.36k | ((const CHECKER *)checker)->checkASTCodeBody(D, mgr, BR); | 53 | 1.36k | } |
CheckSecuritySyntaxOnly.cpp:void clang::ento::check::ASTCodeBody::_checkBody<(anonymous namespace)::SecuritySyntaxChecker>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 51 | 144 | BugReporter &BR) { | 52 | 144 | ((const CHECKER *)checker)->checkASTCodeBody(D, mgr, BR); | 53 | 144 | } |
CheckSizeofPointer.cpp:void clang::ento::check::ASTCodeBody::_checkBody<(anonymous namespace)::SizeofPointerChecker>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 51 | 1.11k | BugReporter &BR) { | 52 | 1.11k | ((const CHECKER *)checker)->checkASTCodeBody(D, mgr, BR); | 53 | 1.11k | } |
CloneChecker.cpp:void clang::ento::check::ASTCodeBody::_checkBody<(anonymous namespace)::CloneChecker>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 51 | 93 | BugReporter &BR) { | 52 | 93 | ((const CHECKER *)checker)->checkASTCodeBody(D, mgr, BR); | 53 | 93 | } |
DeadStoresChecker.cpp:void clang::ento::check::ASTCodeBody::_checkBody<(anonymous namespace)::DeadStoresChecker>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 51 | 569 | BugReporter &BR) { | 52 | 569 | ((const CHECKER *)checker)->checkASTCodeBody(D, mgr, BR); | 53 | 569 | } |
DebugCheckers.cpp:void clang::ento::check::ASTCodeBody::_checkBody<(anonymous namespace)::DominatorsTreeDumper>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 51 | 9 | BugReporter &BR) { | 52 | 9 | ((const CHECKER *)checker)->checkASTCodeBody(D, mgr, BR); | 53 | 9 | } |
DebugCheckers.cpp:void clang::ento::check::ASTCodeBody::_checkBody<(anonymous namespace)::PostDominatorsTreeDumper>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 51 | 9 | BugReporter &BR) { | 52 | 9 | ((const CHECKER *)checker)->checkASTCodeBody(D, mgr, BR); | 53 | 9 | } |
DebugCheckers.cpp:void clang::ento::check::ASTCodeBody::_checkBody<(anonymous namespace)::ControlDependencyTreeDumper>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 51 | 9 | BugReporter &BR) { | 52 | 9 | ((const CHECKER *)checker)->checkASTCodeBody(D, mgr, BR); | 53 | 9 | } |
DebugCheckers.cpp:void clang::ento::check::ASTCodeBody::_checkBody<(anonymous namespace)::LiveVariablesDumper>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 51 | 2 | BugReporter &BR) { | 52 | 2 | ((const CHECKER *)checker)->checkASTCodeBody(D, mgr, BR); | 53 | 2 | } |
DebugCheckers.cpp:void clang::ento::check::ASTCodeBody::_checkBody<(anonymous namespace)::LiveExpressionsDumper>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 51 | 12 | BugReporter &BR) { | 52 | 12 | ((const CHECKER *)checker)->checkASTCodeBody(D, mgr, BR); | 53 | 12 | } |
Unexecuted instantiation: DebugCheckers.cpp:void clang::ento::check::ASTCodeBody::_checkBody<(anonymous namespace)::CFGViewer>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) DebugCheckers.cpp:void clang::ento::check::ASTCodeBody::_checkBody<(anonymous namespace)::CFGDumper>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 51 | 804 | BugReporter &BR) { | 52 | 804 | ((const CHECKER *)checker)->checkASTCodeBody(D, mgr, BR); | 53 | 804 | } |
GCDAntipatternChecker.cpp:void clang::ento::check::ASTCodeBody::_checkBody<(anonymous namespace)::GCDAntipatternChecker>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 51 | 79 | BugReporter &BR) { | 52 | 79 | ((const CHECKER *)checker)->checkASTCodeBody(D, mgr, BR); | 53 | 79 | } |
IdenticalExprChecker.cpp:void clang::ento::check::ASTCodeBody::_checkBody<(anonymous namespace)::FindIdenticalExprChecker>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 51 | 1.34k | BugReporter &BR) { | 52 | 1.34k | ((const CHECKER *)checker)->checkASTCodeBody(D, mgr, BR); | 53 | 1.34k | } |
LLVMConventionsChecker.cpp:void clang::ento::check::ASTCodeBody::_checkBody<(anonymous namespace)::LLVMConventionsChecker>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 51 | 5 | BugReporter &BR) { | 52 | 5 | ((const CHECKER *)checker)->checkASTCodeBody(D, mgr, BR); | 53 | 5 | } |
LocalizationChecker.cpp:void clang::ento::check::ASTCodeBody::_checkBody<(anonymous namespace)::PluralMisuseChecker>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 51 | 14 | BugReporter &BR) { | 52 | 14 | ((const CHECKER *)checker)->checkASTCodeBody(D, mgr, BR); | 53 | 14 | } |
MallocOverflowSecurityChecker.cpp:void clang::ento::check::ASTCodeBody::_checkBody<(anonymous namespace)::MallocOverflowSecurityChecker>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 51 | 24 | BugReporter &BR) { | 52 | 24 | ((const CHECKER *)checker)->checkASTCodeBody(D, mgr, BR); | 53 | 24 | } |
MallocSizeofChecker.cpp:void clang::ento::check::ASTCodeBody::_checkBody<(anonymous namespace)::MallocSizeofChecker>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 51 | 520 | BugReporter &BR) { | 52 | 520 | ((const CHECKER *)checker)->checkASTCodeBody(D, mgr, BR); | 53 | 520 | } |
NumberObjectConversionChecker.cpp:void clang::ento::check::ASTCodeBody::_checkBody<(anonymous namespace)::NumberObjectConversionChecker>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 51 | 276 | BugReporter &BR) { | 52 | 276 | ((const CHECKER *)checker)->checkASTCodeBody(D, mgr, BR); | 53 | 276 | } |
ObjCAutoreleaseWriteChecker.cpp:void clang::ento::check::ASTCodeBody::_checkBody<(anonymous namespace)::ObjCAutoreleaseWriteChecker>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 51 | 302 | BugReporter &BR) { | 52 | 302 | ((const CHECKER *)checker)->checkASTCodeBody(D, mgr, BR); | 53 | 302 | } |
ObjCContainersASTChecker.cpp:void clang::ento::check::ASTCodeBody::_checkBody<(anonymous namespace)::ObjCContainersASTChecker>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 51 | 234 | BugReporter &BR) { | 52 | 234 | ((const CHECKER *)checker)->checkASTCodeBody(D, mgr, BR); | 53 | 234 | } |
OSObjectCStyleCast.cpp:void clang::ento::check::ASTCodeBody::_checkBody<(anonymous namespace)::OSObjectCStyleCastChecker>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 51 | 11 | BugReporter &BR) { | 52 | 11 | ((const CHECKER *)checker)->checkASTCodeBody(D, mgr, BR); | 53 | 11 | } |
PointerIterationChecker.cpp:void clang::ento::check::ASTCodeBody::_checkBody<(anonymous namespace)::PointerIterationChecker>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 51 | 1 | BugReporter &BR) { | 52 | 1 | ((const CHECKER *)checker)->checkASTCodeBody(D, mgr, BR); | 53 | 1 | } |
PointerSortingChecker.cpp:void clang::ento::check::ASTCodeBody::_checkBody<(anonymous namespace)::PointerSortingChecker>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 51 | 3 | BugReporter &BR) { | 52 | 3 | ((const CHECKER *)checker)->checkASTCodeBody(D, mgr, BR); | 53 | 3 | } |
RunLoopAutoreleaseLeakChecker.cpp:void clang::ento::check::ASTCodeBody::_checkBody<(anonymous namespace)::RunLoopAutoreleaseLeakChecker>(void*, clang::Decl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 51 | 270 | BugReporter &BR) { | 52 | 270 | ((const CHECKER *)checker)->checkASTCodeBody(D, mgr, BR); | 53 | 270 | } |
|
54 | | |
55 | | public: |
56 | | template <typename CHECKER> |
57 | 805 | static void _register(CHECKER *checker, CheckerManager &mgr) { |
58 | 805 | mgr._registerForBody(CheckerManager::CheckDeclFunc(checker, |
59 | 805 | _checkBody<CHECKER>)); |
60 | 805 | } CStringSyntaxChecker.cpp:void clang::ento::check::ASTCodeBody::_register<(anonymous namespace)::CStringSyntaxChecker>((anonymous namespace)::CStringSyntaxChecker*, clang::ento::CheckerManager&) Line | Count | Source | 57 | 97 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 58 | 97 | mgr._registerForBody(CheckerManager::CheckDeclFunc(checker, | 59 | 97 | _checkBody<CHECKER>)); | 60 | 97 | } |
CastToStructChecker.cpp:void clang::ento::check::ASTCodeBody::_register<(anonymous namespace)::CastToStructChecker>((anonymous namespace)::CastToStructChecker*, clang::ento::CheckerManager&) Line | Count | Source | 57 | 80 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 58 | 80 | mgr._registerForBody(CheckerManager::CheckDeclFunc(checker, | 59 | 80 | _checkBody<CHECKER>)); | 60 | 80 | } |
CheckSecuritySyntaxOnly.cpp:void clang::ento::check::ASTCodeBody::_register<(anonymous namespace)::SecuritySyntaxChecker>((anonymous namespace)::SecuritySyntaxChecker*, clang::ento::CheckerManager&) Line | Count | Source | 57 | 50 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 58 | 50 | mgr._registerForBody(CheckerManager::CheckDeclFunc(checker, | 59 | 50 | _checkBody<CHECKER>)); | 60 | 50 | } |
CheckSizeofPointer.cpp:void clang::ento::check::ASTCodeBody::_register<(anonymous namespace)::SizeofPointerChecker>((anonymous namespace)::SizeofPointerChecker*, clang::ento::CheckerManager&) Line | Count | Source | 57 | 75 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 58 | 75 | mgr._registerForBody(CheckerManager::CheckDeclFunc(checker, | 59 | 75 | _checkBody<CHECKER>)); | 60 | 75 | } |
CloneChecker.cpp:void clang::ento::check::ASTCodeBody::_register<(anonymous namespace)::CloneChecker>((anonymous namespace)::CloneChecker*, clang::ento::CheckerManager&) Line | Count | Source | 57 | 28 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 58 | 28 | mgr._registerForBody(CheckerManager::CheckDeclFunc(checker, | 59 | 28 | _checkBody<CHECKER>)); | 60 | 28 | } |
DeadStoresChecker.cpp:void clang::ento::check::ASTCodeBody::_register<(anonymous namespace)::DeadStoresChecker>((anonymous namespace)::DeadStoresChecker*, clang::ento::CheckerManager&) Line | Count | Source | 57 | 59 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 58 | 59 | mgr._registerForBody(CheckerManager::CheckDeclFunc(checker, | 59 | 59 | _checkBody<CHECKER>)); | 60 | 59 | } |
DebugCheckers.cpp:void clang::ento::check::ASTCodeBody::_register<(anonymous namespace)::DominatorsTreeDumper>((anonymous namespace)::DominatorsTreeDumper*, clang::ento::CheckerManager&) Line | Count | Source | 57 | 3 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 58 | 3 | mgr._registerForBody(CheckerManager::CheckDeclFunc(checker, | 59 | 3 | _checkBody<CHECKER>)); | 60 | 3 | } |
DebugCheckers.cpp:void clang::ento::check::ASTCodeBody::_register<(anonymous namespace)::PostDominatorsTreeDumper>((anonymous namespace)::PostDominatorsTreeDumper*, clang::ento::CheckerManager&) Line | Count | Source | 57 | 3 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 58 | 3 | mgr._registerForBody(CheckerManager::CheckDeclFunc(checker, | 59 | 3 | _checkBody<CHECKER>)); | 60 | 3 | } |
DebugCheckers.cpp:void clang::ento::check::ASTCodeBody::_register<(anonymous namespace)::ControlDependencyTreeDumper>((anonymous namespace)::ControlDependencyTreeDumper*, clang::ento::CheckerManager&) Line | Count | Source | 57 | 3 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 58 | 3 | mgr._registerForBody(CheckerManager::CheckDeclFunc(checker, | 59 | 3 | _checkBody<CHECKER>)); | 60 | 3 | } |
DebugCheckers.cpp:void clang::ento::check::ASTCodeBody::_register<(anonymous namespace)::LiveVariablesDumper>((anonymous namespace)::LiveVariablesDumper*, clang::ento::CheckerManager&) Line | Count | Source | 57 | 1 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 58 | 1 | mgr._registerForBody(CheckerManager::CheckDeclFunc(checker, | 59 | 1 | _checkBody<CHECKER>)); | 60 | 1 | } |
DebugCheckers.cpp:void clang::ento::check::ASTCodeBody::_register<(anonymous namespace)::LiveExpressionsDumper>((anonymous namespace)::LiveExpressionsDumper*, clang::ento::CheckerManager&) Line | Count | Source | 57 | 3 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 58 | 3 | mgr._registerForBody(CheckerManager::CheckDeclFunc(checker, | 59 | 3 | _checkBody<CHECKER>)); | 60 | 3 | } |
Unexecuted instantiation: DebugCheckers.cpp:void clang::ento::check::ASTCodeBody::_register<(anonymous namespace)::CFGViewer>((anonymous namespace)::CFGViewer*, clang::ento::CheckerManager&) DebugCheckers.cpp:void clang::ento::check::ASTCodeBody::_register<(anonymous namespace)::CFGDumper>((anonymous namespace)::CFGDumper*, clang::ento::CheckerManager&) Line | Count | Source | 57 | 40 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 58 | 40 | mgr._registerForBody(CheckerManager::CheckDeclFunc(checker, | 59 | 40 | _checkBody<CHECKER>)); | 60 | 40 | } |
GCDAntipatternChecker.cpp:void clang::ento::check::ASTCodeBody::_register<(anonymous namespace)::GCDAntipatternChecker>((anonymous namespace)::GCDAntipatternChecker*, clang::ento::CheckerManager&) Line | Count | Source | 57 | 6 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 58 | 6 | mgr._registerForBody(CheckerManager::CheckDeclFunc(checker, | 59 | 6 | _checkBody<CHECKER>)); | 60 | 6 | } |
IdenticalExprChecker.cpp:void clang::ento::check::ASTCodeBody::_register<(anonymous namespace)::FindIdenticalExprChecker>((anonymous namespace)::FindIdenticalExprChecker*, clang::ento::CheckerManager&) Line | Count | Source | 57 | 75 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 58 | 75 | mgr._registerForBody(CheckerManager::CheckDeclFunc(checker, | 59 | 75 | _checkBody<CHECKER>)); | 60 | 75 | } |
LLVMConventionsChecker.cpp:void clang::ento::check::ASTCodeBody::_register<(anonymous namespace)::LLVMConventionsChecker>((anonymous namespace)::LLVMConventionsChecker*, clang::ento::CheckerManager&) Line | Count | Source | 57 | 1 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 58 | 1 | mgr._registerForBody(CheckerManager::CheckDeclFunc(checker, | 59 | 1 | _checkBody<CHECKER>)); | 60 | 1 | } |
LocalizationChecker.cpp:void clang::ento::check::ASTCodeBody::_register<(anonymous namespace)::PluralMisuseChecker>((anonymous namespace)::PluralMisuseChecker*, clang::ento::CheckerManager&) Line | Count | Source | 57 | 1 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 58 | 1 | mgr._registerForBody(CheckerManager::CheckDeclFunc(checker, | 59 | 1 | _checkBody<CHECKER>)); | 60 | 1 | } |
MallocOverflowSecurityChecker.cpp:void clang::ento::check::ASTCodeBody::_register<(anonymous namespace)::MallocOverflowSecurityChecker>((anonymous namespace)::MallocOverflowSecurityChecker*, clang::ento::CheckerManager&) Line | Count | Source | 57 | 4 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 58 | 4 | mgr._registerForBody(CheckerManager::CheckDeclFunc(checker, | 59 | 4 | _checkBody<CHECKER>)); | 60 | 4 | } |
MallocSizeofChecker.cpp:void clang::ento::check::ASTCodeBody::_register<(anonymous namespace)::MallocSizeofChecker>((anonymous namespace)::MallocSizeofChecker*, clang::ento::CheckerManager&) Line | Count | Source | 57 | 68 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 58 | 68 | mgr._registerForBody(CheckerManager::CheckDeclFunc(checker, | 59 | 68 | _checkBody<CHECKER>)); | 60 | 68 | } |
NumberObjectConversionChecker.cpp:void clang::ento::check::ASTCodeBody::_register<(anonymous namespace)::NumberObjectConversionChecker>((anonymous namespace)::NumberObjectConversionChecker*, clang::ento::CheckerManager&) Line | Count | Source | 57 | 55 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 58 | 55 | mgr._registerForBody(CheckerManager::CheckDeclFunc(checker, | 59 | 55 | _checkBody<CHECKER>)); | 60 | 55 | } |
ObjCAutoreleaseWriteChecker.cpp:void clang::ento::check::ASTCodeBody::_register<(anonymous namespace)::ObjCAutoreleaseWriteChecker>((anonymous namespace)::ObjCAutoreleaseWriteChecker*, clang::ento::CheckerManager&) Line | Count | Source | 57 | 49 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 58 | 49 | mgr._registerForBody(CheckerManager::CheckDeclFunc(checker, | 59 | 49 | _checkBody<CHECKER>)); | 60 | 49 | } |
ObjCContainersASTChecker.cpp:void clang::ento::check::ASTCodeBody::_register<(anonymous namespace)::ObjCContainersASTChecker>((anonymous namespace)::ObjCContainersASTChecker*, clang::ento::CheckerManager&) Line | Count | Source | 57 | 48 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 58 | 48 | mgr._registerForBody(CheckerManager::CheckDeclFunc(checker, | 59 | 48 | _checkBody<CHECKER>)); | 60 | 48 | } |
OSObjectCStyleCast.cpp:void clang::ento::check::ASTCodeBody::_register<(anonymous namespace)::OSObjectCStyleCastChecker>((anonymous namespace)::OSObjectCStyleCastChecker*, clang::ento::CheckerManager&) Line | Count | Source | 57 | 1 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 58 | 1 | mgr._registerForBody(CheckerManager::CheckDeclFunc(checker, | 59 | 1 | _checkBody<CHECKER>)); | 60 | 1 | } |
PointerIterationChecker.cpp:void clang::ento::check::ASTCodeBody::_register<(anonymous namespace)::PointerIterationChecker>((anonymous namespace)::PointerIterationChecker*, clang::ento::CheckerManager&) Line | Count | Source | 57 | 1 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 58 | 1 | mgr._registerForBody(CheckerManager::CheckDeclFunc(checker, | 59 | 1 | _checkBody<CHECKER>)); | 60 | 1 | } |
PointerSortingChecker.cpp:void clang::ento::check::ASTCodeBody::_register<(anonymous namespace)::PointerSortingChecker>((anonymous namespace)::PointerSortingChecker*, clang::ento::CheckerManager&) Line | Count | Source | 57 | 1 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 58 | 1 | mgr._registerForBody(CheckerManager::CheckDeclFunc(checker, | 59 | 1 | _checkBody<CHECKER>)); | 60 | 1 | } |
RunLoopAutoreleaseLeakChecker.cpp:void clang::ento::check::ASTCodeBody::_register<(anonymous namespace)::RunLoopAutoreleaseLeakChecker>((anonymous namespace)::RunLoopAutoreleaseLeakChecker*, clang::ento::CheckerManager&) Line | Count | Source | 57 | 53 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 58 | 53 | mgr._registerForBody(CheckerManager::CheckDeclFunc(checker, | 59 | 53 | _checkBody<CHECKER>)); | 60 | 53 | } |
|
61 | | }; |
62 | | |
63 | | class EndOfTranslationUnit { |
64 | | template <typename CHECKER> |
65 | | static void _checkEndOfTranslationUnit(void *checker, |
66 | | const TranslationUnitDecl *TU, |
67 | | AnalysisManager& mgr, |
68 | 32 | BugReporter &BR) { |
69 | 32 | ((const CHECKER *)checker)->checkEndOfTranslationUnit(TU, mgr, BR); |
70 | 32 | } CloneChecker.cpp:void clang::ento::check::EndOfTranslationUnit::_checkEndOfTranslationUnit<(anonymous namespace)::CloneChecker>(void*, clang::TranslationUnitDecl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 68 | 28 | BugReporter &BR) { | 69 | 28 | ((const CHECKER *)checker)->checkEndOfTranslationUnit(TU, mgr, BR); | 70 | 28 | } |
DebugCheckers.cpp:void clang::ento::check::EndOfTranslationUnit::_checkEndOfTranslationUnit<(anonymous namespace)::ConfigDumper>(void*, clang::TranslationUnitDecl const*, clang::ento::AnalysisManager&, clang::ento::BugReporter&) Line | Count | Source | 68 | 4 | BugReporter &BR) { | 69 | 4 | ((const CHECKER *)checker)->checkEndOfTranslationUnit(TU, mgr, BR); | 70 | 4 | } |
|
71 | | |
72 | | public: |
73 | | template <typename CHECKER> |
74 | 32 | static void _register(CHECKER *checker, CheckerManager &mgr){ |
75 | 32 | mgr._registerForEndOfTranslationUnit( |
76 | 32 | CheckerManager::CheckEndOfTranslationUnit(checker, |
77 | 32 | _checkEndOfTranslationUnit<CHECKER>)); |
78 | 32 | } CloneChecker.cpp:void clang::ento::check::EndOfTranslationUnit::_register<(anonymous namespace)::CloneChecker>((anonymous namespace)::CloneChecker*, clang::ento::CheckerManager&) Line | Count | Source | 74 | 28 | static void _register(CHECKER *checker, CheckerManager &mgr){ | 75 | 28 | mgr._registerForEndOfTranslationUnit( | 76 | 28 | CheckerManager::CheckEndOfTranslationUnit(checker, | 77 | 28 | _checkEndOfTranslationUnit<CHECKER>)); | 78 | 28 | } |
DebugCheckers.cpp:void clang::ento::check::EndOfTranslationUnit::_register<(anonymous namespace)::ConfigDumper>((anonymous namespace)::ConfigDumper*, clang::ento::CheckerManager&) Line | Count | Source | 74 | 4 | static void _register(CHECKER *checker, CheckerManager &mgr){ | 75 | 4 | mgr._registerForEndOfTranslationUnit( | 76 | 4 | CheckerManager::CheckEndOfTranslationUnit(checker, | 77 | 4 | _checkEndOfTranslationUnit<CHECKER>)); | 78 | 4 | } |
|
79 | | }; |
80 | | |
81 | | template <typename STMT> |
82 | | class PreStmt { |
83 | | template <typename CHECKER> |
84 | 610k | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { |
85 | 610k | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); |
86 | 610k | } AnalysisOrderChecker.cpp:void clang::ento::check::PreStmt<clang::CastExpr>::_checkStmt<(anonymous namespace)::AnalysisOrderChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 71 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 71 | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 71 | } |
Unexecuted instantiation: AnalysisOrderChecker.cpp:void clang::ento::check::PreStmt<clang::ArraySubscriptExpr>::_checkStmt<(anonymous namespace)::AnalysisOrderChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) AnalysisOrderChecker.cpp:void clang::ento::check::PreStmt<clang::CXXNewExpr>::_checkStmt<(anonymous namespace)::AnalysisOrderChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 10 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 10 | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 10 | } |
AnalysisOrderChecker.cpp:void clang::ento::check::PreStmt<clang::CXXDeleteExpr>::_checkStmt<(anonymous namespace)::AnalysisOrderChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 4 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 4 | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 4 | } |
AnalysisOrderChecker.cpp:void clang::ento::check::PreStmt<clang::CXXConstructExpr>::_checkStmt<(anonymous namespace)::AnalysisOrderChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 21 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 21 | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 21 | } |
AnalysisOrderChecker.cpp:void clang::ento::check::PreStmt<clang::OffsetOfExpr>::_checkStmt<(anonymous namespace)::AnalysisOrderChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 1 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 1 | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 1 | } |
BasicObjCFoundationChecks.cpp:void clang::ento::check::PreStmt<clang::CallExpr>::_checkStmt<(anonymous namespace)::CFNumberChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 305 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 305 | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 305 | } |
void clang::ento::check::PreStmt<clang::BinaryOperator>::_checkStmt<BitwiseShiftChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 128k | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 128k | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 128k | } |
CStringChecker.cpp:void clang::ento::check::PreStmt<clang::DeclStmt>::_checkStmt<(anonymous namespace)::CStringChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 12.6k | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 12.6k | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 12.6k | } |
CastSizeChecker.cpp:void clang::ento::check::PreStmt<clang::CastExpr>::_checkStmt<(anonymous namespace)::CastSizeChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 7.99k | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 7.99k | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 7.99k | } |
CheckObjCDealloc.cpp:void clang::ento::check::PreStmt<clang::ReturnStmt>::_checkStmt<(anonymous namespace)::ObjCDeallocChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 227 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 227 | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 227 | } |
CheckPlacementNew.cpp:void clang::ento::check::PreStmt<clang::CXXNewExpr>::_checkStmt<(anonymous namespace)::PlacementNewChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 142 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 142 | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 142 | } |
ConversionChecker.cpp:void clang::ento::check::PreStmt<clang::ImplicitCastExpr>::_checkStmt<(anonymous namespace)::ConversionChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 10.1k | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 10.1k | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 10.1k | } |
CXXDeleteChecker.cpp:void clang::ento::check::PreStmt<clang::CXXDeleteExpr>::_checkStmt<(anonymous namespace)::CXXArrayDeleteChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 16 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 16 | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 16 | } |
CXXDeleteChecker.cpp:void clang::ento::check::PreStmt<clang::CXXDeleteExpr>::_checkStmt<(anonymous namespace)::DeleteWithNonVirtualDtorChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 23 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 23 | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 23 | } |
DebugCheckers.cpp:void clang::ento::check::PreStmt<clang::Stmt>::_checkStmt<(anonymous namespace)::ReportStmts>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 16 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 16 | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 16 | } |
DivZeroChecker.cpp:void clang::ento::check::PreStmt<clang::BinaryOperator>::_checkStmt<(anonymous namespace)::DivZeroChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 128k | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 128k | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 128k | } |
EnumCastOutOfRangeChecker.cpp:void clang::ento::check::PreStmt<clang::CastExpr>::_checkStmt<(anonymous namespace)::EnumCastOutOfRangeChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 144 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 144 | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 144 | } |
FixedAddressChecker.cpp:void clang::ento::check::PreStmt<clang::BinaryOperator>::_checkStmt<(anonymous namespace)::FixedAddressChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 2.35k | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 2.35k | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 2.35k | } |
InvalidatedIteratorChecker.cpp:void clang::ento::check::PreStmt<clang::UnaryOperator>::_checkStmt<(anonymous namespace)::InvalidatedIteratorChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 28 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 28 | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 28 | } |
InvalidatedIteratorChecker.cpp:void clang::ento::check::PreStmt<clang::BinaryOperator>::_checkStmt<(anonymous namespace)::InvalidatedIteratorChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 17 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 17 | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 17 | } |
InvalidatedIteratorChecker.cpp:void clang::ento::check::PreStmt<clang::ArraySubscriptExpr>::_checkStmt<(anonymous namespace)::InvalidatedIteratorChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 2 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 2 | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 2 | } |
InvalidatedIteratorChecker.cpp:void clang::ento::check::PreStmt<clang::MemberExpr>::_checkStmt<(anonymous namespace)::InvalidatedIteratorChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 142 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 142 | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 142 | } |
IteratorRangeChecker.cpp:void clang::ento::check::PreStmt<clang::UnaryOperator>::_checkStmt<(anonymous namespace)::IteratorRangeChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 294 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 294 | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 294 | } |
IteratorRangeChecker.cpp:void clang::ento::check::PreStmt<clang::BinaryOperator>::_checkStmt<(anonymous namespace)::IteratorRangeChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 99 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 99 | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 99 | } |
IteratorRangeChecker.cpp:void clang::ento::check::PreStmt<clang::ArraySubscriptExpr>::_checkStmt<(anonymous namespace)::IteratorRangeChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 2 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 2 | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 2 | } |
IteratorRangeChecker.cpp:void clang::ento::check::PreStmt<clang::MemberExpr>::_checkStmt<(anonymous namespace)::IteratorRangeChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 634 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 634 | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 634 | } |
MacOSKeychainAPIChecker.cpp:void clang::ento::check::PreStmt<clang::CallExpr>::_checkStmt<(anonymous namespace)::MacOSKeychainAPIChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 370 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 370 | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 370 | } |
MacOSXAPIChecker.cpp:void clang::ento::check::PreStmt<clang::CallExpr>::_checkStmt<(anonymous namespace)::MacOSXAPIChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 509 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 509 | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 509 | } |
MallocChecker.cpp:void clang::ento::check::PreStmt<clang::ReturnStmt>::_checkStmt<(anonymous namespace)::MallocChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 7.03k | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 7.03k | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 7.03k | } |
MismatchedIteratorChecker.cpp:void clang::ento::check::PreStmt<clang::BinaryOperator>::_checkStmt<(anonymous namespace)::MismatchedIteratorChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 25 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 25 | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 25 | } |
MIGChecker.cpp:void clang::ento::check::PreStmt<clang::ReturnStmt>::_checkStmt<(anonymous namespace)::MIGChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 108 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 108 | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 108 | } |
NullabilityChecker.cpp:void clang::ento::check::PreStmt<clang::ReturnStmt>::_checkStmt<(anonymous namespace)::NullabilityChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 317 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 317 | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 317 | } |
ObjCAtSyncChecker.cpp:void clang::ento::check::PreStmt<clang::ObjCAtSynchronizedStmt>::_checkStmt<(anonymous namespace)::ObjCAtSyncChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 14 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 14 | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 14 | } |
ObjCContainersChecker.cpp:void clang::ento::check::PreStmt<clang::CallExpr>::_checkStmt<(anonymous namespace)::ObjCContainersChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 354 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 354 | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 354 | } |
ObjCSelfInitChecker.cpp:void clang::ento::check::PreStmt<clang::ReturnStmt>::_checkStmt<(anonymous namespace)::ObjCSelfInitChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 239 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 239 | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 239 | } |
PointerArithChecker.cpp:void clang::ento::check::PreStmt<clang::BinaryOperator>::_checkStmt<(anonymous namespace)::PointerArithChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 40.6k | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 40.6k | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 40.6k | } |
PointerArithChecker.cpp:void clang::ento::check::PreStmt<clang::UnaryOperator>::_checkStmt<(anonymous namespace)::PointerArithChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 11.2k | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 11.2k | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 11.2k | } |
PointerArithChecker.cpp:void clang::ento::check::PreStmt<clang::ArraySubscriptExpr>::_checkStmt<(anonymous namespace)::PointerArithChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 441 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 441 | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 441 | } |
PointerArithChecker.cpp:void clang::ento::check::PreStmt<clang::CastExpr>::_checkStmt<(anonymous namespace)::PointerArithChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 143k | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 143k | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 143k | } |
PointerSubChecker.cpp:void clang::ento::check::PreStmt<clang::BinaryOperator>::_checkStmt<(anonymous namespace)::PointerSubChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 2.35k | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 2.35k | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 2.35k | } |
ReturnPointerRangeChecker.cpp:void clang::ento::check::PreStmt<clang::ReturnStmt>::_checkStmt<(anonymous namespace)::ReturnPointerRangeChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 282 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 282 | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 282 | } |
ReturnUndefChecker.cpp:void clang::ento::check::PreStmt<clang::ReturnStmt>::_checkStmt<(anonymous namespace)::ReturnUndefChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 23.4k | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 23.4k | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 23.4k | } |
StackAddrEscapeChecker.cpp:void clang::ento::check::PreStmt<clang::ReturnStmt>::_checkStmt<(anonymous namespace)::StackAddrEscapeChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 23.4k | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 23.4k | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 23.4k | } |
TestAfterDivZeroChecker.cpp:void clang::ento::check::PreStmt<clang::BinaryOperator>::_checkStmt<(anonymous namespace)::TestAfterDivZeroChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 2.17k | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 2.17k | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 2.17k | } |
UndefinedArraySubscriptChecker.cpp:void clang::ento::check::PreStmt<clang::ArraySubscriptExpr>::_checkStmt<(anonymous namespace)::UndefinedArraySubscriptChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 16.9k | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 16.9k | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 16.9k | } |
UnixAPIChecker.cpp:void clang::ento::check::PreStmt<clang::CallExpr>::_checkStmt<(anonymous namespace)::UnixAPIMisuseChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 1.61k | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 1.61k | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 1.61k | } |
UnixAPIChecker.cpp:void clang::ento::check::PreStmt<clang::CallExpr>::_checkStmt<(anonymous namespace)::UnixAPIPortabilityChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 95 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 95 | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 95 | } |
VforkChecker.cpp:void clang::ento::check::PreStmt<clang::ReturnStmt>::_checkStmt<(anonymous namespace)::VforkChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 155 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 155 | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 155 | } |
VLASizeChecker.cpp:void clang::ento::check::PreStmt<clang::DeclStmt>::_checkStmt<(anonymous namespace)::VLASizeChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 41.3k | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 41.3k | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 41.3k | } |
VLASizeChecker.cpp:void clang::ento::check::PreStmt<clang::UnaryExprOrTypeTraitExpr>::_checkStmt<(anonymous namespace)::VLASizeChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 1.06k | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 1.06k | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 1.06k | } |
ValistChecker.cpp:void clang::ento::check::PreStmt<clang::VAArgExpr>::_checkStmt<(anonymous namespace)::ValistChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 84 | 51 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 85 | 51 | ((const CHECKER *)checker)->checkPreStmt(cast<STMT>(S), C); | 86 | 51 | } |
Unexecuted instantiation: MainCallChecker.cpp:void clang::ento::check::PreStmt<clang::CallExpr>::_checkStmt<(anonymous namespace)::MainCallChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) |
87 | | |
88 | 90.7k | static bool _handlesStmt(const Stmt *S) { |
89 | 90.7k | return isa<STMT>(S); |
90 | 90.7k | } clang::ento::check::PreStmt<clang::CXXDeleteExpr>::_handlesStmt(clang::Stmt const*) Line | Count | Source | 88 | 84 | static bool _handlesStmt(const Stmt *S) { | 89 | 84 | return isa<STMT>(S); | 90 | 84 | } |
clang::ento::check::PreStmt<clang::CXXConstructExpr>::_handlesStmt(clang::Stmt const*) Line | Count | Source | 88 | 59 | static bool _handlesStmt(const Stmt *S) { | 89 | 59 | return isa<STMT>(S); | 90 | 59 | } |
clang::ento::check::PreStmt<clang::OffsetOfExpr>::_handlesStmt(clang::Stmt const*) Line | Count | Source | 88 | 59 | static bool _handlesStmt(const Stmt *S) { | 89 | 59 | return isa<STMT>(S); | 90 | 59 | } |
clang::ento::check::PreStmt<clang::CallExpr>::_handlesStmt(clang::Stmt const*) Line | Count | Source | 88 | 1.57k | static bool _handlesStmt(const Stmt *S) { | 89 | 1.57k | return isa<STMT>(S); | 90 | 1.57k | } |
clang::ento::check::PreStmt<clang::DeclStmt>::_handlesStmt(clang::Stmt const*) Line | Count | Source | 88 | 13.3k | static bool _handlesStmt(const Stmt *S) { | 89 | 13.3k | return isa<STMT>(S); | 90 | 13.3k | } |
clang::ento::check::PreStmt<clang::CastExpr>::_handlesStmt(clang::Stmt const*) Line | Count | Source | 88 | 1.36k | static bool _handlesStmt(const Stmt *S) { | 89 | 1.36k | return isa<STMT>(S); | 90 | 1.36k | } |
clang::ento::check::PreStmt<clang::CXXNewExpr>::_handlesStmt(clang::Stmt const*) Line | Count | Source | 88 | 740 | static bool _handlesStmt(const Stmt *S) { | 89 | 740 | return isa<STMT>(S); | 90 | 740 | } |
clang::ento::check::PreStmt<clang::ImplicitCastExpr>::_handlesStmt(clang::Stmt const*) Line | Count | Source | 88 | 726 | static bool _handlesStmt(const Stmt *S) { | 89 | 726 | return isa<STMT>(S); | 90 | 726 | } |
clang::ento::check::PreStmt<clang::Stmt>::_handlesStmt(clang::Stmt const*) Line | Count | Source | 88 | 13 | static bool _handlesStmt(const Stmt *S) { | 89 | 13 | return isa<STMT>(S); | 90 | 13 | } |
clang::ento::check::PreStmt<clang::BinaryOperator>::_handlesStmt(clang::Stmt const*) Line | Count | Source | 88 | 24.3k | static bool _handlesStmt(const Stmt *S) { | 89 | 24.3k | return isa<STMT>(S); | 90 | 24.3k | } |
clang::ento::check::PreStmt<clang::MemberExpr>::_handlesStmt(clang::Stmt const*) Line | Count | Source | 88 | 61 | static bool _handlesStmt(const Stmt *S) { | 89 | 61 | return isa<STMT>(S); | 90 | 61 | } |
clang::ento::check::PreStmt<clang::ReturnStmt>::_handlesStmt(clang::Stmt const*) Line | Count | Source | 88 | 25.3k | static bool _handlesStmt(const Stmt *S) { | 89 | 25.3k | return isa<STMT>(S); | 90 | 25.3k | } |
clang::ento::check::PreStmt<clang::ObjCAtSynchronizedStmt>::_handlesStmt(clang::Stmt const*) Line | Count | Source | 88 | 103 | static bool _handlesStmt(const Stmt *S) { | 89 | 103 | return isa<STMT>(S); | 90 | 103 | } |
clang::ento::check::PreStmt<clang::UnaryOperator>::_handlesStmt(clang::Stmt const*) Line | Count | Source | 88 | 833 | static bool _handlesStmt(const Stmt *S) { | 89 | 833 | return isa<STMT>(S); | 90 | 833 | } |
clang::ento::check::PreStmt<clang::ArraySubscriptExpr>::_handlesStmt(clang::Stmt const*) Line | Count | Source | 88 | 11.5k | static bool _handlesStmt(const Stmt *S) { | 89 | 11.5k | return isa<STMT>(S); | 90 | 11.5k | } |
clang::ento::check::PreStmt<clang::UnaryExprOrTypeTraitExpr>::_handlesStmt(clang::Stmt const*) Line | Count | Source | 88 | 10.6k | static bool _handlesStmt(const Stmt *S) { | 89 | 10.6k | return isa<STMT>(S); | 90 | 10.6k | } |
clang::ento::check::PreStmt<clang::VAArgExpr>::_handlesStmt(clang::Stmt const*) Line | Count | Source | 88 | 54 | static bool _handlesStmt(const Stmt *S) { | 89 | 54 | return isa<STMT>(S); | 90 | 54 | } |
|
91 | | public: |
92 | | template <typename CHECKER> |
93 | 10.9k | static void _register(CHECKER *checker, CheckerManager &mgr) { |
94 | 10.9k | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, |
95 | 10.9k | _checkStmt<CHECKER>), |
96 | 10.9k | _handlesStmt); |
97 | 10.9k | } AnalysisOrderChecker.cpp:void clang::ento::check::PreStmt<clang::CastExpr>::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 12 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 12 | _checkStmt<CHECKER>), | 96 | 12 | _handlesStmt); | 97 | 12 | } |
AnalysisOrderChecker.cpp:void clang::ento::check::PreStmt<clang::ArraySubscriptExpr>::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 12 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 12 | _checkStmt<CHECKER>), | 96 | 12 | _handlesStmt); | 97 | 12 | } |
AnalysisOrderChecker.cpp:void clang::ento::check::PreStmt<clang::CXXNewExpr>::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 12 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 12 | _checkStmt<CHECKER>), | 96 | 12 | _handlesStmt); | 97 | 12 | } |
AnalysisOrderChecker.cpp:void clang::ento::check::PreStmt<clang::CXXDeleteExpr>::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 12 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 12 | _checkStmt<CHECKER>), | 96 | 12 | _handlesStmt); | 97 | 12 | } |
AnalysisOrderChecker.cpp:void clang::ento::check::PreStmt<clang::CXXConstructExpr>::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 12 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 12 | _checkStmt<CHECKER>), | 96 | 12 | _handlesStmt); | 97 | 12 | } |
AnalysisOrderChecker.cpp:void clang::ento::check::PreStmt<clang::OffsetOfExpr>::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 12 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 12 | _checkStmt<CHECKER>), | 96 | 12 | _handlesStmt); | 97 | 12 | } |
BasicObjCFoundationChecks.cpp:void clang::ento::check::PreStmt<clang::CallExpr>::_register<(anonymous namespace)::CFNumberChecker>((anonymous namespace)::CFNumberChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 47 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 47 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 47 | _checkStmt<CHECKER>), | 96 | 47 | _handlesStmt); | 97 | 47 | } |
void clang::ento::check::PreStmt<clang::BinaryOperator>::_register<BitwiseShiftChecker>(BitwiseShiftChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 1.28k | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 1.28k | _checkStmt<CHECKER>), | 96 | 1.28k | _handlesStmt); | 97 | 1.28k | } |
CStringChecker.cpp:void clang::ento::check::PreStmt<clang::DeclStmt>::_register<(anonymous namespace)::CStringChecker>((anonymous namespace)::CStringChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 274 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 274 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 274 | _checkStmt<CHECKER>), | 96 | 274 | _handlesStmt); | 97 | 274 | } |
CastSizeChecker.cpp:void clang::ento::check::PreStmt<clang::CastExpr>::_register<(anonymous namespace)::CastSizeChecker>((anonymous namespace)::CastSizeChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 62 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 62 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 62 | _checkStmt<CHECKER>), | 96 | 62 | _handlesStmt); | 97 | 62 | } |
CheckObjCDealloc.cpp:void clang::ento::check::PreStmt<clang::ReturnStmt>::_register<(anonymous namespace)::ObjCDeallocChecker>((anonymous namespace)::ObjCDeallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 50 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 50 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 50 | _checkStmt<CHECKER>), | 96 | 50 | _handlesStmt); | 97 | 50 | } |
CheckPlacementNew.cpp:void clang::ento::check::PreStmt<clang::CXXNewExpr>::_register<(anonymous namespace)::PlacementNewChecker>((anonymous namespace)::PlacementNewChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 67 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 67 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 67 | _checkStmt<CHECKER>), | 96 | 67 | _handlesStmt); | 97 | 67 | } |
ConversionChecker.cpp:void clang::ento::check::PreStmt<clang::ImplicitCastExpr>::_register<(anonymous namespace)::ConversionChecker>((anonymous namespace)::ConversionChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 77 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 77 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 77 | _checkStmt<CHECKER>), | 96 | 77 | _handlesStmt); | 97 | 77 | } |
CXXDeleteChecker.cpp:void clang::ento::check::PreStmt<clang::CXXDeleteExpr>::_register<(anonymous namespace)::CXXArrayDeleteChecker>((anonymous namespace)::CXXArrayDeleteChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 1 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 1 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 1 | _checkStmt<CHECKER>), | 96 | 1 | _handlesStmt); | 97 | 1 | } |
CXXDeleteChecker.cpp:void clang::ento::check::PreStmt<clang::CXXDeleteExpr>::_register<(anonymous namespace)::DeleteWithNonVirtualDtorChecker>((anonymous namespace)::DeleteWithNonVirtualDtorChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 1 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 1 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 1 | _checkStmt<CHECKER>), | 96 | 1 | _handlesStmt); | 97 | 1 | } |
DebugCheckers.cpp:void clang::ento::check::PreStmt<clang::Stmt>::_register<(anonymous namespace)::ReportStmts>((anonymous namespace)::ReportStmts*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 2 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 2 | _checkStmt<CHECKER>), | 96 | 2 | _handlesStmt); | 97 | 2 | } |
DivZeroChecker.cpp:void clang::ento::check::PreStmt<clang::BinaryOperator>::_register<(anonymous namespace)::DivZeroChecker>((anonymous namespace)::DivZeroChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 1.28k | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 1.28k | _checkStmt<CHECKER>), | 96 | 1.28k | _handlesStmt); | 97 | 1.28k | } |
EnumCastOutOfRangeChecker.cpp:void clang::ento::check::PreStmt<clang::CastExpr>::_register<(anonymous namespace)::EnumCastOutOfRangeChecker>((anonymous namespace)::EnumCastOutOfRangeChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 2 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 2 | _checkStmt<CHECKER>), | 96 | 2 | _handlesStmt); | 97 | 2 | } |
FixedAddressChecker.cpp:void clang::ento::check::PreStmt<clang::BinaryOperator>::_register<(anonymous namespace)::FixedAddressChecker>((anonymous namespace)::FixedAddressChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 76 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 76 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 76 | _checkStmt<CHECKER>), | 96 | 76 | _handlesStmt); | 97 | 76 | } |
InvalidatedIteratorChecker.cpp:void clang::ento::check::PreStmt<clang::UnaryOperator>::_register<(anonymous namespace)::InvalidatedIteratorChecker>((anonymous namespace)::InvalidatedIteratorChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 2 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 2 | _checkStmt<CHECKER>), | 96 | 2 | _handlesStmt); | 97 | 2 | } |
InvalidatedIteratorChecker.cpp:void clang::ento::check::PreStmt<clang::BinaryOperator>::_register<(anonymous namespace)::InvalidatedIteratorChecker>((anonymous namespace)::InvalidatedIteratorChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 2 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 2 | _checkStmt<CHECKER>), | 96 | 2 | _handlesStmt); | 97 | 2 | } |
InvalidatedIteratorChecker.cpp:void clang::ento::check::PreStmt<clang::ArraySubscriptExpr>::_register<(anonymous namespace)::InvalidatedIteratorChecker>((anonymous namespace)::InvalidatedIteratorChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 2 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 2 | _checkStmt<CHECKER>), | 96 | 2 | _handlesStmt); | 97 | 2 | } |
InvalidatedIteratorChecker.cpp:void clang::ento::check::PreStmt<clang::MemberExpr>::_register<(anonymous namespace)::InvalidatedIteratorChecker>((anonymous namespace)::InvalidatedIteratorChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 2 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 2 | _checkStmt<CHECKER>), | 96 | 2 | _handlesStmt); | 97 | 2 | } |
IteratorRangeChecker.cpp:void clang::ento::check::PreStmt<clang::UnaryOperator>::_register<(anonymous namespace)::IteratorRangeChecker>((anonymous namespace)::IteratorRangeChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 2 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 2 | _checkStmt<CHECKER>), | 96 | 2 | _handlesStmt); | 97 | 2 | } |
IteratorRangeChecker.cpp:void clang::ento::check::PreStmt<clang::BinaryOperator>::_register<(anonymous namespace)::IteratorRangeChecker>((anonymous namespace)::IteratorRangeChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 2 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 2 | _checkStmt<CHECKER>), | 96 | 2 | _handlesStmt); | 97 | 2 | } |
IteratorRangeChecker.cpp:void clang::ento::check::PreStmt<clang::ArraySubscriptExpr>::_register<(anonymous namespace)::IteratorRangeChecker>((anonymous namespace)::IteratorRangeChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 2 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 2 | _checkStmt<CHECKER>), | 96 | 2 | _handlesStmt); | 97 | 2 | } |
IteratorRangeChecker.cpp:void clang::ento::check::PreStmt<clang::MemberExpr>::_register<(anonymous namespace)::IteratorRangeChecker>((anonymous namespace)::IteratorRangeChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 2 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 2 | _checkStmt<CHECKER>), | 96 | 2 | _handlesStmt); | 97 | 2 | } |
MacOSKeychainAPIChecker.cpp:void clang::ento::check::PreStmt<clang::CallExpr>::_register<(anonymous namespace)::MacOSKeychainAPIChecker>((anonymous namespace)::MacOSKeychainAPIChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 48 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 48 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 48 | _checkStmt<CHECKER>), | 96 | 48 | _handlesStmt); | 97 | 48 | } |
MacOSXAPIChecker.cpp:void clang::ento::check::PreStmt<clang::CallExpr>::_register<(anonymous namespace)::MacOSXAPIChecker>((anonymous namespace)::MacOSXAPIChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 51 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 51 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 51 | _checkStmt<CHECKER>), | 96 | 51 | _handlesStmt); | 97 | 51 | } |
MallocChecker.cpp:void clang::ento::check::PreStmt<clang::ReturnStmt>::_register<(anonymous namespace)::MallocChecker>((anonymous namespace)::MallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 245 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 245 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 245 | _checkStmt<CHECKER>), | 96 | 245 | _handlesStmt); | 97 | 245 | } |
MismatchedIteratorChecker.cpp:void clang::ento::check::PreStmt<clang::BinaryOperator>::_register<(anonymous namespace)::MismatchedIteratorChecker>((anonymous namespace)::MismatchedIteratorChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 2 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 2 | _checkStmt<CHECKER>), | 96 | 2 | _handlesStmt); | 97 | 2 | } |
MIGChecker.cpp:void clang::ento::check::PreStmt<clang::ReturnStmt>::_register<(anonymous namespace)::MIGChecker>((anonymous namespace)::MIGChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 47 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 47 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 47 | _checkStmt<CHECKER>), | 96 | 47 | _handlesStmt); | 97 | 47 | } |
NullabilityChecker.cpp:void clang::ento::check::PreStmt<clang::ReturnStmt>::_register<(anonymous namespace)::NullabilityChecker>((anonymous namespace)::NullabilityChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 52 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 52 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 52 | _checkStmt<CHECKER>), | 96 | 52 | _handlesStmt); | 97 | 52 | } |
ObjCAtSyncChecker.cpp:void clang::ento::check::PreStmt<clang::ObjCAtSynchronizedStmt>::_register<(anonymous namespace)::ObjCAtSyncChecker>((anonymous namespace)::ObjCAtSyncChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 11 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 11 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 11 | _checkStmt<CHECKER>), | 96 | 11 | _handlesStmt); | 97 | 11 | } |
ObjCContainersChecker.cpp:void clang::ento::check::PreStmt<clang::CallExpr>::_register<(anonymous namespace)::ObjCContainersChecker>((anonymous namespace)::ObjCContainersChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 47 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 47 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 47 | _checkStmt<CHECKER>), | 96 | 47 | _handlesStmt); | 97 | 47 | } |
ObjCSelfInitChecker.cpp:void clang::ento::check::PreStmt<clang::ReturnStmt>::_register<(anonymous namespace)::ObjCSelfInitChecker>((anonymous namespace)::ObjCSelfInitChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 50 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 50 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 50 | _checkStmt<CHECKER>), | 96 | 50 | _handlesStmt); | 97 | 50 | } |
PointerArithChecker.cpp:void clang::ento::check::PreStmt<clang::BinaryOperator>::_register<(anonymous namespace)::PointerArithChecker>((anonymous namespace)::PointerArithChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 79 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 79 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 79 | _checkStmt<CHECKER>), | 96 | 79 | _handlesStmt); | 97 | 79 | } |
PointerArithChecker.cpp:void clang::ento::check::PreStmt<clang::UnaryOperator>::_register<(anonymous namespace)::PointerArithChecker>((anonymous namespace)::PointerArithChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 79 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 79 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 79 | _checkStmt<CHECKER>), | 96 | 79 | _handlesStmt); | 97 | 79 | } |
PointerArithChecker.cpp:void clang::ento::check::PreStmt<clang::ArraySubscriptExpr>::_register<(anonymous namespace)::PointerArithChecker>((anonymous namespace)::PointerArithChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 79 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 79 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 79 | _checkStmt<CHECKER>), | 96 | 79 | _handlesStmt); | 97 | 79 | } |
PointerArithChecker.cpp:void clang::ento::check::PreStmt<clang::CastExpr>::_register<(anonymous namespace)::PointerArithChecker>((anonymous namespace)::PointerArithChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 79 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 79 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 79 | _checkStmt<CHECKER>), | 96 | 79 | _handlesStmt); | 97 | 79 | } |
PointerSubChecker.cpp:void clang::ento::check::PreStmt<clang::BinaryOperator>::_register<(anonymous namespace)::PointerSubChecker>((anonymous namespace)::PointerSubChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 76 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 76 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 76 | _checkStmt<CHECKER>), | 96 | 76 | _handlesStmt); | 97 | 76 | } |
ReturnPointerRangeChecker.cpp:void clang::ento::check::PreStmt<clang::ReturnStmt>::_register<(anonymous namespace)::ReturnPointerRangeChecker>((anonymous namespace)::ReturnPointerRangeChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 3 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 3 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 3 | _checkStmt<CHECKER>), | 96 | 3 | _handlesStmt); | 97 | 3 | } |
ReturnUndefChecker.cpp:void clang::ento::check::PreStmt<clang::ReturnStmt>::_register<(anonymous namespace)::ReturnUndefChecker>((anonymous namespace)::ReturnUndefChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 1.28k | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 1.28k | _checkStmt<CHECKER>), | 96 | 1.28k | _handlesStmt); | 97 | 1.28k | } |
StackAddrEscapeChecker.cpp:void clang::ento::check::PreStmt<clang::ReturnStmt>::_register<(anonymous namespace)::StackAddrEscapeChecker>((anonymous namespace)::StackAddrEscapeChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 1.28k | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 1.28k | _checkStmt<CHECKER>), | 96 | 1.28k | _handlesStmt); | 97 | 1.28k | } |
TestAfterDivZeroChecker.cpp:void clang::ento::check::PreStmt<clang::BinaryOperator>::_register<(anonymous namespace)::TestAfterDivZeroChecker>((anonymous namespace)::TestAfterDivZeroChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 76 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 76 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 76 | _checkStmt<CHECKER>), | 96 | 76 | _handlesStmt); | 97 | 76 | } |
UndefinedArraySubscriptChecker.cpp:void clang::ento::check::PreStmt<clang::ArraySubscriptExpr>::_register<(anonymous namespace)::UndefinedArraySubscriptChecker>((anonymous namespace)::UndefinedArraySubscriptChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 1.28k | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 1.28k | _checkStmt<CHECKER>), | 96 | 1.28k | _handlesStmt); | 97 | 1.28k | } |
UnixAPIChecker.cpp:void clang::ento::check::PreStmt<clang::CallExpr>::_register<(anonymous namespace)::UnixAPIMisuseChecker>((anonymous namespace)::UnixAPIMisuseChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 71 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 71 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 71 | _checkStmt<CHECKER>), | 96 | 71 | _handlesStmt); | 97 | 71 | } |
UnixAPIChecker.cpp:void clang::ento::check::PreStmt<clang::CallExpr>::_register<(anonymous namespace)::UnixAPIPortabilityChecker>((anonymous namespace)::UnixAPIPortabilityChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 4 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 4 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 4 | _checkStmt<CHECKER>), | 96 | 4 | _handlesStmt); | 97 | 4 | } |
VforkChecker.cpp:void clang::ento::check::PreStmt<clang::ReturnStmt>::_register<(anonymous namespace)::VforkChecker>((anonymous namespace)::VforkChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 68 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 68 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 68 | _checkStmt<CHECKER>), | 96 | 68 | _handlesStmt); | 97 | 68 | } |
VLASizeChecker.cpp:void clang::ento::check::PreStmt<clang::DeclStmt>::_register<(anonymous namespace)::VLASizeChecker>((anonymous namespace)::VLASizeChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 1.28k | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 1.28k | _checkStmt<CHECKER>), | 96 | 1.28k | _handlesStmt); | 97 | 1.28k | } |
VLASizeChecker.cpp:void clang::ento::check::PreStmt<clang::UnaryExprOrTypeTraitExpr>::_register<(anonymous namespace)::VLASizeChecker>((anonymous namespace)::VLASizeChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 1.28k | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 1.28k | _checkStmt<CHECKER>), | 96 | 1.28k | _handlesStmt); | 97 | 1.28k | } |
ValistChecker.cpp:void clang::ento::check::PreStmt<clang::VAArgExpr>::_register<(anonymous namespace)::ValistChecker>((anonymous namespace)::ValistChecker*, clang::ento::CheckerManager&) Line | Count | Source | 93 | 7 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 94 | 7 | mgr._registerForPreStmt(CheckerManager::CheckStmtFunc(checker, | 95 | 7 | _checkStmt<CHECKER>), | 96 | 7 | _handlesStmt); | 97 | 7 | } |
Unexecuted instantiation: MainCallChecker.cpp:void clang::ento::check::PreStmt<clang::CallExpr>::_register<(anonymous namespace)::MainCallChecker>((anonymous namespace)::MainCallChecker*, clang::ento::CheckerManager&) |
98 | | }; |
99 | | |
100 | | template <typename STMT> |
101 | | class PostStmt { |
102 | | template <typename CHECKER> |
103 | 739k | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { |
104 | 739k | ((const CHECKER *)checker)->checkPostStmt(cast<STMT>(S), C); |
105 | 739k | } AnalysisOrderChecker.cpp:void clang::ento::check::PostStmt<clang::CastExpr>::_checkStmt<(anonymous namespace)::AnalysisOrderChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 103 | 71 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 104 | 71 | ((const CHECKER *)checker)->checkPostStmt(cast<STMT>(S), C); | 105 | 71 | } |
Unexecuted instantiation: AnalysisOrderChecker.cpp:void clang::ento::check::PostStmt<clang::ArraySubscriptExpr>::_checkStmt<(anonymous namespace)::AnalysisOrderChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) AnalysisOrderChecker.cpp:void clang::ento::check::PostStmt<clang::CXXNewExpr>::_checkStmt<(anonymous namespace)::AnalysisOrderChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 103 | 10 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 104 | 10 | ((const CHECKER *)checker)->checkPostStmt(cast<STMT>(S), C); | 105 | 10 | } |
AnalysisOrderChecker.cpp:void clang::ento::check::PostStmt<clang::CXXDeleteExpr>::_checkStmt<(anonymous namespace)::AnalysisOrderChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 103 | 5 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 104 | 5 | ((const CHECKER *)checker)->checkPostStmt(cast<STMT>(S), C); | 105 | 5 | } |
AnalysisOrderChecker.cpp:void clang::ento::check::PostStmt<clang::CXXConstructExpr>::_checkStmt<(anonymous namespace)::AnalysisOrderChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 103 | 21 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 104 | 21 | ((const CHECKER *)checker)->checkPostStmt(cast<STMT>(S), C); | 105 | 21 | } |
AnalysisOrderChecker.cpp:void clang::ento::check::PostStmt<clang::OffsetOfExpr>::_checkStmt<(anonymous namespace)::AnalysisOrderChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 103 | 1 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 104 | 1 | ((const CHECKER *)checker)->checkPostStmt(cast<STMT>(S), C); | 105 | 1 | } |
BasicObjCFoundationChecks.cpp:void clang::ento::check::PostStmt<clang::ObjCDictionaryLiteral>::_checkStmt<(anonymous namespace)::NilArgChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 103 | 12 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 104 | 12 | ((const CHECKER *)checker)->checkPostStmt(cast<STMT>(S), C); | 105 | 12 | } |
BasicObjCFoundationChecks.cpp:void clang::ento::check::PostStmt<clang::ObjCArrayLiteral>::_checkStmt<(anonymous namespace)::NilArgChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 103 | 10 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 104 | 10 | ((const CHECKER *)checker)->checkPostStmt(cast<STMT>(S), C); | 105 | 10 | } |
BasicObjCFoundationChecks.cpp:void clang::ento::check::PostStmt<clang::ObjCForCollectionStmt>::_checkStmt<(anonymous namespace)::ObjCLoopChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 103 | 423 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 104 | 423 | ((const CHECKER *)checker)->checkPostStmt(cast<STMT>(S), C); | 105 | 423 | } |
BasicObjCFoundationChecks.cpp:void clang::ento::check::PostStmt<clang::ObjCArrayLiteral>::_checkStmt<(anonymous namespace)::ObjCNonNilReturnValueChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 103 | 5 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 104 | 5 | ((const CHECKER *)checker)->checkPostStmt(cast<STMT>(S), C); | 105 | 5 | } |
BasicObjCFoundationChecks.cpp:void clang::ento::check::PostStmt<clang::ObjCDictionaryLiteral>::_checkStmt<(anonymous namespace)::ObjCNonNilReturnValueChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 103 | 8 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 104 | 8 | ((const CHECKER *)checker)->checkPostStmt(cast<STMT>(S), C); | 105 | 8 | } |
BasicObjCFoundationChecks.cpp:void clang::ento::check::PostStmt<clang::ObjCBoxedExpr>::_checkStmt<(anonymous namespace)::ObjCNonNilReturnValueChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 103 | 10 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 104 | 10 | ((const CHECKER *)checker)->checkPostStmt(cast<STMT>(S), C); | 105 | 10 | } |
DynamicTypePropagation.cpp:void clang::ento::check::PostStmt<clang::CastExpr>::_checkStmt<(anonymous namespace)::DynamicTypePropagation>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 103 | 419k | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 104 | 419k | ((const CHECKER *)checker)->checkPostStmt(cast<STMT>(S), C); | 105 | 419k | } |
DynamicTypePropagation.cpp:void clang::ento::check::PostStmt<clang::CXXNewExpr>::_checkStmt<(anonymous namespace)::DynamicTypePropagation>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 103 | 1.00k | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 104 | 1.00k | ((const CHECKER *)checker)->checkPostStmt(cast<STMT>(S), C); | 105 | 1.00k | } |
DynamicTypeChecker.cpp:void clang::ento::check::PostStmt<clang::ImplicitCastExpr>::_checkStmt<(anonymous namespace)::DynamicTypeChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 103 | 8.52k | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 104 | 8.52k | ((const CHECKER *)checker)->checkPostStmt(cast<STMT>(S), C); | 105 | 8.52k | } |
IteratorModeling.cpp:void clang::ento::check::PostStmt<clang::UnaryOperator>::_checkStmt<(anonymous namespace)::IteratorModeling>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 103 | 971 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 104 | 971 | ((const CHECKER *)checker)->checkPostStmt(cast<STMT>(S), C); | 105 | 971 | } |
IteratorModeling.cpp:void clang::ento::check::PostStmt<clang::BinaryOperator>::_checkStmt<(anonymous namespace)::IteratorModeling>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 103 | 912 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 104 | 912 | ((const CHECKER *)checker)->checkPostStmt(cast<STMT>(S), C); | 105 | 912 | } |
IteratorModeling.cpp:void clang::ento::check::PostStmt<clang::MaterializeTemporaryExpr>::_checkStmt<(anonymous namespace)::IteratorModeling>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 103 | 5.02k | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 104 | 5.02k | ((const CHECKER *)checker)->checkPostStmt(cast<STMT>(S), C); | 105 | 5.02k | } |
LocalizationChecker.cpp:void clang::ento::check::PostStmt<clang::ObjCStringLiteral>::_checkStmt<(anonymous namespace)::NonLocalizedStringChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 103 | 108 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 104 | 108 | ((const CHECKER *)checker)->checkPostStmt(cast<STMT>(S), C); | 105 | 108 | } |
MacOSKeychainAPIChecker.cpp:void clang::ento::check::PostStmt<clang::CallExpr>::_checkStmt<(anonymous namespace)::MacOSKeychainAPIChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 103 | 373 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 104 | 373 | ((const CHECKER *)checker)->checkPostStmt(cast<STMT>(S), C); | 105 | 373 | } |
MallocChecker.cpp:void clang::ento::check::PostStmt<clang::BlockExpr>::_checkStmt<(anonymous namespace)::MallocChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 103 | 58 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 104 | 58 | ((const CHECKER *)checker)->checkPostStmt(cast<STMT>(S), C); | 105 | 58 | } |
NullabilityChecker.cpp:void clang::ento::check::PostStmt<clang::ExplicitCastExpr>::_checkStmt<(anonymous namespace)::NullabilityChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 103 | 129 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 104 | 129 | ((const CHECKER *)checker)->checkPostStmt(cast<STMT>(S), C); | 105 | 129 | } |
ObjCContainersChecker.cpp:void clang::ento::check::PostStmt<clang::CallExpr>::_checkStmt<(anonymous namespace)::ObjCContainersChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 103 | 351 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 104 | 351 | ((const CHECKER *)checker)->checkPostStmt(cast<STMT>(S), C); | 105 | 351 | } |
ObjCSelfInitChecker.cpp:void clang::ento::check::PostStmt<clang::ObjCIvarRefExpr>::_checkStmt<(anonymous namespace)::ObjCSelfInitChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 103 | 64 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 104 | 64 | ((const CHECKER *)checker)->checkPostStmt(cast<STMT>(S), C); | 105 | 64 | } |
PointerArithChecker.cpp:void clang::ento::check::PostStmt<clang::CastExpr>::_checkStmt<(anonymous namespace)::PointerArithChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 103 | 143k | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 104 | 143k | ((const CHECKER *)checker)->checkPostStmt(cast<STMT>(S), C); | 105 | 143k | } |
PointerArithChecker.cpp:void clang::ento::check::PostStmt<clang::CXXNewExpr>::_checkStmt<(anonymous namespace)::PointerArithChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 103 | 14 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 104 | 14 | ((const CHECKER *)checker)->checkPostStmt(cast<STMT>(S), C); | 105 | 14 | } |
PointerArithChecker.cpp:void clang::ento::check::PostStmt<clang::CallExpr>::_checkStmt<(anonymous namespace)::PointerArithChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 103 | 18.8k | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 104 | 18.8k | ((const CHECKER *)checker)->checkPostStmt(cast<STMT>(S), C); | 105 | 18.8k | } |
void clang::ento::check::PostStmt<clang::BlockExpr>::_checkStmt<clang::ento::retaincountchecker::RetainCountChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 103 | 63 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 104 | 63 | ((const CHECKER *)checker)->checkPostStmt(cast<STMT>(S), C); | 105 | 63 | } |
void clang::ento::check::PostStmt<clang::CastExpr>::_checkStmt<clang::ento::retaincountchecker::RetainCountChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 103 | 10.6k | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 104 | 10.6k | ((const CHECKER *)checker)->checkPostStmt(cast<STMT>(S), C); | 105 | 10.6k | } |
void clang::ento::check::PostStmt<clang::ObjCArrayLiteral>::_checkStmt<clang::ento::retaincountchecker::RetainCountChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 103 | 34 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 104 | 34 | ((const CHECKER *)checker)->checkPostStmt(cast<STMT>(S), C); | 105 | 34 | } |
void clang::ento::check::PostStmt<clang::ObjCDictionaryLiteral>::_checkStmt<clang::ento::retaincountchecker::RetainCountChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 103 | 13 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 104 | 13 | ((const CHECKER *)checker)->checkPostStmt(cast<STMT>(S), C); | 105 | 13 | } |
void clang::ento::check::PostStmt<clang::ObjCBoxedExpr>::_checkStmt<clang::ento::retaincountchecker::RetainCountChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 103 | 25 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 104 | 25 | ((const CHECKER *)checker)->checkPostStmt(cast<STMT>(S), C); | 105 | 25 | } |
void clang::ento::check::PostStmt<clang::ObjCIvarRefExpr>::_checkStmt<clang::ento::retaincountchecker::RetainCountChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 103 | 486 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 104 | 486 | ((const CHECKER *)checker)->checkPostStmt(cast<STMT>(S), C); | 105 | 486 | } |
TaintTesterChecker.cpp:void clang::ento::check::PostStmt<clang::Expr>::_checkStmt<(anonymous namespace)::TaintTesterChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 103 | 1.00k | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 104 | 1.00k | ((const CHECKER *)checker)->checkPostStmt(cast<STMT>(S), C); | 105 | 1.00k | } |
UndefCapturedBlockVarChecker.cpp:void clang::ento::check::PostStmt<clang::BlockExpr>::_checkStmt<(anonymous namespace)::UndefCapturedBlockVarChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 103 | 383 | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 104 | 383 | ((const CHECKER *)checker)->checkPostStmt(cast<STMT>(S), C); | 105 | 383 | } |
UndefResultChecker.cpp:void clang::ento::check::PostStmt<clang::BinaryOperator>::_checkStmt<(anonymous namespace)::UndefResultChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 103 | 127k | static void _checkStmt(void *checker, const Stmt *S, CheckerContext &C) { | 104 | 127k | ((const CHECKER *)checker)->checkPostStmt(cast<STMT>(S), C); | 105 | 127k | } |
|
106 | | |
107 | 53.7k | static bool _handlesStmt(const Stmt *S) { |
108 | 53.7k | return isa<STMT>(S); |
109 | 53.7k | } clang::ento::check::PostStmt<clang::ArraySubscriptExpr>::_handlesStmt(clang::Stmt const*) Line | Count | Source | 107 | 54 | static bool _handlesStmt(const Stmt *S) { | 108 | 54 | return isa<STMT>(S); | 109 | 54 | } |
clang::ento::check::PostStmt<clang::CXXDeleteExpr>::_handlesStmt(clang::Stmt const*) Line | Count | Source | 107 | 54 | static bool _handlesStmt(const Stmt *S) { | 108 | 54 | return isa<STMT>(S); | 109 | 54 | } |
clang::ento::check::PostStmt<clang::CXXConstructExpr>::_handlesStmt(clang::Stmt const*) Line | Count | Source | 107 | 54 | static bool _handlesStmt(const Stmt *S) { | 108 | 54 | return isa<STMT>(S); | 109 | 54 | } |
clang::ento::check::PostStmt<clang::OffsetOfExpr>::_handlesStmt(clang::Stmt const*) Line | Count | Source | 107 | 54 | static bool _handlesStmt(const Stmt *S) { | 108 | 54 | return isa<STMT>(S); | 109 | 54 | } |
clang::ento::check::PostStmt<clang::ObjCDictionaryLiteral>::_handlesStmt(clang::Stmt const*) Line | Count | Source | 107 | 1.23k | static bool _handlesStmt(const Stmt *S) { | 108 | 1.23k | return isa<STMT>(S); | 109 | 1.23k | } |
clang::ento::check::PostStmt<clang::ObjCArrayLiteral>::_handlesStmt(clang::Stmt const*) Line | Count | Source | 107 | 1.23k | static bool _handlesStmt(const Stmt *S) { | 108 | 1.23k | return isa<STMT>(S); | 109 | 1.23k | } |
clang::ento::check::PostStmt<clang::ObjCForCollectionStmt>::_handlesStmt(clang::Stmt const*) Line | Count | Source | 107 | 257 | static bool _handlesStmt(const Stmt *S) { | 108 | 257 | return isa<STMT>(S); | 109 | 257 | } |
clang::ento::check::PostStmt<clang::ObjCBoxedExpr>::_handlesStmt(clang::Stmt const*) Line | Count | Source | 107 | 925 | static bool _handlesStmt(const Stmt *S) { | 108 | 925 | return isa<STMT>(S); | 109 | 925 | } |
clang::ento::check::PostStmt<clang::CXXNewExpr>::_handlesStmt(clang::Stmt const*) Line | Count | Source | 107 | 10.9k | static bool _handlesStmt(const Stmt *S) { | 108 | 10.9k | return isa<STMT>(S); | 109 | 10.9k | } |
clang::ento::check::PostStmt<clang::ImplicitCastExpr>::_handlesStmt(clang::Stmt const*) Line | Count | Source | 107 | 684 | static bool _handlesStmt(const Stmt *S) { | 108 | 684 | return isa<STMT>(S); | 109 | 684 | } |
clang::ento::check::PostStmt<clang::UnaryOperator>::_handlesStmt(clang::Stmt const*) Line | Count | Source | 107 | 283 | static bool _handlesStmt(const Stmt *S) { | 108 | 283 | return isa<STMT>(S); | 109 | 283 | } |
clang::ento::check::PostStmt<clang::BinaryOperator>::_handlesStmt(clang::Stmt const*) Line | Count | Source | 107 | 10.4k | static bool _handlesStmt(const Stmt *S) { | 108 | 10.4k | return isa<STMT>(S); | 109 | 10.4k | } |
clang::ento::check::PostStmt<clang::MaterializeTemporaryExpr>::_handlesStmt(clang::Stmt const*) Line | Count | Source | 107 | 283 | static bool _handlesStmt(const Stmt *S) { | 108 | 283 | return isa<STMT>(S); | 109 | 283 | } |
clang::ento::check::PostStmt<clang::ObjCStringLiteral>::_handlesStmt(clang::Stmt const*) Line | Count | Source | 107 | 17 | static bool _handlesStmt(const Stmt *S) { | 108 | 17 | return isa<STMT>(S); | 109 | 17 | } |
clang::ento::check::PostStmt<clang::BlockExpr>::_handlesStmt(clang::Stmt const*) Line | Count | Source | 107 | 13.1k | static bool _handlesStmt(const Stmt *S) { | 108 | 13.1k | return isa<STMT>(S); | 109 | 13.1k | } |
clang::ento::check::PostStmt<clang::ExplicitCastExpr>::_handlesStmt(clang::Stmt const*) Line | Count | Source | 107 | 268 | static bool _handlesStmt(const Stmt *S) { | 108 | 268 | return isa<STMT>(S); | 109 | 268 | } |
clang::ento::check::PostStmt<clang::CallExpr>::_handlesStmt(clang::Stmt const*) Line | Count | Source | 107 | 1.22k | static bool _handlesStmt(const Stmt *S) { | 108 | 1.22k | return isa<STMT>(S); | 109 | 1.22k | } |
clang::ento::check::PostStmt<clang::CastExpr>::_handlesStmt(clang::Stmt const*) Line | Count | Source | 107 | 11.6k | static bool _handlesStmt(const Stmt *S) { | 108 | 11.6k | return isa<STMT>(S); | 109 | 11.6k | } |
clang::ento::check::PostStmt<clang::ObjCIvarRefExpr>::_handlesStmt(clang::Stmt const*) Line | Count | Source | 107 | 931 | static bool _handlesStmt(const Stmt *S) { | 108 | 931 | return isa<STMT>(S); | 109 | 931 | } |
clang::ento::check::PostStmt<clang::Expr>::_handlesStmt(clang::Stmt const*) Line | Count | Source | 107 | 57 | static bool _handlesStmt(const Stmt *S) { | 108 | 57 | return isa<STMT>(S); | 109 | 57 | } |
|
110 | | public: |
111 | | template <typename CHECKER> |
112 | 6.89k | static void _register(CHECKER *checker, CheckerManager &mgr) { |
113 | 6.89k | mgr._registerForPostStmt(CheckerManager::CheckStmtFunc(checker, |
114 | 6.89k | _checkStmt<CHECKER>), |
115 | 6.89k | _handlesStmt); |
116 | 6.89k | } AnalysisOrderChecker.cpp:void clang::ento::check::PostStmt<clang::CastExpr>::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 112 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 113 | 12 | mgr._registerForPostStmt(CheckerManager::CheckStmtFunc(checker, | 114 | 12 | _checkStmt<CHECKER>), | 115 | 12 | _handlesStmt); | 116 | 12 | } |
AnalysisOrderChecker.cpp:void clang::ento::check::PostStmt<clang::ArraySubscriptExpr>::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 112 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 113 | 12 | mgr._registerForPostStmt(CheckerManager::CheckStmtFunc(checker, | 114 | 12 | _checkStmt<CHECKER>), | 115 | 12 | _handlesStmt); | 116 | 12 | } |
AnalysisOrderChecker.cpp:void clang::ento::check::PostStmt<clang::CXXNewExpr>::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 112 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 113 | 12 | mgr._registerForPostStmt(CheckerManager::CheckStmtFunc(checker, | 114 | 12 | _checkStmt<CHECKER>), | 115 | 12 | _handlesStmt); | 116 | 12 | } |
AnalysisOrderChecker.cpp:void clang::ento::check::PostStmt<clang::CXXDeleteExpr>::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 112 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 113 | 12 | mgr._registerForPostStmt(CheckerManager::CheckStmtFunc(checker, | 114 | 12 | _checkStmt<CHECKER>), | 115 | 12 | _handlesStmt); | 116 | 12 | } |
AnalysisOrderChecker.cpp:void clang::ento::check::PostStmt<clang::CXXConstructExpr>::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 112 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 113 | 12 | mgr._registerForPostStmt(CheckerManager::CheckStmtFunc(checker, | 114 | 12 | _checkStmt<CHECKER>), | 115 | 12 | _handlesStmt); | 116 | 12 | } |
AnalysisOrderChecker.cpp:void clang::ento::check::PostStmt<clang::OffsetOfExpr>::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 112 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 113 | 12 | mgr._registerForPostStmt(CheckerManager::CheckStmtFunc(checker, | 114 | 12 | _checkStmt<CHECKER>), | 115 | 12 | _handlesStmt); | 116 | 12 | } |
BasicObjCFoundationChecks.cpp:void clang::ento::check::PostStmt<clang::ObjCDictionaryLiteral>::_register<(anonymous namespace)::NilArgChecker>((anonymous namespace)::NilArgChecker*, clang::ento::CheckerManager&) Line | Count | Source | 112 | 53 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 113 | 53 | mgr._registerForPostStmt(CheckerManager::CheckStmtFunc(checker, | 114 | 53 | _checkStmt<CHECKER>), | 115 | 53 | _handlesStmt); | 116 | 53 | } |
BasicObjCFoundationChecks.cpp:void clang::ento::check::PostStmt<clang::ObjCArrayLiteral>::_register<(anonymous namespace)::NilArgChecker>((anonymous namespace)::NilArgChecker*, clang::ento::CheckerManager&) Line | Count | Source | 112 | 53 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 113 | 53 | mgr._registerForPostStmt(CheckerManager::CheckStmtFunc(checker, | 114 | 53 | _checkStmt<CHECKER>), | 115 | 53 | _handlesStmt); | 116 | 53 | } |
BasicObjCFoundationChecks.cpp:void clang::ento::check::PostStmt<clang::ObjCForCollectionStmt>::_register<(anonymous namespace)::ObjCLoopChecker>((anonymous namespace)::ObjCLoopChecker*, clang::ento::CheckerManager&) Line | Count | Source | 112 | 48 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 113 | 48 | mgr._registerForPostStmt(CheckerManager::CheckStmtFunc(checker, | 114 | 48 | _checkStmt<CHECKER>), | 115 | 48 | _handlesStmt); | 116 | 48 | } |
BasicObjCFoundationChecks.cpp:void clang::ento::check::PostStmt<clang::ObjCArrayLiteral>::_register<(anonymous namespace)::ObjCNonNilReturnValueChecker>((anonymous namespace)::ObjCNonNilReturnValueChecker*, clang::ento::CheckerManager&) Line | Count | Source | 112 | 49 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 113 | 49 | mgr._registerForPostStmt(CheckerManager::CheckStmtFunc(checker, | 114 | 49 | _checkStmt<CHECKER>), | 115 | 49 | _handlesStmt); | 116 | 49 | } |
BasicObjCFoundationChecks.cpp:void clang::ento::check::PostStmt<clang::ObjCDictionaryLiteral>::_register<(anonymous namespace)::ObjCNonNilReturnValueChecker>((anonymous namespace)::ObjCNonNilReturnValueChecker*, clang::ento::CheckerManager&) Line | Count | Source | 112 | 49 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 113 | 49 | mgr._registerForPostStmt(CheckerManager::CheckStmtFunc(checker, | 114 | 49 | _checkStmt<CHECKER>), | 115 | 49 | _handlesStmt); | 116 | 49 | } |
BasicObjCFoundationChecks.cpp:void clang::ento::check::PostStmt<clang::ObjCBoxedExpr>::_register<(anonymous namespace)::ObjCNonNilReturnValueChecker>((anonymous namespace)::ObjCNonNilReturnValueChecker*, clang::ento::CheckerManager&) Line | Count | Source | 112 | 49 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 113 | 49 | mgr._registerForPostStmt(CheckerManager::CheckStmtFunc(checker, | 114 | 49 | _checkStmt<CHECKER>), | 115 | 49 | _handlesStmt); | 116 | 49 | } |
DynamicTypePropagation.cpp:void clang::ento::check::PostStmt<clang::CastExpr>::_register<(anonymous namespace)::DynamicTypePropagation>((anonymous namespace)::DynamicTypePropagation*, clang::ento::CheckerManager&) Line | Count | Source | 112 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 113 | 1.28k | mgr._registerForPostStmt(CheckerManager::CheckStmtFunc(checker, | 114 | 1.28k | _checkStmt<CHECKER>), | 115 | 1.28k | _handlesStmt); | 116 | 1.28k | } |
DynamicTypePropagation.cpp:void clang::ento::check::PostStmt<clang::CXXNewExpr>::_register<(anonymous namespace)::DynamicTypePropagation>((anonymous namespace)::DynamicTypePropagation*, clang::ento::CheckerManager&) Line | Count | Source | 112 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 113 | 1.28k | mgr._registerForPostStmt(CheckerManager::CheckStmtFunc(checker, | 114 | 1.28k | _checkStmt<CHECKER>), | 115 | 1.28k | _handlesStmt); | 116 | 1.28k | } |
DynamicTypeChecker.cpp:void clang::ento::check::PostStmt<clang::ImplicitCastExpr>::_register<(anonymous namespace)::DynamicTypeChecker>((anonymous namespace)::DynamicTypeChecker*, clang::ento::CheckerManager&) Line | Count | Source | 112 | 77 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 113 | 77 | mgr._registerForPostStmt(CheckerManager::CheckStmtFunc(checker, | 114 | 77 | _checkStmt<CHECKER>), | 115 | 77 | _handlesStmt); | 116 | 77 | } |
IteratorModeling.cpp:void clang::ento::check::PostStmt<clang::UnaryOperator>::_register<(anonymous namespace)::IteratorModeling>((anonymous namespace)::IteratorModeling*, clang::ento::CheckerManager&) Line | Count | Source | 112 | 19 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 113 | 19 | mgr._registerForPostStmt(CheckerManager::CheckStmtFunc(checker, | 114 | 19 | _checkStmt<CHECKER>), | 115 | 19 | _handlesStmt); | 116 | 19 | } |
IteratorModeling.cpp:void clang::ento::check::PostStmt<clang::BinaryOperator>::_register<(anonymous namespace)::IteratorModeling>((anonymous namespace)::IteratorModeling*, clang::ento::CheckerManager&) Line | Count | Source | 112 | 19 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 113 | 19 | mgr._registerForPostStmt(CheckerManager::CheckStmtFunc(checker, | 114 | 19 | _checkStmt<CHECKER>), | 115 | 19 | _handlesStmt); | 116 | 19 | } |
IteratorModeling.cpp:void clang::ento::check::PostStmt<clang::MaterializeTemporaryExpr>::_register<(anonymous namespace)::IteratorModeling>((anonymous namespace)::IteratorModeling*, clang::ento::CheckerManager&) Line | Count | Source | 112 | 19 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 113 | 19 | mgr._registerForPostStmt(CheckerManager::CheckStmtFunc(checker, | 114 | 19 | _checkStmt<CHECKER>), | 115 | 19 | _handlesStmt); | 116 | 19 | } |
LocalizationChecker.cpp:void clang::ento::check::PostStmt<clang::ObjCStringLiteral>::_register<(anonymous namespace)::NonLocalizedStringChecker>((anonymous namespace)::NonLocalizedStringChecker*, clang::ento::CheckerManager&) Line | Count | Source | 112 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 113 | 2 | mgr._registerForPostStmt(CheckerManager::CheckStmtFunc(checker, | 114 | 2 | _checkStmt<CHECKER>), | 115 | 2 | _handlesStmt); | 116 | 2 | } |
MacOSKeychainAPIChecker.cpp:void clang::ento::check::PostStmt<clang::CallExpr>::_register<(anonymous namespace)::MacOSKeychainAPIChecker>((anonymous namespace)::MacOSKeychainAPIChecker*, clang::ento::CheckerManager&) Line | Count | Source | 112 | 48 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 113 | 48 | mgr._registerForPostStmt(CheckerManager::CheckStmtFunc(checker, | 114 | 48 | _checkStmt<CHECKER>), | 115 | 48 | _handlesStmt); | 116 | 48 | } |
MallocChecker.cpp:void clang::ento::check::PostStmt<clang::BlockExpr>::_register<(anonymous namespace)::MallocChecker>((anonymous namespace)::MallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 112 | 245 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 113 | 245 | mgr._registerForPostStmt(CheckerManager::CheckStmtFunc(checker, | 114 | 245 | _checkStmt<CHECKER>), | 115 | 245 | _handlesStmt); | 116 | 245 | } |
NullabilityChecker.cpp:void clang::ento::check::PostStmt<clang::ExplicitCastExpr>::_register<(anonymous namespace)::NullabilityChecker>((anonymous namespace)::NullabilityChecker*, clang::ento::CheckerManager&) Line | Count | Source | 112 | 52 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 113 | 52 | mgr._registerForPostStmt(CheckerManager::CheckStmtFunc(checker, | 114 | 52 | _checkStmt<CHECKER>), | 115 | 52 | _handlesStmt); | 116 | 52 | } |
ObjCContainersChecker.cpp:void clang::ento::check::PostStmt<clang::CallExpr>::_register<(anonymous namespace)::ObjCContainersChecker>((anonymous namespace)::ObjCContainersChecker*, clang::ento::CheckerManager&) Line | Count | Source | 112 | 47 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 113 | 47 | mgr._registerForPostStmt(CheckerManager::CheckStmtFunc(checker, | 114 | 47 | _checkStmt<CHECKER>), | 115 | 47 | _handlesStmt); | 116 | 47 | } |
ObjCSelfInitChecker.cpp:void clang::ento::check::PostStmt<clang::ObjCIvarRefExpr>::_register<(anonymous namespace)::ObjCSelfInitChecker>((anonymous namespace)::ObjCSelfInitChecker*, clang::ento::CheckerManager&) Line | Count | Source | 112 | 50 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 113 | 50 | mgr._registerForPostStmt(CheckerManager::CheckStmtFunc(checker, | 114 | 50 | _checkStmt<CHECKER>), | 115 | 50 | _handlesStmt); | 116 | 50 | } |
PointerArithChecker.cpp:void clang::ento::check::PostStmt<clang::CastExpr>::_register<(anonymous namespace)::PointerArithChecker>((anonymous namespace)::PointerArithChecker*, clang::ento::CheckerManager&) Line | Count | Source | 112 | 79 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 113 | 79 | mgr._registerForPostStmt(CheckerManager::CheckStmtFunc(checker, | 114 | 79 | _checkStmt<CHECKER>), | 115 | 79 | _handlesStmt); | 116 | 79 | } |
PointerArithChecker.cpp:void clang::ento::check::PostStmt<clang::CXXNewExpr>::_register<(anonymous namespace)::PointerArithChecker>((anonymous namespace)::PointerArithChecker*, clang::ento::CheckerManager&) Line | Count | Source | 112 | 79 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 113 | 79 | mgr._registerForPostStmt(CheckerManager::CheckStmtFunc(checker, | 114 | 79 | _checkStmt<CHECKER>), | 115 | 79 | _handlesStmt); | 116 | 79 | } |
PointerArithChecker.cpp:void clang::ento::check::PostStmt<clang::CallExpr>::_register<(anonymous namespace)::PointerArithChecker>((anonymous namespace)::PointerArithChecker*, clang::ento::CheckerManager&) Line | Count | Source | 112 | 79 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 113 | 79 | mgr._registerForPostStmt(CheckerManager::CheckStmtFunc(checker, | 114 | 79 | _checkStmt<CHECKER>), | 115 | 79 | _handlesStmt); | 116 | 79 | } |
void clang::ento::check::PostStmt<clang::BlockExpr>::_register<clang::ento::retaincountchecker::RetainCountChecker>(clang::ento::retaincountchecker::RetainCountChecker*, clang::ento::CheckerManager&) Line | Count | Source | 112 | 96 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 113 | 96 | mgr._registerForPostStmt(CheckerManager::CheckStmtFunc(checker, | 114 | 96 | _checkStmt<CHECKER>), | 115 | 96 | _handlesStmt); | 116 | 96 | } |
void clang::ento::check::PostStmt<clang::CastExpr>::_register<clang::ento::retaincountchecker::RetainCountChecker>(clang::ento::retaincountchecker::RetainCountChecker*, clang::ento::CheckerManager&) Line | Count | Source | 112 | 96 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 113 | 96 | mgr._registerForPostStmt(CheckerManager::CheckStmtFunc(checker, | 114 | 96 | _checkStmt<CHECKER>), | 115 | 96 | _handlesStmt); | 116 | 96 | } |
void clang::ento::check::PostStmt<clang::ObjCArrayLiteral>::_register<clang::ento::retaincountchecker::RetainCountChecker>(clang::ento::retaincountchecker::RetainCountChecker*, clang::ento::CheckerManager&) Line | Count | Source | 112 | 96 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 113 | 96 | mgr._registerForPostStmt(CheckerManager::CheckStmtFunc(checker, | 114 | 96 | _checkStmt<CHECKER>), | 115 | 96 | _handlesStmt); | 116 | 96 | } |
void clang::ento::check::PostStmt<clang::ObjCDictionaryLiteral>::_register<clang::ento::retaincountchecker::RetainCountChecker>(clang::ento::retaincountchecker::RetainCountChecker*, clang::ento::CheckerManager&) Line | Count | Source | 112 | 96 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 113 | 96 | mgr._registerForPostStmt(CheckerManager::CheckStmtFunc(checker, | 114 | 96 | _checkStmt<CHECKER>), | 115 | 96 | _handlesStmt); | 116 | 96 | } |
void clang::ento::check::PostStmt<clang::ObjCBoxedExpr>::_register<clang::ento::retaincountchecker::RetainCountChecker>(clang::ento::retaincountchecker::RetainCountChecker*, clang::ento::CheckerManager&) Line | Count | Source | 112 | 96 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 113 | 96 | mgr._registerForPostStmt(CheckerManager::CheckStmtFunc(checker, | 114 | 96 | _checkStmt<CHECKER>), | 115 | 96 | _handlesStmt); | 116 | 96 | } |
void clang::ento::check::PostStmt<clang::ObjCIvarRefExpr>::_register<clang::ento::retaincountchecker::RetainCountChecker>(clang::ento::retaincountchecker::RetainCountChecker*, clang::ento::CheckerManager&) Line | Count | Source | 112 | 96 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 113 | 96 | mgr._registerForPostStmt(CheckerManager::CheckStmtFunc(checker, | 114 | 96 | _checkStmt<CHECKER>), | 115 | 96 | _handlesStmt); | 116 | 96 | } |
TaintTesterChecker.cpp:void clang::ento::check::PostStmt<clang::Expr>::_register<(anonymous namespace)::TaintTesterChecker>((anonymous namespace)::TaintTesterChecker*, clang::ento::CheckerManager&) Line | Count | Source | 112 | 8 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 113 | 8 | mgr._registerForPostStmt(CheckerManager::CheckStmtFunc(checker, | 114 | 8 | _checkStmt<CHECKER>), | 115 | 8 | _handlesStmt); | 116 | 8 | } |
UndefCapturedBlockVarChecker.cpp:void clang::ento::check::PostStmt<clang::BlockExpr>::_register<(anonymous namespace)::UndefCapturedBlockVarChecker>((anonymous namespace)::UndefCapturedBlockVarChecker*, clang::ento::CheckerManager&) Line | Count | Source | 112 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 113 | 1.28k | mgr._registerForPostStmt(CheckerManager::CheckStmtFunc(checker, | 114 | 1.28k | _checkStmt<CHECKER>), | 115 | 1.28k | _handlesStmt); | 116 | 1.28k | } |
UndefResultChecker.cpp:void clang::ento::check::PostStmt<clang::BinaryOperator>::_register<(anonymous namespace)::UndefResultChecker>((anonymous namespace)::UndefResultChecker*, clang::ento::CheckerManager&) Line | Count | Source | 112 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 113 | 1.28k | mgr._registerForPostStmt(CheckerManager::CheckStmtFunc(checker, | 114 | 1.28k | _checkStmt<CHECKER>), | 115 | 1.28k | _handlesStmt); | 116 | 1.28k | } |
|
117 | | }; |
118 | | |
119 | | class PreObjCMessage { |
120 | | template <typename CHECKER> |
121 | | static void _checkObjCMessage(void *checker, const ObjCMethodCall &msg, |
122 | 10.2k | CheckerContext &C) { |
123 | 10.2k | ((const CHECKER *)checker)->checkPreObjCMessage(msg, C); |
124 | 10.2k | } BasicObjCFoundationChecks.cpp:void clang::ento::check::PreObjCMessage::_checkObjCMessage<(anonymous namespace)::NilArgChecker>(void*, clang::ento::ObjCMethodCall const&, clang::ento::CheckerContext&) Line | Count | Source | 122 | 491 | CheckerContext &C) { | 123 | 491 | ((const CHECKER *)checker)->checkPreObjCMessage(msg, C); | 124 | 491 | } |
BasicObjCFoundationChecks.cpp:void clang::ento::check::PreObjCMessage::_checkObjCMessage<(anonymous namespace)::ClassReleaseChecker>(void*, clang::ento::ObjCMethodCall const&, clang::ento::CheckerContext&) Line | Count | Source | 122 | 1.28k | CheckerContext &C) { | 123 | 1.28k | ((const CHECKER *)checker)->checkPreObjCMessage(msg, C); | 124 | 1.28k | } |
BasicObjCFoundationChecks.cpp:void clang::ento::check::PreObjCMessage::_checkObjCMessage<(anonymous namespace)::VariadicMethodTypeChecker>(void*, clang::ento::ObjCMethodCall const&, clang::ento::CheckerContext&) Line | Count | Source | 122 | 96 | CheckerContext &C) { | 123 | 96 | ((const CHECKER *)checker)->checkPreObjCMessage(msg, C); | 124 | 96 | } |
CallAndMessageChecker.cpp:void clang::ento::check::PreObjCMessage::_checkObjCMessage<(anonymous namespace)::CallAndMessageChecker>(void*, clang::ento::ObjCMethodCall const&, clang::ento::CheckerContext&) Line | Count | Source | 122 | 3.76k | CheckerContext &C) { | 123 | 3.76k | ((const CHECKER *)checker)->checkPreObjCMessage(msg, C); | 124 | 3.76k | } |
CheckObjCDealloc.cpp:void clang::ento::check::PreObjCMessage::_checkObjCMessage<(anonymous namespace)::ObjCDeallocChecker>(void*, clang::ento::ObjCMethodCall const&, clang::ento::CheckerContext&) Line | Count | Source | 122 | 592 | CheckerContext &C) { | 123 | 592 | ((const CHECKER *)checker)->checkPreObjCMessage(msg, C); | 124 | 592 | } |
DynamicTypePropagation.cpp:void clang::ento::check::PreObjCMessage::_checkObjCMessage<(anonymous namespace)::DynamicTypePropagation>(void*, clang::ento::ObjCMethodCall const&, clang::ento::CheckerContext&) Line | Count | Source | 122 | 3.77k | CheckerContext &C) { | 123 | 3.77k | ((const CHECKER *)checker)->checkPreObjCMessage(msg, C); | 124 | 3.77k | } |
LocalizationChecker.cpp:void clang::ento::check::PreObjCMessage::_checkObjCMessage<(anonymous namespace)::NonLocalizedStringChecker>(void*, clang::ento::ObjCMethodCall const&, clang::ento::CheckerContext&) Line | Count | Source | 122 | 175 | CheckerContext &C) { | 123 | 175 | ((const CHECKER *)checker)->checkPreObjCMessage(msg, C); | 124 | 175 | } |
Unexecuted instantiation: NSAutoreleasePoolChecker.cpp:void clang::ento::check::PreObjCMessage::_checkObjCMessage<(anonymous namespace)::NSAutoreleasePoolChecker>(void*, clang::ento::ObjCMethodCall const&, clang::ento::CheckerContext&) ObjCSuperDeallocChecker.cpp:void clang::ento::check::PreObjCMessage::_checkObjCMessage<(anonymous namespace)::ObjCSuperDeallocChecker>(void*, clang::ento::ObjCMethodCall const&, clang::ento::CheckerContext&) Line | Count | Source | 122 | 123 | CheckerContext &C) { | 123 | 123 | ((const CHECKER *)checker)->checkPreObjCMessage(msg, C); | 124 | 123 | } |
|
125 | | |
126 | | public: |
127 | | template <typename CHECKER> |
128 | 2.82k | static void _register(CHECKER *checker, CheckerManager &mgr) { |
129 | 2.82k | mgr._registerForPreObjCMessage( |
130 | 2.82k | CheckerManager::CheckObjCMessageFunc(checker, _checkObjCMessage<CHECKER>)); |
131 | 2.82k | } BasicObjCFoundationChecks.cpp:void clang::ento::check::PreObjCMessage::_register<(anonymous namespace)::NilArgChecker>((anonymous namespace)::NilArgChecker*, clang::ento::CheckerManager&) Line | Count | Source | 128 | 53 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 129 | 53 | mgr._registerForPreObjCMessage( | 130 | 53 | CheckerManager::CheckObjCMessageFunc(checker, _checkObjCMessage<CHECKER>)); | 131 | 53 | } |
BasicObjCFoundationChecks.cpp:void clang::ento::check::PreObjCMessage::_register<(anonymous namespace)::ClassReleaseChecker>((anonymous namespace)::ClassReleaseChecker*, clang::ento::CheckerManager&) Line | Count | Source | 128 | 56 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 129 | 56 | mgr._registerForPreObjCMessage( | 130 | 56 | CheckerManager::CheckObjCMessageFunc(checker, _checkObjCMessage<CHECKER>)); | 131 | 56 | } |
BasicObjCFoundationChecks.cpp:void clang::ento::check::PreObjCMessage::_register<(anonymous namespace)::VariadicMethodTypeChecker>((anonymous namespace)::VariadicMethodTypeChecker*, clang::ento::CheckerManager&) Line | Count | Source | 128 | 48 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 129 | 48 | mgr._registerForPreObjCMessage( | 130 | 48 | CheckerManager::CheckObjCMessageFunc(checker, _checkObjCMessage<CHECKER>)); | 131 | 48 | } |
CallAndMessageChecker.cpp:void clang::ento::check::PreObjCMessage::_register<(anonymous namespace)::CallAndMessageChecker>((anonymous namespace)::CallAndMessageChecker*, clang::ento::CheckerManager&) Line | Count | Source | 128 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 129 | 1.28k | mgr._registerForPreObjCMessage( | 130 | 1.28k | CheckerManager::CheckObjCMessageFunc(checker, _checkObjCMessage<CHECKER>)); | 131 | 1.28k | } |
CheckObjCDealloc.cpp:void clang::ento::check::PreObjCMessage::_register<(anonymous namespace)::ObjCDeallocChecker>((anonymous namespace)::ObjCDeallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 128 | 50 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 129 | 50 | mgr._registerForPreObjCMessage( | 130 | 50 | CheckerManager::CheckObjCMessageFunc(checker, _checkObjCMessage<CHECKER>)); | 131 | 50 | } |
DynamicTypePropagation.cpp:void clang::ento::check::PreObjCMessage::_register<(anonymous namespace)::DynamicTypePropagation>((anonymous namespace)::DynamicTypePropagation*, clang::ento::CheckerManager&) Line | Count | Source | 128 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 129 | 1.28k | mgr._registerForPreObjCMessage( | 130 | 1.28k | CheckerManager::CheckObjCMessageFunc(checker, _checkObjCMessage<CHECKER>)); | 131 | 1.28k | } |
LocalizationChecker.cpp:void clang::ento::check::PreObjCMessage::_register<(anonymous namespace)::NonLocalizedStringChecker>((anonymous namespace)::NonLocalizedStringChecker*, clang::ento::CheckerManager&) Line | Count | Source | 128 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 129 | 2 | mgr._registerForPreObjCMessage( | 130 | 2 | CheckerManager::CheckObjCMessageFunc(checker, _checkObjCMessage<CHECKER>)); | 131 | 2 | } |
Unexecuted instantiation: NSAutoreleasePoolChecker.cpp:void clang::ento::check::PreObjCMessage::_register<(anonymous namespace)::NSAutoreleasePoolChecker>((anonymous namespace)::NSAutoreleasePoolChecker*, clang::ento::CheckerManager&) ObjCSuperDeallocChecker.cpp:void clang::ento::check::PreObjCMessage::_register<(anonymous namespace)::ObjCSuperDeallocChecker>((anonymous namespace)::ObjCSuperDeallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 128 | 48 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 129 | 48 | mgr._registerForPreObjCMessage( | 130 | 48 | CheckerManager::CheckObjCMessageFunc(checker, _checkObjCMessage<CHECKER>)); | 131 | 48 | } |
|
132 | | }; |
133 | | |
134 | | class ObjCMessageNil { |
135 | | template <typename CHECKER> |
136 | | static void _checkObjCMessage(void *checker, const ObjCMethodCall &msg, |
137 | 96 | CheckerContext &C) { |
138 | 96 | ((const CHECKER *)checker)->checkObjCMessageNil(msg, C); |
139 | 96 | } |
140 | | |
141 | | public: |
142 | | template <typename CHECKER> |
143 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { |
144 | 1.28k | mgr._registerForObjCMessageNil( |
145 | 1.28k | CheckerManager::CheckObjCMessageFunc(checker, _checkObjCMessage<CHECKER>)); |
146 | 1.28k | } |
147 | | }; |
148 | | |
149 | | class PostObjCMessage { |
150 | | template <typename CHECKER> |
151 | | static void _checkObjCMessage(void *checker, const ObjCMethodCall &msg, |
152 | 9.11k | CheckerContext &C) { |
153 | 9.11k | ((const CHECKER *)checker)->checkPostObjCMessage(msg, C); |
154 | 9.11k | } BasicObjCFoundationChecks.cpp:void clang::ento::check::PostObjCMessage::_checkObjCMessage<(anonymous namespace)::ObjCLoopChecker>(void*, clang::ento::ObjCMethodCall const&, clang::ento::CheckerContext&) Line | Count | Source | 152 | 145 | CheckerContext &C) { | 153 | 145 | ((const CHECKER *)checker)->checkPostObjCMessage(msg, C); | 154 | 145 | } |
BasicObjCFoundationChecks.cpp:void clang::ento::check::PostObjCMessage::_checkObjCMessage<(anonymous namespace)::ObjCNonNilReturnValueChecker>(void*, clang::ento::ObjCMethodCall const&, clang::ento::CheckerContext&) Line | Count | Source | 152 | 76 | CheckerContext &C) { | 153 | 76 | ((const CHECKER *)checker)->checkPostObjCMessage(msg, C); | 154 | 76 | } |
CheckObjCDealloc.cpp:void clang::ento::check::PostObjCMessage::_checkObjCMessage<(anonymous namespace)::ObjCDeallocChecker>(void*, clang::ento::ObjCMethodCall const&, clang::ento::CheckerContext&) Line | Count | Source | 152 | 589 | CheckerContext &C) { | 153 | 589 | ((const CHECKER *)checker)->checkPostObjCMessage(msg, C); | 154 | 589 | } |
DynamicTypePropagation.cpp:void clang::ento::check::PostObjCMessage::_checkObjCMessage<(anonymous namespace)::DynamicTypePropagation>(void*, clang::ento::ObjCMethodCall const&, clang::ento::CheckerContext&) Line | Count | Source | 152 | 3.67k | CheckerContext &C) { | 153 | 3.67k | ((const CHECKER *)checker)->checkPostObjCMessage(msg, C); | 154 | 3.67k | } |
LocalizationChecker.cpp:void clang::ento::check::PostObjCMessage::_checkObjCMessage<(anonymous namespace)::NonLocalizedStringChecker>(void*, clang::ento::ObjCMethodCall const&, clang::ento::CheckerContext&) Line | Count | Source | 152 | 175 | CheckerContext &C) { | 153 | 175 | ((const CHECKER *)checker)->checkPostObjCMessage(msg, C); | 154 | 175 | } |
MallocChecker.cpp:void clang::ento::check::PostObjCMessage::_checkObjCMessage<(anonymous namespace)::MallocChecker>(void*, clang::ento::ObjCMethodCall const&, clang::ento::CheckerContext&) Line | Count | Source | 152 | 97 | CheckerContext &C) { | 153 | 97 | ((const CHECKER *)checker)->checkPostObjCMessage(msg, C); | 154 | 97 | } |
NoReturnFunctionChecker.cpp:void clang::ento::check::PostObjCMessage::_checkObjCMessage<(anonymous namespace)::NoReturnFunctionChecker>(void*, clang::ento::ObjCMethodCall const&, clang::ento::CheckerContext&) Line | Count | Source | 152 | 3.66k | CheckerContext &C) { | 153 | 3.66k | ((const CHECKER *)checker)->checkPostObjCMessage(msg, C); | 154 | 3.66k | } |
NullabilityChecker.cpp:void clang::ento::check::PostObjCMessage::_checkObjCMessage<(anonymous namespace)::NullabilityChecker>(void*, clang::ento::ObjCMethodCall const&, clang::ento::CheckerContext&) Line | Count | Source | 152 | 367 | CheckerContext &C) { | 153 | 367 | ((const CHECKER *)checker)->checkPostObjCMessage(msg, C); | 154 | 367 | } |
ObjCSelfInitChecker.cpp:void clang::ento::check::PostObjCMessage::_checkObjCMessage<(anonymous namespace)::ObjCSelfInitChecker>(void*, clang::ento::ObjCMethodCall const&, clang::ento::CheckerContext&) Line | Count | Source | 152 | 197 | CheckerContext &C) { | 153 | 197 | ((const CHECKER *)checker)->checkPostObjCMessage(msg, C); | 154 | 197 | } |
ObjCSuperDeallocChecker.cpp:void clang::ento::check::PostObjCMessage::_checkObjCMessage<(anonymous namespace)::ObjCSuperDeallocChecker>(void*, clang::ento::ObjCMethodCall const&, clang::ento::CheckerContext&) Line | Count | Source | 152 | 127 | CheckerContext &C) { | 153 | 127 | ((const CHECKER *)checker)->checkPostObjCMessage(msg, C); | 154 | 127 | } |
Unexecuted instantiation: TrustNonnullChecker.cpp:void clang::ento::check::PostObjCMessage::_checkObjCMessage<(anonymous namespace)::TrustNonnullChecker>(void*, clang::ento::ObjCMethodCall const&, clang::ento::CheckerContext&) |
155 | | |
156 | | public: |
157 | | template <typename CHECKER> |
158 | 3.16k | static void _register(CHECKER *checker, CheckerManager &mgr) { |
159 | 3.16k | mgr._registerForPostObjCMessage( |
160 | 3.16k | CheckerManager::CheckObjCMessageFunc(checker, _checkObjCMessage<CHECKER>)); |
161 | 3.16k | } BasicObjCFoundationChecks.cpp:void clang::ento::check::PostObjCMessage::_register<(anonymous namespace)::ObjCLoopChecker>((anonymous namespace)::ObjCLoopChecker*, clang::ento::CheckerManager&) Line | Count | Source | 158 | 48 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 159 | 48 | mgr._registerForPostObjCMessage( | 160 | 48 | CheckerManager::CheckObjCMessageFunc(checker, _checkObjCMessage<CHECKER>)); | 161 | 48 | } |
BasicObjCFoundationChecks.cpp:void clang::ento::check::PostObjCMessage::_register<(anonymous namespace)::ObjCNonNilReturnValueChecker>((anonymous namespace)::ObjCNonNilReturnValueChecker*, clang::ento::CheckerManager&) Line | Count | Source | 158 | 49 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 159 | 49 | mgr._registerForPostObjCMessage( | 160 | 49 | CheckerManager::CheckObjCMessageFunc(checker, _checkObjCMessage<CHECKER>)); | 161 | 49 | } |
CheckObjCDealloc.cpp:void clang::ento::check::PostObjCMessage::_register<(anonymous namespace)::ObjCDeallocChecker>((anonymous namespace)::ObjCDeallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 158 | 50 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 159 | 50 | mgr._registerForPostObjCMessage( | 160 | 50 | CheckerManager::CheckObjCMessageFunc(checker, _checkObjCMessage<CHECKER>)); | 161 | 50 | } |
DynamicTypePropagation.cpp:void clang::ento::check::PostObjCMessage::_register<(anonymous namespace)::DynamicTypePropagation>((anonymous namespace)::DynamicTypePropagation*, clang::ento::CheckerManager&) Line | Count | Source | 158 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 159 | 1.28k | mgr._registerForPostObjCMessage( | 160 | 1.28k | CheckerManager::CheckObjCMessageFunc(checker, _checkObjCMessage<CHECKER>)); | 161 | 1.28k | } |
LocalizationChecker.cpp:void clang::ento::check::PostObjCMessage::_register<(anonymous namespace)::NonLocalizedStringChecker>((anonymous namespace)::NonLocalizedStringChecker*, clang::ento::CheckerManager&) Line | Count | Source | 158 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 159 | 2 | mgr._registerForPostObjCMessage( | 160 | 2 | CheckerManager::CheckObjCMessageFunc(checker, _checkObjCMessage<CHECKER>)); | 161 | 2 | } |
MallocChecker.cpp:void clang::ento::check::PostObjCMessage::_register<(anonymous namespace)::MallocChecker>((anonymous namespace)::MallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 158 | 245 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 159 | 245 | mgr._registerForPostObjCMessage( | 160 | 245 | CheckerManager::CheckObjCMessageFunc(checker, _checkObjCMessage<CHECKER>)); | 161 | 245 | } |
NoReturnFunctionChecker.cpp:void clang::ento::check::PostObjCMessage::_register<(anonymous namespace)::NoReturnFunctionChecker>((anonymous namespace)::NoReturnFunctionChecker*, clang::ento::CheckerManager&) Line | Count | Source | 158 | 1.29k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 159 | 1.29k | mgr._registerForPostObjCMessage( | 160 | 1.29k | CheckerManager::CheckObjCMessageFunc(checker, _checkObjCMessage<CHECKER>)); | 161 | 1.29k | } |
NullabilityChecker.cpp:void clang::ento::check::PostObjCMessage::_register<(anonymous namespace)::NullabilityChecker>((anonymous namespace)::NullabilityChecker*, clang::ento::CheckerManager&) Line | Count | Source | 158 | 52 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 159 | 52 | mgr._registerForPostObjCMessage( | 160 | 52 | CheckerManager::CheckObjCMessageFunc(checker, _checkObjCMessage<CHECKER>)); | 161 | 52 | } |
ObjCSelfInitChecker.cpp:void clang::ento::check::PostObjCMessage::_register<(anonymous namespace)::ObjCSelfInitChecker>((anonymous namespace)::ObjCSelfInitChecker*, clang::ento::CheckerManager&) Line | Count | Source | 158 | 50 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 159 | 50 | mgr._registerForPostObjCMessage( | 160 | 50 | CheckerManager::CheckObjCMessageFunc(checker, _checkObjCMessage<CHECKER>)); | 161 | 50 | } |
ObjCSuperDeallocChecker.cpp:void clang::ento::check::PostObjCMessage::_register<(anonymous namespace)::ObjCSuperDeallocChecker>((anonymous namespace)::ObjCSuperDeallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 158 | 48 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 159 | 48 | mgr._registerForPostObjCMessage( | 160 | 48 | CheckerManager::CheckObjCMessageFunc(checker, _checkObjCMessage<CHECKER>)); | 161 | 48 | } |
TrustNonnullChecker.cpp:void clang::ento::check::PostObjCMessage::_register<(anonymous namespace)::TrustNonnullChecker>((anonymous namespace)::TrustNonnullChecker*, clang::ento::CheckerManager&) Line | Count | Source | 158 | 41 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 159 | 41 | mgr._registerForPostObjCMessage( | 160 | 41 | CheckerManager::CheckObjCMessageFunc(checker, _checkObjCMessage<CHECKER>)); | 161 | 41 | } |
|
162 | | }; |
163 | | |
164 | | class PreCall { |
165 | | template <typename CHECKER> |
166 | | static void _checkCall(void *checker, const CallEvent &msg, |
167 | 669k | CheckerContext &C) { |
168 | 669k | ((const CHECKER *)checker)->checkPreCall(msg, C); |
169 | 669k | } AnalysisOrderChecker.cpp:void clang::ento::check::PreCall::_checkCall<(anonymous namespace)::AnalysisOrderChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 167 | 64 | CheckerContext &C) { | 168 | 64 | ((const CHECKER *)checker)->checkPreCall(msg, C); | 169 | 64 | } |
BasicObjCFoundationChecks.cpp:void clang::ento::check::PreCall::_checkCall<(anonymous namespace)::CFRetainReleaseChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 167 | 2.71k | CheckerContext &C) { | 168 | 2.71k | ((const CHECKER *)checker)->checkPreCall(msg, C); | 169 | 2.71k | } |
CallAndMessageChecker.cpp:void clang::ento::check::PreCall::_checkCall<(anonymous namespace)::CallAndMessageChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 167 | 103k | CheckerContext &C) { | 168 | 103k | ((const CHECKER *)checker)->checkPreCall(msg, C); | 169 | 103k | } |
CheckObjCDealloc.cpp:void clang::ento::check::PreCall::_checkCall<(anonymous namespace)::ObjCDeallocChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 167 | 1.05k | CheckerContext &C) { | 168 | 1.05k | ((const CHECKER *)checker)->checkPreCall(msg, C); | 169 | 1.05k | } |
ChrootChecker.cpp:void clang::ento::check::PreCall::_checkCall<(anonymous namespace)::ChrootChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 167 | 33 | CheckerContext &C) { | 168 | 33 | ((const CHECKER *)checker)->checkPreCall(msg, C); | 169 | 33 | } |
DynamicTypePropagation.cpp:void clang::ento::check::PreCall::_checkCall<(anonymous namespace)::DynamicTypePropagation>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 167 | 102k | CheckerContext &C) { | 168 | 102k | ((const CHECKER *)checker)->checkPreCall(msg, C); | 169 | 102k | } |
ErrnoChecker.cpp:void clang::ento::check::PreCall::_checkCall<(anonymous namespace)::ErrnoChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 167 | 686 | CheckerContext &C) { | 168 | 686 | ((const CHECKER *)checker)->checkPreCall(msg, C); | 169 | 686 | } |
FuchsiaHandleChecker.cpp:void clang::ento::check::PreCall::_checkCall<(anonymous namespace)::FuchsiaHandleChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 167 | 158 | CheckerContext &C) { | 168 | 158 | ((const CHECKER *)checker)->checkPreCall(msg, C); | 169 | 158 | } |
GenericTaintChecker.cpp:void clang::ento::check::PreCall::_checkCall<(anonymous namespace)::GenericTaintChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 167 | 3.04k | CheckerContext &C) { | 168 | 3.04k | ((const CHECKER *)checker)->checkPreCall(msg, C); | 169 | 3.04k | } |
InvalidatedIteratorChecker.cpp:void clang::ento::check::PreCall::_checkCall<(anonymous namespace)::InvalidatedIteratorChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 167 | 217 | CheckerContext &C) { | 168 | 217 | ((const CHECKER *)checker)->checkPreCall(msg, C); | 169 | 217 | } |
IteratorRangeChecker.cpp:void clang::ento::check::PreCall::_checkCall<(anonymous namespace)::IteratorRangeChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 167 | 1.77k | CheckerContext &C) { | 168 | 1.77k | ((const CHECKER *)checker)->checkPreCall(msg, C); | 169 | 1.77k | } |
LocalizationChecker.cpp:void clang::ento::check::PreCall::_checkCall<(anonymous namespace)::NonLocalizedStringChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 167 | 196 | CheckerContext &C) { | 168 | 196 | ((const CHECKER *)checker)->checkPreCall(msg, C); | 169 | 196 | } |
MallocChecker.cpp:void clang::ento::check::PreCall::_checkCall<(anonymous namespace)::MallocChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 167 | 42.4k | CheckerContext &C) { | 168 | 42.4k | ((const CHECKER *)checker)->checkPreCall(msg, C); | 169 | 42.4k | } |
MismatchedIteratorChecker.cpp:void clang::ento::check::PreCall::_checkCall<(anonymous namespace)::MismatchedIteratorChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 167 | 370 | CheckerContext &C) { | 168 | 370 | ((const CHECKER *)checker)->checkPreCall(msg, C); | 169 | 370 | } |
MmapWriteExecChecker.cpp:void clang::ento::check::PreCall::_checkCall<(anonymous namespace)::MmapWriteExecChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 167 | 14 | CheckerContext &C) { | 168 | 14 | ((const CHECKER *)checker)->checkPreCall(msg, C); | 169 | 14 | } |
MoveChecker.cpp:void clang::ento::check::PreCall::_checkCall<(anonymous namespace)::MoveChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 167 | 49.2k | CheckerContext &C) { | 168 | 49.2k | ((const CHECKER *)checker)->checkPreCall(msg, C); | 169 | 49.2k | } |
void clang::ento::check::PreCall::_checkCall<clang::ento::mpi::MPIChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 167 | 131 | CheckerContext &C) { | 168 | 131 | ((const CHECKER *)checker)->checkPreCall(msg, C); | 169 | 131 | } |
NonNullParamChecker.cpp:void clang::ento::check::PreCall::_checkCall<(anonymous namespace)::NonNullParamChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 167 | 102k | CheckerContext &C) { | 168 | 102k | ((const CHECKER *)checker)->checkPreCall(msg, C); | 169 | 102k | } |
NullabilityChecker.cpp:void clang::ento::check::PreCall::_checkCall<(anonymous namespace)::NullabilityChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 167 | 998 | CheckerContext &C) { | 168 | 998 | ((const CHECKER *)checker)->checkPreCall(msg, C); | 169 | 998 | } |
ObjCSelfInitChecker.cpp:void clang::ento::check::PreCall::_checkCall<(anonymous namespace)::ObjCSelfInitChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 167 | 607 | CheckerContext &C) { | 168 | 607 | ((const CHECKER *)checker)->checkPreCall(msg, C); | 169 | 607 | } |
ObjCSuperDeallocChecker.cpp:void clang::ento::check::PreCall::_checkCall<(anonymous namespace)::ObjCSuperDeallocChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 167 | 528 | CheckerContext &C) { | 168 | 528 | ((const CHECKER *)checker)->checkPreCall(msg, C); | 169 | 528 | } |
SimpleStreamChecker.cpp:void clang::ento::check::PreCall::_checkCall<(anonymous namespace)::SimpleStreamChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 167 | 52 | CheckerContext &C) { | 168 | 52 | ((const CHECKER *)checker)->checkPreCall(msg, C); | 169 | 52 | } |
SmartPtrChecker.cpp:void clang::ento::check::PreCall::_checkCall<(anonymous namespace)::SmartPtrChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 167 | 1.06k | CheckerContext &C) { | 168 | 1.06k | ((const CHECKER *)checker)->checkPreCall(msg, C); | 169 | 1.06k | } |
StackAddrEscapeChecker.cpp:void clang::ento::check::PreCall::_checkCall<(anonymous namespace)::StackAddrEscapeChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 167 | 102k | CheckerContext &C) { | 168 | 102k | ((const CHECKER *)checker)->checkPreCall(msg, C); | 169 | 102k | } |
StdLibraryFunctionsChecker.cpp:void clang::ento::check::PreCall::_checkCall<(anonymous namespace)::StdLibraryFunctionsChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 167 | 3.30k | CheckerContext &C) { | 168 | 3.30k | ((const CHECKER *)checker)->checkPreCall(msg, C); | 169 | 3.30k | } |
StreamChecker.cpp:void clang::ento::check::PreCall::_checkCall<(anonymous namespace)::StreamChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 167 | 954 | CheckerContext &C) { | 168 | 954 | ((const CHECKER *)checker)->checkPreCall(msg, C); | 169 | 954 | } |
StringChecker.cpp:void clang::ento::check::PreCall::_checkCall<(anonymous namespace)::StringChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 167 | 31.0k | CheckerContext &C) { | 168 | 31.0k | ((const CHECKER *)checker)->checkPreCall(msg, C); | 169 | 31.0k | } |
Unexecuted instantiation: TraversalChecker.cpp:void clang::ento::check::PreCall::_checkCall<(anonymous namespace)::CallDumper>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) UndefinedNewArraySizeChecker.cpp:void clang::ento::check::PreCall::_checkCall<(anonymous namespace)::UndefinedNewArraySizeChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 167 | 84.0k | CheckerContext &C) { | 168 | 84.0k | ((const CHECKER *)checker)->checkPreCall(msg, C); | 169 | 84.0k | } |
VforkChecker.cpp:void clang::ento::check::PreCall::_checkCall<(anonymous namespace)::VforkChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 167 | 1.59k | CheckerContext &C) { | 168 | 1.59k | ((const CHECKER *)checker)->checkPreCall(msg, C); | 169 | 1.59k | } |
ValistChecker.cpp:void clang::ento::check::PreCall::_checkCall<(anonymous namespace)::ValistChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 167 | 232 | CheckerContext &C) { | 168 | 232 | ((const CHECKER *)checker)->checkPreCall(msg, C); | 169 | 232 | } |
VirtualCallChecker.cpp:void clang::ento::check::PreCall::_checkCall<(anonymous namespace)::VirtualCallChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 167 | 31.4k | CheckerContext &C) { | 168 | 31.4k | ((const CHECKER *)checker)->checkPreCall(msg, C); | 169 | 31.4k | } |
|
170 | | |
171 | | public: |
172 | | template <typename CHECKER> |
173 | 6.90k | static void _register(CHECKER *checker, CheckerManager &mgr) { |
174 | 6.90k | mgr._registerForPreCall( |
175 | 6.90k | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); |
176 | 6.90k | } AnalysisOrderChecker.cpp:void clang::ento::check::PreCall::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 173 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 174 | 12 | mgr._registerForPreCall( | 175 | 12 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 176 | 12 | } |
BasicObjCFoundationChecks.cpp:void clang::ento::check::PreCall::_register<(anonymous namespace)::CFRetainReleaseChecker>((anonymous namespace)::CFRetainReleaseChecker*, clang::ento::CheckerManager&) Line | Count | Source | 173 | 57 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 174 | 57 | mgr._registerForPreCall( | 175 | 57 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 176 | 57 | } |
CallAndMessageChecker.cpp:void clang::ento::check::PreCall::_register<(anonymous namespace)::CallAndMessageChecker>((anonymous namespace)::CallAndMessageChecker*, clang::ento::CheckerManager&) Line | Count | Source | 173 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 174 | 1.28k | mgr._registerForPreCall( | 175 | 1.28k | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 176 | 1.28k | } |
CheckObjCDealloc.cpp:void clang::ento::check::PreCall::_register<(anonymous namespace)::ObjCDeallocChecker>((anonymous namespace)::ObjCDeallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 173 | 50 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 174 | 50 | mgr._registerForPreCall( | 175 | 50 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 176 | 50 | } |
ChrootChecker.cpp:void clang::ento::check::PreCall::_register<(anonymous namespace)::ChrootChecker>((anonymous namespace)::ChrootChecker*, clang::ento::CheckerManager&) Line | Count | Source | 173 | 4 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 174 | 4 | mgr._registerForPreCall( | 175 | 4 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 176 | 4 | } |
DynamicTypePropagation.cpp:void clang::ento::check::PreCall::_register<(anonymous namespace)::DynamicTypePropagation>((anonymous namespace)::DynamicTypePropagation*, clang::ento::CheckerManager&) Line | Count | Source | 173 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 174 | 1.28k | mgr._registerForPreCall( | 175 | 1.28k | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 176 | 1.28k | } |
ErrnoChecker.cpp:void clang::ento::check::PreCall::_register<(anonymous namespace)::ErrnoChecker>((anonymous namespace)::ErrnoChecker*, clang::ento::CheckerManager&) Line | Count | Source | 173 | 15 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 174 | 15 | mgr._registerForPreCall( | 175 | 15 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 176 | 15 | } |
FuchsiaHandleChecker.cpp:void clang::ento::check::PreCall::_register<(anonymous namespace)::FuchsiaHandleChecker>((anonymous namespace)::FuchsiaHandleChecker*, clang::ento::CheckerManager&) Line | Count | Source | 173 | 1 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 174 | 1 | mgr._registerForPreCall( | 175 | 1 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 176 | 1 | } |
GenericTaintChecker.cpp:void clang::ento::check::PreCall::_register<(anonymous namespace)::GenericTaintChecker>((anonymous namespace)::GenericTaintChecker*, clang::ento::CheckerManager&) Line | Count | Source | 173 | 27 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 174 | 27 | mgr._registerForPreCall( | 175 | 27 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 176 | 27 | } |
InvalidatedIteratorChecker.cpp:void clang::ento::check::PreCall::_register<(anonymous namespace)::InvalidatedIteratorChecker>((anonymous namespace)::InvalidatedIteratorChecker*, clang::ento::CheckerManager&) Line | Count | Source | 173 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 174 | 2 | mgr._registerForPreCall( | 175 | 2 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 176 | 2 | } |
IteratorRangeChecker.cpp:void clang::ento::check::PreCall::_register<(anonymous namespace)::IteratorRangeChecker>((anonymous namespace)::IteratorRangeChecker*, clang::ento::CheckerManager&) Line | Count | Source | 173 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 174 | 2 | mgr._registerForPreCall( | 175 | 2 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 176 | 2 | } |
LocalizationChecker.cpp:void clang::ento::check::PreCall::_register<(anonymous namespace)::NonLocalizedStringChecker>((anonymous namespace)::NonLocalizedStringChecker*, clang::ento::CheckerManager&) Line | Count | Source | 173 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 174 | 2 | mgr._registerForPreCall( | 175 | 2 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 176 | 2 | } |
MallocChecker.cpp:void clang::ento::check::PreCall::_register<(anonymous namespace)::MallocChecker>((anonymous namespace)::MallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 173 | 245 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 174 | 245 | mgr._registerForPreCall( | 175 | 245 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 176 | 245 | } |
MismatchedIteratorChecker.cpp:void clang::ento::check::PreCall::_register<(anonymous namespace)::MismatchedIteratorChecker>((anonymous namespace)::MismatchedIteratorChecker*, clang::ento::CheckerManager&) Line | Count | Source | 173 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 174 | 2 | mgr._registerForPreCall( | 175 | 2 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 176 | 2 | } |
MmapWriteExecChecker.cpp:void clang::ento::check::PreCall::_register<(anonymous namespace)::MmapWriteExecChecker>((anonymous namespace)::MmapWriteExecChecker*, clang::ento::CheckerManager&) Line | Count | Source | 173 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 174 | 2 | mgr._registerForPreCall( | 175 | 2 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 176 | 2 | } |
MoveChecker.cpp:void clang::ento::check::PreCall::_register<(anonymous namespace)::MoveChecker>((anonymous namespace)::MoveChecker*, clang::ento::CheckerManager&) Line | Count | Source | 173 | 78 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 174 | 78 | mgr._registerForPreCall( | 175 | 78 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 176 | 78 | } |
void clang::ento::check::PreCall::_register<clang::ento::mpi::MPIChecker>(clang::ento::mpi::MPIChecker*, clang::ento::CheckerManager&) Line | Count | Source | 173 | 3 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 174 | 3 | mgr._registerForPreCall( | 175 | 3 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 176 | 3 | } |
NonNullParamChecker.cpp:void clang::ento::check::PreCall::_register<(anonymous namespace)::NonNullParamChecker>((anonymous namespace)::NonNullParamChecker*, clang::ento::CheckerManager&) Line | Count | Source | 173 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 174 | 1.28k | mgr._registerForPreCall( | 175 | 1.28k | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 176 | 1.28k | } |
NullabilityChecker.cpp:void clang::ento::check::PreCall::_register<(anonymous namespace)::NullabilityChecker>((anonymous namespace)::NullabilityChecker*, clang::ento::CheckerManager&) Line | Count | Source | 173 | 52 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 174 | 52 | mgr._registerForPreCall( | 175 | 52 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 176 | 52 | } |
ObjCSelfInitChecker.cpp:void clang::ento::check::PreCall::_register<(anonymous namespace)::ObjCSelfInitChecker>((anonymous namespace)::ObjCSelfInitChecker*, clang::ento::CheckerManager&) Line | Count | Source | 173 | 50 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 174 | 50 | mgr._registerForPreCall( | 175 | 50 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 176 | 50 | } |
ObjCSuperDeallocChecker.cpp:void clang::ento::check::PreCall::_register<(anonymous namespace)::ObjCSuperDeallocChecker>((anonymous namespace)::ObjCSuperDeallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 173 | 48 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 174 | 48 | mgr._registerForPreCall( | 175 | 48 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 176 | 48 | } |
SimpleStreamChecker.cpp:void clang::ento::check::PreCall::_register<(anonymous namespace)::SimpleStreamChecker>((anonymous namespace)::SimpleStreamChecker*, clang::ento::CheckerManager&) Line | Count | Source | 173 | 4 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 174 | 4 | mgr._registerForPreCall( | 175 | 4 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 176 | 4 | } |
SmartPtrChecker.cpp:void clang::ento::check::PreCall::_register<(anonymous namespace)::SmartPtrChecker>((anonymous namespace)::SmartPtrChecker*, clang::ento::CheckerManager&) Line | Count | Source | 173 | 4 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 174 | 4 | mgr._registerForPreCall( | 175 | 4 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 176 | 4 | } |
StackAddrEscapeChecker.cpp:void clang::ento::check::PreCall::_register<(anonymous namespace)::StackAddrEscapeChecker>((anonymous namespace)::StackAddrEscapeChecker*, clang::ento::CheckerManager&) Line | Count | Source | 173 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 174 | 1.28k | mgr._registerForPreCall( | 175 | 1.28k | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 176 | 1.28k | } |
StdLibraryFunctionsChecker.cpp:void clang::ento::check::PreCall::_register<(anonymous namespace)::StdLibraryFunctionsChecker>((anonymous namespace)::StdLibraryFunctionsChecker*, clang::ento::CheckerManager&) Line | Count | Source | 173 | 115 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 174 | 115 | mgr._registerForPreCall( | 175 | 115 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 176 | 115 | } |
StreamChecker.cpp:void clang::ento::check::PreCall::_register<(anonymous namespace)::StreamChecker>((anonymous namespace)::StreamChecker*, clang::ento::CheckerManager&) Line | Count | Source | 173 | 17 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 174 | 17 | mgr._registerForPreCall( | 175 | 17 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 176 | 17 | } |
StringChecker.cpp:void clang::ento::check::PreCall::_register<(anonymous namespace)::StringChecker>((anonymous namespace)::StringChecker*, clang::ento::CheckerManager&) Line | Count | Source | 173 | 66 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 174 | 66 | mgr._registerForPreCall( | 175 | 66 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 176 | 66 | } |
Unexecuted instantiation: TraversalChecker.cpp:void clang::ento::check::PreCall::_register<(anonymous namespace)::CallDumper>((anonymous namespace)::CallDumper*, clang::ento::CheckerManager&) UndefinedNewArraySizeChecker.cpp:void clang::ento::check::PreCall::_register<(anonymous namespace)::UndefinedNewArraySizeChecker>((anonymous namespace)::UndefinedNewArraySizeChecker*, clang::ento::CheckerManager&) Line | Count | Source | 173 | 775 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 174 | 775 | mgr._registerForPreCall( | 175 | 775 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 176 | 775 | } |
VforkChecker.cpp:void clang::ento::check::PreCall::_register<(anonymous namespace)::VforkChecker>((anonymous namespace)::VforkChecker*, clang::ento::CheckerManager&) Line | Count | Source | 173 | 68 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 174 | 68 | mgr._registerForPreCall( | 175 | 68 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 176 | 68 | } |
ValistChecker.cpp:void clang::ento::check::PreCall::_register<(anonymous namespace)::ValistChecker>((anonymous namespace)::ValistChecker*, clang::ento::CheckerManager&) Line | Count | Source | 173 | 7 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 174 | 7 | mgr._registerForPreCall( | 175 | 7 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 176 | 7 | } |
VirtualCallChecker.cpp:void clang::ento::check::PreCall::_register<(anonymous namespace)::VirtualCallChecker>((anonymous namespace)::VirtualCallChecker*, clang::ento::CheckerManager&) Line | Count | Source | 173 | 73 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 174 | 73 | mgr._registerForPreCall( | 175 | 73 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 176 | 73 | } |
|
177 | | }; |
178 | | |
179 | | class PostCall { |
180 | | template <typename CHECKER> |
181 | | static void _checkCall(void *checker, const CallEvent &msg, |
182 | 400k | CheckerContext &C) { |
183 | 400k | ((const CHECKER *)checker)->checkPostCall(msg, C); |
184 | 400k | } AnalysisOrderChecker.cpp:void clang::ento::check::PostCall::_checkCall<(anonymous namespace)::AnalysisOrderChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 182 | 64 | CheckerContext &C) { | 183 | 64 | ((const CHECKER *)checker)->checkPostCall(msg, C); | 184 | 64 | } |
BlockInCriticalSectionChecker.cpp:void clang::ento::check::PostCall::_checkCall<(anonymous namespace)::BlockInCriticalSectionChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 182 | 109 | CheckerContext &C) { | 183 | 109 | ((const CHECKER *)checker)->checkPostCall(msg, C); | 184 | 109 | } |
ContainerModeling.cpp:void clang::ento::check::PostCall::_checkCall<(anonymous namespace)::ContainerModeling>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 182 | 17.4k | CheckerContext &C) { | 183 | 17.4k | ((const CHECKER *)checker)->checkPostCall(msg, C); | 184 | 17.4k | } |
DynamicTypePropagation.cpp:void clang::ento::check::PostCall::_checkCall<(anonymous namespace)::DynamicTypePropagation>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 182 | 108k | CheckerContext &C) { | 183 | 108k | ((const CHECKER *)checker)->checkPostCall(msg, C); | 184 | 108k | } |
FuchsiaHandleChecker.cpp:void clang::ento::check::PostCall::_checkCall<(anonymous namespace)::FuchsiaHandleChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 182 | 152 | CheckerContext &C) { | 183 | 152 | ((const CHECKER *)checker)->checkPostCall(msg, C); | 184 | 152 | } |
GenericTaintChecker.cpp:void clang::ento::check::PostCall::_checkCall<(anonymous namespace)::GenericTaintChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 182 | 3.08k | CheckerContext &C) { | 183 | 3.08k | ((const CHECKER *)checker)->checkPostCall(msg, C); | 184 | 3.08k | } |
GTestChecker.cpp:void clang::ento::check::PostCall::_checkCall<(anonymous namespace)::GTestChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 182 | 224 | CheckerContext &C) { | 183 | 224 | ((const CHECKER *)checker)->checkPostCall(msg, C); | 184 | 224 | } |
InnerPointerChecker.cpp:void clang::ento::check::PostCall::_checkCall<(anonymous namespace)::InnerPointerChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 182 | 32.8k | CheckerContext &C) { | 183 | 32.8k | ((const CHECKER *)checker)->checkPostCall(msg, C); | 184 | 32.8k | } |
InvalidPtrChecker.cpp:void clang::ento::check::PostCall::_checkCall<(anonymous namespace)::InvalidPtrChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 182 | 289 | CheckerContext &C) { | 183 | 289 | ((const CHECKER *)checker)->checkPostCall(msg, C); | 184 | 289 | } |
IteratorModeling.cpp:void clang::ento::check::PostCall::_checkCall<(anonymous namespace)::IteratorModeling>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 182 | 17.4k | CheckerContext &C) { | 183 | 17.4k | ((const CHECKER *)checker)->checkPostCall(msg, C); | 184 | 17.4k | } |
LocalizationChecker.cpp:void clang::ento::check::PostCall::_checkCall<(anonymous namespace)::NonLocalizedStringChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 182 | 196 | CheckerContext &C) { | 183 | 196 | ((const CHECKER *)checker)->checkPostCall(msg, C); | 184 | 196 | } |
MallocChecker.cpp:void clang::ento::check::PostCall::_checkCall<(anonymous namespace)::MallocChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 182 | 45.5k | CheckerContext &C) { | 183 | 45.5k | ((const CHECKER *)checker)->checkPostCall(msg, C); | 184 | 45.5k | } |
MIGChecker.cpp:void clang::ento::check::PostCall::_checkCall<(anonymous namespace)::MIGChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 182 | 453 | CheckerContext &C) { | 183 | 453 | ((const CHECKER *)checker)->checkPostCall(msg, C); | 184 | 453 | } |
MoveChecker.cpp:void clang::ento::check::PostCall::_checkCall<(anonymous namespace)::MoveChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 182 | 50.6k | CheckerContext &C) { | 183 | 50.6k | ((const CHECKER *)checker)->checkPostCall(msg, C); | 184 | 50.6k | } |
NoReturnFunctionChecker.cpp:void clang::ento::check::PostCall::_checkCall<(anonymous namespace)::NoReturnFunctionChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 182 | 110k | CheckerContext &C) { | 183 | 110k | ((const CHECKER *)checker)->checkPostCall(msg, C); | 184 | 110k | } |
NullabilityChecker.cpp:void clang::ento::check::PostCall::_checkCall<(anonymous namespace)::NullabilityChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 182 | 923 | CheckerContext &C) { | 183 | 923 | ((const CHECKER *)checker)->checkPostCall(msg, C); | 184 | 923 | } |
ObjCSelfInitChecker.cpp:void clang::ento::check::PostCall::_checkCall<(anonymous namespace)::ObjCSelfInitChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 182 | 637 | CheckerContext &C) { | 183 | 637 | ((const CHECKER *)checker)->checkPostCall(msg, C); | 184 | 637 | } |
PthreadLockChecker.cpp:void clang::ento::check::PostCall::_checkCall<(anonymous namespace)::PthreadLockChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 182 | 2.71k | CheckerContext &C) { | 183 | 2.71k | ((const CHECKER *)checker)->checkPostCall(msg, C); | 184 | 2.71k | } |
PutenvWithAutoChecker.cpp:void clang::ento::check::PostCall::_checkCall<(anonymous namespace)::PutenvWithAutoChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 182 | 22 | CheckerContext &C) { | 183 | 22 | ((const CHECKER *)checker)->checkPostCall(msg, C); | 184 | 22 | } |
void clang::ento::check::PostCall::_checkCall<clang::ento::retaincountchecker::RetainCountChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 182 | 4.50k | CheckerContext &C) { | 183 | 4.50k | ((const CHECKER *)checker)->checkPostCall(msg, C); | 184 | 4.50k | } |
ReturnValueChecker.cpp:void clang::ento::check::PostCall::_checkCall<(anonymous namespace)::ReturnValueChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 182 | 219 | CheckerContext &C) { | 183 | 219 | ((const CHECKER *)checker)->checkPostCall(msg, C); | 184 | 219 | } |
SimpleStreamChecker.cpp:void clang::ento::check::PostCall::_checkCall<(anonymous namespace)::SimpleStreamChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 182 | 48 | CheckerContext &C) { | 183 | 48 | ((const CHECKER *)checker)->checkPostCall(msg, C); | 184 | 48 | } |
StdLibraryFunctionsChecker.cpp:void clang::ento::check::PostCall::_checkCall<(anonymous namespace)::StdLibraryFunctionsChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 182 | 3.27k | CheckerContext &C) { | 183 | 3.27k | ((const CHECKER *)checker)->checkPostCall(msg, C); | 184 | 3.27k | } |
Unexecuted instantiation: TraversalChecker.cpp:void clang::ento::check::PostCall::_checkCall<(anonymous namespace)::CallDumper>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) TrustNonnullChecker.cpp:void clang::ento::check::PostCall::_checkCall<(anonymous namespace)::TrustNonnullChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 182 | 206 | CheckerContext &C) { | 183 | 206 | ((const CHECKER *)checker)->checkPostCall(msg, C); | 184 | 206 | } |
TrustReturnsNonnullChecker.cpp:void clang::ento::check::PostCall::_checkCall<(anonymous namespace)::TrustReturnsNonnullChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 182 | 209 | CheckerContext &C) { | 183 | 209 | ((const CHECKER *)checker)->checkPostCall(msg, C); | 184 | 209 | } |
VforkChecker.cpp:void clang::ento::check::PostCall::_checkCall<(anonymous namespace)::VforkChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 182 | 1.52k | CheckerContext &C) { | 183 | 1.52k | ((const CHECKER *)checker)->checkPostCall(msg, C); | 184 | 1.52k | } |
|
185 | | |
186 | | public: |
187 | | template <typename CHECKER> |
188 | 3.71k | static void _register(CHECKER *checker, CheckerManager &mgr) { |
189 | 3.71k | mgr._registerForPostCall( |
190 | 3.71k | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); |
191 | 3.71k | } AnalysisOrderChecker.cpp:void clang::ento::check::PostCall::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 188 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 189 | 12 | mgr._registerForPostCall( | 190 | 12 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 191 | 12 | } |
BlockInCriticalSectionChecker.cpp:void clang::ento::check::PostCall::_register<(anonymous namespace)::BlockInCriticalSectionChecker>((anonymous namespace)::BlockInCriticalSectionChecker*, clang::ento::CheckerManager&) Line | Count | Source | 188 | 5 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 189 | 5 | mgr._registerForPostCall( | 190 | 5 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 191 | 5 | } |
ContainerModeling.cpp:void clang::ento::check::PostCall::_register<(anonymous namespace)::ContainerModeling>((anonymous namespace)::ContainerModeling*, clang::ento::CheckerManager&) Line | Count | Source | 188 | 21 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 189 | 21 | mgr._registerForPostCall( | 190 | 21 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 191 | 21 | } |
DynamicTypePropagation.cpp:void clang::ento::check::PostCall::_register<(anonymous namespace)::DynamicTypePropagation>((anonymous namespace)::DynamicTypePropagation*, clang::ento::CheckerManager&) Line | Count | Source | 188 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 189 | 1.28k | mgr._registerForPostCall( | 190 | 1.28k | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 191 | 1.28k | } |
FuchsiaHandleChecker.cpp:void clang::ento::check::PostCall::_register<(anonymous namespace)::FuchsiaHandleChecker>((anonymous namespace)::FuchsiaHandleChecker*, clang::ento::CheckerManager&) Line | Count | Source | 188 | 1 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 189 | 1 | mgr._registerForPostCall( | 190 | 1 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 191 | 1 | } |
GenericTaintChecker.cpp:void clang::ento::check::PostCall::_register<(anonymous namespace)::GenericTaintChecker>((anonymous namespace)::GenericTaintChecker*, clang::ento::CheckerManager&) Line | Count | Source | 188 | 27 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 189 | 27 | mgr._registerForPostCall( | 190 | 27 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 191 | 27 | } |
GTestChecker.cpp:void clang::ento::check::PostCall::_register<(anonymous namespace)::GTestChecker>((anonymous namespace)::GTestChecker*, clang::ento::CheckerManager&) Line | Count | Source | 188 | 17 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 189 | 17 | mgr._registerForPostCall( | 190 | 17 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 191 | 17 | } |
InnerPointerChecker.cpp:void clang::ento::check::PostCall::_register<(anonymous namespace)::InnerPointerChecker>((anonymous namespace)::InnerPointerChecker*, clang::ento::CheckerManager&) Line | Count | Source | 188 | 66 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 189 | 66 | mgr._registerForPostCall( | 190 | 66 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 191 | 66 | } |
InvalidPtrChecker.cpp:void clang::ento::check::PostCall::_register<(anonymous namespace)::InvalidPtrChecker>((anonymous namespace)::InvalidPtrChecker*, clang::ento::CheckerManager&) Line | Count | Source | 188 | 11 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 189 | 11 | mgr._registerForPostCall( | 190 | 11 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 191 | 11 | } |
IteratorModeling.cpp:void clang::ento::check::PostCall::_register<(anonymous namespace)::IteratorModeling>((anonymous namespace)::IteratorModeling*, clang::ento::CheckerManager&) Line | Count | Source | 188 | 19 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 189 | 19 | mgr._registerForPostCall( | 190 | 19 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 191 | 19 | } |
LocalizationChecker.cpp:void clang::ento::check::PostCall::_register<(anonymous namespace)::NonLocalizedStringChecker>((anonymous namespace)::NonLocalizedStringChecker*, clang::ento::CheckerManager&) Line | Count | Source | 188 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 189 | 2 | mgr._registerForPostCall( | 190 | 2 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 191 | 2 | } |
MallocChecker.cpp:void clang::ento::check::PostCall::_register<(anonymous namespace)::MallocChecker>((anonymous namespace)::MallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 188 | 245 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 189 | 245 | mgr._registerForPostCall( | 190 | 245 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 191 | 245 | } |
MIGChecker.cpp:void clang::ento::check::PostCall::_register<(anonymous namespace)::MIGChecker>((anonymous namespace)::MIGChecker*, clang::ento::CheckerManager&) Line | Count | Source | 188 | 47 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 189 | 47 | mgr._registerForPostCall( | 190 | 47 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 191 | 47 | } |
MoveChecker.cpp:void clang::ento::check::PostCall::_register<(anonymous namespace)::MoveChecker>((anonymous namespace)::MoveChecker*, clang::ento::CheckerManager&) Line | Count | Source | 188 | 78 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 189 | 78 | mgr._registerForPostCall( | 190 | 78 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 191 | 78 | } |
NoReturnFunctionChecker.cpp:void clang::ento::check::PostCall::_register<(anonymous namespace)::NoReturnFunctionChecker>((anonymous namespace)::NoReturnFunctionChecker*, clang::ento::CheckerManager&) Line | Count | Source | 188 | 1.29k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 189 | 1.29k | mgr._registerForPostCall( | 190 | 1.29k | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 191 | 1.29k | } |
NullabilityChecker.cpp:void clang::ento::check::PostCall::_register<(anonymous namespace)::NullabilityChecker>((anonymous namespace)::NullabilityChecker*, clang::ento::CheckerManager&) Line | Count | Source | 188 | 52 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 189 | 52 | mgr._registerForPostCall( | 190 | 52 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 191 | 52 | } |
ObjCSelfInitChecker.cpp:void clang::ento::check::PostCall::_register<(anonymous namespace)::ObjCSelfInitChecker>((anonymous namespace)::ObjCSelfInitChecker*, clang::ento::CheckerManager&) Line | Count | Source | 188 | 50 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 189 | 50 | mgr._registerForPostCall( | 190 | 50 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 191 | 50 | } |
PthreadLockChecker.cpp:void clang::ento::check::PostCall::_register<(anonymous namespace)::PthreadLockChecker>((anonymous namespace)::PthreadLockChecker*, clang::ento::CheckerManager&) Line | Count | Source | 188 | 81 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 189 | 81 | mgr._registerForPostCall( | 190 | 81 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 191 | 81 | } |
PutenvWithAutoChecker.cpp:void clang::ento::check::PostCall::_register<(anonymous namespace)::PutenvWithAutoChecker>((anonymous namespace)::PutenvWithAutoChecker*, clang::ento::CheckerManager&) Line | Count | Source | 188 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 189 | 2 | mgr._registerForPostCall( | 190 | 2 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 191 | 2 | } |
void clang::ento::check::PostCall::_register<clang::ento::retaincountchecker::RetainCountChecker>(clang::ento::retaincountchecker::RetainCountChecker*, clang::ento::CheckerManager&) Line | Count | Source | 188 | 96 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 189 | 96 | mgr._registerForPostCall( | 190 | 96 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 191 | 96 | } |
ReturnValueChecker.cpp:void clang::ento::check::PostCall::_register<(anonymous namespace)::ReturnValueChecker>((anonymous namespace)::ReturnValueChecker*, clang::ento::CheckerManager&) Line | Count | Source | 188 | 42 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 189 | 42 | mgr._registerForPostCall( | 190 | 42 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 191 | 42 | } |
SimpleStreamChecker.cpp:void clang::ento::check::PostCall::_register<(anonymous namespace)::SimpleStreamChecker>((anonymous namespace)::SimpleStreamChecker*, clang::ento::CheckerManager&) Line | Count | Source | 188 | 4 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 189 | 4 | mgr._registerForPostCall( | 190 | 4 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 191 | 4 | } |
StdLibraryFunctionsChecker.cpp:void clang::ento::check::PostCall::_register<(anonymous namespace)::StdLibraryFunctionsChecker>((anonymous namespace)::StdLibraryFunctionsChecker*, clang::ento::CheckerManager&) Line | Count | Source | 188 | 115 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 189 | 115 | mgr._registerForPostCall( | 190 | 115 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 191 | 115 | } |
Unexecuted instantiation: TraversalChecker.cpp:void clang::ento::check::PostCall::_register<(anonymous namespace)::CallDumper>((anonymous namespace)::CallDumper*, clang::ento::CheckerManager&) TrustNonnullChecker.cpp:void clang::ento::check::PostCall::_register<(anonymous namespace)::TrustNonnullChecker>((anonymous namespace)::TrustNonnullChecker*, clang::ento::CheckerManager&) Line | Count | Source | 188 | 41 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 189 | 41 | mgr._registerForPostCall( | 190 | 41 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 191 | 41 | } |
TrustReturnsNonnullChecker.cpp:void clang::ento::check::PostCall::_register<(anonymous namespace)::TrustReturnsNonnullChecker>((anonymous namespace)::TrustReturnsNonnullChecker*, clang::ento::CheckerManager&) Line | Count | Source | 188 | 42 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 189 | 42 | mgr._registerForPostCall( | 190 | 42 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 191 | 42 | } |
VforkChecker.cpp:void clang::ento::check::PostCall::_register<(anonymous namespace)::VforkChecker>((anonymous namespace)::VforkChecker*, clang::ento::CheckerManager&) Line | Count | Source | 188 | 68 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 189 | 68 | mgr._registerForPostCall( | 190 | 68 | CheckerManager::CheckCallFunc(checker, _checkCall<CHECKER>)); | 191 | 68 | } |
|
192 | | }; |
193 | | |
194 | | class Location { |
195 | | template <typename CHECKER> |
196 | | static void _checkLocation(void *checker, |
197 | | const SVal &location, bool isLoad, const Stmt *S, |
198 | 685k | CheckerContext &C) { |
199 | 685k | ((const CHECKER *)checker)->checkLocation(location, isLoad, S, C); |
200 | 685k | } ArrayBoundChecker.cpp:void clang::ento::check::Location::_checkLocation<(anonymous namespace)::ArrayBoundChecker>(void*, clang::ento::SVal const&, bool, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 198 | 3.48k | CheckerContext &C) { | 199 | 3.48k | ((const CHECKER *)checker)->checkLocation(location, isLoad, S, C); | 200 | 3.48k | } |
ArrayBoundCheckerV2.cpp:void clang::ento::check::Location::_checkLocation<(anonymous namespace)::ArrayBoundCheckerV2>(void*, clang::ento::SVal const&, bool, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 198 | 71.7k | CheckerContext &C) { | 199 | 71.7k | ((const CHECKER *)checker)->checkLocation(location, isLoad, S, C); | 200 | 71.7k | } |
DereferenceChecker.cpp:void clang::ento::check::Location::_checkLocation<(anonymous namespace)::DereferenceChecker>(void*, clang::ento::SVal const&, bool, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 198 | 264k | CheckerContext &C) { | 199 | 264k | ((const CHECKER *)checker)->checkLocation(location, isLoad, S, C); | 200 | 264k | } |
ErrnoChecker.cpp:void clang::ento::check::Location::_checkLocation<(anonymous namespace)::ErrnoChecker>(void*, clang::ento::SVal const&, bool, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 198 | 972 | CheckerContext &C) { | 199 | 972 | ((const CHECKER *)checker)->checkLocation(location, isLoad, S, C); | 200 | 972 | } |
InvalidPtrChecker.cpp:void clang::ento::check::Location::_checkLocation<(anonymous namespace)::InvalidPtrChecker>(void*, clang::ento::SVal const&, bool, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 198 | 764 | CheckerContext &C) { | 199 | 764 | ((const CHECKER *)checker)->checkLocation(location, isLoad, S, C); | 200 | 764 | } |
MallocChecker.cpp:void clang::ento::check::Location::_checkLocation<(anonymous namespace)::MallocChecker>(void*, clang::ento::SVal const&, bool, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 198 | 76.2k | CheckerContext &C) { | 199 | 76.2k | ((const CHECKER *)checker)->checkLocation(location, isLoad, S, C); | 200 | 76.2k | } |
NSErrorChecker.cpp:void clang::ento::check::Location::_checkLocation<(anonymous namespace)::NSOrCFErrorDerefChecker>(void*, clang::ento::SVal const&, bool, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 198 | 694 | CheckerContext &C) { | 199 | 694 | ((const CHECKER *)checker)->checkLocation(location, isLoad, S, C); | 200 | 694 | } |
NonnullGlobalConstantsChecker.cpp:void clang::ento::check::Location::_checkLocation<(anonymous namespace)::NonnullGlobalConstantsChecker>(void*, clang::ento::SVal const&, bool, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 198 | 263k | CheckerContext &C) { | 199 | 263k | ((const CHECKER *)checker)->checkLocation(location, isLoad, S, C); | 200 | 263k | } |
NullabilityChecker.cpp:void clang::ento::check::Location::_checkLocation<(anonymous namespace)::NullabilityChecker>(void*, clang::ento::SVal const&, bool, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 198 | 1.75k | CheckerContext &C) { | 199 | 1.75k | ((const CHECKER *)checker)->checkLocation(location, isLoad, S, C); | 200 | 1.75k | } |
ObjCSelfInitChecker.cpp:void clang::ento::check::Location::_checkLocation<(anonymous namespace)::ObjCSelfInitChecker>(void*, clang::ento::SVal const&, bool, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 198 | 1.00k | CheckerContext &C) { | 199 | 1.00k | ((const CHECKER *)checker)->checkLocation(location, isLoad, S, C); | 200 | 1.00k | } |
ObjCSuperDeallocChecker.cpp:void clang::ento::check::Location::_checkLocation<(anonymous namespace)::ObjCSuperDeallocChecker>(void*, clang::ento::SVal const&, bool, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 198 | 753 | CheckerContext &C) { | 199 | 753 | ((const CHECKER *)checker)->checkLocation(location, isLoad, S, C); | 200 | 753 | } |
|
201 | | |
202 | | public: |
203 | | template <typename CHECKER> |
204 | 3.05k | static void _register(CHECKER *checker, CheckerManager &mgr) { |
205 | 3.05k | mgr._registerForLocation( |
206 | 3.05k | CheckerManager::CheckLocationFunc(checker, _checkLocation<CHECKER>)); |
207 | 3.05k | } ArrayBoundChecker.cpp:void clang::ento::check::Location::_register<(anonymous namespace)::ArrayBoundChecker>((anonymous namespace)::ArrayBoundChecker*, clang::ento::CheckerManager&) Line | Count | Source | 204 | 6 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 205 | 6 | mgr._registerForLocation( | 206 | 6 | CheckerManager::CheckLocationFunc(checker, _checkLocation<CHECKER>)); | 207 | 6 | } |
ArrayBoundCheckerV2.cpp:void clang::ento::check::Location::_register<(anonymous namespace)::ArrayBoundCheckerV2>((anonymous namespace)::ArrayBoundCheckerV2*, clang::ento::CheckerManager&) Line | Count | Source | 204 | 11 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 205 | 11 | mgr._registerForLocation( | 206 | 11 | CheckerManager::CheckLocationFunc(checker, _checkLocation<CHECKER>)); | 207 | 11 | } |
DereferenceChecker.cpp:void clang::ento::check::Location::_register<(anonymous namespace)::DereferenceChecker>((anonymous namespace)::DereferenceChecker*, clang::ento::CheckerManager&) Line | Count | Source | 204 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 205 | 1.28k | mgr._registerForLocation( | 206 | 1.28k | CheckerManager::CheckLocationFunc(checker, _checkLocation<CHECKER>)); | 207 | 1.28k | } |
ErrnoChecker.cpp:void clang::ento::check::Location::_register<(anonymous namespace)::ErrnoChecker>((anonymous namespace)::ErrnoChecker*, clang::ento::CheckerManager&) Line | Count | Source | 204 | 15 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 205 | 15 | mgr._registerForLocation( | 206 | 15 | CheckerManager::CheckLocationFunc(checker, _checkLocation<CHECKER>)); | 207 | 15 | } |
InvalidPtrChecker.cpp:void clang::ento::check::Location::_register<(anonymous namespace)::InvalidPtrChecker>((anonymous namespace)::InvalidPtrChecker*, clang::ento::CheckerManager&) Line | Count | Source | 204 | 11 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 205 | 11 | mgr._registerForLocation( | 206 | 11 | CheckerManager::CheckLocationFunc(checker, _checkLocation<CHECKER>)); | 207 | 11 | } |
MallocChecker.cpp:void clang::ento::check::Location::_register<(anonymous namespace)::MallocChecker>((anonymous namespace)::MallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 204 | 245 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 205 | 245 | mgr._registerForLocation( | 206 | 245 | CheckerManager::CheckLocationFunc(checker, _checkLocation<CHECKER>)); | 207 | 245 | } |
NSErrorChecker.cpp:void clang::ento::check::Location::_register<(anonymous namespace)::NSOrCFErrorDerefChecker>((anonymous namespace)::NSOrCFErrorDerefChecker*, clang::ento::CheckerManager&) Line | Count | Source | 204 | 49 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 205 | 49 | mgr._registerForLocation( | 206 | 49 | CheckerManager::CheckLocationFunc(checker, _checkLocation<CHECKER>)); | 207 | 49 | } |
NonnullGlobalConstantsChecker.cpp:void clang::ento::check::Location::_register<(anonymous namespace)::NonnullGlobalConstantsChecker>((anonymous namespace)::NonnullGlobalConstantsChecker*, clang::ento::CheckerManager&) Line | Count | Source | 204 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 205 | 1.28k | mgr._registerForLocation( | 206 | 1.28k | CheckerManager::CheckLocationFunc(checker, _checkLocation<CHECKER>)); | 207 | 1.28k | } |
NullabilityChecker.cpp:void clang::ento::check::Location::_register<(anonymous namespace)::NullabilityChecker>((anonymous namespace)::NullabilityChecker*, clang::ento::CheckerManager&) Line | Count | Source | 204 | 52 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 205 | 52 | mgr._registerForLocation( | 206 | 52 | CheckerManager::CheckLocationFunc(checker, _checkLocation<CHECKER>)); | 207 | 52 | } |
ObjCSelfInitChecker.cpp:void clang::ento::check::Location::_register<(anonymous namespace)::ObjCSelfInitChecker>((anonymous namespace)::ObjCSelfInitChecker*, clang::ento::CheckerManager&) Line | Count | Source | 204 | 50 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 205 | 50 | mgr._registerForLocation( | 206 | 50 | CheckerManager::CheckLocationFunc(checker, _checkLocation<CHECKER>)); | 207 | 50 | } |
ObjCSuperDeallocChecker.cpp:void clang::ento::check::Location::_register<(anonymous namespace)::ObjCSuperDeallocChecker>((anonymous namespace)::ObjCSuperDeallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 204 | 48 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 205 | 48 | mgr._registerForLocation( | 206 | 48 | CheckerManager::CheckLocationFunc(checker, _checkLocation<CHECKER>)); | 207 | 48 | } |
|
208 | | }; |
209 | | |
210 | | class Bind { |
211 | | template <typename CHECKER> |
212 | | static void _checkBind(void *checker, |
213 | | const SVal &location, const SVal &val, const Stmt *S, |
214 | 174k | CheckerContext &C) { |
215 | 174k | ((const CHECKER *)checker)->checkBind(location, val, S, C); |
216 | 174k | } AnalysisOrderChecker.cpp:void clang::ento::check::Bind::_checkBind<(anonymous namespace)::AnalysisOrderChecker>(void*, clang::ento::SVal const&, clang::ento::SVal const&, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 214 | 19 | CheckerContext &C) { | 215 | 19 | ((const CHECKER *)checker)->checkBind(location, val, S, C); | 216 | 19 | } |
BoolAssignmentChecker.cpp:void clang::ento::check::Bind::_checkBind<(anonymous namespace)::BoolAssignmentChecker>(void*, clang::ento::SVal const&, clang::ento::SVal const&, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 214 | 2.09k | CheckerContext &C) { | 215 | 2.09k | ((const CHECKER *)checker)->checkBind(location, val, S, C); | 216 | 2.09k | } |
DereferenceChecker.cpp:void clang::ento::check::Bind::_checkBind<(anonymous namespace)::DereferenceChecker>(void*, clang::ento::SVal const&, clang::ento::SVal const&, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 214 | 82.4k | CheckerContext &C) { | 215 | 82.4k | ((const CHECKER *)checker)->checkBind(location, val, S, C); | 216 | 82.4k | } |
IteratorModeling.cpp:void clang::ento::check::Bind::_checkBind<(anonymous namespace)::IteratorModeling>(void*, clang::ento::SVal const&, clang::ento::SVal const&, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 214 | 3.53k | CheckerContext &C) { | 215 | 3.53k | ((const CHECKER *)checker)->checkBind(location, val, S, C); | 216 | 3.53k | } |
NullabilityChecker.cpp:void clang::ento::check::Bind::_checkBind<(anonymous namespace)::NullabilityChecker>(void*, clang::ento::SVal const&, clang::ento::SVal const&, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 214 | 599 | CheckerContext &C) { | 215 | 599 | ((const CHECKER *)checker)->checkBind(location, val, S, C); | 216 | 599 | } |
ObjCSelfInitChecker.cpp:void clang::ento::check::Bind::_checkBind<(anonymous namespace)::ObjCSelfInitChecker>(void*, clang::ento::SVal const&, clang::ento::SVal const&, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 214 | 340 | CheckerContext &C) { | 215 | 340 | ((const CHECKER *)checker)->checkBind(location, val, S, C); | 216 | 340 | } |
void clang::ento::check::Bind::_checkBind<clang::ento::retaincountchecker::RetainCountChecker>(void*, clang::ento::SVal const&, clang::ento::SVal const&, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 214 | 2.15k | CheckerContext &C) { | 215 | 2.15k | ((const CHECKER *)checker)->checkBind(location, val, S, C); | 216 | 2.15k | } |
UndefinedAssignmentChecker.cpp:void clang::ento::check::Bind::_checkBind<(anonymous namespace)::UndefinedAssignmentChecker>(void*, clang::ento::SVal const&, clang::ento::SVal const&, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 214 | 82.3k | CheckerContext &C) { | 215 | 82.3k | ((const CHECKER *)checker)->checkBind(location, val, S, C); | 216 | 82.3k | } |
VforkChecker.cpp:void clang::ento::check::Bind::_checkBind<(anonymous namespace)::VforkChecker>(void*, clang::ento::SVal const&, clang::ento::SVal const&, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 214 | 826 | CheckerContext &C) { | 215 | 826 | ((const CHECKER *)checker)->checkBind(location, val, S, C); | 216 | 826 | } |
|
217 | | |
218 | | public: |
219 | | template <typename CHECKER> |
220 | 2.94k | static void _register(CHECKER *checker, CheckerManager &mgr) { |
221 | 2.94k | mgr._registerForBind( |
222 | 2.94k | CheckerManager::CheckBindFunc(checker, _checkBind<CHECKER>)); |
223 | 2.94k | } AnalysisOrderChecker.cpp:void clang::ento::check::Bind::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 220 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 221 | 12 | mgr._registerForBind( | 222 | 12 | CheckerManager::CheckBindFunc(checker, _checkBind<CHECKER>)); | 223 | 12 | } |
BoolAssignmentChecker.cpp:void clang::ento::check::Bind::_register<(anonymous namespace)::BoolAssignmentChecker>((anonymous namespace)::BoolAssignmentChecker*, clang::ento::CheckerManager&) Line | Count | Source | 220 | 76 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 221 | 76 | mgr._registerForBind( | 222 | 76 | CheckerManager::CheckBindFunc(checker, _checkBind<CHECKER>)); | 223 | 76 | } |
DereferenceChecker.cpp:void clang::ento::check::Bind::_register<(anonymous namespace)::DereferenceChecker>((anonymous namespace)::DereferenceChecker*, clang::ento::CheckerManager&) Line | Count | Source | 220 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 221 | 1.28k | mgr._registerForBind( | 222 | 1.28k | CheckerManager::CheckBindFunc(checker, _checkBind<CHECKER>)); | 223 | 1.28k | } |
IteratorModeling.cpp:void clang::ento::check::Bind::_register<(anonymous namespace)::IteratorModeling>((anonymous namespace)::IteratorModeling*, clang::ento::CheckerManager&) Line | Count | Source | 220 | 19 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 221 | 19 | mgr._registerForBind( | 222 | 19 | CheckerManager::CheckBindFunc(checker, _checkBind<CHECKER>)); | 223 | 19 | } |
NullabilityChecker.cpp:void clang::ento::check::Bind::_register<(anonymous namespace)::NullabilityChecker>((anonymous namespace)::NullabilityChecker*, clang::ento::CheckerManager&) Line | Count | Source | 220 | 52 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 221 | 52 | mgr._registerForBind( | 222 | 52 | CheckerManager::CheckBindFunc(checker, _checkBind<CHECKER>)); | 223 | 52 | } |
ObjCSelfInitChecker.cpp:void clang::ento::check::Bind::_register<(anonymous namespace)::ObjCSelfInitChecker>((anonymous namespace)::ObjCSelfInitChecker*, clang::ento::CheckerManager&) Line | Count | Source | 220 | 50 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 221 | 50 | mgr._registerForBind( | 222 | 50 | CheckerManager::CheckBindFunc(checker, _checkBind<CHECKER>)); | 223 | 50 | } |
void clang::ento::check::Bind::_register<clang::ento::retaincountchecker::RetainCountChecker>(clang::ento::retaincountchecker::RetainCountChecker*, clang::ento::CheckerManager&) Line | Count | Source | 220 | 96 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 221 | 96 | mgr._registerForBind( | 222 | 96 | CheckerManager::CheckBindFunc(checker, _checkBind<CHECKER>)); | 223 | 96 | } |
UndefinedAssignmentChecker.cpp:void clang::ento::check::Bind::_register<(anonymous namespace)::UndefinedAssignmentChecker>((anonymous namespace)::UndefinedAssignmentChecker*, clang::ento::CheckerManager&) Line | Count | Source | 220 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 221 | 1.28k | mgr._registerForBind( | 222 | 1.28k | CheckerManager::CheckBindFunc(checker, _checkBind<CHECKER>)); | 223 | 1.28k | } |
VforkChecker.cpp:void clang::ento::check::Bind::_register<(anonymous namespace)::VforkChecker>((anonymous namespace)::VforkChecker*, clang::ento::CheckerManager&) Line | Count | Source | 220 | 68 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 221 | 68 | mgr._registerForBind( | 222 | 68 | CheckerManager::CheckBindFunc(checker, _checkBind<CHECKER>)); | 223 | 68 | } |
|
224 | | }; |
225 | | |
226 | | class EndAnalysis { |
227 | | template <typename CHECKER> |
228 | | static void _checkEndAnalysis(void *checker, ExplodedGraph &G, |
229 | 9.39k | BugReporter &BR, ExprEngine &Eng) { |
230 | 9.39k | ((const CHECKER *)checker)->checkEndAnalysis(G, BR, Eng); |
231 | 9.39k | } AnalysisOrderChecker.cpp:void clang::ento::check::EndAnalysis::_checkEndAnalysis<(anonymous namespace)::AnalysisOrderChecker>(void*, clang::ento::ExplodedGraph&, clang::ento::BugReporter&, clang::ento::ExprEngine&) Line | Count | Source | 229 | 21 | BugReporter &BR, ExprEngine &Eng) { | 230 | 21 | ((const CHECKER *)checker)->checkEndAnalysis(G, BR, Eng); | 231 | 21 | } |
AnalyzerStatsChecker.cpp:void clang::ento::check::EndAnalysis::_checkEndAnalysis<(anonymous namespace)::AnalyzerStatsChecker>(void*, clang::ento::ExplodedGraph&, clang::ento::BugReporter&, clang::ento::ExprEngine&) Line | Count | Source | 229 | 4 | BugReporter &BR, ExprEngine &Eng) { | 230 | 4 | ((const CHECKER *)checker)->checkEndAnalysis(G, BR, Eng); | 231 | 4 | } |
Unexecuted instantiation: DebugCheckers.cpp:void clang::ento::check::EndAnalysis::_checkEndAnalysis<(anonymous namespace)::ExplodedGraphViewer>(void*, clang::ento::ExplodedGraph&, clang::ento::BugReporter&, clang::ento::ExprEngine&) ExprInspectionChecker.cpp:void clang::ento::check::EndAnalysis::_checkEndAnalysis<(anonymous namespace)::ExprInspectionChecker>(void*, clang::ento::ExplodedGraph&, clang::ento::BugReporter&, clang::ento::ExprEngine&) Line | Count | Source | 229 | 8.98k | BugReporter &BR, ExprEngine &Eng) { | 230 | 8.98k | ((const CHECKER *)checker)->checkEndAnalysis(G, BR, Eng); | 231 | 8.98k | } |
UnreachableCodeChecker.cpp:void clang::ento::check::EndAnalysis::_checkEndAnalysis<(anonymous namespace)::UnreachableCodeChecker>(void*, clang::ento::ExplodedGraph&, clang::ento::BugReporter&, clang::ento::ExprEngine&) Line | Count | Source | 229 | 384 | BugReporter &BR, ExprEngine &Eng) { | 230 | 384 | ((const CHECKER *)checker)->checkEndAnalysis(G, BR, Eng); | 231 | 384 | } |
|
232 | | |
233 | | public: |
234 | | template <typename CHECKER> |
235 | 468 | static void _register(CHECKER *checker, CheckerManager &mgr) { |
236 | 468 | mgr._registerForEndAnalysis( |
237 | 468 | CheckerManager::CheckEndAnalysisFunc(checker, _checkEndAnalysis<CHECKER>)); |
238 | 468 | } AnalysisOrderChecker.cpp:void clang::ento::check::EndAnalysis::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 235 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 236 | 12 | mgr._registerForEndAnalysis( | 237 | 12 | CheckerManager::CheckEndAnalysisFunc(checker, _checkEndAnalysis<CHECKER>)); | 238 | 12 | } |
AnalyzerStatsChecker.cpp:void clang::ento::check::EndAnalysis::_register<(anonymous namespace)::AnalyzerStatsChecker>((anonymous namespace)::AnalyzerStatsChecker*, clang::ento::CheckerManager&) Line | Count | Source | 235 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 236 | 2 | mgr._registerForEndAnalysis( | 237 | 2 | CheckerManager::CheckEndAnalysisFunc(checker, _checkEndAnalysis<CHECKER>)); | 238 | 2 | } |
Unexecuted instantiation: DebugCheckers.cpp:void clang::ento::check::EndAnalysis::_register<(anonymous namespace)::ExplodedGraphViewer>((anonymous namespace)::ExplodedGraphViewer*, clang::ento::CheckerManager&) ExprInspectionChecker.cpp:void clang::ento::check::EndAnalysis::_register<(anonymous namespace)::ExprInspectionChecker>((anonymous namespace)::ExprInspectionChecker*, clang::ento::CheckerManager&) Line | Count | Source | 235 | 444 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 236 | 444 | mgr._registerForEndAnalysis( | 237 | 444 | CheckerManager::CheckEndAnalysisFunc(checker, _checkEndAnalysis<CHECKER>)); | 238 | 444 | } |
UnreachableCodeChecker.cpp:void clang::ento::check::EndAnalysis::_register<(anonymous namespace)::UnreachableCodeChecker>((anonymous namespace)::UnreachableCodeChecker*, clang::ento::CheckerManager&) Line | Count | Source | 235 | 10 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 236 | 10 | mgr._registerForEndAnalysis( | 237 | 10 | CheckerManager::CheckEndAnalysisFunc(checker, _checkEndAnalysis<CHECKER>)); | 238 | 10 | } |
|
239 | | }; |
240 | | |
241 | | class BeginFunction { |
242 | | template <typename CHECKER> |
243 | 71.1k | static void _checkBeginFunction(void *checker, CheckerContext &C) { |
244 | 71.1k | ((const CHECKER *)checker)->checkBeginFunction(C); |
245 | 71.1k | } CheckObjCDealloc.cpp:void clang::ento::check::BeginFunction::_checkBeginFunction<(anonymous namespace)::ObjCDeallocChecker>(void*, clang::ento::CheckerContext&) Line | Count | Source | 243 | 625 | static void _checkBeginFunction(void *checker, CheckerContext &C) { | 244 | 625 | ((const CHECKER *)checker)->checkBeginFunction(C); | 245 | 625 | } |
CXXSelfAssignmentChecker.cpp:void clang::ento::check::BeginFunction::_checkBeginFunction<(anonymous namespace)::CXXSelfAssignmentChecker>(void*, clang::ento::CheckerContext&) Line | Count | Source | 243 | 9.26k | static void _checkBeginFunction(void *checker, CheckerContext &C) { | 244 | 9.26k | ((const CHECKER *)checker)->checkBeginFunction(C); | 245 | 9.26k | } |
ErrnoModeling.cpp:void clang::ento::check::BeginFunction::_checkBeginFunction<(anonymous namespace)::ErrnoModeling>(void*, clang::ento::CheckerContext&) Line | Count | Source | 243 | 256 | static void _checkBeginFunction(void *checker, CheckerContext &C) { | 244 | 256 | ((const CHECKER *)checker)->checkBeginFunction(C); | 245 | 256 | } |
InvalidPtrChecker.cpp:void clang::ento::check::BeginFunction::_checkBeginFunction<(anonymous namespace)::InvalidPtrChecker>(void*, clang::ento::CheckerContext&) Line | Count | Source | 243 | 58 | static void _checkBeginFunction(void *checker, CheckerContext &C) { | 244 | 58 | ((const CHECKER *)checker)->checkBeginFunction(C); | 245 | 58 | } |
NonNullParamChecker.cpp:void clang::ento::check::BeginFunction::_checkBeginFunction<(anonymous namespace)::NonNullParamChecker>(void*, clang::ento::CheckerContext&) Line | Count | Source | 243 | 48.8k | static void _checkBeginFunction(void *checker, CheckerContext &C) { | 244 | 48.8k | ((const CHECKER *)checker)->checkBeginFunction(C); | 245 | 48.8k | } |
NullabilityChecker.cpp:void clang::ento::check::BeginFunction::_checkBeginFunction<(anonymous namespace)::NullabilityChecker>(void*, clang::ento::CheckerContext&) Line | Count | Source | 243 | 486 | static void _checkBeginFunction(void *checker, CheckerContext &C) { | 244 | 486 | ((const CHECKER *)checker)->checkBeginFunction(C); | 245 | 486 | } |
void clang::ento::check::BeginFunction::_checkBeginFunction<clang::ento::retaincountchecker::RetainCountChecker>(void*, clang::ento::CheckerContext&) Line | Count | Source | 243 | 2.14k | static void _checkBeginFunction(void *checker, CheckerContext &C) { | 244 | 2.14k | ((const CHECKER *)checker)->checkBeginFunction(C); | 245 | 2.14k | } |
TraversalChecker.cpp:void clang::ento::check::BeginFunction::_checkBeginFunction<(anonymous namespace)::TraversalDumper>(void*, clang::ento::CheckerContext&) Line | Count | Source | 243 | 8 | static void _checkBeginFunction(void *checker, CheckerContext &C) { | 244 | 8 | ((const CHECKER *)checker)->checkBeginFunction(C); | 245 | 8 | } |
VirtualCallChecker.cpp:void clang::ento::check::BeginFunction::_checkBeginFunction<(anonymous namespace)::VirtualCallChecker>(void*, clang::ento::CheckerContext&) Line | Count | Source | 243 | 9.51k | static void _checkBeginFunction(void *checker, CheckerContext &C) { | 244 | 9.51k | ((const CHECKER *)checker)->checkBeginFunction(C); | 245 | 9.51k | } |
Unexecuted instantiation: CheckerDependencyHandling.cpp:void clang::ento::check::BeginFunction::_checkBeginFunction<(anonymous namespace)::Dependency>(void*, clang::ento::CheckerContext&) Unexecuted instantiation: CheckerDependencyHandling.cpp:void clang::ento::check::BeginFunction::_checkBeginFunction<(anonymous namespace)::DependendentChecker>(void*, clang::ento::CheckerContext&) Unexecuted instantiation: CheckerOptionHandling.cpp:void clang::ento::check::BeginFunction::_checkBeginFunction<(anonymous namespace)::MyChecker>(void*, clang::ento::CheckerContext&) |
246 | | |
247 | | public: |
248 | | template <typename CHECKER> |
249 | 1.68k | static void _register(CHECKER *checker, CheckerManager &mgr) { |
250 | 1.68k | mgr._registerForBeginFunction(CheckerManager::CheckBeginFunctionFunc( |
251 | 1.68k | checker, _checkBeginFunction<CHECKER>)); |
252 | 1.68k | } CheckObjCDealloc.cpp:void clang::ento::check::BeginFunction::_register<(anonymous namespace)::ObjCDeallocChecker>((anonymous namespace)::ObjCDeallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 249 | 50 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 250 | 50 | mgr._registerForBeginFunction(CheckerManager::CheckBeginFunctionFunc( | 251 | 50 | checker, _checkBeginFunction<CHECKER>)); | 252 | 50 | } |
CXXSelfAssignmentChecker.cpp:void clang::ento::check::BeginFunction::_register<(anonymous namespace)::CXXSelfAssignmentChecker>((anonymous namespace)::CXXSelfAssignmentChecker*, clang::ento::CheckerManager&) Line | Count | Source | 249 | 65 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 250 | 65 | mgr._registerForBeginFunction(CheckerManager::CheckBeginFunctionFunc( | 251 | 65 | checker, _checkBeginFunction<CHECKER>)); | 252 | 65 | } |
ErrnoModeling.cpp:void clang::ento::check::BeginFunction::_register<(anonymous namespace)::ErrnoModeling>((anonymous namespace)::ErrnoModeling*, clang::ento::CheckerManager&) Line | Count | Source | 249 | 56 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 250 | 56 | mgr._registerForBeginFunction(CheckerManager::CheckBeginFunctionFunc( | 251 | 56 | checker, _checkBeginFunction<CHECKER>)); | 252 | 56 | } |
InvalidPtrChecker.cpp:void clang::ento::check::BeginFunction::_register<(anonymous namespace)::InvalidPtrChecker>((anonymous namespace)::InvalidPtrChecker*, clang::ento::CheckerManager&) Line | Count | Source | 249 | 11 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 250 | 11 | mgr._registerForBeginFunction(CheckerManager::CheckBeginFunctionFunc( | 251 | 11 | checker, _checkBeginFunction<CHECKER>)); | 252 | 11 | } |
NonNullParamChecker.cpp:void clang::ento::check::BeginFunction::_register<(anonymous namespace)::NonNullParamChecker>((anonymous namespace)::NonNullParamChecker*, clang::ento::CheckerManager&) Line | Count | Source | 249 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 250 | 1.28k | mgr._registerForBeginFunction(CheckerManager::CheckBeginFunctionFunc( | 251 | 1.28k | checker, _checkBeginFunction<CHECKER>)); | 252 | 1.28k | } |
NullabilityChecker.cpp:void clang::ento::check::BeginFunction::_register<(anonymous namespace)::NullabilityChecker>((anonymous namespace)::NullabilityChecker*, clang::ento::CheckerManager&) Line | Count | Source | 249 | 52 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 250 | 52 | mgr._registerForBeginFunction(CheckerManager::CheckBeginFunctionFunc( | 251 | 52 | checker, _checkBeginFunction<CHECKER>)); | 252 | 52 | } |
void clang::ento::check::BeginFunction::_register<clang::ento::retaincountchecker::RetainCountChecker>(clang::ento::retaincountchecker::RetainCountChecker*, clang::ento::CheckerManager&) Line | Count | Source | 249 | 96 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 250 | 96 | mgr._registerForBeginFunction(CheckerManager::CheckBeginFunctionFunc( | 251 | 96 | checker, _checkBeginFunction<CHECKER>)); | 252 | 96 | } |
TraversalChecker.cpp:void clang::ento::check::BeginFunction::_register<(anonymous namespace)::TraversalDumper>((anonymous namespace)::TraversalDumper*, clang::ento::CheckerManager&) Line | Count | Source | 249 | 4 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 250 | 4 | mgr._registerForBeginFunction(CheckerManager::CheckBeginFunctionFunc( | 251 | 4 | checker, _checkBeginFunction<CHECKER>)); | 252 | 4 | } |
VirtualCallChecker.cpp:void clang::ento::check::BeginFunction::_register<(anonymous namespace)::VirtualCallChecker>((anonymous namespace)::VirtualCallChecker*, clang::ento::CheckerManager&) Line | Count | Source | 249 | 73 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 250 | 73 | mgr._registerForBeginFunction(CheckerManager::CheckBeginFunctionFunc( | 251 | 73 | checker, _checkBeginFunction<CHECKER>)); | 252 | 73 | } |
Unexecuted instantiation: CheckerDependencyHandling.cpp:void clang::ento::check::BeginFunction::_register<(anonymous namespace)::Dependency>((anonymous namespace)::Dependency*, clang::ento::CheckerManager&) Unexecuted instantiation: CheckerDependencyHandling.cpp:void clang::ento::check::BeginFunction::_register<(anonymous namespace)::DependendentChecker>((anonymous namespace)::DependendentChecker*, clang::ento::CheckerManager&) Unexecuted instantiation: CheckerOptionHandling.cpp:void clang::ento::check::BeginFunction::_register<(anonymous namespace)::MyChecker>((anonymous namespace)::MyChecker*, clang::ento::CheckerManager&) |
253 | | }; |
254 | | |
255 | | class EndFunction { |
256 | | template <typename CHECKER> |
257 | | static void _checkEndFunction(void *checker, const ReturnStmt *RS, |
258 | 107k | CheckerContext &C) { |
259 | 107k | ((const CHECKER *)checker)->checkEndFunction(RS, C); |
260 | 107k | } AnalysisOrderChecker.cpp:void clang::ento::check::EndFunction::_checkEndFunction<(anonymous namespace)::AnalysisOrderChecker>(void*, clang::ReturnStmt const*, clang::ento::CheckerContext&) Line | Count | Source | 258 | 43 | CheckerContext &C) { | 259 | 43 | ((const CHECKER *)checker)->checkEndFunction(RS, C); | 260 | 43 | } |
CheckObjCDealloc.cpp:void clang::ento::check::EndFunction::_checkEndFunction<(anonymous namespace)::ObjCDeallocChecker>(void*, clang::ReturnStmt const*, clang::ento::CheckerContext&) Line | Count | Source | 258 | 631 | CheckerContext &C) { | 259 | 631 | ((const CHECKER *)checker)->checkEndFunction(RS, C); | 260 | 631 | } |
MallocChecker.cpp:void clang::ento::check::EndFunction::_checkEndFunction<(anonymous namespace)::MallocChecker>(void*, clang::ReturnStmt const*, clang::ento::CheckerContext&) Line | Count | Source | 258 | 22.4k | CheckerContext &C) { | 259 | 22.4k | ((const CHECKER *)checker)->checkEndFunction(RS, C); | 260 | 22.4k | } |
MIGChecker.cpp:void clang::ento::check::EndFunction::_checkEndFunction<(anonymous namespace)::MIGChecker>(void*, clang::ReturnStmt const*, clang::ento::CheckerContext&) Line | Count | Source | 258 | 317 | CheckerContext &C) { | 259 | 317 | ((const CHECKER *)checker)->checkEndFunction(RS, C); | 260 | 317 | } |
void clang::ento::check::EndFunction::_checkEndFunction<clang::ento::retaincountchecker::RetainCountChecker>(void*, clang::ReturnStmt const*, clang::ento::CheckerContext&) Line | Count | Source | 258 | 2.15k | CheckerContext &C) { | 259 | 2.15k | ((const CHECKER *)checker)->checkEndFunction(RS, C); | 260 | 2.15k | } |
ReturnValueChecker.cpp:void clang::ento::check::EndFunction::_checkEndFunction<(anonymous namespace)::ReturnValueChecker>(void*, clang::ReturnStmt const*, clang::ento::CheckerContext&) Line | Count | Source | 258 | 125 | CheckerContext &C) { | 259 | 125 | ((const CHECKER *)checker)->checkEndFunction(RS, C); | 260 | 125 | } |
StackAddrEscapeChecker.cpp:void clang::ento::check::EndFunction::_checkEndFunction<(anonymous namespace)::StackAddrEscapeChecker>(void*, clang::ReturnStmt const*, clang::ento::CheckerContext&) Line | Count | Source | 258 | 63.3k | CheckerContext &C) { | 259 | 63.3k | ((const CHECKER *)checker)->checkEndFunction(RS, C); | 260 | 63.3k | } |
TestAfterDivZeroChecker.cpp:void clang::ento::check::EndFunction::_checkEndFunction<(anonymous namespace)::TestAfterDivZeroChecker>(void*, clang::ReturnStmt const*, clang::ento::CheckerContext&) Line | Count | Source | 258 | 1.76k | CheckerContext &C) { | 259 | 1.76k | ((const CHECKER *)checker)->checkEndFunction(RS, C); | 260 | 1.76k | } |
TraversalChecker.cpp:void clang::ento::check::EndFunction::_checkEndFunction<(anonymous namespace)::TraversalDumper>(void*, clang::ReturnStmt const*, clang::ento::CheckerContext&) Line | Count | Source | 258 | 9 | CheckerContext &C) { | 259 | 9 | ((const CHECKER *)checker)->checkEndFunction(RS, C); | 260 | 9 | } |
UninitializedObjectChecker.cpp:void clang::ento::check::EndFunction::_checkEndFunction<(anonymous namespace)::UninitializedObjectChecker>(void*, clang::ReturnStmt const*, clang::ento::CheckerContext&) Line | Count | Source | 258 | 865 | CheckerContext &C) { | 259 | 865 | ((const CHECKER *)checker)->checkEndFunction(RS, C); | 260 | 865 | } |
VirtualCallChecker.cpp:void clang::ento::check::EndFunction::_checkEndFunction<(anonymous namespace)::VirtualCallChecker>(void*, clang::ReturnStmt const*, clang::ento::CheckerContext&) Line | Count | Source | 258 | 15.7k | CheckerContext &C) { | 259 | 15.7k | ((const CHECKER *)checker)->checkEndFunction(RS, C); | 260 | 15.7k | } |
|
261 | | |
262 | | public: |
263 | | template <typename CHECKER> |
264 | 1.94k | static void _register(CHECKER *checker, CheckerManager &mgr) { |
265 | 1.94k | mgr._registerForEndFunction( |
266 | 1.94k | CheckerManager::CheckEndFunctionFunc(checker, _checkEndFunction<CHECKER>)); |
267 | 1.94k | } AnalysisOrderChecker.cpp:void clang::ento::check::EndFunction::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 264 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 265 | 12 | mgr._registerForEndFunction( | 266 | 12 | CheckerManager::CheckEndFunctionFunc(checker, _checkEndFunction<CHECKER>)); | 267 | 12 | } |
CheckObjCDealloc.cpp:void clang::ento::check::EndFunction::_register<(anonymous namespace)::ObjCDeallocChecker>((anonymous namespace)::ObjCDeallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 264 | 50 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 265 | 50 | mgr._registerForEndFunction( | 266 | 50 | CheckerManager::CheckEndFunctionFunc(checker, _checkEndFunction<CHECKER>)); | 267 | 50 | } |
MallocChecker.cpp:void clang::ento::check::EndFunction::_register<(anonymous namespace)::MallocChecker>((anonymous namespace)::MallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 264 | 245 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 265 | 245 | mgr._registerForEndFunction( | 266 | 245 | CheckerManager::CheckEndFunctionFunc(checker, _checkEndFunction<CHECKER>)); | 267 | 245 | } |
MIGChecker.cpp:void clang::ento::check::EndFunction::_register<(anonymous namespace)::MIGChecker>((anonymous namespace)::MIGChecker*, clang::ento::CheckerManager&) Line | Count | Source | 264 | 47 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 265 | 47 | mgr._registerForEndFunction( | 266 | 47 | CheckerManager::CheckEndFunctionFunc(checker, _checkEndFunction<CHECKER>)); | 267 | 47 | } |
void clang::ento::check::EndFunction::_register<clang::ento::retaincountchecker::RetainCountChecker>(clang::ento::retaincountchecker::RetainCountChecker*, clang::ento::CheckerManager&) Line | Count | Source | 264 | 96 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 265 | 96 | mgr._registerForEndFunction( | 266 | 96 | CheckerManager::CheckEndFunctionFunc(checker, _checkEndFunction<CHECKER>)); | 267 | 96 | } |
ReturnValueChecker.cpp:void clang::ento::check::EndFunction::_register<(anonymous namespace)::ReturnValueChecker>((anonymous namespace)::ReturnValueChecker*, clang::ento::CheckerManager&) Line | Count | Source | 264 | 42 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 265 | 42 | mgr._registerForEndFunction( | 266 | 42 | CheckerManager::CheckEndFunctionFunc(checker, _checkEndFunction<CHECKER>)); | 267 | 42 | } |
StackAddrEscapeChecker.cpp:void clang::ento::check::EndFunction::_register<(anonymous namespace)::StackAddrEscapeChecker>((anonymous namespace)::StackAddrEscapeChecker*, clang::ento::CheckerManager&) Line | Count | Source | 264 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 265 | 1.28k | mgr._registerForEndFunction( | 266 | 1.28k | CheckerManager::CheckEndFunctionFunc(checker, _checkEndFunction<CHECKER>)); | 267 | 1.28k | } |
TestAfterDivZeroChecker.cpp:void clang::ento::check::EndFunction::_register<(anonymous namespace)::TestAfterDivZeroChecker>((anonymous namespace)::TestAfterDivZeroChecker*, clang::ento::CheckerManager&) Line | Count | Source | 264 | 76 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 265 | 76 | mgr._registerForEndFunction( | 266 | 76 | CheckerManager::CheckEndFunctionFunc(checker, _checkEndFunction<CHECKER>)); | 267 | 76 | } |
TraversalChecker.cpp:void clang::ento::check::EndFunction::_register<(anonymous namespace)::TraversalDumper>((anonymous namespace)::TraversalDumper*, clang::ento::CheckerManager&) Line | Count | Source | 264 | 4 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 265 | 4 | mgr._registerForEndFunction( | 266 | 4 | CheckerManager::CheckEndFunctionFunc(checker, _checkEndFunction<CHECKER>)); | 267 | 4 | } |
UninitializedObjectChecker.cpp:void clang::ento::check::EndFunction::_register<(anonymous namespace)::UninitializedObjectChecker>((anonymous namespace)::UninitializedObjectChecker*, clang::ento::CheckerManager&) Line | Count | Source | 264 | 14 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 265 | 14 | mgr._registerForEndFunction( | 266 | 14 | CheckerManager::CheckEndFunctionFunc(checker, _checkEndFunction<CHECKER>)); | 267 | 14 | } |
VirtualCallChecker.cpp:void clang::ento::check::EndFunction::_register<(anonymous namespace)::VirtualCallChecker>((anonymous namespace)::VirtualCallChecker*, clang::ento::CheckerManager&) Line | Count | Source | 264 | 73 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 265 | 73 | mgr._registerForEndFunction( | 266 | 73 | CheckerManager::CheckEndFunctionFunc(checker, _checkEndFunction<CHECKER>)); | 267 | 73 | } |
|
268 | | }; |
269 | | |
270 | | class BranchCondition { |
271 | | template <typename CHECKER> |
272 | | static void _checkBranchCondition(void *checker, const Stmt *Condition, |
273 | 60.5k | CheckerContext & C) { |
274 | 60.5k | ((const CHECKER *)checker)->checkBranchCondition(Condition, C); |
275 | 60.5k | } TestAfterDivZeroChecker.cpp:void clang::ento::check::BranchCondition::_checkBranchCondition<(anonymous namespace)::TestAfterDivZeroChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 273 | 1.49k | CheckerContext & C) { | 274 | 1.49k | ((const CHECKER *)checker)->checkBranchCondition(Condition, C); | 275 | 1.49k | } |
TraversalChecker.cpp:void clang::ento::check::BranchCondition::_checkBranchCondition<(anonymous namespace)::TraversalDumper>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 273 | 45 | CheckerContext & C) { | 274 | 45 | ((const CHECKER *)checker)->checkBranchCondition(Condition, C); | 275 | 45 | } |
UndefBranchChecker.cpp:void clang::ento::check::BranchCondition::_checkBranchCondition<(anonymous namespace)::UndefBranchChecker>(void*, clang::Stmt const*, clang::ento::CheckerContext&) Line | Count | Source | 273 | 59.0k | CheckerContext & C) { | 274 | 59.0k | ((const CHECKER *)checker)->checkBranchCondition(Condition, C); | 275 | 59.0k | } |
|
276 | | |
277 | | public: |
278 | | template <typename CHECKER> |
279 | 1.36k | static void _register(CHECKER *checker, CheckerManager &mgr) { |
280 | 1.36k | mgr._registerForBranchCondition( |
281 | 1.36k | CheckerManager::CheckBranchConditionFunc(checker, |
282 | 1.36k | _checkBranchCondition<CHECKER>)); |
283 | 1.36k | } TestAfterDivZeroChecker.cpp:void clang::ento::check::BranchCondition::_register<(anonymous namespace)::TestAfterDivZeroChecker>((anonymous namespace)::TestAfterDivZeroChecker*, clang::ento::CheckerManager&) Line | Count | Source | 279 | 76 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 280 | 76 | mgr._registerForBranchCondition( | 281 | 76 | CheckerManager::CheckBranchConditionFunc(checker, | 282 | 76 | _checkBranchCondition<CHECKER>)); | 283 | 76 | } |
TraversalChecker.cpp:void clang::ento::check::BranchCondition::_register<(anonymous namespace)::TraversalDumper>((anonymous namespace)::TraversalDumper*, clang::ento::CheckerManager&) Line | Count | Source | 279 | 4 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 280 | 4 | mgr._registerForBranchCondition( | 281 | 4 | CheckerManager::CheckBranchConditionFunc(checker, | 282 | 4 | _checkBranchCondition<CHECKER>)); | 283 | 4 | } |
UndefBranchChecker.cpp:void clang::ento::check::BranchCondition::_register<(anonymous namespace)::UndefBranchChecker>((anonymous namespace)::UndefBranchChecker*, clang::ento::CheckerManager&) Line | Count | Source | 279 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 280 | 1.28k | mgr._registerForBranchCondition( | 281 | 1.28k | CheckerManager::CheckBranchConditionFunc(checker, | 282 | 1.28k | _checkBranchCondition<CHECKER>)); | 283 | 1.28k | } |
|
284 | | }; |
285 | | |
286 | | class NewAllocator { |
287 | | template <typename CHECKER> |
288 | | static void _checkNewAllocator(void *checker, const CXXAllocatorCall &Call, |
289 | 628 | CheckerContext &C) { |
290 | 628 | ((const CHECKER *)checker)->checkNewAllocator(Call, C); |
291 | 628 | } AnalysisOrderChecker.cpp:void clang::ento::check::NewAllocator::_checkNewAllocator<(anonymous namespace)::AnalysisOrderChecker>(void*, clang::ento::CXXAllocatorCall const&, clang::ento::CheckerContext&) Line | Count | Source | 289 | 9 | CheckerContext &C) { | 290 | 9 | ((const CHECKER *)checker)->checkNewAllocator(Call, C); | 291 | 9 | } |
MallocChecker.cpp:void clang::ento::check::NewAllocator::_checkNewAllocator<(anonymous namespace)::MallocChecker>(void*, clang::ento::CXXAllocatorCall const&, clang::ento::CheckerContext&) Line | Count | Source | 289 | 619 | CheckerContext &C) { | 290 | 619 | ((const CHECKER *)checker)->checkNewAllocator(Call, C); | 291 | 619 | } |
|
292 | | |
293 | | public: |
294 | | template <typename CHECKER> |
295 | 257 | static void _register(CHECKER *checker, CheckerManager &mgr) { |
296 | 257 | mgr._registerForNewAllocator( |
297 | 257 | CheckerManager::CheckNewAllocatorFunc(checker, |
298 | 257 | _checkNewAllocator<CHECKER>)); |
299 | 257 | } AnalysisOrderChecker.cpp:void clang::ento::check::NewAllocator::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 295 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 296 | 12 | mgr._registerForNewAllocator( | 297 | 12 | CheckerManager::CheckNewAllocatorFunc(checker, | 298 | 12 | _checkNewAllocator<CHECKER>)); | 299 | 12 | } |
MallocChecker.cpp:void clang::ento::check::NewAllocator::_register<(anonymous namespace)::MallocChecker>((anonymous namespace)::MallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 295 | 245 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 296 | 245 | mgr._registerForNewAllocator( | 297 | 245 | CheckerManager::CheckNewAllocatorFunc(checker, | 298 | 245 | _checkNewAllocator<CHECKER>)); | 299 | 245 | } |
|
300 | | }; |
301 | | |
302 | | class LiveSymbols { |
303 | | template <typename CHECKER> |
304 | | static void _checkLiveSymbols(void *checker, ProgramStateRef state, |
305 | 390k | SymbolReaper &SR) { |
306 | 390k | ((const CHECKER *)checker)->checkLiveSymbols(state, SR); |
307 | 390k | } AnalysisOrderChecker.cpp:void clang::ento::check::LiveSymbols::_checkLiveSymbols<(anonymous namespace)::AnalysisOrderChecker>(void*, llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>, clang::ento::SymbolReaper&) Line | Count | Source | 305 | 123 | SymbolReaper &SR) { | 306 | 123 | ((const CHECKER *)checker)->checkLiveSymbols(state, SR); | 307 | 123 | } |
CStringChecker.cpp:void clang::ento::check::LiveSymbols::_checkLiveSymbols<(anonymous namespace)::CStringChecker>(void*, llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>, clang::ento::SymbolReaper&) Line | Count | Source | 305 | 137k | SymbolReaper &SR) { | 306 | 137k | ((const CHECKER *)checker)->checkLiveSymbols(state, SR); | 307 | 137k | } |
ContainerModeling.cpp:void clang::ento::check::LiveSymbols::_checkLiveSymbols<(anonymous namespace)::ContainerModeling>(void*, llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>, clang::ento::SymbolReaper&) Line | Count | Source | 305 | 40.1k | SymbolReaper &SR) { | 306 | 40.1k | ((const CHECKER *)checker)->checkLiveSymbols(state, SR); | 307 | 40.1k | } |
ErrnoModeling.cpp:void clang::ento::check::LiveSymbols::_checkLiveSymbols<(anonymous namespace)::ErrnoModeling>(void*, llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>, clang::ento::SymbolReaper&) Line | Count | Source | 305 | 4.69k | SymbolReaper &SR) { | 306 | 4.69k | ((const CHECKER *)checker)->checkLiveSymbols(state, SR); | 307 | 4.69k | } |
IteratorModeling.cpp:void clang::ento::check::LiveSymbols::_checkLiveSymbols<(anonymous namespace)::IteratorModeling>(void*, llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>, clang::ento::SymbolReaper&) Line | Count | Source | 305 | 40.0k | SymbolReaper &SR) { | 306 | 40.0k | ((const CHECKER *)checker)->checkLiveSymbols(state, SR); | 307 | 40.0k | } |
SmartPtrModeling.cpp:void clang::ento::check::LiveSymbols::_checkLiveSymbols<(anonymous namespace)::SmartPtrModeling>(void*, llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>, clang::ento::SymbolReaper&) Line | Count | Source | 305 | 167k | SymbolReaper &SR) { | 306 | 167k | ((const CHECKER *)checker)->checkLiveSymbols(state, SR); | 307 | 167k | } |
|
308 | | |
309 | | public: |
310 | | template <typename CHECKER> |
311 | 459 | static void _register(CHECKER *checker, CheckerManager &mgr) { |
312 | 459 | mgr._registerForLiveSymbols( |
313 | 459 | CheckerManager::CheckLiveSymbolsFunc(checker, _checkLiveSymbols<CHECKER>)); |
314 | 459 | } AnalysisOrderChecker.cpp:void clang::ento::check::LiveSymbols::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 311 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 312 | 12 | mgr._registerForLiveSymbols( | 313 | 12 | CheckerManager::CheckLiveSymbolsFunc(checker, _checkLiveSymbols<CHECKER>)); | 314 | 12 | } |
CStringChecker.cpp:void clang::ento::check::LiveSymbols::_register<(anonymous namespace)::CStringChecker>((anonymous namespace)::CStringChecker*, clang::ento::CheckerManager&) Line | Count | Source | 311 | 274 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 312 | 274 | mgr._registerForLiveSymbols( | 313 | 274 | CheckerManager::CheckLiveSymbolsFunc(checker, _checkLiveSymbols<CHECKER>)); | 314 | 274 | } |
ContainerModeling.cpp:void clang::ento::check::LiveSymbols::_register<(anonymous namespace)::ContainerModeling>((anonymous namespace)::ContainerModeling*, clang::ento::CheckerManager&) Line | Count | Source | 311 | 21 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 312 | 21 | mgr._registerForLiveSymbols( | 313 | 21 | CheckerManager::CheckLiveSymbolsFunc(checker, _checkLiveSymbols<CHECKER>)); | 314 | 21 | } |
ErrnoModeling.cpp:void clang::ento::check::LiveSymbols::_register<(anonymous namespace)::ErrnoModeling>((anonymous namespace)::ErrnoModeling*, clang::ento::CheckerManager&) Line | Count | Source | 311 | 56 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 312 | 56 | mgr._registerForLiveSymbols( | 313 | 56 | CheckerManager::CheckLiveSymbolsFunc(checker, _checkLiveSymbols<CHECKER>)); | 314 | 56 | } |
IteratorModeling.cpp:void clang::ento::check::LiveSymbols::_register<(anonymous namespace)::IteratorModeling>((anonymous namespace)::IteratorModeling*, clang::ento::CheckerManager&) Line | Count | Source | 311 | 19 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 312 | 19 | mgr._registerForLiveSymbols( | 313 | 19 | CheckerManager::CheckLiveSymbolsFunc(checker, _checkLiveSymbols<CHECKER>)); | 314 | 19 | } |
SmartPtrModeling.cpp:void clang::ento::check::LiveSymbols::_register<(anonymous namespace)::SmartPtrModeling>((anonymous namespace)::SmartPtrModeling*, clang::ento::CheckerManager&) Line | Count | Source | 311 | 77 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 312 | 77 | mgr._registerForLiveSymbols( | 313 | 77 | CheckerManager::CheckLiveSymbolsFunc(checker, _checkLiveSymbols<CHECKER>)); | 314 | 77 | } |
|
315 | | }; |
316 | | |
317 | | class DeadSymbols { |
318 | | template <typename CHECKER> |
319 | | static void _checkDeadSymbols(void *checker, |
320 | 1.58M | SymbolReaper &SR, CheckerContext &C) { |
321 | 1.58M | ((const CHECKER *)checker)->checkDeadSymbols(SR, C); |
322 | 1.58M | } BasicObjCFoundationChecks.cpp:void clang::ento::check::DeadSymbols::_checkDeadSymbols<(anonymous namespace)::ObjCLoopChecker>(void*, clang::ento::SymbolReaper&, clang::ento::CheckerContext&) Line | Count | Source | 320 | 2.92k | SymbolReaper &SR, CheckerContext &C) { | 321 | 2.92k | ((const CHECKER *)checker)->checkDeadSymbols(SR, C); | 322 | 2.92k | } |
CStringChecker.cpp:void clang::ento::check::DeadSymbols::_checkDeadSymbols<(anonymous namespace)::CStringChecker>(void*, clang::ento::SymbolReaper&, clang::ento::CheckerContext&) Line | Count | Source | 320 | 137k | SymbolReaper &SR, CheckerContext &C) { | 321 | 137k | ((const CHECKER *)checker)->checkDeadSymbols(SR, C); | 322 | 137k | } |
CastValueChecker.cpp:void clang::ento::check::DeadSymbols::_checkDeadSymbols<(anonymous namespace)::CastValueChecker>(void*, clang::ento::SymbolReaper&, clang::ento::CheckerContext&) Line | Count | Source | 320 | 4.26k | SymbolReaper &SR, CheckerContext &C) { | 321 | 4.26k | ((const CHECKER *)checker)->checkDeadSymbols(SR, C); | 322 | 4.26k | } |
ContainerModeling.cpp:void clang::ento::check::DeadSymbols::_checkDeadSymbols<(anonymous namespace)::ContainerModeling>(void*, clang::ento::SymbolReaper&, clang::ento::CheckerContext&) Line | Count | Source | 320 | 40.1k | SymbolReaper &SR, CheckerContext &C) { | 321 | 40.1k | ((const CHECKER *)checker)->checkDeadSymbols(SR, C); | 322 | 40.1k | } |
DynamicTypePropagation.cpp:void clang::ento::check::DeadSymbols::_checkDeadSymbols<(anonymous namespace)::DynamicTypePropagation>(void*, clang::ento::SymbolReaper&, clang::ento::CheckerContext&) Line | Count | Source | 320 | 405k | SymbolReaper &SR, CheckerContext &C) { | 321 | 405k | ((const CHECKER *)checker)->checkDeadSymbols(SR, C); | 322 | 405k | } |
ExprInspectionChecker.cpp:void clang::ento::check::DeadSymbols::_checkDeadSymbols<(anonymous namespace)::ExprInspectionChecker>(void*, clang::ento::SymbolReaper&, clang::ento::CheckerContext&) Line | Count | Source | 320 | 238k | SymbolReaper &SR, CheckerContext &C) { | 321 | 238k | ((const CHECKER *)checker)->checkDeadSymbols(SR, C); | 322 | 238k | } |
FuchsiaHandleChecker.cpp:void clang::ento::check::DeadSymbols::_checkDeadSymbols<(anonymous namespace)::FuchsiaHandleChecker>(void*, clang::ento::SymbolReaper&, clang::ento::CheckerContext&) Line | Count | Source | 320 | 413 | SymbolReaper &SR, CheckerContext &C) { | 321 | 413 | ((const CHECKER *)checker)->checkDeadSymbols(SR, C); | 322 | 413 | } |
InnerPointerChecker.cpp:void clang::ento::check::DeadSymbols::_checkDeadSymbols<(anonymous namespace)::InnerPointerChecker>(void*, clang::ento::SymbolReaper&, clang::ento::CheckerContext&) Line | Count | Source | 320 | 97.0k | SymbolReaper &SR, CheckerContext &C) { | 321 | 97.0k | ((const CHECKER *)checker)->checkDeadSymbols(SR, C); | 322 | 97.0k | } |
IteratorModeling.cpp:void clang::ento::check::DeadSymbols::_checkDeadSymbols<(anonymous namespace)::IteratorModeling>(void*, clang::ento::SymbolReaper&, clang::ento::CheckerContext&) Line | Count | Source | 320 | 40.0k | SymbolReaper &SR, CheckerContext &C) { | 321 | 40.0k | ((const CHECKER *)checker)->checkDeadSymbols(SR, C); | 322 | 40.0k | } |
MacOSKeychainAPIChecker.cpp:void clang::ento::check::DeadSymbols::_checkDeadSymbols<(anonymous namespace)::MacOSKeychainAPIChecker>(void*, clang::ento::SymbolReaper&, clang::ento::CheckerContext&) Line | Count | Source | 320 | 1.85k | SymbolReaper &SR, CheckerContext &C) { | 321 | 1.85k | ((const CHECKER *)checker)->checkDeadSymbols(SR, C); | 322 | 1.85k | } |
MallocChecker.cpp:void clang::ento::check::DeadSymbols::_checkDeadSymbols<(anonymous namespace)::MallocChecker>(void*, clang::ento::SymbolReaper&, clang::ento::CheckerContext&) Line | Count | Source | 320 | 134k | SymbolReaper &SR, CheckerContext &C) { | 321 | 134k | ((const CHECKER *)checker)->checkDeadSymbols(SR, C); | 322 | 134k | } |
MoveChecker.cpp:void clang::ento::check::DeadSymbols::_checkDeadSymbols<(anonymous namespace)::MoveChecker>(void*, clang::ento::SymbolReaper&, clang::ento::CheckerContext&) Line | Count | Source | 320 | 167k | SymbolReaper &SR, CheckerContext &C) { | 321 | 167k | ((const CHECKER *)checker)->checkDeadSymbols(SR, C); | 322 | 167k | } |
void clang::ento::check::DeadSymbols::_checkDeadSymbols<clang::ento::mpi::MPIChecker>(void*, clang::ento::SymbolReaper&, clang::ento::CheckerContext&) Line | Count | Source | 320 | 326 | SymbolReaper &SR, CheckerContext &C) { | 321 | 326 | ((const CHECKER *)checker)->checkDeadSymbols(SR, C); | 322 | 326 | } |
NullabilityChecker.cpp:void clang::ento::check::DeadSymbols::_checkDeadSymbols<(anonymous namespace)::NullabilityChecker>(void*, clang::ento::SymbolReaper&, clang::ento::CheckerContext&) Line | Count | Source | 320 | 3.87k | SymbolReaper &SR, CheckerContext &C) { | 321 | 3.87k | ((const CHECKER *)checker)->checkDeadSymbols(SR, C); | 322 | 3.87k | } |
PointerArithChecker.cpp:void clang::ento::check::DeadSymbols::_checkDeadSymbols<(anonymous namespace)::PointerArithChecker>(void*, clang::ento::SymbolReaper&, clang::ento::CheckerContext&) Line | Count | Source | 320 | 110k | SymbolReaper &SR, CheckerContext &C) { | 321 | 110k | ((const CHECKER *)checker)->checkDeadSymbols(SR, C); | 322 | 110k | } |
PthreadLockChecker.cpp:void clang::ento::check::DeadSymbols::_checkDeadSymbols<(anonymous namespace)::PthreadLockChecker>(void*, clang::ento::SymbolReaper&, clang::ento::CheckerContext&) Line | Count | Source | 320 | 10.9k | SymbolReaper &SR, CheckerContext &C) { | 321 | 10.9k | ((const CHECKER *)checker)->checkDeadSymbols(SR, C); | 322 | 10.9k | } |
void clang::ento::check::DeadSymbols::_checkDeadSymbols<clang::ento::retaincountchecker::RetainCountChecker>(void*, clang::ento::SymbolReaper&, clang::ento::CheckerContext&) Line | Count | Source | 320 | 13.3k | SymbolReaper &SR, CheckerContext &C) { | 321 | 13.3k | ((const CHECKER *)checker)->checkDeadSymbols(SR, C); | 322 | 13.3k | } |
SimpleStreamChecker.cpp:void clang::ento::check::DeadSymbols::_checkDeadSymbols<(anonymous namespace)::SimpleStreamChecker>(void*, clang::ento::SymbolReaper&, clang::ento::CheckerContext&) Line | Count | Source | 320 | 172 | SymbolReaper &SR, CheckerContext &C) { | 321 | 172 | ((const CHECKER *)checker)->checkDeadSymbols(SR, C); | 322 | 172 | } |
SmartPtrModeling.cpp:void clang::ento::check::DeadSymbols::_checkDeadSymbols<(anonymous namespace)::SmartPtrModeling>(void*, clang::ento::SymbolReaper&, clang::ento::CheckerContext&) Line | Count | Source | 320 | 167k | SymbolReaper &SR, CheckerContext &C) { | 321 | 167k | ((const CHECKER *)checker)->checkDeadSymbols(SR, C); | 322 | 167k | } |
StreamChecker.cpp:void clang::ento::check::DeadSymbols::_checkDeadSymbols<(anonymous namespace)::StreamChecker>(void*, clang::ento::SymbolReaper&, clang::ento::CheckerContext&) Line | Count | Source | 320 | 2.33k | SymbolReaper &SR, CheckerContext &C) { | 321 | 2.33k | ((const CHECKER *)checker)->checkDeadSymbols(SR, C); | 322 | 2.33k | } |
TrustNonnullChecker.cpp:void clang::ento::check::DeadSymbols::_checkDeadSymbols<(anonymous namespace)::TrustNonnullChecker>(void*, clang::ento::SymbolReaper&, clang::ento::CheckerContext&) Line | Count | Source | 320 | 2.76k | SymbolReaper &SR, CheckerContext &C) { | 321 | 2.76k | ((const CHECKER *)checker)->checkDeadSymbols(SR, C); | 322 | 2.76k | } |
UninitializedObjectChecker.cpp:void clang::ento::check::DeadSymbols::_checkDeadSymbols<(anonymous namespace)::UninitializedObjectChecker>(void*, clang::ento::SymbolReaper&, clang::ento::CheckerContext&) Line | Count | Source | 320 | 2.51k | SymbolReaper &SR, CheckerContext &C) { | 321 | 2.51k | ((const CHECKER *)checker)->checkDeadSymbols(SR, C); | 322 | 2.51k | } |
ValistChecker.cpp:void clang::ento::check::DeadSymbols::_checkDeadSymbols<(anonymous namespace)::ValistChecker>(void*, clang::ento::SymbolReaper&, clang::ento::CheckerContext&) Line | Count | Source | 320 | 593 | SymbolReaper &SR, CheckerContext &C) { | 321 | 593 | ((const CHECKER *)checker)->checkDeadSymbols(SR, C); | 322 | 593 | } |
|
323 | | |
324 | | public: |
325 | | template <typename CHECKER> |
326 | 3.04k | static void _register(CHECKER *checker, CheckerManager &mgr) { |
327 | 3.04k | mgr._registerForDeadSymbols( |
328 | 3.04k | CheckerManager::CheckDeadSymbolsFunc(checker, _checkDeadSymbols<CHECKER>)); |
329 | 3.04k | } BasicObjCFoundationChecks.cpp:void clang::ento::check::DeadSymbols::_register<(anonymous namespace)::ObjCLoopChecker>((anonymous namespace)::ObjCLoopChecker*, clang::ento::CheckerManager&) Line | Count | Source | 326 | 48 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 327 | 48 | mgr._registerForDeadSymbols( | 328 | 48 | CheckerManager::CheckDeadSymbolsFunc(checker, _checkDeadSymbols<CHECKER>)); | 329 | 48 | } |
CStringChecker.cpp:void clang::ento::check::DeadSymbols::_register<(anonymous namespace)::CStringChecker>((anonymous namespace)::CStringChecker*, clang::ento::CheckerManager&) Line | Count | Source | 326 | 274 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 327 | 274 | mgr._registerForDeadSymbols( | 328 | 274 | CheckerManager::CheckDeadSymbolsFunc(checker, _checkDeadSymbols<CHECKER>)); | 329 | 274 | } |
CastValueChecker.cpp:void clang::ento::check::DeadSymbols::_register<(anonymous namespace)::CastValueChecker>((anonymous namespace)::CastValueChecker*, clang::ento::CheckerManager&) Line | Count | Source | 326 | 52 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 327 | 52 | mgr._registerForDeadSymbols( | 328 | 52 | CheckerManager::CheckDeadSymbolsFunc(checker, _checkDeadSymbols<CHECKER>)); | 329 | 52 | } |
ContainerModeling.cpp:void clang::ento::check::DeadSymbols::_register<(anonymous namespace)::ContainerModeling>((anonymous namespace)::ContainerModeling*, clang::ento::CheckerManager&) Line | Count | Source | 326 | 21 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 327 | 21 | mgr._registerForDeadSymbols( | 328 | 21 | CheckerManager::CheckDeadSymbolsFunc(checker, _checkDeadSymbols<CHECKER>)); | 329 | 21 | } |
DynamicTypePropagation.cpp:void clang::ento::check::DeadSymbols::_register<(anonymous namespace)::DynamicTypePropagation>((anonymous namespace)::DynamicTypePropagation*, clang::ento::CheckerManager&) Line | Count | Source | 326 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 327 | 1.28k | mgr._registerForDeadSymbols( | 328 | 1.28k | CheckerManager::CheckDeadSymbolsFunc(checker, _checkDeadSymbols<CHECKER>)); | 329 | 1.28k | } |
ExprInspectionChecker.cpp:void clang::ento::check::DeadSymbols::_register<(anonymous namespace)::ExprInspectionChecker>((anonymous namespace)::ExprInspectionChecker*, clang::ento::CheckerManager&) Line | Count | Source | 326 | 444 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 327 | 444 | mgr._registerForDeadSymbols( | 328 | 444 | CheckerManager::CheckDeadSymbolsFunc(checker, _checkDeadSymbols<CHECKER>)); | 329 | 444 | } |
FuchsiaHandleChecker.cpp:void clang::ento::check::DeadSymbols::_register<(anonymous namespace)::FuchsiaHandleChecker>((anonymous namespace)::FuchsiaHandleChecker*, clang::ento::CheckerManager&) Line | Count | Source | 326 | 1 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 327 | 1 | mgr._registerForDeadSymbols( | 328 | 1 | CheckerManager::CheckDeadSymbolsFunc(checker, _checkDeadSymbols<CHECKER>)); | 329 | 1 | } |
InnerPointerChecker.cpp:void clang::ento::check::DeadSymbols::_register<(anonymous namespace)::InnerPointerChecker>((anonymous namespace)::InnerPointerChecker*, clang::ento::CheckerManager&) Line | Count | Source | 326 | 66 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 327 | 66 | mgr._registerForDeadSymbols( | 328 | 66 | CheckerManager::CheckDeadSymbolsFunc(checker, _checkDeadSymbols<CHECKER>)); | 329 | 66 | } |
IteratorModeling.cpp:void clang::ento::check::DeadSymbols::_register<(anonymous namespace)::IteratorModeling>((anonymous namespace)::IteratorModeling*, clang::ento::CheckerManager&) Line | Count | Source | 326 | 19 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 327 | 19 | mgr._registerForDeadSymbols( | 328 | 19 | CheckerManager::CheckDeadSymbolsFunc(checker, _checkDeadSymbols<CHECKER>)); | 329 | 19 | } |
MacOSKeychainAPIChecker.cpp:void clang::ento::check::DeadSymbols::_register<(anonymous namespace)::MacOSKeychainAPIChecker>((anonymous namespace)::MacOSKeychainAPIChecker*, clang::ento::CheckerManager&) Line | Count | Source | 326 | 48 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 327 | 48 | mgr._registerForDeadSymbols( | 328 | 48 | CheckerManager::CheckDeadSymbolsFunc(checker, _checkDeadSymbols<CHECKER>)); | 329 | 48 | } |
MallocChecker.cpp:void clang::ento::check::DeadSymbols::_register<(anonymous namespace)::MallocChecker>((anonymous namespace)::MallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 326 | 245 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 327 | 245 | mgr._registerForDeadSymbols( | 328 | 245 | CheckerManager::CheckDeadSymbolsFunc(checker, _checkDeadSymbols<CHECKER>)); | 329 | 245 | } |
MoveChecker.cpp:void clang::ento::check::DeadSymbols::_register<(anonymous namespace)::MoveChecker>((anonymous namespace)::MoveChecker*, clang::ento::CheckerManager&) Line | Count | Source | 326 | 78 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 327 | 78 | mgr._registerForDeadSymbols( | 328 | 78 | CheckerManager::CheckDeadSymbolsFunc(checker, _checkDeadSymbols<CHECKER>)); | 329 | 78 | } |
void clang::ento::check::DeadSymbols::_register<clang::ento::mpi::MPIChecker>(clang::ento::mpi::MPIChecker*, clang::ento::CheckerManager&) Line | Count | Source | 326 | 3 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 327 | 3 | mgr._registerForDeadSymbols( | 328 | 3 | CheckerManager::CheckDeadSymbolsFunc(checker, _checkDeadSymbols<CHECKER>)); | 329 | 3 | } |
NullabilityChecker.cpp:void clang::ento::check::DeadSymbols::_register<(anonymous namespace)::NullabilityChecker>((anonymous namespace)::NullabilityChecker*, clang::ento::CheckerManager&) Line | Count | Source | 326 | 52 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 327 | 52 | mgr._registerForDeadSymbols( | 328 | 52 | CheckerManager::CheckDeadSymbolsFunc(checker, _checkDeadSymbols<CHECKER>)); | 329 | 52 | } |
PointerArithChecker.cpp:void clang::ento::check::DeadSymbols::_register<(anonymous namespace)::PointerArithChecker>((anonymous namespace)::PointerArithChecker*, clang::ento::CheckerManager&) Line | Count | Source | 326 | 79 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 327 | 79 | mgr._registerForDeadSymbols( | 328 | 79 | CheckerManager::CheckDeadSymbolsFunc(checker, _checkDeadSymbols<CHECKER>)); | 329 | 79 | } |
PthreadLockChecker.cpp:void clang::ento::check::DeadSymbols::_register<(anonymous namespace)::PthreadLockChecker>((anonymous namespace)::PthreadLockChecker*, clang::ento::CheckerManager&) Line | Count | Source | 326 | 81 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 327 | 81 | mgr._registerForDeadSymbols( | 328 | 81 | CheckerManager::CheckDeadSymbolsFunc(checker, _checkDeadSymbols<CHECKER>)); | 329 | 81 | } |
void clang::ento::check::DeadSymbols::_register<clang::ento::retaincountchecker::RetainCountChecker>(clang::ento::retaincountchecker::RetainCountChecker*, clang::ento::CheckerManager&) Line | Count | Source | 326 | 96 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 327 | 96 | mgr._registerForDeadSymbols( | 328 | 96 | CheckerManager::CheckDeadSymbolsFunc(checker, _checkDeadSymbols<CHECKER>)); | 329 | 96 | } |
SimpleStreamChecker.cpp:void clang::ento::check::DeadSymbols::_register<(anonymous namespace)::SimpleStreamChecker>((anonymous namespace)::SimpleStreamChecker*, clang::ento::CheckerManager&) Line | Count | Source | 326 | 4 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 327 | 4 | mgr._registerForDeadSymbols( | 328 | 4 | CheckerManager::CheckDeadSymbolsFunc(checker, _checkDeadSymbols<CHECKER>)); | 329 | 4 | } |
SmartPtrModeling.cpp:void clang::ento::check::DeadSymbols::_register<(anonymous namespace)::SmartPtrModeling>((anonymous namespace)::SmartPtrModeling*, clang::ento::CheckerManager&) Line | Count | Source | 326 | 77 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 327 | 77 | mgr._registerForDeadSymbols( | 328 | 77 | CheckerManager::CheckDeadSymbolsFunc(checker, _checkDeadSymbols<CHECKER>)); | 329 | 77 | } |
StreamChecker.cpp:void clang::ento::check::DeadSymbols::_register<(anonymous namespace)::StreamChecker>((anonymous namespace)::StreamChecker*, clang::ento::CheckerManager&) Line | Count | Source | 326 | 17 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 327 | 17 | mgr._registerForDeadSymbols( | 328 | 17 | CheckerManager::CheckDeadSymbolsFunc(checker, _checkDeadSymbols<CHECKER>)); | 329 | 17 | } |
TrustNonnullChecker.cpp:void clang::ento::check::DeadSymbols::_register<(anonymous namespace)::TrustNonnullChecker>((anonymous namespace)::TrustNonnullChecker*, clang::ento::CheckerManager&) Line | Count | Source | 326 | 41 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 327 | 41 | mgr._registerForDeadSymbols( | 328 | 41 | CheckerManager::CheckDeadSymbolsFunc(checker, _checkDeadSymbols<CHECKER>)); | 329 | 41 | } |
UninitializedObjectChecker.cpp:void clang::ento::check::DeadSymbols::_register<(anonymous namespace)::UninitializedObjectChecker>((anonymous namespace)::UninitializedObjectChecker*, clang::ento::CheckerManager&) Line | Count | Source | 326 | 14 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 327 | 14 | mgr._registerForDeadSymbols( | 328 | 14 | CheckerManager::CheckDeadSymbolsFunc(checker, _checkDeadSymbols<CHECKER>)); | 329 | 14 | } |
ValistChecker.cpp:void clang::ento::check::DeadSymbols::_register<(anonymous namespace)::ValistChecker>((anonymous namespace)::ValistChecker*, clang::ento::CheckerManager&) Line | Count | Source | 326 | 7 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 327 | 7 | mgr._registerForDeadSymbols( | 328 | 7 | CheckerManager::CheckDeadSymbolsFunc(checker, _checkDeadSymbols<CHECKER>)); | 329 | 7 | } |
|
330 | | }; |
331 | | |
332 | | class RegionChanges { |
333 | | template <typename CHECKER> |
334 | | static ProgramStateRef |
335 | | _checkRegionChanges(void *checker, |
336 | | ProgramStateRef state, |
337 | | const InvalidatedSymbols *invalidated, |
338 | | ArrayRef<const MemRegion *> Explicits, |
339 | | ArrayRef<const MemRegion *> Regions, |
340 | | const LocationContext *LCtx, |
341 | 162k | const CallEvent *Call) { |
342 | 162k | return ((const CHECKER *) checker)->checkRegionChanges(state, invalidated, |
343 | 162k | Explicits, Regions, |
344 | 162k | LCtx, Call); |
345 | 162k | } AnalysisOrderChecker.cpp:llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const> clang::ento::check::RegionChanges::_checkRegionChanges<(anonymous namespace)::AnalysisOrderChecker>(void*, llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>, llvm::DenseSet<clang::ento::SymExpr const*, llvm::DenseMapInfo<clang::ento::SymExpr const*, void> > const*, llvm::ArrayRef<clang::ento::MemRegion const*>, llvm::ArrayRef<clang::ento::MemRegion const*>, clang::LocationContext const*, clang::ento::CallEvent const*) Line | Count | Source | 341 | 76 | const CallEvent *Call) { | 342 | 76 | return ((const CHECKER *) checker)->checkRegionChanges(state, invalidated, | 343 | 76 | Explicits, Regions, | 344 | 76 | LCtx, Call); | 345 | 76 | } |
CStringChecker.cpp:llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const> clang::ento::check::RegionChanges::_checkRegionChanges<(anonymous namespace)::CStringChecker>(void*, llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>, llvm::DenseSet<clang::ento::SymExpr const*, llvm::DenseMapInfo<clang::ento::SymExpr const*, void> > const*, llvm::ArrayRef<clang::ento::MemRegion const*>, llvm::ArrayRef<clang::ento::MemRegion const*>, clang::LocationContext const*, clang::ento::CallEvent const*) Line | Count | Source | 341 | 56.0k | const CallEvent *Call) { | 342 | 56.0k | return ((const CHECKER *) checker)->checkRegionChanges(state, invalidated, | 343 | 56.0k | Explicits, Regions, | 344 | 56.0k | LCtx, Call); | 345 | 56.0k | } |
ErrnoChecker.cpp:llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const> clang::ento::check::RegionChanges::_checkRegionChanges<(anonymous namespace)::ErrnoChecker>(void*, llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>, llvm::DenseSet<clang::ento::SymExpr const*, llvm::DenseMapInfo<clang::ento::SymExpr const*, void> > const*, llvm::ArrayRef<clang::ento::MemRegion const*>, llvm::ArrayRef<clang::ento::MemRegion const*>, clang::LocationContext const*, clang::ento::CallEvent const*) Line | Count | Source | 341 | 1.18k | const CallEvent *Call) { | 342 | 1.18k | return ((const CHECKER *) checker)->checkRegionChanges(state, invalidated, | 343 | 1.18k | Explicits, Regions, | 344 | 1.18k | LCtx, Call); | 345 | 1.18k | } |
MoveChecker.cpp:llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const> clang::ento::check::RegionChanges::_checkRegionChanges<(anonymous namespace)::MoveChecker>(void*, llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>, llvm::DenseSet<clang::ento::SymExpr const*, llvm::DenseMapInfo<clang::ento::SymExpr const*, void> > const*, llvm::ArrayRef<clang::ento::MemRegion const*>, llvm::ArrayRef<clang::ento::MemRegion const*>, clang::LocationContext const*, clang::ento::CallEvent const*) Line | Count | Source | 341 | 47.5k | const CallEvent *Call) { | 342 | 47.5k | return ((const CHECKER *) checker)->checkRegionChanges(state, invalidated, | 343 | 47.5k | Explicits, Regions, | 344 | 47.5k | LCtx, Call); | 345 | 47.5k | } |
PthreadLockChecker.cpp:llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const> clang::ento::check::RegionChanges::_checkRegionChanges<(anonymous namespace)::PthreadLockChecker>(void*, llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>, llvm::DenseSet<clang::ento::SymExpr const*, llvm::DenseMapInfo<clang::ento::SymExpr const*, void> > const*, llvm::ArrayRef<clang::ento::MemRegion const*>, llvm::ArrayRef<clang::ento::MemRegion const*>, clang::LocationContext const*, clang::ento::CallEvent const*) Line | Count | Source | 341 | 4.43k | const CallEvent *Call) { | 342 | 4.43k | return ((const CHECKER *) checker)->checkRegionChanges(state, invalidated, | 343 | 4.43k | Explicits, Regions, | 344 | 4.43k | LCtx, Call); | 345 | 4.43k | } |
llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const> clang::ento::check::RegionChanges::_checkRegionChanges<clang::ento::retaincountchecker::RetainCountChecker>(void*, llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>, llvm::DenseSet<clang::ento::SymExpr const*, llvm::DenseMapInfo<clang::ento::SymExpr const*, void> > const*, llvm::ArrayRef<clang::ento::MemRegion const*>, llvm::ArrayRef<clang::ento::MemRegion const*>, clang::LocationContext const*, clang::ento::CallEvent const*) Line | Count | Source | 341 | 6.09k | const CallEvent *Call) { | 342 | 6.09k | return ((const CHECKER *) checker)->checkRegionChanges(state, invalidated, | 343 | 6.09k | Explicits, Regions, | 344 | 6.09k | LCtx, Call); | 345 | 6.09k | } |
SmartPtrModeling.cpp:llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const> clang::ento::check::RegionChanges::_checkRegionChanges<(anonymous namespace)::SmartPtrModeling>(void*, llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>, llvm::DenseSet<clang::ento::SymExpr const*, llvm::DenseMapInfo<clang::ento::SymExpr const*, void> > const*, llvm::ArrayRef<clang::ento::MemRegion const*>, llvm::ArrayRef<clang::ento::MemRegion const*>, clang::LocationContext const*, clang::ento::CallEvent const*) Line | Count | Source | 341 | 47.5k | const CallEvent *Call) { | 342 | 47.5k | return ((const CHECKER *) checker)->checkRegionChanges(state, invalidated, | 343 | 47.5k | Explicits, Regions, | 344 | 47.5k | LCtx, Call); | 345 | 47.5k | } |
|
346 | | |
347 | | public: |
348 | | template <typename CHECKER> |
349 | 633 | static void _register(CHECKER *checker, CheckerManager &mgr) { |
350 | 633 | mgr._registerForRegionChanges( |
351 | 633 | CheckerManager::CheckRegionChangesFunc(checker, |
352 | 633 | _checkRegionChanges<CHECKER>)); |
353 | 633 | } AnalysisOrderChecker.cpp:void clang::ento::check::RegionChanges::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 349 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 350 | 12 | mgr._registerForRegionChanges( | 351 | 12 | CheckerManager::CheckRegionChangesFunc(checker, | 352 | 12 | _checkRegionChanges<CHECKER>)); | 353 | 12 | } |
CStringChecker.cpp:void clang::ento::check::RegionChanges::_register<(anonymous namespace)::CStringChecker>((anonymous namespace)::CStringChecker*, clang::ento::CheckerManager&) Line | Count | Source | 349 | 274 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 350 | 274 | mgr._registerForRegionChanges( | 351 | 274 | CheckerManager::CheckRegionChangesFunc(checker, | 352 | 274 | _checkRegionChanges<CHECKER>)); | 353 | 274 | } |
ErrnoChecker.cpp:void clang::ento::check::RegionChanges::_register<(anonymous namespace)::ErrnoChecker>((anonymous namespace)::ErrnoChecker*, clang::ento::CheckerManager&) Line | Count | Source | 349 | 15 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 350 | 15 | mgr._registerForRegionChanges( | 351 | 15 | CheckerManager::CheckRegionChangesFunc(checker, | 352 | 15 | _checkRegionChanges<CHECKER>)); | 353 | 15 | } |
MoveChecker.cpp:void clang::ento::check::RegionChanges::_register<(anonymous namespace)::MoveChecker>((anonymous namespace)::MoveChecker*, clang::ento::CheckerManager&) Line | Count | Source | 349 | 78 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 350 | 78 | mgr._registerForRegionChanges( | 351 | 78 | CheckerManager::CheckRegionChangesFunc(checker, | 352 | 78 | _checkRegionChanges<CHECKER>)); | 353 | 78 | } |
PthreadLockChecker.cpp:void clang::ento::check::RegionChanges::_register<(anonymous namespace)::PthreadLockChecker>((anonymous namespace)::PthreadLockChecker*, clang::ento::CheckerManager&) Line | Count | Source | 349 | 81 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 350 | 81 | mgr._registerForRegionChanges( | 351 | 81 | CheckerManager::CheckRegionChangesFunc(checker, | 352 | 81 | _checkRegionChanges<CHECKER>)); | 353 | 81 | } |
void clang::ento::check::RegionChanges::_register<clang::ento::retaincountchecker::RetainCountChecker>(clang::ento::retaincountchecker::RetainCountChecker*, clang::ento::CheckerManager&) Line | Count | Source | 349 | 96 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 350 | 96 | mgr._registerForRegionChanges( | 351 | 96 | CheckerManager::CheckRegionChangesFunc(checker, | 352 | 96 | _checkRegionChanges<CHECKER>)); | 353 | 96 | } |
SmartPtrModeling.cpp:void clang::ento::check::RegionChanges::_register<(anonymous namespace)::SmartPtrModeling>((anonymous namespace)::SmartPtrModeling*, clang::ento::CheckerManager&) Line | Count | Source | 349 | 77 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 350 | 77 | mgr._registerForRegionChanges( | 351 | 77 | CheckerManager::CheckRegionChangesFunc(checker, | 352 | 77 | _checkRegionChanges<CHECKER>)); | 353 | 77 | } |
|
354 | | }; |
355 | | |
356 | | class PointerEscape { |
357 | | template <typename CHECKER> |
358 | | static ProgramStateRef |
359 | | _checkPointerEscape(void *Checker, |
360 | | ProgramStateRef State, |
361 | | const InvalidatedSymbols &Escaped, |
362 | | const CallEvent *Call, |
363 | | PointerEscapeKind Kind, |
364 | 18.9k | RegionAndSymbolInvalidationTraits *ETraits) { |
365 | | |
366 | 18.9k | if (!ETraits) |
367 | 2.68k | return ((const CHECKER *)Checker)->checkPointerEscape(State, |
368 | 2.68k | Escaped, |
369 | 2.68k | Call, |
370 | 2.68k | Kind); |
371 | | |
372 | 16.2k | InvalidatedSymbols RegularEscape; |
373 | 16.2k | for (SymbolRef Sym : Escaped) |
374 | 35.4k | if (!ETraits->hasTrait( |
375 | 35.4k | Sym, RegionAndSymbolInvalidationTraits::TK_PreserveContents) && |
376 | 35.4k | !ETraits->hasTrait( |
377 | 33.8k | Sym, RegionAndSymbolInvalidationTraits::TK_SuppressEscape)) |
378 | 33.8k | RegularEscape.insert(Sym); |
379 | | |
380 | 16.2k | if (RegularEscape.empty()) |
381 | 1.55k | return State; |
382 | | |
383 | 14.6k | return ((const CHECKER *)Checker)->checkPointerEscape(State, |
384 | 14.6k | RegularEscape, |
385 | 14.6k | Call, |
386 | 14.6k | Kind); |
387 | 16.2k | } AnalysisOrderChecker.cpp:llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const> clang::ento::check::PointerEscape::_checkPointerEscape<(anonymous namespace)::AnalysisOrderChecker>(void*, llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>, llvm::DenseSet<clang::ento::SymExpr const*, llvm::DenseMapInfo<clang::ento::SymExpr const*, void> > const&, clang::ento::CallEvent const*, clang::ento::PointerEscapeKind, clang::ento::RegionAndSymbolInvalidationTraits*) Line | Count | Source | 364 | 46 | RegionAndSymbolInvalidationTraits *ETraits) { | 365 | | | 366 | 46 | if (!ETraits) | 367 | 1 | return ((const CHECKER *)Checker)->checkPointerEscape(State, | 368 | 1 | Escaped, | 369 | 1 | Call, | 370 | 1 | Kind); | 371 | | | 372 | 45 | InvalidatedSymbols RegularEscape; | 373 | 45 | for (SymbolRef Sym : Escaped) | 374 | 58 | if (!ETraits->hasTrait( | 375 | 58 | Sym, RegionAndSymbolInvalidationTraits::TK_PreserveContents) && | 376 | 58 | !ETraits->hasTrait( | 377 | 58 | Sym, RegionAndSymbolInvalidationTraits::TK_SuppressEscape)) | 378 | 57 | RegularEscape.insert(Sym); | 379 | | | 380 | 45 | if (RegularEscape.empty()) | 381 | 1 | return State; | 382 | | | 383 | 44 | return ((const CHECKER *)Checker)->checkPointerEscape(State, | 384 | 44 | RegularEscape, | 385 | 44 | Call, | 386 | 44 | Kind); | 387 | 45 | } |
BasicObjCFoundationChecks.cpp:llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const> clang::ento::check::PointerEscape::_checkPointerEscape<(anonymous namespace)::ObjCLoopChecker>(void*, llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>, llvm::DenseSet<clang::ento::SymExpr const*, llvm::DenseMapInfo<clang::ento::SymExpr const*, void> > const&, clang::ento::CallEvent const*, clang::ento::PointerEscapeKind, clang::ento::RegionAndSymbolInvalidationTraits*) Line | Count | Source | 364 | 431 | RegionAndSymbolInvalidationTraits *ETraits) { | 365 | | | 366 | 431 | if (!ETraits) | 367 | 94 | return ((const CHECKER *)Checker)->checkPointerEscape(State, | 368 | 94 | Escaped, | 369 | 94 | Call, | 370 | 94 | Kind); | 371 | | | 372 | 337 | InvalidatedSymbols RegularEscape; | 373 | 337 | for (SymbolRef Sym : Escaped) | 374 | 573 | if (!ETraits->hasTrait( | 375 | 573 | Sym, RegionAndSymbolInvalidationTraits::TK_PreserveContents) && | 376 | 573 | !ETraits->hasTrait( | 377 | 552 | Sym, RegionAndSymbolInvalidationTraits::TK_SuppressEscape)) | 378 | 552 | RegularEscape.insert(Sym); | 379 | | | 380 | 337 | if (RegularEscape.empty()) | 381 | 21 | return State; | 382 | | | 383 | 316 | return ((const CHECKER *)Checker)->checkPointerEscape(State, | 384 | 316 | RegularEscape, | 385 | 316 | Call, | 386 | 316 | Kind); | 387 | 337 | } |
CheckObjCDealloc.cpp:llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const> clang::ento::check::PointerEscape::_checkPointerEscape<(anonymous namespace)::ObjCDeallocChecker>(void*, llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>, llvm::DenseSet<clang::ento::SymExpr const*, llvm::DenseMapInfo<clang::ento::SymExpr const*, void> > const&, clang::ento::CallEvent const*, clang::ento::PointerEscapeKind, clang::ento::RegionAndSymbolInvalidationTraits*) Line | Count | Source | 364 | 950 | RegionAndSymbolInvalidationTraits *ETraits) { | 365 | | | 366 | 950 | if (!ETraits) | 367 | 86 | return ((const CHECKER *)Checker)->checkPointerEscape(State, | 368 | 86 | Escaped, | 369 | 86 | Call, | 370 | 86 | Kind); | 371 | | | 372 | 864 | InvalidatedSymbols RegularEscape; | 373 | 864 | for (SymbolRef Sym : Escaped) | 374 | 1.28k | if (!ETraits->hasTrait( | 375 | 1.28k | Sym, RegionAndSymbolInvalidationTraits::TK_PreserveContents) && | 376 | 1.28k | !ETraits->hasTrait( | 377 | 1.25k | Sym, RegionAndSymbolInvalidationTraits::TK_SuppressEscape)) | 378 | 1.25k | RegularEscape.insert(Sym); | 379 | | | 380 | 864 | if (RegularEscape.empty()) | 381 | 35 | return State; | 382 | | | 383 | 829 | return ((const CHECKER *)Checker)->checkPointerEscape(State, | 384 | 829 | RegularEscape, | 385 | 829 | Call, | 386 | 829 | Kind); | 387 | 864 | } |
FuchsiaHandleChecker.cpp:llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const> clang::ento::check::PointerEscape::_checkPointerEscape<(anonymous namespace)::FuchsiaHandleChecker>(void*, llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>, llvm::DenseSet<clang::ento::SymExpr const*, llvm::DenseMapInfo<clang::ento::SymExpr const*, void> > const&, clang::ento::CallEvent const*, clang::ento::PointerEscapeKind, clang::ento::RegionAndSymbolInvalidationTraits*) Line | Count | Source | 364 | 106 | RegionAndSymbolInvalidationTraits *ETraits) { | 365 | | | 366 | 106 | if (!ETraits) | 367 | 13 | return ((const CHECKER *)Checker)->checkPointerEscape(State, | 368 | 13 | Escaped, | 369 | 13 | Call, | 370 | 13 | Kind); | 371 | | | 372 | 93 | InvalidatedSymbols RegularEscape; | 373 | 93 | for (SymbolRef Sym : Escaped) | 374 | 189 | if (!ETraits->hasTrait( | 375 | 189 | Sym, RegionAndSymbolInvalidationTraits::TK_PreserveContents) && | 376 | 189 | !ETraits->hasTrait( | 377 | 189 | Sym, RegionAndSymbolInvalidationTraits::TK_SuppressEscape)) | 378 | 189 | RegularEscape.insert(Sym); | 379 | | | 380 | 93 | if (RegularEscape.empty()) | 381 | 0 | return State; | 382 | | | 383 | 93 | return ((const CHECKER *)Checker)->checkPointerEscape(State, | 384 | 93 | RegularEscape, | 385 | 93 | Call, | 386 | 93 | Kind); | 387 | 93 | } |
MacOSKeychainAPIChecker.cpp:llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const> clang::ento::check::PointerEscape::_checkPointerEscape<(anonymous namespace)::MacOSKeychainAPIChecker>(void*, llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>, llvm::DenseSet<clang::ento::SymExpr const*, llvm::DenseMapInfo<clang::ento::SymExpr const*, void> > const&, clang::ento::CallEvent const*, clang::ento::PointerEscapeKind, clang::ento::RegionAndSymbolInvalidationTraits*) Line | Count | Source | 364 | 328 | RegionAndSymbolInvalidationTraits *ETraits) { | 365 | | | 366 | 328 | if (!ETraits) | 367 | 63 | return ((const CHECKER *)Checker)->checkPointerEscape(State, | 368 | 63 | Escaped, | 369 | 63 | Call, | 370 | 63 | Kind); | 371 | | | 372 | 265 | InvalidatedSymbols RegularEscape; | 373 | 265 | for (SymbolRef Sym : Escaped) | 374 | 446 | if (!ETraits->hasTrait( | 375 | 446 | Sym, RegionAndSymbolInvalidationTraits::TK_PreserveContents) && | 376 | 446 | !ETraits->hasTrait( | 377 | 418 | Sym, RegionAndSymbolInvalidationTraits::TK_SuppressEscape)) | 378 | 418 | RegularEscape.insert(Sym); | 379 | | | 380 | 265 | if (RegularEscape.empty()) | 381 | 25 | return State; | 382 | | | 383 | 240 | return ((const CHECKER *)Checker)->checkPointerEscape(State, | 384 | 240 | RegularEscape, | 385 | 240 | Call, | 386 | 240 | Kind); | 387 | 265 | } |
MallocChecker.cpp:llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const> clang::ento::check::PointerEscape::_checkPointerEscape<(anonymous namespace)::MallocChecker>(void*, llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>, llvm::DenseSet<clang::ento::SymExpr const*, llvm::DenseMapInfo<clang::ento::SymExpr const*, void> > const&, clang::ento::CallEvent const*, clang::ento::PointerEscapeKind, clang::ento::RegionAndSymbolInvalidationTraits*) Line | Count | Source | 364 | 15.9k | RegionAndSymbolInvalidationTraits *ETraits) { | 365 | | | 366 | 15.9k | if (!ETraits) | 367 | 1.69k | return ((const CHECKER *)Checker)->checkPointerEscape(State, | 368 | 1.69k | Escaped, | 369 | 1.69k | Call, | 370 | 1.69k | Kind); | 371 | | | 372 | 14.2k | InvalidatedSymbols RegularEscape; | 373 | 14.2k | for (SymbolRef Sym : Escaped) | 374 | 32.1k | if (!ETraits->hasTrait( | 375 | 32.1k | Sym, RegionAndSymbolInvalidationTraits::TK_PreserveContents) && | 376 | 32.1k | !ETraits->hasTrait( | 377 | 30.7k | Sym, RegionAndSymbolInvalidationTraits::TK_SuppressEscape)) | 378 | 30.7k | RegularEscape.insert(Sym); | 379 | | | 380 | 14.2k | if (RegularEscape.empty()) | 381 | 1.42k | return State; | 382 | | | 383 | 12.7k | return ((const CHECKER *)Checker)->checkPointerEscape(State, | 384 | 12.7k | RegularEscape, | 385 | 12.7k | Call, | 386 | 12.7k | Kind); | 387 | 14.2k | } |
ObjCContainersChecker.cpp:llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const> clang::ento::check::PointerEscape::_checkPointerEscape<(anonymous namespace)::ObjCContainersChecker>(void*, llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>, llvm::DenseSet<clang::ento::SymExpr const*, llvm::DenseMapInfo<clang::ento::SymExpr const*, void> > const&, clang::ento::CallEvent const*, clang::ento::PointerEscapeKind, clang::ento::RegionAndSymbolInvalidationTraits*) Line | Count | Source | 364 | 324 | RegionAndSymbolInvalidationTraits *ETraits) { | 365 | | | 366 | 324 | if (!ETraits) | 367 | 62 | return ((const CHECKER *)Checker)->checkPointerEscape(State, | 368 | 62 | Escaped, | 369 | 62 | Call, | 370 | 62 | Kind); | 371 | | | 372 | 262 | InvalidatedSymbols RegularEscape; | 373 | 262 | for (SymbolRef Sym : Escaped) | 374 | 453 | if (!ETraits->hasTrait( | 375 | 453 | Sym, RegionAndSymbolInvalidationTraits::TK_PreserveContents) && | 376 | 453 | !ETraits->hasTrait( | 377 | 406 | Sym, RegionAndSymbolInvalidationTraits::TK_SuppressEscape)) | 378 | 406 | RegularEscape.insert(Sym); | 379 | | | 380 | 262 | if (RegularEscape.empty()) | 381 | 44 | return State; | 382 | | | 383 | 218 | return ((const CHECKER *)Checker)->checkPointerEscape(State, | 384 | 218 | RegularEscape, | 385 | 218 | Call, | 386 | 218 | Kind); | 387 | 262 | } |
SimpleStreamChecker.cpp:llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const> clang::ento::check::PointerEscape::_checkPointerEscape<(anonymous namespace)::SimpleStreamChecker>(void*, llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>, llvm::DenseSet<clang::ento::SymExpr const*, llvm::DenseMapInfo<clang::ento::SymExpr const*, void> > const&, clang::ento::CallEvent const*, clang::ento::PointerEscapeKind, clang::ento::RegionAndSymbolInvalidationTraits*) Line | Count | Source | 364 | 63 | RegionAndSymbolInvalidationTraits *ETraits) { | 365 | | | 366 | 63 | if (!ETraits) | 367 | 20 | return ((const CHECKER *)Checker)->checkPointerEscape(State, | 368 | 20 | Escaped, | 369 | 20 | Call, | 370 | 20 | Kind); | 371 | | | 372 | 43 | InvalidatedSymbols RegularEscape; | 373 | 43 | for (SymbolRef Sym : Escaped) | 374 | 64 | if (!ETraits->hasTrait( | 375 | 64 | Sym, RegionAndSymbolInvalidationTraits::TK_PreserveContents) && | 376 | 64 | !ETraits->hasTrait( | 377 | 63 | Sym, RegionAndSymbolInvalidationTraits::TK_SuppressEscape)) | 378 | 63 | RegularEscape.insert(Sym); | 379 | | | 380 | 43 | if (RegularEscape.empty()) | 381 | 1 | return State; | 382 | | | 383 | 42 | return ((const CHECKER *)Checker)->checkPointerEscape(State, | 384 | 42 | RegularEscape, | 385 | 42 | Call, | 386 | 42 | Kind); | 387 | 43 | } |
StreamChecker.cpp:llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const> clang::ento::check::PointerEscape::_checkPointerEscape<(anonymous namespace)::StreamChecker>(void*, llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>, llvm::DenseSet<clang::ento::SymExpr const*, llvm::DenseMapInfo<clang::ento::SymExpr const*, void> > const&, clang::ento::CallEvent const*, clang::ento::PointerEscapeKind, clang::ento::RegionAndSymbolInvalidationTraits*) Line | Count | Source | 364 | 771 | RegionAndSymbolInvalidationTraits *ETraits) { | 365 | | | 366 | 771 | if (!ETraits) | 367 | 646 | return ((const CHECKER *)Checker)->checkPointerEscape(State, | 368 | 646 | Escaped, | 369 | 646 | Call, | 370 | 646 | Kind); | 371 | | | 372 | 125 | InvalidatedSymbols RegularEscape; | 373 | 125 | for (SymbolRef Sym : Escaped) | 374 | 192 | if (!ETraits->hasTrait( | 375 | 192 | Sym, RegionAndSymbolInvalidationTraits::TK_PreserveContents) && | 376 | 192 | !ETraits->hasTrait( | 377 | 187 | Sym, RegionAndSymbolInvalidationTraits::TK_SuppressEscape)) | 378 | 187 | RegularEscape.insert(Sym); | 379 | | | 380 | 125 | if (RegularEscape.empty()) | 381 | 0 | return State; | 382 | | | 383 | 125 | return ((const CHECKER *)Checker)->checkPointerEscape(State, | 384 | 125 | RegularEscape, | 385 | 125 | Call, | 386 | 125 | Kind); | 387 | 125 | } |
|
388 | | |
389 | | public: |
390 | | template <typename CHECKER> |
391 | 472 | static void _register(CHECKER *checker, CheckerManager &mgr) { |
392 | 472 | mgr._registerForPointerEscape( |
393 | 472 | CheckerManager::CheckPointerEscapeFunc(checker, |
394 | 472 | _checkPointerEscape<CHECKER>)); |
395 | 472 | } AnalysisOrderChecker.cpp:void clang::ento::check::PointerEscape::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 391 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 392 | 12 | mgr._registerForPointerEscape( | 393 | 12 | CheckerManager::CheckPointerEscapeFunc(checker, | 394 | 12 | _checkPointerEscape<CHECKER>)); | 395 | 12 | } |
BasicObjCFoundationChecks.cpp:void clang::ento::check::PointerEscape::_register<(anonymous namespace)::ObjCLoopChecker>((anonymous namespace)::ObjCLoopChecker*, clang::ento::CheckerManager&) Line | Count | Source | 391 | 48 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 392 | 48 | mgr._registerForPointerEscape( | 393 | 48 | CheckerManager::CheckPointerEscapeFunc(checker, | 394 | 48 | _checkPointerEscape<CHECKER>)); | 395 | 48 | } |
CheckObjCDealloc.cpp:void clang::ento::check::PointerEscape::_register<(anonymous namespace)::ObjCDeallocChecker>((anonymous namespace)::ObjCDeallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 391 | 50 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 392 | 50 | mgr._registerForPointerEscape( | 393 | 50 | CheckerManager::CheckPointerEscapeFunc(checker, | 394 | 50 | _checkPointerEscape<CHECKER>)); | 395 | 50 | } |
FuchsiaHandleChecker.cpp:void clang::ento::check::PointerEscape::_register<(anonymous namespace)::FuchsiaHandleChecker>((anonymous namespace)::FuchsiaHandleChecker*, clang::ento::CheckerManager&) Line | Count | Source | 391 | 1 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 392 | 1 | mgr._registerForPointerEscape( | 393 | 1 | CheckerManager::CheckPointerEscapeFunc(checker, | 394 | 1 | _checkPointerEscape<CHECKER>)); | 395 | 1 | } |
MacOSKeychainAPIChecker.cpp:void clang::ento::check::PointerEscape::_register<(anonymous namespace)::MacOSKeychainAPIChecker>((anonymous namespace)::MacOSKeychainAPIChecker*, clang::ento::CheckerManager&) Line | Count | Source | 391 | 48 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 392 | 48 | mgr._registerForPointerEscape( | 393 | 48 | CheckerManager::CheckPointerEscapeFunc(checker, | 394 | 48 | _checkPointerEscape<CHECKER>)); | 395 | 48 | } |
MallocChecker.cpp:void clang::ento::check::PointerEscape::_register<(anonymous namespace)::MallocChecker>((anonymous namespace)::MallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 391 | 245 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 392 | 245 | mgr._registerForPointerEscape( | 393 | 245 | CheckerManager::CheckPointerEscapeFunc(checker, | 394 | 245 | _checkPointerEscape<CHECKER>)); | 395 | 245 | } |
ObjCContainersChecker.cpp:void clang::ento::check::PointerEscape::_register<(anonymous namespace)::ObjCContainersChecker>((anonymous namespace)::ObjCContainersChecker*, clang::ento::CheckerManager&) Line | Count | Source | 391 | 47 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 392 | 47 | mgr._registerForPointerEscape( | 393 | 47 | CheckerManager::CheckPointerEscapeFunc(checker, | 394 | 47 | _checkPointerEscape<CHECKER>)); | 395 | 47 | } |
SimpleStreamChecker.cpp:void clang::ento::check::PointerEscape::_register<(anonymous namespace)::SimpleStreamChecker>((anonymous namespace)::SimpleStreamChecker*, clang::ento::CheckerManager&) Line | Count | Source | 391 | 4 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 392 | 4 | mgr._registerForPointerEscape( | 393 | 4 | CheckerManager::CheckPointerEscapeFunc(checker, | 394 | 4 | _checkPointerEscape<CHECKER>)); | 395 | 4 | } |
StreamChecker.cpp:void clang::ento::check::PointerEscape::_register<(anonymous namespace)::StreamChecker>((anonymous namespace)::StreamChecker*, clang::ento::CheckerManager&) Line | Count | Source | 391 | 17 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 392 | 17 | mgr._registerForPointerEscape( | 393 | 17 | CheckerManager::CheckPointerEscapeFunc(checker, | 394 | 17 | _checkPointerEscape<CHECKER>)); | 395 | 17 | } |
|
396 | | }; |
397 | | |
398 | | class ConstPointerEscape { |
399 | | template <typename CHECKER> |
400 | | static ProgramStateRef |
401 | | _checkConstPointerEscape(void *Checker, |
402 | | ProgramStateRef State, |
403 | | const InvalidatedSymbols &Escaped, |
404 | | const CallEvent *Call, |
405 | | PointerEscapeKind Kind, |
406 | 15.9k | RegionAndSymbolInvalidationTraits *ETraits) { |
407 | | |
408 | 15.9k | if (!ETraits) |
409 | 1.69k | return State; |
410 | | |
411 | 14.2k | InvalidatedSymbols ConstEscape; |
412 | 32.1k | for (SymbolRef Sym : Escaped) { |
413 | 32.1k | if (ETraits->hasTrait( |
414 | 32.1k | Sym, RegionAndSymbolInvalidationTraits::TK_PreserveContents) && |
415 | 32.1k | !ETraits->hasTrait( |
416 | 1.43k | Sym, RegionAndSymbolInvalidationTraits::TK_SuppressEscape)) |
417 | 1.33k | ConstEscape.insert(Sym); |
418 | 32.1k | } |
419 | | |
420 | 14.2k | if (ConstEscape.empty()) |
421 | 12.8k | return State; |
422 | | |
423 | 1.33k | return ((const CHECKER *)Checker)->checkConstPointerEscape(State, |
424 | 1.33k | ConstEscape, |
425 | 1.33k | Call, |
426 | 1.33k | Kind); |
427 | 14.2k | } |
428 | | |
429 | | public: |
430 | | template <typename CHECKER> |
431 | 245 | static void _register(CHECKER *checker, CheckerManager &mgr) { |
432 | 245 | mgr._registerForPointerEscape( |
433 | 245 | CheckerManager::CheckPointerEscapeFunc(checker, |
434 | 245 | _checkConstPointerEscape<CHECKER>)); |
435 | 245 | } |
436 | | }; |
437 | | |
438 | | |
439 | | template <typename EVENT> |
440 | | class Event { |
441 | | template <typename CHECKER> |
442 | 70 | static void _checkEvent(void *checker, const void *event) { |
443 | 70 | ((const CHECKER *)checker)->checkEvent(*(const EVENT *)event); |
444 | 70 | } NSErrorChecker.cpp:void clang::ento::check::Event<clang::ento::ImplicitNullDerefEvent>::_checkEvent<(anonymous namespace)::NSOrCFErrorDerefChecker>(void*, void const*) Line | Count | Source | 442 | 21 | static void _checkEvent(void *checker, const void *event) { | 443 | 21 | ((const CHECKER *)checker)->checkEvent(*(const EVENT *)event); | 444 | 21 | } |
NullabilityChecker.cpp:void clang::ento::check::Event<clang::ento::ImplicitNullDerefEvent>::_checkEvent<(anonymous namespace)::NullabilityChecker>(void*, void const*) Line | Count | Source | 442 | 49 | static void _checkEvent(void *checker, const void *event) { | 443 | 49 | ((const CHECKER *)checker)->checkEvent(*(const EVENT *)event); | 444 | 49 | } |
|
445 | | public: |
446 | | template <typename CHECKER> |
447 | 101 | static void _register(CHECKER *checker, CheckerManager &mgr) { |
448 | 101 | mgr._registerListenerForEvent<EVENT>( |
449 | 101 | CheckerManager::CheckEventFunc(checker, _checkEvent<CHECKER>)); |
450 | 101 | } NSErrorChecker.cpp:void clang::ento::check::Event<clang::ento::ImplicitNullDerefEvent>::_register<(anonymous namespace)::NSOrCFErrorDerefChecker>((anonymous namespace)::NSOrCFErrorDerefChecker*, clang::ento::CheckerManager&) Line | Count | Source | 447 | 49 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 448 | 49 | mgr._registerListenerForEvent<EVENT>( | 449 | 49 | CheckerManager::CheckEventFunc(checker, _checkEvent<CHECKER>)); | 450 | 49 | } |
NullabilityChecker.cpp:void clang::ento::check::Event<clang::ento::ImplicitNullDerefEvent>::_register<(anonymous namespace)::NullabilityChecker>((anonymous namespace)::NullabilityChecker*, clang::ento::CheckerManager&) Line | Count | Source | 447 | 52 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 448 | 52 | mgr._registerListenerForEvent<EVENT>( | 449 | 52 | CheckerManager::CheckEventFunc(checker, _checkEvent<CHECKER>)); | 450 | 52 | } |
|
451 | | }; |
452 | | |
453 | | } // end check namespace |
454 | | |
455 | | namespace eval { |
456 | | |
457 | | class Assume { |
458 | | template <typename CHECKER> |
459 | | static ProgramStateRef _evalAssume(void *checker, |
460 | | ProgramStateRef state, |
461 | | const SVal &cond, |
462 | 233k | bool assumption) { |
463 | 233k | return ((const CHECKER *)checker)->evalAssume(state, cond, assumption); |
464 | 233k | } CheckObjCDealloc.cpp:llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const> clang::ento::eval::Assume::_evalAssume<(anonymous namespace)::ObjCDeallocChecker>(void*, llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>, clang::ento::SVal const&, bool) Line | Count | Source | 462 | 3.66k | bool assumption) { | 463 | 3.66k | return ((const CHECKER *)checker)->evalAssume(state, cond, assumption); | 464 | 3.66k | } |
FuchsiaHandleChecker.cpp:llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const> clang::ento::eval::Assume::_evalAssume<(anonymous namespace)::FuchsiaHandleChecker>(void*, llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>, clang::ento::SVal const&, bool) Line | Count | Source | 462 | 367 | bool assumption) { | 463 | 367 | return ((const CHECKER *)checker)->evalAssume(state, cond, assumption); | 464 | 367 | } |
MacOSKeychainAPIChecker.cpp:llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const> clang::ento::eval::Assume::_evalAssume<(anonymous namespace)::MacOSKeychainAPIChecker>(void*, llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>, clang::ento::SVal const&, bool) Line | Count | Source | 462 | 1.64k | bool assumption) { | 463 | 1.64k | return ((const CHECKER *)checker)->evalAssume(state, cond, assumption); | 464 | 1.64k | } |
MallocChecker.cpp:llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const> clang::ento::eval::Assume::_evalAssume<(anonymous namespace)::MallocChecker>(void*, llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>, clang::ento::SVal const&, bool) Line | Count | Source | 462 | 202k | bool assumption) { | 463 | 202k | return ((const CHECKER *)checker)->evalAssume(state, cond, assumption); | 464 | 202k | } |
NullabilityChecker.cpp:llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const> clang::ento::eval::Assume::_evalAssume<(anonymous namespace)::NullabilityChecker>(void*, llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>, clang::ento::SVal const&, bool) Line | Count | Source | 462 | 4.28k | bool assumption) { | 463 | 4.28k | return ((const CHECKER *)checker)->evalAssume(state, cond, assumption); | 464 | 4.28k | } |
llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const> clang::ento::eval::Assume::_evalAssume<clang::ento::retaincountchecker::RetainCountChecker>(void*, llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>, clang::ento::SVal const&, bool) Line | Count | Source | 462 | 15.2k | bool assumption) { | 463 | 15.2k | return ((const CHECKER *)checker)->evalAssume(state, cond, assumption); | 464 | 15.2k | } |
TrustNonnullChecker.cpp:llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const> clang::ento::eval::Assume::_evalAssume<(anonymous namespace)::TrustNonnullChecker>(void*, llvm::IntrusiveRefCntPtr<clang::ento::ProgramState const>, clang::ento::SVal const&, bool) Line | Count | Source | 462 | 6.20k | bool assumption) { | 463 | 6.20k | return ((const CHECKER *)checker)->evalAssume(state, cond, assumption); | 464 | 6.20k | } |
|
465 | | |
466 | | public: |
467 | | template <typename CHECKER> |
468 | 533 | static void _register(CHECKER *checker, CheckerManager &mgr) { |
469 | 533 | mgr._registerForEvalAssume( |
470 | 533 | CheckerManager::EvalAssumeFunc(checker, _evalAssume<CHECKER>)); |
471 | 533 | } CheckObjCDealloc.cpp:void clang::ento::eval::Assume::_register<(anonymous namespace)::ObjCDeallocChecker>((anonymous namespace)::ObjCDeallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 468 | 50 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 469 | 50 | mgr._registerForEvalAssume( | 470 | 50 | CheckerManager::EvalAssumeFunc(checker, _evalAssume<CHECKER>)); | 471 | 50 | } |
FuchsiaHandleChecker.cpp:void clang::ento::eval::Assume::_register<(anonymous namespace)::FuchsiaHandleChecker>((anonymous namespace)::FuchsiaHandleChecker*, clang::ento::CheckerManager&) Line | Count | Source | 468 | 1 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 469 | 1 | mgr._registerForEvalAssume( | 470 | 1 | CheckerManager::EvalAssumeFunc(checker, _evalAssume<CHECKER>)); | 471 | 1 | } |
MacOSKeychainAPIChecker.cpp:void clang::ento::eval::Assume::_register<(anonymous namespace)::MacOSKeychainAPIChecker>((anonymous namespace)::MacOSKeychainAPIChecker*, clang::ento::CheckerManager&) Line | Count | Source | 468 | 48 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 469 | 48 | mgr._registerForEvalAssume( | 470 | 48 | CheckerManager::EvalAssumeFunc(checker, _evalAssume<CHECKER>)); | 471 | 48 | } |
MallocChecker.cpp:void clang::ento::eval::Assume::_register<(anonymous namespace)::MallocChecker>((anonymous namespace)::MallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 468 | 245 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 469 | 245 | mgr._registerForEvalAssume( | 470 | 245 | CheckerManager::EvalAssumeFunc(checker, _evalAssume<CHECKER>)); | 471 | 245 | } |
NullabilityChecker.cpp:void clang::ento::eval::Assume::_register<(anonymous namespace)::NullabilityChecker>((anonymous namespace)::NullabilityChecker*, clang::ento::CheckerManager&) Line | Count | Source | 468 | 52 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 469 | 52 | mgr._registerForEvalAssume( | 470 | 52 | CheckerManager::EvalAssumeFunc(checker, _evalAssume<CHECKER>)); | 471 | 52 | } |
void clang::ento::eval::Assume::_register<clang::ento::retaincountchecker::RetainCountChecker>(clang::ento::retaincountchecker::RetainCountChecker*, clang::ento::CheckerManager&) Line | Count | Source | 468 | 96 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 469 | 96 | mgr._registerForEvalAssume( | 470 | 96 | CheckerManager::EvalAssumeFunc(checker, _evalAssume<CHECKER>)); | 471 | 96 | } |
TrustNonnullChecker.cpp:void clang::ento::eval::Assume::_register<(anonymous namespace)::TrustNonnullChecker>((anonymous namespace)::TrustNonnullChecker*, clang::ento::CheckerManager&) Line | Count | Source | 468 | 41 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 469 | 41 | mgr._registerForEvalAssume( | 470 | 41 | CheckerManager::EvalAssumeFunc(checker, _evalAssume<CHECKER>)); | 471 | 41 | } |
|
472 | | }; |
473 | | |
474 | | class Call { |
475 | | template <typename CHECKER> |
476 | | static bool _evalCall(void *checker, const CallEvent &Call, |
477 | 259k | CheckerContext &C) { |
478 | 259k | return ((const CHECKER *)checker)->evalCall(Call, C); |
479 | 259k | } AnalysisOrderChecker.cpp:bool clang::ento::eval::Call::_evalCall<(anonymous namespace)::AnalysisOrderChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 477 | 48 | CheckerContext &C) { | 478 | 48 | return ((const CHECKER *)checker)->evalCall(Call, C); | 479 | 48 | } |
BuiltinFunctionChecker.cpp:bool clang::ento::eval::Call::_evalCall<(anonymous namespace)::BuiltinFunctionChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 477 | 85.2k | CheckerContext &C) { | 478 | 85.2k | return ((const CHECKER *)checker)->evalCall(Call, C); | 479 | 85.2k | } |
CStringChecker.cpp:bool clang::ento::eval::Call::_evalCall<(anonymous namespace)::CStringChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 477 | 35.8k | CheckerContext &C) { | 478 | 35.8k | return ((const CHECKER *)checker)->evalCall(Call, C); | 479 | 35.8k | } |
CastValueChecker.cpp:bool clang::ento::eval::Call::_evalCall<(anonymous namespace)::CastValueChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 477 | 586 | CheckerContext &C) { | 478 | 586 | return ((const CHECKER *)checker)->evalCall(Call, C); | 479 | 586 | } |
ChrootChecker.cpp:bool clang::ento::eval::Call::_evalCall<(anonymous namespace)::ChrootChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 477 | 33 | CheckerContext &C) { | 478 | 33 | return ((const CHECKER *)checker)->evalCall(Call, C); | 479 | 33 | } |
DebugContainerModeling.cpp:bool clang::ento::eval::Call::_evalCall<(anonymous namespace)::DebugContainerModeling>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 477 | 12.1k | CheckerContext &C) { | 478 | 12.1k | return ((const CHECKER *)checker)->evalCall(Call, C); | 479 | 12.1k | } |
DebugIteratorModeling.cpp:bool clang::ento::eval::Call::_evalCall<(anonymous namespace)::DebugIteratorModeling>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 477 | 12.0k | CheckerContext &C) { | 478 | 12.0k | return ((const CHECKER *)checker)->evalCall(Call, C); | 479 | 12.0k | } |
ErrnoModeling.cpp:bool clang::ento::eval::Call::_evalCall<(anonymous namespace)::ErrnoModeling>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 477 | 894 | CheckerContext &C) { | 478 | 894 | return ((const CHECKER *)checker)->evalCall(Call, C); | 479 | 894 | } |
ErrnoTesterChecker.cpp:bool clang::ento::eval::Call::_evalCall<(anonymous namespace)::ErrnoTesterChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 477 | 258 | CheckerContext &C) { | 478 | 258 | return ((const CHECKER *)checker)->evalCall(Call, C); | 479 | 258 | } |
ExprInspectionChecker.cpp:bool clang::ento::eval::Call::_evalCall<(anonymous namespace)::ExprInspectionChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 477 | 63.3k | CheckerContext &C) { | 478 | 63.3k | return ((const CHECKER *)checker)->evalCall(Call, C); | 479 | 63.3k | } |
bool clang::ento::eval::Call::_evalCall<clang::ento::retaincountchecker::RetainCountChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 477 | 2.04k | CheckerContext &C) { | 478 | 2.04k | return ((const CHECKER *)checker)->evalCall(Call, C); | 479 | 2.04k | } |
SmartPtrModeling.cpp:bool clang::ento::eval::Call::_evalCall<(anonymous namespace)::SmartPtrModeling>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 477 | 41.3k | CheckerContext &C) { | 478 | 41.3k | return ((const CHECKER *)checker)->evalCall(Call, C); | 479 | 41.3k | } |
StdLibraryFunctionsChecker.cpp:bool clang::ento::eval::Call::_evalCall<(anonymous namespace)::StdLibraryFunctionsChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 477 | 3.14k | CheckerContext &C) { | 478 | 3.14k | return ((const CHECKER *)checker)->evalCall(Call, C); | 479 | 3.14k | } |
STLAlgorithmModeling.cpp:bool clang::ento::eval::Call::_evalCall<(anonymous namespace)::STLAlgorithmModeling>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 477 | 1.42k | CheckerContext &C) { | 478 | 1.42k | return ((const CHECKER *)checker)->evalCall(Call, C); | 479 | 1.42k | } |
StreamChecker.cpp:bool clang::ento::eval::Call::_evalCall<(anonymous namespace)::StreamChecker>(void*, clang::ento::CallEvent const&, clang::ento::CheckerContext&) Line | Count | Source | 477 | 887 | CheckerContext &C) { | 478 | 887 | return ((const CHECKER *)checker)->evalCall(Call, C); | 479 | 887 | } |
|
480 | | |
481 | | public: |
482 | | template <typename CHECKER> |
483 | 2.47k | static void _register(CHECKER *checker, CheckerManager &mgr) { |
484 | 2.47k | mgr._registerForEvalCall( |
485 | 2.47k | CheckerManager::EvalCallFunc(checker, _evalCall<CHECKER>)); |
486 | 2.47k | } AnalysisOrderChecker.cpp:void clang::ento::eval::Call::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 483 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 484 | 12 | mgr._registerForEvalCall( | 485 | 12 | CheckerManager::EvalCallFunc(checker, _evalCall<CHECKER>)); | 486 | 12 | } |
BuiltinFunctionChecker.cpp:void clang::ento::eval::Call::_register<(anonymous namespace)::BuiltinFunctionChecker>((anonymous namespace)::BuiltinFunctionChecker*, clang::ento::CheckerManager&) Line | Count | Source | 483 | 1.29k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 484 | 1.29k | mgr._registerForEvalCall( | 485 | 1.29k | CheckerManager::EvalCallFunc(checker, _evalCall<CHECKER>)); | 486 | 1.29k | } |
CStringChecker.cpp:void clang::ento::eval::Call::_register<(anonymous namespace)::CStringChecker>((anonymous namespace)::CStringChecker*, clang::ento::CheckerManager&) Line | Count | Source | 483 | 274 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 484 | 274 | mgr._registerForEvalCall( | 485 | 274 | CheckerManager::EvalCallFunc(checker, _evalCall<CHECKER>)); | 486 | 274 | } |
CastValueChecker.cpp:void clang::ento::eval::Call::_register<(anonymous namespace)::CastValueChecker>((anonymous namespace)::CastValueChecker*, clang::ento::CheckerManager&) Line | Count | Source | 483 | 52 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 484 | 52 | mgr._registerForEvalCall( | 485 | 52 | CheckerManager::EvalCallFunc(checker, _evalCall<CHECKER>)); | 486 | 52 | } |
ChrootChecker.cpp:void clang::ento::eval::Call::_register<(anonymous namespace)::ChrootChecker>((anonymous namespace)::ChrootChecker*, clang::ento::CheckerManager&) Line | Count | Source | 483 | 4 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 484 | 4 | mgr._registerForEvalCall( | 485 | 4 | CheckerManager::EvalCallFunc(checker, _evalCall<CHECKER>)); | 486 | 4 | } |
DebugContainerModeling.cpp:void clang::ento::eval::Call::_register<(anonymous namespace)::DebugContainerModeling>((anonymous namespace)::DebugContainerModeling*, clang::ento::CheckerManager&) Line | Count | Source | 483 | 13 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 484 | 13 | mgr._registerForEvalCall( | 485 | 13 | CheckerManager::EvalCallFunc(checker, _evalCall<CHECKER>)); | 486 | 13 | } |
DebugIteratorModeling.cpp:void clang::ento::eval::Call::_register<(anonymous namespace)::DebugIteratorModeling>((anonymous namespace)::DebugIteratorModeling*, clang::ento::CheckerManager&) Line | Count | Source | 483 | 11 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 484 | 11 | mgr._registerForEvalCall( | 485 | 11 | CheckerManager::EvalCallFunc(checker, _evalCall<CHECKER>)); | 486 | 11 | } |
ErrnoModeling.cpp:void clang::ento::eval::Call::_register<(anonymous namespace)::ErrnoModeling>((anonymous namespace)::ErrnoModeling*, clang::ento::CheckerManager&) Line | Count | Source | 483 | 56 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 484 | 56 | mgr._registerForEvalCall( | 485 | 56 | CheckerManager::EvalCallFunc(checker, _evalCall<CHECKER>)); | 486 | 56 | } |
ErrnoTesterChecker.cpp:void clang::ento::eval::Call::_register<(anonymous namespace)::ErrnoTesterChecker>((anonymous namespace)::ErrnoTesterChecker*, clang::ento::CheckerManager&) Line | Count | Source | 483 | 6 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 484 | 6 | mgr._registerForEvalCall( | 485 | 6 | CheckerManager::EvalCallFunc(checker, _evalCall<CHECKER>)); | 486 | 6 | } |
ExprInspectionChecker.cpp:void clang::ento::eval::Call::_register<(anonymous namespace)::ExprInspectionChecker>((anonymous namespace)::ExprInspectionChecker*, clang::ento::CheckerManager&) Line | Count | Source | 483 | 444 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 484 | 444 | mgr._registerForEvalCall( | 485 | 444 | CheckerManager::EvalCallFunc(checker, _evalCall<CHECKER>)); | 486 | 444 | } |
void clang::ento::eval::Call::_register<clang::ento::retaincountchecker::RetainCountChecker>(clang::ento::retaincountchecker::RetainCountChecker*, clang::ento::CheckerManager&) Line | Count | Source | 483 | 96 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 484 | 96 | mgr._registerForEvalCall( | 485 | 96 | CheckerManager::EvalCallFunc(checker, _evalCall<CHECKER>)); | 486 | 96 | } |
SmartPtrModeling.cpp:void clang::ento::eval::Call::_register<(anonymous namespace)::SmartPtrModeling>((anonymous namespace)::SmartPtrModeling*, clang::ento::CheckerManager&) Line | Count | Source | 483 | 77 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 484 | 77 | mgr._registerForEvalCall( | 485 | 77 | CheckerManager::EvalCallFunc(checker, _evalCall<CHECKER>)); | 486 | 77 | } |
StdLibraryFunctionsChecker.cpp:void clang::ento::eval::Call::_register<(anonymous namespace)::StdLibraryFunctionsChecker>((anonymous namespace)::StdLibraryFunctionsChecker*, clang::ento::CheckerManager&) Line | Count | Source | 483 | 115 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 484 | 115 | mgr._registerForEvalCall( | 485 | 115 | CheckerManager::EvalCallFunc(checker, _evalCall<CHECKER>)); | 486 | 115 | } |
STLAlgorithmModeling.cpp:void clang::ento::eval::Call::_register<(anonymous namespace)::STLAlgorithmModeling>((anonymous namespace)::STLAlgorithmModeling*, clang::ento::CheckerManager&) Line | Count | Source | 483 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 484 | 2 | mgr._registerForEvalCall( | 485 | 2 | CheckerManager::EvalCallFunc(checker, _evalCall<CHECKER>)); | 486 | 2 | } |
StreamChecker.cpp:void clang::ento::eval::Call::_register<(anonymous namespace)::StreamChecker>((anonymous namespace)::StreamChecker*, clang::ento::CheckerManager&) Line | Count | Source | 483 | 17 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 484 | 17 | mgr._registerForEvalCall( | 485 | 17 | CheckerManager::EvalCallFunc(checker, _evalCall<CHECKER>)); | 486 | 17 | } |
|
487 | | }; |
488 | | |
489 | | } // end eval namespace |
490 | | |
491 | | class CheckerBase : public ProgramPointTag { |
492 | | CheckerNameRef Name; |
493 | | friend class ::clang::ento::CheckerManager; |
494 | | |
495 | | public: |
496 | | StringRef getTagDescription() const override; |
497 | | CheckerNameRef getCheckerName() const; |
498 | | |
499 | | /// See CheckerManager::runCheckersForPrintState. |
500 | | virtual void printState(raw_ostream &Out, ProgramStateRef State, |
501 | 5.87k | const char *NL, const char *Sep) const { } |
502 | | }; |
503 | | |
504 | | /// Dump checker name to stream. |
505 | | raw_ostream& operator<<(raw_ostream &Out, const CheckerBase &Checker); |
506 | | |
507 | | /// Tag that can use a checker name as a message provider |
508 | | /// (see SimpleProgramPointTag). |
509 | | class CheckerProgramPointTag : public SimpleProgramPointTag { |
510 | | public: |
511 | | CheckerProgramPointTag(StringRef CheckerName, StringRef Msg); |
512 | | CheckerProgramPointTag(const CheckerBase *Checker, StringRef Msg); |
513 | | }; |
514 | | |
515 | | template <typename CHECK1, typename... CHECKs> |
516 | | class Checker : public CHECK1, public CHECKs..., public CheckerBase { |
517 | | public: |
518 | | template <typename CHECKER> |
519 | 31.7k | static void _register(CHECKER *checker, CheckerManager &mgr) { |
520 | 31.7k | CHECK1::_register(checker, mgr); |
521 | 31.7k | Checker<CHECKs...>::_register(checker, mgr); |
522 | 31.7k | } AnalysisOrderChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::CastExpr>, clang::ento::check::PostStmt<clang::CastExpr>, clang::ento::check::PreStmt<clang::ArraySubscriptExpr>, clang::ento::check::PostStmt<clang::ArraySubscriptExpr>, clang::ento::check::PreStmt<clang::CXXNewExpr>, clang::ento::check::PostStmt<clang::CXXNewExpr>, clang::ento::check::PreStmt<clang::CXXDeleteExpr>, clang::ento::check::PostStmt<clang::CXXDeleteExpr>, clang::ento::check::PreStmt<clang::CXXConstructExpr>, clang::ento::check::PostStmt<clang::CXXConstructExpr>, clang::ento::check::PreStmt<clang::OffsetOfExpr>, clang::ento::check::PostStmt<clang::OffsetOfExpr>, clang::ento::check::PreCall, clang::ento::check::PostCall, clang::ento::check::EndFunction, clang::ento::check::EndAnalysis, clang::ento::check::NewAllocator, clang::ento::check::Bind, clang::ento::check::PointerEscape, clang::ento::check::RegionChanges, clang::ento::check::LiveSymbols, clang::ento::eval::Call>::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 12 | CHECK1::_register(checker, mgr); | 521 | 12 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 12 | } |
AnalysisOrderChecker.cpp:void clang::ento::Checker<clang::ento::check::PostStmt<clang::CastExpr>, clang::ento::check::PreStmt<clang::ArraySubscriptExpr>, clang::ento::check::PostStmt<clang::ArraySubscriptExpr>, clang::ento::check::PreStmt<clang::CXXNewExpr>, clang::ento::check::PostStmt<clang::CXXNewExpr>, clang::ento::check::PreStmt<clang::CXXDeleteExpr>, clang::ento::check::PostStmt<clang::CXXDeleteExpr>, clang::ento::check::PreStmt<clang::CXXConstructExpr>, clang::ento::check::PostStmt<clang::CXXConstructExpr>, clang::ento::check::PreStmt<clang::OffsetOfExpr>, clang::ento::check::PostStmt<clang::OffsetOfExpr>, clang::ento::check::PreCall, clang::ento::check::PostCall, clang::ento::check::EndFunction, clang::ento::check::EndAnalysis, clang::ento::check::NewAllocator, clang::ento::check::Bind, clang::ento::check::PointerEscape, clang::ento::check::RegionChanges, clang::ento::check::LiveSymbols, clang::ento::eval::Call>::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 12 | CHECK1::_register(checker, mgr); | 521 | 12 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 12 | } |
AnalysisOrderChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::ArraySubscriptExpr>, clang::ento::check::PostStmt<clang::ArraySubscriptExpr>, clang::ento::check::PreStmt<clang::CXXNewExpr>, clang::ento::check::PostStmt<clang::CXXNewExpr>, clang::ento::check::PreStmt<clang::CXXDeleteExpr>, clang::ento::check::PostStmt<clang::CXXDeleteExpr>, clang::ento::check::PreStmt<clang::CXXConstructExpr>, clang::ento::check::PostStmt<clang::CXXConstructExpr>, clang::ento::check::PreStmt<clang::OffsetOfExpr>, clang::ento::check::PostStmt<clang::OffsetOfExpr>, clang::ento::check::PreCall, clang::ento::check::PostCall, clang::ento::check::EndFunction, clang::ento::check::EndAnalysis, clang::ento::check::NewAllocator, clang::ento::check::Bind, clang::ento::check::PointerEscape, clang::ento::check::RegionChanges, clang::ento::check::LiveSymbols, clang::ento::eval::Call>::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 12 | CHECK1::_register(checker, mgr); | 521 | 12 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 12 | } |
AnalysisOrderChecker.cpp:void clang::ento::Checker<clang::ento::check::PostStmt<clang::ArraySubscriptExpr>, clang::ento::check::PreStmt<clang::CXXNewExpr>, clang::ento::check::PostStmt<clang::CXXNewExpr>, clang::ento::check::PreStmt<clang::CXXDeleteExpr>, clang::ento::check::PostStmt<clang::CXXDeleteExpr>, clang::ento::check::PreStmt<clang::CXXConstructExpr>, clang::ento::check::PostStmt<clang::CXXConstructExpr>, clang::ento::check::PreStmt<clang::OffsetOfExpr>, clang::ento::check::PostStmt<clang::OffsetOfExpr>, clang::ento::check::PreCall, clang::ento::check::PostCall, clang::ento::check::EndFunction, clang::ento::check::EndAnalysis, clang::ento::check::NewAllocator, clang::ento::check::Bind, clang::ento::check::PointerEscape, clang::ento::check::RegionChanges, clang::ento::check::LiveSymbols, clang::ento::eval::Call>::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 12 | CHECK1::_register(checker, mgr); | 521 | 12 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 12 | } |
AnalysisOrderChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::CXXNewExpr>, clang::ento::check::PostStmt<clang::CXXNewExpr>, clang::ento::check::PreStmt<clang::CXXDeleteExpr>, clang::ento::check::PostStmt<clang::CXXDeleteExpr>, clang::ento::check::PreStmt<clang::CXXConstructExpr>, clang::ento::check::PostStmt<clang::CXXConstructExpr>, clang::ento::check::PreStmt<clang::OffsetOfExpr>, clang::ento::check::PostStmt<clang::OffsetOfExpr>, clang::ento::check::PreCall, clang::ento::check::PostCall, clang::ento::check::EndFunction, clang::ento::check::EndAnalysis, clang::ento::check::NewAllocator, clang::ento::check::Bind, clang::ento::check::PointerEscape, clang::ento::check::RegionChanges, clang::ento::check::LiveSymbols, clang::ento::eval::Call>::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 12 | CHECK1::_register(checker, mgr); | 521 | 12 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 12 | } |
AnalysisOrderChecker.cpp:void clang::ento::Checker<clang::ento::check::PostStmt<clang::CXXNewExpr>, clang::ento::check::PreStmt<clang::CXXDeleteExpr>, clang::ento::check::PostStmt<clang::CXXDeleteExpr>, clang::ento::check::PreStmt<clang::CXXConstructExpr>, clang::ento::check::PostStmt<clang::CXXConstructExpr>, clang::ento::check::PreStmt<clang::OffsetOfExpr>, clang::ento::check::PostStmt<clang::OffsetOfExpr>, clang::ento::check::PreCall, clang::ento::check::PostCall, clang::ento::check::EndFunction, clang::ento::check::EndAnalysis, clang::ento::check::NewAllocator, clang::ento::check::Bind, clang::ento::check::PointerEscape, clang::ento::check::RegionChanges, clang::ento::check::LiveSymbols, clang::ento::eval::Call>::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 12 | CHECK1::_register(checker, mgr); | 521 | 12 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 12 | } |
AnalysisOrderChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::CXXDeleteExpr>, clang::ento::check::PostStmt<clang::CXXDeleteExpr>, clang::ento::check::PreStmt<clang::CXXConstructExpr>, clang::ento::check::PostStmt<clang::CXXConstructExpr>, clang::ento::check::PreStmt<clang::OffsetOfExpr>, clang::ento::check::PostStmt<clang::OffsetOfExpr>, clang::ento::check::PreCall, clang::ento::check::PostCall, clang::ento::check::EndFunction, clang::ento::check::EndAnalysis, clang::ento::check::NewAllocator, clang::ento::check::Bind, clang::ento::check::PointerEscape, clang::ento::check::RegionChanges, clang::ento::check::LiveSymbols, clang::ento::eval::Call>::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 12 | CHECK1::_register(checker, mgr); | 521 | 12 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 12 | } |
AnalysisOrderChecker.cpp:void clang::ento::Checker<clang::ento::check::PostStmt<clang::CXXDeleteExpr>, clang::ento::check::PreStmt<clang::CXXConstructExpr>, clang::ento::check::PostStmt<clang::CXXConstructExpr>, clang::ento::check::PreStmt<clang::OffsetOfExpr>, clang::ento::check::PostStmt<clang::OffsetOfExpr>, clang::ento::check::PreCall, clang::ento::check::PostCall, clang::ento::check::EndFunction, clang::ento::check::EndAnalysis, clang::ento::check::NewAllocator, clang::ento::check::Bind, clang::ento::check::PointerEscape, clang::ento::check::RegionChanges, clang::ento::check::LiveSymbols, clang::ento::eval::Call>::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 12 | CHECK1::_register(checker, mgr); | 521 | 12 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 12 | } |
AnalysisOrderChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::CXXConstructExpr>, clang::ento::check::PostStmt<clang::CXXConstructExpr>, clang::ento::check::PreStmt<clang::OffsetOfExpr>, clang::ento::check::PostStmt<clang::OffsetOfExpr>, clang::ento::check::PreCall, clang::ento::check::PostCall, clang::ento::check::EndFunction, clang::ento::check::EndAnalysis, clang::ento::check::NewAllocator, clang::ento::check::Bind, clang::ento::check::PointerEscape, clang::ento::check::RegionChanges, clang::ento::check::LiveSymbols, clang::ento::eval::Call>::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 12 | CHECK1::_register(checker, mgr); | 521 | 12 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 12 | } |
AnalysisOrderChecker.cpp:void clang::ento::Checker<clang::ento::check::PostStmt<clang::CXXConstructExpr>, clang::ento::check::PreStmt<clang::OffsetOfExpr>, clang::ento::check::PostStmt<clang::OffsetOfExpr>, clang::ento::check::PreCall, clang::ento::check::PostCall, clang::ento::check::EndFunction, clang::ento::check::EndAnalysis, clang::ento::check::NewAllocator, clang::ento::check::Bind, clang::ento::check::PointerEscape, clang::ento::check::RegionChanges, clang::ento::check::LiveSymbols, clang::ento::eval::Call>::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 12 | CHECK1::_register(checker, mgr); | 521 | 12 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 12 | } |
AnalysisOrderChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::OffsetOfExpr>, clang::ento::check::PostStmt<clang::OffsetOfExpr>, clang::ento::check::PreCall, clang::ento::check::PostCall, clang::ento::check::EndFunction, clang::ento::check::EndAnalysis, clang::ento::check::NewAllocator, clang::ento::check::Bind, clang::ento::check::PointerEscape, clang::ento::check::RegionChanges, clang::ento::check::LiveSymbols, clang::ento::eval::Call>::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 12 | CHECK1::_register(checker, mgr); | 521 | 12 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 12 | } |
AnalysisOrderChecker.cpp:void clang::ento::Checker<clang::ento::check::PostStmt<clang::OffsetOfExpr>, clang::ento::check::PreCall, clang::ento::check::PostCall, clang::ento::check::EndFunction, clang::ento::check::EndAnalysis, clang::ento::check::NewAllocator, clang::ento::check::Bind, clang::ento::check::PointerEscape, clang::ento::check::RegionChanges, clang::ento::check::LiveSymbols, clang::ento::eval::Call>::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 12 | CHECK1::_register(checker, mgr); | 521 | 12 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 12 | } |
AnalysisOrderChecker.cpp:void clang::ento::Checker<clang::ento::check::PreCall, clang::ento::check::PostCall, clang::ento::check::EndFunction, clang::ento::check::EndAnalysis, clang::ento::check::NewAllocator, clang::ento::check::Bind, clang::ento::check::PointerEscape, clang::ento::check::RegionChanges, clang::ento::check::LiveSymbols, clang::ento::eval::Call>::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 12 | CHECK1::_register(checker, mgr); | 521 | 12 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 12 | } |
AnalysisOrderChecker.cpp:void clang::ento::Checker<clang::ento::check::PostCall, clang::ento::check::EndFunction, clang::ento::check::EndAnalysis, clang::ento::check::NewAllocator, clang::ento::check::Bind, clang::ento::check::PointerEscape, clang::ento::check::RegionChanges, clang::ento::check::LiveSymbols, clang::ento::eval::Call>::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 12 | CHECK1::_register(checker, mgr); | 521 | 12 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 12 | } |
AnalysisOrderChecker.cpp:void clang::ento::Checker<clang::ento::check::EndFunction, clang::ento::check::EndAnalysis, clang::ento::check::NewAllocator, clang::ento::check::Bind, clang::ento::check::PointerEscape, clang::ento::check::RegionChanges, clang::ento::check::LiveSymbols, clang::ento::eval::Call>::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 12 | CHECK1::_register(checker, mgr); | 521 | 12 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 12 | } |
AnalysisOrderChecker.cpp:void clang::ento::Checker<clang::ento::check::EndAnalysis, clang::ento::check::NewAllocator, clang::ento::check::Bind, clang::ento::check::PointerEscape, clang::ento::check::RegionChanges, clang::ento::check::LiveSymbols, clang::ento::eval::Call>::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 12 | CHECK1::_register(checker, mgr); | 521 | 12 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 12 | } |
AnalysisOrderChecker.cpp:void clang::ento::Checker<clang::ento::check::NewAllocator, clang::ento::check::Bind, clang::ento::check::PointerEscape, clang::ento::check::RegionChanges, clang::ento::check::LiveSymbols, clang::ento::eval::Call>::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 12 | CHECK1::_register(checker, mgr); | 521 | 12 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 12 | } |
AnalysisOrderChecker.cpp:void clang::ento::Checker<clang::ento::check::Bind, clang::ento::check::PointerEscape, clang::ento::check::RegionChanges, clang::ento::check::LiveSymbols, clang::ento::eval::Call>::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 12 | CHECK1::_register(checker, mgr); | 521 | 12 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 12 | } |
AnalysisOrderChecker.cpp:void clang::ento::Checker<clang::ento::check::PointerEscape, clang::ento::check::RegionChanges, clang::ento::check::LiveSymbols, clang::ento::eval::Call>::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 12 | CHECK1::_register(checker, mgr); | 521 | 12 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 12 | } |
AnalysisOrderChecker.cpp:void clang::ento::Checker<clang::ento::check::RegionChanges, clang::ento::check::LiveSymbols, clang::ento::eval::Call>::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 12 | CHECK1::_register(checker, mgr); | 521 | 12 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 12 | } |
AnalysisOrderChecker.cpp:void clang::ento::Checker<clang::ento::check::LiveSymbols, clang::ento::eval::Call>::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 12 | CHECK1::_register(checker, mgr); | 521 | 12 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 12 | } |
BasicObjCFoundationChecks.cpp:void clang::ento::Checker<clang::ento::check::PreObjCMessage, clang::ento::check::PostStmt<clang::ObjCDictionaryLiteral>, clang::ento::check::PostStmt<clang::ObjCArrayLiteral>, clang::ento::EventDispatcher<clang::ento::ImplicitNullDerefEvent> >::_register<(anonymous namespace)::NilArgChecker>((anonymous namespace)::NilArgChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 53 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 53 | CHECK1::_register(checker, mgr); | 521 | 53 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 53 | } |
BasicObjCFoundationChecks.cpp:void clang::ento::Checker<clang::ento::check::PostStmt<clang::ObjCDictionaryLiteral>, clang::ento::check::PostStmt<clang::ObjCArrayLiteral>, clang::ento::EventDispatcher<clang::ento::ImplicitNullDerefEvent> >::_register<(anonymous namespace)::NilArgChecker>((anonymous namespace)::NilArgChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 53 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 53 | CHECK1::_register(checker, mgr); | 521 | 53 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 53 | } |
BasicObjCFoundationChecks.cpp:void clang::ento::Checker<clang::ento::check::PostStmt<clang::ObjCArrayLiteral>, clang::ento::EventDispatcher<clang::ento::ImplicitNullDerefEvent> >::_register<(anonymous namespace)::NilArgChecker>((anonymous namespace)::NilArgChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 53 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 53 | CHECK1::_register(checker, mgr); | 521 | 53 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 53 | } |
BasicObjCFoundationChecks.cpp:void clang::ento::Checker<clang::ento::check::PostStmt<clang::ObjCForCollectionStmt>, clang::ento::check::PostObjCMessage, clang::ento::check::DeadSymbols, clang::ento::check::PointerEscape>::_register<(anonymous namespace)::ObjCLoopChecker>((anonymous namespace)::ObjCLoopChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 48 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 48 | CHECK1::_register(checker, mgr); | 521 | 48 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 48 | } |
BasicObjCFoundationChecks.cpp:void clang::ento::Checker<clang::ento::check::PostObjCMessage, clang::ento::check::DeadSymbols, clang::ento::check::PointerEscape>::_register<(anonymous namespace)::ObjCLoopChecker>((anonymous namespace)::ObjCLoopChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 48 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 48 | CHECK1::_register(checker, mgr); | 521 | 48 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 48 | } |
BasicObjCFoundationChecks.cpp:void clang::ento::Checker<clang::ento::check::DeadSymbols, clang::ento::check::PointerEscape>::_register<(anonymous namespace)::ObjCLoopChecker>((anonymous namespace)::ObjCLoopChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 48 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 48 | CHECK1::_register(checker, mgr); | 521 | 48 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 48 | } |
BasicObjCFoundationChecks.cpp:void clang::ento::Checker<clang::ento::check::PostObjCMessage, clang::ento::check::PostStmt<clang::ObjCArrayLiteral>, clang::ento::check::PostStmt<clang::ObjCDictionaryLiteral>, clang::ento::check::PostStmt<clang::ObjCBoxedExpr> >::_register<(anonymous namespace)::ObjCNonNilReturnValueChecker>((anonymous namespace)::ObjCNonNilReturnValueChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 49 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 49 | CHECK1::_register(checker, mgr); | 521 | 49 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 49 | } |
BasicObjCFoundationChecks.cpp:void clang::ento::Checker<clang::ento::check::PostStmt<clang::ObjCArrayLiteral>, clang::ento::check::PostStmt<clang::ObjCDictionaryLiteral>, clang::ento::check::PostStmt<clang::ObjCBoxedExpr> >::_register<(anonymous namespace)::ObjCNonNilReturnValueChecker>((anonymous namespace)::ObjCNonNilReturnValueChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 49 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 49 | CHECK1::_register(checker, mgr); | 521 | 49 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 49 | } |
BasicObjCFoundationChecks.cpp:void clang::ento::Checker<clang::ento::check::PostStmt<clang::ObjCDictionaryLiteral>, clang::ento::check::PostStmt<clang::ObjCBoxedExpr> >::_register<(anonymous namespace)::ObjCNonNilReturnValueChecker>((anonymous namespace)::ObjCNonNilReturnValueChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 49 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 49 | CHECK1::_register(checker, mgr); | 521 | 49 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 49 | } |
CStringChecker.cpp:void clang::ento::Checker<clang::ento::eval::Call, clang::ento::check::PreStmt<clang::DeclStmt>, clang::ento::check::LiveSymbols, clang::ento::check::DeadSymbols, clang::ento::check::RegionChanges>::_register<(anonymous namespace)::CStringChecker>((anonymous namespace)::CStringChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 274 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 274 | CHECK1::_register(checker, mgr); | 521 | 274 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 274 | } |
CStringChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::DeclStmt>, clang::ento::check::LiveSymbols, clang::ento::check::DeadSymbols, clang::ento::check::RegionChanges>::_register<(anonymous namespace)::CStringChecker>((anonymous namespace)::CStringChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 274 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 274 | CHECK1::_register(checker, mgr); | 521 | 274 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 274 | } |
CStringChecker.cpp:void clang::ento::Checker<clang::ento::check::LiveSymbols, clang::ento::check::DeadSymbols, clang::ento::check::RegionChanges>::_register<(anonymous namespace)::CStringChecker>((anonymous namespace)::CStringChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 274 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 274 | CHECK1::_register(checker, mgr); | 521 | 274 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 274 | } |
CStringChecker.cpp:void clang::ento::Checker<clang::ento::check::DeadSymbols, clang::ento::check::RegionChanges>::_register<(anonymous namespace)::CStringChecker>((anonymous namespace)::CStringChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 274 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 274 | CHECK1::_register(checker, mgr); | 521 | 274 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 274 | } |
CallAndMessageChecker.cpp:void clang::ento::Checker<clang::ento::check::PreObjCMessage, clang::ento::check::ObjCMessageNil, clang::ento::check::PreCall>::_register<(anonymous namespace)::CallAndMessageChecker>((anonymous namespace)::CallAndMessageChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 1.28k | CHECK1::_register(checker, mgr); | 521 | 1.28k | Checker<CHECKs...>::_register(checker, mgr); | 522 | 1.28k | } |
CallAndMessageChecker.cpp:void clang::ento::Checker<clang::ento::check::ObjCMessageNil, clang::ento::check::PreCall>::_register<(anonymous namespace)::CallAndMessageChecker>((anonymous namespace)::CallAndMessageChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 1.28k | CHECK1::_register(checker, mgr); | 521 | 1.28k | Checker<CHECKs...>::_register(checker, mgr); | 522 | 1.28k | } |
CastValueChecker.cpp:void clang::ento::Checker<clang::ento::check::DeadSymbols, clang::ento::eval::Call>::_register<(anonymous namespace)::CastValueChecker>((anonymous namespace)::CastValueChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 52 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 52 | CHECK1::_register(checker, mgr); | 521 | 52 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 52 | } |
CheckObjCDealloc.cpp:void clang::ento::Checker<clang::ento::check::ASTDecl<clang::ObjCImplementationDecl>, clang::ento::check::PreObjCMessage, clang::ento::check::PostObjCMessage, clang::ento::check::PreCall, clang::ento::check::BeginFunction, clang::ento::check::EndFunction, clang::ento::eval::Assume, clang::ento::check::PointerEscape, clang::ento::check::PreStmt<clang::ReturnStmt> >::_register<(anonymous namespace)::ObjCDeallocChecker>((anonymous namespace)::ObjCDeallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 50 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 50 | CHECK1::_register(checker, mgr); | 521 | 50 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 50 | } |
CheckObjCDealloc.cpp:void clang::ento::Checker<clang::ento::check::PreObjCMessage, clang::ento::check::PostObjCMessage, clang::ento::check::PreCall, clang::ento::check::BeginFunction, clang::ento::check::EndFunction, clang::ento::eval::Assume, clang::ento::check::PointerEscape, clang::ento::check::PreStmt<clang::ReturnStmt> >::_register<(anonymous namespace)::ObjCDeallocChecker>((anonymous namespace)::ObjCDeallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 50 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 50 | CHECK1::_register(checker, mgr); | 521 | 50 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 50 | } |
CheckObjCDealloc.cpp:void clang::ento::Checker<clang::ento::check::PostObjCMessage, clang::ento::check::PreCall, clang::ento::check::BeginFunction, clang::ento::check::EndFunction, clang::ento::eval::Assume, clang::ento::check::PointerEscape, clang::ento::check::PreStmt<clang::ReturnStmt> >::_register<(anonymous namespace)::ObjCDeallocChecker>((anonymous namespace)::ObjCDeallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 50 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 50 | CHECK1::_register(checker, mgr); | 521 | 50 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 50 | } |
CheckObjCDealloc.cpp:void clang::ento::Checker<clang::ento::check::PreCall, clang::ento::check::BeginFunction, clang::ento::check::EndFunction, clang::ento::eval::Assume, clang::ento::check::PointerEscape, clang::ento::check::PreStmt<clang::ReturnStmt> >::_register<(anonymous namespace)::ObjCDeallocChecker>((anonymous namespace)::ObjCDeallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 50 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 50 | CHECK1::_register(checker, mgr); | 521 | 50 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 50 | } |
CheckObjCDealloc.cpp:void clang::ento::Checker<clang::ento::check::BeginFunction, clang::ento::check::EndFunction, clang::ento::eval::Assume, clang::ento::check::PointerEscape, clang::ento::check::PreStmt<clang::ReturnStmt> >::_register<(anonymous namespace)::ObjCDeallocChecker>((anonymous namespace)::ObjCDeallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 50 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 50 | CHECK1::_register(checker, mgr); | 521 | 50 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 50 | } |
CheckObjCDealloc.cpp:void clang::ento::Checker<clang::ento::check::EndFunction, clang::ento::eval::Assume, clang::ento::check::PointerEscape, clang::ento::check::PreStmt<clang::ReturnStmt> >::_register<(anonymous namespace)::ObjCDeallocChecker>((anonymous namespace)::ObjCDeallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 50 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 50 | CHECK1::_register(checker, mgr); | 521 | 50 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 50 | } |
CheckObjCDealloc.cpp:void clang::ento::Checker<clang::ento::eval::Assume, clang::ento::check::PointerEscape, clang::ento::check::PreStmt<clang::ReturnStmt> >::_register<(anonymous namespace)::ObjCDeallocChecker>((anonymous namespace)::ObjCDeallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 50 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 50 | CHECK1::_register(checker, mgr); | 521 | 50 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 50 | } |
CheckObjCDealloc.cpp:void clang::ento::Checker<clang::ento::check::PointerEscape, clang::ento::check::PreStmt<clang::ReturnStmt> >::_register<(anonymous namespace)::ObjCDeallocChecker>((anonymous namespace)::ObjCDeallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 50 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 50 | CHECK1::_register(checker, mgr); | 521 | 50 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 50 | } |
ChrootChecker.cpp:void clang::ento::Checker<clang::ento::eval::Call, clang::ento::check::PreCall>::_register<(anonymous namespace)::ChrootChecker>((anonymous namespace)::ChrootChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 4 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 4 | CHECK1::_register(checker, mgr); | 521 | 4 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 4 | } |
CloneChecker.cpp:void clang::ento::Checker<clang::ento::check::ASTCodeBody, clang::ento::check::EndOfTranslationUnit>::_register<(anonymous namespace)::CloneChecker>((anonymous namespace)::CloneChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 28 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 28 | CHECK1::_register(checker, mgr); | 521 | 28 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 28 | } |
ContainerModeling.cpp:void clang::ento::Checker<clang::ento::check::PostCall, clang::ento::check::LiveSymbols, clang::ento::check::DeadSymbols>::_register<(anonymous namespace)::ContainerModeling>((anonymous namespace)::ContainerModeling*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 21 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 21 | CHECK1::_register(checker, mgr); | 521 | 21 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 21 | } |
ContainerModeling.cpp:void clang::ento::Checker<clang::ento::check::LiveSymbols, clang::ento::check::DeadSymbols>::_register<(anonymous namespace)::ContainerModeling>((anonymous namespace)::ContainerModeling*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 21 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 21 | CHECK1::_register(checker, mgr); | 521 | 21 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 21 | } |
DereferenceChecker.cpp:void clang::ento::Checker<clang::ento::check::Location, clang::ento::check::Bind, clang::ento::EventDispatcher<clang::ento::ImplicitNullDerefEvent> >::_register<(anonymous namespace)::DereferenceChecker>((anonymous namespace)::DereferenceChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 1.28k | CHECK1::_register(checker, mgr); | 521 | 1.28k | Checker<CHECKs...>::_register(checker, mgr); | 522 | 1.28k | } |
DereferenceChecker.cpp:void clang::ento::Checker<clang::ento::check::Bind, clang::ento::EventDispatcher<clang::ento::ImplicitNullDerefEvent> >::_register<(anonymous namespace)::DereferenceChecker>((anonymous namespace)::DereferenceChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 1.28k | CHECK1::_register(checker, mgr); | 521 | 1.28k | Checker<CHECKs...>::_register(checker, mgr); | 522 | 1.28k | } |
DynamicTypePropagation.cpp:void clang::ento::Checker<clang::ento::check::PreCall, clang::ento::check::PostCall, clang::ento::check::DeadSymbols, clang::ento::check::PostStmt<clang::CastExpr>, clang::ento::check::PostStmt<clang::CXXNewExpr>, clang::ento::check::PreObjCMessage, clang::ento::check::PostObjCMessage>::_register<(anonymous namespace)::DynamicTypePropagation>((anonymous namespace)::DynamicTypePropagation*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 1.28k | CHECK1::_register(checker, mgr); | 521 | 1.28k | Checker<CHECKs...>::_register(checker, mgr); | 522 | 1.28k | } |
DynamicTypePropagation.cpp:void clang::ento::Checker<clang::ento::check::PostCall, clang::ento::check::DeadSymbols, clang::ento::check::PostStmt<clang::CastExpr>, clang::ento::check::PostStmt<clang::CXXNewExpr>, clang::ento::check::PreObjCMessage, clang::ento::check::PostObjCMessage>::_register<(anonymous namespace)::DynamicTypePropagation>((anonymous namespace)::DynamicTypePropagation*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 1.28k | CHECK1::_register(checker, mgr); | 521 | 1.28k | Checker<CHECKs...>::_register(checker, mgr); | 522 | 1.28k | } |
DynamicTypePropagation.cpp:void clang::ento::Checker<clang::ento::check::DeadSymbols, clang::ento::check::PostStmt<clang::CastExpr>, clang::ento::check::PostStmt<clang::CXXNewExpr>, clang::ento::check::PreObjCMessage, clang::ento::check::PostObjCMessage>::_register<(anonymous namespace)::DynamicTypePropagation>((anonymous namespace)::DynamicTypePropagation*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 1.28k | CHECK1::_register(checker, mgr); | 521 | 1.28k | Checker<CHECKs...>::_register(checker, mgr); | 522 | 1.28k | } |
DynamicTypePropagation.cpp:void clang::ento::Checker<clang::ento::check::PostStmt<clang::CastExpr>, clang::ento::check::PostStmt<clang::CXXNewExpr>, clang::ento::check::PreObjCMessage, clang::ento::check::PostObjCMessage>::_register<(anonymous namespace)::DynamicTypePropagation>((anonymous namespace)::DynamicTypePropagation*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 1.28k | CHECK1::_register(checker, mgr); | 521 | 1.28k | Checker<CHECKs...>::_register(checker, mgr); | 522 | 1.28k | } |
DynamicTypePropagation.cpp:void clang::ento::Checker<clang::ento::check::PostStmt<clang::CXXNewExpr>, clang::ento::check::PreObjCMessage, clang::ento::check::PostObjCMessage>::_register<(anonymous namespace)::DynamicTypePropagation>((anonymous namespace)::DynamicTypePropagation*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 1.28k | CHECK1::_register(checker, mgr); | 521 | 1.28k | Checker<CHECKs...>::_register(checker, mgr); | 522 | 1.28k | } |
DynamicTypePropagation.cpp:void clang::ento::Checker<clang::ento::check::PreObjCMessage, clang::ento::check::PostObjCMessage>::_register<(anonymous namespace)::DynamicTypePropagation>((anonymous namespace)::DynamicTypePropagation*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 1.28k | CHECK1::_register(checker, mgr); | 521 | 1.28k | Checker<CHECKs...>::_register(checker, mgr); | 522 | 1.28k | } |
ErrnoChecker.cpp:void clang::ento::Checker<clang::ento::check::Location, clang::ento::check::PreCall, clang::ento::check::RegionChanges>::_register<(anonymous namespace)::ErrnoChecker>((anonymous namespace)::ErrnoChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 15 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 15 | CHECK1::_register(checker, mgr); | 521 | 15 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 15 | } |
ErrnoChecker.cpp:void clang::ento::Checker<clang::ento::check::PreCall, clang::ento::check::RegionChanges>::_register<(anonymous namespace)::ErrnoChecker>((anonymous namespace)::ErrnoChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 15 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 15 | CHECK1::_register(checker, mgr); | 521 | 15 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 15 | } |
ErrnoModeling.cpp:void clang::ento::Checker<clang::ento::check::ASTDecl<clang::TranslationUnitDecl>, clang::ento::check::BeginFunction, clang::ento::check::LiveSymbols, clang::ento::eval::Call>::_register<(anonymous namespace)::ErrnoModeling>((anonymous namespace)::ErrnoModeling*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 56 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 56 | CHECK1::_register(checker, mgr); | 521 | 56 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 56 | } |
ErrnoModeling.cpp:void clang::ento::Checker<clang::ento::check::BeginFunction, clang::ento::check::LiveSymbols, clang::ento::eval::Call>::_register<(anonymous namespace)::ErrnoModeling>((anonymous namespace)::ErrnoModeling*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 56 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 56 | CHECK1::_register(checker, mgr); | 521 | 56 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 56 | } |
ErrnoModeling.cpp:void clang::ento::Checker<clang::ento::check::LiveSymbols, clang::ento::eval::Call>::_register<(anonymous namespace)::ErrnoModeling>((anonymous namespace)::ErrnoModeling*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 56 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 56 | CHECK1::_register(checker, mgr); | 521 | 56 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 56 | } |
ExprInspectionChecker.cpp:void clang::ento::Checker<clang::ento::eval::Call, clang::ento::check::DeadSymbols, clang::ento::check::EndAnalysis>::_register<(anonymous namespace)::ExprInspectionChecker>((anonymous namespace)::ExprInspectionChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 444 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 444 | CHECK1::_register(checker, mgr); | 521 | 444 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 444 | } |
ExprInspectionChecker.cpp:void clang::ento::Checker<clang::ento::check::DeadSymbols, clang::ento::check::EndAnalysis>::_register<(anonymous namespace)::ExprInspectionChecker>((anonymous namespace)::ExprInspectionChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 444 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 444 | CHECK1::_register(checker, mgr); | 521 | 444 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 444 | } |
FuchsiaHandleChecker.cpp:void clang::ento::Checker<clang::ento::check::PostCall, clang::ento::check::PreCall, clang::ento::check::DeadSymbols, clang::ento::check::PointerEscape, clang::ento::eval::Assume>::_register<(anonymous namespace)::FuchsiaHandleChecker>((anonymous namespace)::FuchsiaHandleChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 1 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 1 | CHECK1::_register(checker, mgr); | 521 | 1 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 1 | } |
FuchsiaHandleChecker.cpp:void clang::ento::Checker<clang::ento::check::PreCall, clang::ento::check::DeadSymbols, clang::ento::check::PointerEscape, clang::ento::eval::Assume>::_register<(anonymous namespace)::FuchsiaHandleChecker>((anonymous namespace)::FuchsiaHandleChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 1 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 1 | CHECK1::_register(checker, mgr); | 521 | 1 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 1 | } |
FuchsiaHandleChecker.cpp:void clang::ento::Checker<clang::ento::check::DeadSymbols, clang::ento::check::PointerEscape, clang::ento::eval::Assume>::_register<(anonymous namespace)::FuchsiaHandleChecker>((anonymous namespace)::FuchsiaHandleChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 1 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 1 | CHECK1::_register(checker, mgr); | 521 | 1 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 1 | } |
FuchsiaHandleChecker.cpp:void clang::ento::Checker<clang::ento::check::PointerEscape, clang::ento::eval::Assume>::_register<(anonymous namespace)::FuchsiaHandleChecker>((anonymous namespace)::FuchsiaHandleChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 1 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 1 | CHECK1::_register(checker, mgr); | 521 | 1 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 1 | } |
GenericTaintChecker.cpp:void clang::ento::Checker<clang::ento::check::PreCall, clang::ento::check::PostCall>::_register<(anonymous namespace)::GenericTaintChecker>((anonymous namespace)::GenericTaintChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 27 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 27 | CHECK1::_register(checker, mgr); | 521 | 27 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 27 | } |
InnerPointerChecker.cpp:void clang::ento::Checker<clang::ento::check::DeadSymbols, clang::ento::check::PostCall>::_register<(anonymous namespace)::InnerPointerChecker>((anonymous namespace)::InnerPointerChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 66 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 66 | CHECK1::_register(checker, mgr); | 521 | 66 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 66 | } |
InvalidatedIteratorChecker.cpp:void clang::ento::Checker<clang::ento::check::PreCall, clang::ento::check::PreStmt<clang::UnaryOperator>, clang::ento::check::PreStmt<clang::BinaryOperator>, clang::ento::check::PreStmt<clang::ArraySubscriptExpr>, clang::ento::check::PreStmt<clang::MemberExpr> >::_register<(anonymous namespace)::InvalidatedIteratorChecker>((anonymous namespace)::InvalidatedIteratorChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 2 | CHECK1::_register(checker, mgr); | 521 | 2 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 2 | } |
InvalidatedIteratorChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::UnaryOperator>, clang::ento::check::PreStmt<clang::BinaryOperator>, clang::ento::check::PreStmt<clang::ArraySubscriptExpr>, clang::ento::check::PreStmt<clang::MemberExpr> >::_register<(anonymous namespace)::InvalidatedIteratorChecker>((anonymous namespace)::InvalidatedIteratorChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 2 | CHECK1::_register(checker, mgr); | 521 | 2 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 2 | } |
InvalidatedIteratorChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::BinaryOperator>, clang::ento::check::PreStmt<clang::ArraySubscriptExpr>, clang::ento::check::PreStmt<clang::MemberExpr> >::_register<(anonymous namespace)::InvalidatedIteratorChecker>((anonymous namespace)::InvalidatedIteratorChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 2 | CHECK1::_register(checker, mgr); | 521 | 2 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 2 | } |
InvalidatedIteratorChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::ArraySubscriptExpr>, clang::ento::check::PreStmt<clang::MemberExpr> >::_register<(anonymous namespace)::InvalidatedIteratorChecker>((anonymous namespace)::InvalidatedIteratorChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 2 | CHECK1::_register(checker, mgr); | 521 | 2 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 2 | } |
InvalidPtrChecker.cpp:void clang::ento::Checker<clang::ento::check::Location, clang::ento::check::BeginFunction, clang::ento::check::PostCall>::_register<(anonymous namespace)::InvalidPtrChecker>((anonymous namespace)::InvalidPtrChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 11 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 11 | CHECK1::_register(checker, mgr); | 521 | 11 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 11 | } |
InvalidPtrChecker.cpp:void clang::ento::Checker<clang::ento::check::BeginFunction, clang::ento::check::PostCall>::_register<(anonymous namespace)::InvalidPtrChecker>((anonymous namespace)::InvalidPtrChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 11 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 11 | CHECK1::_register(checker, mgr); | 521 | 11 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 11 | } |
IteratorModeling.cpp:void clang::ento::Checker<clang::ento::check::PostCall, clang::ento::check::PostStmt<clang::UnaryOperator>, clang::ento::check::PostStmt<clang::BinaryOperator>, clang::ento::check::PostStmt<clang::MaterializeTemporaryExpr>, clang::ento::check::Bind, clang::ento::check::LiveSymbols, clang::ento::check::DeadSymbols>::_register<(anonymous namespace)::IteratorModeling>((anonymous namespace)::IteratorModeling*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 19 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 19 | CHECK1::_register(checker, mgr); | 521 | 19 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 19 | } |
IteratorModeling.cpp:void clang::ento::Checker<clang::ento::check::PostStmt<clang::UnaryOperator>, clang::ento::check::PostStmt<clang::BinaryOperator>, clang::ento::check::PostStmt<clang::MaterializeTemporaryExpr>, clang::ento::check::Bind, clang::ento::check::LiveSymbols, clang::ento::check::DeadSymbols>::_register<(anonymous namespace)::IteratorModeling>((anonymous namespace)::IteratorModeling*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 19 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 19 | CHECK1::_register(checker, mgr); | 521 | 19 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 19 | } |
IteratorModeling.cpp:void clang::ento::Checker<clang::ento::check::PostStmt<clang::BinaryOperator>, clang::ento::check::PostStmt<clang::MaterializeTemporaryExpr>, clang::ento::check::Bind, clang::ento::check::LiveSymbols, clang::ento::check::DeadSymbols>::_register<(anonymous namespace)::IteratorModeling>((anonymous namespace)::IteratorModeling*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 19 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 19 | CHECK1::_register(checker, mgr); | 521 | 19 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 19 | } |
IteratorModeling.cpp:void clang::ento::Checker<clang::ento::check::PostStmt<clang::MaterializeTemporaryExpr>, clang::ento::check::Bind, clang::ento::check::LiveSymbols, clang::ento::check::DeadSymbols>::_register<(anonymous namespace)::IteratorModeling>((anonymous namespace)::IteratorModeling*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 19 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 19 | CHECK1::_register(checker, mgr); | 521 | 19 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 19 | } |
IteratorModeling.cpp:void clang::ento::Checker<clang::ento::check::Bind, clang::ento::check::LiveSymbols, clang::ento::check::DeadSymbols>::_register<(anonymous namespace)::IteratorModeling>((anonymous namespace)::IteratorModeling*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 19 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 19 | CHECK1::_register(checker, mgr); | 521 | 19 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 19 | } |
IteratorModeling.cpp:void clang::ento::Checker<clang::ento::check::LiveSymbols, clang::ento::check::DeadSymbols>::_register<(anonymous namespace)::IteratorModeling>((anonymous namespace)::IteratorModeling*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 19 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 19 | CHECK1::_register(checker, mgr); | 521 | 19 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 19 | } |
IteratorRangeChecker.cpp:void clang::ento::Checker<clang::ento::check::PreCall, clang::ento::check::PreStmt<clang::UnaryOperator>, clang::ento::check::PreStmt<clang::BinaryOperator>, clang::ento::check::PreStmt<clang::ArraySubscriptExpr>, clang::ento::check::PreStmt<clang::MemberExpr> >::_register<(anonymous namespace)::IteratorRangeChecker>((anonymous namespace)::IteratorRangeChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 2 | CHECK1::_register(checker, mgr); | 521 | 2 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 2 | } |
IteratorRangeChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::UnaryOperator>, clang::ento::check::PreStmt<clang::BinaryOperator>, clang::ento::check::PreStmt<clang::ArraySubscriptExpr>, clang::ento::check::PreStmt<clang::MemberExpr> >::_register<(anonymous namespace)::IteratorRangeChecker>((anonymous namespace)::IteratorRangeChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 2 | CHECK1::_register(checker, mgr); | 521 | 2 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 2 | } |
IteratorRangeChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::BinaryOperator>, clang::ento::check::PreStmt<clang::ArraySubscriptExpr>, clang::ento::check::PreStmt<clang::MemberExpr> >::_register<(anonymous namespace)::IteratorRangeChecker>((anonymous namespace)::IteratorRangeChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 2 | CHECK1::_register(checker, mgr); | 521 | 2 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 2 | } |
IteratorRangeChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::ArraySubscriptExpr>, clang::ento::check::PreStmt<clang::MemberExpr> >::_register<(anonymous namespace)::IteratorRangeChecker>((anonymous namespace)::IteratorRangeChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 2 | CHECK1::_register(checker, mgr); | 521 | 2 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 2 | } |
LLVMConventionsChecker.cpp:void clang::ento::Checker<clang::ento::check::ASTDecl<clang::CXXRecordDecl>, clang::ento::check::ASTCodeBody>::_register<(anonymous namespace)::LLVMConventionsChecker>((anonymous namespace)::LLVMConventionsChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 1 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 1 | CHECK1::_register(checker, mgr); | 521 | 1 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 1 | } |
LocalizationChecker.cpp:void clang::ento::Checker<clang::ento::check::PreCall, clang::ento::check::PostCall, clang::ento::check::PreObjCMessage, clang::ento::check::PostObjCMessage, clang::ento::check::PostStmt<clang::ObjCStringLiteral> >::_register<(anonymous namespace)::NonLocalizedStringChecker>((anonymous namespace)::NonLocalizedStringChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 2 | CHECK1::_register(checker, mgr); | 521 | 2 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 2 | } |
LocalizationChecker.cpp:void clang::ento::Checker<clang::ento::check::PostCall, clang::ento::check::PreObjCMessage, clang::ento::check::PostObjCMessage, clang::ento::check::PostStmt<clang::ObjCStringLiteral> >::_register<(anonymous namespace)::NonLocalizedStringChecker>((anonymous namespace)::NonLocalizedStringChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 2 | CHECK1::_register(checker, mgr); | 521 | 2 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 2 | } |
LocalizationChecker.cpp:void clang::ento::Checker<clang::ento::check::PreObjCMessage, clang::ento::check::PostObjCMessage, clang::ento::check::PostStmt<clang::ObjCStringLiteral> >::_register<(anonymous namespace)::NonLocalizedStringChecker>((anonymous namespace)::NonLocalizedStringChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 2 | CHECK1::_register(checker, mgr); | 521 | 2 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 2 | } |
LocalizationChecker.cpp:void clang::ento::Checker<clang::ento::check::PostObjCMessage, clang::ento::check::PostStmt<clang::ObjCStringLiteral> >::_register<(anonymous namespace)::NonLocalizedStringChecker>((anonymous namespace)::NonLocalizedStringChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 2 | CHECK1::_register(checker, mgr); | 521 | 2 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 2 | } |
MacOSKeychainAPIChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::CallExpr>, clang::ento::check::PostStmt<clang::CallExpr>, clang::ento::check::DeadSymbols, clang::ento::check::PointerEscape, clang::ento::eval::Assume>::_register<(anonymous namespace)::MacOSKeychainAPIChecker>((anonymous namespace)::MacOSKeychainAPIChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 48 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 48 | CHECK1::_register(checker, mgr); | 521 | 48 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 48 | } |
MacOSKeychainAPIChecker.cpp:void clang::ento::Checker<clang::ento::check::PostStmt<clang::CallExpr>, clang::ento::check::DeadSymbols, clang::ento::check::PointerEscape, clang::ento::eval::Assume>::_register<(anonymous namespace)::MacOSKeychainAPIChecker>((anonymous namespace)::MacOSKeychainAPIChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 48 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 48 | CHECK1::_register(checker, mgr); | 521 | 48 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 48 | } |
MacOSKeychainAPIChecker.cpp:void clang::ento::Checker<clang::ento::check::DeadSymbols, clang::ento::check::PointerEscape, clang::ento::eval::Assume>::_register<(anonymous namespace)::MacOSKeychainAPIChecker>((anonymous namespace)::MacOSKeychainAPIChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 48 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 48 | CHECK1::_register(checker, mgr); | 521 | 48 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 48 | } |
MacOSKeychainAPIChecker.cpp:void clang::ento::Checker<clang::ento::check::PointerEscape, clang::ento::eval::Assume>::_register<(anonymous namespace)::MacOSKeychainAPIChecker>((anonymous namespace)::MacOSKeychainAPIChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 48 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 48 | CHECK1::_register(checker, mgr); | 521 | 48 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 48 | } |
MallocChecker.cpp:void clang::ento::Checker<clang::ento::check::DeadSymbols, clang::ento::check::PointerEscape, clang::ento::check::ConstPointerEscape, clang::ento::check::PreStmt<clang::ReturnStmt>, clang::ento::check::EndFunction, clang::ento::check::PreCall, clang::ento::check::PostCall, clang::ento::check::NewAllocator, clang::ento::check::PostStmt<clang::BlockExpr>, clang::ento::check::PostObjCMessage, clang::ento::check::Location, clang::ento::eval::Assume>::_register<(anonymous namespace)::MallocChecker>((anonymous namespace)::MallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 245 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 245 | CHECK1::_register(checker, mgr); | 521 | 245 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 245 | } |
MallocChecker.cpp:void clang::ento::Checker<clang::ento::check::PointerEscape, clang::ento::check::ConstPointerEscape, clang::ento::check::PreStmt<clang::ReturnStmt>, clang::ento::check::EndFunction, clang::ento::check::PreCall, clang::ento::check::PostCall, clang::ento::check::NewAllocator, clang::ento::check::PostStmt<clang::BlockExpr>, clang::ento::check::PostObjCMessage, clang::ento::check::Location, clang::ento::eval::Assume>::_register<(anonymous namespace)::MallocChecker>((anonymous namespace)::MallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 245 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 245 | CHECK1::_register(checker, mgr); | 521 | 245 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 245 | } |
MallocChecker.cpp:void clang::ento::Checker<clang::ento::check::ConstPointerEscape, clang::ento::check::PreStmt<clang::ReturnStmt>, clang::ento::check::EndFunction, clang::ento::check::PreCall, clang::ento::check::PostCall, clang::ento::check::NewAllocator, clang::ento::check::PostStmt<clang::BlockExpr>, clang::ento::check::PostObjCMessage, clang::ento::check::Location, clang::ento::eval::Assume>::_register<(anonymous namespace)::MallocChecker>((anonymous namespace)::MallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 245 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 245 | CHECK1::_register(checker, mgr); | 521 | 245 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 245 | } |
MallocChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::ReturnStmt>, clang::ento::check::EndFunction, clang::ento::check::PreCall, clang::ento::check::PostCall, clang::ento::check::NewAllocator, clang::ento::check::PostStmt<clang::BlockExpr>, clang::ento::check::PostObjCMessage, clang::ento::check::Location, clang::ento::eval::Assume>::_register<(anonymous namespace)::MallocChecker>((anonymous namespace)::MallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 245 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 245 | CHECK1::_register(checker, mgr); | 521 | 245 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 245 | } |
MallocChecker.cpp:void clang::ento::Checker<clang::ento::check::EndFunction, clang::ento::check::PreCall, clang::ento::check::PostCall, clang::ento::check::NewAllocator, clang::ento::check::PostStmt<clang::BlockExpr>, clang::ento::check::PostObjCMessage, clang::ento::check::Location, clang::ento::eval::Assume>::_register<(anonymous namespace)::MallocChecker>((anonymous namespace)::MallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 245 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 245 | CHECK1::_register(checker, mgr); | 521 | 245 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 245 | } |
MallocChecker.cpp:void clang::ento::Checker<clang::ento::check::PreCall, clang::ento::check::PostCall, clang::ento::check::NewAllocator, clang::ento::check::PostStmt<clang::BlockExpr>, clang::ento::check::PostObjCMessage, clang::ento::check::Location, clang::ento::eval::Assume>::_register<(anonymous namespace)::MallocChecker>((anonymous namespace)::MallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 245 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 245 | CHECK1::_register(checker, mgr); | 521 | 245 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 245 | } |
MallocChecker.cpp:void clang::ento::Checker<clang::ento::check::PostCall, clang::ento::check::NewAllocator, clang::ento::check::PostStmt<clang::BlockExpr>, clang::ento::check::PostObjCMessage, clang::ento::check::Location, clang::ento::eval::Assume>::_register<(anonymous namespace)::MallocChecker>((anonymous namespace)::MallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 245 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 245 | CHECK1::_register(checker, mgr); | 521 | 245 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 245 | } |
MallocChecker.cpp:void clang::ento::Checker<clang::ento::check::NewAllocator, clang::ento::check::PostStmt<clang::BlockExpr>, clang::ento::check::PostObjCMessage, clang::ento::check::Location, clang::ento::eval::Assume>::_register<(anonymous namespace)::MallocChecker>((anonymous namespace)::MallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 245 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 245 | CHECK1::_register(checker, mgr); | 521 | 245 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 245 | } |
MallocChecker.cpp:void clang::ento::Checker<clang::ento::check::PostStmt<clang::BlockExpr>, clang::ento::check::PostObjCMessage, clang::ento::check::Location, clang::ento::eval::Assume>::_register<(anonymous namespace)::MallocChecker>((anonymous namespace)::MallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 245 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 245 | CHECK1::_register(checker, mgr); | 521 | 245 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 245 | } |
MallocChecker.cpp:void clang::ento::Checker<clang::ento::check::PostObjCMessage, clang::ento::check::Location, clang::ento::eval::Assume>::_register<(anonymous namespace)::MallocChecker>((anonymous namespace)::MallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 245 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 245 | CHECK1::_register(checker, mgr); | 521 | 245 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 245 | } |
MallocChecker.cpp:void clang::ento::Checker<clang::ento::check::Location, clang::ento::eval::Assume>::_register<(anonymous namespace)::MallocChecker>((anonymous namespace)::MallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 245 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 245 | CHECK1::_register(checker, mgr); | 521 | 245 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 245 | } |
MismatchedIteratorChecker.cpp:void clang::ento::Checker<clang::ento::check::PreCall, clang::ento::check::PreStmt<clang::BinaryOperator> >::_register<(anonymous namespace)::MismatchedIteratorChecker>((anonymous namespace)::MismatchedIteratorChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 2 | CHECK1::_register(checker, mgr); | 521 | 2 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 2 | } |
MIGChecker.cpp:void clang::ento::Checker<clang::ento::check::PostCall, clang::ento::check::PreStmt<clang::ReturnStmt>, clang::ento::check::EndFunction>::_register<(anonymous namespace)::MIGChecker>((anonymous namespace)::MIGChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 47 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 47 | CHECK1::_register(checker, mgr); | 521 | 47 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 47 | } |
MIGChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::ReturnStmt>, clang::ento::check::EndFunction>::_register<(anonymous namespace)::MIGChecker>((anonymous namespace)::MIGChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 47 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 47 | CHECK1::_register(checker, mgr); | 521 | 47 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 47 | } |
MoveChecker.cpp:void clang::ento::Checker<clang::ento::check::PreCall, clang::ento::check::PostCall, clang::ento::check::DeadSymbols, clang::ento::check::RegionChanges>::_register<(anonymous namespace)::MoveChecker>((anonymous namespace)::MoveChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 78 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 78 | CHECK1::_register(checker, mgr); | 521 | 78 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 78 | } |
MoveChecker.cpp:void clang::ento::Checker<clang::ento::check::PostCall, clang::ento::check::DeadSymbols, clang::ento::check::RegionChanges>::_register<(anonymous namespace)::MoveChecker>((anonymous namespace)::MoveChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 78 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 78 | CHECK1::_register(checker, mgr); | 521 | 78 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 78 | } |
MoveChecker.cpp:void clang::ento::Checker<clang::ento::check::DeadSymbols, clang::ento::check::RegionChanges>::_register<(anonymous namespace)::MoveChecker>((anonymous namespace)::MoveChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 78 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 78 | CHECK1::_register(checker, mgr); | 521 | 78 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 78 | } |
void clang::ento::Checker<clang::ento::check::PreCall, clang::ento::check::DeadSymbols>::_register<clang::ento::mpi::MPIChecker>(clang::ento::mpi::MPIChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 3 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 3 | CHECK1::_register(checker, mgr); | 521 | 3 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 3 | } |
NSErrorChecker.cpp:void clang::ento::Checker<clang::ento::check::Location, clang::ento::check::Event<clang::ento::ImplicitNullDerefEvent> >::_register<(anonymous namespace)::NSOrCFErrorDerefChecker>((anonymous namespace)::NSOrCFErrorDerefChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 49 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 49 | CHECK1::_register(checker, mgr); | 521 | 49 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 49 | } |
NoReturnFunctionChecker.cpp:void clang::ento::Checker<clang::ento::check::PostCall, clang::ento::check::PostObjCMessage>::_register<(anonymous namespace)::NoReturnFunctionChecker>((anonymous namespace)::NoReturnFunctionChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 1.29k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 1.29k | CHECK1::_register(checker, mgr); | 521 | 1.29k | Checker<CHECKs...>::_register(checker, mgr); | 522 | 1.29k | } |
NonNullParamChecker.cpp:void clang::ento::Checker<clang::ento::check::PreCall, clang::ento::check::BeginFunction, clang::ento::EventDispatcher<clang::ento::ImplicitNullDerefEvent> >::_register<(anonymous namespace)::NonNullParamChecker>((anonymous namespace)::NonNullParamChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 1.28k | CHECK1::_register(checker, mgr); | 521 | 1.28k | Checker<CHECKs...>::_register(checker, mgr); | 522 | 1.28k | } |
NonNullParamChecker.cpp:void clang::ento::Checker<clang::ento::check::BeginFunction, clang::ento::EventDispatcher<clang::ento::ImplicitNullDerefEvent> >::_register<(anonymous namespace)::NonNullParamChecker>((anonymous namespace)::NonNullParamChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 1.28k | CHECK1::_register(checker, mgr); | 521 | 1.28k | Checker<CHECKs...>::_register(checker, mgr); | 522 | 1.28k | } |
NullabilityChecker.cpp:void clang::ento::Checker<clang::ento::check::Bind, clang::ento::check::PreCall, clang::ento::check::PreStmt<clang::ReturnStmt>, clang::ento::check::PostCall, clang::ento::check::PostStmt<clang::ExplicitCastExpr>, clang::ento::check::PostObjCMessage, clang::ento::check::DeadSymbols, clang::ento::eval::Assume, clang::ento::check::Location, clang::ento::check::Event<clang::ento::ImplicitNullDerefEvent>, clang::ento::check::BeginFunction>::_register<(anonymous namespace)::NullabilityChecker>((anonymous namespace)::NullabilityChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 52 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 52 | CHECK1::_register(checker, mgr); | 521 | 52 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 52 | } |
NullabilityChecker.cpp:void clang::ento::Checker<clang::ento::check::PreCall, clang::ento::check::PreStmt<clang::ReturnStmt>, clang::ento::check::PostCall, clang::ento::check::PostStmt<clang::ExplicitCastExpr>, clang::ento::check::PostObjCMessage, clang::ento::check::DeadSymbols, clang::ento::eval::Assume, clang::ento::check::Location, clang::ento::check::Event<clang::ento::ImplicitNullDerefEvent>, clang::ento::check::BeginFunction>::_register<(anonymous namespace)::NullabilityChecker>((anonymous namespace)::NullabilityChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 52 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 52 | CHECK1::_register(checker, mgr); | 521 | 52 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 52 | } |
NullabilityChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::ReturnStmt>, clang::ento::check::PostCall, clang::ento::check::PostStmt<clang::ExplicitCastExpr>, clang::ento::check::PostObjCMessage, clang::ento::check::DeadSymbols, clang::ento::eval::Assume, clang::ento::check::Location, clang::ento::check::Event<clang::ento::ImplicitNullDerefEvent>, clang::ento::check::BeginFunction>::_register<(anonymous namespace)::NullabilityChecker>((anonymous namespace)::NullabilityChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 52 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 52 | CHECK1::_register(checker, mgr); | 521 | 52 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 52 | } |
NullabilityChecker.cpp:void clang::ento::Checker<clang::ento::check::PostCall, clang::ento::check::PostStmt<clang::ExplicitCastExpr>, clang::ento::check::PostObjCMessage, clang::ento::check::DeadSymbols, clang::ento::eval::Assume, clang::ento::check::Location, clang::ento::check::Event<clang::ento::ImplicitNullDerefEvent>, clang::ento::check::BeginFunction>::_register<(anonymous namespace)::NullabilityChecker>((anonymous namespace)::NullabilityChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 52 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 52 | CHECK1::_register(checker, mgr); | 521 | 52 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 52 | } |
NullabilityChecker.cpp:void clang::ento::Checker<clang::ento::check::PostStmt<clang::ExplicitCastExpr>, clang::ento::check::PostObjCMessage, clang::ento::check::DeadSymbols, clang::ento::eval::Assume, clang::ento::check::Location, clang::ento::check::Event<clang::ento::ImplicitNullDerefEvent>, clang::ento::check::BeginFunction>::_register<(anonymous namespace)::NullabilityChecker>((anonymous namespace)::NullabilityChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 52 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 52 | CHECK1::_register(checker, mgr); | 521 | 52 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 52 | } |
NullabilityChecker.cpp:void clang::ento::Checker<clang::ento::check::PostObjCMessage, clang::ento::check::DeadSymbols, clang::ento::eval::Assume, clang::ento::check::Location, clang::ento::check::Event<clang::ento::ImplicitNullDerefEvent>, clang::ento::check::BeginFunction>::_register<(anonymous namespace)::NullabilityChecker>((anonymous namespace)::NullabilityChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 52 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 52 | CHECK1::_register(checker, mgr); | 521 | 52 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 52 | } |
NullabilityChecker.cpp:void clang::ento::Checker<clang::ento::check::DeadSymbols, clang::ento::eval::Assume, clang::ento::check::Location, clang::ento::check::Event<clang::ento::ImplicitNullDerefEvent>, clang::ento::check::BeginFunction>::_register<(anonymous namespace)::NullabilityChecker>((anonymous namespace)::NullabilityChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 52 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 52 | CHECK1::_register(checker, mgr); | 521 | 52 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 52 | } |
NullabilityChecker.cpp:void clang::ento::Checker<clang::ento::eval::Assume, clang::ento::check::Location, clang::ento::check::Event<clang::ento::ImplicitNullDerefEvent>, clang::ento::check::BeginFunction>::_register<(anonymous namespace)::NullabilityChecker>((anonymous namespace)::NullabilityChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 52 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 52 | CHECK1::_register(checker, mgr); | 521 | 52 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 52 | } |
NullabilityChecker.cpp:void clang::ento::Checker<clang::ento::check::Location, clang::ento::check::Event<clang::ento::ImplicitNullDerefEvent>, clang::ento::check::BeginFunction>::_register<(anonymous namespace)::NullabilityChecker>((anonymous namespace)::NullabilityChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 52 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 52 | CHECK1::_register(checker, mgr); | 521 | 52 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 52 | } |
NullabilityChecker.cpp:void clang::ento::Checker<clang::ento::check::Event<clang::ento::ImplicitNullDerefEvent>, clang::ento::check::BeginFunction>::_register<(anonymous namespace)::NullabilityChecker>((anonymous namespace)::NullabilityChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 52 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 52 | CHECK1::_register(checker, mgr); | 521 | 52 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 52 | } |
ObjCContainersChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::CallExpr>, clang::ento::check::PostStmt<clang::CallExpr>, clang::ento::check::PointerEscape>::_register<(anonymous namespace)::ObjCContainersChecker>((anonymous namespace)::ObjCContainersChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 47 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 47 | CHECK1::_register(checker, mgr); | 521 | 47 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 47 | } |
ObjCContainersChecker.cpp:void clang::ento::Checker<clang::ento::check::PostStmt<clang::CallExpr>, clang::ento::check::PointerEscape>::_register<(anonymous namespace)::ObjCContainersChecker>((anonymous namespace)::ObjCContainersChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 47 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 47 | CHECK1::_register(checker, mgr); | 521 | 47 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 47 | } |
ObjCSelfInitChecker.cpp:void clang::ento::Checker<clang::ento::check::PostObjCMessage, clang::ento::check::PostStmt<clang::ObjCIvarRefExpr>, clang::ento::check::PreStmt<clang::ReturnStmt>, clang::ento::check::PreCall, clang::ento::check::PostCall, clang::ento::check::Location, clang::ento::check::Bind>::_register<(anonymous namespace)::ObjCSelfInitChecker>((anonymous namespace)::ObjCSelfInitChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 50 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 50 | CHECK1::_register(checker, mgr); | 521 | 50 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 50 | } |
ObjCSelfInitChecker.cpp:void clang::ento::Checker<clang::ento::check::PostStmt<clang::ObjCIvarRefExpr>, clang::ento::check::PreStmt<clang::ReturnStmt>, clang::ento::check::PreCall, clang::ento::check::PostCall, clang::ento::check::Location, clang::ento::check::Bind>::_register<(anonymous namespace)::ObjCSelfInitChecker>((anonymous namespace)::ObjCSelfInitChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 50 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 50 | CHECK1::_register(checker, mgr); | 521 | 50 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 50 | } |
ObjCSelfInitChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::ReturnStmt>, clang::ento::check::PreCall, clang::ento::check::PostCall, clang::ento::check::Location, clang::ento::check::Bind>::_register<(anonymous namespace)::ObjCSelfInitChecker>((anonymous namespace)::ObjCSelfInitChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 50 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 50 | CHECK1::_register(checker, mgr); | 521 | 50 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 50 | } |
ObjCSelfInitChecker.cpp:void clang::ento::Checker<clang::ento::check::PreCall, clang::ento::check::PostCall, clang::ento::check::Location, clang::ento::check::Bind>::_register<(anonymous namespace)::ObjCSelfInitChecker>((anonymous namespace)::ObjCSelfInitChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 50 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 50 | CHECK1::_register(checker, mgr); | 521 | 50 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 50 | } |
ObjCSelfInitChecker.cpp:void clang::ento::Checker<clang::ento::check::PostCall, clang::ento::check::Location, clang::ento::check::Bind>::_register<(anonymous namespace)::ObjCSelfInitChecker>((anonymous namespace)::ObjCSelfInitChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 50 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 50 | CHECK1::_register(checker, mgr); | 521 | 50 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 50 | } |
ObjCSelfInitChecker.cpp:void clang::ento::Checker<clang::ento::check::Location, clang::ento::check::Bind>::_register<(anonymous namespace)::ObjCSelfInitChecker>((anonymous namespace)::ObjCSelfInitChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 50 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 50 | CHECK1::_register(checker, mgr); | 521 | 50 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 50 | } |
ObjCSuperDeallocChecker.cpp:void clang::ento::Checker<clang::ento::check::PostObjCMessage, clang::ento::check::PreObjCMessage, clang::ento::check::PreCall, clang::ento::check::Location>::_register<(anonymous namespace)::ObjCSuperDeallocChecker>((anonymous namespace)::ObjCSuperDeallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 48 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 48 | CHECK1::_register(checker, mgr); | 521 | 48 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 48 | } |
ObjCSuperDeallocChecker.cpp:void clang::ento::Checker<clang::ento::check::PreObjCMessage, clang::ento::check::PreCall, clang::ento::check::Location>::_register<(anonymous namespace)::ObjCSuperDeallocChecker>((anonymous namespace)::ObjCSuperDeallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 48 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 48 | CHECK1::_register(checker, mgr); | 521 | 48 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 48 | } |
ObjCSuperDeallocChecker.cpp:void clang::ento::Checker<clang::ento::check::PreCall, clang::ento::check::Location>::_register<(anonymous namespace)::ObjCSuperDeallocChecker>((anonymous namespace)::ObjCSuperDeallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 48 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 48 | CHECK1::_register(checker, mgr); | 521 | 48 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 48 | } |
PointerArithChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::BinaryOperator>, clang::ento::check::PreStmt<clang::UnaryOperator>, clang::ento::check::PreStmt<clang::ArraySubscriptExpr>, clang::ento::check::PreStmt<clang::CastExpr>, clang::ento::check::PostStmt<clang::CastExpr>, clang::ento::check::PostStmt<clang::CXXNewExpr>, clang::ento::check::PostStmt<clang::CallExpr>, clang::ento::check::DeadSymbols>::_register<(anonymous namespace)::PointerArithChecker>((anonymous namespace)::PointerArithChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 79 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 79 | CHECK1::_register(checker, mgr); | 521 | 79 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 79 | } |
PointerArithChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::UnaryOperator>, clang::ento::check::PreStmt<clang::ArraySubscriptExpr>, clang::ento::check::PreStmt<clang::CastExpr>, clang::ento::check::PostStmt<clang::CastExpr>, clang::ento::check::PostStmt<clang::CXXNewExpr>, clang::ento::check::PostStmt<clang::CallExpr>, clang::ento::check::DeadSymbols>::_register<(anonymous namespace)::PointerArithChecker>((anonymous namespace)::PointerArithChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 79 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 79 | CHECK1::_register(checker, mgr); | 521 | 79 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 79 | } |
PointerArithChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::ArraySubscriptExpr>, clang::ento::check::PreStmt<clang::CastExpr>, clang::ento::check::PostStmt<clang::CastExpr>, clang::ento::check::PostStmt<clang::CXXNewExpr>, clang::ento::check::PostStmt<clang::CallExpr>, clang::ento::check::DeadSymbols>::_register<(anonymous namespace)::PointerArithChecker>((anonymous namespace)::PointerArithChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 79 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 79 | CHECK1::_register(checker, mgr); | 521 | 79 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 79 | } |
PointerArithChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::CastExpr>, clang::ento::check::PostStmt<clang::CastExpr>, clang::ento::check::PostStmt<clang::CXXNewExpr>, clang::ento::check::PostStmt<clang::CallExpr>, clang::ento::check::DeadSymbols>::_register<(anonymous namespace)::PointerArithChecker>((anonymous namespace)::PointerArithChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 79 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 79 | CHECK1::_register(checker, mgr); | 521 | 79 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 79 | } |
PointerArithChecker.cpp:void clang::ento::Checker<clang::ento::check::PostStmt<clang::CastExpr>, clang::ento::check::PostStmt<clang::CXXNewExpr>, clang::ento::check::PostStmt<clang::CallExpr>, clang::ento::check::DeadSymbols>::_register<(anonymous namespace)::PointerArithChecker>((anonymous namespace)::PointerArithChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 79 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 79 | CHECK1::_register(checker, mgr); | 521 | 79 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 79 | } |
PointerArithChecker.cpp:void clang::ento::Checker<clang::ento::check::PostStmt<clang::CXXNewExpr>, clang::ento::check::PostStmt<clang::CallExpr>, clang::ento::check::DeadSymbols>::_register<(anonymous namespace)::PointerArithChecker>((anonymous namespace)::PointerArithChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 79 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 79 | CHECK1::_register(checker, mgr); | 521 | 79 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 79 | } |
PointerArithChecker.cpp:void clang::ento::Checker<clang::ento::check::PostStmt<clang::CallExpr>, clang::ento::check::DeadSymbols>::_register<(anonymous namespace)::PointerArithChecker>((anonymous namespace)::PointerArithChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 79 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 79 | CHECK1::_register(checker, mgr); | 521 | 79 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 79 | } |
PthreadLockChecker.cpp:void clang::ento::Checker<clang::ento::check::PostCall, clang::ento::check::DeadSymbols, clang::ento::check::RegionChanges>::_register<(anonymous namespace)::PthreadLockChecker>((anonymous namespace)::PthreadLockChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 81 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 81 | CHECK1::_register(checker, mgr); | 521 | 81 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 81 | } |
PthreadLockChecker.cpp:void clang::ento::Checker<clang::ento::check::DeadSymbols, clang::ento::check::RegionChanges>::_register<(anonymous namespace)::PthreadLockChecker>((anonymous namespace)::PthreadLockChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 81 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 81 | CHECK1::_register(checker, mgr); | 521 | 81 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 81 | } |
void clang::ento::Checker<clang::ento::check::Bind, clang::ento::check::DeadSymbols, clang::ento::check::BeginFunction, clang::ento::check::EndFunction, clang::ento::check::PostStmt<clang::BlockExpr>, clang::ento::check::PostStmt<clang::CastExpr>, clang::ento::check::PostStmt<clang::ObjCArrayLiteral>, clang::ento::check::PostStmt<clang::ObjCDictionaryLiteral>, clang::ento::check::PostStmt<clang::ObjCBoxedExpr>, clang::ento::check::PostStmt<clang::ObjCIvarRefExpr>, clang::ento::check::PostCall, clang::ento::check::RegionChanges, clang::ento::eval::Assume, clang::ento::eval::Call>::_register<clang::ento::retaincountchecker::RetainCountChecker>(clang::ento::retaincountchecker::RetainCountChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 96 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 96 | CHECK1::_register(checker, mgr); | 521 | 96 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 96 | } |
void clang::ento::Checker<clang::ento::check::DeadSymbols, clang::ento::check::BeginFunction, clang::ento::check::EndFunction, clang::ento::check::PostStmt<clang::BlockExpr>, clang::ento::check::PostStmt<clang::CastExpr>, clang::ento::check::PostStmt<clang::ObjCArrayLiteral>, clang::ento::check::PostStmt<clang::ObjCDictionaryLiteral>, clang::ento::check::PostStmt<clang::ObjCBoxedExpr>, clang::ento::check::PostStmt<clang::ObjCIvarRefExpr>, clang::ento::check::PostCall, clang::ento::check::RegionChanges, clang::ento::eval::Assume, clang::ento::eval::Call>::_register<clang::ento::retaincountchecker::RetainCountChecker>(clang::ento::retaincountchecker::RetainCountChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 96 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 96 | CHECK1::_register(checker, mgr); | 521 | 96 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 96 | } |
void clang::ento::Checker<clang::ento::check::BeginFunction, clang::ento::check::EndFunction, clang::ento::check::PostStmt<clang::BlockExpr>, clang::ento::check::PostStmt<clang::CastExpr>, clang::ento::check::PostStmt<clang::ObjCArrayLiteral>, clang::ento::check::PostStmt<clang::ObjCDictionaryLiteral>, clang::ento::check::PostStmt<clang::ObjCBoxedExpr>, clang::ento::check::PostStmt<clang::ObjCIvarRefExpr>, clang::ento::check::PostCall, clang::ento::check::RegionChanges, clang::ento::eval::Assume, clang::ento::eval::Call>::_register<clang::ento::retaincountchecker::RetainCountChecker>(clang::ento::retaincountchecker::RetainCountChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 96 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 96 | CHECK1::_register(checker, mgr); | 521 | 96 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 96 | } |
void clang::ento::Checker<clang::ento::check::EndFunction, clang::ento::check::PostStmt<clang::BlockExpr>, clang::ento::check::PostStmt<clang::CastExpr>, clang::ento::check::PostStmt<clang::ObjCArrayLiteral>, clang::ento::check::PostStmt<clang::ObjCDictionaryLiteral>, clang::ento::check::PostStmt<clang::ObjCBoxedExpr>, clang::ento::check::PostStmt<clang::ObjCIvarRefExpr>, clang::ento::check::PostCall, clang::ento::check::RegionChanges, clang::ento::eval::Assume, clang::ento::eval::Call>::_register<clang::ento::retaincountchecker::RetainCountChecker>(clang::ento::retaincountchecker::RetainCountChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 96 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 96 | CHECK1::_register(checker, mgr); | 521 | 96 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 96 | } |
void clang::ento::Checker<clang::ento::check::PostStmt<clang::BlockExpr>, clang::ento::check::PostStmt<clang::CastExpr>, clang::ento::check::PostStmt<clang::ObjCArrayLiteral>, clang::ento::check::PostStmt<clang::ObjCDictionaryLiteral>, clang::ento::check::PostStmt<clang::ObjCBoxedExpr>, clang::ento::check::PostStmt<clang::ObjCIvarRefExpr>, clang::ento::check::PostCall, clang::ento::check::RegionChanges, clang::ento::eval::Assume, clang::ento::eval::Call>::_register<clang::ento::retaincountchecker::RetainCountChecker>(clang::ento::retaincountchecker::RetainCountChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 96 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 96 | CHECK1::_register(checker, mgr); | 521 | 96 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 96 | } |
void clang::ento::Checker<clang::ento::check::PostStmt<clang::CastExpr>, clang::ento::check::PostStmt<clang::ObjCArrayLiteral>, clang::ento::check::PostStmt<clang::ObjCDictionaryLiteral>, clang::ento::check::PostStmt<clang::ObjCBoxedExpr>, clang::ento::check::PostStmt<clang::ObjCIvarRefExpr>, clang::ento::check::PostCall, clang::ento::check::RegionChanges, clang::ento::eval::Assume, clang::ento::eval::Call>::_register<clang::ento::retaincountchecker::RetainCountChecker>(clang::ento::retaincountchecker::RetainCountChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 96 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 96 | CHECK1::_register(checker, mgr); | 521 | 96 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 96 | } |
void clang::ento::Checker<clang::ento::check::PostStmt<clang::ObjCArrayLiteral>, clang::ento::check::PostStmt<clang::ObjCDictionaryLiteral>, clang::ento::check::PostStmt<clang::ObjCBoxedExpr>, clang::ento::check::PostStmt<clang::ObjCIvarRefExpr>, clang::ento::check::PostCall, clang::ento::check::RegionChanges, clang::ento::eval::Assume, clang::ento::eval::Call>::_register<clang::ento::retaincountchecker::RetainCountChecker>(clang::ento::retaincountchecker::RetainCountChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 96 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 96 | CHECK1::_register(checker, mgr); | 521 | 96 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 96 | } |
void clang::ento::Checker<clang::ento::check::PostStmt<clang::ObjCDictionaryLiteral>, clang::ento::check::PostStmt<clang::ObjCBoxedExpr>, clang::ento::check::PostStmt<clang::ObjCIvarRefExpr>, clang::ento::check::PostCall, clang::ento::check::RegionChanges, clang::ento::eval::Assume, clang::ento::eval::Call>::_register<clang::ento::retaincountchecker::RetainCountChecker>(clang::ento::retaincountchecker::RetainCountChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 96 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 96 | CHECK1::_register(checker, mgr); | 521 | 96 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 96 | } |
void clang::ento::Checker<clang::ento::check::PostStmt<clang::ObjCBoxedExpr>, clang::ento::check::PostStmt<clang::ObjCIvarRefExpr>, clang::ento::check::PostCall, clang::ento::check::RegionChanges, clang::ento::eval::Assume, clang::ento::eval::Call>::_register<clang::ento::retaincountchecker::RetainCountChecker>(clang::ento::retaincountchecker::RetainCountChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 96 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 96 | CHECK1::_register(checker, mgr); | 521 | 96 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 96 | } |
void clang::ento::Checker<clang::ento::check::PostStmt<clang::ObjCIvarRefExpr>, clang::ento::check::PostCall, clang::ento::check::RegionChanges, clang::ento::eval::Assume, clang::ento::eval::Call>::_register<clang::ento::retaincountchecker::RetainCountChecker>(clang::ento::retaincountchecker::RetainCountChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 96 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 96 | CHECK1::_register(checker, mgr); | 521 | 96 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 96 | } |
void clang::ento::Checker<clang::ento::check::PostCall, clang::ento::check::RegionChanges, clang::ento::eval::Assume, clang::ento::eval::Call>::_register<clang::ento::retaincountchecker::RetainCountChecker>(clang::ento::retaincountchecker::RetainCountChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 96 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 96 | CHECK1::_register(checker, mgr); | 521 | 96 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 96 | } |
void clang::ento::Checker<clang::ento::check::RegionChanges, clang::ento::eval::Assume, clang::ento::eval::Call>::_register<clang::ento::retaincountchecker::RetainCountChecker>(clang::ento::retaincountchecker::RetainCountChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 96 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 96 | CHECK1::_register(checker, mgr); | 521 | 96 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 96 | } |
void clang::ento::Checker<clang::ento::eval::Assume, clang::ento::eval::Call>::_register<clang::ento::retaincountchecker::RetainCountChecker>(clang::ento::retaincountchecker::RetainCountChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 96 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 96 | CHECK1::_register(checker, mgr); | 521 | 96 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 96 | } |
ReturnValueChecker.cpp:void clang::ento::Checker<clang::ento::check::PostCall, clang::ento::check::EndFunction>::_register<(anonymous namespace)::ReturnValueChecker>((anonymous namespace)::ReturnValueChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 42 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 42 | CHECK1::_register(checker, mgr); | 521 | 42 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 42 | } |
SimpleStreamChecker.cpp:void clang::ento::Checker<clang::ento::check::PostCall, clang::ento::check::PreCall, clang::ento::check::DeadSymbols, clang::ento::check::PointerEscape>::_register<(anonymous namespace)::SimpleStreamChecker>((anonymous namespace)::SimpleStreamChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 4 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 4 | CHECK1::_register(checker, mgr); | 521 | 4 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 4 | } |
SimpleStreamChecker.cpp:void clang::ento::Checker<clang::ento::check::PreCall, clang::ento::check::DeadSymbols, clang::ento::check::PointerEscape>::_register<(anonymous namespace)::SimpleStreamChecker>((anonymous namespace)::SimpleStreamChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 4 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 4 | CHECK1::_register(checker, mgr); | 521 | 4 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 4 | } |
SimpleStreamChecker.cpp:void clang::ento::Checker<clang::ento::check::DeadSymbols, clang::ento::check::PointerEscape>::_register<(anonymous namespace)::SimpleStreamChecker>((anonymous namespace)::SimpleStreamChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 4 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 4 | CHECK1::_register(checker, mgr); | 521 | 4 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 4 | } |
SmartPtrModeling.cpp:void clang::ento::Checker<clang::ento::eval::Call, clang::ento::check::DeadSymbols, clang::ento::check::RegionChanges, clang::ento::check::LiveSymbols>::_register<(anonymous namespace)::SmartPtrModeling>((anonymous namespace)::SmartPtrModeling*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 77 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 77 | CHECK1::_register(checker, mgr); | 521 | 77 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 77 | } |
SmartPtrModeling.cpp:void clang::ento::Checker<clang::ento::check::DeadSymbols, clang::ento::check::RegionChanges, clang::ento::check::LiveSymbols>::_register<(anonymous namespace)::SmartPtrModeling>((anonymous namespace)::SmartPtrModeling*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 77 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 77 | CHECK1::_register(checker, mgr); | 521 | 77 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 77 | } |
SmartPtrModeling.cpp:void clang::ento::Checker<clang::ento::check::RegionChanges, clang::ento::check::LiveSymbols>::_register<(anonymous namespace)::SmartPtrModeling>((anonymous namespace)::SmartPtrModeling*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 77 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 77 | CHECK1::_register(checker, mgr); | 521 | 77 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 77 | } |
StackAddrEscapeChecker.cpp:void clang::ento::Checker<clang::ento::check::PreCall, clang::ento::check::PreStmt<clang::ReturnStmt>, clang::ento::check::EndFunction>::_register<(anonymous namespace)::StackAddrEscapeChecker>((anonymous namespace)::StackAddrEscapeChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 1.28k | CHECK1::_register(checker, mgr); | 521 | 1.28k | Checker<CHECKs...>::_register(checker, mgr); | 522 | 1.28k | } |
StackAddrEscapeChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::ReturnStmt>, clang::ento::check::EndFunction>::_register<(anonymous namespace)::StackAddrEscapeChecker>((anonymous namespace)::StackAddrEscapeChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 1.28k | CHECK1::_register(checker, mgr); | 521 | 1.28k | Checker<CHECKs...>::_register(checker, mgr); | 522 | 1.28k | } |
StdLibraryFunctionsChecker.cpp:void clang::ento::Checker<clang::ento::check::PreCall, clang::ento::check::PostCall, clang::ento::eval::Call>::_register<(anonymous namespace)::StdLibraryFunctionsChecker>((anonymous namespace)::StdLibraryFunctionsChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 115 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 115 | CHECK1::_register(checker, mgr); | 521 | 115 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 115 | } |
StdLibraryFunctionsChecker.cpp:void clang::ento::Checker<clang::ento::check::PostCall, clang::ento::eval::Call>::_register<(anonymous namespace)::StdLibraryFunctionsChecker>((anonymous namespace)::StdLibraryFunctionsChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 115 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 115 | CHECK1::_register(checker, mgr); | 521 | 115 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 115 | } |
StreamChecker.cpp:void clang::ento::Checker<clang::ento::check::PreCall, clang::ento::eval::Call, clang::ento::check::DeadSymbols, clang::ento::check::PointerEscape>::_register<(anonymous namespace)::StreamChecker>((anonymous namespace)::StreamChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 17 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 17 | CHECK1::_register(checker, mgr); | 521 | 17 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 17 | } |
StreamChecker.cpp:void clang::ento::Checker<clang::ento::eval::Call, clang::ento::check::DeadSymbols, clang::ento::check::PointerEscape>::_register<(anonymous namespace)::StreamChecker>((anonymous namespace)::StreamChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 17 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 17 | CHECK1::_register(checker, mgr); | 521 | 17 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 17 | } |
StreamChecker.cpp:void clang::ento::Checker<clang::ento::check::DeadSymbols, clang::ento::check::PointerEscape>::_register<(anonymous namespace)::StreamChecker>((anonymous namespace)::StreamChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 17 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 17 | CHECK1::_register(checker, mgr); | 521 | 17 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 17 | } |
TestAfterDivZeroChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::BinaryOperator>, clang::ento::check::BranchCondition, clang::ento::check::EndFunction>::_register<(anonymous namespace)::TestAfterDivZeroChecker>((anonymous namespace)::TestAfterDivZeroChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 76 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 76 | CHECK1::_register(checker, mgr); | 521 | 76 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 76 | } |
TestAfterDivZeroChecker.cpp:void clang::ento::Checker<clang::ento::check::BranchCondition, clang::ento::check::EndFunction>::_register<(anonymous namespace)::TestAfterDivZeroChecker>((anonymous namespace)::TestAfterDivZeroChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 76 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 76 | CHECK1::_register(checker, mgr); | 521 | 76 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 76 | } |
TraversalChecker.cpp:void clang::ento::Checker<clang::ento::check::BranchCondition, clang::ento::check::BeginFunction, clang::ento::check::EndFunction>::_register<(anonymous namespace)::TraversalDumper>((anonymous namespace)::TraversalDumper*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 4 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 4 | CHECK1::_register(checker, mgr); | 521 | 4 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 4 | } |
TraversalChecker.cpp:void clang::ento::Checker<clang::ento::check::BeginFunction, clang::ento::check::EndFunction>::_register<(anonymous namespace)::TraversalDumper>((anonymous namespace)::TraversalDumper*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 4 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 4 | CHECK1::_register(checker, mgr); | 521 | 4 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 4 | } |
Unexecuted instantiation: TraversalChecker.cpp:void clang::ento::Checker<clang::ento::check::PreCall, clang::ento::check::PostCall>::_register<(anonymous namespace)::CallDumper>((anonymous namespace)::CallDumper*, clang::ento::CheckerManager&) TrustNonnullChecker.cpp:void clang::ento::Checker<clang::ento::check::PostCall, clang::ento::check::PostObjCMessage, clang::ento::check::DeadSymbols, clang::ento::eval::Assume>::_register<(anonymous namespace)::TrustNonnullChecker>((anonymous namespace)::TrustNonnullChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 41 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 41 | CHECK1::_register(checker, mgr); | 521 | 41 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 41 | } |
TrustNonnullChecker.cpp:void clang::ento::Checker<clang::ento::check::PostObjCMessage, clang::ento::check::DeadSymbols, clang::ento::eval::Assume>::_register<(anonymous namespace)::TrustNonnullChecker>((anonymous namespace)::TrustNonnullChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 41 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 41 | CHECK1::_register(checker, mgr); | 521 | 41 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 41 | } |
TrustNonnullChecker.cpp:void clang::ento::Checker<clang::ento::check::DeadSymbols, clang::ento::eval::Assume>::_register<(anonymous namespace)::TrustNonnullChecker>((anonymous namespace)::TrustNonnullChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 41 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 41 | CHECK1::_register(checker, mgr); | 521 | 41 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 41 | } |
UninitializedObjectChecker.cpp:void clang::ento::Checker<clang::ento::check::EndFunction, clang::ento::check::DeadSymbols>::_register<(anonymous namespace)::UninitializedObjectChecker>((anonymous namespace)::UninitializedObjectChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 14 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 14 | CHECK1::_register(checker, mgr); | 521 | 14 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 14 | } |
VforkChecker.cpp:void clang::ento::Checker<clang::ento::check::PreCall, clang::ento::check::PostCall, clang::ento::check::Bind, clang::ento::check::PreStmt<clang::ReturnStmt> >::_register<(anonymous namespace)::VforkChecker>((anonymous namespace)::VforkChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 68 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 68 | CHECK1::_register(checker, mgr); | 521 | 68 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 68 | } |
VforkChecker.cpp:void clang::ento::Checker<clang::ento::check::PostCall, clang::ento::check::Bind, clang::ento::check::PreStmt<clang::ReturnStmt> >::_register<(anonymous namespace)::VforkChecker>((anonymous namespace)::VforkChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 68 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 68 | CHECK1::_register(checker, mgr); | 521 | 68 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 68 | } |
VforkChecker.cpp:void clang::ento::Checker<clang::ento::check::Bind, clang::ento::check::PreStmt<clang::ReturnStmt> >::_register<(anonymous namespace)::VforkChecker>((anonymous namespace)::VforkChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 68 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 68 | CHECK1::_register(checker, mgr); | 521 | 68 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 68 | } |
VLASizeChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::DeclStmt>, clang::ento::check::PreStmt<clang::UnaryExprOrTypeTraitExpr> >::_register<(anonymous namespace)::VLASizeChecker>((anonymous namespace)::VLASizeChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 1.28k | CHECK1::_register(checker, mgr); | 521 | 1.28k | Checker<CHECKs...>::_register(checker, mgr); | 522 | 1.28k | } |
ValistChecker.cpp:void clang::ento::Checker<clang::ento::check::PreCall, clang::ento::check::PreStmt<clang::VAArgExpr>, clang::ento::check::DeadSymbols>::_register<(anonymous namespace)::ValistChecker>((anonymous namespace)::ValistChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 7 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 7 | CHECK1::_register(checker, mgr); | 521 | 7 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 7 | } |
ValistChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::VAArgExpr>, clang::ento::check::DeadSymbols>::_register<(anonymous namespace)::ValistChecker>((anonymous namespace)::ValistChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 7 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 7 | CHECK1::_register(checker, mgr); | 521 | 7 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 7 | } |
VirtualCallChecker.cpp:void clang::ento::Checker<clang::ento::check::BeginFunction, clang::ento::check::EndFunction, clang::ento::check::PreCall>::_register<(anonymous namespace)::VirtualCallChecker>((anonymous namespace)::VirtualCallChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 73 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 73 | CHECK1::_register(checker, mgr); | 521 | 73 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 73 | } |
VirtualCallChecker.cpp:void clang::ento::Checker<clang::ento::check::EndFunction, clang::ento::check::PreCall>::_register<(anonymous namespace)::VirtualCallChecker>((anonymous namespace)::VirtualCallChecker*, clang::ento::CheckerManager&) Line | Count | Source | 519 | 73 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 520 | 73 | CHECK1::_register(checker, mgr); | 521 | 73 | Checker<CHECKs...>::_register(checker, mgr); | 522 | 73 | } |
|
523 | | }; |
524 | | |
525 | | template <typename CHECK1> |
526 | | class Checker<CHECK1> : public CHECK1, public CheckerBase { |
527 | | public: |
528 | | template <typename CHECKER> |
529 | 27.5k | static void _register(CHECKER *checker, CheckerManager &mgr) { |
530 | 27.5k | CHECK1::_register(checker, mgr); |
531 | 27.5k | } AnalysisOrderChecker.cpp:void clang::ento::Checker<clang::ento::eval::Call>::_register<(anonymous namespace)::AnalysisOrderChecker>((anonymous namespace)::AnalysisOrderChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 12 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 12 | CHECK1::_register(checker, mgr); | 531 | 12 | } |
AnalyzerStatsChecker.cpp:void clang::ento::Checker<clang::ento::check::EndAnalysis>::_register<(anonymous namespace)::AnalyzerStatsChecker>((anonymous namespace)::AnalyzerStatsChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 2 | CHECK1::_register(checker, mgr); | 531 | 2 | } |
ArrayBoundChecker.cpp:void clang::ento::Checker<clang::ento::check::Location>::_register<(anonymous namespace)::ArrayBoundChecker>((anonymous namespace)::ArrayBoundChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 6 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 6 | CHECK1::_register(checker, mgr); | 531 | 6 | } |
ArrayBoundCheckerV2.cpp:void clang::ento::Checker<clang::ento::check::Location>::_register<(anonymous namespace)::ArrayBoundCheckerV2>((anonymous namespace)::ArrayBoundCheckerV2*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 11 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 11 | CHECK1::_register(checker, mgr); | 531 | 11 | } |
BasicObjCFoundationChecks.cpp:void clang::ento::Checker<clang::ento::EventDispatcher<clang::ento::ImplicitNullDerefEvent> >::_register<(anonymous namespace)::NilArgChecker>((anonymous namespace)::NilArgChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 53 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 53 | CHECK1::_register(checker, mgr); | 531 | 53 | } |
BasicObjCFoundationChecks.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::CallExpr> >::_register<(anonymous namespace)::CFNumberChecker>((anonymous namespace)::CFNumberChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 47 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 47 | CHECK1::_register(checker, mgr); | 531 | 47 | } |
BasicObjCFoundationChecks.cpp:void clang::ento::Checker<clang::ento::check::PreCall>::_register<(anonymous namespace)::CFRetainReleaseChecker>((anonymous namespace)::CFRetainReleaseChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 57 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 57 | CHECK1::_register(checker, mgr); | 531 | 57 | } |
BasicObjCFoundationChecks.cpp:void clang::ento::Checker<clang::ento::check::PreObjCMessage>::_register<(anonymous namespace)::ClassReleaseChecker>((anonymous namespace)::ClassReleaseChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 56 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 56 | CHECK1::_register(checker, mgr); | 531 | 56 | } |
BasicObjCFoundationChecks.cpp:void clang::ento::Checker<clang::ento::check::PreObjCMessage>::_register<(anonymous namespace)::VariadicMethodTypeChecker>((anonymous namespace)::VariadicMethodTypeChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 48 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 48 | CHECK1::_register(checker, mgr); | 531 | 48 | } |
BasicObjCFoundationChecks.cpp:void clang::ento::Checker<clang::ento::check::PointerEscape>::_register<(anonymous namespace)::ObjCLoopChecker>((anonymous namespace)::ObjCLoopChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 48 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 48 | CHECK1::_register(checker, mgr); | 531 | 48 | } |
BasicObjCFoundationChecks.cpp:void clang::ento::Checker<clang::ento::check::PostStmt<clang::ObjCBoxedExpr> >::_register<(anonymous namespace)::ObjCNonNilReturnValueChecker>((anonymous namespace)::ObjCNonNilReturnValueChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 49 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 49 | CHECK1::_register(checker, mgr); | 531 | 49 | } |
void clang::ento::Checker<clang::ento::check::PreStmt<clang::BinaryOperator> >::_register<BitwiseShiftChecker>(BitwiseShiftChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 1.28k | CHECK1::_register(checker, mgr); | 531 | 1.28k | } |
BlockInCriticalSectionChecker.cpp:void clang::ento::Checker<clang::ento::check::PostCall>::_register<(anonymous namespace)::BlockInCriticalSectionChecker>((anonymous namespace)::BlockInCriticalSectionChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 5 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 5 | CHECK1::_register(checker, mgr); | 531 | 5 | } |
BoolAssignmentChecker.cpp:void clang::ento::Checker<clang::ento::check::Bind>::_register<(anonymous namespace)::BoolAssignmentChecker>((anonymous namespace)::BoolAssignmentChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 76 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 76 | CHECK1::_register(checker, mgr); | 531 | 76 | } |
BuiltinFunctionChecker.cpp:void clang::ento::Checker<clang::ento::eval::Call>::_register<(anonymous namespace)::BuiltinFunctionChecker>((anonymous namespace)::BuiltinFunctionChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 1.29k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 1.29k | CHECK1::_register(checker, mgr); | 531 | 1.29k | } |
CStringChecker.cpp:void clang::ento::Checker<clang::ento::check::RegionChanges>::_register<(anonymous namespace)::CStringChecker>((anonymous namespace)::CStringChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 274 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 274 | CHECK1::_register(checker, mgr); | 531 | 274 | } |
CStringSyntaxChecker.cpp:void clang::ento::Checker<clang::ento::check::ASTCodeBody>::_register<(anonymous namespace)::CStringSyntaxChecker>((anonymous namespace)::CStringSyntaxChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 97 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 97 | CHECK1::_register(checker, mgr); | 531 | 97 | } |
CallAndMessageChecker.cpp:void clang::ento::Checker<clang::ento::check::PreCall>::_register<(anonymous namespace)::CallAndMessageChecker>((anonymous namespace)::CallAndMessageChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 1.28k | CHECK1::_register(checker, mgr); | 531 | 1.28k | } |
CastSizeChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::CastExpr> >::_register<(anonymous namespace)::CastSizeChecker>((anonymous namespace)::CastSizeChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 62 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 62 | CHECK1::_register(checker, mgr); | 531 | 62 | } |
CastToStructChecker.cpp:void clang::ento::Checker<clang::ento::check::ASTCodeBody>::_register<(anonymous namespace)::CastToStructChecker>((anonymous namespace)::CastToStructChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 80 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 80 | CHECK1::_register(checker, mgr); | 531 | 80 | } |
CastValueChecker.cpp:void clang::ento::Checker<clang::ento::eval::Call>::_register<(anonymous namespace)::CastValueChecker>((anonymous namespace)::CastValueChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 52 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 52 | CHECK1::_register(checker, mgr); | 531 | 52 | } |
CheckObjCDealloc.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::ReturnStmt> >::_register<(anonymous namespace)::ObjCDeallocChecker>((anonymous namespace)::ObjCDeallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 50 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 50 | CHECK1::_register(checker, mgr); | 531 | 50 | } |
CheckObjCInstMethSignature.cpp:void clang::ento::Checker<clang::ento::check::ASTDecl<clang::ObjCImplementationDecl> >::_register<(anonymous namespace)::ObjCMethSigsChecker>((anonymous namespace)::ObjCMethSigsChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 49 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 49 | CHECK1::_register(checker, mgr); | 531 | 49 | } |
CheckPlacementNew.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::CXXNewExpr> >::_register<(anonymous namespace)::PlacementNewChecker>((anonymous namespace)::PlacementNewChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 67 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 67 | CHECK1::_register(checker, mgr); | 531 | 67 | } |
CheckSecuritySyntaxOnly.cpp:void clang::ento::Checker<clang::ento::check::ASTCodeBody>::_register<(anonymous namespace)::SecuritySyntaxChecker>((anonymous namespace)::SecuritySyntaxChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 50 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 50 | CHECK1::_register(checker, mgr); | 531 | 50 | } |
CheckSizeofPointer.cpp:void clang::ento::Checker<clang::ento::check::ASTCodeBody>::_register<(anonymous namespace)::SizeofPointerChecker>((anonymous namespace)::SizeofPointerChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 75 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 75 | CHECK1::_register(checker, mgr); | 531 | 75 | } |
ChrootChecker.cpp:void clang::ento::Checker<clang::ento::check::PreCall>::_register<(anonymous namespace)::ChrootChecker>((anonymous namespace)::ChrootChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 4 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 4 | CHECK1::_register(checker, mgr); | 531 | 4 | } |
CloneChecker.cpp:void clang::ento::Checker<clang::ento::check::EndOfTranslationUnit>::_register<(anonymous namespace)::CloneChecker>((anonymous namespace)::CloneChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 28 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 28 | CHECK1::_register(checker, mgr); | 531 | 28 | } |
ContainerModeling.cpp:void clang::ento::Checker<clang::ento::check::DeadSymbols>::_register<(anonymous namespace)::ContainerModeling>((anonymous namespace)::ContainerModeling*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 21 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 21 | CHECK1::_register(checker, mgr); | 531 | 21 | } |
ConversionChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::ImplicitCastExpr> >::_register<(anonymous namespace)::ConversionChecker>((anonymous namespace)::ConversionChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 77 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 77 | CHECK1::_register(checker, mgr); | 531 | 77 | } |
CXXDeleteChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::CXXDeleteExpr> >::_register<(anonymous namespace)::CXXArrayDeleteChecker>((anonymous namespace)::CXXArrayDeleteChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 1 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 1 | CHECK1::_register(checker, mgr); | 531 | 1 | } |
CXXDeleteChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::CXXDeleteExpr> >::_register<(anonymous namespace)::DeleteWithNonVirtualDtorChecker>((anonymous namespace)::DeleteWithNonVirtualDtorChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 1 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 1 | CHECK1::_register(checker, mgr); | 531 | 1 | } |
CXXSelfAssignmentChecker.cpp:void clang::ento::Checker<clang::ento::check::BeginFunction>::_register<(anonymous namespace)::CXXSelfAssignmentChecker>((anonymous namespace)::CXXSelfAssignmentChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 65 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 65 | CHECK1::_register(checker, mgr); | 531 | 65 | } |
DeadStoresChecker.cpp:void clang::ento::Checker<clang::ento::check::ASTCodeBody>::_register<(anonymous namespace)::DeadStoresChecker>((anonymous namespace)::DeadStoresChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 59 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 59 | CHECK1::_register(checker, mgr); | 531 | 59 | } |
DebugCheckers.cpp:void clang::ento::Checker<clang::ento::check::ASTCodeBody>::_register<(anonymous namespace)::DominatorsTreeDumper>((anonymous namespace)::DominatorsTreeDumper*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 3 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 3 | CHECK1::_register(checker, mgr); | 531 | 3 | } |
DebugCheckers.cpp:void clang::ento::Checker<clang::ento::check::ASTCodeBody>::_register<(anonymous namespace)::PostDominatorsTreeDumper>((anonymous namespace)::PostDominatorsTreeDumper*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 3 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 3 | CHECK1::_register(checker, mgr); | 531 | 3 | } |
DebugCheckers.cpp:void clang::ento::Checker<clang::ento::check::ASTCodeBody>::_register<(anonymous namespace)::ControlDependencyTreeDumper>((anonymous namespace)::ControlDependencyTreeDumper*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 3 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 3 | CHECK1::_register(checker, mgr); | 531 | 3 | } |
DebugCheckers.cpp:void clang::ento::Checker<clang::ento::check::ASTCodeBody>::_register<(anonymous namespace)::LiveVariablesDumper>((anonymous namespace)::LiveVariablesDumper*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 1 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 1 | CHECK1::_register(checker, mgr); | 531 | 1 | } |
DebugCheckers.cpp:void clang::ento::Checker<clang::ento::check::ASTCodeBody>::_register<(anonymous namespace)::LiveExpressionsDumper>((anonymous namespace)::LiveExpressionsDumper*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 3 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 3 | CHECK1::_register(checker, mgr); | 531 | 3 | } |
Unexecuted instantiation: DebugCheckers.cpp:void clang::ento::Checker<clang::ento::check::ASTCodeBody>::_register<(anonymous namespace)::CFGViewer>((anonymous namespace)::CFGViewer*, clang::ento::CheckerManager&) DebugCheckers.cpp:void clang::ento::Checker<clang::ento::check::ASTCodeBody>::_register<(anonymous namespace)::CFGDumper>((anonymous namespace)::CFGDumper*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 40 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 40 | CHECK1::_register(checker, mgr); | 531 | 40 | } |
Unexecuted instantiation: DebugCheckers.cpp:void clang::ento::Checker<clang::ento::check::ASTDecl<clang::TranslationUnitDecl> >::_register<(anonymous namespace)::CallGraphViewer>((anonymous namespace)::CallGraphViewer*, clang::ento::CheckerManager&) DebugCheckers.cpp:void clang::ento::Checker<clang::ento::check::ASTDecl<clang::TranslationUnitDecl> >::_register<(anonymous namespace)::CallGraphDumper>((anonymous namespace)::CallGraphDumper*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 3 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 3 | CHECK1::_register(checker, mgr); | 531 | 3 | } |
DebugCheckers.cpp:void clang::ento::Checker<clang::ento::check::EndOfTranslationUnit>::_register<(anonymous namespace)::ConfigDumper>((anonymous namespace)::ConfigDumper*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 4 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 4 | CHECK1::_register(checker, mgr); | 531 | 4 | } |
Unexecuted instantiation: DebugCheckers.cpp:void clang::ento::Checker<clang::ento::check::EndAnalysis>::_register<(anonymous namespace)::ExplodedGraphViewer>((anonymous namespace)::ExplodedGraphViewer*, clang::ento::CheckerManager&) DebugCheckers.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::Stmt> >::_register<(anonymous namespace)::ReportStmts>((anonymous namespace)::ReportStmts*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 2 | CHECK1::_register(checker, mgr); | 531 | 2 | } |
DebugContainerModeling.cpp:void clang::ento::Checker<clang::ento::eval::Call>::_register<(anonymous namespace)::DebugContainerModeling>((anonymous namespace)::DebugContainerModeling*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 13 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 13 | CHECK1::_register(checker, mgr); | 531 | 13 | } |
DebugIteratorModeling.cpp:void clang::ento::Checker<clang::ento::eval::Call>::_register<(anonymous namespace)::DebugIteratorModeling>((anonymous namespace)::DebugIteratorModeling*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 11 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 11 | CHECK1::_register(checker, mgr); | 531 | 11 | } |
DereferenceChecker.cpp:void clang::ento::Checker<clang::ento::EventDispatcher<clang::ento::ImplicitNullDerefEvent> >::_register<(anonymous namespace)::DereferenceChecker>((anonymous namespace)::DereferenceChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 1.28k | CHECK1::_register(checker, mgr); | 531 | 1.28k | } |
DirectIvarAssignment.cpp:void clang::ento::Checker<clang::ento::check::ASTDecl<clang::ObjCImplementationDecl> >::_register<(anonymous namespace)::DirectIvarAssignment>((anonymous namespace)::DirectIvarAssignment*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 2 | CHECK1::_register(checker, mgr); | 531 | 2 | } |
DivZeroChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::BinaryOperator> >::_register<(anonymous namespace)::DivZeroChecker>((anonymous namespace)::DivZeroChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 1.28k | CHECK1::_register(checker, mgr); | 531 | 1.28k | } |
DynamicTypePropagation.cpp:void clang::ento::Checker<clang::ento::check::PostObjCMessage>::_register<(anonymous namespace)::DynamicTypePropagation>((anonymous namespace)::DynamicTypePropagation*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 1.28k | CHECK1::_register(checker, mgr); | 531 | 1.28k | } |
DynamicTypeChecker.cpp:void clang::ento::Checker<clang::ento::check::PostStmt<clang::ImplicitCastExpr> >::_register<(anonymous namespace)::DynamicTypeChecker>((anonymous namespace)::DynamicTypeChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 77 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 77 | CHECK1::_register(checker, mgr); | 531 | 77 | } |
EnumCastOutOfRangeChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::CastExpr> >::_register<(anonymous namespace)::EnumCastOutOfRangeChecker>((anonymous namespace)::EnumCastOutOfRangeChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 2 | CHECK1::_register(checker, mgr); | 531 | 2 | } |
ErrnoChecker.cpp:void clang::ento::Checker<clang::ento::check::RegionChanges>::_register<(anonymous namespace)::ErrnoChecker>((anonymous namespace)::ErrnoChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 15 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 15 | CHECK1::_register(checker, mgr); | 531 | 15 | } |
ErrnoModeling.cpp:void clang::ento::Checker<clang::ento::eval::Call>::_register<(anonymous namespace)::ErrnoModeling>((anonymous namespace)::ErrnoModeling*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 56 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 56 | CHECK1::_register(checker, mgr); | 531 | 56 | } |
ErrnoTesterChecker.cpp:void clang::ento::Checker<clang::ento::eval::Call>::_register<(anonymous namespace)::ErrnoTesterChecker>((anonymous namespace)::ErrnoTesterChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 6 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 6 | CHECK1::_register(checker, mgr); | 531 | 6 | } |
ExprInspectionChecker.cpp:void clang::ento::Checker<clang::ento::check::EndAnalysis>::_register<(anonymous namespace)::ExprInspectionChecker>((anonymous namespace)::ExprInspectionChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 444 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 444 | CHECK1::_register(checker, mgr); | 531 | 444 | } |
FixedAddressChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::BinaryOperator> >::_register<(anonymous namespace)::FixedAddressChecker>((anonymous namespace)::FixedAddressChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 76 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 76 | CHECK1::_register(checker, mgr); | 531 | 76 | } |
FuchsiaHandleChecker.cpp:void clang::ento::Checker<clang::ento::eval::Assume>::_register<(anonymous namespace)::FuchsiaHandleChecker>((anonymous namespace)::FuchsiaHandleChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 1 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 1 | CHECK1::_register(checker, mgr); | 531 | 1 | } |
GCDAntipatternChecker.cpp:void clang::ento::Checker<clang::ento::check::ASTCodeBody>::_register<(anonymous namespace)::GCDAntipatternChecker>((anonymous namespace)::GCDAntipatternChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 6 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 6 | CHECK1::_register(checker, mgr); | 531 | 6 | } |
GenericTaintChecker.cpp:void clang::ento::Checker<clang::ento::check::PostCall>::_register<(anonymous namespace)::GenericTaintChecker>((anonymous namespace)::GenericTaintChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 27 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 27 | CHECK1::_register(checker, mgr); | 531 | 27 | } |
GTestChecker.cpp:void clang::ento::Checker<clang::ento::check::PostCall>::_register<(anonymous namespace)::GTestChecker>((anonymous namespace)::GTestChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 17 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 17 | CHECK1::_register(checker, mgr); | 531 | 17 | } |
IdenticalExprChecker.cpp:void clang::ento::Checker<clang::ento::check::ASTCodeBody>::_register<(anonymous namespace)::FindIdenticalExprChecker>((anonymous namespace)::FindIdenticalExprChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 75 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 75 | CHECK1::_register(checker, mgr); | 531 | 75 | } |
InnerPointerChecker.cpp:void clang::ento::Checker<clang::ento::check::PostCall>::_register<(anonymous namespace)::InnerPointerChecker>((anonymous namespace)::InnerPointerChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 66 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 66 | CHECK1::_register(checker, mgr); | 531 | 66 | } |
InvalidatedIteratorChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::MemberExpr> >::_register<(anonymous namespace)::InvalidatedIteratorChecker>((anonymous namespace)::InvalidatedIteratorChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 2 | CHECK1::_register(checker, mgr); | 531 | 2 | } |
InvalidPtrChecker.cpp:void clang::ento::Checker<clang::ento::check::PostCall>::_register<(anonymous namespace)::InvalidPtrChecker>((anonymous namespace)::InvalidPtrChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 11 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 11 | CHECK1::_register(checker, mgr); | 531 | 11 | } |
IteratorModeling.cpp:void clang::ento::Checker<clang::ento::check::DeadSymbols>::_register<(anonymous namespace)::IteratorModeling>((anonymous namespace)::IteratorModeling*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 19 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 19 | CHECK1::_register(checker, mgr); | 531 | 19 | } |
IteratorRangeChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::MemberExpr> >::_register<(anonymous namespace)::IteratorRangeChecker>((anonymous namespace)::IteratorRangeChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 2 | CHECK1::_register(checker, mgr); | 531 | 2 | } |
IvarInvalidationChecker.cpp:void clang::ento::Checker<clang::ento::check::ASTDecl<clang::ObjCImplementationDecl> >::_register<(anonymous namespace)::IvarInvalidationChecker>((anonymous namespace)::IvarInvalidationChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 2 | CHECK1::_register(checker, mgr); | 531 | 2 | } |
LLVMConventionsChecker.cpp:void clang::ento::Checker<clang::ento::check::ASTCodeBody>::_register<(anonymous namespace)::LLVMConventionsChecker>((anonymous namespace)::LLVMConventionsChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 1 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 1 | CHECK1::_register(checker, mgr); | 531 | 1 | } |
LocalizationChecker.cpp:void clang::ento::Checker<clang::ento::check::PostStmt<clang::ObjCStringLiteral> >::_register<(anonymous namespace)::NonLocalizedStringChecker>((anonymous namespace)::NonLocalizedStringChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 2 | CHECK1::_register(checker, mgr); | 531 | 2 | } |
LocalizationChecker.cpp:void clang::ento::Checker<clang::ento::check::ASTDecl<clang::ObjCImplementationDecl> >::_register<(anonymous namespace)::EmptyLocalizationContextChecker>((anonymous namespace)::EmptyLocalizationContextChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 1 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 1 | CHECK1::_register(checker, mgr); | 531 | 1 | } |
LocalizationChecker.cpp:void clang::ento::Checker<clang::ento::check::ASTCodeBody>::_register<(anonymous namespace)::PluralMisuseChecker>((anonymous namespace)::PluralMisuseChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 1 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 1 | CHECK1::_register(checker, mgr); | 531 | 1 | } |
MacOSKeychainAPIChecker.cpp:void clang::ento::Checker<clang::ento::eval::Assume>::_register<(anonymous namespace)::MacOSKeychainAPIChecker>((anonymous namespace)::MacOSKeychainAPIChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 48 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 48 | CHECK1::_register(checker, mgr); | 531 | 48 | } |
MacOSXAPIChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::CallExpr> >::_register<(anonymous namespace)::MacOSXAPIChecker>((anonymous namespace)::MacOSXAPIChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 51 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 51 | CHECK1::_register(checker, mgr); | 531 | 51 | } |
MallocChecker.cpp:void clang::ento::Checker<clang::ento::eval::Assume>::_register<(anonymous namespace)::MallocChecker>((anonymous namespace)::MallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 245 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 245 | CHECK1::_register(checker, mgr); | 531 | 245 | } |
MallocOverflowSecurityChecker.cpp:void clang::ento::Checker<clang::ento::check::ASTCodeBody>::_register<(anonymous namespace)::MallocOverflowSecurityChecker>((anonymous namespace)::MallocOverflowSecurityChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 4 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 4 | CHECK1::_register(checker, mgr); | 531 | 4 | } |
MallocSizeofChecker.cpp:void clang::ento::Checker<clang::ento::check::ASTCodeBody>::_register<(anonymous namespace)::MallocSizeofChecker>((anonymous namespace)::MallocSizeofChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 68 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 68 | CHECK1::_register(checker, mgr); | 531 | 68 | } |
MismatchedIteratorChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::BinaryOperator> >::_register<(anonymous namespace)::MismatchedIteratorChecker>((anonymous namespace)::MismatchedIteratorChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 2 | CHECK1::_register(checker, mgr); | 531 | 2 | } |
MmapWriteExecChecker.cpp:void clang::ento::Checker<clang::ento::check::PreCall>::_register<(anonymous namespace)::MmapWriteExecChecker>((anonymous namespace)::MmapWriteExecChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 2 | CHECK1::_register(checker, mgr); | 531 | 2 | } |
MIGChecker.cpp:void clang::ento::Checker<clang::ento::check::EndFunction>::_register<(anonymous namespace)::MIGChecker>((anonymous namespace)::MIGChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 47 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 47 | CHECK1::_register(checker, mgr); | 531 | 47 | } |
MoveChecker.cpp:void clang::ento::Checker<clang::ento::check::RegionChanges>::_register<(anonymous namespace)::MoveChecker>((anonymous namespace)::MoveChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 78 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 78 | CHECK1::_register(checker, mgr); | 531 | 78 | } |
void clang::ento::Checker<clang::ento::check::DeadSymbols>::_register<clang::ento::mpi::MPIChecker>(clang::ento::mpi::MPIChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 3 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 3 | CHECK1::_register(checker, mgr); | 531 | 3 | } |
Unexecuted instantiation: NSAutoreleasePoolChecker.cpp:void clang::ento::Checker<clang::ento::check::PreObjCMessage>::_register<(anonymous namespace)::NSAutoreleasePoolChecker>((anonymous namespace)::NSAutoreleasePoolChecker*, clang::ento::CheckerManager&) NSErrorChecker.cpp:void clang::ento::Checker<clang::ento::check::Event<clang::ento::ImplicitNullDerefEvent> >::_register<(anonymous namespace)::NSOrCFErrorDerefChecker>((anonymous namespace)::NSOrCFErrorDerefChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 49 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 49 | CHECK1::_register(checker, mgr); | 531 | 49 | } |
NSErrorChecker.cpp:void clang::ento::Checker<clang::ento::check::ASTDecl<clang::ObjCMethodDecl> >::_register<(anonymous namespace)::NSErrorMethodChecker>((anonymous namespace)::NSErrorMethodChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 48 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 48 | CHECK1::_register(checker, mgr); | 531 | 48 | } |
NSErrorChecker.cpp:void clang::ento::Checker<clang::ento::check::ASTDecl<clang::FunctionDecl> >::_register<(anonymous namespace)::CFErrorFunctionChecker>((anonymous namespace)::CFErrorFunctionChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 48 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 48 | CHECK1::_register(checker, mgr); | 531 | 48 | } |
NoReturnFunctionChecker.cpp:void clang::ento::Checker<clang::ento::check::PostObjCMessage>::_register<(anonymous namespace)::NoReturnFunctionChecker>((anonymous namespace)::NoReturnFunctionChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 1.29k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 1.29k | CHECK1::_register(checker, mgr); | 531 | 1.29k | } |
NonNullParamChecker.cpp:void clang::ento::Checker<clang::ento::EventDispatcher<clang::ento::ImplicitNullDerefEvent> >::_register<(anonymous namespace)::NonNullParamChecker>((anonymous namespace)::NonNullParamChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 1.28k | CHECK1::_register(checker, mgr); | 531 | 1.28k | } |
NonnullGlobalConstantsChecker.cpp:void clang::ento::Checker<clang::ento::check::Location>::_register<(anonymous namespace)::NonnullGlobalConstantsChecker>((anonymous namespace)::NonnullGlobalConstantsChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 1.28k | CHECK1::_register(checker, mgr); | 531 | 1.28k | } |
NullabilityChecker.cpp:void clang::ento::Checker<clang::ento::check::BeginFunction>::_register<(anonymous namespace)::NullabilityChecker>((anonymous namespace)::NullabilityChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 52 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 52 | CHECK1::_register(checker, mgr); | 531 | 52 | } |
NumberObjectConversionChecker.cpp:void clang::ento::Checker<clang::ento::check::ASTCodeBody>::_register<(anonymous namespace)::NumberObjectConversionChecker>((anonymous namespace)::NumberObjectConversionChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 55 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 55 | CHECK1::_register(checker, mgr); | 531 | 55 | } |
ObjCAtSyncChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::ObjCAtSynchronizedStmt> >::_register<(anonymous namespace)::ObjCAtSyncChecker>((anonymous namespace)::ObjCAtSyncChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 11 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 11 | CHECK1::_register(checker, mgr); | 531 | 11 | } |
ObjCAutoreleaseWriteChecker.cpp:void clang::ento::Checker<clang::ento::check::ASTCodeBody>::_register<(anonymous namespace)::ObjCAutoreleaseWriteChecker>((anonymous namespace)::ObjCAutoreleaseWriteChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 49 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 49 | CHECK1::_register(checker, mgr); | 531 | 49 | } |
ObjCContainersASTChecker.cpp:void clang::ento::Checker<clang::ento::check::ASTCodeBody>::_register<(anonymous namespace)::ObjCContainersASTChecker>((anonymous namespace)::ObjCContainersASTChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 48 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 48 | CHECK1::_register(checker, mgr); | 531 | 48 | } |
ObjCContainersChecker.cpp:void clang::ento::Checker<clang::ento::check::PointerEscape>::_register<(anonymous namespace)::ObjCContainersChecker>((anonymous namespace)::ObjCContainersChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 47 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 47 | CHECK1::_register(checker, mgr); | 531 | 47 | } |
ObjCMissingSuperCallChecker.cpp:void clang::ento::Checker<clang::ento::check::ASTDecl<clang::ObjCImplementationDecl> >::_register<(anonymous namespace)::ObjCSuperCallChecker>((anonymous namespace)::ObjCSuperCallChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 48 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 48 | CHECK1::_register(checker, mgr); | 531 | 48 | } |
ObjCPropertyChecker.cpp:void clang::ento::Checker<clang::ento::check::ASTDecl<clang::ObjCPropertyDecl> >::_register<(anonymous namespace)::ObjCPropertyChecker>((anonymous namespace)::ObjCPropertyChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 47 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 47 | CHECK1::_register(checker, mgr); | 531 | 47 | } |
ObjCSelfInitChecker.cpp:void clang::ento::Checker<clang::ento::check::Bind>::_register<(anonymous namespace)::ObjCSelfInitChecker>((anonymous namespace)::ObjCSelfInitChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 50 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 50 | CHECK1::_register(checker, mgr); | 531 | 50 | } |
ObjCSuperDeallocChecker.cpp:void clang::ento::Checker<clang::ento::check::Location>::_register<(anonymous namespace)::ObjCSuperDeallocChecker>((anonymous namespace)::ObjCSuperDeallocChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 48 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 48 | CHECK1::_register(checker, mgr); | 531 | 48 | } |
ObjCUnusedIVarsChecker.cpp:void clang::ento::Checker<clang::ento::check::ASTDecl<clang::ObjCImplementationDecl> >::_register<(anonymous namespace)::ObjCUnusedIvarsChecker>((anonymous namespace)::ObjCUnusedIvarsChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 48 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 48 | CHECK1::_register(checker, mgr); | 531 | 48 | } |
OSObjectCStyleCast.cpp:void clang::ento::Checker<clang::ento::check::ASTCodeBody>::_register<(anonymous namespace)::OSObjectCStyleCastChecker>((anonymous namespace)::OSObjectCStyleCastChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 1 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 1 | CHECK1::_register(checker, mgr); | 531 | 1 | } |
PaddingChecker.cpp:void clang::ento::Checker<clang::ento::check::ASTDecl<clang::TranslationUnitDecl> >::_register<(anonymous namespace)::PaddingChecker>((anonymous namespace)::PaddingChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 7 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 7 | CHECK1::_register(checker, mgr); | 531 | 7 | } |
PointerArithChecker.cpp:void clang::ento::Checker<clang::ento::check::DeadSymbols>::_register<(anonymous namespace)::PointerArithChecker>((anonymous namespace)::PointerArithChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 79 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 79 | CHECK1::_register(checker, mgr); | 531 | 79 | } |
PointerIterationChecker.cpp:void clang::ento::Checker<clang::ento::check::ASTCodeBody>::_register<(anonymous namespace)::PointerIterationChecker>((anonymous namespace)::PointerIterationChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 1 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 1 | CHECK1::_register(checker, mgr); | 531 | 1 | } |
PointerSortingChecker.cpp:void clang::ento::Checker<clang::ento::check::ASTCodeBody>::_register<(anonymous namespace)::PointerSortingChecker>((anonymous namespace)::PointerSortingChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 1 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 1 | CHECK1::_register(checker, mgr); | 531 | 1 | } |
PointerSubChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::BinaryOperator> >::_register<(anonymous namespace)::PointerSubChecker>((anonymous namespace)::PointerSubChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 76 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 76 | CHECK1::_register(checker, mgr); | 531 | 76 | } |
PthreadLockChecker.cpp:void clang::ento::Checker<clang::ento::check::RegionChanges>::_register<(anonymous namespace)::PthreadLockChecker>((anonymous namespace)::PthreadLockChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 81 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 81 | CHECK1::_register(checker, mgr); | 531 | 81 | } |
PutenvWithAutoChecker.cpp:void clang::ento::Checker<clang::ento::check::PostCall>::_register<(anonymous namespace)::PutenvWithAutoChecker>((anonymous namespace)::PutenvWithAutoChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 2 | CHECK1::_register(checker, mgr); | 531 | 2 | } |
void clang::ento::Checker<clang::ento::eval::Call>::_register<clang::ento::retaincountchecker::RetainCountChecker>(clang::ento::retaincountchecker::RetainCountChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 96 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 96 | CHECK1::_register(checker, mgr); | 531 | 96 | } |
ReturnPointerRangeChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::ReturnStmt> >::_register<(anonymous namespace)::ReturnPointerRangeChecker>((anonymous namespace)::ReturnPointerRangeChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 3 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 3 | CHECK1::_register(checker, mgr); | 531 | 3 | } |
ReturnUndefChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::ReturnStmt> >::_register<(anonymous namespace)::ReturnUndefChecker>((anonymous namespace)::ReturnUndefChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 1.28k | CHECK1::_register(checker, mgr); | 531 | 1.28k | } |
ReturnValueChecker.cpp:void clang::ento::Checker<clang::ento::check::EndFunction>::_register<(anonymous namespace)::ReturnValueChecker>((anonymous namespace)::ReturnValueChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 42 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 42 | CHECK1::_register(checker, mgr); | 531 | 42 | } |
RunLoopAutoreleaseLeakChecker.cpp:void clang::ento::Checker<clang::ento::check::ASTCodeBody>::_register<(anonymous namespace)::RunLoopAutoreleaseLeakChecker>((anonymous namespace)::RunLoopAutoreleaseLeakChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 53 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 53 | CHECK1::_register(checker, mgr); | 531 | 53 | } |
SimpleStreamChecker.cpp:void clang::ento::Checker<clang::ento::check::PointerEscape>::_register<(anonymous namespace)::SimpleStreamChecker>((anonymous namespace)::SimpleStreamChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 4 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 4 | CHECK1::_register(checker, mgr); | 531 | 4 | } |
SmartPtrChecker.cpp:void clang::ento::Checker<clang::ento::check::PreCall>::_register<(anonymous namespace)::SmartPtrChecker>((anonymous namespace)::SmartPtrChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 4 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 4 | CHECK1::_register(checker, mgr); | 531 | 4 | } |
SmartPtrModeling.cpp:void clang::ento::Checker<clang::ento::check::LiveSymbols>::_register<(anonymous namespace)::SmartPtrModeling>((anonymous namespace)::SmartPtrModeling*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 77 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 77 | CHECK1::_register(checker, mgr); | 531 | 77 | } |
StackAddrEscapeChecker.cpp:void clang::ento::Checker<clang::ento::check::EndFunction>::_register<(anonymous namespace)::StackAddrEscapeChecker>((anonymous namespace)::StackAddrEscapeChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 1.28k | CHECK1::_register(checker, mgr); | 531 | 1.28k | } |
StdLibraryFunctionsChecker.cpp:void clang::ento::Checker<clang::ento::eval::Call>::_register<(anonymous namespace)::StdLibraryFunctionsChecker>((anonymous namespace)::StdLibraryFunctionsChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 115 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 115 | CHECK1::_register(checker, mgr); | 531 | 115 | } |
STLAlgorithmModeling.cpp:void clang::ento::Checker<clang::ento::eval::Call>::_register<(anonymous namespace)::STLAlgorithmModeling>((anonymous namespace)::STLAlgorithmModeling*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 2 | CHECK1::_register(checker, mgr); | 531 | 2 | } |
StreamChecker.cpp:void clang::ento::Checker<clang::ento::check::PointerEscape>::_register<(anonymous namespace)::StreamChecker>((anonymous namespace)::StreamChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 17 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 17 | CHECK1::_register(checker, mgr); | 531 | 17 | } |
StringChecker.cpp:void clang::ento::Checker<clang::ento::check::PreCall>::_register<(anonymous namespace)::StringChecker>((anonymous namespace)::StringChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 66 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 66 | CHECK1::_register(checker, mgr); | 531 | 66 | } |
TaintTesterChecker.cpp:void clang::ento::Checker<clang::ento::check::PostStmt<clang::Expr> >::_register<(anonymous namespace)::TaintTesterChecker>((anonymous namespace)::TaintTesterChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 8 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 8 | CHECK1::_register(checker, mgr); | 531 | 8 | } |
TestAfterDivZeroChecker.cpp:void clang::ento::Checker<clang::ento::check::EndFunction>::_register<(anonymous namespace)::TestAfterDivZeroChecker>((anonymous namespace)::TestAfterDivZeroChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 76 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 76 | CHECK1::_register(checker, mgr); | 531 | 76 | } |
TraversalChecker.cpp:void clang::ento::Checker<clang::ento::check::EndFunction>::_register<(anonymous namespace)::TraversalDumper>((anonymous namespace)::TraversalDumper*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 4 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 4 | CHECK1::_register(checker, mgr); | 531 | 4 | } |
Unexecuted instantiation: TraversalChecker.cpp:void clang::ento::Checker<clang::ento::check::PostCall>::_register<(anonymous namespace)::CallDumper>((anonymous namespace)::CallDumper*, clang::ento::CheckerManager&) TrustNonnullChecker.cpp:void clang::ento::Checker<clang::ento::eval::Assume>::_register<(anonymous namespace)::TrustNonnullChecker>((anonymous namespace)::TrustNonnullChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 41 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 41 | CHECK1::_register(checker, mgr); | 531 | 41 | } |
TrustReturnsNonnullChecker.cpp:void clang::ento::Checker<clang::ento::check::PostCall>::_register<(anonymous namespace)::TrustReturnsNonnullChecker>((anonymous namespace)::TrustReturnsNonnullChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 42 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 42 | CHECK1::_register(checker, mgr); | 531 | 42 | } |
UndefBranchChecker.cpp:void clang::ento::Checker<clang::ento::check::BranchCondition>::_register<(anonymous namespace)::UndefBranchChecker>((anonymous namespace)::UndefBranchChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 1.28k | CHECK1::_register(checker, mgr); | 531 | 1.28k | } |
UndefCapturedBlockVarChecker.cpp:void clang::ento::Checker<clang::ento::check::PostStmt<clang::BlockExpr> >::_register<(anonymous namespace)::UndefCapturedBlockVarChecker>((anonymous namespace)::UndefCapturedBlockVarChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 1.28k | CHECK1::_register(checker, mgr); | 531 | 1.28k | } |
UndefResultChecker.cpp:void clang::ento::Checker<clang::ento::check::PostStmt<clang::BinaryOperator> >::_register<(anonymous namespace)::UndefResultChecker>((anonymous namespace)::UndefResultChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 1.28k | CHECK1::_register(checker, mgr); | 531 | 1.28k | } |
UndefinedArraySubscriptChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::ArraySubscriptExpr> >::_register<(anonymous namespace)::UndefinedArraySubscriptChecker>((anonymous namespace)::UndefinedArraySubscriptChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 1.28k | CHECK1::_register(checker, mgr); | 531 | 1.28k | } |
UndefinedAssignmentChecker.cpp:void clang::ento::Checker<clang::ento::check::Bind>::_register<(anonymous namespace)::UndefinedAssignmentChecker>((anonymous namespace)::UndefinedAssignmentChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 1.28k | CHECK1::_register(checker, mgr); | 531 | 1.28k | } |
UndefinedNewArraySizeChecker.cpp:void clang::ento::Checker<clang::ento::check::PreCall>::_register<(anonymous namespace)::UndefinedNewArraySizeChecker>((anonymous namespace)::UndefinedNewArraySizeChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 775 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 775 | CHECK1::_register(checker, mgr); | 531 | 775 | } |
UninitializedObjectChecker.cpp:void clang::ento::Checker<clang::ento::check::DeadSymbols>::_register<(anonymous namespace)::UninitializedObjectChecker>((anonymous namespace)::UninitializedObjectChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 14 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 14 | CHECK1::_register(checker, mgr); | 531 | 14 | } |
UnixAPIChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::CallExpr> >::_register<(anonymous namespace)::UnixAPIMisuseChecker>((anonymous namespace)::UnixAPIMisuseChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 71 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 71 | CHECK1::_register(checker, mgr); | 531 | 71 | } |
UnixAPIChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::CallExpr> >::_register<(anonymous namespace)::UnixAPIPortabilityChecker>((anonymous namespace)::UnixAPIPortabilityChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 4 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 4 | CHECK1::_register(checker, mgr); | 531 | 4 | } |
UnreachableCodeChecker.cpp:void clang::ento::Checker<clang::ento::check::EndAnalysis>::_register<(anonymous namespace)::UnreachableCodeChecker>((anonymous namespace)::UnreachableCodeChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 10 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 10 | CHECK1::_register(checker, mgr); | 531 | 10 | } |
VforkChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::ReturnStmt> >::_register<(anonymous namespace)::VforkChecker>((anonymous namespace)::VforkChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 68 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 68 | CHECK1::_register(checker, mgr); | 531 | 68 | } |
VLASizeChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::UnaryExprOrTypeTraitExpr> >::_register<(anonymous namespace)::VLASizeChecker>((anonymous namespace)::VLASizeChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 1.28k | CHECK1::_register(checker, mgr); | 531 | 1.28k | } |
ValistChecker.cpp:void clang::ento::Checker<clang::ento::check::DeadSymbols>::_register<(anonymous namespace)::ValistChecker>((anonymous namespace)::ValistChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 7 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 7 | CHECK1::_register(checker, mgr); | 531 | 7 | } |
VirtualCallChecker.cpp:void clang::ento::Checker<clang::ento::check::PreCall>::_register<(anonymous namespace)::VirtualCallChecker>((anonymous namespace)::VirtualCallChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 73 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 73 | CHECK1::_register(checker, mgr); | 531 | 73 | } |
NoUncountedMembersChecker.cpp:void clang::ento::Checker<clang::ento::check::ASTDecl<clang::TranslationUnitDecl> >::_register<(anonymous namespace)::NoUncountedMemberChecker>((anonymous namespace)::NoUncountedMemberChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 3 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 3 | CHECK1::_register(checker, mgr); | 531 | 3 | } |
RefCntblBaseVirtualDtorChecker.cpp:void clang::ento::Checker<clang::ento::check::ASTDecl<clang::TranslationUnitDecl> >::_register<(anonymous namespace)::RefCntblBaseVirtualDtorChecker>((anonymous namespace)::RefCntblBaseVirtualDtorChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 3 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 3 | CHECK1::_register(checker, mgr); | 531 | 3 | } |
UncountedCallArgsChecker.cpp:void clang::ento::Checker<clang::ento::check::ASTDecl<clang::TranslationUnitDecl> >::_register<(anonymous namespace)::UncountedCallArgsChecker>((anonymous namespace)::UncountedCallArgsChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 2 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 2 | CHECK1::_register(checker, mgr); | 531 | 2 | } |
UncountedLambdaCapturesChecker.cpp:void clang::ento::Checker<clang::ento::check::ASTDecl<clang::TranslationUnitDecl> >::_register<(anonymous namespace)::UncountedLambdaCapturesChecker>((anonymous namespace)::UncountedLambdaCapturesChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 1 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 1 | CHECK1::_register(checker, mgr); | 531 | 1 | } |
UncountedLocalVarsChecker.cpp:void clang::ento::Checker<clang::ento::check::ASTDecl<clang::TranslationUnitDecl> >::_register<(anonymous namespace)::UncountedLocalVarsChecker>((anonymous namespace)::UncountedLocalVarsChecker*, clang::ento::CheckerManager&) Line | Count | Source | 529 | 1 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 530 | 1 | CHECK1::_register(checker, mgr); | 531 | 1 | } |
Unexecuted instantiation: MainCallChecker.cpp:void clang::ento::Checker<clang::ento::check::PreStmt<clang::CallExpr> >::_register<(anonymous namespace)::MainCallChecker>((anonymous namespace)::MainCallChecker*, clang::ento::CheckerManager&) Unexecuted instantiation: CheckerDependencyHandling.cpp:void clang::ento::Checker<clang::ento::check::BeginFunction>::_register<(anonymous namespace)::Dependency>((anonymous namespace)::Dependency*, clang::ento::CheckerManager&) Unexecuted instantiation: CheckerDependencyHandling.cpp:void clang::ento::Checker<clang::ento::check::BeginFunction>::_register<(anonymous namespace)::DependendentChecker>((anonymous namespace)::DependendentChecker*, clang::ento::CheckerManager&) Unexecuted instantiation: CheckerOptionHandling.cpp:void clang::ento::Checker<clang::ento::check::BeginFunction>::_register<(anonymous namespace)::MyChecker>((anonymous namespace)::MyChecker*, clang::ento::CheckerManager&) |
532 | | }; |
533 | | |
534 | | template <typename EVENT> |
535 | | class EventDispatcher { |
536 | | CheckerManager *Mgr = nullptr; |
537 | | public: |
538 | 2.62k | EventDispatcher() = default; |
539 | | |
540 | | template <typename CHECKER> |
541 | 2.62k | static void _register(CHECKER *checker, CheckerManager &mgr) { |
542 | 2.62k | mgr._registerDispatcherForEvent<EVENT>(); |
543 | 2.62k | static_cast<EventDispatcher<EVENT> *>(checker)->Mgr = &mgr; |
544 | 2.62k | } BasicObjCFoundationChecks.cpp:void clang::ento::EventDispatcher<clang::ento::ImplicitNullDerefEvent>::_register<(anonymous namespace)::NilArgChecker>((anonymous namespace)::NilArgChecker*, clang::ento::CheckerManager&) Line | Count | Source | 541 | 53 | static void _register(CHECKER *checker, CheckerManager &mgr) { | 542 | 53 | mgr._registerDispatcherForEvent<EVENT>(); | 543 | 53 | static_cast<EventDispatcher<EVENT> *>(checker)->Mgr = &mgr; | 544 | 53 | } |
DereferenceChecker.cpp:void clang::ento::EventDispatcher<clang::ento::ImplicitNullDerefEvent>::_register<(anonymous namespace)::DereferenceChecker>((anonymous namespace)::DereferenceChecker*, clang::ento::CheckerManager&) Line | Count | Source | 541 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 542 | 1.28k | mgr._registerDispatcherForEvent<EVENT>(); | 543 | 1.28k | static_cast<EventDispatcher<EVENT> *>(checker)->Mgr = &mgr; | 544 | 1.28k | } |
NonNullParamChecker.cpp:void clang::ento::EventDispatcher<clang::ento::ImplicitNullDerefEvent>::_register<(anonymous namespace)::NonNullParamChecker>((anonymous namespace)::NonNullParamChecker*, clang::ento::CheckerManager&) Line | Count | Source | 541 | 1.28k | static void _register(CHECKER *checker, CheckerManager &mgr) { | 542 | 1.28k | mgr._registerDispatcherForEvent<EVENT>(); | 543 | 1.28k | static_cast<EventDispatcher<EVENT> *>(checker)->Mgr = &mgr; | 544 | 1.28k | } |
|
545 | | |
546 | 3.34k | void dispatchEvent(const EVENT &event) const { |
547 | 3.34k | Mgr->_dispatchEvent(event); |
548 | 3.34k | } |
549 | | }; |
550 | | |
551 | | /// We dereferenced a location that may be null. |
552 | | struct ImplicitNullDerefEvent { |
553 | | SVal Location; |
554 | | bool IsLoad; |
555 | | ExplodedNode *SinkNode; |
556 | | BugReporter *BR; |
557 | | // When true, the dereference is in the source code directly. When false, the |
558 | | // dereference might happen later (for example pointer passed to a parameter |
559 | | // that is marked with nonnull attribute.) |
560 | | bool IsDirectDereference; |
561 | | |
562 | | static int Tag; |
563 | | }; |
564 | | |
565 | | } // end ento namespace |
566 | | |
567 | | } // end clang namespace |
568 | | |
569 | | #endif |