Re: [HACKERS] Bug with int2
Ah, thanks! On Tue, Feb 16, 2016 at 7:54 PM, Peter Geoghegan wrote: > On Tue, Feb 16, 2016 at 7:27 PM, Feng Tian wrote: > > I run into the following. Seems this is a bug for -32768, which should > be > > a valid smallint value. > > This isn't a bug. You see the error only due to operator precedence: > > postgres=# select (-32768)::int2; > int2 > ─ > -32,768 > (1 row) > > -- > Peter Geoghegan >
Re: [HACKERS] Bug with int2
On Tue, Feb 16, 2016 at 7:27 PM, Feng Tian wrote: > I run into the following. Seems this is a bug for -32768, which should be > a valid smallint value. This isn't a bug. You see the error only due to operator precedence: postgres=# select (-32768)::int2; int2 ─ -32,768 (1 row) -- Peter Geoghegan -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers
Re: [HACKERS] Bug with int2
On Wed, Feb 17, 2016 at 12:27 PM, Feng Tian wrote: > ftian=# select -32768::int2; > ERROR: smallint out of range But 32768 is not. You should just use parenthesis, a cast does not take into account the minus sign here: =# select (-32768)::int2; int2 -32768 (1 row) -- Michael -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers
Re: [HACKERS] Bug with int2
Feng Tian writes: > I run into the following. Seems this is a bug for -32768, which should be > a valid smallint value. > ftian=# select -32768::int2; > ERROR: smallint out of range You have the wrong idea about the precedence of those operators. "select (-32768)::int2" works. regards, tom lane -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers