Mercurial > gnulib
changeset 18304:e04e8b486f70
mktime: simplify DEBUG_MKTIME
* lib/mktime.c (DEBUG_MKTIME): Define to 0 if not defined.
Simplify later usage accordingly.
author | Paul Eggert <eggert@cs.ucla.edu> |
---|---|
date | Sun, 01 May 2016 12:10:37 -0700 |
parents | 8b34efae5441 |
children | ebba8469e29d |
files | ChangeLog lib/mktime.c |
diffstat | 2 files changed, 12 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog Sun May 01 11:44:51 2016 -0700 +++ b/ChangeLog Sun May 01 12:10:37 2016 -0700 @@ -1,11 +1,16 @@ 2016-05-01 Paul Eggert <eggert@cs.ucla.edu> + mktime: simplify DEBUG_MKTIME + * lib/mktime.c (DEBUG_MKTIME): Define to 0 if not defined. + Simplify later usage accordingly. + Port mktime_internal offset to unsigned time_t This avoids some assumptions about wraparound arithmetic on signed integer overflow. * lib/mktime-internal.h (mktime_offset_t): New type. (mktime_internal): Use it in decl. * lib/mktime.c, lib/timegm.c (mktime_offset_t) [_LIBC]: New type. + * lib/mktime.c (__mktime_internal, localtime_offset): * lib/timegm.c (timegm): Use it. * m4/mktime.m4 (gl_TIME_T_IS_SIGNED): New macro.
--- a/lib/mktime.c Sun May 01 11:44:51 2016 -0700 +++ b/lib/mktime.c Sun May 01 12:10:37 2016 -0700 @@ -17,9 +17,11 @@ License along with the GNU C Library; if not, see <http://www.gnu.org/licenses/>. */ -/* Define this to have a standalone program to test this implementation of +/* Define this to 1 to have a standalone program to test this implementation of mktime. */ -/* #define DEBUG_MKTIME 1 */ +#ifndef DEBUG_MKTIME +# define DEBUG_MKTIME 0 +#endif #ifndef _LIBC # include <config.h> @@ -40,13 +42,13 @@ #include <intprops.h> #include <verify.h> -#if defined DEBUG_MKTIME && DEBUG_MKTIME +#if DEBUG_MKTIME # include <stdio.h> # include <stdlib.h> /* Make it work even if the system's libc has its own mktime routine. */ # undef mktime # define mktime my_mktime -#endif /* DEBUG_MKTIME */ +#endif /* Some of the code in this file assumes that signed integer overflow silently wraps around. This assumption can't easily be programmed @@ -545,7 +547,7 @@ libc_hidden_weak (timelocal) #endif -#if defined DEBUG_MKTIME && DEBUG_MKTIME +#if DEBUG_MKTIME static int not_equal_tm (const struct tm *a, const struct tm *b)