willcrichton/flowistry

Look into spurious control dependencies within async code

willcrichton opened this issue · 0 comments

Example:

async fn bar() -> i32 {
    0
}
async fn foo(w: i32) {
   let x = bar().await;
   let y = x + w;
   let z = bar().await;
}

z is said to depend on let x = bar().await. How come?

cc @JustusAdam