summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--clang-tools-extra/docs/clang-tidy/checks/misc-sizeof-container.rst9
1 files changed, 7 insertions, 2 deletions
diff --git a/clang-tools-extra/docs/clang-tidy/checks/misc-sizeof-container.rst b/clang-tools-extra/docs/clang-tidy/checks/misc-sizeof-container.rst
index 2e880d4ef1e..b3cbb25deb0 100644
--- a/clang-tools-extra/docs/clang-tidy/checks/misc-sizeof-container.rst
+++ b/clang-tools-extra/docs/clang-tidy/checks/misc-sizeof-container.rst
@@ -4,7 +4,9 @@ misc-sizeof-container
The check finds usages of ``sizeof`` on expressions of STL container types. Most
likely the user wanted to use ``.size()`` instead.
-Currently only ``std::string`` and ``std::vector<T>`` are supported.
+All class/struct types declared in namespace ``std::`` having a const ``size()``
+method are considered containers, with the exception of ``std::bitset`` and
+``std::array``.
Examples:
@@ -12,9 +14,12 @@ Examples:
std::string s;
int a = 47 + sizeof(s); // warning: sizeof() doesn't return the size of the container. Did you mean .size()?
- // The suggested fix is: int a = 47 + s.size();
int b = sizeof(std::string); // no warning, probably intended.
std::string array_of_strings[10];
int c = sizeof(array_of_strings) / sizeof(array_of_strings[0]); // no warning, definitely intended.
+
+ std::array<int, 3> std_array;
+ int d = sizeof(std_array); // no warning, probably intended.
+
OpenPOWER on IntegriCloud