diff options
author | vlefevre <vlefevre@280ebfd0-de03-0410-8827-d642c229c3f4> | 2015-06-10 07:50:21 +0000 |
---|---|---|
committer | vlefevre <vlefevre@280ebfd0-de03-0410-8827-d642c229c3f4> | 2015-06-10 07:50:21 +0000 |
commit | c8c348bbdaaf6ee54a79a5a8aae9138e34b54b6c (patch) | |
tree | 88d649bf154876159bb116e229d86511f3f574b6 /src | |
parent | 68c2420de70198c954fd5f5fe63348ec46b587aa (diff) | |
download | mpfr-c8c348bbdaaf6ee54a79a5a8aae9138e34b54b6c.tar.gz |
[src/sqrt.c] Fixed assertion failure in reduced exponent range.
Note: This could happen only in very specific exponent ranges,
in particular, which do not include the number 1.
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@9540 280ebfd0-de03-0410-8827-d642c229c3f4
Diffstat (limited to 'src')
-rw-r--r-- | src/sqrt.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/sqrt.c b/src/sqrt.c index e2efa1335..71aa97a1e 100644 --- a/src/sqrt.c +++ b/src/sqrt.c @@ -226,7 +226,8 @@ mpfr_sqrt (mpfr_ptr r, mpfr_srcptr u, mpfr_rnd_t rnd_mode) MPN_COPY (rp0, rp + 1, rsize - 1); end: - MPFR_SET_EXP (r, expr); + /* Do not use MPFR_SET_EXP because the range has not been checked yet. */ + MPFR_EXP (r) = expr; MPFR_TMP_FREE(marker); return mpfr_check_range (r, inexact, rnd_mode); |