1//===--- MPITidyModule.cpp - clang-tidy -----------------------------------===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8
9#include "../ClangTidy.h"
10#include "../ClangTidyModule.h"
11#include "../ClangTidyModuleRegistry.h"
12#include "BufferDerefCheck.h"
13#include "TypeMismatchCheck.h"
14
15namespace clang::tidy {
16namespace mpi {
17
18class MPIModule : public ClangTidyModule {
19public:
20 void addCheckFactories(ClangTidyCheckFactories &CheckFactories) override {
21 CheckFactories.registerCheck<BufferDerefCheck>(CheckName: "mpi-buffer-deref");
22 CheckFactories.registerCheck<TypeMismatchCheck>(CheckName: "mpi-type-mismatch");
23 }
24};
25
26} // namespace mpi
27
28// Register the MPITidyModule using this statically initialized variable.
29static ClangTidyModuleRegistry::Add<mpi::MPIModule>
30 X("mpi-module", "Adds MPI clang-tidy checks.");
31
32// This anchor is used to force the linker to link in the generated object file
33// and thus register the MPIModule.
34volatile int MPIModuleAnchorSource = 0;
35
36} // namespace clang::tidy
37

source code of clang-tools-extra/clang-tidy/mpi/MPITidyModule.cpp