postgresql/src/test/regress
Tom Lane 39bd3fd1db Modernize plpgsql's handling of parse locations, making it look a lot more
like the core parser's code.  In particular, track locations at the character
rather than line level during parsing, allowing many more parse-time error
conditions to be reported with precise error pointers rather than just
"near line N".

Also, exploit the fact that we no longer need to substitute $N for variable
references by making extracted SQL queries and expressions be exact copies
of subranges of the function text, rather than having random whitespace
changes within them.  This makes it possible to directly map parse error
positions from the core parser onto positions in the function text, which
lets us report them without the previous kluge of showing the intermediate
internal-query form.  (Later it might be good to do that for core
parse-analysis errors too, but this patch is just touching plpgsql's
lexer/parser, not what happens at runtime.)

In passing, make plpgsql's lexer use palloc not malloc.

These changes make plpgsql's parse-time error reports noticeably nicer
(as illustrated by the regression test changes), and will also simplify
the planned removal of plpgsql's separate lexer by reducing the impedance
mismatch between what it does and what the core lexer does.
2009-11-09 00:26:55 +00:00
..
data Avoid regression test cases that fail in locales that sort "v" and "w" 2009-01-19 14:24:13 +00:00
expected Modernize plpgsql's handling of parse locations, making it look a lot more 2009-11-09 00:26:55 +00:00
input Support hex-string input and output for type BYTEA. 2009-08-04 16:08:37 +00:00
output Support hex-string input and output for type BYTEA. 2009-08-04 16:08:37 +00:00
sql Change plpgsql from using textual substitution to insert variable references 2009-11-06 18:37:55 +00:00
GNUmakefile Check errors in for loop 2009-10-26 21:11:22 +00:00
Makefile
parallel_schedule Run the "tablespace" regression test first not last. The former placement 2009-08-24 03:10:16 +00:00
pg_regress_main.c Add "\pset linestyle ascii/unicode" option to psql, allowing our traditional 2009-10-13 21:04:01 +00:00
pg_regress.c Introduce filtering dictionary support to tsearch. Propagate --nolocale option 2009-08-18 10:30:41 +00:00
pg_regress.h Update copyright for 2009. 2009-01-01 17:24:05 +00:00
regress.c Fix executor/spi.h to follow our usual conventions for include files, ie, 2009-01-07 13:44:37 +00:00
regressplans.sh
resultmap Rewrite ECPG regression test driver in C, by splitting the standard 2007-06-12 11:07:34 +00:00
serial_schedule Run the "tablespace" regression test first not last. The former placement 2009-08-24 03:10:16 +00:00