summaryrefslogtreecommitdiffstats
path: root/lib/libc/gdtoa
diff options
context:
space:
mode:
authordas <das@FreeBSD.org>2004-01-18 07:53:49 +0000
committerdas <das@FreeBSD.org>2004-01-18 07:53:49 +0000
commit3fa98ba92859997d79fe96a7b53852cd5c4d664d (patch)
tree4878ab122538fdf3f1b8e9aa0575853f9a5557a1 /lib/libc/gdtoa
parent97f28e94894dfb3e66d4924d194fc2d3d6fbacb8 (diff)
downloadFreeBSD-src-3fa98ba92859997d79fe96a7b53852cd5c4d664d.zip
FreeBSD-src-3fa98ba92859997d79fe96a7b53852cd5c4d664d.tar.gz
Fix a bug that caused long double subnormals to be printed
incorrectly on architectures without an explicit normalization bit (sparc64, powerpc).
Diffstat (limited to 'lib/libc/gdtoa')
-rw-r--r--lib/libc/gdtoa/_ldtoa.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/libc/gdtoa/_ldtoa.c b/lib/libc/gdtoa/_ldtoa.c
index c81c09b..750a252 100644
--- a/lib/libc/gdtoa/_ldtoa.c
+++ b/lib/libc/gdtoa/_ldtoa.c
@@ -79,6 +79,9 @@ __ldtoa(long double *ld, int mode, int ndigits, int *decpt, int *sign,
break;
case FP_SUBNORMAL:
kind = STRTOG_Denormal;
+#ifdef LDBL_IMPLICIT_NBIT
+ be++;
+#endif
break;
case FP_INFINITE:
kind = STRTOG_Infinite;
OpenPOWER on IntegriCloud