tracking issue for rustc_dirty/clean
enhancements
#45009
Labels
A-incr-comp
Area: Incremental compilation
A-testsuite
Area: The testsuite used to check the correctness of rustc
C-tracking-issue
Category: An issue tracking the progress of sth. like the implementation of an RFC
E-help-wanted
Call for participation: Help is requested to fix this issue.
T-compiler
Relevant to the compiler team, which will review and decide on the PR/issue.
cc @michaelwoerister
this is partof #44924
I started this work in #44983, but I would like to break it out into three separate pull requests.
This feature will make it so that
rustc_clean(except="foo,bar")
will assert that ALL DefNode's are clean (which is different depending on which def-node it is) except for the ones given inexcept=
(which it asserts are dirty)Example syntax:
Instead of how it is currently done:
This should make testing incr-compilation more complete, less boilerplate and easier to read (but also an itty bit more magic)
This work is split into three parts:
label=
to support that functionality inexcept
in the future. This requires a couple of changes tolibrustc
, so I want to merge it separately.except=
and detect theDefNode
and do correct assertions. Also use it in a couple of test files (continue to supportlabel=
)Node
enum, which can be gotten fromhir.get
. From there I will construct the expected fields that could change. The initial implementation will just use the ones suggested in incr.comp.: Update fingerprint-based auto tests for red/green tracking. #44924label=
and remove from all tests.Item 1 adds
rustc::dep_graph::dep_node::label_strs
so that we can specify groups in this way:The text was updated successfully, but these errors were encountered: