Re: Change copyObject() to use typeof_unqual

Robins Tharakan <tharakan@gmail.com>

From: Robins Tharakan <tharakan@gmail.com>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Álvaro Herrera <alvherre@kurilemu.de>, Peter Eisentraut <peter@eisentraut.org>, pgsql-hackers <pgsql-hackers@postgresql.org>, Jelte Fennema-Nio <postgres@jeltef.nl>, tharar@amazon.com
Date: 2026-06-17T11:45:45Z
Lists: pgsql-hackers
Hi,

On Sun, 14 Jun 2026 at 01:27, Tom Lane <tgl@sss.pgh.pa.us> wrote:
>
> =?utf-8?Q?=C3=81lvaro?= Herrera <alvherre@kurilemu.de> writes:
> > For some reason, a couple of animals running gcc-15 or newer
> > (leafhopper, massasauga, parula) appear to be failing now because of
> > this.
>
> They just started failing a day or two ago, so it's hard to blame
> it on any code change we made.  I see that all three of those animals
> are using "experimental" nightly builds of gcc, so it's reasonable to
> assume that gcc's git tip is broken.  Or maybe something needs updated
> in the recipe for replacing their gcc builds.


Earlier, since gcc HEAD was too noisy, I moved them all to gcc v15
assuming it'd be better. The gcc build script has been stable and there's
been no change in any of the machines recently, so I also wouldn't be
surprised if it is gcc again.

For now, I've taken them all offline and unless someone has a better
idea, I'll switch them to stay pinned to the recentmost gcc release
version - rationale being that if a tagged gcc release is buggy, it
may be interesting to know about.

-
robins | robins.in



Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Add some const qualifiers enabled by typeof_unqual change on copyObject

  2. Hardcode typeof_unqual to __typeof_unqual__ for clang

  3. Clean up postgres_fdw/t/010_subscription.pl.

  4. Hardcode override of typeof_unqual for clang-for-bitcode

  5. Make typeof and typeof_unqual fallback definitions work on C++11

  6. Change copyObject() to use typeof_unqual

  7. Fixes for C++ typeof implementation

  8. Support using copyObject in standard C++