Message ID | 419519f9-1b48-93bb-eead-eacf6b383f70@ramsayjones.plus.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | repository.c: fix sparse warning | expand |
On Thu, Jan 17, 2019 at 8:21 AM Ramsay Jones <ramsay@ramsayjones.plus.com> wrote: > > > Signed-off-by: Ramsay Jones <ramsay@ramsayjones.plus.com> > --- > > 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? > > Thanks! > > ATB, > Ramsay Jones > > repository.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/repository.c b/repository.c > index 0c6814627e..3ecbb1b6e3 100644 > --- a/repository.c > +++ b/repository.c > @@ -1,3 +1,4 @@ > +#define USE_THE_INDEX_COMPATIBILITY_MACROS > #include "cache.h" > #include "repository.h" > #include "object-store.h" > -- > 2.20.0
On 17/01/2019 10:06, Duy Nguyen wrote: > On Thu, Jan 17, 2019 at 8:21 AM Ramsay Jones > <ramsay@ramsayjones.plus.com> wrote: >> >> >> Signed-off-by: Ramsay Jones <ramsay@ramsayjones.plus.com> >> --- >> >> 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
diff --git a/repository.c b/repository.c index 0c6814627e..3ecbb1b6e3 100644 --- a/repository.c +++ b/repository.c @@ -1,3 +1,4 @@ +#define USE_THE_INDEX_COMPATIBILITY_MACROS #include "cache.h" #include "repository.h" #include "object-store.h"
Signed-off-by: Ramsay Jones <ramsay@ramsayjones.plus.com> --- 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.] Thanks! ATB, Ramsay Jones repository.c | 1 + 1 file changed, 1 insertion(+)