23 lines
324 B
Rust
23 lines
324 B
Rust
// check-pass
|
|
|
|
trait Captures<'a> {}
|
|
impl<T> Captures<'_> for T {}
|
|
|
|
fn foo(x: &mut i32) -> impl Sized + Captures<'_> + 'static {}
|
|
|
|
fn overlapping_mut() {
|
|
let i = &mut 1;
|
|
let x = foo(i);
|
|
let y = foo(i);
|
|
}
|
|
|
|
fn live_past_borrow() {
|
|
let y;
|
|
{
|
|
let x = &mut 1;
|
|
y = foo(x);
|
|
}
|
|
}
|
|
|
|
fn main() {}
|