Miscellaneous cleanup of regular-expression compiler.
authorTom Lane <[email protected]>
Fri, 16 Oct 2015 19:52:12 +0000 (15:52 -0400)
committerTom Lane <[email protected]>
Fri, 16 Oct 2015 19:52:12 +0000 (15:52 -0400)
commit4083a52f4173b87a883537a1e2957413c2aebd9e
treebff7995b763c91c1fc599d754cc01c4c1648e4c1
parentb94c2b6a69a561906d387cec1de59ac3bb4bb185
Miscellaneous cleanup of regular-expression compiler.

Revert our previous addition of "all" flags to copyins() and copyouts();
they're no longer needed, and were never anything but an unsightly hack.

Improve a couple of infelicities in the REG_DEBUG code for dumping
the NFA data structure, including adding code to count the total
number of states and arcs.

Add a couple of missed error checks.

Add some more documentation in the README file, and some regression tests
illustrating cases that exceeded the state-count limit and/or took
unreasonable amounts of time before this set of patches.

Back-patch to all supported branches.
src/backend/regex/regc_nfa.c
src/backend/regex/regcomp.c