diff options
| author | Ali MJ Al-Nasrawy <alimjalnasrawy@gmail.com> | 2022-09-17 21:35:47 +0300 |
|---|---|---|
| committer | Ali MJ Al-Nasrawy <alimjalnasrawy@gmail.com> | 2023-01-07 13:38:38 +0300 |
| commit | d227506683e846cbeb872e089d660187a7a6041f (patch) | |
| tree | 97757eecf7d6c28f320b8cfdf1bc8601be4f713f /compiler/rustc_interface/src/errors.rs | |
| parent | 93bf84c9021350608607330175d0513f71f0f967 (diff) | |
| download | rust-d227506683e846cbeb872e089d660187a7a6041f.tar.gz rust-d227506683e846cbeb872e089d660187a7a6041f.zip | |
don't normalize in astconv
We delay projection normalization to further stages in order to
register user type annotations before normalization in HIR typeck.
There are two consumers of astconv: ItemCtxt and FnCtxt.
The former already expects unnormalized types from astconv, see its
AstConv trait impl.
The latter needs `RawTy` for a cleaner interface.
Unfortunately astconv still needs the normalization machinery in
order to resolve enum variants that have projections in the self type,
e.g. `<<T as Trait>::Assoc>::StructVariant {}`.
This is why `AstConv::normalize_ty_2` is necessary.
Diffstat (limited to 'compiler/rustc_interface/src/errors.rs')
0 files changed, 0 insertions, 0 deletions
