about summary refs log tree commit diff
path: root/compiler/rustc_codegen_gcc
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2024-04-07 10:46:50 +0000
committerbors <bors@rust-lang.org>2024-04-07 10:46:50 +0000
commit5d765b8cc19144726b15047f9cc48c944f00d6ff (patch)
treeaab117757d8bafd57384af3a3dc534533500dbc6 /compiler/rustc_codegen_gcc
parent3549d9806d90853fc857e3bff964b7364c45659d (diff)
parent6669758fb32c376a411c777bebdfd11855d2e447 (diff)
downloadrust-5d765b8cc19144726b15047f9cc48c944f00d6ff.tar.gz
rust-5d765b8cc19144726b15047f9cc48c944f00d6ff.zip
Auto merge of #123221 - pacak:cache_emit, r=fmease,jieyouxu
Save/restore more items in cache with incremental compilation

Right now they don't play very well together, consider a simple example:

```
$ export RUSTFLAGS="--emit asm"
$ cargo new --lib foo
     Created library `foo` package
$ cargo build -q
$ touch src/lib.rs
$ cargo build
error: could not copy
  "/path/to/foo/target/debug/deps/foo-e307cc7fa7b6d64f.4qbzn9k8mosu50a5.rcgu.s"
  to "/path/to/foo/target/debug/deps/foo-e307cc7fa7b6d64f.s":
  No such file or directory (os error 2)
```

Touch triggers the rebuild, incremental compilation detects no changes (yay) and everything explodes while trying to copy files were they should go.

This pull request fixes it by copying and restoring more files in the incremental compilation cache

Fixes https://github.com/rust-lang/rust/issues/89149
Fixes https://github.com/rust-lang/rust/issues/88829

Related: https://internals.rust-lang.org/t/interaction-between-incremental-compilation-and-emit/20551
Diffstat (limited to 'compiler/rustc_codegen_gcc')
0 files changed, 0 insertions, 0 deletions