rust/tests/run-make/unknown-mod-stdin/rmake.rs

26 lines
1.0 KiB
Rust

// Rustc displays a compilation error when it finds a `mod` (module)
// statement referencing a file that does not exist. However, a bug from 2019
// caused invalid `mod` statements to silently insert empty inline modules
// instead of showing an error if the invalid `mod` statement had been passed
// through standard input. This test checks that this bug does not make a resurgence.
// See https://github.com/rust-lang/rust/issues/65601
// NOTE: This is not a UI test, because the bug which this test
// is checking for is specifically tied to passing
// `mod unknown;` through standard input.
use run_make_support::{diff, rustc};
fn main() {
let out = rustc().crate_type("rlib").stdin_buf(b"mod unknown;").arg("-").run_fail();
diff()
.actual_text("actual-stdout", out.stdout_utf8())
.expected_file("unknown-mod.stdout")
.run();
diff()
.actual_text("actual-stderr", out.stderr_utf8())
.expected_file("unknown-mod.stderr")
.normalize(r#"\\"#, "/")
.run();
}