trait X {} impl A : X {} struct S { x: int, drop {} } impl S : X {} pub fn main(){}