// run-pass #![deny(drop_bounds)] // As a special exemption, `impl Drop` in the return position raises no error. // This allows a convenient way to return an unnamed drop guard. fn unnameable_type() -> impl Drop { struct Unnameable; impl Drop for Unnameable { fn drop(&mut self) {} } Unnameable } fn main() { let _ = unnameable_type(); }