xref: /netbsd-src/tests/usr.bin/xlint/lint1/msg_384.c (revision 3d6a50253cd682dca85a66a49baee893251dac65)
1*3d6a5025Srillig /*	$NetBSD: msg_384.c,v 1.2 2025/01/03 03:14:47 rillig Exp $	*/
2e3a5018bSrillig # 3 "msg_384.c"
3e3a5018bSrillig 
4*3d6a5025Srillig // Test for message: function definition for '%s' with identifier list is obsolete in C23 [384]
5e3a5018bSrillig 
6e3a5018bSrillig /* lint1-extra-flags: -X 351 */
7e3a5018bSrillig 
8e3a5018bSrillig /*
9e3a5018bSrillig  * In traditional C, defining a function by listing its parameter names first,
10e3a5018bSrillig  * followed by declarations, was usual. This practice has been obsoleted in
11e3a5018bSrillig  * favor of defining the parameter types right in the declarator.
12e3a5018bSrillig  */
13e3a5018bSrillig 
14e3a5018bSrillig static inline int
15*3d6a5025Srillig /* expect+1: warning: function definition for 'function_with_identifier_list' with identifier list is obsolete in C23 [384] */
16e3a5018bSrillig function_with_identifier_list(a, b)
17e3a5018bSrillig 	int a, b;
18e3a5018bSrillig {
19e3a5018bSrillig 	return a + b;
20e3a5018bSrillig }
21e3a5018bSrillig 
22e3a5018bSrillig static inline int
23e3a5018bSrillig function_with_prototype(int a, int b)
24e3a5018bSrillig {
25e3a5018bSrillig 	return a + b;
26e3a5018bSrillig }
27