Re: PL/pgSQL RENAME bug?
Bruce Momjian <pgman@candle.pha.pa.us>
From: Bruce Momjian <pgman@candle.pha.pa.us>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: "Command Prompt, Inc." <pgsql-hackers@commandprompt.com>, Hackers List <pgsql-hackers@postgresql.org>, Jan Wieck <JanWieck@Yahoo.com>
Date: 2001-11-12T05:08:40Z
Lists: pgsql-hackers
Is this completed? --------------------------------------------------------------------------- > "Command Prompt, Inc." <pgsql-hackers@commandprompt.com> writes: > > Mainly, the existing documentation on the RENAME statement seems > > inaccurate; it states that you can re-name variables, records, or > > rowtypes. However, in practice, our tests show that attempting to RENAME > > valid variables with: > > RENAME varname TO newname; > > ...yeilds a PL/pgSQL parse error, inexplicably. If I try the same syntax > > on a non-declared variable, it actually says "there is no variable" with > > that name in the current block, so...I think something odd is happening. :) > > Yup, this is a bug. The plpgsql grammar expects varname to be a T_WORD, > but in fact the scanner will only return T_WORD for a name that is not > any known variable name. Thus RENAME cannot possibly work, and probably > never has worked. > > Looks like it should accept T_VARIABLE, T_RECORD, T_ROW (at least). > T_WORD ought to draw "no such variable". Jan, I think this is your turf... > > > The RENAME statement seems kind of odd, since it seems that you could just > > as easily declare a general variable with the right name to begin with, > > It seems pretty useless to me too. Perhaps it's there because Oracle > has one? > > regards, tom lane > > ---------------------------(end of broadcast)--------------------------- > TIP 6: Have you searched our list archives? > > http://archives.postgresql.org > -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 853-3000 + If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill, Pennsylvania 19026