1. 17 8月, 2020 1 次提交
  2. 13 9月, 2018 1 次提交
    • R
      reduce spurious inclusion of libc.h · 5ce37379
      Rich Felker 提交于
      libc.h was intended to be a header for access to global libc state and
      related interfaces, but ended up included all over the place because
      it was the way to get the weak_alias macro. most of the inclusions
      removed here are places where weak_alias was needed. a few were
      recently introduced for hidden. some go all the way back to when
      libc.h defined CANCELPT_BEGIN and _END, and all (wrongly implemented)
      cancellation points had to include it.
      
      remaining spurious users are mostly callers of the LOCK/UNLOCK macros
      and files that use the LFS64 macro to define the awful *64 aliases.
      
      in a few places, new inclusion of libc.h is added because several
      internal headers no longer implicitly include libc.h.
      
      declarations for __lockfile and __unlockfile are moved from libc.h to
      stdio_impl.h so that the latter does not need libc.h. putting them in
      libc.h made no sense at all, since the macros in stdio_impl.h are
      needed to use them correctly anyway.
      5ce37379
  3. 14 8月, 2015 1 次提交
    • N
      match historical behavior for tm_gmtoff member of struct tm · c13f2af1
      Natanael Copa 提交于
      tm_gmtoff is a nonstandard field, but on historical systems which have
      this field, it stores the offset of the local time zone from GMT or
      UTC. this is the opposite of the POSIX extern long timezone object and
      the offsets used in POSIX-form TZ strings, which represent the offset
      from local time to UTC. previously we were storing these negated
      offsets in tm_gmtoff too.
      
      programs which only used this field indirectly via strftime were not
      affected since strftime performed the negation for presentation.
      however, some programs and libraries accesse tm_gmtoff directly and
      were obtaining negated time zone offsets.
      c13f2af1
  4. 19 12月, 2013 1 次提交
  5. 17 7月, 2013 2 次提交
    • R
      fix error code on time conversion overflows · ea81c062
      Rich Felker 提交于
      POSIX mandates EOVERFLOW for this condition.
      ea81c062
    • R
      the big time handling overhaul · 1cc81f5c
      Rich Felker 提交于
      this commit has two major user-visible parts: zoneinfo-format time
      zones are now supported, and overflow handling is intended to be
      complete in the sense that all functions return a correct result if
      and only if the result fits in the destination type, and otherwise
      return an error. also, some noticable bugs in the way DST detection
      and normalization worked have been fixed, and performance may be
      better than before, but it has not been tested.
      1cc81f5c
  6. 07 9月, 2012 1 次提交
    • R
      use restrict everywhere it's required by c99 and/or posix 2008 · 400c5e5c
      Rich Felker 提交于
      to deal with the fact that the public headers may be used with pre-c99
      compilers, __restrict is used in place of restrict, and defined
      appropriately for any supported compiler. we also avoid the form
      [restrict] since older versions of gcc rejected it due to a bug in the
      original c99 standard, and instead use the form *restrict.
      400c5e5c
  7. 12 2月, 2011 1 次提交