about summary refs log tree commit diff
diff options
context:
space:
mode:
authorGuillaume Gomez <guillaume.gomez@huawei.com>2024-03-25 11:57:37 +0100
committerGuillaume Gomez <guillaume.gomez@huawei.com>2024-03-25 12:06:47 +0100
commit8c219af8bf9c21d4c35b8106ab7fe0d9170c533d (patch)
treee1d1cf02f70ea627209aab697d9d36c6ba44f68b
parent42198bf562b548015e3eae3926c175c4aabb3a7b (diff)
downloadrust-8c219af8bf9c21d4c35b8106ab7fe0d9170c533d.tar.gz
rust-8c219af8bf9c21d4c35b8106ab7fe0d9170c533d.zip
Move `--sysroot` argument out of the argument file to fix miri issue
-rw-r--r--src/librustdoc/doctest.rs9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/librustdoc/doctest.rs b/src/librustdoc/doctest.rs
index 211921715b0..22a3cf4d44d 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<String>,
     target: TargetTriple,
     test_id: String,
+    maybe_sysroot: Option<PathBuf>,
 }
 
 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(),
         }
     }
 }