git.postgresql.org Git - postgresql.git/commit

git projects / postgresql.git / commit
? search:
summary | shortlog | log | commit | commitdiff | tree
(parent: cb719fa) | patch
Support plpgsql variable names that conflict with unreserved SQL keywords.
Fri, 4 Jan 2019 17:16:19 +0000 (12:16 -0500)
Fri, 4 Jan 2019 17:16:19 +0000 (12:16 -0500)
commit 4879a5172af01dc05b6350dfa97ea1ac9a4c603c
Support plpgsql variable names that conflict with unreserved SQL keywords.

A variable name matching a statement-introducing keyword, such as
"comment" or "update", caused parse failures if one tried to write
a statement using that keyword. Commit bb1b8f69 already addressed
this scenario for the case of variable names matching unreserved
plpgsql keywords, but we didn't think about unreserved core-grammar
keywords. The same heuristic (viz, it can't be a variable name
unless the next token is assignment or '[') should work fine for
that case too, and as a bonus the code gets shorter and less
duplicative.

Per bug #15555 from Feike Steenbergen. Since this hasn't been
complained of before, and is easily worked around anyway,
I won't risk a back-patch.

Discussion: https://postgr.es/m/15555-149bbd70ddc7b4b6@postgresql.org
src/pl/plpgsql/src/pl_comp.c diff | blob | blame | history
src/pl/plpgsql/src/pl_scanner.c diff | blob | blame | history
src/pl/plpgsql/src/plpgsql.h diff | blob | blame | history
src/test/regress/expected/plpgsql.out diff | blob | blame | history
src/test/regress/sql/plpgsql.sql diff | blob | blame | history
This is the main PostgreSQL git repository.
RSS Atom

AltStyle によって変換されたページ (->オリジナル) /