Skip to content

Tracking issue for eRFC 2497, "if- and while-let-chains, take 2" #53667

Description

@Centril

Note: This feature was stabilized in 1.88.0 but on edition 2024 only. If you are using 1.88.0+ and get an error that the feature is still unstable, please upgrade the edition.

This is a tracking issue for the eRFC "if- and while-let-chains, take 2" (rust-lang/rfcs#2497).
For the tracking issue for the immediate edition changes, see #53668.

Steps:

Unresolved questions:

Collected issues:

Implementation history:

Unresolved problems

  • Can we be confident that the implementation is correct and well tested?

Activity

  1. added
    B-RFC-approvedBlocker: Approved by a merged RFC but not yet implemented.
    T-langRelevant to the language team
    C-tracking-issueCategory: An issue tracking the progress of sth. like the implementation of an RFC
    on Aug 24, 2018
  2. self-assigned this
    on Mar 11, 2019
  3. Centril commented on Mar 11, 2019

    @Centril
    ContributorAuthor

    I'm working on implementing this in a 3+ PR step fashion based on discussions with @oli-obk.

  4. oli-obk commented on Mar 11, 2019

    @oli-obk
    Contributor

    for the record, the discussed step list is

    1. remove if from HIR and make lowering emit a match
    2. remove if let from AST and instead have a let expression
    3. "do the rest of the work" (might get split up further).
  5. alexreg commented on Mar 11, 2019

    @alexreg
    Contributor

    I can't imagine 3 would be a particularly large step (enough to merit splitting), but 3 steps sounds fair enough.

  6. added 2 commits that reference this issue on Apr 17, 2019
  7. added 4 commits that reference this issue on May 10, 2019
  8. 217 remaining items

  9. added a commit that references this issue on Feb 19, 2026
  10. added 2 commits that reference this issue on Jul 17, 2026
  11. added a commit that references this issue on Jul 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-let-chainsArea: let chains (if-let, while-let, ...)B-RFC-approvedBlocker: Approved by a merged RFC but not yet implemented.C-tracking-issueCategory: An issue tracking the progress of sth. like the implementation of an RFCS-tracking-ready-to-stabilizeStatus: This is ready to stabilize; it may need a stabilization report and a PRT-langRelevant to the language team

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions