From 3aa0008740f848c5ac60ac05d4983e7e666a3af0 Mon Sep 17 00:00:00 2001 From: vlefevre Date: Fri, 14 Sep 2018 15:28:12 +0000 Subject: [tests/random2.c] Fix for 16-bit limb. git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@13199 280ebfd0-de03-0410-8827-d642c229c3f4 --- tests/random2.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/tests/random2.c b/tests/random2.c index 5e364154c..f7f423291 100644 --- a/tests/random2.c +++ b/tests/random2.c @@ -95,10 +95,11 @@ mpfr_random2 (mpfr_ptr x, mp_size_t size, mpfr_exp_t exp, /* Generate a string of nb ones. */ if (nb > bit_pos) { - xp[ri--] = acc | (((mp_limb_t) 2 << bit_pos) - 1); + xp[ri--] = acc | + (MPFR_LIMB_LSHIFT (MPFR_LIMB_ONE, bit_pos + 1) - 1); bit_pos += GMP_NUMB_BITS; bit_pos -= nb; - acc = (~MPFR_LIMB_ONE) << bit_pos; + acc = MPFR_LIMB_LSHIFT (MPFR_LIMB_MAX, bit_pos + 1); } else { -- cgit v1.2.1