xref: /netbsd-src/tests/usr.bin/xlint/lint1/msg_021.c (revision 3d6a50253cd682dca85a66a49baee893251dac65)
1*3d6a5025Srillig /*	$NetBSD: msg_021.c,v 1.8 2025/01/03 03:14:47 rillig Exp $	*/
2a0a15c14Srillig # 3 "msg_021.c"
3a0a15c14Srillig 
4abc4b681Srillig // Test for message: redeclaration of formal parameter '%s' [21]
5abc4b681Srillig 
6abc4b681Srillig /* See also message 237, which has the same text. */
7a0a15c14Srillig 
8e6298b92Srillig /* lint1-extra-flags: -X 351 */
9e6298b92Srillig 
10d61a0873Srillig /*ARGSUSED*/
11d61a0873Srillig void
12e3a5018bSrillig /* expect+2: error: redeclaration of formal parameter 'parameter' [21] */
13*3d6a5025Srillig /* expect+1: warning: function definition for 'old_style_with_duplicate_parameter' with identifier list is obsolete in C23 [384] */
14abc4b681Srillig old_style_with_duplicate_parameter(parameter, parameter)
15d61a0873Srillig     int parameter;
16abc4b681Srillig {
17039b0100Srillig 	/* expect-1: warning: type of parameter 'parameter' defaults to 'int' [32] */
18d61a0873Srillig }
19d61a0873Srillig 
20d61a0873Srillig void
21*3d6a5025Srillig /* expect+1: warning: function definition for 'old_style_with_duplicate_parameter_declaration' with identifier list is obsolete in C23 [384] */
22d61a0873Srillig old_style_with_duplicate_parameter_declaration(parameter)
23d61a0873Srillig     int parameter;
24abc4b681Srillig     /* expect+1: error: redeclaration of formal parameter 'parameter' [237] */
25abc4b681Srillig     int parameter;
26d61a0873Srillig {
27d61a0873Srillig }
28d61a0873Srillig 
29*3d6a5025Srillig /* expect+1: warning: function definition for 'old_style_with_local_variable' with identifier list is obsolete in C23 [384] */
30d61a0873Srillig void old_style_with_local_variable(parameter)
31d61a0873Srillig     int parameter;
32d61a0873Srillig {
33abc4b681Srillig 	/* expect+1: error: redeclaration of 'parameter' [27] */
34abc4b681Srillig 	int parameter;
35d61a0873Srillig }
36d61a0873Srillig 
37d61a0873Srillig /*ARGSUSED*/
38d61a0873Srillig void
39abc4b681Srillig /* expect+1: error: redeclaration of formal parameter 'param' [237] */
40abc4b681Srillig prototype_with_duplicate_parameter(int param, int param)
41d61a0873Srillig {
42d61a0873Srillig 
43d61a0873Srillig }
44d61a0873Srillig 
45d61a0873Srillig void
46d61a0873Srillig prototype_with_local_variable(int parameter)
47d61a0873Srillig {
48abc4b681Srillig 	/* expect+1: error: redeclaration of 'parameter' [27] */
49abc4b681Srillig 	int parameter;
50d61a0873Srillig }
51