msg_347.c revision 1.1
11.1Srillig/*	$NetBSD: msg_347.c,v 1.1 2021/09/12 16:28:45 rillig Exp $	*/
21.1Srillig# 3 "msg_347.c"
31.1Srillig
41.1Srillig// Test for message: redeclaration of '%s' with type '%s', expected '%s' [347]
51.1Srillig
61.1Srillig/* lint1-extra-flags: -r */
71.1Srillig
81.1Srillig/*
91.1Srillig * Message 27 already covers redeclarations, but it doesn't include enough
101.1Srillig * details to make any sense of it.
111.1Srillig */
121.1Srillig
131.1Srillig/*
141.1Srillig * As of 2021-09-12, lint complains about mismatched types.
151.1Srillig * GCC and Clang accept this.
161.1Srillig *
171.1Srillig * Above:
181.1Srillig *     function(pointer to void, int) returning void
191.1Srillig *
201.1Srillig * Below: function(
211.1Srillig *     pointer to void,
221.1Srillig *     pointer to function(pointer to void, int) returning pointer to double
231.1Srillig * ) returning void
241.1Srillig */
251.1Srillig/* FIXME: the type of the second parameter is not 'int' */
261.1Srillig/* expect+1: previous declaration of function_parameter [260] */
271.1Srilligvoid function_parameter(void *, double *(void *, int));
281.1Srillig/* expect+1: error: redeclaration of 'function_parameter' with type 'function(pointer to void, pointer to function(pointer to void, int) returning pointer to double) returning void', expected 'function(pointer to void, int) returning void' [347] */
291.1Srilligvoid function_parameter(void *fs, double *func(void *, int));
30