From 8c219af8bf9c21d4c35b8106ab7fe0d9170c533d Mon Sep 17 00:00:00 2001 From: Guillaume Gomez Date: Mon, 25 Mar 2024 11:57:37 +0100 Subject: [PATCH] Move `--sysroot` argument out of the argument file to fix miri issue --- src/librustdoc/doctest.rs | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/librustdoc/doctest.rs b/src/librustdoc/doctest.rs index 211921715b00c..22a3cf4d44db8 100644 --- a/src/librustdoc/doctest.rs +++ b/src/librustdoc/doctest.rs @@ -67,9 +67,6 @@ pub(crate) fn generate_args_file(file_path: &Path, options: &RustdocOptions) -> } } - if let Some(sysroot) = &options.maybe_sysroot { - content.push(format!("--sysroot={}", sysroot.display())); - } for lib_str in &options.lib_strs { content.push(format!("-L{lib_str}")); } @@ -411,6 +408,10 @@ fn run_test( compiler.arg(&format!("@{}", rustdoc_options.arg_file.display())); + if let Some(sysroot) = &rustdoc_options.maybe_sysroot { + compiler.arg(format!("--sysroot={}", sysroot.display())); + } + compiler.arg("--edition").arg(&edition.to_string()); compiler.env("UNSTABLE_RUSTDOC_TEST_PATH", path); compiler.env("UNSTABLE_RUSTDOC_TEST_LINE", format!("{}", line as isize - line_offset as isize)); @@ -950,6 +951,7 @@ pub(crate) struct IndividualTestOptions { runtool_args: Vec, target: TargetTriple, test_id: String, + maybe_sysroot: Option, } impl IndividualTestOptions { @@ -982,6 +984,7 @@ impl IndividualTestOptions { runtool_args: options.runtool_args.clone(), target: options.target.clone(), test_id, + maybe_sysroot: options.maybe_sysroot.clone(), } } }