Taking review hints into account.
This commit is contained in:
parent
bfcd191905
commit
574bee35fb
3 changed files with 8 additions and 9 deletions
|
@ -866,7 +866,7 @@ impl<'a, 'tcx> InferCtxtExt<'tcx> for InferCtxt<'a, 'tcx> {
|
|||
return false;
|
||||
}
|
||||
|
||||
// This is a quick fix to resolve an ICE ([issue#96223](https://github.com/rust-lang/rust/issues/96223)).
|
||||
// This is a quick fix to resolve an ICE (#96223).
|
||||
// This change should probably be deeper.
|
||||
// As suggested by @jackh726, `mk_trait_obligation_with_new_self_ty` could take a `Binder<(TraitRef, Ty)>
|
||||
// instead of `Binder<Ty>` leading to some changes to its call places.
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
// Test case for #96223.
|
||||
// An ICE was triggered because of a failed assertion.
|
||||
// Thanks to @Manishearth for the minimal test case.
|
||||
// Previously ICEd because we didn't properly track binders in suggestions
|
||||
// check-fail
|
||||
|
||||
pub trait Foo<'de>: Sized {}
|
||||
|
||||
|
@ -47,7 +46,7 @@ fn icey_bounds<D: Dummy<EmptyMarker>>(p: &D) {}
|
|||
|
||||
fn trigger_ice() {
|
||||
let p = Empty;
|
||||
icey_bounds(&p); //~ERROR
|
||||
icey_bounds(&p); //~ERROR the trait bound
|
||||
}
|
||||
|
||||
fn main() {}
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
error[E0277]: the trait bound `for<'de> EmptyBis<'de>: Foo<'_>` is not satisfied
|
||||
--> $DIR/issue-96223.rs:50:17
|
||||
--> $DIR/issue-96223.rs:49:17
|
||||
|
|
||||
LL | icey_bounds(&p);
|
||||
| ----------- ^^ the trait `for<'de> Foo<'_>` is not implemented for `EmptyBis<'de>`
|
||||
|
@ -8,17 +8,17 @@ LL | icey_bounds(&p);
|
|||
|
|
||||
= help: the trait `Foo<'de>` is implemented for `Baz<T>`
|
||||
note: required because of the requirements on the impl of `for<'de> Foo<'de>` for `Baz<EmptyBis<'de>>`
|
||||
--> $DIR/issue-96223.rs:17:14
|
||||
--> $DIR/issue-96223.rs:16:14
|
||||
|
|
||||
LL | impl<'de, T> Foo<'de> for Baz<T> where T: Foo<'de> {}
|
||||
| ^^^^^^^^ ^^^^^^
|
||||
note: required because of the requirements on the impl of `Dummy<EmptyMarker>` for `Empty`
|
||||
--> $DIR/issue-96223.rs:21:9
|
||||
--> $DIR/issue-96223.rs:20:9
|
||||
|
|
||||
LL | impl<M> Dummy<M> for Empty
|
||||
| ^^^^^^^^ ^^^^^
|
||||
note: required by a bound in `icey_bounds`
|
||||
--> $DIR/issue-96223.rs:46:19
|
||||
--> $DIR/issue-96223.rs:45:19
|
||||
|
|
||||
LL | fn icey_bounds<D: Dummy<EmptyMarker>>(p: &D) {}
|
||||
| ^^^^^^^^^^^^^^^^^^ required by this bound in `icey_bounds`
|
||||
|
|
Loading…
Add table
Reference in a new issue