summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorvlefevre <vlefevre@280ebfd0-de03-0410-8827-d642c229c3f4>2016-06-03 15:30:53 +0000
committervlefevre <vlefevre@280ebfd0-de03-0410-8827-d642c229c3f4>2016-06-03 15:30:53 +0000
commit0c333508cd631f9541c241df00d416e6bdb31bdd (patch)
tree3d1bc1ffd9b4b5b6a38f22a13ebc4dea5790c7b4
parent82d9c355317c65cb29ea9f0dc5c20dc9ba7fac6f (diff)
downloadmpfr-0c333508cd631f9541c241df00d416e6bdb31bdd.tar.gz
[src/set_float128.c] Added FIXME comment: The mpfr_set_float128 code
generates a divide-by-zero exception. Suggest a solution. git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@10430 280ebfd0-de03-0410-8827-d642c229c3f4
-rw-r--r--src/set_float128.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/set_float128.c b/src/set_float128.c
index 98e47449b..fb3a8402f 100644
--- a/src/set_float128.c
+++ b/src/set_float128.c
@@ -44,6 +44,10 @@ mpfr_set_float128 (mpfr_ptr r, __float128 d, mpfr_rnd_t rnd_mode)
}
/* Check for INF */
+ /* FIXME: The code below generates a divide-by-zero exception, thus
+ will fail if this exception is trapped. Replace it by > and <
+ comparisons with the maximum positive (resp. negative) finite
+ binary128 numbers? */
if (MPFR_UNLIKELY (d == ((__float128) 1.0 / (__float128) 0.0)))
{
mpfr_set_inf (r, 1);