prototype NLL inference infrastructure #44904
Labels
A-NLL
Area: Non-lexical lifetimes (NLL)
E-mentor
Call for participation: This issue has a mentor. Use #t-compiler/help on Zulip for discussion.
T-compiler
Relevant to the compiler team, which will review and decide on the PR/issue.
Building on #44878,
In the nascent NLL code, we need to define the inference infrastructure. This is basically the code embodied by
infer.rs
in the prototype. In particular, this inference context ought to take ownership of the region values that were added in #44878. It would then also collect a series of constraints. In the prototype, those constraints take two forms:R: {P} @ P
).In the prototype, everything is a region variable, but some variables can capped, which means that it is an error if they grow. Effectively those variables then become constants. We might want to code things up a bit differently, so that outlives constraints can encode constants as well. In particular, this is needed to report hard errors relating to free regions.
The text was updated successfully, but these errors were encountered: