Module Name: src
Committed By: rillig
Date: Sat Feb 26 16:43:20 UTC 2022
Modified Files:
src/tests/usr.bin/xlint/lint1: t_integration.sh
Log Message:
tests/lint: demonstrate assertion failure in GCC compound expression
To generate a diff of this commit:
cvs rdiff -u -r1.73 -r1.74 src/tests/usr.bin/xlint/lint1/t_integration.sh
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/t_integration.sh
diff -u src/tests/usr.bin/xlint/lint1/t_integration.sh:1.73 src/tests/usr.bin/xlint/lint1/t_integration.sh:1.74
--- src/tests/usr.bin/xlint/lint1/t_integration.sh:1.73 Sun Oct 10 18:16:12 2021
+++ src/tests/usr.bin/xlint/lint1/t_integration.sh Sat Feb 26 16:43:20 2022
@@ -1,4 +1,4 @@
-# $NetBSD: t_integration.sh,v 1.73 2021/10/10 18:16:12 rillig Exp $
+# $NetBSD: t_integration.sh,v 1.74 2022/02/26 16:43:20 rillig Exp $
#
# Copyright (c) 2008, 2010 The NetBSD Foundation, Inc.
# All rights reserved.
@@ -145,6 +145,27 @@ check_lint1()
fi
}
+atf_test_case 'assertion_failures'
+assertion_failures_body()
+{
+ # seen in sys/external/bsd/drm2/include/linux/kref.h:73
+
+ cat <<'EOF' > input.c
+# 2 "input.c"
+void
+fn(unsigned int u)
+{
+ u = ({
+ do {} while (0);
+ u;
+ });
+}
+EOF
+
+ atf_check -s 'signal' -e 'match:lint: assertion ".*" failed' \
+ "$lint1" -gS 'input.c' '/dev/null'
+}
+
atf_init_test_cases()
{
local src name
@@ -162,4 +183,6 @@ atf_init_test_cases()
}"
atf_add_test_case "$name"
done
+
+ atf_add_test_case 'assertion_failures'
}