1 //=-- GRExprEngineInternalChecks.h- Builtin GRExprEngine Checks -----*- C++ -*-=
3 // The LLVM Compiler Infrastructure
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
8 //===----------------------------------------------------------------------===//
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
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
);
50 void RegisterMacOSXAPIChecker(GRExprEngine
&Eng
);
51 void RegisterOSAtomicChecker(GRExprEngine
&Eng
);
52 void RegisterUnixAPIChecker(GRExprEngine
&Eng
);
56 } // end clang namespace