fn foo(x: T) where T: Debug %( ) fn foo(x: T) where T: Debug %( ) impl X for T where T: Debug %( ) impl X for T where T: Debug %( ) struct X where T: Debug %( ) struct X where T: Debug %( ) enum X where T: Debug %( ) enum X where T: Debug %( ) union X where T: Debug %( ) union X where T: Debug %( )