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> Thanks, Taylor