Rely on regular "expected"/"found" parser error for fn

This commit is contained in:
Esteban Küber 2020-10-25 12:13:27 -07:00
parent 07a63e6d1f
commit 040f568815
15 changed files with 36 additions and 31 deletions

View file

@ -1,4 +1,4 @@
fn foo(a: [0; 1]) {} //~ ERROR expected type, found `0`
//~| ERROR expected `;` or `{`, found `]`
//~| ERROR expected one of `)`, `,`, `->`, `;`, `where`, or `{`, found `]`
fn main() {}

View file

@ -4,11 +4,11 @@ error: expected type, found `0`
LL | fn foo(a: [0; 1]) {}
| ^ expected type
error: expected `;` or `{`, found `]`
error: expected one of `)`, `,`, `->`, `;`, `where`, or `{`, found `]`
--> $DIR/issue-39616.rs:1:16
|
LL | fn foo(a: [0; 1]) {}
| ^ expected `;` or `{`
| ^ expected one of `)`, `,`, `->`, `;`, `where`, or `{`
error: aborting due to 2 previous errors

View file

@ -2,7 +2,7 @@ impl A {
//~^ ERROR cannot find type `A` in this scope
fn b(self>
//~^ ERROR expected one of `)`, `,`, or `:`, found `>`
//~| ERROR expected `;` or `{`, found `>`
//~| ERROR expected one of `->`, `;`, `where`, or `{`, found `>`
}
fn main() {}

View file

@ -6,14 +6,14 @@ LL | fn b(self>
| |
| unclosed delimiter
error: expected `;` or `{`, found `>`
error: expected one of `->`, `;`, `where`, or `{`, found `>`
--> $DIR/issue-58856-1.rs:3:14
|
LL | impl A {
| - while parsing this item list starting here
LL |
LL | fn b(self>
| ^ expected `;` or `{`
| ^ expected one of `->`, `;`, `where`, or `{`
...
LL | }
| - the item list ends here

View file

@ -0,0 +1,5 @@
fn foo(x: i32): i32 { //~ ERROR expected one of `->`, `;`, `where`, or `{`, found `:`
x
}
fn main() {}

View file

@ -0,0 +1,8 @@
error: expected one of `->`, `;`, `where`, or `{`, found `:`
--> $DIR/fn-colon-return-type.rs:1:15
|
LL | fn foo(x: i32): i32 {
| ^ expected one of `->`, `;`, `where`, or `{`
error: aborting due to previous error

View file

@ -3,6 +3,6 @@
// expected one of ..., `>`, ... found `>`
fn foo() -> Vec<usize>> {
//~^ ERROR expected `;` or `{`, found `>`
//~^ ERROR expected one of `!`, `+`, `::`, `;`, `where`, or `{`, found `>`
Vec::new()
}

View file

@ -1,8 +1,8 @@
error: expected `;` or `{`, found `>`
error: expected one of `!`, `+`, `::`, `;`, `where`, or `{`, found `>`
--> $DIR/issue-24780.rs:5:23
|
LL | fn foo() -> Vec<usize>> {
| ^ expected `;` or `{`
| ^ expected one of `!`, `+`, `::`, `;`, `where`, or `{`
error: aborting due to previous error

View file

@ -1,3 +1,3 @@
trait Foo { fn a() } //~ ERROR expected `;` or `{`, found `}`
trait Foo { fn a() } //~ ERROR expected one of `->`, `;`, `where`, or `{`, found `}`
fn main() {}

View file

@ -1,10 +1,10 @@
error: expected `;` or `{`, found `}`
error: expected one of `->`, `;`, `where`, or `{`, found `}`
--> $DIR/issue-6610.rs:1:20
|
LL | trait Foo { fn a() }
| - ^
| | |
| | expected `;` or `{`
| | expected one of `->`, `;`, `where`, or `{`
| | the item list ends here
| while parsing this item list starting here

View file

@ -22,11 +22,11 @@ error: expected one of `:` or `|`, found `)`
LL | fn main((ؼ
| ^ expected one of `:` or `|`
error: expected `;` or `{`, found `<eof>`
error: expected one of `->`, `;`, `where`, or `{`, found `<eof>`
--> $DIR/missing_right_paren.rs:3:11
|
LL | fn main((ؼ
| ^ expected `;` or `{`
| ^ expected one of `->`, `;`, `where`, or `{`
error: aborting due to 4 previous errors

View file

@ -1,6 +1,5 @@
// error-pattern: lt
fn f(a: isize, b: isize) : lt(a, b) { }
//~^ ERROR expected one of `->`, `;`, `where`, or `{`, found `:`
fn lt(a: isize, b: isize) { }

View file

@ -1,8 +1,8 @@
error: expected `;` or `{`, found `:`
--> $DIR/not-a-pred.rs:3:26
error: expected one of `->`, `;`, `where`, or `{`, found `:`
--> $DIR/not-a-pred.rs:1:26
|
LL | fn f(a: isize, b: isize) : lt(a, b) { }
| ^ expected `;` or `{`
| ^ expected one of `->`, `;`, `where`, or `{`
error: aborting due to previous error