clang-tools 22.0.0git
OpenMPTidyModule.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"
12#include "UseDefaultNoneCheck.h"
13
14namespace clang::tidy {
15namespace openmp {
16namespace {
17
18/// This module is for OpenMP-specific checks.
19class OpenMPModule : public ClangTidyModule {
20public:
21 void addCheckFactories(ClangTidyCheckFactories &CheckFactories) override {
22 CheckFactories.registerCheck<ExceptionEscapeCheck>(
23 "openmp-exception-escape");
24 CheckFactories.registerCheck<UseDefaultNoneCheck>(
25 "openmp-use-default-none");
26 }
27};
28
29} // namespace
30
31// Register the OpenMPTidyModule using this statically initialized variable.
32static ClangTidyModuleRegistry::Add<OpenMPModule>
33 X("openmp-module", "Adds OpenMP-specific checks.");
34
35} // namespace openmp
36
37// This anchor is used to force the linker to link in the generated object file
38// and thus register the OpenMPModule.
39volatile int OpenMPModuleAnchorSource = 0; // NOLINT(misc-use-internal-linkage)
40
41} // namespace clang::tidy
static ClangTidyModuleRegistry::Add< OpenMPModule > X("openmp-module", "Adds OpenMP-specific checks.")
volatile int OpenMPModuleAnchorSource