]> git.lizzy.rs Git - rust.git/commitdiff
Rollup merge of #65355 - Centril:almost-is-never-enough, r=oli-obk
authorMazdak Farrokhzad <twingoow@gmail.com>
Thu, 21 Nov 2019 14:29:00 +0000 (15:29 +0100)
committerGitHub <noreply@github.com>
Thu, 21 Nov 2019 14:29:00 +0000 (15:29 +0100)
Stabilize `!` in Rust 1.41.0

This PR stabilizes the `never_type` (written `!`). The type represents computations that we know diverge in the type system and therefore has no values / inhabitants / elements / members.

The current nightly version is 1.40.0 which will become stable on 2019-12-19.

Tracking issue: https://github.com/rust-lang/rust/issues/35121.
Closes https://github.com/rust-lang/rust/issues/57012.
Closes https://github.com/rust-lang/rust/issues/58184.
Original stabilization report: https://github.com/rust-lang/rust/issues/57012#issuecomment-452398538

Additional notes:

- In #62661 we reserved `impl<T> From<!> for T` so this concern should be resolved.
- The type inference fallback change is moved to `#![feature(never_type_fallback)]` (https://github.com/rust-lang/rust/issues/65992).
- You can find all of the tests referencing `never_type` in this PR which also reorganizes these tests whereas they were more scattered before.

r? @nikomatsakis


Trivial merge