Re: Tree-walker callbacks vs -Wdeprecated-non-prototype
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Thomas Munro <thomas.munro@gmail.com>
Cc: pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2022-09-19T14:00:05Z
Lists: pgsql-hackers
Thomas Munro <thomas.munro@gmail.com> writes: > On Mon, Sep 19, 2022 at 10:16 AM Thomas Munro <thomas.munro@gmail.com> wrote: >> Huh... wouldn't systems that pass arguments right-to-left on the stack >> receive NULL for node? That'd include the SysV i386 convention used >> on Linux, *BSD etc. But that can't be right or we'd know about it... > I take that back after looking up some long forgotten details; it > happily ignores extra arguments. Yeah; the fact that no one has complained in several years seems to indicate that there's not a problem on supported platforms. Still, unlike the quibbles over whether char and struct pointers are the same, it seems clear that this is the sort of inconsistency that C2x wants to forbid, presumably in the name of making the world safe for more-efficient function calling code. So I think we'd better go fix ExecShutdownNode before somebody breaks it. Whichever way we jump on the tree-walker API changes, those won't be back-patchable. I think the best we can do for the back branches is add a configure test to use -Wno-deprecated-non-prototype if available. But the ExecShutdownNode change could be back-patched, and I'm leaning to doing so even though that breakage is just hypothetical today. regards, tom lane
Commits
-
Remove accidentally added meson.build
- e7480f3dd6c2 13.22 landed
-
Disable clang 16's -Wcast-function-type-strict.
- 27831127d641 14.13 landed
- 6e2552d180a0 15.8 landed
- 101c37cd342a 16.0 landed
-
Disable -Wdeprecated-non-prototype in the back branches.
- 8c8ee5c99144 9.3 (unreleased) landed
- 5d3ce0d823c8 9.2 (unreleased) landed
- f9a56e726334 15.0 landed
- dcd7dbed5008 14.6 landed
- ca8fd341e165 9.6 (unreleased) landed
- 9afdf395042a 11.18 landed
- 7d5d3f05bfab 9.4 (unreleased) landed
- 52a5fd5b9f8f 12.13 landed
- 4c5a29c0e5e1 10.23 landed
- 43f72e0f73a5 13.9 landed
- 1b698659970e 9.5 (unreleased) landed
-
Revise tree-walk APIs to improve spec compliance & silence warnings.
- 1c27d16e6e5c 16.0 landed
-
Future-proof the recursion inside ExecShutdownNode().
- c35ba141de1f 16.0 landed
- cb7d636e0fb2 11.18 landed
- c58513f095e2 13.9 landed
- c403f97b4eab 15.0 landed
- adc26e0e88b3 12.13 landed
- 7394c763bc72 14.6 landed
- 68707e9c3f32 10.23 landed