Don't suggest moving tuple structs with a significant drop to late evaluation.

This commit is contained in:
Jason Newcomb 2022-10-08 11:23:05 -04:00
parent 2c8e473ffe
commit 39a7d000b6
3 changed files with 23 additions and 1 deletions

View file

@ -120,7 +120,7 @@ fn expr_eagerness<'tcx>(cx: &LateContext<'tcx>, e: &'tcx Expr<'_>) -> EagernessS
.expr_ty(e)
.has_significant_drop(self.cx.tcx, self.cx.param_env)
{
self.eagerness = Lazy;
self.eagerness = ForceNoChange;
return;
}
},

View file

@ -225,4 +225,15 @@ mod issue8239 {
}
}
mod issue9608 {
fn sig_drop() {
enum X {
X(std::fs::File),
Y(u32),
}
let _ = None.unwrap_or(X::Y(0));
}
}
fn main() {}

View file

@ -225,4 +225,15 @@ mod issue8239 {
}
}
mod issue9608 {
fn sig_drop() {
enum X {
X(std::fs::File),
Y(u32),
}
let _ = None.unwrap_or(X::Y(0));
}
}
fn main() {}