//@ known-bug: #130797 trait Transform { type Output<'a>; } trait Propagate {} trait AddChild { fn add_child(&self) {} } pub struct Node(T); impl AddChild Propagate>>> for Node where T: Transform {} fn make_graph_root() { Node(Dummy).add_child() } struct Dummy; impl Transform for Dummy { type Output<'a> = (); } pub fn main() {}