Re: BUG #17765: SELECT CAST(true AS BIGINT); - Mailing list pgsql-bugs

From David G. Johnston
Subject Re: BUG #17765: SELECT CAST(true AS BIGINT);
Date
Msg-id CAKFQuwaubwk8FHRnztvJFq-LcgbeEAxXnbu44fjPDdjfd=JG-g@mail.gmail.com
Whole thread Raw
In response to BUG #17765: SELECT CAST(true AS BIGINT);  (PG Bug reporting form <noreply@postgresql.org>)
List pgsql-bugs
On Tuesday, January 31, 2023, PG Bug reporting form <noreply@postgresql.org> wrote:
The following bug has been logged on the website:

Bug reference:      17765
Logged by:          Vladimir Vinnikov
Email address:      vvinnikov@list.ru
PostgreSQL version: 15.1
Operating system:   x86_64-pc-linux-gnu
Description:       

ERROR: cannot cast type boolean to bigint

That's inconsistent since casting boolean to int is OK (SELECT CAST(true AS
INT);) or double casting is OK (SELECT CAST(CAST(true AS INT) AS BIGINT);).


If you want to create your own cast by all means, but just because we are stuck with allowing bool-to-int doesn’t mean we have allow bool-to-bigint.  This is neither a big nor, IMO, a desirable feature.  Casts that don’t make sense should not exist.  And I have no clue how the double-casting example means anything here.  Of course integer to bigint is a valid cast.

David J.

pgsql-bugs by date:

Previous
From: PG Bug reporting form
Date:
Subject: BUG #17765: SELECT CAST(true AS BIGINT);
Next
From: Tom Lane
Date:
Subject: Re: BUG #17765: SELECT CAST(true AS BIGINT);