rust/compiler/rustc_metadata/src
Aaron Hill a895069c50
Include (potentially remapped) working dir in crate hash
Fixes #85019

A `SourceFile` created during compilation may have a relative
path (e.g. if rustc itself is invoked with a relative path).
When we write out crate metadata, we convert all relative paths
to absolute paths using the current working direction.

However, the working directory is not included in the crate hash.
This means that the crate metadata can change while the crate
hash remains the same. Among other problems, this can cause a
fingerprint mismatch ICE, since incremental compilation uses
the crate metadata hash to determine if a foreign query is green.

This commit moves the field holding the working directory from
`Session` to `Options`, including it as part of the crate hash.
2021-08-15 15:17:37 -05:00
..
dynamic_lib
rmeta Include (potentially remapped) working dir in crate hash 2021-08-15 15:17:37 -05:00
creader.rs Add back -Zno-profiler-runtime 2021-08-04 10:47:59 +01:00
dependency_format.rs Remove LibSource 2021-07-05 10:49:07 +02:00
dynamic_lib.rs Use #[non_exhaustive] where appropriate 2021-06-24 04:16:11 -04:00
foreign_modules.rs
lib.rs Auto merge of #85910 - cjgillot:no-meta-version, r=Aaron1011 2021-06-10 00:39:25 +00:00
locator.rs Replace #[plugin_registrar] with exporting __rustc_plugin_registrar 2021-08-10 14:20:48 +02:00
native_libs.rs Fix feature gate checking of static-nobundle and native_link_modifiers 2021-08-08 21:46:40 +08:00