v/vlib/v/checker/tests/method_op_err.out

70 lines
2.5 KiB
Plaintext

vlib/v/checker/tests/method_op_err.vv:11:1: error: operator methods should have exactly 1 argument
9 | }
10 |
11 | fn (u User) + () {
| ~~~~~~~~~~~~~~~~
12 | }
13 |
vlib/v/checker/tests/method_op_err.vv:14:18: error: expected `User` not `Foo` - both operands must be the same type for operator overloading
12 | }
13 |
14 | fn (u User) - (f Foo) User {
| ~~~
15 | return User{u.a - f.a, u.b-f.a}
16 | }
vlib/v/checker/tests/method_op_err.vv:18:9: error: receiver cannot be `mut` for operator overloading
16 | }
17 |
18 | fn (mut u User) * (u1 User) User {
| ~~~~~~
19 | return User{}
20 | }
vlib/v/checker/tests/method_op_err.vv:22:1: error: argument cannot be `mut` for operator overloading
20 | }
21 |
22 | fn (u User) / (mut u1 User) User {
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
23 | return User{}
24 | }
vlib/v/checker/tests/method_op_err.vv:32:13: error: infix expr: cannot use `Foo` (right expression) as `User`
30 | fn main() {
31 | println(User{3, 4})
32 | println(User{3, 4} - Foo{3, 3})
| ~~~~~~~~~~~~~~~~~~~~~~
33 | println(User{3, 2} < User{2, 4})
34 | println(User{3, 4} < Foo{3, 4})
vlib/v/checker/tests/method_op_err.vv:33:13: error: undefined operation `User` < `User`
31 | println(User{3, 4})
32 | println(User{3, 4} - Foo{3, 3})
33 | println(User{3, 2} < User{2, 4})
| ~~~~~~~~~~~~~~~~~~~~~~~
34 | println(User{3, 4} < Foo{3, 4})
35 | mut u := User{3, 4}
vlib/v/checker/tests/method_op_err.vv:34:13: error: mismatched types `User` and `Foo`
32 | println(User{3, 4} - Foo{3, 3})
33 | println(User{3, 2} < User{2, 4})
34 | println(User{3, 4} < Foo{3, 4})
| ~~~~~~~~~~~~~~~~~~~~~~
35 | mut u := User{3, 4}
36 | _ = u
vlib/v/checker/tests/method_op_err.vv:37:10: error: cannot assign to `u`: expected `User`, not `int literal`
35 | mut u := User{3, 4}
36 | _ = u
37 | u += 12
| ~~
38 | u %= User{1, 3}
39 | u += User{2, 3}
vlib/v/checker/tests/method_op_err.vv:38:5: error: operator %= not defined on left operand type `User`
36 | _ = u
37 | u += 12
38 | u %= User{1, 3}
| ^
39 | u += User{2, 3}
40 | }
vlib/v/checker/tests/method_op_err.vv:39:7: error: operator `+` must return `User` to be used as an assignment operator
37 | u += 12
38 | u %= User{1, 3}
39 | u += User{2, 3}
| ~~
40 | }