================ @@ -0,0 +1,43 @@ +//===--- ClangQueryCheck.h - clang-tidy --------------------*- C++ -*-===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +// +//===----------------------------------------------------------------------===// + +#ifndef LLVM_CLANG_TOOLS_EXTRA_CLANG_TIDY_CLANGQUERYCHECK_H +#define LLVM_CLANG_TOOLS_EXTRA_CLANG_TIDY_CLANGQUERYCHECK_H + +#include "ClangTidyCheck.h" +#include "clang/ASTMatchers/Dynamic/VariantValue.h" +#include <vector> + +namespace clang::query { +class QuerySession; +} // namespace clang::query + +namespace clang::tidy::misc { + +/// A check that matches a given matchers printing their binds as warnings +class ClangQueryCheck : public ClangTidyCheck { + using MatcherVec = std::vector<ast_matchers::dynamic::DynTypedMatcher>; + +public: + ClangQueryCheck(StringRef Name, ClangTidyContext *Context, + MatcherVec Matchers) + : ClangTidyCheck(Name, Context), Matchers(std::move(Matchers)) {} + + void registerMatchers(ast_matchers::MatchFinder *Finder) override; + void check(const ast_matchers::MatchFinder::MatchResult &Result) override; + bool isLanguageVersionSupported(const LangOptions &LangOpts) const override { + return LangOpts.CPlusPlus; ---------------- PiotrZSL wrote:
unnecessary limitation, maybe this should be an "config option" https://github.com/llvm/llvm-project/pull/123734 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits