Module Name:    src
Committed By:   rillig
Date:           Sat Mar 26 14:02:40 UTC 2022

Modified Files:
        src/usr.bin/make: make.h trace.c var.c

Log Message:
make: prefer 'long long' over 'long' on 32-bit C99 platforms

When sorting the words of an expression numerically using the modifier
':On' (added on 2021-07-30), use 64-bit numbers even on 32-bit
platforms.  A typical use case is comparing file sizes.

When tracing the execution of jobs, fix an integer overflow after 2038.
32-bit platforms that use a pre-C99 compiler still have this problem.

No change to the test suite since most tests simply skip any potential
differences between 32-bit platforms and 64-bit platforms (see
varmod-order-numeric.mk) or already account for both variants (see
varmod-localtime.mk).


To generate a diff of this commit:
cvs rdiff -u -r1.298 -r1.299 src/usr.bin/make/make.h
cvs rdiff -u -r1.31 -r1.32 src/usr.bin/make/trace.c
cvs rdiff -u -r1.1015 -r1.1016 src/usr.bin/make/var.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/usr.bin/make/make.h
diff -u src/usr.bin/make/make.h:1.298 src/usr.bin/make/make.h:1.299
--- src/usr.bin/make/make.h:1.298	Sat Feb  5 00:26:21 2022
+++ src/usr.bin/make/make.h	Sat Mar 26 14:02:40 2022
@@ -1,4 +1,4 @@
-/*	$NetBSD: make.h,v 1.298 2022/02/05 00:26:21 rillig Exp $	*/
+/*	$NetBSD: make.h,v 1.299 2022/03/26 14:02:40 rillig Exp $	*/
 
 /*
  * Copyright (c) 1988, 1989, 1990, 1993
@@ -136,7 +136,7 @@
 #define MAKE_ATTR_USE		/* delete */
 #endif
 
-#if __STDC__ >= 199901L || defined(lint)
+#if __STDC_VERSION__ >= 199901L || defined(lint)
 #define MAKE_INLINE static inline MAKE_ATTR_UNUSED
 #else
 #define MAKE_INLINE static MAKE_ATTR_UNUSED

Index: src/usr.bin/make/trace.c
diff -u src/usr.bin/make/trace.c:1.31 src/usr.bin/make/trace.c:1.32
--- src/usr.bin/make/trace.c:1.31	Sat Feb  5 00:26:21 2022
+++ src/usr.bin/make/trace.c	Sat Mar 26 14:02:40 2022
@@ -1,4 +1,4 @@
-/*	$NetBSD: trace.c,v 1.31 2022/02/05 00:26:21 rillig Exp $	*/
+/*	$NetBSD: trace.c,v 1.32 2022/03/26 14:02:40 rillig Exp $	*/
 
 /*
  * Copyright (c) 2000 The NetBSD Foundation, Inc.
@@ -48,7 +48,7 @@
 #include "job.h"
 #include "trace.h"
 
-MAKE_RCSID("$NetBSD: trace.c,v 1.31 2022/02/05 00:26:21 rillig Exp $");
+MAKE_RCSID("$NetBSD: trace.c,v 1.32 2022/03/26 14:02:40 rillig Exp $");
 
 static FILE *trfile;
 static pid_t trpid;
@@ -90,7 +90,7 @@ Trace_Log(TrEvent event, Job *job)
 
 	gettimeofday(&rightnow, NULL);
 
-#if __STDC__ >= 199901L
+#if __STDC_VERSION__ >= 199901L
 	fprintf(trfile, "%lld.%06ld %d %s %d %s",
 	    (long long)rightnow.tv_sec, (long)rightnow.tv_usec,
 	    jobTokensRunning,

Index: src/usr.bin/make/var.c
diff -u src/usr.bin/make/var.c:1.1015 src/usr.bin/make/var.c:1.1016
--- src/usr.bin/make/var.c:1.1015	Sat Mar 26 13:32:31 2022
+++ src/usr.bin/make/var.c	Sat Mar 26 14:02:40 2022
@@ -1,4 +1,4 @@
-/*	$NetBSD: var.c,v 1.1015 2022/03/26 13:32:31 rillig Exp $	*/
+/*	$NetBSD: var.c,v 1.1016 2022/03/26 14:02:40 rillig Exp $	*/
 
 /*
  * Copyright (c) 1988, 1989, 1990, 1993
@@ -139,7 +139,7 @@
 #include "metachar.h"
 
 /*	"@(#)var.c	8.3 (Berkeley) 3/19/94" */
-MAKE_RCSID("$NetBSD: var.c,v 1.1015 2022/03/26 13:32:31 rillig Exp $");
+MAKE_RCSID("$NetBSD: var.c,v 1.1016 2022/03/26 14:02:40 rillig Exp $");
 
 /*
  * Variables are defined using one of the VAR=value assignments.  Their
@@ -3217,7 +3217,7 @@ bad_modifier:
 	return AMR_BAD;
 }
 
-#if __STDC__ >= 199901L
+#if __STDC_VERSION__ >= 199901L
 # define NUM_TYPE long long
 # define PARSE_NUM_TYPE strtoll
 #else

Reply via email to