Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/newlib
diff options
context:
space:
mode:
authorCorinna Vinschen <corinna@vinschen.de>2016-08-23 18:41:50 +0300
committerCorinna Vinschen <corinna@vinschen.de>2016-08-23 18:51:14 +0300
commite636fe3d489ca60d171ae1fcf5fabecdd1665af7 (patch)
tree6e48e3405f9cf422dbad5568870008e66df4571f /newlib
parent463a8afaa58b80926b0236e14a6171f45c1b784f (diff)
Implement GNU extension wcsftime_l
Signed-off-by: Corinna Vinschen <corinna@vinschen.de>
Diffstat (limited to 'newlib')
-rw-r--r--newlib/libc/include/wchar.h4
-rw-r--r--newlib/libc/time/strftime.c5
2 files changed, 6 insertions, 3 deletions
diff --git a/newlib/libc/include/wchar.h b/newlib/libc/include/wchar.h
index b7f8374e5..4766ca971 100644
--- a/newlib/libc/include/wchar.h
+++ b/newlib/libc/include/wchar.h
@@ -132,6 +132,10 @@ wchar_t *_EXFUN(_wcsdup_r, (struct _reent *, const wchar_t * ));
size_t _EXFUN(wcscspn, (const wchar_t *, const wchar_t *));
size_t _EXFUN(wcsftime, (wchar_t *__restrict, size_t,
const wchar_t *__restrict, const struct tm *__restrict));
+#if __GNU_VISIBLE
+size_t wcsftime_l (wchar_t *__restrict, size_t, const wchar_t *__restrict,
+ const struct tm *__restrict, locale_t);
+#endif
size_t _EXFUN(wcslcat, (wchar_t *, const wchar_t *, size_t));
size_t _EXFUN(wcslcpy, (wchar_t *, const wchar_t *, size_t));
size_t _EXFUN(wcslen, (const wchar_t *));
diff --git a/newlib/libc/time/strftime.c b/newlib/libc/time/strftime.c
index 46c2d95e4..f11a00242 100644
--- a/newlib/libc/time/strftime.c
+++ b/newlib/libc/time/strftime.c
@@ -311,6 +311,7 @@ locale, hard-coding the "C" locale settings.
# define STRLEN(a) strlen(a)
# else
# define strftime wcsftime /* Alternate function name */
+# define strftime_l wcsftime_l /* Alternate function name */
# define CHAR wchar_t /* string type basis */
# define CQ(a) L##a /* character constant qualifier */
# define snprintf swprintf /* wide-char equivalent function name */
@@ -1460,9 +1461,8 @@ _DEFUN (strftime, (s, maxsize, format, tim_p),
#endif /* !_WANT_C99_TIME_FORMATS */
}
-#if !defined(MAKE_WCSFTIME)
size_t
-strftime_l (char *__restrict s, size_t maxsize, const char *__restrict format,
+strftime_l (CHAR *__restrict s, size_t maxsize, const CHAR *__restrict format,
const struct tm *__restrict tim_p, struct __locale_t *locale)
{
#ifdef _WANT_C99_TIME_FORMATS
@@ -1479,7 +1479,6 @@ strftime_l (char *__restrict s, size_t maxsize, const char *__restrict format,
return __strftime (s, maxsize, format, tim_p, locale, NULL, NULL);
#endif /* !_WANT_C99_TIME_FORMATS */
}
-#endif
/* The remainder of this file can serve as a regression test. Compile
* with -D_REGRESSION_TEST. */