Re: [GENERAL] SELECT x'00000000F'::int leading zeros causes "integer out of range" - Mailing list pgsql-general

From Tom Lane
Subject Re: [GENERAL] SELECT x'00000000F'::int leading zeros causes "integer out of range"
Date
Msg-id 9486.1487963586@sss.pgh.pa.us
Whole thread Raw
In response to [GENERAL] SELECT x'00000000F'::int leading zeros causes "integer out of range"  (Justin Pryzby <pryzby@telsasoft.com>)
Responses Re: [GENERAL] SELECT x'00000000F'::int leading zeros causes "integerout of range"  (Melvin Davidson <melvin6925@gmail.com>)
Re: [GENERAL] SELECT x'00000000F'::int leading zeros causes "integerout of range"  ("David G. Johnston" <david.g.johnston@gmail.com>)
List pgsql-general
Justin Pryzby <pryzby@telsasoft.com> writes:
> Is this expected behavior ?
>     ts=# SELECT x'00000000F'::int;
>     ERROR:  22003: integer out of range
>     LOCATION:  bittoint4, varbit.c:1575

Yes.  The provided operation is "convert a bitstring of up to 32 bits
to an integer".  It's not "guess whether it's okay to throw away some
bits to make an integer".

As an example, even if you think it's obvious that it would be okay
to convert that bitstring to "15", would it be all right to convert
x'FFFFFFFFF' to "-1" ?

            regards, tom lane


pgsql-general by date:

Previous
From: Justin Pryzby
Date:
Subject: [GENERAL] SELECT x'00000000F'::int leading zeros causes "integer out of range"
Next
From: Melvin Davidson
Date:
Subject: Re: [GENERAL] SELECT x'00000000F'::int leading zeros causes "integerout of range"