Description
Bug report
Bug description:
clang-cl incorrectly handles SEH exception handling: llvm/llvm-project#62606
E.g. in
Lines 353 to 360 in 7c3692f
where
Lines 297 to 316 in 7c3692f
This lets test_mmap.MmapTests.test_access_violations
fail for clang-cl builds on Windows,
see e.g. https://github.com/python/cpython/actions/runs/14044831663/job/39323183797?pr=131690#step:4:566.
The suggestion in llvm/llvm-project#62606 (comment) is to use EHa
,
the problem is that without /EHa, the compiler assumes memory accesses don't trap
which seems wrong, and clearly is a compatibility issue wrt to MSVC.
Since Python code is compiled in C mode, EHa
would seem really weird to me. Even more weird workaround: wrap the "body" (here sourcecode
) in a separate function and guard that via SEH.
I've tried both workarounds and they would fix the problem.
CPython versions tested on:
3.14
Operating systems tested on:
Windows