diff options
-rw-r--r-- | clang-tools-extra/docs/ReleaseNotes.rst | 6 | ||||
-rw-r--r-- | clang-tools-extra/docs/clang-tidy/checks/misc-fold-init-type.rst | 8 |
2 files changed, 10 insertions, 4 deletions
diff --git a/clang-tools-extra/docs/ReleaseNotes.rst b/clang-tools-extra/docs/ReleaseNotes.rst index b7273a3e05d..fe40386c720 100644 --- a/clang-tools-extra/docs/ReleaseNotes.rst +++ b/clang-tools-extra/docs/ReleaseNotes.rst @@ -92,6 +92,12 @@ identified. The improvements since the 3.8 release include: Detects dangling references in value handlers like ``std::experimental::string_view``. +- New `misc-fold-init-type + <http://clang.llvm.org/extra/clang-tidy/checks/misc-fold-init-type.html>`_ check + + The check flags type mismatches in `folds` like ``std::accumulate`` that might + result in loss of precision. + - New `misc-forward-declaration-namespace <http://clang.llvm.org/extra/clang-tidy/checks/misc-forward-declaration-namespace.html>`_ check diff --git a/clang-tools-extra/docs/clang-tidy/checks/misc-fold-init-type.rst b/clang-tools-extra/docs/clang-tidy/checks/misc-fold-init-type.rst index e41ef47dc53..6b797897b93 100644 --- a/clang-tools-extra/docs/clang-tidy/checks/misc-fold-init-type.rst +++ b/clang-tools-extra/docs/clang-tidy/checks/misc-fold-init-type.rst @@ -5,13 +5,13 @@ misc-fold-init-type The check flags type mismatches in `folds <https://en.wikipedia.org/wiki/Fold_(higher-order_function)>`_ -like `std::accumulate` that might result in loss of precision. -`std::accumulate` folds an input range into an initial value using the type of -the latter, with `operator+` by default. This can cause loss of precision +like ``std::accumulate`` that might result in loss of precision. +``std::accumulate`` folds an input range into an initial value using the type of +the latter, with ``operator+`` by default. This can cause loss of precision through: - Truncation: The following code uses a floating point range and an int - initial value, so trucation wil happen at every application of `operator+` + initial value, so trucation wil happen at every application of ``operator+`` and the result will be `0`, which might not be what the user expected. .. code:: c++ |