Re: [BUGS] BUG #14463: refcursor cann't used with array or variadic parameter? - Mailing list pgsql-bugs

From Tom Lane
Subject Re: [BUGS] BUG #14463: refcursor cann't used with array or variadic parameter?
Date
Msg-id 775.1481665058@sss.pgh.pa.us
Whole thread Raw
In response to Re: [BUGS] BUG #14463: refcursor cann't used with array or variadic parameter?  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-bugs
I wrote:
> Pavel Stehule <pavel.stehule@gmail.com> writes:
>> It is not a bug - it is feature. PLpgSQL statements doesn't expect a
>> expression on some places.

> Well, it's not unreasonable to expect that a subscripted datum could
> be used.  It looks to me like this is a grammar omission and the
> executor code would work fine.

Well, not so much.  I was thinking in terms of unifying both
getdiag_target and cursor_variable with the assign_var production, but
actually pl_exec.c is only on board with doing that for getdiag_target.

However, we can get it to throw a more sensible error by seeing whether
the next token is '['.  I'm not that concerned about whether you can
use an array element in OPEN, but the current error message certainly
looks like a bug rather than an omitted feature.

I've pushed a patch that fixes the error message and also allows
the case for GET DIAGNOSTICS.

            regards, tom lane


-- 
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs

pgsql-bugs by date:

Previous
From: "David G. Johnston"
Date:
Subject: Re: [BUGS] BUG #14464: Problems about FUNCTIONS
Next
From: digoal@126.com
Date:
Subject: [BUGS] BUG #14465: cursor for insert into select ... returning cann'tstreaming fetch?