Antonin Houska <[email protected]> writes:
> Tomas Vondra <[email protected]> wrote:
>> while building on a rpi5 with a 32-bit system, I'm getting these warnings:
>> ...
>> I'm not sure if it's just the compiler (gcc 14.2) being pesky, or if
>> it's an actual issue. The repack tests seem to pass fine.

Several 32-bit BF animals are showing these too (so far: dodo,
grison, and turaco).

> We already introduced this definition above in the function to suppress this
> kind of warning

>     union
>     {
>           alignas(int32) varlena hdr;
>           char                data[sizeof(void *)];
>     }                 chunk_header;

> The problem on a 32-bit system probably is that sizeof(void *) is 4. We need
> some other constant. Maybe (sizeof(varlena) + 1) ...

This seems unnecessarily Rube Goldberg-ish already.  Why not just

        uint64  chunk_header;

It will not hurt anything if the variable has more-than-required
alignment.  And it'd be better if it were the same size everywhere.

                        regards, tom lane


Reply via email to