tree d2dcd9db9197267164393f28f21019256e3312e5
parent 1c72409f7ff218726b8142d0d03417ccdc32ce0f
author Itamar Oren <itamarost@gmail.com> 1774324766 -0700
committer GitHub <noreply@github.com> 1774324766 -0700
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsFcBAABCAAQBQJpwgweCRC1aQ7uu5UhlAAA0AAQAIeI6wdeZri6VlLBY3ibH0kE
 XZvlZEHl9t4hL5id3H7Xystb8LGdGP7aWFQKlBGM9rYELiWUowVgn3I1amHhWhlE
 qxbcujiFrLci8MAOm1vkst/9dQHkHSW04z3lSIEkavD6Wj1XFo+u2P8O0oGCxSHo
 p1bbovVHYqnRuWeB4N3ywQ4S07e90JqGcFhdPOYxOJ5oetKEJooERFgawmoOCBK0
 7ksXMZB1k4YUtFHomBEj51K0UeSvFJNbpTAPeHBFiI6wqg/ru1wpUakTopCfb3PI
 0r1IrCdTSAqOQZ8oIfscw/WLXc4B0g1kJGUasbo5OyYg1d8/ZqvWkeQySRUcyflZ
 w8ka7ixV+yMGmCRSchNjj7KbEGt//qNmU7Ta+9M7wTud034Ejo+PtYIe5eTFcaQU
 KnV7NpehG6F4MknTtSnoXgDsHdm2x8YbcUnzZRiJ66rkuXmKshoT9TyM9kTyP8g6
 7Jb9Y1JlcDXDmFePbxR9Rf+YY6ak17Ky1lpHUgr0F5MB1io3ouT0LmyE8T1kmQL2
 rk+rwhsmFGhckiMHel0Fuvm6BtHGweu0zV5hpBBSVW8g+A7K41vDGe+jjcwYd+9E
 btGvyqFepavK7JXK/M782jniJxzAPEiRJsISeHDSTKS3r4F5+2v9/cC/KNtBlFcf
 sq88tE9jpOtI0yQwthCi
 =z8nS
 -----END PGP SIGNATURE-----
 

gh-5991: Fix segfault during finalization related to function_record (#6010)

* gh-5991: Fix segfault during finalization related to function_record

This patch was developed with assistance from  Claude Code Opus 4.6

Here's Claude's explanation of the crash mechanism and some reasoning for the difficulty to repro:

`tp_dealloc_impl` calls `cpp_function::destruct` which:
1. Calls `std::free()` on function_record string members (`name`, `doc`, `signature`)
2. Calls `arg.value.dec_ref()` on default argument values
3. Calls `delete rec` on the function_record

But it never calls `PyObject_Free(self)` or `Py_DECREF(Py_TYPE(self))`, which are
required for heap types.

During `_Py_Finalize`, final GC collects the heap types (which survive module dict
clearing via `tp_mro` self-references). This triggers a massive cascade:
`type_dealloc → property_dealloc → meth_dealloc → tp_dealloc_impl → destruct`.

At scale (~1,200+ function_records), the volume of `delete`/`free` calls corrupts
heap metadata, causing subsequent `std::free()` to receive garbage pointers → SEGV.

* Add detail::py_is_finalizing() wrapper to deduplicate version-guarded #ifdef blocks

Also fixes clang-tidy readability-implicit-bool-conversion warnings.

Made-with: Cursor

---------

Co-authored-by: Ralf W. Grosse-Kunstleve <rgrossekunst@nvidia.com>