Make rehash(0) work with ubsan's unsigned-integer-overflow.

Reviewers: mclow.lists, EricWF

Reviewed By: mclow.lists

Subscribers: cfe-commits

Differential Revision: https://reviews.llvm.org/D40743

llvm-svn: 322031
This commit is contained in:
Dan Albert 2018-01-08 21:49:12 +00:00
parent 52b36918d6
commit 0802327a39
1 changed files with 1 additions and 1 deletions

View File

@ -2136,7 +2136,7 @@ template <class _Tp, class _Hash, class _Equal, class _Alloc>
void
__hash_table<_Tp, _Hash, _Equal, _Alloc>::rehash(size_type __n)
{
if (__n == 1)
if (__n < 2)
__n = 2;
else if (__n & (__n - 1))
__n = __next_prime(__n);