diff options
author | pelissip <pelissip@280ebfd0-de03-0410-8827-d642c229c3f4> | 2005-06-13 12:03:30 +0000 |
---|---|---|
committer | pelissip <pelissip@280ebfd0-de03-0410-8827-d642c229c3f4> | 2005-06-13 12:03:30 +0000 |
commit | 4e3062b51782d726f1fe92400d5ee677200e2e59 (patch) | |
tree | 053917036715e2060b894b03583da0501940c4c0 /root.c | |
parent | 2f2f940b8ceec0deb86ca4697c6c58725d7f8391 (diff) | |
download | mpfr-4e3062b51782d726f1fe92400d5ee677200e2e59.tar.gz |
Fix bug with x<0 and k even
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@3647 280ebfd0-de03-0410-8827-d642c229c3f4
Diffstat (limited to 'root.c')
-rw-r--r-- | root.c | 7 |
1 files changed, 7 insertions, 0 deletions
@@ -107,6 +107,13 @@ mpfr_root (mpfr_ptr y, mpfr_srcptr x, unsigned long k, mp_rnd_t rnd_mode) } } + /* Returns NAN for x < 0 and k even */ + else if (MPFR_IS_NEG (x) && (k % 2 == 0)) + { + MPFR_SET_NAN (y); + MPFR_RET_NAN; + } + /* General case */ MPFR_SAVE_EXPO_MARK (expo); mpz_init (m); |