3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-13 12:28:44 +00:00
This commit is contained in:
Nikolaj Bjorner 2016-04-28 09:48:04 -07:00
commit c414c6b5fd
2 changed files with 8 additions and 3 deletions

View file

@ -383,10 +383,10 @@ void hwf_manager::round_to_integral(mpf_rounding_mode rm, hwf const & x, hwf & o
}
void hwf_manager::rem(hwf const & x, hwf const & y, hwf & o) {
#if defined(_WINDOWS) && _MSC_VER < 1800
#if defined(_WINDOWS) && _MSC_VER <= 1700
o.value = fmod(x.value, y.value);
if (o.value >= (y.value/2))
o.value /= 2.0;
if (o.value >= (y.value/2.0))
o.value -= y.value;
#else
o.value = remainder(x.value, y.value);
#endif

View file

@ -1411,8 +1411,13 @@ std::string mpf_manager::to_string_hexfloat(mpf const & x) {
std::stringstream ss("");
std::ios::fmtflags ff = ss.setf(std::ios_base::hex | std::ios_base::uppercase |
std::ios_base::showpoint | std::ios_base::showpos);
ss.setf(ff);
ss.precision(13);
#if defined(_WIN32) && _MSC_VER >= 1800
ss << std::hexfloat << to_double(x);
#else
ss << std::hex << (*reinterpret_cast<const unsigned long long *>(&(x)));
#endif
return ss.str();
}