diff --git a/include/boost/multiprecision/mpfi.hpp b/include/boost/multiprecision/mpfi.hpp index b2b370c6..e0c628fe 100644 --- a/include/boost/multiprecision/mpfi.hpp +++ b/include/boost/multiprecision/mpfi.hpp @@ -477,7 +477,7 @@ inline void eval_subtract(mpfi_float_backend& result, const mpfi_float_backe template inline void eval_multiply(mpfi_float_backend& result, const mpfi_float_backend& o) { - if(&result == &o) + if((void*)&result == (void*)&o) mpfi_sqr(result.data(), o.data()); else mpfi_mul(result.data(), result.data(), o.data()); @@ -612,7 +612,7 @@ inline void eval_subtract(mpfi_float_backend& a, long x, const mpfi_float_ba template inline void eval_multiply(mpfi_float_backend& a, const mpfi_float_backend& x, const mpfi_float_backend& y) { - if(&x == &y) + if((void*)&x == (void*)&y) mpfi_sqr(a.data(), x.data()); else mpfi_mul(a.data(), x.data(), y.data()); diff --git a/include/boost/multiprecision/mpfr.hpp b/include/boost/multiprecision/mpfr.hpp index da864fb4..0449cbe8 100644 --- a/include/boost/multiprecision/mpfr.hpp +++ b/include/boost/multiprecision/mpfr.hpp @@ -952,7 +952,7 @@ inline void eval_subtract(mpfr_float_backend& result, const mpfr_float_b template inline void eval_multiply(mpfr_float_backend& result, const mpfr_float_backend& o) { - if(&o == &result) + if((void*)&o == (void*)&result) mpfr_sqr(result.data(), o.data(), GMP_RNDN); else mpfr_mul(result.data(), result.data(), o.data(), GMP_RNDN); @@ -1087,7 +1087,7 @@ inline void eval_subtract(mpfr_float_backend& a, long x, const mpfr_floa template inline void eval_multiply(mpfr_float_backend& a, const mpfr_float_backend& x, const mpfr_float_backend& y) { - if(&x == &y) + if((void*)&x == (void*)&y) mpfr_sqr(a.data(), x.data(), GMP_RNDN); else mpfr_mul(a.data(), x.data(), y.data(), GMP_RNDN);