Web lists-archives.com

Re: [PATCH] builtin/config: work around an unsized array forward declaration

On Thu, Jul 05, 2018 at 08:34:45PM +0200, Beat Bolli wrote:
> As reported here[0], Microsoft Visual Studio 2017.2 and "gcc -pedantic"
> don't understand the forward declaration of an unsized static array.
> They insist on an array size:
>     d:\git\src\builtin\config.c(70,46): error C2133: 'builtin_config_options': unknown size
> The thread [1] explains that this is due to the single-pass nature of
> old compilers.
> To work around this error, introduce the forward-declared function
> usage_builtin_config() instead that uses the array
> builtin_config_options only after it has been defined.

Argh, I think that this is my fault (via: fb0dc3bac1 (builtin/config.c:
support `--type=<type>` as preferred alias for `--<type>`, 2018-04-18)).

Thank you for the explanation above, and for the patch below. I reviewed
it myself, and the fix seems to be appropriate.

> Also use this function in all other places where usage_with_options() is
> called with the same arguments.
> [0]: https://github.com/git-for-windows/git/issues/1735
> [1]: https://groups.google.com/forum/#!topic/comp.lang.c.moderated/bmiF2xMz51U
> Fixes https://github.com/git-for-windows/git/issues/1735
> Reported-By: Karen Huang (via GitHub)
> Signed-off-by: Beat Bolli <dev+git@xxxxxxxxx>