strptime(3): Declare digit d as time_t.
This doesn't make a semantic difference -- d can only take on the ten values {0,1,2,3,4,5,6,7,8,9}, and the arithmetic with it later all comes out the same whether the type is unsigned or time_t, even if time_t were int32_t instead of int64_t. But it pacifies overzealous compilers used by downstream users of this code. And while it's silly to use a much wider type (64-bit signed) than is needed here to store a single digit, it doesn't really hurt either (32-bit unsigned is much larger than needed too). PR lib/58041
This commit is contained in:
parent
010a79541e
commit
eea7d4e0e0
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: strptime.c,v 1.65 2024/03/16 00:16:21 riastradh Exp $ */
|
||||
/* $NetBSD: strptime.c,v 1.66 2024/03/18 16:15:24 riastradh Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 1997, 1998, 2005, 2008 The NetBSD Foundation, Inc.
|
||||
|
@ -31,7 +31,7 @@
|
|||
|
||||
#include <sys/cdefs.h>
|
||||
#if defined(LIBC_SCCS) && !defined(lint)
|
||||
__RCSID("$NetBSD: strptime.c,v 1.65 2024/03/16 00:16:21 riastradh Exp $");
|
||||
__RCSID("$NetBSD: strptime.c,v 1.66 2024/03/18 16:15:24 riastradh Exp $");
|
||||
#endif
|
||||
|
||||
#include "namespace.h"
|
||||
|
@ -348,8 +348,7 @@ literal:
|
|||
|
||||
case 's': { /* seconds since the epoch */
|
||||
const time_t TIME_MAX = __type_max(time_t);
|
||||
time_t sse;
|
||||
unsigned d;
|
||||
time_t sse, d;
|
||||
|
||||
if (*bp < '0' || *bp > '9') {
|
||||
bp = NULL;
|
||||
|
|
Loading…
Reference in New Issue