//@ run-pass #![allow(dead_code)] #![allow(unused_mut)] #![allow(unused_variables)] pub struct Registry<'a> { listener: &'a mut (), } pub struct Listener<'a> { pub announce: Option>, pub remove: Option>, } impl<'a> Drop for Registry<'a> { fn drop(&mut self) {} } fn main() { let mut registry_listener = Listener { announce: None, remove: None, }; }