Skip to content
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

Stabilize naked_functions #93587

Closed
wants to merge 1 commit into from
Closed

Conversation

bstrie
Copy link
Contributor

@bstrie bstrie commented Feb 2, 2022

This stabilizes the feature described in RFC 2972, which supercedes the earlier RFC 1201.

Closes #32408
Closes #90957

@rustbot rustbot added the T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. label Feb 2, 2022
@rust-highfive
Copy link
Collaborator

r? @davidtwco

(rust-highfive has picked a reviewer for you, use r? to override)

@rust-highfive rust-highfive added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Feb 2, 2022
@bstrie bstrie marked this pull request as draft February 2, 2022 15:07
@bstrie bstrie added S-waiting-on-team Status: Awaiting decision from the relevant subteam (see the T-<team> label). T-lang Relevant to the language team, which will review and decide on the PR/issue. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. labels Feb 2, 2022
@rust-log-analyzer

This comment has been minimized.

This stabilizes the feature described in RFC 2972,
which supersedes the earlier RFC 1201.

Closes rust-lang#32408
Closes rust-lang#90957
@rustbot rustbot added the T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. label Feb 2, 2022
Copy link
Member

@davidtwco davidtwco left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Implementation changes in this pull request looks good to me, it's ready for when the FCP over at #90957 (comment) resolves, assuming no new required changes come out of that process.

@bors
Copy link
Contributor

bors commented Mar 4, 2022

☔ The latest upstream changes (presumably #94096) made this pull request unmergeable. Please resolve the merge conflicts.

@npmccallum
Copy link
Contributor

@bstrie The FCP has now completed. Please update this PR.

@JohnTitor JohnTitor added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-team Status: Awaiting decision from the relevant subteam (see the T-<team> label). labels May 22, 2022
@JohnTitor
Copy link
Member

Ping from triage: @bstrie Could you resolve merge conflicts and make this PR ready? Thanks!

@dancrossnyc
Copy link

Another gentle ping here? It would be really nice to see this merged.

@pnkfelix
Copy link
Member

Based on a quick skim, I think this is blocked on PR #93809, since we do not to stabilize the naked_function feature without first ensuring that we only have limited the set of attributes it can be used with to the subset that we are confident about.

@JohnTitor JohnTitor added S-blocked Status: Marked as blocked ❌ on something else such as an RFC or other implementation work. and removed S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Aug 10, 2022
@est31
Copy link
Member

est31 commented Aug 27, 2022

👋 Hello, I'm writing this comment in this stabilization PR to notify you, the authors of this PR, that #100591 has been merged, which implemented a change in how features are stabilized.

Your PR has been filed before the change, so will likely require modifications in order to comply with the new rules. I recommend you to:

  1. rebase the PR onto latest master, so that uses of the placeholder are possible.
  2. replace the version numbers in the PR with the placeholder CURRENT_RUSTC_VERSION. For language changes, this means the version numbers in accepted.rs (example: 4caedba). For library changes, this means the since fields (example e576a9b).

That's it! The CURRENT_RUSTC_VERSION placeholder will, as part of the release process, be replaced with the version number that the PR merged for. It can be used anywhere in rust-lang/rust, not just accepted.rs and the since fields.

If you have any questions, feel free to drop by the zulip stream, or ping me directly in this PR's thread. Thanks! 👋

@hudson-ayers
Copy link
Contributor

With today's stabilization of asm_sym, I suspect this feature is one of the last remaining blockers of a move to stable Rust for lots of Rust firmware / OS development (I can say this is true for Tock). So any movement on this stabilization would be great!

(asm_const may still be a blocker for some, but IME it is much easier to approximate with hacks than naked_functions.)

@luojia65
Copy link
Contributor

luojia65 commented Oct 19, 2022

Mergeing this would definitely boost firmware development in Rust, I'm strongly agree to stabilize this feature. We may expect some reviews but will finally get there.

@Dylan-DPC
Copy link
Member

Going to close this pr as it is blocked on another PR which is still a draft PR and hence this will stay blocked for a long time.

@Dylan-DPC Dylan-DPC closed this Dec 9, 2022
@dancrossnyc
Copy link

Out of curiosity, what's the other PR?

@Lokathor
Copy link
Contributor

Lokathor commented Dec 9, 2022

It was linked a few comments up: #93809

Seems to be stalled since May

@dancrossnyc
Copy link

Ah, thanks.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
S-blocked Status: Marked as blocked ❌ on something else such as an RFC or other implementation work. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-lang Relevant to the language team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Tracking Issue for RFC #2972: Constrained Naked Functions Tracking issue for naked fns (RFC #1201)