blob: 21018af82883eddc6669f1261cde14842224a071 [file] [log] [blame]
Argyrios Kyrtzidis43dee222011-02-14 18:13:31 +00001//===--- Checkers.td - Static Analyzer Checkers -===-----------------------===//
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
10include "clang/StaticAnalyzer/Checkers/CheckerBase.td"
11
Argyrios Kyrtzidis027a6ab2011-02-15 07:42:33 +000012def Core : Package<"core">;
Argyrios Kyrtzidis43dee222011-02-14 18:13:31 +000013def Cocoa : Package<"cocoa">;
Argyrios Kyrtzidis027a6ab2011-02-15 07:42:33 +000014def Unix : Package<"unix">;
15def MacOSX : Package<"macosx">;
16
17let ParentPackage = Cocoa in {
Argyrios Kyrtzidis43dee222011-02-14 18:13:31 +000018
19def : Checker<"ObjCSelfInitChecker">,
Argyrios Kyrtzidis43dee222011-02-14 18:13:31 +000020 Named<"SelfInit">,
21 HelpText<"Check that 'self' is propely initialized inside an initializer method">,
22 DescFile<"ObjCSelfInitChecker.cpp">;
Argyrios Kyrtzidis027a6ab2011-02-15 07:42:33 +000023
24def : Checker<"ObjCAtSyncChecker">,
25 Named<"AtSync">,
26 HelpText<"Check for null pointers used as mutexes for @synchronized">,
27 DescFile<"ObjCAtSyncChecker.cpp">;
28
29}
30
31def : Checker<"StackAddrLeakChecker">,
32 InPackage<Core>,
33 Named<"StackAddrLeak">,
34 HelpText<"Check that addresses to stack memory are not leaked outside the function">,
35 DescFile<"StackAddrLeakChecker.cpp">;
36
37def : Checker<"UnixAPIChecker">,
38 InPackage<Unix>,
39 Named<"API">,
40 HelpText<"Check calls to various UNIX/Posix functions">,
41 DescFile<"UnixAPIChecker.cpp">;
42
43def : Checker<"MacOSXAPIChecker">,
44 InPackage<MacOSX>,
45 Named<"API">,
46 HelpText<"Check calls to various MacOSXAPIChecker">,
47 DescFile<"MacOSXAPIChecker.cpp">;