]> git.lizzy.rs Git - rust.git/commit - src/tools/clippy
Auto merge of #68298 - Mark-Simulacrum:binary-depdep-fix, r=petrochenkov
authorbors <bors@rust-lang.org>
Thu, 23 Jan 2020 03:48:07 +0000 (03:48 +0000)
committerbors <bors@rust-lang.org>
Thu, 23 Jan 2020 03:48:07 +0000 (03:48 +0000)
commit462fc37fa897f38cf7c08425b0a435d35a3a20c8
treec0fddf669631e584fc3f3621df71a1ff73ea68e8
parente23dd6687f7677a715765bff1fe5e63b906cb96b
parentbe663bf850fcdcedc678782e5e0945124d5791fb
Auto merge of #68298 - Mark-Simulacrum:binary-depdep-fix, r=petrochenkov

Avoid declaring a fake dependency edge

When we're producing an rlib, we do not need anything more than an rmeta file
for each of our dependencies (this is indeed utilized by Cargo for pipelining).
Previously, we were still storing the paths of possible rlib/dylib crates, which
meant that they could still plausibly be accessed. With -Zbinary-dep-depinfo,
that meant that Cargo thought that rustc was using both the rlib and an (earlier
emitted) rmeta, and so needed a recompile, as the rlib may have finished writing
*after* compilation started (for more detail, see issue 68149).

This commit changes metadata loading to not store the filepaths of dylib/rlib if
we're going to end up creating an rlib only.

Fixes #68149.
src/librustc_metadata/locator.rs