-
Notifications
You must be signed in to change notification settings - Fork 12
Non-lexical lifetimes #16
Comments
@pnkfelix Can you flesh out this issue with a paragraph or two of overview, and some bullets for the status? |
@aturon can you give me edit access to the issue description? |
@pnkfelix Gah! Done now. |
(Please restrict comments to discussions about how to achieve the goal and for tracking progress towards the goal) |
Updates: a basic design is being proposed in a new blog series: |
Updates: added notes regarding |
I've occasionally run into with a function like |
@pnkfelix Your branch seems to have been silent for a while. Are there any blockers here and what is the current status? |
@vadixidav I've been just watching from afar here, but it looks like (according to the Rust Blog) the design is not quite complete enough to finish implementing? |
FYI, this issue is still one of the top Google results for "rust non-lexical lifetimes" and variations thereof. It might be good to link to rust-lang/rust#43234 or something in the top comment. |
Point of contact
@pnkfelix @nikomatsakis
Tracking issue: rust-lang/rust#43234
Overview
See @nikomatsakis's blog posts (intro, NLL via liveness, the outlives relation) for an overview.
We want the lifetimes implicitly attached to borrows
&expr
to be refined, so that instead of being associated (sometimes loosely) with a lexical scope, each lifetime would now map to something else, (e.g. a set of points in the control-flow graph, though this alone is problematic unless it includes some context-sensitivity incorporating liveness)A proposed design appears in a more recent blog series:
Status
(steps needed for NLL and their current status)
EndRegion
statements) MIR EndRegion Statements (was MIR dataflow for Borrows) rust#39409EndRegion
statements and allow more (sound) code through.The text was updated successfully, but these errors were encountered: