From: | Dean Rasheed <dean(dot)a(dot)rasheed(at)gmail(dot)com> |
---|---|
To: | pgsql-committers(at)lists(dot)postgresql(dot)org |
Subject: | pgsql: Fix PL/pgSQL's handling of integer ranges containing underscores |
Date: | 2024-06-04 10:54:50 |
Message-ID: | E1sERoY-002wF0-7q@gemulon.postgresql.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-committers |
Fix PL/pgSQL's handling of integer ranges containing underscores.
Commit faff8f8e47 allowed integer literals to contain underscores, but
failed to update the lexer's "numericfail" rule. As a result, a
decimal integer literal containing underscores would fail to parse, if
used in an integer range with no whitespace after the first number,
such as "1_001..1_003" in a PL/pgSQL FOR loop.
Fix and backpatch to v16, where support for underscores in integer
literals was added.
Report and patch by Erik Wienhold.
Discussion: https://postgr.es/m/808ce947-46ec-4628-85fa-3dd600b2c154%40ewie.name
Branch
------
REL_16_STABLE
Details
-------
https://git.postgresql.org/pg/commitdiff/b4e909082fa114d5934ca622b225d2352ec639fa
Modified Files
--------------
src/backend/parser/scan.l | 2 +-
src/fe_utils/psqlscan.l | 2 +-
src/interfaces/ecpg/preproc/pgc.l | 2 +-
src/test/regress/expected/numerology.out | 11 +++++++++++
src/test/regress/sql/numerology.sql | 9 +++++++++
5 files changed, 23 insertions(+), 3 deletions(-)
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2024-06-04 22:02:36 | pgsql: Fix pl/tcl's handling of errors from Tcl_ListObjGetElements(). |
Previous Message | Dean Rasheed | 2024-06-04 08:34:10 | pgsql: Fix another couple of outdated comments for MERGE RETURNING. |