Skip to content

Commit

Permalink
Auto merge of #3406 - RalfJung:many-seeds, r=RalfJung
Browse files Browse the repository at this point in the history
many-seeds: propagate failure properly

This may help explain #3405.
  • Loading branch information
bors committed Mar 24, 2024
2 parents c8649a5 + 5759160 commit 344ea00
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 6 deletions.
3 changes: 2 additions & 1 deletion ci/ci.sh
Original file line number Diff line number Diff line change
Expand Up @@ -58,8 +58,9 @@ function run_tests {
MIRIFLAGS="${MIRIFLAGS:-} -O -Zmir-opt-level=4 -Cdebug-assertions=yes" MIRI_SKIP_UI_CHECKS=1 ./miri test -- tests/{pass,panic}

# Also run some many-seeds tests. 64 seeds means this takes around a minute per test.
# (Need to invoke via explicit `bash -c` for Windows.)
for FILE in tests/many-seeds/*.rs; do
MIRI_SEEDS=64 ./miri many-seeds ./miri run "$FILE"
MIRI_SEEDS=64 ./miri many-seeds "$BASH" -c "./miri run '$FILE'"
done

# Check that the benchmarks build and run, but without actually benchmarking.
Expand Down
10 changes: 5 additions & 5 deletions miri-script/src/commands.rs
Original file line number Diff line number Diff line change
Expand Up @@ -178,7 +178,7 @@ impl Command {
.context("Please install rustup-toolchain-install-master by running 'cargo install rustup-toolchain-install-master'")?;
let sh = Shell::new()?;
sh.change_dir(miri_dir()?);
let new_commit = Some(sh.read_file("rust-version")?.trim().to_owned());
let new_commit = sh.read_file("rust-version")?.trim().to_owned();
let current_commit = {
let rustc_info = cmd!(sh, "rustc +miri --version -v").read();
if rustc_info.is_err() {
Expand All @@ -193,7 +193,7 @@ impl Command {
}
};
// Check if we already are at that commit.
if current_commit == new_commit {
if current_commit.as_ref() == Some(&new_commit) {
if active_toolchain()? != "miri" {
cmd!(sh, "rustup override set miri").run()?;
}
Expand All @@ -202,7 +202,7 @@ impl Command {
// Install and setup new toolchain.
cmd!(sh, "rustup toolchain uninstall miri").run()?;

cmd!(sh, "rustup-toolchain-install-master -n miri -c cargo -c rust-src -c rustc-dev -c llvm-tools -c rustfmt -c clippy {flags...} -- {new_commit...}").run()?;
cmd!(sh, "rustup-toolchain-install-master -n miri -c cargo -c rust-src -c rustc-dev -c llvm-tools -c rustfmt -c clippy {flags...} -- {new_commit}").run()?;
cmd!(sh, "rustup override set miri").run()?;
// Cleanup.
cmd!(sh, "cargo clean").run()?;
Expand Down Expand Up @@ -380,9 +380,9 @@ impl Command {
.env("MIRIFLAGS", miriflags)
.quiet()
.run();
if status.is_err() {
if let Err(err) = status {
println!("Failing seed: {seed}");
break;
return Err(err.into());
}
}
Ok(())
Expand Down

0 comments on commit 344ea00

Please sign in to comment.