Module Name: src
Committed By: rillig
Date: Tue Mar 23 22:58:08 UTC 2021
Modified Files:
src/tests/usr.bin/xlint/lint1: d_init_array_using_string.c
d_init_array_using_string.exp
src/usr.bin/xlint/lint1: init.c
Log Message:
lint: fix wrong warning about initialization using string literal
Missing braces after 'if', since init.c 1.68 from 2021-02-20.
GCC 10 doesn't complain about this even with -Wmisleading-indentation
since at least one of the involved lines is a macro invocation (in this
case both lines). GCC 11 will warn about this.
Clang warns about this, but the regular Clang build currently fails for
other reasons, so this problem didn't show up there either.
To generate a diff of this commit:
cvs rdiff -u -r1.1 -r1.2 \
src/tests/usr.bin/xlint/lint1/d_init_array_using_string.c \
src/tests/usr.bin/xlint/lint1/d_init_array_using_string.exp
cvs rdiff -u -r1.114 -r1.115 src/usr.bin/xlint/lint1/init.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/d_init_array_using_string.c
diff -u src/tests/usr.bin/xlint/lint1/d_init_array_using_string.c:1.1 src/tests/usr.bin/xlint/lint1/d_init_array_using_string.c:1.2
--- src/tests/usr.bin/xlint/lint1/d_init_array_using_string.c:1.1 Tue Mar 23 21:19:08 2021
+++ src/tests/usr.bin/xlint/lint1/d_init_array_using_string.c Tue Mar 23 22:58:08 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: d_init_array_using_string.c,v 1.1 2021/03/23 21:19:08 rillig Exp $ */
+/* $NetBSD: d_init_array_using_string.c,v 1.2 2021/03/23 22:58:08 rillig Exp $ */
# 3 "d_init_array_using_string.c"
/*
@@ -71,7 +71,7 @@ test_array_initialization_in_struct(void
};
struct cs_ws extra_braces = {
- { "" }, /* expect: illegal combination *//*FIXME*/
- { L"" }, /* expect: illegal combination *//*FIXME*/
+ { "" },
+ { L"" },
};
}
Index: src/tests/usr.bin/xlint/lint1/d_init_array_using_string.exp
diff -u src/tests/usr.bin/xlint/lint1/d_init_array_using_string.exp:1.1 src/tests/usr.bin/xlint/lint1/d_init_array_using_string.exp:1.2
--- src/tests/usr.bin/xlint/lint1/d_init_array_using_string.exp:1.1 Tue Mar 23 21:19:08 2021
+++ src/tests/usr.bin/xlint/lint1/d_init_array_using_string.exp Tue Mar 23 22:58:08 2021
@@ -6,5 +6,3 @@ d_init_array_using_string.c(59): warning
d_init_array_using_string.c(60): warning: illegal combination of integer (char) and pointer (pointer to char) [183]
d_init_array_using_string.c(69): warning: non-null byte ignored in string initializer [187]
d_init_array_using_string.c(70): warning: non-null byte ignored in string initializer [187]
-d_init_array_using_string.c(74): warning: illegal combination of integer (char) and pointer (pointer to char) [183]
-d_init_array_using_string.c(75): warning: illegal combination of integer (int) and pointer (pointer to int) [183]
Index: src/usr.bin/xlint/lint1/init.c
diff -u src/usr.bin/xlint/lint1/init.c:1.114 src/usr.bin/xlint/lint1/init.c:1.115
--- src/usr.bin/xlint/lint1/init.c:1.114 Tue Mar 23 20:21:07 2021
+++ src/usr.bin/xlint/lint1/init.c Tue Mar 23 22:58:08 2021
@@ -1,4 +1,4 @@
-/* $NetBSD: init.c,v 1.114 2021/03/23 20:21:07 rillig Exp $ */
+/* $NetBSD: init.c,v 1.115 2021/03/23 22:58:08 rillig Exp $ */
/*
* Copyright (c) 1994, 1995 Jochen Pohl
@@ -37,7 +37,7 @@
#include <sys/cdefs.h>
#if defined(__RCSID) && !defined(lint)
-__RCSID("$NetBSD: init.c,v 1.114 2021/03/23 20:21:07 rillig Exp $");
+__RCSID("$NetBSD: init.c,v 1.115 2021/03/23 22:58:08 rillig Exp $");
#endif
#include <stdlib.h>
@@ -1128,9 +1128,10 @@ init_array_using_string(tnode_t *tn)
* If the array is already partly initialized, we are
* wrong here.
*/
- if (istk->i_remaining != istk->i_type->t_dim)
+ if (istk->i_remaining != istk->i_type->t_dim) {
debug_leave();
return false;
+ }
} else {
debug_leave();
return false;