New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
specialized PRECALL opcodes don't check types #92063
Comments
If we're trying to emulate method_vectorcall_FASTCALL_KEYWORDS, then we're at least missing out on how
or
I might have an off-by-one error. |
Marking as release blocker: it's easy to trigger but hard to reason about if you don't know about specialization, so it could create Heisenbugs, which would be unfortunate in the beta release. |
FYI, macOS meets the same issue as expected. |
It looks like |
PRECALL_NO_KW_METHOD_DESCRIPTOR_O as well |
PRECALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS
doesn't check types* Check the types of PRECALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS * fix PRECALL_NO_KW_METHOD_DESCRIPTOR_NOARGS as well * fix PRECALL_NO_KW_METHOD_DESCRIPTOR_O * fix PRECALL_NO_KW_METHOD_DESCRIPTOR_FAST
…H-92068) * Check the types of PRECALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS * fix PRECALL_NO_KW_METHOD_DESCRIPTOR_NOARGS as well * fix PRECALL_NO_KW_METHOD_DESCRIPTOR_O * fix PRECALL_NO_KW_METHOD_DESCRIPTOR_FAST
…H-92068) * Check the types of PRECALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS * fix PRECALL_NO_KW_METHOD_DESCRIPTOR_NOARGS as well * fix PRECALL_NO_KW_METHOD_DESCRIPTOR_O * fix PRECALL_NO_KW_METHOD_DESCRIPTOR_FAST
On the main branch, on both Windows and Linux, this crashes:
Other methods like
str.split
,bytes.split
, andlist.sort
fail similarly. I caught this by runningLooking through stack traces, it appears the failure is on the
res = cfunc(...)
call inPRECALL_METHOD_DESCRIPTOR_FAST_WITH_KEYWORDS
instruction. It looks to be a 3.11-only bug.The text was updated successfully, but these errors were encountered: