xref: /netbsd-src/tests/usr.bin/xlint/lint1/msg_153.c (revision e79ed5007234254008237aa586d5435bb81927a7)
1*e79ed500Srillig /*	$NetBSD: msg_153.c,v 1.9 2024/11/23 16:48:35 rillig Exp $	*/
2a0a15c14Srillig # 3 "msg_153.c"
3a0a15c14Srillig 
44b52b116Srillig // Test for message: converting '%s' to incompatible '%s' for argument %d [153]
5a0a15c14Srillig 
6b2baa501Srillig /* lint1-extra-flags: -X 351 */
7b2baa501Srillig 
8033a381eSrillig 
9033a381eSrillig typedef double (*unary_operator)(double);
10033a381eSrillig 
114b52b116Srillig void sink_function_pointer(unary_operator);
124b52b116Srillig void sink_int_pointer(int *);
1388d1eb23Srillig void sink_qualifiers(char *, const char *, volatile char *, const volatile char *);
14033a381eSrillig 
15033a381eSrillig void
164b52b116Srillig to_function_pointer(int *x)
17033a381eSrillig {
1865e5c21bSrillig 	/* expect+1: warning: converting 'pointer to int' to incompatible 'pointer to function(double) returning double' for argument 1 [153] */
1965e5c21bSrillig 	sink_function_pointer(x);
204b52b116Srillig }
214b52b116Srillig 
224b52b116Srillig void
234b52b116Srillig to_int_pointer(unary_operator op)
244b52b116Srillig {
2565e5c21bSrillig 	/* expect+1: warning: converting 'pointer to function(double) returning double' to incompatible 'pointer to int' for argument 1 [153] */
2665e5c21bSrillig 	sink_int_pointer(op);
27033a381eSrillig }
2888d1eb23Srillig 
2988d1eb23Srillig void
3088d1eb23Srillig qualifiers(char *ptr, const volatile char *cvptr)
3188d1eb23Srillig {
3288d1eb23Srillig 	sink_qualifiers(ptr, ptr, ptr, ptr);
3388d1eb23Srillig 
34*e79ed500Srillig 	/* expect+3: warning: passing 'pointer to const volatile char' to argument 1 discards 'const volatile' [383] */
35*e79ed500Srillig 	/* expect+2: warning: passing 'pointer to const volatile char' to argument 2 discards 'volatile' [383] */
36*e79ed500Srillig 	/* expect+1: warning: passing 'pointer to const volatile char' to argument 3 discards 'const' [383] */
3788d1eb23Srillig 	sink_qualifiers(cvptr, cvptr, cvptr, cvptr);
3888d1eb23Srillig }
39