[INFO] cloning repository https://github.com/chussenot/millrace [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/chussenot/millrace" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fchussenot%2Fmillrace", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fchussenot%2Fmillrace'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 23cc8407b57efbc839d451bd15d71a6a9c77b82b [INFO] testing chussenot/millrace against 1.99.0-beta.8+cargoflags=--release for beta-release-1.100-3 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fchussenot%2Fmillrace" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/chussenot/millrace [INFO] finished tweaking git repo https://github.com/chussenot/millrace [INFO] tweaked toml for git repo https://github.com/chussenot/millrace written to /workspace/builds/worker-6-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/chussenot/millrace on toolchain 1.99.0-beta.8 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/chussenot/millrace 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" "+1.99.0-beta.8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }` [INFO] [stdout] 2ed6d1496299178565da585f64be33734c551853a09ab895a48fd5d1af32f563 [INFO] running `Command { std: "docker" "start" "2ed6d1496299178565da585f64be33734c551853a09ab895a48fd5d1af32f563", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "2ed6d1496299178565da585f64be33734c551853a09ab895a48fd5d1af32f563", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "2ed6d1496299178565da585f64be33734c551853a09ab895a48fd5d1af32f563" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "2ed6d1496299178565da585f64be33734c551853a09ab895a48fd5d1af32f563", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "2ed6d1496299178565da585f64be33734c551853a09ab895a48fd5d1af32f563" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }` [INFO] [stderr] Compiling treadle v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished `release` profile [optimized] target(s) in 1.65s [INFO] running `Command { std: "docker" "inspect" "2ed6d1496299178565da585f64be33734c551853a09ab895a48fd5d1af32f563", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "2ed6d1496299178565da585f64be33734c551853a09ab895a48fd5d1af32f563" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.189 [INFO] [stderr] Compiling zerocopy v0.8.56 [INFO] [stderr] Compiling getrandom v0.2.17 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling rand v0.8.7 [INFO] [stderr] Compiling treadle v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Finished `release` profile [optimized] target(s) in 14.58s [INFO] running `Command { std: "docker" "inspect" "2ed6d1496299178565da585f64be33734c551853a09ab895a48fd5d1af32f563", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "2ed6d1496299178565da585f64be33734c551853a09ab895a48fd5d1af32f563" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--release", kill_on_drop: false }` [INFO] [stderr] Finished `release` profile [optimized] target(s) in 0.03s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/release/deps/treadle-6b0f18c91dfb331a) [INFO] [stdout] [INFO] [stdout] running 248 tests [INFO] [stdout] test cli::tests::cli_dump_bytecode_rejects_the_tree_engine ... ok [INFO] [stdout] test cli::tests::cli_help_text_lists_all_four_exit_codes ... ok [INFO] [stdout] test cli::tests::cli_dump_modes_are_mutually_exclusive_with_each_other_and_with_both ... ok [INFO] [stdout] test cli::tests::cli_defaults_to_the_tree_engine ... ok [INFO] [stdout] test cli::tests::cli_both_reports_a_divergence_through_output_diff ... ok [INFO] [stdout] test cli::tests::cli_help_is_a_command_not_an_error ... ok [INFO] [stdout] test cli::tests::cli_dump_ast_and_dump_bytecode_are_parsed_as_their_own_commands ... ok [INFO] [stdout] test cli::tests::cli_double_dash_forces_the_rest_positional ... ok [INFO] [stdout] test cli::tests::cli_exits_zero_and_renders_nothing_for_a_program_that_prints_nothing ... ok [INFO] [stdout] test cli::tests::cli_help_text_mentions_dump_modes_quiet_and_stdin ... ok [INFO] [stdout] test cli::tests::cli_rejects_a_missing_or_duplicated_file ... ok [INFO] [stdout] test cli::tests::cli_rejects_an_unknown_engine_value ... ok [INFO] [stdout] test cli::tests::cli_quiet_flag_parses_either_spelling_and_defaults_off ... ok [INFO] [stdout] test cli::tests::cli_rejects_an_unknown_flag ... ok [INFO] [stdout] test cli::tests::cli_rejects_engine_with_no_value_at_all ... ok [INFO] [stdout] test cli::tests::cli_real_binary_runs_a_dash_prefixed_filename_after_double_dash ... ok [INFO] [stdout] test cli::tests::cli_rejects_two_engine_selections ... ok [INFO] [stdout] test cli::tests::cli_version_is_a_command_not_an_error ... ok [INFO] [stdout] test engine::tests::engine_is_object_safe_and_drivable_as_dyn ... ok [INFO] [stdout] test error::suggestion_tests::an_equal_distance_tie_is_broken_by_name_whatever_the_order ... ok [INFO] [stdout] test cli::tests::cli_selects_both_engines ... ok [INFO] [stdout] test cli::tests::cli_real_binary_prints_version_and_exits_zero ... ok [INFO] [stdout] test error::suggestion_tests::edit_distance_counts_characters_not_bytes ... ok [INFO] [stdout] test cli::tests::cli_selects_either_engine_by_name ... ok [INFO] [stdout] test cli::tests::cli_prints_the_lines_before_an_error_and_exits_one ... ok [INFO] [stdout] test error::suggestion_tests::the_threshold_scales_with_the_length_of_the_name ... ok [INFO] [stdout] test error::tests::accessors_match_the_constructed_variant ... ok [INFO] [stdout] test engine::tests::a_boxed_engine_works_too ... ok [INFO] [stdout] test error::tests::arity_pluralises_on_one ... ok [INFO] [stdout] test error::suggestion_tests::a_near_miss_is_suggested_and_a_different_name_is_not ... ok [INFO] [stdout] test error::suggestion_tests::no_candidate_leaves_the_original_wording_untouched ... ok [INFO] [stdout] test error::tests::display_is_the_corpus_form_verbatim ... ok [INFO] [stdout] test error::tests::internal_is_a_type_error_and_greppable ... ok [INFO] [stdout] test error::tests::no_error_message_can_contain_a_raw_newline ... ok [INFO] [stdout] test error::tests::value_rs_agrees_with_our_constructors ... ok [INFO] [stdout] test front::ast::tests::ast_walk_covers_every_binop ... ok [INFO] [stdout] test front::lexer::tests::a_block_comment_is_not_nested_and_its_newlines_still_count ... ok [INFO] [stdout] test error::tests::lex_and_name_wording ... ok [INFO] [stdout] test error::tests::recursion_message_is_built_from_max_depth ... ok [INFO] [stdout] test error::tests::unexpected_char_escapes_control_and_non_ascii_bytes ... ok [INFO] [stdout] test front::lexer::tests::all_four_escapes_and_nothing_else ... ok [INFO] [stdout] test front::lexer::tests::an_error_on_the_last_line_names_the_last_line ... ok [INFO] [stdout] test front::lexer::tests::an_integer_literal_too_large_for_i64_is_a_lex_error ... ok [INFO] [stdout] test front::ast::tests::fn_decl_is_hoisted_and_left_in_place ... ok [INFO] [stdout] test front::ast::tests::operators_are_copy_and_eq ... ok [INFO] [stdout] test front::lexer::tests::a_comment_runs_to_end_of_line_and_its_newline_still_counts ... ok [INFO] [stdout] test front::lexer::tests::an_unknown_escape_is_a_lex_error ... ok [INFO] [stdout] test front::lexer::tests::a_token_at_end_of_file_and_the_line_eof_reports ... ok [INFO] [stdout] test front::lexer::tests::an_unterminated_string_names_the_line_it_started_on ... ok [INFO] [stdout] test front::lexer::tests::keywords_are_case_sensitive_in_the_token_stream ... ok [INFO] [stdout] test front::lexer::tests::newline_in_a_string_advances_the_line_but_the_token_keeps_its_start ... ok [INFO] [stdout] test error::tests::bad_int_escapes_raw_control_bytes ... ok [INFO] [stdout] test error::tests::display_names_every_variant ... ok [INFO] [stdout] test front::ast::tests::clone_and_debug ... ok [INFO] [stdout] test front::lexer::tests::an_unexpected_character_is_a_lex_error_with_its_line ... ok [INFO] [stdout] test front::parser::tests::a_call_is_not_a_statement ... ok [INFO] [stdout] test cli::tests::cli_both_agrees_and_keeps_stdout_byte_identical_to_one_engine ... ok [INFO] [stdout] test front::parser::tests::assignment_is_not_an_expression ... ok [INFO] [stdout] test front::parser::tests::call_args_are_in_source_order ... ok [INFO] [stdout] test front::parser::tests::calls_take_zero_one_or_many_args ... ok [INFO] [stdout] test front::lexer::tests::one_and_two_character_operators_are_lexed_apart ... ok [INFO] [stdout] test front::lexer::tests::print_several_values_and_a_function_call ... ok [INFO] [stdout] test front::lexer::tests::the_first_example_of_section_2_lexes ... ok [INFO] [stdout] test front::parser::tests::a_long_prefix_run_is_refused ... ok [INFO] [stdout] test front::parser::tests::assignment_is_never_an_expression_in_a_statement ... ok [INFO] [stdout] test front::parser::tests::a_duplicate_parameter_name_is_a_parse_error ... ok [INFO] [stdout] test front::parser::tests::error_cases_carry_the_right_line ... ok [INFO] [stdout] test front::parser::tests::duplicate_and_reserved_fn_names_are_parse_errors ... ok [INFO] [stdout] test front::parser::tests::every_binop_is_reachable_from_source ... ok [INFO] [stdout] test front::parser::tests::fn_declarations_take_zero_one_or_many_params ... ok [INFO] [stdout] test front::parser::tests::else_if_chains_as_a_nested_if ... ok [INFO] [stdout] test front::parser::tests::cursor_cannot_run_past_eof ... ok [INFO] [stdout] test front::lexer::tests::an_unterminated_block_comment_names_the_line_it_started_on ... ok [INFO] [stdout] test front::parser::tests::empty_braced_bodies_are_legal ... ok [INFO] [stdout] test front::parser::tests::depth_does_not_accumulate_across_statements ... ok [INFO] [stdout] test cli::tests::cli_real_binary_dumps_ast_and_bytecode_instead_of_running ... ok [INFO] [stdout] test front::parser::tests::deeply_nested_parens_are_a_parse_error_not_an_abort ... ok [INFO] [stdout] test front::parser::tests::let_assign_and_print_statements ... ok [INFO] [stdout] test front::parser::tests::i64_min_is_not_a_literal_and_is_not_folded ... ok [INFO] [stdout] test front::parser::tests::ident_consumes_a_name_or_reports_one_was_wanted ... ok [INFO] [stdout] test front::parser::tests::lex_errors_pass_through_parse ... ok [INFO] [stdout] test front::parser::tests::literals_and_variables ... ok [INFO] [stdout] test front::parser::tests::nodes_carry_their_own_operator_line ... ok [INFO] [stdout] test front::parser::tests::nested_blocks_nest_to_any_depth ... ok [INFO] [stdout] test front::parser::tests::return_outside_a_fn_is_a_parse_error ... ok [INFO] [stdout] test front::parser::tests::precedence_and_associativity_change_the_answer ... ok [INFO] [stdout] test front::parser::tests::return_is_accepted_at_any_depth_inside_a_fn ... ok [INFO] [stdout] test front::parser::tests::if_without_else_has_an_empty_els ... ok [INFO] [stdout] test front::parser::tests::fns_are_hoisted_at_every_depth_in_source_order ... ok [INFO] [stdout] test front::parser::tests::the_limits_do_not_reject_ordinary_programs ... ok [INFO] [stdout] test front::parser::tests::the_spec_sample_program_parses ... ok [INFO] [stdout] test front::parser::tests::unary_chains_and_binds_tighter_than_any_binary ... ok [INFO] [stdout] test front::token::tests::every_token_carries_its_line ... ok [INFO] [stdout] test front::token::tests::literal_and_eof_display_forms ... ok [INFO] [stdout] test front::parser::tests::parens_override_precedence ... ok [INFO] [stdout] test front::token::tests::every_keyword_is_recognised ... ok [INFO] [stdout] test front::parser::tests::precedence_ladder_binds_tightest_last ... ok [INFO] [stdout] test front::parser::tests::statement_errors_carry_the_right_line ... ok [INFO] [stdout] test front::token::tests::keywords_are_case_sensitive ... ok [INFO] [stdout] test front::token::tests::non_keywords_are_identifiers ... ok [INFO] [stdout] test output::tests::dropping_output_on_error_is_a_divergence ... ok [INFO] [stdout] test output::tests::many_lines_are_terminated_not_separated ... ok [INFO] [stdout] test output::tests::one_empty_printed_line_renders_one_newline ... ok [INFO] [stdout] test output::tests::print_joins_arguments_with_a_tab_into_one_line ... ok [INFO] [stdout] test output::tests::output_then_error_renders_both_in_order ... ok [INFO] [stdout] test front::token::tests::one_and_two_character_operators_are_distinct ... ok [INFO] [stdout] test output::tests::print_of_one_argument_has_no_separator ... ok [INFO] [stdout] test output::tests::a_printed_error_line_is_not_a_real_error ... ok [INFO] [stdout] test output::tests::diff_names_the_first_differing_byte_and_both_sides ... ok [INFO] [stdout] test tree::env::tests::a_function_body_cannot_create_a_global ... ok [INFO] [stdout] test tree::env::tests::assignment_reaches_an_outer_binding ... ok [INFO] [stdout] test tree::env::tests::assignment_writes_the_nearest_binding_only ... ok [INFO] [stdout] test tree::env::tests::builtin_names_are_ordinary_variables_and_absent_from_the_fn_table ... ok [INFO] [stdout] test output::tests::diff_of_equal_outputs_says_so ... ok [INFO] [stdout] test output::tests::diff_reports_a_prefix_as_one_side_ending ... ok [INFO] [stdout] test output::tests::error_alone_renders_just_the_error_line ... ok [INFO] [stdout] test output::tests::finish_folds_an_err_and_keeps_the_lines_printed_before_it ... ok [INFO] [stdout] test tree::env::tests::each_invocation_has_its_own_parameters ... ok [INFO] [stdout] test output::tests::printed_string_containing_a_newline_round_trips ... ok [INFO] [stdout] test output::tests::the_first_error_wins ... ok [INFO] [stdout] test tree::env::tests::let_x_equals_x_plus_one_reads_the_outer_x ... ok [INFO] [stdout] test cli::tests::cli_real_binary_reads_source_from_stdin_when_path_is_dash ... ok [INFO] [stdout] test tree::env::tests::pop_frame_discards_nested_block_scopes ... ok [INFO] [stdout] test tree::env::tests::nested_block_shadowing_restores_the_outer_value ... ok [INFO] [stdout] test output::tests::diff_of_a_large_divergence_is_bounded_but_still_names_the_first_byte ... ok [INFO] [stdout] test tree::env::tests::pop_scope_past_the_frame_boundary_does_not_corrupt_the_callers_frame ... ok [INFO] [stdout] test output::tests::empty_output_renders_empty ... ok [INFO] [stdout] test tree::env::tests::a_function_body_cannot_see_caller_locals ... ok [INFO] [stdout] test tree::env::tests::functions_and_variables_are_separate_namespaces ... ok [INFO] [stdout] test tree::env::tests::assignment_to_an_unbound_name_errors ... ok [INFO] [stdout] test output::tests::finish_on_ok_changes_nothing ... ok [INFO] [stdout] test tree::eval::tests::and_short_circuits_with_an_observable_side_effect ... ok [INFO] [stdout] test tree::env::tests::let_x_equals_x_plus_one_with_no_outer_x_is_a_name_error ... ok [INFO] [stdout] test tree::env::tests::pop_scope_at_top_level_with_nothing_to_pop_is_a_no_op ... ok [INFO] [stdout] test tree::env::tests::top_level_let_is_global_but_a_block_let_is_not ... ok [INFO] [stdout] test tree::eval::tests::abs_negates_and_i64_min_overflows ... ok [INFO] [stdout] test tree::eval::tests::arguments_run_before_the_name_and_arity_are_checked ... ok [INFO] [stdout] test tree::eval::tests::bool_is_exactly_as_bool ... ok [INFO] [stdout] test tree::eval::tests::binary_operands_evaluate_left_to_right ... ok [INFO] [stdout] test tree::eval::tests::every_binop_computes ... ok [INFO] [stdout] test tree::eval::tests::builtin_names_are_still_ordinary_variables ... ok [INFO] [stdout] test tree::eval::tests::a_block_is_a_scope_and_assignment_reaches_outward ... ok [INFO] [stdout] test tree::env::tests::re_declaration_in_the_same_scope_is_legal_and_the_later_let_wins ... ok [INFO] [stdout] test tree::env::tests::the_function_namespace_is_global ... ok [INFO] [stdout] test front::parser::tests::a_long_chain_is_a_parse_error_not_an_abort_in_drop ... ok [INFO] [stdout] test tree::eval::tests::both_unops ... ok [INFO] [stdout] test tree::eval::tests::a_body_with_no_return_yields_nil ... ok [INFO] [stdout] test tree::eval::tests::call_arguments_evaluate_left_to_right ... ok [INFO] [stdout] test tree::eval::tests::a_skipped_rhs_is_neither_typed_nor_run ... ok [INFO] [stdout] test tree::eval::tests::and_or_never_reach_the_strict_operator_path ... ok [INFO] [stdout] test tree::eval::tests::a_return_is_never_an_error_and_stops_the_body ... ok [INFO] [stdout] test tree::eval::tests::every_statement_kind_executes ... ok [INFO] [stdout] test tree::eval::tests::let_x_equals_x_plus_one_reads_the_scope_before_the_binding ... ok [INFO] [stdout] test tree::eval::tests::let_x_equals_x_plus_one_with_no_outer_x_is_a_name_error ... ok [INFO] [stdout] test tree::eval::tests::sign_is_minus_one_zero_or_one ... ok [INFO] [stdout] test tree::eval::tests::int_is_exactly_parse_i64 ... ok [INFO] [stdout] test tree::eval::tests::len_counts_bytes_and_rejects_non_strings ... ok [INFO] [stdout] test tree::eval::tests::literals_and_variables ... ok [INFO] [stdout] test tree::eval::tests::overflow_and_zero_divisors_surface_the_right_constructor ... ok [INFO] [stdout] test tree::eval::tests::str_is_the_one_display_form_and_never_fails_on_a_value ... ok [INFO] [stdout] test tree::eval::tests::or_short_circuits_with_an_observable_side_effect ... ok [INFO] [stdout] test tree::eval::tests::the_two_namespaces_do_not_mix ... ok [INFO] [stdout] test tree::eval::tests::type_errors_are_value_rs_wording ... ok [INFO] [stdout] test value::tests::as_bool_has_no_truthiness ... ok [INFO] [stdout] test value::tests::display_is_the_one_form ... ok [INFO] [stdout] test value::tests::arithmetic_ok ... ok [INFO] [stdout] test value::tests::division_truncates_toward_zero ... ok [INFO] [stdout] test value::tests::equality_requires_the_same_type ... ok [INFO] [stdout] test tree::eval::tests::return_unwinds_out_of_nested_loops_to_the_function_boundary ... ok [INFO] [stdout] test value::tests::overflow_is_a_value_error_not_a_wrap ... ok [INFO] [stdout] test value::tests::type_mismatches_are_type_errors ... ok [INFO] [stdout] test vm::compiler::tests::and_does_not_evaluate_its_right_operand_when_the_left_is_false ... ok [INFO] [stdout] test value::tests::type_of_and_names ... ok [INFO] [stdout] test tree::eval::tests::as_bool_reports_the_failing_operands_line ... ok [INFO] [stdout] test vm::compiler::tests::and_compiles_to_the_documented_jump_shape ... ok [INFO] [stdout] test cli::tests::cli_real_binary_honours_stdout_stderr_and_all_three_exit_codes ... ok [INFO] [stdout] test vm::compiler::tests::arguments_are_evaluated_before_the_callee_is_resolved ... ok [INFO] [stdout] test vm::compiler::tests::arithmetic_runs_and_the_stack_is_left_with_one_value ... ok [INFO] [stdout] test value::tests::zero_divisor_is_a_value_error ... ok [INFO] [stdout] test vm::compiler::tests::an_unknown_global_fails_at_run_time_after_the_output_before_it ... ok [INFO] [stdout] test value::tests::ordering_is_int_or_str ... ok [INFO] [stdout] test vm::compiler::tests::a_nested_fn_gets_its_own_frame_and_slots_from_zero ... ok [INFO] [stdout] test vm::compiler::tests::compile_handles_every_statement_variant_in_one_program ... ok [INFO] [stdout] test vm::compiler::tests::constants_are_interned_and_carry_the_enclosing_line ... ok [INFO] [stdout] test vm::compiler::tests::every_binop_compiles_and_leaves_one_value ... ok [INFO] [stdout] test vm::compiler::tests::fns_are_hoisted_including_from_a_branch_that_never_runs ... ok [INFO] [stdout] test vm::compiler::tests::blocks_shadow_by_slot_and_pop_one_per_local_on_exit ... ok [INFO] [stdout] test vm::compiler::tests::or_compiles_to_the_documented_jump_shape ... ok [INFO] [stdout] test vm::compiler::tests::as_bool_reports_the_failing_operands_line ... ok [INFO] [stdout] test vm::compiler::tests::function_bodies_record_arity_and_return_nil_by_default ... ok [INFO] [stdout] test vm::compiler::tests::let_evaluates_its_initialiser_before_the_binding_exists ... ok [INFO] [stdout] test vm::compiler::tests::if_else_back_patches_forward_jumps ... ok [INFO] [stdout] test tree::eval::tests::recursion_stops_at_max_depth_not_at_a_stack_overflow ... ok [INFO] [stdout] test vm::machine::tests::machine_a_body_sees_globals_and_its_own_locals_not_the_callers ... ok [INFO] [stdout] test vm::compiler::tests::or_does_not_evaluate_its_right_operand_when_the_left_is_true ... ok [INFO] [stdout] test vm::compiler::tests::print_of_several_values_is_one_tab_separated_line ... ok [INFO] [stdout] test tree::eval::tests::wrong_arity_is_a_type_error_naming_expected_and_actual ... ok [INFO] [stdout] test vm::compiler::tests::re_declaration_in_one_scope_lets_the_later_let_win ... ok [INFO] [stdout] test vm::compiler::tests::unary_and_call_shapes ... ok [INFO] [stdout] test vm::compiler::tests::unknown_names_compile_and_fail_only_at_run_time ... ok [INFO] [stdout] test vm::machine::tests::machine_and_shape_short_circuits_and_types_only_a_taken_rhs ... ok [INFO] [stdout] test vm::compiler::tests::while_jumps_backward_to_its_condition ... ok [INFO] [stdout] test vm::machine::tests::machine_a_function_without_a_return_yields_nil ... ok [INFO] [stdout] test vm::machine::tests::machine_calls_a_function_declared_after_the_call_site ... ok [INFO] [stdout] test vm::compiler::tests::short_circuit_typing ... ok [INFO] [stdout] test vm::compiler::tests::the_innermost_node_owns_the_error_line ... ok [INFO] [stdout] test vm::compiler::tests::variables_are_local_slots_or_globals_by_name ... ok [INFO] [stdout] test vm::machine::tests::machine_abs_negates_and_i64_min_overflows ... ok [INFO] [stdout] test vm::machine::tests::machine_builtins_consume_no_depth ... ok [INFO] [stdout] test vm::machine::tests::machine_as_bool_on_a_non_bool_is_a_type_error ... ok [INFO] [stdout] test vm::machine::tests::machine_bool_is_exactly_as_bool ... ok [INFO] [stdout] test vm::machine::tests::machine_builtins_are_len_str_and_int ... ok [INFO] [stdout] test vm::machine::tests::machine_jump_one_past_the_end_finishes_cleanly ... ok [INFO] [stdout] test vm::machine::tests::machine_print_emits_nothing_when_an_argument_fails ... ok [INFO] [stdout] test tree::eval::tests::functions_are_hoisted_so_a_call_may_precede_the_declaration ... ok [INFO] [stdout] test vm::machine::tests::machine_calls_a_function_and_returns_its_value ... ok [INFO] [stdout] test tree::eval::tests::the_engine_impl_meets_its_contract ... ok [INFO] [stdout] test vm::machine::tests::machine_return_at_the_top_level_is_an_internal_error ... ok [INFO] [stdout] test vm::machine::tests::machine_returns_from_inside_nested_jumps ... ok [INFO] [stdout] test vm::machine::tests::machine_runs_both_unary_operators ... ok [INFO] [stdout] test vm::machine::tests::machine_runs_every_binary_operator ... ok [INFO] [stdout] test vm::machine::tests::machine_unknown_global_fails_at_runtime_after_earlier_output ... ok [INFO] [stdout] test vm::machine::tests::machine_recurses_to_the_depth_limit_and_fails_on_the_next_call ... ok [INFO] [stdout] test vm::machine::tests::machine_wrong_argument_count_is_a_type_error_naming_both_counts ... ok [INFO] [stdout] test vm::machine::tests::machine_globals_define_read_and_assign ... ok [INFO] [stdout] test vm::machine::tests::machine_mutual_recursion_alternates_between_two_functions ... ok [INFO] [stdout] test vm::machine::tests::machine_jumps_backward_around_a_loop ... ok [INFO] [stdout] test vm::opcode::tests::bad_local_slot_index_passes_validate_uncaught ... ok [INFO] [stdout] test vm::machine::tests::machine_print_makes_exactly_one_line_from_n_values ... ok [INFO] [stdout] test vm::machine::tests::machine_jumps_forward_over_an_untaken_branch ... ok [INFO] [stdout] test vm::machine::tests::machine_wrong_arity_at_the_depth_limit_reports_the_arity_error ... ok [INFO] [stdout] test tree::eval::tests::recursion_stops_at_the_limit_through_the_engine_path ... ok [INFO] [stdout] test vm::machine::tests::machine_assigning_an_unbound_global_is_a_name_error ... ok [INFO] [stdout] test vm::machine::tests::machine_locals_are_stack_slots_at_base_plus_n ... ok [INFO] [stdout] test vm::machine::tests::machine_malformed_chunks_error_instead_of_panicking ... ok [INFO] [stdout] test vm::opcode::tests::functions_resolve_by_name_at_runtime ... ok [INFO] [stdout] test vm::opcode::tests::line_table_maps_each_instruction_to_its_line ... ok [INFO] [stdout] test vm::opcode::tests::forward_jump_is_patched_to_the_next_instruction ... ok [INFO] [stdout] test vm::machine::tests::machine_overflow_and_divide_by_zero_come_from_the_constructors ... ok [INFO] [stdout] test vm::opcode::tests::validate_rejects_bad_indices_and_empty_print ... ok [INFO] [stdout] test vm::opcode::tests::every_operator_maps_to_an_instruction_or_to_jumps ... ok [INFO] [stdout] test vm::opcode::tests::backward_jump_targets_the_loop_top ... ok [INFO] [stdout] test vm::tests::a_parse_error_is_an_output_with_no_lines ... ok [INFO] [stdout] test vm::opcode::tests::pools_intern_and_bounds_check ... ok [INFO] [stdout] test vm::tests::a_deeply_nested_expression_does_not_abort_the_process ... ok [INFO] [stdout] test vm::tests::run_is_deterministic_across_calls_on_one_engine ... ok [INFO] [stdout] test vm::tests::vm_engine_runs_source_end_to_end ... ok [INFO] [stdout] test cli::tests::cli_real_binary_reports_invalid_utf8_cleanly_instead_of_panicking ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 248 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.15s [INFO] [stdout] [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/release/deps/treadle-edbda9a59f5a3ade) [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/conform.rs (/opt/rustwide/target/release/deps/conform-e4e4d1ea28aa83f9) [INFO] [stdout] [INFO] [stdout] running 23 tests [INFO] [stdout] test a_printed_line_beginning_with_error_is_not_classified_as_an_error ... ok [INFO] [stdout] test every_engine_is_run_even_when_an_earlier_one_already_failed ... ok [INFO] [stdout] test a_correct_engine_is_not_failed_for_a_printed_line_containing_a_newline ... ok [INFO] [stdout] test a_file_with_no_expect_delimiter_fails_loudly ... ok [INFO] [stdout] test an_expected_empty_output_is_the_empty_string ... ok [INFO] [stdout] test engines_that_agree_with_each_other_but_not_with_expect_are_a_plain_failure ... ok [INFO] [stdout] test a_hash_line_inside_the_source_is_program_text_not_a_comment ... ok [INFO] [stdout] test a_source_delimiter_immediately_followed_by_expect_is_an_empty_program ... ok [INFO] [stdout] test a_near_miss_delimiter_is_not_a_delimiter ... ok [INFO] [stdout] test one_engine_passing_where_the_other_fails_is_reported_as_a_divergence ... ok [INFO] [stdout] test a_file_whose_last_line_has_no_newline_still_parses_verbatim ... ok [INFO] [stdout] test one_printed_empty_line_is_a_single_newline ... ok [INFO] [stdout] test engines_that_agree_with_each_other_and_with_expect_pass ... ok [INFO] [stdout] test header_comments_and_blank_lines_are_skipped ... ok [INFO] [stdout] test printing_nothing_and_printing_one_empty_line_diverge ... ok [INFO] [stdout] test source_bytes_are_verbatim_including_blank_lines_and_indentation ... ok [INFO] [stdout] test a_program_may_print_the_literal_expect_delimiter ... ok [INFO] [stdout] test an_empty_file_fails_loudly ... ok [INFO] [stdout] test a_file_with_no_source_delimiter_fails_loudly ... ok [INFO] [stdout] test every_corpus_file_parses_and_expects_a_representable_rendering ... ok [INFO] [stdout] test the_first_expect_delimiter_wins_and_later_ones_are_expected_output ... ok [INFO] [stdout] test a_trailing_newline_in_the_expect_section_is_part_of_the_expectation ... ok [INFO] [stdout] test every_case_against_every_engine ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 23 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.02s [INFO] [stdout] [INFO] [stderr] Running tests/differential.rs (/opt/rustwide/target/release/deps/differential-682da6368e951287) [INFO] [stdout] [INFO] [stdout] running 7 tests [INFO] [stdout] test the_shrinker_reduces_a_planted_divergence ... ok [INFO] [stdout] test a_panicking_engine_is_reported_rather_than_taking_the_suite_down ... ok [INFO] [stdout] test generation_is_reproducible_from_the_seed ... ok [INFO] [stdout] test every_generated_while_is_counter_bounded ... ok [INFO] [stdout] test nesting_the_generator_emits_is_safe_on_a_default_stack ... ok [INFO] [stdout] test nothing_carries_over_between_runs ... ok [INFO] [stderr] Doc-tests treadle [INFO] [stdout] test every_engine_agrees_on_every_generated_program ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 16.49s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test src/output.rs - output::Output::finish (line 132) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.18s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "2ed6d1496299178565da585f64be33734c551853a09ab895a48fd5d1af32f563", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2ed6d1496299178565da585f64be33734c551853a09ab895a48fd5d1af32f563", kill_on_drop: false }` [INFO] [stdout] 2ed6d1496299178565da585f64be33734c551853a09ab895a48fd5d1af32f563