Ah yes. We should probably go over those next time -- or maybe a bit async
I'll start off a topic?
https://github.com/rust-lang/rust/issues/61798 feels like something @varkor could have a look at
Potentially, yes. I can sort of imagine how this happens
there is probably some stuff in the desugaring that follows the
which (indeed) is dead code
probably something wrong with uninhabited analysis going on in the desugaring which doesn't care about await
we could probably suppress the lint by looking at the sppan
yeah that seems like a good idea
but we'd have to be a bit careful
i.e., you want
return; foo.await; to still lint :)
seems like a decent mentoring opportunity, too
I do not consider this blocking
Yeah, seems marginal
Broken MIR: generator contains type std::vec::Vec<()> #62025
maybe a dup of the other ICEs...
aww; that one in particular has the disadvantage of dependencies
would have easily reduced the thing otherwise
in the playground
@nikomatsakis does https://github.com/rust-lang/rust/issues/61949 get addressed by your PR perhaps?
That issue seems like it can have forward compat hazards since if you return
x: Foo<'static> instead and the compiler accepts it now, and we change the return type to
Foo<'a> then if
Foo is contra/invariant wrt. the lifetime parameter then it shouldn't borrowck...?
I hadn't seen that issue before -- I don't think it's addressed by my PR per se. If I understand what's going on, seems like it is indeed a dup of https://github.com/rust-lang/rust/issues/53613 (and hence orthogonal to async-await). You may be correct that a fix could be a breaking change.