error[E0277]: expected a `Fn<(&isize,)>` closure, found `for<'a> extern "C" fn(&'a isize) -> isize {square}`
  --> $DIR/unboxed-closures-wrong-abi.rs:20:21
   |
LL |     let x = call_it(&square, 22);
   |             ------- ^^^^^^^ expected an `Fn<(&isize,)>` closure, found `for<'a> extern "C" fn(&'a isize) -> isize {square}`
   |             |
   |             required by a bound introduced by this call
   |
   = help: the trait `for<'a> Fn<(&'a isize,)>` is not implemented for fn item `for<'a> extern "C" fn(&'a isize) -> isize {square}`
note: required by a bound in `call_it`
  --> $DIR/unboxed-closures-wrong-abi.rs:9:15
   |
LL | fn call_it<F: Fn(&isize) -> isize>(_: &F, _: isize) -> isize {
   |               ^^^^^^^^^^^^^^^^^^^ required by this bound in `call_it`

error[E0277]: expected a `FnMut<(&isize,)>` closure, found `for<'a> extern "C" fn(&'a isize) -> isize {square}`
  --> $DIR/unboxed-closures-wrong-abi.rs:25:25
   |
LL |     let y = call_it_mut(&mut square, 22);
   |             ----------- ^^^^^^^^^^^ expected an `FnMut<(&isize,)>` closure, found `for<'a> extern "C" fn(&'a isize) -> isize {square}`
   |             |
   |             required by a bound introduced by this call
   |
   = help: the trait `for<'a> FnMut<(&'a isize,)>` is not implemented for fn item `for<'a> extern "C" fn(&'a isize) -> isize {square}`
note: required by a bound in `call_it_mut`
  --> $DIR/unboxed-closures-wrong-abi.rs:12:19
   |
LL | fn call_it_mut<F: FnMut(&isize) -> isize>(_: &mut F, _: isize) -> isize {
   |                   ^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `call_it_mut`

error[E0277]: expected a `FnOnce<(&isize,)>` closure, found `for<'a> extern "C" fn(&'a isize) -> isize {square}`
  --> $DIR/unboxed-closures-wrong-abi.rs:30:26
   |
LL |     let z = call_it_once(square, 22);
   |             ------------ ^^^^^^ expected an `FnOnce<(&isize,)>` closure, found `for<'a> extern "C" fn(&'a isize) -> isize {square}`
   |             |
   |             required by a bound introduced by this call
   |
   = help: the trait `for<'a> FnOnce<(&'a isize,)>` is not implemented for fn item `for<'a> extern "C" fn(&'a isize) -> isize {square}`
note: required by a bound in `call_it_once`
  --> $DIR/unboxed-closures-wrong-abi.rs:15:20
   |
LL | fn call_it_once<F: FnOnce(&isize) -> isize>(_: F, _: isize) -> isize {
   |                    ^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `call_it_once`

error: aborting due to 3 previous errors

For more information about this error, try `rustc --explain E0277`.
