On Wed, Feb 06, 2019 at 01:24:38AM +0000, Ramsay Jones wrote: > > > On 06/02/2019 01:14, Ramsay Jones wrote: > > > > Add a new test file which demonstrates some problems which can be > > seen on the git codebase. gcc does not complain about this file: > > > > $ gcc -Wall -c validation/function-redecl2.c > > $ > > > > ... but sparse does: > > > > $ sparse validation/function-redecl2.c > > validation/function-redecl2.c:6:5: error: symbol 'func0' redeclared with different type (originally declared at validation/function-redecl2.c:3) - different modifiers > > validation/function-redecl2.c:13:6: error: symbol 'func1' redeclared with different type (originally declared at validation/function-redecl2.c:11) - different modifiers > > validation/function-redecl2.c:21:6: error: symbol 'func2' redeclared with different type (originally declared at validation/function-redecl2.c:18) - different modifiers > > $ > > > > Note that func0 and func2 are essentially the same example, apart from > > the attribute used, to demonstrate that the issue isn't caused by the > > 'pure' attribute. Also, examples like func1 have occurred several times > > in git and, although they can be worked around (eg. See [1]), it would > > be preferable if this were not necessary. Yes, there are several related problems but this one is probably the most annoying. Thanks for the testcase. -- Luc