aboutsummaryrefslogtreecommitdiff
path: root/libstdc++-v3/src
diff options
context:
space:
mode:
authorJonathan Wakely <jwakely@redhat.com>2020-10-06 00:05:11 +0100
committerJonathan Wakely <jwakely@redhat.com>2020-10-06 00:05:11 +0100
commit9af65c2b9047168f14e623d55f87beda33ba1503 (patch)
treebed8b420d0dd9cbb74392afae4b379de69c79d4e /libstdc++-v3/src
parent66a032079309069fec085fff2a014ac217ce5781 (diff)
downloadgcc-9af65c2b9047168f14e623d55f87beda33ba1503.zip
gcc-9af65c2b9047168f14e623d55f87beda33ba1503.tar.gz
gcc-9af65c2b9047168f14e623d55f87beda33ba1503.tar.bz2
libstdc++: Reduce uses of std::numeric_limits
This avoids unnecessary instantiations of std::numeric_limits or inclusion of <limits> when a more lightweight alternative would work. Some uses can be replaced with __gnu_cxx::__int_traits and some can just use size_t(-1) directly where SIZE_MAX is needed. libstdc++-v3/ChangeLog: * include/bits/regex.h: Use __int_traits<int> instead of std::numeric_limits<int>. * include/bits/uniform_int_dist.h: Use __int_traits<T>::__max instead of std::numeric_limits<T>::max(). * include/bits/hashtable_policy.h: Use size_t(-1) instead of std::numeric_limits<size_t>::max(). * include/std/regex: Include <ext/numeric_traits.h>. * include/std/string_view: Use typedef for __int_traits<int>. * src/c++11/hashtable_c++0x.cc: Use size_t(-1) instead of std::numeric_limits<size_t>::max(). * testsuite/std/ranges/iota/96042.cc: Include <limits>. * testsuite/std/ranges/iota/difference_type.cc: Likewise. * testsuite/std/ranges/subrange/96042.cc: Likewise.
Diffstat (limited to 'libstdc++-v3/src')
-rw-r--r--libstdc++-v3/src/c++11/hashtable_c++0x.cc2
1 files changed, 1 insertions, 1 deletions
diff --git a/libstdc++-v3/src/c++11/hashtable_c++0x.cc b/libstdc++-v3/src/c++11/hashtable_c++0x.cc
index de8e2c7..62762f3 100644
--- a/libstdc++-v3/src/c++11/hashtable_c++0x.cc
+++ b/libstdc++-v3/src/c++11/hashtable_c++0x.cc
@@ -78,7 +78,7 @@ namespace __detail
// Set next resize to the max value so that we never try to rehash again
// as we already reach the biggest possible bucket number.
// Note that it might result in max_load_factor not being respected.
- _M_next_resize = numeric_limits<size_t>::max();
+ _M_next_resize = size_t(-1);
else
_M_next_resize =
__builtin_floorl(*__next_bkt * (long double)_M_max_load_factor);