================ @@ -0,0 +1,89 @@ +//===--- UnusedLocalNonTrivialVariableCheck.cpp - clang-tidy --------------===// +// +// 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 +// +//===----------------------------------------------------------------------===// + +#include "UnusedLocalNonTrivialVariableCheck.h" +#include "../utils/Matchers.h" +#include "../utils/OptionsUtils.h" +#include "clang/AST/ASTContext.h" +#include "clang/AST/ASTTypeTraits.h" +#include "clang/AST/Type.h" +#include "clang/ASTMatchers/ASTMatchFinder.h" +#include "clang/ASTMatchers/ASTMatchers.h" +#include "clang/ASTMatchers/ASTMatchersMacros.h" + +using namespace clang::ast_matchers; +using namespace clang::tidy::matchers; + +namespace clang::tidy::bugprone { + +namespace { +static constexpr StringRef DefaultIncludeTypeRegex = "std::.*mutex;std::future"; ---------------- PiotrZSL wrote:
I think that this std::string wont be detected because this is just typedef, and oryginal type is actually a std::base_string. Consider adding those as default: ``` std::basic_istringstream std::basic_stringstream std::basic_string_view std::basic_string std::bitset std::basic_regex std::path ``` Those do not cary object ownership, when things like std::vector could. I assume that anyway almost eveyrone will use configuration that catch all and use excludes. You could put into documentation that default check configuration is limited and recommended is to set allowed to .* to catch as much as possible. https://github.com/llvm/llvm-project/pull/76101 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits