// Detect and reject escaping late-bound generic params in // the type of assoc consts used in an equality bound. #![feature(associated_const_equality)] trait Trait<'a> { const K: &'a (); } fn take(_: impl for<'r> Trait<'r, K = { &() }>) {} //~^ ERROR the type of the associated constant `K` cannot capture late-bound generic parameters //~| NOTE its type cannot capture the late-bound lifetime parameter `'r` //~| NOTE the late-bound lifetime parameter `'r` is defined here //~| NOTE `K` has type `&'r ()` fn main() {}