1 error[E0369]: binary operation `>` cannot be applied to type `fn() -> i32 {foo}`
2 --> $DIR/issue-59488.rs:14:9
8 | help: you might have forgotten to call this function: `foo()`
10 error[E0308]: mismatched types
11 --> $DIR/issue-59488.rs:14:11
14 | ^^ expected fn item, found integer
16 = note: expected type `fn() -> i32 {foo}`
19 error[E0369]: binary operation `>` cannot be applied to type `fn(i64) -> i64 {bar}`
20 --> $DIR/issue-59488.rs:18:9
25 | fn(i64) -> i64 {bar}
26 | help: you might have forgotten to call this function: `bar( /* arguments */ )`
28 error[E0308]: mismatched types
29 --> $DIR/issue-59488.rs:18:11
32 | ^^ expected fn item, found integer
34 = note: expected type `fn(i64) -> i64 {bar}`
37 error[E0369]: binary operation `>` cannot be applied to type `fn() -> i32 {foo}`
38 --> $DIR/issue-59488.rs:22:9
41 | --- ^ --- fn() -> i32 {foo}
44 help: you might have forgotten to call this function
48 help: you might have forgotten to call this function
53 error[E0369]: binary operation `>` cannot be applied to type `fn() -> i32 {foo}`
54 --> $DIR/issue-59488.rs:25:9
57 | --- ^ --- fn(i64) -> i64 {bar}
61 = note: an implementation of `std::cmp::PartialOrd` might be missing for `fn() -> i32 {foo}`
63 error[E0308]: mismatched types
64 --> $DIR/issue-59488.rs:25:11
67 | ^^^ expected fn item, found a different fn item
69 = note: expected type `fn() -> i32 {foo}`
70 found type `fn(i64) -> i64 {bar}`
72 error[E0369]: binary operation `==` cannot be applied to type `fn(usize) -> Foo {Foo::Bar}`
73 --> $DIR/issue-59488.rs:30:5
75 LL | assert_eq!(Foo::Bar, i);
76 | ^^^^^^^^^^^^^^^^^^^^^^^^
78 | fn(usize) -> Foo {Foo::Bar}
79 | fn(usize) -> Foo {Foo::Bar}
81 = note: an implementation of `std::cmp::PartialEq` might be missing for `fn(usize) -> Foo {Foo::Bar}`
82 = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)
84 error[E0277]: `fn(usize) -> Foo {Foo::Bar}` doesn't implement `std::fmt::Debug`
85 --> $DIR/issue-59488.rs:30:5
87 LL | assert_eq!(Foo::Bar, i);
88 | ^^^^^^^^^^^^^^^^^^^^^^^^ `fn(usize) -> Foo {Foo::Bar}` cannot be formatted using `{:?}` because it doesn't implement `std::fmt::Debug`
90 = help: the trait `std::fmt::Debug` is not implemented for `fn(usize) -> Foo {Foo::Bar}`
91 = note: required because of the requirements on the impl of `std::fmt::Debug` for `&fn(usize) -> Foo {Foo::Bar}`
92 = note: required by `std::fmt::Debug::fmt`
93 = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)
95 error[E0277]: `fn(usize) -> Foo {Foo::Bar}` doesn't implement `std::fmt::Debug`
96 --> $DIR/issue-59488.rs:30:5
98 LL | assert_eq!(Foo::Bar, i);
99 | ^^^^^^^^^^^^^^^^^^^^^^^^ `fn(usize) -> Foo {Foo::Bar}` cannot be formatted using `{:?}` because it doesn't implement `std::fmt::Debug`
101 = help: the trait `std::fmt::Debug` is not implemented for `fn(usize) -> Foo {Foo::Bar}`
102 = note: required because of the requirements on the impl of `std::fmt::Debug` for `&fn(usize) -> Foo {Foo::Bar}`
103 = note: required by `std::fmt::Debug::fmt`
104 = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)
106 error: aborting due to 10 previous errors
108 Some errors have detailed explanations: E0277, E0308, E0369.
109 For more information about an error, try `rustc --explain E0277`.