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