From c012c87274c9eead25bea7a62ad5b2263d0b5c53 Mon Sep 17 00:00:00 2001 From: vlefevre Date: Mon, 12 Sep 2016 11:25:44 +0000 Subject: [tests/tset_ld.c] Corrected a type (due to a printf with %ld) and fixed a loop in case an extended range is used. (merged changesets r10818-10819 from the trunk) git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/branches/3.1@10852 280ebfd0-de03-0410-8827-d642c229c3f4 --- tests/tset_ld.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/tests/tset_ld.c b/tests/tset_ld.c index 46791052d..b594066d9 100644 --- a/tests/tset_ld.c +++ b/tests/tset_ld.c @@ -199,15 +199,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; - mpfr_exp_t 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); -- cgit v1.2.1