-
Notifications
You must be signed in to change notification settings - Fork 12.3k
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
Capture precise paths in THIR and MIR #79553
Commits on Dec 6, 2020
-
Writeback min_capture map to TypeckResults
- Derive TypeFoldable on `hir::place::Place` and associated structs, to them to be written into typeck results. Co-authored-by: Jennifer Wills <wills.jenniferg@gmail.com> Co-authored-by: Logan Mosier <logmosier@gmail.com>
Configuration menu - View commit details
-
Copy full SHA for 76c68aa - Browse repository at this point
Copy the full SHA 76c68aaView commit details -
Use min_captures for creating UpvarSusbts::tupled_upvar_tys
- final_upvar_tys now reads types from places instead of using `node_ty` Co-authored-by: Roxane Fruytier <roxane.fruytier@hotmail.com>
Configuration menu - View commit details
-
Copy full SHA for 6e5cca7 - Browse repository at this point
Copy the full SHA 6e5cca7View commit details -
Move handling UpvarRef to PlaceBuilder
- This allows us to delay figuring out the index of a capture in the closure structure when all projections to atleast form a capture have been applied to the builder Co-authored-by: Roxane Fruytier <roxane.fruytier@hotmail.com>
Configuration menu - View commit details
-
Copy full SHA for d952362 - Browse repository at this point
Copy the full SHA d952362View commit details
Commits on Dec 10, 2020
-
Use Places for captures in MIR
- Use closure_min_capture maps to capture precise paths - PlaceBuilder now searches for ancestors in min_capture list - Add API to `Ty` to allow access to the n-th element in a tuple in O(1) time. Co-authored-by: Roxane Fruytier <roxane.fruytier@hotmail.com>
Configuration menu - View commit details
-
Copy full SHA for 6a1d069 - Browse repository at this point
Copy the full SHA 6a1d069View commit details -
Use precise places when lowering Closures in THIR
- Closures now use closure_min_captures to figure out captured paths - Build upvar_mutbls using closure_min_captures - Change logic in limit_capture_mutability to differentiate b/w capturing parent's local variable or capturing a variable that is captured by the parent (in case of nested closure) using PlaceBase. Co-authored-by: Roxane Fruytier <roxane.fruytier@hotmail.com>
Configuration menu - View commit details
-
Copy full SHA for e2efdd1 - Browse repository at this point
Copy the full SHA e2efdd1View commit details -
Use closure_min_captures in borrow checker
- Use closure_min_captures to generate the Upvar structure that stores information for diagnostics and information about mutability of captures.
Configuration menu - View commit details
-
Copy full SHA for 237ad12 - Browse repository at this point
Copy the full SHA 237ad12View commit details
Commits on Dec 11, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 01df563 - Browse repository at this point
Copy the full SHA 01df563View commit details