Tweak spans for E0599
This commit is contained in:
parent
0f118f6a6c
commit
1b0ab0b8a9
@ -69,13 +69,17 @@ impl<'a, 'gcx, 'tcx> FnCtxt<'a, 'gcx, 'tcx> {
|
|||||||
error: MethodError<'tcx>,
|
error: MethodError<'tcx>,
|
||||||
args: Option<&'gcx [hir::Expr]>,
|
args: Option<&'gcx [hir::Expr]>,
|
||||||
) {
|
) {
|
||||||
|
let mut span = span;
|
||||||
// Avoid suggestions when we don't know what's going on.
|
// Avoid suggestions when we don't know what's going on.
|
||||||
if rcvr_ty.references_error() {
|
if rcvr_ty.references_error() {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
let report_candidates = |err: &mut DiagnosticBuilder<'_>,
|
let report_candidates = |
|
||||||
mut sources: Vec<CandidateSource>| {
|
span: Span,
|
||||||
|
err: &mut DiagnosticBuilder<'_>,
|
||||||
|
mut sources: Vec<CandidateSource>,
|
||||||
|
| {
|
||||||
sources.sort();
|
sources.sort();
|
||||||
sources.dedup();
|
sources.dedup();
|
||||||
// Dynamic limit to avoid hiding just one candidate, which is silly.
|
// Dynamic limit to avoid hiding just one candidate, which is silly.
|
||||||
@ -293,9 +297,10 @@ impl<'a, 'gcx, 'tcx> FnCtxt<'a, 'gcx, 'tcx> {
|
|||||||
err.emit();
|
err.emit();
|
||||||
return;
|
return;
|
||||||
} else {
|
} else {
|
||||||
|
span = item_name.span;
|
||||||
let mut err = struct_span_err!(
|
let mut err = struct_span_err!(
|
||||||
tcx.sess,
|
tcx.sess,
|
||||||
item_name.span,
|
span,
|
||||||
E0599,
|
E0599,
|
||||||
"no {} named `{}` found for type `{}` in the current scope",
|
"no {} named `{}` found for type `{}` in the current scope",
|
||||||
item_kind,
|
item_kind,
|
||||||
@ -305,7 +310,7 @@ impl<'a, 'gcx, 'tcx> FnCtxt<'a, 'gcx, 'tcx> {
|
|||||||
if let Some(suggestion) = suggestion {
|
if let Some(suggestion) = suggestion {
|
||||||
// enum variant
|
// enum variant
|
||||||
err.span_suggestion(
|
err.span_suggestion(
|
||||||
item_name.span,
|
span,
|
||||||
"did you mean",
|
"did you mean",
|
||||||
suggestion.to_string(),
|
suggestion.to_string(),
|
||||||
Applicability::MaybeIncorrect,
|
Applicability::MaybeIncorrect,
|
||||||
@ -434,9 +439,9 @@ impl<'a, 'gcx, 'tcx> FnCtxt<'a, 'gcx, 'tcx> {
|
|||||||
self.ty_to_string(actual), item_name));
|
self.ty_to_string(actual), item_name));
|
||||||
}
|
}
|
||||||
|
|
||||||
report_candidates(&mut err, static_sources);
|
report_candidates(span, &mut err, static_sources);
|
||||||
} else if static_sources.len() > 1 {
|
} else if static_sources.len() > 1 {
|
||||||
report_candidates(&mut err, static_sources);
|
report_candidates(span, &mut err, static_sources);
|
||||||
}
|
}
|
||||||
|
|
||||||
if !unsatisfied_predicates.is_empty() {
|
if !unsatisfied_predicates.is_empty() {
|
||||||
@ -481,7 +486,7 @@ impl<'a, 'gcx, 'tcx> FnCtxt<'a, 'gcx, 'tcx> {
|
|||||||
"multiple applicable items in scope");
|
"multiple applicable items in scope");
|
||||||
err.span_label(span, format!("multiple `{}` found", item_name));
|
err.span_label(span, format!("multiple `{}` found", item_name));
|
||||||
|
|
||||||
report_candidates(&mut err, sources);
|
report_candidates(span, &mut err, sources);
|
||||||
err.emit();
|
err.emit();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2,9 +2,7 @@ error[E0599]: no associated item named `ID` found for type `i32` in the current
|
|||||||
--> $DIR/associated-const-no-item.rs:5:23
|
--> $DIR/associated-const-no-item.rs:5:23
|
||||||
|
|
|
|
||||||
LL | const X: i32 = <i32>::ID;
|
LL | const X: i32 = <i32>::ID;
|
||||||
| -------^^
|
| ^^ associated item not found in `i32`
|
||||||
| |
|
|
||||||
| associated item not found in `i32`
|
|
||||||
|
|
|
|
||||||
= help: items from traits can only be used if the trait is implemented and in scope
|
= help: items from traits can only be used if the trait is implemented and in scope
|
||||||
= note: the following trait defines an item `ID`, perhaps you need to implement it:
|
= note: the following trait defines an item `ID`, perhaps you need to implement it:
|
||||||
|
@ -5,7 +5,7 @@ LL | enum Color { Rgb(isize, isize, isize), Rgba(isize, isize, isize, isize), }
|
|||||||
| ---------- variant `Hsl` not found here
|
| ---------- variant `Hsl` not found here
|
||||||
...
|
...
|
||||||
LL | Color::Hsl(h, s, l) => { println!("hsl"); }
|
LL | Color::Hsl(h, s, l) => { println!("hsl"); }
|
||||||
| -------^^^--------- variant not found in `Color`
|
| ^^^ variant not found in `Color`
|
||||||
|
|
||||||
error: aborting due to previous error
|
error: aborting due to previous error
|
||||||
|
|
||||||
|
@ -41,33 +41,25 @@ error[E0599]: no associated item named `AssocItem` found for type `[u8]` in the
|
|||||||
--> $DIR/bad-assoc-pat.rs:3:15
|
--> $DIR/bad-assoc-pat.rs:3:15
|
||||||
|
|
|
|
||||||
LL | [u8]::AssocItem => {}
|
LL | [u8]::AssocItem => {}
|
||||||
| ------^^^^^^^^^
|
| ^^^^^^^^^ associated item not found in `[u8]`
|
||||||
| |
|
|
||||||
| associated item not found in `[u8]`
|
|
||||||
|
|
||||||
error[E0599]: no associated item named `AssocItem` found for type `(u8, u8)` in the current scope
|
error[E0599]: no associated item named `AssocItem` found for type `(u8, u8)` in the current scope
|
||||||
--> $DIR/bad-assoc-pat.rs:6:19
|
--> $DIR/bad-assoc-pat.rs:6:19
|
||||||
|
|
|
|
||||||
LL | (u8, u8)::AssocItem => {}
|
LL | (u8, u8)::AssocItem => {}
|
||||||
| ----------^^^^^^^^^
|
| ^^^^^^^^^ associated item not found in `(u8, u8)`
|
||||||
| |
|
|
||||||
| associated item not found in `(u8, u8)`
|
|
||||||
|
|
||||||
error[E0599]: no associated item named `AssocItem` found for type `_` in the current scope
|
error[E0599]: no associated item named `AssocItem` found for type `_` in the current scope
|
||||||
--> $DIR/bad-assoc-pat.rs:9:12
|
--> $DIR/bad-assoc-pat.rs:9:12
|
||||||
|
|
|
|
||||||
LL | _::AssocItem => {}
|
LL | _::AssocItem => {}
|
||||||
| ---^^^^^^^^^
|
| ^^^^^^^^^ associated item not found in `_`
|
||||||
| |
|
|
||||||
| associated item not found in `_`
|
|
||||||
|
|
||||||
error[E0599]: no associated item named `AssocItem` found for type `(u8,)` in the current scope
|
error[E0599]: no associated item named `AssocItem` found for type `(u8,)` in the current scope
|
||||||
--> $DIR/bad-assoc-pat.rs:14:17
|
--> $DIR/bad-assoc-pat.rs:14:17
|
||||||
|
|
|
|
||||||
LL | &(u8,)::AssocItem => {}
|
LL | &(u8,)::AssocItem => {}
|
||||||
| -------^^^^^^^^^
|
| ^^^^^^^^^ associated item not found in `(u8,)`
|
||||||
| |
|
|
||||||
| associated item not found in `(u8,)`
|
|
||||||
|
|
||||||
error[E0599]: no associated item named `AssocItem` found for type `u8` in the current scope
|
error[E0599]: no associated item named `AssocItem` found for type `u8` in the current scope
|
||||||
--> $DIR/bad-assoc-pat.rs:21:24
|
--> $DIR/bad-assoc-pat.rs:21:24
|
||||||
|
@ -5,9 +5,7 @@ LL | struct T;
|
|||||||
| --------- function or associated item `new` not found for this
|
| --------- function or associated item `new` not found for this
|
||||||
...
|
...
|
||||||
LL | T::new();
|
LL | T::new();
|
||||||
| ---^^^
|
| ^^^ function or associated item not found in `T`
|
||||||
| |
|
|
||||||
| function or associated item not found in `T`
|
|
||||||
|
|
||||||
error: aborting due to previous error
|
error: aborting due to previous error
|
||||||
|
|
||||||
|
@ -50,19 +50,19 @@ error[E0599]: no variant named `Empty3` found for type `empty_struct::XE` in the
|
|||||||
--> $DIR/empty-struct-braces-expr.rs:22:19
|
--> $DIR/empty-struct-braces-expr.rs:22:19
|
||||||
|
|
|
|
||||||
LL | let xe3 = XE::Empty3;
|
LL | let xe3 = XE::Empty3;
|
||||||
| ----^^^^^^
|
| ^^^^^^
|
||||||
| | |
|
| |
|
||||||
| | help: did you mean: `XEmpty3`
|
| variant not found in `empty_struct::XE`
|
||||||
| variant not found in `empty_struct::XE`
|
| help: did you mean: `XEmpty3`
|
||||||
|
|
||||||
error[E0599]: no variant named `Empty3` found for type `empty_struct::XE` in the current scope
|
error[E0599]: no variant named `Empty3` found for type `empty_struct::XE` in the current scope
|
||||||
--> $DIR/empty-struct-braces-expr.rs:23:19
|
--> $DIR/empty-struct-braces-expr.rs:23:19
|
||||||
|
|
|
|
||||||
LL | let xe3 = XE::Empty3();
|
LL | let xe3 = XE::Empty3();
|
||||||
| ----^^^^^^
|
| ^^^^^^
|
||||||
| | |
|
| |
|
||||||
| | help: did you mean: `XEmpty3`
|
| variant not found in `empty_struct::XE`
|
||||||
| variant not found in `empty_struct::XE`
|
| help: did you mean: `XEmpty3`
|
||||||
|
|
||||||
error: aborting due to 8 previous errors
|
error: aborting due to 8 previous errors
|
||||||
|
|
||||||
|
@ -5,7 +5,7 @@ LL | struct Foo;
|
|||||||
| ----------- associated item `NotEvenReal` not found for this
|
| ----------- associated item `NotEvenReal` not found for this
|
||||||
...
|
...
|
||||||
LL | || if let Foo::NotEvenReal() = Foo {};
|
LL | || if let Foo::NotEvenReal() = Foo {};
|
||||||
| -----^^^^^^^^^^^-- associated item not found in `Foo`
|
| ^^^^^^^^^^^ associated item not found in `Foo`
|
||||||
|
|
||||||
error: aborting due to previous error
|
error: aborting due to previous error
|
||||||
|
|
||||||
|
@ -2,9 +2,7 @@ error[E0599]: no associated item named `DOESNOTEXIST` found for type `u32` in th
|
|||||||
--> $DIR/invalid-path-in-const.rs:2:23
|
--> $DIR/invalid-path-in-const.rs:2:23
|
||||||
|
|
|
|
||||||
LL | fn f(a: [u8; u32::DOESNOTEXIST]) {}
|
LL | fn f(a: [u8; u32::DOESNOTEXIST]) {}
|
||||||
| -----^^^^^^^^^^^^
|
| ^^^^^^^^^^^^ associated item not found in `u32`
|
||||||
| |
|
|
||||||
| associated item not found in `u32`
|
|
||||||
|
|
||||||
error: aborting due to previous error
|
error: aborting due to previous error
|
||||||
|
|
||||||
|
@ -5,9 +5,7 @@ LL | enum Delicious {
|
|||||||
| -------------- variant `PIE` not found here
|
| -------------- variant `PIE` not found here
|
||||||
...
|
...
|
||||||
LL | ApplePie = Delicious::Apple as isize | Delicious::PIE as isize,
|
LL | ApplePie = Delicious::Apple as isize | Delicious::PIE as isize,
|
||||||
| -----------^^^
|
| ^^^ variant not found in `Delicious`
|
||||||
| |
|
|
||||||
| variant not found in `Delicious`
|
|
||||||
|
|
||||||
error: aborting due to previous error
|
error: aborting due to previous error
|
||||||
|
|
||||||
|
@ -2,9 +2,7 @@ error[E0599]: no associated item named `MIN` found for type `u8` in the current
|
|||||||
--> $DIR/issue-22933-3.rs:1:22
|
--> $DIR/issue-22933-3.rs:1:22
|
||||||
|
|
|
|
||||||
LL | const FOO: [u32; u8::MIN as usize] = [];
|
LL | const FOO: [u32; u8::MIN as usize] = [];
|
||||||
| ----^^^
|
| ^^^ associated item not found in `u8`
|
||||||
| |
|
|
||||||
| associated item not found in `u8`
|
|
||||||
|
|
||||||
error: aborting due to previous error
|
error: aborting due to previous error
|
||||||
|
|
||||||
|
@ -5,9 +5,7 @@ LL | enum Token { LeftParen, RightParen, Plus, Minus, /* etc */ }
|
|||||||
| ---------- variant `Homura` not found here
|
| ---------- variant `Homura` not found here
|
||||||
...
|
...
|
||||||
LL | use_token(&Token::Homura);
|
LL | use_token(&Token::Homura);
|
||||||
| -------^^^^^^
|
| ^^^^^^ variant not found in `Token`
|
||||||
| |
|
|
||||||
| variant not found in `Token`
|
|
||||||
|
|
||||||
error[E0599]: no function or associated item named `method` found for type `Struct` in the current scope
|
error[E0599]: no function or associated item named `method` found for type `Struct` in the current scope
|
||||||
--> $DIR/issue-23173.rs:11:13
|
--> $DIR/issue-23173.rs:11:13
|
||||||
@ -16,9 +14,7 @@ LL | struct Struct {
|
|||||||
| ------------- function or associated item `method` not found for this
|
| ------------- function or associated item `method` not found for this
|
||||||
...
|
...
|
||||||
LL | Struct::method();
|
LL | Struct::method();
|
||||||
| --------^^^^^^
|
| ^^^^^^ function or associated item not found in `Struct`
|
||||||
| |
|
|
||||||
| function or associated item not found in `Struct`
|
|
||||||
|
|
||||||
error[E0599]: no function or associated item named `method` found for type `Struct` in the current scope
|
error[E0599]: no function or associated item named `method` found for type `Struct` in the current scope
|
||||||
--> $DIR/issue-23173.rs:13:13
|
--> $DIR/issue-23173.rs:13:13
|
||||||
@ -27,9 +23,7 @@ LL | struct Struct {
|
|||||||
| ------------- function or associated item `method` not found for this
|
| ------------- function or associated item `method` not found for this
|
||||||
...
|
...
|
||||||
LL | Struct::method;
|
LL | Struct::method;
|
||||||
| --------^^^^^^
|
| ^^^^^^ function or associated item not found in `Struct`
|
||||||
| |
|
|
||||||
| function or associated item not found in `Struct`
|
|
||||||
|
|
||||||
error[E0599]: no associated item named `Assoc` found for type `Struct` in the current scope
|
error[E0599]: no associated item named `Assoc` found for type `Struct` in the current scope
|
||||||
--> $DIR/issue-23173.rs:15:13
|
--> $DIR/issue-23173.rs:15:13
|
||||||
@ -38,9 +32,7 @@ LL | struct Struct {
|
|||||||
| ------------- associated item `Assoc` not found for this
|
| ------------- associated item `Assoc` not found for this
|
||||||
...
|
...
|
||||||
LL | Struct::Assoc;
|
LL | Struct::Assoc;
|
||||||
| --------^^^^^
|
| ^^^^^ associated item not found in `Struct`
|
||||||
| |
|
|
||||||
| associated item not found in `Struct`
|
|
||||||
|
|
||||||
error: aborting due to 4 previous errors
|
error: aborting due to 4 previous errors
|
||||||
|
|
||||||
|
@ -4,10 +4,10 @@ error[E0599]: no variant named `A` found for type `SomeEnum` in the current scop
|
|||||||
LL | pub enum SomeEnum {
|
LL | pub enum SomeEnum {
|
||||||
| ----------------- variant `A` not found here
|
| ----------------- variant `A` not found here
|
||||||
LL | B = SomeEnum::A,
|
LL | B = SomeEnum::A,
|
||||||
| ----------^
|
| ^
|
||||||
| | |
|
| |
|
||||||
| | help: did you mean: `B`
|
| variant not found in `SomeEnum`
|
||||||
| variant not found in `SomeEnum`
|
| help: did you mean: `B`
|
||||||
|
|
||||||
error: aborting due to previous error
|
error: aborting due to previous error
|
||||||
|
|
||||||
|
@ -8,10 +8,10 @@ error[E0599]: no function or associated item named `bitor` found for type `dyn s
|
|||||||
--> $DIR/issue-28344.rs:4:25
|
--> $DIR/issue-28344.rs:4:25
|
||||||
|
|
|
|
||||||
LL | let x: u8 = BitXor::bitor(0 as u8, 0 as u8);
|
LL | let x: u8 = BitXor::bitor(0 as u8, 0 as u8);
|
||||||
| --------^^^^^
|
| ^^^^^
|
||||||
| |
|
| |
|
||||||
| function or associated item not found in `dyn std::ops::BitXor<_>`
|
| function or associated item not found in `dyn std::ops::BitXor<_>`
|
||||||
| help: did you mean: `bitxor`
|
| help: did you mean: `bitxor`
|
||||||
|
|
||||||
error[E0191]: the value of the associated type `Output` (from the trait `std::ops::BitXor`) must be specified
|
error[E0191]: the value of the associated type `Output` (from the trait `std::ops::BitXor`) must be specified
|
||||||
--> $DIR/issue-28344.rs:8:13
|
--> $DIR/issue-28344.rs:8:13
|
||||||
@ -23,10 +23,10 @@ error[E0599]: no function or associated item named `bitor` found for type `dyn s
|
|||||||
--> $DIR/issue-28344.rs:8:21
|
--> $DIR/issue-28344.rs:8:21
|
||||||
|
|
|
|
||||||
LL | let g = BitXor::bitor;
|
LL | let g = BitXor::bitor;
|
||||||
| --------^^^^^
|
| ^^^^^
|
||||||
| |
|
| |
|
||||||
| function or associated item not found in `dyn std::ops::BitXor<_>`
|
| function or associated item not found in `dyn std::ops::BitXor<_>`
|
||||||
| help: did you mean: `bitxor`
|
| help: did you mean: `bitxor`
|
||||||
|
|
||||||
error: aborting due to 4 previous errors
|
error: aborting due to 4 previous errors
|
||||||
|
|
||||||
|
@ -2,9 +2,7 @@ error[E0599]: no associated item named `BYTES` found for type `usize` in the cur
|
|||||||
--> $DIR/issue-28586.rs:4:26
|
--> $DIR/issue-28586.rs:4:26
|
||||||
|
|
|
|
||||||
LL | impl Foo for [u8; usize::BYTES] {}
|
LL | impl Foo for [u8; usize::BYTES] {}
|
||||||
| -------^^^^^
|
| ^^^^^ associated item not found in `usize`
|
||||||
| |
|
|
||||||
| associated item not found in `usize`
|
|
||||||
|
|
||||||
error: aborting due to previous error
|
error: aborting due to previous error
|
||||||
|
|
||||||
|
@ -5,10 +5,10 @@ LL | enum Foo {
|
|||||||
| -------- variant `Baz` not found here
|
| -------- variant `Baz` not found here
|
||||||
...
|
...
|
||||||
LL | Foo::Baz(..) => (),
|
LL | Foo::Baz(..) => (),
|
||||||
| -----^^^----
|
| ^^^
|
||||||
| | |
|
| |
|
||||||
| | help: did you mean: `Bar`
|
| variant not found in `Foo`
|
||||||
| variant not found in `Foo`
|
| help: did you mean: `Bar`
|
||||||
|
|
||||||
error: aborting due to previous error
|
error: aborting due to previous error
|
||||||
|
|
||||||
|
@ -2,9 +2,7 @@ error[E0599]: no function or associated item named `new_undirected` found for ty
|
|||||||
--> $DIR/issue-30123.rs:7:33
|
--> $DIR/issue-30123.rs:7:33
|
||||||
|
|
|
|
||||||
LL | let ug = Graph::<i32, i32>::new_undirected();
|
LL | let ug = Graph::<i32, i32>::new_undirected();
|
||||||
| -------------------^^^^^^^^^^^^^^
|
| ^^^^^^^^^^^^^^ function or associated item not found in `issue_30123_aux::Graph<i32, i32>`
|
||||||
| |
|
|
||||||
| function or associated item not found in `issue_30123_aux::Graph<i32, i32>`
|
|
||||||
|
|
||||||
error: aborting due to previous error
|
error: aborting due to previous error
|
||||||
|
|
||||||
|
@ -2,9 +2,7 @@ error[E0599]: no associated item named `Item` found for type `T` in the current
|
|||||||
--> $DIR/issue-38919.rs:2:8
|
--> $DIR/issue-38919.rs:2:8
|
||||||
|
|
|
|
||||||
LL | T::Item;
|
LL | T::Item;
|
||||||
| ---^^^^
|
| ^^^^ associated item not found in `T`
|
||||||
| |
|
|
||||||
| associated item not found in `T`
|
|
||||||
|
|
||||||
error: aborting due to previous error
|
error: aborting due to previous error
|
||||||
|
|
||||||
|
@ -2,9 +2,7 @@ error[E0599]: no function or associated item named `dim` found for type `D` in t
|
|||||||
--> $DIR/issue-39559.rs:14:21
|
--> $DIR/issue-39559.rs:14:21
|
||||||
|
|
|
|
||||||
LL | entries: [T; D::dim()],
|
LL | entries: [T; D::dim()],
|
||||||
| ---^^^
|
| ^^^ function or associated item not found in `D`
|
||||||
| |
|
|
||||||
| function or associated item not found in `D`
|
|
||||||
|
|
|
|
||||||
= help: items from traits can only be used if the trait is implemented and in scope
|
= help: items from traits can only be used if the trait is implemented and in scope
|
||||||
= note: the following trait defines an item `dim`, perhaps you need to implement it:
|
= note: the following trait defines an item `dim`, perhaps you need to implement it:
|
||||||
|
@ -14,9 +14,7 @@ LL | struct Point {
|
|||||||
| ------------ function or associated item `new` not found for this
|
| ------------ function or associated item `new` not found for this
|
||||||
...
|
...
|
||||||
LL | let p = Point::new(0.0, 0.0);
|
LL | let p = Point::new(0.0, 0.0);
|
||||||
| -------^^^
|
| ^^^ function or associated item not found in `Point`
|
||||||
| |
|
|
||||||
| function or associated item not found in `Point`
|
|
||||||
|
|
||||||
error: aborting due to 2 previous errors
|
error: aborting due to 2 previous errors
|
||||||
|
|
||||||
|
@ -2,7 +2,7 @@ error[E0599]: no associated item named `String` found for type `std::string::Str
|
|||||||
--> $DIR/issue-42880.rs:4:22
|
--> $DIR/issue-42880.rs:4:22
|
||||||
|
|
|
|
||||||
LL | let f = |&Value::String(_)| ();
|
LL | let f = |&Value::String(_)| ();
|
||||||
| -------^^^^^^--- associated item not found in `std::string::String`
|
| ^^^^^^ associated item not found in `std::string::String`
|
||||||
|
|
||||||
error: aborting due to previous error
|
error: aborting due to previous error
|
||||||
|
|
||||||
|
@ -2,9 +2,7 @@ error[E0599]: no function or associated item named `make_g` found for type `for<
|
|||||||
--> $DIR/issue-57362-2.rs:22:25
|
--> $DIR/issue-57362-2.rs:22:25
|
||||||
|
|
|
|
||||||
LL | let x = <fn (&())>::make_g();
|
LL | let x = <fn (&())>::make_g();
|
||||||
| ------------^^^^^^
|
| ^^^^^^ function or associated item not found in `for<'r> fn(&'r ())`
|
||||||
| |
|
|
||||||
| function or associated item not found in `for<'r> fn(&'r ())`
|
|
||||||
|
|
|
|
||||||
= help: items from traits can only be used if the trait is implemented and in scope
|
= help: items from traits can only be used if the trait is implemented and in scope
|
||||||
= note: the following trait defines an item `make_g`, perhaps you need to implement it:
|
= note: the following trait defines an item `make_g`, perhaps you need to implement it:
|
||||||
|
@ -5,9 +5,7 @@ LL | struct Foo;
|
|||||||
| ----------- function or associated item `bar` not found for this
|
| ----------- function or associated item `bar` not found for this
|
||||||
...
|
...
|
||||||
LL | Foo::bar();
|
LL | Foo::bar();
|
||||||
| -----^^^
|
| ^^^ function or associated item not found in `Foo`
|
||||||
| |
|
|
||||||
| function or associated item not found in `Foo`
|
|
||||||
|
|
||||||
error: aborting due to previous error
|
error: aborting due to previous error
|
||||||
|
|
||||||
|
@ -12,9 +12,7 @@ error[E0599]: no function or associated item named `f` found for type `Foo` in t
|
|||||||
--> $DIR/lexical-scopes.rs:10:10
|
--> $DIR/lexical-scopes.rs:10:10
|
||||||
|
|
|
|
||||||
LL | Foo::f();
|
LL | Foo::f();
|
||||||
| -----^
|
| ^ function or associated item not found in `Foo`
|
||||||
| |
|
|
||||||
| function or associated item not found in `Foo`
|
|
||||||
|
|
||||||
error: aborting due to 2 previous errors
|
error: aborting due to 2 previous errors
|
||||||
|
|
||||||
|
@ -2,9 +2,7 @@ error[E0599]: no associated item named `XXX` found for type `u32` in the current
|
|||||||
--> $DIR/no-double-error.rs:8:14
|
--> $DIR/no-double-error.rs:8:14
|
||||||
|
|
|
|
||||||
LL | u32::XXX => { }
|
LL | u32::XXX => { }
|
||||||
| -----^^^
|
| ^^^ associated item not found in `u32`
|
||||||
| |
|
|
||||||
| associated item not found in `u32`
|
|
||||||
|
|
||||||
error: aborting due to previous error
|
error: aborting due to previous error
|
||||||
|
|
||||||
|
@ -30,9 +30,7 @@ error[E0599]: no function or associated item named `from_str` found for type `u3
|
|||||||
--> $DIR/trait-import-suggestions.rs:30:18
|
--> $DIR/trait-import-suggestions.rs:30:18
|
||||||
|
|
|
|
||||||
LL | let y = u32::from_str("33");
|
LL | let y = u32::from_str("33");
|
||||||
| -----^^^^^^^^
|
| ^^^^^^^^ function or associated item not found in `u32`
|
||||||
| |
|
|
||||||
| function or associated item not found in `u32`
|
|
||||||
|
|
|
|
||||||
= help: items from traits can only be used if the trait is in scope
|
= help: items from traits can only be used if the trait is in scope
|
||||||
help: the following trait is implemented but not in scope, perhaps add a `use` for it:
|
help: the following trait is implemented but not in scope, perhaps add a `use` for it:
|
||||||
|
@ -39,9 +39,7 @@ LL | struct S;
|
|||||||
| --------- function or associated item `a` not found for this
|
| --------- function or associated item `a` not found for this
|
||||||
...
|
...
|
||||||
LL | S::a(&S);
|
LL | S::a(&S);
|
||||||
| ---^
|
| ^ function or associated item not found in `S`
|
||||||
| |
|
|
||||||
| function or associated item not found in `S`
|
|
||||||
|
|
|
|
||||||
= help: items from traits can only be used if the trait is implemented and in scope
|
= help: items from traits can only be used if the trait is implemented and in scope
|
||||||
= note: the following trait defines an item `a`, perhaps you need to implement it:
|
= note: the following trait defines an item `a`, perhaps you need to implement it:
|
||||||
@ -54,9 +52,7 @@ LL | struct S;
|
|||||||
| --------- function or associated item `b` not found for this
|
| --------- function or associated item `b` not found for this
|
||||||
...
|
...
|
||||||
LL | S::b(&S);
|
LL | S::b(&S);
|
||||||
| ---^
|
| ^ function or associated item not found in `S`
|
||||||
| |
|
|
||||||
| function or associated item not found in `S`
|
|
||||||
|
|
|
|
||||||
= help: items from traits can only be used if the trait is in scope
|
= help: items from traits can only be used if the trait is in scope
|
||||||
help: the following trait is implemented but not in scope, perhaps add a `use` for it:
|
help: the following trait is implemented but not in scope, perhaps add a `use` for it:
|
||||||
@ -77,9 +73,7 @@ LL | struct S;
|
|||||||
| --------- associated item `A` not found for this
|
| --------- associated item `A` not found for this
|
||||||
...
|
...
|
||||||
LL | S::A;
|
LL | S::A;
|
||||||
| ---^
|
| ^ associated item not found in `S`
|
||||||
| |
|
|
||||||
| associated item not found in `S`
|
|
||||||
|
|
|
|
||||||
= help: items from traits can only be used if the trait is implemented and in scope
|
= help: items from traits can only be used if the trait is implemented and in scope
|
||||||
= note: the following trait defines an item `A`, perhaps you need to implement it:
|
= note: the following trait defines an item `A`, perhaps you need to implement it:
|
||||||
@ -92,9 +86,7 @@ LL | struct S;
|
|||||||
| --------- associated item `B` not found for this
|
| --------- associated item `B` not found for this
|
||||||
...
|
...
|
||||||
LL | S::B;
|
LL | S::B;
|
||||||
| ---^
|
| ^ associated item not found in `S`
|
||||||
| |
|
|
||||||
| associated item not found in `S`
|
|
||||||
|
|
|
|
||||||
= help: items from traits can only be used if the trait is in scope
|
= help: items from traits can only be used if the trait is in scope
|
||||||
help: the following trait is implemented but not in scope, perhaps add a `use` for it:
|
help: the following trait is implemented but not in scope, perhaps add a `use` for it:
|
||||||
|
@ -190,17 +190,13 @@ error[E0599]: no associated item named `NN` found for type `<u8 as Tr>::Y` in th
|
|||||||
--> $DIR/ufcs-partially-resolved.rs:38:20
|
--> $DIR/ufcs-partially-resolved.rs:38:20
|
||||||
|
|
|
|
||||||
LL | <u8 as Tr>::Y::NN;
|
LL | <u8 as Tr>::Y::NN;
|
||||||
| ---------------^^
|
| ^^ associated item not found in `<u8 as Tr>::Y`
|
||||||
| |
|
|
||||||
| associated item not found in `<u8 as Tr>::Y`
|
|
||||||
|
|
||||||
error[E0599]: no associated item named `N` found for type `<u8 as Dr>::X` in the current scope
|
error[E0599]: no associated item named `N` found for type `<u8 as Dr>::X` in the current scope
|
||||||
--> $DIR/ufcs-partially-resolved.rs:55:20
|
--> $DIR/ufcs-partially-resolved.rs:55:20
|
||||||
|
|
|
|
||||||
LL | <u8 as Dr>::X::N;
|
LL | <u8 as Dr>::X::N;
|
||||||
| ---------------^
|
| ^ associated item not found in `<u8 as Dr>::X`
|
||||||
| |
|
|
||||||
| associated item not found in `<u8 as Dr>::X`
|
|
||||||
|
|
||||||
error: aborting due to 32 previous errors
|
error: aborting due to 32 previous errors
|
||||||
|
|
||||||
|
@ -2,33 +2,25 @@ error[E0599]: no function or associated item named `lol` found for type `dyn Foo
|
|||||||
--> $DIR/unspecified-self-in-trait-ref.rs:10:18
|
--> $DIR/unspecified-self-in-trait-ref.rs:10:18
|
||||||
|
|
|
|
||||||
LL | let a = Foo::lol();
|
LL | let a = Foo::lol();
|
||||||
| -----^^^
|
| ^^^ function or associated item not found in `dyn Foo<_>`
|
||||||
| |
|
|
||||||
| function or associated item not found in `dyn Foo<_>`
|
|
||||||
|
|
||||||
error[E0599]: no function or associated item named `lol` found for type `dyn Foo<_>` in the current scope
|
error[E0599]: no function or associated item named `lol` found for type `dyn Foo<_>` in the current scope
|
||||||
--> $DIR/unspecified-self-in-trait-ref.rs:12:23
|
--> $DIR/unspecified-self-in-trait-ref.rs:12:23
|
||||||
|
|
|
|
||||||
LL | let b = Foo::<_>::lol();
|
LL | let b = Foo::<_>::lol();
|
||||||
| ----------^^^
|
| ^^^ function or associated item not found in `dyn Foo<_>`
|
||||||
| |
|
|
||||||
| function or associated item not found in `dyn Foo<_>`
|
|
||||||
|
|
||||||
error[E0599]: no function or associated item named `lol` found for type `dyn Bar<_, _>` in the current scope
|
error[E0599]: no function or associated item named `lol` found for type `dyn Bar<_, _>` in the current scope
|
||||||
--> $DIR/unspecified-self-in-trait-ref.rs:14:18
|
--> $DIR/unspecified-self-in-trait-ref.rs:14:18
|
||||||
|
|
|
|
||||||
LL | let c = Bar::lol();
|
LL | let c = Bar::lol();
|
||||||
| -----^^^
|
| ^^^ function or associated item not found in `dyn Bar<_, _>`
|
||||||
| |
|
|
||||||
| function or associated item not found in `dyn Bar<_, _>`
|
|
||||||
|
|
||||||
error[E0599]: no function or associated item named `lol` found for type `dyn Bar<usize, _>` in the current scope
|
error[E0599]: no function or associated item named `lol` found for type `dyn Bar<usize, _>` in the current scope
|
||||||
--> $DIR/unspecified-self-in-trait-ref.rs:16:30
|
--> $DIR/unspecified-self-in-trait-ref.rs:16:30
|
||||||
|
|
|
|
||||||
LL | let d = Bar::<usize, _>::lol();
|
LL | let d = Bar::<usize, _>::lol();
|
||||||
| -----------------^^^
|
| ^^^ function or associated item not found in `dyn Bar<usize, _>`
|
||||||
| |
|
|
||||||
| function or associated item not found in `dyn Bar<usize, _>`
|
|
||||||
|
|
||||||
error[E0393]: the type parameter `A` must be explicitly specified
|
error[E0393]: the type parameter `A` must be explicitly specified
|
||||||
--> $DIR/unspecified-self-in-trait-ref.rs:18:13
|
--> $DIR/unspecified-self-in-trait-ref.rs:18:13
|
||||||
|
Loading…
x
Reference in New Issue
Block a user