[analyzer] Refactoring: Move stuff into namespace 'GR'.
[clang.git] / lib / GR / Checkers / GRExprEngineInternalChecks.h
blobcba419a9b6036cf0de3d871d758fe62122ff23f7
1 //=-- GRExprEngineInternalChecks.h- Builtin GRExprEngine Checks -----*- C++ -*-=
2 //
3 // The LLVM Compiler Infrastructure
4 //
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9 //
10 // This file defines functions to instantiate and register the "built-in"
11 // checks in GRExprEngine.
13 //===----------------------------------------------------------------------===//
15 #ifndef LLVM_CLANG_GR_GREXPRENGINE_INTERNAL_CHECKS
16 #define LLVM_CLANG_GR_GREXPRENGINE_INTERNAL_CHECKS
18 namespace clang {
20 namespace GR {
22 class GRExprEngine;
24 // Foundational checks that handle basic semantics.
25 void RegisterAdjustedReturnValueChecker(GRExprEngine &Eng);
26 void RegisterArrayBoundChecker(GRExprEngine &Eng);
27 void RegisterAttrNonNullChecker(GRExprEngine &Eng);
28 void RegisterBuiltinFunctionChecker(GRExprEngine &Eng);
29 void RegisterCallAndMessageChecker(GRExprEngine &Eng);
30 void RegisterCastToStructChecker(GRExprEngine &Eng);
31 void RegisterCastSizeChecker(GRExprEngine &Eng);
32 void RegisterDereferenceChecker(GRExprEngine &Eng);
33 void RegisterDivZeroChecker(GRExprEngine &Eng);
34 void RegisterFixedAddressChecker(GRExprEngine &Eng);
35 void RegisterNoReturnFunctionChecker(GRExprEngine &Eng);
36 void RegisterObjCAtSyncChecker(GRExprEngine &Eng);
37 void RegisterPointerArithChecker(GRExprEngine &Eng);
38 void RegisterPointerSubChecker(GRExprEngine &Eng);
39 void RegisterReturnPointerRangeChecker(GRExprEngine &Eng);
40 void RegisterReturnUndefChecker(GRExprEngine &Eng);
41 void RegisterStackAddrLeakChecker(GRExprEngine &Eng);
42 void RegisterUndefBranchChecker(GRExprEngine &Eng);
43 void RegisterUndefCapturedBlockVarChecker(GRExprEngine &Eng);
44 void RegisterUndefResultChecker(GRExprEngine &Eng);
45 void RegisterUndefinedArraySubscriptChecker(GRExprEngine &Eng);
46 void RegisterUndefinedAssignmentChecker(GRExprEngine &Eng);
47 void RegisterVLASizeChecker(GRExprEngine &Eng);
49 // API checks.
50 void RegisterMacOSXAPIChecker(GRExprEngine &Eng);
51 void RegisterOSAtomicChecker(GRExprEngine &Eng);
52 void RegisterUnixAPIChecker(GRExprEngine &Eng);
54 } // end GR namespace
56 } // end clang namespace
58 #endif