more locale_t interfaces (string stuff) and header updates

this should be everything except for some functions where the non-_l
version isn't even implemented yet (mainly some non-ISO-C wcs*
functions).
This commit is contained in:
Rich Felker 2012-02-06 21:51:02 -05:00
commit 36bf56940a
10 changed files with 63 additions and 0 deletions

View file

@ -13,6 +13,11 @@ extern "C" {
#endif
#define __NEED_size_t
#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
|| defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE)
#define __NEED_locale_t
#endif
#include <bits/alltypes.h>
void *memcpy (void *, const void *, size_t);
@ -57,6 +62,9 @@ size_t strnlen (const char *, size_t);
char *strdup (const char *);
char *strndup (const char *, size_t);
char *strsignal(int);
char *strerror_l (int, locale_t);
int strcoll_l (const char *, const char *, locale_t);
size_t strxfrm_l (char *, const char *, size_t, locale_t);
#endif
#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE)

View file

@ -7,6 +7,7 @@ extern "C" {
#define __NEED_size_t
#define __NEED_locale_t
#include <bits/alltypes.h>
@ -22,6 +23,9 @@ char *rindex (const char *, int);
int strcasecmp (const char *, const char *);
int strncasecmp (const char *, const char *, size_t);
int strcasecmp_l (const char *, const char *, locale_t);
int strncasecmp_l (const char *, const char *, size_t, locale_t);
#ifdef __cplusplus
}
#endif

View file

@ -23,6 +23,7 @@ extern "C" {
#define __NEED_clockid_t
#define __NEED_timer_t
#define __NEED_pid_t
#define __NEED_locale_t
#endif
#include <bits/alltypes.h>
@ -58,6 +59,8 @@ char *ctime (const time_t *);
#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \
|| defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE)
size_t strftime_l (char *, size_t, const char *, const struct tm *, locale_t);
struct tm *gmtime_r (const time_t *, struct tm *);
struct tm *localtime_r (const time_t *, struct tm *);
char *asctime_r (const struct tm *, char *);