pub(crate) fn prepare_session_directory(
sess: &Session,
) -> Result<(), ErrorGuaranteed>
Expand description
Allocates the private session directory.
If the result of this function is Ok
, we have a valid incremental
compilation session directory. A valid session
directory is one that contains a locked lock file. It may or may not contain
a dep-graph and work products from a previous session.
This always attempts to load a dep-graph from the directory.
If loading fails for some reason, we fallback to a disabled DepGraph
.
See rustc_interface::queries::dep_graph
.
If this function returns an error, it may leave behind an invalid session directory. The garbage collection will take care of it.