This function is going to have crazy behavior because of the type infrefnrencing. I think what you really want is `specialize.argtype(1)` and then to really check if the value fits inside the bounds of an `int`, otherwise use `rbigint.fromrarith_int`.