[New-bugs-announce] [issue44964] Semantics of PyCode_Addr2Line() changed

Pablo Galindo Salgado report at bugs.python.org
Fri Aug 20 14:07:40 EDT 2021


New submission from Pablo Galindo Salgado <pablogsal at gmail.com>:

I have noticed that the semantics of PyCode_Addr2Line() have changed from 3.9 to 3.10. Technically, the function was called with:

PyCode_Addr2Line(frame->f_code, frame->f_last_i * 2)

but now it needs to be called with

PyCode_Addr2Line(frame->f_code, frame->f_last_i * 2)

This is likely going to break all users of this function. This is also not advertised in the 3.10 "how to port to Python 3.10" section.

We should discuss what's the best approach here because technically this is a backwards incompatible change, although in the other hand PyCode_Addr2Line() was not documented previously so we may have some room.

We need to decide on this ASAP, because there is only one extra release candidate before the actual release of 3.10/

----------
keywords: 3.10regression
messages: 399985
nosy: Mark.Shannon, pablogsal
priority: release blocker
severity: normal
status: open
title: Semantics of PyCode_Addr2Line() changed
versions: Python 3.10, Python 3.11

_______________________________________
Python tracker <report at bugs.python.org>
<https://bugs.python.org/issue44964>
_______________________________________


More information about the New-bugs-announce mailing list