Some logging frameworks will format things sent to the `error!` macro twice. Some possible solutions: 1. Print a "iterator exhausted" message instead of panicking 2. Impose a `Clone` bound on the iterator being formatted so that we can format it multiple times 3. Doesn't `fmt` return a `Result` anyway? Why not just return `Err`?