This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
[PATCH v3 2/2] float128: Add strfromf128, strtof128, and wcstof128 to the manual
- From: "Gabriel F. T. Gomes" <gftg at linux dot vnet dot ibm dot com>
- To: libc-alpha at sourceware dot org
- Date: Wed, 7 Jun 2017 18:35:51 -0300
- Subject: [PATCH v3 2/2] float128: Add strfromf128, strtof128, and wcstof128 to the manual
- Authentication-results: sourceware.org; auth=none
- References: <1496871351-2947-1-git-send-email-gftg@linux.vnet.ibm.com>
Changes since v2:
- Fix typos and grammatical errors.
- Move @var{N} into the @code{} blocks
- Remove @var{N} from the function names and return types in the
@deftypefun and @deftypefunx blocks, because @var{N} causes errors in
'make html' and 'make info' (make 'pdf' was working fine).
Changes since v1:
- Added _FloatN and _FloatNx to the section that discusses C
floating-point types in the section Mathematics.
- Reworded the descriptions of strfromf128 etc. into descriptions of
strfromfN etc., to ease the changes needed in the manual when more
types from TS 18661-3 get added to glibc.
-- 8< --
2016-11-14 Gabriel F. T. Gomes <gftg@linux.vnet.ibm.com>
* manual/math.texi (Mathematics): Add description for _FloatN and
_FloatNx types and mentions that they are not support in glibc for
any architecture, so far.
* manual/arith.texi (wcstof, wcstold): Replace the mention to
stdlib.h with wchar.h.
(Parsing of Floats): Add descriptions for strtofN and wcstofN.
(Printing of Floats): Add description for strfromfN.
---
manual/arith.texi | 45 ++++++++++++++++++++++++++++++++++++++++-----
manual/math.texi | 11 +++++++++++
2 files changed, 51 insertions(+), 5 deletions(-)
diff --git a/manual/arith.texi b/manual/arith.texi
index dec12a0..1f13769 100644
--- a/manual/arith.texi
+++ b/manual/arith.texi
@@ -2990,23 +2990,45 @@ double} is a separate type).
These functions have been GNU extensions and are new to @w{ISO C99}.
@end deftypefun
+@comment stdlib.h
+@comment ISO/IEC TS 18661-3
+@deftypefun _FloatN strtofN (const char *@var{string}, char **@var{tailptr})
+@deftypefunx _FloatNx strtofN (const char *@var{string}, char **@var{tailptr})
+@safety{@prelim{}@mtsafe{@mtslocale{}}@assafe{}@acsafe{}}
+These functions are like @code{strtod}, except for the return type.
+
+They were introduced in @w{ISO/IEC TS 18661-3} and are available on machines
+that support the related types, as described in @ref{Mathematics}.
+@end deftypefun
+
@comment wchar.h
@comment ISO
@deftypefun double wcstod (const wchar_t *restrict @var{string}, wchar_t **restrict @var{tailptr})
-@comment stdlib.h
+@comment wchar.h
@comment ISO
@deftypefunx float wcstof (const wchar_t *@var{string}, wchar_t **@var{tailptr})
-@comment stdlib.h
+@comment wchar.h
@comment ISO
@deftypefunx {long double} wcstold (const wchar_t *@var{string}, wchar_t **@var{tailptr})
+@comment wchar.h
+@deftypefunx _FloatN wcstofN (const wchar_t *@var{string}, wchar_t **@var{tailptr})
+@deftypefunx _FloatNx wcstofNx (const wchar_t *@var{string}, wchar_t **@var{tailptr})
@safety{@prelim{}@mtsafe{@mtslocale{}}@assafe{}@acsafe{}}
-The @code{wcstod}, @code{wcstof}, and @code{wcstol} functions are
-equivalent in nearly all aspect to the @code{strtod}, @code{strtof}, and
-@code{strtold} functions but it handles wide character string.
+The @code{wcstod}, @code{wcstof}, @code{wcstol}, @code{wcstof@var{N}},
+and @code{wcstof@var{N}x} functions are equivalent in nearly all aspect
+to the @code{strtod}, @code{strtof}, @code{strtold},
+@code{strtof@var{N}}, and @code{strtof@var{N}x} functions but they
+handle wide character strings.
The @code{wcstod} function was introduced in @w{Amendment 1} of @w{ISO
C90}. The @code{wcstof} and @code{wcstold} functions were introduced in
@w{ISO C99}.
+
+The @code{wcstof@var{N}} and @code{wcstof@var{N}x} functions are not in
+any standard, but are added to provide completeness for the
+non-deprecated interface of wide character string to floating-point
+conversion function. They are only available on machines that support
+the related types as described in @ref{Mathematics}.
@end deftypefun
@comment stdlib.h
@@ -3064,6 +3086,19 @@ has been completely written if and only if the returned value is less than
These functions were introduced by ISO/IEC TS 18661-1.
@end deftypefun
+@comment stdlib.h
+@comment ISO/IEC TS 18661-3
+@deftypefun int strfromfN (char *restrict @var{string}, size_t @var{size}, const char *restrict @var{format}, _Float@var{N} @var{value})
+@deftypefunx int strfromfNx (char *restrict @var{string}, size_t @var{size}, const char *restrict @var{format}, _Float@var{N}x @var{value})
+@safety{@prelim{}@mtsafe{@mtslocale{}}@asunsafe{@ascuheap{}}@acunsafe{@acsmem{}}}
+@comment this function depends on __printf_fp and __printf_fphex, which are
+@comment AS-unsafe (ascuheap) and AC-unsafe (acsmem).
+These functions are like @code{strfromd}, except for the type of @var{value}.
+
+They were introduced in @w{ISO/IEC TS 18661-3} and are available on machines
+that support the related types, as described in @ref{Mathematics}.
+@end deftypefun
+
@node System V Number Conversion
@section Old-fashioned System V number-to-string functions
diff --git a/manual/math.texi b/manual/math.texi
index 69a0ace..a335917 100644
--- a/manual/math.texi
+++ b/manual/math.texi
@@ -53,6 +53,17 @@ usually wise to pick the narrowest type that can accommodate your data.
Not all machines have a distinct @code{long double} type; it may be the
same as @code{double}.
+On some machines, @theglibc{} also provides @code{_Float@var{N}} and
+@code{_Float@var{N}x} types. These types are defined in @w{ISO/IEC
+18661-3}, which extends @w{ISO C} and defines floating-point types that
+are not machine-dependent. When such a type, e.g. @code{_Float128}, is
+supported by @theglibc{}, extra variants for most of the mathematical
+functions provided for @code{double}, @code{float}, and @code{long
+double} are also provided for the supported type.
+
+Currently, support for @code{_Float@var{N}} or @code{_Float@var{N}x}
+types is not provided for any machine.
+
@menu
* Mathematical Constants:: Precise numeric values for often-used
constants.
--
2.4.11