GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — gh-135755: Make Py_TAIL_CALL_INTERP macro private by vstinner · Pull Request #138981 · python/cpython

Conversation

@vstinner

@vstinner vstinner commented Sep 16, 2025 •
edited by bedevere-app Bot
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown
Member

Rename Py_TAIL_CALL_INTERP to _Py_TAIL_CALL_INTERP.

  • Issue: Undocumented 3.14 C API #135755

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
@vstinner
pythongh-135755: Make Py_TAIL_CALL_INTERP macro private
7270f12
Rename Py_TAIL_CALL_INTERP to _Py_TAIL_CALL_INTERP.
@vstinner vstinner added the skip news label Sep 16, 2025
@vstinner
vstinner requested review from a team, AA-Turner, corona10, emmatyping, erlend-aasland and markshannon as code owners September 16, 2025 13:20
@bedevere-app bedevere-app Bot added the awaiting core review label Sep 16, 2025
@bedevere-app bedevere-app Bot mentioned this pull request Sep 16, 2025
Undocumented 3.14 C API #135755
Closed
39 tasks done
@vstinner

vstinner commented Sep 16, 2025

Copy link
Copy Markdown
Member Author

@Fidget-Spinner: I blindly replaced Py_TAIL_CALL_INTERP text with _Py_TAIL_CALL_INTERP. I didn't test my change.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@Fidget-Spinner

Fidget-Spinner commented Sep 16, 2025

Copy link
Copy Markdown
Member

Thanks. I'll approve once CI passes.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@vstinner

vstinner commented Sep 16, 2025

Copy link
Copy Markdown
Member Author

I built Python with tail call on Linux using ./configure --with-tail-call-interp CC=clang LD=clang && make. I checked that ./python -m test test_sys -v still pass.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@Fidget-Spinner

Fidget-Spinner commented Sep 16, 2025

Copy link
Copy Markdown
Member

I built Python with tail call on Linux using ./configure --with-tail-call-interp CC=clang LD=clang && make. I checked that ./python -m test test_sys -v still pass.

Don't worry, we have CI for the tail calling interpreter on most platforms, so you can just let it run :)

vstinner reacted with thumbs up emoji
All reactions
  • 👍 1 reaction

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

corona10
corona10 approved these changes Sep 16, 2025
View reviewed changes
@bedevere-app bedevere-app Bot added awaiting merge and removed awaiting core review labels Sep 16, 2025
@vstinner vstinner added the needs backport to 3.14 bugs and security fixes label Sep 17, 2025
@vstinner

vstinner commented Sep 17, 2025

Copy link
Copy Markdown
Member Author

Ping @Fidget-Spinner

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

Fidget-Spinner
Fidget-Spinner approved these changes Sep 17, 2025
View reviewed changes
@vstinner

vstinner commented Sep 17, 2025

Copy link
Copy Markdown
Member Author

@hugovk: This change mostly/only makes sense if it's backported to 3.14. Would you accept this late C API change in 3.14? It makes the macro private.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@vstinner vstinner assigned hugovk Sep 18, 2025
@vstinner

vstinner commented Sep 18, 2025

Copy link
Copy Markdown
Member Author

Maybe it's ok to leave the macro in 3.14 and remove it in 3.15. No one should rely on this macro :-)

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@vstinner
vstinner merged commit 6504f20 into python:main Sep 18, 2025
@vstinner
vstinner deleted the private_tail_cail branch September 18, 2025 12:33
@miss-islington-app

miss-islington-app Bot commented Sep 18, 2025

Copy link
Copy Markdown

Thanks @vstinner for the PR 🌮🎉.. I'm working now to backport this PR to: 3.14.
🐍🍒⛏🤖

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@bedevere-app bedevere-app Bot removed the awaiting merge label Sep 18, 2025
@miss-islington-app

miss-islington-app Bot commented Sep 18, 2025

Copy link
Copy Markdown

Sorry, @vstinner, I could not cleanly backport this to 3.14 due to a conflict.
Please backport using cherry_picker on command line.

cherry_picker 6504f20ccedf0b27275327e72698dee5f0c75ba8 3.14
All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@miss-islington-app miss-islington-app Bot assigned vstinner and unassigned hugovk Sep 18, 2025
vstinner added a commit to vstinner/cpython that referenced this pull request Sep 18, 2025
@vstinner
pythongh-135755: Make Py_TAIL_CALL_INTERP macro private (python#138981)
fda779d
Rename Py_TAIL_CALL_INTERP to _Py_TAIL_CALL_INTERP.

(cherry picked from commit 6504f20)
@bedevere-app

bedevere-app Bot commented Sep 18, 2025

Copy link
Copy Markdown

GH-139120 is a backport of this pull request to the 3.14 branch.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@bedevere-app bedevere-app Bot removed the needs backport to 3.14 bugs and security fixes label Sep 18, 2025
@vstinner

vstinner commented Sep 18, 2025

Copy link
Copy Markdown
Member Author

@Fidget-Spinner suggested me to merge this change in the main branch, so I did it :-)

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

@corona10 corona10 corona10 approved these changes
@Fidget-Spinner Fidget-Spinner Fidget-Spinner approved these changes
@markshannon markshannon Awaiting requested review from markshannon markshannon is a code owner
@erlend-aasland erlend-aasland Awaiting requested review from erlend-aasland erlend-aasland is a code owner
@AA-Turner AA-Turner Awaiting requested review from AA-Turner AA-Turner is a code owner
@emmatyping emmatyping Awaiting requested review from emmatyping emmatyping is a code owner

Uh oh!

There was an error while loading. Please reload this page.

Assignees

@vstinner vstinner

Labels

skip news

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

Uh oh!

There was an error while loading. Please reload this page.

4 participants

@vstinner @Fidget-Spinner @corona10 @hugovk
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
You are visitor 01402520 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.