Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src/usr.bin/xlint/lint1 lint: fix build on Cygwin
details: https://anonhg.NetBSD.org/src/rev/773af55cd2f5
branches: trunk
changeset: 958882:773af55cd2f5
user: rillig <rillig%NetBSD.org@localhost>
date: Sun Jan 24 09:44:35 2021 +0000
description:
lint: fix build on Cygwin
Cygwin does not conform to C99, which says that MB_CUR_MAX has type
size_t.
Instead, Cygwin defines it as type int. This leads to compile errors
because comparing signed with unsigned expressions is surprising in C.
diffstat:
usr.bin/xlint/lint1/lex.c | 16 +++++++++-------
1 files changed, 9 insertions(+), 7 deletions(-)
diffs (54 lines):
diff -r 6905f7e50167 -r 773af55cd2f5 usr.bin/xlint/lint1/lex.c
--- a/usr.bin/xlint/lint1/lex.c Sun Jan 24 09:25:16 2021 +0000
+++ b/usr.bin/xlint/lint1/lex.c Sun Jan 24 09:44:35 2021 +0000
@@ -1,4 +1,4 @@
-/* $NetBSD: lex.c,v 1.6 2021/01/24 09:25:16 rillig Exp $ */
+/* $NetBSD: lex.c,v 1.7 2021/01/24 09:44:35 rillig Exp $ */
/*
* Copyright (c) 1996 Christopher G. Demetriou. All Rights Reserved.
@@ -38,7 +38,7 @@
#include <sys/cdefs.h>
#if defined(__RCSID) && !defined(lint)
-__RCSID("$NetBSD: lex.c,v 1.6 2021/01/24 09:25:16 rillig Exp $");
+__RCSID("$NetBSD: lex.c,v 1.7 2021/01/24 09:44:35 rillig Exp $");
#endif
#include <ctype.h>
@@ -845,13 +845,15 @@
lex_wide_character_constant(void)
{
static char buf[MB_LEN_MAX + 1];
- size_t i;
+ size_t i, imax;
int c;
wchar_t wc;
+ imax = MB_CUR_MAX;
+
i = 0;
while ((c = get_escaped_char('\'')) >= 0) {
- if (i < MB_CUR_MAX)
+ if (i < imax)
buf[i] = (char)c;
i++;
}
@@ -865,14 +867,14 @@
/* empty character constant */
error(73);
} else {
- if (i > MB_CUR_MAX) {
- i = MB_CUR_MAX;
+ if (i > imax) {
+ i = imax;
/* too many characters in character constant */
error(71);
} else {
buf[i] = '\0';
(void)mbtowc(NULL, NULL, 0);
- if (mbtowc(&wc, buf, MB_CUR_MAX) < 0)
+ if (mbtowc(&wc, buf, imax) < 0)
/* invalid multibyte character */
error(291);
}
Home |
Main Index |
Thread Index |
Old Index