|
|
Message-Id: <20160906210939.32637-2-dsabogalcc@gmail.com>
Date: Tue, 6 Sep 2016 17:09:39 -0400
From: Daniel Sabogal <dsabogalcc@...il.com>
To: musl@...ts.openwall.com
Subject: [PATCH] add missing *_unlocked and wcsftime_l prototypes to wchar.h
these functions had been implemented, but prototypes were not made available
---
include/wchar.h | 12 ++++++++++++
src/stdio/getwchar.c | 2 --
src/stdio/getwchar_unlocked.c | 8 ++++++++
src/stdio/putwchar.c | 2 --
src/stdio/putwchar_unlocked.c | 8 ++++++++
5 files changed, 28 insertions(+), 4 deletions(-)
create mode 100644 src/stdio/getwchar_unlocked.c
create mode 100644 src/stdio/putwchar_unlocked.c
diff --git a/include/wchar.h b/include/wchar.h
index 0167dce..58818f6 100644
--- a/include/wchar.h
+++ b/include/wchar.h
@@ -136,6 +136,18 @@ size_t wcsftime (wchar_t *__restrict, size_t, const wchar_t *__restrict, const s
#undef iswdigit
+#if defined(_GNU_SOURCE)
+wint_t fgetwc_unlocked (FILE *);
+wint_t getwc_unlocked (FILE *);
+wint_t getwchar_unlocked (void);
+wint_t fputwc_unlocked (wchar_t, FILE *);
+wint_t putwc_unlocked (wchar_t, FILE *);
+wint_t putwchar_unlocked (wchar_t);
+wchar_t *fgetws_unlocked (wchar_t *__restrict, int, FILE *__restrict);
+int fputws_unlocked (const wchar_t *__restrict, FILE *__restrict);
+size_t wcsftime_l (wchar_t *__restrict, size_t, const wchar_t *__restrict, const struct tm *__restrict, locale_t);
+#endif
+
#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
|| defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
FILE *open_wmemstream(wchar_t **, size_t *);
diff --git a/src/stdio/getwchar.c b/src/stdio/getwchar.c
index bd89e0e..77a9dc1 100644
--- a/src/stdio/getwchar.c
+++ b/src/stdio/getwchar.c
@@ -5,5 +5,3 @@ wint_t getwchar(void)
{
return fgetwc(stdin);
}
-
-weak_alias(getwchar, getwchar_unlocked);
diff --git a/src/stdio/getwchar_unlocked.c b/src/stdio/getwchar_unlocked.c
new file mode 100644
index 0000000..1d00567
--- /dev/null
+++ b/src/stdio/getwchar_unlocked.c
@@ -0,0 +1,8 @@
+#define _GNU_SOURCE
+#include "stdio_impl.h"
+#include <wchar.h>
+
+wint_t getwchar_unlocked(void)
+{
+ return fgetwc_unlocked(stdin);
+}
diff --git a/src/stdio/putwchar.c b/src/stdio/putwchar.c
index b249c4a..7575384 100644
--- a/src/stdio/putwchar.c
+++ b/src/stdio/putwchar.c
@@ -5,5 +5,3 @@ wint_t putwchar(wchar_t c)
{
return fputwc(c, stdout);
}
-
-weak_alias(putwchar, putwchar_unlocked);
diff --git a/src/stdio/putwchar_unlocked.c b/src/stdio/putwchar_unlocked.c
new file mode 100644
index 0000000..6817f9e
--- /dev/null
+++ b/src/stdio/putwchar_unlocked.c
@@ -0,0 +1,8 @@
+#define _GNU_SOURCE
+#include "stdio_impl.h"
+#include <wchar.h>
+
+wint_t putwchar_unlocked(wchar_t c)
+{
+ return fputwc_unlocked(c, stdout);
+}
--
2.10.0
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.