Change the way UESCAPE is lexed, to reduce the size of the flex tables.
Heikki Linnakangas <heikki.linnakangas@iki.fi>
Change the way UESCAPE is lexed, to reduce the size of the flex tables. The error rule used to avoid backtracking with the U&'...' UESCAPE 'x' syntax bloated the flex tables, so refactor that. This patch makes the error rule shorter, by introducing a new exclusive flex state that's entered after parsing U&'...'. This shrinks the postgres binary by about 220kB.
Files
| Path | Change | +/− |
|---|---|---|
| src/backend/parser/scan.l | modified | +62 −19 |