143dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis//===--- ClangSACheckers.h - Registration functions for Checkers *- C++ -*-===//
243dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis//
343dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis//                     The LLVM Compiler Infrastructure
443dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis//
543dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis// This file is distributed under the University of Illinois Open Source
643dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis// License. See LICENSE.TXT for details.
743dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis//
843dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis//===----------------------------------------------------------------------===//
943dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis//
1043dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis// Declares the registation functions for the checkers defined in
1143dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis// libclangStaticAnalyzerCheckers.
1243dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis//
1343dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis//===----------------------------------------------------------------------===//
1443dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis
1543dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis#ifndef LLVM_CLANG_SA_LIB_CHECKERS_CLANGSACHECKERS_H
1643dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis#define LLVM_CLANG_SA_LIB_CHECKERS_CLANGSACHECKERS_H
1743dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis
18edcc199f5861dd8ad1ec3ad1b83512d2a92e515aJordan Rose#include "clang/StaticAnalyzer/Core/BugReporter/CommonBugCategories.h"
198302767d5f577ce1729187abec30404a201804b1Argyrios Kyrtzidis
2043dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidisnamespace clang {
2143dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis
2243dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidisnamespace ento {
23695fb502825a53ccd178ec1c85c77929d88acb71Argyrios Kyrtzidisclass CheckerManager;
2408b86531ade68727c56918f162816075b87c864aJordy Roseclass CheckerRegistry;
2543dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis
2643dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis#define GET_CHECKERS
279bc1afc3580133c1c930ddba497e6ef541c917beArgyrios Kyrtzidis#define CHECKER(FULLNAME,CLASS,CXXFILE,HELPTEXT,GROUPINDEX,HIDDEN)    \
28695fb502825a53ccd178ec1c85c77929d88acb71Argyrios Kyrtzidis  void register##CLASS(CheckerManager &mgr);
29c869abe2a9deeff22f778029a7f7f75e009be03fArgyrios Kyrtzidis#include "Checkers.inc"
3043dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis#undef CHECKER
3143dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis#undef GET_CHECKERS
3243dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis
3343dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis} // end ento namespace
3443dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis
3543dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis} // end clang namespace
3643dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis
3743dee220252ef0b42c5f8a3bb1eca97f84f2565fArgyrios Kyrtzidis#endif
38