Skip to content
/ rust Public
forked from rust-lang/rust

Commit 8f9080d

Browse files
committed
Auto merge of rust-lang#124847 - Oneirical:master, r=jieyouxu
Document tests in the `run-make` directory (A to C) Part of the rust-lang#121876 project. This PR adds comments to some `run-make` tests which lack one, explaining _what_ is being tested. If possible, a link to the relevant PR or Issue responsible for the test is also provided. This will help the porting efforts to `rmake.rs`, and will also allow maintainers to focus efforts on tests which are more pertinent to port. For example, [this test](https://github.com/rust-lang/rust/blob/master/tests/run-make/cat-and-grep-sanity-check/Makefile) will become useless after all tests containing `CGREP` are successfully ported. In order to simplify review and at the suggestion of Kobzol on the rust-lang #gsoc Zulip, only the first 23 comments are part of this PR. If it is merged, future PRs will ensue commenting the rest of the tests. Could be an UI test: - `dep-info-doesnt-run-much`
2 parents e6e262f + bdab8b1 commit 8f9080d

File tree

23 files changed

+70
-0
lines changed

23 files changed

+70
-0
lines changed

tests/run-make/alloc-no-oom-handling/Makefile

+3
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
# This test checks that alloc can still compile correctly when the unstable no_global_oom_handling feature is turned on.
2+
# See https://github.com/rust-lang/rust/pull/84266
3+
14
include ../tools.mk
25

36
all:

tests/run-make/alloc-no-rc/Makefile

+3
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
# This test checks that alloc can still compile correctly when the unstable no_rc feature is turned on.
2+
# See https://github.com/rust-lang/rust/pull/89891
3+
14
include ../tools.mk
25

36
all:

tests/run-make/alloc-no-sync/Makefile

+3
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
# This test checks that alloc can still compile correctly when the unstable no_sync feature is turned on.
2+
# See https://github.com/rust-lang/rust/pull/89891
3+
14
include ../tools.mk
25

36
all:

tests/run-make/allocator-shim-circular-deps/Makefile

+5
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
# This test is designed to intentionally introduce a circular dependency scenario to check that a specific compiler bug doesn't make a resurgence.
2+
# The bug in question arose when at least one crate required a global allocator, and that crate was placed after the one defining it in the linker order.
3+
# The generated symbols.o should not result in any linker errors.
4+
# See https://github.com/rust-lang/rust/issues/112715
5+
16
# ignore-cross-compile
27
include ../tools.mk
38

tests/run-make/archive-duplicate-names/Makefile

+4
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
# When two object archives with the same filename are present, an iterator is supposed to inspect each object, recognize the duplication and extract each one to a different directory.
2+
# This test checks that this duplicate handling behaviour has not been broken.
3+
# See https://github.com/rust-lang/rust/pull/24439
4+
15
# ignore-cross-compile
26
include ../tools.mk
37

tests/run-make/bare-outfile/Makefile

+2
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
# This test checks that manually setting the output file as a bare file with no file extension still results in successful compilation.
2+
13
# ignore-cross-compile
24
include ../tools.mk
35

tests/run-make/c-dynamic-dylib/Makefile

+3
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
# This test checks that dynamic Rust linking with C does not encounter any errors, with dynamic dependencies given preference over static.
2+
# See https://github.com/rust-lang/rust/issues/10434
3+
14
# ignore-cross-compile
25
include ../tools.mk
36

tests/run-make/c-dynamic-rlib/Makefile

+3
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
# This test checks that dynamic Rust linking with C does not encounter any errors, with static dependencies given preference over dynamic. (This is the default behaviour.)
2+
# See https://github.com/rust-lang/rust/issues/10434
3+
14
# ignore-cross-compile
25
include ../tools.mk
36

tests/run-make/c-link-to-rust-dylib/Makefile

+3
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
# This test checks that C linking with Rust does not encounter any errors, with dynamic libraries.
2+
# See https://github.com/rust-lang/rust/issues/10434
3+
14
# ignore-cross-compile
25
include ../tools.mk
36

tests/run-make/c-link-to-rust-staticlib/Makefile

+3
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
# This test checks that C linking with Rust does not encounter any errors, with static libraries.
2+
# See https://github.com/rust-lang/rust/issues/10434
3+
14
# ignore-cross-compile
25
include ../tools.mk
36

tests/run-make/c-static-dylib/Makefile

+3
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
# This test checks that static Rust linking with C does not encounter any errors, with dynamic dependencies given preference over static.
2+
# See https://github.com/rust-lang/rust/issues/10434
3+
14
# ignore-cross-compile
25
include ../tools.mk
36

tests/run-make/c-static-rlib/Makefile

+3
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
# This test checks that static Rust linking with C does not encounter any errors, with static dependencies given preference over dynamic. (This is the default behaviour.)
2+
# See https://github.com/rust-lang/rust/issues/10434
3+
14
# ignore-cross-compile
25
include ../tools.mk
36

tests/run-make/c-unwind-abi-catch-lib-panic/Makefile

+3
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
# Exercise unwinding a panic. This catches a panic across an FFI boundary and downcasts it into an integer. The Rust code that panics is in a separate crate.
2+
# See https://github.com/rust-lang/rust/commit/baf227ea0c1e07fc54395a51e4b3881d701180cb
3+
14
# ignore-cross-compile
25
# needs-unwind
36
include ../tools.mk

tests/run-make/c-unwind-abi-catch-panic/Makefile

+3
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
# Exercise unwinding a panic. This catches a panic across an FFI boundary and downcasts it into an integer. The Rust code that panics is in the same directory.
2+
# See https://github.com/rust-lang/rust/commit/baf227ea0c1e07fc54395a51e4b3881d701180cb
3+
14
# ignore-cross-compile
25
# needs-unwind
36
include ../tools.mk

tests/run-make/cat-and-grep-sanity-check/Makefile

+4
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
# grep in run-make tests was partially replaced with a custom script, CGREP. This tests that CGREP does its job correctly.
2+
# See https://github.com/rust-lang/rust/commit/ab788a2ee175c7560f0ca58bbc183ecfd57d2f7a
3+
# FIXME(Oneirical): Note that this test will likely become useless after the port to rmake.rs tests (see https://github.com/rust-lang/rust/issues/121876)
4+
15
include ../tools.mk
26

37
all:

tests/run-make/cdylib-dylib-linkage/Makefile

+3
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
# This test checks that cdylibs can link against dylibs as dependencies, after this restriction was disabled.
2+
# See https://github.com/rust-lang/rust/commit/72aaa3a414d17aa0c4f19feafa5bab5f84b60e63
3+
14
# ignore-cross-compile
25
include ../tools.mk
36

tests/run-make/cdylib-fewer-symbols/Makefile

+2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
# ignore-cross-compile
2+
23
# Test that allocator-related symbols don't show up as exported from a cdylib as
34
# they're internal to Rust and not part of the public ABI.
5+
# See https://github.com/rust-lang/rust/commit/fbf98697021173a30b84d9145df0966a23a2f9d2
46

57
include ../tools.mk
68

tests/run-make/cdylib/Makefile

+3
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
# When the cdylib crate type was added as a variation of dylib, it needed a test to check its function.
2+
# See https://github.com/rust-lang/rust/pull/33553
3+
14
# ignore-cross-compile
25
include ../tools.mk
36

tests/run-make/codegen-options-parsing/Makefile

+2
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
# This test intentionally feeds invalid inputs to codegen and checks if the error message outputs contain specific helpful indications.
2+
13
# ignore-cross-compile
24
include ../tools.mk
35

tests/run-make/comment-section/Makefile

+3
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
# Both GCC and Clang write by default a `.comment` section with compiler information. Rustc received a similar .comment section, so this tests checks that this section properly appears.
2+
# See https://github.com/rust-lang/rust/commit/74b8d324eb77a8f337b35dc68ac91b0c2c06debc
3+
14
include ../tools.mk
25

36
# only-linux

tests/run-make/compile-stdin/Makefile

+3
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
# When provided standard input piped directly into rustc, this test checks that the compilation completes successfully and that the output can be executed.
2+
# See https://github.com/rust-lang/rust/pull/28805
3+
14
# ignore-cross-compile
25
include ../tools.mk
36

tests/run-make/compiler-lookup-paths-2/Makefile

+3
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
# This test checks that extern crate declarations in Cargo without a corresponding declaration in the manifest of a dependency are NOT allowed.
2+
# See https://github.com/rust-lang/rust/pull/21113
3+
14
include ../tools.mk
25

36
all:

tests/run-make/compiler-lookup-paths/Makefile

+3
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
# rustc supports different types of lookup paths, such as dependency, native or crate. This test checks that these lookup paths are functional and result in functional compilation.
2+
# See https://github.com/rust-lang/rust/pull/19941
3+
14
include ../tools.mk
25

36
# ignore-wasm32 (need a C compiler)

0 commit comments

Comments
 (0)