Module Name: src
Committed By: rillig
Date: Wed Dec 30 13:15:07 UTC 2020
Modified Files:
src/distrib/sets/lists/tests: mi
src/tests/usr.bin/xlint/lint1: Makefile t_integration.sh
Added Files:
src/tests/usr.bin/xlint/lint1: d_decl_old_style_arguments.c
d_decl_old_style_arguments.exp
Log Message:
lint: add test for old style function arguments
To generate a diff of this commit:
cvs rdiff -u -r1.1000 -r1.1001 src/distrib/sets/lists/tests/mi
cvs rdiff -u -r1.20 -r1.21 src/tests/usr.bin/xlint/lint1/Makefile
cvs rdiff -u -r0 -r1.1 \
src/tests/usr.bin/xlint/lint1/d_decl_old_style_arguments.c \
src/tests/usr.bin/xlint/lint1/d_decl_old_style_arguments.exp
cvs rdiff -u -r1.12 -r1.13 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/distrib/sets/lists/tests/mi
diff -u src/distrib/sets/lists/tests/mi:1.1000 src/distrib/sets/lists/tests/mi:1.1001
--- src/distrib/sets/lists/tests/mi:1.1000 Tue Dec 29 01:45:06 2020
+++ src/distrib/sets/lists/tests/mi Wed Dec 30 13:15:07 2020
@@ -1,4 +1,4 @@
-# $NetBSD: mi,v 1.1000 2020/12/29 01:45:06 rillig Exp $
+# $NetBSD: mi,v 1.1001 2020/12/30 13:15:07 rillig Exp $
#
# Note: don't delete entries from here - mark them as "obsolete" instead.
#
@@ -5773,6 +5773,8 @@
./usr/tests/usr.bin/xlint/lint1/d_cvt_constant.c tests-usr.bin-tests compattestfile,atf
./usr/tests/usr.bin/xlint/lint1/d_cvt_constant.exp tests-usr.bin-tests compattestfile,atf
./usr/tests/usr.bin/xlint/lint1/d_cvt_in_ternary.c tests-usr.bin-tests compattestfile,atf
+./usr/tests/usr.bin/xlint/lint1/d_decl_old_style_arguments.c tests-usr.bin-tests compattestfile,atf
+./usr/tests/usr.bin/xlint/lint1/d_decl_old_style_arguments.exp tests-usr.bin-tests compattestfile,atf
./usr/tests/usr.bin/xlint/lint1/d_ellipsis_in_switch.c tests-usr.bin-tests compattestfile,atf
./usr/tests/usr.bin/xlint/lint1/d_gcc_compound_statements1.c tests-usr.bin-tests compattestfile,atf
./usr/tests/usr.bin/xlint/lint1/d_gcc_compound_statements2.c tests-usr.bin-tests compattestfile,atf
Index: src/tests/usr.bin/xlint/lint1/Makefile
diff -u src/tests/usr.bin/xlint/lint1/Makefile:1.20 src/tests/usr.bin/xlint/lint1/Makefile:1.21
--- src/tests/usr.bin/xlint/lint1/Makefile:1.20 Mon Dec 28 12:47:39 2020
+++ src/tests/usr.bin/xlint/lint1/Makefile Wed Dec 30 13:15:07 2020
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.20 2020/12/28 12:47:39 rillig Exp $
+# $NetBSD: Makefile,v 1.21 2020/12/30 13:15:07 rillig Exp $
NOMAN= # defined
@@ -47,6 +47,8 @@ FILES+= d_constant_conv2.exp
FILES+= d_cvt_constant.c
FILES+= d_cvt_constant.exp
FILES+= d_cvt_in_ternary.c
+FILES+= d_decl_old_style_arguments.c
+FILES+= d_decl_old_style_arguments.exp
FILES+= d_ellipsis_in_switch.c
FILES+= d_gcc_compound_statements1.c
FILES+= d_gcc_compound_statements2.c
@@ -76,4 +78,18 @@ FILES+= d_typefun.c
FILES+= d_typename_as_var.c
FILES+= d_zero_sized_arrays.c
+# Note: only works for adding tests.
+# To remove a test, the $$mi file must be edited manually.
+sync-mi: .PHONY
+ @set -eu; \
+ cd "${MAKEFILE:tA:H}/../../../.."; \
+ mi="distrib/sets/lists/tests/mi"; \
+ cvs update "$$mi"; \
+ fmt="./usr/tests/usr.bin/xlint/lint1/%s\ttests-usr.bin-tests\tcompattestfile,atf\n"; \
+ cat "$$mi" > "$$mi.tmp"; \
+ printf "$$fmt" ${FILES:M*.c} ${FILES:M*.exp} >> "$$mi.tmp"; \
+ distrib/sets/fmt-list "$$mi.tmp"; \
+ mv "$$mi.tmp" "$$mi"; \
+ cvs diff "$$mi" || true
+
.include <bsd.test.mk>
Index: src/tests/usr.bin/xlint/lint1/t_integration.sh
diff -u src/tests/usr.bin/xlint/lint1/t_integration.sh:1.12 src/tests/usr.bin/xlint/lint1/t_integration.sh:1.13
--- src/tests/usr.bin/xlint/lint1/t_integration.sh:1.12 Mon Dec 28 17:00:37 2020
+++ src/tests/usr.bin/xlint/lint1/t_integration.sh Wed Dec 30 13:15:07 2020
@@ -1,4 +1,4 @@
-# $NetBSD: t_integration.sh,v 1.12 2020/12/28 17:00:37 rillig Exp $
+# $NetBSD: t_integration.sh,v 1.13 2020/12/30 13:15:07 rillig Exp $
#
# Copyright (c) 2008, 2010 The NetBSD Foundation, Inc.
# All rights reserved.
@@ -73,6 +73,7 @@ test_case c99_union_cast
test_case c99_union_init4
test_case cast_fun_array_param
test_case cast_typeof
+test_case decl_old_style_arguments
test_case gcc_extension
test_case type_question_colon
test_case typefun
Added files:
Index: src/tests/usr.bin/xlint/lint1/d_decl_old_style_arguments.c
diff -u /dev/null src/tests/usr.bin/xlint/lint1/d_decl_old_style_arguments.c:1.1
--- /dev/null Wed Dec 30 13:15:07 2020
+++ src/tests/usr.bin/xlint/lint1/d_decl_old_style_arguments.c Wed Dec 30 13:15:07 2020
@@ -0,0 +1,15 @@
+# 2 "d_decl_old_style_arguments.c"
+
+/*
+ * A function is declared with a prototype, followed by an old style definition
+ * that is completely different.
+ */
+
+void func(int a, int b, int c);
+
+void func(num, ptr, dbl, def)
+ int num;
+ char *ptr;
+ double dbl;
+{
+}
Index: src/tests/usr.bin/xlint/lint1/d_decl_old_style_arguments.exp
diff -u /dev/null src/tests/usr.bin/xlint/lint1/d_decl_old_style_arguments.exp:1.1
--- /dev/null Wed Dec 30 13:15:07 2020
+++ src/tests/usr.bin/xlint/lint1/d_decl_old_style_arguments.exp Wed Dec 30 13:15:07 2020
@@ -0,0 +1,6 @@
+d_decl_old_style_arguments.c(14): warning: argument type defaults to 'int': def [32]
+d_decl_old_style_arguments.c(14): parameter mismatch: 3 declared, 4 defined [51]
+d_decl_old_style_arguments.c(10): warning: argument num unused in function func [231]
+d_decl_old_style_arguments.c(10): warning: argument ptr unused in function func [231]
+d_decl_old_style_arguments.c(10): warning: argument dbl unused in function func [231]
+d_decl_old_style_arguments.c(10): warning: argument def unused in function func [231]