Re: pure parsers and reentrant scanners

From: Peter Eisentraut <peter(at)eisentraut(dot)org>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Andreas Karlsson <andreas(at)proxel(dot)se>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: pure parsers and reentrant scanners
Date: 2024-12-19 12:51:13
Message-ID: 09feb244-aa96-4878-b052-8da210b7650e@eisentraut.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 18.12.24 18:43, Tom Lane wrote:
> Peter Eisentraut <peter(at)eisentraut(dot)org> writes:
>> I started committing the cube and seg pieces. There were a couple of
>> complaints from the buildfarm, like
>> segscan.c:348:15: error: redefinition of typedef 'yyscan_t' is a C11
>> feature [-Werror,-Wtypedef-redefinition]
>> typedef void* yyscan_t;
>> ...
>> (Also, we should probably figure out a way to get these warnings before
>> things hit the buildfarm.)
>
> Interestingly, while sifaka shows that, its sibling indri doesn't.
> Same compiler, same CFLAGS. I think the relevant difference must
> be that sifaka is using a much older Bison version (the Apple-supplied
> 2.3, versus MacPorts' up-to-the-minute version). I think that sort of
> thing is exactly why we have the buildfarm. It would not be
> reasonable to expect CI to cover that many cases. Trying to do so
> would just make CI slow enough that we'd start looking for a new test
> phase to put in front of it.

The situation is that most current compilers default to some newer C
standard version. And so they won't complain about use of C11 features.
But the affected buildfarm members for whatever reason run with
CC='clang -std=gnu99', and so they correctly reject C11 features. We
could do something similar in the Cirrus configuration. I'll start a
separate thread about that.

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Victor Yegorov 2024-12-19 12:52:32 Re: Proposal to add a new URL data type.
Previous Message Nishant Sharma 2024-12-19 12:49:33 Re: [PROPOSAL] : Disallow use of empty column name in (column_name '') in ALTER or CREATE of foreign table.