Module Name: src
Committed By: rillig
Date: Mon May 30 08:04:00 UTC 2022
Modified Files:
src/tests/usr.bin/xlint/lint1: msg_168.c msg_168.exp
Log Message:
tests/lint: demonstrate wrong warning 'array subscript cannot be'
Since tree.c 1.448 from 2022-05-26.
To generate a diff of this commit:
cvs rdiff -u -r1.5 -r1.6 src/tests/usr.bin/xlint/lint1/msg_168.c \
src/tests/usr.bin/xlint/lint1/msg_168.exp
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/msg_168.c
diff -u src/tests/usr.bin/xlint/lint1/msg_168.c:1.5 src/tests/usr.bin/xlint/lint1/msg_168.c:1.6
--- src/tests/usr.bin/xlint/lint1/msg_168.c:1.5 Thu Mar 25 22:53:05 2021
+++ src/tests/usr.bin/xlint/lint1/msg_168.c Mon May 30 08:04:00 2022
@@ -1,4 +1,4 @@
-/* $NetBSD: msg_168.c,v 1.5 2021/03/25 22:53:05 rillig Exp $ */
+/* $NetBSD: msg_168.c,v 1.6 2022/05/30 08:04:00 rillig Exp $ */
# 3 "msg_168.c"
// Test for message: array subscript cannot be > %d: %ld [168]
@@ -40,3 +40,28 @@ array_with_c99_initializer(void)
print_string(to_roman['9']);
print_string(to_roman[':']); /* expect: 168 */
}
+
+
+struct s {
+ char offset_0;
+ char offset_1;
+ int offset_4;
+ short offset_8;
+ char offset_10;
+};
+
+struct s
+s_init(void)
+{
+ struct s s[1];
+ s->offset_0 = 1;
+ /* expect+1: warning: array subscript cannot be > 0: 1 [168] */
+ s->offset_1 = 2;
+ /* expect+1: warning: array subscript cannot be > 0: 4 [168] */
+ s->offset_4 = 3;
+ /* expect+1: warning: array subscript cannot be > 0: 8 [168] */
+ s->offset_8 = 4;
+ /* expect+1: warning: array subscript cannot be > 0: 10 [168] */
+ s->offset_10 = 5;
+ return s[0];
+}
Index: src/tests/usr.bin/xlint/lint1/msg_168.exp
diff -u src/tests/usr.bin/xlint/lint1/msg_168.exp:1.5 src/tests/usr.bin/xlint/lint1/msg_168.exp:1.6
--- src/tests/usr.bin/xlint/lint1/msg_168.exp:1.5 Thu Mar 25 22:53:05 2021
+++ src/tests/usr.bin/xlint/lint1/msg_168.exp Mon May 30 08:04:00 2022
@@ -1,2 +1,6 @@
msg_168.c(28): warning: array subscript cannot be > 19: 20 [168]
msg_168.c(41): warning: array subscript cannot be > 57: 58 [168]
+msg_168.c(59): warning: array subscript cannot be > 0: 1 [168]
+msg_168.c(61): warning: array subscript cannot be > 0: 4 [168]
+msg_168.c(63): warning: array subscript cannot be > 0: 8 [168]
+msg_168.c(65): warning: array subscript cannot be > 0: 10 [168]