Skip to content

Stabilize never type (!) #653

Open
Open

Description

@tomassedovic
Metadata
Contact @WaffleLapkin
Team(s) lang, types
Goal document 2026/stabilize-never-type
Funding contact Funding team

Summary

Stabilize the never type aka !.


This issue is intended for status updates only.

For general questions or comments, please contact a goal owner or post in the Zulip topic.

Activity

  1. added this to the 2026 milestone on May 5, 2026
  2. tomassedovic commented on May 5, 2026

    @tomassedovic
    ContributorAuthor

    This issue is intended for status updates only.

    For general questions or comments, please contact the owner(s) directly.

  3. locked and limited conversation to collaborators on May 5, 2026
  4. added
    ex-2025h2Goals that were previously in 2025h2 (for reporting)
    and removed
    ex-2025h2Goals that were previously in 2025h2 (for reporting)
    on May 11, 2026
  5. WaffleLapkin commented on Jul 1, 2026

    @WaffleLapkin
    Member

    (unfortunately the bot that was supposed to remind me about making updates did not work as intended, so I was never notified before now... sorry everyone!)

    I created a roadmap for never type stabilization:

    Image

    There are currently 3 blockers of the never type stabilization. 2 of them have open PRs: rust-lang/rust#157820 and rust-lang/rust#156047.

    Another blocker is itself blocked on low-priority impls. I'm making steady progress on implementing low-priority impls.

    The unreachable_code lint rewrite is not a strict blocker, but could be nice to have. We'll see if we get to it before the stabilization.

  6. WaffleLapkin commented on Aug 10, 2026

    @WaffleLapkin
    Member

    With rust-lang/rust#157820 and rust-lang/rust#156047 now merged, and to the best of my knowledge, the only blocker that is left for the never type stabilization is deciding what to do with the From<!> for T reservation impl.

    I think that the reservation impl should be removed, which I'm proposing in rust-lang/rust#160705. When (if) that gets merged, we can stabilize the never type! :>

  7. WaffleLapkin commented on Sep 3, 2026

    @WaffleLapkin
    Member

    The never type has been stabilized on nightly in rust-lang/rust#160705! 🎉

    There have also been some follow up work: documentation rewrite in rust-lang/rust#158370, internal code cleanup in rust-lang/rust#161828 and rust-lang/rust#161974, and inline asm fix in rust-lang/rust#161781.

    There is also an open T-types FCP in rust-lang/rust#161925, to double-check types team consensus on the never type.

    (I will close this issue once the never type stabilization hits stable)

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

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions