Module Name:    src
Committed By:   rillig
Date:           Wed Aug 25 22:14:38 UTC 2021

Modified Files:
        src/usr.bin/make: arch.c var.c

Log Message:
make: fix lint warnings on ilp32 platforms

The warnings in arch.c were about conversions from int to long.

The warnings in var.c were about conversions from long long to
ptrdiff_t.

No functional change.


To generate a diff of this commit:
cvs rdiff -u -r1.202 -r1.203 src/usr.bin/make/arch.c
cvs rdiff -u -r1.947 -r1.948 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/arch.c
diff -u src/usr.bin/make/arch.c:1.202 src/usr.bin/make/arch.c:1.203
--- src/usr.bin/make/arch.c:1.202	Sat Aug 14 14:43:30 2021
+++ src/usr.bin/make/arch.c	Wed Aug 25 22:14:38 2021
@@ -1,4 +1,4 @@
-/*	$NetBSD: arch.c,v 1.202 2021/08/14 14:43:30 rillig Exp $	*/
+/*	$NetBSD: arch.c,v 1.203 2021/08/25 22:14:38 rillig Exp $	*/
 
 /*
  * Copyright (c) 1988, 1989, 1990, 1993
@@ -126,7 +126,7 @@
 #include "config.h"
 
 /*	"@(#)arch.c	8.2 (Berkeley) 1/2/94"	*/
-MAKE_RCSID("$NetBSD: arch.c,v 1.202 2021/08/14 14:43:30 rillig Exp $");
+MAKE_RCSID("$NetBSD: arch.c,v 1.203 2021/08/25 22:14:38 rillig Exp $");
 
 typedef struct List ArchList;
 typedef struct ListNode ArchListNode;
@@ -552,14 +552,14 @@ ArchStatMember(const char *archive, cons
 		if (strncmp(memName, AR_EFMT1, sizeof AR_EFMT1 - 1) == 0 &&
 		    ch_isdigit(memName[sizeof AR_EFMT1 - 1])) {
 
-			int elen = atoi(memName + sizeof AR_EFMT1 - 1);
+			size_t elen = atoi(memName + sizeof AR_EFMT1 - 1);
 
-			if ((unsigned int)elen > MAXPATHLEN)
+			if (elen > MAXPATHLEN)
 				goto badarch;
-			if (fread(memName, (size_t)elen, 1, arch) != 1)
+			if (fread(memName, elen, 1, arch) != 1)
 				goto badarch;
 			memName[elen] = '\0';
-			if (fseek(arch, -elen, SEEK_CUR) != 0)
+			if (fseek(arch, -(long)elen, SEEK_CUR) != 0)
 				goto badarch;
 			if (DEBUG(ARCH) || DEBUG(MAKE))
 				debug_printf(
@@ -791,14 +791,15 @@ ArchFindMember(const char *archive, cons
 		if (strncmp(out_arh->ar_name, AR_EFMT1, sizeof AR_EFMT1 - 1) ==
 		    0 &&
 		    (ch_isdigit(out_arh->ar_name[sizeof AR_EFMT1 - 1]))) {
-			int elen = atoi(&out_arh->ar_name[sizeof AR_EFMT1 - 1]);
+			size_t elen = atoi(
+			    &out_arh->ar_name[sizeof AR_EFMT1 - 1]);
 			char ename[MAXPATHLEN + 1];
 
-			if ((unsigned int)elen > MAXPATHLEN) {
+			if (elen > MAXPATHLEN) {
 				fclose(arch);
 				return NULL;
 			}
-			if (fread(ename, (size_t)elen, 1, arch) != 1) {
+			if (fread(ename, elen, 1, arch) != 1) {
 				fclose(arch);
 				return NULL;
 			}
@@ -811,14 +812,14 @@ ArchFindMember(const char *archive, cons
 			if (strncmp(ename, member, len) == 0) {
 				/* Found as extended name */
 				if (fseek(arch,
-					  -(long)sizeof(struct ar_hdr) - elen,
-					  SEEK_CUR) != 0) {
+				    -(long)(sizeof(struct ar_hdr) - elen),
+				    SEEK_CUR) != 0) {
 					fclose(arch);
 					return NULL;
 				}
 				return arch;
 			}
-			if (fseek(arch, -elen, SEEK_CUR) != 0) {
+			if (fseek(arch, -(long)elen, SEEK_CUR) != 0) {
 				fclose(arch);
 				return NULL;
 			}
@@ -834,7 +835,7 @@ ArchFindMember(const char *archive, cons
 		 */
 		out_arh->ar_size[sizeof out_arh->ar_size - 1] = '\0';
 		size = (int)strtol(out_arh->ar_size, NULL, 10);
-		if (fseek(arch, (size + 1) & ~1, SEEK_CUR) != 0) {
+		if (fseek(arch, (size + 1) & ~1L, SEEK_CUR) != 0) {
 			fclose(arch);
 			return NULL;
 		}

Index: src/usr.bin/make/var.c
diff -u src/usr.bin/make/var.c:1.947 src/usr.bin/make/var.c:1.948
--- src/usr.bin/make/var.c:1.947	Sat Aug 14 13:11:33 2021
+++ src/usr.bin/make/var.c	Wed Aug 25 22:14:38 2021
@@ -1,4 +1,4 @@
-/*	$NetBSD: var.c,v 1.947 2021/08/14 13:11:33 rillig Exp $	*/
+/*	$NetBSD: var.c,v 1.948 2021/08/25 22:14:38 rillig Exp $	*/
 
 /*
  * Copyright (c) 1988, 1989, 1990, 1993
@@ -140,7 +140,7 @@
 #include "metachar.h"
 
 /*	"@(#)var.c	8.3 (Berkeley) 3/19/94" */
-MAKE_RCSID("$NetBSD: var.c,v 1.947 2021/08/14 13:11:33 rillig Exp $");
+MAKE_RCSID("$NetBSD: var.c,v 1.948 2021/08/25 22:14:38 rillig Exp $");
 
 /*
  * Variables are defined using one of the VAR=value assignments.  Their
@@ -1605,7 +1605,8 @@ RegexReplace(const char *replace, SepBuf
 
 		if (*rp == '&') {
 			SepBuf_AddBytesBetween(buf,
-			    wp + m[0].rm_so, wp + m[0].rm_eo);
+			    wp + (size_t)m[0].rm_so,
+			    wp + (size_t)m[0].rm_eo);
 			continue;
 		}
 
@@ -1626,7 +1627,8 @@ RegexReplace(const char *replace, SepBuf
 			}
 		} else {
 			SepBuf_AddBytesBetween(buf,
-			    wp + m[n].rm_so, wp + m[n].rm_eo);
+			    wp + (size_t)m[n].rm_so,
+			    wp + (size_t)m[n].rm_eo);
 		}
 	}
 }
@@ -1673,7 +1675,7 @@ ok:
 
 	RegexReplace(args->replace, buf, wp, m, args->nsub);
 
-	wp += m[0].rm_eo;
+	wp += (size_t)m[0].rm_eo;
 	if (args->pflags.subGlobal) {
 		flags |= REG_NOTBOL;
 		if (m[0].rm_so == 0 && m[0].rm_eo == 0) {

Reply via email to