From: Ramsay Jones Date: Thu, 17 Jan 2019 16:51:13 GMT Subject: Re: [PATCH] repository.c: fix sparse warning Message-ID: In-Reply-To: On 17/01/2019 10:06, Duy Nguyen wrote: > On Thu, Jan 17, 2019 at 8:21 AM Ramsay Jones > wrote: >> >> >> Signed-off-by: Ramsay Jones >> --- >> >> Hi Duy, >> >> If you need to re-roll your 'nd/the-index-final' branch, could you >> please squash this into the relevant patch (commit 4478671442, >> "cache.h: flip NO_THE_INDEX_COMPATIBILITY_MACROS switch", 2019-01-12). >> >> [the warning is caused by the lack of the extern declaration of the >> 'the_index' symbol.] > > Is it a false alarm? The variable is actually defined in this file now > which should also function as a declaration, yes? Ah, no, absolutely not! :( (er, well yes, but no! :-D ). I hope you agree that _all_ uses of a symbol should be within the scope of the same declaration of that symbol (by #include-ing the same header/interface file). This is _especially_ true of the file which has the definition of that symbol - how else do you expect the compiler to detect a mismatch between the declaration and definition? ATB, Ramsay Jones