Re: New compiler warning
От | David Steele |
---|---|
Тема | Re: New compiler warning |
Дата | |
Msg-id | 9de558c3-5b31-fe81-fff3-dd62b37c5110@pgmasters.net обсуждение исходный текст |
Ответ на | Re: New compiler warning (Aleksander Alekseev <aleksander@timescale.com>) |
Ответы |
Re: New compiler warning
|
Список | pgsql-hackers |
On 8/30/23 08:10, Aleksander Alekseev wrote: > >> I am seeing a new gcc 12.2.0 compiler warning from >> src/backend/commands/sequence.c: > > Yep, the compiler is just not smart enough to derive that this > actually is not going to happen. > > Here is a proposed fix. Here's an alternate way to deal with this which is a bit more efficient (code not tested): - case SEQ_COL_CALLED: - coldef = makeColumnDef("is_called", BOOLOID, -1, InvalidOid); - value[i - 1] = BoolGetDatum(false); - break; + default: + Assert(i == SEQ_COL_CALLED); + coldef = makeColumnDef("is_called", BOOLOID, -1, InvalidOid); + value[i - 1] = BoolGetDatum(false); + break; The downside is that any garbage in i will lead to processing as SEQ_COL_CALLED. But things are already pretty bad in that case, ISTM, even with the proposed patch (or the original code for that matter). Regards, -David
В списке pgsql-hackers по дате отправления: