[INFO] fetching crate tulip-derivative 2.2.1... [INFO] building tulip-derivative-2.2.1 against try#d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6 for pr-146237-1 [INFO] extracting crate tulip-derivative 2.2.1 into /workspace/builds/worker-1-tc2/source [INFO] started tweaking crates.io crate tulip-derivative 2.2.1 [INFO] finished tweaking crates.io crate tulip-derivative 2.2.1 [INFO] tweaked toml for crates.io crate tulip-derivative 2.2.1 written to /workspace/builds/worker-1-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate tulip-derivative 2.2.1 on toolchain d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 23 packages to latest compatible versions [INFO] [stderr] Adding runtime-macros-derive v0.4.0 (available: v0.8.0) [INFO] [stderr] Adding syn v1.0.109 (available: v2.0.106) [INFO] [stderr] Adding trybuild v1.0.22 (available: v1.0.111) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 50ae80499c8660d5792002e511c8a30d55d4f6ae4c6516237cd1f4131c5c57e1 [INFO] running `Command { std: "docker" "start" "-a" "50ae80499c8660d5792002e511c8a30d55d4f6ae4c6516237cd1f4131c5c57e1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "50ae80499c8660d5792002e511c8a30d55d4f6ae4c6516237cd1f4131c5c57e1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "50ae80499c8660d5792002e511c8a30d55d4f6ae4c6516237cd1f4131c5c57e1", kill_on_drop: false }` [INFO] [stdout] 50ae80499c8660d5792002e511c8a30d55d4f6ae4c6516237cd1f4131c5c57e1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] a718c10c53b7f700489b753ff26115a633359b0556ed334de5165d5ff993b4d0 [INFO] running `Command { std: "docker" "start" "-a" "a718c10c53b7f700489b753ff26115a633359b0556ed334de5165d5ff993b4d0", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Compiling proc-macro2 v1.0.101 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling quote v1.0.40 [INFO] [stderr] Compiling tulip-derivative v2.2.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: unexpected `cfg` condition name: `tarpaulin_include` [INFO] [stdout] --> src/lib.rs:72:11 [INFO] [stdout] | [INFO] [stdout] 72 | #[cfg(not(tarpaulin_include))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: expected names are: `docsrs`, `feature`, and `test` and 31 more [INFO] [stdout] = help: consider using a Cargo feature instead [INFO] [stdout] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stdout] [lints.rust] [INFO] [stdout] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tarpaulin_include)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(tarpaulin_include)");` to the top of the `build.rs` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `span` is never read [INFO] [stdout] --> src/ast.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 30 | pub struct Field<'a> { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] ... [INFO] [stdout] 34 | pub span: proc_macro2::Span, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Field` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/ast.rs:87:23 [INFO] [stdout] | [INFO] [stdout] 87 | pub fn all_fields(&self) -> Vec<&Field> { [INFO] [stdout] | ^^^^^ ^^^^^^ [INFO] [stdout] | | || [INFO] [stdout] | | |the same lifetime is hidden here [INFO] [stdout] | | the same lifetime is elided here [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 87 | pub fn all_fields(&self) -> Vec<&Field<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 10.51s [INFO] running `Command { std: "docker" "inspect" "a718c10c53b7f700489b753ff26115a633359b0556ed334de5165d5ff993b4d0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a718c10c53b7f700489b753ff26115a633359b0556ed334de5165d5ff993b4d0", kill_on_drop: false }` [INFO] [stdout] a718c10c53b7f700489b753ff26115a633359b0556ed334de5165d5ff993b4d0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d79d87d4c0f7f0d0785ad6e493cf8cf718ed89a6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] ab7870c236b27906db02241c3057be45ce597f4c311375f9b48d3ec99dde9a50 [INFO] running `Command { std: "docker" "start" "-a" "ab7870c236b27906db02241c3057be45ce597f4c311375f9b48d3ec99dde9a50", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Compiling proc-macro2 v1.0.101 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling glob v0.3.3 [INFO] [stderr] Compiling quote v1.0.40 [INFO] [stderr] Compiling syn v2.0.106 [INFO] [stderr] Compiling runtime-macros-derive v0.4.0 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling tulip-derivative v2.2.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: unexpected `cfg` condition name: `tarpaulin_include` [INFO] [stdout] --> src/lib.rs:72:11 [INFO] [stdout] | [INFO] [stdout] 72 | #[cfg(not(tarpaulin_include))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: expected names are: `docsrs`, `feature`, and `test` and 31 more [INFO] [stdout] = help: consider using a Cargo feature instead [INFO] [stdout] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stdout] [lints.rust] [INFO] [stdout] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tarpaulin_include)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(tarpaulin_include)");` to the top of the `build.rs` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/ast.rs:87:23 [INFO] [stdout] | [INFO] [stdout] 87 | pub fn all_fields(&self) -> Vec<&Field> { [INFO] [stdout] | ^^^^^ ^^^^^^ [INFO] [stdout] | | || [INFO] [stdout] | | |the same lifetime is hidden here [INFO] [stdout] | | the same lifetime is elided here [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 87 | pub fn all_fields(&self) -> Vec<&Field<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `span` is never read [INFO] [stdout] --> src/ast.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 30 | pub struct Field<'a> { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] ... [INFO] [stdout] 34 | pub span: proc_macro2::Span, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Field` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling toml v0.5.11 [INFO] [stderr] Compiling trybuild v1.0.22 [INFO] [stdout] error[E0463]: can't find crate for `derivative` [INFO] [stdout] --> tests/rustc-issue-16530.rs:19:1 [INFO] [stdout] | [INFO] [stdout] 19 | extern crate derivative; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ can't find crate [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0463]: can't find crate for `derivative` [INFO] [stdout] --> tests/rustc-issue-25394.rs:15:1 [INFO] [stdout] | [INFO] [stdout] 15 | extern crate derivative; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ can't find crate [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0463]: can't find crate for `derivative` [INFO] [stdout] --> tests/derive-debug-packed.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | extern crate derivative; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ can't find crate [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Derivative` in this scope [INFO] [stdout] --> tests/rustc-issue-16530.rs:21:10 [INFO] [stdout] | [INFO] [stdout] 21 | #[derive(Derivative)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find attribute `derivative` in this scope [INFO] [stdout] --> tests/rustc-issue-16530.rs:22:3 [INFO] [stdout] | [INFO] [stdout] 22 | #[derivative(Hash)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `derivative` is imported here, but it is an unresolved item, not an attribute [INFO] [stdout] --> tests/rustc-issue-16530.rs:19:1 [INFO] [stdout] | [INFO] [stdout] 19 | extern crate derivative; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Derivative` in this scope [INFO] [stdout] --> tests/rustc-issue-25394.rs:17:10 [INFO] [stdout] | [INFO] [stdout] 17 | #[derive(Derivative)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find attribute `derivative` in this scope [INFO] [stdout] --> tests/rustc-issue-25394.rs:18:3 [INFO] [stdout] | [INFO] [stdout] 18 | #[derivative(Debug)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `derivative` is imported here, but it is an unresolved item, not an attribute [INFO] [stdout] --> tests/rustc-issue-25394.rs:15:1 [INFO] [stdout] | [INFO] [stdout] 15 | extern crate derivative; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `tarpaulin_include` [INFO] [stdout] --> tests/rustc-issue-25394.rs:21:11 [INFO] [stdout] | [INFO] [stdout] 21 | #[cfg(not(tarpaulin_include))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: expected names are: `docsrs`, `feature`, and `test` and 31 more [INFO] [stdout] = help: consider using a Cargo feature instead [INFO] [stdout] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stdout] [lints.rust] [INFO] [stdout] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tarpaulin_include)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(tarpaulin_include)");` to the top of the `build.rs` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0463]: can't find crate for `derivative` [INFO] [stdout] --> tests/derive-eq.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | extern crate derivative; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ can't find crate [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0463]: can't find crate for `derivative` [INFO] [stdout] --> tests/issue-67.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | extern crate derivative; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ can't find crate [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Derivative` in this scope [INFO] [stdout] --> tests/derive-debug-packed.rs:7:10 [INFO] [stdout] | [INFO] [stdout] 7 | #[derive(Derivative)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find attribute `derivative` in this scope [INFO] [stdout] --> tests/derive-debug-packed.rs:8:3 [INFO] [stdout] | [INFO] [stdout] 8 | #[derivative(Debug)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `derivative` is imported here, but it is an unresolved item, not an attribute [INFO] [stdout] --> tests/derive-debug-packed.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | extern crate derivative; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find attribute `derivative` in this scope [INFO] [stdout] --> tests/derive-debug-packed.rs:12:7 [INFO] [stdout] | [INFO] [stdout] 12 | #[derivative(Debug="ignore")] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `derivative` is imported here, but it is an unresolved item, not an attribute [INFO] [stdout] --> tests/derive-debug-packed.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | extern crate derivative; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0463`. [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Derivative` in this scope [INFO] [stdout] --> tests/derive-debug-packed.rs:16:10 [INFO] [stdout] | [INFO] [stdout] 16 | #[derive(Derivative)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `tulip-derivative` (test "rustc-issue-25394") due to 3 previous errors; 1 warning emitted [INFO] [stdout] error: cannot find attribute `derivative` in this scope [INFO] [stdout] --> tests/derive-debug-packed.rs:17:3 [INFO] [stdout] | [INFO] [stdout] 17 | #[derivative(Debug)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `derivative` is imported here, but it is an unresolved item, not an attribute [INFO] [stdout] --> tests/derive-debug-packed.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | extern crate derivative; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error: cannot find attribute `derivative` in this scope [INFO] [stdout] --> tests/derive-debug-packed.rs:21:7 [INFO] [stdout] | [INFO] [stdout] 21 | #[derivative(Debug="ignore")] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `derivative` is imported here, but it is an unresolved item, not an attribute [INFO] [stdout] --> tests/derive-debug-packed.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | extern crate derivative; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Derivative` in this scope [INFO] [stdout] --> tests/derive-debug-packed.rs:25:10 [INFO] [stdout] | [INFO] [stdout] 25 | #[derive(Derivative)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find attribute `derivative` in this scope [INFO] [stdout] --> tests/derive-debug-packed.rs:26:3 [INFO] [stdout] | [INFO] [stdout] 26 | #[derivative(Debug)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `derivative` is imported here, but it is an unresolved item, not an attribute [INFO] [stdout] --> tests/derive-debug-packed.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | extern crate derivative; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find attribute `derivative` in this scope [INFO] [stdout] --> tests/derive-debug-packed.rs:28:12 [INFO] [stdout] | [INFO] [stdout] 28 | struct F(#[derivative(Debug="ignore")] isize); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `derivative` is imported here, but it is an unresolved item, not an attribute [INFO] [stdout] --> tests/derive-debug-packed.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | extern crate derivative; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Derivative` in this scope [INFO] [stdout] --> tests/derive-debug-packed.rs:30:10 [INFO] [stdout] | [INFO] [stdout] 30 | #[derive(Derivative)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find attribute `derivative` in this scope [INFO] [stdout] --> tests/derive-debug-packed.rs:31:3 [INFO] [stdout] | [INFO] [stdout] 31 | #[derivative(Debug)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `derivative` is imported here, but it is an unresolved item, not an attribute [INFO] [stdout] --> tests/derive-debug-packed.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | extern crate derivative; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0463]: can't find crate for `derivative` [INFO] [stdout] --> tests/derive-hash.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | extern crate derivative; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ can't find crate [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find attribute `derivative` in this scope [INFO] [stdout] --> tests/derive-debug-packed.rs:33:19 [INFO] [stdout] | [INFO] [stdout] 33 | struct G(isize, #[derivative(Debug="ignore")] isize); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `derivative` is imported here, but it is an unresolved item, not an attribute [INFO] [stdout] --> tests/derive-debug-packed.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | extern crate derivative; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Derivative` in this scope [INFO] [stdout] --> tests/derive-debug-packed.rs:35:10 [INFO] [stdout] | [INFO] [stdout] 35 | #[derive(Derivative)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find attribute `derivative` in this scope [INFO] [stdout] --> tests/derive-debug-packed.rs:36:3 [INFO] [stdout] | [INFO] [stdout] 36 | #[derivative(Debug)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `derivative` is imported here, but it is an unresolved item, not an attribute [INFO] [stdout] --> tests/derive-debug-packed.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | extern crate derivative; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0463]: can't find crate for `derivative` [INFO] [stdout] --> tests/rustc-issue-29030.rs:15:1 [INFO] [stdout] | [INFO] [stdout] 15 | extern crate derivative; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ can't find crate [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find attribute `derivative` in this scope [INFO] [stdout] --> tests/derive-debug-packed.rs:38:12 [INFO] [stdout] | [INFO] [stdout] 38 | struct J(#[derivative(Debug="ignore")] NoDebug); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `derivative` is imported here, but it is an unresolved item, not an attribute [INFO] [stdout] --> tests/derive-debug-packed.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | extern crate derivative; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Derivative` in this scope [INFO] [stdout] --> tests/derive-debug-packed.rs:40:10 [INFO] [stdout] | [INFO] [stdout] 40 | #[derive(Derivative)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find attribute `derivative` in this scope [INFO] [stdout] --> tests/derive-debug-packed.rs:41:3 [INFO] [stdout] | [INFO] [stdout] 41 | #[derivative(Debug)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `derivative` is imported here, but it is an unresolved item, not an attribute [INFO] [stdout] --> tests/derive-debug-packed.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | extern crate derivative; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find attribute `derivative` in this scope [INFO] [stdout] --> tests/derive-debug-packed.rs:43:19 [INFO] [stdout] | [INFO] [stdout] 43 | struct K(isize, #[derivative(Debug="ignore")] NoDebug); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `derivative` is imported here, but it is an unresolved item, not an attribute [INFO] [stdout] --> tests/derive-debug-packed.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | extern crate derivative; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Derivative` in this scope [INFO] [stdout] --> tests/derive-debug-packed.rs:45:10 [INFO] [stdout] | [INFO] [stdout] 45 | #[derive(Derivative)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Derivative` in this scope [INFO] [stdout] --> tests/derive-eq.rs:9:10 [INFO] [stdout] | [INFO] [stdout] 9 | #[derive(Derivative, PartialEq)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find attribute `derivative` in this scope [INFO] [stdout] --> tests/derive-debug-packed.rs:46:3 [INFO] [stdout] | [INFO] [stdout] 46 | #[derivative(Debug)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `derivative` is imported here, but it is an unresolved item, not an attribute [INFO] [stdout] --> tests/derive-debug-packed.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | extern crate derivative; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Derivative` in this scope [INFO] [stdout] --> tests/issue-67.rs:7:10 [INFO] [stdout] | [INFO] [stdout] 7 | #[derive(Derivative)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find attribute `derivative` in this scope [INFO] [stdout] --> tests/derive-debug-packed.rs:49:7 [INFO] [stdout] | [INFO] [stdout] 49 | #[derivative(Debug="ignore")] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `derivative` is imported here, but it is an unresolved item, not an attribute [INFO] [stdout] --> tests/derive-debug-packed.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | extern crate derivative; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find attribute `derivative` in this scope [INFO] [stdout] --> tests/derive-eq.rs:10:3 [INFO] [stdout] | [INFO] [stdout] 10 | #[derivative(Eq)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `derivative` is imported here, but it is an unresolved item, not an attribute [INFO] [stdout] --> tests/derive-eq.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | extern crate derivative; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find attribute `derivative` in this scope [INFO] [stdout] --> tests/issue-67.rs:8:3 [INFO] [stdout] | [INFO] [stdout] 8 | #[derivative(Hash)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `derivative` is imported here, but it is an unresolved item, not an attribute [INFO] [stdout] --> tests/issue-67.rs:5:1 [INFO] [stdout] | [INFO] [stdout] 5 | extern crate derivative; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Derivative` in this scope [INFO] [stdout] --> tests/derive-eq.rs:15:10 [INFO] [stdout] | [INFO] [stdout] 15 | #[derive(Derivative)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0463`. [INFO] [stdout] [INFO] [stdout] error: cannot find attribute `derivative` in this scope [INFO] [stdout] --> tests/derive-eq.rs:16:3 [INFO] [stdout] | [INFO] [stdout] 16 | #[derivative(Eq)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `derivative` is imported here, but it is an unresolved item, not an attribute [INFO] [stdout] --> tests/derive-eq.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | extern crate derivative; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: `Foo` doesn't implement `Debug` [INFO] [stdout] --> tests/derive-debug-packed.rs:67:40 [INFO] [stdout] | [INFO] [stdout] 10 | struct Foo { [INFO] [stdout] | ---------- method `to_show` not found for this struct because it doesn't satisfy `Foo: Debug` or `Foo: ToDebug` [INFO] [stdout] ... [INFO] [stdout] 67 | assert_eq!(Foo { foo: 42, bar: 1 }.to_show(), "Foo { foo: 42 }".to_string()); [INFO] [stdout] | ^^^^^^^ method cannot be called on `Foo` due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] note: trait bound `Foo: Debug` was not satisfied [INFO] [stdout] --> tests/derive-debug-packed.rs:59:9 [INFO] [stdout] | [INFO] [stdout] 59 | impl ToDebug for T { [INFO] [stdout] | ^^^^^^^^^^^^^^^ ------- - [INFO] [stdout] | | [INFO] [stdout] | unsatisfied trait bound introduced here [INFO] [stdout] = note: add `#[derive(Debug)]` to `Foo` or manually `impl Debug for Foo` [INFO] [stdout] help: consider annotating `Foo` with `#[derive(Debug)]` [INFO] [stdout] | [INFO] [stdout] 10 + #[derive(Debug)] [INFO] [stdout] 11 | struct Foo { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: `Bar` doesn't implement `Debug` [INFO] [stdout] --> tests/derive-debug-packed.rs:68:27 [INFO] [stdout] | [INFO] [stdout] 19 | struct Bar ( [INFO] [stdout] | ---------- method `to_show` not found for this struct because it doesn't satisfy `Bar: Debug` or `Bar: ToDebug` [INFO] [stdout] ... [INFO] [stdout] 68 | assert_eq!(Bar(42, 1).to_show(), "Bar(42)".to_string()); [INFO] [stdout] | ^^^^^^^ method cannot be called on `Bar` due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] note: trait bound `Bar: Debug` was not satisfied [INFO] [stdout] --> tests/derive-debug-packed.rs:59:9 [INFO] [stdout] | [INFO] [stdout] 59 | impl ToDebug for T { [INFO] [stdout] | ^^^^^^^^^^^^^^^ ------- - [INFO] [stdout] | | [INFO] [stdout] | unsatisfied trait bound introduced here [INFO] [stdout] = note: add `#[derive(Debug)]` to `Bar` or manually `impl Debug for Bar` [INFO] [stdout] help: consider annotating `Bar` with `#[derive(Debug)]` [INFO] [stdout] | [INFO] [stdout] 19 + #[derive(Debug)] [INFO] [stdout] 20 | struct Bar ( [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: `F` doesn't implement `Debug` [INFO] [stdout] --> tests/derive-debug-packed.rs:69:22 [INFO] [stdout] | [INFO] [stdout] 28 | struct F(#[derivative(Debug="ignore")] isize); [INFO] [stdout] | -------- method `to_show` not found for this struct because it doesn't satisfy `F: Debug` or `F: ToDebug` [INFO] [stdout] ... [INFO] [stdout] 69 | assert_eq!(F(42).to_show(), "F".to_string()); [INFO] [stdout] | ^^^^^^^ method cannot be called on `F` due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] note: trait bound `F: Debug` was not satisfied [INFO] [stdout] --> tests/derive-debug-packed.rs:59:9 [INFO] [stdout] | [INFO] [stdout] 59 | impl ToDebug for T { [INFO] [stdout] | ^^^^^^^^^^^^^^^ ------- - [INFO] [stdout] | | [INFO] [stdout] | unsatisfied trait bound introduced here [INFO] [stdout] = note: add `#[derive(Debug)]` to `F` or manually `impl Debug for F` [INFO] [stdout] help: consider annotating `F` with `#[derive(Debug)]` [INFO] [stdout] | [INFO] [stdout] 28 + #[derive(Debug)] [INFO] [stdout] 29 | struct F(#[derivative(Debug="ignore")] isize); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: `G` doesn't implement `Debug` [INFO] [stdout] --> tests/derive-debug-packed.rs:70:25 [INFO] [stdout] | [INFO] [stdout] 33 | struct G(isize, #[derivative(Debug="ignore")] isize); [INFO] [stdout] | -------- method `to_show` not found for this struct because it doesn't satisfy `G: Debug` or `G: ToDebug` [INFO] [stdout] ... [INFO] [stdout] 70 | assert_eq!(G(42, 0).to_show(), "G(42)".to_string()); [INFO] [stdout] | ^^^^^^^ method cannot be called on `G` due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] note: trait bound `G: Debug` was not satisfied [INFO] [stdout] --> tests/derive-debug-packed.rs:59:9 [INFO] [stdout] | [INFO] [stdout] 59 | impl ToDebug for T { [INFO] [stdout] | ^^^^^^^^^^^^^^^ ------- - [INFO] [stdout] | | [INFO] [stdout] | unsatisfied trait bound introduced here [INFO] [stdout] = note: add `#[derive(Debug)]` to `G` or manually `impl Debug for G` [INFO] [stdout] help: consider annotating `G` with `#[derive(Debug)]` [INFO] [stdout] | [INFO] [stdout] 33 + #[derive(Debug)] [INFO] [stdout] 34 | struct G(isize, #[derivative(Debug="ignore")] isize); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find attribute `derivative` in this scope [INFO] [stdout] --> tests/derive-eq.rs:18:7 [INFO] [stdout] | [INFO] [stdout] 18 | #[derivative(Eq(bound=""))] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `derivative` is imported here, but it is an unresolved item, not an attribute [INFO] [stdout] --> tests/derive-eq.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | extern crate derivative; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: `J` doesn't implement `Debug` [INFO] [stdout] --> tests/derive-debug-packed.rs:71:27 [INFO] [stdout] | [INFO] [stdout] 38 | struct J(#[derivative(Debug="ignore")] NoDebug); [INFO] [stdout] | -------- method `to_show` not found for this struct because it doesn't satisfy `J: Debug` or `J: ToDebug` [INFO] [stdout] ... [INFO] [stdout] 71 | assert_eq!(J(NoDebug).to_show(), "J".to_string()); [INFO] [stdout] | ^^^^^^^ method cannot be called on `J` due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] note: trait bound `J: Debug` was not satisfied [INFO] [stdout] --> tests/derive-debug-packed.rs:59:9 [INFO] [stdout] | [INFO] [stdout] 59 | impl ToDebug for T { [INFO] [stdout] | ^^^^^^^^^^^^^^^ ------- - [INFO] [stdout] | | [INFO] [stdout] | unsatisfied trait bound introduced here [INFO] [stdout] = note: add `#[derive(Debug)]` to `J` or manually `impl Debug for J` [INFO] [stdout] help: consider annotating `J` with `#[derive(Debug)]` [INFO] [stdout] | [INFO] [stdout] 38 + #[derive(Debug)] [INFO] [stdout] 39 | struct J(#[derivative(Debug="ignore")] NoDebug); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: `K` doesn't implement `Debug` [INFO] [stdout] --> tests/derive-debug-packed.rs:72:31 [INFO] [stdout] | [INFO] [stdout] 43 | struct K(isize, #[derivative(Debug="ignore")] NoDebug); [INFO] [stdout] | -------- method `to_show` not found for this struct because it doesn't satisfy `K: Debug` or `K: ToDebug` [INFO] [stdout] ... [INFO] [stdout] 72 | assert_eq!(K(42, NoDebug).to_show(), "K(42)".to_string()); [INFO] [stdout] | ^^^^^^^ method cannot be called on `K` due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] note: trait bound `K: Debug` was not satisfied [INFO] [stdout] --> tests/derive-debug-packed.rs:59:9 [INFO] [stdout] | [INFO] [stdout] 59 | impl ToDebug for T { [INFO] [stdout] | ^^^^^^^^^^^^^^^ ------- - [INFO] [stdout] | | [INFO] [stdout] | unsatisfied trait bound introduced here [INFO] [stdout] = note: add `#[derive(Debug)]` to `K` or manually `impl Debug for K` [INFO] [stdout] help: consider annotating `K` with `#[derive(Debug)]` [INFO] [stdout] | [INFO] [stdout] 43 + #[derive(Debug)] [INFO] [stdout] 44 | struct K(isize, #[derivative(Debug="ignore")] NoDebug); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: `L` doesn't implement `Debug` [INFO] [stdout] --> tests/derive-debug-packed.rs:73:34 [INFO] [stdout] | [INFO] [stdout] 48 | struct L { [INFO] [stdout] | -------- method `to_show` not found for this struct because it doesn't satisfy `L: Debug` or `L: ToDebug` [INFO] [stdout] ... [INFO] [stdout] 73 | assert_eq!(L{ foo: NoDebug }.to_show(), "L".to_string()); [INFO] [stdout] | ^^^^^^^ method cannot be called on `L` due to unsatisfied trait bounds [INFO] [stdout] | [INFO] [stdout] note: trait bound `L: Debug` was not satisfied [INFO] [stdout] --> tests/derive-debug-packed.rs:59:9 [INFO] [stdout] | [INFO] [stdout] 59 | impl ToDebug for T { [INFO] [stdout] | ^^^^^^^^^^^^^^^ ------- - [INFO] [stdout] | | [INFO] [stdout] | unsatisfied trait bound introduced here [INFO] [stdout] = note: add `#[derive(Debug)]` to `L` or manually `impl Debug for L` [INFO] [stdout] help: consider annotating `L` with `#[derive(Debug)]` [INFO] [stdout] | [INFO] [stdout] 48 + #[derive(Debug)] [INFO] [stdout] 49 | struct L { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0463, E0599. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0463`. [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `hash` found for struct `Empty` in the current scope [INFO] [stdout] --> tests/rustc-issue-16530.rs:28:11 [INFO] [stdout] | [INFO] [stdout] 23 | struct Empty; [INFO] [stdout] | ------------ method `hash` not found for this struct [INFO] [stdout] ... [INFO] [stdout] 28 | Empty.hash(&mut s1); [INFO] [stdout] | ^^^^ method not found in `Empty` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stdout] = note: the following trait defines an item `hash`, perhaps you need to implement it: [INFO] [stdout] candidate #1: `Hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `hash` found for struct `Empty` in the current scope [INFO] [stdout] --> tests/rustc-issue-16530.rs:30:11 [INFO] [stdout] | [INFO] [stdout] 23 | struct Empty; [INFO] [stdout] | ------------ method `hash` not found for this struct [INFO] [stdout] ... [INFO] [stdout] 30 | Empty.hash(&mut s2); [INFO] [stdout] | ^^^^ method not found in `Empty` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stdout] = note: the following trait defines an item `hash`, perhaps you need to implement it: [INFO] [stdout] candidate #1: `Hash` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0463, E0599. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0463`. [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `Foo: Eq` is not satisfied [INFO] [stdout] --> tests/derive-eq.rs:42:15 [INFO] [stdout] | [INFO] [stdout] 42 | assert_eq(Foo { foo: 7 }); [INFO] [stdout] | --------- ^^^^^^^^^^^^^^ the trait `Eq` is not implemented for `Foo` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `assert_eq` [INFO] [stdout] --> tests/derive-eq.rs:35:17 [INFO] [stdout] | [INFO] [stdout] 35 | fn assert_eq(_: T) {} [INFO] [stdout] | ^^ required by this bound in `assert_eq` [INFO] [stdout] help: consider annotating `Foo` with `#[derive(Eq)]` [INFO] [stdout] | [INFO] [stdout] 11 + #[derive(Eq)] [INFO] [stdout] 12 | struct Foo { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `tulip-derivative` (test "derive-debug-packed") due to 29 previous errors [INFO] [stderr] error: could not compile `tulip-derivative` (test "issue-67") due to 3 previous errors [INFO] [stderr] error: could not compile `tulip-derivative` (test "rustc-issue-16530") due to 5 previous errors [INFO] [stdout] error[E0277]: the trait bound `WithPtr: Eq` is not satisfied [INFO] [stdout] --> tests/derive-eq.rs:49:15 [INFO] [stdout] | [INFO] [stdout] 49 | assert_eq(WithPtr { foo: ptr1 }); [INFO] [stdout] | --------- ^^^^^^^^^^^^^^^^^^^^^ the trait `Eq` is not implemented for `WithPtr` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `assert_eq` [INFO] [stdout] --> tests/derive-eq.rs:35:17 [INFO] [stdout] | [INFO] [stdout] 35 | fn assert_eq(_: T) {} [INFO] [stdout] | ^^ required by this bound in `assert_eq` [INFO] [stdout] help: consider annotating `WithPtr` with `#[derive(Eq)]` [INFO] [stdout] | [INFO] [stdout] 17 + #[derive(Eq)] [INFO] [stdout] 18 | struct WithPtr { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Derivative` in this scope [INFO] [stdout] --> tests/rustc-issue-29030.rs:17:10 [INFO] [stdout] | [INFO] [stdout] 17 | #[derive(Derivative)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Derivative` in this scope [INFO] [stdout] --> tests/derive-hash.rs:11:18 [INFO] [stdout] | [INFO] [stdout] 11 | #[derive(Derivative)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 41 | / define! { [INFO] [stdout] 42 | | struct; [INFO] [stdout] 43 | | } [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `define` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find attribute `derivative` in this scope [INFO] [stdout] --> tests/rustc-issue-29030.rs:18:3 [INFO] [stdout] | [INFO] [stdout] 18 | #[derivative(Debug)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `derivative` is imported here, but it is an unresolved item, not an attribute [INFO] [stdout] --> tests/rustc-issue-29030.rs:15:1 [INFO] [stdout] | [INFO] [stdout] 15 | extern crate derivative; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find attribute `derivative` in this scope [INFO] [stdout] --> tests/derive-hash.rs:12:11 [INFO] [stdout] | [INFO] [stdout] 12 | #[derivative(Hash)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 41 | / define! { [INFO] [stdout] 42 | | struct; [INFO] [stdout] 43 | | } [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: `derivative` is imported here, but it is an unresolved item, not an attribute [INFO] [stdout] --> tests/derive-hash.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | extern crate derivative; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: this error originates in the macro `define` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0277, E0463. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0277`. [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Derivative` in this scope [INFO] [stdout] --> tests/derive-hash.rs:11:18 [INFO] [stdout] | [INFO] [stdout] 11 | #[derive(Derivative)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 49 | / define! { [INFO] [stdout] 50 | | struct { [INFO] [stdout] 51 | | foo: u8 [INFO] [stdout] 52 | | } [INFO] [stdout] 53 | | } [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `define` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find attribute `derivative` in this scope [INFO] [stdout] --> tests/derive-hash.rs:12:11 [INFO] [stdout] | [INFO] [stdout] 12 | #[derivative(Hash)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 49 | / define! { [INFO] [stdout] 50 | | struct { [INFO] [stdout] 51 | | foo: u8 [INFO] [stdout] 52 | | } [INFO] [stdout] 53 | | } [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: `derivative` is imported here, but it is an unresolved item, not an attribute [INFO] [stdout] --> tests/derive-hash.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | extern crate derivative; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: this error originates in the macro `define` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Derivative` in this scope [INFO] [stdout] --> tests/derive-hash.rs:11:18 [INFO] [stdout] | [INFO] [stdout] 11 | #[derive(Derivative)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 60 | / define! { [INFO] [stdout] 61 | | struct<'a> { [INFO] [stdout] 62 | | foo: u8, [INFO] [stdout] 63 | | bar: &'a str, [INFO] [stdout] 64 | | } [INFO] [stdout] 65 | | } [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `define` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find attribute `derivative` in this scope [INFO] [stdout] --> tests/derive-hash.rs:12:11 [INFO] [stdout] | [INFO] [stdout] 12 | #[derivative(Hash)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 60 | / define! { [INFO] [stdout] 61 | | struct<'a> { [INFO] [stdout] 62 | | foo: u8, [INFO] [stdout] 63 | | bar: &'a str, [INFO] [stdout] 64 | | } [INFO] [stdout] 65 | | } [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: `derivative` is imported here, but it is an unresolved item, not an attribute [INFO] [stdout] --> tests/derive-hash.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | extern crate derivative; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: this error originates in the macro `define` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Derivative` in this scope [INFO] [stdout] --> tests/derive-hash.rs:11:18 [INFO] [stdout] | [INFO] [stdout] 11 | #[derive(Derivative)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 72 | / define! { [INFO] [stdout] 73 | | struct<'a> (u8, &'a str); [INFO] [stdout] 74 | | } [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `define` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `tulip-derivative` (test "rustc-issue-29030") due to 3 previous errors [INFO] [stdout] error: cannot find attribute `derivative` in this scope [INFO] [stdout] --> tests/derive-hash.rs:12:11 [INFO] [stdout] | [INFO] [stdout] 12 | #[derivative(Hash)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 72 | / define! { [INFO] [stdout] 73 | | struct<'a> (u8, &'a str); [INFO] [stdout] 74 | | } [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: `derivative` is imported here, but it is an unresolved item, not an attribute [INFO] [stdout] --> tests/derive-hash.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | extern crate derivative; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: this error originates in the macro `define` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Derivative` in this scope [INFO] [stdout] --> tests/derive-hash.rs:11:18 [INFO] [stdout] | [INFO] [stdout] 11 | #[derive(Derivative)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | / define! { [INFO] [stdout] 82 | | enum { [INFO] [stdout] 83 | | A, B, C [INFO] [stdout] 84 | | } [INFO] [stdout] 85 | | } [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `define` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find attribute `derivative` in this scope [INFO] [stdout] --> tests/derive-hash.rs:12:11 [INFO] [stdout] | [INFO] [stdout] 12 | #[derivative(Hash)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 81 | / define! { [INFO] [stdout] 82 | | enum { [INFO] [stdout] 83 | | A, B, C [INFO] [stdout] 84 | | } [INFO] [stdout] 85 | | } [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: `derivative` is imported here, but it is an unresolved item, not an attribute [INFO] [stdout] --> tests/derive-hash.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | extern crate derivative; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: this error originates in the macro `define` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Derivative` in this scope [INFO] [stdout] --> tests/derive-hash.rs:11:18 [INFO] [stdout] | [INFO] [stdout] 11 | #[derive(Derivative)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 93 | / define! { [INFO] [stdout] 94 | | enum { [INFO] [stdout] 95 | | A, B = 42, C [INFO] [stdout] 96 | | } [INFO] [stdout] 97 | | } [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `define` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find attribute `derivative` in this scope [INFO] [stdout] --> tests/derive-hash.rs:12:11 [INFO] [stdout] | [INFO] [stdout] 12 | #[derivative(Hash)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 93 | / define! { [INFO] [stdout] 94 | | enum { [INFO] [stdout] 95 | | A, B = 42, C [INFO] [stdout] 96 | | } [INFO] [stdout] 97 | | } [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: `derivative` is imported here, but it is an unresolved item, not an attribute [INFO] [stdout] --> tests/derive-hash.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | extern crate derivative; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: this error originates in the macro `define` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Derivative` in this scope [INFO] [stdout] --> tests/derive-hash.rs:11:18 [INFO] [stdout] | [INFO] [stdout] 11 | #[derive(Derivative)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 105 | / define! { [INFO] [stdout] 106 | | enum { [INFO] [stdout] 107 | | A, B = 42, C=1 [INFO] [stdout] 108 | | } [INFO] [stdout] 109 | | } [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `define` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0463`. [INFO] [stdout] [INFO] [stdout] error: cannot find attribute `derivative` in this scope [INFO] [stdout] --> tests/derive-hash.rs:12:11 [INFO] [stdout] | [INFO] [stdout] 12 | #[derivative(Hash)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 105 | / define! { [INFO] [stdout] 106 | | enum { [INFO] [stdout] 107 | | A, B = 42, C=1 [INFO] [stdout] 108 | | } [INFO] [stdout] 109 | | } [INFO] [stdout] | |_________- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: `derivative` is imported here, but it is an unresolved item, not an attribute [INFO] [stdout] --> tests/derive-hash.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | extern crate derivative; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: this error originates in the macro `define` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find derive macro `Derivative` in this scope [INFO] [stdout] --> tests/derive-hash.rs:117:18 [INFO] [stdout] | [INFO] [stdout] 117 | #[derive(Derivative)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find attribute `derivative` in this scope [INFO] [stdout] --> tests/derive-hash.rs:118:11 [INFO] [stdout] | [INFO] [stdout] 118 | #[derivative(Hash)] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `derivative` is imported here, but it is an unresolved item, not an attribute [INFO] [stdout] --> tests/derive-hash.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | extern crate derivative; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find attribute `derivative` in this scope [INFO] [stdout] --> tests/derive-hash.rs:121:15 [INFO] [stdout] | [INFO] [stdout] 121 | #[derivative(Hash="ignore")] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `derivative` is imported here, but it is an unresolved item, not an attribute [INFO] [stdout] --> tests/derive-hash.rs:7:1 [INFO] [stdout] | [INFO] [stdout] 7 | extern crate derivative; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `tarpaulin_include` [INFO] [stdout] --> tests/derive-hash.rs:22:15 [INFO] [stdout] | [INFO] [stdout] 22 | #[cfg(not(tarpaulin_include))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: expected names are: `docsrs`, `feature`, and `test` and 31 more [INFO] [stdout] = help: consider using a Cargo feature instead [INFO] [stdout] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stdout] [lints.rust] [INFO] [stdout] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tarpaulin_include)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(tarpaulin_include)");` to the top of the `build.rs` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `tulip-derivative` (test "derive-eq") due to 8 previous errors [INFO] [stdout] error[E0277]: the trait bound `main::Ours: Hash` is not satisfied [INFO] [stdout] --> tests/derive-hash.rs:45:30 [INFO] [stdout] | [INFO] [stdout] 45 | assert_eq!(fake_hash(Ours), fake_hash(Theirs)); [INFO] [stdout] | --------- ^^^^ the trait `Hash` is not implemented for `main::Ours` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `fake_hash` [INFO] [stdout] --> tests/derive-hash.rs:32:17 [INFO] [stdout] | [INFO] [stdout] 32 | fn fake_hash(e: E) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ required by this bound in `fake_hash` [INFO] [stdout] help: consider annotating `main::Ours` with `#[derive(Hash)]` [INFO] [stdout] | [INFO] [stdout] 42 + #[derive(Hash)] [INFO] [stdout] 43 | struct; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `main::Ours: Hash` is not satisfied [INFO] [stdout] --> tests/derive-hash.rs:55:30 [INFO] [stdout] | [INFO] [stdout] 55 | assert_eq!(fake_hash(Ours { foo: 0 }), fake_hash(Theirs { foo: 0 })); [INFO] [stdout] | --------- ^^^^^^^^^^^^^^^ the trait `Hash` is not implemented for `main::Ours` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `fake_hash` [INFO] [stdout] --> tests/derive-hash.rs:32:17 [INFO] [stdout] | [INFO] [stdout] 32 | fn fake_hash(e: E) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ required by this bound in `fake_hash` [INFO] [stdout] help: consider annotating `main::Ours` with `#[derive(Hash)]` [INFO] [stdout] | [INFO] [stdout] 50 + #[derive(Hash)] [INFO] [stdout] 51 | struct { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `main::Ours: Hash` is not satisfied [INFO] [stdout] --> tests/derive-hash.rs:56:30 [INFO] [stdout] | [INFO] [stdout] 56 | assert_eq!(fake_hash(Ours { foo: 42 }), fake_hash(Theirs { foo: 42 })); [INFO] [stdout] | --------- ^^^^^^^^^^^^^^^^ the trait `Hash` is not implemented for `main::Ours` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `fake_hash` [INFO] [stdout] --> tests/derive-hash.rs:32:17 [INFO] [stdout] | [INFO] [stdout] 32 | fn fake_hash(e: E) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ required by this bound in `fake_hash` [INFO] [stdout] help: consider annotating `main::Ours` with `#[derive(Hash)]` [INFO] [stdout] | [INFO] [stdout] 50 + #[derive(Hash)] [INFO] [stdout] 51 | struct { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `main::Ours<'_>: Hash` is not satisfied [INFO] [stdout] --> tests/derive-hash.rs:67:30 [INFO] [stdout] | [INFO] [stdout] 67 | assert_eq!(fake_hash(Ours { foo: 0, bar: "bar" }), fake_hash(Theirs { foo: 0, bar: "bar" })); [INFO] [stdout] | --------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Hash` is not implemented for `main::Ours<'_>` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `fake_hash` [INFO] [stdout] --> tests/derive-hash.rs:32:17 [INFO] [stdout] | [INFO] [stdout] 32 | fn fake_hash(e: E) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ required by this bound in `fake_hash` [INFO] [stdout] help: consider annotating `main::Ours<'_>` with `#[derive(Hash)]` [INFO] [stdout] | [INFO] [stdout] 61 + #[derive(Hash)] [INFO] [stdout] 62 | struct<'a> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `main::Ours<'_>: Hash` is not satisfied [INFO] [stdout] --> tests/derive-hash.rs:68:30 [INFO] [stdout] | [INFO] [stdout] 68 | assert_eq!(fake_hash(Ours { foo: 42, bar: "bar" }), fake_hash(Theirs { foo: 42, bar: "bar" })); [INFO] [stdout] | --------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Hash` is not implemented for `main::Ours<'_>` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `fake_hash` [INFO] [stdout] --> tests/derive-hash.rs:32:17 [INFO] [stdout] | [INFO] [stdout] 32 | fn fake_hash(e: E) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ required by this bound in `fake_hash` [INFO] [stdout] help: consider annotating `main::Ours<'_>` with `#[derive(Hash)]` [INFO] [stdout] | [INFO] [stdout] 61 + #[derive(Hash)] [INFO] [stdout] 62 | struct<'a> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `tarpaulin_include` [INFO] [stdout] --> src/lib.rs:72:11 [INFO] [stdout] | [INFO] [stdout] 72 | #[cfg(not(tarpaulin_include))] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: expected names are: `docsrs`, `feature`, and `test` and 31 more [INFO] [stdout] = help: consider using a Cargo feature instead [INFO] [stdout] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stdout] [lints.rust] [INFO] [stdout] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(tarpaulin_include)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(tarpaulin_include)");` to the top of the `build.rs` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `main::Ours<'_>: Hash` is not satisfied [INFO] [stdout] --> tests/derive-hash.rs:76:30 [INFO] [stdout] | [INFO] [stdout] 76 | assert_eq!(fake_hash(Ours ( 0, "bar" )), fake_hash(Theirs ( 0, "bar" ))); [INFO] [stdout] | --------- ^^^^^^^^^^^^^^^^^ the trait `Hash` is not implemented for `main::Ours<'_>` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `fake_hash` [INFO] [stdout] --> tests/derive-hash.rs:32:17 [INFO] [stdout] | [INFO] [stdout] 32 | fn fake_hash(e: E) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ required by this bound in `fake_hash` [INFO] [stdout] help: consider annotating `main::Ours<'_>` with `#[derive(Hash)]` [INFO] [stdout] | [INFO] [stdout] 73 + #[derive(Hash)] [INFO] [stdout] 74 | struct<'a> (u8, &'a str); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `main::Ours<'_>: Hash` is not satisfied [INFO] [stdout] --> tests/derive-hash.rs:77:30 [INFO] [stdout] | [INFO] [stdout] 77 | assert_eq!(fake_hash(Ours ( 42, "bar" )), fake_hash(Theirs ( 42, "bar" ))); [INFO] [stdout] | --------- ^^^^^^^^^^^^^^^^^^ the trait `Hash` is not implemented for `main::Ours<'_>` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `fake_hash` [INFO] [stdout] --> tests/derive-hash.rs:32:17 [INFO] [stdout] | [INFO] [stdout] 32 | fn fake_hash(e: E) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ required by this bound in `fake_hash` [INFO] [stdout] help: consider annotating `main::Ours<'_>` with `#[derive(Hash)]` [INFO] [stdout] | [INFO] [stdout] 73 + #[derive(Hash)] [INFO] [stdout] 74 | struct<'a> (u8, &'a str); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `main::Ours: Hash` is not satisfied [INFO] [stdout] --> tests/derive-hash.rs:87:30 [INFO] [stdout] | [INFO] [stdout] 87 | assert_eq!(fake_hash(Ours::A), fake_hash(Theirs::A)); [INFO] [stdout] | --------- ^^^^^^^ the trait `Hash` is not implemented for `main::Ours` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `fake_hash` [INFO] [stdout] --> tests/derive-hash.rs:32:17 [INFO] [stdout] | [INFO] [stdout] 32 | fn fake_hash(e: E) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ required by this bound in `fake_hash` [INFO] [stdout] help: consider annotating `main::Ours` with `#[derive(Hash)]` [INFO] [stdout] | [INFO] [stdout] 82 + #[derive(Hash)] [INFO] [stdout] 83 | enum { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `main::Ours: Hash` is not satisfied [INFO] [stdout] --> tests/derive-hash.rs:88:30 [INFO] [stdout] | [INFO] [stdout] 88 | assert_eq!(fake_hash(Ours::B), fake_hash(Theirs::B)); [INFO] [stdout] | --------- ^^^^^^^ the trait `Hash` is not implemented for `main::Ours` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `fake_hash` [INFO] [stdout] --> tests/derive-hash.rs:32:17 [INFO] [stdout] | [INFO] [stdout] 32 | fn fake_hash(e: E) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ required by this bound in `fake_hash` [INFO] [stdout] help: consider annotating `main::Ours` with `#[derive(Hash)]` [INFO] [stdout] | [INFO] [stdout] 82 + #[derive(Hash)] [INFO] [stdout] 83 | enum { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `main::Ours: Hash` is not satisfied [INFO] [stdout] --> tests/derive-hash.rs:89:30 [INFO] [stdout] | [INFO] [stdout] 89 | assert_eq!(fake_hash(Ours::C), fake_hash(Theirs::C)); [INFO] [stdout] | --------- ^^^^^^^ the trait `Hash` is not implemented for `main::Ours` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `fake_hash` [INFO] [stdout] --> tests/derive-hash.rs:32:17 [INFO] [stdout] | [INFO] [stdout] 32 | fn fake_hash(e: E) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ required by this bound in `fake_hash` [INFO] [stdout] help: consider annotating `main::Ours` with `#[derive(Hash)]` [INFO] [stdout] | [INFO] [stdout] 82 + #[derive(Hash)] [INFO] [stdout] 83 | enum { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `main::Ours: Hash` is not satisfied [INFO] [stdout] --> tests/derive-hash.rs:99:30 [INFO] [stdout] | [INFO] [stdout] 99 | assert_eq!(fake_hash(Ours::A), fake_hash(Theirs::A)); [INFO] [stdout] | --------- ^^^^^^^ the trait `Hash` is not implemented for `main::Ours` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `fake_hash` [INFO] [stdout] --> tests/derive-hash.rs:32:17 [INFO] [stdout] | [INFO] [stdout] 32 | fn fake_hash(e: E) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ required by this bound in `fake_hash` [INFO] [stdout] help: consider annotating `main::Ours` with `#[derive(Hash)]` [INFO] [stdout] | [INFO] [stdout] 94 + #[derive(Hash)] [INFO] [stdout] 95 | enum { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `main::Ours: Hash` is not satisfied [INFO] [stdout] --> tests/derive-hash.rs:100:30 [INFO] [stdout] | [INFO] [stdout] 100 | assert_eq!(fake_hash(Ours::B), fake_hash(Theirs::B)); [INFO] [stdout] | --------- ^^^^^^^ the trait `Hash` is not implemented for `main::Ours` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `fake_hash` [INFO] [stdout] --> tests/derive-hash.rs:32:17 [INFO] [stdout] | [INFO] [stdout] 32 | fn fake_hash(e: E) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ required by this bound in `fake_hash` [INFO] [stdout] help: consider annotating `main::Ours` with `#[derive(Hash)]` [INFO] [stdout] | [INFO] [stdout] 94 + #[derive(Hash)] [INFO] [stdout] 95 | enum { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `main::Ours: Hash` is not satisfied [INFO] [stdout] --> tests/derive-hash.rs:101:30 [INFO] [stdout] | [INFO] [stdout] 101 | assert_eq!(fake_hash(Ours::C), fake_hash(Theirs::C)); [INFO] [stdout] | --------- ^^^^^^^ the trait `Hash` is not implemented for `main::Ours` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `fake_hash` [INFO] [stdout] --> tests/derive-hash.rs:32:17 [INFO] [stdout] | [INFO] [stdout] 32 | fn fake_hash(e: E) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ required by this bound in `fake_hash` [INFO] [stdout] help: consider annotating `main::Ours` with `#[derive(Hash)]` [INFO] [stdout] | [INFO] [stdout] 94 + #[derive(Hash)] [INFO] [stdout] 95 | enum { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `tulip-derivative` (test "derive-hash") due to 36 previous errors; 1 warning emitted [INFO] [stdout] error[E0277]: the trait bound `main::Ours: Hash` is not satisfied [INFO] [stdout] --> tests/derive-hash.rs:111:30 [INFO] [stdout] | [INFO] [stdout] 111 | assert_eq!(fake_hash(Ours::A), fake_hash(Theirs::A)); [INFO] [stdout] | --------- ^^^^^^^ the trait `Hash` is not implemented for `main::Ours` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `fake_hash` [INFO] [stdout] --> tests/derive-hash.rs:32:17 [INFO] [stdout] | [INFO] [stdout] 32 | fn fake_hash(e: E) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ required by this bound in `fake_hash` [INFO] [stdout] help: consider annotating `main::Ours` with `#[derive(Hash)]` [INFO] [stdout] | [INFO] [stdout] 106 + #[derive(Hash)] [INFO] [stdout] 107 | enum { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `main::Ours: Hash` is not satisfied [INFO] [stdout] --> tests/derive-hash.rs:112:30 [INFO] [stdout] | [INFO] [stdout] 112 | assert_eq!(fake_hash(Ours::B), fake_hash(Theirs::B)); [INFO] [stdout] | --------- ^^^^^^^ the trait `Hash` is not implemented for `main::Ours` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `fake_hash` [INFO] [stdout] --> tests/derive-hash.rs:32:17 [INFO] [stdout] | [INFO] [stdout] 32 | fn fake_hash(e: E) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ required by this bound in `fake_hash` [INFO] [stdout] help: consider annotating `main::Ours` with `#[derive(Hash)]` [INFO] [stdout] | [INFO] [stdout] 106 + #[derive(Hash)] [INFO] [stdout] 107 | enum { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `main::Ours: Hash` is not satisfied [INFO] [stdout] --> tests/derive-hash.rs:113:30 [INFO] [stdout] | [INFO] [stdout] 113 | assert_eq!(fake_hash(Ours::C), fake_hash(Theirs::C)); [INFO] [stdout] | --------- ^^^^^^^ the trait `Hash` is not implemented for `main::Ours` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `fake_hash` [INFO] [stdout] --> tests/derive-hash.rs:32:17 [INFO] [stdout] | [INFO] [stdout] 32 | fn fake_hash(e: E) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ required by this bound in `fake_hash` [INFO] [stdout] help: consider annotating `main::Ours` with `#[derive(Hash)]` [INFO] [stdout] | [INFO] [stdout] 106 + #[derive(Hash)] [INFO] [stdout] 107 | enum { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `main::Ours<'_>: Hash` is not satisfied [INFO] [stdout] --> tests/derive-hash.rs:132:30 [INFO] [stdout] | [INFO] [stdout] 132 | assert_eq!(fake_hash(Ours { foo: 0, bar: "bar", baz: 312 }), fake_hash(Theirs { foo: 0, baz: 312 })); [INFO] [stdout] | --------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Hash` is not implemented for `main::Ours<'_>` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `fake_hash` [INFO] [stdout] --> tests/derive-hash.rs:32:17 [INFO] [stdout] | [INFO] [stdout] 32 | fn fake_hash(e: E) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ required by this bound in `fake_hash` [INFO] [stdout] help: consider annotating `main::Ours<'_>` with `#[derive(Hash)]` [INFO] [stdout] | [INFO] [stdout] 119 + #[derive(Hash)] [INFO] [stdout] 120 | struct Ours<'a> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `main::Ours<'_>: Hash` is not satisfied [INFO] [stdout] --> tests/derive-hash.rs:133:30 [INFO] [stdout] | [INFO] [stdout] 133 | assert_eq!(fake_hash(Ours { foo: 42, bar: "bar", baz: 312 }), fake_hash(Theirs { foo: 42, baz: 312 })); [INFO] [stdout] | --------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `Hash` is not implemented for `main::Ours<'_>` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] note: required by a bound in `fake_hash` [INFO] [stdout] --> tests/derive-hash.rs:32:17 [INFO] [stdout] | [INFO] [stdout] 32 | fn fake_hash(e: E) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ required by this bound in `fake_hash` [INFO] [stdout] help: consider annotating `main::Ours<'_>` with `#[derive(Hash)]` [INFO] [stdout] | [INFO] [stdout] 119 + #[derive(Hash)] [INFO] [stdout] 120 | struct Ours<'a> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0277, E0463. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0277`. [INFO] [stdout] [INFO] [stdout] warning: field `span` is never read [INFO] [stdout] --> src/ast.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 30 | pub struct Field<'a> { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] ... [INFO] [stdout] 34 | pub span: proc_macro2::Span, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Field` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/ast.rs:87:23 [INFO] [stdout] | [INFO] [stdout] 87 | pub fn all_fields(&self) -> Vec<&Field> { [INFO] [stdout] | ^^^^^ ^^^^^^ [INFO] [stdout] | | || [INFO] [stdout] | | |the same lifetime is hidden here [INFO] [stdout] | | the same lifetime is elided here [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 87 | pub fn all_fields(&self) -> Vec<&Field<'_>> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "ab7870c236b27906db02241c3057be45ce597f4c311375f9b48d3ec99dde9a50", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ab7870c236b27906db02241c3057be45ce597f4c311375f9b48d3ec99dde9a50", kill_on_drop: false }` [INFO] [stdout] ab7870c236b27906db02241c3057be45ce597f4c311375f9b48d3ec99dde9a50