Re: retire MemoryContextResetAndDeleteChildren backwards compatibility macro - Mailing list pgsql-hackers

From Nathan Bossart
Subject Re: retire MemoryContextResetAndDeleteChildren backwards compatibility macro
Date
Msg-id 20231114170115.GB2062604@nathanxps13
Whole thread Raw
In response to Re: retire MemoryContextResetAndDeleteChildren backwards compatibility macro  (Dagfinn Ilmari Mannsåker <ilmari@ilmari.org>)
Responses Re: retire MemoryContextResetAndDeleteChildren backwards compatibility macro
List pgsql-hackers
On Tue, Nov 14, 2023 at 04:36:44PM +0000, Dagfinn Ilmari Mannsåker wrote:
> Is there a preprocessor symbol that is defined when building Postgres
> itself (and extensions in /contrib/), but not third-party extensions (or
> vice versa)?  If so, the macro could be guarded by that, so that uses
> don't accientally sneak back in.

I'm not aware of anything like that.

> There's also __attribute__((deprecated)) (and and __declspec(deprecated)
> for MSVC), but that can AFAIK only be attached to functions and
> variables, not macros, so it would have to be changed to a static inline
> function.

It might be worth introducing pg_attribute_deprecated() in c.h.  I'm not
too worried about this particular macro, but it seems handy in general.

-- 
Nathan Bossart
Amazon Web Services: https://aws.amazon.com



pgsql-hackers by date:

Previous
From: Alvaro Herrera
Date:
Subject: Re: pgsql: doc: fix wording describing the checkpoint_flush_after GUC
Next
From: Nathan Bossart
Date:
Subject: Re: retire MemoryContextResetAndDeleteChildren backwards compatibility macro