diff options
| author | bors <bors@rust-lang.org> | 2017-05-13 17:56:09 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2017-05-13 17:56:09 +0000 |
| commit | 826d8f3850b37a23481dfcf4a899b5dfc82d22e3 (patch) | |
| tree | a560fcb5a4b63710295641b6d187087560d22104 /src/test/run-pass/thinlto | |
| parent | 77f1bec6f5eb9ed632c973b97b12701294e6d3a5 (diff) | |
| parent | 6da4123f5f819608fce49258bfa4f74fe195806b (diff) | |
| download | rust-826d8f3850b37a23481dfcf4a899b5dfc82d22e3.tar.gz rust-826d8f3850b37a23481dfcf4a899b5dfc82d22e3.zip | |
Auto merge of #41914 - eddyb:region-refactor, r=nikomatsakis
rustc: simpler ParameterEnvironment and free regions. The commits describe the slow transformation but the highlights are: * `ReEarlyBound` is considered free, with a scope based on the item that defined the lifetime parameter, and the root body of the `RegionMaps` in use, removing the need for `free_substs` * `liberate_late_bound_regions` and `implicit_region_bound` moved to typeck * `CodeExtent` not interned at all now - ideally it would be 2 `u32` but it's small anyway Future work building up on this could include: * `ParameterEnvironment` becoming just the result of `predicates_of` * interning makes my "parent chain" scheme unnecessary * `implicit_region_bound` could be retrieved from `RegionMaps` * renaming `CodeExtent` to `Scope` * generalizing "call site" to "use site" or something better to include constants * renaming `RegionMaps` to `ScopeTree` and its API to talk about "parents" explicitly
Diffstat (limited to 'src/test/run-pass/thinlto')
0 files changed, 0 insertions, 0 deletions
