Fix 2024 edition doctest panic output

(cherry picked from commit a91e97c06c)
This commit is contained in:
Guillaume Gomez 2025-04-03 17:20:45 +02:00 committed by Josh Stone
parent a5948295b4
commit 84ed87a841

View file

@ -113,6 +113,7 @@ impl DocTestRunner {
mod __doctest_mod {{
use std::sync::OnceLock;
use std::path::PathBuf;
use std::process::ExitCode;
pub static BINARY_PATH: OnceLock<PathBuf> = OnceLock::new();
pub const RUN_OPTION: &str = \"RUSTDOC_DOCTEST_RUN_NB_TEST\";
@ -123,16 +124,17 @@ mod __doctest_mod {{
}}
#[allow(unused)]
pub fn doctest_runner(bin: &std::path::Path, test_nb: usize) -> Result<(), String> {{
pub fn doctest_runner(bin: &std::path::Path, test_nb: usize) -> ExitCode {{
let out = std::process::Command::new(bin)
.env(self::RUN_OPTION, test_nb.to_string())
.args(std::env::args().skip(1).collect::<Vec<_>>())
.output()
.expect(\"failed to run command\");
if !out.status.success() {{
Err(String::from_utf8_lossy(&out.stderr).to_string())
eprintln!(\"{{}}\", String::from_utf8_lossy(&out.stderr));
ExitCode::FAILURE
}} else {{
Ok(())
ExitCode::SUCCESS
}}
}}
}}