ensure arguments are included in count mismatch span
This commit is contained in:
parent
95daa068f1
commit
14b2d16c5c
17 changed files with 239 additions and 88 deletions
|
|
@ -1,13 +1,16 @@
|
|||
error[E0061]: this function takes 1 argument but 0 arguments were supplied
|
||||
--> $DIR/arg-count-mismatch.rs:5:28
|
||||
|
|
||||
LL | fn f(x: isize) { }
|
||||
| -------------- defined here
|
||||
LL |
|
||||
LL | fn main() { let i: (); i = f(); }
|
||||
| ^-- supplied 0 arguments
|
||||
| |
|
||||
| expected 1 argument
|
||||
|
|
||||
note: function defined here
|
||||
--> $DIR/arg-count-mismatch.rs:3:4
|
||||
|
|
||||
LL | fn f(x: isize) { }
|
||||
| ^ --------
|
||||
|
||||
error: aborting due to previous error
|
||||
|
||||
|
|
|
|||
|
|
@ -7,24 +7,30 @@ LL | fn printf(_: *const u8, ...);
|
|||
error[E0060]: this function takes at least 2 arguments but 0 arguments were supplied
|
||||
--> $DIR/variadic-ffi-1.rs:17:9
|
||||
|
|
||||
LL | fn foo(f: isize, x: u8, ...);
|
||||
| ----------------------------- defined here
|
||||
...
|
||||
LL | foo();
|
||||
| ^^^-- supplied 0 arguments
|
||||
| |
|
||||
| expected at least 2 arguments
|
||||
|
|
||||
note: function defined here
|
||||
--> $DIR/variadic-ffi-1.rs:10:8
|
||||
|
|
||||
LL | fn foo(f: isize, x: u8, ...);
|
||||
| ^^^
|
||||
|
||||
error[E0060]: this function takes at least 2 arguments but 1 argument was supplied
|
||||
--> $DIR/variadic-ffi-1.rs:18:9
|
||||
|
|
||||
LL | fn foo(f: isize, x: u8, ...);
|
||||
| ----------------------------- defined here
|
||||
...
|
||||
LL | foo(1);
|
||||
| ^^^ - supplied 1 argument
|
||||
| |
|
||||
| expected at least 2 arguments
|
||||
|
|
||||
note: function defined here
|
||||
--> $DIR/variadic-ffi-1.rs:10:8
|
||||
|
|
||||
LL | fn foo(f: isize, x: u8, ...);
|
||||
| ^^^
|
||||
|
||||
error[E0308]: mismatched types
|
||||
--> $DIR/variadic-ffi-1.rs:20:56
|
||||
|
|
|
|||
|
|
@ -1,13 +1,16 @@
|
|||
error[E0060]: this function takes at least 1 argument but 0 arguments were supplied
|
||||
--> $DIR/E0060.rs:6:14
|
||||
|
|
||||
LL | fn printf(_: *const u8, ...) -> u32;
|
||||
| ------------------------------------ defined here
|
||||
...
|
||||
LL | unsafe { printf(); }
|
||||
| ^^^^^^-- supplied 0 arguments
|
||||
| |
|
||||
| expected at least 1 argument
|
||||
|
|
||||
note: function defined here
|
||||
--> $DIR/E0060.rs:2:8
|
||||
|
|
||||
LL | fn printf(_: *const u8, ...) -> u32;
|
||||
| ^^^^^^
|
||||
|
||||
error: aborting due to previous error
|
||||
|
||||
|
|
|
|||
|
|
@ -1,24 +1,30 @@
|
|||
error[E0061]: this function takes 2 arguments but 1 argument was supplied
|
||||
--> $DIR/E0061.rs:6:5
|
||||
|
|
||||
LL | fn f(a: u16, b: &str) {}
|
||||
| --------------------- defined here
|
||||
...
|
||||
LL | f(0);
|
||||
| ^ - supplied 1 argument
|
||||
| |
|
||||
| expected 2 arguments
|
||||
|
|
||||
note: function defined here
|
||||
--> $DIR/E0061.rs:1:4
|
||||
|
|
||||
LL | fn f(a: u16, b: &str) {}
|
||||
| ^ ------ -------
|
||||
|
||||
error[E0061]: this function takes 1 argument but 0 arguments were supplied
|
||||
--> $DIR/E0061.rs:10:5
|
||||
|
|
||||
LL | fn f2(a: u16) {}
|
||||
| ------------- defined here
|
||||
...
|
||||
LL | f2();
|
||||
| ^^-- supplied 0 arguments
|
||||
| |
|
||||
| expected 1 argument
|
||||
|
|
||||
note: function defined here
|
||||
--> $DIR/E0061.rs:3:4
|
||||
|
|
||||
LL | fn f2(a: u16) {}
|
||||
| ^^ ------
|
||||
|
||||
error: aborting due to 2 previous errors
|
||||
|
||||
|
|
|
|||
|
|
@ -1,16 +1,16 @@
|
|||
error[E0061]: this function takes 1 argument but 0 arguments were supplied
|
||||
--> $DIR/issue-58451.rs:12:9
|
||||
|
|
||||
LL | / fn f<I>(i: I)
|
||||
LL | | where
|
||||
LL | | I: IntoIterator,
|
||||
LL | | I::Item: for<'a> Into<&'a ()>,
|
||||
| |__________________________________- defined here
|
||||
...
|
||||
LL | f(&[f()]);
|
||||
| ^-- supplied 0 arguments
|
||||
| |
|
||||
| expected 1 argument
|
||||
LL | f(&[f()]);
|
||||
| ^-- supplied 0 arguments
|
||||
| |
|
||||
| expected 1 argument
|
||||
|
|
||||
note: function defined here
|
||||
--> $DIR/issue-58451.rs:5:4
|
||||
|
|
||||
LL | fn f<I>(i: I)
|
||||
| ^ ----
|
||||
|
||||
error: aborting due to previous error
|
||||
|
||||
|
|
|
|||
|
|
@ -1,13 +1,16 @@
|
|||
error[E0061]: this function takes 2 arguments but 1 argument was supplied
|
||||
--> $DIR/issue-18819.rs:16:5
|
||||
|
|
||||
LL | fn print_x(_: &dyn Foo<Item=bool>, extra: &str) {
|
||||
| ----------------------------------------------- defined here
|
||||
...
|
||||
LL | print_x(X);
|
||||
| ^^^^^^^ - supplied 1 argument
|
||||
| |
|
||||
| expected 2 arguments
|
||||
|
|
||||
note: function defined here
|
||||
--> $DIR/issue-18819.rs:11:4
|
||||
|
|
||||
LL | fn print_x(_: &dyn Foo<Item=bool>, extra: &str) {
|
||||
| ^^^^^^^ ---------------------- -----------
|
||||
|
||||
error: aborting due to previous error
|
||||
|
||||
|
|
|
|||
|
|
@ -4,11 +4,14 @@ error[E0061]: this function takes 0 arguments but 1 argument was supplied
|
|||
LL | $other(None)
|
||||
| ---- supplied 1 argument
|
||||
...
|
||||
LL | fn some_function() {}
|
||||
| ------------------ defined here
|
||||
...
|
||||
LL | some_macro!(some_function);
|
||||
| ^^^^^^^^^^^^^ expected 0 arguments
|
||||
|
|
||||
note: function defined here
|
||||
--> $DIR/issue-26094.rs:7:4
|
||||
|
|
||||
LL | fn some_function() {}
|
||||
| ^^^^^^^^^^^^^
|
||||
|
||||
error: aborting due to previous error
|
||||
|
||||
|
|
|
|||
|
|
@ -1,13 +1,16 @@
|
|||
error[E0061]: this function takes 1 argument but 2 arguments were supplied
|
||||
--> $DIR/issue-4935.rs:5:13
|
||||
|
|
||||
LL | fn foo(a: usize) {}
|
||||
| ---------------- defined here
|
||||
LL |
|
||||
LL | fn main() { foo(5, 6) }
|
||||
| ^^^ - - supplied 2 arguments
|
||||
| |
|
||||
| expected 1 argument
|
||||
|
|
||||
note: function defined here
|
||||
--> $DIR/issue-4935.rs:3:4
|
||||
|
|
||||
LL | fn foo(a: usize) {}
|
||||
| ^^^ --------
|
||||
|
||||
error: aborting due to previous error
|
||||
|
||||
|
|
|
|||
|
|
@ -1,35 +1,44 @@
|
|||
error[E0061]: this function takes 0 arguments but 1 argument was supplied
|
||||
--> $DIR/method-call-err-msg.rs:13:7
|
||||
|
|
||||
LL | fn zero(self) -> Foo { self }
|
||||
| -------------------- defined here
|
||||
...
|
||||
LL | x.zero(0)
|
||||
| ^^^^ - supplied 1 argument
|
||||
| |
|
||||
| expected 0 arguments
|
||||
|
|
||||
note: associated function defined here
|
||||
--> $DIR/method-call-err-msg.rs:5:8
|
||||
|
|
||||
LL | fn zero(self) -> Foo { self }
|
||||
| ^^^^ ----
|
||||
|
||||
error[E0061]: this function takes 1 argument but 0 arguments were supplied
|
||||
--> $DIR/method-call-err-msg.rs:14:7
|
||||
|
|
||||
LL | fn one(self, _: isize) -> Foo { self }
|
||||
| ----------------------------- defined here
|
||||
...
|
||||
LL | .one()
|
||||
| ^^^- supplied 0 arguments
|
||||
| |
|
||||
| expected 1 argument
|
||||
|
|
||||
note: associated function defined here
|
||||
--> $DIR/method-call-err-msg.rs:6:8
|
||||
|
|
||||
LL | fn one(self, _: isize) -> Foo { self }
|
||||
| ^^^ ---- --------
|
||||
|
||||
error[E0061]: this function takes 2 arguments but 1 argument was supplied
|
||||
--> $DIR/method-call-err-msg.rs:15:7
|
||||
|
|
||||
LL | fn two(self, _: isize, _: isize) -> Foo { self }
|
||||
| --------------------------------------- defined here
|
||||
...
|
||||
LL | .two(0);
|
||||
| ^^^ - supplied 1 argument
|
||||
| |
|
||||
| expected 2 arguments
|
||||
|
|
||||
note: associated function defined here
|
||||
--> $DIR/method-call-err-msg.rs:7:8
|
||||
|
|
||||
LL | fn two(self, _: isize, _: isize) -> Foo { self }
|
||||
| ^^^ ---- -------- --------
|
||||
|
||||
error[E0599]: no method named `take` found for struct `Foo` in the current scope
|
||||
--> $DIR/method-call-err-msg.rs:19:7
|
||||
|
|
@ -53,13 +62,16 @@ LL | .take()
|
|||
error[E0061]: this function takes 3 arguments but 0 arguments were supplied
|
||||
--> $DIR/method-call-err-msg.rs:21:7
|
||||
|
|
||||
LL | fn three<T>(self, _: T, _: T, _: T) -> Foo { self }
|
||||
| ------------------------------------------ defined here
|
||||
...
|
||||
LL | y.three::<usize>();
|
||||
| ^^^^^--------- supplied 0 arguments
|
||||
| |
|
||||
| expected 3 arguments
|
||||
|
|
||||
note: associated function defined here
|
||||
--> $DIR/method-call-err-msg.rs:8:8
|
||||
|
|
||||
LL | fn three<T>(self, _: T, _: T, _: T) -> Foo { self }
|
||||
| ^^^^^ ---- ---- ---- ----
|
||||
|
||||
error: aborting due to 5 previous errors
|
||||
|
||||
|
|
|
|||
|
|
@ -6,7 +6,26 @@ fn foo(a: isize, b: isize, c: isize, d:isize) {
|
|||
panic!();
|
||||
}
|
||||
|
||||
// Check that all arguments are shown in the error message, even if they're across multiple lines.
|
||||
fn bar(
|
||||
a: i32,
|
||||
b: i32,
|
||||
c: i32,
|
||||
d: i32,
|
||||
e: i32,
|
||||
f: i32,
|
||||
) {
|
||||
println!("{}", a);
|
||||
println!("{}", b);
|
||||
println!("{}", c);
|
||||
println!("{}", d);
|
||||
println!("{}", e);
|
||||
println!("{}", f);
|
||||
}
|
||||
|
||||
fn main() {
|
||||
foo(1, 2, 3);
|
||||
//~^ ERROR this function takes 4 arguments but 3
|
||||
bar(1, 2, 3);
|
||||
//~^ ERROR this function takes 6 arguments but 3
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,14 +1,43 @@
|
|||
error[E0061]: this function takes 4 arguments but 3 arguments were supplied
|
||||
--> $DIR/not-enough-arguments.rs:10:3
|
||||
--> $DIR/not-enough-arguments.rs:27:3
|
||||
|
|
||||
LL | fn foo(a: isize, b: isize, c: isize, d:isize) {
|
||||
| --------------------------------------------- defined here
|
||||
...
|
||||
LL | foo(1, 2, 3);
|
||||
| ^^^ - - - supplied 3 arguments
|
||||
| |
|
||||
| expected 4 arguments
|
||||
|
|
||||
note: function defined here
|
||||
--> $DIR/not-enough-arguments.rs:5:4
|
||||
|
|
||||
LL | fn foo(a: isize, b: isize, c: isize, d:isize) {
|
||||
| ^^^ -------- -------- -------- -------
|
||||
|
||||
error: aborting due to previous error
|
||||
error[E0061]: this function takes 6 arguments but 3 arguments were supplied
|
||||
--> $DIR/not-enough-arguments.rs:29:3
|
||||
|
|
||||
LL | bar(1, 2, 3);
|
||||
| ^^^ - - - supplied 3 arguments
|
||||
| |
|
||||
| expected 6 arguments
|
||||
|
|
||||
note: function defined here
|
||||
--> $DIR/not-enough-arguments.rs:10:4
|
||||
|
|
||||
LL | fn bar(
|
||||
| ^^^
|
||||
LL | a: i32,
|
||||
| ------
|
||||
LL | b: i32,
|
||||
| ------
|
||||
LL | c: i32,
|
||||
| ------
|
||||
LL | d: i32,
|
||||
| ------
|
||||
LL | e: i32,
|
||||
| ------
|
||||
LL | f: i32,
|
||||
| ------
|
||||
|
||||
error: aborting due to 2 previous errors
|
||||
|
||||
For more information about this error, try `rustc --explain E0061`.
|
||||
|
|
|
|||
|
|
@ -53,13 +53,16 @@ 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 | fn foo(Option<i32>, String) {}
|
||||
| --------------------------- defined here
|
||||
...
|
||||
LL | foo(Some(42), 2, "");
|
||||
| ^^^ -------- - -- supplied 3 arguments
|
||||
| |
|
||||
| expected 2 arguments
|
||||
|
|
||||
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
|
||||
|
|
@ -70,13 +73,16 @@ LL | bar("", "");
|
|||
error[E0061]: this function takes 2 arguments but 3 arguments were supplied
|
||||
--> $DIR/issue-34264.rs:10:5
|
||||
|
|
||||
LL | fn bar(x, y: usize) {}
|
||||
| ------------------- defined here
|
||||
...
|
||||
LL | bar(1, 2, 3);
|
||||
| ^^^ - - - supplied 3 arguments
|
||||
| |
|
||||
| expected 2 arguments
|
||||
|
|
||||
note: function defined here
|
||||
--> $DIR/issue-34264.rs:3:4
|
||||
|
|
||||
LL | fn bar(x, y: usize) {}
|
||||
| ^^^ - --------
|
||||
|
||||
error: aborting due to 6 previous errors
|
||||
|
||||
|
|
|
|||
|
|
@ -12,34 +12,42 @@ LL | let _: Result<(), String> = Ok(());
|
|||
error[E0061]: this function takes 2 arguments but 0 arguments were supplied
|
||||
--> $DIR/missing-unit-argument.rs:12:5
|
||||
|
|
||||
LL | fn foo(():(), ():()) {}
|
||||
| -------------------- defined here
|
||||
...
|
||||
LL | foo();
|
||||
| ^^^-- supplied 0 arguments
|
||||
| |
|
||||
| expected 2 arguments
|
||||
|
|
||||
note: function defined here
|
||||
--> $DIR/missing-unit-argument.rs:1:4
|
||||
|
|
||||
LL | fn foo(():(), ():()) {}
|
||||
| ^^^ ----- -----
|
||||
|
||||
error[E0061]: this function takes 2 arguments but 1 argument was supplied
|
||||
--> $DIR/missing-unit-argument.rs:13:5
|
||||
|
|
||||
LL | fn foo(():(), ():()) {}
|
||||
| -------------------- defined here
|
||||
...
|
||||
LL | foo(());
|
||||
| ^^^ -- supplied 1 argument
|
||||
| |
|
||||
| expected 2 arguments
|
||||
|
|
||||
note: function defined here
|
||||
--> $DIR/missing-unit-argument.rs:1:4
|
||||
|
|
||||
LL | fn foo(():(), ():()) {}
|
||||
| ^^^ ----- -----
|
||||
|
||||
error[E0061]: this function takes 1 argument but 0 arguments were supplied
|
||||
--> $DIR/missing-unit-argument.rs:14:5
|
||||
|
|
||||
LL | fn bar(():()) {}
|
||||
| ------------- defined here
|
||||
...
|
||||
LL | bar();
|
||||
| ^^^-- supplied 0 arguments
|
||||
|
|
||||
note: function defined here
|
||||
--> $DIR/missing-unit-argument.rs:2:4
|
||||
|
|
||||
LL | fn bar(():()) {}
|
||||
| ^^^ -----
|
||||
help: expected the unit value `()`; create it with empty parentheses
|
||||
|
|
||||
LL | bar(());
|
||||
|
|
@ -48,12 +56,14 @@ LL | bar(());
|
|||
error[E0061]: this function takes 1 argument but 0 arguments were supplied
|
||||
--> $DIR/missing-unit-argument.rs:15:7
|
||||
|
|
||||
LL | fn baz(self, (): ()) { }
|
||||
| -------------------- defined here
|
||||
...
|
||||
LL | S.baz();
|
||||
| ^^^- supplied 0 arguments
|
||||
|
|
||||
note: associated function defined here
|
||||
--> $DIR/missing-unit-argument.rs:6:8
|
||||
|
|
||||
LL | fn baz(self, (): ()) { }
|
||||
| ^^^ ---- ------
|
||||
help: expected the unit value `()`; create it with empty parentheses
|
||||
|
|
||||
LL | S.baz(());
|
||||
|
|
@ -62,12 +72,14 @@ LL | S.baz(());
|
|||
error[E0061]: this function takes 1 argument but 0 arguments were supplied
|
||||
--> $DIR/missing-unit-argument.rs:16:7
|
||||
|
|
||||
LL | fn generic<T>(self, _: T) { }
|
||||
| ------------------------- defined here
|
||||
...
|
||||
LL | S.generic::<()>();
|
||||
| ^^^^^^^------ supplied 0 arguments
|
||||
|
|
||||
note: associated function defined here
|
||||
--> $DIR/missing-unit-argument.rs:7:8
|
||||
|
|
||||
LL | fn generic<T>(self, _: T) { }
|
||||
| ^^^^^^^ ---- ----
|
||||
help: expected the unit value `()`; create it with empty parentheses
|
||||
|
|
||||
LL | S.generic::<()>(());
|
||||
|
|
|
|||
|
|
@ -1,13 +1,16 @@
|
|||
error[E0061]: this function takes 1 argument but 0 arguments were supplied
|
||||
--> $DIR/enum-variant-priority-higher-than-other-inherent.rs:21:5
|
||||
|
|
||||
LL | V(u8)
|
||||
| ----- defined here
|
||||
...
|
||||
LL | <E>::V();
|
||||
| ^^^^^^-- supplied 0 arguments
|
||||
| |
|
||||
| expected 1 argument
|
||||
|
|
||||
note: tuple variant defined here
|
||||
--> $DIR/enum-variant-priority-higher-than-other-inherent.rs:5:5
|
||||
|
|
||||
LL | V(u8)
|
||||
| ^^^^^
|
||||
|
||||
error[E0308]: mismatched types
|
||||
--> $DIR/enum-variant-priority-higher-than-other-inherent.rs:22:17
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue