[clang-tools-extra] efda335 - [clang-tidy] Make readability-container-data-pointer use <string> header

Carlos Galvez via cfe-commits cfe-commits at lists.llvm.org
Sat Mar 11 05:59:52 PST 2023


Author: Mike Crowe
Date: 2023-03-11T13:59:42Z
New Revision: efda335bf5be11b5ad4f94f3319d859563542553

URL: https://github.com/llvm/llvm-project/commit/efda335bf5be11b5ad4f94f3319d859563542553
DIFF: https://github.com/llvm/llvm-project/commit/efda335bf5be11b5ad4f94f3319d859563542553.diff

LOG: [clang-tidy] Make readability-container-data-pointer use <string> header

This requires operator[] to be added to the std::basic_string
implementation.

Depends on D144216

Reviewed By: carlosgalvezp

Differential Revision: https://reviews.llvm.org/D145310

Added: 
    

Modified: 
    clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/string
    clang-tools-extra/test/clang-tidy/checkers/readability/container-data-pointer.cpp

Removed: 
    


################################################################################
diff  --git a/clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/string b/clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/string
index 614480968f2aa..5cc9cd367e4d9 100644
--- a/clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/string
+++ b/clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/string
@@ -42,6 +42,9 @@ struct basic_string {
   _Type& insert(size_type pos, const C* s);
   _Type& insert(size_type pos, const C* s, size_type n);
 
+  _Type& operator[](size_type);
+  const _Type& operator[](size_type) const;
+
   _Type& operator+=(const _Type& str);
   _Type& operator+=(const C* s);
   _Type& operator=(const _Type& str);

diff  --git a/clang-tools-extra/test/clang-tidy/checkers/readability/container-data-pointer.cpp b/clang-tools-extra/test/clang-tidy/checkers/readability/container-data-pointer.cpp
index 7f75564ad9dc9..ee2ba6a48752c 100644
--- a/clang-tools-extra/test/clang-tidy/checkers/readability/container-data-pointer.cpp
+++ b/clang-tools-extra/test/clang-tidy/checkers/readability/container-data-pointer.cpp
@@ -1,4 +1,5 @@
-// RUN: %check_clang_tidy %s readability-container-data-pointer %t -- -- -fno-delayed-template-parsing
+// RUN: %check_clang_tidy %s readability-container-data-pointer %t -- -- -isystem %clang_tidy_headers -fno-delayed-template-parsing
+#include <string>
 
 typedef __SIZE_TYPE__ size_t;
 
@@ -17,22 +18,6 @@ struct vector {
   const T &operator[](size_type) const;
 };
 
-template <typename T>
-struct basic_string {
-  using size_type = size_t;
-
-  basic_string();
-
-  T *data();
-  const T *data() const;
-
-  T &operator[](size_t);
-  const T &operator[](size_type) const;
-};
-
-typedef basic_string<char> string;
-typedef basic_string<wchar_t> wstring;
-
 template <typename T>
 struct is_integral;
 


        


More information about the cfe-commits mailing list