From 017499a50f371c5a801f4e3b9b6a6ec2f59da859 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Mon, 6 Jul 2026 13:48:42 -0400 Subject: [PATCH] Make PLy_elog() use pg_integer_constant_p(). This macro is supposed to work like ereport(). But when 59c2f03d1 adjusted ereport() to be more MSVC-friendly, it missed updating this copy of the logic. Discussion: https://postgr.es/m/754534.1783264708@sss.pgh.pa.us Backpatch-through: 19 --- src/pl/plpython/plpy_elog.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/pl/plpython/plpy_elog.h b/src/pl/plpython/plpy_elog.h index 3150f9e72ca..887535d5860 100644 --- a/src/pl/plpython/plpy_elog.h +++ b/src/pl/plpython/plpy_elog.h @@ -17,14 +17,14 @@ extern PyObject *PLy_exc_spi_error; * * See comments at elog() about the compiler hinting. */ -#ifdef HAVE__BUILTIN_CONSTANT_P +#ifdef HAVE_PG_INTEGER_CONSTANT_P #define PLy_elog(elevel, ...) \ do { \ PLy_elog_impl(elevel, __VA_ARGS__); \ - if (__builtin_constant_p(elevel) && (elevel) >= ERROR) \ + if (pg_integer_constant_p(elevel) && (elevel) >= ERROR) \ pg_unreachable(); \ } while(0) -#else /* !HAVE__BUILTIN_CONSTANT_P */ +#else /* !HAVE_PG_INTEGER_CONSTANT_P */ #define PLy_elog(elevel, ...) \ do { \ const int elevel_ = (elevel); \ @@ -32,7 +32,7 @@ extern PyObject *PLy_exc_spi_error; if (elevel_ >= ERROR) \ pg_unreachable(); \ } while(0) -#endif /* HAVE__BUILTIN_CONSTANT_P */ +#endif /* HAVE_PG_INTEGER_CONSTANT_P */ extern PGDLLEXPORT void PLy_elog_impl(int elevel, const char *fmt, ...) pg_attribute_printf(2, 3);