#![feature(associated_type_defaults)] pub trait Foo { type Out: Default + ToString = T; } impl Foo for () { } impl Foo for () { type Out = bool; }