Restructure soft-error handling in formatting.c.
authorTom Lane <tgl@sss.pgh.pa.us>
Sat, 10 Dec 2022 01:15:56 +0000 (20:15 -0500)
committerTom Lane <tgl@sss.pgh.pa.us>
Sat, 10 Dec 2022 01:15:56 +0000 (20:15 -0500)
commit4dd687502d9eb0b2984c36579c2fcf5283adfa7c
treeb4150eb444a7b944308c77b6bceef311fc7cd677
parentc60488b4748b4316f1c92d62457671046e5c8994
Restructure soft-error handling in formatting.c.

Replace the error trapping scheme introduced in 5bc450629 with our
shiny new errsave/ereturn mechanism.  This doesn't have any real
functional impact (although I think that the new coding is able
to report a few more errors softly than v15 did).  And I doubt
there's any measurable performance difference either.  But this
gets rid of an ad-hoc, one-of-a-kind design in favor of a mechanism
that will be widely used going forward, so it should be a net win
for code readability.

Discussion: https://postgr.es/m/3bbbb0df-7382-bf87-9737-340ba096e034@postgrespro.ru
src/backend/utils/adt/formatting.c
src/backend/utils/adt/jsonpath_exec.c
src/include/utils/formatting.h