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

Partially stabilize RFC 1506 "Clarify relationships between ADTs" #36868

Merged
merged 1 commit into from Nov 9, 2016

Conversation

petrochenkov
Copy link
Contributor

@petrochenkov petrochenkov commented Sep 30, 2016

Lifted restrictions on tuple structs/variants are stabilized, i.e. S{..} can be used with any structs and empty tuple structs are permitted without feature gate.
Numeric fields in struct expressions/patterns S { 0: a, 1: b } are NOT stabilized.
This was implemented 1.5 months ago in Rust 1.12, but this is a tiny technical change that could probably go even without RFC/stabilization period.

cc #35626 #36871
r? @nikomatsakis

@brson brson added relnotes Marks issues that should be documented in the release notes of the next release. I-nominated T-lang Relevant to the language team, which will review and decide on the PR/issue. labels Sep 30, 2016
@nikomatsakis
Copy link
Contributor

cc @rust-lang/lang -- thoughts on stabilizing Foo { .. }?

@nrc
Copy link
Member

nrc commented Oct 4, 2016

Should this have an FCP cycle? I'm still in favour of the change but it does not seem like a no-brainer feature to me - it still gives me pause that braced structs can match tuple structs in patterns.

@nikomatsakis
Copy link
Contributor

@nrc I was thinking it probably should, yes.

bors added a commit that referenced this pull request Oct 11, 2016
Turn compatibility lint `match_of_unit_variant_via_paren_dotdot` into a hard error

The lint was introduced 10 months ago and made deny-by-default 7 months ago.
In case someone is still using it, #36868 contains a stable replacement.

r? @nikomatsakis
@alexcrichton
Copy link
Member

ping, is this just waiting for the FCP on an issue to close?

@petrochenkov
Copy link
Contributor Author

Yes, waiting for FCP.
Not sure though when exactly it's supposed to happen, before or after the next release.

@nikomatsakis
Copy link
Contributor

@petrochenkov so FCP is over, care to rebase?

@petrochenkov
Copy link
Contributor Author

Rebased.

@nikomatsakis
Copy link
Contributor

@bors r+

@bors
Copy link
Contributor

bors commented Nov 8, 2016

📌 Commit baf9f33 has been approved by nikomatsakis

@bors
Copy link
Contributor

bors commented Nov 8, 2016

🔒 Merge conflict

@bors
Copy link
Contributor

bors commented Nov 8, 2016

☔ The latest upstream changes (presumably #36843) made this pull request unmergeable. Please resolve the merge conflicts.

@petrochenkov
Copy link
Contributor Author

@bors r=nikomatsakis

@bors
Copy link
Contributor

bors commented Nov 8, 2016

📌 Commit ab5ba04 has been approved by nikomatsakis

eddyb added a commit to eddyb/rust that referenced this pull request Nov 9, 2016
Partially stabilize RFC 1506 "Clarify relationships between ADTs"

Lifted restrictions on tuple structs/variants are stabilized, i.e. `S{..}` can be used with any structs and empty tuple structs are permitted without feature gate.
Numeric fields in struct expressions/patterns `S { 0: a, 1: b }` are **NOT** stabilized.
This was implemented 1.5 months ago in Rust 1.12, but this is a tiny technical change that could probably go even without RFC/stabilization period.

cc rust-lang#35626 rust-lang#36871
r? @nikomatsakis
bors added a commit that referenced this pull request Nov 9, 2016
Rollup of 15 pull requests

- Successful merges: #36868, #37134, #37229, #37250, #37370, #37428, #37432, #37472, #37524, #37614, #37622, #37627, #37636, #37644, #37654
- Failed merges: #37463, #37542, #37645
@bors bors merged commit ab5ba04 into rust-lang:master Nov 9, 2016
@petrochenkov petrochenkov deleted the adtstab branch March 16, 2017 19:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
relnotes Marks issues that should be documented in the release notes of the next release. T-lang Relevant to the language team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants