Re: perl checking

Tom Lane <tgl@sss.pgh.pa.us>

From: Tom Lane <tgl@sss.pgh.pa.us>
To: Andrew Dunstan <andrew.dunstan@2ndquadrant.com>
Cc: Kyotaro HORIGUCHI <horiguchi.kyotaro@lab.ntt.co.jp>, pgsql-hackers@postgresql.org
Date: 2018-05-22T14:09:02Z
Lists: pgsql-hackers
Andrew Dunstan <andrew.dunstan@2ndquadrant.com> writes:
> On 05/22/2018 04:11 AM, Kyotaro HORIGUCHI wrote:
>> At Fri, 18 May 2018 14:02:39 -0400, Andrew Dunstan <andrew.dunstan@2ndquadrant.com> wrote in <5a6d6de8-cff8-1ffb-946c-ccf381800ea1@2ndQuadrant.com>
>>> One patch silences a warning from convutils.pl about the unportability
>>> of the literal 0x100000000. We've run for many years without this
>>> giving us a problem, so I think we can turn the warning off pretty
>>> safely.

>> It was introduced by aeed17d000 (in 2017). The history of the
>> file is rather short. Over 32-bit values do not apperar as a
>> character so there's no problem in ignoring the warning for now,
>> but can't we use bigint to silence it instead?

> It would impose an additional dependency. bigint isn't installed by 
> default on many systems AFAICT, so I think we'd need a better reason 
> than this to require it.

I agree with not adding a dependency (although FWIW, bigint does seem
to be there in my minimal perl setups).  But can't we fix it like this:

-	elsif ($in < 0x100000000)
+	elsif ($in <= 0xffffffff)

At least in a quick test here, "-cw" doesn't moan about 0xffffffff.

For consistency, the other arms of the "if" should be adjusted
similarly.

			regards, tom lane


Commits

  1. Avoid use of unportable hex constant in convutils.pm