parent
f22dca0a1b
commit
2ec7d0b228
@ -6332,8 +6332,10 @@ impl<'a> Parser<'a> {
|
||||
&token::CloseDelim(token::Paren), sep, parse_arg_fn)?;
|
||||
fn_inputs.append(&mut input);
|
||||
(fn_inputs, recovered)
|
||||
} else if let Err(err) = self.expect_one_of(&[], &[]) {
|
||||
return Err(err);
|
||||
} else {
|
||||
return self.unexpected();
|
||||
(vec![self_arg], true)
|
||||
}
|
||||
} else {
|
||||
self.parse_seq_to_before_end(&token::CloseDelim(token::Paren), sep, parse_arg_fn)?
|
||||
|
9
src/test/ui/issues/issue-58856-1.rs
Normal file
9
src/test/ui/issues/issue-58856-1.rs
Normal file
@ -0,0 +1,9 @@
|
||||
impl A {
|
||||
//~^ ERROR cannot find type `A` in this scope
|
||||
fn b(self>
|
||||
//~^ ERROR expected one of `)`, `,`, or `:`, found `>`
|
||||
//~| ERROR expected one of `->`, `where`, or `{`, found `>`
|
||||
//~| ERROR expected one of `->`, `async`, `const`, `crate`, `default`, `existential`,
|
||||
}
|
||||
|
||||
fn main() {}
|
30
src/test/ui/issues/issue-58856-1.stderr
Normal file
30
src/test/ui/issues/issue-58856-1.stderr
Normal file
@ -0,0 +1,30 @@
|
||||
error: expected one of `)`, `,`, or `:`, found `>`
|
||||
--> $DIR/issue-58856-1.rs:3:14
|
||||
|
|
||||
LL | fn b(self>
|
||||
| - ^
|
||||
| | |
|
||||
| | help: `)` may belong here
|
||||
| unclosed delimiter
|
||||
|
||||
error: expected one of `->`, `where`, or `{`, found `>`
|
||||
--> $DIR/issue-58856-1.rs:3:14
|
||||
|
|
||||
LL | fn b(self>
|
||||
| ^ expected one of `->`, `where`, or `{` here
|
||||
|
||||
error: expected one of `->`, `async`, `const`, `crate`, `default`, `existential`, `extern`, `fn`, `pub`, `type`, `unsafe`, `where`, or `}`, found `>`
|
||||
--> $DIR/issue-58856-1.rs:3:14
|
||||
|
|
||||
LL | fn b(self>
|
||||
| ^ expected one of 13 possible tokens here
|
||||
|
||||
error[E0412]: cannot find type `A` in this scope
|
||||
--> $DIR/issue-58856-1.rs:1:6
|
||||
|
|
||||
LL | impl A {
|
||||
| ^ not found in this scope
|
||||
|
||||
error: aborting due to 4 previous errors
|
||||
|
||||
For more information about this error, try `rustc --explain E0412`.
|
13
src/test/ui/issues/issue-58856-2.rs
Normal file
13
src/test/ui/issues/issue-58856-2.rs
Normal file
@ -0,0 +1,13 @@
|
||||
trait Howness {}
|
||||
impl Howness for () {
|
||||
fn how_are_you(&self -> Empty {
|
||||
//~^ ERROR expected one of `)` or `,`, found `->`
|
||||
//~| ERROR method `how_are_you` is not a member of trait `Howness`
|
||||
//~| ERROR cannot find type `Empty` in this scope
|
||||
Empty
|
||||
//~^ ERROR cannot find value `Empty` in this scope
|
||||
}
|
||||
}
|
||||
//~^ ERROR expected one of `async`, `const`, `crate`, `default`, `existential`, `extern`, `fn`,
|
||||
|
||||
fn main() {}
|
55
src/test/ui/issues/issue-58856-2.stderr
Normal file
55
src/test/ui/issues/issue-58856-2.stderr
Normal file
@ -0,0 +1,55 @@
|
||||
error: expected one of `)` or `,`, found `->`
|
||||
--> $DIR/issue-58856-2.rs:3:26
|
||||
|
|
||||
LL | fn how_are_you(&self -> Empty {
|
||||
| - -^^
|
||||
| | |
|
||||
| | help: `)` may belong here
|
||||
| unclosed delimiter
|
||||
|
||||
error: expected one of `async`, `const`, `crate`, `default`, `existential`, `extern`, `fn`, `pub`, `type`, `unsafe`, or `}`, found `)`
|
||||
--> $DIR/issue-58856-2.rs:10:1
|
||||
|
|
||||
LL | }
|
||||
| - expected one of 11 possible tokens here
|
||||
LL | }
|
||||
| ^ unexpected token
|
||||
|
||||
error[E0407]: method `how_are_you` is not a member of trait `Howness`
|
||||
--> $DIR/issue-58856-2.rs:3:5
|
||||
|
|
||||
LL | / fn how_are_you(&self -> Empty {
|
||||
LL | | //~^ ERROR expected one of `)` or `,`, found `->`
|
||||
LL | | //~| ERROR method `how_are_you` is not a member of trait `Howness`
|
||||
LL | | //~| ERROR cannot find type `Empty` in this scope
|
||||
LL | | Empty
|
||||
LL | | //~^ ERROR cannot find value `Empty` in this scope
|
||||
LL | | }
|
||||
| |_____^ not a member of trait `Howness`
|
||||
|
||||
error[E0412]: cannot find type `Empty` in this scope
|
||||
--> $DIR/issue-58856-2.rs:3:29
|
||||
|
|
||||
LL | fn how_are_you(&self -> Empty {
|
||||
| ^^^^^ not found in this scope
|
||||
help: possible candidates are found in other modules, you can import them into scope
|
||||
|
|
||||
LL | use std::io::Empty;
|
||||
|
|
||||
LL | use std::iter::Empty;
|
||||
|
|
||||
|
||||
error[E0425]: cannot find value `Empty` in this scope
|
||||
--> $DIR/issue-58856-2.rs:7:9
|
||||
|
|
||||
LL | Empty
|
||||
| ^^^^^ not found in this scope
|
||||
help: possible candidate is found in another module, you can import it into scope
|
||||
|
|
||||
LL | use std::sync::mpsc::TryRecvError::Empty;
|
||||
|
|
||||
|
||||
error: aborting due to 5 previous errors
|
||||
|
||||
Some errors occurred: E0407, E0412, E0425.
|
||||
For more information about an error, try `rustc --explain E0407`.
|
Loading…
x
Reference in New Issue
Block a user