On 22/05/17 02:43, Junio C Hamano wrote: > Ramsay Jones <ramsay@xxxxxxxxxxxxxxxxxxxx> writes: > >> Commit d8193743e0 ("usage.c: add BUG() function", 12-05-2017) added the >> BUG() functions and macros as a replacement for calls to die("BUG: .."). >> The use of NORETURN on the declarations (in git-compat-util.h) and the >> lack of NORETURN on the function definitions, however, leads sparse to >> complain thus: >> >> SP usage.c >> usage.c:220:6: error: symbol 'BUG_fl' redeclared with different type >> (originally declared at git-compat-util.h:1074) - different modifiers >> >> In order to suppress the sparse error, add the NORETURN to the function >> definitions. >> >> Signed-off-by: Ramsay Jones <ramsay@xxxxxxxxxxxxxxxxxxxx> >> --- >> >> Hi Junio, >> >> This is built on 'next', which has now merged the 'jk/bug-to-abort' >> branch. > > Thanks. > > I cannot seem to cause sparse (v0.5.0-207-g14964df) to complain the > same way, though. Hmm, interesting... I have an older version installed: $ sparse --version v0.5.0-60-g6c283a0 $ sparse usage.c usage.c:220:6: error: symbol 'BUG_fl' redeclared with different type (originally declared at git-compat-util.h:1074) - different modifiers $ ... but a more up-to-date version agrees: $ ~/sparse/sparse --version v0.5.0-237-g51de1cc $ ~/sparse/sparse usage.c usage.c:220:6: error: symbol 'BUG_fl' redeclared with different type (originally declared at git-compat-util.h:1074) - different modifiers $ So, I don't know. Wait let me try your specific version: $ ~/sparse/sparse --version v0.5.0-207-g14964df $ ~/sparse/sparse usage.c usage.c:220:6: error: symbol 'BUG_fl' redeclared with different type (originally declared at git-compat-util.h:1074) - different modifiers $ Er, dunno. (This is on Linux Mint 18.1). ATB, Ramsay Jones