error: expected one of `:`, `@`, or `|`, found `<`
  --> $DIR/issue-34264.rs:1:14
   |
LL | fn foo(Option<i32>, String) {}
   |              ^ expected one of `:`, `@`, or `|`
   |
   = note: anonymous parameters are removed in the 2018 edition (see RFC 1685)
help: if this is a `self` type, give it a parameter name
   |
LL | fn foo(self: Option<i32>, String) {}
   |        +++++
help: if this is a type, explicitly ignore the parameter name
   |
LL | fn foo(_: Option<i32>, String) {}
   |        ++

error: expected one of `:`, `@`, or `|`, found `)`
  --> $DIR/issue-34264.rs:1:27
   |
LL | fn foo(Option<i32>, String) {}
   |                           ^ expected one of `:`, `@`, or `|`
   |
   = note: anonymous parameters are removed in the 2018 edition (see RFC 1685)
help: if this is a parameter name, give it a type
   |
LL | fn foo(Option<i32>, String: TypeName) {}
   |                           ++++++++++
help: if this is a type, explicitly ignore the parameter name
   |
LL | fn foo(Option<i32>, _: String) {}
   |                     ++

error: expected one of `:`, `@`, or `|`, found `,`
  --> $DIR/issue-34264.rs:3:9
   |
LL | fn bar(x, y: usize) {}
   |         ^ expected one of `:`, `@`, or `|`
   |
   = note: anonymous parameters are removed in the 2018 edition (see RFC 1685)
help: if this is a `self` type, give it a parameter name
   |
LL | fn bar(self: x, y: usize) {}
   |        +++++
help: if this is a parameter name, give it a type
   |
LL | fn bar(x: TypeName, y: usize) {}
   |         ++++++++++
help: if this is a type, explicitly ignore the parameter name
   |
LL | fn bar(_: x, y: usize) {}
   |        ++

error[E0061]: this function takes 2 arguments but 3 arguments were supplied
  --> $DIR/issue-34264.rs:7:5
   |
LL |     foo(Some(42), 2, "");
   |     ^^^            ----
   |                    | |
   |                    | unexpected argument of type `&'static str`
   |                    help: remove the extra argument
   |
note: function defined here
  --> $DIR/issue-34264.rs:1:4
   |
LL | fn foo(Option<i32>, String) {}
   |    ^^^ -----------  ------

error[E0308]: mismatched types
  --> $DIR/issue-34264.rs:8:13
   |
LL |     bar("", "");
   |     ---     ^^ expected `usize`, found `&str`
   |     |
   |     arguments to this function are incorrect
   |
note: function defined here
  --> $DIR/issue-34264.rs:3:4
   |
LL | fn bar(x, y: usize) {}
   |    ^^^    --------

error[E0061]: this function takes 2 arguments but 3 arguments were supplied
  --> $DIR/issue-34264.rs:10:5
   |
LL |     bar(1, 2, 3);
   |     ^^^     ---
   |             | |
   |             | unexpected argument of type `{integer}`
   |             help: remove the extra argument
   |
note: function defined here
  --> $DIR/issue-34264.rs:3:4
   |
LL | fn bar(x, y: usize) {}
   |    ^^^ -  --------

error: aborting due to 6 previous errors

Some errors have detailed explanations: E0061, E0308.
For more information about an error, try `rustc --explain E0061`.
