When the parameter of the Poisson distribution is set to f64::INFINITY the sample function doesn't panic but instead loop and never stops. For example:
use rand_distr::{Poisson, Distribution};
fn main() {
let lambda = f64::INFINITY;
let poi = Poisson::new(lambda).unwrap();
println!("{:?}", poi.sample(&mut rand::thread_rng()));
}