Add work-around for VA_ARGS_NARGS() on MSVC.

Thomas Munro <tmunro@postgresql.org>

Commit: 3f28bd7337d7c01820283fee51027a9dc9d2295f
Author: Thomas Munro <tmunro@postgresql.org>
Date: 2022-12-22T05:32:10Z
Releases: 16.0
Add work-around for VA_ARGS_NARGS() on MSVC.

The previous coding of VA_ARGS_NARGS() always returned 1 on Visual
Studio, because it treats __VA_ARGS__ as a single token unless you jump
through extra hoops.  Newer compilers have an option to fix that.  Add a
comment about that so that we can remember to clean this up in the
future when our minimum MSVC version advances.

Author: Victor Spirin <v.spirin@postgrespro.ru>
Reviewed-by: Thomas Munro <thomas.munro@gmail.com>
Reviewed-by: Tom Lane <tgl@sss.pgh.pa.us>
Reviewed-by: Michael Paquier <michael@paquier.xyz>
Discussion: https://postgr.es/m/f450fc57-a147-19d0-e50c-33571c52cc13%40postgrespro.ru

Files

PathChange+/−
src/include/c.h modified +20 −0

Discussion