diff options
author | vlefevre <vlefevre@280ebfd0-de03-0410-8827-d642c229c3f4> | 2016-09-08 13:24:00 +0000 |
---|---|---|
committer | vlefevre <vlefevre@280ebfd0-de03-0410-8827-d642c229c3f4> | 2016-09-08 13:24:00 +0000 |
commit | 396aa7643e1132f8ff181b444933b13a6fee1d1f (patch) | |
tree | 01fd135006cf6a4442c9f74962ed180a2257b2de | |
parent | 826874373e08964008d391fa6fb5823757459357 (diff) | |
download | mpfr-396aa7643e1132f8ff181b444933b13a6fee1d1f.tar.gz |
[tests/tset_ld.c] Fixed a loop in case an extended range is used
(there are issues on a NetBSD machine, and this could be a cause).
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@10819 280ebfd0-de03-0410-8827-d642c229c3f4
-rw-r--r-- | tests/tset_ld.c | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/tests/tset_ld.c b/tests/tset_ld.c index 99b65d11c..3b73c3fae 100644 --- a/tests/tset_ld.c +++ b/tests/tset_ld.c @@ -370,15 +370,17 @@ static void bug_20160907 (void) { #if HAVE_LDOUBLE_IEEE_EXT_LITTLE - long double dn = 1.0, ld; + long double dn, ld, t = 1.0; mpfr_t mp; - long e = 0; + long e = 1; - while (dn * (long double) 0.5 != 0) + do { - dn = dn * (long double) 0.5; - e --; + e--; + dn = t; + t = dn * (long double) 0.5; } + while (t != 0); /* dn=2^e is now the smallest subnormal */ mpfr_init2 (mp, 64); |