about summary refs log tree commit diff
path: root/src/test/incremental/thinlto
diff options
context:
space:
mode:
authorCorey Farwell <coreyf@rwell.org>2017-05-05 17:35:29 -0400
committerGitHub <noreply@github.com>2017-05-05 17:35:29 -0400
commit26e067b058102e3dcfef461a3f45f403fd456bb8 (patch)
treec9201a1edd4d92eb6fd8b0ca98b8bb0bf8dba03c /src/test/incremental/thinlto
parent9b2aacfdbe9569666d2d723bcde78ba3deef41a0 (diff)
parent3da5daf42587c9cece98a7b0985215cc40c31d58 (diff)
downloadrust-26e067b058102e3dcfef461a3f45f403fd456bb8.tar.gz
rust-26e067b058102e3dcfef461a3f45f403fd456bb8.zip
Rollup merge of #41734 - nikomatsakis:incr-comp-refactor-variance, r=pnkfelix
Refactor variance and remove last `[pub]` map

This PR refactors variance to work in a more red-green friendly way. Because red-green doesn't exist yet, it has to be a bit hacky. The basic idea is this:

- We compute a big map with the variance for all items in the crate; when you request variances for a particular item, we read it from the crate
- We now hard-code that traits are invariant (which they are, for deep reasons, not gonna' change)
- When building constraints, we compute the transitive closure of all things within the crate that depend on what using `TransitiveRelation`
    - this lets us gin up the correct dependencies when requesting variance of a single item

Ah damn, just remembered, one TODO:

- [x] Update the variance README -- ah, I guess the README updates I did are sufficient

r? @michaelwoerister
Diffstat (limited to 'src/test/incremental/thinlto')
0 files changed, 0 insertions, 0 deletions