From: | Nathan Bossart <nathandbossart(at)gmail(dot)com> |
---|---|
To: | Bertrand Drouvot <bertranddrouvot(dot)pg(at)gmail(dot)com> |
Cc: | Julien Rouhaud <rjuju123(at)gmail(dot)com>, pgsql-hackers(at)lists(dot)postgresql(dot)org |
Subject: | Re: Unneeded volatile qualifier in fmgr.c |
Date: | 2025-02-12 15:38:04 |
Message-ID: | Z6zAXAKSqQHOwqyE@nathan |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Wed, Feb 12, 2025 at 08:41:34AM +0000, Bertrand Drouvot wrote:
> On Wed, Feb 12, 2025 at 04:25:38PM +0800, Julien Rouhaud wrote:
>> While reading some code in fmgr.c I noticed that the save_nestlevel variable is
>> declared as volatile. I'm assuming that's because a long time ago it was
>> modified in the PG_TRY / PG_CATCH block but it doesn't look needed anymore.
>>
>> Trivial patch attached.
>
> Yeah, makes sense to me.
It was modified in the PG_CATCH section when it was first added in commit
2abae34, but that part was removed a week later in commit 82a4798. But I'm
not even sure it needed the volatile marker in the first commit, based on
the comment in elog.h:
* Note: if a local variable of the function containing PG_TRY is modified
* in the PG_TRY section and used in the PG_CATCH section, that variable
* must be declared "volatile" for POSIX compliance.
AFAICT it was never modified in the PG_TRY section.
In any case, I don't see a problem with removing "volatile" now, so I'll
plan on committing this later today if there are no objections.
--
nathan
From | Date | Subject | |
---|---|---|---|
Next Message | Andrew Dunstan | 2025-02-12 15:40:25 | Re: TAP test command_fails versus command_fails_like |
Previous Message | Burd, Greg | 2025-02-12 15:33:52 | Re: Expanding HOT updates for expression and partial indexes |