source: asp3_tinet_ecnl_arm/trunk/musl-1.1.18/src/time/localtime_r.c@ 352

Last change on this file since 352 was 352, checked in by coas-nagasima, 6 years ago

arm向けASP3版ECNLを追加

  • Property svn:eol-style set to native
  • Property svn:mime-type set to text/x-csrc;charset=UTF-8
File size: 712 bytes
Line 
1#include "time_impl.h"
2#include <errno.h>
3#include "libc.h"
4
5struct tm *__localtime_r(const time_t *restrict t, struct tm *restrict tm)
6{
7 /* Reject time_t values whose year would overflow int because
8 * __secs_to_zone cannot safely handle them. */
9 if (*t < INT_MIN * 31622400LL || *t > INT_MAX * 31622400LL) {
10 errno = EOVERFLOW;
11 return 0;
12 }
13 __secs_to_zone(*t, 0, &tm->tm_isdst, &tm->__tm_gmtoff, 0, &tm->__tm_zone);
14 if (__secs_to_tm((long long)*t + tm->__tm_gmtoff, tm) < 0) {
15 errno = EOVERFLOW;
16 return 0;
17 }
18 return tm;
19}
20
21#ifndef __c2__
22weak_alias(__localtime_r, localtime_r);
23#else
24struct tm *localtime_r(const time_t *restrict t, struct tm *restrict tm)
25{
26 return __localtime_r(t, tm);
27}
28#endif
Note: See TracBrowser for help on using the repository browser.