Re: compiler warnings on the buildfarm - Mailing list pgsql-hackers

From Tom Lane
Subject Re: compiler warnings on the buildfarm
Date
Msg-id 14341.1184538385@sss.pgh.pa.us
Whole thread Raw
In response to Re: compiler warnings on the buildfarm  (Stefan Kaltenbrunner <stefan@kaltenbrunner.cc>)
Responses Re: compiler warnings on the buildfarm  (Gregory Stark <stark@enterprisedb.com>)
List pgsql-hackers
Stefan Kaltenbrunner <stefan@kaltenbrunner.cc> writes:
> Tom Lane wrote:
>> What I suspect is happening is that lionfish is running the buildfarm
>> script in a non-C locale, in which flex finds that some high-bit-set
>> characters are case-folded by tolower() and accordingly issues this
>> complaint.  Now the statements that "it assumes you meant the literal
>> numeric range" and that the behavior is fully determined at compile time
>> (ie, no run-time invocations of tolower(), as indeed are not to be seen
>> in pl_scan.c) seem to mean that we'll get the behavior we want anyway.
>> But the warning is a bit nervous-making.

> hmmm - note that lionfish is not the only box reporting that kind of
> warning - also affected are:
> rosella (which is definitly running in a non-C locale as all the errors
> are in german there)
> wildebeest

I looked at the flex source code and it seems that indeed we *should*
expect to see that warning if we run flex in a locale in which any
characters in the range \200-\377 are letters that case-fold to plain
ASCII.  Turkish ought to meet that criterion (the ol dotted vs dotless
i business) but I'm not sure about German.  I could not get the warning
on plpgsql's scan.l with a local build of flex 2.5.33, though, no matter
what locale I ran it in.  Odd.

Anyway, I tweaked plpgsql's Makefile to force LC_CTYPE=C, which
theoretically should silence this warning.
        regards, tom lane


pgsql-hackers by date:

Previous
From: "Simon Riggs"
Date:
Subject: Re: plpgsql and qualified variable names
Next
From: Gregory Stark
Date:
Subject: Re: compiler warnings on the buildfarm