| struct Foo { i: i32 } |
| |
| impl Foo { |
| fn bar(&self) {} |
| } |
| |
| fn foo() -> Foo { |
| Foo { i: 1 } |
| } |
| |
| fn main() { |
| foo.bar(); |
| //~^ ERROR no method named `bar` |
| //~| HELP use parentheses to call this function |
| |
| foo.i; |
| //~^ ERROR no field `i` |
| //~| HELP use parentheses to call this function |
| |
| let callable = Box::new(|| Foo { i: 1 }) as Box<dyn Fn() -> Foo>; |
| |
| callable.bar(); |
| //~^ ERROR no method named `bar` |
| //~| HELP use parentheses to call this trait object |
| |
| callable.i; |
| //~^ ERROR no field `i` |
| //~| HELP use parentheses to call this trait object |
| } |
| |
| fn type_param<T: Fn() -> Foo>(t: T) { |
| t.bar(); |
| //~^ ERROR no method named `bar` |
| //~| HELP use parentheses to call this type parameter |
| |
| t.i; |
| //~^ ERROR no field `i` |
| //~| HELP use parentheses to call this type parameter |
| } |