On Wed, Sep 09, 2020 at 09:54:55PM +0200, René Scharfe wrote: > > diff -u -p a/packfile.c b/packfile.c > > --- a/packfile.c > > +++ b/packfile.c > > @@ -735,7 +735,7 @@ struct packed_git *add_packed_git(const > > p->mtime = st.st_mtime; > > if (path_len < the_hash_algo->hexsz || > > get_sha1_hex(path + path_len - the_hash_algo->hexsz, p->hash)) > > - hashclr(p->hash); > > + oidclr(p); > > return p; > > } > > > > > > Maybe it's worth being looser in our cocci patch definitions. I'm having > > trouble thinking of a downside... > > For transformations that change the type as in the example above we > should insist on getting the right one, otherwise we might introduce > bugs -- like in the example above. p points to a struct packed_git and > not to a struct object_id, so this introduces a type mismatch. Heh. You'd think that I would have applied that patch and run "make". Or even read it carefully. Thanks for pointing that out. I guess now we have a real example of a downside (the compiler _would_ still catch it, but it means "make coccicheck" is useless if it's repeatedly suggesting a bad transformation). -Peff