On Mon, 15 Nov 2021 at 07:30, Junio C Hamano <gitster@xxxxxxxxx> wrote: > > There are certain C99 features that might be nice to use in our code > base, but we've hesitated to do so in order to avoid breaking > compatibility with older compilers. But we don't actually know if > people are even using pre-C99 compilers these days. > is a long-enough time, so let's try it agin. s/agin/again/ > void show_object_with_name(FILE *out, struct object *obj, const char *name) > { > - const char *p; > - > fprintf(out, "%s ", oid_to_hex(&obj->oid)); > - for (p = name; *p && *p != '\n'; p++) > + for (const char *p = name; *p && *p != '\n'; p++) > fputc(*p, out); > fputc('\n', out); > } This seems like a stable-enough function for this experiment. Similar to 765dc16888 ("git-compat-util: always enable variadic macros", 2021-01-28), maybe we should add something like /* * This "for (const char *p = ..." is made as a first step towards * making use of such declarations elsewhere in our codebase. If * it causes compilation problems on your platform, please report * it to the Git mailing list at git@xxxxxxxxxxxxxxx. */ to reduce the chance of someone patching it up locally thinking that it's just a one-off. Martin