1
0
mirror of https://https.git.savannah.gnu.org/git/gnulib.git synced 2026-05-13 15:13:36 +00:00

dtoastr,ftoastr,ldtoastr: port to c-strtod changes

Decouple these modules from c-strtod.  Nowadays it’s reasonable to
assume the C99 signatures for strtod and strtold.  Programs that
require stricter adherence to C99 should also use the strtod and
strtold modules as needed, and we no longer need the
HAVE_C99_STRTOLD macro.
* NEWS: Mention this.
* lib/ftoastr.c (STRTOF) [LENGTH == 3]: Assume strtold.
* m4/c-strtod.m4 (gl_C_STRTOLD): Do not define HAVE_C99_STRTOLD.
* modules/dtoastr, modules/ftoastr, modules/ldtoastr:
(Files): Remove m4/c-strtod.m4.
(configure.ac): Do not require gl_C99_STRTOLD, which no longer
exists.
This commit is contained in:
Paul Eggert
2019-02-02 13:01:55 -08:00
parent edacea21ca
commit 2f6abcc9f5
7 changed files with 23 additions and 13 deletions

View File

@@ -1,3 +1,19 @@
2019-02-02 Paul Eggert <eggert@cs.ucla.edu>
dtoastr,ftoastr,ldtoastr: port to c-strtod changes
Decouple these modules from c-strtod. Nowadays its reasonable to
assume the C99 signatures for strtod and strtold. Programs that
require stricter adherence to C99 should also use the strtod and
strtold modules as needed, and we no longer need the
HAVE_C99_STRTOLD macro.
* NEWS: Mention this.
* lib/ftoastr.c (STRTOF) [LENGTH == 3]: Assume strtold.
* m4/c-strtod.m4 (gl_C_STRTOLD): Do not define HAVE_C99_STRTOLD.
* modules/dtoastr, modules/ftoastr, modules/ldtoastr:
(Files): Remove m4/c-strtod.m4.
(configure.ac): Do not require gl_C99_STRTOLD, which no longer
exists.
2019-02-02 Bruno Haible <bruno@clisp.org>
fma: Improve code style.

4
NEWS
View File

@@ -48,6 +48,10 @@ User visible incompatible changes
Date Modules Changes
2019-02-02 c-strtod This and related modules no longer define
the HAVE_C99_STRTOLD macro. Programs requiring
standard strtold should use the strtold module.
2019-01-21 diacrit This module is deprecated. Please use the module
uninorm/canonical-decomposition instead.

View File

@@ -40,9 +40,7 @@
# define FLOAT_PREC_BOUND _GL_LDBL_PREC_BOUND
# define FTOASTR ldtoastr
# define PROMOTED_FLOAT long double
# if HAVE_C99_STRTOLD
# define STRTOF strtold
# endif
# define STRTOF strtold
#elif LENGTH == 2
# define FLOAT double
# define FLOAT_DIG DBL_DIG
@@ -63,7 +61,7 @@
# endif
#endif
/* On pre-C99 hosts, approximate strtof and strtold with strtod. This
/* On pre-C99 hosts, approximate strtof with strtod. This
may generate one or two extra digits, but that's better than not
working at all. */
#ifndef STRTOF

View File

@@ -1,4 +1,4 @@
# c-strtod.m4 serial 17
# c-strtod.m4 serial 18
# Copyright (C) 2004-2006, 2009-2019 Free Software Foundation, Inc.
# This file is free software; the Free Software Foundation
@@ -47,7 +47,5 @@ AC_DEFUN([gl_C_STRTOLD],
[
AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS])
AC_REQUIRE([gt_FUNC_USELOCALE])
AC_DEFINE([HAVE_C99_STRTOLD], [1],
[Define to 1 because the gnulib 'strtold' module provides a C99-conforming strtold function.])
AC_CHECK_FUNCS([strtold_l])
])

View File

@@ -5,14 +5,12 @@ Files:
lib/ftoastr.h
lib/ftoastr.c
lib/dtoastr.c
m4/c-strtod.m4
Depends-on:
extensions
intprops
configure.ac:
AC_REQUIRE([gl_C99_STRTOLD])
Makefile.am:
lib_SOURCES += dtoastr.c

View File

@@ -4,7 +4,6 @@ Convert float to accurate string.
Files:
lib/ftoastr.h
lib/ftoastr.c
m4/c-strtod.m4
Depends-on:
extensions
@@ -12,7 +11,6 @@ intprops
configure.ac:
AC_CHECK_FUNCS_ONCE([strtof])
AC_REQUIRE([gl_C99_STRTOLD])
Makefile.am:
lib_SOURCES += ftoastr.c

View File

@@ -5,14 +5,12 @@ Files:
lib/ftoastr.h
lib/ftoastr.c
lib/ldtoastr.c
m4/c-strtod.m4
Depends-on:
extensions
intprops
configure.ac:
AC_REQUIRE([gl_C99_STRTOLD])
Makefile.am:
lib_SOURCES += ldtoastr.c