With `rustc` version 1.44.1, the following expression evaluates to minus infinity, instead of the correct value of approximately -18.7: ```rust fn main() { let x = (-67886600.94408971f64).asinh(); assert!(!x.is_infinite()); } ``` Perhaps taking the absolute value of the first `self` in the [implementation of `asinh`](https://doc.rust-lang.org/src/std/f64.rs.html#836) would make it more numerically stable?