]> git.lizzy.rs Git - rust.git/commit - src/tools/rust-analyzer
Auto merge of #82495 - LeSeulArtichaut:eager-thir, r=oli-obk
authorbors <bors@rust-lang.org>
Thu, 11 Mar 2021 15:34:01 +0000 (15:34 +0000)
committerbors <bors@rust-lang.org>
Thu, 11 Mar 2021 15:34:01 +0000 (15:34 +0000)
commit61365c06250e2ba6e0a578ae990f055ac5339107
tree62d05029146ad72ec2831eb470ac095814e01506
parent5c6d3bf3896b465e15550f49c2861e3d18102270
parentd6c737adb50e194beca9cf0c0a87037738ae8a58
Auto merge of #82495 - LeSeulArtichaut:eager-thir, r=oli-obk

Eagerly construct bodies of THIR

With this PR:
 - the THIR is no longer constructed lazily, but is entirely built before being passed to the MIR Builder
 - the THIR is now allocated in arenas instead of `Box`es

However, this PR doesn't make any changes to the way patterns are constructed: they are still boxed, and exhaustiveness checking is unchanged.

Implements MCP rust-lang/compiler-team#409.
Closes rust-lang/project-thir-unsafeck#1.
r? `@ghost` cc `@nikomatsakis` `@oli-obk`
compiler/rustc_mir_build/src/build/mod.rs