Re: alignas (C11)

From: Peter Eisentraut <peter(at)eisentraut(dot)org>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: alignas (C11)
Date: 2026-01-26 09:34:10
Message-ID: c9a0bde1-3cae-46fb-85b7-c5e5bde4c6bf@eisentraut.org
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 25.01.26 18:14, Tom Lane wrote:
> Peter Eisentraut <peter(at)eisentraut(dot)org> writes:
>> On 23.01.26 23:18, Tom Lane wrote:
>>> Hmm, yeah, their bug #70066 shows clearly that the __attribute__
>>> spelling should work. But I think we'd better make the cutoff be
>>> version 9 not version 6, because that same bug is quite clear
>>> about when they fixed it. The lack of complaints from the buildfarm
>>> may just indicate a lack of animals running the intermediate versions.
>
>> Ok, done that way.
>
> Sigh ... that did not work. Various BF animals are now blowing up in
> src/backend/jit/llvm because this macro definition breaks some usages
> of alignas() in LLVM header files.
>
> Maybe we could #define alignas this way for the two exposed usages
> and then #undef afterwards?

Well, in C11, alignas is itself a macro (defined to _Alignas). I
suppose not in C++ though. That seems too tricky, though. I went with
your original proposal of disabling the affected typedefs on the
affected platform. That seems safest. These types aren't likely to be
used in extensions anyway, so this should have minimal practical impact.

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Daniil Davydov 2026-01-26 09:34:44 Re: Batching in executor
Previous Message Amit Langote 2026-01-26 09:01:14 Re: Batching in executor