summaryrefslogtreecommitdiff
path: root/absl/numeric
diff options
context:
space:
mode:
authorGravatar Abseil Team <absl-team@google.com>2022-08-04 05:04:38 -0700
committerGravatar Copybara-Service <copybara-worker@google.com>2022-08-04 05:05:57 -0700
commit07360899e64ded32e9a5e304bd6a3b6a0ff266bc (patch)
treeb50237b302c3c10c03413b5bd92aa0f311f4a2ff /absl/numeric
parent16af2bbcb9dd1770c64483aed8cd7d4ae7061064 (diff)
Fix "unsafe narrowing" warnings in absl, 4/n.
Addresses failures with the following, in some files: -Wshorten-64-to-32 -Wimplicit-int-conversion -Wsign-compare -Wsign-conversion -Wtautological-unsigned-zero-compare (This specific CL focuses on .cc files in strings/, except /internal/.) Bug: chromium:1292951 PiperOrigin-RevId: 465285043 Change-Id: I37e9d1b4c4e9aa655b720da1467927af2aba995e
Diffstat (limited to 'absl/numeric')
-rw-r--r--absl/numeric/bits.h5
1 files changed, 2 insertions, 3 deletions
diff --git a/absl/numeric/bits.h b/absl/numeric/bits.h
index 628cdf50..df81b9a9 100644
--- a/absl/numeric/bits.h
+++ b/absl/numeric/bits.h
@@ -131,10 +131,9 @@ has_single_bit(T x) noexcept {
// fractional part discarded.
template <class T>
ABSL_INTERNAL_CONSTEXPR_CLZ inline
- typename std::enable_if<std::is_unsigned<T>::value, T>::type
+ typename std::enable_if<std::is_unsigned<T>::value, int>::type
bit_width(T x) noexcept {
- return std::numeric_limits<T>::digits -
- static_cast<unsigned int>(countl_zero(x));
+ return std::numeric_limits<T>::digits - countl_zero(x);
}
// Returns: If x == 0, 0; otherwise the maximal value y such that