Skip to content

Assertion failure in Objects/call.c:342: !_PyErr_Occurred(tstate) failed #112388

Closed
@bradlarsen

Description

@bradlarsen

Crash report

What happened?

I found some crashes when adding an additional fuzz target in #111721.

# This script fails with a C assertion failure when assertions are enabled.
#
# I ran this through Python built from source with assertions enabled:
#
#     ./configure --with-assertions --prefix "$PWD/debugbuild"
#     make -j12 altinstall
#     ./debugbuild/bin/python/crash2.py
#
# I ran this on ARM64 macOS:
#
#     Darwin dialectic.local 23.1.0 Darwin Kernel Version 23.1.0: Mon Oct  9 21:27:24 PDT 2023; root:xnu-10002.41.9~6/RELEASE_ARM64_T6000 arm64

# Input found via the fuzz target added in https://github.com/python/cpython/pull/111721, then manually minimized
s = b"with(0,,):\n\x01"

# This line fails with a C assertion failure:
#
#     fuzz_pycompile: Objects/call.c:342: PyObject *_PyObject_Call(PyThreadState *, PyObject *, PyObject *, PyObject *): Assertion `!_PyErr_Occurred(tstate)' failed.
#
compile(s, 's', 'exec')

CPython versions tested on:

CPython main branch

Operating systems tested on:

macOS

Output from running 'python -VV' on the command line:

Python 3.13.0a1+ (heads/main:3701f3bc10, Nov 24 2023, 23:05:42) [Clang 15.0.0 (clang-1500.0.40.1)]

Linked PRs

Metadata

Metadata

Assignees

No one assigned

    Labels

    type-crashA hard crash of the interpreter, possibly with a core dump

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions