| From: | "Andrew Dunstan" <andrew(at)dunslane(dot)net> |
|---|---|
| To: | <peter_e(at)gmx(dot)net> |
| Cc: | <kleptog(at)svana(dot)org>, <pgsql-hackers(at)postgresql(dot)org> |
| Subject: | Re: Updatable views/with check option parsing |
| Date: | 2006-05-26 21:26:37 |
| Message-ID: | 1762.24.211.165.134.1148678797.squirrel@www.dunslane.net |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
Peter Eisentraut said:
> Martijn van Oosterhout wrote:
>> Incidently, IIRC the default behaviour on conflict is a shift anyway,
>> so that what the patch already does anyway.
>>
>> So we get:
>>
>> CREATE VIEW foo AS SELECT expr :: TIME WITH TIME ZONE <-- OK
>> CREATE VIEW foo AS SELECT expr :: TIME WITH CHECK OPTION <-- >
>> parse error CREATE VIEW foo AS SELECT (expr :: TIME) WITH CHECK OPTION
>> <-- OK
>
> Yes, that's really the fundamental problem if you let shift/reduce
> conflicts stand: the parser will behave weirdly in the conflict cases.
>
> There is a seemingly little known option in bison named %glr-parser,
> which when turned on parses all of theses cases correctly. Maybe that
> is worth considering.
Interesting.
Unfortunately, the manual says:
"The GLR parsers require a compiler for ISO C89 or later. In addition, they
use the inline keyword, which is not C89, but is C99 and is a common
extension in pre-C99 compilers. It is up to the user of these parsers to
handle portability issues."
Do we want such a restriction?
cheers
andrew
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Peter Eisentraut | 2006-05-26 21:34:36 | Re: Updatable views/with check option parsing |
| Previous Message | Greg Stark | 2006-05-26 21:19:46 | Question about "name" datatype |