vlib/v/checker/tests/method_op_alias_err.vv:4:18: error: expected `Foo` not `Foo2` - both operands must be the same type for operator overloading
    2 | type Foo2 = string
    3 | 
    4 | fn (f Foo) + (f1 Foo2) Foo2 {
      |                  ~~~~
    5 |     return Foo2(f + f1)
    6 | }
vlib/v/checker/tests/method_op_alias_err.vv:5:14: error: infix expr: cannot use `Foo2` (right expression) as `Foo`
    3 | 
    4 | fn (f Foo) + (f1 Foo2) Foo2 {
    5 |     return Foo2(f + f1)
      |                 ~~~~~~
    6 | }
    7 |
vlib/v/checker/tests/method_op_alias_err.vv:14:4: error: operator `+` must return `Foo` to be used as an assignment operator
   12 | fn main() {
   13 |     mut f := Foo('fg')
   14 |     f += 'fg'
      |       ~~
   15 |     f *= Foo2('2')
   16 |     f -= Foo('fo')
vlib/v/checker/tests/method_op_alias_err.vv:15:7: error: cannot assign to `f`: expected `Foo`, not `Foo2`
   13 |     mut f := Foo('fg')
   14 |     f += 'fg'
   15 |     f *= Foo2('2')
      |          ~~~~~~~~~
   16 |     f -= Foo('fo')
   17 |     println(f)
