git-compat-util: always enable variadic macros
authorJeff King <peff@peff.net>
Thu, 28 Jan 2021 05:28:33 +0000 (00:28 -0500)
committerJunio C Hamano <gitster@pobox.com>
Thu, 28 Jan 2021 06:14:37 +0000 (22:14 -0800)
commit765dc168882476e66a997fe2209cb2aa08021737
tree938df7f2f87554ce185fb457cd69d91bdae00cb2
parente6362826a0409539642a5738db61827e5978e2e4
git-compat-util: always enable variadic macros

We allow variadic macros in the code base, but only if there is fallback
code for platforms that lack it. This leads to some annoyances:

  - the code is more complicated because of the fallbacks (e.g.,
    trace_printf(), etc, is implemented twice with a set of parallel
    wrappers).

  - some constructs are just impossible and we've had to live without
    them (e.g., a cross between FLEX_ALLOC and xstrfmt)

Since this feature is present in C99, we may be able to start counting
on it being available everywhere. Let's start with a weather balloon
patch to find out.

This patch makes the absolute minimal change by always setting
HAVE_VARIADIC_MACROS. If somebody runs into a platform where it's a
problem, they can undo it by commenting out the define. Likewise, if we
have to revert this, it would be quite unlikely to cause conflicts.

Once we feel comfortable that this is the right direction, then we can
start ripping out all the spots that actually look at the flag, and
removing the dead code.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
git-compat-util.h