[INFO] fetching crate synonym 0.0.5...
[INFO] testing synonym-0.0.5 against 1.54.0 for beta-1.55-1
[INFO] extracting crate synonym 0.0.5 into /workspace/builds/worker-77/source
[INFO] validating manifest of crates.io crate synonym 0.0.5 on toolchain 1.54.0
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.54.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate synonym 0.0.5
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate synonym 0.0.5
[INFO] tweaked toml for crates.io crate synonym 0.0.5 written to /workspace/builds/worker-77/source/Cargo.toml
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.54.0" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.54.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-77/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-77/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+1.54.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 40929112b779fef1b6eb105eae50de2aff69055773e229b57dec7af421eb73ef
[INFO] running `Command { std: "docker" "start" "-a" "40929112b779fef1b6eb105eae50de2aff69055773e229b57dec7af421eb73ef", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "40929112b779fef1b6eb105eae50de2aff69055773e229b57dec7af421eb73ef", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "40929112b779fef1b6eb105eae50de2aff69055773e229b57dec7af421eb73ef", kill_on_drop: false }`
[INFO] [stdout] 40929112b779fef1b6eb105eae50de2aff69055773e229b57dec7af421eb73ef
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-77/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-77/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+1.54.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 7537140f8dd592d4e7fb71adbd187dd4c8fdadd861bce239e0dded49e0dff04c
[INFO] running `Command { std: "docker" "start" "-a" "7537140f8dd592d4e7fb71adbd187dd4c8fdadd861bce239e0dded49e0dff04c", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]    Compiling syn v1.0.74
[INFO] [stderr]    Compiling fnv v1.0.7
[INFO] [stderr]    Compiling strsim v0.9.3
[INFO] [stderr]    Compiling ident_case v1.0.1
[INFO] [stderr]    Compiling darling_core v0.10.2
[INFO] [stderr]    Compiling darling_macro v0.10.2
[INFO] [stderr]    Compiling darling v0.10.2
[INFO] [stderr]    Compiling synonym v0.0.5 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 13.66s
[INFO] running `Command { std: "docker" "inspect" "7537140f8dd592d4e7fb71adbd187dd4c8fdadd861bce239e0dded49e0dff04c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7537140f8dd592d4e7fb71adbd187dd4c8fdadd861bce239e0dded49e0dff04c", kill_on_drop: false }`
[INFO] [stdout] 7537140f8dd592d4e7fb71adbd187dd4c8fdadd861bce239e0dded49e0dff04c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-77/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-77/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+1.54.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 58f3ca7178b698cfcd9cad1f925ee2ed33c04aff6cdb38b80f1c40db032a6004
[INFO] running `Command { std: "docker" "start" "-a" "58f3ca7178b698cfcd9cad1f925ee2ed33c04aff6cdb38b80f1c40db032a6004", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde_derive v1.0.127
[INFO] [stderr]    Compiling serde v1.0.127
[INFO] [stderr]    Compiling ryu v1.0.5
[INFO] [stderr]    Compiling serde_json v1.0.66
[INFO] [stderr]    Compiling trybuild v1.0.43
[INFO] [stderr]    Compiling itoa v0.4.7
[INFO] [stderr]    Compiling glob v0.3.0
[INFO] [stderr]    Compiling termcolor v1.1.2
[INFO] [stderr]    Compiling toml v0.5.8
[INFO] [stderr]    Compiling synonym v0.0.5 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 17.03s
[INFO] running `Command { std: "docker" "inspect" "58f3ca7178b698cfcd9cad1f925ee2ed33c04aff6cdb38b80f1c40db032a6004", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "58f3ca7178b698cfcd9cad1f925ee2ed33c04aff6cdb38b80f1c40db032a6004", kill_on_drop: false }`
[INFO] [stdout] 58f3ca7178b698cfcd9cad1f925ee2ed33c04aff6cdb38b80f1c40db032a6004
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-77/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-77/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+1.54.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] bfa9e5e28b669f6f3dfbba408f6ca175be95319a520bf9aefbc24f0c0f90368e
[INFO] running `Command { std: "docker" "start" "-a" "bfa9e5e28b669f6f3dfbba408f6ca175be95319a520bf9aefbc24f0c0f90368e", kill_on_drop: false }`
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.07s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests (/opt/rustwide/target/debug/deps/synonym-96e38c86d15d8891)
[INFO] [stdout] running 0 tests
[INFO] [stderr]      Running tests/progress.rs (/opt/rustwide/target/debug/deps/tests-f1f4dc5e40ae1245)
[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 1 test
[INFO] [stderr]    Compiling proc-macro2 v1.0.28
[INFO] [stderr]    Compiling syn v1.0.74
[INFO] [stderr]    Compiling unicode-xid v0.2.2
[INFO] [stderr]    Compiling fnv v1.0.7
[INFO] [stderr]    Compiling strsim v0.9.3
[INFO] [stderr]    Compiling ident_case v1.0.1
[INFO] [stderr]    Compiling serde_derive v1.0.127
[INFO] [stderr]    Compiling serde v1.0.127
[INFO] [stderr]    Compiling ryu v1.0.5
[INFO] [stderr]    Compiling serde_json v1.0.66
[INFO] [stderr]    Compiling itoa v0.4.7
[INFO] [stderr]    Compiling quote v1.0.9
[INFO] [stderr]    Compiling darling_core v0.10.2
[INFO] [stderr]    Compiling darling_macro v0.10.2
[INFO] [stderr]    Compiling darling v0.10.2
[INFO] [stderr]    Compiling synonym v0.0.5 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling synonym-tests v0.0.0 (/opt/rustwide/target/tests/synonym)
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 25.22s
[INFO] [stderr] 
[INFO] [stderr] 
[INFO] [stderr] test pass-char.rs [should pass] ... ok
[INFO] [stderr] test pass-display.rs [should pass] ... ok
[INFO] [stderr] test pass-floats.rs [should pass] ... error
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error: proc-macro derive panicked
[INFO] [stderr]   --> $DIR/pass-floats.rs:6:22
[INFO] [stderr]    |
[INFO] [stderr] 6  |             #[derive(Synonym)]
[INFO] [stderr]    |                      ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 37 |     check!(f32, 1f32);
[INFO] [stderr]    |     ------------------ in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = help: message: Synonym supports only tuple structs with single unnamed field. Enums, unions and generic type parameters are not supported
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error: proc-macro derive panicked
[INFO] [stderr]   --> $DIR/pass-floats.rs:6:22
[INFO] [stderr]    |
[INFO] [stderr] 6  |             #[derive(Synonym)]
[INFO] [stderr]    |                      ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 38 |     check!(f64, 1f64);
[INFO] [stderr]    |     ------------------ in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = help: message: Synonym supports only tuple structs with single unnamed field. Enums, unions and generic type parameters are not supported
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: can't compare `main::Foo` with `main::Foo`
[INFO] [stderr]   --> $DIR/pass-floats.rs:13:30
[INFO] [stderr]    |
[INFO] [stderr] 13 |             check_partial_eq(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo == main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 37 |     check!(f32, 1f32);
[INFO] [stderr]    |     ------------------ in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 41 | fn check_partial_eq(_: impl PartialEq) {}
[INFO] [stderr]    |                             --------- required by this bound in `check_partial_eq`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `PartialEq` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: can't compare `main::Foo` with `main::Foo`
[INFO] [stderr]   --> $DIR/pass-floats.rs:14:31
[INFO] [stderr]    |
[INFO] [stderr] 14 |             check_partial_ord(Foo($v));
[INFO] [stderr]    |                               ^^^^^^^ no implementation for `main::Foo < main::Foo` and `main::Foo > main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 37 |     check!(f32, 1f32);
[INFO] [stderr]    |     ------------------ in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 42 | fn check_partial_ord(_: impl PartialOrd) {}
[INFO] [stderr]    |                              ---------- required by this bound in `check_partial_ord`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `PartialOrd` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Clone` is not satisfied
[INFO] [stderr]   --> $DIR/pass-floats.rs:15:25
[INFO] [stderr]    |
[INFO] [stderr] 15 |             check_clone(Foo($v));
[INFO] [stderr]    |                         ^^^^^^^ the trait `Clone` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 37 |     check!(f32, 1f32);
[INFO] [stderr]    |     ------------------ in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 43 | fn check_clone(_: impl Clone) {}
[INFO] [stderr]    |                        ----- required by this bound in `check_clone`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: std::marker::Copy` is not satisfied
[INFO] [stderr]   --> $DIR/pass-floats.rs:16:24
[INFO] [stderr]    |
[INFO] [stderr] 16 |             check_copy(Foo($v));
[INFO] [stderr]    |                        ^^^^^^^ the trait `std::marker::Copy` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 37 |     check!(f32, 1f32);
[INFO] [stderr]    |     ------------------ in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 44 | fn check_copy(_: impl Copy) {}
[INFO] [stderr]    |                       ---- required by this bound in `check_copy`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Default` is not satisfied
[INFO] [stderr]   --> $DIR/pass-floats.rs:17:27
[INFO] [stderr]    |
[INFO] [stderr] 17 |             check_default(Foo($v));
[INFO] [stderr]    |                           ^^^^^^^ the trait `Default` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 37 |     check!(f32, 1f32);
[INFO] [stderr]    |     ------------------ in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 45 | fn check_default(_: impl Default) {}
[INFO] [stderr]    |                          ------- required by this bound in `check_default`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `main::Foo` doesn't implement `Debug`
[INFO] [stderr]   --> $DIR/pass-floats.rs:18:25
[INFO] [stderr]    |
[INFO] [stderr] 18 |             check_debug(Foo($v));
[INFO] [stderr]    |                         ^^^^^^^ `main::Foo` cannot be formatted using `{:?}`
[INFO] [stderr] ...
[INFO] [stderr] 37 |     check!(f32, 1f32);
[INFO] [stderr]    |     ------------------ in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 46 | fn check_debug(_: impl core::fmt::Debug) {}
[INFO] [stderr]    |                        ---------------- required by this bound in `check_debug`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Debug` is not implemented for `main::Foo`
[INFO] [stderr]    = note: add `#[derive(Debug)]` or manually implement `Debug`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `main::Foo` doesn't implement `std::fmt::Display`
[INFO] [stderr]   --> $DIR/pass-floats.rs:19:27
[INFO] [stderr]    |
[INFO] [stderr] 19 |             check_display(Foo($v));
[INFO] [stderr]    |                           ^^^^^^^ `main::Foo` cannot be formatted with the default formatter
[INFO] [stderr] ...
[INFO] [stderr] 37 |     check!(f32, 1f32);
[INFO] [stderr]    |     ------------------ in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 47 | fn check_display(_: impl core::fmt::Display) {}
[INFO] [stderr]    |                          ------------------ required by this bound in `check_display`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `std::fmt::Display` is not implemented for `main::Foo`
[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 `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: AsRef<f32>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-floats.rs:20:26
[INFO] [stderr]    |
[INFO] [stderr] 9  |             fn check_as_ref(_: impl AsRef<$t>) {}
[INFO] [stderr]    |                                     --------- required by this bound in `main::check_as_ref`
[INFO] [stderr] ...
[INFO] [stderr] 20 |             check_as_ref(Foo($v));
[INFO] [stderr]    |                          ^^^^^^^ the trait `AsRef<f32>` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 37 |     check!(f32, 1f32);
[INFO] [stderr]    |     ------------------ in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: From<f32>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-floats.rs:21:24
[INFO] [stderr]    |
[INFO] [stderr] 10 |             fn check_from(_: impl From<$t>) {}
[INFO] [stderr]    |                                   -------- required by this bound in `main::check_from`
[INFO] [stderr] ...
[INFO] [stderr] 21 |             check_from(Foo($v));
[INFO] [stderr]    |                        ^^^^^^^ expected an implementor of trait `From<f32>`
[INFO] [stderr] ...
[INFO] [stderr] 37 |     check!(f32, 1f32);
[INFO] [stderr]    |     ------------------ in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `f32: From<main::Foo>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-floats.rs:37:17
[INFO] [stderr]    |
[INFO] [stderr] 11 |             fn check_from_inner(_: impl From<Foo>) {}
[INFO] [stderr]    |                                         --------- required by this bound in `main::check_from_inner`
[INFO] [stderr] ...
[INFO] [stderr] 37 |     check!(f32, 1f32);
[INFO] [stderr]    |                 ^^^^
[INFO] [stderr]    |                 |
[INFO] [stderr]    |                 expected an implementor of trait `From<main::Foo>`
[INFO] [stderr]    |                 help: consider borrowing here: `&1f32`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: FromStr` is not satisfied
[INFO] [stderr]   --> $DIR/pass-floats.rs:23:28
[INFO] [stderr]    |
[INFO] [stderr] 23 |             check_from_str(Foo($v));
[INFO] [stderr]    |                            ^^^^^^^ the trait `FromStr` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 37 |     check!(f32, 1f32);
[INFO] [stderr]    |     ------------------ in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 48 | fn check_from_str(_: impl core::str::FromStr) {}
[INFO] [stderr]    |                           ------------------ required by this bound in `check_from_str`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-floats.rs:24:23
[INFO] [stderr]    |
[INFO] [stderr] 24 |             check_add(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 37 |     check!(f32, 1f32);
[INFO] [stderr]    |     ------------------ in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 49 | fn check_add<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_add`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-floats.rs:25:23
[INFO] [stderr]    |
[INFO] [stderr] 25 |             check_sub(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 37 |     check!(f32, 1f32);
[INFO] [stderr]    |     ------------------ in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 50 | fn check_sub<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_sub`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-floats.rs:26:23
[INFO] [stderr]    |
[INFO] [stderr] 26 |             check_mul(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 37 |     check!(f32, 1f32);
[INFO] [stderr]    |     ------------------ in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 51 | fn check_mul<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_mul`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-floats.rs:27:23
[INFO] [stderr]    |
[INFO] [stderr] 27 |             check_div(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 37 |     check!(f32, 1f32);
[INFO] [stderr]    |     ------------------ in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 52 | fn check_div<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_div`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add-assign `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-floats.rs:28:30
[INFO] [stderr]    |
[INFO] [stderr] 28 |             check_add_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo += main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 37 |     check!(f32, 1f32);
[INFO] [stderr]    |     ------------------ in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 53 | fn check_add_assign(_: impl core::ops::AddAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_add_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `AddAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot subtract-assign `main::Foo` from `main::Foo`
[INFO] [stderr]   --> $DIR/pass-floats.rs:29:30
[INFO] [stderr]    |
[INFO] [stderr] 29 |             check_sub_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo -= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 37 |     check!(f32, 1f32);
[INFO] [stderr]    |     ------------------ in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 54 | fn check_sub_assign(_: impl core::ops::SubAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_sub_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `SubAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot multiply-assign `main::Foo` by `main::Foo`
[INFO] [stderr]   --> $DIR/pass-floats.rs:30:30
[INFO] [stderr]    |
[INFO] [stderr] 30 |             check_mul_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo *= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 37 |     check!(f32, 1f32);
[INFO] [stderr]    |     ------------------ in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 55 | fn check_mul_assign(_: impl core::ops::MulAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_mul_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `MulAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot divide-assign `main::Foo` by `main::Foo`
[INFO] [stderr]   --> $DIR/pass-floats.rs:31:30
[INFO] [stderr]    |
[INFO] [stderr] 31 |             check_div_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo /= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 37 |     check!(f32, 1f32);
[INFO] [stderr]    |     ------------------ in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 56 | fn check_div_assign(_: impl core::ops::DivAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_div_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `DivAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: can't compare `main::Foo` with `main::Foo`
[INFO] [stderr]   --> $DIR/pass-floats.rs:13:30
[INFO] [stderr]    |
[INFO] [stderr] 13 |             check_partial_eq(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo == main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 38 |     check!(f64, 1f64);
[INFO] [stderr]    |     ------------------ in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 41 | fn check_partial_eq(_: impl PartialEq) {}
[INFO] [stderr]    |                             --------- required by this bound in `check_partial_eq`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `PartialEq` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: can't compare `main::Foo` with `main::Foo`
[INFO] [stderr]   --> $DIR/pass-floats.rs:14:31
[INFO] [stderr]    |
[INFO] [stderr] 14 |             check_partial_ord(Foo($v));
[INFO] [stderr]    |                               ^^^^^^^ no implementation for `main::Foo < main::Foo` and `main::Foo > main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 38 |     check!(f64, 1f64);
[INFO] [stderr]    |     ------------------ in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 42 | fn check_partial_ord(_: impl PartialOrd) {}
[INFO] [stderr]    |                              ---------- required by this bound in `check_partial_ord`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `PartialOrd` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Clone` is not satisfied
[INFO] [stderr]   --> $DIR/pass-floats.rs:15:25
[INFO] [stderr]    |
[INFO] [stderr] 15 |             check_clone(Foo($v));
[INFO] [stderr]    |                         ^^^^^^^ the trait `Clone` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 38 |     check!(f64, 1f64);
[INFO] [stderr]    |     ------------------ in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 43 | fn check_clone(_: impl Clone) {}
[INFO] [stderr]    |                        ----- required by this bound in `check_clone`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: std::marker::Copy` is not satisfied
[INFO] [stderr]   --> $DIR/pass-floats.rs:16:24
[INFO] [stderr]    |
[INFO] [stderr] 16 |             check_copy(Foo($v));
[INFO] [stderr]    |                        ^^^^^^^ the trait `std::marker::Copy` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 38 |     check!(f64, 1f64);
[INFO] [stderr]    |     ------------------ in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 44 | fn check_copy(_: impl Copy) {}
[INFO] [stderr]    |                       ---- required by this bound in `check_copy`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Default` is not satisfied
[INFO] [stderr]   --> $DIR/pass-floats.rs:17:27
[INFO] [stderr]    |
[INFO] [stderr] 17 |             check_default(Foo($v));
[INFO] [stderr]    |                           ^^^^^^^ the trait `Default` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 38 |     check!(f64, 1f64);
[INFO] [stderr]    |     ------------------ in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 45 | fn check_default(_: impl Default) {}
[INFO] [stderr]    |                          ------- required by this bound in `check_default`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `main::Foo` doesn't implement `Debug`
[INFO] [stderr]   --> $DIR/pass-floats.rs:18:25
[INFO] [stderr]    |
[INFO] [stderr] 18 |             check_debug(Foo($v));
[INFO] [stderr]    |                         ^^^^^^^ `main::Foo` cannot be formatted using `{:?}`
[INFO] [stderr] ...
[INFO] [stderr] 38 |     check!(f64, 1f64);
[INFO] [stderr]    |     ------------------ in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 46 | fn check_debug(_: impl core::fmt::Debug) {}
[INFO] [stderr]    |                        ---------------- required by this bound in `check_debug`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Debug` is not implemented for `main::Foo`
[INFO] [stderr]    = note: add `#[derive(Debug)]` or manually implement `Debug`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `main::Foo` doesn't implement `std::fmt::Display`
[INFO] [stderr]   --> $DIR/pass-floats.rs:19:27
[INFO] [stderr]    |
[INFO] [stderr] 19 |             check_display(Foo($v));
[INFO] [stderr]    |                           ^^^^^^^ `main::Foo` cannot be formatted with the default formatter
[INFO] [stderr] ...
[INFO] [stderr] 38 |     check!(f64, 1f64);
[INFO] [stderr]    |     ------------------ in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 47 | fn check_display(_: impl core::fmt::Display) {}
[INFO] [stderr]    |                          ------------------ required by this bound in `check_display`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `std::fmt::Display` is not implemented for `main::Foo`
[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 `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: AsRef<f64>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-floats.rs:20:26
[INFO] [stderr]    |
[INFO] [stderr] 9  |             fn check_as_ref(_: impl AsRef<$t>) {}
[INFO] [stderr]    |                                     --------- required by this bound in `main::check_as_ref`
[INFO] [stderr] ...
[INFO] [stderr] 20 |             check_as_ref(Foo($v));
[INFO] [stderr]    |                          ^^^^^^^ the trait `AsRef<f64>` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 38 |     check!(f64, 1f64);
[INFO] [stderr]    |     ------------------ in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: From<f64>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-floats.rs:21:24
[INFO] [stderr]    |
[INFO] [stderr] 10 |             fn check_from(_: impl From<$t>) {}
[INFO] [stderr]    |                                   -------- required by this bound in `main::check_from`
[INFO] [stderr] ...
[INFO] [stderr] 21 |             check_from(Foo($v));
[INFO] [stderr]    |                        ^^^^^^^ expected an implementor of trait `From<f64>`
[INFO] [stderr] ...
[INFO] [stderr] 38 |     check!(f64, 1f64);
[INFO] [stderr]    |     ------------------ in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `f64: From<main::Foo>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-floats.rs:38:17
[INFO] [stderr]    |
[INFO] [stderr] 11 |             fn check_from_inner(_: impl From<Foo>) {}
[INFO] [stderr]    |                                         --------- required by this bound in `main::check_from_inner`
[INFO] [stderr] ...
[INFO] [stderr] 38 |     check!(f64, 1f64);
[INFO] [stderr]    |                 ^^^^
[INFO] [stderr]    |                 |
[INFO] [stderr]    |                 expected an implementor of trait `From<main::Foo>`
[INFO] [stderr]    |                 help: consider borrowing here: `&1f64`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: FromStr` is not satisfied
[INFO] [stderr]   --> $DIR/pass-floats.rs:23:28
[INFO] [stderr]    |
[INFO] [stderr] 23 |             check_from_str(Foo($v));
[INFO] [stderr]    |                            ^^^^^^^ the trait `FromStr` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 38 |     check!(f64, 1f64);
[INFO] [stderr]    |     ------------------ in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 48 | fn check_from_str(_: impl core::str::FromStr) {}
[INFO] [stderr]    |                           ------------------ required by this bound in `check_from_str`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-floats.rs:24:23
[INFO] [stderr]    |
[INFO] [stderr] 24 |             check_add(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 38 |     check!(f64, 1f64);
[INFO] [stderr]    |     ------------------ in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 49 | fn check_add<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_add`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-floats.rs:25:23
[INFO] [stderr]    |
[INFO] [stderr] 25 |             check_sub(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 38 |     check!(f64, 1f64);
[INFO] [stderr]    |     ------------------ in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 50 | fn check_sub<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_sub`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-floats.rs:26:23
[INFO] [stderr]    |
[INFO] [stderr] 26 |             check_mul(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 38 |     check!(f64, 1f64);
[INFO] [stderr]    |     ------------------ in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 51 | fn check_mul<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_mul`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-floats.rs:27:23
[INFO] [stderr]    |
[INFO] [stderr] 27 |             check_div(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 38 |     check!(f64, 1f64);
[INFO] [stderr]    |     ------------------ in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 52 | fn check_div<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_div`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add-assign `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-floats.rs:28:30
[INFO] [stderr]    |
[INFO] [stderr] 28 |             check_add_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo += main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 38 |     check!(f64, 1f64);
[INFO] [stderr]    |     ------------------ in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 53 | fn check_add_assign(_: impl core::ops::AddAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_add_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `AddAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot subtract-assign `main::Foo` from `main::Foo`
[INFO] [stderr]   --> $DIR/pass-floats.rs:29:30
[INFO] [stderr]    |
[INFO] [stderr] 29 |             check_sub_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo -= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 38 |     check!(f64, 1f64);
[INFO] [stderr]    |     ------------------ in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 54 | fn check_sub_assign(_: impl core::ops::SubAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_sub_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `SubAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot multiply-assign `main::Foo` by `main::Foo`
[INFO] [stderr]   --> $DIR/pass-floats.rs:30:30
[INFO] [stderr]    |
[INFO] [stderr] 30 |             check_mul_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo *= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 38 |     check!(f64, 1f64);
[INFO] [stderr]    |     ------------------ in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 55 | fn check_mul_assign(_: impl core::ops::MulAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_mul_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `MulAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot divide-assign `main::Foo` by `main::Foo`
[INFO] [stderr]   --> $DIR/pass-floats.rs:31:30
[INFO] [stderr]    |
[INFO] [stderr] 31 |             check_div_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo /= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 38 |     check!(f64, 1f64);
[INFO] [stderr]    |     ------------------ in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 56 | fn check_div_assign(_: impl core::ops::DivAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_div_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `DivAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] test pass-serde.rs [should pass] ... error
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error: proc-macro derive panicked
[INFO] [stderr]   --> $DIR/pass-serde.rs:7:22
[INFO] [stderr]    |
[INFO] [stderr] 7  |             #[derive(Synonym)]
[INFO] [stderr]    |                      ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 22 |     check!(u8, 1u8, "1");
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = help: message: Synonym supports only tuple structs with single unnamed field. Enums, unions and generic type parameters are not supported
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error: proc-macro derive panicked
[INFO] [stderr]   --> $DIR/pass-serde.rs:7:22
[INFO] [stderr]    |
[INFO] [stderr] 7  |             #[derive(Synonym)]
[INFO] [stderr]    |                      ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 23 |     check!(u16, 2u16, "2");
[INFO] [stderr]    |     ----------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = help: message: Synonym supports only tuple structs with single unnamed field. Enums, unions and generic type parameters are not supported
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error: proc-macro derive panicked
[INFO] [stderr]   --> $DIR/pass-serde.rs:7:22
[INFO] [stderr]    |
[INFO] [stderr] 7  |             #[derive(Synonym)]
[INFO] [stderr]    |                      ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 24 |     check!(u32, 3u32, "3");
[INFO] [stderr]    |     ----------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = help: message: Synonym supports only tuple structs with single unnamed field. Enums, unions and generic type parameters are not supported
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error: proc-macro derive panicked
[INFO] [stderr]   --> $DIR/pass-serde.rs:7:22
[INFO] [stderr]    |
[INFO] [stderr] 7  |             #[derive(Synonym)]
[INFO] [stderr]    |                      ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 25 |     check!(u64, 4u64, "4");
[INFO] [stderr]    |     ----------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = help: message: Synonym supports only tuple structs with single unnamed field. Enums, unions and generic type parameters are not supported
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error: proc-macro derive panicked
[INFO] [stderr]   --> $DIR/pass-serde.rs:7:22
[INFO] [stderr]    |
[INFO] [stderr] 7  |             #[derive(Synonym)]
[INFO] [stderr]    |                      ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 26 |     check!(u128, 5u128, "5");
[INFO] [stderr]    |     ------------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = help: message: Synonym supports only tuple structs with single unnamed field. Enums, unions and generic type parameters are not supported
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error: proc-macro derive panicked
[INFO] [stderr]   --> $DIR/pass-serde.rs:7:22
[INFO] [stderr]    |
[INFO] [stderr] 7  |             #[derive(Synonym)]
[INFO] [stderr]    |                      ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 27 |     check!(usize, 6usize, "6");
[INFO] [stderr]    |     --------------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = help: message: Synonym supports only tuple structs with single unnamed field. Enums, unions and generic type parameters are not supported
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error: proc-macro derive panicked
[INFO] [stderr]   --> $DIR/pass-serde.rs:7:22
[INFO] [stderr]    |
[INFO] [stderr] 7  |             #[derive(Synonym)]
[INFO] [stderr]    |                      ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 28 |     check!(usize, 7usize, "7");
[INFO] [stderr]    |     --------------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = help: message: Synonym supports only tuple structs with single unnamed field. Enums, unions and generic type parameters are not supported
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error: proc-macro derive panicked
[INFO] [stderr]   --> $DIR/pass-serde.rs:7:22
[INFO] [stderr]    |
[INFO] [stderr] 7  |             #[derive(Synonym)]
[INFO] [stderr]    |                      ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 29 |     check!(String, "Foo".to_string(), r#""Foo""#);
[INFO] [stderr]    |     ---------------------------------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = help: message: Synonym supports only tuple structs with single unnamed field. Enums, unions and generic type parameters are not supported
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error: proc-macro derive panicked
[INFO] [stderr]   --> $DIR/pass-serde.rs:7:22
[INFO] [stderr]    |
[INFO] [stderr] 7  |             #[derive(Synonym)]
[INFO] [stderr]    |                      ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 30 |     check!(char, 'X', r#""X""#);
[INFO] [stderr]    |     ---------------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = help: message: Synonym supports only tuple structs with single unnamed field. Enums, unions and generic type parameters are not supported
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Serialize` is not satisfied
[INFO] [stderr]     --> $DIR/pass-serde.rs:11:46
[INFO] [stderr]      |
[INFO] [stderr] 11   |             let json = serde_json::to_string(&foo).unwrap();
[INFO] [stderr]      |                                              ^^^^ the trait `Serialize` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 22   |     check!(u8, 1u8, "1");
[INFO] [stderr]      |     --------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]     ::: $CARGO/serde_json-1.0.66/src/ser.rs
[INFO] [stderr]      |
[INFO] [stderr]      |     T: ?Sized + Serialize,
[INFO] [stderr]      |                 --------- required by this bound in `serde_json::to_string`
[INFO] [stderr]      |
[INFO] [stderr]      = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0369]: binary operation `==` cannot be applied to type `main::Foo`
[INFO] [stderr]   --> $DIR/pass-serde.rs:22:5
[INFO] [stderr]    |
[INFO] [stderr] 22 |     check!(u8, 1u8, "1");
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     main::Foo
[INFO] [stderr]    |     _
[INFO] [stderr]    |
[INFO] [stderr]    = note: an implementation of `std::cmp::PartialEq` might be missing for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `main::Foo` doesn't implement `Debug`
[INFO] [stderr]    --> $DIR/pass-serde.rs:22:5
[INFO] [stderr]     |
[INFO] [stderr] 22  |     check!(u8, 1u8, "1");
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^ `main::Foo` cannot be formatted using `{:?}`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the trait `Debug` is not implemented for `main::Foo`
[INFO] [stderr]     = note: add `#[derive(Debug)]` or manually implement `Debug`
[INFO] [stderr]     = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Serialize` is not satisfied
[INFO] [stderr]     --> $DIR/pass-serde.rs:11:46
[INFO] [stderr]      |
[INFO] [stderr] 11   |             let json = serde_json::to_string(&foo).unwrap();
[INFO] [stderr]      |                                              ^^^^ the trait `Serialize` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 23   |     check!(u16, 2u16, "2");
[INFO] [stderr]      |     ----------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]     ::: $CARGO/serde_json-1.0.66/src/ser.rs
[INFO] [stderr]      |
[INFO] [stderr]      |     T: ?Sized + Serialize,
[INFO] [stderr]      |                 --------- required by this bound in `serde_json::to_string`
[INFO] [stderr]      |
[INFO] [stderr]      = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0369]: binary operation `==` cannot be applied to type `main::Foo`
[INFO] [stderr]   --> $DIR/pass-serde.rs:23:5
[INFO] [stderr]    |
[INFO] [stderr] 23 |     check!(u16, 2u16, "2");
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     main::Foo
[INFO] [stderr]    |     _
[INFO] [stderr]    |
[INFO] [stderr]    = note: an implementation of `std::cmp::PartialEq` might be missing for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `main::Foo` doesn't implement `Debug`
[INFO] [stderr]    --> $DIR/pass-serde.rs:23:5
[INFO] [stderr]     |
[INFO] [stderr] 23  |     check!(u16, 2u16, "2");
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^ `main::Foo` cannot be formatted using `{:?}`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the trait `Debug` is not implemented for `main::Foo`
[INFO] [stderr]     = note: add `#[derive(Debug)]` or manually implement `Debug`
[INFO] [stderr]     = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Serialize` is not satisfied
[INFO] [stderr]     --> $DIR/pass-serde.rs:11:46
[INFO] [stderr]      |
[INFO] [stderr] 11   |             let json = serde_json::to_string(&foo).unwrap();
[INFO] [stderr]      |                                              ^^^^ the trait `Serialize` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 24   |     check!(u32, 3u32, "3");
[INFO] [stderr]      |     ----------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]     ::: $CARGO/serde_json-1.0.66/src/ser.rs
[INFO] [stderr]      |
[INFO] [stderr]      |     T: ?Sized + Serialize,
[INFO] [stderr]      |                 --------- required by this bound in `serde_json::to_string`
[INFO] [stderr]      |
[INFO] [stderr]      = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0369]: binary operation `==` cannot be applied to type `main::Foo`
[INFO] [stderr]   --> $DIR/pass-serde.rs:24:5
[INFO] [stderr]    |
[INFO] [stderr] 24 |     check!(u32, 3u32, "3");
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     main::Foo
[INFO] [stderr]    |     _
[INFO] [stderr]    |
[INFO] [stderr]    = note: an implementation of `std::cmp::PartialEq` might be missing for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `main::Foo` doesn't implement `Debug`
[INFO] [stderr]    --> $DIR/pass-serde.rs:24:5
[INFO] [stderr]     |
[INFO] [stderr] 24  |     check!(u32, 3u32, "3");
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^ `main::Foo` cannot be formatted using `{:?}`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the trait `Debug` is not implemented for `main::Foo`
[INFO] [stderr]     = note: add `#[derive(Debug)]` or manually implement `Debug`
[INFO] [stderr]     = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Serialize` is not satisfied
[INFO] [stderr]     --> $DIR/pass-serde.rs:11:46
[INFO] [stderr]      |
[INFO] [stderr] 11   |             let json = serde_json::to_string(&foo).unwrap();
[INFO] [stderr]      |                                              ^^^^ the trait `Serialize` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 25   |     check!(u64, 4u64, "4");
[INFO] [stderr]      |     ----------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]     ::: $CARGO/serde_json-1.0.66/src/ser.rs
[INFO] [stderr]      |
[INFO] [stderr]      |     T: ?Sized + Serialize,
[INFO] [stderr]      |                 --------- required by this bound in `serde_json::to_string`
[INFO] [stderr]      |
[INFO] [stderr]      = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0369]: binary operation `==` cannot be applied to type `main::Foo`
[INFO] [stderr]   --> $DIR/pass-serde.rs:25:5
[INFO] [stderr]    |
[INFO] [stderr] 25 |     check!(u64, 4u64, "4");
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     main::Foo
[INFO] [stderr]    |     _
[INFO] [stderr]    |
[INFO] [stderr]    = note: an implementation of `std::cmp::PartialEq` might be missing for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `main::Foo` doesn't implement `Debug`
[INFO] [stderr]    --> $DIR/pass-serde.rs:25:5
[INFO] [stderr]     |
[INFO] [stderr] 25  |     check!(u64, 4u64, "4");
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^ `main::Foo` cannot be formatted using `{:?}`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the trait `Debug` is not implemented for `main::Foo`
[INFO] [stderr]     = note: add `#[derive(Debug)]` or manually implement `Debug`
[INFO] [stderr]     = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Serialize` is not satisfied
[INFO] [stderr]     --> $DIR/pass-serde.rs:11:46
[INFO] [stderr]      |
[INFO] [stderr] 11   |             let json = serde_json::to_string(&foo).unwrap();
[INFO] [stderr]      |                                              ^^^^ the trait `Serialize` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 26   |     check!(u128, 5u128, "5");
[INFO] [stderr]      |     ------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]     ::: $CARGO/serde_json-1.0.66/src/ser.rs
[INFO] [stderr]      |
[INFO] [stderr]      |     T: ?Sized + Serialize,
[INFO] [stderr]      |                 --------- required by this bound in `serde_json::to_string`
[INFO] [stderr]      |
[INFO] [stderr]      = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0369]: binary operation `==` cannot be applied to type `main::Foo`
[INFO] [stderr]   --> $DIR/pass-serde.rs:26:5
[INFO] [stderr]    |
[INFO] [stderr] 26 |     check!(u128, 5u128, "5");
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     main::Foo
[INFO] [stderr]    |     _
[INFO] [stderr]    |
[INFO] [stderr]    = note: an implementation of `std::cmp::PartialEq` might be missing for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `main::Foo` doesn't implement `Debug`
[INFO] [stderr]    --> $DIR/pass-serde.rs:26:5
[INFO] [stderr]     |
[INFO] [stderr] 26  |     check!(u128, 5u128, "5");
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^ `main::Foo` cannot be formatted using `{:?}`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the trait `Debug` is not implemented for `main::Foo`
[INFO] [stderr]     = note: add `#[derive(Debug)]` or manually implement `Debug`
[INFO] [stderr]     = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Serialize` is not satisfied
[INFO] [stderr]     --> $DIR/pass-serde.rs:11:46
[INFO] [stderr]      |
[INFO] [stderr] 11   |             let json = serde_json::to_string(&foo).unwrap();
[INFO] [stderr]      |                                              ^^^^ the trait `Serialize` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 27   |     check!(usize, 6usize, "6");
[INFO] [stderr]      |     --------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]     ::: $CARGO/serde_json-1.0.66/src/ser.rs
[INFO] [stderr]      |
[INFO] [stderr]      |     T: ?Sized + Serialize,
[INFO] [stderr]      |                 --------- required by this bound in `serde_json::to_string`
[INFO] [stderr]      |
[INFO] [stderr]      = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0369]: binary operation `==` cannot be applied to type `main::Foo`
[INFO] [stderr]   --> $DIR/pass-serde.rs:27:5
[INFO] [stderr]    |
[INFO] [stderr] 27 |     check!(usize, 6usize, "6");
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     main::Foo
[INFO] [stderr]    |     _
[INFO] [stderr]    |
[INFO] [stderr]    = note: an implementation of `std::cmp::PartialEq` might be missing for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `main::Foo` doesn't implement `Debug`
[INFO] [stderr]    --> $DIR/pass-serde.rs:27:5
[INFO] [stderr]     |
[INFO] [stderr] 27  |     check!(usize, 6usize, "6");
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^ `main::Foo` cannot be formatted using `{:?}`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the trait `Debug` is not implemented for `main::Foo`
[INFO] [stderr]     = note: add `#[derive(Debug)]` or manually implement `Debug`
[INFO] [stderr]     = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Serialize` is not satisfied
[INFO] [stderr]     --> $DIR/pass-serde.rs:11:46
[INFO] [stderr]      |
[INFO] [stderr] 11   |             let json = serde_json::to_string(&foo).unwrap();
[INFO] [stderr]      |                                              ^^^^ the trait `Serialize` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 28   |     check!(usize, 7usize, "7");
[INFO] [stderr]      |     --------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]     ::: $CARGO/serde_json-1.0.66/src/ser.rs
[INFO] [stderr]      |
[INFO] [stderr]      |     T: ?Sized + Serialize,
[INFO] [stderr]      |                 --------- required by this bound in `serde_json::to_string`
[INFO] [stderr]      |
[INFO] [stderr]      = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0369]: binary operation `==` cannot be applied to type `main::Foo`
[INFO] [stderr]   --> $DIR/pass-serde.rs:28:5
[INFO] [stderr]    |
[INFO] [stderr] 28 |     check!(usize, 7usize, "7");
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     main::Foo
[INFO] [stderr]    |     _
[INFO] [stderr]    |
[INFO] [stderr]    = note: an implementation of `std::cmp::PartialEq` might be missing for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `main::Foo` doesn't implement `Debug`
[INFO] [stderr]    --> $DIR/pass-serde.rs:28:5
[INFO] [stderr]     |
[INFO] [stderr] 28  |     check!(usize, 7usize, "7");
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^ `main::Foo` cannot be formatted using `{:?}`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the trait `Debug` is not implemented for `main::Foo`
[INFO] [stderr]     = note: add `#[derive(Debug)]` or manually implement `Debug`
[INFO] [stderr]     = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Serialize` is not satisfied
[INFO] [stderr]     --> $DIR/pass-serde.rs:11:46
[INFO] [stderr]      |
[INFO] [stderr] 11   |             let json = serde_json::to_string(&foo).unwrap();
[INFO] [stderr]      |                                              ^^^^ the trait `Serialize` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 29   |     check!(String, "Foo".to_string(), r#""Foo""#);
[INFO] [stderr]      |     ---------------------------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]     ::: $CARGO/serde_json-1.0.66/src/ser.rs
[INFO] [stderr]      |
[INFO] [stderr]      |     T: ?Sized + Serialize,
[INFO] [stderr]      |                 --------- required by this bound in `serde_json::to_string`
[INFO] [stderr]      |
[INFO] [stderr]      = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0369]: binary operation `==` cannot be applied to type `main::Foo`
[INFO] [stderr]   --> $DIR/pass-serde.rs:29:5
[INFO] [stderr]    |
[INFO] [stderr] 29 |     check!(String, "Foo".to_string(), r#""Foo""#);
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     main::Foo
[INFO] [stderr]    |     _
[INFO] [stderr]    |
[INFO] [stderr]    = note: an implementation of `std::cmp::PartialEq` might be missing for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `main::Foo` doesn't implement `Debug`
[INFO] [stderr]    --> $DIR/pass-serde.rs:29:5
[INFO] [stderr]     |
[INFO] [stderr] 29  |     check!(String, "Foo".to_string(), r#""Foo""#);
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `main::Foo` cannot be formatted using `{:?}`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the trait `Debug` is not implemented for `main::Foo`
[INFO] [stderr]     = note: add `#[derive(Debug)]` or manually implement `Debug`
[INFO] [stderr]     = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Serialize` is not satisfied
[INFO] [stderr]     --> $DIR/pass-serde.rs:11:46
[INFO] [stderr]      |
[INFO] [stderr] 11   |             let json = serde_json::to_string(&foo).unwrap();
[INFO] [stderr]      |                                              ^^^^ the trait `Serialize` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 30   |     check!(char, 'X', r#""X""#);
[INFO] [stderr]      |     ---------------------------- in this macro invocation
[INFO] [stderr]      |
[INFO] [stderr]     ::: $CARGO/serde_json-1.0.66/src/ser.rs
[INFO] [stderr]      |
[INFO] [stderr]      |     T: ?Sized + Serialize,
[INFO] [stderr]      |                 --------- required by this bound in `serde_json::to_string`
[INFO] [stderr]      |
[INFO] [stderr]      = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0369]: binary operation `==` cannot be applied to type `main::Foo`
[INFO] [stderr]   --> $DIR/pass-serde.rs:30:5
[INFO] [stderr]    |
[INFO] [stderr] 30 |     check!(char, 'X', r#""X""#);
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |     |
[INFO] [stderr]    |     main::Foo
[INFO] [stderr]    |     _
[INFO] [stderr]    |
[INFO] [stderr]    = note: an implementation of `std::cmp::PartialEq` might be missing for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `main::Foo` doesn't implement `Debug`
[INFO] [stderr]    --> $DIR/pass-serde.rs:30:5
[INFO] [stderr]     |
[INFO] [stderr] 30  |     check!(char, 'X', r#""X""#);
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `main::Foo` cannot be formatted using `{:?}`
[INFO] [stderr]     |
[INFO] [stderr]     = help: the trait `Debug` is not implemented for `main::Foo`
[INFO] [stderr]     = note: add `#[derive(Debug)]` or manually implement `Debug`
[INFO] [stderr]     = note: this error originates in the macro `assert_eq` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `Baz: Serialize` is not satisfied
[INFO] [stderr]   --> $DIR/pass-serde.rs:37:9
[INFO] [stderr]    |
[INFO] [stderr] 37 |         bar: Baz
[INFO] [stderr]    |         ^^^ the trait `Serialize` is not implemented for `Baz`
[INFO] [stderr]    |
[INFO] [stderr]    = note: required by `main::_::_serde::ser::SerializeStruct::serialize_field`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `Baz: Deserialize<'_>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-serde.rs:37:9
[INFO] [stderr]    |
[INFO] [stderr] 37 |         bar: Baz
[INFO] [stderr]    |         ^^^ the trait `Deserialize<'_>` is not implemented for `Baz`
[INFO] [stderr]    |
[INFO] [stderr]    = note: required by `next_element`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `Baz: Deserialize<'_>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-serde.rs:37:9
[INFO] [stderr]    |
[INFO] [stderr] 37 |         bar: Baz
[INFO] [stderr]    |         ^^^ the trait `Deserialize<'_>` is not implemented for `Baz`
[INFO] [stderr]    |
[INFO] [stderr]    = note: required by `next_value`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] test pass-signed-int.rs [should pass] ... error
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error: proc-macro derive panicked
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:6:22
[INFO] [stderr]    |
[INFO] [stderr] 6  |             #[derive(Synonym)]
[INFO] [stderr]    |                      ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(i8,    1i8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = help: message: Synonym supports only tuple structs with single unnamed field. Enums, unions and generic type parameters are not supported
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error: proc-macro derive panicked
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:6:22
[INFO] [stderr]    |
[INFO] [stderr] 6  |             #[derive(Synonym)]
[INFO] [stderr]    |                      ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(i16,   1i16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = help: message: Synonym supports only tuple structs with single unnamed field. Enums, unions and generic type parameters are not supported
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error: proc-macro derive panicked
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:6:22
[INFO] [stderr]    |
[INFO] [stderr] 6  |             #[derive(Synonym)]
[INFO] [stderr]    |                      ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(i32,   1i32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = help: message: Synonym supports only tuple structs with single unnamed field. Enums, unions and generic type parameters are not supported
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error: proc-macro derive panicked
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:6:22
[INFO] [stderr]    |
[INFO] [stderr] 6  |             #[derive(Synonym)]
[INFO] [stderr]    |                      ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(i64,   1i64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = help: message: Synonym supports only tuple structs with single unnamed field. Enums, unions and generic type parameters are not supported
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error: proc-macro derive panicked
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:6:22
[INFO] [stderr]    |
[INFO] [stderr] 6  |             #[derive(Synonym)]
[INFO] [stderr]    |                      ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(i128,  1i128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = help: message: Synonym supports only tuple structs with single unnamed field. Enums, unions and generic type parameters are not supported
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error: proc-macro derive panicked
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:6:22
[INFO] [stderr]    |
[INFO] [stderr] 6  |             #[derive(Synonym)]
[INFO] [stderr]    |                      ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(isize, 1isize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = help: message: Synonym supports only tuple structs with single unnamed field. Enums, unions and generic type parameters are not supported
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: can't compare `main::Foo` with `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:13:30
[INFO] [stderr]    |
[INFO] [stderr] 13 |             check_partial_eq(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo == main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(i8,    1i8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 48 | fn check_partial_eq(_: impl PartialEq) {}
[INFO] [stderr]    |                             --------- required by this bound in `check_partial_eq`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `PartialEq` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: std::cmp::Eq` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:14:22
[INFO] [stderr]    |
[INFO] [stderr] 14 |             check_eq(Foo($v));
[INFO] [stderr]    |                      ^^^^^^^ the trait `std::cmp::Eq` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(i8,    1i8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 49 | fn check_eq(_: impl Eq) {}
[INFO] [stderr]    |                     -- required by this bound in `check_eq`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: can't compare `main::Foo` with `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:15:31
[INFO] [stderr]    |
[INFO] [stderr] 15 |             check_partial_ord(Foo($v));
[INFO] [stderr]    |                               ^^^^^^^ no implementation for `main::Foo < main::Foo` and `main::Foo > main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(i8,    1i8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 50 | fn check_partial_ord(_: impl PartialOrd) {}
[INFO] [stderr]    |                              ---------- required by this bound in `check_partial_ord`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `PartialOrd` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Ord` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:16:23
[INFO] [stderr]    |
[INFO] [stderr] 16 |             check_ord(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ the trait `Ord` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(i8,    1i8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 51 | fn check_ord(_: impl Ord) {}
[INFO] [stderr]    |                      --- required by this bound in `check_ord`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Clone` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:17:25
[INFO] [stderr]    |
[INFO] [stderr] 17 |             check_clone(Foo($v));
[INFO] [stderr]    |                         ^^^^^^^ the trait `Clone` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(i8,    1i8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 52 | fn check_clone(_: impl Clone) {}
[INFO] [stderr]    |                        ----- required by this bound in `check_clone`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: std::marker::Copy` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:18:24
[INFO] [stderr]    |
[INFO] [stderr] 18 |             check_copy(Foo($v));
[INFO] [stderr]    |                        ^^^^^^^ the trait `std::marker::Copy` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(i8,    1i8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 53 | fn check_copy(_: impl Copy) {}
[INFO] [stderr]    |                       ---- required by this bound in `check_copy`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Hash` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:19:24
[INFO] [stderr]    |
[INFO] [stderr] 19 |             check_hash(Foo($v));
[INFO] [stderr]    |                        ^^^^^^^ the trait `Hash` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(i8,    1i8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 54 | fn check_hash(_: impl core::hash::Hash) {}
[INFO] [stderr]    |                       ---------------- required by this bound in `check_hash`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Default` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:20:27
[INFO] [stderr]    |
[INFO] [stderr] 20 |             check_default(Foo($v));
[INFO] [stderr]    |                           ^^^^^^^ the trait `Default` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(i8,    1i8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 55 | fn check_default(_: impl Default) {}
[INFO] [stderr]    |                          ------- required by this bound in `check_default`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `main::Foo` doesn't implement `Debug`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:21:25
[INFO] [stderr]    |
[INFO] [stderr] 21 |             check_debug(Foo($v));
[INFO] [stderr]    |                         ^^^^^^^ `main::Foo` cannot be formatted using `{:?}`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(i8,    1i8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 56 | fn check_debug(_: impl core::fmt::Debug) {}
[INFO] [stderr]    |                        ---------------- required by this bound in `check_debug`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Debug` is not implemented for `main::Foo`
[INFO] [stderr]    = note: add `#[derive(Debug)]` or manually implement `Debug`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `main::Foo` doesn't implement `std::fmt::Display`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:22:27
[INFO] [stderr]    |
[INFO] [stderr] 22 |             check_display(Foo($v));
[INFO] [stderr]    |                           ^^^^^^^ `main::Foo` cannot be formatted with the default formatter
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(i8,    1i8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 57 | fn check_display(_: impl core::fmt::Display) {}
[INFO] [stderr]    |                          ------------------ required by this bound in `check_display`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `std::fmt::Display` is not implemented for `main::Foo`
[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 `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: AsRef<i8>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:23:26
[INFO] [stderr]    |
[INFO] [stderr] 9  |             fn check_as_ref(_: impl AsRef<$t>) {}
[INFO] [stderr]    |                                     --------- required by this bound in `main::check_as_ref`
[INFO] [stderr] ...
[INFO] [stderr] 23 |             check_as_ref(Foo($v));
[INFO] [stderr]    |                          ^^^^^^^ the trait `AsRef<i8>` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(i8,    1i8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: From<i8>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:24:24
[INFO] [stderr]    |
[INFO] [stderr] 10 |             fn check_from(_: impl From<$t>) {}
[INFO] [stderr]    |                                   -------- required by this bound in `main::check_from`
[INFO] [stderr] ...
[INFO] [stderr] 24 |             check_from(Foo($v));
[INFO] [stderr]    |                        ^^^^^^^ expected an implementor of trait `From<i8>`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(i8,    1i8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `i8: From<main::Foo>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:40:19
[INFO] [stderr]    |
[INFO] [stderr] 11 |             fn check_from_inner(_: impl From<Foo>) {}
[INFO] [stderr]    |                                         --------- required by this bound in `main::check_from_inner`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(i8,    1i8);
[INFO] [stderr]    |                   ^^^
[INFO] [stderr]    |                   |
[INFO] [stderr]    |                   expected an implementor of trait `From<main::Foo>`
[INFO] [stderr]    |                   help: consider borrowing here: `&1i8`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: FromStr` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:26:28
[INFO] [stderr]    |
[INFO] [stderr] 26 |             check_from_str(Foo($v));
[INFO] [stderr]    |                            ^^^^^^^ the trait `FromStr` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(i8,    1i8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 58 | fn check_from_str(_: impl core::str::FromStr) {}
[INFO] [stderr]    |                           ------------------ required by this bound in `check_from_str`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:27:23
[INFO] [stderr]    |
[INFO] [stderr] 27 |             check_add(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(i8,    1i8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 59 | fn check_add<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_add`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:28:23
[INFO] [stderr]    |
[INFO] [stderr] 28 |             check_sub(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(i8,    1i8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 60 | fn check_sub<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_sub`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:29:23
[INFO] [stderr]    |
[INFO] [stderr] 29 |             check_mul(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(i8,    1i8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 61 | fn check_mul<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_mul`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:30:23
[INFO] [stderr]    |
[INFO] [stderr] 30 |             check_div(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(i8,    1i8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 62 | fn check_div<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_div`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add-assign `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:31:30
[INFO] [stderr]    |
[INFO] [stderr] 31 |             check_add_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo += main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(i8,    1i8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 63 | fn check_add_assign(_: impl core::ops::AddAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_add_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `AddAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot subtract-assign `main::Foo` from `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:32:30
[INFO] [stderr]    |
[INFO] [stderr] 32 |             check_sub_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo -= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(i8,    1i8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 64 | fn check_sub_assign(_: impl core::ops::SubAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_sub_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `SubAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot multiply-assign `main::Foo` by `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:33:30
[INFO] [stderr]    |
[INFO] [stderr] 33 |             check_mul_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo *= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(i8,    1i8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 65 | fn check_mul_assign(_: impl core::ops::MulAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_mul_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `MulAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot divide-assign `main::Foo` by `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:34:30
[INFO] [stderr]    |
[INFO] [stderr] 34 |             check_div_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo /= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(i8,    1i8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 66 | fn check_div_assign(_: impl core::ops::DivAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_div_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `DivAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: can't compare `main::Foo` with `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:13:30
[INFO] [stderr]    |
[INFO] [stderr] 13 |             check_partial_eq(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo == main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(i16,   1i16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 48 | fn check_partial_eq(_: impl PartialEq) {}
[INFO] [stderr]    |                             --------- required by this bound in `check_partial_eq`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `PartialEq` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: std::cmp::Eq` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:14:22
[INFO] [stderr]    |
[INFO] [stderr] 14 |             check_eq(Foo($v));
[INFO] [stderr]    |                      ^^^^^^^ the trait `std::cmp::Eq` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(i16,   1i16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 49 | fn check_eq(_: impl Eq) {}
[INFO] [stderr]    |                     -- required by this bound in `check_eq`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: can't compare `main::Foo` with `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:15:31
[INFO] [stderr]    |
[INFO] [stderr] 15 |             check_partial_ord(Foo($v));
[INFO] [stderr]    |                               ^^^^^^^ no implementation for `main::Foo < main::Foo` and `main::Foo > main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(i16,   1i16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 50 | fn check_partial_ord(_: impl PartialOrd) {}
[INFO] [stderr]    |                              ---------- required by this bound in `check_partial_ord`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `PartialOrd` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Ord` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:16:23
[INFO] [stderr]    |
[INFO] [stderr] 16 |             check_ord(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ the trait `Ord` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(i16,   1i16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 51 | fn check_ord(_: impl Ord) {}
[INFO] [stderr]    |                      --- required by this bound in `check_ord`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Clone` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:17:25
[INFO] [stderr]    |
[INFO] [stderr] 17 |             check_clone(Foo($v));
[INFO] [stderr]    |                         ^^^^^^^ the trait `Clone` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(i16,   1i16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 52 | fn check_clone(_: impl Clone) {}
[INFO] [stderr]    |                        ----- required by this bound in `check_clone`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: std::marker::Copy` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:18:24
[INFO] [stderr]    |
[INFO] [stderr] 18 |             check_copy(Foo($v));
[INFO] [stderr]    |                        ^^^^^^^ the trait `std::marker::Copy` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(i16,   1i16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 53 | fn check_copy(_: impl Copy) {}
[INFO] [stderr]    |                       ---- required by this bound in `check_copy`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Hash` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:19:24
[INFO] [stderr]    |
[INFO] [stderr] 19 |             check_hash(Foo($v));
[INFO] [stderr]    |                        ^^^^^^^ the trait `Hash` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(i16,   1i16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 54 | fn check_hash(_: impl core::hash::Hash) {}
[INFO] [stderr]    |                       ---------------- required by this bound in `check_hash`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Default` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:20:27
[INFO] [stderr]    |
[INFO] [stderr] 20 |             check_default(Foo($v));
[INFO] [stderr]    |                           ^^^^^^^ the trait `Default` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(i16,   1i16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 55 | fn check_default(_: impl Default) {}
[INFO] [stderr]    |                          ------- required by this bound in `check_default`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `main::Foo` doesn't implement `Debug`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:21:25
[INFO] [stderr]    |
[INFO] [stderr] 21 |             check_debug(Foo($v));
[INFO] [stderr]    |                         ^^^^^^^ `main::Foo` cannot be formatted using `{:?}`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(i16,   1i16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 56 | fn check_debug(_: impl core::fmt::Debug) {}
[INFO] [stderr]    |                        ---------------- required by this bound in `check_debug`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Debug` is not implemented for `main::Foo`
[INFO] [stderr]    = note: add `#[derive(Debug)]` or manually implement `Debug`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `main::Foo` doesn't implement `std::fmt::Display`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:22:27
[INFO] [stderr]    |
[INFO] [stderr] 22 |             check_display(Foo($v));
[INFO] [stderr]    |                           ^^^^^^^ `main::Foo` cannot be formatted with the default formatter
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(i16,   1i16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 57 | fn check_display(_: impl core::fmt::Display) {}
[INFO] [stderr]    |                          ------------------ required by this bound in `check_display`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `std::fmt::Display` is not implemented for `main::Foo`
[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 `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: AsRef<i16>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:23:26
[INFO] [stderr]    |
[INFO] [stderr] 9  |             fn check_as_ref(_: impl AsRef<$t>) {}
[INFO] [stderr]    |                                     --------- required by this bound in `main::check_as_ref`
[INFO] [stderr] ...
[INFO] [stderr] 23 |             check_as_ref(Foo($v));
[INFO] [stderr]    |                          ^^^^^^^ the trait `AsRef<i16>` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(i16,   1i16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: From<i16>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:24:24
[INFO] [stderr]    |
[INFO] [stderr] 10 |             fn check_from(_: impl From<$t>) {}
[INFO] [stderr]    |                                   -------- required by this bound in `main::check_from`
[INFO] [stderr] ...
[INFO] [stderr] 24 |             check_from(Foo($v));
[INFO] [stderr]    |                        ^^^^^^^ expected an implementor of trait `From<i16>`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(i16,   1i16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `i16: From<main::Foo>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:41:19
[INFO] [stderr]    |
[INFO] [stderr] 11 |             fn check_from_inner(_: impl From<Foo>) {}
[INFO] [stderr]    |                                         --------- required by this bound in `main::check_from_inner`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(i16,   1i16);
[INFO] [stderr]    |                   ^^^^
[INFO] [stderr]    |                   |
[INFO] [stderr]    |                   expected an implementor of trait `From<main::Foo>`
[INFO] [stderr]    |                   help: consider borrowing here: `&1i16`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: FromStr` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:26:28
[INFO] [stderr]    |
[INFO] [stderr] 26 |             check_from_str(Foo($v));
[INFO] [stderr]    |                            ^^^^^^^ the trait `FromStr` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(i16,   1i16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 58 | fn check_from_str(_: impl core::str::FromStr) {}
[INFO] [stderr]    |                           ------------------ required by this bound in `check_from_str`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:27:23
[INFO] [stderr]    |
[INFO] [stderr] 27 |             check_add(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(i16,   1i16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 59 | fn check_add<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_add`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:28:23
[INFO] [stderr]    |
[INFO] [stderr] 28 |             check_sub(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(i16,   1i16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 60 | fn check_sub<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_sub`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:29:23
[INFO] [stderr]    |
[INFO] [stderr] 29 |             check_mul(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(i16,   1i16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 61 | fn check_mul<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_mul`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:30:23
[INFO] [stderr]    |
[INFO] [stderr] 30 |             check_div(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(i16,   1i16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 62 | fn check_div<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_div`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add-assign `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:31:30
[INFO] [stderr]    |
[INFO] [stderr] 31 |             check_add_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo += main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(i16,   1i16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 63 | fn check_add_assign(_: impl core::ops::AddAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_add_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `AddAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot subtract-assign `main::Foo` from `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:32:30
[INFO] [stderr]    |
[INFO] [stderr] 32 |             check_sub_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo -= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(i16,   1i16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 64 | fn check_sub_assign(_: impl core::ops::SubAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_sub_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `SubAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot multiply-assign `main::Foo` by `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:33:30
[INFO] [stderr]    |
[INFO] [stderr] 33 |             check_mul_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo *= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(i16,   1i16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 65 | fn check_mul_assign(_: impl core::ops::MulAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_mul_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `MulAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot divide-assign `main::Foo` by `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:34:30
[INFO] [stderr]    |
[INFO] [stderr] 34 |             check_div_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo /= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(i16,   1i16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 66 | fn check_div_assign(_: impl core::ops::DivAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_div_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `DivAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: can't compare `main::Foo` with `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:13:30
[INFO] [stderr]    |
[INFO] [stderr] 13 |             check_partial_eq(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo == main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(i32,   1i32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 48 | fn check_partial_eq(_: impl PartialEq) {}
[INFO] [stderr]    |                             --------- required by this bound in `check_partial_eq`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `PartialEq` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: std::cmp::Eq` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:14:22
[INFO] [stderr]    |
[INFO] [stderr] 14 |             check_eq(Foo($v));
[INFO] [stderr]    |                      ^^^^^^^ the trait `std::cmp::Eq` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(i32,   1i32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 49 | fn check_eq(_: impl Eq) {}
[INFO] [stderr]    |                     -- required by this bound in `check_eq`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: can't compare `main::Foo` with `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:15:31
[INFO] [stderr]    |
[INFO] [stderr] 15 |             check_partial_ord(Foo($v));
[INFO] [stderr]    |                               ^^^^^^^ no implementation for `main::Foo < main::Foo` and `main::Foo > main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(i32,   1i32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 50 | fn check_partial_ord(_: impl PartialOrd) {}
[INFO] [stderr]    |                              ---------- required by this bound in `check_partial_ord`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `PartialOrd` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Ord` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:16:23
[INFO] [stderr]    |
[INFO] [stderr] 16 |             check_ord(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ the trait `Ord` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(i32,   1i32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 51 | fn check_ord(_: impl Ord) {}
[INFO] [stderr]    |                      --- required by this bound in `check_ord`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Clone` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:17:25
[INFO] [stderr]    |
[INFO] [stderr] 17 |             check_clone(Foo($v));
[INFO] [stderr]    |                         ^^^^^^^ the trait `Clone` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(i32,   1i32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 52 | fn check_clone(_: impl Clone) {}
[INFO] [stderr]    |                        ----- required by this bound in `check_clone`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: std::marker::Copy` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:18:24
[INFO] [stderr]    |
[INFO] [stderr] 18 |             check_copy(Foo($v));
[INFO] [stderr]    |                        ^^^^^^^ the trait `std::marker::Copy` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(i32,   1i32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 53 | fn check_copy(_: impl Copy) {}
[INFO] [stderr]    |                       ---- required by this bound in `check_copy`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Hash` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:19:24
[INFO] [stderr]    |
[INFO] [stderr] 19 |             check_hash(Foo($v));
[INFO] [stderr]    |                        ^^^^^^^ the trait `Hash` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(i32,   1i32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 54 | fn check_hash(_: impl core::hash::Hash) {}
[INFO] [stderr]    |                       ---------------- required by this bound in `check_hash`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Default` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:20:27
[INFO] [stderr]    |
[INFO] [stderr] 20 |             check_default(Foo($v));
[INFO] [stderr]    |                           ^^^^^^^ the trait `Default` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(i32,   1i32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 55 | fn check_default(_: impl Default) {}
[INFO] [stderr]    |                          ------- required by this bound in `check_default`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `main::Foo` doesn't implement `Debug`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:21:25
[INFO] [stderr]    |
[INFO] [stderr] 21 |             check_debug(Foo($v));
[INFO] [stderr]    |                         ^^^^^^^ `main::Foo` cannot be formatted using `{:?}`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(i32,   1i32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 56 | fn check_debug(_: impl core::fmt::Debug) {}
[INFO] [stderr]    |                        ---------------- required by this bound in `check_debug`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Debug` is not implemented for `main::Foo`
[INFO] [stderr]    = note: add `#[derive(Debug)]` or manually implement `Debug`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `main::Foo` doesn't implement `std::fmt::Display`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:22:27
[INFO] [stderr]    |
[INFO] [stderr] 22 |             check_display(Foo($v));
[INFO] [stderr]    |                           ^^^^^^^ `main::Foo` cannot be formatted with the default formatter
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(i32,   1i32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 57 | fn check_display(_: impl core::fmt::Display) {}
[INFO] [stderr]    |                          ------------------ required by this bound in `check_display`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `std::fmt::Display` is not implemented for `main::Foo`
[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 `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: AsRef<i32>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:23:26
[INFO] [stderr]    |
[INFO] [stderr] 9  |             fn check_as_ref(_: impl AsRef<$t>) {}
[INFO] [stderr]    |                                     --------- required by this bound in `main::check_as_ref`
[INFO] [stderr] ...
[INFO] [stderr] 23 |             check_as_ref(Foo($v));
[INFO] [stderr]    |                          ^^^^^^^ the trait `AsRef<i32>` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(i32,   1i32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: From<i32>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:24:24
[INFO] [stderr]    |
[INFO] [stderr] 10 |             fn check_from(_: impl From<$t>) {}
[INFO] [stderr]    |                                   -------- required by this bound in `main::check_from`
[INFO] [stderr] ...
[INFO] [stderr] 24 |             check_from(Foo($v));
[INFO] [stderr]    |                        ^^^^^^^ expected an implementor of trait `From<i32>`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(i32,   1i32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `i32: From<main::Foo>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:42:19
[INFO] [stderr]    |
[INFO] [stderr] 11 |             fn check_from_inner(_: impl From<Foo>) {}
[INFO] [stderr]    |                                         --------- required by this bound in `main::check_from_inner`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(i32,   1i32);
[INFO] [stderr]    |                   ^^^^
[INFO] [stderr]    |                   |
[INFO] [stderr]    |                   expected an implementor of trait `From<main::Foo>`
[INFO] [stderr]    |                   help: consider borrowing here: `&1i32`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: FromStr` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:26:28
[INFO] [stderr]    |
[INFO] [stderr] 26 |             check_from_str(Foo($v));
[INFO] [stderr]    |                            ^^^^^^^ the trait `FromStr` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(i32,   1i32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 58 | fn check_from_str(_: impl core::str::FromStr) {}
[INFO] [stderr]    |                           ------------------ required by this bound in `check_from_str`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:27:23
[INFO] [stderr]    |
[INFO] [stderr] 27 |             check_add(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(i32,   1i32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 59 | fn check_add<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_add`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:28:23
[INFO] [stderr]    |
[INFO] [stderr] 28 |             check_sub(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(i32,   1i32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 60 | fn check_sub<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_sub`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:29:23
[INFO] [stderr]    |
[INFO] [stderr] 29 |             check_mul(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(i32,   1i32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 61 | fn check_mul<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_mul`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:30:23
[INFO] [stderr]    |
[INFO] [stderr] 30 |             check_div(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(i32,   1i32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 62 | fn check_div<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_div`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add-assign `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:31:30
[INFO] [stderr]    |
[INFO] [stderr] 31 |             check_add_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo += main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(i32,   1i32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 63 | fn check_add_assign(_: impl core::ops::AddAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_add_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `AddAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot subtract-assign `main::Foo` from `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:32:30
[INFO] [stderr]    |
[INFO] [stderr] 32 |             check_sub_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo -= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(i32,   1i32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 64 | fn check_sub_assign(_: impl core::ops::SubAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_sub_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `SubAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot multiply-assign `main::Foo` by `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:33:30
[INFO] [stderr]    |
[INFO] [stderr] 33 |             check_mul_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo *= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(i32,   1i32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 65 | fn check_mul_assign(_: impl core::ops::MulAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_mul_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `MulAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot divide-assign `main::Foo` by `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:34:30
[INFO] [stderr]    |
[INFO] [stderr] 34 |             check_div_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo /= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(i32,   1i32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 66 | fn check_div_assign(_: impl core::ops::DivAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_div_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `DivAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: can't compare `main::Foo` with `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:13:30
[INFO] [stderr]    |
[INFO] [stderr] 13 |             check_partial_eq(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo == main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(i64,   1i64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 48 | fn check_partial_eq(_: impl PartialEq) {}
[INFO] [stderr]    |                             --------- required by this bound in `check_partial_eq`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `PartialEq` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: std::cmp::Eq` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:14:22
[INFO] [stderr]    |
[INFO] [stderr] 14 |             check_eq(Foo($v));
[INFO] [stderr]    |                      ^^^^^^^ the trait `std::cmp::Eq` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(i64,   1i64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 49 | fn check_eq(_: impl Eq) {}
[INFO] [stderr]    |                     -- required by this bound in `check_eq`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: can't compare `main::Foo` with `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:15:31
[INFO] [stderr]    |
[INFO] [stderr] 15 |             check_partial_ord(Foo($v));
[INFO] [stderr]    |                               ^^^^^^^ no implementation for `main::Foo < main::Foo` and `main::Foo > main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(i64,   1i64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 50 | fn check_partial_ord(_: impl PartialOrd) {}
[INFO] [stderr]    |                              ---------- required by this bound in `check_partial_ord`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `PartialOrd` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Ord` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:16:23
[INFO] [stderr]    |
[INFO] [stderr] 16 |             check_ord(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ the trait `Ord` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(i64,   1i64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 51 | fn check_ord(_: impl Ord) {}
[INFO] [stderr]    |                      --- required by this bound in `check_ord`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Clone` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:17:25
[INFO] [stderr]    |
[INFO] [stderr] 17 |             check_clone(Foo($v));
[INFO] [stderr]    |                         ^^^^^^^ the trait `Clone` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(i64,   1i64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 52 | fn check_clone(_: impl Clone) {}
[INFO] [stderr]    |                        ----- required by this bound in `check_clone`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: std::marker::Copy` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:18:24
[INFO] [stderr]    |
[INFO] [stderr] 18 |             check_copy(Foo($v));
[INFO] [stderr]    |                        ^^^^^^^ the trait `std::marker::Copy` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(i64,   1i64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 53 | fn check_copy(_: impl Copy) {}
[INFO] [stderr]    |                       ---- required by this bound in `check_copy`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Hash` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:19:24
[INFO] [stderr]    |
[INFO] [stderr] 19 |             check_hash(Foo($v));
[INFO] [stderr]    |                        ^^^^^^^ the trait `Hash` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(i64,   1i64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 54 | fn check_hash(_: impl core::hash::Hash) {}
[INFO] [stderr]    |                       ---------------- required by this bound in `check_hash`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Default` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:20:27
[INFO] [stderr]    |
[INFO] [stderr] 20 |             check_default(Foo($v));
[INFO] [stderr]    |                           ^^^^^^^ the trait `Default` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(i64,   1i64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 55 | fn check_default(_: impl Default) {}
[INFO] [stderr]    |                          ------- required by this bound in `check_default`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `main::Foo` doesn't implement `Debug`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:21:25
[INFO] [stderr]    |
[INFO] [stderr] 21 |             check_debug(Foo($v));
[INFO] [stderr]    |                         ^^^^^^^ `main::Foo` cannot be formatted using `{:?}`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(i64,   1i64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 56 | fn check_debug(_: impl core::fmt::Debug) {}
[INFO] [stderr]    |                        ---------------- required by this bound in `check_debug`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Debug` is not implemented for `main::Foo`
[INFO] [stderr]    = note: add `#[derive(Debug)]` or manually implement `Debug`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `main::Foo` doesn't implement `std::fmt::Display`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:22:27
[INFO] [stderr]    |
[INFO] [stderr] 22 |             check_display(Foo($v));
[INFO] [stderr]    |                           ^^^^^^^ `main::Foo` cannot be formatted with the default formatter
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(i64,   1i64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 57 | fn check_display(_: impl core::fmt::Display) {}
[INFO] [stderr]    |                          ------------------ required by this bound in `check_display`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `std::fmt::Display` is not implemented for `main::Foo`
[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 `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: AsRef<i64>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:23:26
[INFO] [stderr]    |
[INFO] [stderr] 9  |             fn check_as_ref(_: impl AsRef<$t>) {}
[INFO] [stderr]    |                                     --------- required by this bound in `main::check_as_ref`
[INFO] [stderr] ...
[INFO] [stderr] 23 |             check_as_ref(Foo($v));
[INFO] [stderr]    |                          ^^^^^^^ the trait `AsRef<i64>` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(i64,   1i64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: From<i64>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:24:24
[INFO] [stderr]    |
[INFO] [stderr] 10 |             fn check_from(_: impl From<$t>) {}
[INFO] [stderr]    |                                   -------- required by this bound in `main::check_from`
[INFO] [stderr] ...
[INFO] [stderr] 24 |             check_from(Foo($v));
[INFO] [stderr]    |                        ^^^^^^^ expected an implementor of trait `From<i64>`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(i64,   1i64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `i64: From<main::Foo>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:43:19
[INFO] [stderr]    |
[INFO] [stderr] 11 |             fn check_from_inner(_: impl From<Foo>) {}
[INFO] [stderr]    |                                         --------- required by this bound in `main::check_from_inner`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(i64,   1i64);
[INFO] [stderr]    |                   ^^^^
[INFO] [stderr]    |                   |
[INFO] [stderr]    |                   expected an implementor of trait `From<main::Foo>`
[INFO] [stderr]    |                   help: consider borrowing here: `&1i64`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: FromStr` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:26:28
[INFO] [stderr]    |
[INFO] [stderr] 26 |             check_from_str(Foo($v));
[INFO] [stderr]    |                            ^^^^^^^ the trait `FromStr` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(i64,   1i64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 58 | fn check_from_str(_: impl core::str::FromStr) {}
[INFO] [stderr]    |                           ------------------ required by this bound in `check_from_str`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:27:23
[INFO] [stderr]    |
[INFO] [stderr] 27 |             check_add(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(i64,   1i64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 59 | fn check_add<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_add`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:28:23
[INFO] [stderr]    |
[INFO] [stderr] 28 |             check_sub(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(i64,   1i64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 60 | fn check_sub<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_sub`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:29:23
[INFO] [stderr]    |
[INFO] [stderr] 29 |             check_mul(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(i64,   1i64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 61 | fn check_mul<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_mul`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:30:23
[INFO] [stderr]    |
[INFO] [stderr] 30 |             check_div(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(i64,   1i64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 62 | fn check_div<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_div`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add-assign `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:31:30
[INFO] [stderr]    |
[INFO] [stderr] 31 |             check_add_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo += main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(i64,   1i64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 63 | fn check_add_assign(_: impl core::ops::AddAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_add_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `AddAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot subtract-assign `main::Foo` from `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:32:30
[INFO] [stderr]    |
[INFO] [stderr] 32 |             check_sub_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo -= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(i64,   1i64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 64 | fn check_sub_assign(_: impl core::ops::SubAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_sub_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `SubAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot multiply-assign `main::Foo` by `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:33:30
[INFO] [stderr]    |
[INFO] [stderr] 33 |             check_mul_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo *= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(i64,   1i64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 65 | fn check_mul_assign(_: impl core::ops::MulAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_mul_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `MulAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot divide-assign `main::Foo` by `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:34:30
[INFO] [stderr]    |
[INFO] [stderr] 34 |             check_div_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo /= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(i64,   1i64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 66 | fn check_div_assign(_: impl core::ops::DivAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_div_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `DivAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: can't compare `main::Foo` with `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:13:30
[INFO] [stderr]    |
[INFO] [stderr] 13 |             check_partial_eq(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo == main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(i128,  1i128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 48 | fn check_partial_eq(_: impl PartialEq) {}
[INFO] [stderr]    |                             --------- required by this bound in `check_partial_eq`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `PartialEq` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: std::cmp::Eq` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:14:22
[INFO] [stderr]    |
[INFO] [stderr] 14 |             check_eq(Foo($v));
[INFO] [stderr]    |                      ^^^^^^^ the trait `std::cmp::Eq` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(i128,  1i128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 49 | fn check_eq(_: impl Eq) {}
[INFO] [stderr]    |                     -- required by this bound in `check_eq`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: can't compare `main::Foo` with `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:15:31
[INFO] [stderr]    |
[INFO] [stderr] 15 |             check_partial_ord(Foo($v));
[INFO] [stderr]    |                               ^^^^^^^ no implementation for `main::Foo < main::Foo` and `main::Foo > main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(i128,  1i128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 50 | fn check_partial_ord(_: impl PartialOrd) {}
[INFO] [stderr]    |                              ---------- required by this bound in `check_partial_ord`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `PartialOrd` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Ord` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:16:23
[INFO] [stderr]    |
[INFO] [stderr] 16 |             check_ord(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ the trait `Ord` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(i128,  1i128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 51 | fn check_ord(_: impl Ord) {}
[INFO] [stderr]    |                      --- required by this bound in `check_ord`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Clone` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:17:25
[INFO] [stderr]    |
[INFO] [stderr] 17 |             check_clone(Foo($v));
[INFO] [stderr]    |                         ^^^^^^^ the trait `Clone` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(i128,  1i128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 52 | fn check_clone(_: impl Clone) {}
[INFO] [stderr]    |                        ----- required by this bound in `check_clone`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: std::marker::Copy` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:18:24
[INFO] [stderr]    |
[INFO] [stderr] 18 |             check_copy(Foo($v));
[INFO] [stderr]    |                        ^^^^^^^ the trait `std::marker::Copy` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(i128,  1i128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 53 | fn check_copy(_: impl Copy) {}
[INFO] [stderr]    |                       ---- required by this bound in `check_copy`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Hash` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:19:24
[INFO] [stderr]    |
[INFO] [stderr] 19 |             check_hash(Foo($v));
[INFO] [stderr]    |                        ^^^^^^^ the trait `Hash` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(i128,  1i128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 54 | fn check_hash(_: impl core::hash::Hash) {}
[INFO] [stderr]    |                       ---------------- required by this bound in `check_hash`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Default` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:20:27
[INFO] [stderr]    |
[INFO] [stderr] 20 |             check_default(Foo($v));
[INFO] [stderr]    |                           ^^^^^^^ the trait `Default` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(i128,  1i128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 55 | fn check_default(_: impl Default) {}
[INFO] [stderr]    |                          ------- required by this bound in `check_default`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `main::Foo` doesn't implement `Debug`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:21:25
[INFO] [stderr]    |
[INFO] [stderr] 21 |             check_debug(Foo($v));
[INFO] [stderr]    |                         ^^^^^^^ `main::Foo` cannot be formatted using `{:?}`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(i128,  1i128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 56 | fn check_debug(_: impl core::fmt::Debug) {}
[INFO] [stderr]    |                        ---------------- required by this bound in `check_debug`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Debug` is not implemented for `main::Foo`
[INFO] [stderr]    = note: add `#[derive(Debug)]` or manually implement `Debug`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `main::Foo` doesn't implement `std::fmt::Display`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:22:27
[INFO] [stderr]    |
[INFO] [stderr] 22 |             check_display(Foo($v));
[INFO] [stderr]    |                           ^^^^^^^ `main::Foo` cannot be formatted with the default formatter
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(i128,  1i128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 57 | fn check_display(_: impl core::fmt::Display) {}
[INFO] [stderr]    |                          ------------------ required by this bound in `check_display`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `std::fmt::Display` is not implemented for `main::Foo`
[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 `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: AsRef<i128>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:23:26
[INFO] [stderr]    |
[INFO] [stderr] 9  |             fn check_as_ref(_: impl AsRef<$t>) {}
[INFO] [stderr]    |                                     --------- required by this bound in `main::check_as_ref`
[INFO] [stderr] ...
[INFO] [stderr] 23 |             check_as_ref(Foo($v));
[INFO] [stderr]    |                          ^^^^^^^ the trait `AsRef<i128>` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(i128,  1i128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: From<i128>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:24:24
[INFO] [stderr]    |
[INFO] [stderr] 10 |             fn check_from(_: impl From<$t>) {}
[INFO] [stderr]    |                                   -------- required by this bound in `main::check_from`
[INFO] [stderr] ...
[INFO] [stderr] 24 |             check_from(Foo($v));
[INFO] [stderr]    |                        ^^^^^^^ expected an implementor of trait `From<i128>`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(i128,  1i128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `i128: From<main::Foo>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:44:19
[INFO] [stderr]    |
[INFO] [stderr] 11 |             fn check_from_inner(_: impl From<Foo>) {}
[INFO] [stderr]    |                                         --------- required by this bound in `main::check_from_inner`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(i128,  1i128);
[INFO] [stderr]    |                   ^^^^^
[INFO] [stderr]    |                   |
[INFO] [stderr]    |                   expected an implementor of trait `From<main::Foo>`
[INFO] [stderr]    |                   help: consider borrowing here: `&1i128`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: FromStr` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:26:28
[INFO] [stderr]    |
[INFO] [stderr] 26 |             check_from_str(Foo($v));
[INFO] [stderr]    |                            ^^^^^^^ the trait `FromStr` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(i128,  1i128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 58 | fn check_from_str(_: impl core::str::FromStr) {}
[INFO] [stderr]    |                           ------------------ required by this bound in `check_from_str`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:27:23
[INFO] [stderr]    |
[INFO] [stderr] 27 |             check_add(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(i128,  1i128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 59 | fn check_add<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_add`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:28:23
[INFO] [stderr]    |
[INFO] [stderr] 28 |             check_sub(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(i128,  1i128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 60 | fn check_sub<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_sub`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:29:23
[INFO] [stderr]    |
[INFO] [stderr] 29 |             check_mul(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(i128,  1i128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 61 | fn check_mul<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_mul`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:30:23
[INFO] [stderr]    |
[INFO] [stderr] 30 |             check_div(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(i128,  1i128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 62 | fn check_div<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_div`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add-assign `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:31:30
[INFO] [stderr]    |
[INFO] [stderr] 31 |             check_add_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo += main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(i128,  1i128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 63 | fn check_add_assign(_: impl core::ops::AddAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_add_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `AddAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot subtract-assign `main::Foo` from `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:32:30
[INFO] [stderr]    |
[INFO] [stderr] 32 |             check_sub_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo -= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(i128,  1i128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 64 | fn check_sub_assign(_: impl core::ops::SubAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_sub_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `SubAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot multiply-assign `main::Foo` by `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:33:30
[INFO] [stderr]    |
[INFO] [stderr] 33 |             check_mul_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo *= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(i128,  1i128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 65 | fn check_mul_assign(_: impl core::ops::MulAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_mul_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `MulAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot divide-assign `main::Foo` by `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:34:30
[INFO] [stderr]    |
[INFO] [stderr] 34 |             check_div_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo /= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(i128,  1i128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 66 | fn check_div_assign(_: impl core::ops::DivAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_div_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `DivAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: can't compare `main::Foo` with `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:13:30
[INFO] [stderr]    |
[INFO] [stderr] 13 |             check_partial_eq(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo == main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(isize, 1isize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 48 | fn check_partial_eq(_: impl PartialEq) {}
[INFO] [stderr]    |                             --------- required by this bound in `check_partial_eq`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `PartialEq` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: std::cmp::Eq` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:14:22
[INFO] [stderr]    |
[INFO] [stderr] 14 |             check_eq(Foo($v));
[INFO] [stderr]    |                      ^^^^^^^ the trait `std::cmp::Eq` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(isize, 1isize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 49 | fn check_eq(_: impl Eq) {}
[INFO] [stderr]    |                     -- required by this bound in `check_eq`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: can't compare `main::Foo` with `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:15:31
[INFO] [stderr]    |
[INFO] [stderr] 15 |             check_partial_ord(Foo($v));
[INFO] [stderr]    |                               ^^^^^^^ no implementation for `main::Foo < main::Foo` and `main::Foo > main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(isize, 1isize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 50 | fn check_partial_ord(_: impl PartialOrd) {}
[INFO] [stderr]    |                              ---------- required by this bound in `check_partial_ord`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `PartialOrd` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Ord` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:16:23
[INFO] [stderr]    |
[INFO] [stderr] 16 |             check_ord(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ the trait `Ord` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(isize, 1isize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 51 | fn check_ord(_: impl Ord) {}
[INFO] [stderr]    |                      --- required by this bound in `check_ord`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Clone` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:17:25
[INFO] [stderr]    |
[INFO] [stderr] 17 |             check_clone(Foo($v));
[INFO] [stderr]    |                         ^^^^^^^ the trait `Clone` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(isize, 1isize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 52 | fn check_clone(_: impl Clone) {}
[INFO] [stderr]    |                        ----- required by this bound in `check_clone`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: std::marker::Copy` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:18:24
[INFO] [stderr]    |
[INFO] [stderr] 18 |             check_copy(Foo($v));
[INFO] [stderr]    |                        ^^^^^^^ the trait `std::marker::Copy` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(isize, 1isize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 53 | fn check_copy(_: impl Copy) {}
[INFO] [stderr]    |                       ---- required by this bound in `check_copy`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Hash` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:19:24
[INFO] [stderr]    |
[INFO] [stderr] 19 |             check_hash(Foo($v));
[INFO] [stderr]    |                        ^^^^^^^ the trait `Hash` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(isize, 1isize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 54 | fn check_hash(_: impl core::hash::Hash) {}
[INFO] [stderr]    |                       ---------------- required by this bound in `check_hash`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Default` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:20:27
[INFO] [stderr]    |
[INFO] [stderr] 20 |             check_default(Foo($v));
[INFO] [stderr]    |                           ^^^^^^^ the trait `Default` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(isize, 1isize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 55 | fn check_default(_: impl Default) {}
[INFO] [stderr]    |                          ------- required by this bound in `check_default`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `main::Foo` doesn't implement `Debug`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:21:25
[INFO] [stderr]    |
[INFO] [stderr] 21 |             check_debug(Foo($v));
[INFO] [stderr]    |                         ^^^^^^^ `main::Foo` cannot be formatted using `{:?}`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(isize, 1isize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 56 | fn check_debug(_: impl core::fmt::Debug) {}
[INFO] [stderr]    |                        ---------------- required by this bound in `check_debug`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Debug` is not implemented for `main::Foo`
[INFO] [stderr]    = note: add `#[derive(Debug)]` or manually implement `Debug`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `main::Foo` doesn't implement `std::fmt::Display`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:22:27
[INFO] [stderr]    |
[INFO] [stderr] 22 |             check_display(Foo($v));
[INFO] [stderr]    |                           ^^^^^^^ `main::Foo` cannot be formatted with the default formatter
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(isize, 1isize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 57 | fn check_display(_: impl core::fmt::Display) {}
[INFO] [stderr]    |                          ------------------ required by this bound in `check_display`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `std::fmt::Display` is not implemented for `main::Foo`
[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 `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: AsRef<isize>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:23:26
[INFO] [stderr]    |
[INFO] [stderr] 9  |             fn check_as_ref(_: impl AsRef<$t>) {}
[INFO] [stderr]    |                                     --------- required by this bound in `main::check_as_ref`
[INFO] [stderr] ...
[INFO] [stderr] 23 |             check_as_ref(Foo($v));
[INFO] [stderr]    |                          ^^^^^^^ the trait `AsRef<isize>` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(isize, 1isize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: From<isize>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:24:24
[INFO] [stderr]    |
[INFO] [stderr] 10 |             fn check_from(_: impl From<$t>) {}
[INFO] [stderr]    |                                   -------- required by this bound in `main::check_from`
[INFO] [stderr] ...
[INFO] [stderr] 24 |             check_from(Foo($v));
[INFO] [stderr]    |                        ^^^^^^^ expected an implementor of trait `From<isize>`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(isize, 1isize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `isize: From<main::Foo>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:45:19
[INFO] [stderr]    |
[INFO] [stderr] 11 |             fn check_from_inner(_: impl From<Foo>) {}
[INFO] [stderr]    |                                         --------- required by this bound in `main::check_from_inner`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(isize, 1isize);
[INFO] [stderr]    |                   ^^^^^^
[INFO] [stderr]    |                   |
[INFO] [stderr]    |                   expected an implementor of trait `From<main::Foo>`
[INFO] [stderr]    |                   help: consider borrowing here: `&1isize`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: FromStr` is not satisfied
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:26:28
[INFO] [stderr]    |
[INFO] [stderr] 26 |             check_from_str(Foo($v));
[INFO] [stderr]    |                            ^^^^^^^ the trait `FromStr` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(isize, 1isize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 58 | fn check_from_str(_: impl core::str::FromStr) {}
[INFO] [stderr]    |                           ------------------ required by this bound in `check_from_str`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:27:23
[INFO] [stderr]    |
[INFO] [stderr] 27 |             check_add(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(isize, 1isize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 59 | fn check_add<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_add`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:28:23
[INFO] [stderr]    |
[INFO] [stderr] 28 |             check_sub(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(isize, 1isize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 60 | fn check_sub<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_sub`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:29:23
[INFO] [stderr]    |
[INFO] [stderr] 29 |             check_mul(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(isize, 1isize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 61 | fn check_mul<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_mul`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:30:23
[INFO] [stderr]    |
[INFO] [stderr] 30 |             check_div(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(isize, 1isize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 62 | fn check_div<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_div`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add-assign `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:31:30
[INFO] [stderr]    |
[INFO] [stderr] 31 |             check_add_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo += main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(isize, 1isize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 63 | fn check_add_assign(_: impl core::ops::AddAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_add_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `AddAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot subtract-assign `main::Foo` from `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:32:30
[INFO] [stderr]    |
[INFO] [stderr] 32 |             check_sub_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo -= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(isize, 1isize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 64 | fn check_sub_assign(_: impl core::ops::SubAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_sub_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `SubAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot multiply-assign `main::Foo` by `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:33:30
[INFO] [stderr]    |
[INFO] [stderr] 33 |             check_mul_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo *= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(isize, 1isize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 65 | fn check_mul_assign(_: impl core::ops::MulAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_mul_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `MulAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot divide-assign `main::Foo` by `main::Foo`
[INFO] [stderr]   --> $DIR/pass-signed-int.rs:34:30
[INFO] [stderr]    |
[INFO] [stderr] 34 |             check_div_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo /= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(isize, 1isize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 66 | fn check_div_assign(_: impl core::ops::DivAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_div_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `DivAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] test pass-skip.rs [should pass] ... ok
[INFO] [stderr] test pass-string.rs [should pass] ... ok
[INFO] [stderr] test pass-unsigned-int.rs [should pass] ... error
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error: proc-macro derive panicked
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:6:22
[INFO] [stderr]    |
[INFO] [stderr] 6  |             #[derive(Synonym)]
[INFO] [stderr]    |                      ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(u8,    1u8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = help: message: Synonym supports only tuple structs with single unnamed field. Enums, unions and generic type parameters are not supported
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error: proc-macro derive panicked
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:6:22
[INFO] [stderr]    |
[INFO] [stderr] 6  |             #[derive(Synonym)]
[INFO] [stderr]    |                      ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(u16,   1u16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = help: message: Synonym supports only tuple structs with single unnamed field. Enums, unions and generic type parameters are not supported
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error: proc-macro derive panicked
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:6:22
[INFO] [stderr]    |
[INFO] [stderr] 6  |             #[derive(Synonym)]
[INFO] [stderr]    |                      ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(u32,   1u32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = help: message: Synonym supports only tuple structs with single unnamed field. Enums, unions and generic type parameters are not supported
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error: proc-macro derive panicked
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:6:22
[INFO] [stderr]    |
[INFO] [stderr] 6  |             #[derive(Synonym)]
[INFO] [stderr]    |                      ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(u64,   1u64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = help: message: Synonym supports only tuple structs with single unnamed field. Enums, unions and generic type parameters are not supported
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error: proc-macro derive panicked
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:6:22
[INFO] [stderr]    |
[INFO] [stderr] 6  |             #[derive(Synonym)]
[INFO] [stderr]    |                      ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(u128,  1u128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = help: message: Synonym supports only tuple structs with single unnamed field. Enums, unions and generic type parameters are not supported
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error: proc-macro derive panicked
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:6:22
[INFO] [stderr]    |
[INFO] [stderr] 6  |             #[derive(Synonym)]
[INFO] [stderr]    |                      ^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(usize, 1usize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = help: message: Synonym supports only tuple structs with single unnamed field. Enums, unions and generic type parameters are not supported
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: can't compare `main::Foo` with `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:13:30
[INFO] [stderr]    |
[INFO] [stderr] 13 |             check_partial_eq(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo == main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(u8,    1u8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 48 | fn check_partial_eq(_: impl PartialEq) {}
[INFO] [stderr]    |                             --------- required by this bound in `check_partial_eq`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `PartialEq` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: std::cmp::Eq` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:14:22
[INFO] [stderr]    |
[INFO] [stderr] 14 |             check_eq(Foo($v));
[INFO] [stderr]    |                      ^^^^^^^ the trait `std::cmp::Eq` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(u8,    1u8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 49 | fn check_eq(_: impl Eq) {}
[INFO] [stderr]    |                     -- required by this bound in `check_eq`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: can't compare `main::Foo` with `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:15:31
[INFO] [stderr]    |
[INFO] [stderr] 15 |             check_partial_ord(Foo($v));
[INFO] [stderr]    |                               ^^^^^^^ no implementation for `main::Foo < main::Foo` and `main::Foo > main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(u8,    1u8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 50 | fn check_partial_ord(_: impl PartialOrd) {}
[INFO] [stderr]    |                              ---------- required by this bound in `check_partial_ord`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `PartialOrd` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Ord` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:16:23
[INFO] [stderr]    |
[INFO] [stderr] 16 |             check_ord(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ the trait `Ord` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(u8,    1u8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 51 | fn check_ord(_: impl Ord) {}
[INFO] [stderr]    |                      --- required by this bound in `check_ord`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Clone` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:17:25
[INFO] [stderr]    |
[INFO] [stderr] 17 |             check_clone(Foo($v));
[INFO] [stderr]    |                         ^^^^^^^ the trait `Clone` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(u8,    1u8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 52 | fn check_clone(_: impl Clone) {}
[INFO] [stderr]    |                        ----- required by this bound in `check_clone`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: std::marker::Copy` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:18:24
[INFO] [stderr]    |
[INFO] [stderr] 18 |             check_copy(Foo($v));
[INFO] [stderr]    |                        ^^^^^^^ the trait `std::marker::Copy` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(u8,    1u8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 53 | fn check_copy(_: impl Copy) {}
[INFO] [stderr]    |                       ---- required by this bound in `check_copy`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Hash` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:19:24
[INFO] [stderr]    |
[INFO] [stderr] 19 |             check_hash(Foo($v));
[INFO] [stderr]    |                        ^^^^^^^ the trait `Hash` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(u8,    1u8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 54 | fn check_hash(_: impl core::hash::Hash) {}
[INFO] [stderr]    |                       ---------------- required by this bound in `check_hash`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Default` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:20:27
[INFO] [stderr]    |
[INFO] [stderr] 20 |             check_default(Foo($v));
[INFO] [stderr]    |                           ^^^^^^^ the trait `Default` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(u8,    1u8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 55 | fn check_default(_: impl Default) {}
[INFO] [stderr]    |                          ------- required by this bound in `check_default`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `main::Foo` doesn't implement `Debug`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:21:25
[INFO] [stderr]    |
[INFO] [stderr] 21 |             check_debug(Foo($v));
[INFO] [stderr]    |                         ^^^^^^^ `main::Foo` cannot be formatted using `{:?}`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(u8,    1u8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 56 | fn check_debug(_: impl core::fmt::Debug) {}
[INFO] [stderr]    |                        ---------------- required by this bound in `check_debug`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Debug` is not implemented for `main::Foo`
[INFO] [stderr]    = note: add `#[derive(Debug)]` or manually implement `Debug`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `main::Foo` doesn't implement `std::fmt::Display`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:22:27
[INFO] [stderr]    |
[INFO] [stderr] 22 |             check_display(Foo($v));
[INFO] [stderr]    |                           ^^^^^^^ `main::Foo` cannot be formatted with the default formatter
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(u8,    1u8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 57 | fn check_display(_: impl core::fmt::Display) {}
[INFO] [stderr]    |                          ------------------ required by this bound in `check_display`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `std::fmt::Display` is not implemented for `main::Foo`
[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 `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: AsRef<u8>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:23:26
[INFO] [stderr]    |
[INFO] [stderr] 9  |             fn check_as_ref(_: impl AsRef<$t>) {}
[INFO] [stderr]    |                                     --------- required by this bound in `main::check_as_ref`
[INFO] [stderr] ...
[INFO] [stderr] 23 |             check_as_ref(Foo($v));
[INFO] [stderr]    |                          ^^^^^^^ the trait `AsRef<u8>` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(u8,    1u8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: From<u8>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:24:24
[INFO] [stderr]    |
[INFO] [stderr] 10 |             fn check_from(_: impl From<$t>) {}
[INFO] [stderr]    |                                   -------- required by this bound in `main::check_from`
[INFO] [stderr] ...
[INFO] [stderr] 24 |             check_from(Foo($v));
[INFO] [stderr]    |                        ^^^^^^^ expected an implementor of trait `From<u8>`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(u8,    1u8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `u8: From<main::Foo>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:40:19
[INFO] [stderr]    |
[INFO] [stderr] 11 |             fn check_from_inner(_: impl From<Foo>) {}
[INFO] [stderr]    |                                         --------- required by this bound in `main::check_from_inner`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(u8,    1u8);
[INFO] [stderr]    |                   ^^^
[INFO] [stderr]    |                   |
[INFO] [stderr]    |                   expected an implementor of trait `From<main::Foo>`
[INFO] [stderr]    |                   help: consider borrowing here: `&1u8`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: FromStr` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:26:28
[INFO] [stderr]    |
[INFO] [stderr] 26 |             check_from_str(Foo($v));
[INFO] [stderr]    |                            ^^^^^^^ the trait `FromStr` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(u8,    1u8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 58 | fn check_from_str(_: impl core::str::FromStr) {}
[INFO] [stderr]    |                           ------------------ required by this bound in `check_from_str`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:27:23
[INFO] [stderr]    |
[INFO] [stderr] 27 |             check_add(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(u8,    1u8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 59 | fn check_add<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_add`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:28:23
[INFO] [stderr]    |
[INFO] [stderr] 28 |             check_sub(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(u8,    1u8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 60 | fn check_sub<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_sub`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:29:23
[INFO] [stderr]    |
[INFO] [stderr] 29 |             check_mul(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(u8,    1u8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 61 | fn check_mul<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_mul`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:30:23
[INFO] [stderr]    |
[INFO] [stderr] 30 |             check_div(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(u8,    1u8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 62 | fn check_div<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_div`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add-assign `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:31:30
[INFO] [stderr]    |
[INFO] [stderr] 31 |             check_add_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo += main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(u8,    1u8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 63 | fn check_add_assign(_: impl core::ops::AddAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_add_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `AddAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot subtract-assign `main::Foo` from `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:32:30
[INFO] [stderr]    |
[INFO] [stderr] 32 |             check_sub_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo -= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(u8,    1u8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 64 | fn check_sub_assign(_: impl core::ops::SubAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_sub_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `SubAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot multiply-assign `main::Foo` by `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:33:30
[INFO] [stderr]    |
[INFO] [stderr] 33 |             check_mul_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo *= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(u8,    1u8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 65 | fn check_mul_assign(_: impl core::ops::MulAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_mul_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `MulAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot divide-assign `main::Foo` by `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:34:30
[INFO] [stderr]    |
[INFO] [stderr] 34 |             check_div_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo /= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 40 |     check!(u8,    1u8);
[INFO] [stderr]    |     ------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 66 | fn check_div_assign(_: impl core::ops::DivAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_div_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `DivAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: can't compare `main::Foo` with `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:13:30
[INFO] [stderr]    |
[INFO] [stderr] 13 |             check_partial_eq(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo == main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(u16,   1u16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 48 | fn check_partial_eq(_: impl PartialEq) {}
[INFO] [stderr]    |                             --------- required by this bound in `check_partial_eq`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `PartialEq` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: std::cmp::Eq` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:14:22
[INFO] [stderr]    |
[INFO] [stderr] 14 |             check_eq(Foo($v));
[INFO] [stderr]    |                      ^^^^^^^ the trait `std::cmp::Eq` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(u16,   1u16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 49 | fn check_eq(_: impl Eq) {}
[INFO] [stderr]    |                     -- required by this bound in `check_eq`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: can't compare `main::Foo` with `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:15:31
[INFO] [stderr]    |
[INFO] [stderr] 15 |             check_partial_ord(Foo($v));
[INFO] [stderr]    |                               ^^^^^^^ no implementation for `main::Foo < main::Foo` and `main::Foo > main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(u16,   1u16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 50 | fn check_partial_ord(_: impl PartialOrd) {}
[INFO] [stderr]    |                              ---------- required by this bound in `check_partial_ord`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `PartialOrd` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Ord` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:16:23
[INFO] [stderr]    |
[INFO] [stderr] 16 |             check_ord(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ the trait `Ord` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(u16,   1u16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 51 | fn check_ord(_: impl Ord) {}
[INFO] [stderr]    |                      --- required by this bound in `check_ord`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Clone` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:17:25
[INFO] [stderr]    |
[INFO] [stderr] 17 |             check_clone(Foo($v));
[INFO] [stderr]    |                         ^^^^^^^ the trait `Clone` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(u16,   1u16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 52 | fn check_clone(_: impl Clone) {}
[INFO] [stderr]    |                        ----- required by this bound in `check_clone`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: std::marker::Copy` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:18:24
[INFO] [stderr]    |
[INFO] [stderr] 18 |             check_copy(Foo($v));
[INFO] [stderr]    |                        ^^^^^^^ the trait `std::marker::Copy` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(u16,   1u16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 53 | fn check_copy(_: impl Copy) {}
[INFO] [stderr]    |                       ---- required by this bound in `check_copy`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Hash` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:19:24
[INFO] [stderr]    |
[INFO] [stderr] 19 |             check_hash(Foo($v));
[INFO] [stderr]    |                        ^^^^^^^ the trait `Hash` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(u16,   1u16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 54 | fn check_hash(_: impl core::hash::Hash) {}
[INFO] [stderr]    |                       ---------------- required by this bound in `check_hash`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Default` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:20:27
[INFO] [stderr]    |
[INFO] [stderr] 20 |             check_default(Foo($v));
[INFO] [stderr]    |                           ^^^^^^^ the trait `Default` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(u16,   1u16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 55 | fn check_default(_: impl Default) {}
[INFO] [stderr]    |                          ------- required by this bound in `check_default`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `main::Foo` doesn't implement `Debug`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:21:25
[INFO] [stderr]    |
[INFO] [stderr] 21 |             check_debug(Foo($v));
[INFO] [stderr]    |                         ^^^^^^^ `main::Foo` cannot be formatted using `{:?}`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(u16,   1u16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 56 | fn check_debug(_: impl core::fmt::Debug) {}
[INFO] [stderr]    |                        ---------------- required by this bound in `check_debug`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Debug` is not implemented for `main::Foo`
[INFO] [stderr]    = note: add `#[derive(Debug)]` or manually implement `Debug`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `main::Foo` doesn't implement `std::fmt::Display`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:22:27
[INFO] [stderr]    |
[INFO] [stderr] 22 |             check_display(Foo($v));
[INFO] [stderr]    |                           ^^^^^^^ `main::Foo` cannot be formatted with the default formatter
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(u16,   1u16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 57 | fn check_display(_: impl core::fmt::Display) {}
[INFO] [stderr]    |                          ------------------ required by this bound in `check_display`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `std::fmt::Display` is not implemented for `main::Foo`
[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 `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: AsRef<u16>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:23:26
[INFO] [stderr]    |
[INFO] [stderr] 9  |             fn check_as_ref(_: impl AsRef<$t>) {}
[INFO] [stderr]    |                                     --------- required by this bound in `main::check_as_ref`
[INFO] [stderr] ...
[INFO] [stderr] 23 |             check_as_ref(Foo($v));
[INFO] [stderr]    |                          ^^^^^^^ the trait `AsRef<u16>` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(u16,   1u16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: From<u16>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:24:24
[INFO] [stderr]    |
[INFO] [stderr] 10 |             fn check_from(_: impl From<$t>) {}
[INFO] [stderr]    |                                   -------- required by this bound in `main::check_from`
[INFO] [stderr] ...
[INFO] [stderr] 24 |             check_from(Foo($v));
[INFO] [stderr]    |                        ^^^^^^^ expected an implementor of trait `From<u16>`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(u16,   1u16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `u16: From<main::Foo>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:41:19
[INFO] [stderr]    |
[INFO] [stderr] 11 |             fn check_from_inner(_: impl From<Foo>) {}
[INFO] [stderr]    |                                         --------- required by this bound in `main::check_from_inner`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(u16,   1u16);
[INFO] [stderr]    |                   ^^^^
[INFO] [stderr]    |                   |
[INFO] [stderr]    |                   expected an implementor of trait `From<main::Foo>`
[INFO] [stderr]    |                   help: consider borrowing here: `&1u16`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: FromStr` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:26:28
[INFO] [stderr]    |
[INFO] [stderr] 26 |             check_from_str(Foo($v));
[INFO] [stderr]    |                            ^^^^^^^ the trait `FromStr` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(u16,   1u16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 58 | fn check_from_str(_: impl core::str::FromStr) {}
[INFO] [stderr]    |                           ------------------ required by this bound in `check_from_str`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:27:23
[INFO] [stderr]    |
[INFO] [stderr] 27 |             check_add(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(u16,   1u16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 59 | fn check_add<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_add`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:28:23
[INFO] [stderr]    |
[INFO] [stderr] 28 |             check_sub(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(u16,   1u16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 60 | fn check_sub<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_sub`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:29:23
[INFO] [stderr]    |
[INFO] [stderr] 29 |             check_mul(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(u16,   1u16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 61 | fn check_mul<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_mul`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:30:23
[INFO] [stderr]    |
[INFO] [stderr] 30 |             check_div(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(u16,   1u16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 62 | fn check_div<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_div`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add-assign `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:31:30
[INFO] [stderr]    |
[INFO] [stderr] 31 |             check_add_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo += main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(u16,   1u16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 63 | fn check_add_assign(_: impl core::ops::AddAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_add_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `AddAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot subtract-assign `main::Foo` from `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:32:30
[INFO] [stderr]    |
[INFO] [stderr] 32 |             check_sub_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo -= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(u16,   1u16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 64 | fn check_sub_assign(_: impl core::ops::SubAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_sub_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `SubAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot multiply-assign `main::Foo` by `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:33:30
[INFO] [stderr]    |
[INFO] [stderr] 33 |             check_mul_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo *= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(u16,   1u16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 65 | fn check_mul_assign(_: impl core::ops::MulAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_mul_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `MulAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot divide-assign `main::Foo` by `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:34:30
[INFO] [stderr]    |
[INFO] [stderr] 34 |             check_div_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo /= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 41 |     check!(u16,   1u16);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 66 | fn check_div_assign(_: impl core::ops::DivAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_div_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `DivAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: can't compare `main::Foo` with `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:13:30
[INFO] [stderr]    |
[INFO] [stderr] 13 |             check_partial_eq(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo == main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(u32,   1u32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 48 | fn check_partial_eq(_: impl PartialEq) {}
[INFO] [stderr]    |                             --------- required by this bound in `check_partial_eq`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `PartialEq` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: std::cmp::Eq` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:14:22
[INFO] [stderr]    |
[INFO] [stderr] 14 |             check_eq(Foo($v));
[INFO] [stderr]    |                      ^^^^^^^ the trait `std::cmp::Eq` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(u32,   1u32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 49 | fn check_eq(_: impl Eq) {}
[INFO] [stderr]    |                     -- required by this bound in `check_eq`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: can't compare `main::Foo` with `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:15:31
[INFO] [stderr]    |
[INFO] [stderr] 15 |             check_partial_ord(Foo($v));
[INFO] [stderr]    |                               ^^^^^^^ no implementation for `main::Foo < main::Foo` and `main::Foo > main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(u32,   1u32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 50 | fn check_partial_ord(_: impl PartialOrd) {}
[INFO] [stderr]    |                              ---------- required by this bound in `check_partial_ord`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `PartialOrd` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Ord` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:16:23
[INFO] [stderr]    |
[INFO] [stderr] 16 |             check_ord(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ the trait `Ord` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(u32,   1u32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 51 | fn check_ord(_: impl Ord) {}
[INFO] [stderr]    |                      --- required by this bound in `check_ord`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Clone` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:17:25
[INFO] [stderr]    |
[INFO] [stderr] 17 |             check_clone(Foo($v));
[INFO] [stderr]    |                         ^^^^^^^ the trait `Clone` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(u32,   1u32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 52 | fn check_clone(_: impl Clone) {}
[INFO] [stderr]    |                        ----- required by this bound in `check_clone`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: std::marker::Copy` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:18:24
[INFO] [stderr]    |
[INFO] [stderr] 18 |             check_copy(Foo($v));
[INFO] [stderr]    |                        ^^^^^^^ the trait `std::marker::Copy` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(u32,   1u32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 53 | fn check_copy(_: impl Copy) {}
[INFO] [stderr]    |                       ---- required by this bound in `check_copy`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Hash` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:19:24
[INFO] [stderr]    |
[INFO] [stderr] 19 |             check_hash(Foo($v));
[INFO] [stderr]    |                        ^^^^^^^ the trait `Hash` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(u32,   1u32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 54 | fn check_hash(_: impl core::hash::Hash) {}
[INFO] [stderr]    |                       ---------------- required by this bound in `check_hash`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Default` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:20:27
[INFO] [stderr]    |
[INFO] [stderr] 20 |             check_default(Foo($v));
[INFO] [stderr]    |                           ^^^^^^^ the trait `Default` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(u32,   1u32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 55 | fn check_default(_: impl Default) {}
[INFO] [stderr]    |                          ------- required by this bound in `check_default`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `main::Foo` doesn't implement `Debug`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:21:25
[INFO] [stderr]    |
[INFO] [stderr] 21 |             check_debug(Foo($v));
[INFO] [stderr]    |                         ^^^^^^^ `main::Foo` cannot be formatted using `{:?}`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(u32,   1u32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 56 | fn check_debug(_: impl core::fmt::Debug) {}
[INFO] [stderr]    |                        ---------------- required by this bound in `check_debug`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Debug` is not implemented for `main::Foo`
[INFO] [stderr]    = note: add `#[derive(Debug)]` or manually implement `Debug`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `main::Foo` doesn't implement `std::fmt::Display`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:22:27
[INFO] [stderr]    |
[INFO] [stderr] 22 |             check_display(Foo($v));
[INFO] [stderr]    |                           ^^^^^^^ `main::Foo` cannot be formatted with the default formatter
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(u32,   1u32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 57 | fn check_display(_: impl core::fmt::Display) {}
[INFO] [stderr]    |                          ------------------ required by this bound in `check_display`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `std::fmt::Display` is not implemented for `main::Foo`
[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 `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: AsRef<u32>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:23:26
[INFO] [stderr]    |
[INFO] [stderr] 9  |             fn check_as_ref(_: impl AsRef<$t>) {}
[INFO] [stderr]    |                                     --------- required by this bound in `main::check_as_ref`
[INFO] [stderr] ...
[INFO] [stderr] 23 |             check_as_ref(Foo($v));
[INFO] [stderr]    |                          ^^^^^^^ the trait `AsRef<u32>` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(u32,   1u32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: From<u32>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:24:24
[INFO] [stderr]    |
[INFO] [stderr] 10 |             fn check_from(_: impl From<$t>) {}
[INFO] [stderr]    |                                   -------- required by this bound in `main::check_from`
[INFO] [stderr] ...
[INFO] [stderr] 24 |             check_from(Foo($v));
[INFO] [stderr]    |                        ^^^^^^^ expected an implementor of trait `From<u32>`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(u32,   1u32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `u32: From<main::Foo>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:42:19
[INFO] [stderr]    |
[INFO] [stderr] 11 |             fn check_from_inner(_: impl From<Foo>) {}
[INFO] [stderr]    |                                         --------- required by this bound in `main::check_from_inner`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(u32,   1u32);
[INFO] [stderr]    |                   ^^^^
[INFO] [stderr]    |                   |
[INFO] [stderr]    |                   expected an implementor of trait `From<main::Foo>`
[INFO] [stderr]    |                   help: consider borrowing here: `&1u32`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: FromStr` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:26:28
[INFO] [stderr]    |
[INFO] [stderr] 26 |             check_from_str(Foo($v));
[INFO] [stderr]    |                            ^^^^^^^ the trait `FromStr` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(u32,   1u32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 58 | fn check_from_str(_: impl core::str::FromStr) {}
[INFO] [stderr]    |                           ------------------ required by this bound in `check_from_str`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:27:23
[INFO] [stderr]    |
[INFO] [stderr] 27 |             check_add(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(u32,   1u32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 59 | fn check_add<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_add`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:28:23
[INFO] [stderr]    |
[INFO] [stderr] 28 |             check_sub(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(u32,   1u32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 60 | fn check_sub<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_sub`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:29:23
[INFO] [stderr]    |
[INFO] [stderr] 29 |             check_mul(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(u32,   1u32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 61 | fn check_mul<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_mul`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:30:23
[INFO] [stderr]    |
[INFO] [stderr] 30 |             check_div(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(u32,   1u32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 62 | fn check_div<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_div`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add-assign `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:31:30
[INFO] [stderr]    |
[INFO] [stderr] 31 |             check_add_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo += main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(u32,   1u32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 63 | fn check_add_assign(_: impl core::ops::AddAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_add_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `AddAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot subtract-assign `main::Foo` from `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:32:30
[INFO] [stderr]    |
[INFO] [stderr] 32 |             check_sub_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo -= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(u32,   1u32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 64 | fn check_sub_assign(_: impl core::ops::SubAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_sub_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `SubAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot multiply-assign `main::Foo` by `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:33:30
[INFO] [stderr]    |
[INFO] [stderr] 33 |             check_mul_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo *= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(u32,   1u32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 65 | fn check_mul_assign(_: impl core::ops::MulAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_mul_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `MulAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot divide-assign `main::Foo` by `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:34:30
[INFO] [stderr]    |
[INFO] [stderr] 34 |             check_div_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo /= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 42 |     check!(u32,   1u32);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 66 | fn check_div_assign(_: impl core::ops::DivAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_div_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `DivAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: can't compare `main::Foo` with `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:13:30
[INFO] [stderr]    |
[INFO] [stderr] 13 |             check_partial_eq(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo == main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(u64,   1u64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 48 | fn check_partial_eq(_: impl PartialEq) {}
[INFO] [stderr]    |                             --------- required by this bound in `check_partial_eq`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `PartialEq` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: std::cmp::Eq` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:14:22
[INFO] [stderr]    |
[INFO] [stderr] 14 |             check_eq(Foo($v));
[INFO] [stderr]    |                      ^^^^^^^ the trait `std::cmp::Eq` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(u64,   1u64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 49 | fn check_eq(_: impl Eq) {}
[INFO] [stderr]    |                     -- required by this bound in `check_eq`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: can't compare `main::Foo` with `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:15:31
[INFO] [stderr]    |
[INFO] [stderr] 15 |             check_partial_ord(Foo($v));
[INFO] [stderr]    |                               ^^^^^^^ no implementation for `main::Foo < main::Foo` and `main::Foo > main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(u64,   1u64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 50 | fn check_partial_ord(_: impl PartialOrd) {}
[INFO] [stderr]    |                              ---------- required by this bound in `check_partial_ord`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `PartialOrd` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Ord` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:16:23
[INFO] [stderr]    |
[INFO] [stderr] 16 |             check_ord(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ the trait `Ord` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(u64,   1u64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 51 | fn check_ord(_: impl Ord) {}
[INFO] [stderr]    |                      --- required by this bound in `check_ord`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Clone` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:17:25
[INFO] [stderr]    |
[INFO] [stderr] 17 |             check_clone(Foo($v));
[INFO] [stderr]    |                         ^^^^^^^ the trait `Clone` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(u64,   1u64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 52 | fn check_clone(_: impl Clone) {}
[INFO] [stderr]    |                        ----- required by this bound in `check_clone`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: std::marker::Copy` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:18:24
[INFO] [stderr]    |
[INFO] [stderr] 18 |             check_copy(Foo($v));
[INFO] [stderr]    |                        ^^^^^^^ the trait `std::marker::Copy` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(u64,   1u64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 53 | fn check_copy(_: impl Copy) {}
[INFO] [stderr]    |                       ---- required by this bound in `check_copy`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Hash` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:19:24
[INFO] [stderr]    |
[INFO] [stderr] 19 |             check_hash(Foo($v));
[INFO] [stderr]    |                        ^^^^^^^ the trait `Hash` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(u64,   1u64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 54 | fn check_hash(_: impl core::hash::Hash) {}
[INFO] [stderr]    |                       ---------------- required by this bound in `check_hash`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Default` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:20:27
[INFO] [stderr]    |
[INFO] [stderr] 20 |             check_default(Foo($v));
[INFO] [stderr]    |                           ^^^^^^^ the trait `Default` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(u64,   1u64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 55 | fn check_default(_: impl Default) {}
[INFO] [stderr]    |                          ------- required by this bound in `check_default`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `main::Foo` doesn't implement `Debug`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:21:25
[INFO] [stderr]    |
[INFO] [stderr] 21 |             check_debug(Foo($v));
[INFO] [stderr]    |                         ^^^^^^^ `main::Foo` cannot be formatted using `{:?}`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(u64,   1u64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 56 | fn check_debug(_: impl core::fmt::Debug) {}
[INFO] [stderr]    |                        ---------------- required by this bound in `check_debug`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Debug` is not implemented for `main::Foo`
[INFO] [stderr]    = note: add `#[derive(Debug)]` or manually implement `Debug`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `main::Foo` doesn't implement `std::fmt::Display`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:22:27
[INFO] [stderr]    |
[INFO] [stderr] 22 |             check_display(Foo($v));
[INFO] [stderr]    |                           ^^^^^^^ `main::Foo` cannot be formatted with the default formatter
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(u64,   1u64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 57 | fn check_display(_: impl core::fmt::Display) {}
[INFO] [stderr]    |                          ------------------ required by this bound in `check_display`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `std::fmt::Display` is not implemented for `main::Foo`
[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 `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: AsRef<u64>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:23:26
[INFO] [stderr]    |
[INFO] [stderr] 9  |             fn check_as_ref(_: impl AsRef<$t>) {}
[INFO] [stderr]    |                                     --------- required by this bound in `main::check_as_ref`
[INFO] [stderr] ...
[INFO] [stderr] 23 |             check_as_ref(Foo($v));
[INFO] [stderr]    |                          ^^^^^^^ the trait `AsRef<u64>` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(u64,   1u64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: From<u64>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:24:24
[INFO] [stderr]    |
[INFO] [stderr] 10 |             fn check_from(_: impl From<$t>) {}
[INFO] [stderr]    |                                   -------- required by this bound in `main::check_from`
[INFO] [stderr] ...
[INFO] [stderr] 24 |             check_from(Foo($v));
[INFO] [stderr]    |                        ^^^^^^^ expected an implementor of trait `From<u64>`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(u64,   1u64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `u64: From<main::Foo>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:43:19
[INFO] [stderr]    |
[INFO] [stderr] 11 |             fn check_from_inner(_: impl From<Foo>) {}
[INFO] [stderr]    |                                         --------- required by this bound in `main::check_from_inner`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(u64,   1u64);
[INFO] [stderr]    |                   ^^^^
[INFO] [stderr]    |                   |
[INFO] [stderr]    |                   expected an implementor of trait `From<main::Foo>`
[INFO] [stderr]    |                   help: consider borrowing here: `&1u64`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: FromStr` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:26:28
[INFO] [stderr]    |
[INFO] [stderr] 26 |             check_from_str(Foo($v));
[INFO] [stderr]    |                            ^^^^^^^ the trait `FromStr` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(u64,   1u64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 58 | fn check_from_str(_: impl core::str::FromStr) {}
[INFO] [stderr]    |                           ------------------ required by this bound in `check_from_str`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:27:23
[INFO] [stderr]    |
[INFO] [stderr] 27 |             check_add(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(u64,   1u64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 59 | fn check_add<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_add`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:28:23
[INFO] [stderr]    |
[INFO] [stderr] 28 |             check_sub(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(u64,   1u64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 60 | fn check_sub<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_sub`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:29:23
[INFO] [stderr]    |
[INFO] [stderr] 29 |             check_mul(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(u64,   1u64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 61 | fn check_mul<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_mul`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:30:23
[INFO] [stderr]    |
[INFO] [stderr] 30 |             check_div(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(u64,   1u64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 62 | fn check_div<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_div`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add-assign `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:31:30
[INFO] [stderr]    |
[INFO] [stderr] 31 |             check_add_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo += main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(u64,   1u64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 63 | fn check_add_assign(_: impl core::ops::AddAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_add_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `AddAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot subtract-assign `main::Foo` from `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:32:30
[INFO] [stderr]    |
[INFO] [stderr] 32 |             check_sub_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo -= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(u64,   1u64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 64 | fn check_sub_assign(_: impl core::ops::SubAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_sub_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `SubAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot multiply-assign `main::Foo` by `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:33:30
[INFO] [stderr]    |
[INFO] [stderr] 33 |             check_mul_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo *= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(u64,   1u64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 65 | fn check_mul_assign(_: impl core::ops::MulAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_mul_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `MulAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot divide-assign `main::Foo` by `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:34:30
[INFO] [stderr]    |
[INFO] [stderr] 34 |             check_div_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo /= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 43 |     check!(u64,   1u64);
[INFO] [stderr]    |     -------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 66 | fn check_div_assign(_: impl core::ops::DivAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_div_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `DivAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: can't compare `main::Foo` with `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:13:30
[INFO] [stderr]    |
[INFO] [stderr] 13 |             check_partial_eq(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo == main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(u128,  1u128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 48 | fn check_partial_eq(_: impl PartialEq) {}
[INFO] [stderr]    |                             --------- required by this bound in `check_partial_eq`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `PartialEq` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: std::cmp::Eq` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:14:22
[INFO] [stderr]    |
[INFO] [stderr] 14 |             check_eq(Foo($v));
[INFO] [stderr]    |                      ^^^^^^^ the trait `std::cmp::Eq` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(u128,  1u128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 49 | fn check_eq(_: impl Eq) {}
[INFO] [stderr]    |                     -- required by this bound in `check_eq`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: can't compare `main::Foo` with `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:15:31
[INFO] [stderr]    |
[INFO] [stderr] 15 |             check_partial_ord(Foo($v));
[INFO] [stderr]    |                               ^^^^^^^ no implementation for `main::Foo < main::Foo` and `main::Foo > main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(u128,  1u128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 50 | fn check_partial_ord(_: impl PartialOrd) {}
[INFO] [stderr]    |                              ---------- required by this bound in `check_partial_ord`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `PartialOrd` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Ord` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:16:23
[INFO] [stderr]    |
[INFO] [stderr] 16 |             check_ord(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ the trait `Ord` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(u128,  1u128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 51 | fn check_ord(_: impl Ord) {}
[INFO] [stderr]    |                      --- required by this bound in `check_ord`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Clone` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:17:25
[INFO] [stderr]    |
[INFO] [stderr] 17 |             check_clone(Foo($v));
[INFO] [stderr]    |                         ^^^^^^^ the trait `Clone` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(u128,  1u128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 52 | fn check_clone(_: impl Clone) {}
[INFO] [stderr]    |                        ----- required by this bound in `check_clone`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: std::marker::Copy` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:18:24
[INFO] [stderr]    |
[INFO] [stderr] 18 |             check_copy(Foo($v));
[INFO] [stderr]    |                        ^^^^^^^ the trait `std::marker::Copy` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(u128,  1u128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 53 | fn check_copy(_: impl Copy) {}
[INFO] [stderr]    |                       ---- required by this bound in `check_copy`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Hash` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:19:24
[INFO] [stderr]    |
[INFO] [stderr] 19 |             check_hash(Foo($v));
[INFO] [stderr]    |                        ^^^^^^^ the trait `Hash` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(u128,  1u128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 54 | fn check_hash(_: impl core::hash::Hash) {}
[INFO] [stderr]    |                       ---------------- required by this bound in `check_hash`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Default` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:20:27
[INFO] [stderr]    |
[INFO] [stderr] 20 |             check_default(Foo($v));
[INFO] [stderr]    |                           ^^^^^^^ the trait `Default` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(u128,  1u128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 55 | fn check_default(_: impl Default) {}
[INFO] [stderr]    |                          ------- required by this bound in `check_default`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `main::Foo` doesn't implement `Debug`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:21:25
[INFO] [stderr]    |
[INFO] [stderr] 21 |             check_debug(Foo($v));
[INFO] [stderr]    |                         ^^^^^^^ `main::Foo` cannot be formatted using `{:?}`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(u128,  1u128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 56 | fn check_debug(_: impl core::fmt::Debug) {}
[INFO] [stderr]    |                        ---------------- required by this bound in `check_debug`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Debug` is not implemented for `main::Foo`
[INFO] [stderr]    = note: add `#[derive(Debug)]` or manually implement `Debug`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `main::Foo` doesn't implement `std::fmt::Display`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:22:27
[INFO] [stderr]    |
[INFO] [stderr] 22 |             check_display(Foo($v));
[INFO] [stderr]    |                           ^^^^^^^ `main::Foo` cannot be formatted with the default formatter
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(u128,  1u128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 57 | fn check_display(_: impl core::fmt::Display) {}
[INFO] [stderr]    |                          ------------------ required by this bound in `check_display`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `std::fmt::Display` is not implemented for `main::Foo`
[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 `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: AsRef<u128>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:23:26
[INFO] [stderr]    |
[INFO] [stderr] 9  |             fn check_as_ref(_: impl AsRef<$t>) {}
[INFO] [stderr]    |                                     --------- required by this bound in `main::check_as_ref`
[INFO] [stderr] ...
[INFO] [stderr] 23 |             check_as_ref(Foo($v));
[INFO] [stderr]    |                          ^^^^^^^ the trait `AsRef<u128>` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(u128,  1u128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: From<u128>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:24:24
[INFO] [stderr]    |
[INFO] [stderr] 10 |             fn check_from(_: impl From<$t>) {}
[INFO] [stderr]    |                                   -------- required by this bound in `main::check_from`
[INFO] [stderr] ...
[INFO] [stderr] 24 |             check_from(Foo($v));
[INFO] [stderr]    |                        ^^^^^^^ expected an implementor of trait `From<u128>`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(u128,  1u128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `u128: From<main::Foo>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:44:19
[INFO] [stderr]    |
[INFO] [stderr] 11 |             fn check_from_inner(_: impl From<Foo>) {}
[INFO] [stderr]    |                                         --------- required by this bound in `main::check_from_inner`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(u128,  1u128);
[INFO] [stderr]    |                   ^^^^^
[INFO] [stderr]    |                   |
[INFO] [stderr]    |                   expected an implementor of trait `From<main::Foo>`
[INFO] [stderr]    |                   help: consider borrowing here: `&1u128`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: FromStr` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:26:28
[INFO] [stderr]    |
[INFO] [stderr] 26 |             check_from_str(Foo($v));
[INFO] [stderr]    |                            ^^^^^^^ the trait `FromStr` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(u128,  1u128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 58 | fn check_from_str(_: impl core::str::FromStr) {}
[INFO] [stderr]    |                           ------------------ required by this bound in `check_from_str`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:27:23
[INFO] [stderr]    |
[INFO] [stderr] 27 |             check_add(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(u128,  1u128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 59 | fn check_add<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_add`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:28:23
[INFO] [stderr]    |
[INFO] [stderr] 28 |             check_sub(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(u128,  1u128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 60 | fn check_sub<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_sub`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:29:23
[INFO] [stderr]    |
[INFO] [stderr] 29 |             check_mul(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(u128,  1u128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 61 | fn check_mul<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_mul`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:30:23
[INFO] [stderr]    |
[INFO] [stderr] 30 |             check_div(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(u128,  1u128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 62 | fn check_div<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_div`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add-assign `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:31:30
[INFO] [stderr]    |
[INFO] [stderr] 31 |             check_add_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo += main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(u128,  1u128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 63 | fn check_add_assign(_: impl core::ops::AddAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_add_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `AddAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot subtract-assign `main::Foo` from `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:32:30
[INFO] [stderr]    |
[INFO] [stderr] 32 |             check_sub_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo -= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(u128,  1u128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 64 | fn check_sub_assign(_: impl core::ops::SubAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_sub_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `SubAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot multiply-assign `main::Foo` by `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:33:30
[INFO] [stderr]    |
[INFO] [stderr] 33 |             check_mul_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo *= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(u128,  1u128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 65 | fn check_mul_assign(_: impl core::ops::MulAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_mul_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `MulAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot divide-assign `main::Foo` by `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:34:30
[INFO] [stderr]    |
[INFO] [stderr] 34 |             check_div_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo /= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 44 |     check!(u128,  1u128);
[INFO] [stderr]    |     --------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 66 | fn check_div_assign(_: impl core::ops::DivAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_div_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `DivAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: can't compare `main::Foo` with `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:13:30
[INFO] [stderr]    |
[INFO] [stderr] 13 |             check_partial_eq(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo == main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(usize, 1usize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 48 | fn check_partial_eq(_: impl PartialEq) {}
[INFO] [stderr]    |                             --------- required by this bound in `check_partial_eq`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `PartialEq` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: std::cmp::Eq` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:14:22
[INFO] [stderr]    |
[INFO] [stderr] 14 |             check_eq(Foo($v));
[INFO] [stderr]    |                      ^^^^^^^ the trait `std::cmp::Eq` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(usize, 1usize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 49 | fn check_eq(_: impl Eq) {}
[INFO] [stderr]    |                     -- required by this bound in `check_eq`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: can't compare `main::Foo` with `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:15:31
[INFO] [stderr]    |
[INFO] [stderr] 15 |             check_partial_ord(Foo($v));
[INFO] [stderr]    |                               ^^^^^^^ no implementation for `main::Foo < main::Foo` and `main::Foo > main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(usize, 1usize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 50 | fn check_partial_ord(_: impl PartialOrd) {}
[INFO] [stderr]    |                              ---------- required by this bound in `check_partial_ord`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `PartialOrd` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Ord` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:16:23
[INFO] [stderr]    |
[INFO] [stderr] 16 |             check_ord(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ the trait `Ord` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(usize, 1usize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 51 | fn check_ord(_: impl Ord) {}
[INFO] [stderr]    |                      --- required by this bound in `check_ord`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Clone` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:17:25
[INFO] [stderr]    |
[INFO] [stderr] 17 |             check_clone(Foo($v));
[INFO] [stderr]    |                         ^^^^^^^ the trait `Clone` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(usize, 1usize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 52 | fn check_clone(_: impl Clone) {}
[INFO] [stderr]    |                        ----- required by this bound in `check_clone`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: std::marker::Copy` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:18:24
[INFO] [stderr]    |
[INFO] [stderr] 18 |             check_copy(Foo($v));
[INFO] [stderr]    |                        ^^^^^^^ the trait `std::marker::Copy` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(usize, 1usize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 53 | fn check_copy(_: impl Copy) {}
[INFO] [stderr]    |                       ---- required by this bound in `check_copy`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Hash` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:19:24
[INFO] [stderr]    |
[INFO] [stderr] 19 |             check_hash(Foo($v));
[INFO] [stderr]    |                        ^^^^^^^ the trait `Hash` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(usize, 1usize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 54 | fn check_hash(_: impl core::hash::Hash) {}
[INFO] [stderr]    |                       ---------------- required by this bound in `check_hash`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: Default` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:20:27
[INFO] [stderr]    |
[INFO] [stderr] 20 |             check_default(Foo($v));
[INFO] [stderr]    |                           ^^^^^^^ the trait `Default` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(usize, 1usize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 55 | fn check_default(_: impl Default) {}
[INFO] [stderr]    |                          ------- required by this bound in `check_default`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `main::Foo` doesn't implement `Debug`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:21:25
[INFO] [stderr]    |
[INFO] [stderr] 21 |             check_debug(Foo($v));
[INFO] [stderr]    |                         ^^^^^^^ `main::Foo` cannot be formatted using `{:?}`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(usize, 1usize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 56 | fn check_debug(_: impl core::fmt::Debug) {}
[INFO] [stderr]    |                        ---------------- required by this bound in `check_debug`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Debug` is not implemented for `main::Foo`
[INFO] [stderr]    = note: add `#[derive(Debug)]` or manually implement `Debug`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: `main::Foo` doesn't implement `std::fmt::Display`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:22:27
[INFO] [stderr]    |
[INFO] [stderr] 22 |             check_display(Foo($v));
[INFO] [stderr]    |                           ^^^^^^^ `main::Foo` cannot be formatted with the default formatter
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(usize, 1usize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 57 | fn check_display(_: impl core::fmt::Display) {}
[INFO] [stderr]    |                          ------------------ required by this bound in `check_display`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `std::fmt::Display` is not implemented for `main::Foo`
[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 `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: AsRef<usize>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:23:26
[INFO] [stderr]    |
[INFO] [stderr] 9  |             fn check_as_ref(_: impl AsRef<$t>) {}
[INFO] [stderr]    |                                     --------- required by this bound in `main::check_as_ref`
[INFO] [stderr] ...
[INFO] [stderr] 23 |             check_as_ref(Foo($v));
[INFO] [stderr]    |                          ^^^^^^^ the trait `AsRef<usize>` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(usize, 1usize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: From<usize>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:24:24
[INFO] [stderr]    |
[INFO] [stderr] 10 |             fn check_from(_: impl From<$t>) {}
[INFO] [stderr]    |                                   -------- required by this bound in `main::check_from`
[INFO] [stderr] ...
[INFO] [stderr] 24 |             check_from(Foo($v));
[INFO] [stderr]    |                        ^^^^^^^ expected an implementor of trait `From<usize>`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(usize, 1usize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `usize: From<main::Foo>` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:45:19
[INFO] [stderr]    |
[INFO] [stderr] 11 |             fn check_from_inner(_: impl From<Foo>) {}
[INFO] [stderr]    |                                         --------- required by this bound in `main::check_from_inner`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(usize, 1usize);
[INFO] [stderr]    |                   ^^^^^^
[INFO] [stderr]    |                   |
[INFO] [stderr]    |                   expected an implementor of trait `From<main::Foo>`
[INFO] [stderr]    |                   help: consider borrowing here: `&1usize`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `main::Foo: FromStr` is not satisfied
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:26:28
[INFO] [stderr]    |
[INFO] [stderr] 26 |             check_from_str(Foo($v));
[INFO] [stderr]    |                            ^^^^^^^ the trait `FromStr` is not implemented for `main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(usize, 1usize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 58 | fn check_from_str(_: impl core::str::FromStr) {}
[INFO] [stderr]    |                           ------------------ required by this bound in `check_from_str`
[INFO] [stderr]    |
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:27:23
[INFO] [stderr]    |
[INFO] [stderr] 27 |             check_add(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(usize, 1usize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 59 | fn check_add<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_add`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:28:23
[INFO] [stderr]    |
[INFO] [stderr] 28 |             check_sub(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(usize, 1usize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 60 | fn check_sub<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_sub`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:29:23
[INFO] [stderr]    |
[INFO] [stderr] 29 |             check_mul(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(usize, 1usize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 61 | fn check_mul<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_mul`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:30:23
[INFO] [stderr]    |
[INFO] [stderr] 30 |             check_div(Foo($v));
[INFO] [stderr]    |                       ^^^^^^^ no implementation for `main::Foo + main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(usize, 1usize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 62 | fn check_div<T: core::ops::Add<T>>(_: T) {}
[INFO] [stderr]    |                 ----------------- required by this bound in `check_div`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `Add` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot add-assign `main::Foo` to `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:31:30
[INFO] [stderr]    |
[INFO] [stderr] 31 |             check_add_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo += main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(usize, 1usize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 63 | fn check_add_assign(_: impl core::ops::AddAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_add_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `AddAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot subtract-assign `main::Foo` from `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:32:30
[INFO] [stderr]    |
[INFO] [stderr] 32 |             check_sub_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo -= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(usize, 1usize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 64 | fn check_sub_assign(_: impl core::ops::SubAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_sub_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `SubAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot multiply-assign `main::Foo` by `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:33:30
[INFO] [stderr]    |
[INFO] [stderr] 33 |             check_mul_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo *= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(usize, 1usize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 65 | fn check_mul_assign(_: impl core::ops::MulAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_mul_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `MulAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: cannot divide-assign `main::Foo` by `main::Foo`
[INFO] [stderr]   --> $DIR/pass-unsigned-int.rs:34:30
[INFO] [stderr]    |
[INFO] [stderr] 34 |             check_div_assign(Foo($v));
[INFO] [stderr]    |                              ^^^^^^^ no implementation for `main::Foo /= main::Foo`
[INFO] [stderr] ...
[INFO] [stderr] 45 |     check!(usize, 1usize);
[INFO] [stderr]    |     ---------------------- in this macro invocation
[INFO] [stderr] ...
[INFO] [stderr] 66 | fn check_div_assign(_: impl core::ops::DivAssign) {}
[INFO] [stderr]    |                             -------------------- required by this bound in `check_div_assign`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `DivAssign` is not implemented for `main::Foo`
[INFO] [stderr]    = note: this error originates in the macro `check` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] test fail-enum.rs [should fail to compile] ... ok
[INFO] [stderr] test fail-generics.rs [should fail to compile] ... ok
[INFO] [stderr] test fail-named-field.rs [should fail to compile] ... ok
[INFO] [stderr] test fail-two-fields.rs [should fail to compile] ... ok
[INFO] [stderr] test fail-zero-fields.rs [should fail to compile] ... ok
[INFO] [stderr] 
[INFO] [stderr] 
[INFO] [stdout] test tests ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- tests stdout ----
[INFO] [stdout] thread 'tests' panicked at '4 of 13 tests failed', /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/trybuild-1.0.43/src/run.rs:73:13
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x55efb5f001a0 - std::backtrace_rs::backtrace::libunwind::trace::h34055254b57d8e79
[INFO] [stdout]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/../../backtrace/src/backtrace/libunwind.rs:90:5
[INFO] [stdout]    1:     0x55efb5f001a0 - std::backtrace_rs::backtrace::trace_unsynchronized::h8f1e3fbd9afff6ec
[INFO] [stdout]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x55efb5f001a0 - std::sys_common::backtrace::_print_fmt::h3a99a796b770c360
[INFO] [stdout]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/sys_common/backtrace.rs:67:5
[INFO] [stdout]    3:     0x55efb5f001a0 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h32d1f94a80615d18
[INFO] [stdout]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/sys_common/backtrace.rs:46:22
[INFO] [stdout]    4:     0x55efb5f256dc - core::fmt::write::h306731c068f7162c
[INFO] [stdout]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/core/src/fmt/mod.rs:1110:17
[INFO] [stdout]    5:     0x55efb5efc5c5 - std::io::Write::write_fmt::h87f19b0a2cd190bc
[INFO] [stdout]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/io/mod.rs:1588:15
[INFO] [stdout]    6:     0x55efb5f024bb - std::sys_common::backtrace::_print::h5abaa2601a852287
[INFO] [stdout]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/sys_common/backtrace.rs:49:5
[INFO] [stdout]    7:     0x55efb5f024bb - std::sys_common::backtrace::print::h8d81445442bb638f
[INFO] [stdout]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/sys_common/backtrace.rs:36:9
[INFO] [stdout]    8:     0x55efb5f024bb - std::panicking::default_hook::{{closure}}::hcfe804496a9fa747
[INFO] [stdout]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/panicking.rs:208:50
[INFO] [stdout]    9:     0x55efb5f01fcc - std::panicking::default_hook::hbea8e3ccf2ba8901
[INFO] [stdout]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/panicking.rs:222:9
[INFO] [stdout]   10:     0x55efb5f02b84 - std::panicking::rust_panic_with_hook::h7ee9e1a2d0f8975a
[INFO] [stdout]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/panicking.rs:622:17
[INFO] [stdout]   11:     0x55efb5f02667 - std::panicking::begin_panic_handler::{{closure}}::h8ab3b4491718b2c7
[INFO] [stdout]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/panicking.rs:519:13
[INFO] [stdout]   12:     0x55efb5f0069c - std::sys_common::backtrace::__rust_end_short_backtrace::hd489062ffa586a9f
[INFO] [stdout]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/sys_common/backtrace.rs:141:18
[INFO] [stdout]   13:     0x55efb5f025c9 - rust_begin_unwind
[INFO] [stdout]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/panicking.rs:515:5
[INFO] [stdout]   14:     0x55efb5c9bf9b - std::panicking::begin_panic_fmt::h5479575e112541f8
[INFO] [stdout]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/panicking.rs:457:5
[INFO] [stdout]   15:     0x55efb5cd08b2 - trybuild::run::<impl trybuild::Runner>::run::h54a89e2a40bf2990
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/trybuild-1.0.43/src/run.rs:73:13
[INFO] [stdout]   16:     0x55efb5cd5522 - <trybuild::TestCases as core::ops::drop::Drop>::drop::h53fddb4b43ae3f11
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/trybuild-1.0.43/src/lib.rs:306:13
[INFO] [stdout]   17:     0x55efb5c9de27 - core::ptr::drop_in_place<trybuild::TestCases>::hbd37472e8ea83bf0
[INFO] [stdout]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/core/src/ptr/mod.rs:192:1
[INFO] [stdout]   18:     0x55efb5c9df65 - tests::tests::h90f1a4335b51804a
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/progress.rs:7:1
[INFO] [stdout]   19:     0x55efb5c9deea - tests::tests::{{closure}}::h589896e5ef65666a
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/progress.rs:2:1
[INFO] [stdout]   20:     0x55efb5c9dd6e - core::ops::function::FnOnce::call_once::h2602fe199764c86b
[INFO] [stdout]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/core/src/ops/function.rs:227:5
[INFO] [stdout]   21:     0x55efb5ed5723 - core::ops::function::FnOnce::call_once::h152e7e439ff59e19
[INFO] [stdout]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/core/src/ops/function.rs:227:5
[INFO] [stdout]   22:     0x55efb5ed5723 - test::__rust_begin_short_backtrace::h0908f3b1fdbb72ab
[INFO] [stdout]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/test/src/lib.rs:577:5
[INFO] [stdout]   23:     0x55efb5ed41e0 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hf6d2a51e5587546c
[INFO] [stdout]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/alloc/src/boxed.rs:1575:9
[INFO] [stdout]   24:     0x55efb5ed41e0 - <std::panic::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h8af660f3a89ef593
[INFO] [stdout]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/panic.rs:347:9
[INFO] [stdout]   25:     0x55efb5ed41e0 - std::panicking::try::do_call::hd36aef60f84b6d36
[INFO] [stdout]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/panicking.rs:401:40
[INFO] [stdout]   26:     0x55efb5ed41e0 - std::panicking::try::h9932b4480e69817c
[INFO] [stdout]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/panicking.rs:365:19
[INFO] [stdout]   27:     0x55efb5ed41e0 - std::panic::catch_unwind::h6aa177099cfff5f8
[INFO] [stdout]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/panic.rs:434:14
[INFO] [stdout]   28:     0x55efb5ed41e0 - test::run_test_in_process::h5884d6f2d99e20c3
[INFO] [stdout]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/test/src/lib.rs:600:18
[INFO] [stdout]   29:     0x55efb5ed41e0 - test::run_test::run_test_inner::{{closure}}::h6fdc58c6d5f5b6e3
[INFO] [stdout]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/test/src/lib.rs:492:39
[INFO] [stdout]   30:     0x55efb5ead892 - test::run_test::run_test_inner::{{closure}}::h408365d67a78ade8
[INFO] [stdout]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/test/src/lib.rs:519:37
[INFO] [stdout]   31:     0x55efb5ead892 - std::sys_common::backtrace::__rust_begin_short_backtrace::hb560b77c4f701523
[INFO] [stdout]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/sys_common/backtrace.rs:125:18
[INFO] [stdout]   32:     0x55efb5eb1448 - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::hf2e7831dad93c597
[INFO] [stdout]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/thread/mod.rs:481:17
[INFO] [stdout]   33:     0x55efb5eb1448 - <std::panic::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hd2e08783d8be4d02
[INFO] [stdout]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/panic.rs:347:9
[INFO] [stdout]   34:     0x55efb5eb1448 - std::panicking::try::do_call::h062597b7acfd6b82
[INFO] [stdout]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/panicking.rs:401:40
[INFO] [stdout]   35:     0x55efb5eb1448 - std::panicking::try::h0d7b79db04c14552
[INFO] [stdout]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/panicking.rs:365:19
[INFO] [stdout]   36:     0x55efb5eb1448 - std::panic::catch_unwind::hb01a0b5e7c8cd43b
[INFO] [stdout]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/panic.rs:434:14
[INFO] [stdout]   37:     0x55efb5eb1448 - std::thread::Builder::spawn_unchecked::{{closure}}::h5bde48cc887e0d1e
[INFO] [stdout]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/thread/mod.rs:480:30
[INFO] [stdout]   38:     0x55efb5eb1448 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h745ea30807a29e55
[INFO] [stdout]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/core/src/ops/function.rs:227:5
[INFO] [stdout]   39:     0x55efb5f08b47 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h7ece6cfefaff1005
[INFO] [stdout]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/alloc/src/boxed.rs:1575:9
[INFO] [stdout]   40:     0x55efb5f08b47 - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hb8b48e55c21f193e
[INFO] [stdout]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/alloc/src/boxed.rs:1575:9
[INFO] [stdout]   41:     0x55efb5f08b47 - std::sys::unix::thread::Thread::new::thread_start::h8c7c4450dba62914
[INFO] [stdout]                                at /rustc/a178d0322ce20e33eac124758e837cbd80a6f633/library/std/src/sys/unix/thread.rs:71:17
[INFO] [stdout]   42:     0x7ffbb52f8609 - start_thread
[INFO] [stdout]   43:     0x7ffbb50ca293 - clone
[INFO] [stdout]   44:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     tests
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 32.59s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass '--test tests'
[INFO] running `Command { std: "docker" "inspect" "bfa9e5e28b669f6f3dfbba408f6ca175be95319a520bf9aefbc24f0c0f90368e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bfa9e5e28b669f6f3dfbba408f6ca175be95319a520bf9aefbc24f0c0f90368e", kill_on_drop: false }`
[INFO] [stdout] bfa9e5e28b669f6f3dfbba408f6ca175be95319a520bf9aefbc24f0c0f90368e
