use std::ops::{Fn,FnMut,FnOnce};
-unsafe fn square(x: int) -> int { x * x }
-// note: argument type here is `int`, not `&int`
+unsafe fn square(x: isize) -> isize { x * x }
+// note: argument type here is `isize`, not `&isize`
-fn call_it<F:Fn(&int)->int>(_: &F, _: int) -> int { 0 }
-fn call_it_mut<F:FnMut(&int)->int>(_: &mut F, _: int) -> int { 0 }
-fn call_it_once<F:FnOnce(&int)->int>(_: F, _: int) -> int { 0 }
+fn call_it<F:Fn(&isize)->isize>(_: &F, _: isize) -> isize { 0 }
+fn call_it_mut<F:FnMut(&isize)->isize>(_: &mut F, _: isize) -> isize { 0 }
+fn call_it_once<F:FnOnce(&isize)->isize>(_: F, _: isize) -> isize { 0 }
fn a() {
let x = call_it(&square, 22); //~ ERROR not implemented