Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

gh-143939: Fix assignment to _PyThreadStateImpl.generator_return_kind#143951

Merged
colesbury merged 2 commits intopython:mainpython/cpython:mainfrom
colesbury:gh-143939-coro-bugcolesbury/cpython:gh-143939-coro-bugCopy head branch name to clipboard
Jan 20, 2026
Merged

gh-143939: Fix assignment to _PyThreadStateImpl.generator_return_kind#143951
colesbury merged 2 commits intopython:mainpython/cpython:mainfrom
colesbury:gh-143939-coro-bugcolesbury/cpython:gh-143939-coro-bugCopy head branch name to clipboard

Conversation

@colesbury
Copy link
Contributor

@colesbury colesbury commented Jan 17, 2026

The assignment to generator_return_kind must be after any potentially escaping calls to ensure that it's not overwritten.

…n_kind

The assignment to generator_return_kind has to be after any potentially
escaping calls or it might be overwritten.
Comment on lines 2271 to 2279
class CallGeneratorOnDealloc:
def __del__(self):
def gen():
yield 1
next(gen())

async def coro():
obj = CallGeneratorOnDealloc()
return 42
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A little bit smaller in size:

Suggested change
class CallGeneratorOnDealloc:
def __del__(self):
def gen():
yield 1
next(gen())
async def coro():
obj = CallGeneratorOnDealloc()
return 42
class CallGeneratorOnDealloc:
def __del__(self):
next(x for x in [42])
async def coro():
obj = CallGeneratorOnDealloc()

Copy link
Contributor

@kumaraditya303 kumaraditya303 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@colesbury colesbury enabled auto-merge (squash) January 20, 2026 17:25
@colesbury colesbury disabled auto-merge January 20, 2026 17:26
@colesbury colesbury enabled auto-merge (squash) January 20, 2026 17:26
@colesbury colesbury merged commit 43bb630 into python:main Jan 20, 2026
53 checks passed
@colesbury colesbury deleted the gh-143939-coro-bug branch February 5, 2026 16:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

Morty Proxy This is a proxified and sanitized view of the page, visit original site.