Home | History | Annotate | Download | only in gdtoa
History log of /src/lib/libc/gdtoa/strtod.c
RevisionDateAuthorComments
 1.20  23-Jan-2024  christos fix vax build (unused variable)
 1.19  11-Aug-2023  mrg remove the -O0 force for _int_strtod_l() and GCC 9, it's fixed in GCC 10 and 12.

this was triggering sh3 GCC 12 to fail compiles because of ssp.h's memcpy()
frontend having the always_inline attribute that didn't match -O0 or so.

tested with pkgsrc gcc9 to confirm it hangs there, but newer versions are fine.

also known as PR#55668, which now has a real fix (gcc 10 :-).
 1.18  06-May-2021  christos branches: 1.18.6;
PR/56148: Andreas Gustafsson: lib/libc/stdio/t_printf:snprintf_float test
randomly fails.
Add checks to all places where lshift is called because it can return NULL
 1.17  18-Sep-2020  christos delint
 1.16  18-Sep-2020  christos PR/55668: Martin Husemann: Disable optimization to avoid infinite loop.
Also bring in a few changes from the most recent gdtoa code (not relevant
to the bug).
 1.15  01-Aug-2019  riastradh Sprinkle some more const in.
 1.14  17-May-2013  joerg branches: 1.14.28;
Provide explicit LC_C_LOCALE accessor and drop the various NULL checks.
Provide LC_GLOBAL_LOCALE in a way that works with all locale functions.
Merge constant data used by the initial global locale and the C locale.
Drop function call layer for _current_locale() and directly return the
locale reference, not a pointer to it. Use protected access for global
variables, so that libc references can avoid the GOT overhead.
 1.13  19-Apr-2013  joerg Pass locale down to gethex as well.
 1.12  18-Apr-2013  joerg Add strtof_l, strtod_l and strtold_l.
 1.11  22-Mar-2012  christos branches: 1.11.2;
add constcond, make shifts unsigned
 1.10  22-Mar-2012  he A few modifications to make this build for vax:
* The decpt variable is only used if INFNAN_CHECK, which isn't defined
for vax.
* Use a cast to avoid warning about shift of a signed variable.
* Mark a condition as (potentially) a constant condition.
 1.9  13-Mar-2012  christos PR/45989: Martin Husemann: lint invocation does include -w only on i386

- turn lint -w for all the platforms after fixing the lint warnings.
- add _DIAGASSERTS() for casts that would assign values to types that
would not fit.
- change types, add casts
- change into ansii prototypes
- turn on _DIAGNOSTIC for libc (during current, to be eliminated for release
builds)

approved by core@
 1.8  27-Mar-2011  he branches: 1.8.4;
Fix this so that it builds for vax; where the compiler balks at the
mixture of a union and a double in an expression (imagine that!)
I see other similar uses, and how they pass through for other ports
is beyond me, but I have not touched them in this round.

OK'ed by christos@
 1.7  21-Mar-2011  christos more de-linting.
 1.6  20-Mar-2011  christos Merge the new gdtoa: Note that the built-in tests fail the same way as with
the old gdtoa.
 1.5  21-Mar-2008  christos Don't coredump on out of memory conditions. This solution leaks, but gdtoa
is too complicated to fix. Try printf %99999999999.9999999999f 2
 1.4  02-Jun-2006  mrg branches: 1.4.4; 1.4.6; 1.4.14;
initialise some variables for gcc.
 1.3  15-Mar-2006  kleink Add strtof(3) and strtold(3); welcome libc 12.137.
 1.2  25-Jan-2006  kleink * Pacify compiler; delint.
* Add MI NetBSD definitions.
* Rename IEEE_{8087,MC68k} to IEEE_{LITTLE,BIG}_ENDIAN, as previously
done in strtod.c.
* Some const poisoning, more to follow.
 1.1  25-Jan-2006  kleink branches: 1.1.1;
Initial revision
 1.1.1.2  19-Mar-2011  christos from www.netlib.org
 1.1.1.1  25-Jan-2006  kleink Import gdtoa-2005-09-23; test suite will be imported separately.
 1.4.14.1  08-Apr-2008  jdc Pull up revisions:
src/lib/libc/gdtoa/dmisc.c 1.4
src/lib/libc/gdtoa/gdtoa.c 1.4
src/lib/libc/gdtoa/gethex.c 1.4
src/lib/libc/gdtoa/misc.c 1.4
src/lib/libc/gdtoa/strtof_vaxf.c 1.4-1.5
src/lib/libc/gdtoa/strtopQ.c 1.4
src/lib/libc/gdtoa/strtopx.c 1.4
src/lib/libc/gdtoa/strtopxL.c 1.4
src/lib/libc/gdtoa/strtord.c 1.4
src/lib/libc/gdtoa/dtoa.c 1.5
src/lib/libc/gdtoa/strtod.c 1.5
src/lib/libc/gdtoa/g_Qfmt.c 1.3
src/lib/libc/gdtoa/g_xLfmt.c 1.3
src/lib/libc/gdtoa/g_xfmt.c 1.3
src/lib/libc/gdtoa/smisc.c 1.3
src/lib/libc/gdtoa/strtof.c 1.3
src/lib/libc/gdtoa/strtorQ.c 1.3
src/lib/libc/gdtoa/strtorx.c 1.3
src/lib/libc/gdtoa/strtorxL.c 1.3
src/lib/libc/gdtoa/g_ddfmt.c 1.2
src/lib/libc/gdtoa/g_dfmt.c 1.2
src/lib/libc/gdtoa/g_ffmt.c 1.2
src/lib/libc/gdtoa/strtoIQ.c 1.2
src/lib/libc/gdtoa/strtoId.c 1.2
src/lib/libc/gdtoa/strtoIdd.c 1.2
src/lib/libc/gdtoa/strtoIf.c 1.2
src/lib/libc/gdtoa/strtoIg.c 1.2
src/lib/libc/gdtoa/strtoIx.c 1.2
src/lib/libc/gdtoa/strtoIxL.c 1.2
src/lib/libc/gdtoa/strtodI.c 1.2
src/lib/libc/gdtoa/strtodnrp.c 1.2
src/lib/libc/gdtoa/strtopd.c 1.2
src/lib/libc/gdtoa/strtopdd.c 1.2
src/lib/libc/gdtoa/strtopf.c 1.2
src/lib/libc/gdtoa/strtordd.c 1.2
src/lib/libc/gdtoa/strtorf.c 1.2
src/lib/libc/gdtoa/sum.c 1.2
src/lib/libc/gdtoa/gdtoa.h 1.8
src/lib/libc/gdtoa/hdtoa.c 1.6
src/lib/libc/gdtoa/strtodg.c 1.6
src/lib/libc/stdio/vfwprintf.c 1.12
(requested by mjf ticket #1120).

Don't coredump on out of memory conditions. This solution leaks, but gdtoa
is too complicated to fix. Try printf %99999999999.9999999999f 2

Make this build again.
 1.4.6.1  03-Jun-2008  skrll Sync with netbsd-4.
 1.4.4.1  08-Apr-2008  jdc Pull up revisions:
src/lib/libc/gdtoa/dmisc.c 1.4
src/lib/libc/gdtoa/gdtoa.c 1.4
src/lib/libc/gdtoa/gethex.c 1.4
src/lib/libc/gdtoa/misc.c 1.4
src/lib/libc/gdtoa/strtof_vaxf.c 1.4-1.5
src/lib/libc/gdtoa/strtopQ.c 1.4
src/lib/libc/gdtoa/strtopx.c 1.4
src/lib/libc/gdtoa/strtopxL.c 1.4
src/lib/libc/gdtoa/strtord.c 1.4
src/lib/libc/gdtoa/dtoa.c 1.5
src/lib/libc/gdtoa/strtod.c 1.5
src/lib/libc/gdtoa/g_Qfmt.c 1.3
src/lib/libc/gdtoa/g_xLfmt.c 1.3
src/lib/libc/gdtoa/g_xfmt.c 1.3
src/lib/libc/gdtoa/smisc.c 1.3
src/lib/libc/gdtoa/strtof.c 1.3
src/lib/libc/gdtoa/strtorQ.c 1.3
src/lib/libc/gdtoa/strtorx.c 1.3
src/lib/libc/gdtoa/strtorxL.c 1.3
src/lib/libc/gdtoa/g_ddfmt.c 1.2
src/lib/libc/gdtoa/g_dfmt.c 1.2
src/lib/libc/gdtoa/g_ffmt.c 1.2
src/lib/libc/gdtoa/strtoIQ.c 1.2
src/lib/libc/gdtoa/strtoId.c 1.2
src/lib/libc/gdtoa/strtoIdd.c 1.2
src/lib/libc/gdtoa/strtoIf.c 1.2
src/lib/libc/gdtoa/strtoIg.c 1.2
src/lib/libc/gdtoa/strtoIx.c 1.2
src/lib/libc/gdtoa/strtoIxL.c 1.2
src/lib/libc/gdtoa/strtodI.c 1.2
src/lib/libc/gdtoa/strtodnrp.c 1.2
src/lib/libc/gdtoa/strtopd.c 1.2
src/lib/libc/gdtoa/strtopdd.c 1.2
src/lib/libc/gdtoa/strtopf.c 1.2
src/lib/libc/gdtoa/strtordd.c 1.2
src/lib/libc/gdtoa/strtorf.c 1.2
src/lib/libc/gdtoa/sum.c 1.2
src/lib/libc/gdtoa/gdtoa.h 1.8
src/lib/libc/gdtoa/hdtoa.c 1.6
src/lib/libc/gdtoa/strtodg.c 1.6
src/lib/libc/stdio/vfwprintf.c 1.12
(requested by mjf ticket #1120).

Don't coredump on out of memory conditions. This solution leaks, but gdtoa
is too complicated to fix. Try printf %99999999999.9999999999f 2

Make this build again.
 1.8.4.2  22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.8.4.1  17-Apr-2012  yamt sync with head
 1.11.2.1  23-Jun-2013  tls resync from head
 1.14.28.1  13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.18.6.1  20-Jul-2024  martin Pull up following revision(s) (requested by rin in ticket #749):

lib/libc/gdtoa/strtod.c: revision 1.19

remove the -O0 force for _int_strtod_l() and GCC 9, it's fixed in GCC 10
and 12.

this was triggering sh3 GCC 12 to fail compiles because of ssp.h's memcpy()
frontend having the always_inline attribute that didn't match -O0 or so.
tested with pkgsrc gcc9 to confirm it hangs there, but newer versions
are fine.

also known as PR#55668, which now has a real fix (gcc 10 :-).

RSS XML Feed