//@ compile-flags: --document-private-items --document-hidden-items // This is a regression test for #98009. // @has "$.index[*][?(@.name=='this_compiles')]" // @has "$.index[*][?(@.name=='this_does_not')]" // @has "$.index[*][?(@.name=='Events')]" // @has "$.index[*][?(@.name=='Other')]" // @has "$.index[*][?(@.name=='Trait')]" struct Events(R); struct Other; pub trait Trait { fn handle(value: T) -> Self; } impl Trait for T where T: From { fn handle(_: U) -> Self { unimplemented!() } } impl<'a, R> Trait<&'a mut Events> for Other { fn handle(_: &'a mut Events) -> Self { unimplemented!() } } fn this_compiles<'a, R>(value: &'a mut Events) { for _ in 0..3 { Other::handle(&mut *value); } } fn this_does_not<'a, R>(value: &'a mut Events) { for _ in 0..3 { Other::handle(value); } }