diff options
author | bors[bot] <26634292+bors[bot]@users.noreply.github.com> | 2020-06-05 16:46:28 +0100 |
---|---|---|
committer | GitHub <[email protected]> | 2020-06-05 16:46:28 +0100 |
commit | 2a3ab7f3b4b6f1917a55025d54ac39b0a0642b6e (patch) | |
tree | c8aa32697a5c7910f8ebbcacf6e06d088bfca833 /crates/ra_hir_def/src/path/lower.rs | |
parent | f133159ec0b5037b58a26f52f8b37c545872dc7d (diff) | |
parent | 0d2328f3eaf69c6a50fe6c1e946257bd3503d751 (diff) |
Merge #4689
4689: Implement return position impl trait / opaque type support r=matklad a=flodiebold
This is working, but I'm not that happy with how the lowering works. We might need an additional representation between `TypeRef` and `Ty` where names are resolved and `impl Trait` bounds are separated out, but things like inference variables don't exist and `impl Trait` is always represented the same way.
Also note that this doesn't implement correct handling of RPIT *inside* the function (which involves turning the `impl Trait`s into variables and creating obligations for them). That intermediate representation might help there as well.
Co-authored-by: Florian Diebold <[email protected]>
Co-authored-by: Florian Diebold <[email protected]>
Diffstat (limited to 'crates/ra_hir_def/src/path/lower.rs')
0 files changed, 0 insertions, 0 deletions