Lines Matching +full:15 +full:- +full:input
3 (fixed-point mode); fix rounding bug in these modes when the input
4 d (to be converted) satisfies 10^-(ndigits+1) <= |d| < 10^-ndigits ,
7 the result is empty (i.e., when |d| <= 5 * 10^-ndigits).
16 Sun Oct 6 15:34:15 EDT 1991
23 defined; for input decimal strings representing numbers too large, have
25 return +-Infinity for IEEE arithmetic, +- the largest machine number
30 dtoa.c: tweak strtod (one-line addition) so the end-pointer = start
31 pointer when the input has, e.g., only white space.
35 reasonably with huge numbers and 16-bit ints.
47 < for(result_k = 0; sizeof(Bigint) - sizeof(unsigned long) + j < i;
48 ---
49 > for(result_k = 0; sizeof(Bigint) - sizeof(unsigned long) + j <= i;
50 With 32-bit ints, the former could give too small a block for the return
51 value when, e.g., mode = 2 or 4 and ndigits = 24 (16 for 16-bit ints).
54 dtoa.c: tweak to work with 32-bit ints and 64-bit longs
55 when compiled with -DLong=int .
59 negative exponents (e.g. 1.8826e-512), which should underflow to 0;
69 > * directly -- and assumed always to succeed.
76 < rv = (Bigint *)malloc(sizeof(Bigint) + (x-1)*sizeof(Long));
77 ---
78 > rv = (Bigint *)MALLOC(sizeof(Bigint) + (x-1)*sizeof(Long));
83 Wed Jan 4 15:45:34 EST 1995
98 Tue Dec 17 15:01:56 EST 1996
112 -DNO_IEEE_Scale restores the old logic. Fix a bug, revealed by
113 input string 2.2250738585072012e-308, in treating input just less
119 that caused one-bit rounding errors in certain denormal numbers, such
120 as 8.44291197326099e-309, which was read as 8.442911973260987e-309.
122 Unless compiled with -DNO_LONG_LONG, use 64-bit arithmetic where
125 Fri May 15 07:49:07 EDT 1998
127 with IEEE arithmetic, again revealed by the input string
128 2.2250738585072012e-308, which was rounded to the largest denormal
134 compiled with -DNO_ERRNO); bigtens --> bigtens_D2A (a symbol meant
137 Sat Sep 12 17:05:15 EDT 1998
143 --- g_xLfmt
145 --- strtopd
147 --- strtopf
149 --- strtopxL
150 --- strtorxL
151 --- strtoIxL
159 family (for 80-bit IEEE double-extended precision) that assumes the
160 storage layout of the Motorola 68881's double-extended format: 80
161 interesting bits stored in 3 unsigned 32-bit ints (with a "hole", 16
163 family now deals with 80-bit (5 unsigned 16-bit ints) rather than
164 96-bit arrays (3 unsigned 32-bit ints) that hold its 80-bit
165 double-extended values. (This relaxes the alignment requirements of
176 dtoa.c: Fix bug in strtod under -DSudden_Underflow and (the default)
177 -DAvoid_Underflow: some numbers that should have suffered sudden
179 Example: "1e-320" gave -3.6304123742133376e+280 rather than 0.
181 Mon Nov 2 15:41:16 EST 1998
183 compilers that offer a 64-bit long long type but do not recognize the
191 dtoa.c, gdtoa.tgz: fix a bug in strtod's reading of 4.9e-324:
209 ---
215 compilation with -DKR_headers.
219 < if (bbits == 1 && be0 > fpi->emin) {
220 ---
221 > if (bbits == 1 && be0 > fpi->emin + 1) {
225 smallest normalized floating-point number of other precisions.
228 to permit #hex input. See the comments.
236 ---
239 (e.g., gcc 2.95.1 under -O2). On some systems, these changes do not
241 a double as a pair of ULongs is available with -DYES_ALIAS.
247 Wed Dec 15 13:14:38 EST 1999
254 gdtoa.tgz: README: point out that compiling with -DNO_ERRNO inhibits
264 1. Fix bug in test for exact half-way cases of denormalized numbers
265 (without -DNO_IEEE_Scale).
266 2. Compilation with -DNO_ERRNO prevents strtod from assigning
268 3. With IEEE arithmetic and no -DNO_IEEE_Scale, adjust scaling so
274 4. Compilations with -DUSE_LOCALE causes strtod to use the current
276 5. Under compilations with -DINFNAN_CHECK, strtod and strtodg (case
278 compiled with -DNo_Hex_NaN, accept "nan(x)", where x is a string of
286 (in round-nearest mode) to the given double value. (Paxson's
288 introduce an error of more than one base-10 ulp when 17 or more
290 8. With IEEE arithmetic, compilation with -DHonor_FLT_ROUNDS causes
295 3 ==> towards -Infinity.
296 9. With IEEE arithmetic, compilation with -DSET_INEXACT causes extra
298 particularly for dtoa in cases where otherwise some simple floating-
305 10. On input "-x", return 0 rather than -0.
322 loop with a boundary case of directed rounding. Example input to
331 2.47032822920623272e-324) introduced 20001113 in handling the special
333 by changes of 20001113) for the extra special case of 2^-1075 (half
339 an ulp less than the smallest normal floating-point number;
347 IEEE arithmetic (with 53-bit rounding precision on 80x87 chips).
351 gdtoa.tgz: fix a bug in strtod's handling of 0-valued 0x... "decimal"
356 gdtoa.tgz: fix a glitch in strtodg.c with -DUSE_LOCALE; add #ifdef
357 USE_LOCALE lines to g__fmt.c (to affect binary --> decimal conversions
358 via the g*fmt routines), and add comments about -DUSE_LOCALE to README.
359 In short, compiling strtod.c, strtodg.c, and g__fmt.c with -DUSE_LOCALE
360 causes them to determine the decimal-point character from the current
365 glitch in handling 0x... input (the return from gethex was ignored).
367 Wed Mar 26 15:35:10 EST 2003
369 use unsigned char for decimalpoint variable (under -DUSE_LOCALE).
381 confusion by human readers -- the object code is unaffected (with
388 but does not require 53-bit rounding precision on Intel IA32 systems.
397 binary-exponent-part if the converted number is zero.
407 Sat Jan 15 15:36:03 MST 2005
412 giving the system-dependent format of a quiet NaN (the one generated
413 for Infinity - Infinity). Tweak test/makefile so differences in the
415 Fix bug in strtod.c and strtodg.c under which, e.g., -.nan was read
416 as NaN rather than unacceptable input (causing return 0). Adjust
420 gdtoa.tgz: strtodg.c: fix long-standing bug in handling input
423 gdtoa.tgz: Fix some bugs with -DJust_16.
427 strtod.c: unless prevented by -DNO_FENV_H, include C99's fenv.h
428 and with hex input, get the current rounding mode from fegetround().
429 With decimal input, strtod honors the rounding mode automatically.
439 test/makefile: add -lm to some link lines (needed for fegetround).
445 if (hi0bits(rvb->x[(rvb->wds - 1) >> kshift])
449 if (hi0bits(rvb->x[rvb->wds - 1]) != j)
451 Example of input where this bug bit: 1.9e27. Thanks to Edward Moy
454 test/README: add comment that strtodt needs to operate with 53-bit
458 Sat Mar 15 11:44:31 MDT 2008
459 dtoa.c and gdtoa.tgz: with -DINFNAN_CHECK and without
460 -DGDOTA_NON_PEDANTIC_NANCHECK, conform to the ill-advised prescription
469 -DHonor_FLT_ROUNDS: in rounding modes other than "to nearest",
470 strtod looped on input larger than and within a factor of 2 of
471 the largest finite floating-point number. Since FLT_ROUNDS is buggy
477 rounding mode when the input line is "r" by itself. (Previously it
478 did so, but also complained of invalid input.)
479 gdtoa/gethex.c: fix an off-by-one bug in a rounding test; detect and
481 reading of hexadecimal floating-point values (0x...). Also set errno
482 to ERANGE on out-of-range values (unless compiled with -DNO_ERRNO).
492 gdtoa/strto*.c and gdtoa/*fmt.c: if compiled with -DUSE_LOCALE, use
499 gdtoa/strtodg.c: fix an off-by-one bug in rounding to the largest
505 compiled with -DHonor_FLT_ROUNDS on IEEE-arithmetic systems that provide
508 -DHonor_FLT_ROUNDS and/or -DUSE_MY_LOCALE for manual testing of gdtoa.a
509 compiled with -DHonor_FLT_ROUNDS or -DUSE_LOCALE.
511 Fri Oct 10 20:07:15 MDT 2008
512 gdtoa/gethex.c: fix a bug reading hexadecimal floating-point values
521 -DUSE_LOCALE and the locale's decimal-point string is two or more
525 gdtoa.tgz: fix bugs with reading C99-style hexadecimal floating-point
526 values when compiled with -DPack_16; on IEEE-arithmetic systems, make
529 dtoa.c: add recognition of C99-style hexadecimal floating-point
550 dtoa.c: Fix a bug under -DUSE_LOCALE in handling "decimal point"
553 -DDEBUG.
555 dtoa.c: Add logic (that can be disabled with -DNO_STRTOD_BIGCOMP
556 and that) to strtod for more efficiently handling a very long input
557 string. It proceeds by initially truncating the input string, then if
559 decide close cases. This logic is only used for input more than
562 tests). This only appears worthwhile for absurdly long input strings,
565 silence "gcc -Wall" warnings. Aside from a couple of minor changes
570 dtoa.c: fix glitch in compiling with -DNo_Hex_NaN and the bug of
572 gdtoa.tgz: tweaks to silence warnings from "gcc -Wstrict-aliasing=2";
589 adds %Lqa, %Lqe, %Lqf and %Lqg to handle 128-bit bit types (called
596 dtoa.c: fix a minor performance bug and, under compilation with -DDEBUG,
598 of some input that underflows to zero. Also fix a bug in bigcomp()'s
605 stuff so it does not complain when bigcomp() calls quorem on input
609 high-precision integer computations. Fix an off-by-one bug in
612 with sensible input.) Fix an off-by-one bug in a recently introduced
613 quick test for underflow (i.e., zero result) on input at the bottom of
620 compiled without -DNO_IEEE_SCALE and, for dtoa.c, when compiled with
621 -DNO_STRTOD_BIGCOMP.
627 dtoa.c: more tweaks relevant only to absurd input.
630 dtoa.c: add test for setting errno = ERANGE when input of many digits
637 -DHonor_FLT_ROUNDS (and without -DNO_STRTOD_BIGCOMP), and the rounding
638 mode is torwards +Infinity. An input (supplied by Rick Regan
642 with -DHonor_FLT_ROUNDS.
644 Wed Sep 15 09:00:26 MDT 2010
645 dtoa.c, gdtoa/dtoa.c, gdtoa/gdtoa.c: fix bugs with -DROUND_BIASED
650 changes of 15 Sept. 2010.
665 want biased rounding with IEEE-style format "double" and will operate
669 of portability when compiling without -DLong=... specified). On some
670 64-bit systems, long is a 64-bit type; we need a 32-bit type here.
672 the bottom of the exponent range, e.g., 1e-323.