[analyzer] Refactoring: Move stuff into namespace 'GR'.
[clang.git] / lib / GR / Checkers / GRExprEngineExperimentalChecks.cpp
blobfd9bf5dd52086a745d80f7a70f1bd40b747d9bc7
1 //=-- GRExprEngineExperimentalChecks.h ------------------------------*- 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 experimental
11 // checks in GRExprEngine.
13 //===----------------------------------------------------------------------===//
15 #include "GRExprEngineInternalChecks.h"
16 #include "GRExprEngineExperimentalChecks.h"
17 #include "clang/GR/Checkers/LocalCheckers.h"
19 using namespace clang;
20 using namespace GR;
22 void GR::RegisterExperimentalChecks(GRExprEngine &Eng) {
23 // These are checks that never belong as internal checks
24 // within GRExprEngine.
25 RegisterCStringChecker(Eng);
26 RegisterChrootChecker(Eng);
27 RegisterMallocChecker(Eng);
28 RegisterPthreadLockChecker(Eng);
29 RegisterStreamChecker(Eng);
30 RegisterUnreachableCodeChecker(Eng);
33 void GR::RegisterExperimentalInternalChecks(GRExprEngine &Eng) {
34 // These are internal checks that should eventually migrate to
35 // RegisterInternalChecks() once they have been further tested.
37 // Note that this must be registered after ReturnStackAddresEngsChecker.
38 RegisterReturnPointerRangeChecker(Eng);
40 RegisterArrayBoundChecker(Eng);
41 RegisterCastSizeChecker(Eng);
42 RegisterCastToStructChecker(Eng);
43 RegisterFixedAddressChecker(Eng);
44 RegisterPointerArithChecker(Eng);
45 RegisterPointerSubChecker(Eng);