diff --git a/src/tools/run-make-support/src/rustc.rs b/src/tools/run-make-support/src/rustc.rs index d0ab8df42d28..5da1e8742293 100644 --- a/src/tools/run-make-support/src/rustc.rs +++ b/src/tools/run-make-support/src/rustc.rs @@ -1,5 +1,6 @@ use std::env; use std::path::Path; +use std::path::PathBuf; use std::process::{Command, Output}; use crate::{handle_failed_output, tmp_dir}; @@ -104,6 +105,13 @@ impl Rustc { self } + /// Generic file path provider. + pub fn arg_path(&mut self, path: &[&str]) -> &mut Self { + let path_buf = path.iter().collect::(); + self.cmd.arg(path_buf.to_str().unwrap()); + self + } + /// Generic command arguments provider. Use `.arg("-Zname")` over `.arg("-Z").arg("arg")`. /// This method will panic if a plain `-Z` or `-C` is passed, or if `-Z ` or `-C ` /// is passed (note the space). diff --git a/src/tools/tidy/src/allowed_run_make_makefiles.txt b/src/tools/tidy/src/allowed_run_make_makefiles.txt index bdee3afa6b71..40950e6ba443 100644 --- a/src/tools/tidy/src/allowed_run_make_makefiles.txt +++ b/src/tools/tidy/src/allowed_run_make_makefiles.txt @@ -31,7 +31,6 @@ run-make/compiler-rt-works-on-mingw/Makefile run-make/compressed-debuginfo/Makefile run-make/const-prop-lint/Makefile run-make/const_fn_mir/Makefile -run-make/core-no-fp-fmt-parse/Makefile run-make/core-no-oom-handling/Makefile run-make/crate-data-smoke/Makefile run-make/crate-hash-rustc-version/Makefile diff --git a/tests/run-make/core-no-fp-fmt-parse/Makefile b/tests/run-make/core-no-fp-fmt-parse/Makefile deleted file mode 100644 index 837664d92b93..000000000000 --- a/tests/run-make/core-no-fp-fmt-parse/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -include ../tools.mk - -all: - $(RUSTC) --edition=2021 -Dwarnings --crate-type=rlib ../../../library/core/src/lib.rs --cfg no_fp_fmt_parse diff --git a/tests/run-make/core-no-fp-fmt-parse/rmake.rs b/tests/run-make/core-no-fp-fmt-parse/rmake.rs new file mode 100644 index 000000000000..651ac596a5dc --- /dev/null +++ b/tests/run-make/core-no-fp-fmt-parse/rmake.rs @@ -0,0 +1,21 @@ +// ignore-tidy-linelength + +// This test checks that the core library of Rust can be compiled without enabling support for formatting and parsing floating-point numbers. + +extern crate run_make_support; + +use run_make_support::rustc; +use std::path::PathBuf; + +fn main() { + rustc() + .arg("--edition") + .arg("2021") + .arg("-Dwarnings") + .arg("--crate-type") + .arg("rlib") + .arg_path(&["..", "..", "..", "library", "core", "src", "lib.rs"]) + .arg("--cfg") + .arg("no_fp_fmt_parse") + .run(); +}