Index: docs/clang-tidy/checks/cppcoreguidelines-pro-bounds-constant-array-index.rst =================================================================== --- docs/clang-tidy/checks/cppcoreguidelines-pro-bounds-constant-array-index.rst +++ docs/clang-tidy/checks/cppcoreguidelines-pro-bounds-constant-array-index.rst @@ -18,3 +18,8 @@ The check can generate fixes after this option has been set to the name of the include file that contains ``gsl::at()``, e.g. `"gsl/gsl.h"`. + +.. option:: IncludeStyle + + A string specifying which include-style is used, `llvm` or `google`. Default + is `llvm`. Index: docs/clang-tidy/checks/google-build-namespaces.rst =================================================================== --- docs/clang-tidy/checks/google-build-namespaces.rst +++ docs/clang-tidy/checks/google-build-namespaces.rst @@ -10,3 +10,14 @@ https://google.github.io/styleguide/cppguide.html#Namespaces Corresponding cpplint.py check name: `build/namespaces`. + +Options +------- + +.. option:: HeaderFileExtensions + + A comma-separated list of filename extensions of header files (the filename + extensions should not include "." prefix). Default is "h,hh,hpp,hxx". + For header files without an extension, use an empty string (if there are no + other desired extensions) or leave an empty element in the list. e.g., + "h,hh,hpp,hxx," (note the trailing comma). Index: docs/clang-tidy/checks/google-global-names-in-headers.rst =================================================================== --- docs/clang-tidy/checks/google-global-names-in-headers.rst +++ docs/clang-tidy/checks/google-global-names-in-headers.rst @@ -15,6 +15,7 @@ .. option:: HeaderFileExtensions A comma-separated list of filename extensions of header files (the filename - extensions should not contain "." prefix). "h" by default. For extension-less - header files, using an empty string or leaving an empty string between "," - if there are other filename extensions. + extensions should not contain "." prefix). Default is "h". + For header files without an extension, use an empty string (if there are no + other desired extensions) or leave an empty element in the list. e.g., + "h,hh,hpp,hxx," (note the trailing comma). Index: docs/clang-tidy/checks/google-runtime-int.rst =================================================================== --- docs/clang-tidy/checks/google-runtime-int.rst +++ docs/clang-tidy/checks/google-runtime-int.rst @@ -10,3 +10,18 @@ https://google.github.io/styleguide/cppguide.html#Integer_Types. Correspondig cpplint.py check: `runtime/int`. + +Options +------- + +.. option:: UnsignedTypePrefix + + A string specifying the unsigned type prefix. Default is `uint`. + +.. option:: SignedTypePrefix + + A string specifying the signed type prefix. Default is `int`. + +.. option:: TypeSuffix + + A string specifying the type suffix. Default is an empty string. Index: docs/clang-tidy/checks/list.rst =================================================================== --- docs/clang-tidy/checks/list.rst +++ docs/clang-tidy/checks/list.rst @@ -1,7 +1,7 @@ .. title:: clang-tidy - Clang-Tidy Checks Clang-Tidy Checks -========================= +================= .. toctree:: boost-use-to-string Index: docs/clang-tidy/checks/llvm-header-guard.rst =================================================================== --- docs/clang-tidy/checks/llvm-header-guard.rst +++ docs/clang-tidy/checks/llvm-header-guard.rst @@ -10,7 +10,8 @@ .. option:: HeaderFileExtensions - A comma-separated list of filename extensions of header files (The filename - extension should not contain "." prefix). Default value is ",h,hh,hpp,hxx". - For extension-less header files, using an empty string or leaving an empty - string between "," if there are other filename extensions. + A comma-separated list of filename extensions of header files (the filename + extensions should not include "." prefix). Default is "h,hh,hpp,hxx". + For header files without an extension, use an empty string (if there are no + other desired extensions) or leave an empty element in the list. e.g., + "h,hh,hpp,hxx," (note the trailing comma). Index: docs/clang-tidy/checks/llvm-namespace-comment.rst =================================================================== --- docs/clang-tidy/checks/llvm-namespace-comment.rst +++ docs/clang-tidy/checks/llvm-namespace-comment.rst @@ -11,3 +11,18 @@ http://llvm.org/docs/CodingStandards.html#namespace-indentation https://google.github.io/styleguide/cppguide.html#Namespaces + +Options +------- + +.. option:: ShortNamespaceLines + + Requires the closing brace of the namespace definition to be followed by a + closing comment if the body of the namespace has more than + `ShortNamespaceLines` lines of code. The value is an unsigned integer that + defaults to `1U`. + +.. option:: SpacesBeforeComments + + An unsigned integer specifying the number of spaces before the comment + closing a namespace definition. Default is `1U`. Index: docs/clang-tidy/checks/misc-definitions-in-headers.rst =================================================================== --- docs/clang-tidy/checks/misc-definitions-in-headers.rst +++ docs/clang-tidy/checks/misc-definitions-in-headers.rst @@ -73,3 +73,19 @@ // OK: member function definition of a class template is allowed. template void B::f1() {} + +Options +------- + +.. option:: HeaderFileExtensions + + A comma-separated list of filename extensions of header files (the filename + extensions should not include "." prefix). Default is "h,hh,hpp,hxx". + For header files without an extension, use an empty string (if there are no + other desired extensions) or leave an empty element in the list. e.g., + "h,hh,hpp,hxx," (note the trailing comma). + +.. option:: UseHeaderFileExtension + + When non-zero, the check will use the file extension to distinguish header + files. Default is `1`. Index: docs/clang-tidy/checks/misc-move-constructor-init.rst =================================================================== --- docs/clang-tidy/checks/misc-move-constructor-init.rst +++ docs/clang-tidy/checks/misc-move-constructor-init.rst @@ -11,3 +11,18 @@ It also flags constructor arguments that are passed by value, have a non-deleted move-constructor and are assigned to a class field by copy construction. + +Options +------- + +.. option:: IncludeStyle + + A string specifying which include-style is used, `llvm` or `google`. Default + is `llvm`. + +.. option:: UseCERTSemantics + + When non-zero, the check conforms to the behavior expected by the CERT secure + coding recommendation + `OOP11-CPP `_. + Default is `0` for misc-move-constructor-init and `1` for cert-oop11-cpp. Index: docs/clang-tidy/checks/misc-sizeof-expression.rst =================================================================== --- docs/clang-tidy/checks/misc-sizeof-expression.rst +++ docs/clang-tidy/checks/misc-sizeof-expression.rst @@ -133,3 +133,22 @@ void getInt(int* dst) { memcpy(dst, buf, sizeof(INT_SZ)); // sizeof(sizeof(int)) is suspicious. } + +Options +------- + +.. option:: WarnOnSizeOfConstant + + When non-zero, the check will warn on an expression like + ``sizeof(CONSTANT)``. Default is `1`. + +.. option:: WarnOnSizeOfThis + + When non-zero, the check will warn on an expression like ``sizeof(this)``. + Default is `1`. + +.. option:: WarnOnSizeOfCompareToConstant + + When non-zero, the check will warn on an expression like + ``sizeof(epxr) <= k`` for a suspicious constant `k` while `k` is `0` or + greater than `0x8000`. Default is `1`. Index: docs/clang-tidy/checks/misc-string-constructor.rst =================================================================== --- docs/clang-tidy/checks/misc-string-constructor.rst +++ docs/clang-tidy/checks/misc-string-constructor.rst @@ -11,7 +11,7 @@ .. code-block:: c++ - std::string('x', 50) str; // should be std::string(50, 'x') + std::string('x', 50) str; // should be std::string(50, 'x') Calling the string-literal constructor with a length bigger than the literal is suspicious and adds extra random characters to the string. @@ -30,3 +30,15 @@ .. code-block:: c++ std::string("test", 0); // Creation of an empty string. + +Options +------- + +.. option:: WarnOnLargeLength + + When non-zero, the check will warn on a string with a length greater than + `LargeLengthThreshold`. Default is `1`. + +.. option:: LargeLengthThreshold + + An integer specifying the large length threshold. Default is `0x800000`. Index: docs/clang-tidy/checks/misc-suspicious-missing-comma.rst =================================================================== --- docs/clang-tidy/checks/misc-suspicious-missing-comma.rst +++ docs/clang-tidy/checks/misc-suspicious-missing-comma.rst @@ -39,3 +39,21 @@ "Code " PRIu64, // May warn here. "Warning %s", }; + +Options +------- + +.. option:: SizeThreshold + + An unsigned integer specifying the minimum size of a string literal to be + considered by the check. Default is `5U`. + +.. option:: RatioThreshold + + A string specifying the maximum threshold ratio [0, 1.0] of suspicious string + literals to be considered. Default is `".2"`. + +.. option:: MaxConcatenatedTokens + + An unsigned integer specifying the maximum number of concatenated tokens. + Default is `5U`. Index: docs/clang-tidy/checks/misc-suspicious-string-compare.rst =================================================================== --- docs/clang-tidy/checks/misc-suspicious-string-compare.rst +++ docs/clang-tidy/checks/misc-suspicious-string-compare.rst @@ -36,3 +36,30 @@ .. code-block:: c++ if (strcmp(...) < 0.) // Incorrect usage of the returned value. + +Options +------- + +.. option:: WarnOnImplicitComparison + + When non-zero, the check will warn on implicit comparison. `1` by default. + +.. option:: WarnOnLogicalNotComparison + + When non-zero, the check will warn on logical not comparison. `0` by default. + +.. option:: StringCompareLikeFunctions + + A string specifying the comma-separated names of the extra string comparison + functions. Default is an empty string. + + The check will detect the following string comparison functions: + `__builtin_memcmp`, `__builtin_strcasecmp`, `__builtin_strcmp`, + `__builtin_strncasecmp`, `__builtin_strncmp`, `_mbscmp`, `_mbscmp_l`, + `_mbsicmp`, `_mbsicmp_l`, `_mbsnbcmp`, `_mbsnbcmp_l`, `_mbsnbicmp`, + `_mbsnbicmp_l`, `_mbsncmp`, `_mbsncmp_l`, `_mbsnicmp`, `_mbsnicmp_l`, + `_memicmp`, `_memicmp_l`, `_stricmp`, `_stricmp_l`, `_strnicmp`, + `_strnicmp_l`, `_wcsicmp`, `_wcsicmp_l`, `_wcsnicmp`, `_wcsnicmp_l`, + `lstrcmp`, `lstrcmpi`, `memcmp`, `memicmp`, `strcasecmp`, `strcmp`, + `strcmpi`, `stricmp`, `strncasecmp`, `strncmp`, `strnicmp`, `wcscasecmp`, + `wcscmp`, `wcsicmp`, `wcsncmp`, `wcsnicmp`, `wmemcmp`. Index: docs/clang-tidy/checks/modernize-pass-by-value.rst =================================================================== --- docs/clang-tidy/checks/modernize-pass-by-value.rst +++ docs/clang-tidy/checks/modernize-pass-by-value.rst @@ -151,3 +151,11 @@ For more information about the pass-by-value idiom, read: `Want Speed? Pass by Value`_. .. _Want Speed? Pass by Value: http://cpp-next.com/archive/2009/08/want-speed-pass-by-value/ + +Options +------- + +.. option:: IncludeStyle + + A string specifying which include-style is used, `llvm` or `google`. Default + is `llvm`. Index: docs/clang-tidy/checks/modernize-replace-auto-ptr.rst =================================================================== --- docs/clang-tidy/checks/modernize-replace-auto-ptr.rst +++ docs/clang-tidy/checks/modernize-replace-auto-ptr.rst @@ -70,3 +70,10 @@ // only 'f()' (or similar) will trigger the replacement. +Options +------- + +.. option:: IncludeStyle + + A string specifying which include-style is used, `llvm` or `google`. Default + is `llvm`. Index: docs/clang-tidy/checks/performance-for-range-copy.rst =================================================================== --- docs/clang-tidy/checks/performance-for-range-copy.rst +++ docs/clang-tidy/checks/performance-for-range-copy.rst @@ -17,3 +17,11 @@ 2. The loop variable is not const, but only const methods or operators are invoked on it, or it is used as const reference or value argument in constructors or function calls. + +Options +------- + +.. option:: WarnOnAllAutoCopies + + When non-zero, warns on any use of `auto` as the type of the range-based for + loop variable. Default is `0`. Index: docs/clang-tidy/checks/performance-inefficient-string-concatenation.rst =================================================================== --- docs/clang-tidy/checks/performance-inefficient-string-concatenation.rst +++ docs/clang-tidy/checks/performance-inefficient-string-concatenation.rst @@ -5,7 +5,7 @@ This check warns about the performance overhead arising from concatenating strings using the ``operator+``, for instance: - + .. code-block:: c++ std::string a("Foo"), b("Bar"); @@ -13,7 +13,7 @@ Instead of this structure you should use ``operator+=`` or ``std::string``'s (``std::basic_string``) class member function ``append()``. For instance: - + .. code-block:: c++ std::string a("Foo"), b("Baz"); @@ -28,7 +28,7 @@ std::string a("Foo"), b("Baz"); for (int i = 0; i < 20000; ++i) { a.append("Bar").append(b); - } + } And this can be rewritten too: @@ -49,3 +49,11 @@ void g() { f(std::string(a).append("Bar").append(b)); } + +Options +------- + +.. option:: StrictMode + + When zero, the check will only check the string usage in ``while``, ``for`` + and ``for-range`` statements. Default is `0`. Index: docs/clang-tidy/checks/performance-unnecessary-value-param.rst =================================================================== --- docs/clang-tidy/checks/performance-unnecessary-value-param.rst +++ docs/clang-tidy/checks/performance-unnecessary-value-param.rst @@ -53,3 +53,11 @@ void setValue(string Value) { Field = std::move(Value); } + +Options +------- + +.. option:: IncludeStyle + + A string specifying which include-style is used, `llvm` or `google`. Default + is `llvm`. Index: docs/clang-tidy/checks/readability-implicit-bool-cast.rst =================================================================== --- docs/clang-tidy/checks/readability-implicit-bool-cast.rst +++ docs/clang-tidy/checks/readability-implicit-bool-cast.rst @@ -116,3 +116,15 @@ Occurrences of implicit casts inside macros and template instantiations are deliberately ignored, as it is not clear how to deal with such cases. + +Options +------- + +.. option:: AllowConditionalIntegerCasts + + When non-zero, the check will allow conditional integer casts. Default is + `0`. + +.. option:: AllowConditionalPointerCasts + + When non-zero, the check will allow conditional pointer casts. Default is `0`.