diff options
author | Jeff Johnston <jjohnstn@redhat.com> | 2002-12-06 18:58:51 +0000 |
---|---|---|
committer | Jeff Johnston <jjohnstn@redhat.com> | 2002-12-06 18:58:51 +0000 |
commit | c049dd5a782f36ca5f6eeb39e110d5774631aa1c (patch) | |
tree | 42a17e5eac109ebf1ada11bff536938b4d83e71c | |
parent | e25e377eb323e9ac6f6ea3b23f57a68293be2ae9 (diff) | |
download | newlib-c049dd5a782f36ca5f6eeb39e110d5774631aa1c.zip newlib-c049dd5a782f36ca5f6eeb39e110d5774631aa1c.tar.gz newlib-c049dd5a782f36ca5f6eeb39e110d5774631aa1c.tar.bz2 |
2002-12-06 Jeff Johnston <jjohnstn@redhat.com>
* libc/include/stdlib.h (strtof): New prototype (from C99).
(strtodf): Changed from prototype to macro which redefines
to strtof.
* libc/stdlib/atof.c: Change documentation to refer to strtof
instead of strtodf.
* libc/stdlib/atoff.c (atoff): Change to call strtof instead of
strtodf.
* libc/stdlib/strtod.c (strtodf): Renamed to strtof.
(strtof): New function.
* libm/test/convert.c (test_strtodf): Renamed to test_strtof which
calls strtof.
-rw-r--r-- | newlib/ChangeLog | 14 | ||||
-rw-r--r-- | newlib/libc/include/stdlib.h | 6 | ||||
-rw-r--r-- | newlib/libc/stdlib/atof.c | 2 | ||||
-rw-r--r-- | newlib/libc/stdlib/atoff.c | 2 | ||||
-rw-r--r-- | newlib/libc/stdlib/strtod.c | 14 | ||||
-rw-r--r-- | newlib/libm/test/convert.c | 6 |
6 files changed, 31 insertions, 13 deletions
diff --git a/newlib/ChangeLog b/newlib/ChangeLog index c4468d8..7a97c2a 100644 --- a/newlib/ChangeLog +++ b/newlib/ChangeLog @@ -1,3 +1,17 @@ +2002-12-06 Jeff Johnston <jjohnstn@redhat.com> + + * libc/include/stdlib.h (strtof): New prototype (from C99). + (strtodf): Changed from prototype to macro which redefines + to strtof. + * libc/stdlib/atof.c: Change documentation to refer to strtof + instead of strtodf. + * libc/stdlib/atoff.c (atoff): Change to call strtof instead of + strtodf. + * libc/stdlib/strtod.c (strtodf): Renamed to strtof. + (strtof): New function. + * libm/test/convert.c (test_strtodf): Renamed to test_strtof which + calls strtof. + 2002-11-27 Christopher Faylor <cgf@redhat.com> * libc/string/memset.c (memset): Fix comment. diff --git a/newlib/libc/include/stdlib.h b/newlib/libc/include/stdlib.h index d6b14f2..3f0d003 100644 --- a/newlib/libc/include/stdlib.h +++ b/newlib/libc/include/stdlib.h @@ -93,8 +93,12 @@ _PTR _EXFUN(realloc,(_PTR __r, size_t __size)); _VOID _EXFUN(srand,(unsigned __seed)); double _EXFUN(strtod,(const char *__n, char **__end_PTR)); double _EXFUN(_strtod_r,(struct _reent *,const char *__n, char **__end_PTR)); +float _EXFUN(strtof,(const char *__n, char **__end_PTR)); #ifndef __STRICT_ANSI__ -float _EXFUN(strtodf,(const char *__n, char **__end_PTR)); +/* the following strtodf interface is deprecated...use strtof instead */ +# ifndef strtodf +# define strtodf strtof +# endif #endif long _EXFUN(strtol,(const char *__n, char **__end_PTR, int __base)); long _EXFUN(_strtol_r,(struct _reent *,const char *__n, char **__end_PTR, int __base)); diff --git a/newlib/libc/stdlib/atof.c b/newlib/libc/stdlib/atof.c index cf4abdb..bba343c 100644 --- a/newlib/libc/stdlib/atof.c +++ b/newlib/libc/stdlib/atof.c @@ -36,7 +36,7 @@ of whitespace, or if the first non-whitespace character is something other than <<+>>, <<->>, <<.>>, or a digit. <<atof(<[s]>)>> is implemented as <<strtod(<[s]>, NULL)>>. -<<atoff(<[s]>)>> is implemented as <<strtodf(<[s]>, NULL)>>. +<<atoff(<[s]>)>> is implemented as <<strtof(<[s]>, NULL)>>. RETURNS <<atof>> returns the converted substring value, if any, as a diff --git a/newlib/libc/stdlib/atoff.c b/newlib/libc/stdlib/atoff.c index 9c682c4..c97b78f 100644 --- a/newlib/libc/stdlib/atoff.c +++ b/newlib/libc/stdlib/atoff.c @@ -5,5 +5,5 @@ float _DEFUN (atoff, (s), _CONST char *s) { - return strtodf (s, NULL); + return strtof (s, NULL); } diff --git a/newlib/libc/stdlib/strtod.c b/newlib/libc/stdlib/strtod.c index c16d75d..19467f4 100644 --- a/newlib/libc/stdlib/strtod.c +++ b/newlib/libc/stdlib/strtod.c @@ -1,18 +1,18 @@ /* FUNCTION - <<strtod>>, <<strtodf>>---string to double or float + <<strtod>>, <<strtof>>---string to double or float INDEX strtod INDEX _strtod_r INDEX - strtodf + strtof ANSI_SYNOPSIS #include <stdlib.h> double strtod(const char *<[str]>, char **<[tail]>); - float strtodf(const char *<[str]>, char **<[tail]>); + float strtof(const char *<[str]>, char **<[tail]>); double _strtod_r(void *<[reent]>, const char *<[str]>, char **<[tail]>); @@ -23,7 +23,7 @@ TRAD_SYNOPSIS char *<[str]>; char **<[tail]>; - float strtodf(<[str]>,<[tail]>) + float strtof(<[str]>,<[tail]>) char *<[str]>; char **<[tail]>; @@ -48,7 +48,7 @@ DESCRIPTION (which will contain at least the terminating null character of <[str]>) is stored in <<*<[tail]>>>. If you want no assignment to <<*<[tail]>>>, pass a null pointer as <[tail]>. - <<strtodf>> is identical to <<strtod>> except for its return type. + <<strtof>> is identical to <<strtod>> except for its return type. This implementation returns the nearest machine number to the input decimal string. Ties are broken by using the IEEE @@ -721,11 +721,11 @@ _DEFUN (strtod, (s00, se), } float -_DEFUN (strtodf, (s00, se), +_DEFUN (strtof, (s00, se), _CONST char *s00 _AND char **se) { - return _strtod_r (_REENT, s00, se); + return (float)_strtod_r (_REENT, s00, se); } #endif diff --git a/newlib/libm/test/convert.c b/newlib/libm/test/convert.c index 51bddfd..a748280 100644 --- a/newlib/libm/test/convert.c +++ b/newlib/libm/test/convert.c @@ -24,12 +24,12 @@ _DEFUN_VOID(test_strtod) } void -_DEFUN_VOID(test_strtodf) +_DEFUN_VOID(test_strtof) { char *tail; double v; /* On average we'll loose 1/2 a bit, so the test is for within 1 bit */ - v = strtodf(pd->string, &tail); + v = strtof(pd->string, &tail); test_mok(v, pd->value, 32); test_iok(tail - pd->string, pd->endscan); } @@ -358,7 +358,7 @@ _DEFUN_VOID(test_cvt) iterate(test_atof, "atof"); iterate(test_atoff, "atoff"); - iterate(test_strtodf, "strtodf"); + iterate(test_strtof, "strtof"); int_iterate(test_atoi,"atoi"); int_iterate(test_atol,"atol"); |