or_patterns: implement :pat edition-specific behavior#80100
or_patterns: implement :pat edition-specific behavior#80100bors merged 1 commit intorust-lang:masterfrom
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.
|
⌛ Testing commit 1a7d00a with merge e88476cacdce4e89097f37c14e73962b68bcf642... |
|
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
:patwrt 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