This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author petr.viktorin
Recipients Mark.Shannon, christian.heimes, jdemeyer, lukasz.langa, pablogsal, petr.viktorin, pitrou, vstinner
Date 2019-09-02.14:46:17
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1567435577.39.0.906641061693.issue38006@roundup.psfhosted.org>
In-reply-to
Content
> What downsides do we see raising an exception?

Yeah, on second thought, that would probably be best. We still want PR #15641 as well, so the exception doesn't actually happen in practice.

Note that _PyEval_EvalCodeWithName (the main use of func_globals) already fails with an exception if globals is NULL.

> Either we remove tp_clear or somehow we have to protect all callers of the function. Technically, any field cleared from tp_cleared leaves the function in an inconsistent state

tp_clear has a purpose; it prevents memory leaks. That leaves protecting access to the cleared fields.

(But we don't need to clear func_name and func_qualname as these must be strings.)
History
Date User Action Args
2019-09-02 14:46:17petr.viktorinsetrecipients: + petr.viktorin, pitrou, vstinner, christian.heimes, lukasz.langa, Mark.Shannon, jdemeyer, pablogsal
2019-09-02 14:46:17petr.viktorinsetmessageid: <1567435577.39.0.906641061693.issue38006@roundup.psfhosted.org>
2019-09-02 14:46:17petr.viktorinlinkissue38006 messages
2019-09-02 14:46:17petr.viktorincreate