Auto merge of #99867 - spastorino:refactor-remap-lifetimes, r=nikomatsakis

Split create_def and lowering of lifetimes for opaque types and bare async fns

r? `@cjgillot`

This work is kind of half-way, but I think it could be merged anyway.
I think we should be able to remove all the vacant arms in `new_named_lifetime_with_res`, if I'm not wrong that requires visiting more nodes. We can do that as a follow up.
In follow-up PRs, besides the thing mentioned previously, I'll be trying to remove `LifetimeCaptureContext`, `captured_lifetimes` as a global data structure, global `binders_to_ignore` and all their friends :).

Also try to remap in a more general way based on def-ids.
This commit is contained in:
bors 2022-08-05 06:35:12 +00:00
commit cdfd675a63
8 changed files with 579 additions and 287 deletions

View file

@ -0,0 +1,7 @@
// check-pass
pub fn iter<'a>(v: Vec<(u32, &'a u32)>) -> impl DoubleEndedIterator<Item = (u32, &u32)> {
v.into_iter()
}
fn main() {}