error[E0597]: `x` does not live long enough --> tests/ui/example_opaque_vs_drop.rs:18:1 | 18 | / opaque! { 19 | | impl Opaque for FooKey { 20 | | type Kind<'a> = Foo<'a>; 21 | | } 22 | | } | | ^ | | | | | borrowed value does not live long enough | |_`x` dropped here while still borrowed | borrow might be used here, when `x` is dropped and runs the destructor for type `UBCheck>` | = note: this error originates in the macro `opaque` (in Nightly builds, run with -Z macro-backtrace for more info)