Skip to content

Segmentation fault in test_call.py (c_recurse) on Linux with Clang (LTO+PGO) #145953

@ashm-dev

Description

@ashm-dev

Bug report

Bug description:

Running the CPython test suite results in a segmentation fault during test_call. The crash occurs in Lib/test/test_call.py at line 1081 (c_recurse).

Environment:

  • CPython commit: 798070d8ca4 (Mar 14 2026)
  • OS: Linux-6.19.6-arch1-1-x86_64-with-glibc2.43 little-endian
  • Compiler: Clang 22.1.1 (Target: x86_64-pc-linux-gnu, GCC installation: 15.2.1)

Build command:

CC=clang CXX=clang++ CFLAGS='-march=native' AR=llvm-ar NM=llvm-nm RANLIB=llvm-ranlib LDFLAGS='-fuse-ld=lld' ./configure --enable-optimizations --with-lto=full
make
Output / Traceback:
0:06:59 load avg: 3.73 [117/501] test_call
Fatal Python error: Segmentation fault

Current thread 0x00007f2aa84d5780 [python] (most recent call first):
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse
  File "/home/boss/projects/oss/cpython/main/Lib/test/test_call.py", line 1081 in c_recurse

Current thread's C stack trace (most recent call first):
  Binary file "./python", at _Py_DumpStack+0x3a [0x55753f5efb8a]
  Binary file "./python", at +0x664ab8 [0x55753f5fbab8]
  Binary file "./python", at +0x6649f7 [0x55753f5fb9f7]
  Binary file "/usr/lib/libc.so.6", at +0x3e2d0 [0x7f2aa85162d0]
  Binary file "./python", at _PyEval_EvalFrameDefault+0x14 [0x55753f1bd324]
  Binary file "./python", at _PyFunction_Vectorcall+0x318 [0x55753f1bb408]
  Binary file "./python", at PyObject_Vectorcall+0x3d [0x55753f386dfd]
  Binary file "./python", at _PyEval_EvalFrameDefault+0x25bfa [0x55753f1e2f0a]
  Binary file "./python", at _PyFunction_Vectorcall+0x318 [0x55753f1bb408]
  Binary file "./python", at PyObject_Vectorcall+0x3d [0x55753f386dfd]
  Binary file "./python", at _PyEval_EvalFrameDefault+0x25bfa [0x55753f1e2f0a]
  Binary file "./python", at _PyFunction_Vectorcall+0x318 [0x55753f1bb408]
  Binary file "./python", at PyObject_Vectorcall+0x3d [0x55753f386dfd]
  Binary file "./python", at _PyEval_EvalFrameDefault+0x25bfa [0x55753f1e2f0a]
  Binary file "./python", at _PyFunction_Vectorcall+0x318 [0x55753f1bb408]
  Binary file "./python", at PyObject_Vectorcall+0x3d [0x55753f386dfd]
  Binary file "./python", at _PyEval_EvalFrameDefault+0x25bfa [0x55753f1e2f0a]
  Binary file "./python", at _PyFunction_Vectorcall+0x318 [0x55753f1bb408]
  Binary file "./python", at PyObject_Vectorcall+0x3d [0x55753f386dfd]
  Binary file "./python", at _PyEval_EvalFrameDefault+0x25bfa [0x55753f1e2f0a]
  Binary file "./python", at _PyFunction_Vectorcall+0x318 [0x55753f1bb408]
  Binary file "./python", at PyObject_Vectorcall+0x3d [0x55753f386dfd]
  Binary file "./python", at _PyEval_EvalFrameDefault+0x25bfa [0x55753f1e2f0a]
  Binary file "./python", at _PyFunction_Vectorcall+0x318 [0x55753f1bb408]
  Binary file "./python", at PyObject_Vectorcall+0x3d [0x55753f386dfd]
  Binary file "./python", at _PyEval_EvalFrameDefault+0x25bfa [0x55753f1e2f0a]
  Binary file "./python", at _PyFunction_Vectorcall+0x318 [0x55753f1bb408]
  Binary file "./python", at PyObject_Vectorcall+0x3d [0x55753f386dfd]
  Binary file "./python", at _PyEval_EvalFrameDefault+0x25bfa [0x55753f1e2f0a]
  Binary file "./python", at _PyFunction_Vectorcall+0x318 [0x55753f1bb408]
  Binary file "./python", at PyObject_Vectorcall+0x3d [0x55753f386dfd]
  Binary file "./python", at _PyEval_EvalFrameDefault+0x25bfa [0x55753f1e2f0a]
  <truncated rest of calls>

Extension modules: _testcapi, _testinternalcapi, _testlimitedcapi, _testmultiphase, _testsinglephase, _testbuffer (total: 6)

CPython versions tested on:

3.15, CPython main branch

Operating systems tested on:

Linux

Metadata

Metadata

Assignees

No one assigned

    Labels

    interpreter-core(Objects, Python, Grammar, and Parser dirs)type-bugAn unexpected behavior, bug, or error

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions