mirror of
https://git.postgresql.org/git/postgresql.git
synced 2025-02-23 19:39:53 +08:00
GCC 12 complains that set_stack_base is storing the address of a local variable in a long-lived pointer. This is an entirely reasonable warning (indeed, it just helped us find a bug); but that behavior is intentional here. We can work around it by using __builtin_frame_address(0) instead of a specific local variable; that produces an address a dozen or so bytes different, in my testing, but we don't care about such a small difference. Maybe someday a compiler lacking that function will start to issue a similar warning, but we'll worry about that when it happens. Patch by me, per a suggestion from Andres Freund. Back-patch to v12, which is as far back as the patch will go without some pain. (Recently-established project policy would permit a back-patch as far as 9.2, but I'm disinclined to expend the work until GCC 12 is much more widespread.) Discussion: https://postgr.es/m/3773792.1645141467@sss.pgh.pa.us |
||
---|---|---|
.. | ||
ac_func_accept_argtypes.m4 | ||
ax_pthread.m4 | ||
c-compiler.m4 | ||
c-library.m4 | ||
check_decls.m4 | ||
check_modules.pl | ||
config.guess | ||
config.sub | ||
general.m4 | ||
install-sh | ||
libtool.m4 | ||
llvm.m4 | ||
Makefile | ||
missing | ||
perl.m4 | ||
pkg.m4 | ||
prep_buildtree | ||
programs.m4 | ||
python.m4 | ||
tcl.m4 |