public inbox for [email protected]
help / color / mirror / Atom feedFrom: Nathan Bossart <[email protected]>
To: Jianghua Yang <[email protected]>
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
Subject: Re: [PATCH] Fix wrong argument to SOFT_ERROR_OCCURRED in timestamptz_date
Date: Tue, 24 Mar 2026 15:53:10 -0500
Message-ID: <acL5tt3tfsyDql9x@nathan> (raw)
In-Reply-To: <CAAZLFmSGti716gWeY=DCZ9TTVOixnHZ4_4V4tDzoeE86D64vOA@mail.gmail.com>
References: <CAAZLFmSGti716gWeY=DCZ9TTVOixnHZ4_4V4tDzoeE86D64vOA@mail.gmail.com>
On Tue, Mar 24, 2026 at 08:44:29AM -0700, Jianghua Yang wrote:
> I found a small bug in commit e2f289e5b9b ("Make many cast functions
> error safe").
Nice find. For future reference, since this was just committed, it
might've been better to report it directly in the thread where the change
was discussed.
> The fix is a one-line change: fcinfo->args → fcinfo->context.
LGTM. To prevent this from happening in the future, I think we ought to
change SOFT_ERROR_OCCURRED to a static inline function. I tried that, and
I got the following warnings:
execExprInterp.c:4964:27: warning: incompatible pointer types passing 'ErrorSaveContext *' (aka 'struct ErrorSaveContext *') to parameter of type 'Node *' (aka 'struct Node *') [-Wincompatible-pointer-types]
4964 | if (SOFT_ERROR_OCCURRED(&jsestate->escontext))
| ^~~~~~~~~~~~~~~~~~~~
../../../src/include/nodes/miscnodes.h:54:27: note: passing argument to parameter 'escontext' here
54 | SOFT_ERROR_OCCURRED(Node *escontext)
| ^
execExprInterp.c:5200:26: warning: incompatible pointer types passing 'ErrorSaveContext *' (aka 'struct ErrorSaveContext *') to parameter of type 'Node *' (aka 'struct Node *') [-Wincompatible-pointer-types]
5200 | if (SOFT_ERROR_OCCURRED(&jsestate->escontext))
| ^~~~~~~~~~~~~~~~~~~~
../../../src/include/nodes/miscnodes.h:54:27: note: passing argument to parameter 'escontext' here
54 | SOFT_ERROR_OCCURRED(Node *escontext)
| ^
I think we just need to add casts to "Node *" for those. AFAICT there
isn't an actual bug.
[... looks for past discussions ...]
Ah, I noticed this thread, where the same lines of code were discussed:
https://postgr.es/m/flat/20240724.155525.366150353176322967.ishii%40postgresql.org
--
nathan
view thread (5+ messages) latest in thread
reply
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: [email protected]
Cc: [email protected], [email protected], [email protected], [email protected], [email protected], [email protected]
Subject: Re: [PATCH] Fix wrong argument to SOFT_ERROR_OCCURRED in timestamptz_date
In-Reply-To: <acL5tt3tfsyDql9x@nathan>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox