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

Stabilize (only) the never type #58184

Closed
SimonSapin opened this issue Feb 5, 2019 · 11 comments · Fixed by #65355
Closed

Stabilize (only) the never type #58184

SimonSapin opened this issue Feb 5, 2019 · 11 comments · Fixed by #65355
Labels
B-unstable Blocker: Implemented in the nightly compiler and unstable. C-tracking-issue Category: A tracking issue for an RFC or an unstable feature. F-never_type `#![feature(never_type)]` T-lang Relevant to the language team, which will review and decide on the PR/issue.

Comments

@SimonSapin
Copy link
Contributor

SimonSapin commented Feb 5, 2019

This is an alternative to #57012 that does not propose changing the type inference fallback (yet). This unblocks TryFrom and TryInto #33417.

#49593 has now been fixed. This was the reason for the previous revert of stabilization (#50121).

What is being stabilized

What is not being stabilized

@SimonSapin SimonSapin added the T-lang Relevant to the language team, which will review and decide on the PR/issue. label Feb 5, 2019
@withoutboats
Copy link
Contributor

@rfcbot fcp merge

There is currently a lack of consensus regarding the change to fallback and how to handle edge case breakages. I don't believe there is any reason this change has to be tied together with making ! usable from stable, for which we have a strong consensus and a lot of groundwork laid. I think its a reasonable way to move forward for us to separate these two changes, so we can stabilize ! now without blocking it (and by extension, TryFrom) on reaching consensus about the fallback changes.

@rfcbot
Copy link

rfcbot commented Feb 5, 2019

Team member @withoutboats has proposed to merge this. The next step is review by the rest of the tagged team members:

Concerns:

Once a majority of reviewers approve (and at most 2 approvals are outstanding), this will enter its final comment period. If you spot a major issue that hasn't been raised at any point in this process, please speak up!

See this document for info about what commands tagged team members can give me.

@rfcbot rfcbot added proposed-final-comment-period Proposed to merge/close by relevant subteam, see T-<team> label. Will enter FCP once signed off. disposition-merge This issue / PR is in PFCP or FCP with a disposition to merge it. labels Feb 5, 2019
@SimonSapin
Copy link
Contributor Author

SimonSapin commented Feb 5, 2019

It was pointed out to me that #![feature(never_type)] changes inference in current Nightly. I’ve edited the proposal to mention moving that to a new feature gate.

@cramertj
Copy link
Member

cramertj commented Feb 5, 2019

@rfcbot concern motivation-to-change-fallback

I'm concerned that if we stabilize ! now without the fallback change then there won't be sufficient motivation for us to land the fallback change later, and we'll lose out on a feature that would have made the language better. IMO we should go ahead with the full stabilization-- there are inference changes that we don't currently warn against, but we've traditionally allowed such breakages in other places and I don't believe this change is more significant or detrimental.

@Centril
Copy link
Contributor

Centril commented Feb 5, 2019

@rfcbot concern eddybs-concern-on-the-other-issue

See #57012 (comment).

@mati865
Copy link
Contributor

mati865 commented Jun 28, 2019

What is the status on this?
There was no voting activity since 18 April.

@SimonSapin
Copy link
Contributor Author

SimonSapin commented Jun 28, 2019

As far as I know the status has not significantly changed since my summary in #57012 (comment).

@withoutboats
Copy link
Contributor

The concern labelled "eddybs-concern-on-the-other-issue" has been resolved by #62661.

@Centril
Copy link
Contributor

Centril commented Oct 14, 2019

Indeed it has.

@rfcbot resolve eddybs-concern-on-the-other-issue

@cramertj
Copy link
Member

I'll resolve my concern on this (motivation-to-change-fallback) pending a lang team discussion as proposed in #65355 (comment).

@cramertj cramertj added T-lang Relevant to the language team, which will review and decide on the PR/issue. disposition-merge This issue / PR is in PFCP or FCP with a disposition to merge it. and removed T-lang Relevant to the language team, which will review and decide on the PR/issue. disposition-merge This issue / PR is in PFCP or FCP with a disposition to merge it. proposed-final-comment-period Proposed to merge/close by relevant subteam, see T-<team> label. Will enter FCP once signed off. labels Oct 14, 2019
@cramertj
Copy link
Member

Sorry for the labels nonsense-- something is going wacky with GH in my browser.

@jonas-schievink jonas-schievink added F-never_type `#![feature(never_type)]` T-lang Relevant to the language team, which will review and decide on the PR/issue. C-tracking-issue Category: A tracking issue for an RFC or an unstable feature. labels Nov 17, 2019
@jonas-schievink jonas-schievink added the B-unstable Blocker: Implemented in the nightly compiler and unstable. label Nov 17, 2019
@bors bors closed this as completed in 0828d53 Nov 21, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
B-unstable Blocker: Implemented in the nightly compiler and unstable. C-tracking-issue Category: A tracking issue for an RFC or an unstable feature. F-never_type `#![feature(never_type)]` T-lang Relevant to the language team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

7 participants