bde2dfb127
When a `Local` is fully parsed, but not followed by a `;`, keep the `:` span arround and mention it. If the type could continue being parsed as an expression, suggest replacing the `:` with a `=`. ``` error: expected one of `!`, `+`, `->`, `::`, `;`, or `=`, found `.` --> file.rs:2:32 | 2 | let _: std::env::temp_dir().join("foo"); | - ^ expected one of `!`, `+`, `->`, `::`, `;`, or `=` | | | while parsing the type for `_` | help: use `=` if you meant to assign ``` Fix #119665.
76 lines
3.4 KiB
Plaintext
76 lines
3.4 KiB
Plaintext
error: expected one of `>`, a const expression, lifetime, or type, found `}`
|
|
--> $DIR/issue-84117.rs:2:67
|
|
|
|
|
LL | let outer_local:e_outer<&str, { let inner_local:e_inner<&str, }
|
|
| - ^ expected one of `>`, a const expression, lifetime, or type
|
|
| |
|
|
| while parsing the type for `inner_local`
|
|
|
|
|
help: you might have meant to end the type parameters here
|
|
|
|
|
LL | let outer_local:e_outer<&str, { let inner_local:e_inner<&str>, }
|
|
| +
|
|
help: use `=` if you meant to assign
|
|
|
|
|
LL | let outer_local:e_outer<&str, { let inner_local =e_inner<&str, }
|
|
| ~
|
|
|
|
error: expected one of `!`, `.`, `::`, `;`, `?`, `else`, `{`, or an operator, found `,`
|
|
--> $DIR/issue-84117.rs:2:65
|
|
|
|
|
LL | let outer_local:e_outer<&str, { let inner_local:e_inner<&str, }
|
|
| ^ expected one of 8 possible tokens
|
|
|
|
error: expected one of `,` or `>`, found `}`
|
|
--> $DIR/issue-84117.rs:8:1
|
|
|
|
|
LL | let outer_local:e_outer<&str, { let inner_local:e_inner<&str, }
|
|
| - while parsing the type for `outer_local` - expected one of `,` or `>`
|
|
...
|
|
LL | }
|
|
| ^ unexpected token
|
|
|
|
|
help: you might have meant to end the type parameters here
|
|
|
|
|
LL | let outer_local:e_outer<&str, { let inner_local:e_inner<&str, }>
|
|
| +
|
|
help: use `=` if you meant to assign
|
|
|
|
|
LL | let outer_local =e_outer<&str, { let inner_local:e_inner<&str, }
|
|
| ~
|
|
|
|
error: expected one of `>`, a const expression, lifetime, or type, found `}`
|
|
--> $DIR/issue-84117.rs:2:67
|
|
|
|
|
LL | let outer_local:e_outer<&str, { let inner_local:e_inner<&str, }
|
|
| - ^ expected one of `>`, a const expression, lifetime, or type
|
|
| |
|
|
| while parsing the type for `inner_local`
|
|
|
|
|
= note: duplicate diagnostic emitted due to `-Z deduplicate-diagnostics=no`
|
|
help: you might have meant to end the type parameters here
|
|
|
|
|
LL | let outer_local:e_outer<&str, { let inner_local:e_inner<&str>, }
|
|
| +
|
|
help: use `=` if you meant to assign
|
|
|
|
|
LL | let outer_local:e_outer<&str, { let inner_local =e_inner<&str, }
|
|
| ~
|
|
|
|
error: expected one of `!`, `.`, `::`, `;`, `?`, `else`, `{`, or an operator, found `,`
|
|
--> $DIR/issue-84117.rs:2:65
|
|
|
|
|
LL | let outer_local:e_outer<&str, { let inner_local:e_inner<&str, }
|
|
| ^ expected one of 8 possible tokens
|
|
|
|
|
= note: duplicate diagnostic emitted due to `-Z deduplicate-diagnostics=no`
|
|
|
|
error: expected one of `!`, `.`, `::`, `;`, `?`, `else`, `{`, or an operator, found `,`
|
|
--> $DIR/issue-84117.rs:2:33
|
|
|
|
|
LL | let outer_local:e_outer<&str, { let inner_local:e_inner<&str, }
|
|
| ^ expected one of 8 possible tokens
|
|
|
|
error: aborting due to 6 previous errors
|
|
|