Skip to content

Commit b170a07

Browse files
committed
Auto merge of #8559 - ehuss:fix-lto-tests-flaky, r=alexcrichton
Fix sporadic lto test failures. These tests can fail because the order of the messages is not deterministic. The two `foo` jobs start in parallel, so the order can be swapped. Results in an error like: ``` ---- lto::test_profile stdout ---- running `/home/runner/work/cargo/cargo/target/debug/cargo test -v` thread 'lto::test_profile' panicked at ' Expected: execs but: differences: 6 - |[RUNNING] `rustc --crate-name foo [..]--crate-type lib --emit=dep-info,metadata,link -Cembed-bitcode=no[..]| + | Running `rustc --crate-name foo --edition=2018 src/lib.rs --error-format=json --json=diagnostic-rendered-ansi --emit=dep-info,link -C lto=thin -C debuginfo=2 --test -C metadata=af771ad588185fac -C extra-filename=-af771ad588185fac --out-dir /home/runner/work/cargo/cargo/target/cit/t1080/foo/target/debug/deps -L dependency=/home/runner/work/cargo/cargo/target/cit/t1080/foo/target/debug/deps --extern bar=/home/runner/work/cargo/cargo/target/cit/t1080/foo/target/debug/deps/libbar-398704963dd4e38b.rlib`| 7 - |[RUNNING] `rustc --crate-name foo [..]--emit=dep-info,link -C lto=thin [..]--test[..]| + | Running `rustc --crate-name foo --edition=2018 src/lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type lib --emit=dep-info,metadata,link -Cembed-bitcode=no -C debuginfo=2 -C metadata=1e8f5d385f4ffeb6 -C extra-filename=-1e8f5d385f4ffeb6 --out-dir /home/runner/work/cargo/cargo/target/cit/t1080/foo/target/debug/deps -L dependency=/home/runner/work/cargo/cargo/target/cit/t1080/foo/target/debug/deps --extern bar=/home/runner/work/cargo/cargo/target/cit/t1080/foo/target/debug/deps/libbar-398704963dd4e38b.rmeta`| ``` The failure rate is pretty small (depends heavily on the hardware).
2 parents 6fb3433 + 9533062 commit b170a07

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

tests/testsuite/lto.rs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -617,7 +617,8 @@ fn test_profile() {
617617
.build();
618618

619619
p.cargo("test -v")
620-
.with_stderr("\
620+
// unordered because the two `foo` builds start in parallel
621+
.with_stderr_unordered("\
621622
[UPDATING] [..]
622623
[DOWNLOADING] [..]
623624
[DOWNLOADED] [..]
@@ -669,7 +670,8 @@ fn dev_profile() {
669670
.build();
670671

671672
p.cargo("test -v")
672-
.with_stderr("\
673+
// unordered because the two `foo` builds start in parallel
674+
.with_stderr_unordered("\
673675
[UPDATING] [..]
674676
[DOWNLOADING] [..]
675677
[DOWNLOADED] [..]

0 commit comments

Comments
 (0)