Module Name: src Committed By: rillig Date: Fri Feb 2 23:36:01 UTC 2024
Modified Files: src/tests/usr.bin/xlint/lint1: lex_utf8.c src/usr.bin/xlint/lint1: main1.c Log Message: lint: use the locale for interpreting wide character strings To generate a diff of this commit: cvs rdiff -u -r1.1 -r1.2 src/tests/usr.bin/xlint/lint1/lex_utf8.c cvs rdiff -u -r1.79 -r1.80 src/usr.bin/xlint/lint1/main1.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/tests/usr.bin/xlint/lint1/lex_utf8.c diff -u src/tests/usr.bin/xlint/lint1/lex_utf8.c:1.1 src/tests/usr.bin/xlint/lint1/lex_utf8.c:1.2 --- src/tests/usr.bin/xlint/lint1/lex_utf8.c:1.1 Fri Feb 2 23:30:39 2024 +++ src/tests/usr.bin/xlint/lint1/lex_utf8.c Fri Feb 2 23:36:01 2024 @@ -1,15 +1,12 @@ -/* $NetBSD: lex_utf8.c,v 1.1 2024/02/02 23:30:39 rillig Exp $ */ +/* $NetBSD: lex_utf8.c,v 1.2 2024/02/02 23:36:01 rillig Exp $ */ # 3 "lex_utf8.c" /* * Test lexing of multibyte characters and strings in an UTF-8 locale. + * + * See also: + * lex_wide_string.c (runs in the C locale) */ -/* - * Since lint always runs in the default "C" locale, it does not support any - * multibyte character encoding, thus treating each byte as a separate - * character. If lint were to support UTF-8, the array dimension would be 3 - * instead of 7. - */ -/* expect+1: error: negative array dimension (-7) [20] */ +/* expect+1: error: negative array dimension (-3) [20] */ typedef int mblen[-(int)(sizeof(L"Ä😄") / sizeof(L""))]; Index: src/usr.bin/xlint/lint1/main1.c diff -u src/usr.bin/xlint/lint1/main1.c:1.79 src/usr.bin/xlint/lint1/main1.c:1.80 --- src/usr.bin/xlint/lint1/main1.c:1.79 Sun Jan 21 14:11:52 2024 +++ src/usr.bin/xlint/lint1/main1.c Fri Feb 2 23:36:01 2024 @@ -1,4 +1,4 @@ -/* $NetBSD: main1.c,v 1.79 2024/01/21 14:11:52 rillig Exp $ */ +/* $NetBSD: main1.c,v 1.80 2024/02/02 23:36:01 rillig Exp $ */ /* * Copyright (c) 1994, 1995 Jochen Pohl @@ -37,10 +37,11 @@ #include <sys/cdefs.h> #if defined(__RCSID) -__RCSID("$NetBSD: main1.c,v 1.79 2024/01/21 14:11:52 rillig Exp $"); +__RCSID("$NetBSD: main1.c,v 1.80 2024/02/02 23:36:01 rillig Exp $"); #endif #include <sys/types.h> +#include <locale.h> #include <signal.h> #include <stdio.h> #include <stdlib.h> @@ -134,6 +135,7 @@ main(int argc, char *argv[]) { int c; + setlocale(LC_ALL, ""); setprogname(argv[0]); while ((c = getopt(argc, argv, "abceghpq:rstuvwyzA:FPR:STX:")) != -1) {