clang-tools 22.0.0git
MPITidyModule.cpp
Go to the documentation of this file.
1//===----------------------------------------------------------------------===//
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 "BufferDerefCheck.h"
12#include "TypeMismatchCheck.h"
13
14namespace clang::tidy {
15namespace mpi {
16namespace {
17
18class MPIModule : public ClangTidyModule {
19public:
20 void addCheckFactories(ClangTidyCheckFactories &CheckFactories) override {
21 CheckFactories.registerCheck<BufferDerefCheck>("mpi-buffer-deref");
22 CheckFactories.registerCheck<TypeMismatchCheck>("mpi-type-mismatch");
23 }
24};
25
26} // namespace
27} // namespace mpi
28
29// Register the MPITidyModule using this statically initialized variable.
30static ClangTidyModuleRegistry::Add<mpi::MPIModule>
31 X("mpi-module", "Adds MPI clang-tidy checks.");
32
33// This anchor is used to force the linker to link in the generated object file
34// and thus register the MPIModule.
35volatile int MPIModuleAnchorSource = 0; // NOLINT(misc-use-internal-linkage)
36
37} // namespace clang::tidy
volatile int MPIModuleAnchorSource
static ClangTidyModuleRegistry::Add< altera::AlteraModule > X("altera-module", "Adds Altera FPGA OpenCL lint checks.")