1 error[E0599]: no method named `bar` found for fn item `fn() -> Foo {foo}` in the current scope
2 --> $DIR/call-on-missing.rs:12:9
5 | ^^^ method not found in `fn() -> Foo {foo}`
7 help: use parentheses to call this function
12 error[E0609]: no field `i` on type `fn() -> Foo {foo}`
13 --> $DIR/call-on-missing.rs:16:9
18 help: use parentheses to call this function
23 error[E0599]: no method named `bar` found for struct `Box<dyn Fn() -> Foo>` in the current scope
24 --> $DIR/call-on-missing.rs:22:14
27 | ^^^ method not found in `Box<dyn Fn() -> Foo>`
29 help: use parentheses to call this trait object
31 LL | callable().bar();
34 error[E0609]: no field `i` on type `Box<dyn Fn() -> Foo>`
35 --> $DIR/call-on-missing.rs:26:14
40 help: use parentheses to call this trait object
45 error[E0599]: no method named `bar` found for type parameter `T` in the current scope
46 --> $DIR/call-on-missing.rs:32:7
48 LL | fn type_param<T: Fn() -> Foo>(t: T) {
49 | - method `bar` not found for this type parameter
51 | ^^^ method not found in `T`
53 help: use parentheses to call this type parameter
58 error[E0609]: no field `i` on type `T`
59 --> $DIR/call-on-missing.rs:36:7
61 LL | fn type_param<T: Fn() -> Foo>(t: T) {
62 | - type parameter 'T' declared here
67 help: use parentheses to call this type parameter
72 error: aborting due to 6 previous errors
74 Some errors have detailed explanations: E0599, E0609.
75 For more information about an error, try `rustc --explain E0599`.