11.8Srillig/*	$NetBSD: msg_183.c,v 1.8 2025/04/12 15:49:50 rillig Exp $	*/
21.1Srillig# 3 "msg_183.c"
31.1Srillig
41.8Srillig// Test for message: invalid combination of %s '%s' and %s '%s' for '%s' [183]
51.1Srillig
61.5Srillig/* lint1-extra-flags: -X 351 */
71.5Srillig
81.6Srillig/* expect+2: warning: parameter 'x' unused in function 'example' [231] */
91.3Srilligvoid *
101.3Srilligexample(double x, int i, void *vp, int *ip, double *dp, void (*fp)(void))
111.3Srillig{
121.8Srillig	/* expect+1: warning: invalid combination of pointer 'pointer to void' and integer 'int' for 'init' [183] */
131.7Srillig	void *local_vp = i;
141.7Srillig
151.3Srillig	if (i < 0)
161.4Srillig		/* expect+1: error: function has return type 'pointer to void' but returns 'double' [211] */
171.3Srillig		return x;
181.3Srillig
191.3Srillig	if (i < 1)
201.8Srillig		/* expect+1: warning: invalid combination of pointer 'pointer to void' and integer 'int' for 'return' [183] */
211.3Srillig		return i;
221.3Srillig
231.3Srillig	if (i < 2)
241.3Srillig		return vp;
251.3Srillig
261.3Srillig	if (i < 3)
271.3Srillig		return ip;
281.3Srillig
291.3Srillig	if (i < 4)
301.3Srillig		return dp;
311.3Srillig
321.3Srillig	if (i < 5)
331.3Srillig		return fp;
341.3Srillig
351.3Srillig	return (void *)0;
361.3Srillig}
37