We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
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
This triggers a bug (comes from investigating #270 - it is a different bug):
pub enum List<T> { Cons(T, Box<List<T>>), Nil, } fn foo(h : &u8, mut t: &List<u8>) { let mut last = h; while let List::Cons(ht, tt) = t { last = ht; t = &*tt; } }
The error is:
[Error] In file InterpreterLoopsFixedPoint.ml, line 680: The sets of abstractions we need to end per region group are not pairwise disjoint
If we use the same lifetime for the two shared borrows, the translation succeeds:
pub enum List<T> { Cons(T, Box<List<T>>), Nil, } fn foo<'a>(h : &'a u8, mut t: &'a List<u8>) { let mut last = h; while let List::Cons(ht, tt) = t { last = ht; t = &*tt; } }
The issue will be solved once we finish generalizing the support for loops (to add nested loops for instance).
The text was updated successfully, but these errors were encountered:
sonmarcho
No branches or pull requests
This triggers a bug (comes from investigating #270 - it is a different bug):
The error is:
If we use the same lifetime for the two shared borrows, the translation succeeds:
The issue will be solved once we finish generalizing the support for loops (to add nested loops for instance).
The text was updated successfully, but these errors were encountered: