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(), } } }