"brian m. carlson" <sandals@xxxxxxxxxxxxxxxxxxxx> writes: > struct git_var { > const char *name; > char *(*read)(int); > + int multivalued; > }; > static struct git_var git_vars[] = { > { > .name = "GIT_COMMITTER_IDENT", > .read = committer, > + .multivalued = 0, > }, > ... > + { > + .name = "GIT_CONFIG_GLOBAL", > + .read = git_config_val_global, > + .multivalued = 1, > }, As the majority of the variables are singletons and multi-valued variables are expected to be in minority even in the future, we would probably want to leave ".multivalued = 0" out of these array elements and instead let the default zero initialization to take place, which would make the resulting source less noisy. Other than that, looks good. Thanks.