error[E0369]: binary operation `==` cannot be applied to type `fn() {second}`
  --> $DIR/issue-66667-function-cmp-cycle.rs:2:12
   |
LL |     second == 1
   |     ------ ^^ - {integer}
   |     |
   |     fn() {second}

error[E0308]: mismatched types
  --> $DIR/issue-66667-function-cmp-cycle.rs:2:15
   |
LL |     second == 1
   |               ^ expected fn item, found integer
   |
   = note: expected fn item `fn() {second}`
                 found type `{integer}`

error[E0308]: mismatched types
  --> $DIR/issue-66667-function-cmp-cycle.rs:2:5
   |
LL | fn first() {
   |            - help: try adding a return type: `-> bool`
LL |     second == 1
   |     ^^^^^^^^^^^ expected `()`, found `bool`

error[E0369]: binary operation `==` cannot be applied to type `fn() {first}`
  --> $DIR/issue-66667-function-cmp-cycle.rs:8:11
   |
LL |     first == 1
   |     ----- ^^ - {integer}
   |     |
   |     fn() {first}

error[E0308]: mismatched types
  --> $DIR/issue-66667-function-cmp-cycle.rs:8:14
   |
LL |     first == 1
   |              ^ expected fn item, found integer
   |
   = note: expected fn item `fn() {first}`
                 found type `{integer}`

error[E0308]: mismatched types
  --> $DIR/issue-66667-function-cmp-cycle.rs:8:5
   |
LL | fn second() {
   |             - help: try adding a return type: `-> bool`
LL |     first == 1
   |     ^^^^^^^^^^ expected `()`, found `bool`

error[E0369]: binary operation `==` cannot be applied to type `fn() {bar}`
  --> $DIR/issue-66667-function-cmp-cycle.rs:14:9
   |
LL |     bar == 1
   |     --- ^^ - {integer}
   |     |
   |     fn() {bar}

error[E0308]: mismatched types
  --> $DIR/issue-66667-function-cmp-cycle.rs:14:12
   |
LL |     bar == 1
   |            ^ expected fn item, found integer
   |
   = note: expected fn item `fn() {bar}`
                 found type `{integer}`

error[E0308]: mismatched types
  --> $DIR/issue-66667-function-cmp-cycle.rs:14:5
   |
LL | fn bar() {
   |          - help: try adding a return type: `-> bool`
LL |     bar == 1
   |     ^^^^^^^^ expected `()`, found `bool`

error: aborting due to 9 previous errors

Some errors have detailed explanations: E0308, E0369.
For more information about an error, try `rustc --explain E0308`.