1
Fork 0

Rollup merge of #88709 - BoxyUwU:thir-abstract-const, r=lcnr

generic_const_exprs: use thir for abstract consts instead of mir

Changes `AbstractConst` building to use `thir` instead of `mir` so that there's less chance of consts unifying when they shouldn't because lowering to mir dropped information (see `abstract-consts-as-cast-5.rs` test)

r? `@lcnr`
This commit is contained in:
Manish Goregaokar 2021-09-12 03:44:56 -07:00 committed by GitHub
commit f5ac5cadd3
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
35 changed files with 357 additions and 372 deletions

View file

@ -306,7 +306,6 @@ fn mir_promoted(
// this point, before we steal the mir-const result.
// Also this means promotion can rely on all const checks having been done.
let _ = tcx.mir_const_qualif_opt_const_arg(def);
let _ = tcx.mir_abstract_const_opt_const_arg(def.to_global());
let mut body = tcx.mir_const(def).steal();
let mut required_consts = Vec::new();