Skip to content

_Py_RefcntAdd doesn't respect immortality #104142

Description

@brandtbucher

This is used by list and tuple internally:

>>> import sys
>>> sys.getrefcount(None) == (1 << 32) - 1
True
>>> refs = [None] * 42
>>> sys.getrefcount(None) == (1 << 32) - 1
False
>>> del refs
>>> sys.getrefcount(None) == (1 << 32) - 1
True

I'll have a PR up in a bit.

CC: @ericsnowcurrently, @eduardo-elizondo

Linked PRs

Activity

  1. added
    type-bugAn unexpected behavior, bug, or error
    interpreter-core(Objects, Python, Grammar, and Parser dirs)
    triagedThe issue has been accepted as valid by a triager.
    on May 3, 2023
  2. self-assigned this
    on May 3, 2023
  3. added a commit that references this issue on May 5, 2023
  4. added a commit that references this issue on May 5, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

3.12only security fixesinterpreter-core(Objects, Python, Grammar, and Parser dirs)release-blockertriagedThe issue has been accepted as valid by a triager.type-bugAn unexpected behavior, bug, or error

Projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions