[INFO] fetching crate eros 0.8.1...
[INFO] testing eros-0.8.1 against 1.100.0-beta.1+cargoflags=--release for beta-release-1.100-2
[INFO] extracting crate eros 0.8.1 into /workspace/builds/worker-7-tc2/source
[INFO] started tweaking crates.io crate eros 0.8.1
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate eros 0.8.1
[INFO] tweaked toml for crates.io crate eros 0.8.1 written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate eros 0.8.1 on toolchain 1.100.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate eros 0.8.1 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.100.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/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] c40e1f2a159f2594624403263a16cef6f798ddd81501799eeb0b31bd44be4a7c
[INFO] running `Command { std: "docker" "start" "c40e1f2a159f2594624403263a16cef6f798ddd81501799eeb0b31bd44be4a7c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c40e1f2a159f2594624403263a16cef6f798ddd81501799eeb0b31bd44be4a7c", 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" "c40e1f2a159f2594624403263a16cef6f798ddd81501799eeb0b31bd44be4a7c" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c40e1f2a159f2594624403263a16cef6f798ddd81501799eeb0b31bd44be4a7c", 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" "c40e1f2a159f2594624403263a16cef6f798ddd81501799eeb0b31bd44be4a7c" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling eros-macros v0.8.1
[INFO] [stderr]    Compiling eros v0.8.1 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 2.18s
[INFO] running `Command { std: "docker" "inspect" "c40e1f2a159f2594624403263a16cef6f798ddd81501799eeb0b31bd44be4a7c", 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" "c40e1f2a159f2594624403263a16cef6f798ddd81501799eeb0b31bd44be4a7c" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling zerofrom-derive v0.1.7
[INFO] [stderr]    Compiling yoke-derive v0.8.2
[INFO] [stderr]    Compiling zerovec-derive v0.11.3
[INFO] [stderr]    Compiling displaydoc v0.2.6
[INFO] [stderr]    Compiling cc v1.2.63
[INFO] [stderr]    Compiling http v1.4.2
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling openssl v0.10.80
[INFO] [stderr]    Compiling tokio v1.52.3
[INFO] [stderr]    Compiling log v0.4.32
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling regex-automata v0.4.18
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling tracing-serde v0.2.0
[INFO] [stderr]    Compiling eros-macros v0.8.1
[INFO] [stderr]    Compiling trybuild v1.0.116
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling eros v0.8.1 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling zerofrom v0.1.8
[INFO] [stderr]    Compiling yoke v0.8.3
[INFO] [stderr]    Compiling zerovec v0.11.6
[INFO] [stderr]    Compiling zerotrie v0.2.4
[INFO] [stderr]    Compiling http-body v1.0.1
[INFO] [stderr]    Compiling openssl-sys v0.9.116
[INFO] [stderr]    Compiling http-body-util v0.1.3
[INFO] [stderr]    Compiling native-tls v0.2.18
[INFO] [stderr]    Compiling tinystr v0.8.3
[INFO] [stderr]    Compiling potential_utf v0.1.5
[INFO] [stderr]    Compiling icu_locale_core v2.2.0
[INFO] [stderr]    Compiling icu_collections v2.2.0
[INFO] [stderr]    Compiling icu_provider v2.2.0
[INFO] [stderr]    Compiling matchers v0.2.0
[INFO] [stderr]    Compiling tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling icu_properties v2.2.0
[INFO] [stderr]    Compiling icu_normalizer v2.2.0
[INFO] [stderr]    Compiling idna_adapter v1.2.2
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling tower-http v0.6.11
[INFO] [stderr]    Compiling h2 v0.4.14
[INFO] [stderr]    Compiling tokio-native-tls v0.3.1
[INFO] [stderr]    Compiling hyper v1.10.1
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling hyper-tls v0.6.0
[INFO] [stderr]    Compiling reqwest v0.12.28
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 1m 53s
[INFO] running `Command { std: "docker" "inspect" "c40e1f2a159f2594624403263a16cef6f798ddd81501799eeb0b31bd44be4a7c", 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" "c40e1f2a159f2594624403263a16cef6f798ddd81501799eeb0b31bd44be4a7c" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--release", kill_on_drop: false }`
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 0.21s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/build/eros/1cbb91bcc39f704f/out/eros-1cbb91bcc39f704f)
[INFO] [stdout] 
[INFO] [stdout] running 42 tests
[INFO] [stdout] test error_union::downcast_inner_tests::downcast_inner_mut_correct_type_returns_some ... ok
[INFO] [stdout] test error_union::downcast_inner_tests::downcast_inner_mut_multi_variant_bar ... ok
[INFO] [stdout] test error_union::latest_context_error_tests::latest_context_error_error_context_correct_concrete_type ... ok
[INFO] [stdout] test error_union::downcast_inner_tests::downcast_inner_ref_correct_type_returns_some ... ok
[INFO] [stdout] test error_union::downcast_inner_tests::downcast_inner_wrong_type_retains_value_without_leaking ... ok
[INFO] [stdout] test error_union::downcast_inner_tests::downcast_inner_correct_type_returns_ok ... ok
[INFO] [stdout] test error_union::downcast_inner_tests::downcast_inner_ref_multi_variant_bar ... ok
[INFO] [stdout] test error_union::latest_context_error_tests::latest_context_error_multi_variant_union_with_error_context ... ok
[INFO] [stdout] test error_union::downcast_inner_tests::downcast_inner_ref_wrong_type_returns_none ... ok
[INFO] [stdout] test error_union::downcast_inner_tests::downcast_inner_mut_wrong_type_returns_none ... ok
[INFO] [stdout] test error_union::latest_context_error_tests::latest_context_error_fallback_returns_inner ... ok
[INFO] [stdout] test error_union::latest_context_error_tests::latest_context_error_with_no_context_returns_none ... ok
[INFO] [stdout] test error_union::latest_context_error_tests::latest_context_error_returns_most_recently_added_error_context ... ok
[INFO] [stdout] test error_union::latest_context_error_tests::latest_context_error_skips_trailing_string_contexts_to_find_error_context ... ok
[INFO] [stdout] test error_union::latest_context_error_tests::latest_context_error_with_error_context_returns_context_error ... ok
[INFO] [stdout] test error_union::latest_context_error_tests::latest_context_error_with_only_string_contexts_can_fall_back_to_inner ... ok
[INFO] [stdout] test error_union::latest_context_error_tests::latest_context_error_with_string_context_only_returns_none ... ok
[INFO] [stdout] test error_union::tests::downcast_error_unchecked_correct_type_recovers_value ... ok
[INFO] [stdout] test error_union::tests::downcast_error_unchecked_does_not_leak_or_double_drop ... ok
[INFO] [stdout] test error_union::tests::downcast_error_unchecked_with_parts_correct_error_value ... ok
[INFO] [stdout] test error_union::tests::downcast_error_unchecked_with_parts_preserves_context ... ok
[INFO] [stdout] test error_union::tests::boxed_std_error_and_back_roundtrips ... ok
[INFO] [stdout] test error_union::downcast_inner_tests::downcast_inner_multi_variant_correct_type ... ok
[INFO] [stdout] test error_union::downcast_inner_tests::downcast_inner_mut_allows_mutation ... ok
[INFO] [stdout] test error_union::downcast_inner_tests::downcast_inner_ref_does_not_consume_union ... ok
[INFO] [stdout] test error_union::downcast_inner_tests::downcast_inner_wrong_type_returns_original_union ... ok
[INFO] [stdout] test error_union::tests::into_inner_differs_from_boxed_std_error ... ok
[INFO] [stdout] test error_union::tests::into_inner_dyn_error_does_not_leak_heap_allocation ... ok
[INFO] [stdout] test error_union::tests::into_inner_dyn_error_not_roundtrippable_via_try_from_dyn_error ... ok
[INFO] [stderr]      Running tests/any_error_reshaping.rs (/opt/rustwide/target/release/build/eros/312bf48f90fea3a0/out/any_error_reshaping-312bf48f90fea3a0)
[INFO] [stdout] test error_union::tests::into_inner_dyn_error_returns_concrete_type_not_wrapper ... ok
[INFO] [stdout] test error_union::tests::into_inner_dyn_error_value_is_preserved ... ok
[INFO] [stdout] test error_union::tests::try_from_dyn_error_wrong_type_returns_err ... ok
[INFO] [stdout] test error_union::tests::into_inner_dyn_error_display_is_concrete_type ... ok
[INFO] [stdout] test error_union::tests::into_inner_dyn_error_multi_variant_foo ... ok
[INFO] [stdout] test error_union::tests::std_error_display_delegates_to_inner ... ok
[INFO] [stdout] test root_error::tests::replacement_preserves_metadata ... ok
[INFO] [stdout] test error_union::tests::into_inner_dyn_error_is_send_and_sync ... ok
[INFO] [stdout] test error_union::tests::into_inner_dyn_error_multi_variant_bar ... ok
[INFO] [stdout] test error_union::tests::try_from_dyn_error_preserves_context ... ok
[INFO] [stdout] test error_union::tests::std_error_is_send_and_sync ... ok
[INFO] [stdout] test error_union::tests::multi_variant_union_boxed_std_error_roundtrips ... ok
[INFO] [stdout] test error_union::downcast_inner_tests::downcast_inner_does_not_leak_or_double_drop ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 42 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test erased_empty_group_narrow_always_retains_the_error ... ok
[INFO] [stdout] test erased_try_recover_preserves_success_remainders_and_handler_errors ... ok
[INFO] [stdout] test erased_result_narrow_preserves_success_and_routes_each_error ... ok
[INFO] [stdout] test erased_narrow_only_matches_the_inner_error ... ok
[INFO] [stdout] test erased_group_narrow_builds_typed_unions_and_preserves_both_branches ... ok
[INFO] [stdout] test erased_single_narrow_extracts_matches_and_keeps_an_erased_remainder ... ok
[INFO] [stdout] test erased_recover_handles_single_and_group_targets_without_losing_unknown_errors ... ok
[INFO] [stderr]      Running tests/anyhow.rs (/opt/rustwide/target/release/build/eros/b93e28b1255391d6/out/anyhow-b93e28b1255391d6)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]      Running tests/context.rs (/opt/rustwide/target/release/build/eros/51c6558b57bda5ad/out/context-51c6558b57bda5ad)
[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] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test generic_context_error_to_traced_error_union ... ok
[INFO] [stderr]      Running tests/context_api.rs (/opt/rustwide/target/release/build/eros/1dfb540436bbebc1/out/context_api-1dfb540436bbebc1)
[INFO] [stdout] test absent_value_error ... ok
[INFO] [stdout] test bail ... ok
[INFO] [stdout] test error_union ... ok
[INFO] [stdout] test ensure ... ok
[INFO] [stdout] test nesting_traced_dyn_calls ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 8 tests
[INFO] [stdout] test context_values_expose_messages_and_preserve_error_identity ... ok
[INFO] [stdout] test contexts_borrow_frames_in_attachment_order ... ok
[INFO] [stdout] test direct_union_context_is_lazy_when_the_feature_is_disabled ... ok
[INFO] [stdout] test erased_result_context_is_lazy ... ok
[INFO] [stdout] test option_failure_has_the_absent_value_root_with_or_without_context ... ok
[INFO] [stdout] test plain_result_context_is_lazy ... ok
[INFO] [stdout] test typed_result_context_is_lazy ... ok
[INFO] [stdout] test option_context_is_lazy ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/context_attributes.rs (/opt/rustwide/target/release/build/eros/b957d2d212efbcaa/out/context_attributes-b957d2d212efbcaa)
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test eager_context_local_does_not_shadow_parameters ... ok
[INFO] [stdout] test context_evaluates_clones_as_written_only_on_error ... ok
[INFO] [stderr]      Running tests/enum_conversions.rs (/opt/rustwide/target/release/build/eros/d1a795c8d21d3832/out/enum_conversions-d1a795c8d21d3832)
[INFO] [stdout] test eager_context_evaluates_clones_before_body_only_when_enabled ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 27 tests
[INFO] [stdout] test arity_14 ... ok
[INFO] [stdout] test arity_1 ... ok
[INFO] [stdout] test arity_13 ... ok
[INFO] [stdout] test arity_20 ... ok
[INFO] [stdout] test arity_2 ... ok
[INFO] [stdout] test arity_10 ... ok
[INFO] [stdout] test arity_22 ... ok
[INFO] [stdout] test arity_18 ... ok
[INFO] [stdout] test arity_23 ... ok
[INFO] [stdout] test arity_12 ... ok
[INFO] [stdout] test arity_3 ... ok
[INFO] [stdout] test arity_16 ... ok
[INFO] [stdout] test e1_can_be_constructed_directly_from_its_payload ... ok
[INFO] [stdout] test arity_11 ... ok
[INFO] [stdout] test arity_7 ... ok
[INFO] [stdout] test arity_6 ... ok
[INFO] [stdout] test arity_21 ... ok
[INFO] [stdout] test arity_24 ... ok
[INFO] [stdout] test arity_9 ... ok
[INFO] [stdout] test arity_4 ... ok
[INFO] [stdout] test arity_5 ... ok
[INFO] [stdout] test arity_15 ... ok
[INFO] [stdout] test arity_26 ... ok
[INFO] [stderr]      Running tests/formatting.rs (/opt/rustwide/target/release/build/eros/1a984bd92575188c/out/formatting-1a984bd92575188c)
[INFO] [stdout] test arity_8 ... ok
[INFO] [stdout] test arity_17 ... ok
[INFO] [stdout] test arity_19 ... ok
[INFO] [stdout] test arity_25 ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 27 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 11 tests
[INFO] [stderr]      Running tests/group_recovery.rs (/opt/rustwide/target/release/build/eros/e3f039f70c304bfb/out/group_recovery-e3f039f70c304bfb)
[INFO] [stdout] test bare_errors_have_no_empty_source_or_context_sections ... ok
[INFO] [stdout] test option_context_keeps_the_absent_value_root ... ok
[INFO] [stdout] test display_and_debug_walk_every_native_source_in_order ... ok
[INFO] [stdout] test debug_reports_the_actual_backtrace_capture_status ... ok
[INFO] [stdout] test multiline_report_messages_keep_their_continuations_indented ... ok
[INFO] [stdout] test context_follows_stack_order_and_error_context_uses_its_display ... ok
[INFO] [stdout] test replacing_an_anyerror_root_preserves_metadata_in_every_format ... ok
[INFO] [stdout] test tracing_percent_and_question_mark_use_the_public_human_formats ... ok
[INFO] [stdout] test display_shows_root_and_native_sources_while_alternate_shows_root_only ... ok
[INFO] [stdout] test erasing_the_union_preserves_every_format_and_captured_metadata ... ok
[INFO] [stdout] test typed_native_error_adapter_has_a_single_root_and_roundtrips_metadata ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 11 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 30 tests
[INFO] [stdout] test arity_18 ... ok
[INFO] [stdout] test arity_2 ... ok
[INFO] [stdout] test arity_14 ... ok
[INFO] [stdout] test arity_20 ... ok
[INFO] [stdout] test arity_13 ... ok
[INFO] [stdout] test arity_10 ... ok
[INFO] [stdout] test arity_11 ... ok
[INFO] [stdout] test arity_3 ... ok
[INFO] [stdout] test arity_17 ... ok
[INFO] [stdout] test arity_21 ... ok
[INFO] [stdout] test arity_22 ... ok
[INFO] [stdout] test arity_19 ... ok
[INFO] [stdout] test arity_12 ... ok
[INFO] [stdout] test arity_16 ... ok
[INFO] [stdout] test arity_24 ... ok
[INFO] [stdout] test arity_4 ... ok
[INFO] [stdout] test arity_26 ... ok
[INFO] [stdout] test arity_25 ... ok
[INFO] [stdout] test arity_6 ... ok
[INFO] [stdout] test arity_7 ... ok
[INFO] [stdout] test arity_8 ... ok
[INFO] [stdout] test successes_pass_through_group_handlers_without_calling_them ... ok
[INFO] [stdout] test group_handlers_do_not_match_sources_or_contexts ... ok
[INFO] [stdout] test try_recover_groups_keep_original_and_fallback_diagnostics ... ok
[INFO] [stderr]      Running tests/macros_and_strings.rs (/opt/rustwide/target/release/build/eros/c5ae18ecdbc563f6/out/macros_and_strings-c5ae18ecdbc563f6)
[INFO] [stdout] test arity_23 ... ok
[INFO] [stdout] test arity_9 ... ok
[INFO] [stdout] test arity_5 ... ok
[INFO] [stdout] test fallible_group_handler_can_reintroduce_handled_types ... ok
[INFO] [stdout] test arity_15 ... ok
[INFO] [stdout] test recover_selects_every_group_member_and_preserves_the_remainder ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 30 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 14 tests
[INFO] [stdout] test auto_context_attribute_uses_only_annotated_parameters ... ok
[INFO] [stdout] test bail_and_ensure_infer_typed_error_sets ... ok
[INFO] [stdout] test ensure_evaluates_the_condition_once_and_only_builds_errors_on_failure ... ok
[INFO] [stdout] test error_macro_formats_captured_arguments_and_escaped_braces ... ok
[INFO] [stdout] test bail_and_ensure_preserve_explicit_static_messages ... ok
[INFO] [stdout] test bail_macro_returns_early_for_each_message_form ... ok
[INFO] [stdout] test context_attribute_handles_all_exit_paths_and_formats_lazily ... ok
[INFO] [stdout] test ensure_formats_captured_arguments_only_on_failure ... ok
[INFO] [stdout] test error_macro_preserves_error_expressions_regardless_of_capitalization ... ok
[INFO] [stdout] test string_error_conversions_formatting_and_clone_preserve_storage ... ok
[INFO] [stdout] test error_macro_supports_literals_formatted_messages_and_error_expressions ... ok
[INFO] [stdout] test string_errors_support_equality_ordering_and_hashing ... ok
[INFO] [stdout] test error_macro_preserves_explicit_static_messages ... ok
[INFO] [stdout] test latest_context_error_respects_the_context_feature ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 14 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/ownership.rs (/opt/rustwide/target/release/build/eros/1b7774624f6241a7/out/ownership-1b7774624f6241a7)
[INFO] [stdout] 
[INFO] [stdout] running 14 tests
[INFO] [stdout] test erased_reshaping_preserves_ownership_until_checked_extraction ... ok
[INFO] [stdout] test skipped_recovery_handlers_drop_captured_values_and_preserve_the_input ... ok
[INFO] [stdout] test owned_extraction_moves_the_root_and_drops_metadata_exactly_once ... ok
[INFO] [stdout] test rejected_tuple_and_bare_narrow_retain_ownership_until_extraction ... ok
[INFO] [stdout] test erased_adapter_cannot_be_recovered_as_a_concrete_or_empty_set ... ok
[INFO] [stdout] test mapping_preserves_metadata_until_the_new_union_is_dropped ... ok
[INFO] [stdout] test typed_adapter_recovery_requires_its_original_set ... ok
[INFO] [stdout] test union_and_widen_move_the_error_without_dropping_it ... ok
[INFO] [stdout] test panicking_single_and_group_try_recover_handlers_drop_errors_and_captures_once ... ok
[INFO] [stdout] test erased_owned_downcast_cannot_create_an_anyerror_marker ... ok
[INFO] [stderr]      Running tests/reshaping.rs (/opt/rustwide/target/release/build/eros/c7ba66232de6f140/out/reshaping-c7ba66232de6f140)
[INFO] [stdout] test both_tuple_narrow_branches_keep_the_error_and_context_alive_until_drop ... ok
[INFO] [stdout] test try_recover_drops_original_metadata_and_transfers_fallback_ownership ... ok
[INFO] [stdout] test panicking_map_drops_both_root_and_context ... ok
[INFO] [stdout] test recover_keeps_the_error_alive_in_the_handler_and_drops_it_once_on_unwind ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 14 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 20 tests
[INFO] [stdout] test empty_narrow_target_always_returns_the_original_union ... ok
[INFO] [stdout] test group_narrow_checks_the_inner_error_type_without_matching_sources_or_contexts ... ok
[INFO] [stdout] test group_narrow_rejects_errors_outside_the_requested_types ... ok
[INFO] [stdout] test full_narrow_target_can_be_reordered_and_has_an_empty_remainder ... ok
[INFO] [stdout] test failed_native_adapter_downcast_retains_the_original_adapter ... ok
[INFO] [stdout] test result_group_narrow_preserves_successes_and_both_error_branches ... ok
[INFO] [stdout] test mutable_erased_root_and_boxed_error_trait_refer_to_the_actual_error ... ok
[INFO] [stdout] test group_narrow_accepts_each_member_in_requested_order ... ok
[INFO] [stdout] test group_narrow_partitions_every_variant_and_preserves_metadata_and_identity ... ok
[INFO] [stdout] test result_narrow_empty_and_full_targets_preserve_success_with_empty_remainders ... ok
[INFO] [stdout] test recover_preserves_error_identity_and_metadata_in_both_branches ... ok
[INFO] [stdout] test public_unions_and_adapters_are_send_and_sync ... ok
[INFO] [stdout] test result_conversions_preserve_success_values_and_error_metadata ... ok
[INFO] [stdout] test recover_can_handle_each_type_until_the_error_set_is_empty ... ok
[INFO] [stdout] test into_value_accepts_owned_and_borrowed_successes_without_extra_bounds ... ok
[INFO] [stdout] test recover_does_not_match_source_or_context_errors ... ok
[INFO] [stdout] test recover_preserves_success_and_only_calls_the_matching_handler ... ok
[INFO] [stdout] test result_narrow_covers_success_matching_error_and_remainder ... ok
[INFO] [stdout] test singleton_borrowing_and_mapping_preserve_owned_values_and_metadata ... ok
[INFO] [stderr]      Running tests/root_error.rs (/opt/rustwide/target/release/build/eros/170e2c67088498c7/out/root_error-170e2c67088498c7)
[INFO] [stdout] test result_singleton_and_empty_targets_retain_diagnostics ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 20 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 13 tests
[INFO] [stdout] test zero_sized_root_moves_through_identity_extraction_and_drop_once ... ok
[INFO] [stdout] test closure_can_replace_the_old_root_with_an_unrelated_error_and_chain ... ok
[INFO] [stdout] test wrong_type_owned_downcast_retains_root_and_context_until_drop ... ok
[INFO] [stdout] test extracted_box_has_the_actual_returned_root_type ... ok
[INFO] [stdout] test intentionally_boxed_root_keeps_its_type_and_owned_allocation ... ok
[INFO] [stdout] test replacement_drops_old_and_new_roots_exactly_once ... ok
[INFO] [stdout] test closure_owns_the_typed_root_and_can_explicitly_retain_it_as_source ... ok
[INFO] [stdout] test closure_can_drop_the_source_chain_completely ... ok
[INFO] [stdout] test aligned_anyerror_root_can_be_retained_as_source_then_replaced ... ok
[INFO] [stdout] test identity_and_repeated_replacements_receive_the_actual_root ... ok
[INFO] [stdout] test aligned_owned_root_supports_reference_mutable_and_owned_downcasts ... ok
[INFO] [stdout] test closure_can_downcast_and_consume_the_old_error ... ok
[INFO] [stdout] test panicking_closure_drops_root_and_context_without_leaking ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 13 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/single_reshaping.rs (/opt/rustwide/target/release/build/eros/486767b11c1677bf/out/single_reshaping-486767b11c1677bf)
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test middle::recover_and_try_recover_route_every_input_and_handler_outcome ... ok
[INFO] [stdout] test last::recover_and_try_recover_route_every_input_and_handler_outcome ... ok
[INFO] [stdout] test middle::bare_and_tuple_narrow_route_every_input ... ok
[INFO] [stdout] test first::recover_and_try_recover_route_every_input_and_handler_outcome ... ok
[INFO] [stdout] test last::bare_and_tuple_narrow_route_every_input ... ok
[INFO] [stdout] test first::bare_and_tuple_narrow_route_every_input ... ok
[INFO] [stderr]      Running tests/try_recover.rs (/opt/rustwide/target/release/build/eros/e120dd37f1badc96/out/try_recover-e120dd37f1badc96)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 9 tests
[INFO] [stderr]      Running tests/trybuild.rs (/opt/rustwide/target/release/build/eros/afa56a0a8c10fd02/out/trybuild-afa56a0a8c10fd02)
[INFO] [stdout] test success_passes_through_without_calling_the_handler ... ok
[INFO] [stdout] test destination_inference_supports_plain_and_union_fallbacks_with_new_error_types ... ok
[INFO] [stdout] test handler_can_reintroduce_the_handled_type_and_preserve_its_diagnostics ... ok
[INFO] [stdout] test only_the_inner_error_is_matched ... ok
[INFO] [stdout] test unhandled_variants_can_be_reordered_and_widened_without_losing_metadata ... ok
[INFO] [stdout] test recovery_accepts_borrowed_values_and_handlers_without_send_or_static_bounds ... ok
[INFO] [stdout] test matching_handler_and_fallback_keep_their_own_metadata_and_identity ... ok
[INFO] [stdout] test singleton_can_recover_to_an_empty_error_set ... ok
[INFO] [stdout] test chained_fallbacks_can_replace_reintroduce_and_finally_recover_an_error ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stderr]    Compiling quote v1.0.45
[INFO] [stderr]    Compiling unicode-ident v1.0.24
[INFO] [stderr]    Compiling libc v0.2.186
[INFO] [stderr]    Compiling stable_deref_trait v1.2.1
[INFO] [stderr]    Compiling pin-project-lite v0.2.17
[INFO] [stderr]    Compiling bytes v1.11.1
[INFO] [stderr]    Compiling itoa v1.0.18
[INFO] [stderr]    Compiling futures-core v0.3.32
[INFO] [stderr]    Compiling shlex v2.0.1
[INFO] [stderr]    Compiling find-msvc-tools v0.1.9
[INFO] [stderr]    Compiling once_cell v1.21.4
[INFO] [stderr]    Compiling pkg-config v0.3.33
[INFO] [stderr]    Compiling futures-sink v0.3.32
[INFO] [stderr]    Compiling vcpkg v0.2.15
[INFO] [stderr]    Compiling smallvec v1.15.2
[INFO] [stderr]    Compiling litemap v0.8.2
[INFO] [stderr]    Compiling writeable v0.6.3
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling icu_normalizer_data v2.2.0
[INFO] [stderr]    Compiling slab v0.4.12
[INFO] [stderr]    Compiling icu_properties_data v2.2.0
[INFO] [stderr]    Compiling utf8_iter v1.0.4
[INFO] [stderr]    Compiling cc v1.2.63
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling memchr v2.8.2
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling cfg-if v1.0.4
[INFO] [stderr]    Compiling percent-encoding v2.3.2
[INFO] [stderr]    Compiling hashbrown v0.17.1
[INFO] [stderr]    Compiling bitflags v2.13.0
[INFO] [stderr]    Compiling openssl v0.10.80
[INFO] [stderr]    Compiling futures-io v0.3.32
[INFO] [stderr]    Compiling equivalent v1.0.2
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling httparse v1.10.1
[INFO] [stderr]    Compiling foreign-types-shared v0.1.1
[INFO] [stderr]    Compiling futures-task v0.3.32
[INFO] [stderr]    Compiling log v0.4.32
[INFO] [stderr]    Compiling foreign-types v0.3.2
[INFO] [stderr]    Compiling fnv v1.0.7
[INFO] [stderr]    Compiling tower-service v0.3.3
[INFO] [stderr]    Compiling atomic-waker v1.1.2
[INFO] [stderr]    Compiling try-lock v0.2.5
[INFO] [stderr]    Compiling native-tls v0.2.18
[INFO] [stderr]    Compiling want v0.3.1
[INFO] [stderr]    Compiling form_urlencoded v1.2.2
[INFO] [stderr]    Compiling futures-channel v0.3.32
[INFO] [stderr]    Compiling zmij v1.0.21
[INFO] [stderr]    Compiling http v1.4.2
[INFO] [stderr]    Compiling openssl-probe v0.2.1
[INFO] [stderr]    Compiling sync_wrapper v1.0.2
[INFO] [stderr]    Compiling ipnet v2.12.0
[INFO] [stderr]    Compiling base64 v0.22.1
[INFO] [stderr]    Compiling serde_json v1.0.150
[INFO] [stderr]    Compiling tower-layer v0.3.3
[INFO] [stderr]    Compiling regex-syntax v0.8.11
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling lazy_static v1.5.0
[INFO] [stderr]    Compiling zeroize v1.8.2
[INFO] [stderr]    Compiling indexmap v2.14.0
[INFO] [stderr]    Compiling ryu v1.0.23
[INFO] [stderr]    Compiling sharded-slab v0.1.7
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling rustls-pki-types v1.14.1
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling thread_local v1.1.10
[INFO] [stderr]    Compiling encoding_rs v0.8.35
[INFO] [stderr]    Compiling nu-ansi-term v0.50.3
[INFO] [stderr]    Compiling mime v0.3.17
[INFO] [stderr]    Compiling http-body v1.0.1
[INFO] [stderr]    Compiling mio v1.2.1
[INFO] [stderr]    Compiling socket2 v0.6.4
[INFO] [stderr]    Compiling http-body-util v0.1.3
[INFO] [stderr]    Compiling openssl-sys v0.9.116
[INFO] [stderr]    Compiling tokio v1.52.3
[INFO] [stderr]    Compiling regex-automata v0.4.18
[INFO] [stderr]    Compiling tracing-serde v0.2.0
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling matchers v0.2.0
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling zerofrom-derive v0.1.7
[INFO] [stderr]    Compiling yoke-derive v0.8.2
[INFO] [stderr]    Compiling zerovec-derive v0.11.3
[INFO] [stderr]    Compiling displaydoc v0.2.6
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling eros-macros v0.8.1
[INFO] [stderr]    Compiling eros v0.8.1 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling zerofrom v0.1.8
[INFO] [stderr]    Compiling yoke v0.8.3
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling zerovec v0.11.6
[INFO] [stderr]    Compiling zerotrie v0.2.4
[INFO] [stderr]    Compiling h2 v0.4.14
[INFO] [stderr]    Compiling tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling tinystr v0.8.3
[INFO] [stderr]    Compiling potential_utf v0.1.5
[INFO] [stderr]    Compiling icu_collections v2.2.0
[INFO] [stderr]    Compiling icu_locale_core v2.2.0
[INFO] [stderr]    Compiling hyper v1.10.1
[INFO] [stderr]    Compiling tokio-native-tls v0.3.1
[INFO] [stderr]    Compiling icu_provider v2.2.0
[INFO] [stderr]    Compiling icu_properties v2.2.0
[INFO] [stderr]    Compiling icu_normalizer v2.2.0
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling idna_adapter v1.2.2
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling tower-http v0.6.11
[INFO] [stderr]    Compiling hyper-tls v0.6.0
[INFO] [stderr]    Compiling reqwest v0.12.28
[INFO] [stderr]    Compiling eros-tests v0.0.0 (/opt/rustwide/target/tests/trybuild/eros)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 44.13s
[INFO] [stderr] 
[INFO] [stderr] 
[INFO] [stdout] test trybuild has been running for over 60 seconds
[INFO] [stderr] test tests/trybuild/any_error_cannot_be_extracted_as_marker.rs [should fail to compile] ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `AnyError: std::error::Error` is not satisfied
[INFO] [stderr]   --> tests/trybuild/any_error_cannot_be_extracted_as_marker.rs:19:53
[INFO] [stderr]    |
[INFO] [stderr] 19 | fn singleton_marker_is_not_an_error_set() -> Option<ErrorUnion<(AnyError,)>> {
[INFO] [stderr]    |                                                     ^^^^^^^^^^^^^^^^^^^^^^^ the trait `std::error::Error` is not implemented for `AnyError`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the following other types implement trait `TypeSet`:
[INFO] [stderr]              ()
[INFO] [stderr]              (A, B)
[INFO] [stderr]              (A, B, C)
[INFO] [stderr]              (A, B, C, D)
[INFO] [stderr]              (A, B, C, D, E)
[INFO] [stderr]              (A, B, C, D, E, F)
[INFO] [stderr]              (A, B, C, D, E, F, G)
[INFO] [stderr]              (A, B, C, D, E, F, G, H)
[INFO] [stderr]            and $N others
[INFO] [stderr]    = note: required for `AnyError` to implement `SendSyncError`
[INFO] [stderr]    = note: required for `(AnyError,)` to implement `TypeSet`
[INFO] [stderr] note: required by a bound in `ErrorUnion`
[INFO] [stderr]   --> src/error_union.rs
[INFO] [stderr]    |
[INFO] [stderr]    | pub struct ErrorUnion<E: TypeSet = AnyError> {
[INFO] [stderr]    |                          ^^^^^^^ required by this bound in `ErrorUnion`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `AnyError: From<ErrorUnion>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/any_error_cannot_be_extracted_as_marker.rs:4:11
[INFO] [stderr]   |
[INFO] [stderr] 4 |     error.into_enum()
[INFO] [stderr]   |           ^^^^^^^^^ the trait `From<ErrorUnion>` is not implemented for `AnyError`
[INFO] [stderr]   |
[INFO] [stderr] note: required by a bound in `ErrorUnion::<E>::into_enum`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   |     pub fn into_enum(self) -> E::Enum
[INFO] [stderr]   |            --------- required by a bound in this associated function
[INFO] [stderr]   |     where
[INFO] [stderr]   |         E::Enum: From<Self>,
[INFO] [stderr]   |                  ^^^^^^^^^^ required by this bound in `ErrorUnion::<E>::into_enum`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `&AnyError: From<&ErrorUnion>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/any_error_cannot_be_extracted_as_marker.rs:8:11
[INFO] [stderr]   |
[INFO] [stderr] 8 |     error.as_enum()
[INFO] [stderr]   |           ^^^^^^^ the trait `From<&ErrorUnion>` is not implemented for `&AnyError`
[INFO] [stderr]   |
[INFO] [stderr] note: required by a bound in `ErrorUnion::<E>::as_enum`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   |     pub fn as_enum<'a>(&'a self) -> E::RefEnum<'a>
[INFO] [stderr]   |            ------- required by a bound in this associated function
[INFO] [stderr]   |     where
[INFO] [stderr]   |         E::RefEnum<'a>: From<&'a Self>,
[INFO] [stderr]   |                         ^^^^^^^^^^^^^^ required by this bound in `ErrorUnion::<E>::as_enum`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `&mut AnyError: From<&mut ErrorUnion>` is not satisfied
[INFO] [stderr]   --> tests/trybuild/any_error_cannot_be_extracted_as_marker.rs:12:11
[INFO] [stderr]    |
[INFO] [stderr] 12 |     error.as_mut_enum()
[INFO] [stderr]    |           ^^^^^^^^^^^ the trait `From<&mut ErrorUnion>` is not implemented for `&mut AnyError`
[INFO] [stderr]    |
[INFO] [stderr] note: required by a bound in `ErrorUnion::<E>::as_mut_enum`
[INFO] [stderr]   --> src/error_union.rs
[INFO] [stderr]    |
[INFO] [stderr]    |     pub fn as_mut_enum<'a>(&'a mut self) -> E::MutEnum<'a>
[INFO] [stderr]    |            ----------- required by a bound in this associated function
[INFO] [stderr]    |     where
[INFO] [stderr]    |         E::MutEnum<'a>: From<&'a mut Self>,
[INFO] [stderr]    |                         ^^^^^^^^^^^^^^^^^^ required by this bound in `ErrorUnion::<E>::as_mut_enum`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]   --> tests/trybuild/any_error_cannot_be_extracted_as_marker.rs:16:5
[INFO] [stderr]    |
[INFO] [stderr] 15 | fn narrow(error: ErrorUnion) -> AnyError {
[INFO] [stderr]    |                                 -------- expected `AnyError` because of return type
[INFO] [stderr] 16 |     error.narrow::<AnyError, _>().unwrap()
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `AnyError`, found `ErrorUnion`
[INFO] [stderr]    |
[INFO] [stderr]    = note: expected enum `AnyError`
[INFO] [stderr]             found struct `ErrorUnion`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `AnyError: std::error::Error` is not satisfied
[INFO] [stderr]   --> tests/trybuild/any_error_cannot_be_extracted_as_marker.rs:20:5
[INFO] [stderr]    |
[INFO] [stderr] 20 |     None
[INFO] [stderr]    |     ^^^^ the trait `std::error::Error` is not implemented for `AnyError`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the following other types implement trait `TypeSet`:
[INFO] [stderr]              ()
[INFO] [stderr]              (A, B)
[INFO] [stderr]              (A, B, C)
[INFO] [stderr]              (A, B, C, D)
[INFO] [stderr]              (A, B, C, D, E)
[INFO] [stderr]              (A, B, C, D, E, F)
[INFO] [stderr]              (A, B, C, D, E, F, G)
[INFO] [stderr]              (A, B, C, D, E, F, G, H)
[INFO] [stderr]            and $N others
[INFO] [stderr]    = note: required for `AnyError` to implement `SendSyncError`
[INFO] [stderr]    = note: required for `(AnyError,)` to implement `TypeSet`
[INFO] [stderr] note: required by a bound in `ErrorUnion`
[INFO] [stderr]   --> src/error_union.rs
[INFO] [stderr]    |
[INFO] [stderr]    | pub struct ErrorUnion<E: TypeSet = AnyError> {
[INFO] [stderr]    |                          ^^^^^^^ required by this bound in `ErrorUnion`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `AnyError: std::error::Error` is not satisfied
[INFO] [stderr]   --> tests/trybuild/any_error_cannot_be_extracted_as_marker.rs:19:53
[INFO] [stderr]    |
[INFO] [stderr] 19 | fn singleton_marker_is_not_an_error_set() -> Option<ErrorUnion<(AnyError,)>> {
[INFO] [stderr]    |                                                     ^^^^^^^^^^^^^^^^^^^^^^^ the trait `std::error::Error` is not implemented for `AnyError`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the following other types implement trait `TypeSet`:
[INFO] [stderr]              (T₁, T₂, …, Tₙ) up to tuples of arity 26
[INFO] [stderr]    = note: required for `AnyError` to implement `SendSyncError`
[INFO] [stderr]    = note: required for `(AnyError,)` to implement `TypeSet`
[INFO] [stderr] note: required by a bound in `ErrorUnion`
[INFO] [stderr]   --> src/error_union.rs
[INFO] [stderr]    |
[INFO] [stderr]    | pub struct ErrorUnion<E: TypeSet = AnyError> {
[INFO] [stderr]    |                          ^^^^^^^ required by this bound in `ErrorUnion`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `AnyError: From<ErrorUnion>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/any_error_cannot_be_extracted_as_marker.rs:4:11
[INFO] [stderr]   |
[INFO] [stderr] 4 |     error.into_enum()
[INFO] [stderr]   |           ^^^^^^^^^ the trait `From<ErrorUnion>` is not implemented for `AnyError`
[INFO] [stderr]   |
[INFO] [stderr] note: required by a bound in `ErrorUnion::<E>::into_enum`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<E> ErrorUnion<E>
[INFO] [stderr] ...
[INFO] [stderr]   |     pub fn into_enum(self) -> E::Enum
[INFO] [stderr]   |     where
[INFO] [stderr]   |         E::Enum: From<Self>,
[INFO] [stderr]   |                  ^^^^^^^^^^ required by this bound in `ErrorUnion::<E>::into_enum`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `&AnyError: From<&ErrorUnion>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/any_error_cannot_be_extracted_as_marker.rs:8:11
[INFO] [stderr]   |
[INFO] [stderr] 8 |     error.as_enum()
[INFO] [stderr]   |           ^^^^^^^ the trait `From<&ErrorUnion>` is not implemented for `&AnyError`
[INFO] [stderr]   |
[INFO] [stderr] note: required by a bound in `ErrorUnion::<E>::as_enum`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<E> ErrorUnion<E>
[INFO] [stderr] ...
[INFO] [stderr]   |     pub fn as_enum<'a>(&'a self) -> E::RefEnum<'a>
[INFO] [stderr]   |     where
[INFO] [stderr]   |         E::RefEnum<'a>: From<&'a Self>,
[INFO] [stderr]   |                         ^^^^^^^^^^^^^^ required by this bound in `ErrorUnion::<E>::as_enum`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `&mut AnyError: From<&mut ErrorUnion>` is not satisfied
[INFO] [stderr]   --> tests/trybuild/any_error_cannot_be_extracted_as_marker.rs:12:11
[INFO] [stderr]    |
[INFO] [stderr] 12 |     error.as_mut_enum()
[INFO] [stderr]    |           ^^^^^^^^^^^ the trait `From<&mut ErrorUnion>` is not implemented for `&mut AnyError`
[INFO] [stderr]    |
[INFO] [stderr] note: required by a bound in `ErrorUnion::<E>::as_mut_enum`
[INFO] [stderr]   --> src/error_union.rs
[INFO] [stderr]    |
[INFO] [stderr]    | impl<E> ErrorUnion<E>
[INFO] [stderr] ...
[INFO] [stderr]    |     pub fn as_mut_enum<'a>(&'a mut self) -> E::MutEnum<'a>
[INFO] [stderr]    |     where
[INFO] [stderr]    |         E::MutEnum<'a>: From<&'a mut Self>,
[INFO] [stderr]    |                         ^^^^^^^^^^^^^^^^^^ required by this bound in `ErrorUnion::<E>::as_mut_enum`
[INFO] [stderr] 
[INFO] [stderr] error[E0308]: mismatched types
[INFO] [stderr]   --> tests/trybuild/any_error_cannot_be_extracted_as_marker.rs:16:5
[INFO] [stderr]    |
[INFO] [stderr] 15 | fn narrow(error: ErrorUnion) -> AnyError {
[INFO] [stderr]    |                                 -------- expected `AnyError` because of return type
[INFO] [stderr] 16 |     error.narrow::<AnyError, _>().unwrap()
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `AnyError`, found `ErrorUnion`
[INFO] [stderr]    |
[INFO] [stderr]    = note: expected enum `AnyError`
[INFO] [stderr]             found struct `ErrorUnion`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `AnyError: std::error::Error` is not satisfied
[INFO] [stderr]   --> tests/trybuild/any_error_cannot_be_extracted_as_marker.rs:20:5
[INFO] [stderr]    |
[INFO] [stderr] 20 |     None
[INFO] [stderr]    |     ^^^^ the trait `std::error::Error` is not implemented for `AnyError`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the following other types implement trait `TypeSet`:
[INFO] [stderr]              (T₁, T₂, …, Tₙ) up to tuples of arity 26
[INFO] [stderr]    = note: required for `AnyError` to implement `SendSyncError`
[INFO] [stderr]    = note: required for `(AnyError,)` to implement `TypeSet`
[INFO] [stderr] note: required by a bound in `ErrorUnion`
[INFO] [stderr]   --> src/error_union.rs
[INFO] [stderr]    |
[INFO] [stderr]    | pub struct ErrorUnion<E: TypeSet = AnyError> {
[INFO] [stderr]    |                          ^^^^^^^ required by this bound in `ErrorUnion`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/trybuild/any_error_cannot_be_retyped.rs [should fail to compile] ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::Cons<std::fmt::Error, AnyError>: TypeSet` is not satisfied
[INFO] [stderr]   --> tests/trybuild/any_error_cannot_be_retyped.rs:21:48
[INFO] [stderr]    |
[INFO] [stderr] 21 | fn wildcard_tail_is_not_a_type_set() -> Option<ErrorUnion<Cons<fmt::Error, AnyError>>> {
[INFO] [stderr]    |                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `TypeSet` is not implemented for `eros::type_set::Cons<std::fmt::Error, AnyError>`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the following other types implement trait `TypeSet`:
[INFO] [stderr]              ()
[INFO] [stderr]              (A, B)
[INFO] [stderr]              (A, B, C)
[INFO] [stderr]              (A, B, C, D)
[INFO] [stderr]              (A, B, C, D, E)
[INFO] [stderr]              (A, B, C, D, E, F)
[INFO] [stderr]              (A, B, C, D, E, F, G)
[INFO] [stderr]              (A, B, C, D, E, F, G, H)
[INFO] [stderr]            and $N others
[INFO] [stderr] note: required by a bound in `ErrorUnion`
[INFO] [stderr]   --> src/error_union.rs
[INFO] [stderr]    |
[INFO] [stderr]    | pub struct ErrorUnion<E: TypeSet = AnyError> {
[INFO] [stderr]    |                          ^^^^^^^ required by this bound in `ErrorUnion`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>: SupersetOf<AnyError, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/any_error_cannot_be_retyped.rs:6:11
[INFO] [stderr]   |
[INFO] [stderr] 6 |     error.widen()
[INFO] [stderr]   |           ^^^^^ the trait `SupersetOf<AnyError, _>` is not implemented for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>`
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `SupersetOf<AnyError, _>` is not implemented for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>`
[INFO] [stderr]       but trait `SupersetOf<eros::type_set::Cons<std::fmt::Error, eros::type_set::End>, eros::type_set::Cons<eros::type_set::End, eros::type_set::End>>` is implemented for it
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | / impl<SubHead, SubTail, SuperHead, SuperTail, HeadIndex, TailIndex>
[INFO] [stderr]   | |     SupersetOf<Cons<SubHead, SubTail>, Cons<HeadIndex, TailIndex>> for Cons<SuperHead, SuperTail>
[INFO] [stderr]   | | where
[INFO] [stderr]   | |     Cons<SuperHead, SuperTail>: Narrow<SubHead, HeadIndex>,
[INFO] [stderr]   | |     <Cons<SuperHead, SuperTail> as Narrow<SubHead, HeadIndex>>::Remainder:
[INFO] [stderr]   | |         SupersetOf<SubTail, TailIndex>,
[INFO] [stderr]   | |_______________________________________^
[INFO] [stderr]   = help: for that trait implementation, expected `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>`, found `AnyError`
[INFO] [stderr] note: required by a bound in `ErrorUnion::<E>::widen`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   |     pub fn widen<Other, Index>(self) -> ErrorUnion<Other>
[INFO] [stderr]   |            ----- required by a bound in this associated function
[INFO] [stderr] ...
[INFO] [stderr]   |         Other::Variants: SupersetOf<E::Variants, Index>,
[INFO] [stderr]   |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ErrorUnion::<E>::widen`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: SupersetOf<AnyError, _>` is not satisfied
[INFO] [stderr]   --> tests/trybuild/any_error_cannot_be_retyped.rs:10:11
[INFO] [stderr]    |
[INFO] [stderr] 10 |     error.widen()
[INFO] [stderr]    |           ^^^^^ the trait `SupersetOf<AnyError, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]    |
[INFO] [stderr] help: `AnyError` implements trait `SupersetOf<Other, Index>`
[INFO] [stderr]   --> src/type_set.rs
[INFO] [stderr]    |
[INFO] [stderr]    |   impl SupersetOf<AnyError, End> for AnyError {
[INFO] [stderr]    |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `SupersetOf<AnyError, eros::type_set::End>`
[INFO] [stderr] ...
[INFO] [stderr]    | / impl<Head, Tail, TailIndex> SupersetOf<Cons<Head, Tail>, Cons<End, TailIndex>> for AnyError
[INFO] [stderr]    | | where
[INFO] [stderr]    | |     Head: SendSyncError,
[INFO] [stderr]    | |     AnyError: SupersetOf<Tail, TailIndex>,
[INFO] [stderr]    | |__________________________________________^ `SupersetOf<eros::type_set::Cons<Head, Tail>, eros::type_set::Cons<eros::type_set::End, TailIndex>>`
[INFO] [stderr] note: required by a bound in `ErrorUnion::<E>::widen`
[INFO] [stderr]   --> src/error_union.rs
[INFO] [stderr]    |
[INFO] [stderr]    |     pub fn widen<Other, Index>(self) -> ErrorUnion<Other>
[INFO] [stderr]    |            ----- required by a bound in this associated function
[INFO] [stderr] ...
[INFO] [stderr]    |         Other::Variants: SupersetOf<E::Variants, Index>,
[INFO] [stderr]    |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ErrorUnion::<E>::widen`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `ErrorUnion: Into<ErrorUnion<(std::fmt::Error,)>>` is not satisfied
[INFO] [stderr]   --> tests/trybuild/any_error_cannot_be_retyped.rs:14:11
[INFO] [stderr]    |
[INFO] [stderr] 14 |     error.into()
[INFO] [stderr]    |           ^^^^ the trait `std::error::Error` is not implemented for `ErrorUnion`
[INFO] [stderr]    |
[INFO] [stderr]    = note: required for `ErrorUnion` to implement `SendSyncError`
[INFO] [stderr]    = note: required for `ErrorUnion<(std::fmt::Error,)>` to implement `From<ErrorUnion>`
[INFO] [stderr]    = note: required for `ErrorUnion` to implement `Into<ErrorUnion<(std::fmt::Error,)>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `std::fmt::Error: From<ErrorUnion>` is not satisfied
[INFO] [stderr]   --> tests/trybuild/any_error_cannot_be_retyped.rs:14:11
[INFO] [stderr]    |
[INFO] [stderr] 14 |     error.into()
[INFO] [stderr]    |           ^^^^ the trait `From<ErrorUnion>` is not implemented for `std::fmt::Error`
[INFO] [stderr]    |
[INFO] [stderr]    = note: required for `ErrorUnion` to implement `Into<std::fmt::Error>`
[INFO] [stderr]    = note: required for `ErrorUnion<(std::fmt::Error,)>` to implement `From<ErrorUnion>`
[INFO] [stderr]    = note: 1 redundant requirement hidden
[INFO] [stderr]    = note: required for `ErrorUnion` to implement `Into<ErrorUnion<(std::fmt::Error,)>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `into_single` found for struct `ErrorUnion` in the current scope
[INFO] [stderr]   --> tests/trybuild/any_error_cannot_be_retyped.rs:18:11
[INFO] [stderr]    |
[INFO] [stderr] 18 |     error.into_single()
[INFO] [stderr]    |           ^^^^^^^^^^^ method not found in `ErrorUnion`
[INFO] [stderr]    |
[INFO] [stderr]    = note: the method was found for `ErrorUnion<(A,)>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::Cons<std::fmt::Error, AnyError>: TypeSet` is not satisfied
[INFO] [stderr]   --> tests/trybuild/any_error_cannot_be_retyped.rs:22:5
[INFO] [stderr]    |
[INFO] [stderr] 22 |     None
[INFO] [stderr]    |     ^^^^ the trait `TypeSet` is not implemented for `eros::type_set::Cons<std::fmt::Error, AnyError>`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the following other types implement trait `TypeSet`:
[INFO] [stderr]              ()
[INFO] [stderr]              (A, B)
[INFO] [stderr]              (A, B, C)
[INFO] [stderr]              (A, B, C, D)
[INFO] [stderr]              (A, B, C, D, E)
[INFO] [stderr]              (A, B, C, D, E, F)
[INFO] [stderr]              (A, B, C, D, E, F, G)
[INFO] [stderr]              (A, B, C, D, E, F, G, H)
[INFO] [stderr]            and $N others
[INFO] [stderr] note: required by a bound in `ErrorUnion`
[INFO] [stderr]   --> src/error_union.rs
[INFO] [stderr]    |
[INFO] [stderr]    | pub struct ErrorUnion<E: TypeSet = AnyError> {
[INFO] [stderr]    |                          ^^^^^^^ required by this bound in `ErrorUnion`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::Cons<std::fmt::Error, AnyError>: TypeSet` is not satisfied
[INFO] [stderr]   --> tests/trybuild/any_error_cannot_be_retyped.rs:21:48
[INFO] [stderr]    |
[INFO] [stderr] 21 | fn wildcard_tail_is_not_a_type_set() -> Option<ErrorUnion<Cons<fmt::Error, AnyError>>> {
[INFO] [stderr]    |                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `TypeSet` is not implemented for `eros::type_set::Cons<std::fmt::Error, AnyError>`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the following other types implement trait `TypeSet`:
[INFO] [stderr]              ()
[INFO] [stderr]              (A,)
[INFO] [stderr]              (A, B)
[INFO] [stderr]              (A, B, C)
[INFO] [stderr]              (A, B, C, D)
[INFO] [stderr]              (A, B, C, D, E)
[INFO] [stderr]              (A, B, C, D, E, F)
[INFO] [stderr]              (A, B, C, D, E, F, G)
[INFO] [stderr]            and $N others
[INFO] [stderr] note: required by a bound in `ErrorUnion`
[INFO] [stderr]   --> src/error_union.rs
[INFO] [stderr]    |
[INFO] [stderr]    | pub struct ErrorUnion<E: TypeSet = AnyError> {
[INFO] [stderr]    |                          ^^^^^^^ required by this bound in `ErrorUnion`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>: SupersetOf<AnyError, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/any_error_cannot_be_retyped.rs:6:11
[INFO] [stderr]   |
[INFO] [stderr] 6 |     error.widen()
[INFO] [stderr]   |           ^^^^^ the trait `SupersetOf<AnyError, _>` is not implemented for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>`
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `SupersetOf<AnyError, _>` is not implemented for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>`
[INFO] [stderr]       but trait `SupersetOf<eros::type_set::Cons<std::fmt::Error, eros::type_set::End>, eros::type_set::Cons<eros::type_set::End, eros::type_set::End>>` is implemented for it
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | / impl<SubHead, SubTail, SuperHead, SuperTail, HeadIndex, TailIndex>
[INFO] [stderr]   | |     SupersetOf<Cons<SubHead, SubTail>, Cons<HeadIndex, TailIndex>> for Cons<SuperHead, SuperTail>
[INFO] [stderr]   | | where
[INFO] [stderr]   | |     Cons<SuperHead, SuperTail>: Narrow<SubHead, HeadIndex>,
[INFO] [stderr]   | |     <Cons<SuperHead, SuperTail> as Narrow<SubHead, HeadIndex>>::Remainder:
[INFO] [stderr]   | |         SupersetOf<SubTail, TailIndex>,
[INFO] [stderr]   | |_______________________________________^
[INFO] [stderr]   = help: for that trait implementation, expected `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>`, found `AnyError`
[INFO] [stderr] note: required by a bound in `ErrorUnion::<E>::widen`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<E> ErrorUnion<E>
[INFO] [stderr] ...
[INFO] [stderr]   |     pub fn widen<Other, Index>(self) -> ErrorUnion<Other>
[INFO] [stderr] ...
[INFO] [stderr]   |         Other::Variants: SupersetOf<E::Variants, Index>,
[INFO] [stderr]   |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ErrorUnion::<E>::widen`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: SupersetOf<AnyError, _>` is not satisfied
[INFO] [stderr]   --> tests/trybuild/any_error_cannot_be_retyped.rs:10:11
[INFO] [stderr]    |
[INFO] [stderr] 10 |     error.widen()
[INFO] [stderr]    |           ^^^^^ the trait `SupersetOf<AnyError, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]    |
[INFO] [stderr] help: `AnyError` implements trait `SupersetOf<Other, Index>`
[INFO] [stderr]   --> src/type_set.rs
[INFO] [stderr]    |
[INFO] [stderr]    |   impl SupersetOf<AnyError, End> for AnyError {
[INFO] [stderr]    |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `SupersetOf<AnyError, eros::type_set::End>`
[INFO] [stderr] ...
[INFO] [stderr]    | / impl<Head, Tail, TailIndex> SupersetOf<Cons<Head, Tail>, Cons<End, TailIndex>> for AnyError
[INFO] [stderr]    | | where
[INFO] [stderr]    | |     Head: SendSyncError,
[INFO] [stderr]    | |     AnyError: SupersetOf<Tail, TailIndex>,
[INFO] [stderr]    | |__________________________________________^ `SupersetOf<eros::type_set::Cons<Head, Tail>, eros::type_set::Cons<eros::type_set::End, TailIndex>>`
[INFO] [stderr] note: required by a bound in `ErrorUnion::<E>::widen`
[INFO] [stderr]   --> src/error_union.rs
[INFO] [stderr]    |
[INFO] [stderr]    | impl<E> ErrorUnion<E>
[INFO] [stderr] ...
[INFO] [stderr]    |     pub fn widen<Other, Index>(self) -> ErrorUnion<Other>
[INFO] [stderr] ...
[INFO] [stderr]    |         Other::Variants: SupersetOf<E::Variants, Index>,
[INFO] [stderr]    |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ErrorUnion::<E>::widen`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `ErrorUnion: Into<ErrorUnion<(std::fmt::Error,)>>` is not satisfied
[INFO] [stderr]   --> tests/trybuild/any_error_cannot_be_retyped.rs:14:11
[INFO] [stderr]    |
[INFO] [stderr] 14 |     error.into()
[INFO] [stderr]    |           ^^^^ the trait `std::error::Error` is not implemented for `ErrorUnion`
[INFO] [stderr]    |
[INFO] [stderr]    = note: required for `ErrorUnion` to implement `SendSyncError`
[INFO] [stderr]    = note: required for `ErrorUnion<(std::fmt::Error,)>` to implement `From<ErrorUnion>`
[INFO] [stderr]    = note: required for `ErrorUnion` to implement `Into<ErrorUnion<(std::fmt::Error,)>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `std::fmt::Error: From<ErrorUnion>` is not satisfied
[INFO] [stderr]   --> tests/trybuild/any_error_cannot_be_retyped.rs:14:11
[INFO] [stderr]    |
[INFO] [stderr] 14 |     error.into()
[INFO] [stderr]    |           ^^^^ the trait `From<ErrorUnion>` is not implemented for `std::fmt::Error`
[INFO] [stderr]    |
[INFO] [stderr]    = note: required for `ErrorUnion` to implement `Into<std::fmt::Error>`
[INFO] [stderr]    = note: required for `ErrorUnion<(std::fmt::Error,)>` to implement `From<ErrorUnion>`
[INFO] [stderr]    = note: 1 redundant requirement hidden
[INFO] [stderr]    = note: required for `ErrorUnion` to implement `Into<ErrorUnion<(std::fmt::Error,)>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0599]: no method named `into_single` found for struct `ErrorUnion` in the current scope
[INFO] [stderr]   --> tests/trybuild/any_error_cannot_be_retyped.rs:18:11
[INFO] [stderr]    |
[INFO] [stderr] 18 |     error.into_single()
[INFO] [stderr]    |           ^^^^^^^^^^^ method not found in `ErrorUnion`
[INFO] [stderr]    |
[INFO] [stderr]    = note: the method was found for `ErrorUnion<(A,)>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::Cons<std::fmt::Error, AnyError>: TypeSet` is not satisfied
[INFO] [stderr]   --> tests/trybuild/any_error_cannot_be_retyped.rs:22:5
[INFO] [stderr]    |
[INFO] [stderr] 22 |     None
[INFO] [stderr]    |     ^^^^ the trait `TypeSet` is not implemented for `eros::type_set::Cons<std::fmt::Error, AnyError>`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the following other types implement trait `TypeSet`:
[INFO] [stderr]              ()
[INFO] [stderr]              (A,)
[INFO] [stderr]              (A, B)
[INFO] [stderr]              (A, B, C)
[INFO] [stderr]              (A, B, C, D)
[INFO] [stderr]              (A, B, C, D, E)
[INFO] [stderr]              (A, B, C, D, E, F)
[INFO] [stderr]              (A, B, C, D, E, F, G)
[INFO] [stderr]            and $N others
[INFO] [stderr] note: required by a bound in `ErrorUnion`
[INFO] [stderr]   --> src/error_union.rs
[INFO] [stderr]    |
[INFO] [stderr]    | pub struct ErrorUnion<E: TypeSet = AnyError> {
[INFO] [stderr]    |                          ^^^^^^^ required by this bound in `ErrorUnion`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/trybuild/cannot_bail_with_unlisted_error.rs [should fail to compile] ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: Contains<std::fmt::Error, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_bail_with_unlisted_error.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 |     eros::bail!(std::fmt::Error)
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Contains<std::fmt::Error, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `Contains<T, eros::type_set::End>` is implemented for `AnyError`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<T> Contains<T, End> for AnyError {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   = note: required for `eros::type_set::Cons<MsgError, eros::type_set::End>` to implement `Contains<std::fmt::Error, eros::type_set::Cons<_, ()>>`
[INFO] [stderr] note: required by a bound in `ErrorUnion::new`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   |     pub fn new<T, OutSet, Index>(t: T) -> ErrorUnion<OutSet>
[INFO] [stderr]   |            --- required by a bound in this associated function
[INFO] [stderr] ...
[INFO] [stderr]   |         OutSet::Variants: Contains<T, Index>,
[INFO] [stderr]   |                           ^^^^^^^^^^^^^^^^^^ required by this bound in `ErrorUnion::new`
[INFO] [stderr]   = note: this error originates in the macro `eros::bail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: Contains<std::fmt::Error, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_bail_with_unlisted_error.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 |     eros::bail!(std::fmt::Error)
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Contains<std::fmt::Error, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `Contains<T, eros::type_set::End>` is implemented for `AnyError`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<T> Contains<T, End> for AnyError {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   = note: required for `eros::type_set::Cons<MsgError, eros::type_set::End>` to implement `Contains<std::fmt::Error, eros::type_set::Cons<_, ()>>`
[INFO] [stderr] note: required by a bound in `ErrorUnion::new`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl ErrorUnion {
[INFO] [stderr] ...
[INFO] [stderr]   |     pub fn new<T, OutSet, Index>(t: T) -> ErrorUnion<OutSet>
[INFO] [stderr] ...
[INFO] [stderr]   |         OutSet::Variants: Contains<T, Index>,
[INFO] [stderr]   |                           ^^^^^^^^^^^^^^^^^^ required by this bound in `ErrorUnion::new`
[INFO] [stderr]   = note: this error originates in the macro `eros::bail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/trybuild/cannot_call_union_on_traced_union.rs [should fail to compile] ... ok
[INFO] [stderr] test tests/trybuild/cannot_call_union_on_traced_union_result.rs [should fail to compile] ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0599]: the method `union` exists for enum `Result<(), ErrorUnion>`, but its trait bounds were not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_call_union_on_traced_union_result.rs:8:25
[INFO] [stderr]   |
[INFO] [stderr] 8 |     let _error = result.union();
[INFO] [stderr]   |                         ^^^^^
[INFO] [stderr]   |
[INFO] [stderr]  ::: $RUST/core/src/result.rs
[INFO] [stderr]   |
[INFO] [stderr]   | pub enum Result<T, E> {
[INFO] [stderr]   | --------------------- doesn't satisfy `Result<(), ErrorUnion>: IntoUnion<(), ErrorUnion>`
[INFO] [stderr]   |
[INFO] [stderr]  ::: src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   | pub struct ErrorUnion<E: TypeSet = AnyError> {
[INFO] [stderr]   | -------------------------------------------- doesn't satisfy `ErrorUnion: SendSyncError`
[INFO] [stderr]   |
[INFO] [stderr]   = note: the following trait bounds were not satisfied:
[INFO] [stderr]           `ErrorUnion: SendSyncError`
[INFO] [stderr]           which is required by `Result<(), ErrorUnion>: IntoUnion<(), ErrorUnion>`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0599]: the method `union` exists for enum `Result<(), ErrorUnion>`, but its trait bounds were not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_call_union_on_traced_union_result.rs:8:25
[INFO] [stderr]   |
[INFO] [stderr] 8 |     let _error = result.union();
[INFO] [stderr]   |                         ^^^^^
[INFO] [stderr]   |
[INFO] [stderr]  ::: src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   | pub struct ErrorUnion<E: TypeSet = AnyError> {
[INFO] [stderr]   | -------------------------------------------- doesn't satisfy `ErrorUnion: SendSyncError`
[INFO] [stderr]   |
[INFO] [stderr]   = note: the following trait bounds were not satisfied:
[INFO] [stderr]           `ErrorUnion: SendSyncError`
[INFO] [stderr]           which is required by `Result<(), ErrorUnion>: IntoUnion<(), ErrorUnion>`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/trybuild/cannot_coerce_error_set.rs [should fail to compile] ... ok
[INFO] [stderr] test tests/trybuild/cannot_construct_unlisted_error.rs [should fail to compile] ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: Contains<MsgError, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_construct_unlisted_error.rs:4:45
[INFO] [stderr]   |
[INFO] [stderr] 4 |     let _: ErrorUnion<(std::fmt::Error,)> = ErrorUnion::new(MsgError::from("unlisted"));
[INFO] [stderr]   |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Contains<MsgError, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `Contains<T, eros::type_set::End>` is implemented for `AnyError`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<T> Contains<T, End> for AnyError {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `Contains<MsgError, eros::type_set::Cons<_, ()>>`
[INFO] [stderr] note: required by a bound in `ErrorUnion::new`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   |     pub fn new<T, OutSet, Index>(t: T) -> ErrorUnion<OutSet>
[INFO] [stderr]   |            --- required by a bound in this associated function
[INFO] [stderr] ...
[INFO] [stderr]   |         OutSet::Variants: Contains<T, Index>,
[INFO] [stderr]   |                           ^^^^^^^^^^^^^^^^^^ required by this bound in `ErrorUnion::new`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: Contains<MsgError, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_construct_unlisted_error.rs:4:45
[INFO] [stderr]   |
[INFO] [stderr] 4 |     let _: ErrorUnion<(std::fmt::Error,)> = ErrorUnion::new(MsgError::from("unlisted"));
[INFO] [stderr]   |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Contains<MsgError, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `Contains<T, eros::type_set::End>` is implemented for `AnyError`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<T> Contains<T, End> for AnyError {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `Contains<MsgError, eros::type_set::Cons<_, ()>>`
[INFO] [stderr] note: required by a bound in `ErrorUnion::new`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl ErrorUnion {
[INFO] [stderr] ...
[INFO] [stderr]   |     pub fn new<T, OutSet, Index>(t: T) -> ErrorUnion<OutSet>
[INFO] [stderr] ...
[INFO] [stderr]   |         OutSet::Variants: Contains<T, Index>,
[INFO] [stderr]   |                           ^^^^^^^^^^^^^^^^^^ required by this bound in `ErrorUnion::new`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/trybuild/cannot_ensure_with_unlisted_message.rs [should fail to compile] ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: Contains<MsgError, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_ensure_with_unlisted_message.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 |     eros::ensure!(false, "message");
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Contains<MsgError, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `Contains<T, eros::type_set::End>` is implemented for `AnyError`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<T> Contains<T, End> for AnyError {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `Contains<MsgError, eros::type_set::Cons<_, ()>>`
[INFO] [stderr] note: required by a bound in `ErrorUnion::new`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   |     pub fn new<T, OutSet, Index>(t: T) -> ErrorUnion<OutSet>
[INFO] [stderr]   |            --- required by a bound in this associated function
[INFO] [stderr] ...
[INFO] [stderr]   |         OutSet::Variants: Contains<T, Index>,
[INFO] [stderr]   |                           ^^^^^^^^^^^^^^^^^^ required by this bound in `ErrorUnion::new`
[INFO] [stderr]   = note: this error originates in the macro `$crate::bail` which comes from the expansion of the macro `eros::ensure` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: Contains<MsgError, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_ensure_with_unlisted_message.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 |     eros::ensure!(false, "message");
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Contains<MsgError, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `Contains<T, eros::type_set::End>` is implemented for `AnyError`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<T> Contains<T, End> for AnyError {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `Contains<MsgError, eros::type_set::Cons<_, ()>>`
[INFO] [stderr] note: required by a bound in `ErrorUnion::new`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl ErrorUnion {
[INFO] [stderr] ...
[INFO] [stderr]   |     pub fn new<T, OutSet, Index>(t: T) -> ErrorUnion<OutSet>
[INFO] [stderr] ...
[INFO] [stderr]   |         OutSet::Variants: Contains<T, Index>,
[INFO] [stderr]   |                           ^^^^^^^^^^^^^^^^^^ required by this bound in `ErrorUnion::new`
[INFO] [stderr]   = note: this error originates in the macro `$crate::bail` which comes from the expansion of the macro `eros::ensure` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/trybuild/cannot_forge_narrow_target.rs [should fail to compile] ... ok
[INFO] [stderr] test tests/trybuild/cannot_forge_recovery_target.rs [should fail to compile] ... ok
[INFO] [stderr] test tests/trybuild/cannot_forge_type_set_relations.rs [should fail to compile] ... ok
[INFO] [stderr] test tests/trybuild/cannot_implement_type_set.rs [should fail to compile] ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `CustomSet: type_set::sealed::Sealed` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_implement_type_set.rs:6:18
[INFO] [stderr]   |
[INFO] [stderr] 6 | impl TypeSet for CustomSet {
[INFO] [stderr]   |                  ^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `type_set::sealed::Sealed` is not implemented for `CustomSet`
[INFO] [stderr]  --> tests/trybuild/cannot_implement_type_set.rs:4:1
[INFO] [stderr]   |
[INFO] [stderr] 4 | struct CustomSet;
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^
[INFO] [stderr]   = help: the following other types implement trait `type_set::sealed::Sealed`:
[INFO] [stderr]             ()
[INFO] [stderr]             (A, B)
[INFO] [stderr]             (A, B, C)
[INFO] [stderr]             (A, B, C, D)
[INFO] [stderr]             (A, B, C, D, E)
[INFO] [stderr]             (A, B, C, D, E, F)
[INFO] [stderr]             (A, B, C, D, E, F, G)
[INFO] [stderr]             (A, B, C, D, E, F, G, H)
[INFO] [stderr]           and $N others
[INFO] [stderr] note: required by a bound in `TypeSet`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | pub trait TypeSet: sealed::Sealed + Send + Sync + 'static {
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^ required by this bound in `TypeSet`
[INFO] [stderr]   = note: `TypeSet` is a "sealed trait", because to implement it you also need to implement `eros::type_set::sealed::Sealed`, which is not accessible; this is usually done to force you to use one of the provided types that already implement it
[INFO] [stderr]   = help: the following types implement the trait:
[INFO] [stderr]             eros::type_set::End
[INFO] [stderr]             eros::type_set::Cons<Head, Tail>
[INFO] [stderr]             eros::AnyError
[INFO] [stderr]             ()
[INFO] [stderr]             (A,)
[INFO] [stderr]             (A, B)
[INFO] [stderr]             (A, B, C)
[INFO] [stderr]             (A, B, C, D)
[INFO] [stderr]           and $N others
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `CustomSet: type_set::sealed::Sealed` is not satisfied
[INFO] [stderr]   --> tests/trybuild/cannot_implement_type_set.rs:13:20
[INFO] [stderr]    |
[INFO] [stderr] 13 | impl TupleForm for CustomSet {
[INFO] [stderr]    |                    ^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]    |
[INFO] [stderr] help: the trait `type_set::sealed::Sealed` is not implemented for `CustomSet`
[INFO] [stderr]   --> tests/trybuild/cannot_implement_type_set.rs:4:1
[INFO] [stderr]    |
[INFO] [stderr]  4 | struct CustomSet;
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^
[INFO] [stderr]    = help: the following other types implement trait `type_set::sealed::Sealed`:
[INFO] [stderr]              ()
[INFO] [stderr]              (A, B)
[INFO] [stderr]              (A, B, C)
[INFO] [stderr]              (A, B, C, D)
[INFO] [stderr]              (A, B, C, D, E)
[INFO] [stderr]              (A, B, C, D, E, F)
[INFO] [stderr]              (A, B, C, D, E, F, G)
[INFO] [stderr]              (A, B, C, D, E, F, G, H)
[INFO] [stderr]            and $N others
[INFO] [stderr] note: required by a bound in `TupleForm`
[INFO] [stderr]   --> src/type_set.rs
[INFO] [stderr]    |
[INFO] [stderr]    | pub trait TupleForm: sealed::Sealed {
[INFO] [stderr]    |                      ^^^^^^^^^^^^^^ required by this bound in `TupleForm`
[INFO] [stderr]    = note: `TupleForm` is a "sealed trait", because to implement it you also need to implement `eros::type_set::sealed::Sealed`, which is not accessible; this is usually done to force you to use one of the provided types that already implement it
[INFO] [stderr]    = help: the following types implement the trait:
[INFO] [stderr]              eros::type_set::End
[INFO] [stderr]              eros::type_set::Cons<Head, Tail>
[INFO] [stderr]              eros::AnyError
[INFO] [stderr]              ()
[INFO] [stderr]              (A,)
[INFO] [stderr]              (A, B)
[INFO] [stderr]              (A, B, C)
[INFO] [stderr]              (A, B, C, D)
[INFO] [stderr]            and $N others
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `CustomSet: type_set::sealed::Sealed` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_implement_type_set.rs:6:18
[INFO] [stderr]   |
[INFO] [stderr] 6 | impl TypeSet for CustomSet {
[INFO] [stderr]   |                  ^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `type_set::sealed::Sealed` is not implemented for `CustomSet`
[INFO] [stderr]  --> tests/trybuild/cannot_implement_type_set.rs:4:1
[INFO] [stderr]   |
[INFO] [stderr] 4 | struct CustomSet;
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^
[INFO] [stderr]   = help: the following other types implement trait `type_set::sealed::Sealed`:
[INFO] [stderr]             ()
[INFO] [stderr]             (A,)
[INFO] [stderr]             (A, B)
[INFO] [stderr]             (A, B, C)
[INFO] [stderr]             (A, B, C, D)
[INFO] [stderr]             (A, B, C, D, E)
[INFO] [stderr]             (A, B, C, D, E, F)
[INFO] [stderr]             (A, B, C, D, E, F, G)
[INFO] [stderr]           and $N others
[INFO] [stderr] note: required by a bound in `TypeSet`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | pub trait TypeSet: sealed::Sealed + Send + Sync + 'static {
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^ required by this bound in `TypeSet`
[INFO] [stderr]   = note: `TypeSet` is a "sealed trait", because to implement it you also need to implement `eros::type_set::sealed::Sealed`, which is not accessible; this is usually done to force you to use one of the provided types that already implement it
[INFO] [stderr]   = help: the following types implement the trait:
[INFO] [stderr]             eros::type_set::End
[INFO] [stderr]             eros::type_set::Cons<Head, Tail>
[INFO] [stderr]             eros::AnyError
[INFO] [stderr]             ()
[INFO] [stderr]             (A,)
[INFO] [stderr]             (A, B)
[INFO] [stderr]             (A, B, C)
[INFO] [stderr]             (A, B, C, D)
[INFO] [stderr]           and $N others
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `CustomSet: type_set::sealed::Sealed` is not satisfied
[INFO] [stderr]   --> tests/trybuild/cannot_implement_type_set.rs:13:20
[INFO] [stderr]    |
[INFO] [stderr] 13 | impl TupleForm for CustomSet {
[INFO] [stderr]    |                    ^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]    |
[INFO] [stderr] help: the trait `type_set::sealed::Sealed` is not implemented for `CustomSet`
[INFO] [stderr]   --> tests/trybuild/cannot_implement_type_set.rs:4:1
[INFO] [stderr]    |
[INFO] [stderr]  4 | struct CustomSet;
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^
[INFO] [stderr]    = help: the following other types implement trait `type_set::sealed::Sealed`:
[INFO] [stderr]              ()
[INFO] [stderr]              (A,)
[INFO] [stderr]              (A, B)
[INFO] [stderr]              (A, B, C)
[INFO] [stderr]              (A, B, C, D)
[INFO] [stderr]              (A, B, C, D, E)
[INFO] [stderr]              (A, B, C, D, E, F)
[INFO] [stderr]              (A, B, C, D, E, F, G)
[INFO] [stderr]            and $N others
[INFO] [stderr] note: required by a bound in `TupleForm`
[INFO] [stderr]   --> src/type_set.rs
[INFO] [stderr]    |
[INFO] [stderr]    | pub trait TupleForm: sealed::Sealed {
[INFO] [stderr]    |                      ^^^^^^^^^^^^^^ required by this bound in `TupleForm`
[INFO] [stderr]    = note: `TupleForm` is a "sealed trait", because to implement it you also need to implement `eros::type_set::sealed::Sealed`, which is not accessible; this is usually done to force you to use one of the provided types that already implement it
[INFO] [stderr]    = help: the following types implement the trait:
[INFO] [stderr]              eros::type_set::End
[INFO] [stderr]              eros::type_set::Cons<Head, Tail>
[INFO] [stderr]              eros::AnyError
[INFO] [stderr]              ()
[INFO] [stderr]              (A,)
[INFO] [stderr]              (A, B)
[INFO] [stderr]              (A, B, C)
[INFO] [stderr]              (A, B, C, D)
[INFO] [stderr]            and $N others
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/trybuild/cannot_into_value_with_any_error.rs [should fail to compile] ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0271]: type mismatch resolving `<AnyError as TypeSet>::Enum == Infallible`
[INFO] [stderr]  --> tests/trybuild/cannot_into_value_with_any_error.rs:5:20
[INFO] [stderr]   |
[INFO] [stderr] 5 |     let _ = result.into_value();
[INFO] [stderr]   |                    ^^^^^^^^^^ expected `Infallible`, found `AnyError`
[INFO] [stderr]   |
[INFO] [stderr] note: required by a bound in `into_value`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   |     fn into_value(self) -> S
[INFO] [stderr]   |        ---------- required by a bound in this associated function
[INFO] [stderr]   |     where
[INFO] [stderr]   |         E: TypeSet<Enum = core::convert::Infallible>;
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ReshapeUnion::into_value`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0271]: type mismatch resolving `<AnyError as TypeSet>::Enum == !`
[INFO] [stderr]  --> tests/trybuild/cannot_into_value_with_any_error.rs:5:20
[INFO] [stderr]   |
[INFO] [stderr] 5 |     let _ = result.into_value();
[INFO] [stderr]   |                    ^^^^^^^^^^ expected `!`, found `AnyError`
[INFO] [stderr]   |
[INFO] [stderr]   = note: expected type `!`
[INFO] [stderr]              found enum `AnyError`
[INFO] [stderr] note: required by a bound in `into_value`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   | pub trait ReshapeUnion<S, E>
[INFO] [stderr] ...
[INFO] [stderr]   |     fn into_value(self) -> S
[INFO] [stderr]   |     where
[INFO] [stderr]   |         E: TypeSet<Enum = core::convert::Infallible>;
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ReshapeUnion::into_value`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/trybuild/cannot_into_value_with_remaining_errors.rs [should fail to compile] ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0271]: type mismatch resolving `<(Error,) as TypeSet>::Enum == Infallible`
[INFO] [stderr]  --> tests/trybuild/cannot_into_value_with_remaining_errors.rs:5:51
[INFO] [stderr]   |
[INFO] [stderr] 5 |     let _ = result.recover::<MsgError, _>(|_| ()).into_value();
[INFO] [stderr]   |                                                   ^^^^^^^^^^ expected `Infallible`, found `E1<Error>`
[INFO] [stderr]   |
[INFO] [stderr]   = note: expected enum `Infallible`
[INFO] [stderr]              found enum `E1<std::fmt::Error>`
[INFO] [stderr] note: required by a bound in `into_value`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   |     fn into_value(self) -> S
[INFO] [stderr]   |        ---------- required by a bound in this associated function
[INFO] [stderr]   |     where
[INFO] [stderr]   |         E: TypeSet<Enum = core::convert::Infallible>;
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ReshapeUnion::into_value`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0271]: type mismatch resolving `<(Error,) as TypeSet>::Enum == !`
[INFO] [stderr]  --> tests/trybuild/cannot_into_value_with_remaining_errors.rs:5:51
[INFO] [stderr]   |
[INFO] [stderr] 5 |     let _ = result.recover::<MsgError, _>(|_| ()).into_value();
[INFO] [stderr]   |                                                   ^^^^^^^^^^ expected `!`, found `E1<Error>`
[INFO] [stderr]   |
[INFO] [stderr]   = note: expected type `!`
[INFO] [stderr]              found enum `E1<std::fmt::Error>`
[INFO] [stderr] note: required by a bound in `into_value`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   | pub trait ReshapeUnion<S, E>
[INFO] [stderr] ...
[INFO] [stderr]   |     fn into_value(self) -> S
[INFO] [stderr]   |     where
[INFO] [stderr]   |         E: TypeSet<Enum = core::convert::Infallible>;
[INFO] [stderr]   |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ReshapeUnion::into_value`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/trybuild/cannot_narrow_partially_unlisted_group.rs [should fail to compile] ... ok
[INFO] [stderr] test tests/trybuild/cannot_narrow_removed_group_member.rs [should fail to compile] ... ok
[INFO] [stderr] test tests/trybuild/cannot_narrow_unlisted_error.rs [should fail to compile] ... ok
[INFO] [stderr] test tests/trybuild/cannot_narrow_unlisted_singleton.rs [should fail to compile] ... ok
[INFO] [stderr] test tests/trybuild/cannot_recover_erased_omit_remainder.rs [should fail to compile] ... ok
[INFO] [stderr] test tests/trybuild/cannot_recover_removed_error.rs [should fail to compile] ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: Narrow<MsgError, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_recover_removed_error.rs:7:30
[INFO] [stderr]   |
[INFO] [stderr] 7 |     let _ = result.recover::<MsgError, _>(|_| ());
[INFO] [stderr]   |                    -------   ^^^^^^^^ the trait `Narrow<MsgError, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |                    |
[INFO] [stderr]   |                    required by a bound introduced by this call
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `Narrow<Target, eros::type_set::End>` is implemented for `AnyError`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<Target: SendSyncError> Narrow<Target, End> for AnyError {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `Narrow<MsgError, eros::type_set::Recurse<_>>`
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `SupersetOf<eros::type_set::Cons<MsgError, eros::type_set::End>, eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>`
[INFO] [stderr]   = note: required for `MsgError` to implement `RecoveryTarget<(std::fmt::Error,), SingleRecovery<eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>>`
[INFO] [stderr] note: required by a bound in `recover`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   |     fn recover<Target, Index>(
[INFO] [stderr]   |        ------- required by a bound in this associated function
[INFO] [stderr] ...
[INFO] [stderr]   |         Target: RecoveryTarget<E, Index>;
[INFO] [stderr]   |                 ^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ReshapeUnion::recover`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: Narrow<MsgError, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_recover_removed_error.rs:7:20
[INFO] [stderr]   |
[INFO] [stderr] 7 |     let _ = result.recover::<MsgError, _>(|_| ());
[INFO] [stderr]   |                    ^^^^^^^ the trait `Narrow<MsgError, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `Narrow<Target, eros::type_set::End>` is implemented for `AnyError`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<Target: SendSyncError> Narrow<Target, End> for AnyError {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `Narrow<MsgError, eros::type_set::Recurse<_>>`
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `SupersetOf<eros::type_set::Cons<MsgError, eros::type_set::End>, eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>`
[INFO] [stderr]   = note: required for `MsgError` to implement `RecoveryTarget<(std::fmt::Error,), SingleRecovery<eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: Narrow<MsgError, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_recover_removed_error.rs:7:43
[INFO] [stderr]   |
[INFO] [stderr] 7 |     let _ = result.recover::<MsgError, _>(|_| ());
[INFO] [stderr]   |                    -------                ^^^^^^ the trait `Narrow<MsgError, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |                    |
[INFO] [stderr]   |                    required by a bound introduced by this call
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `Narrow<Target, eros::type_set::End>` is implemented for `AnyError`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<Target: SendSyncError> Narrow<Target, End> for AnyError {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `Narrow<MsgError, eros::type_set::Recurse<_>>`
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `SupersetOf<eros::type_set::Cons<MsgError, eros::type_set::End>, eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>`
[INFO] [stderr]   = note: required for `{closure@$DIR/tests/trybuild/cannot_recover_removed_error.rs:7:43: 7:46}` to implement `RecoveryHandler<MsgError, (std::fmt::Error,), SingleRecovery<eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>, ()>`
[INFO] [stderr] note: required by a bound in `recover`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   |     fn recover<Target, Index>(
[INFO] [stderr]   |        ------- required by a bound in this associated function
[INFO] [stderr]   |         self,
[INFO] [stderr]   |         f: impl RecoveryHandler<Target, E, Index, S>,
[INFO] [stderr]   |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ReshapeUnion::recover`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: Narrow<MsgError, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_recover_removed_error.rs:7:30
[INFO] [stderr]   |
[INFO] [stderr] 7 |     let _ = result.recover::<MsgError, _>(|_| ());
[INFO] [stderr]   |                    -------   ^^^^^^^^ the trait `Narrow<MsgError, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |                    |
[INFO] [stderr]   |                    required by a bound introduced by this call
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `Narrow<Target, eros::type_set::End>` is implemented for `AnyError`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<Target: SendSyncError> Narrow<Target, End> for AnyError {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `Narrow<MsgError, eros::type_set::Recurse<_>>`
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `SupersetOf<eros::type_set::Cons<MsgError, eros::type_set::End>, eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>`
[INFO] [stderr]   = note: required for `MsgError` to implement `RecoveryTarget<(std::fmt::Error,), SingleRecovery<eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>>`
[INFO] [stderr] note: required by a bound in `recover`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   | pub trait ReshapeUnion<S, E>
[INFO] [stderr] ...
[INFO] [stderr]   |     fn recover<Target, Index>(
[INFO] [stderr] ...
[INFO] [stderr]   |         Target: RecoveryTarget<E, Index>;
[INFO] [stderr]   |                 ^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ReshapeUnion::recover`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: Narrow<MsgError, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_recover_removed_error.rs:7:20
[INFO] [stderr]   |
[INFO] [stderr] 7 |     let _ = result.recover::<MsgError, _>(|_| ());
[INFO] [stderr]   |                    ^^^^^^^ the trait `Narrow<MsgError, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `Narrow<Target, eros::type_set::End>` is implemented for `AnyError`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<Target: SendSyncError> Narrow<Target, End> for AnyError {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `Narrow<MsgError, eros::type_set::Recurse<_>>`
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `SupersetOf<eros::type_set::Cons<MsgError, eros::type_set::End>, eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>`
[INFO] [stderr]   = note: required for `MsgError` to implement `RecoveryTarget<(std::fmt::Error,), SingleRecovery<eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>>`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/trybuild/cannot_recover_removed_group_member.rs [should fail to compile] ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: Narrow<std::fmt::Error, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_recover_removed_group_member.rs:6:30
[INFO] [stderr]   |
[INFO] [stderr] 6 |     let _ = result.recover::<std::fmt::Error, _>(|_| ());
[INFO] [stderr]   |                    -------   ^^^^^^^^^^^^^^^ the trait `Narrow<std::fmt::Error, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |                    |
[INFO] [stderr]   |                    required by a bound introduced by this call
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `Narrow<Target, eros::type_set::End>` is implemented for `AnyError`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<Target: SendSyncError> Narrow<Target, End> for AnyError {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::io::Error, eros::type_set::End>` to implement `Narrow<std::fmt::Error, eros::type_set::Recurse<_>>`
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::io::Error, eros::type_set::End>` to implement `SupersetOf<eros::type_set::Cons<std::fmt::Error, eros::type_set::End>, eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>`
[INFO] [stderr]   = note: required for `std::fmt::Error` to implement `RecoveryTarget<(std::io::Error,), SingleRecovery<eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>>`
[INFO] [stderr] note: required by a bound in `recover`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   |     fn recover<Target, Index>(
[INFO] [stderr]   |        ------- required by a bound in this associated function
[INFO] [stderr] ...
[INFO] [stderr]   |         Target: RecoveryTarget<E, Index>;
[INFO] [stderr]   |                 ^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ReshapeUnion::recover`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: Narrow<std::fmt::Error, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_recover_removed_group_member.rs:6:20
[INFO] [stderr]   |
[INFO] [stderr] 6 |     let _ = result.recover::<std::fmt::Error, _>(|_| ());
[INFO] [stderr]   |                    ^^^^^^^ the trait `Narrow<std::fmt::Error, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `Narrow<Target, eros::type_set::End>` is implemented for `AnyError`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<Target: SendSyncError> Narrow<Target, End> for AnyError {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::io::Error, eros::type_set::End>` to implement `Narrow<std::fmt::Error, eros::type_set::Recurse<_>>`
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::io::Error, eros::type_set::End>` to implement `SupersetOf<eros::type_set::Cons<std::fmt::Error, eros::type_set::End>, eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>`
[INFO] [stderr]   = note: required for `std::fmt::Error` to implement `RecoveryTarget<(std::io::Error,), SingleRecovery<eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: Narrow<std::fmt::Error, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_recover_removed_group_member.rs:6:50
[INFO] [stderr]   |
[INFO] [stderr] 6 |     let _ = result.recover::<std::fmt::Error, _>(|_| ());
[INFO] [stderr]   |                    -------                       ^^^^^^ the trait `Narrow<std::fmt::Error, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |                    |
[INFO] [stderr]   |                    required by a bound introduced by this call
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `Narrow<Target, eros::type_set::End>` is implemented for `AnyError`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<Target: SendSyncError> Narrow<Target, End> for AnyError {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::io::Error, eros::type_set::End>` to implement `Narrow<std::fmt::Error, eros::type_set::Recurse<_>>`
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::io::Error, eros::type_set::End>` to implement `SupersetOf<eros::type_set::Cons<std::fmt::Error, eros::type_set::End>, eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>`
[INFO] [stderr]   = note: required for `{closure@$DIR/tests/trybuild/cannot_recover_removed_group_member.rs:6:50: 6:53}` to implement `RecoveryHandler<std::fmt::Error, (std::io::Error,), SingleRecovery<eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>, ()>`
[INFO] [stderr] note: required by a bound in `recover`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   |     fn recover<Target, Index>(
[INFO] [stderr]   |        ------- required by a bound in this associated function
[INFO] [stderr]   |         self,
[INFO] [stderr]   |         f: impl RecoveryHandler<Target, E, Index, S>,
[INFO] [stderr]   |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ReshapeUnion::recover`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: Narrow<std::fmt::Error, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_recover_removed_group_member.rs:6:30
[INFO] [stderr]   |
[INFO] [stderr] 6 |     let _ = result.recover::<std::fmt::Error, _>(|_| ());
[INFO] [stderr]   |                    -------   ^^^^^^^^^^^^^^^ the trait `Narrow<std::fmt::Error, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |                    |
[INFO] [stderr]   |                    required by a bound introduced by this call
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `Narrow<Target, eros::type_set::End>` is implemented for `AnyError`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<Target: SendSyncError> Narrow<Target, End> for AnyError {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::io::Error, eros::type_set::End>` to implement `Narrow<std::fmt::Error, eros::type_set::Recurse<_>>`
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::io::Error, eros::type_set::End>` to implement `SupersetOf<eros::type_set::Cons<std::fmt::Error, eros::type_set::End>, eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>`
[INFO] [stderr]   = note: required for `std::fmt::Error` to implement `RecoveryTarget<(std::io::Error,), SingleRecovery<eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>>`
[INFO] [stderr] note: required by a bound in `recover`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   | pub trait ReshapeUnion<S, E>
[INFO] [stderr] ...
[INFO] [stderr]   |     fn recover<Target, Index>(
[INFO] [stderr] ...
[INFO] [stderr]   |         Target: RecoveryTarget<E, Index>;
[INFO] [stderr]   |                 ^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ReshapeUnion::recover`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: Narrow<std::fmt::Error, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_recover_removed_group_member.rs:6:20
[INFO] [stderr]   |
[INFO] [stderr] 6 |     let _ = result.recover::<std::fmt::Error, _>(|_| ());
[INFO] [stderr]   |                    ^^^^^^^ the trait `Narrow<std::fmt::Error, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `Narrow<Target, eros::type_set::End>` is implemented for `AnyError`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<Target: SendSyncError> Narrow<Target, End> for AnyError {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::io::Error, eros::type_set::End>` to implement `Narrow<std::fmt::Error, eros::type_set::Recurse<_>>`
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::io::Error, eros::type_set::End>` to implement `SupersetOf<eros::type_set::Cons<std::fmt::Error, eros::type_set::End>, eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>`
[INFO] [stderr]   = note: required for `std::fmt::Error` to implement `RecoveryTarget<(std::io::Error,), SingleRecovery<eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>>`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/trybuild/cannot_recover_unlisted_error.rs [should fail to compile] ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: Narrow<MsgError, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_recover_unlisted_error.rs:5:30
[INFO] [stderr]   |
[INFO] [stderr] 5 |     let _ = result.recover::<MsgError, _>(|_| ());
[INFO] [stderr]   |                    -------   ^^^^^^^^ the trait `Narrow<MsgError, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |                    |
[INFO] [stderr]   |                    required by a bound introduced by this call
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `Narrow<Target, eros::type_set::End>` is implemented for `AnyError`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<Target: SendSyncError> Narrow<Target, End> for AnyError {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `Narrow<MsgError, eros::type_set::Recurse<_>>`
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `SupersetOf<eros::type_set::Cons<MsgError, eros::type_set::End>, eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>`
[INFO] [stderr]   = note: required for `MsgError` to implement `RecoveryTarget<(std::fmt::Error,), SingleRecovery<eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>>`
[INFO] [stderr] note: required by a bound in `recover`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   |     fn recover<Target, Index>(
[INFO] [stderr]   |        ------- required by a bound in this associated function
[INFO] [stderr] ...
[INFO] [stderr]   |         Target: RecoveryTarget<E, Index>;
[INFO] [stderr]   |                 ^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ReshapeUnion::recover`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: Narrow<MsgError, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_recover_unlisted_error.rs:5:20
[INFO] [stderr]   |
[INFO] [stderr] 5 |     let _ = result.recover::<MsgError, _>(|_| ());
[INFO] [stderr]   |                    ^^^^^^^ the trait `Narrow<MsgError, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `Narrow<Target, eros::type_set::End>` is implemented for `AnyError`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<Target: SendSyncError> Narrow<Target, End> for AnyError {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `Narrow<MsgError, eros::type_set::Recurse<_>>`
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `SupersetOf<eros::type_set::Cons<MsgError, eros::type_set::End>, eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>`
[INFO] [stderr]   = note: required for `MsgError` to implement `RecoveryTarget<(std::fmt::Error,), SingleRecovery<eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: Narrow<MsgError, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_recover_unlisted_error.rs:5:43
[INFO] [stderr]   |
[INFO] [stderr] 5 |     let _ = result.recover::<MsgError, _>(|_| ());
[INFO] [stderr]   |                    -------                ^^^^^^ the trait `Narrow<MsgError, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |                    |
[INFO] [stderr]   |                    required by a bound introduced by this call
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `Narrow<Target, eros::type_set::End>` is implemented for `AnyError`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<Target: SendSyncError> Narrow<Target, End> for AnyError {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `Narrow<MsgError, eros::type_set::Recurse<_>>`
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `SupersetOf<eros::type_set::Cons<MsgError, eros::type_set::End>, eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>`
[INFO] [stderr]   = note: required for `{closure@$DIR/tests/trybuild/cannot_recover_unlisted_error.rs:5:43: 5:46}` to implement `RecoveryHandler<MsgError, (std::fmt::Error,), SingleRecovery<eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>, ()>`
[INFO] [stderr] note: required by a bound in `recover`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   |     fn recover<Target, Index>(
[INFO] [stderr]   |        ------- required by a bound in this associated function
[INFO] [stderr]   |         self,
[INFO] [stderr]   |         f: impl RecoveryHandler<Target, E, Index, S>,
[INFO] [stderr]   |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ReshapeUnion::recover`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: Narrow<MsgError, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_recover_unlisted_error.rs:5:30
[INFO] [stderr]   |
[INFO] [stderr] 5 |     let _ = result.recover::<MsgError, _>(|_| ());
[INFO] [stderr]   |                    -------   ^^^^^^^^ the trait `Narrow<MsgError, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |                    |
[INFO] [stderr]   |                    required by a bound introduced by this call
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `Narrow<Target, eros::type_set::End>` is implemented for `AnyError`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<Target: SendSyncError> Narrow<Target, End> for AnyError {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `Narrow<MsgError, eros::type_set::Recurse<_>>`
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `SupersetOf<eros::type_set::Cons<MsgError, eros::type_set::End>, eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>`
[INFO] [stderr]   = note: required for `MsgError` to implement `RecoveryTarget<(std::fmt::Error,), SingleRecovery<eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>>`
[INFO] [stderr] note: required by a bound in `recover`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   | pub trait ReshapeUnion<S, E>
[INFO] [stderr] ...
[INFO] [stderr]   |     fn recover<Target, Index>(
[INFO] [stderr] ...
[INFO] [stderr]   |         Target: RecoveryTarget<E, Index>;
[INFO] [stderr]   |                 ^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ReshapeUnion::recover`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: Narrow<MsgError, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_recover_unlisted_error.rs:5:20
[INFO] [stderr]   |
[INFO] [stderr] 5 |     let _ = result.recover::<MsgError, _>(|_| ());
[INFO] [stderr]   |                    ^^^^^^^ the trait `Narrow<MsgError, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `Narrow<Target, eros::type_set::End>` is implemented for `AnyError`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<Target: SendSyncError> Narrow<Target, End> for AnyError {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `Narrow<MsgError, eros::type_set::Recurse<_>>`
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `SupersetOf<eros::type_set::Cons<MsgError, eros::type_set::End>, eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>`
[INFO] [stderr]   = note: required for `MsgError` to implement `RecoveryTarget<(std::fmt::Error,), SingleRecovery<eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>>`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/trybuild/cannot_recover_unlisted_group.rs [should fail to compile] ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `{closure@$DIR/tests/trybuild/cannot_recover_unlisted_group.rs:5:28: 5:71}: RecoveryHandler<_, (MsgError, std::fmt::Error), _, ()>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_recover_unlisted_group.rs:5:28
[INFO] [stderr]   |
[INFO] [stderr] 5 |     let _ = result.recover(|_: ErrorUnion<(MsgError, std::io::Error)>| ());
[INFO] [stderr]   |                    ------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]   |                    |
[INFO] [stderr]   |                    required by a bound introduced by this call
[INFO] [stderr]   |
[INFO] [stderr]   = help: the trait `RecoveryHandler<_, (MsgError, std::fmt::Error), _, ()>` is not implemented for closure `{closure@$DIR/tests/trybuild/cannot_recover_unlisted_group.rs:5:28: 5:71}`
[INFO] [stderr] note: required by a bound in `recover`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   |     fn recover<Target, Index>(
[INFO] [stderr]   |        ------- required by a bound in this associated function
[INFO] [stderr]   |         self,
[INFO] [stderr]   |         f: impl RecoveryHandler<Target, E, Index, S>,
[INFO] [stderr]   |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ReshapeUnion::recover`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `{closure@$DIR/tests/trybuild/cannot_recover_unlisted_group.rs:5:28: 5:71}: RecoveryHandler<_, (MsgError, std::fmt::Error), _, ()>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_recover_unlisted_group.rs:5:28
[INFO] [stderr]   |
[INFO] [stderr] 5 |     let _ = result.recover(|_: ErrorUnion<(MsgError, std::io::Error)>| ());
[INFO] [stderr]   |                    ------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]   |                    |
[INFO] [stderr]   |                    required by a bound introduced by this call
[INFO] [stderr]   |
[INFO] [stderr]   = help: the trait `RecoveryHandler<_, (MsgError, std::fmt::Error), _, ()>` is not implemented for closure `{closure@$DIR/tests/trybuild/cannot_recover_unlisted_group.rs:5:28: 5:71}`
[INFO] [stderr] note: required by a bound in `recover`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   | pub trait ReshapeUnion<S, E>
[INFO] [stderr] ...
[INFO] [stderr]   |     fn recover<Target, Index>(
[INFO] [stderr]   |         self,
[INFO] [stderr]   |         f: impl RecoveryHandler<Target, E, Index, S>,
[INFO] [stderr]   |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ReshapeUnion::recover`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/trybuild/cannot_result_narrow_unlisted_group.rs [should fail to compile] ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `(MsgError, std::io::Error): NarrowTarget<(MsgError, std::fmt::Error), _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_result_narrow_unlisted_group.rs:6:29
[INFO] [stderr]   |
[INFO] [stderr] 6 |     let _ = result.narrow::<(MsgError, std::io::Error), _>();
[INFO] [stderr]   |                    ------   ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `NarrowTarget<(MsgError, std::fmt::Error), _>` is not implemented for `(MsgError, std::io::Error)`
[INFO] [stderr]   |                    |
[INFO] [stderr]   |                    required by a bound introduced by this call
[INFO] [stderr]   |
[INFO] [stderr] note: required by a bound in `narrow`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   |     fn narrow<Target, Index>(
[INFO] [stderr]   |        ------ required by a bound in this associated function
[INFO] [stderr] ...
[INFO] [stderr]   |         Target: NarrowTarget<E, Index>;
[INFO] [stderr]   |                 ^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ReshapeUnion::narrow`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `(MsgError, std::io::Error): NarrowTarget<(MsgError, std::fmt::Error), _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_result_narrow_unlisted_group.rs:6:29
[INFO] [stderr]   |
[INFO] [stderr] 6 |     let _ = result.narrow::<(MsgError, std::io::Error), _>();
[INFO] [stderr]   |                    ------   ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `NarrowTarget<(MsgError, std::fmt::Error), _>` is not implemented for `(MsgError, std::io::Error)`
[INFO] [stderr]   |                    |
[INFO] [stderr]   |                    required by a bound introduced by this call
[INFO] [stderr]   |
[INFO] [stderr] note: required by a bound in `narrow`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   | pub trait ReshapeUnion<S, E>
[INFO] [stderr] ...
[INFO] [stderr]   |     fn narrow<Target, Index>(
[INFO] [stderr] ...
[INFO] [stderr]   |         Target: NarrowTarget<E, Index>;
[INFO] [stderr]   |                 ^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ReshapeUnion::narrow`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/trybuild/cannot_result_widen_erased_to_typed.rs [should fail to compile] ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::Cons<MsgError, eros::type_set::End>: SupersetOf<AnyError, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_result_widen_erased_to_typed.rs:5:51
[INFO] [stderr]   |
[INFO] [stderr] 5 |     let _: eros::Result<(), (MsgError,)> = result.widen();
[INFO] [stderr]   |                                                   ^^^^^ the trait `SupersetOf<AnyError, _>` is not implemented for `eros::type_set::Cons<MsgError, eros::type_set::End>`
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `SupersetOf<AnyError, _>` is not implemented for `eros::type_set::Cons<MsgError, eros::type_set::End>`
[INFO] [stderr]       but trait `SupersetOf<eros::type_set::Cons<MsgError, eros::type_set::End>, eros::type_set::Cons<eros::type_set::End, eros::type_set::End>>` is implemented for it
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | / impl<SubHead, SubTail, SuperHead, SuperTail, HeadIndex, TailIndex>
[INFO] [stderr]   | |     SupersetOf<Cons<SubHead, SubTail>, Cons<HeadIndex, TailIndex>> for Cons<SuperHead, SuperTail>
[INFO] [stderr]   | | where
[INFO] [stderr]   | |     Cons<SuperHead, SuperTail>: Narrow<SubHead, HeadIndex>,
[INFO] [stderr]   | |     <Cons<SuperHead, SuperTail> as Narrow<SubHead, HeadIndex>>::Remainder:
[INFO] [stderr]   | |         SupersetOf<SubTail, TailIndex>,
[INFO] [stderr]   | |_______________________________________^
[INFO] [stderr]   = help: for that trait implementation, expected `eros::type_set::Cons<MsgError, eros::type_set::End>`, found `AnyError`
[INFO] [stderr] note: required by a bound in `widen`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   |     fn widen<Other, Index>(self) -> Result<S, ErrorUnion<Other>>
[INFO] [stderr]   |        ----- required by a bound in this associated function
[INFO] [stderr] ...
[INFO] [stderr]   |         Other::Variants: SupersetOf<E::Variants, Index>;
[INFO] [stderr]   |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ReshapeUnion::widen`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::Cons<MsgError, eros::type_set::End>: SupersetOf<AnyError, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_result_widen_erased_to_typed.rs:5:51
[INFO] [stderr]   |
[INFO] [stderr] 5 |     let _: eros::Result<(), (MsgError,)> = result.widen();
[INFO] [stderr]   |                                                   ^^^^^ the trait `SupersetOf<AnyError, _>` is not implemented for `eros::type_set::Cons<MsgError, eros::type_set::End>`
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `SupersetOf<AnyError, _>` is not implemented for `eros::type_set::Cons<MsgError, eros::type_set::End>`
[INFO] [stderr]       but trait `SupersetOf<eros::type_set::Cons<MsgError, eros::type_set::End>, eros::type_set::Cons<eros::type_set::End, eros::type_set::End>>` is implemented for it
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | / impl<SubHead, SubTail, SuperHead, SuperTail, HeadIndex, TailIndex>
[INFO] [stderr]   | |     SupersetOf<Cons<SubHead, SubTail>, Cons<HeadIndex, TailIndex>> for Cons<SuperHead, SuperTail>
[INFO] [stderr]   | | where
[INFO] [stderr]   | |     Cons<SuperHead, SuperTail>: Narrow<SubHead, HeadIndex>,
[INFO] [stderr]   | |     <Cons<SuperHead, SuperTail> as Narrow<SubHead, HeadIndex>>::Remainder:
[INFO] [stderr]   | |         SupersetOf<SubTail, TailIndex>,
[INFO] [stderr]   | |_______________________________________^
[INFO] [stderr]   = help: for that trait implementation, expected `eros::type_set::Cons<MsgError, eros::type_set::End>`, found `AnyError`
[INFO] [stderr] note: required by a bound in `widen`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   | pub trait ReshapeUnion<S, E>
[INFO] [stderr] ...
[INFO] [stderr]   |     fn widen<Other, Index>(self) -> Result<S, ErrorUnion<Other>>
[INFO] [stderr] ...
[INFO] [stderr]   |         Other::Variants: SupersetOf<E::Variants, Index>;
[INFO] [stderr]   |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ReshapeUnion::widen`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/trybuild/cannot_result_widen_to_smaller_set.rs [should fail to compile] ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: SupersetOf<eros::type_set::Cons<std::fmt::Error, eros::type_set::End>, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_result_widen_to_smaller_set.rs:5:51
[INFO] [stderr]   |
[INFO] [stderr] 5 |     let _: eros::Result<(), (MsgError,)> = result.widen();
[INFO] [stderr]   |                                                   ^^^^^ the trait `SupersetOf<eros::type_set::Cons<std::fmt::Error, eros::type_set::End>, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |
[INFO] [stderr] help: `AnyError` implements trait `SupersetOf<Other, Index>`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   |   impl SupersetOf<AnyError, End> for AnyError {
[INFO] [stderr]   |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `SupersetOf<AnyError, eros::type_set::End>`
[INFO] [stderr] ...
[INFO] [stderr]   | / impl<Head, Tail, TailIndex> SupersetOf<Cons<Head, Tail>, Cons<End, TailIndex>> for AnyError
[INFO] [stderr]   | | where
[INFO] [stderr]   | |     Head: SendSyncError,
[INFO] [stderr]   | |     AnyError: SupersetOf<Tail, TailIndex>,
[INFO] [stderr]   | |__________________________________________^ `SupersetOf<eros::type_set::Cons<Head, Tail>, eros::type_set::Cons<eros::type_set::End, TailIndex>>`
[INFO] [stderr]   = note: required for `eros::type_set::Cons<MsgError, eros::type_set::End>` to implement `SupersetOf<eros::type_set::Cons<MsgError, eros::type_set::Cons<std::fmt::Error, eros::type_set::End>>, eros::type_set::Cons<eros::type_set::End, _>>`
[INFO] [stderr] note: required by a bound in `widen`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   |     fn widen<Other, Index>(self) -> Result<S, ErrorUnion<Other>>
[INFO] [stderr]   |        ----- required by a bound in this associated function
[INFO] [stderr] ...
[INFO] [stderr]   |         Other::Variants: SupersetOf<E::Variants, Index>;
[INFO] [stderr]   |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ReshapeUnion::widen`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: SupersetOf<eros::type_set::Cons<std::fmt::Error, eros::type_set::End>, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_result_widen_to_smaller_set.rs:5:51
[INFO] [stderr]   |
[INFO] [stderr] 5 |     let _: eros::Result<(), (MsgError,)> = result.widen();
[INFO] [stderr]   |                                                   ^^^^^ the trait `SupersetOf<eros::type_set::Cons<std::fmt::Error, eros::type_set::End>, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |
[INFO] [stderr] help: `AnyError` implements trait `SupersetOf<Other, Index>`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   |   impl SupersetOf<AnyError, End> for AnyError {
[INFO] [stderr]   |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `SupersetOf<AnyError, eros::type_set::End>`
[INFO] [stderr] ...
[INFO] [stderr]   | / impl<Head, Tail, TailIndex> SupersetOf<Cons<Head, Tail>, Cons<End, TailIndex>> for AnyError
[INFO] [stderr]   | | where
[INFO] [stderr]   | |     Head: SendSyncError,
[INFO] [stderr]   | |     AnyError: SupersetOf<Tail, TailIndex>,
[INFO] [stderr]   | |__________________________________________^ `SupersetOf<eros::type_set::Cons<Head, Tail>, eros::type_set::Cons<eros::type_set::End, TailIndex>>`
[INFO] [stderr]   = note: required for `eros::type_set::Cons<MsgError, eros::type_set::End>` to implement `SupersetOf<eros::type_set::Cons<MsgError, eros::type_set::Cons<std::fmt::Error, eros::type_set::End>>, eros::type_set::Cons<eros::type_set::End, _>>`
[INFO] [stderr] note: required by a bound in `widen`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   | pub trait ReshapeUnion<S, E>
[INFO] [stderr] ...
[INFO] [stderr]   |     fn widen<Other, Index>(self) -> Result<S, ErrorUnion<Other>>
[INFO] [stderr] ...
[INFO] [stderr]   |         Other::Variants: SupersetOf<E::Variants, Index>;
[INFO] [stderr]   |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ReshapeUnion::widen`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/trybuild/cannot_try_recover_erased_omit_remainder.rs [should fail to compile] ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: SupersetOf<AnyError, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_try_recover_erased_omit_remainder.rs:5:66
[INFO] [stderr]   |
[INFO] [stderr] 5 |     let _: eros::Result<(), ()> = result.try_recover::<MsgError, _, _, _>(|_| Ok(()));
[INFO] [stderr]   |                                                                  ^ the trait `SupersetOf<AnyError, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |
[INFO] [stderr] help: `AnyError` implements trait `SupersetOf<Other, Index>`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   |   impl SupersetOf<AnyError, End> for AnyError {
[INFO] [stderr]   |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `SupersetOf<AnyError, eros::type_set::End>`
[INFO] [stderr] ...
[INFO] [stderr]   | / impl<Head, Tail, TailIndex> SupersetOf<Cons<Head, Tail>, Cons<End, TailIndex>> for AnyError
[INFO] [stderr]   | | where
[INFO] [stderr]   | |     Head: SendSyncError,
[INFO] [stderr]   | |     AnyError: SupersetOf<Tail, TailIndex>,
[INFO] [stderr]   | |__________________________________________^ `SupersetOf<eros::type_set::Cons<Head, Tail>, eros::type_set::Cons<eros::type_set::End, TailIndex>>`
[INFO] [stderr] note: required by a bound in `try_recover`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   |     fn try_recover<Target, Other, Index, OtherIndex>(
[INFO] [stderr]   |        ----------- required by a bound in this associated function
[INFO] [stderr] ...
[INFO] [stderr]   |         Other::Variants: SupersetOf<Target::Remainder, OtherIndex>;
[INFO] [stderr]   |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ReshapeUnion::try_recover`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: SupersetOf<AnyError, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_try_recover_erased_omit_remainder.rs:5:66
[INFO] [stderr]   |
[INFO] [stderr] 5 |     let _: eros::Result<(), ()> = result.try_recover::<MsgError, _, _, _>(|_| Ok(()));
[INFO] [stderr]   |                                                                  ^ the trait `SupersetOf<AnyError, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |
[INFO] [stderr] help: `AnyError` implements trait `SupersetOf<Other, Index>`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   |   impl SupersetOf<AnyError, End> for AnyError {
[INFO] [stderr]   |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `SupersetOf<AnyError, eros::type_set::End>`
[INFO] [stderr] ...
[INFO] [stderr]   | / impl<Head, Tail, TailIndex> SupersetOf<Cons<Head, Tail>, Cons<End, TailIndex>> for AnyError
[INFO] [stderr]   | | where
[INFO] [stderr]   | |     Head: SendSyncError,
[INFO] [stderr]   | |     AnyError: SupersetOf<Tail, TailIndex>,
[INFO] [stderr]   | |__________________________________________^ `SupersetOf<eros::type_set::Cons<Head, Tail>, eros::type_set::Cons<eros::type_set::End, TailIndex>>`
[INFO] [stderr] note: required by a bound in `try_recover`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   | pub trait ReshapeUnion<S, E>
[INFO] [stderr] ...
[INFO] [stderr]   |     fn try_recover<Target, Other, Index, OtherIndex>(
[INFO] [stderr] ...
[INFO] [stderr]   |         Other::Variants: SupersetOf<Target::Remainder, OtherIndex>;
[INFO] [stderr]   |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ReshapeUnion::try_recover`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/trybuild/cannot_try_recover_group_omit_remainder.rs [should fail to compile] ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: Narrow<std::io::Error, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_try_recover_group_omit_remainder.rs:6:16
[INFO] [stderr]   |
[INFO] [stderr] 6 |         result.try_recover(|_: ErrorUnion<(MsgError, std::fmt::Error)>| Ok(()));
[INFO] [stderr]   |                ^^^^^^^^^^^ the trait `Narrow<std::io::Error, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `Narrow<Target, eros::type_set::End>` is implemented for `AnyError`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<Target: SendSyncError> Narrow<Target, End> for AnyError {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   = note: required for `eros::type_set::Cons<MsgError, eros::type_set::End>` to implement `Narrow<std::io::Error, eros::type_set::Recurse<_>>`
[INFO] [stderr]   = note: required for `eros::type_set::Cons<MsgError, eros::type_set::End>` to implement `SupersetOf<eros::type_set::Cons<std::io::Error, eros::type_set::End>, eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>`
[INFO] [stderr] note: required by a bound in `try_recover`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   |     fn try_recover<Target, Other, Index, OtherIndex>(
[INFO] [stderr]   |        ----------- required by a bound in this associated function
[INFO] [stderr] ...
[INFO] [stderr]   |         Other::Variants: SupersetOf<Target::Remainder, OtherIndex>;
[INFO] [stderr]   |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ReshapeUnion::try_recover`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: Narrow<std::io::Error, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_try_recover_group_omit_remainder.rs:6:16
[INFO] [stderr]   |
[INFO] [stderr] 6 |         result.try_recover(|_: ErrorUnion<(MsgError, std::fmt::Error)>| Ok(()));
[INFO] [stderr]   |                ^^^^^^^^^^^ the trait `Narrow<std::io::Error, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `Narrow<Target, eros::type_set::End>` is implemented for `AnyError`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<Target: SendSyncError> Narrow<Target, End> for AnyError {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   = note: required for `eros::type_set::Cons<MsgError, eros::type_set::End>` to implement `Narrow<std::io::Error, eros::type_set::Recurse<_>>`
[INFO] [stderr]   = note: required for `eros::type_set::Cons<MsgError, eros::type_set::End>` to implement `SupersetOf<eros::type_set::Cons<std::io::Error, eros::type_set::End>, eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>`
[INFO] [stderr] note: required by a bound in `try_recover`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   | pub trait ReshapeUnion<S, E>
[INFO] [stderr] ...
[INFO] [stderr]   |     fn try_recover<Target, Other, Index, OtherIndex>(
[INFO] [stderr] ...
[INFO] [stderr]   |         Other::Variants: SupersetOf<Target::Remainder, OtherIndex>;
[INFO] [stderr]   |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ReshapeUnion::try_recover`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/trybuild/cannot_try_recover_omit_remainder.rs [should fail to compile] ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: Narrow<std::fmt::Error, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_try_recover_omit_remainder.rs:6:75
[INFO] [stderr]   |
[INFO] [stderr] 6 |     let _: eros::Result<(), (MsgError,)> = result.try_recover::<MsgError, _, _, _>(|_| Ok(()));
[INFO] [stderr]   |                                                                           ^ the trait `Narrow<std::fmt::Error, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `Narrow<Target, eros::type_set::End>` is implemented for `AnyError`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<Target: SendSyncError> Narrow<Target, End> for AnyError {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   = note: required for `eros::type_set::Cons<MsgError, eros::type_set::End>` to implement `Narrow<std::fmt::Error, eros::type_set::Recurse<_>>`
[INFO] [stderr]   = note: required for `eros::type_set::Cons<MsgError, eros::type_set::End>` to implement `SupersetOf<eros::type_set::Cons<std::fmt::Error, eros::type_set::End>, eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>`
[INFO] [stderr] note: required by a bound in `try_recover`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   |     fn try_recover<Target, Other, Index, OtherIndex>(
[INFO] [stderr]   |        ----------- required by a bound in this associated function
[INFO] [stderr] ...
[INFO] [stderr]   |         Other::Variants: SupersetOf<Target::Remainder, OtherIndex>;
[INFO] [stderr]   |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ReshapeUnion::try_recover`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: Narrow<std::fmt::Error, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_try_recover_omit_remainder.rs:6:75
[INFO] [stderr]   |
[INFO] [stderr] 6 |     let _: eros::Result<(), (MsgError,)> = result.try_recover::<MsgError, _, _, _>(|_| Ok(()));
[INFO] [stderr]   |                                                                           ^ the trait `Narrow<std::fmt::Error, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `Narrow<Target, eros::type_set::End>` is implemented for `AnyError`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<Target: SendSyncError> Narrow<Target, End> for AnyError {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   = note: required for `eros::type_set::Cons<MsgError, eros::type_set::End>` to implement `Narrow<std::fmt::Error, eros::type_set::Recurse<_>>`
[INFO] [stderr]   = note: required for `eros::type_set::Cons<MsgError, eros::type_set::End>` to implement `SupersetOf<eros::type_set::Cons<std::fmt::Error, eros::type_set::End>, eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>`
[INFO] [stderr] note: required by a bound in `try_recover`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   | pub trait ReshapeUnion<S, E>
[INFO] [stderr] ...
[INFO] [stderr]   |     fn try_recover<Target, Other, Index, OtherIndex>(
[INFO] [stderr] ...
[INFO] [stderr]   |         Other::Variants: SupersetOf<Target::Remainder, OtherIndex>;
[INFO] [stderr]   |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ReshapeUnion::try_recover`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/trybuild/cannot_try_recover_removed_error.rs [should fail to compile] ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: Narrow<MsgError, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_try_recover_removed_error.rs:9:9
[INFO] [stderr]   |
[INFO] [stderr] 9 |         result.try_recover::<MsgError, _, _, _>(|_| Ok(()));
[INFO] [stderr]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Narrow<MsgError, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `Narrow<Target, eros::type_set::End>` is implemented for `AnyError`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<Target: SendSyncError> Narrow<Target, End> for AnyError {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `Narrow<MsgError, eros::type_set::Recurse<_>>`
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `SupersetOf<eros::type_set::Cons<MsgError, eros::type_set::End>, eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>`
[INFO] [stderr]   = note: required for `MsgError` to implement `RecoveryTarget<(std::fmt::Error,), SingleRecovery<eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: Narrow<MsgError, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_try_recover_removed_error.rs:9:16
[INFO] [stderr]   |
[INFO] [stderr] 9 |         result.try_recover::<MsgError, _, _, _>(|_| Ok(()));
[INFO] [stderr]   |                ^^^^^^^^^^^ the trait `Narrow<MsgError, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `Narrow<Target, eros::type_set::End>` is implemented for `AnyError`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<Target: SendSyncError> Narrow<Target, End> for AnyError {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `Narrow<MsgError, eros::type_set::Recurse<_>>`
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `SupersetOf<eros::type_set::Cons<MsgError, eros::type_set::End>, eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>`
[INFO] [stderr]   = note: required for `MsgError` to implement `RecoveryTarget<(std::fmt::Error,), SingleRecovery<eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: Narrow<MsgError, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_try_recover_removed_error.rs:9:49
[INFO] [stderr]   |
[INFO] [stderr] 9 |         result.try_recover::<MsgError, _, _, _>(|_| Ok(()));
[INFO] [stderr]   |                -----------                      ^^^^^^^^^^ the trait `Narrow<MsgError, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |                |
[INFO] [stderr]   |                required by a bound introduced by this call
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `Narrow<Target, eros::type_set::End>` is implemented for `AnyError`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<Target: SendSyncError> Narrow<Target, End> for AnyError {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `Narrow<MsgError, eros::type_set::Recurse<_>>`
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `SupersetOf<eros::type_set::Cons<MsgError, eros::type_set::End>, eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>`
[INFO] [stderr]   = note: required for `{closure@$DIR/tests/trybuild/cannot_try_recover_removed_error.rs:9:49: 9:52}` to implement `RecoveryHandler<MsgError, (std::fmt::Error,), SingleRecovery<eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>, Result<(), ErrorUnion<_>>>`
[INFO] [stderr] note: required by a bound in `try_recover`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   |     fn try_recover<Target, Other, Index, OtherIndex>(
[INFO] [stderr]   |        ----------- required by a bound in this associated function
[INFO] [stderr]   |         self,
[INFO] [stderr]   |         f: impl RecoveryHandler<Target, E, Index, Result<S, ErrorUnion<Other>>>,
[INFO] [stderr]   |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ReshapeUnion::try_recover`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: Narrow<MsgError, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_try_recover_removed_error.rs:9:9
[INFO] [stderr]   |
[INFO] [stderr] 9 |         result.try_recover::<MsgError, _, _, _>(|_| Ok(()));
[INFO] [stderr]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Narrow<MsgError, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `Narrow<Target, eros::type_set::End>` is implemented for `AnyError`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<Target: SendSyncError> Narrow<Target, End> for AnyError {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `Narrow<MsgError, eros::type_set::Recurse<_>>`
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `SupersetOf<eros::type_set::Cons<MsgError, eros::type_set::End>, eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>`
[INFO] [stderr]   = note: required for `MsgError` to implement `RecoveryTarget<(std::fmt::Error,), SingleRecovery<eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>>`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/trybuild/cannot_try_recover_unlisted_error.rs [should fail to compile] ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: Narrow<MsgError, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_try_recover_unlisted_error.rs:6:9
[INFO] [stderr]   |
[INFO] [stderr] 6 |         result.try_recover::<MsgError, _, _, _>(|_| Ok(()));
[INFO] [stderr]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Narrow<MsgError, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `Narrow<Target, eros::type_set::End>` is implemented for `AnyError`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<Target: SendSyncError> Narrow<Target, End> for AnyError {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `Narrow<MsgError, eros::type_set::Recurse<_>>`
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `SupersetOf<eros::type_set::Cons<MsgError, eros::type_set::End>, eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>`
[INFO] [stderr]   = note: required for `MsgError` to implement `RecoveryTarget<(std::fmt::Error,), SingleRecovery<eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: Narrow<MsgError, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_try_recover_unlisted_error.rs:6:16
[INFO] [stderr]   |
[INFO] [stderr] 6 |         result.try_recover::<MsgError, _, _, _>(|_| Ok(()));
[INFO] [stderr]   |                ^^^^^^^^^^^ the trait `Narrow<MsgError, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `Narrow<Target, eros::type_set::End>` is implemented for `AnyError`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<Target: SendSyncError> Narrow<Target, End> for AnyError {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `Narrow<MsgError, eros::type_set::Recurse<_>>`
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `SupersetOf<eros::type_set::Cons<MsgError, eros::type_set::End>, eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>`
[INFO] [stderr]   = note: required for `MsgError` to implement `RecoveryTarget<(std::fmt::Error,), SingleRecovery<eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>>`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: Narrow<MsgError, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_try_recover_unlisted_error.rs:6:49
[INFO] [stderr]   |
[INFO] [stderr] 6 |         result.try_recover::<MsgError, _, _, _>(|_| Ok(()));
[INFO] [stderr]   |                -----------                      ^^^^^^^^^^ the trait `Narrow<MsgError, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |                |
[INFO] [stderr]   |                required by a bound introduced by this call
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `Narrow<Target, eros::type_set::End>` is implemented for `AnyError`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<Target: SendSyncError> Narrow<Target, End> for AnyError {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `Narrow<MsgError, eros::type_set::Recurse<_>>`
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `SupersetOf<eros::type_set::Cons<MsgError, eros::type_set::End>, eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>`
[INFO] [stderr]   = note: required for `{closure@$DIR/tests/trybuild/cannot_try_recover_unlisted_error.rs:6:49: 6:52}` to implement `RecoveryHandler<MsgError, (std::fmt::Error,), SingleRecovery<eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>, Result<(), ErrorUnion<_>>>`
[INFO] [stderr] note: required by a bound in `try_recover`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   |     fn try_recover<Target, Other, Index, OtherIndex>(
[INFO] [stderr]   |        ----------- required by a bound in this associated function
[INFO] [stderr]   |         self,
[INFO] [stderr]   |         f: impl RecoveryHandler<Target, E, Index, Result<S, ErrorUnion<Other>>>,
[INFO] [stderr]   |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ReshapeUnion::try_recover`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: Narrow<MsgError, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_try_recover_unlisted_error.rs:6:9
[INFO] [stderr]   |
[INFO] [stderr] 6 |         result.try_recover::<MsgError, _, _, _>(|_| Ok(()));
[INFO] [stderr]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Narrow<MsgError, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `Narrow<Target, eros::type_set::End>` is implemented for `AnyError`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<Target: SendSyncError> Narrow<Target, End> for AnyError {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `Narrow<MsgError, eros::type_set::Recurse<_>>`
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `SupersetOf<eros::type_set::Cons<MsgError, eros::type_set::End>, eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>`
[INFO] [stderr]   = note: required for `MsgError` to implement `RecoveryTarget<(std::fmt::Error,), SingleRecovery<eros::type_set::Cons<eros::type_set::Recurse<_>, eros::type_set::End>>>`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/trybuild/cannot_try_recover_unlisted_group.rs [should fail to compile] ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `{closure@$DIR/tests/trybuild/cannot_try_recover_unlisted_group.rs:6:28: 6:71}: RecoveryHandler<_, (MsgError, std::fmt::Error), _, Result<(), ErrorUnion<_>>>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_try_recover_unlisted_group.rs:6:28
[INFO] [stderr]   |
[INFO] [stderr] 6 |         result.try_recover(|_: ErrorUnion<(MsgError, std::io::Error)>| Ok(()));
[INFO] [stderr]   |                ----------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]   |                |
[INFO] [stderr]   |                required by a bound introduced by this call
[INFO] [stderr]   |
[INFO] [stderr]   = help: the trait `RecoveryHandler<_, (MsgError, std::fmt::Error), _, Result<(), ErrorUnion<_>>>` is not implemented for closure `{closure@$DIR/tests/trybuild/cannot_try_recover_unlisted_group.rs:6:28: 6:71}`
[INFO] [stderr] note: required by a bound in `try_recover`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   |     fn try_recover<Target, Other, Index, OtherIndex>(
[INFO] [stderr]   |        ----------- required by a bound in this associated function
[INFO] [stderr]   |         self,
[INFO] [stderr]   |         f: impl RecoveryHandler<Target, E, Index, Result<S, ErrorUnion<Other>>>,
[INFO] [stderr]   |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ReshapeUnion::try_recover`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `{closure@$DIR/tests/trybuild/cannot_try_recover_unlisted_group.rs:6:28: 6:71}: RecoveryHandler<_, (MsgError, std::fmt::Error), _, Result<(), ErrorUnion<_>>>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_try_recover_unlisted_group.rs:6:28
[INFO] [stderr]   |
[INFO] [stderr] 6 |         result.try_recover(|_: ErrorUnion<(MsgError, std::io::Error)>| Ok(()));
[INFO] [stderr]   |                ----------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]   |                |
[INFO] [stderr]   |                required by a bound introduced by this call
[INFO] [stderr]   |
[INFO] [stderr]   = help: the trait `RecoveryHandler<_, (MsgError, std::fmt::Error), _, Result<(), ErrorUnion<_>>>` is not implemented for closure `{closure@$DIR/tests/trybuild/cannot_try_recover_unlisted_group.rs:6:28: 6:71}`
[INFO] [stderr] note: required by a bound in `try_recover`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   | pub trait ReshapeUnion<S, E>
[INFO] [stderr] ...
[INFO] [stderr]   |     fn try_recover<Target, Other, Index, OtherIndex>(
[INFO] [stderr]   |         self,
[INFO] [stderr]   |         f: impl RecoveryHandler<Target, E, Index, Result<S, ErrorUnion<Other>>>,
[INFO] [stderr]   |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ReshapeUnion::try_recover`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/trybuild/cannot_union_into_empty_set.rs [should fail to compile] ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: Contains<MsgError, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_union_into_empty_set.rs:5:42
[INFO] [stderr]   |
[INFO] [stderr] 5 |     let _: eros::Result<(), ()> = result.union();
[INFO] [stderr]   |                                          ^^^^^ the trait `Contains<MsgError, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `Contains<T, eros::type_set::End>` is implemented for `AnyError`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<T> Contains<T, End> for AnyError {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] note: required by a bound in `union`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   |     fn union<Other, Index>(self) -> Result<S, ErrorUnion<Other>>
[INFO] [stderr]   |        ----- required by a bound in this associated function
[INFO] [stderr] ...
[INFO] [stderr]   |         Other::Variants: Contains<F, Index>;
[INFO] [stderr]   |                          ^^^^^^^^^^^^^^^^^^ required by this bound in `IntoUnion::union`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: Contains<MsgError, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_union_into_empty_set.rs:5:42
[INFO] [stderr]   |
[INFO] [stderr] 5 |     let _: eros::Result<(), ()> = result.union();
[INFO] [stderr]   |                                          ^^^^^ the trait `Contains<MsgError, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `Contains<T, eros::type_set::End>` is implemented for `AnyError`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<T> Contains<T, End> for AnyError {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] note: required by a bound in `union`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   | pub trait IntoUnion<S, F> {
[INFO] [stderr]   |     /// Wraps the result's error in a union whose error set is inferred from the destination.
[INFO] [stderr]   |     fn union<Other, Index>(self) -> Result<S, ErrorUnion<Other>>
[INFO] [stderr] ...
[INFO] [stderr]   |         Other::Variants: Contains<F, Index>;
[INFO] [stderr]   |                          ^^^^^^^^^^^^^^^^^^ required by this bound in `IntoUnion::union`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/trybuild/cannot_union_unlisted_error.rs [should fail to compile] ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: Contains<MsgError, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_union_unlisted_error.rs:5:58
[INFO] [stderr]   |
[INFO] [stderr] 5 |     let _: eros::Result<(), (std::fmt::Error,)> = result.union();
[INFO] [stderr]   |                                                          ^^^^^ the trait `Contains<MsgError, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `Contains<T, eros::type_set::End>` is implemented for `AnyError`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<T> Contains<T, End> for AnyError {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `Contains<MsgError, eros::type_set::Cons<_, ()>>`
[INFO] [stderr] note: required by a bound in `union`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   |     fn union<Other, Index>(self) -> Result<S, ErrorUnion<Other>>
[INFO] [stderr]   |        ----- required by a bound in this associated function
[INFO] [stderr] ...
[INFO] [stderr]   |         Other::Variants: Contains<F, Index>;
[INFO] [stderr]   |                          ^^^^^^^^^^^^^^^^^^ required by this bound in `IntoUnion::union`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: Contains<MsgError, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_union_unlisted_error.rs:5:58
[INFO] [stderr]   |
[INFO] [stderr] 5 |     let _: eros::Result<(), (std::fmt::Error,)> = result.union();
[INFO] [stderr]   |                                                          ^^^^^ the trait `Contains<MsgError, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `Contains<T, eros::type_set::End>` is implemented for `AnyError`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<T> Contains<T, End> for AnyError {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `Contains<MsgError, eros::type_set::Cons<_, ()>>`
[INFO] [stderr] note: required by a bound in `union`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   | pub trait IntoUnion<S, F> {
[INFO] [stderr]   |     /// Wraps the result's error in a union whose error set is inferred from the destination.
[INFO] [stderr]   |     fn union<Other, Index>(self) -> Result<S, ErrorUnion<Other>>
[INFO] [stderr] ...
[INFO] [stderr]   |         Other::Variants: Contains<F, Index>;
[INFO] [stderr]   |                          ^^^^^^^^^^^^^^^^^^ required by this bound in `IntoUnion::union`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/trybuild/cannot_widen_to_smaller_set.rs [should fail to compile] ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: SupersetOf<eros::type_set::Cons<MsgError, eros::type_set::End>, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_widen_to_smaller_set.rs:5:51
[INFO] [stderr]   |
[INFO] [stderr] 5 |     let _: ErrorUnion<(std::fmt::Error,)> = error.widen();
[INFO] [stderr]   |                                                   ^^^^^ the trait `SupersetOf<eros::type_set::Cons<MsgError, eros::type_set::End>, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |
[INFO] [stderr] help: `AnyError` implements trait `SupersetOf<Other, Index>`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   |   impl SupersetOf<AnyError, End> for AnyError {
[INFO] [stderr]   |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `SupersetOf<AnyError, eros::type_set::End>`
[INFO] [stderr] ...
[INFO] [stderr]   | / impl<Head, Tail, TailIndex> SupersetOf<Cons<Head, Tail>, Cons<End, TailIndex>> for AnyError
[INFO] [stderr]   | | where
[INFO] [stderr]   | |     Head: SendSyncError,
[INFO] [stderr]   | |     AnyError: SupersetOf<Tail, TailIndex>,
[INFO] [stderr]   | |__________________________________________^ `SupersetOf<eros::type_set::Cons<Head, Tail>, eros::type_set::Cons<eros::type_set::End, TailIndex>>`
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `SupersetOf<eros::type_set::Cons<std::fmt::Error, eros::type_set::Cons<MsgError, eros::type_set::End>>, eros::type_set::Cons<eros::type_set::End, _>>`
[INFO] [stderr] note: required by a bound in `ErrorUnion::<E>::widen`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   |     pub fn widen<Other, Index>(self) -> ErrorUnion<Other>
[INFO] [stderr]   |            ----- required by a bound in this associated function
[INFO] [stderr] ...
[INFO] [stderr]   |         Other::Variants: SupersetOf<E::Variants, Index>,
[INFO] [stderr]   |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ErrorUnion::<E>::widen`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::End: SupersetOf<eros::type_set::Cons<MsgError, eros::type_set::End>, _>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/cannot_widen_to_smaller_set.rs:5:51
[INFO] [stderr]   |
[INFO] [stderr] 5 |     let _: ErrorUnion<(std::fmt::Error,)> = error.widen();
[INFO] [stderr]   |                                                   ^^^^^ the trait `SupersetOf<eros::type_set::Cons<MsgError, eros::type_set::End>, _>` is not implemented for `eros::type_set::End`
[INFO] [stderr]   |
[INFO] [stderr] help: `AnyError` implements trait `SupersetOf<Other, Index>`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   |   impl SupersetOf<AnyError, End> for AnyError {
[INFO] [stderr]   |   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `SupersetOf<AnyError, eros::type_set::End>`
[INFO] [stderr] ...
[INFO] [stderr]   | / impl<Head, Tail, TailIndex> SupersetOf<Cons<Head, Tail>, Cons<End, TailIndex>> for AnyError
[INFO] [stderr]   | | where
[INFO] [stderr]   | |     Head: SendSyncError,
[INFO] [stderr]   | |     AnyError: SupersetOf<Tail, TailIndex>,
[INFO] [stderr]   | |__________________________________________^ `SupersetOf<eros::type_set::Cons<Head, Tail>, eros::type_set::Cons<eros::type_set::End, TailIndex>>`
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::fmt::Error, eros::type_set::End>` to implement `SupersetOf<eros::type_set::Cons<std::fmt::Error, eros::type_set::Cons<MsgError, eros::type_set::End>>, eros::type_set::Cons<eros::type_set::End, _>>`
[INFO] [stderr] note: required by a bound in `ErrorUnion::<E>::widen`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<E> ErrorUnion<E>
[INFO] [stderr] ...
[INFO] [stderr]   |     pub fn widen<Other, Index>(self) -> ErrorUnion<Other>
[INFO] [stderr] ...
[INFO] [stderr]   |         Other::Variants: SupersetOf<E::Variants, Index>,
[INFO] [stderr]   |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ErrorUnion::<E>::widen`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/trybuild/context_rejects_annotated_destructuring.rs [should fail to compile] ... ok
[INFO] [stderr] test tests/trybuild/context_rejects_duplicate_fmt.rs [should fail to compile] ... ok
[INFO] [stderr] test tests/trybuild/context_rejects_malformed_fmt.rs [should fail to compile] ... ok
[INFO] [stderr] test tests/trybuild/context_requires_display.rs [should fail to compile] ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: `NotDisplay` doesn't implement `std::fmt::Display`
[INFO] [stderr]  --> tests/trybuild/context_requires_display.rs:3:29
[INFO] [stderr]   |
[INFO] [stderr] 3 | #[eros::context("value={}", value)]
[INFO] [stderr]   |                        --   ^^^^^ `NotDisplay` cannot be formatted with the default formatter
[INFO] [stderr]   |                        |
[INFO] [stderr]   |                        required by this formatting parameter
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `std::fmt::Display` is not implemented for `NotDisplay`
[INFO] [stderr]  --> tests/trybuild/context_requires_display.rs:1:1
[INFO] [stderr]   |
[INFO] [stderr] 1 | struct NotDisplay;
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^
[INFO] [stderr]   = note: in format strings you may be able to use `{:?}` (or {:#?} for pretty-print) instead
[INFO] [stderr]   = note: required for `&NotDisplay` to implement `std::fmt::Display`
[INFO] [stderr]   = note: this error originates in the macro `$crate::__export::format_args` which comes from the expansion of the attribute macro `eros::context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `NotDisplay` doesn't implement `std::fmt::Display`
[INFO] [stderr]   --> tests/trybuild/context_requires_display.rs:10:27
[INFO] [stderr]    |
[INFO] [stderr]  9 | #[eros::eager_context]
[INFO] [stderr]    | ---------------------- in this attribute macro expansion
[INFO] [stderr] 10 | fn automatic(#[fmt("{}")] value: NotDisplay) -> eros::Result<()> {
[INFO] [stderr]    |                           ^^^^^ `NotDisplay` cannot be formatted with the default formatter
[INFO] [stderr]    |
[INFO] [stderr] help: the trait `std::fmt::Display` is not implemented for `NotDisplay`
[INFO] [stderr]   --> tests/trybuild/context_requires_display.rs:1:1
[INFO] [stderr]    |
[INFO] [stderr]  1 | struct NotDisplay;
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^
[INFO] [stderr]    = note: in format strings you may be able to use `{:?}` (or {:#?} for pretty-print) instead
[INFO] [stderr]    = note: this error originates in the macro `$crate::__export::format_args` which comes from the expansion of the attribute macro `eros::eager_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: `NotDisplay` doesn't implement `std::fmt::Display`
[INFO] [stderr]  --> tests/trybuild/context_requires_display.rs:3:29
[INFO] [stderr]   |
[INFO] [stderr] 3 | #[eros::context("value={}", value)]
[INFO] [stderr]   |                        --   ^^^^^ `NotDisplay` cannot be formatted with the default formatter
[INFO] [stderr]   |                        |
[INFO] [stderr]   |                        required by this formatting parameter
[INFO] [stderr]   |
[INFO] [stderr] help: the trait `std::fmt::Display` is not implemented for `NotDisplay`
[INFO] [stderr]  --> tests/trybuild/context_requires_display.rs:1:1
[INFO] [stderr]   |
[INFO] [stderr] 1 | struct NotDisplay;
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^
[INFO] [stderr]   = note: in format strings you may be able to use `{:?}` (or `{:#?}` for pretty-print) instead
[INFO] [stderr]   = note: required for `&NotDisplay` to implement `std::fmt::Display`
[INFO] [stderr]   = note: this error originates in the macro `$crate::__export::format_args` which comes from the expansion of the attribute macro `eros::context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `NotDisplay` doesn't implement `std::fmt::Display`
[INFO] [stderr]   --> tests/trybuild/context_requires_display.rs:10:27
[INFO] [stderr]    |
[INFO] [stderr]  9 | #[eros::eager_context]
[INFO] [stderr]    | ---------------------- in this attribute macro expansion
[INFO] [stderr] 10 | fn automatic(#[fmt("{}")] value: NotDisplay) -> eros::Result<()> {
[INFO] [stderr]    |                           ^^^^^ `NotDisplay` cannot be formatted with the default formatter
[INFO] [stderr]    |
[INFO] [stderr] help: the trait `std::fmt::Display` is not implemented for `NotDisplay`
[INFO] [stderr]   --> tests/trybuild/context_requires_display.rs:1:1
[INFO] [stderr]    |
[INFO] [stderr]  1 | struct NotDisplay;
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^
[INFO] [stderr]    = note: in format strings you may be able to use `{:?}` (or `{:#?}` for pretty-print) instead
[INFO] [stderr]    = note: this error originates in the macro `$crate::__export::format_args` which comes from the expansion of the attribute macro `eros::eager_context` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/trybuild/context_requires_format_or_annotations.rs [should fail to compile] ... ok
[INFO] [stderr] test tests/trybuild/context_requires_literal_format.rs [should fail to compile] ... ok
[INFO] [stderr] test tests/trybuild/eager_context_requires_format_or_annotations.rs [should fail to compile] ... ok
[INFO] [stderr] test tests/trybuild/error_macro_rejects_bare_string.rs [should fail to compile] ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `&str: SendSyncError` is not satisfied
[INFO] [stderr]  --> tests/trybuild/error_macro_rejects_bare_string.rs:4:13
[INFO] [stderr]   |
[INFO] [stderr] 4 |     let _ = eros::error!(MESSAGE);
[INFO] [stderr]   |             ^^^^^^^^^^^^^^^^^^^^^ the trait `std::error::Error` is not implemented for `str`
[INFO] [stderr]   |
[INFO] [stderr]   = note: required for `&str` to implement `std::error::Error`
[INFO] [stderr]   = note: required for `&str` to implement `SendSyncError`
[INFO] [stderr] note: required by a bound in `ErrorUnion::new`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   |     pub fn new<T, OutSet, Index>(t: T) -> ErrorUnion<OutSet>
[INFO] [stderr]   |            --- required by a bound in this associated function
[INFO] [stderr]   |     where
[INFO] [stderr]   |         T: SendSyncError,
[INFO] [stderr]   |            ^^^^^^^^^^^^^ required by this bound in `ErrorUnion::new`
[INFO] [stderr]   = note: this error originates in the macro `eros::error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `&str: SendSyncError` is not satisfied
[INFO] [stderr]  --> tests/trybuild/error_macro_rejects_bare_string.rs:5:13
[INFO] [stderr]   |
[INFO] [stderr] 5 |     let _ = eros::error!(message);
[INFO] [stderr]   |             ^^^^^^^^^^^^^^^^^^^^^ the trait `std::error::Error` is not implemented for `str`
[INFO] [stderr]   |
[INFO] [stderr]   = note: required for `&str` to implement `std::error::Error`
[INFO] [stderr]   = note: required for `&str` to implement `SendSyncError`
[INFO] [stderr] note: required by a bound in `ErrorUnion::new`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   |     pub fn new<T, OutSet, Index>(t: T) -> ErrorUnion<OutSet>
[INFO] [stderr]   |            --- required by a bound in this associated function
[INFO] [stderr]   |     where
[INFO] [stderr]   |         T: SendSyncError,
[INFO] [stderr]   |            ^^^^^^^^^^^^^ required by this bound in `ErrorUnion::new`
[INFO] [stderr]   = note: this error originates in the macro `eros::error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `&str: SendSyncError` is not satisfied
[INFO] [stderr]  --> tests/trybuild/error_macro_rejects_bare_string.rs:4:13
[INFO] [stderr]   |
[INFO] [stderr] 4 |     let _ = eros::error!(MESSAGE);
[INFO] [stderr]   |             ^^^^^^^^^^^^^^^^^^^^^ the trait `std::error::Error` is not implemented for `str`
[INFO] [stderr]   |
[INFO] [stderr]   = note: required for `&str` to implement `std::error::Error`
[INFO] [stderr]   = note: required for `&str` to implement `SendSyncError`
[INFO] [stderr] note: required by a bound in `ErrorUnion::new`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl ErrorUnion {
[INFO] [stderr] ...
[INFO] [stderr]   |     pub fn new<T, OutSet, Index>(t: T) -> ErrorUnion<OutSet>
[INFO] [stderr]   |     where
[INFO] [stderr]   |         T: SendSyncError,
[INFO] [stderr]   |            ^^^^^^^^^^^^^ required by this bound in `ErrorUnion::new`
[INFO] [stderr]   = note: this error originates in the macro `eros::error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `&str: SendSyncError` is not satisfied
[INFO] [stderr]  --> tests/trybuild/error_macro_rejects_bare_string.rs:5:13
[INFO] [stderr]   |
[INFO] [stderr] 5 |     let _ = eros::error!(message);
[INFO] [stderr]   |             ^^^^^^^^^^^^^^^^^^^^^ the trait `std::error::Error` is not implemented for `str`
[INFO] [stderr]   |
[INFO] [stderr]   = note: required for `&str` to implement `std::error::Error`
[INFO] [stderr]   = note: required for `&str` to implement `SendSyncError`
[INFO] [stderr] note: required by a bound in `ErrorUnion::new`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl ErrorUnion {
[INFO] [stderr] ...
[INFO] [stderr]   |     pub fn new<T, OutSet, Index>(t: T) -> ErrorUnion<OutSet>
[INFO] [stderr]   |     where
[INFO] [stderr]   |         T: SendSyncError,
[INFO] [stderr]   |            ^^^^^^^^^^^^^ required by this bound in `ErrorUnion::new`
[INFO] [stderr]   = note: this error originates in the macro `eros::error` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/trybuild/error_macro_rejects_invalid_format.rs [should fail to compile] ... ok
[INFO] [stderr] test tests/trybuild/error_union_cannot_add_non_error.rs [should fail to compile] ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `u16: std::error::Error` is not satisfied
[INFO] [stderr]  --> tests/trybuild/error_union_cannot_add_non_error.rs:4:12
[INFO] [stderr]   |
[INFO] [stderr] 4 |     let _: ErrorUnion<(u16, std::io::Error)> = ErrorUnion::new(std::io::Error::other("error"));
[INFO] [stderr]   |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `std::error::Error` is not implemented for `u16`
[INFO] [stderr]   |
[INFO] [stderr]   = help: the following other types implement trait `TypeSet`:
[INFO] [stderr]             ()
[INFO] [stderr]             (A, B)
[INFO] [stderr]             (A, B, C)
[INFO] [stderr]             (A, B, C, D)
[INFO] [stderr]             (A, B, C, D, E)
[INFO] [stderr]             (A, B, C, D, E, F)
[INFO] [stderr]             (A, B, C, D, E, F, G)
[INFO] [stderr]             (A, B, C, D, E, F, G, H)
[INFO] [stderr]           and $N others
[INFO] [stderr]   = note: required for `u16` to implement `SendSyncError`
[INFO] [stderr]   = note: required for `(u16, std::io::Error)` to implement `TypeSet`
[INFO] [stderr] note: required by a bound in `ErrorUnion`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   | pub struct ErrorUnion<E: TypeSet = AnyError> {
[INFO] [stderr]   |                          ^^^^^^^ required by this bound in `ErrorUnion`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `u16: std::error::Error` is not satisfied
[INFO] [stderr]  --> tests/trybuild/error_union_cannot_add_non_error.rs:4:48
[INFO] [stderr]   |
[INFO] [stderr] 4 |     let _: ErrorUnion<(u16, std::io::Error)> = ErrorUnion::new(std::io::Error::other("error"));
[INFO] [stderr]   |                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `std::error::Error` is not implemented for `u16`
[INFO] [stderr]   |
[INFO] [stderr]   = help: the following other types implement trait `TypeSet`:
[INFO] [stderr]             ()
[INFO] [stderr]             (A, B)
[INFO] [stderr]             (A, B, C)
[INFO] [stderr]             (A, B, C, D)
[INFO] [stderr]             (A, B, C, D, E)
[INFO] [stderr]             (A, B, C, D, E, F)
[INFO] [stderr]             (A, B, C, D, E, F, G)
[INFO] [stderr]             (A, B, C, D, E, F, G, H)
[INFO] [stderr]           and $N others
[INFO] [stderr]   = note: required for `u16` to implement `SendSyncError`
[INFO] [stderr]   = note: required for `(u16, std::io::Error)` to implement `TypeSet`
[INFO] [stderr] note: required by a bound in `ErrorUnion::new`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   |     pub fn new<T, OutSet, Index>(t: T) -> ErrorUnion<OutSet>
[INFO] [stderr]   |            --- required by a bound in this associated function
[INFO] [stderr] ...
[INFO] [stderr]   |         OutSet: TypeSet,
[INFO] [stderr]   |                 ^^^^^^^ required by this bound in `ErrorUnion::new`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `u16: SendSyncError` is not satisfied
[INFO] [stderr]  --> tests/trybuild/error_union_cannot_add_non_error.rs:7:13
[INFO] [stderr]   |
[INFO] [stderr] 7 |     let _ = error.widen::<(std::io::Error, u16), _>();
[INFO] [stderr]   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `std::error::Error` is not implemented for `u16`
[INFO] [stderr]   |
[INFO] [stderr]   = help: the following other types implement trait `TypeSet`:
[INFO] [stderr]             ()
[INFO] [stderr]             (A, B)
[INFO] [stderr]             (A, B, C)
[INFO] [stderr]             (A, B, C, D)
[INFO] [stderr]             (A, B, C, D, E)
[INFO] [stderr]             (A, B, C, D, E, F)
[INFO] [stderr]             (A, B, C, D, E, F, G)
[INFO] [stderr]             (A, B, C, D, E, F, G, H)
[INFO] [stderr]           and $N others
[INFO] [stderr]   = note: required for `u16` to implement `SendSyncError`
[INFO] [stderr]   = note: required for `(std::io::Error, u16)` to implement `TypeSet`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::Cons<std::io::Error, eros::type_set::Cons<u16, eros::type_set::End>>: SupersetOf<eros::type_set::Cons<std::io::Error, eros::type_set::End>, eros::type_set::Cons<_, _>>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/error_union_cannot_add_non_error.rs:7:19
[INFO] [stderr]   |
[INFO] [stderr] 7 |     let _ = error.widen::<(std::io::Error, u16), _>();
[INFO] [stderr]   |                   ^^^^^ unsatisfied trait bound
[INFO] [stderr]   |
[INFO] [stderr]   = help: the trait `Narrow<std::io::Error, _>` is not implemented for `eros::type_set::Cons<std::io::Error, eros::type_set::Cons<u16, eros::type_set::End>>`
[INFO] [stderr] help: the following other types implement trait `Narrow<T, Index>`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | / impl<Target, Tail> Narrow<Target, End> for Cons<Target, Tail>
[INFO] [stderr]   | | where
[INFO] [stderr]   | |     Tail: TupleForm,
[INFO] [stderr]   | |     Cons<Target, Tail>: TupleForm,
[INFO] [stderr]   | |__________________________________^ `eros::type_set::Cons<Target, Tail>` implements `Narrow<Target, eros::type_set::End>`
[INFO] [stderr] ...
[INFO] [stderr]   | / impl<Head, Tail, Target, Index> Narrow<Target, Recurse<Index>> for Cons<Head, Tail>
[INFO] [stderr]   | | where
[INFO] [stderr]   | |     Tail: Narrow<Target, Index>,
[INFO] [stderr]   | |     Tail: TupleForm,
[INFO] [stderr]   | |     Cons<Head, Tail>: TupleForm,
[INFO] [stderr]   | |     Cons<Head, <Tail as Narrow<Target, Index>>::Remainder>: TupleForm,
[INFO] [stderr]   | |______________________________________________________________________^ `eros::type_set::Cons<Head, Tail>` implements `Narrow<Target, eros::type_set::Recurse<Index>>`
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::io::Error, eros::type_set::Cons<u16, eros::type_set::End>>` to implement `SupersetOf<eros::type_set::Cons<std::io::Error, eros::type_set::End>, eros::type_set::Cons<_, _>>`
[INFO] [stderr] note: required by a bound in `ErrorUnion::<E>::widen`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   |     pub fn widen<Other, Index>(self) -> ErrorUnion<Other>
[INFO] [stderr]   |            ----- required by a bound in this associated function
[INFO] [stderr] ...
[INFO] [stderr]   |         Other::Variants: SupersetOf<E::Variants, Index>,
[INFO] [stderr]   |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ErrorUnion::<E>::widen`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::Cons<std::io::Error, eros::type_set::Cons<u16, eros::type_set::End>>: SupersetOf<eros::type_set::Cons<std::io::Error, eros::type_set::End>, eros::type_set::Cons<_, _>>` is not satisfied
[INFO] [stderr]   --> tests/trybuild/error_union_cannot_add_non_error.rs:13:28
[INFO] [stderr]    |
[INFO] [stderr] 13 |     let _ = result.widen::<(std::io::Error, u16), _>();
[INFO] [stderr]    |                            ^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Narrow<std::io::Error, _>` is not implemented for `eros::type_set::Cons<std::io::Error, eros::type_set::Cons<u16, eros::type_set::End>>`
[INFO] [stderr] help: the following other types implement trait `Narrow<T, Index>`
[INFO] [stderr]   --> src/type_set.rs
[INFO] [stderr]    |
[INFO] [stderr]    | / impl<Target, Tail> Narrow<Target, End> for Cons<Target, Tail>
[INFO] [stderr]    | | where
[INFO] [stderr]    | |     Tail: TupleForm,
[INFO] [stderr]    | |     Cons<Target, Tail>: TupleForm,
[INFO] [stderr]    | |__________________________________^ `eros::type_set::Cons<Target, Tail>` implements `Narrow<Target, eros::type_set::End>`
[INFO] [stderr] ...
[INFO] [stderr]    | / impl<Head, Tail, Target, Index> Narrow<Target, Recurse<Index>> for Cons<Head, Tail>
[INFO] [stderr]    | | where
[INFO] [stderr]    | |     Tail: Narrow<Target, Index>,
[INFO] [stderr]    | |     Tail: TupleForm,
[INFO] [stderr]    | |     Cons<Head, Tail>: TupleForm,
[INFO] [stderr]    | |     Cons<Head, <Tail as Narrow<Target, Index>>::Remainder>: TupleForm,
[INFO] [stderr]    | |______________________________________________________________________^ `eros::type_set::Cons<Head, Tail>` implements `Narrow<Target, eros::type_set::Recurse<Index>>`
[INFO] [stderr]    = note: required for `eros::type_set::Cons<std::io::Error, eros::type_set::Cons<u16, eros::type_set::End>>` to implement `SupersetOf<eros::type_set::Cons<std::io::Error, eros::type_set::End>, eros::type_set::Cons<_, _>>`
[INFO] [stderr] note: required by a bound in `widen`
[INFO] [stderr]   --> src/error_union.rs
[INFO] [stderr]    |
[INFO] [stderr]    |     fn widen<Other, Index>(self) -> Result<S, ErrorUnion<Other>>
[INFO] [stderr]    |        ----- required by a bound in this associated function
[INFO] [stderr] ...
[INFO] [stderr]    |         Other::Variants: SupersetOf<E::Variants, Index>;
[INFO] [stderr]    |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ReshapeUnion::widen`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `u16: std::error::Error` is not satisfied
[INFO] [stderr]  --> tests/trybuild/error_union_cannot_add_non_error.rs:4:12
[INFO] [stderr]   |
[INFO] [stderr] 4 |     let _: ErrorUnion<(u16, std::io::Error)> = ErrorUnion::new(std::io::Error::other("error"));
[INFO] [stderr]   |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `std::error::Error` is not implemented for `u16`
[INFO] [stderr]   |
[INFO] [stderr]   = help: the following other types implement trait `TypeSet`:
[INFO] [stderr]             (T₁, T₂, …, Tₙ) up to tuples of arity 26
[INFO] [stderr]   = note: required for `u16` to implement `SendSyncError`
[INFO] [stderr]   = note: required for `(u16, std::io::Error)` to implement `TypeSet`
[INFO] [stderr] note: required by a bound in `ErrorUnion`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   | pub struct ErrorUnion<E: TypeSet = AnyError> {
[INFO] [stderr]   |                          ^^^^^^^ required by this bound in `ErrorUnion`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `u16: std::error::Error` is not satisfied
[INFO] [stderr]  --> tests/trybuild/error_union_cannot_add_non_error.rs:4:48
[INFO] [stderr]   |
[INFO] [stderr] 4 |     let _: ErrorUnion<(u16, std::io::Error)> = ErrorUnion::new(std::io::Error::other("error"));
[INFO] [stderr]   |                                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `std::error::Error` is not implemented for `u16`
[INFO] [stderr]   |
[INFO] [stderr]   = help: the following other types implement trait `TypeSet`:
[INFO] [stderr]             (T₁, T₂, …, Tₙ) up to tuples of arity 26
[INFO] [stderr]   = note: required for `u16` to implement `SendSyncError`
[INFO] [stderr]   = note: required for `(u16, std::io::Error)` to implement `TypeSet`
[INFO] [stderr] note: required by a bound in `ErrorUnion::new`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl ErrorUnion {
[INFO] [stderr] ...
[INFO] [stderr]   |     pub fn new<T, OutSet, Index>(t: T) -> ErrorUnion<OutSet>
[INFO] [stderr] ...
[INFO] [stderr]   |         OutSet: TypeSet,
[INFO] [stderr]   |                 ^^^^^^^ required by this bound in `ErrorUnion::new`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `u16: SendSyncError` is not satisfied
[INFO] [stderr]  --> tests/trybuild/error_union_cannot_add_non_error.rs:7:13
[INFO] [stderr]   |
[INFO] [stderr] 7 |     let _ = error.widen::<(std::io::Error, u16), _>();
[INFO] [stderr]   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `std::error::Error` is not implemented for `u16`
[INFO] [stderr]   |
[INFO] [stderr]   = help: the following other types implement trait `TypeSet`:
[INFO] [stderr]             (T₁, T₂, …, Tₙ) up to tuples of arity 26
[INFO] [stderr]   = note: required for `u16` to implement `SendSyncError`
[INFO] [stderr]   = note: required for `(std::io::Error, u16)` to implement `TypeSet`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::Cons<std::io::Error, eros::type_set::Cons<u16, eros::type_set::End>>: SupersetOf<eros::type_set::Cons<std::io::Error, eros::type_set::End>, eros::type_set::Cons<_, _>>` is not satisfied
[INFO] [stderr]  --> tests/trybuild/error_union_cannot_add_non_error.rs:7:19
[INFO] [stderr]   |
[INFO] [stderr] 7 |     let _ = error.widen::<(std::io::Error, u16), _>();
[INFO] [stderr]   |                   ^^^^^ unsatisfied trait bound
[INFO] [stderr]   |
[INFO] [stderr]   = help: the trait `Narrow<std::io::Error, _>` is not implemented for `eros::type_set::Cons<std::io::Error, eros::type_set::Cons<u16, eros::type_set::End>>`
[INFO] [stderr] help: the following other types implement trait `Narrow<T, Index>`
[INFO] [stderr]  --> src/type_set.rs
[INFO] [stderr]   |
[INFO] [stderr]   | / impl<Target, Tail> Narrow<Target, End> for Cons<Target, Tail>
[INFO] [stderr]   | | where
[INFO] [stderr]   | |     Tail: TupleForm,
[INFO] [stderr]   | |     Cons<Target, Tail>: TupleForm,
[INFO] [stderr]   | |__________________________________^ `eros::type_set::Cons<Target, Tail>` implements `Narrow<Target, eros::type_set::End>`
[INFO] [stderr] ...
[INFO] [stderr]   | / impl<Head, Tail, Target, Index> Narrow<Target, Recurse<Index>> for Cons<Head, Tail>
[INFO] [stderr]   | | where
[INFO] [stderr]   | |     Tail: Narrow<Target, Index>,
[INFO] [stderr]   | |     Tail: TupleForm,
[INFO] [stderr]   | |     Cons<Head, Tail>: TupleForm,
[INFO] [stderr]   | |     Cons<Head, <Tail as Narrow<Target, Index>>::Remainder>: TupleForm,
[INFO] [stderr]   | |______________________________________________________________________^ `eros::type_set::Cons<Head, Tail>` implements `Narrow<Target, eros::type_set::Recurse<Index>>`
[INFO] [stderr]   = note: required for `eros::type_set::Cons<std::io::Error, eros::type_set::Cons<u16, eros::type_set::End>>` to implement `SupersetOf<eros::type_set::Cons<std::io::Error, eros::type_set::End>, eros::type_set::Cons<_, _>>`
[INFO] [stderr] note: required by a bound in `ErrorUnion::<E>::widen`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl<E> ErrorUnion<E>
[INFO] [stderr] ...
[INFO] [stderr]   |     pub fn widen<Other, Index>(self) -> ErrorUnion<Other>
[INFO] [stderr] ...
[INFO] [stderr]   |         Other::Variants: SupersetOf<E::Variants, Index>,
[INFO] [stderr]   |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ErrorUnion::<E>::widen`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `eros::type_set::Cons<std::io::Error, eros::type_set::Cons<u16, eros::type_set::End>>: SupersetOf<eros::type_set::Cons<std::io::Error, eros::type_set::End>, eros::type_set::Cons<_, _>>` is not satisfied
[INFO] [stderr]   --> tests/trybuild/error_union_cannot_add_non_error.rs:13:28
[INFO] [stderr]    |
[INFO] [stderr] 13 |     let _ = result.widen::<(std::io::Error, u16), _>();
[INFO] [stderr]    |                            ^^^^^^^^^^^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Narrow<std::io::Error, _>` is not implemented for `eros::type_set::Cons<std::io::Error, eros::type_set::Cons<u16, eros::type_set::End>>`
[INFO] [stderr] help: the following other types implement trait `Narrow<T, Index>`
[INFO] [stderr]   --> src/type_set.rs
[INFO] [stderr]    |
[INFO] [stderr]    | / impl<Target, Tail> Narrow<Target, End> for Cons<Target, Tail>
[INFO] [stderr]    | | where
[INFO] [stderr]    | |     Tail: TupleForm,
[INFO] [stderr]    | |     Cons<Target, Tail>: TupleForm,
[INFO] [stderr]    | |__________________________________^ `eros::type_set::Cons<Target, Tail>` implements `Narrow<Target, eros::type_set::End>`
[INFO] [stderr] ...
[INFO] [stderr]    | / impl<Head, Tail, Target, Index> Narrow<Target, Recurse<Index>> for Cons<Head, Tail>
[INFO] [stderr]    | | where
[INFO] [stderr]    | |     Tail: Narrow<Target, Index>,
[INFO] [stderr]    | |     Tail: TupleForm,
[INFO] [stderr]    | |     Cons<Head, Tail>: TupleForm,
[INFO] [stderr]    | |     Cons<Head, <Tail as Narrow<Target, Index>>::Remainder>: TupleForm,
[INFO] [stderr]    | |______________________________________________________________________^ `eros::type_set::Cons<Head, Tail>` implements `Narrow<Target, eros::type_set::Recurse<Index>>`
[INFO] [stderr]    = note: required for `eros::type_set::Cons<std::io::Error, eros::type_set::Cons<u16, eros::type_set::End>>` to implement `SupersetOf<eros::type_set::Cons<std::io::Error, eros::type_set::End>, eros::type_set::Cons<_, _>>`
[INFO] [stderr] note: required by a bound in `widen`
[INFO] [stderr]   --> src/error_union.rs
[INFO] [stderr]    |
[INFO] [stderr]    | pub trait ReshapeUnion<S, E>
[INFO] [stderr] ...
[INFO] [stderr]    |     fn widen<Other, Index>(self) -> Result<S, ErrorUnion<Other>>
[INFO] [stderr] ...
[INFO] [stderr]    |         Other::Variants: SupersetOf<E::Variants, Index>;
[INFO] [stderr]    |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ReshapeUnion::widen`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/trybuild/error_union_requires_errors.rs [should fail to compile] ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `u16: std::error::Error` is not satisfied
[INFO] [stderr]  --> tests/trybuild/error_union_requires_errors.rs:3:21
[INFO] [stderr]   |
[INFO] [stderr] 3 | fn single(_: Option<ErrorUnion<(u16,)>>) {}
[INFO] [stderr]   |                     ^^^^^^^^^^^^^^^^^^ the trait `std::error::Error` is not implemented for `u16`
[INFO] [stderr]   |
[INFO] [stderr]   = help: the following other types implement trait `TypeSet`:
[INFO] [stderr]             ()
[INFO] [stderr]             (A, B)
[INFO] [stderr]             (A, B, C)
[INFO] [stderr]             (A, B, C, D)
[INFO] [stderr]             (A, B, C, D, E)
[INFO] [stderr]             (A, B, C, D, E, F)
[INFO] [stderr]             (A, B, C, D, E, F, G)
[INFO] [stderr]             (A, B, C, D, E, F, G, H)
[INFO] [stderr]           and $N others
[INFO] [stderr]   = note: required for `u16` to implement `SendSyncError`
[INFO] [stderr]   = note: required for `(u16,)` to implement `TypeSet`
[INFO] [stderr] note: required by a bound in `ErrorUnion`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   | pub struct ErrorUnion<E: TypeSet = AnyError> {
[INFO] [stderr]   |                          ^^^^^^^ required by this bound in `ErrorUnion`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `u16: std::error::Error` is not satisfied
[INFO] [stderr]  --> tests/trybuild/error_union_requires_errors.rs:5:30
[INFO] [stderr]   |
[INFO] [stderr] 5 | fn non_error_first(_: Option<ErrorUnion<(u16, std::io::Error)>>) {}
[INFO] [stderr]   |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `std::error::Error` is not implemented for `u16`
[INFO] [stderr]   |
[INFO] [stderr]   = help: the following other types implement trait `TypeSet`:
[INFO] [stderr]             ()
[INFO] [stderr]             (A, B)
[INFO] [stderr]             (A, B, C)
[INFO] [stderr]             (A, B, C, D)
[INFO] [stderr]             (A, B, C, D, E)
[INFO] [stderr]             (A, B, C, D, E, F)
[INFO] [stderr]             (A, B, C, D, E, F, G)
[INFO] [stderr]             (A, B, C, D, E, F, G, H)
[INFO] [stderr]           and $N others
[INFO] [stderr]   = note: required for `u16` to implement `SendSyncError`
[INFO] [stderr]   = note: required for `(u16, std::io::Error)` to implement `TypeSet`
[INFO] [stderr] note: required by a bound in `ErrorUnion`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   | pub struct ErrorUnion<E: TypeSet = AnyError> {
[INFO] [stderr]   |                          ^^^^^^^ required by this bound in `ErrorUnion`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `u16: std::error::Error` is not satisfied
[INFO] [stderr]  --> tests/trybuild/error_union_requires_errors.rs:7:29
[INFO] [stderr]   |
[INFO] [stderr] 7 | fn non_error_last(_: Option<ErrorUnion<(std::io::Error, u16)>>) {}
[INFO] [stderr]   |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `std::error::Error` is not implemented for `u16`
[INFO] [stderr]   |
[INFO] [stderr]   = help: the following other types implement trait `TypeSet`:
[INFO] [stderr]             ()
[INFO] [stderr]             (A, B)
[INFO] [stderr]             (A, B, C)
[INFO] [stderr]             (A, B, C, D)
[INFO] [stderr]             (A, B, C, D, E)
[INFO] [stderr]             (A, B, C, D, E, F)
[INFO] [stderr]             (A, B, C, D, E, F, G)
[INFO] [stderr]             (A, B, C, D, E, F, G, H)
[INFO] [stderr]           and $N others
[INFO] [stderr]   = note: required for `u16` to implement `SendSyncError`
[INFO] [stderr]   = note: required for `(std::io::Error, u16)` to implement `TypeSet`
[INFO] [stderr] note: required by a bound in `ErrorUnion`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   | pub struct ErrorUnion<E: TypeSet = AnyError> {
[INFO] [stderr]   |                          ^^^^^^^ required by this bound in `ErrorUnion`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `u16: std::error::Error` is not satisfied
[INFO] [stderr]  --> tests/trybuild/error_union_requires_errors.rs:9:27
[INFO] [stderr]   |
[INFO] [stderr] 9 | fn result_alias(_: Option<eros::Result<(), (std::io::Error, u16)>>) {}
[INFO] [stderr]   |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `std::error::Error` is not implemented for `u16`
[INFO] [stderr]   |
[INFO] [stderr]   = help: the following other types implement trait `TypeSet`:
[INFO] [stderr]             ()
[INFO] [stderr]             (A, B)
[INFO] [stderr]             (A, B, C)
[INFO] [stderr]             (A, B, C, D)
[INFO] [stderr]             (A, B, C, D, E)
[INFO] [stderr]             (A, B, C, D, E, F)
[INFO] [stderr]             (A, B, C, D, E, F, G)
[INFO] [stderr]             (A, B, C, D, E, F, G, H)
[INFO] [stderr]           and $N others
[INFO] [stderr]   = note: required for `u16` to implement `SendSyncError`
[INFO] [stderr]   = note: required for `(std::io::Error, u16)` to implement `TypeSet`
[INFO] [stderr] note: required by a bound in `ErrorUnion`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   | pub struct ErrorUnion<E: TypeSet = AnyError> {
[INFO] [stderr]   |                          ^^^^^^^ required by this bound in `ErrorUnion`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `u16: std::error::Error` is not satisfied
[INFO] [stderr]   --> tests/trybuild/error_union_requires_errors.rs:15:9
[INFO] [stderr]    |
[INFO] [stderr] 15 | /         ErrorUnion<(
[INFO] [stderr] 16 | |             E,
[INFO] [stderr] 17 | |             E,
[INFO] [stderr] 18 | |             E,
[INFO] [stderr] ...  |
[INFO] [stderr] 41 | |             u16,
[INFO] [stderr] 42 | |         )>,
[INFO] [stderr]    | |__________^ the trait `std::error::Error` is not implemented for `u16`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the following other types implement trait `TypeSet`:
[INFO] [stderr]              ()
[INFO] [stderr]              (A, B)
[INFO] [stderr]              (A, B, C)
[INFO] [stderr]              (A, B, C, D)
[INFO] [stderr]              (A, B, C, D, E)
[INFO] [stderr]              (A, B, C, D, E, F)
[INFO] [stderr]              (A, B, C, D, E, F, G)
[INFO] [stderr]              (A, B, C, D, E, F, G, H)
[INFO] [stderr]            and $N others
[INFO] [stderr]    = note: required for `u16` to implement `SendSyncError`
[INFO] [stderr]    = note: required for `(std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, u16)` to implement `TypeSet`
[INFO] [stderr] note: required by a bound in `ErrorUnion`
[INFO] [stderr]   --> src/error_union.rs
[INFO] [stderr]    |
[INFO] [stderr]    | pub struct ErrorUnion<E: TypeSet = AnyError> {
[INFO] [stderr]    |                          ^^^^^^^ required by this bound in `ErrorUnion`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `u16: std::error::Error` is not satisfied
[INFO] [stderr]  --> tests/trybuild/error_union_requires_errors.rs:3:21
[INFO] [stderr]   |
[INFO] [stderr] 3 | fn single(_: Option<ErrorUnion<(u16,)>>) {}
[INFO] [stderr]   |                     ^^^^^^^^^^^^^^^^^^ the trait `std::error::Error` is not implemented for `u16`
[INFO] [stderr]   |
[INFO] [stderr]   = help: the following other types implement trait `TypeSet`:
[INFO] [stderr]             (T₁, T₂, …, Tₙ) up to tuples of arity 26
[INFO] [stderr]   = note: required for `u16` to implement `SendSyncError`
[INFO] [stderr]   = note: required for `(u16,)` to implement `TypeSet`
[INFO] [stderr] note: required by a bound in `ErrorUnion`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   | pub struct ErrorUnion<E: TypeSet = AnyError> {
[INFO] [stderr]   |                          ^^^^^^^ required by this bound in `ErrorUnion`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `u16: std::error::Error` is not satisfied
[INFO] [stderr]  --> tests/trybuild/error_union_requires_errors.rs:5:30
[INFO] [stderr]   |
[INFO] [stderr] 5 | fn non_error_first(_: Option<ErrorUnion<(u16, std::io::Error)>>) {}
[INFO] [stderr]   |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `std::error::Error` is not implemented for `u16`
[INFO] [stderr]   |
[INFO] [stderr]   = help: the following other types implement trait `TypeSet`:
[INFO] [stderr]             (T₁, T₂, …, Tₙ) up to tuples of arity 26
[INFO] [stderr]   = note: required for `u16` to implement `SendSyncError`
[INFO] [stderr]   = note: required for `(u16, std::io::Error)` to implement `TypeSet`
[INFO] [stderr] note: required by a bound in `ErrorUnion`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   | pub struct ErrorUnion<E: TypeSet = AnyError> {
[INFO] [stderr]   |                          ^^^^^^^ required by this bound in `ErrorUnion`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `u16: std::error::Error` is not satisfied
[INFO] [stderr]  --> tests/trybuild/error_union_requires_errors.rs:7:29
[INFO] [stderr]   |
[INFO] [stderr] 7 | fn non_error_last(_: Option<ErrorUnion<(std::io::Error, u16)>>) {}
[INFO] [stderr]   |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `std::error::Error` is not implemented for `u16`
[INFO] [stderr]   |
[INFO] [stderr]   = help: the following other types implement trait `TypeSet`:
[INFO] [stderr]             (T₁, T₂, …, Tₙ) up to tuples of arity 26
[INFO] [stderr]   = note: required for `u16` to implement `SendSyncError`
[INFO] [stderr]   = note: required for `(std::io::Error, u16)` to implement `TypeSet`
[INFO] [stderr] note: required by a bound in `ErrorUnion`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   | pub struct ErrorUnion<E: TypeSet = AnyError> {
[INFO] [stderr]   |                          ^^^^^^^ required by this bound in `ErrorUnion`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `u16: std::error::Error` is not satisfied
[INFO] [stderr]  --> tests/trybuild/error_union_requires_errors.rs:9:27
[INFO] [stderr]   |
[INFO] [stderr] 9 | fn result_alias(_: Option<eros::Result<(), (std::io::Error, u16)>>) {}
[INFO] [stderr]   |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `std::error::Error` is not implemented for `u16`
[INFO] [stderr]   |
[INFO] [stderr]   = help: the following other types implement trait `TypeSet`:
[INFO] [stderr]             (T₁, T₂, …, Tₙ) up to tuples of arity 26
[INFO] [stderr]   = note: required for `u16` to implement `SendSyncError`
[INFO] [stderr]   = note: required for `(std::io::Error, u16)` to implement `TypeSet`
[INFO] [stderr] note: required by a bound in `ErrorUnion`
[INFO] [stderr]  --> src/error_union.rs
[INFO] [stderr]   |
[INFO] [stderr]   | pub struct ErrorUnion<E: TypeSet = AnyError> {
[INFO] [stderr]   |                          ^^^^^^^ required by this bound in `ErrorUnion`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `u16: std::error::Error` is not satisfied
[INFO] [stderr]   --> tests/trybuild/error_union_requires_errors.rs:15:9
[INFO] [stderr]    |
[INFO] [stderr] 15 | /         ErrorUnion<(
[INFO] [stderr] 16 | |             E,
[INFO] [stderr] 17 | |             E,
[INFO] [stderr] 18 | |             E,
[INFO] [stderr] ...  |
[INFO] [stderr] 41 | |             u16,
[INFO] [stderr] 42 | |         )>,
[INFO] [stderr]    | |__________^ the trait `std::error::Error` is not implemented for `u16`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the following other types implement trait `TypeSet`:
[INFO] [stderr]              (T₁, T₂, …, Tₙ) up to tuples of arity 26
[INFO] [stderr]    = note: required for `u16` to implement `SendSyncError`
[INFO] [stderr]    = note: required for `(std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, std::fmt::Error, u16)` to implement `TypeSet`
[INFO] [stderr] note: required by a bound in `ErrorUnion`
[INFO] [stderr]   --> src/error_union.rs
[INFO] [stderr]    |
[INFO] [stderr]    | pub struct ErrorUnion<E: TypeSet = AnyError> {
[INFO] [stderr]    |                          ^^^^^^^ required by this bound in `ErrorUnion`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/trybuild/error_union_requires_send_sync.rs [should fail to compile] ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: `Rc<()>` cannot be sent between threads safely
[INFO] [stderr]   --> tests/trybuild/error_union_requires_send_sync.rs:26:28
[INFO] [stderr]    |
[INFO] [stderr] 26 | fn not_send_sync(_: Option<ErrorUnion<(std::io::Error, NotSendSync)>>) {}
[INFO] [stderr]    |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Rc<()>` cannot be sent between threads safely
[INFO] [stderr]    |
[INFO] [stderr]    = help: within `NotSendSync`, the trait `Send` is not implemented for `Rc<()>`
[INFO] [stderr]    = help: the following other types implement trait `TypeSet`:
[INFO] [stderr]              ()
[INFO] [stderr]              (A, B)
[INFO] [stderr]              (A, B, C)
[INFO] [stderr]              (A, B, C, D)
[INFO] [stderr]              (A, B, C, D, E)
[INFO] [stderr]              (A, B, C, D, E, F)
[INFO] [stderr]              (A, B, C, D, E, F, G)
[INFO] [stderr]              (A, B, C, D, E, F, G, H)
[INFO] [stderr]            and $N others
[INFO] [stderr] note: required because it appears within the type `NotSendSync`
[INFO] [stderr]   --> tests/trybuild/error_union_requires_send_sync.rs:5:8
[INFO] [stderr]    |
[INFO] [stderr]  5 | struct NotSendSync(Rc<()>);
[INFO] [stderr]    |        ^^^^^^^^^^^
[INFO] [stderr]    = note: required for `NotSendSync` to implement `SendSyncError`
[INFO] [stderr]    = note: required for `(std::io::Error, NotSendSync)` to implement `TypeSet`
[INFO] [stderr] note: required by a bound in `ErrorUnion`
[INFO] [stderr]   --> src/error_union.rs
[INFO] [stderr]    |
[INFO] [stderr]    | pub struct ErrorUnion<E: TypeSet = AnyError> {
[INFO] [stderr]    |                          ^^^^^^^ required by this bound in `ErrorUnion`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `Rc<()>` cannot be shared between threads safely
[INFO] [stderr]   --> tests/trybuild/error_union_requires_send_sync.rs:26:28
[INFO] [stderr]    |
[INFO] [stderr] 26 | fn not_send_sync(_: Option<ErrorUnion<(std::io::Error, NotSendSync)>>) {}
[INFO] [stderr]    |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Rc<()>` cannot be shared between threads safely
[INFO] [stderr]    |
[INFO] [stderr]    = help: within `NotSendSync`, the trait `Sync` is not implemented for `Rc<()>`
[INFO] [stderr]    = help: the following other types implement trait `TypeSet`:
[INFO] [stderr]              ()
[INFO] [stderr]              (A, B)
[INFO] [stderr]              (A, B, C)
[INFO] [stderr]              (A, B, C, D)
[INFO] [stderr]              (A, B, C, D, E)
[INFO] [stderr]              (A, B, C, D, E, F)
[INFO] [stderr]              (A, B, C, D, E, F, G)
[INFO] [stderr]              (A, B, C, D, E, F, G, H)
[INFO] [stderr]            and $N others
[INFO] [stderr] note: required because it appears within the type `NotSendSync`
[INFO] [stderr]   --> tests/trybuild/error_union_requires_send_sync.rs:5:8
[INFO] [stderr]    |
[INFO] [stderr]  5 | struct NotSendSync(Rc<()>);
[INFO] [stderr]    |        ^^^^^^^^^^^
[INFO] [stderr]    = note: required for `NotSendSync` to implement `SendSyncError`
[INFO] [stderr]    = note: required for `(std::io::Error, NotSendSync)` to implement `TypeSet`
[INFO] [stderr] note: required by a bound in `ErrorUnion`
[INFO] [stderr]   --> src/error_union.rs
[INFO] [stderr]    |
[INFO] [stderr]    | pub struct ErrorUnion<E: TypeSet = AnyError> {
[INFO] [stderr]    |                          ^^^^^^^ required by this bound in `ErrorUnion`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `Cell<()>` cannot be shared between threads safely
[INFO] [stderr]   --> tests/trybuild/error_union_requires_send_sync.rs:28:23
[INFO] [stderr]    |
[INFO] [stderr] 28 | fn not_sync(_: Option<ErrorUnion<(std::io::Error, NotSync)>>) {}
[INFO] [stderr]    |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Cell<()>` cannot be shared between threads safely
[INFO] [stderr]    |
[INFO] [stderr]    = help: within `NotSync`, the trait `Sync` is not implemented for `Cell<()>`
[INFO] [stderr]    = note: if you want to do aliasing and mutation between multiple threads, use `std::sync::RwLock`
[INFO] [stderr]    = help: the following other types implement trait `TypeSet`:
[INFO] [stderr]              ()
[INFO] [stderr]              (A, B)
[INFO] [stderr]              (A, B, C)
[INFO] [stderr]              (A, B, C, D)
[INFO] [stderr]              (A, B, C, D, E)
[INFO] [stderr]              (A, B, C, D, E, F)
[INFO] [stderr]              (A, B, C, D, E, F, G)
[INFO] [stderr]              (A, B, C, D, E, F, G, H)
[INFO] [stderr]            and $N others
[INFO] [stderr] note: required because it appears within the type `NotSync`
[INFO] [stderr]   --> tests/trybuild/error_union_requires_send_sync.rs:16:8
[INFO] [stderr]    |
[INFO] [stderr] 16 | struct NotSync(Cell<()>);
[INFO] [stderr]    |        ^^^^^^^
[INFO] [stderr]    = note: required for `NotSync` to implement `SendSyncError`
[INFO] [stderr]    = note: required for `(std::io::Error, NotSync)` to implement `TypeSet`
[INFO] [stderr] note: required by a bound in `ErrorUnion`
[INFO] [stderr]   --> src/error_union.rs
[INFO] [stderr]    |
[INFO] [stderr]    | pub struct ErrorUnion<E: TypeSet = AnyError> {
[INFO] [stderr]    |                          ^^^^^^^ required by this bound in `ErrorUnion`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: `Rc<()>` cannot be sent between threads safely
[INFO] [stderr]   --> tests/trybuild/error_union_requires_send_sync.rs:26:28
[INFO] [stderr]    |
[INFO] [stderr] 26 | fn not_send_sync(_: Option<ErrorUnion<(std::io::Error, NotSendSync)>>) {}
[INFO] [stderr]    |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Rc<()>` cannot be sent between threads safely
[INFO] [stderr]    |
[INFO] [stderr]    = help: within `NotSendSync`, the trait `Send` is not implemented for `Rc<()>`
[INFO] [stderr]    = help: the following other types implement trait `TypeSet`:
[INFO] [stderr]              (T₁, T₂, …, Tₙ) up to tuples of arity 26
[INFO] [stderr] note: required because it appears within the type `NotSendSync`
[INFO] [stderr]   --> tests/trybuild/error_union_requires_send_sync.rs:5:20
[INFO] [stderr]    |
[INFO] [stderr]  5 | struct NotSendSync(Rc<()>);
[INFO] [stderr]    |                    ^^^^^^ required by this field
[INFO] [stderr]    = note: required for `NotSendSync` to implement `SendSyncError`
[INFO] [stderr]    = note: required for `(std::io::Error, NotSendSync)` to implement `TypeSet`
[INFO] [stderr] note: required by a bound in `ErrorUnion`
[INFO] [stderr]   --> src/error_union.rs
[INFO] [stderr]    |
[INFO] [stderr]    | pub struct ErrorUnion<E: TypeSet = AnyError> {
[INFO] [stderr]    |                          ^^^^^^^ required by this bound in `ErrorUnion`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `Rc<()>` cannot be shared between threads safely
[INFO] [stderr]   --> tests/trybuild/error_union_requires_send_sync.rs:26:28
[INFO] [stderr]    |
[INFO] [stderr] 26 | fn not_send_sync(_: Option<ErrorUnion<(std::io::Error, NotSendSync)>>) {}
[INFO] [stderr]    |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Rc<()>` cannot be shared between threads safely
[INFO] [stderr]    |
[INFO] [stderr]    = help: within `NotSendSync`, the trait `Sync` is not implemented for `Rc<()>`
[INFO] [stderr]    = help: the following other types implement trait `TypeSet`:
[INFO] [stderr]              (T₁, T₂, …, Tₙ) up to tuples of arity 26
[INFO] [stderr] note: required because it appears within the type `NotSendSync`
[INFO] [stderr]   --> tests/trybuild/error_union_requires_send_sync.rs:5:20
[INFO] [stderr]    |
[INFO] [stderr]  5 | struct NotSendSync(Rc<()>);
[INFO] [stderr]    |                    ^^^^^^ required by this field
[INFO] [stderr]    = note: required for `NotSendSync` to implement `SendSyncError`
[INFO] [stderr]    = note: required for `(std::io::Error, NotSendSync)` to implement `TypeSet`
[INFO] [stderr] note: required by a bound in `ErrorUnion`
[INFO] [stderr]   --> src/error_union.rs
[INFO] [stderr]    |
[INFO] [stderr]    | pub struct ErrorUnion<E: TypeSet = AnyError> {
[INFO] [stderr]    |                          ^^^^^^^ required by this bound in `ErrorUnion`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `Cell<()>` cannot be shared between threads safely
[INFO] [stderr]   --> tests/trybuild/error_union_requires_send_sync.rs:28:23
[INFO] [stderr]    |
[INFO] [stderr] 28 | fn not_sync(_: Option<ErrorUnion<(std::io::Error, NotSync)>>) {}
[INFO] [stderr]    |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Cell<()>` cannot be shared between threads safely
[INFO] [stderr]    |
[INFO] [stderr]    = help: within `NotSync`, the trait `Sync` is not implemented for `Cell<()>`
[INFO] [stderr]    = note: if you want to do aliasing and mutation between multiple threads, use `std::sync::RwLock`
[INFO] [stderr]    = help: the following other types implement trait `TypeSet`:
[INFO] [stderr]              (T₁, T₂, …, Tₙ) up to tuples of arity 26
[INFO] [stderr] note: required because it appears within the type `NotSync`
[INFO] [stderr]   --> tests/trybuild/error_union_requires_send_sync.rs:16:16
[INFO] [stderr]    |
[INFO] [stderr] 16 | struct NotSync(Cell<()>);
[INFO] [stderr]    |                ^^^^^^^^ required by this field
[INFO] [stderr]    = note: required for `NotSync` to implement `SendSyncError`
[INFO] [stderr]    = note: required for `(std::io::Error, NotSync)` to implement `TypeSet`
[INFO] [stderr] note: required by a bound in `ErrorUnion`
[INFO] [stderr]   --> src/error_union.rs
[INFO] [stderr]    |
[INFO] [stderr]    | pub struct ErrorUnion<E: TypeSet = AnyError> {
[INFO] [stderr]    |                          ^^^^^^^ required by this bound in `ErrorUnion`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/trybuild/error_union_requires_static.rs [should fail to compile] ... ok
[INFO] [stderr] test tests/trybuild/type_set_helpers_are_not_root_exports.rs [should fail to compile] ... ok
[INFO] [stderr] test tests/trybuild/pass/any_error_can_be_narrowed.rs [should pass] ... ok
[INFO] [stderr] test tests/trybuild/pass/renamed_macros.rs [should pass] ... ok
[INFO] [stderr] 
[INFO] [stderr] 
[INFO] [stdout] test trybuild ... FAILED
[INFO] [stderr] error: test failed, to rerun pass `--test trybuild`
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- trybuild stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'trybuild' (1909) panicked at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/trybuild-1.0.116/src/run.rs:102:13:
[INFO] [stdout] 30 of 51 tests failed
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x626121cbeb41 - <<std[617be2ca0a6fd877]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[a373ad73a504971]::fmt::Display>::fmt
[INFO] [stdout]    1:     0x626121cd4e2a - core[a373ad73a504971]::fmt::write
[INFO] [stdout]    2:     0x626121cc338c - <alloc[2e1b2a31b91974c5]::vec::Vec<u8> as core[a373ad73a504971]::io::write::Write>::write_fmt
[INFO] [stdout]    3:     0x626121c97fa6 - std[617be2ca0a6fd877]::panicking::default_hook::{closure#0}
[INFO] [stdout]    4:     0x626121cb60e9 - std[617be2ca0a6fd877]::panicking::default_hook
[INFO] [stdout]    5:     0x626121c4f6f0 - test[aada8e7e76ba119b]::test_main_inner::{closure#0}
[INFO] [stdout]    6:     0x626121cb62a2 - std[617be2ca0a6fd877]::panicking::panic_with_hook
[INFO] [stdout]    7:     0x626121c98052 - std[617be2ca0a6fd877]::panicking::panic_handler::{closure#0}
[INFO] [stdout]    8:     0x626121c908a9 - std[617be2ca0a6fd877]::sys::backtrace::__rust_end_short_backtrace::<std[617be2ca0a6fd877]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]    9:     0x626121c98c5d - __rustc[ea4f61d10b84890b]::rust_begin_unwind
[INFO] [stdout]   10:     0x626121cd559c - core[a373ad73a504971]::panicking::panic_fmt
[INFO] [stdout]   11:     0x626121ba1bcb - <trybuild[ba562153ca875e03]::Runner>::run
[INFO] [stdout]   12:     0x626121ba4ce0 - <trybuild[ba562153ca875e03]::TestCases as core[a373ad73a504971]::ops::drop::Drop>::drop
[INFO] [stdout]   13:     0x626121b9af06 - trybuild[72e3bebf25df3401]::trybuild
[INFO] [stdout]   14:     0x626121b9b139 - <trybuild[72e3bebf25df3401]::trybuild::{closure#0} as core[a373ad73a504971]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]   15:     0x626121c42b3b - test[aada8e7e76ba119b]::__rust_begin_short_backtrace::<core[a373ad73a504971]::result::Result<(), alloc[2e1b2a31b91974c5]::string::String>, fn() -> core[a373ad73a504971]::result::Result<(), alloc[2e1b2a31b91974c5]::string::String>>
[INFO] [stdout]   16:     0x626121c4fd15 - test[aada8e7e76ba119b]::run_test::{closure#0}
[INFO] [stdout]   17:     0x626121c49604 - std[617be2ca0a6fd877]::sys::backtrace::__rust_begin_short_backtrace::<test[aada8e7e76ba119b]::run_test::{closure#1}, ()>
[INFO] [stdout]   18:     0x626121c52da2 - <std[617be2ca0a6fd877]::thread::lifecycle::spawn_unchecked<test[aada8e7e76ba119b]::run_test::{closure#1}, ()>::{closure#1} as core[a373ad73a504971]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]   19:     0x626121cbdd9f - <std[617be2ca0a6fd877]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]   20:     0x7d757e52adfa - <unknown>
[INFO] [stdout]   21:     0x7d757e5be3d4 - clone
[INFO] [stdout]   22:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     trybuild
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 103.12s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "c40e1f2a159f2594624403263a16cef6f798ddd81501799eeb0b31bd44be4a7c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c40e1f2a159f2594624403263a16cef6f798ddd81501799eeb0b31bd44be4a7c", kill_on_drop: false }`
[INFO] [stdout] c40e1f2a159f2594624403263a16cef6f798ddd81501799eeb0b31bd44be4a7c
