Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Visualizing outlives-constraints and lifetime parameters #81

Open
willcrichton opened this issue May 15, 2023 · 0 comments
Open

Visualizing outlives-constraints and lifetime parameters #81

willcrichton opened this issue May 15, 2023 · 0 comments

Comments

@willcrichton
Copy link
Collaborator

To talk about borrow checker errors involving lifetime parameters, we designed a "flow permission" that is distinct from read/write/own (RWO). See this section of the Rust Book Experiment for explanation: https://rust-book.cs.brown.edu/ch04-02-references-and-borrowing.html#data-must-outlive-all-of-its-references

This flow permission is unsatisfactory because, unlike RWO, it doesn't have a "state" that can be visualized. The issue is that we don't have any way to talk about the outlives-constraints in the program, namely the outlives-constraints between function parameters, and their relation to outlives-constraints induced in the function body.

We are interested in either refining or replacing the flow permission. The ultimate goal of the refinement/replacement is to help Rust users understand how lifetime parameters work.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant