When suggesting field access which would encounter a method not found, do not suggest pinning when those methods are on `impl Pin` itself. ``` error[E0599]: no method named `get_ref` found for tuple `(BufReader<File>,)` in the current scope --> $DIR/missing-field-access.rs:11:15 | LL | let x = f.get_ref(); | ^^^^^^^ method not found in `(BufReader<File>,)` | help: one of the expressions' fields has a method of the same name | LL | let x = f.0.get_ref(); | ++ ``` instead of ``` error[E0599]: no method named `get_ref` found for tuple `(BufReader<File>,)` in the current scope --> $DIR/missing-field-access.rs:11:15 | LL | let x = f.get_ref(); | ^^^^^^^ method not found in `(BufReader<File>,)` | help: one of the expressions' fields has a method of the same name | LL | let x = f.0.get_ref(); | ++ help: consider pinning the expression | LL ~ let mut pinned = std::pin::pin!(f); LL ~ let x = pinned.as_ref().get_ref(); | ```
29 lines
918 B
Plaintext
29 lines
918 B
Plaintext
error[E0599]: no method named `get_ref` found for struct `F` in the current scope
|
|
--> $DIR/missing-field-access.rs:11:15
|
|
|
|
|
LL | struct F(BufReader<File>);
|
|
| -------- method `get_ref` not found for this struct
|
|
...
|
|
LL | let x = f.get_ref();
|
|
| ^^^^^^^ method not found in `F`
|
|
|
|
|
help: one of the expressions' fields has a method of the same name
|
|
|
|
|
LL | let x = f.0.get_ref();
|
|
| ++
|
|
|
|
error[E0599]: no method named `get_ref` found for tuple `(BufReader<File>,)` in the current scope
|
|
--> $DIR/missing-field-access.rs:14:15
|
|
|
|
|
LL | let x = f.get_ref();
|
|
| ^^^^^^^ method not found in `(BufReader<File>,)`
|
|
|
|
|
help: one of the expressions' fields has a method of the same name
|
|
|
|
|
LL | let x = f.0.get_ref();
|
|
| ++
|
|
|
|
error: aborting due to 2 previous errors
|
|
|
|
For more information about this error, try `rustc --explain E0599`.
|