Wrap dyn type with parentheses in suggestion#120929
Conversation
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
bd3356b to
62a7989
Compare
|
@fmease Could you review this PR? Thank you. |
|
Sure, I plan on reviewing this later today. Sorry for taking a bit, I'm assigned to several PRs and I continuously work on PRs myself ^^' |
|
☔ The latest upstream changes (presumably #121549) made this pull request unmergeable. Please resolve the merge conflicts. |
There was a problem hiding this comment.
I'm sorry for leaving you hanging like that! I have a couple of suggestions for how to structure this a bit differently and some correctness things.
At the moment your changes only trigger in very few cases. I think we should generalize it to apply to more + XXX-style suggestions.
First and foremost, I would check the other 3 usage sites bounds_span_for_suggestion whether they could benefit from this, too (I even suggest you to merge bounds_span_for_suggestion_with_parentheses into it in one of my review comments). You could even consider grep'ing through tests/ui/ to check if there are any other incorrect consider adding an explicit lifetime bound suggestions.
In summary, I'm a fan of fixing the incorrect diagnostic suggestion but I'd like to make sure to tap the full potential.
|
@fmease Thank you for detailed review! I will fix them and check for more patterns in a couple of days. |
62a7989 to
2b03887
Compare
This comment has been minimized.
This comment has been minimized.
|
I will fix testing failure at first. |
|
@rustbot review |
67e91e9 to
c1ccb05
Compare
I checked them:
I searched I think incorrect suggestions which need parentheses happen with only |
This comment has been minimized.
This comment has been minimized.
fmease
left a comment
There was a problem hiding this comment.
Thanks a lot!
First and foremost, I would check the other 3 usage sites
bounds_span_for_suggestionwhether they could benefit from this, too.
I could find an example for each usage site. Please make them use open_paren_sp as well, thanks! :)
After that, this PR should be good to go! One more thing, could you squash the commits into one (or fewer) commits?
compiler/rustc_trait_selection/src/traits/error_reporting/type_err_ctxt_ext.rs
Show resolved
Hide resolved
9e0d856 to
f0114a1
Compare
|
@fmease |
|
@rustbot ready |
This comment has been minimized.
This comment has been minimized.
|
CI still has errors, please fix them. If you have any questions regarding the failures, don't hesitate to reach out and ask them! |
This comment has been minimized.
This comment has been minimized.
40b99a9 to
31e581e
Compare
|
@fmease Thank you! All tests are passed. |
|
@bors r+ rollup |
Rollup of 7 pull requests Successful merges: - rust-lang#120929 (Wrap dyn type with parentheses in suggestion) - rust-lang#122591 (Suggest using type args directly instead of equality constraint) - rust-lang#122598 (deref patterns: lower deref patterns to MIR) - rust-lang#123048 (alloc::Layout: explicitly document size invariant on the type level) - rust-lang#123993 (Do `check_coroutine_obligations` once per typeck root) - rust-lang#124218 (Allow nesting subdiagnostics in #[derive(Subdiagnostic)]) - rust-lang#124285 (Mark ``@RUSTC_BUILTIN`` search path usage as unstable) r? `@ghost` `@rustbot` modify labels: rollup
Rollup merge of rust-lang#120929 - long-long-float:wrap-dyn-in-suggestion, r=fmease Wrap dyn type with parentheses in suggestion Close rust-lang#120223 Fix wrong suggestion that is grammatically incorrect. Specifically, I added parentheses to dyn types that need lifetime bound. ``` help: consider adding an explicit lifetime bound | 4 | executor: impl FnOnce(T) -> (dyn Future<Output = ()>) + 'static, | + +++++++++++ ```
Close #120223
Fix wrong suggestion that is grammatically incorrect.
Specifically, I added parentheses to dyn types that need lifetime bound.