From 62866c8c5e70b4f629bb28f8fafad2cfd8766220 Mon Sep 17 00:00:00 2001 From: Tony Arcieri Date: Sat, 7 Nov 2026 11:40:36 -0700 Subject: [PATCH] Report BINSEC error output even on success I'm trying to figure out why we're getting `unknown` errors on `aarch64` for `crypto-bigint`, but `cargo checkct` is suppressing the output. --- src/run.rs | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/run.rs b/src/run.rs index db23ee4..4343b5b 100644 --- a/src/run.rs +++ b/src/run.rs @@ -507,6 +507,11 @@ fn run_job(mut job: Job) -> (Report, String) { for line in stdout.lines() { log.push_str(&format!(" {line}\n")); } + // BINSEC can exit successfully with an unknown verdict while explaining + // discontinued paths (e.g. unsupported instructions) only on stderr. + for line in stderr.lines() { + log.push_str(&format!(" {line}\n")); + } if !output.status.success() { report.details.push(format!( @@ -514,12 +519,12 @@ fn run_job(mut job: Job) -> (Report, String) { output.status, stderr.trim() )); - log.push_str(&format!(" binsec failed ({}):\n{stderr}\n", output.status)); + log.push_str(&format!(" binsec failed ({})\n", output.status)); return (report, log); } report.status = parse_status(&stdout).unwrap_or_else(|| { - log.push_str(&format!(" UNEXPECTED binsec output, stderr:\n{stderr}\n")); + log.push_str(" UNEXPECTED binsec output\n"); Status::Unknown }); report.details = stdout