As spotted in [this internals thread](https://internals.rust-lang.org/t/interaction-of-user-defined-and-integral-fallbacks-with-inference/2496/23?u=nagisa): ``` rust use std::fmt::Debug; struct Foo; fn show<T: Debug = Foo>(t: T) { println!("{:?}", t) } ``` compiles. Lack of early error/warning/lint here might be hiding bugs in API design if the default never actually kicks in inside the library.