summaryrefslogtreecommitdiff
path: root/tests/tget_str.c
diff options
context:
space:
mode:
authorzimmerma <zimmerma@280ebfd0-de03-0410-8827-d642c229c3f4>2004-02-03 10:06:53 +0000
committerzimmerma <zimmerma@280ebfd0-de03-0410-8827-d642c229c3f4>2004-02-03 10:06:53 +0000
commita3bad9513b29aed9518992a4488556788a4248a6 (patch)
treee7924f8fc42d75d781487fff204b885dea2387e7 /tests/tget_str.c
parenteddbad0b931c43cfbca69f0e1b43396ddbc3ebbb (diff)
downloadmpfr-a3bad9513b29aed9518992a4488556788a4248a6.tar.gz
fixed bug in get_str (case pow2, rnd=up or down)
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@2655 280ebfd0-de03-0410-8827-d642c229c3f4
Diffstat (limited to 'tests/tget_str.c')
-rw-r--r--tests/tget_str.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/tests/tget_str.c b/tests/tget_str.c
index faab62088..8fbbdf0f1 100644
--- a/tests/tget_str.c
+++ b/tests/tget_str.c
@@ -185,6 +185,26 @@ check_small (void)
}
(*__gmp_free_func) (s, strlen (s) + 1);
+ mpfr_set_prec (x, 145);
+ mpfr_set_str_binary (x, "-0.1000110011000001011000010101101010110110101100101110100011111100011110011001001001010000100001000011000011000000010111011001000111101001110100110e6");
+ s = mpfr_get_str (NULL, &e, 4, 53, x, GMP_RNDU);
+ if (strcmp (s, "-20303001120111222312230232203330132121021100201003003") || (e != 3))
+ {
+ printf ("Error in mpfr_get_str (5): s=%s e=%d\n", s, (int) e);
+ exit (1);
+ }
+ (*__gmp_free_func) (s, strlen (s) + 1);
+
+ mpfr_set_prec (x, 45);
+ mpfr_set_str_binary (x, "-0.00100111010110010001011001110111010001010010010");
+ s = mpfr_get_str (NULL, &e, 32, 9, x, GMP_RNDN);
+ if (strcmp (s, "-4tchctq54") || (e != 0))
+ {
+ printf ("Error in mpfr_get_str (6): s=%s e=%d\n", s, (int) e);
+ exit (1);
+ }
+ (*__gmp_free_func) (s, strlen (s) + 1);
+
mpfr_clear (x);
}