Re: Build failure with GCC 15 (defaults to -std=gnu23)

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Thomas Munro <thomas(dot)munro(at)gmail(dot)com>
Cc: Sam James <sam(at)gentoo(dot)org>, pgsql-bugs(at)lists(dot)postgresql(dot)org
Subject: Re: Build failure with GCC 15 (defaults to -std=gnu23)
Date: 2024-11-17 20:26:41
Message-ID: 3160019.1731875201@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

Thomas Munro <thomas(dot)munro(at)gmail(dot)com> writes:
> On Mon, Nov 18, 2024 at 7:12 AM Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
>> Having said that, I can reproduce this on gcc 14 using -std=gnu23.
>> It appears that configure is deciding that <stdbool.h> is not
>> conformant to C99 because it doesn't declare "bool" as a macro.
>> Did C23 really remove that !?

> Yes, seems to be a general pattern: features introduced as keyword
> _Xxx with a library macro xxx -> _Xxx (usually where xxx is already a
> keyword in C++ but the C committee was afraid to unleash a new keyword
> directly on the world, I guess?), and now xxx is finally graduating to
> real keyword status. Other examples: static_assert, thread_local,
> alignas.

Fun. Well, now that we insist on C99 support in all branches,
I wonder whether we can just remove all the non-stdbool support.
The one thing that looks tricky is that we insist on sizeof(bool)
being 1, but are there any remaining supported platforms where
it isn't? The buildfarm doesn't have any examples.

regards, tom lane

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Thomas Munro 2024-11-17 21:18:30 Re: Build failure with GCC 15 (defaults to -std=gnu23)
Previous Message Thomas Munro 2024-11-17 19:30:56 Re: Build failure with GCC 15 (defaults to -std=gnu23)