blob: 990ba1c02b9487187eb71468a49b0e4c59066f64 [file] [log] [blame]
Argyrios Kyrtzidisaf1a9332011-02-08 22:30:11 +00001//=-- ExperimentalChecks.h ----------------------------------------*- C++ -*-=//
Ted Kremenekeb941132009-11-13 01:15:47 +00002//
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
Argyrios Kyrtzidisd2592a32010-12-22 18:53:44 +000011// checks in ExprEngine.
Ted Kremenekeb941132009-11-13 01:15:47 +000012//
13//===----------------------------------------------------------------------===//
14
Argyrios Kyrtzidis04291a72011-02-08 22:30:02 +000015#include "InternalChecks.h"
Argyrios Kyrtzidisaf1a9332011-02-08 22:30:11 +000016#include "ExperimentalChecks.h"
Ted Kremenek21142582010-12-23 19:38:26 +000017#include "clang/StaticAnalyzer/Checkers/LocalCheckers.h"
Ted Kremenekeb941132009-11-13 01:15:47 +000018
19using namespace clang;
Ted Kremenek9ef65372010-12-23 07:20:52 +000020using namespace ento;
Ted Kremenekeb941132009-11-13 01:15:47 +000021
Ted Kremenek9ef65372010-12-23 07:20:52 +000022void ento::RegisterExperimentalChecks(ExprEngine &Eng) {
Ted Kremenek8382cf52009-11-13 18:46:29 +000023 // These are checks that never belong as internal checks
Argyrios Kyrtzidisd2592a32010-12-22 18:53:44 +000024 // within ExprEngine.
Argyrios Kyrtzidisa0decc92011-02-15 21:25:03 +000025 RegisterMallocChecker(Eng); // ArrayBoundChecker depends on this.
Ted Kremenekeb941132009-11-13 01:15:47 +000026}