Tracking Issue for RFC 3606: Drop temporaries in tail expressions before local variables #123739
Closed
Description
opened on Apr 10, 2024
This is a tracking issue for the RFC 3606: Drop temporaries in tail expressions before local variables
The feature gate for the issue is #![feature(shorter_tail_lifetimes)]
.
About tracking issues
Tracking issues are used to record the overall progress of implementation. They are also used as hubs connecting to other relevant issues, e.g., bugs or open design questions. A tracking issue is however not meant for large scale discussion, questions, or bug reports about a feature. Instead, open a dedicated issue for the specific matter and add the relevant feature gate label.
Steps
- Accept RFC: RFC: Drop temporaries in tail expressions before local variables rfcs#3606
- Implement under feature flag with Rust 2024 behavior.
- Crater run(s) to collect data for migration lints.
- Implement migration lints.
- Decide to stabilize.
- Stabilize in nightly Rust 2024.
- N/A: Add documentation to the dev guide.
- See the instructions.
- Add documentation to the reference.
- Add documentation to the edition guide.
- Ensure ready for Rust 2024 stabilization.
Unresolved Questions
- How uncommon are the situations where this change could affect existing code?
- How advanced should the edition lint and migration be?
- Can we make sure a lint catches the cases with unsafe code that could result in undefined behaviour?
- Do we want to
warn-by-default
about these cases in older editions, or only warn when upgrading to Rust 2024?
Related
Metadata
Assignees
Labels
Area: The 2024 editionBlocker: Approved by a merged RFC but not yet implemented.Category: An issue tracking the progress of sth. like the implementation of an RFC`#![feature(shorter_tail_lifetimes)]`Status: This issue is ready for inclusion in the edition.Relevant to the language team, which will review and decide on the PR/issue.
Activity