//@ compile-flags: --crate-type=lib //@ check-pass // Make sure we don't pass inference variables to uninhabitedness checks in borrowck struct Command<'s> { session: &'s (), imp: std::convert::Infallible, } fn command(_: &()) -> Command<'_> { unreachable!() } fn with_session<'s>(a: &std::process::Command, b: &'s ()) -> Command<'s> { a.get_program(); command(b) }