Skip to main content

run_tiers_strict

Function run_tiers_strict 

Source
pub fn run_tiers_strict(
    stmts: &[Stmt<'_>],
    interner: &Interner,
    types: Option<&TypeRegistry>,
    policies: Option<&PolicyRegistry>,
) -> Result<(String, Option<String>), String>
Expand description

Run a ## Test body’s COMPUTATION on the bytecode VM for the --tiers all differential (Wave 13): the test-only statements (Expect/ForAll/…) compile as no-ops, so the VM executes exactly the surrounding computation.

STRICT shape: Err(reason) means the VM never ran the program (the compiler refused it — a typed refusal, distinguishable from a runtime failure); Ok((output, error)) means the VM genuinely executed, with its output as newline-joined lines (the interpreter’s convention, so the tier comparison is byte-for-byte) and any runtime error alongside the partial output.