diff --git a/src/test/memory.cpp b/src/test/memory.cpp index f83403e04..58e8855b6 100644 --- a/src/test/memory.cpp +++ b/src/test/memory.cpp @@ -39,11 +39,7 @@ static void hit_me(char const* wm) { Z3_mk_bv_sort(ctx,i); } -<<<<<<< HEAD - catch (std::bad_alloc&) { -======= catch (const std::bad_alloc&) { ->>>>>>> origin/master std::cout << "caught\n"; } } diff --git a/src/util/mpz.cpp b/src/util/mpz.cpp index da96fbf84..2d3dd1764 100644 --- a/src/util/mpz.cpp +++ b/src/util/mpz.cpp @@ -601,11 +601,7 @@ mpz mpz_manager::mod2k(mpz const & a, unsigned k) { ensure_mpz_t a1(a); mk_big(result); MPZ_BEGIN_CRITICAL(); -<<<<<<< HEAD - mpz_tdiv_r_2exp(*result.ptr(), a1(), k); -======= - mpz_fdiv_r_2exp(*result.m_ptr, a1(), k); ->>>>>>> origin/master + mpz_fdiv_r_2exp(*result.ptr(), a1(), k); MPZ_END_CRITICAL(); #endif STRACE(mpz, tout << to_string(result) << '\n';); @@ -1763,16 +1759,14 @@ std::string mpz_manager::to_string(mpz const & a) const { template unsigned mpz_manager::hash(mpz const & a) { -<<<<<<< HEAD - if (is_small(a)) - return ::abs(a.value()); -======= if (is_small(a)) { - // compute abs in unsigned arithmetic: ::abs(INT_MIN) is undefined - unsigned u = static_cast(a.m_val); - return a.m_val < 0 ? 0u - u : u; + // compute abs in unsigned arithmetic to avoid undefined behavior with INT_MIN + int64_t val = a.value(); + uint64_t u = static_cast(val); + uint64_t abs_val = val < 0 ? 0u - u : u; + // For 64-bit values, combine high and low 32 bits for better hash distribution + return static_cast(abs_val) ^ static_cast(abs_val >> 32); } ->>>>>>> origin/master #ifndef _MP_GMP unsigned sz = size(a); if (sz == 1) diff --git a/src/util/mpz.h b/src/util/mpz.h index a64688a05..f572406a4 100644 --- a/src/util/mpz.h +++ b/src/util/mpz.h @@ -385,23 +385,9 @@ class mpz_manager { cell->m_digits[0] = static_cast(abs_val); } else { -<<<<<<< HEAD cell->m_digits[0] = static_cast(abs_val); cell->m_digits[1] = static_cast(abs_val >> 32); cell->m_size = (abs_val >> 32) == 0 ? 1 : 2; -======= - cell = reserve; - cell->m_size = 1; - digit_t* cell_digits = reinterpret_cast(cell + 1); - if (a.value() < 0) { - sign = -1; - cell_digits[0] = -a.value(); - } - else { - sign = 1; - cell_digits[0] = a.value(); - } ->>>>>>> origin/master } } else {