-
Notifications
You must be signed in to change notification settings - Fork 12.7k
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
or_patterns: implement :pat edition-specific behavior #80100
Conversation
This comment has been minimized.
This comment has been minimized.
I keep getting:
I've tried everything... |
This comment has been minimized.
This comment has been minimized.
Some UI tests need an update. |
This comment has been minimized.
This comment has been minimized.
For some reason, I keep getting the same bootstrapping error above. I'm unable to run any tests locally :( |
|
r=me with commits squashed. |
@petrochenkov squashed. |
@rustbot modify labels: +S-waiting-on-review -S-waiting-on-author |
@bors r+ |
📌 Commit fd4ae3a has been approved by |
or_patterns: implement :pat edition-specific behavior cc rust-lang#54883 `@joshtriplett` This PR implements the edition-specific behavior of `:pat` wrt or-patterns, as determined by the crater runs and T-lang consensus in rust-lang#54883 (comment). I believe this can unblock stabilization of or_patterns. r? `@petrochenkov`
This comment has been minimized.
This comment has been minimized.
The job Click to see the possible cause of the failure (guessed by this bot)
|
💔 Test failed - checks-actions |
I don't understand the CI failure. It looks like llvm is missing? Seems unrelated? |
The failure looks unrelated to this PR. |
or_patterns: implement :pat edition-specific behavior cc rust-lang#54883 `@joshtriplett` This PR implements the edition-specific behavior of `:pat` wrt or-patterns, as determined by the crater runs and T-lang consensus in rust-lang#54883 (comment). I believe this can unblock stabilization of or_patterns. r? `@petrochenkov`
or_patterns: implement :pat edition-specific behavior cc rust-lang#54883 ``@joshtriplett`` This PR implements the edition-specific behavior of `:pat` wrt or-patterns, as determined by the crater runs and T-lang consensus in rust-lang#54883 (comment). I believe this can unblock stabilization of or_patterns. r? ``@petrochenkov``
☀️ Test successful - checks-actions |
This seems to have been a slight regression in instruction counts (0.5%) on the deep vector benchmark. I think it would probably be good to modify the code to lazily query the edition if we encounter a pat pattern (or, even better, one that would differ in behavior) - edition queries are relatively expensive. |
@Mark-Simulacrum Hmm... that's good to know. Yeah, I can do that. I think we will want to do something different altogether, though -- adding a new I can hack something together to address the regression now if you want, but I would prefer to just do the above (it might take a bit longer though; not sure I can do it before the beta branches)... |
I am not worried about this hitting beta - regression is minor. I agree that the long term planning in this area probably means we don't need a temporary fix for now. |
Implement edition-based macro :pat feature This PR does two things: 1. Fixes the perf regression from rust-lang#80100 (comment) 2. Implements `:pat2018` and `:pat2021` matchers, as described by `@joshtriplett` in rust-lang#54883 (comment) behind the feature gate `edition_macro_pat`. r? `@petrochenkov` cc `@Mark-Simulacrum`
Implement edition-based macro :pat feature This PR does two things: 1. Fixes the perf regression from rust-lang#80100 (comment) 2. Implements `:pat2018` and `:pat2021` matchers, as described by `@joshtriplett` in rust-lang#54883 (comment) behind the feature gate `edition_macro_pat`. r? `@petrochenkov` cc `@Mark-Simulacrum`
FYI, if someone is following up perf regressions, #80459 should resolve this regression and recently merged. |
…matsakis Stabilize or_patterns (RFC 2535, 2530, 2175) closes rust-lang#54883 This PR stabilizes the or_patterns feature in Rust 1.53. This is blocked on the following (in order): - [x] The crater run in rust-lang#78935 (comment) - [x] The resolution of the unresolved questions and a second crater run (rust-lang#78935 (comment)) - It looks like we will need to pursue some sort of edition-based transition for `:pat`. - [x] Nomination and discussion by T-lang - [x] Implement new behavior for `:pat` based on consensus (rust-lang#80100). - [ ] An FCP on stabilization EDIT: Stabilization report is in rust-lang#79278 (comment)
Stabilize or_patterns (RFC 2535, 2530, 2175) closes #54883 This PR stabilizes the or_patterns feature in Rust 1.53. This is blocked on the following (in order): - [x] The crater run in rust-lang/rust#78935 (comment) - [x] The resolution of the unresolved questions and a second crater run (rust-lang/rust#78935 (comment)) - It looks like we will need to pursue some sort of edition-based transition for `:pat`. - [x] Nomination and discussion by T-lang - [x] Implement new behavior for `:pat` based on consensus (rust-lang/rust#80100). - [ ] An FCP on stabilization EDIT: Stabilization report is in rust-lang/rust#79278 (comment)
cc #54883 @joshtriplett
This PR implements the edition-specific behavior of
:pat
wrt or-patterns, as determined by the crater runs and T-lang consensus in #54883 (comment).I believe this can unblock stabilization of or_patterns.
r? @petrochenkov