Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/microsoft/GSL.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorWerner Henze <werner.henze+gitcommits@posteo.de>2020-10-14 15:53:43 +0300
committerWerner Henze <werner.henze+gitcommits@posteo.de>2020-10-14 16:04:50 +0300
commit2ccf36b4b9bb0311c38947fa7accaf7661d13013 (patch)
tree39c9b19f1d1766068eccdde06da20575d1bb610f
parentbd23bdc0adae7028365cbbe934f88cbf436da7ee (diff)
eliminate warning, use narrow_cast instead of static_cast
-rw-r--r--include/gsl/span5
1 files changed, 3 insertions, 2 deletions
diff --git a/include/gsl/span b/include/gsl/span
index a649cea..6015d85 100644
--- a/include/gsl/span
+++ b/include/gsl/span
@@ -19,6 +19,7 @@
#include <gsl/gsl_assert> // for Expects
#include <gsl/gsl_byte> // for byte
+#include <gsl/gsl_util> // for narrow_cast
#include <array> // for array
#include <cstddef> // for ptrdiff_t, size_t, nullptr_t
@@ -433,14 +434,14 @@ public:
template <std::size_t MyExtent = Extent, std::enable_if_t<MyExtent != dynamic_extent, int> = 0>
constexpr explicit span(pointer firstElem, pointer lastElem) noexcept
- : storage_(firstElem, static_cast<std::size_t>(lastElem - firstElem))
+ : storage_(firstElem, gsl::narrow_cast<std::size_t>(lastElem - firstElem))
{
Expects(lastElem - firstElem == static_cast<difference_type>(Extent));
}
template <std::size_t MyExtent = Extent, std::enable_if_t<MyExtent == dynamic_extent, int> = 0>
constexpr span(pointer firstElem, pointer lastElem) noexcept
- : storage_(firstElem, static_cast<std::size_t>(lastElem - firstElem))
+ : storage_(firstElem, gsl::narrow_cast<std::size_t>(lastElem - firstElem))
{}
template <std::size_t N,