return;
}
let mut err = self.need_type_info_err(body_id, span, self_ty, ErrorCode::E0283);
- err.note(&format!("cannot resolve `{}`", predicate));
+ err.note(&format!("cannot satisfy `{}`", predicate));
if let ObligationCauseCode::ItemObligation(def_id) = obligation.cause.code {
self.suggest_fully_qualified_path(&mut err, def_id, span, trait_ref.def_id());
} else if let (
// LL | const fn const_val<T: Sized>() -> usize {
// | --------- - required by this bound in `Tt::const_val`
// |
- // = note: cannot resolve `_: Tt`
+ // = note: cannot satisfy `_: Tt`
err.span_suggestion_verbose(
span.shrink_to_hi(),
return;
}
let mut err = self.need_type_info_err(body_id, span, self_ty, ErrorCode::E0284);
- err.note(&format!("cannot resolve `{}`", predicate));
+ err.note(&format!("cannot satisfy `{}`", predicate));
err
}
self.tcx.sess,
span,
E0284,
- "type annotations needed: cannot resolve `{}`",
+ "type annotations needed: cannot satisfy `{}`",
predicate,
);
- err.span_label(span, &format!("cannot resolve `{}`", predicate));
+ err.span_label(span, &format!("cannot satisfy `{}`", predicate));
err
}
};
| cannot infer type
| help: use the fully qualified path to an implementation: `<Type as A>::C`
|
- = note: cannot resolve `_: A`
+ = note: cannot satisfy `_: A`
= note: associated constants cannot be accessed directly on a `trait`, they can only be accessed through a specific `impl`
error[E0283]: type annotations needed
| cannot infer type
| help: use the fully qualified path to an implementation: `<Type as A>::C`
|
- = note: cannot resolve `_: A`
+ = note: cannot satisfy `_: A`
= note: associated constants cannot be accessed directly on a `trait`, they can only be accessed through a specific `impl`
error: aborting due to 2 previous errors
| cannot infer type
| help: use the fully qualified path to an implementation: `<Type as Bar>::X`
|
- = note: cannot resolve `_: Bar`
+ = note: cannot satisfy `_: Bar`
= note: associated constants cannot be accessed directly on a `trait`, they can only be accessed through a specific `impl`
error: aborting due to 2 previous errors
LL | trait Bar: Foo<Item = u32> {}
| ^^^^^^^^^^^^^^^ cannot infer type for type parameter `Self`
|
- = note: cannot resolve `<Self as std::iter::Iterator>::Item == i32`
+ = note: cannot satisfy `<Self as std::iter::Iterator>::Item == i32`
error[E0284]: type annotations needed
--> $DIR/associated-types-overridden-binding.rs:7:21
LL | trait U32Iterator = I32Iterator<Item = u32>;
| ^^^^^^^^^^^^^^^^^^^^^^^ cannot infer type for type parameter `Self`
|
- = note: cannot resolve `<Self as std::iter::Iterator>::Item == i32`
+ = note: cannot satisfy `<Self as std::iter::Iterator>::Item == i32`
error: aborting due to 2 previous errors
LL | let x: isize = Foo::bar();
| ^^^^^^^^ cannot infer type
|
- = note: cannot resolve `<_ as Foo>::A == _`
+ = note: cannot satisfy `<_ as Foo>::A == _`
error: aborting due to previous error
LL | let cont: u32 = Generator::create();
| ^^^^^^^^^^^^^^^^^ cannot infer type
|
- = note: cannot resolve `_: Generator`
+ = note: cannot satisfy `_: Generator`
error: aborting due to previous error
LL | self.input_stream(&mut stream);
| ^^^^^^^^^^^^ cannot infer type for type parameter `H` declared on the trait `StreamHash`
|
- = note: cannot resolve `<_ as StreamHasher>::S == <H as StreamHasher>::S`
+ = note: cannot satisfy `<_ as StreamHasher>::S == <H as StreamHasher>::S`
error: aborting due to previous error
LL | where &'a T : Foo,
| ^^^ cannot infer type for reference `&'a T`
|
- = note: cannot resolve `&'a T: Foo`
+ = note: cannot satisfy `&'a T: Foo`
error: aborting due to previous error
LL | impl <'l0, 'l1, T0> Trait1<'l0, T0> for bool where T0 : Trait0<'l0>, T0 : Trait0<'l1> {}
| ^^^^^^^^^^^ cannot infer type for type parameter `T0`
|
- = note: cannot resolve `T0: Trait0<'l0>`
+ = note: cannot satisfy `T0: Trait0<'l0>`
error: aborting due to previous error
LL | let _ = <S5<_>>::xxx;
| ^^^^^^^^^^^^ cannot infer type for struct `S5<_>`
|
- = note: cannot resolve `S5<_>: Foo`
+ = note: cannot satisfy `S5<_>: Foo`
error: aborting due to previous error
LL | const fn const_val<T: Sized>() -> usize {
| --------- - required by this bound in `Tt::const_val`
|
- = note: cannot resolve `_: Tt`
+ = note: cannot satisfy `_: Tt`
error[E0080]: evaluation of constant value failed
--> $DIR/issue-54954.rs:13:15
| cannot infer type
| help: use the fully qualified path to an implementation: `<Type as Foo>::SIZE`
|
- = note: cannot resolve `_: Foo`
+ = note: cannot satisfy `_: Foo`
= note: associated constants cannot be accessed directly on a `trait`, they can only be accessed through a specific `impl`
error: aborting due to 2 previous errors
LL | l.iter().map(f).collect()?
| ^^^^^^^ cannot infer type
|
- = note: cannot resolve `<_ as std::ops::Try>::Ok == _`
+ = note: cannot satisfy `<_ as std::ops::Try>::Ok == _`
help: consider specifying the type argument in the method call
|
LL | l.iter().map(f).collect::<B>()?
LL | let _f: base::Foo = base::HasNew::new();
| ^^^^^^^^^^^^^^^^^ cannot infer type
|
- = note: cannot resolve `_: base::HasNew<base::Foo>`
+ = note: cannot satisfy `_: base::HasNew<base::Foo>`
error: aborting due to previous error
foo(42);
//~^ ERROR type annotations needed
//~| NOTE cannot infer type
- //~| NOTE cannot resolve
+ //~| NOTE cannot satisfy
}
LL | foo(42);
| ^^^ cannot infer type for type parameter `T` declared on the function `foo`
|
- = note: cannot resolve `_: std::convert::Into<std::string::String>`
+ = note: cannot satisfy `_: std::convert::Into<std::string::String>`
help: consider specifying the type argument in the function call
|
LL | foo::<T>(42);
LL | where &'a T : Foo,
| ^^^ cannot infer type for reference `&'a T`
|
- = note: cannot resolve `&'a T: Foo`
+ = note: cannot satisfy `&'a T: Foo`
error: aborting due to previous error