//@ check-fail | |
#![feature(auto_traits)] | |
auto trait AutoTrait {} | |
trait Trait { | |
fn static_lifetime_bound(&self) where Self: 'static {} | |
fn arg_lifetime_bound<'a>(&self, _arg: &'a ()) where Self: 'a {} | |
fn autotrait_bound(&self) where Self: AutoTrait {} | |
} | |
impl Trait for () {} | |
fn main() { | |
let trait_object = &() as &dyn Trait; | |
trait_object.static_lifetime_bound(); | |
trait_object.arg_lifetime_bound(&()); | |
trait_object.autotrait_bound(); //~ ERROR: the trait bound `dyn Trait: AutoTrait` is not satisfied | |
} |