pgsql: Clean up *printf macros to avoid conflict with format archetypes

Started by Tom Lanealmost 8 years ago1 messagescomitters
Jump to latest
#1Tom Lane
tgl@sss.pgh.pa.us

Clean up *printf macros to avoid conflict with format archetypes.

We must define the macro "printf" with arguments, else it can mess
up format archetype attributes in builds where PG_PRINTF_ATTRIBUTE
is just "printf". Fortunately, that's easy to do now that we're
requiring C99; we can use __VA_ARGS__.

On the other hand, it's better not to use __VA_ARGS__ for the rest
of the *printf crew, so that one can take the addresses of those
functions without surprises.

I'd proposed doing this some time ago, but forgot to make it happen;
buildfarm failures subsequent to 96bf88d52 reminded me.

Discussion: /messages/by-id/22709.1535135640@sss.pgh.pa.us
Discussion: /messages/by-id/20180926190934.ea4xvzhkayuw7gkx@alap3.anarazel.de

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/8b91d258844afa58e856ac354f9ba9745ff9ffb2

Modified Files
--------------
src/include/port.h | 20 +++++++-------------
src/pl/plperl/plperl.h | 5 -----
src/pl/plpython/plpython.h | 5 -----
3 files changed, 7 insertions(+), 23 deletions(-)