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 fn item `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 fn item `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}
45 help: you might have forgotten to call this function
49 help: you might have forgotten to call this function
54 error[E0369]: binary operation `>` cannot be applied to type `fn() -> i32 {foo}`
55 --> $DIR/issue-59488.rs:25:9
58 | --- ^ --- fn(i64) -> i64 {bar}
62 = note: an implementation of `std::cmp::PartialOrd` might be missing for `fn() -> i32 {foo}`
64 error[E0308]: mismatched types
65 --> $DIR/issue-59488.rs:25:11
68 | ^^^ expected fn item, found a different fn item
70 = note: expected fn item `fn() -> i32 {foo}`
71 found fn item `fn(i64) -> i64 {bar}`
73 error[E0369]: binary operation `==` cannot be applied to type `fn(usize) -> Foo {Foo::Bar}`
74 --> $DIR/issue-59488.rs:30:5
76 LL | assert_eq!(Foo::Bar, i);
77 | ^^^^^^^^^^^^^^^^^^^^^^^^
79 | fn(usize) -> Foo {Foo::Bar}
80 | fn(usize) -> Foo {Foo::Bar}
82 = note: an implementation of `std::cmp::PartialEq` might be missing for `fn(usize) -> Foo {Foo::Bar}`
83 = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)
85 error[E0277]: `fn(usize) -> Foo {Foo::Bar}` doesn't implement `std::fmt::Debug`
86 --> $DIR/issue-59488.rs:30:5
88 LL | assert_eq!(Foo::Bar, i);
89 | ^^^^^^^^^^^^^^^^^^^^^^^^ `fn(usize) -> Foo {Foo::Bar}` cannot be formatted using `{:?}` because it doesn't implement `std::fmt::Debug`
91 = help: the trait `std::fmt::Debug` is not implemented for `fn(usize) -> Foo {Foo::Bar}`
92 = note: required because of the requirements on the impl of `std::fmt::Debug` for `&fn(usize) -> Foo {Foo::Bar}`
93 = note: required by `std::fmt::Debug::fmt`
94 = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)
96 error[E0277]: `fn(usize) -> Foo {Foo::Bar}` doesn't implement `std::fmt::Debug`
97 --> $DIR/issue-59488.rs:30:5
99 LL | assert_eq!(Foo::Bar, i);
100 | ^^^^^^^^^^^^^^^^^^^^^^^^ `fn(usize) -> Foo {Foo::Bar}` cannot be formatted using `{:?}` because it doesn't implement `std::fmt::Debug`
102 = help: the trait `std::fmt::Debug` is not implemented for `fn(usize) -> Foo {Foo::Bar}`
103 = note: required because of the requirements on the impl of `std::fmt::Debug` for `&fn(usize) -> Foo {Foo::Bar}`
104 = note: required by `std::fmt::Debug::fmt`
105 = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info)
107 error: aborting due to 10 previous errors
109 Some errors have detailed explanations: E0277, E0308, E0369.
110 For more information about an error, try `rustc --explain E0277`.