summaryrefslogtreecommitdiffstats
path: root/clang-tools-extra/clang-tidy/google/StringReferenceMemberCheck.h
diff options
context:
space:
mode:
Diffstat (limited to 'clang-tools-extra/clang-tidy/google/StringReferenceMemberCheck.h')
-rw-r--r--clang-tools-extra/clang-tidy/google/StringReferenceMemberCheck.h54
1 files changed, 0 insertions, 54 deletions
diff --git a/clang-tools-extra/clang-tidy/google/StringReferenceMemberCheck.h b/clang-tools-extra/clang-tidy/google/StringReferenceMemberCheck.h
deleted file mode 100644
index 5a39fd9b372..00000000000
--- a/clang-tools-extra/clang-tidy/google/StringReferenceMemberCheck.h
+++ /dev/null
@@ -1,54 +0,0 @@
-//===--- StringReferenceMemberCheck.h - clang-tidy ----------------*- C++ -*-===//
-//
-// The LLVM Compiler Infrastructure
-//
-// This file is distributed under the University of Illinois Open Source
-// License. See LICENSE.TXT for details.
-//
-//===----------------------------------------------------------------------===//
-
-#ifndef LLVM_CLANG_TOOLS_EXTRA_CLANG_TIDY_GOOGLE_STRINGREFERENCEMEMBERCHECK_H
-#define LLVM_CLANG_TOOLS_EXTRA_CLANG_TIDY_GOOGLE_STRINGREFERENCEMEMBERCHECK_H
-
-#include "../ClangTidy.h"
-
-namespace clang {
-namespace tidy {
-namespace google {
-namespace runtime {
-
-/// Finds members of type `const string&`.
-///
-/// const string reference members are generally considered unsafe as they can
-/// be created from a temporary quite easily.
-///
-/// \code
-/// struct S {
-/// S(const string &Str) : Str(Str) {}
-/// const string &Str;
-/// };
-/// S instance("string");
-/// \endcode
-///
-/// In the constructor call a string temporary is created from `const char *`
-/// and destroyed immediately after the call. This leaves around a dangling
-/// reference.
-///
-/// This check emit warnings for both `std::string` and `::string` const
-/// reference members.
-///
-/// Corresponding cpplint.py check name: 'runtime/member_string_reference'.
-class StringReferenceMemberCheck : public ClangTidyCheck {
-public:
- StringReferenceMemberCheck(StringRef Name, ClangTidyContext *Context)
- : ClangTidyCheck(Name, Context) {}
- void registerMatchers(ast_matchers::MatchFinder *Finder) override;
- void check(const ast_matchers::MatchFinder::MatchResult &Result) override;
-};
-
-} // namespace runtime
-} // namespace google
-} // namespace tidy
-} // namespace clang
-
-#endif // LLVM_CLANG_TOOLS_EXTRA_CLANG_TIDY_GOOGLE_STRINGREFERENCEMEMBERCHECK_H
OpenPOWER on IntegriCloud