-
Notifications
You must be signed in to change notification settings - Fork 12.8k
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
Rollup of 11 pull requests #66141
Rollup of 11 pull requests #66141
Conversation
Part of rust-lang#47319. This just adds type parameter name to type mismatch error message, so e.g. the following: ``` expected enum `std::option::Option`, found type parameter ``` becomes ``` expected enum `std::option::Option`, found type parameter `T` ```
Fixes rust-lang#47319. Shows the type parameter definition(s) on type mismatch errors so the context is clearer. Pretty much changes the following: ``` LL | bar1(t); | ^ | | | expected enum `std::option::Option`, found type parameter `T` ``` into: ``` LL | fn foo1<T>(t: T) { | - this type parameter LL | bar1(t); | ^ | | | expected enum `std::option::Option`, found type parameter `T` ```
Update the tests to reflect changes to how type mismatch errors are reported (two previous commits).
Type parameters are referenced in the error message after the previous few commits (using span label). But when the main error message already references the very same type parameter it becomes clumsy. Do not show the additional label in this case as per code review comment by @estebank. Also this contains a small style fix.
Handling issue rust-lang#66105 in Rust repo. `evaluate an constant expression` to `evaluate a constant expression`
…s_derving_copy`.
When `break;` has a type mismatch because the `Destination` points at a tail expression with an obligation flowing from a return type, point at the return type. Fix rust-lang#39968.
…trochenkov Remove `PartialEq` and `Eq` from the `SpecialDerives`. Now that PR rust-lang#65519 landed, this is the follow-on work of removing `PartialEq` and `Eq` from the set of `SpecialDerives` .
…tion, r=estebank Show type parameter name and definition in type mismatch error messages Fixes rust-lang#47319 r? estebank
…, r=alexcrichton Move has_panic_handler to query Moves us off of a global Once instead re-querying the lang item each time. The conditions on when we set it to true change a little (previously we'd make sure a few more lang items were `Some`) but I think they in practice don't matter, we won't compile later on if we don't have them.
syntax: Avoid span arithmetic for delimiter tokens The +/-1 logic is from the time where the whole group had a single span and the delimiter spans had to be calculated from it. Now the delimiters have their own spans which are constructed by lexer or proc macro API and can be used directly. If those spans are not perfect, then it should be fixed by tweaking the corresponding lexer logic rather than by trying to add or substract `1` from the span boundaries. Fixes rust-lang#62524 r? @estebank
use silent emitter for rustdoc highlighting pass Partially addresses rust-lang#63284.
let caller of check_ptr_access_align control the error message This is needed for rust-lang/miri#1031
Do not ICE with a precision flag in formatting str and no format arguments Fix rust-lang#66065.
…tril Detect `::` -> `:` typo when involving turbofish Fix rust-lang#65569.
Tweak type mismatch caused by break on tail expr When `break;` has a type mismatch because the `Destination` points at a tail expression with an obligation flowing from a return type, point at the return type. Fix rust-lang#39968.
Fix typo in explanation of `E0080` Handling issue rust-lang#66105 in Rust repo. `evaluate an constant expression` to `evaluate a constant expression`
…erister rustc: remove "GlobalMetaData" dead code from hir::map::definitions. Spotted while refactoring uses of `DefIndex` and/or `LocalDefId`. r? @michaelwoerister
@bors r+ p=11 rollup=never |
📌 Commit 35a5ffc has been approved by |
Rollup of 11 pull requests Successful merges: - #65892 (Remove `PartialEq` and `Eq` from the `SpecialDerives`.) - #66014 (Show type parameter name and definition in type mismatch error messages ) - #66027 (Move has_panic_handler to query) - #66054 (syntax: Avoid span arithmetic for delimiter tokens) - #66068 (use silent emitter for rustdoc highlighting pass) - #66081 (let caller of check_ptr_access_align control the error message) - #66093 (Do not ICE with a precision flag in formatting str and no format arguments) - #66098 (Detect `::` -> `:` typo when involving turbofish) - #66101 (Tweak type mismatch caused by break on tail expr) - #66106 (Fix typo in explanation of `E0080`) - #66115 (rustc: remove "GlobalMetaData" dead code from hir::map::definitions.) Failed merges: r? @ghost
☀️ Test successful - checks-azure |
📣 Toolstate changed by #66141! Tested on commit e4931ea. 💔 clippy-driver on windows: test-pass → test-fail (cc @mcarton @oli-obk @Manishearth @flip1995 @yaahc @phansch @llogiq, @rust-lang/infra). |
Tested on commit rust-lang/rust@e4931ea. Direct link to PR: <rust-lang/rust#66141> 💔 clippy-driver on windows: test-pass → test-fail (cc @mcarton @oli-obk @Manishearth @flip1995 @yaahc @phansch @llogiq, @rust-lang/infra). 💔 clippy-driver on linux: test-pass → test-fail (cc @mcarton @oli-obk @Manishearth @flip1995 @yaahc @phansch @llogiq, @rust-lang/infra).
Successful merges:
PartialEq
andEq
from theSpecialDerives
. #65892 (RemovePartialEq
andEq
from theSpecialDerives
.)::
->:
typo when involving turbofish #66098 (Detect::
->:
typo when involving turbofish)E0080
#66106 (Fix typo in explanation ofE0080
)Failed merges:
r? @ghost