1351280Sdim#include "clang/StaticAnalyzer/Core/BugReporter/BugType.h"
2351280Sdim#include "clang/StaticAnalyzer/Core/Checker.h"
3351280Sdim#include "clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h"
4351280Sdim#include "clang/StaticAnalyzer/Frontend/CheckerRegistry.h"
5351280Sdim
6351280Sdimusing namespace clang;
7351280Sdimusing namespace ento;
8351280Sdim
9351280Sdimnamespace {
10351280Sdimstruct Dependency : public Checker<check::BeginFunction> {
11351280Sdim  void checkBeginFunction(CheckerContext &Ctx) const {}
12351280Sdim};
13351280Sdimstruct DependendentChecker : public Checker<check::BeginFunction> {
14351280Sdim  void checkBeginFunction(CheckerContext &Ctx) const {}
15351280Sdim};
16351280Sdim} // end anonymous namespace
17351280Sdim
18351280Sdim// Register plugin!
19351280Sdimextern "C" void clang_registerCheckers(CheckerRegistry &registry) {
20351280Sdim  registry.addChecker<Dependency>("example.Dependency", "", "");
21351280Sdim  registry.addChecker<DependendentChecker>("example.DependendentChecker", "",
22351280Sdim                                           "");
23351280Sdim
24351280Sdim  registry.addDependency("example.DependendentChecker", "example.Dependency");
25351280Sdim}
26351280Sdim
27351280Sdimextern "C" const char clang_analyzerAPIVersionString[] =
28351280Sdim    CLANG_ANALYZER_API_VERSION_STRING;
29