Re: Consistently use the XLogRecPtrIsInvalid() macro
Bertrand Drouvot <bertranddrouvot.pg@gmail.com>
From: Bertrand Drouvot <bertranddrouvot.pg@gmail.com>
To: Dagfinn Ilmari Mannsåker <ilmari@ilmari.org>
Cc: Peter Eisentraut <peter@eisentraut.org>, Álvaro Herrera <alvherre@kurilemu.de>, Michael Paquier <michael@paquier.xyz>, Heikki Linnakangas <hlinnaka@iki.fi>, Quan Zongliang <quanzongliang@yeah.net>, pgsql-hackers@lists.postgresql.org
Date: 2025-11-10T07:57:39Z
Lists: pgsql-hackers
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Replace literal 0 with InvalidXLogRecPtr for XLogRecPtr assignments
- ec3174407164 19 (unreleased) landed
-
Replace pointer comparisons and assignments to literal zero with NULL
- ec782f56b0c3 19 (unreleased) landed
-
Use XLogRecPtrIsValid() in various places
- a2b02293bc65 19 (unreleased) landed
-
Introduce XLogRecPtrIsValid()
- d2965f627fe3 14.20 landed
- c0031d461324 18.1 landed
- 723cc84db50a 16.11 landed
- 49b45999f3b2 15.15 landed
- 33727aff18d0 17.7 landed
- 20bafb097288 13.23 landed
- 06edbed47862 19 (unreleased) landed
Attachments
Hi, On Fri, Nov 07, 2025 at 05:18:41PM +0000, Dagfinn Ilmari Mannsåker wrote: > Peter Eisentraut <peter@eisentraut.org> writes: > > > On 07.11.25 16:03, Bertrand Drouvot wrote: > > > >> +#define pg_attribute_deprecated(msg) [[deprecated(msg)]] > >> +#elif defined(__GNUC__) || defined(__clang__) > > > > The __clang__ part is not needed, because clang defines __GNUC__ also. > > Or, to avoid having to know this, how about __has_attribute(deprecated)? > Thanks for looking at it! I did some research and found that some older GCC versions did support the deprecated attribute (for example GCC 4.5 added support to the extra message, see [1]) but not __has_attribute (introduced in GCC 5, see [2]). So for example here, we'd have a 4.5-4.9 gap. Then to be on the safe side of things I think it's better to not use __has_attribute() for the deprecated attribute. I added a comment in the attached though. [1]: https://gcc.gnu.org/gcc-4.5/changes.html [2]: https://gcc.gnu.org/gcc-5/changes.html Regards, -- Bertrand Drouvot PostgreSQL Contributors Team RDS Open Source Databases Amazon Web Services: https://aws.amazon.com