Re: Change copyObject() to use typeof_unqual
Jelte Fennema <postgres@jeltef.nl>
From: "Jelte Fennema-Nio" <postgres@jeltef.nl>
To: "Tom Lane" <tgl@sss.pgh.pa.us>, "Masahiko Sawada"
<sawada.mshk@gmail.com>
Cc: "Peter Eisentraut" <peter@eisentraut.org>, "pgsql-hackers"
<pgsql-hackers@postgresql.org>
Date: 2026-03-17T10:56:24Z
Lists: pgsql-hackers
Attachments
- v1-0001-Hardcode-typeof_unqual-to-__typeof_unqual__-for-c.patch (text/x-patch) patch v1-0001
On Tue Mar 17, 2026 at 3:39 AM CET, Tom Lane wrote: > While this version of clang doesn't like typeof_unqual, it does take > __typeof_unqual__. So maybe we were premature to decide that we > could prefer the typeof_unqual spelling. Hmmm, that makes sense. How about this patch to at least keep the all the logic related to this in one place? I was able to reproduce this error using the following flags, and this fixes the issue for me. CC=clang-21 CXX=clang++-21 CFLAGS=-std=c23 BITCODE_CFLAGS=-std=gnu17 CLANG=clang-19 LLVM_CONFIG=llvm-config-19
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Add some const qualifiers enabled by typeof_unqual change on copyObject
- 7724cb9935a9 19 (unreleased) landed
-
Hardcode typeof_unqual to __typeof_unqual__ for clang
- 2eb6cd327cae 19 (unreleased) landed
-
Clean up postgres_fdw/t/010_subscription.pl.
- f4af7849b3db 19 (unreleased) cited
-
Hardcode override of typeof_unqual for clang-for-bitcode
- 63275ce84d2f 19 (unreleased) landed
-
Make typeof and typeof_unqual fallback definitions work on C++11
- cd083b54bd67 19 (unreleased) landed
-
Change copyObject() to use typeof_unqual
- 59292f7aac72 19 (unreleased) landed
- 4cfce4e62c8f 19 (unreleased) landed
-
Fixes for C++ typeof implementation
- 9c05f152b5dd 19 (unreleased) landed
-
Support using copyObject in standard C++
- 1887d822f142 19 (unreleased) cited