Skip to content

GH-148047: Check early whether tail calling is possible#148036

Open
chris-eibl wants to merge 2 commits intopython:mainfrom
chris-eibl:CheckTailCalling
Open

GH-148047: Check early whether tail calling is possible#148036
chris-eibl wants to merge 2 commits intopython:mainfrom
chris-eibl:CheckTailCalling

Conversation

@chris-eibl
Copy link
Copy Markdown
Member

@chris-eibl chris-eibl commented Apr 3, 2026

Rather than failing late when compiling e.g. a debug configuration

build.bat -c debug --tail-call-interp

with hundreds of

error C4737: Unable to perform required tail call. Performance may be degraded.

lets fail early with an explicit error message for configurations that are not supported by MSVC.

This is a follow-up on #140513 / #140548.

@chris-eibl
Copy link
Copy Markdown
Member Author

chris-eibl commented Apr 3, 2026

TSan https://github.com/python/cpython/actions/runs/23948631142/job/69850491565?pr=148036 failure for sure unreleated: this is a pure Windows change and would result in a build error on onsupported (Windows) hosts when using --tail-call-interp. Note that there are no such hosts in CI nor in buildbots, and if there were, they would have already failed (but with tons of Unable to perform required tail call messages).

I've checked manually that I get all the expected errors for unsupported configurations.

@Fidget-Spinner
Copy link
Copy Markdown
Member

Please open a separate issue for this, rather than reusing the same closed issue. Thanks!

@chris-eibl chris-eibl changed the title GH-139922: Check early whether tail calling is possible GH-148047: Check early whether tail calling is possible Apr 3, 2026
@chris-eibl chris-eibl added OS-windows build The build process and cross-build and removed skip news labels Apr 3, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

awaiting review build The build process and cross-build OS-windows

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants