about summary refs log tree commit diff
path: root/compiler/rustc_llvm/llvm-wrapper/PassWrapper.cpp
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2021-09-21 10:33:15 +0000
committerbors <bors@rust-lang.org>2021-09-21 10:33:15 +0000
commitdda2a0eca4a70acbdd2b65f5fc5e4cd38c39351b (patch)
treed27b21c4eda7a9a8b3e6a144493d95cedcc3d833 /compiler/rustc_llvm/llvm-wrapper/PassWrapper.cpp
parent49c0861ed0fa1d95186d88df0cd4310103e70957 (diff)
parentafb7472bcca54bffcab6841345cbf58e9f5dfa33 (diff)
downloadrust-dda2a0eca4a70acbdd2b65f5fc5e4cd38c39351b.tar.gz
rust-dda2a0eca4a70acbdd2b65f5fc5e4cd38c39351b.zip
Auto merge of #89045 - oli-obk:lazy_normalization_in_opaque_types, r=nikomatsakis
Register normalization obligations instead of immediately normalizing in opaque type instantiation

For lazy TAIT we will need to instantiate opaque types from within `rustc_infer`, which cannot invoke normalization methods (they are in `rustc_trait_resolution`). So before we move the logic over to `rustc_infer`, we need make sure no normalization happens anymore. This PR resolves that by just registering normalization obligations and continuing.

This PR is best reviewed commit by commit

I also included f7ad36e which is just an independent cleanup that touches the same code and reduces diagnostics noise a bit

r? `@nikomatsakis` cc `@spastorino`
Diffstat (limited to 'compiler/rustc_llvm/llvm-wrapper/PassWrapper.cpp')
0 files changed, 0 insertions, 0 deletions