move strftime_l into strftime.c and add __-prefixed version

the latter is both for ABI purposes, and to facilitate eventually
adding LC_TIME support. it's also nice to eliminate an extra source
file.
This commit is contained in:
Rich Felker 2013-07-24 17:58:31 -04:00
parent f5dfb45f78
commit 0a37d99547
2 changed files with 10 additions and 8 deletions

View File

@ -1,7 +0,0 @@
#include <locale.h>
#include <time.h>
size_t strftime_l(char *restrict s, size_t n, const char *restrict f, const struct tm *restrict tm, locale_t l)
{
return strftime(s, n, f, tm);
}

View File

@ -1,8 +1,10 @@
#include <stdio.h>
#include <stdlib.h>
#include <langinfo.h>
#include <locale.h>
#include <time.h>
#include <limits.h>
#include "libc.h"
// FIXME: integer overflows
@ -42,7 +44,7 @@ static int week_num(const struct tm *tm)
return val;
}
size_t strftime(char *restrict s, size_t n, const char *restrict f, const struct tm *restrict tm)
size_t __strftime_l(char *restrict s, size_t n, const char *restrict f, const struct tm *restrict tm, locale_t loc)
{
nl_item item;
int val;
@ -209,3 +211,10 @@ recu_strftime:
s[l] = 0;
return l;
}
size_t strftime(char *restrict s, size_t n, const char *restrict f, const struct tm *restrict tm)
{
return __strftime_l(s, n, f, tm, LC_GLOBAL_LOCALE);
}
weak_alias(__strftime_l, strftime_l);