about summary refs log tree commit diff
path: root/src/test/incremental
AgeCommit message (Collapse)AuthorLines
2017-02-25rustc_typeck: hook up collect and item/body check to on-demand.Eduard-Mihai Burtescu-1/+4
2017-02-22detect "bootstrap outputs" when serializing the dep-graphNiko Matsakis-0/+40
Fixes #39828.
2017-02-09Auto merge of #39265 - est31:master, r=petrochenkovbors-2/+0
Stabilize static lifetime in statics Stabilize the "static_in_const" feature. Blockers before this PR can be merged: * [x] The [FCP with inclination to stabilize](https://github.com/rust-lang/rust/issues/35897#issuecomment-270441437) needs to be over. FCP lasts roughly three weeks, so will be over at Jan 25, aka this thursday. * [x] Documentation needs to be added (#37928) Closes #35897.
2017-02-08Rollup merge of #39582 - nikomatsakis:incr-comp-issue-39569, r=michaelwoeristerCorey Farwell-0/+38
Handle the case where an intermediate node can't be recreated This solution grows the graph, but this is quite the corner case. r? @michaelwoerister
2017-02-08Stabilize static in constest31-2/+0
Closes #35897.
2017-02-06fix case where some edges can't be recreated by expanding the graphNiko Matsakis-1/+1
cc #39569 -- almost certainly a fix for that
2017-02-06regr testNiko Matsakis-0/+38
2017-02-03Let the ICH testing framework check that all #[rustc_dirty] attrs have been ↵Michael Woerister-27/+183
actually checked.
2017-01-27Auto merge of #39281 - michaelwoerister:make-cc-incr-comp-opt-in, r=nikomatsakisbors-0/+15
incr.comp.: Make cross-crate tracking for incr. comp. opt-in. The current implementation of cross-crate dependency tracking can cause quite long compile times and high memory usage for some crates (see #39208 for example). This PR therefore makes that part of dependency tracking optional. Incremental compilation still works, it will only have very coarse dep-tracking for upstream crates. r? @nikomatsakis
2017-01-25rename `Tables` to `TypeckTables`Niko Matsakis-80/+80
2017-01-25merge TypeckItemBody and Tables depnodesNiko Matsakis-80/+80
2017-01-24incr.comp.: Make cross-crate tracking for incr. comp. opt-in.Michael Woerister-0/+15
2017-01-05ICH: Add some more test cases for trait impls.Michael Woerister-0/+152
2016-12-28rustc: move function arguments into hir::Body.Eduard-Mihai Burtescu-1/+11
2016-12-28rustc: separate bodies for static/(associated)const and embedded constants.Eduard-Mihai Burtescu-15/+35
2016-12-28rustc: separate TraitItem from their parent Item, just like ImplItem.Eduard-Mihai Burtescu-28/+140
2016-12-28Auto merge of #38479 - michaelwoerister:extern_mod_ich, r=nikomatsakisbors-0/+272
ICH: Fix and test foreign mod hashing. r? @nikomatsakis
2016-12-24Rollup merge of #38557 - michaelwoerister:inline-asm-ich, r=nikomatsakisSteve Klabnik-0/+265
incr. comp.: Improve InlineAsm hashing and add test case r? @nikomatsakis
2016-12-22ICH: Add test case for InlineAsm hashes.Michael Woerister-0/+265
2016-12-21ICH: Add test case for extern mods.Michael Woerister-0/+272
2016-12-20ICH: Add test cases for inherent impls.Michael Woerister-1/+409
2016-12-13Auto merge of #38325 - frewsxcv:rollup, r=frewsxcvbors-0/+786
Rollup of 7 pull requests - Successful merges: #37052, #37941, #38067, #38164, #38202, #38264, #38299 - Failed merges:
2016-12-12Rollup merge of #38202 - michaelwoerister:closure-ich-test, r=nikomatsakisCorey Farwell-0/+786
Some incr. comp. hash tests r? @nikomatsakis
2016-12-12incr.comp.: Avoid creating an edge to DepNode::Krate when generating ↵Michael Woerister-0/+40
debuginfo namespaces.
2016-12-09incr.comp.: Add test case for symbol visibility changesMichael Woerister-0/+42
2016-12-06ICH: Add missing annotations for struct constructor expr test case.Michael Woerister-0/+12
2016-12-06ICH: Add test case for enum constructor expressions.Michael Woerister-0/+387
2016-12-06ICH: Add test case for indexing expressions.Michael Woerister-0/+157
2016-12-06ICH: Add test case sensitive to function bodies in metadata.Michael Woerister-0/+86
2016-12-06ICH: Add test case for closure expressions.Michael Woerister-0/+144
2016-12-03Rollup merge of #37919 - nikomatsakis:incremental-36168, r=mwCorey Farwell-0/+112
add regression test for #36168 Fixes #36168 r? @michaelwoerister
2016-11-29Fix SVH tests some moreFlorian Diebold-166/+228
2016-11-29Address remaining review commentsFlorian Diebold-0/+5
2016-11-29Fix remaining SVH testsFlorian Diebold-37/+101
2016-11-29WIP: update tests to pass -- not completeNiko Matsakis-33/+51
2016-11-29restructure `CollectItem` dep-node to separate fn sigs from bodiesNiko Matsakis-14/+7
Setup two tasks, one of which only processes the signatures, in order to isolate the typeck entries for signatures from those for bodies. Fixes #36078 Fixes #37720
2016-11-29Make hello_world test work againFlorian Diebold-6/+7
This used to work with the rustc_clean attribute, but doesn't anymore since my rebase; but I don't know enough about the type checking to find out what's wrong. The dep graph looks like this: ItemSignature(xxxx) -> CollectItem(xxxx) CollectItem(xxxx) -> ItemSignature(xxxx) ItemSignature(xxxx) -> TypeckItemBody(yyyy) HirBody(xxxx) -> CollectItem(xxxx) The cycle between CollectItem and ItemSignature looks wrong, and my guess is the CollectItem -> ItemSignature edge shouldn't be there, but I'm not sure how to prevent it.
2016-11-29Fix new testsFlorian Diebold-56/+184
2016-11-29Give function bodies their own dep graph nodeFlorian Diebold-9/+20
2016-11-28fixup test casesNiko Matsakis-14/+7
2016-11-22ICH: Add test case for struct constructor expressions.Michael Woerister-0/+254
2016-11-21add regression test for #36168Niko Matsakis-0/+119
Fixes #36168
2016-11-20Rollup merge of #37841 - michaelwoerister:ich-loop-tests, r=nikomatsakisGuillaume Gomez-0/+1049
ICH: Add regression tests for various kinds of loops. r? @nikomatsakis
2016-11-18remove FIXMEs; issue fixedNiko Matsakis-9/+5
2016-11-18improve commentsNiko Matsakis-11/+31
2016-11-18add test for adding a fieldNiko Matsakis-0/+142
2016-11-18add test for changing pub inherent method signatureNiko Matsakis-0/+117
2016-11-18add test for changing pub inherent method bodyNiko Matsakis-0/+107
Ideally, callers should not be affected, but they currently are.
2016-11-17Auto merge of #37660 - nikomatsakis:incremental-36349, r=eddybbors-20/+547
Separate impl items from the parent impl This change separates impl item bodies out of the impl itself. This gives incremental more resolution. In so doing, it refactors how the visitors work, and cleans up a bit of the collect/check logic (mostly by moving things out of collect that didn't really belong there, because they were just checking conditions). However, this is not as effective as I expected, for a kind of frustrating reason. In particular, when invoking `foo.bar()` you still wind up with dependencies on private items. The problem is that the method resolution code scans that list for methods with the name `bar` -- and this winds up touching *all* the methods, even private ones. I can imagine two obvious ways to fix this: - separating fn bodies from fn sigs (#35078, currently being pursued by @flodiebold) - a more aggressive model of incremental that @michaelwoerister has been advocating, in which we hash the intermediate results (e.g., the outputs of collect) so that we can see that the intermediate result hasn't changed, even if a particular impl item has changed. So all in all I'm not quite sure whether to land this or not. =) It still seems like it has to be a win in some cases, but not with the test cases we have just now. I can try to gin up some test cases, but I'm not sure if they will be totally realistic. On the other hand, some of the early refactorings to the visitor trait seem worthwhile to me regardless. cc #36349 -- well, this is basically a fix for that issue, I guess r? @michaelwoerister NB: Based atop of @eddyb's PR https://github.com/rust-lang/rust/pull/37402; don't land until that lands.
2016-11-17add test for hashing trait implsNiko Matsakis-0/+404