It's not done very often. For example at the very same place of the patch there is const char *p; not assigned. Well you could argue, that it can be detected by gcc as that variable p is assigned next line. So another counterexample, having the same pattern would be fast-import.c line 2992 in parse_treeish_dataref(const char **p) there we have a pointer to a struct, which is only assigned inside the following if/else branches. Then that place would need to be fixed up to struct object_entry *e = e; Regards, Stefan On 05/26/2013 10:08 PM, Stefano Lattarini wrote: > On 05/26/2013 10:05 PM, Stefan Beller wrote: >> Reported by cppcheck. >> >> Signed-off-by: Stefan Beller <stefanbeller@xxxxxxxxxxxxxx> >> --- >> fast-import.c | 2 +- >> 1 file changed, 1 insertion(+), 1 deletion(-) >> >> diff --git a/fast-import.c b/fast-import.c >> index 5f539d7..0142e3a 100644 >> --- a/fast-import.c >> +++ b/fast-import.c >> @@ -2914,7 +2914,7 @@ static void cat_blob(struct object_entry *oe, unsigned char sha1[20]) >> static void parse_cat_blob(void) >> { >> const char *p; >> - struct object_entry *oe = oe; >> > This was done on purpose, to avoid spurious warnings with (at least) > some versions of GCC. > >> + struct object_entry *oe; >> unsigned char sha1[20]; >> >> /* cat-blob SP <object> LF */ > > Regards, > Stefano > -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html