/* Proceed iff we get a normal number, i.e. not NaN or Inf and no
overflow/underflow occurred. If -frounding-math, proceed iff the
result of calling FUNC was exact. */
- if (mpfr_number_p (MPC_RE (m)) && mpfr_number_p (MPC_IM (m))
+ if (mpfr_number_p (mpc_realref (m)) && mpfr_number_p (mpc_imagref (m))
&& !mpfr_overflow_p () && !mpfr_underflow_p ()
&& (!flag_rounding_math || !inexact))
{
REAL_VALUE_TYPE re, im;
- real_from_mpfr (&re, MPC_RE (m), type, GMP_RNDN);
- real_from_mpfr (&im, MPC_IM (m), type, GMP_RNDN);
+ real_from_mpfr (&re, mpc_realref (m), type, GMP_RNDN);
+ real_from_mpfr (&im, mpc_imagref (m), type, GMP_RNDN);
/* Proceed iff GCC's REAL_VALUE_TYPE can hold the MPFR values,
check for overflow/underflow. If the REAL_VALUE_TYPE is zero
but the mpft_t is not, then we underflowed in the
conversion. */
if (real_isfinite (&re) && real_isfinite (&im)
- && (re.cl == rvc_zero) == (mpfr_zero_p (MPC_RE (m)) != 0)
- && (im.cl == rvc_zero) == (mpfr_zero_p (MPC_IM (m)) != 0))
+ && (re.cl == rvc_zero) == (mpfr_zero_p (mpc_realref (m)) != 0)
+ && (im.cl == rvc_zero) == (mpfr_zero_p (mpc_imagref (m)) != 0))
{
REAL_VALUE_TYPE re_mode, im_mode;
mpc_t m;
mpc_init2 (m, prec);
- mpfr_from_real (MPC_RE(m), re, rnd);
- mpfr_from_real (MPC_IM(m), im, rnd);
+ mpfr_from_real (mpc_realref(m), re, rnd);
+ mpfr_from_real (mpc_imagref(m), im, rnd);
mpfr_clear_flags ();
inexact = func (m, m, crnd);
result = do_mpc_ckconv (m, type, inexact);
mpc_init2 (c, mpfr_get_default_prec());
mpc_set_fr_fr (c, input_re, input_im, GFC_MPC_RND_MODE);
func (c, c, GFC_MPC_RND_MODE);
- mpfr_set (result_re, MPC_RE (c), GFC_RND_MODE);
- mpfr_set (result_im, MPC_IM (c), GFC_RND_MODE);
+ mpfr_set (result_re, mpc_realref (c), GFC_RND_MODE);
+ mpfr_set (result_im, mpc_imagref (c), GFC_RND_MODE);
mpc_clear (c);
}
#endif