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
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++