diff options
author | pelissip <pelissip@280ebfd0-de03-0410-8827-d642c229c3f4> | 2003-11-05 16:18:16 +0000 |
---|---|---|
committer | pelissip <pelissip@280ebfd0-de03-0410-8827-d642c229c3f4> | 2003-11-05 16:18:16 +0000 |
commit | d406c7c3f07cacb170533149e9319c334062792b (patch) | |
tree | da17b87f0205cc16561cf4d73f95ffc893e0385d /ui_sub.c | |
parent | 3e4ced245d9e603cfc806e64ab56b9b2b7223287 (diff) | |
download | mpfr-d406c7c3f07cacb170533149e9319c334062792b.tar.gz |
Fix some bugs (Use MPFR_ASSERT(1) instead of MPFR_ASSERT(0))
Optimize swap.c and copysign.c.
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@2536 280ebfd0-de03-0410-8827-d642c229c3f4
Diffstat (limited to 'ui_sub.c')
-rw-r--r-- | ui_sub.c | 8 |
1 files changed, 4 insertions, 4 deletions
@@ -39,19 +39,19 @@ mpfr_ui_sub (mpfr_ptr y, unsigned long int u, mpfr_srcptr x, mp_rnd_t rnd_mode) MPFR_SET_NAN(y); MPFR_RET_NAN; } - if (MPFR_IS_INF(x)) + else if (MPFR_IS_INF(x)) { /* u - Inf = -Inf and u - -Inf = +Inf */ MPFR_SET_INF(y); MPFR_SET_OPPOSITE_SIGN(y,x); MPFR_RET(0); /* +/-infinity is exact */ } - if (MPFR_IS_ZERO(x)) + else if (MPFR_IS_ZERO(x)) /* u - 0 = u */ return mpfr_set_ui(y, u, rnd_mode); /* Should never reach this code */ - MPFR_ASSERTN(1); - return 0; /* To avoid a warning. It isn't reached */ + else + MPFR_ASSERTN(0); } else if (u) { |