Module rustc_incremental::persist::dirty_clean
source · [−]Expand description
Debugging code to test fingerprints computed for query results. For each node marked with
#[rustc_clean]
we will compare the fingerprint from the current and from the previous
compilation session as appropriate:
-
#[rustc_clean(cfg="rev2", except="typeck")]
if we are in#[cfg(rev2)]
, then the fingerprints associated withDepNode::typeck(X)
must be DIFFERENT (X
is theDefId
of the current node). -
#[rustc_clean(cfg="rev2")]
same as above, except that the fingerprints must be the SAME (along with all other fingerprints). -
#[rustc_clean(cfg="rev2", loaded_from_disk='typeck")]
asserts that the query result forDepNode::typeck(X)
was actually loaded from disk (not just marked green). This can be useful to ensure that a test is actually exercising the deserialization logic for a particular query result. This can be combined withexcept
Errors are reported if we are in the suitable configuration but the required condition is not met.
Structs
Constants
impl
implementation of struct/traitDepNode
s.
Extra DepNode
s for functions and methods.DepNode
s.DepNode
s.DepNode
s.DepNode
s.DepNode
s.DepNode
s.Functions
#[rustc_clean]
attribute, scan for a cfg="foo"
attribute and check whether we have
a cfg flag called foo
.