Skip to content
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Commit 47582b2

Browse files
committedAug 1, 2024
Auto merge of #127624 - Oneirical:a-test-of-lime, r=jieyouxu
Migrate and rename `issue-47551`, `issue-35164` and `issue-69368` `run-make` tests to rmake Part of #121876 and the associated [Google Summer of Code project](https://blog.rust-lang.org/2024/05/01/gsoc-2024-selected-projects.html). try-job: x86_64-mingw try-job: x86_64-gnu-llvm-18 try-job: i686-msvc try-job: aarch64-apple try-job: test-various try-job: armhf-gnu
2 parents e60ebb2 + 01a2662 commit 47582b2

File tree

14 files changed

+59
-37
lines changed

14 files changed

+59
-37
lines changed
 

‎src/tools/run-make-support/src/command.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -247,7 +247,7 @@ impl CompletedProcess {
247247
/// Checks that `stderr` does not contain `unexpected`.
248248
#[track_caller]
249249
pub fn assert_stderr_not_contains<S: AsRef<str>>(&self, unexpected: S) -> &Self {
250-
assert_not_contains(&self.stdout_utf8(), unexpected);
250+
assert_not_contains(&self.stderr_utf8(), unexpected);
251251
self
252252
}
253253

‎src/tools/tidy/src/allowed_run_make_makefiles.txt

-3
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,7 @@ run-make/fmt-write-bloat/Makefile
1414
run-make/foreign-double-unwind/Makefile
1515
run-make/foreign-exceptions/Makefile
1616
run-make/incr-add-rust-src-component/Makefile
17-
run-make/issue-35164/Makefile
1817
run-make/issue-36710/Makefile
19-
run-make/issue-47551/Makefile
20-
run-make/issue-69368/Makefile
2118
run-make/issue-84395-lto-embed-bitcode/Makefile
2219
run-make/issue-88756-default-output/Makefile
2320
run-make/jobserver-error/Makefile
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
// Test that previously triggered a linker failure with root cause
2+
// similar to one found in the issue #69368.
3+
//
4+
// The crate that provides oom lang item is missing some other lang
5+
// items. Necessary to prevent the use of start-group / end-group.
6+
//
7+
// The weak lang items are defined in a separate compilation units,
8+
// so that linker could omit them if not used.
9+
//
10+
// The crates that need those weak lang items are dependencies of
11+
// crates that provide them.
12+
// See https://github.com/rust-lang/rust/issues/69371
13+
14+
use run_make_support::rustc;
15+
16+
fn main() {
17+
rustc().input("a.rs").run();
18+
rustc().input("b.rs").run();
19+
rustc().input("c.rs").run();
20+
}

‎tests/run-make/issue-35164/Makefile

-4
This file was deleted.

‎tests/run-make/issue-47551/Makefile

-10
This file was deleted.

‎tests/run-make/issue-69368/Makefile

-19
This file was deleted.
File renamed without changes.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
// The byte positions in json format error logging used to have a small, difficult
2+
// to predict offset. This was changed to be the top of the file every time in #42973,
3+
// and this test checks that the measurements appearing in the standard error are correct.
4+
// See https://github.com/rust-lang/rust/issues/35164
5+
6+
use run_make_support::rustc;
7+
8+
fn main() {
9+
rustc()
10+
.input("main.rs")
11+
.error_format("json")
12+
.run()
13+
.assert_stderr_contains(r#""byte_start":23"#)
14+
.assert_stderr_contains(r#""byte_end":29"#);
15+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
// The gcc driver is supposed to add a terminator to link files, and the rustc
2+
// driver previously failed to do this, resulting in a segmentation fault
3+
// with an older version of LLVM. This test checks that the terminator is present
4+
// after the fix in #85395.
5+
// See https://github.com/rust-lang/rust/issues/47551
6+
7+
//@ only-linux
8+
// Reason: the ZERO terminator is unique to the Linux architecture.
9+
//@ ignore-32bit
10+
// Reason: the usage of a large array in the test causes an out-of-memory
11+
// error on 32 bit systems.
12+
13+
use run_make_support::{bin_name, llvm_objdump, run, rustc};
14+
15+
fn main() {
16+
rustc().input("eh_frame-terminator.rs").run();
17+
run("eh_frame-terminator").assert_stdout_contains("1122334455667788");
18+
llvm_objdump()
19+
.arg("--dwarf=frames")
20+
.input(bin_name("eh_frame-terminator"))
21+
.run()
22+
.assert_stdout_contains("ZERO terminator");
23+
}

0 commit comments

Comments
 (0)
Failed to load comments.