]> sourceware.org Git - newlib-cygwin.git/commit
Import correctly working strtold from David M. Gay.
authorCorinna Vinschen <corinna@vinschen.de>
Fri, 20 Nov 2015 17:14:58 +0000 (18:14 +0100)
committerCorinna Vinschen <corinna@vinschen.de>
Fri, 20 Nov 2015 17:14:58 +0000 (18:14 +0100)
commitfbace81684f8cbb80a2048c01dc545af247f5cb7
tree01de6c0263b16465d7904f2cf6710cfc64925f88
parent51bf1b81f3c4c7c02d8101f8ab6eb5609892e728
Import correctly working strtold from David M. Gay.

* libc/stdlib/Makefile.am (GENERAL_SOURCES): Add strtodg.c and
strtorx.c.
* libc/stdlib/Makefile.in: Regenerate.
* libc/stdlib/strtodg.c: New file implementing generic string to long
double conversion.
* libc/stdlib/strtorx.c: New file, implementing IEEE format string to
long double conversion.
* libc/stdlib/mprec.h (_strtodg_r): Declare.
(_strtorx_r): Declare.
* libc/stdlib/gdtoa.h (__UShort): Define.
* libc/stdlib/strtold.c (__flt_rounds): Define for i386 and x86_64
target.
(FLT_ROUNDS): Define, as 0 on platforms missing a __flt_rounds
function.
(_strtold_r): Converted from strtold.  Call _strtorx_r on targets
supporting distinct long doubles.
(strtold): Just call _strtold_r.
* libc/include/stdlib.h (_strtold_r): Declare.
* libc/stdlib/ldtoa.c (_strtold): Comment out.  Explain why.
* libc/stdio/vfscanf.c (__SVFSCANF_R): Call _strtold_r instead of
_strtold.
* libc/machine/powerpc/vfscanf.c (__svfscanf_r): Ditto.

* common.din (strtold): Drop redirection to _strtold.

Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
14 files changed:
newlib/ChangeLog
newlib/libc/include/stdlib.h
newlib/libc/machine/powerpc/vfscanf.c
newlib/libc/stdio/vfscanf.c
newlib/libc/stdlib/Makefile.am
newlib/libc/stdlib/Makefile.in
newlib/libc/stdlib/gdtoa.h
newlib/libc/stdlib/ldtoa.c
newlib/libc/stdlib/mprec.h
newlib/libc/stdlib/strtodg.c [new file with mode: 0644]
newlib/libc/stdlib/strtold.c
newlib/libc/stdlib/strtorx.c [new file with mode: 0644]
winsup/cygwin/ChangeLog
winsup/cygwin/common.din
This page took 0.031005 seconds and 5 git commands to generate.