-
Notifications
You must be signed in to change notification settings - Fork 12.9k
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
Revert stabilization of never_type (!) et al #50121
Revert stabilization of never_type (!) et al #50121
Conversation
This commit is just covering the feature gate itself and the tests that made direct use of `!` and thus need to opt back into the feature. A follow on commit brings back the other change that motivates the revert: Namely, going back to the old rules for falling back to `()`.
…ack to `()`, not `!`. Note that this commit, since it is trying to be minimal in order to ease backporting to the beta and release channels, does *not* include the old future-proofing warnings that we used to have associated with such fallback to `()`; see discussion at this comment: rust-lang#49691 (comment)
This reverts commit e53a2a7.
Even though @nikomatsakis is on PTO, I believe he will be back soon enough that he would be a good choice as a reviewer. (However, if any one else wants to jump on board, I will not object.) |
Thanks @pnkfelix! The libs parts here look good to me |
This comment has been minimized.
This comment has been minimized.
(I've added 42b6d46 to address the trivial build failures) |
This comment has been minimized.
This comment has been minimized.
594a552
to
76639f7
Compare
This comment has been minimized.
This comment has been minimized.
76639f7
to
7c4b7c6
Compare
7c4b7c6
to
42b6d46
Compare
@bors: r+ |
📌 Commit 42b6d46 has been approved by |
@bors: p=1 due to backport status |
@alexcrichton Do we also want to revert the addition of |
…-al, r=alexcrichton Revert stabilization of never_type (!) et al Fix #49691 I *think* this correctly adopts @nikomatsakis 's desired fix of: * reverting stabilization of `!` and `TryFrom`, and * returning to the previous fallback semantics (i.e. it is once again dependent on whether the crate has opted into `#[feature(never_type)]`, * **without** attempting to put back in the previous future-proofing warnings regarding the change in fallback semantics. (I'll be away from computers for a week starting now, so any updates to this PR should be either pushed into it, or someone else should adopt the task of polishing this fix and put up their own PR.)
☀️ Test successful - status-appveyor, status-travis |
…kennytm re-mark the never docs as unstable Fixes rust-lang#54198 This stability attribute was removed in rust-lang#47630, but not replaced with a `#[stable]` attribute, and when rust-lang#50121 reverted that stabilization, it didn't set the docs back to unstable. I'm concerned as to why it was allowed to not have the stability attribute at all, but at least this can put it back. I'm nominating this for beta backport because it's a really small change, and right now our docs are in an awkward position where the `!` type is technically unstable to use, but the docs don't say so the same way any other library feature would. (And this is also the case *on stable* now, but i'm not suggesting a stable backport for a docs fix.)
Fix #49691
I think this correctly adopts @nikomatsakis 's desired fix of:
!
andTryFrom
, and#[feature(never_type)]
,(I'll be away from computers for a week starting now, so any updates to this PR should be either pushed into it, or someone else should adopt the task of polishing this fix and put up their own PR.)