[INFO] cloning repository https://github.com/k-ymmt/kish [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/k-ymmt/kish" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fk-ymmt%2Fkish", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fk-ymmt%2Fkish'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] ac1bd9e288c54f467d1b26c8cfbd599b8e02c32a [INFO] testing k-ymmt/kish against master#562dee4820c458d823175268e41601d4c060588a for pr-154210 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fk-ymmt%2Fkish" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/k-ymmt/kish [INFO] finished tweaking git repo https://github.com/k-ymmt/kish [INFO] tweaked toml for git repo https://github.com/k-ymmt/kish written to /workspace/builds/worker-5-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/k-ymmt/kish on toolchain 562dee4820c458d823175268e41601d4c060588a [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/k-ymmt/kish already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded rand_xorshift v0.4.0 [INFO] [stderr] Downloaded rusty-fork v0.3.1 [INFO] [stderr] Downloaded clap v4.5.57 [INFO] [stderr] Downloaded proptest v1.10.0 [INFO] [stderr] Downloaded clap_builder v4.5.57 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] d7d90e58ed5d4bf0704f6fc381d4826a4be9e93b97a15f361b4e15c9b699321a [INFO] running `Command { std: "docker" "start" "-a" "d7d90e58ed5d4bf0704f6fc381d4826a4be9e93b97a15f361b4e15c9b699321a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "d7d90e58ed5d4bf0704f6fc381d4826a4be9e93b97a15f361b4e15c9b699321a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d7d90e58ed5d4bf0704f6fc381d4826a4be9e93b97a15f361b4e15c9b699321a", kill_on_drop: false }` [INFO] [stdout] d7d90e58ed5d4bf0704f6fc381d4826a4be9e93b97a15f361b4e15c9b699321a [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 7a9152f43afd549df8a4c89860365910ce8f22096ab815033ad5a2f76fc2b57d [INFO] running `Command { std: "docker" "start" "-a" "7a9152f43afd549df8a4c89860365910ce8f22096ab815033ad5a2f76fc2b57d", kill_on_drop: false }` [INFO] [stderr] Compiling kish v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.19s [INFO] running `Command { std: "docker" "inspect" "7a9152f43afd549df8a4c89860365910ce8f22096ab815033ad5a2f76fc2b57d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7a9152f43afd549df8a4c89860365910ce8f22096ab815033ad5a2f76fc2b57d", kill_on_drop: false }` [INFO] [stdout] 7a9152f43afd549df8a4c89860365910ce8f22096ab815033ad5a2f76fc2b57d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 5ac6055cb2c0b97e508d73260008291b61f3710d7a0c33d3e408f012ed06b398 [INFO] running `Command { std: "docker" "start" "-a" "5ac6055cb2c0b97e508d73260008291b61f3710d7a0c33d3e408f012ed06b398", kill_on_drop: false }` [INFO] [stderr] Compiling unicode-ident v1.0.22 [INFO] [stderr] Compiling libc v0.2.180 [INFO] [stderr] Compiling zerocopy v0.8.39 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling serde_core v1.0.228 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling rustix v1.1.3 [INFO] [stderr] Compiling proc-macro2 v1.0.106 [INFO] [stderr] Compiling zmij v1.0.19 [INFO] [stderr] Compiling either v1.15.0 [INFO] [stderr] Compiling memchr v2.8.0 [INFO] [stderr] Compiling quote v1.0.44 [INFO] [stderr] Compiling clap_lex v0.7.7 [INFO] [stderr] Compiling plotters-backend v0.3.7 [INFO] [stderr] Compiling syn v2.0.114 [INFO] [stderr] Compiling clap_builder v4.5.57 [INFO] [stderr] Compiling plotters-svg v0.3.7 [INFO] [stderr] Compiling itertools v0.10.5 [INFO] [stderr] Compiling regex-automata v0.4.14 [INFO] [stderr] Compiling bit-vec v0.8.0 [INFO] [stderr] Compiling quick-error v1.2.3 [INFO] [stderr] Compiling bit-set v0.8.0 [INFO] [stderr] Compiling rayon v1.11.0 [INFO] [stderr] Compiling rand_core v0.9.5 [INFO] [stderr] Compiling wait-timeout v0.2.1 [INFO] [stderr] Compiling tempfile v3.24.0 [INFO] [stderr] Compiling rusty-fork v0.3.1 [INFO] [stderr] Compiling criterion-plot v0.5.0 [INFO] [stderr] Compiling regex v1.12.3 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling clap v4.5.57 [INFO] [stderr] Compiling rand v0.9.2 [INFO] [stderr] Compiling rand_xorshift v0.4.0 [INFO] [stderr] Compiling is-terminal v0.4.17 [INFO] [stderr] Compiling plotters v0.3.7 [INFO] [stderr] Compiling unarray v0.1.4 [INFO] [stderr] Compiling oorandom v11.1.5 [INFO] [stderr] Compiling zerocopy-derive v0.8.39 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling tinytemplate v1.2.1 [INFO] [stderr] Compiling half v2.7.1 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling ciborium-ll v0.2.2 [INFO] [stderr] Compiling rand_chacha v0.9.0 [INFO] [stderr] Compiling ciborium v0.2.2 [INFO] [stderr] Compiling proptest v1.10.0 [INFO] [stderr] Compiling criterion v0.5.1 [INFO] [stderr] Compiling kish v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 17s [INFO] running `Command { std: "docker" "inspect" "5ac6055cb2c0b97e508d73260008291b61f3710d7a0c33d3e408f012ed06b398", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5ac6055cb2c0b97e508d73260008291b61f3710d7a0c33d3e408f012ed06b398", kill_on_drop: false }` [INFO] [stdout] 5ac6055cb2c0b97e508d73260008291b61f3710d7a0c33d3e408f012ed06b398 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 82f3fe6721456629d7e443367f0c9301bb77f873b65be69bfa9510e624608b94 [INFO] running `Command { std: "docker" "start" "-a" "82f3fe6721456629d7e443367f0c9301bb77f873b65be69bfa9510e624608b94", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.16s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/kish-a4c7802ac1f70f99) [INFO] [stdout] [INFO] [stdout] running 13 tests [INFO] [stdout] test ir::lower::emit::tests::assignment_name_is_interned_as_symbol ... ok [INFO] [stdout] test ir::lower::emit::tests::arg_only_emits_standard_hint ... ok [INFO] [stdout] test ir::lower::emit::tests::all_posix_special_builtins_detected ... ok [INFO] [stdout] test ir::lower::emit::tests::assignment_value_creates_word_program ... ok [INFO] [stdout] test ir::lower::emit::tests::assignment_only_emits_no_command_hint ... ok [INFO] [stdout] test ir::lower::emit::tests::assignment_plus_redirect_emits_no_command_hint ... ok [INFO] [stdout] test ir::lower::emit::tests::mixed_command_emits_standard_hint ... ok [INFO] [stdout] test ir::lower::emit::tests::export_emits_special_builtin_hint ... ok [INFO] [stdout] test ir::lower::emit::tests::redirect_programs_created_for_redirects ... ok [INFO] [stdout] test ir::lower::emit::tests::multiple_assignments_only ... ok [INFO] [stdout] test ir::lower::emit::tests::redirect_only_emits_no_command_hint ... ok [INFO] [stdout] test ir::lower::emit::tests::word_programs_created_for_args ... ok [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/kish-7ce4ea43a155c4de) [INFO] [stdout] test ir::lower::emit::tests::non_special_builtin_emits_standard_hint ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 13 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running tests/mod.rs (/opt/rustwide/target/debug/deps/mod-13abb4cab70b5498) [INFO] [stdout] [INFO] [stdout] running 743 tests [INFO] [stdout] test ir::arith_program_lowering::addition_and_multiplication_precedence ... ok [INFO] [stdout] test ir::arith_program_lowering::comparison_greater_than ... ok [INFO] [stdout] test ir::arith_program_lowering::comparison_less_equal ... ok [INFO] [stdout] test ir::arith_program_lowering::comparison_less_than ... ok [INFO] [stdout] test ir::arith_program_lowering::comma_expression ... ok [INFO] [stdout] test ir::arith_program_lowering::comparison_not_equal ... ok [INFO] [stdout] test ir::arith_program_lowering::bitwise_not ... ok [INFO] [stdout] test ir::arith_program_lowering::bitwise_and ... ok [INFO] [stdout] test ir::arith_program_lowering::bitwise_xor ... ok [INFO] [stdout] test ir::arith_program_lowering::comparison_greater_equal ... ok [INFO] [stdout] test ir::arith_program_lowering::comparison_equal ... ok [INFO] [stdout] test ir::arith_program_lowering::bitwise_or ... ok [INFO] [stdout] test ir::arith_program_lowering::compound_assignment_bitwise_and ... ok [INFO] [stdout] test ir::arith_program_lowering::compound_assignment_bitwise_xor ... ok [INFO] [stdout] test ir::arith_program_lowering::compound_assignment_divide ... ok [INFO] [stdout] test ir::arith_program_lowering::compound_assignment_bitwise_or ... ok [INFO] [stdout] test ir::arith_program_lowering::compound_assignment_modulo ... ok [INFO] [stdout] test ir::arith_program_lowering::compound_assignment_multiply ... ok [INFO] [stdout] test ir::arith_program_lowering::compound_assignment_shift_left ... ok [INFO] [stdout] test ir::arith_program_lowering::compound_assignment_plus ... ok [INFO] [stdout] test ir::arith_program_lowering::compound_assignment_shift_right ... ok [INFO] [stdout] test ir::arith_program_lowering::decimal_literal ... ok [INFO] [stdout] test ir::arith_program_lowering::compound_assignment_subtract ... ok [INFO] [stdout] test ir::arith_program_lowering::logical_and_has_short_circuit ... ok [INFO] [stdout] test ir::arith_program_lowering::extra_rparen_produces_error ... ok [INFO] [stdout] test ir::arith_program_lowering::hex_literal ... ok [INFO] [stdout] test ir::arith_program_lowering::logical_or_has_short_circuit ... ok [INFO] [stdout] test ir::arith_program_lowering::logical_not ... ok [INFO] [stdout] test ir::arith_program_lowering::octal_literal ... ok [INFO] [stdout] test ir::arith_program_lowering::post_decrement ... ok [INFO] [stdout] test ir::arith_program_lowering::malformed_expression_produces_error ... ok [INFO] [stdout] test ir::arith_program_lowering::pre_decrement ... ok [INFO] [stdout] test ir::arith_program_lowering::pre_increment ... ok [INFO] [stdout] test ir::arith_program_lowering::modulo_operator ... ok [INFO] [stdout] test ir::arith_program_lowering::post_increment ... ok [INFO] [stdout] test ir::arith_program_lowering::shift_left ... ok [INFO] [stdout] test ir::arith_program_lowering::parenthesized_grouping ... ok [INFO] [stdout] test ir::arith_program_lowering::shift_right ... ok [INFO] [stdout] test ir::arith_program_lowering::simple_assignment ... ok [INFO] [stdout] test ir::arith_program_lowering::subtraction_and_division ... ok [INFO] [stdout] test ir::arith_program_lowering::trailing_operator_produces_error ... ok [INFO] [stdout] test ir::arith_program_lowering::unary_minus ... ok [INFO] [stdout] test ir::branch_patch_determinism::branch_fixup_is_deterministic ... ok [INFO] [stdout] test ir::arith_program_lowering::whitespace_in_expression ... ok [INFO] [stdout] test ir::arith_program_lowering::unary_plus ... ok [INFO] [stdout] test ir::arith_program_lowering::whitespace_only_expression_evaluates_to_zero ... ok [INFO] [stdout] test ir::arith_program_lowering::word_program_has_expand_arithmetic_with_non_empty_arith_program ... ok [INFO] [stdout] test ir::arith_program_lowering::zero_literal ... ok [INFO] [stdout] test ir::arith_program_lowering::ternary_expression ... ok [INFO] [stdout] test ir::arith_program_lowering::variable_reference ... ok [INFO] [stdout] test ir::code_object_builder_negative::duplicate_label_bind_returns_invariant_violation ... ok [INFO] [stdout] test ir::code_object_builder_negative::instruction_limit_exceeded_returns_limit_exceeded ... ok [INFO] [stdout] test ir::code_object_builder_negative::unknown_label_usage_returns_invariant_violation ... ok [INFO] [stdout] test ir::code_object_builder_positive::backward_jump_is_patched_to_absolute_target ... ok [INFO] [stdout] test ir::code_object_builder_positive::forward_jump_is_patched_to_absolute_target ... ok [INFO] [stdout] test ir::code_object_builder_positive::mixed_control_flow_patches_all_branches ... ok [INFO] [stdout] test ir::contracts::lowering_context_retains_options_contract ... ok [INFO] [stdout] test ir::code_object_builder_negative::unresolved_label_at_finalize_returns_invariant_violation ... ok [INFO] [stdout] test ir::contracts::lower_complete_command_succeeds ... ok [INFO] [stdout] test ir::emit_control_flow::and_if_chain_emits_dup_jmp_if_nonzero ... ok [INFO] [stdout] test ir::contracts::vm_ir_builder_api_is_reachable ... ok [INFO] [stdout] test ir::emit_control_flow::background_sub_code_object_has_ret ... ok [INFO] [stdout] test ir::emit_control_flow::and_or_mixed_chain ... ok [INFO] [stdout] test ir::emit_control_flow::brace_group_emits_inline ... ok [INFO] [stdout] test ir::emit_control_flow::case_basic_structure ... ok [INFO] [stdout] test ir::emit_control_flow::case_break_jumps_to_end ... ok [INFO] [stdout] test ir::emit_control_flow::case_fallthrough_jumps_to_next_body ... ok [INFO] [stdout] test ir::emit_control_flow::case_multiple_patterns ... ok [INFO] [stdout] test ir::emit_control_flow::compound_in_pipeline ... ok [INFO] [stdout] test ir::emit_control_flow::for_loop_basic_structure ... ok [INFO] [stdout] test ir::emit_control_flow::for_loop_interns_variable_symbol ... ok [INFO] [stdout] test ir::contracts::lower_program_succeeds ... ok [INFO] [stdout] test ir::contracts::encode_and_verify_public_contracts_exist ... ok [INFO] [stdout] test ir::emit_control_flow::and_or_single_pipeline_no_extra_instructions ... ok [INFO] [stdout] test ir::emit_control_flow::background_creates_sub_code_object ... ok [INFO] [stdout] test ir::emit_control_flow::function_definition_creates_body_code_object ... ok [INFO] [stdout] test ir::emit_control_flow::for_loop_without_words ... ok [INFO] [stdout] test ir::emit_control_flow::function_definition_emits_define_function ... ok [INFO] [stdout] test ir::emit_control_flow::if_elif_else_structure ... ok [INFO] [stdout] test ir::emit_control_flow::if_no_else_pushes_default_zero ... ok [INFO] [stdout] test ir::emit_control_flow::list_single_command_no_drop ... ok [INFO] [stdout] test ir::emit_control_flow::if_then_fi_basic_structure ... ok [INFO] [stdout] test ir::emit_control_flow::if_else_has_no_default_push ... ok [INFO] [stdout] test ir::emit_control_flow::negated_multi_pipeline_emits_negate_after_exec ... ok [INFO] [stdout] test ir::emit_control_flow::negated_pipeline_emits_negate_status ... ok [INFO] [stdout] test ir::emit_control_flow::or_if_chain_emits_dup_jmp_if_zero ... ok [INFO] [stdout] test ir::emit_control_flow::nested_if_in_while ... ok [INFO] [stdout] test ir::emit_control_flow::simple_command_emits_begin_end_exec ... ok [INFO] [stdout] test ir::emit_control_flow::single_command_pipeline_emits_inline ... ok [INFO] [stdout] test ir::emit_control_flow::list_two_commands_has_drop_between ... ok [INFO] [stdout] test ir::emit_control_flow::simple_command_single_word ... ok [INFO] [stdout] test ir::emit_control_flow::multi_command_pipeline_emits_sub_code_objects ... ok [INFO] [stdout] test ir::emit_control_flow::simple_command_single_produces_one_code_object ... ok [INFO] [stdout] test ir::emit_control_flow::subshell_creates_sub_code_object ... ok [INFO] [stdout] test ir::emit_control_flow::until_loop_uses_jmp_if_zero ... ok [INFO] [stdout] test ir::emit_control_flow::subshell_sub_code_object_has_ret ... ok [INFO] [stdout] test ir::emit_control_flow::while_loop_backward_jump ... ok [INFO] [stdout] test ir::encode::decode_tracks_offsets_correctly ... ok [INFO] [stdout] test ir::encode::empty_module_encodes_to_empty ... ok [INFO] [stdout] test ir::emit_control_flow::while_loop_structure ... ok [INFO] [stdout] test ir::encode::encode_add_arg_small ... ok [INFO] [stdout] test ir::encode::encode_add_redir_small ... ok [INFO] [stdout] test ir::encode::encode_add_pipeline_stage_small ... ok [INFO] [stdout] test ir::encode::encode_arith_assign ... ok [INFO] [stdout] test ir::encode::encode_arith_compound_assign ... ok [INFO] [stdout] test ir::encode::encode_arith_compound_assign_all_ops ... ok [INFO] [stdout] test ir::encode::encode_arith_inc_dec ... ok [INFO] [stdout] test ir::encode::encode_arith_jumps ... ok [INFO] [stdout] test ir::encode::encode_arith_push_literal ... ok [INFO] [stdout] test ir::encode::encode_arith_load_variable ... ok [INFO] [stdout] test ir::encode::encode_arith_wide_operand ... ok [INFO] [stdout] test ir::encode::encode_arith_push_literal_negative ... ok [INFO] [stdout] test ir::encode::encode_branch_small ... ok [INFO] [stdout] test ir::encode::encode_call_small ... ok [INFO] [stdout] test ir::encode::encode_case_set_subject_small ... ok [INFO] [stdout] test ir::encode::encode_arith_zero_operand_ops ... ok [INFO] [stdout] test ir::encode::encode_begin_pipeline_small ... ok [INFO] [stdout] test ir::encode::encode_case_test_pattern_small ... ok [INFO] [stdout] test ir::encode::encode_define_function ... ok [INFO] [stdout] test ir::encode::encode_exec_simple_special_builtin ... ok [INFO] [stdout] test ir::encode::encode_exec_background_small ... ok [INFO] [stdout] test ir::encode::encode_add_assign ... ok [INFO] [stdout] test ir::encode::encode_add_assign_wide_first_operand ... ok [INFO] [stdout] test ir::encode::encode_exec_simple_no_command ... ok [INFO] [stdout] test ir::encode::encode_exec_simple_standard ... ok [INFO] [stdout] test ir::encode::encode_exec_subshell_small ... ok [INFO] [stdout] test ir::encode::encode_local_get_set ... ok [INFO] [stdout] test ir::encode::encode_for_setup ... ok [INFO] [stdout] test ir::encode::encode_push_int_i64_max ... ok [INFO] [stdout] test ir::encode::encode_for_add_word_small ... ok [INFO] [stdout] test ir::encode::encode_push_int_i64_min ... ok [INFO] [stdout] test ir::encode::encode_push_int_zero ... ok [INFO] [stdout] test ir::encode::encode_push_string_small ... ok [INFO] [stdout] test ir::encode::encode_redirect_close ... ok [INFO] [stdout] test ir::encode::encode_push_symbol_small ... ok [INFO] [stdout] test ir::encode::encode_push_int_negative ... ok [INFO] [stdout] test ir::encode::encode_redirect_dup ... ok [INFO] [stdout] test ir::encode::encode_push_int_positive ... ok [INFO] [stdout] test ir::encode::encode_redirect_heredoc_expand ... ok [INFO] [stdout] test ir::encode::encode_redirect_open_clobber ... ok [INFO] [stdout] test ir::encode::encode_redirect_open_append ... ok [INFO] [stdout] test ir::encode::encode_redirect_open_read_write ... ok [INFO] [stdout] test ir::encode::encode_redirect_open_readonly ... ok [INFO] [stdout] test ir::encode::encode_redirect_open ... ok [INFO] [stdout] test ir::encode::encode_single_operand_small ... ok [INFO] [stdout] test ir::encode::encode_wide_branch_target ... ok [INFO] [stdout] test ir::encode::encode_wide_operand ... ok [INFO] [stdout] test ir::encode::encode_wide_operand_large_value ... ok [INFO] [stdout] test ir::encode::encode_word_expand_arithmetic ... ok [INFO] [stdout] test ir::encode::encode_word_push_literal ... ok [INFO] [stdout] test ir::encode::encode_word_expand_tilde ... ok [INFO] [stdout] test ir::encode::encode_word_wide_operand ... ok [INFO] [stdout] test ir::encode::encode_word_zero_operand_ops ... ok [INFO] [stdout] test ir::encode::encode_zero_operand_instructions ... ok [INFO] [stdout] test ir::encode::encoded_code_object_source_map_is_empty ... ok [INFO] [stdout] test ir::encode::full_pipeline_echo_hello ... ok [INFO] [stdout] test ir::encode::encoding_is_deterministic ... ok [INFO] [stdout] test ir::encode::encode_word_expand_command_substitution ... ok [INFO] [stdout] test ir::encode::full_pipeline_program ... ok [INFO] [stdout] test ir::encode::pools_are_preserved ... ok [INFO] [stdout] test ir::encode::encode_word_expand_parameter ... ok [INFO] [stdout] test ir::encode::round_trip_arith_compound_assign ... ok [INFO] [stdout] test ir::encode::round_trip_redirect_dup ... ok [INFO] [stdout] test ir::emit_control_flow::list_three_commands_has_two_drops ... ok [INFO] [stdout] test ir::encode::round_trip_redirect_heredoc ... ok [INFO] [stdout] test ir::encode::round_trip_redirect_program ... ok [INFO] [stdout] test ir::encode::round_trip_vm_define_function ... ok [INFO] [stdout] test ir::emit_control_flow::program_multiple_commands_drops_between ... ok [INFO] [stdout] test ir::encode::round_trip_vm_exec_simple_hints ... ok [INFO] [stdout] test ir::encode::round_trip_vm_for_setup ... ok [INFO] [stdout] test ir::encode::encode_redirect_heredoc_no_expand ... ok [INFO] [stdout] test ir::encode::round_trip_vm_single_operand ... ok [INFO] [stdout] test ir::encode::round_trip_arith_program ... ok [INFO] [stdout] test ir::encode::round_trip_vm_two_operand ... ok [INFO] [stdout] test ir::encode::round_trip_vm_wide_operand ... ok [INFO] [stdout] test ir::encode::round_trip_word_program ... ok [INFO] [stdout] test ir::encode::round_trip_vm_zero_operand ... ok [INFO] [stdout] test ir::golden_snapshots::snapshot_arithmetic ... ok [INFO] [stdout] test ir::golden_snapshots::snapshot_and_or ... ok [INFO] [stdout] test ir::encode::source_map_entry_default ... ok [INFO] [stdout] test ir::golden_snapshots::snapshot_background ... ok [INFO] [stdout] test ir::golden_snapshots::snapshot_case ... ok [INFO] [stdout] test ir::golden_snapshots::snapshot_assignment ... ok [INFO] [stdout] test ir::golden_snapshots::snapshot_if_else ... ok [INFO] [stdout] test ir::golden_snapshots::snapshot_complex ... ok [INFO] [stdout] test ir::golden_snapshots::snapshot_echo ... ok [INFO] [stdout] test ir::golden_snapshots::snapshot_for_loop ... ok [INFO] [stdout] test ir::encode::round_trip_vm_push_int ... ok [INFO] [stdout] test ir::golden_snapshots::snapshot_function ... ok [INFO] [stdout] test ir::hir_builder_negative::assignment_name_validation_rejects_invalid_shapes ... ok [INFO] [stdout] test ir::golden_snapshots::snapshot_pipeline ... ok [INFO] [stdout] test ir::golden_snapshots::snapshot_subshell ... ok [INFO] [stdout] test ir::hir_builder_negative::list_requires_at_least_one_and_or ... ok [INFO] [stdout] test ir::hir_builder_negative::function_definition_requires_compound_body ... ok [INFO] [stdout] test ir::hir_builder_negative::pipeline_requires_at_least_one_command ... ok [INFO] [stdout] test ir::hir_builder_negative::redirect_requires_numeric_fd_token ... ok [INFO] [stdout] test ir::hir_builder_negative::structural_inconsistency_returns_invariant_violation ... ok [INFO] [stdout] test ir::golden_snapshots::snapshot_while_loop ... ok [INFO] [stdout] test ir::hir_builder_positive::builder_constructs_simple_command_with_assignment_word_and_redirect ... ok [INFO] [stdout] test ir::hir_builder_negative::redirect_rejects_unsupported_operator ... ok [INFO] [stdout] test ir::hir_builder_positive::builder_constructs_complete_command_and_program ... ok [INFO] [stdout] test ir::hir_builder_negative::simple_command_requires_any_content ... ok [INFO] [stdout] test ir::hir_builder_positive::builder_constructs_all_compound_variants_and_function_definition ... ok [INFO] [stdout] test ir::hir_builder_positive::conversion_helpers_map_semantics ... ok [INFO] [stdout] test ir::hir_mapping_exhaustive::operator_mappings_are_exhaustive_for_hir_semantics ... ok [INFO] [stdout] test ir::hir_contracts::hir_contract_types_are_public_and_constructible ... ok [INFO] [stdout] test ir::hir_mapping_exhaustive::parser_case_terminators_map_to_hir_case_terminators ... ok [INFO] [stdout] test ir::hir_mapping_exhaustive::parser_program_contract_still_exists_for_phase4_lowering ... ok [INFO] [stdout] test ir::hir_mapping_exhaustive::parser_command_variants_map_to_hir_targets_exhaustively ... ok [INFO] [stdout] test ir::lower_from_parser::complete_command_with_background ... ok [INFO] [stdout] test ir::lower_from_parser::and_or_chain ... ok [INFO] [stdout] test ir::hir_mapping_exhaustive::parser_compound_variants_map_to_hir_targets_exhaustively ... ok [INFO] [stdout] test ir::lower_from_parser::compound_if_simple ... ok [INFO] [stdout] test ir::golden_snapshots::snapshot_redirect ... ok [INFO] [stdout] test ir::lower_from_parser::compound_brace_group ... ok [INFO] [stdout] test ir::hir_builder_negative::case_item_requires_patterns ... ok [INFO] [stdout] test ir::lower_from_parser::compound_for ... ok [INFO] [stdout] test ir::lower_from_parser::compound_if_full ... ok [INFO] [stdout] test ir::lower_from_parser::empty_program ... ok [INFO] [stdout] test ir::lower_from_parser::compound_subshell ... ok [INFO] [stdout] test ir::lower_from_parser::function_definition ... ok [INFO] [stdout] test ir::lower_from_parser::compound_until ... ok [INFO] [stdout] test ir::lower_from_parser::compound_while ... ok [INFO] [stdout] test ir::lower_from_parser::origin_tracking_function_definition ... ok [INFO] [stdout] test ir::lower_from_parser::list_with_semicolons ... ok [INFO] [stdout] test ir::lower_from_parser::origin_tracking_simple_command ... ok [INFO] [stdout] test ir::lower_from_parser::origin_tracking_assignment_and_redirect ... ok [INFO] [stdout] test ir::lower_from_parser::pipeline_negated ... ok [INFO] [stdout] test ir::lower_from_parser::origin_tracking_compound_if ... ok [INFO] [stdout] test ir::lower_from_parser::multiple_complete_commands ... ok [INFO] [stdout] test ir::lower_from_parser::simple_command_with_output_redirect ... ok [INFO] [stdout] test ir::lower_from_parser::simple_command_with_assignment ... ok [INFO] [stdout] test ir::lower_from_parser::pipeline_two_commands ... ok [INFO] [stdout] test ir::lower_from_parser::simple_command_with_fd_redirect ... ok [INFO] [stdout] test ir::negative_lowering::and_or_exceeds_word_program_ops ... ok [INFO] [stdout] test ir::lower_from_parser::simple_command_echo_hello ... ok [INFO] [stdout] test ir::lower_from_parser::compound_case ... ok [INFO] [stdout] test ir::negative_lowering::arith_exceeds_op_limit ... ok [INFO] [stdout] test ir::negative_lowering::background_exceeds_code_object_limit ... ok [INFO] [stdout] test ir::negative_lowering::assignment_exceeds_word_program_limit ... ok [INFO] [stdout] test ir::negative_lowering::brace_group_exceeds_word_program_ops ... ok [INFO] [stdout] test ir::negative_lowering::complete_command_exceeds_word_program_ops ... ok [INFO] [stdout] test ir::negative_lowering::case_exceeds_word_program_ops ... ok [INFO] [stdout] test ir::negative_lowering::redirect_exceeds_op_limit ... ok [INFO] [stdout] test ir::negative_lowering::subshell_exceeds_code_object_limit ... ok [INFO] [stdout] test ir::negative_lowering::simple_command_exceeds_word_program_ops ... ok [INFO] [stdout] test ir::negative_lowering::until_exceeds_word_program_ops ... ok [INFO] [stdout] test ir::negative_lowering::while_exceeds_word_program_ops ... ok [INFO] [stdout] test ir::pipeline_end_to_end::e2e_all_subprogram_types ... ok [INFO] [stdout] test ir::pipeline_end_to_end::e2e_and_or_chain ... ok [INFO] [stdout] test ir::pipeline_end_to_end::e2e_background_command ... ok [INFO] [stdout] test ir::pipeline_end_to_end::e2e_brace_group ... ok [INFO] [stdout] test ir::negative_lowering::program_exceeds_code_object_limit ... ok [INFO] [stdout] test ir::pipeline_end_to_end::e2e_case_command ... ok [INFO] [stdout] test ir::pipeline_end_to_end::e2e_case_fallthrough ... ok [INFO] [stdout] test ir::negative_lowering::if_exceeds_word_program_ops ... ok [INFO] [stdout] test ir::negative_lowering::pipeline_exceeds_code_object_limit ... ok [INFO] [stdout] test ir::negative_lowering::for_exceeds_word_program_ops ... ok [INFO] [stdout] test ir::negative_lowering::list_exceeds_word_program_ops ... ok [INFO] [stdout] test ir::pipeline_end_to_end::e2e_debug_verifier_no_warnings ... ok [INFO] [stdout] test ir::pipeline_end_to_end::e2e_function_definition ... ok [INFO] [stdout] test ir::pipeline_end_to_end::e2e_for_loop ... ok [INFO] [stdout] test ir::pipeline_end_to_end::e2e_multi_command_program ... ok [INFO] [stdout] test ir::pipeline_end_to_end::e2e_list_with_semicolons ... ok [INFO] [stdout] test ir::pipeline_end_to_end::e2e_negated_pipeline ... ok [INFO] [stdout] test ir::pipeline_end_to_end::e2e_if_then ... ok [INFO] [stdout] test ir::pipeline_end_to_end::e2e_if_elif_else ... ok [INFO] [stdout] test ir::pipeline_end_to_end::e2e_if_then_else ... ok [INFO] [stdout] test ir::pipeline_end_to_end::e2e_nested_compound ... ok [INFO] [stdout] test ir::pipeline_end_to_end::e2e_until_loop ... ok [INFO] [stdout] test ir::pipeline_end_to_end::e2e_subshell ... ok [INFO] [stdout] test ir::negative_lowering::function_exceeds_code_object_limit ... ok [INFO] [stdout] test ir::pipeline_end_to_end::e2e_pipeline ... ok [INFO] [stdout] test ir::pipeline_end_to_end::e2e_simple_command_with_assignments ... ok [INFO] [stdout] test ir::pipeline_end_to_end::e2e_simple_command ... ok [INFO] [stdout] test ir::pooling_interning::invalid_constant_reference_handles_are_rejected ... ok [INFO] [stdout] test ir::pooling_interning::lowering_context_can_create_module_builder_with_same_options ... ok [INFO] [stdout] test ir::pooling_interning::max_consts_limit_is_enforced_only_for_unique_constants ... ok [INFO] [stdout] test ir::pipeline_end_to_end::e2e_while_loop ... ok [INFO] [stdout] test ir::pooling_interning::code_object_count_limit_is_enforced_and_ids_are_reassigned ... ok [INFO] [stdout] test ir::pooling_interning::string_and_symbol_interning_are_deduplicated_with_stable_ids ... ok [INFO] [stdout] test ir::pooling_interning::constant_interning_deduplicates_integer_string_and_symbol_entries ... ok [INFO] [stdout] test ir::pooling_interning::word_and_redirect_program_op_limits_are_enforced_per_program ... ok [INFO] [stdout] test ir::pooling_interning::module_instruction_limit_is_enforced_cumulatively ... ok [INFO] [stdout] test ir::property_ir::pool_symbol_dedup_determinism ... ok [INFO] [stdout] test ir::redirect_program_lowering::append_redirect ... ok [INFO] [stdout] test ir::redirect_program_lowering::clobber_redirect ... ok [INFO] [stdout] test ir::redirect_program_lowering::close_fd ... ok [INFO] [stdout] test ir::redirect_program_lowering::compound_with_redirect ... ok [INFO] [stdout] test ir::redirect_program_lowering::compound_without_redirect_has_no_scope ... ok [INFO] [stdout] test ir::redirect_program_lowering::dup_input ... ok [INFO] [stdout] test ir::redirect_program_lowering::dup_input_default_fd ... ok [INFO] [stdout] test ir::redirect_program_lowering::dup_output ... ok [INFO] [stdout] test ir::redirect_program_lowering::dup_output_default_fd ... ok [INFO] [stdout] test ir::property_ir::pool_string_dedup_determinism ... ok [INFO] [stdout] test ir::property_ir::encode_accepts_all_verified_modules ... ok [INFO] [stdout] test ir::redirect_program_lowering::explicit_fd ... ok [INFO] [stdout] test ir::redirect_program_lowering::heredoc_quoted ... ok [INFO] [stdout] test ir::redirect_program_lowering::multiple_redirects_order ... ok [INFO] [stdout] test ir::redirect_program_lowering::input_redirect ... ok [INFO] [stdout] test ir::redirect_program_lowering::heredoc_unquoted ... ok [INFO] [stdout] test ir::redirect_program_lowering::readwrite_redirect ... ok [INFO] [stdout] test ir::property_ir::decode_roundtrip_word_count ... ok [INFO] [stdout] test ir::redirect_program_lowering::output_redirect ... ok [INFO] [stdout] test ir::property_ir::encode_is_deterministic ... ok [INFO] [stdout] test ir::redirect_program_lowering::redirect_only_has_ops ... ok [INFO] [stdout] test ir::redirect_program_lowering::word_program_for_target ... ok [INFO] [stdout] test ir::stress::arith_program_count_limit_enforced ... ok [INFO] [stdout] test ir::scaling::encode_pass_scales_linearly ... ok [INFO] [stdout] test ir::stress::deduplicated_strings_do_not_count_against_limit ... ok [INFO] [stdout] test ir::stress::deduplicated_symbols_do_not_count_against_limit ... ok [INFO] [stdout] test ir::stress::nesting_depth_limit_enforced ... ok [INFO] [stdout] test ir::stress::many_unique_strings_via_lowering ... ok [INFO] [stdout] test ir::stress::redirect_program_count_limit_enforced ... ok [INFO] [stdout] test ir::stress::string_pool_limit_enforced ... ok [INFO] [stdout] test ir::stress::symbol_pool_limit_enforced ... ok [INFO] [stdout] test ir::property_ir::verify_accepts_all_lowered_programs ... ok [INFO] [stdout] test ir::stress::word_program_count_limit_enforced ... ok [INFO] [stdout] test ir::verify::arith_program_id_mismatch ... ok [INFO] [stdout] test ir::scaling::pool_interning_scales_linearly ... ok [INFO] [stdout] test ir::verify::arith_program_jump_target_overflow ... ok [INFO] [stdout] test ir::verify::arith_program_out_of_bounds_compound_assign ... ok [INFO] [stdout] test ir::verify::arith_program_out_of_bounds_pre_increment ... ok [INFO] [stdout] test ir::verify::arith_program_jmp_if_zero_target_overflow ... ok [INFO] [stdout] test ir::verify::arith_program_out_of_bounds_symbol_assign ... ok [INFO] [stdout] test ir::verify::code_object_add_assign_invalid_symbol ... ok [INFO] [stdout] test ir::verify::code_object_branch_target_one_past_end_is_valid ... ok [INFO] [stdout] test ir::verify::code_object_branch_target_overflow ... ok [INFO] [stdout] test ir::verify::code_object_define_function_invalid_refs ... ok [INFO] [stdout] test ir::verify::code_object_exec_subshell_invalid ... ok [INFO] [stdout] test ir::verify::code_object_id_mismatch ... ok [INFO] [stdout] test ir::verify::code_object_local_id_overflow ... ok [INFO] [stdout] test ir::verify::code_object_out_of_bounds_add_arg ... ok [INFO] [stdout] test ir::verify::code_object_out_of_bounds_add_redir ... ok [INFO] [stdout] test ir::verify::arith_program_out_of_bounds_symbol_load ... ok [INFO] [stdout] test ir::verify::code_object_out_of_bounds_call ... ok [INFO] [stdout] test ir::verify::code_object_out_of_bounds_push_const ... ok [INFO] [stdout] test ir::verify::arith_program_jmp_if_non_zero_target_overflow ... ok [INFO] [stdout] test ir::verify::arith_program_out_of_bounds_post_decrement ... ok [INFO] [stdout] test ir::verify::code_object_out_of_bounds_push_symbol ... ok [INFO] [stdout] test ir::property_ir::lowering_determinism ... ok [INFO] [stdout] test ir::verify::const_pool_invalid_symbol_ref ... ok [INFO] [stdout] test ir::verify::debug_verifier_detects_dead_code_object ... ok [INFO] [stdout] test ir::verify::const_pool_invalid_string_ref ... ok [INFO] [stdout] test ir::scaling::full_lowering_scales_linearly ... ok [INFO] [stdout] test ir::verify::debug_verifier_detects_unreachable_code ... ok [INFO] [stdout] test ir::verify::debug_verifier_empty_module_no_warnings ... ok [INFO] [stdout] test ir::verify::empty_module_verifies ... ok [INFO] [stdout] test ir::verify::code_object_out_of_bounds_push_string ... ok [INFO] [stdout] test ir::verify::debug_verifier_no_warnings_for_valid_lowered_module ... ok [INFO] [stdout] test ir::verify::full_pipeline_parse_lower_verify_encode ... ok [INFO] [stdout] test ir::verify::incomplete_for_setup ... ok [INFO] [stdout] test ir::verify::orphan_add_pipeline_stage ... ok [INFO] [stdout] test ir::verify::orphan_exec_pipeline ... ok [INFO] [stdout] test ir::verify::orphan_for_add_word ... ok [INFO] [stdout] test ir::verify::pipeline_stage_count_mismatch ... ok [INFO] [stdout] test ir::verify::full_pipeline_complex_program ... ok [INFO] [stdout] test ir::verify::redirect_program_id_mismatch ... ok [INFO] [stdout] test ir::verify::unbalanced_begin_simple_unclosed ... ok [INFO] [stdout] test ir::verify::unbalanced_end_simple_without_begin ... ok [INFO] [stdout] test ir::verify::valid_control_flow_module_verifies ... ok [INFO] [stdout] test ir::verify::unbalanced_push_redirect_scope_unclosed ... ok [INFO] [stdout] test ir::verify::redirect_program_out_of_bounds_word_program ... ok [INFO] [stdout] test ir::verify::redirect_program_out_of_bounds_string ... ok [INFO] [stdout] test ir::verify::unbalanced_pop_redirect_scope ... ok [INFO] [stdout] test ir::verify::word_program_id_mismatch ... ok [INFO] [stdout] test ir::verify::valid_case_module_verifies ... ok [INFO] [stdout] test ir::property_ir::pool_const_dedup_determinism ... ok [INFO] [stdout] test ir::verify::word_program_out_of_bounds_arith ... ok [INFO] [stdout] test ir::verify::valid_pipeline_module_verifies ... ok [INFO] [stdout] test ir::verify::word_program_out_of_bounds_code_object ... ok [INFO] [stdout] test ir::verify::word_program_out_of_bounds_string ... ok [INFO] [stdout] test ir::verify::valid_for_loop_module_verifies ... ok [INFO] [stdout] test ir::verify::valid_module_with_all_pool_types_verifies ... ok [INFO] [stdout] test ir::verify::valid_simple_command_module_verifies ... ok [INFO] [stdout] test ir::verify::word_program_out_of_bounds_symbol ... ok [INFO] [stdout] test ir::word_program_lowering::assignment_value_plain ... ok [INFO] [stdout] test ir::word_program_lowering::assignment_value_word_program_count ... ok [INFO] [stdout] test ir::word_program_lowering::assignment_with_expansion ... ok [INFO] [stdout] test ir::word_program_lowering::bare_parameter_expansion ... ok [INFO] [stdout] test ir::vm_ir_contracts::branch_target_accessors_are_stable ... ok [INFO] [stdout] test ir::vm_ir_contracts::instruction_variants_cover_phase2_contract ... ok [INFO] [stdout] test ir::word_program_lowering::assignment_value_has_no_field_split_or_glob ... ok [INFO] [stdout] test ir::word_program_lowering::braced_parameter_expansion ... ok [INFO] [stdout] test ir::word_program_lowering::mixed_literal_and_expansion ... ok [INFO] [stdout] test ir::word_program_lowering::command_argument_has_field_split_and_glob ... ok [INFO] [stdout] test ir::word_program_lowering::for_loop_word_expansion ... ok [INFO] [stdout] test ir::word_program_lowering::plain_literal_has_trailing_field_split_glob_quote_removal ... ok [INFO] [stdout] test ir::word_program_lowering::plain_literal_word_contains_push_literal ... ok [INFO] [stdout] test ir::word_program_lowering::case_subject_has_word_program ... ok [INFO] [stdout] test ir::word_program_lowering::single_quoted_no_expansion ... ok [INFO] [stdout] test ir::word_program_lowering::tilde_expansion ... ok [INFO] [stdout] test lexer::alias_substitution::expands_after_command_separator ... ok [INFO] [stdout] test ir::word_program_lowering::word_program_counts_preserved ... ok [INFO] [stdout] test lexer::alias_substitution::expands_alias_in_command_position ... ok [INFO] [stdout] test lexer::alias_substitution::retokenizes_alias_value_and_preserves_source_mapping ... ok [INFO] [stdout] test lexer::alias_substitution::quoted_or_invalid_alias_names_are_not_expanded ... ok [INFO] [stdout] test lexer::alias_substitution::recursion_guard_prevents_infinite_self_alias_expansion ... ok [INFO] [stdout] test lexer::alias_substitution::trailing_blank_continuation_can_be_enabled_or_disabled ... ok [INFO] [stdout] test lexer::boundary_api::boundary_api_can_report_need_more_input ... ok [INFO] [stdout] test lexer::boundary_api::boundary_api_returns_complete_on_basic_input ... ok [INFO] [stdout] test lexer::alias_substitution::does_not_expand_alias_outside_command_position ... ok [INFO] [stdout] test ir::word_program_lowering::word_programs_not_empty_for_simple_command ... ok [INFO] [stdout] test lexer::boundary_api::interactive_mode_keeps_unterminated_quote_as_need_more_input ... ok [INFO] [stdout] test lexer::boundary_api::non_interactive_mode_returns_fatal_for_unterminated_quote ... ok [INFO] [stdout] test lexer::cursor_position::ascii_advance_updates_column_and_newline_resets_column ... ok [INFO] [stdout] test lexer::cursor_position::checkpoint_and_rollback_restore_all_position_fields ... ok [INFO] [stdout] test lexer::cursor_position::initial_position_is_one_based ... ok [INFO] [stdout] test lexer::cursor_position::utf8_continuation_byte_does_not_increment_column ... ok [INFO] [stdout] test lexer::boundary_api::non_interactive_mode_returns_fatal_incomplete_for_trailing_backslash ... ok [INFO] [stdout] test ir::scaling::branch_patching_scales_linearly ... FAILED [INFO] [stdout] test lexer::constructor_mode::lexer_new_sets_mode ... ok [INFO] [stdout] test lexer::comment_handling::comment_after_word_discards_comment_text_and_keeps_newline ... ok [INFO] [stdout] test lexer::diagnostic_stability::heredoc_warning_diagnostic_fields_are_stable ... ok [INFO] [stdout] test lexer::error_types::diagnostic_with_context_populates_optional_fields ... ok [INFO] [stdout] test lexer::comment_handling::hash_inside_word_is_not_comment_start ... ok [INFO] [stdout] test lexer::diagnostic_stability::malformed_arithmetic_diagnostic_fields_are_stable ... ok [INFO] [stdout] test lexer::comment_handling::leading_comment_line_preserves_newline_token ... ok [INFO] [stdout] test lexer::comment_handling::quoted_hash_does_not_start_comment ... ok [INFO] [stdout] test lexer::error_types::recoverable_and_fatal_errors_are_distinct_types ... ok [INFO] [stdout] test lexer::guardrails::heredoc_body_exceed_limit_returns_heredoc_size_error ... ok [INFO] [stdout] test lexer::golden_tokenization::mixed_quotes_case_matches_golden ... ok [INFO] [stdout] test lexer::guardrails::boundary_token_count_exceed_limit_returns_boundary_limit_error ... ok [INFO] [stdout] test lexer::diagnostic_stability::unterminated_single_quote_diagnostic_fields_are_stable ... ok [INFO] [stdout] test lexer::guardrails::token_exceed_limit_returns_token_size_error ... ok [INFO] [stdout] test lexer::heredoc_mode_machine::boundary_api_is_complete_in_warning_mode ... ok [INFO] [stdout] test lexer::heredoc_mode_machine::captures_here_doc_body_payload_and_metadata ... ok [INFO] [stdout] test lexer::heredoc_mode_machine::drain_accessors_clear_collected_values ... ok [INFO] [stdout] test lexer::heredoc_mode_machine::here_doc_line_tokens_are_replayed_and_body_is_consumed ... ok [INFO] [stdout] test lexer::golden_tokenization::nested_substitution_case_matches_golden ... ok [INFO] [stdout] test lexer::golden_tokenization::multiple_heredocs_case_matches_golden ... ok [INFO] [stdout] test lexer::heredoc_mode_machine::boundary_api_reports_missing_here_doc_delimiter_as_need_more ... ok [INFO] [stdout] test lexer::heredoc_mode_machine::quoted_delimiter_uses_quote_removed_key ... ok [INFO] [stdout] test lexer::golden_tokenization::simple_command_case_matches_golden ... ok [INFO] [stdout] test lexer::golden_tokenization::pipeline_list_case_matches_golden ... ok [INFO] [stdout] test lexer::heredoc_mode_machine::strip_tabs_mode_matches_delimiter_with_leading_tabs ... ok [INFO] [stdout] test lexer::heredoc_mode_machine::warning_policy_captures_remaining_pending_heredocs_as_empty ... ok [INFO] [stdout] test lexer::heredoc_mode_machine::warning_policy_keeps_partial_body_and_records_warning ... ok [INFO] [stdout] test lexer::heredoc_mode_machine::strip_tabs_mode_strips_tabs_from_stored_body_lines ... ok [INFO] [stdout] test lexer::line_continuation::line_continuation_between_words_does_not_emit_newline_token ... ok [INFO] [stdout] test lexer::line_continuation::repeated_next_token_after_line_join_does_not_panic ... ok [INFO] [stdout] test lexer::line_continuation::trailing_unquoted_backslash_requests_more_input ... ok [INFO] [stdout] test lexer::newline_preservation::removed_line_continuation_does_not_emit_intermediate_newline ... ok [INFO] [stdout] test lexer::next_token_behavior::next_token_smoke_does_not_panic ... ok [INFO] [stdout] test lexer::newline_preservation::emits_newline_tokens_for_regular_line_ends ... ok [INFO] [stdout] test lexer::line_continuation::unquoted_line_continuation_joins_token_without_separator ... ok [INFO] [stdout] test lexer::parser_handoff_contract::io_location_classification_is_gated_by_explicit_parser_option ... ok [INFO] [stdout] test lexer::parser_handoff_contract::parser_side_lookahead_can_classify_io_number_without_mutating_stream_kind ... ok [INFO] [stdout] test lexer::performance_benchmarks::bench_long_line_tokenization_ignored ... ignored [INFO] [stdout] test lexer::parser_handoff_contract::quoted_or_substituted_tokens_remain_token_class_under_delimiter_context ... ok [INFO] [stdout] test lexer::parser_handoff_contract::lexer_stream_remains_raw_token_operator_newline_only ... ok [INFO] [stdout] test lexer::performance_benchmarks::bench_nested_substitution_tokenization_ignored ... ignored [INFO] [stdout] test lexer::quote_scanning::boundary_reports_unterminated_dollar_single_quote ... ok [INFO] [stdout] test lexer::operator_scanning::scans_all_operators_with_exact_lexemes ... ok [INFO] [stdout] test lexer::quote_scanning::boundary_reports_unterminated_double_quote ... ok [INFO] [stdout] test lexer::quote_scanning::quote_markers_preserve_ranges_and_lexeme ... ok [INFO] [stdout] test lexer::quote_scanning::unterminated_dollar_single_quote_returns_fatal_error ... ok [INFO] [stdout] test lexer::source_span_types::source_and_span_contracts_hold_ordering ... ok [INFO] [stdout] test lexer::substitution_scanning::boundary_reports_unterminated_substitution_need_more_reason ... ok [INFO] [stdout] test lexer::substitution_scanning::delimiters_inside_substitution_do_not_split_token ... ok [INFO] [stdout] test lexer::quote_scanning::unterminated_single_quote_returns_fatal_error ... ok [INFO] [stdout] test lexer::substitution_scanning::malformed_arithmetic_expansion_returns_fatal_error ... ok [INFO] [stdout] test lexer::substitution_scanning::marker_creation_for_recursive_substitution_forms ... ok [INFO] [stdout] test lexer::heredoc_mode_machine::multiple_here_docs_are_consumed_in_encounter_order ... ok [INFO] [stdout] test lexer::heredoc_mode_machine::next_token_reports_missing_here_doc_delimiter_as_fatal ... ok [INFO] [stdout] test lexer::operator_scanning::honors_longest_match_precedence ... ok [INFO] [stdout] test lexer::substitution_scanning::nesting_keeps_single_token_and_collects_overlapping_markers ... ok [INFO] [stdout] test lexer::substitution_scanning::substitution_recognized_in_double_quotes_but_not_single_quotes ... ok [INFO] [stdout] test lexer::substitution_scanning::unterminated_substitutions_return_fatal_error_from_next_token ... ok [INFO] [stdout] test lexer::token_model::classify_for_parser_can_enable_io_location_gate ... ok [INFO] [stdout] test lexer::token_model::classify_for_parser_gives_io_number_precedence ... ok [INFO] [stdout] test lexer::token_model::classify_for_parser_keeps_io_location_disabled_by_default ... ok [INFO] [stdout] test lexer::substitution_scanning::depth_overflow_returns_fatal_error ... ok [INFO] [stdout] test lexer::token_model::classify_for_parser_never_converts_non_plain_or_non_token_values ... ok [INFO] [stdout] test lexer::token_model::io_number_helper_accepts_plain_digits_token_only ... ok [INFO] [stdout] test lexer::token_model::classify_for_parser_rejects_invalid_io_location_shape_even_when_enabled ... ok [INFO] [stdout] test lexer::token_model::operator_kind_covers_phase1_operator_set ... ok [INFO] [stdout] test lexer::token_model::io_location_helper_uses_braced_identifier_shape ... ok [INFO] [stdout] test lexer::token_model::classify_for_parser_recognizes_io_number_only_with_delimiter_context ... ok [INFO] [stdout] test lexer::word_boundaries::mixed_stream_order_is_preserved ... ok [INFO] [stdout] test lexer::token_model::operator_kind_delimiter_context_maps_redirection_operators ... ok [INFO] [stdout] test lexer::word_boundaries::operators_delimit_words_without_merging ... ok [INFO] [stdout] test lexer::word_boundaries::quoted_operator_and_blank_stay_in_single_token ... ok [INFO] [stdout] test lexer::token_model::token_preserves_raw_text_span_and_markers ... ok [INFO] [stdout] test parser::arena_builders::ast_builder_creates_nodes_and_tracks_allocations ... ok [INFO] [stdout] test lexer::word_boundaries::unquoted_blanks_delimit_words ... ok [INFO] [stdout] test parser::arena_builders::ast_builder_limit_overflow_maps_to_parse_error ... ok [INFO] [stdout] test parser::arena_builders::parse_program_empty_input_uses_program_node_allocation ... ok [INFO] [stdout] test parser::arena_builders::parser_non_empty_input_respects_max_ast_nodes_guard ... ok [INFO] [stdout] test parser::classifier::assignment_word_rule_handles_valid_and_invalid_prefixes ... ok [INFO] [stdout] test parser::classifier::io_number_and_io_location_classification_follow_context_and_options ... ok [INFO] [stdout] test parser::classifier::quoted_tokens_are_not_reserved_words ... ok [INFO] [stdout] test parser::classifier::reserved_words_only_match_when_policy_allows ... ok [INFO] [stdout] test parser::classifier::rule9_function_body_bypasses_assignment_conversion ... ok [INFO] [stdout] test parser::contracts::parse_options_default_matches_phase_contract ... ok [INFO] [stdout] test parser::contracts::parse_program_returns_empty_program_on_empty_input ... ok [INFO] [stdout] test parser::contracts::parse_step_and_error_kinds_are_public_contracts ... ok [INFO] [stdout] test parser::contracts::parser_constructor_and_source_id_are_available ... ok [INFO] [stdout] test parser::grammar_skeleton::and_or_chain_parses ... ok [INFO] [stdout] test parser::grammar_skeleton::assignment_like_word_in_suffix_stays_word ... ok [INFO] [stdout] test parser::grammar_skeleton::assignment_only_simple_command_parses ... ok [INFO] [stdout] test parser::grammar_skeleton::assignment_prefix_with_command_words_parses ... ok [INFO] [stdout] test parser::grammar_skeleton::case_non_terminated_item_parses ... ok [INFO] [stdout] test parser::grammar_skeleton::case_with_terminators_parses ... ok [INFO] [stdout] test parser::grammar_skeleton::compound_redirects_attach_and_preserve_order ... ok [INFO] [stdout] test parser::grammar_skeleton::brace_group_compound_parses ... ok [INFO] [stdout] test parser::grammar_skeleton::for_forms_parse ... ok [INFO] [stdout] test parser::grammar_skeleton::function_definition_missing_body_fails ... ok [INFO] [stdout] test lexer::word_boundaries::io_number_like_text_stays_raw_token_in_lexer_stream ... ok [INFO] [stdout] test parser::grammar_skeleton::function_definition_parses_brace_group_body ... ok [INFO] [stdout] test parser::arena_builders::arena_allocation_limit_failure_is_deterministic ... ok [INFO] [stdout] test parser::grammar_skeleton::function_definition_parses_subshell_body_after_linebreak ... ok [INFO] [stdout] test parser::classifier::for_name_context_maps_valid_name_only ... ok [INFO] [stdout] test parser::grammar_skeleton::function_body_rule9_keeps_assignment_like_tokens_as_words ... ok [INFO] [stdout] test parser::grammar_skeleton::function_definition_redirects_attach_to_function_body_wrapper ... ok [INFO] [stdout] test parser::grammar_skeleton::io_location_redirect_is_gated_by_option ... ok [INFO] [stdout] test parser::grammar_skeleton::list_with_separators_parses_multiple_and_ors ... ok [INFO] [stdout] test parser::grammar_skeleton::function_definition_requires_compound_body ... ok [INFO] [stdout] test parser::grammar_skeleton::if_elif_else_compound_parses ... ok [INFO] [stdout] test parser::grammar_skeleton::io_number_redirect_parses ... ok [INFO] [stdout] test parser::grammar_skeleton::missing_then_in_if_fails ... ok [INFO] [stdout] test parser::grammar_skeleton::node_limit_failure_stays_deterministic_on_valid_parse_path ... ok [INFO] [stdout] test parser::grammar_skeleton::missing_do_after_while_fails ... ok [INFO] [stdout] test parser::grammar_skeleton::missing_esac_fails ... ok [INFO] [stdout] test parser::grammar_skeleton::non_name_function_head_is_not_accepted ... ok [INFO] [stdout] test parser::grammar_skeleton::one_word_simple_command_parses ... ok [INFO] [stdout] test parser::grammar_skeleton::parse_program_handles_leading_and_trailing_blank_lines ... ok [INFO] [stdout] test parser::grammar_skeleton::redirect_missing_target_reports_deterministic_error ... ok [INFO] [stdout] test parser::grammar_skeleton::pipeline_parses_two_commands ... ok [INFO] [stdout] test parser::grammar_skeleton::pipeline_negation_sets_flag ... ok [INFO] [stdout] test parser::grammar_skeleton::redirect_order_is_preserved_across_prefix_and_suffix ... ok [INFO] [stdout] test parser::grammar_skeleton::redirect_prefix_form_parses ... ok [INFO] [stdout] test parser::grammar_skeleton::redirect_target_word_can_be_numeric ... ok [INFO] [stdout] test parser::grammar_skeleton::redirection_in_command_parses ... ok [INFO] [stdout] test parser::grammar_skeleton::subshell_compound_parses ... ok [INFO] [stdout] test parser::grammar_skeleton::unterminated_subshell_and_brace_group_fail ... ok [INFO] [stdout] test parser::grammar_skeleton::while_compound_parses ... ok [INFO] [stdout] test parser::grammar_skeleton::word_sequence_simple_command_parses ... ok [INFO] [stdout] test parser::negative_reserved_words::standalone_reserved_words_fail_at_top_level ... ok [INFO] [stdout] test parser::parser_entrypoints::boundary_keeps_second_command_after_function_definition ... ok [INFO] [stdout] test parser::negative_reserved_words::invalid_reserved_words_in_compound_contexts_fail ... ok [INFO] [stdout] test parser::parser_entrypoints::boundary_preserves_following_command_after_trailing_semicolon_newline ... ok [INFO] [stdout] test parser::parser_entrypoints::boundary_stepping_is_stable_with_leading_and_trailing_blank_lines ... ok [INFO] [stdout] test parser::parser_entrypoints::interactive_incomplete_constructs_return_specific_need_more_reason ... ok [INFO] [stdout] test parser::parser_entrypoints::interactive_trailing_operators_return_specific_need_more_reason ... ok [INFO] [stdout] test parser::parser_entrypoints::max_nesting_guard_allows_depth_within_limit ... ok [INFO] [stdout] test parser::parser_entrypoints::max_nesting_guard_rejects_pathological_depth ... ok [INFO] [stdout] test parser::parser_entrypoints::mixed_validity_interactive_returns_complete_then_need_more ... ok [INFO] [stdout] test parser::parser_entrypoints::mixed_validity_non_interactive_returns_complete_then_error ... ok [INFO] [stdout] test parser::grammar_skeleton::parse_complete_command_is_boundary_safe_across_multiple_commands ... ok [INFO] [stdout] test parser::parser_entrypoints::boundary_preserves_following_command_after_trailing_ampersand_newline ... ok [INFO] [stdout] test parser::parser_entrypoints::parse_complete_command_returns_end_of_input_on_empty_source ... ok [INFO] [stdout] test parser::parser_entrypoints::non_interactive_incomplete_constructs_still_return_unexpected_end_of_input ... ok [INFO] [stdout] test parser::parser_entrypoints::parse_complete_command_returns_need_more_input_in_interactive_mode ... ok [INFO] [stdout] test parser::parser_entrypoints::parse_complete_command_sequence_matches_parse_program_order ... ok [INFO] [stdout] test parser::negative_reserved_words::reserved_lexemes_in_suffix_position_stay_plain_words ... ok [INFO] [stdout] test parser::parser_entrypoints::stress_deep_nesting_with_default_limit_is_stable ... ok [INFO] [stdout] test parser::parser_entrypoints::parse_complete_command_returns_error_in_non_interactive_mode ... ok [INFO] [stdout] test parser::grammar_skeleton::until_compound_parses ... ok [INFO] [stdout] test parser::parser_entrypoints::parse_complete_command_returns_complete_for_simple_command ... ok [INFO] [stdout] test parser::parser_entrypoints::stress_mixed_pipeline_and_list_sequences_is_stable ... ok [INFO] [stdout] test parser::token_stream::eof_is_idempotent_for_peek_and_next ... ok [INFO] [stdout] test parser::token_stream::expect_success_and_failure_are_deterministic ... ok [INFO] [stdout] test parser::token_stream::newline_and_operator_tokens_are_preserved ... ok [INFO] [stdout] test parser::token_stream::peek_is_non_consuming_and_next_consumes ... ok [INFO] [stdout] test parser::token_stream::peek_rejects_lookahead_over_limit ... ok [INFO] [stdout] test lexer::property_cursor_invariants::rollback_is_idempotent_for_same_checkpoint ... ok [INFO] [stdout] test lexer::property_cursor_invariants::checkpoint_and_rollback_match_fresh_cursor_position ... ok [INFO] [stdout] test parser::token_stream::peek_supports_bounded_lookahead ... ok [INFO] [stdout] test vm::dispatch_loop::call_and_ret ... ok [INFO] [stdout] test vm::dispatch_loop::call_depth_exceeded ... ok [INFO] [stdout] test vm::dispatch_loop::call_depth_starts_at_zero ... ok [INFO] [stdout] test vm::dispatch_loop::call_preserves_caller_state ... ok [INFO] [stdout] test vm::dispatch_loop::dup_preserves_value_type ... ok [INFO] [stdout] test vm::dispatch_loop::drop_removes_top ... ok [INFO] [stdout] test vm::dispatch_loop::dup_duplicates_top ... ok [INFO] [stdout] test vm::dispatch_loop::empty_code_object_returns_exit_status_zero ... ok [INFO] [stdout] test vm::dispatch_loop::execute_invalid_code_object_entry ... ok [INFO] [stdout] test vm::dispatch_loop::if_else_false_branch ... ok [INFO] [stdout] test vm::dispatch_loop::implicit_return_from_callee ... ok [INFO] [stdout] test vm::dispatch_loop::implicit_return_empty_stack ... ok [INFO] [stdout] test vm::dispatch_loop::if_else_true_branch ... ok [INFO] [stdout] test vm::dispatch_loop::implicit_return_with_stack ... ok [INFO] [stdout] test vm::dispatch_loop::invalid_const_id ... ok [INFO] [stdout] test vm::dispatch_loop::invalid_code_object_id ... ok [INFO] [stdout] test vm::dispatch_loop::invalid_string_id ... ok [INFO] [stdout] test vm::dispatch_loop::jmp_if_non_zero_not_taken ... ok [INFO] [stdout] test vm::dispatch_loop::jmp_if_non_zero_taken ... ok [INFO] [stdout] test vm::dispatch_loop::jmp_if_zero_empty_string ... ok [INFO] [stdout] test vm::dispatch_loop::jmp_if_zero_exit_status_zero ... ok [INFO] [stdout] test vm::dispatch_loop::jmp_if_zero_nonempty_string ... ok [INFO] [stdout] test vm::dispatch_loop::jmp_if_zero_not_taken_integer ... ok [INFO] [stdout] test vm::dispatch_loop::jmp_if_zero_taken_integer ... ok [INFO] [stdout] test vm::dispatch_loop::jmp_if_zero_uninitialized ... ok [INFO] [stdout] test vm::dispatch_loop::jmp_unconditional ... ok [INFO] [stdout] test vm::dispatch_loop::local_get_out_of_bounds ... ok [INFO] [stdout] test vm::dispatch_loop::local_get_uninitialized_returns_uninitialized ... ok [INFO] [stdout] test vm::dispatch_loop::local_overwrite ... ok [INFO] [stdout] test vm::dispatch_loop::local_set_and_get ... ok [INFO] [stdout] test vm::dispatch_loop::local_set_out_of_bounds ... ok [INFO] [stdout] test vm::dispatch_loop::locals_isolated_across_frames ... ok [INFO] [stdout] test vm::dispatch_loop::loop_simulation ... ok [INFO] [stdout] test vm::dispatch_loop::module_accessor ... ok [INFO] [stdout] test vm::dispatch_loop::multiple_push_and_drop ... ok [INFO] [stdout] test vm::dispatch_loop::negate_status_double_negate ... ok [INFO] [stdout] test vm::dispatch_loop::negate_status_negative_integer ... ok [INFO] [stdout] test vm::dispatch_loop::negate_status_nonzero_to_zero ... ok [INFO] [stdout] test vm::dispatch_loop::negate_status_string_value ... ok [INFO] [stdout] test vm::dispatch_loop::invalid_symbol_id ... ok [INFO] [stdout] test lexer::property_scanning::next_token_handles_lossy_utf8_inputs_without_panicking ... ok [INFO] [stdout] test vm::dispatch_loop::nested_calls ... ok [INFO] [stdout] test parser::parser_entrypoints::stress_long_simple_command_stream_is_stable ... ok [INFO] [stdout] test vm::dispatch_loop::nop_returns_exit_status_zero ... ok [INFO] [stdout] test vm::dispatch_loop::push_const_integer ... ok [INFO] [stdout] test vm::dispatch_loop::push_const_string ... ok [INFO] [stdout] test vm::dispatch_loop::push_int_negative ... ok [INFO] [stdout] test vm::dispatch_loop::push_string ... ok [INFO] [stdout] test vm::dispatch_loop::push_const_symbol ... ok [INFO] [stdout] test vm::dispatch_loop::push_symbol ... ok [INFO] [stdout] test vm::dispatch_loop::ret_from_last_frame ... ok [INFO] [stdout] test vm::dispatch_loop::stack_underflow_drop ... ok [INFO] [stdout] test vm::dispatch_loop::stack_underflow_ret ... ok [INFO] [stdout] test vm::dispatch_loop::unimplemented_instruction ... ok [INFO] [stdout] test vm::error_types::clone_preserves_equality ... ok [INFO] [stdout] test vm::error_types::command_not_executable_constructor ... ok [INFO] [stdout] test vm::dispatch_loop::negate_status_zero_to_one ... ok [INFO] [stdout] test vm::error_types::display_shows_message ... ok [INFO] [stdout] test vm::error_types::division_by_zero_constructor ... ok [INFO] [stdout] test vm::error_types::implements_std_error ... ok [INFO] [stdout] test vm::error_types::error_kind_display ... ok [INFO] [stdout] test vm::error_types::command_not_found_constructor ... ok [INFO] [stdout] test vm::error_types::different_errors_not_equal ... ok [INFO] [stdout] test vm::error_types::register_out_of_bounds_constructor ... ok [INFO] [stdout] test vm::error_types::internal_error_constructor ... ok [INFO] [stdout] test vm::error_types::invalid_code_object_constructor ... ok [INFO] [stdout] test vm::dispatch_loop::push_int_returns_value ... ok [INFO] [stdout] test vm::error_types::stack_underflow_constructor ... ok [INFO] [stdout] test vm::error_types::type_mismatch_constructor ... ok [INFO] [stdout] test vm::frame_ops::advance_pc_after_set_pc ... ok [INFO] [stdout] test vm::frame_ops::dup_underflow_on_empty ... ok [INFO] [stdout] test vm::frame_ops::large_locals_count ... ok [INFO] [stdout] test vm::frame_ops::dup_overflow_at_max ... ok [INFO] [stdout] test vm::frame_ops::advance_pc_returns_current_and_increments ... ok [INFO] [stdout] test vm::frame_ops::max_stack_zero_rejects_all_pushes ... ok [INFO] [stdout] test vm::frame_ops::dup_duplicates_top ... ok [INFO] [stdout] test vm::error_types::stack_overflow_constructor ... ok [INFO] [stdout] test vm::frame_ops::mixed_stack_and_register_ops ... ok [INFO] [stdout] test vm::frame_ops::new_frame_builder_fields_are_none ... ok [INFO] [stdout] test vm::frame_ops::new_frame_has_correct_code_object_id ... ok [INFO] [stdout] test vm::frame_ops::new_frame_has_empty_stack ... ok [INFO] [stdout] test vm::frame_ops::new_frame_has_zero_pc ... ok [INFO] [stdout] test vm::frame_ops::new_frame_registers_initialized_to_uninitialized ... ok [INFO] [stdout] test vm::frame_ops::new_frame_zero_locals ... ok [INFO] [stdout] test vm::frame_ops::peek_underflow_on_empty ... ok [INFO] [stdout] test vm::frame_ops::pop_underflow_error ... ok [INFO] [stdout] test vm::frame_ops::push_at_exact_max_succeeds ... ok [INFO] [stdout] test vm::frame_ops::push_one_past_max_fails ... ok [INFO] [stdout] test vm::frame_ops::push_pop_various_value_types ... ok [INFO] [stdout] test vm::frame_ops::push_overflow_error ... ok [INFO] [stdout] test vm::frame_ops::push_then_pop ... ok [INFO] [stdout] test vm::frame_ops::register_boundary_index ... ok [INFO] [stdout] test vm::frame_ops::register_get_uninitialized ... ok [INFO] [stdout] test vm::frame_ops::register_out_of_bounds_set ... ok [INFO] [stdout] test vm::frame_ops::register_out_of_bounds_get ... ok [INFO] [stdout] test vm::frame_ops::register_overwrite ... ok [INFO] [stdout] test vm::frame_ops::register_set_then_get ... ok [INFO] [stdout] test vm::frame_ops::register_zero_locals_always_fails ... ok [INFO] [stdout] test vm::frame_ops::set_pc_changes_counter ... ok [INFO] [stdout] test vm::frame_ops::stack_depth_tracking ... ok [INFO] [stdout] test vm::frame_ops::stack_lifo_order ... ok [INFO] [stdout] test vm::frame_ops::swap_exchanges_top_two ... ok [INFO] [stdout] test vm::frame_ops::swap_is_self_inverse ... ok [INFO] [stdout] test vm::frame_ops::swap_underflow_with_zero_elements ... ok [INFO] [stdout] test vm::frame_ops::peek_returns_top_without_removing ... ok [INFO] [stdout] test vm::value_coercions::as_exit_status_from_empty_field_list ... ok [INFO] [stdout] test vm::frame_ops::swap_underflow_with_one_element ... ok [INFO] [stdout] test vm::value_coercions::as_exit_status_from_empty_string ... ok [INFO] [stdout] test vm::value_coercions::as_exit_status_from_exit_status_signal ... ok [INFO] [stdout] test vm::value_coercions::as_exit_status_from_field_list ... ok [INFO] [stdout] test vm::value_coercions::as_exit_status_from_integer ... ok [INFO] [stdout] test vm::value_coercions::as_exit_status_from_large_numeric_string ... ok [INFO] [stdout] test vm::value_coercions::as_exit_status_from_integer_masked ... ok [INFO] [stdout] test vm::value_coercions::as_exit_status_from_non_numeric_string ... ok [INFO] [stdout] test vm::value_coercions::as_exit_status_from_numeric_string ... ok [INFO] [stdout] test vm::value_coercions::as_exit_status_from_integer_negative ... ok [INFO] [stdout] test vm::value_coercions::as_integer_from_exit_status ... ok [INFO] [stdout] test vm::value_coercions::as_integer_from_empty_string ... ok [INFO] [stdout] test vm::value_coercions::as_integer_from_field_list_is_error ... ok [INFO] [stdout] test vm::value_coercions::as_integer_from_integer ... ok [INFO] [stdout] test vm::value_coercions::as_integer_from_negative_integer ... ok [INFO] [stdout] test vm::value_coercions::as_integer_from_negative_string ... ok [INFO] [stdout] test vm::value_coercions::as_integer_from_non_numeric_string ... ok [INFO] [stdout] test vm::value_coercions::as_integer_from_numeric_string ... ok [INFO] [stdout] test vm::value_coercions::as_integer_from_padded_string ... ok [INFO] [stdout] test vm::value_coercions::as_integer_from_partially_numeric_string ... ok [INFO] [stdout] test vm::value_coercions::as_integer_from_uninitialized ... ok [INFO] [stdout] test vm::value_coercions::as_integer_from_whitespace_string ... ok [INFO] [stdout] test vm::value_coercions::as_string_from_empty_field_list ... ok [INFO] [stdout] test vm::value_coercions::as_string_from_empty_string ... ok [INFO] [stdout] test vm::value_coercions::as_exit_status_from_uninitialized ... ok [INFO] [stdout] test vm::value_coercions::as_integer_from_empty_field_list_is_error ... ok [INFO] [stdout] test vm::value_coercions::as_string_from_exit_status_zero ... ok [INFO] [stdout] test vm::value_coercions::as_string_from_exit_status_nonzero ... ok [INFO] [stdout] test vm::value_coercions::as_string_from_field_list ... ok [INFO] [stdout] test vm::value_coercions::as_string_from_i64_max ... ok [INFO] [stdout] test vm::value_coercions::as_string_from_i64_min ... ok [INFO] [stdout] test vm::value_coercions::as_string_from_negative_integer ... ok [INFO] [stdout] test vm::value_coercions::as_string_from_positive_integer ... ok [INFO] [stdout] test vm::value_coercions::as_string_from_single_field_list ... ok [INFO] [stdout] test vm::value_coercions::as_string_from_string ... ok [INFO] [stdout] test vm::value_coercions::as_string_from_uninitialized ... ok [INFO] [stdout] test vm::value_coercions::as_string_from_zero_integer ... ok [INFO] [stdout] test vm::value_coercions::clone_preserves_equality ... ok [INFO] [stdout] test vm::value_coercions::default_is_uninitialized ... ok [INFO] [stdout] test vm::value_coercions::different_values_not_equal ... ok [INFO] [stdout] test vm::value_coercions::display_matches_as_string ... ok [INFO] [stdout] test vm::value_coercions::is_truthy_exit_status_failure ... ok [INFO] [stdout] test vm::value_coercions::is_truthy_exit_status_signal ... ok [INFO] [stdout] test vm::value_coercions::is_truthy_exit_status_success ... ok [INFO] [stdout] test vm::value_coercions::is_truthy_field_list_empty ... ok [INFO] [stdout] test vm::value_coercions::is_truthy_field_list_nonempty ... ok [INFO] [stdout] test vm::value_coercions::is_truthy_integer_negative ... ok [INFO] [stdout] test vm::value_coercions::is_truthy_integer_nonzero ... ok [INFO] [stdout] test vm::value_coercions::is_truthy_integer_zero ... ok [INFO] [stdout] test vm::value_coercions::is_truthy_string_empty ... ok [INFO] [stdout] test vm::value_coercions::as_exit_status_from_exit_status ... ok [INFO] [stdout] test vm::value_coercions::is_truthy_string_zero_is_truthy ... ok [INFO] [stdout] test vm::value_coercions::is_truthy_uninitialized ... ok [INFO] [stdout] test vm::value_coercions::is_zero_exit_status_nonzero ... ok [INFO] [stdout] test vm::value_coercions::is_truthy_string_nonempty ... ok [INFO] [stdout] test vm::value_coercions::is_zero_field_list_nonempty ... ok [INFO] [stdout] test vm::value_coercions::is_zero_integer_nonzero ... ok [INFO] [stdout] test vm::value_coercions::is_zero_string_empty ... ok [INFO] [stdout] test vm::value_coercions::is_zero_integer_zero ... ok [INFO] [stdout] test vm::value_coercions::is_zero_exit_status_zero ... ok [INFO] [stdout] test vm::value_coercions::is_zero_string_nonempty ... ok [INFO] [stdout] test vm::value_coercions::is_zero_field_list_empty ... ok [INFO] [stdout] test vm::value_coercions::is_zero_integer_negative ... ok [INFO] [stdout] test vm::value_coercions::is_zero_string_zero_char ... ok [INFO] [stdout] test vm::value_coercions::is_zero_uninitialized ... ok [INFO] [stdout] test parser::property_robustness::parse_program_handles_lossy_utf8_inputs_without_panicking ... ok [INFO] [stdout] test parser::property_robustness::interactive_complete_command_loop_handles_need_more_without_panicking ... ok [INFO] [stdout] test parser::property_robustness::parse_complete_command_loop_terminates_without_panicking ... ok [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- ir::scaling::branch_patching_scales_linearly stdout ---- [INFO] [stdout] [INFO] [stdout] thread 'ir::scaling::branch_patching_scales_linearly' (341) panicked at tests/ir/scaling.rs:45:5: [INFO] [stdout] scaling violation: large/small time ratio 12.05 exceeds max allowed 12.00 (size_ratio=4.0, tolerance=3.0) [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5b56cf92424a - std[31e582c13f4e914f]::backtrace_rs::backtrace::libunwind::trace [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5b56cf92424a - std[31e582c13f4e914f]::backtrace_rs::backtrace::trace_unsynchronized:: [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5b56cf92424a - std[31e582c13f4e914f]::sys::backtrace::_print_fmt [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/backtrace.rs:74:9 [INFO] [stdout] 3: 0x5b56cf92424a - <::print::DisplayBacktrace as core[fa0eadad68403074]::fmt::Display>::fmt [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/backtrace.rs:44:26 [INFO] [stdout] 4: 0x5b56cf93985a - ::fmt [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/fmt/rt.rs:152:76 [INFO] [stdout] 5: 0x5b56cf93985a - core[fa0eadad68403074]::fmt::write [INFO] [stdout] 6: 0x5b56cf928ee2 - std[31e582c13f4e914f]::io::default_write_fmt::> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5b56cf928ee2 - as std[31e582c13f4e914f]::io::Write>::write_fmt [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/io/mod.rs:1994:13 [INFO] [stdout] 8: 0x5b56cf901acf - ::print [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/backtrace.rs:47:9 [INFO] [stdout] 9: 0x5b56cf901acf - std[31e582c13f4e914f]::panicking::default_hook::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:292:27 [INFO] [stdout] 10: 0x5b56cf91c349 - std[31e582c13f4e914f]::panicking::default_hook [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:316:9 [INFO] [stdout] 11: 0x5b56cf768e5c - core[fa0eadad68403074]::ops::function::Fn<(&'a std[31e582c13f4e914f]::panic::PanicHookInfo<'b>,), Output = ()> + core[fa0eadad68403074]::marker::Sync + core[fa0eadad68403074]::marker::Send> as core[fa0eadad68403074]::ops::function::Fn<(&std[31e582c13f4e914f]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/alloc/src/boxed.rs:2254:9 [INFO] [stdout] 12: 0x5b56cf768e5c - test[7530e63dc052480e]::test_main_with_exit_callback::::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5b56cf91c502 - core[fa0eadad68403074]::ops::function::Fn<(&'a std[31e582c13f4e914f]::panic::PanicHookInfo<'b>,), Output = ()> + core[fa0eadad68403074]::marker::Sync + core[fa0eadad68403074]::marker::Send> as core[fa0eadad68403074]::ops::function::Fn<(&std[31e582c13f4e914f]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/alloc/src/boxed.rs:2254:9 [INFO] [stdout] 14: 0x5b56cf91c502 - std[31e582c13f4e914f]::panicking::panic_with_hook [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:833:13 [INFO] [stdout] 15: 0x5b56cf901b88 - std[31e582c13f4e914f]::panicking::panic_handler::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:698:13 [INFO] [stdout] 16: 0x5b56cf8f6b39 - std[31e582c13f4e914f]::sys::backtrace::__rust_end_short_backtrace:: [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/backtrace.rs:182:18 [INFO] [stdout] 17: 0x5b56cf90289d - __rustc[fc8e3a9f23f26cb]::rust_begin_unwind [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:689:5 [INFO] [stdout] 18: 0x5b56cf93a01c - core[fa0eadad68403074]::panicking::panic_fmt [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/panicking.rs:80:14 [INFO] [stdout] 19: 0x5b56cf72bdc6 - mod[1d813de99083b9b4]::ir::scaling::assert_linear_scaling:: [INFO] [stdout] at /opt/rustwide/workdir/tests/ir/scaling.rs:45:5 [INFO] [stdout] 20: 0x5b56cf742f98 - mod[1d813de99083b9b4]::ir::scaling::branch_patching_scales_linearly [INFO] [stdout] at /opt/rustwide/workdir/tests/ir/scaling.rs:100:5 [INFO] [stdout] 21: 0x5b56cf72e137 - mod[1d813de99083b9b4]::ir::scaling::branch_patching_scales_linearly::{closure#0} [INFO] [stdout] at /opt/rustwide/workdir/tests/ir/scaling.rs:99:37 [INFO] [stdout] 22: 0x5b56cf6b1a76 - >::call_once [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 23: 0x5b56cf75cf3b - core[fa0eadad68403074]::result::Result<(), alloc[49b8922c36ca62de]::string::String> as core[fa0eadad68403074]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 24: 0x5b56cf75cf3b - test[7530e63dc052480e]::__rust_begin_short_backtrace::, fn() -> core[fa0eadad68403074]::result::Result<(), alloc[49b8922c36ca62de]::string::String>> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:663:18 [INFO] [stdout] 25: 0x5b56cf76992b - test[7530e63dc052480e]::run_test_in_process::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:686:74 [INFO] [stdout] 26: 0x5b56cf76992b - as core[fa0eadad68403074]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/panic/unwind_safe.rs:275:9 [INFO] [stdout] 27: 0x5b56cf76992b - std[31e582c13f4e914f]::panicking::catch_unwind::do_call::, core[fa0eadad68403074]::result::Result<(), alloc[49b8922c36ca62de]::string::String>> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:581:40 [INFO] [stdout] 28: 0x5b56cf76992b - std[31e582c13f4e914f]::panicking::catch_unwind::, core[fa0eadad68403074]::panic::unwind_safe::AssertUnwindSafe> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:544:19 [INFO] [stdout] 29: 0x5b56cf76992b - std[31e582c13f4e914f]::panic::catch_unwind::, core[fa0eadad68403074]::result::Result<(), alloc[49b8922c36ca62de]::string::String>> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panic.rs:359:14 [INFO] [stdout] 30: 0x5b56cf76992b - test[7530e63dc052480e]::run_test_in_process [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:686:27 [INFO] [stdout] 31: 0x5b56cf76992b - test[7530e63dc052480e]::run_test::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:607:43 [INFO] [stdout] 32: 0x5b56cf763d84 - test[7530e63dc052480e]::run_test::{closure#1} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:637:41 [INFO] [stdout] 33: 0x5b56cf763d84 - std[31e582c13f4e914f]::sys::backtrace::__rust_begin_short_backtrace:: [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/backtrace.rs:166:18 [INFO] [stdout] 34: 0x5b56cf76c532 - std[31e582c13f4e914f]::thread::lifecycle::spawn_unchecked::::{closure#1}::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/thread/lifecycle.rs:91:13 [INFO] [stdout] 35: 0x5b56cf76c532 - ::{closure#1}::{closure#0}> as core[fa0eadad68403074]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/panic/unwind_safe.rs:275:9 [INFO] [stdout] 36: 0x5b56cf76c532 - std[31e582c13f4e914f]::panicking::catch_unwind::do_call::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:581:40 [INFO] [stdout] 37: 0x5b56cf76c532 - std[31e582c13f4e914f]::panicking::catch_unwind::<(), core[fa0eadad68403074]::panic::unwind_safe::AssertUnwindSafe::{closure#1}::{closure#0}>> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:544:19 [INFO] [stdout] 38: 0x5b56cf76c532 - std[31e582c13f4e914f]::panic::catch_unwind::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panic.rs:359:14 [INFO] [stdout] 39: 0x5b56cf76c532 - std[31e582c13f4e914f]::thread::lifecycle::spawn_unchecked::::{closure#1} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/thread/lifecycle.rs:89:26 [INFO] [stdout] 40: 0x5b56cf76c532 - ::{closure#1} as core[fa0eadad68403074]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 41: 0x5b56cf9237ff - + core[fa0eadad68403074]::marker::Send> as core[fa0eadad68403074]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/alloc/src/boxed.rs:2240:9 [INFO] [stdout] 42: 0x5b56cf9237ff - ::new::thread_start [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/thread/unix.rs:118:17 [INFO] [stdout] 43: 0x7cecc515daa4 - [INFO] [stdout] 44: 0x7cecc51eaa64 - clone [INFO] [stdout] 45: 0x0 - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] ir::scaling::branch_patching_scales_linearly [INFO] [stdout] [INFO] [stdout] test result: FAILED. 740 passed; 1 failed; 2 ignored; 0 measured; 0 filtered out; finished in 1.65s [INFO] [stdout] [INFO] [stderr] error: test failed, to rerun pass `--test mod` [INFO] running `Command { std: "docker" "inspect" "82f3fe6721456629d7e443367f0c9301bb77f873b65be69bfa9510e624608b94", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "82f3fe6721456629d7e443367f0c9301bb77f873b65be69bfa9510e624608b94", kill_on_drop: false }` [INFO] [stdout] 82f3fe6721456629d7e443367f0c9301bb77f873b65be69bfa9510e624608b94