-
-
Notifications
You must be signed in to change notification settings - Fork 34.1k
Closed
Labels
3.13bugs and security fixesbugs and security fixes3.14bugs and security fixesbugs and security fixes3.15new features, bugs and security fixesnew features, bugs and security fixesinterpreter-core(Objects, Python, Grammar, and Parser dirs)(Objects, Python, Grammar, and Parser dirs)type-crashA hard crash of the interpreter, possibly with a core dumpA hard crash of the interpreter, possibly with a core dump
Description
Crash report
What happened?
The following code causes a crash in cpython:
class Generic:
def __call__(*a):
print(a)
def __getattr__(self, name):
return Generic()
name_5 = Generic()
type name_3[*name_2] = 0
name_3[name_5][0]output:
(<__main__.Generic object at 0x7fb99dc5a280>, name_3[<__main__.Generic object at 0x7fb99d792420>], (0,))
(<__main__.Generic object at 0x7fb99dbd7960>, None)
python3: ./Include/cpython/tupleobject.h:24: PyTuple_GET_SIZE: Assertion `PyTuple_Check(op)' failed.
fish: Job 1, '../cpython/install/bin/python3 …' terminated by signal SIGABRT (Abbruch)I found this example while fuzzing with pysource-codegen.
CPython versions tested on:
3.12, 3.13, 3.14, 3.15
Operating systems tested on:
Linux
Output from running 'python -VV' on the command line:
Python 3.14.0rc2+ (heads/3.14:45a79b4f4b7, Sep 3 2025, 22:05:34) [GCC 12.2.0]
Linked PRs
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
3.13bugs and security fixesbugs and security fixes3.14bugs and security fixesbugs and security fixes3.15new features, bugs and security fixesnew features, bugs and security fixesinterpreter-core(Objects, Python, Grammar, and Parser dirs)(Objects, Python, Grammar, and Parser dirs)type-crashA hard crash of the interpreter, possibly with a core dumpA hard crash of the interpreter, possibly with a core dump