diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2026-03-26-11-18-45.gh-issue-146388.O0u1c3.rst b/Misc/NEWS.d/next/Core_and_Builtins/2026-03-26-11-18-45.gh-issue-146388.O0u1c3.rst new file mode 100644 index 00000000000000..19d16734945cbd --- /dev/null +++ b/Misc/NEWS.d/next/Core_and_Builtins/2026-03-26-11-18-45.gh-issue-146388.O0u1c3.rst @@ -0,0 +1 @@ +Adds a null check to handle when the JIT optimizer runs out of space when dealing with contradictions in :func:`make_bottom` diff --git a/Python/optimizer_symbols.c b/Python/optimizer_symbols.c index 2a8d8c45c588ba..0bc3c5055812c4 100644 --- a/Python/optimizer_symbols.c +++ b/Python/optimizer_symbols.c @@ -1684,6 +1684,9 @@ static JitOptSymbol * make_bottom(JitOptContext *ctx) { JitOptSymbol *sym = sym_new(ctx); + if (sym == NULL) { + return out_of_space(ctx); + } sym->tag = JIT_SYM_BOTTOM_TAG; return sym; }