Re: Oddity in column specifications for table creation - Mailing list pgsql-general

From Tom Lane
Subject Re: Oddity in column specifications for table creation
Date
Msg-id 9078.1197419559@sss.pgh.pa.us
Whole thread Raw
In response to Oddity in column specifications for table creation  (Marc Munro <marc@bloodnok.com>)
List pgsql-general
Marc Munro <marc@bloodnok.com> writes:
> This works fine:
>     "str2"                varchar(40)
> This does not:
>     "str2"                "pg_catalog"."varchar"(40)

Yeah.  That's because in all existing PG releases, type modifiers are
handled by hard-wired grammar productions that *only* work for VARCHAR,
CHARACTER VARYING, and so on, treated as keywords.

Teodor did some remarkable work for 8.3, fixing things so that any type
name could have modifiers attached, without (we hope ;-)) breaking any
cases that worked before.  It had previously been assumed that this was
impossible, because a type-name-plus-modifier looks just about
indistinguishable from a function call, but he managed to find a way
that side-stepped all the grammatical ambiguities.  Your examples all
work fine in CVS HEAD.

            regards, tom lane

pgsql-general by date:

Previous
From: Marc Munro
Date:
Subject: Re: Oddity in column specifications for table creation
Next
From: Robert Treat
Date:
Subject: Re: top posting