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

Tracking issue for Rust 2024: Match ergonomics rules 1C/2C #131414

Closed
6 tasks done
traviscross opened this issue Oct 8, 2024 · 1 comment
Closed
6 tasks done

Tracking issue for Rust 2024: Match ergonomics rules 1C/2C #131414

traviscross opened this issue Oct 8, 2024 · 1 comment
Labels
A-edition-2024 Area: The 2024 edition A-patterns Relating to patterns and pattern matching B-RFC-approved Blocker: Approved by a merged RFC but not yet implemented. C-tracking-issue Category: An issue tracking the progress of sth. like the implementation of an RFC S-tracking-ready-for-edition Status: This issue is ready for inclusion in the edition. T-lang Relevant to the language team, which will review and decide on the PR/issue.

Comments

@traviscross
Copy link
Contributor

traviscross commented Oct 8, 2024

This is a tracking issue for reserving space in match ergonomics in Rust 2024 for RFC 3627 and other proposals for the future of match ergonomics.

Rules

  • Rule 1C: When the DBM (default binding mode) is not move (whether or not behind a reference), writing mut, ref, or ref mut on a binding is an error.
  • Rule 2C: Reference patterns can only match against references in the scrutinee when the DBM is move.

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

Tracking for broader RFC 3627 work:

@traviscross traviscross added A-edition-2024 Area: The 2024 edition A-patterns Relating to patterns and pattern matching B-RFC-approved Blocker: Approved by a merged RFC but not yet implemented. C-tracking-issue Category: An issue tracking the progress of sth. like the implementation of an RFC S-tracking-needs-documentation Status: Needs documentation. T-lang Relevant to the language team, which will review and decide on the PR/issue. labels Oct 8, 2024
@traviscross traviscross added the S-tracking-ready-to-stabilize Status: This is ready to stabilize; it may need a stabilization report and a PR label Oct 8, 2024
@traviscross traviscross removed the S-tracking-ready-to-stabilize Status: This is ready to stabilize; it may need a stabilization report and a PR label Oct 16, 2024
@traviscross
Copy link
Contributor Author

traviscross commented Dec 22, 2024

@rustbot labels -S-tracking-needs-documentation +S-tracking-ready-for-edition

This item is ready for Rust 2024.

Thanks to @Nadrieril, @Jules-Bertholet, and the various reviewers for making this happen.

@rustbot rustbot added S-tracking-ready-for-edition Status: This issue is ready for inclusion in the edition. and removed S-tracking-needs-documentation Status: Needs documentation. labels Dec 22, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-edition-2024 Area: The 2024 edition A-patterns Relating to patterns and pattern matching B-RFC-approved Blocker: Approved by a merged RFC but not yet implemented. C-tracking-issue Category: An issue tracking the progress of sth. like the implementation of an RFC S-tracking-ready-for-edition Status: This issue is ready for inclusion in the edition. T-lang Relevant to the language team, which will review and decide on the PR/issue.
Projects
None yet
Development

No branches or pull requests

2 participants