summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog16
-rw-r--r--wcsmbs/wchar.h69
2 files changed, 84 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 0125305f6e..626828e331 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,19 @@
+2017-11-02 Joseph Myers <joseph@codesourcery.com>
+
+ * wcsmbs/wchar.h [__HAVE_FLOAT16 && __USE_GNU] (wcstof16):
+ Declare.
+ [__HAVE_FLOAT32 && __USE_GNU] (wcstof32): Likewise.
+ [__HAVE_FLOAT64 && __USE_GNU] (wcstof64): Likewise.
+ [__HAVE_FLOAT32X && __USE_GNU] (wcstof32x): Likewise.
+ [__HAVE_FLOAT64X && __USE_GNU] (wcstof64x): Likewise.
+ [__HAVE_FLOAT128X && __USE_GNU] (wcstof128x): Likewise.
+ [__HAVE_FLOAT16 && __USE_GNU] (wcstof16_l): Likewise.
+ [__HAVE_FLOAT32 && __USE_GNU] (wcstof32_l): Likewise.
+ [__HAVE_FLOAT64 && __USE_GNU] (wcstof64_l): Likewise.
+ [__HAVE_FLOAT32X && __USE_GNU] (wcstof32x_l): Likewise.
+ [__HAVE_FLOAT64X && __USE_GNU] (wcstof64x_l): Likewise.
+ [__HAVE_FLOAT128X && __USE_GNU] (wcstof128x_l): Likewise.
+
2017-11-02 Mike FABIAN <mfabian@redhat.com>
[BZ #22382]
diff --git a/wcsmbs/wchar.h b/wcsmbs/wchar.h
index 4f16f98b1d..e3133d73f2 100644
--- a/wcsmbs/wchar.h
+++ b/wcsmbs/wchar.h
@@ -385,12 +385,43 @@ extern long double wcstold (const wchar_t *__restrict __nptr,
wchar_t **__restrict __endptr) __THROW;
#endif /* C99 */
-/* Likewise for `_Float128' when support is enabled. */
+/* Likewise for `_FloatN' and `_FloatNx' when support is enabled. */
+
+#if __HAVE_FLOAT16 && defined __USE_GNU
+extern _Float16 wcstof16 (const wchar_t *__restrict __nptr,
+ wchar_t **__restrict __endptr) __THROW;
+#endif
+
+#if __HAVE_FLOAT32 && defined __USE_GNU
+extern _Float32 wcstof32 (const wchar_t *__restrict __nptr,
+ wchar_t **__restrict __endptr) __THROW;
+#endif
+
+#if __HAVE_FLOAT64 && defined __USE_GNU
+extern _Float64 wcstof64 (const wchar_t *__restrict __nptr,
+ wchar_t **__restrict __endptr) __THROW;
+#endif
+
#if __HAVE_FLOAT128 && defined __USE_GNU
extern _Float128 wcstof128 (const wchar_t *__restrict __nptr,
wchar_t **__restrict __endptr) __THROW;
#endif
+#if __HAVE_FLOAT32X && defined __USE_GNU
+extern _Float32x wcstof32x (const wchar_t *__restrict __nptr,
+ wchar_t **__restrict __endptr) __THROW;
+#endif
+
+#if __HAVE_FLOAT64X && defined __USE_GNU
+extern _Float64x wcstof64x (const wchar_t *__restrict __nptr,
+ wchar_t **__restrict __endptr) __THROW;
+#endif
+
+#if __HAVE_FLOAT128X && defined __USE_GNU
+extern _Float128x wcstof128x (const wchar_t *__restrict __nptr,
+ wchar_t **__restrict __endptr) __THROW;
+#endif
+
/* Convert initial portion of wide string NPTR to `long int'
representation. */
@@ -470,11 +501,47 @@ extern long double wcstold_l (const wchar_t *__restrict __nptr,
wchar_t **__restrict __endptr,
locale_t __loc) __THROW;
+# if __HAVE_FLOAT16
+extern _Float16 wcstof16_l (const wchar_t *__restrict __nptr,
+ wchar_t **__restrict __endptr,
+ locale_t __loc) __THROW;
+# endif
+
+# if __HAVE_FLOAT32
+extern _Float32 wcstof32_l (const wchar_t *__restrict __nptr,
+ wchar_t **__restrict __endptr,
+ locale_t __loc) __THROW;
+# endif
+
+# if __HAVE_FLOAT64
+extern _Float64 wcstof64_l (const wchar_t *__restrict __nptr,
+ wchar_t **__restrict __endptr,
+ locale_t __loc) __THROW;
+# endif
+
# if __HAVE_FLOAT128
extern _Float128 wcstof128_l (const wchar_t *__restrict __nptr,
wchar_t **__restrict __endptr,
locale_t __loc) __THROW;
# endif
+
+# if __HAVE_FLOAT32X
+extern _Float32x wcstof32x_l (const wchar_t *__restrict __nptr,
+ wchar_t **__restrict __endptr,
+ locale_t __loc) __THROW;
+# endif
+
+# if __HAVE_FLOAT64X
+extern _Float64x wcstof64x_l (const wchar_t *__restrict __nptr,
+ wchar_t **__restrict __endptr,
+ locale_t __loc) __THROW;
+# endif
+
+# if __HAVE_FLOAT128X
+extern _Float128x wcstof128x_l (const wchar_t *__restrict __nptr,
+ wchar_t **__restrict __endptr,
+ locale_t __loc) __THROW;
+# endif
#endif /* use GNU */