summary refs log tree commit diff
path: root/src/librustc/middle/implicator.rs
AgeCommit message (Collapse)AuthorLines
2015-04-30Stop using Rc in TraitRef and TraitDefAriel Ben-Yehuda-3/+2
The former stopped making sense when we started interning substs and made TraitRef a 2-word copy type, and I'm moving the latter into an arena as they live as long as the type context.
2015-04-18Rather than storing the relations between free-regions in a globalNiko Matsakis-0/+487
table, introduce a `FreeRegionMap` data structure. regionck computes the `FreeRegionMap` for each fn and stores the result into the tcx so that borrowck can use it (this could perhaps be refactored to have borrowck recompute the map, but it's a bid tedious to recompute due to the interaction of closures and free fns). The main reason to do this is because of #22779 -- using a global table was incorrect because when validating impl method signatures, we want to use the free region relationships from the *trait*, not the impl. Fixes #22779.