diff options
Diffstat (limited to '')
-rw-r--r-- | src/test/ui/parser/inverted-parameters.rs | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/src/test/ui/parser/inverted-parameters.rs b/src/test/ui/parser/inverted-parameters.rs new file mode 100644 index 000000000..5c4272504 --- /dev/null +++ b/src/test/ui/parser/inverted-parameters.rs @@ -0,0 +1,32 @@ +struct S; + +impl S { + fn foo(&self, &str bar) {} + //~^ ERROR expected one of `:`, `@` + //~| HELP declare the type after the parameter binding + //~| SUGGESTION <identifier>: <type> +} + +fn baz(S quux, xyzzy: i32) {} +//~^ ERROR expected one of `:`, `@` +//~| HELP declare the type after the parameter binding +//~| SUGGESTION <identifier>: <type> + +fn one(i32 a b) {} +//~^ ERROR expected one of `:`, `@` + +fn pattern((i32, i32) (a, b)) {} +//~^ ERROR expected one of `:` + +fn fizz(i32) {} +//~^ ERROR expected one of `:`, `@` +//~| HELP if this is a parameter name, give it a type +//~| HELP if this is a `self` type, give it a parameter name +//~| HELP if this is a type, explicitly ignore the parameter name + +fn missing_colon(quux S) {} +//~^ ERROR expected one of `:`, `@` +//~| HELP declare the type after the parameter binding +//~| SUGGESTION <identifier>: <type> + +fn main() {} |