[INFO] cloning repository https://github.com/hermantolim/mac_derive [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/hermantolim/mac_derive" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhermantolim%2Fmac_derive", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhermantolim%2Fmac_derive'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 277ddfd5b720245148386a86bcf9f1b037ca0039 [INFO] checking hermantolim/mac_derive against master#af4a5a13a15fa0c60e06321077ef452f769b42fd for pr-122960-3 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fhermantolim%2Fmac_derive" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/hermantolim/mac_derive on toolchain af4a5a13a15fa0c60e06321077ef452f769b42fd [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+af4a5a13a15fa0c60e06321077ef452f769b42fd" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/hermantolim/mac_derive [INFO] finished tweaking git repo https://github.com/hermantolim/mac_derive [INFO] tweaked toml for git repo https://github.com/hermantolim/mac_derive written to /workspace/builds/worker-0-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/hermantolim/mac_derive already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+af4a5a13a15fa0c60e06321077ef452f769b42fd" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+af4a5a13a15fa0c60e06321077ef452f769b42fd" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 6c984b34cd0e2249f36068de187a8302e700640f1c288114c4d81022e144fc09 [INFO] running `Command { std: "docker" "start" "-a" "6c984b34cd0e2249f36068de187a8302e700640f1c288114c4d81022e144fc09", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "6c984b34cd0e2249f36068de187a8302e700640f1c288114c4d81022e144fc09", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6c984b34cd0e2249f36068de187a8302e700640f1c288114c4d81022e144fc09", kill_on_drop: false }` [INFO] [stdout] 6c984b34cd0e2249f36068de187a8302e700640f1c288114c4d81022e144fc09 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+af4a5a13a15fa0c60e06321077ef452f769b42fd" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 4df595d06333c0060db477752a8f4b21fad5629f9202bb18a099384c9493901d [INFO] running `Command { std: "docker" "start" "-a" "4df595d06333c0060db477752a8f4b21fad5629f9202bb18a099384c9493901d", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.10 [INFO] [stderr] Compiling syn v1.0.17 [INFO] [stderr] Checking unicode-xid v0.2.0 [INFO] [stderr] Checking quote v1.0.3 [INFO] [stderr] Checking mac_derive v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `Error` [INFO] [stdout] --> src/util.rs:4:15 [INFO] [stdout] | [INFO] [stdout] 4 | pub use syn::{Error, Ident}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `get_meta_items2`, `get_meta_items` [INFO] [stdout] --> src/ast/attr.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | get_meta_items, get_meta_items2, token_from_lit, RenameRule, ATTR, [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Literal`, `TokenStream`, `TokenTree` [INFO] [stdout] --> src/ast/attr.rs:5:19 [INFO] [stdout] | [INFO] [stdout] 5 | use proc_macro2::{Literal, TokenStream, TokenTree}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Error` [INFO] [stdout] --> src/util.rs:4:15 [INFO] [stdout] | [INFO] [stdout] 4 | pub use syn::{Error, Ident}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `collections::HashSet` [INFO] [stdout] --> src/ast/attr.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | collections::HashSet, convert::TryFrom, marker::PhantomData, str::FromStr, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `get_meta_items2`, `get_meta_items` [INFO] [stdout] --> src/ast/attr.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | get_meta_items, get_meta_items2, token_from_lit, RenameRule, ATTR, [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Attribute`, `Meta`, `NestedMeta`, `ParseStream`, `Parse` [INFO] [stdout] --> src/ast/attr.rs:12:13 [INFO] [stdout] | [INFO] [stdout] 12 | parse::{Parse, ParseStream}, [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^ [INFO] [stdout] 13 | spanned::Spanned, [INFO] [stdout] 14 | Attribute, Error, Ident, Lit, LitStr, Meta, MetaList, MetaNameValue, [INFO] [stdout] | ^^^^^^^^^ ^^^^ [INFO] [stdout] 15 | NestedMeta, Result, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Literal`, `TokenStream`, `TokenTree` [INFO] [stdout] --> src/ast/attr.rs:5:19 [INFO] [stdout] | [INFO] [stdout] 5 | use proc_macro2::{Literal, TokenStream, TokenTree}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `File`, `write` [INFO] [stdout] --> src/ast/enum_repr.rs:80:18 [INFO] [stdout] | [INFO] [stdout] 80 | fs::{write, File, OpenOptions}, [INFO] [stdout] | ^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `collections::HashSet` [INFO] [stdout] --> src/ast/attr.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | collections::HashSet, convert::TryFrom, marker::PhantomData, str::FromStr, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ContainerAttr`, `VariantAttr` [INFO] [stdout] --> src/ast/parser.rs:3:29 [INFO] [stdout] | [INFO] [stdout] 3 | use ast::{AttributesBucket, ContainerAttr, VariantAttr, ID}; [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `hash::Hash` [INFO] [stdout] --> src/ast/parser.rs:6:51 [INFO] [stdout] | [INFO] [stdout] 6 | use std::{collections::HashSet, convert::TryFrom, hash::Hash}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `MetaList`, `MetaNameValue` [INFO] [stdout] --> src/ast/parser.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | MetaList, MetaNameValue, NestedMeta, Path, Result, Type, [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `TokenStream` is imported redundantly [INFO] [stdout] --> src/derive.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 1 | use super::{ast::Enum, util::*}; [INFO] [stdout] | ------- the item `TokenStream` is already imported here [INFO] [stdout] 2 | use proc_macro2::TokenStream; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Attribute`, `Meta`, `NestedMeta`, `ParseStream`, `Parse` [INFO] [stdout] --> src/ast/attr.rs:12:13 [INFO] [stdout] | [INFO] [stdout] 12 | parse::{Parse, ParseStream}, [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^ [INFO] [stdout] 13 | spanned::Spanned, [INFO] [stdout] 14 | Attribute, Error, Ident, Lit, LitStr, Meta, MetaList, MetaNameValue, [INFO] [stdout] | ^^^^^^^^^ ^^^^ [INFO] [stdout] 15 | NestedMeta, Result, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `File`, `write` [INFO] [stdout] --> src/ast/enum_repr.rs:80:18 [INFO] [stdout] | [INFO] [stdout] 80 | fs::{write, File, OpenOptions}, [INFO] [stdout] | ^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ContainerAttr`, `VariantAttr` [INFO] [stdout] --> src/ast/parser.rs:3:29 [INFO] [stdout] | [INFO] [stdout] 3 | use ast::{AttributesBucket, ContainerAttr, VariantAttr, ID}; [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `hash::Hash` [INFO] [stdout] --> src/ast/parser.rs:6:51 [INFO] [stdout] | [INFO] [stdout] 6 | use std::{collections::HashSet, convert::TryFrom, hash::Hash}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `MetaList`, `MetaNameValue` [INFO] [stdout] --> src/ast/parser.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | MetaList, MetaNameValue, NestedMeta, Path, Result, Type, [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `TokenStream` is imported redundantly [INFO] [stdout] --> src/derive.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 1 | use super::{ast::Enum, util::*}; [INFO] [stdout] | ------- the item `TokenStream` is already imported here [INFO] [stdout] 2 | use proc_macro2::TokenStream; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `convert::TryFrom` [INFO] [stdout] --> src/ast/parser.rs:6:33 [INFO] [stdout] | [INFO] [stdout] 6 | use std::{collections::HashSet, convert::TryFrom, hash::Hash}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `convert::TryFrom` [INFO] [stdout] --> src/ast/parser.rs:6:33 [INFO] [stdout] | [INFO] [stdout] 6 | use std::{collections::HashSet, convert::TryFrom, hash::Hash}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `list` [INFO] [stdout] --> src/ast/attr.rs:85:18 [INFO] [stdout] | [INFO] [stdout] 85 | (id, list) if id == ATTR || id == ATTR_NEST || id == OTHER => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_list` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `list` [INFO] [stdout] --> src/ast/attr.rs:85:18 [INFO] [stdout] | [INFO] [stdout] 85 | (id, list) if id == ATTR || id == ATTR_NEST || id == OTHER => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_list` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `list` [INFO] [stdout] --> src/ast/attr.rs:172:18 [INFO] [stdout] | [INFO] [stdout] 172 | (id, list) if id == OTHER => Ok(VariantAttr::Trans(PhantomData)), [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_list` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `list` [INFO] [stdout] --> src/ast/attr.rs:172:18 [INFO] [stdout] | [INFO] [stdout] 172 | (id, list) if id == OTHER => Ok(VariantAttr::Trans(PhantomData)), [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_list` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `VarAttr` is never constructed [INFO] [stdout] --> src/ast/attr.rs:136:12 [INFO] [stdout] | [INFO] [stdout] 136 | pub struct VarAttr<'a> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `attrs`, `generics`, and `variants` are never read [INFO] [stdout] --> src/ast/enum_repr.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 28 | pub struct Enum { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] 29 | pub attrs: HashSet, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 30 | pub ident: Ident, [INFO] [stdout] 31 | pub generics: Generics, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 32 | pub variants: Vec, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Enum` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `VarAttr` is never constructed [INFO] [stdout] --> src/ast/attr.rs:136:12 [INFO] [stdout] | [INFO] [stdout] 136 | pub struct VarAttr<'a> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `attrs`, `generics`, and `variants` are never read [INFO] [stdout] --> src/ast/enum_repr.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 28 | pub struct Enum { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] 29 | pub attrs: HashSet, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 30 | pub ident: Ident, [INFO] [stdout] 31 | pub generics: Generics, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 32 | pub variants: Vec, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Enum` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `attrs`, `ident`, and `fields` are never read [INFO] [stdout] --> src/ast/enum_repr.rs:37:9 [INFO] [stdout] | [INFO] [stdout] 36 | pub struct Variant { [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] 37 | pub attrs: HashSet, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 38 | pub ident: Ident, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 39 | pub fields: Fields, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Variant` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `attrs`, `ident`, and `fields` are never read [INFO] [stdout] --> src/ast/enum_repr.rs:37:9 [INFO] [stdout] | [INFO] [stdout] 36 | pub struct Variant { [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] 37 | pub attrs: HashSet, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 38 | pub ident: Ident, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 39 | pub fields: Fields, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Variant` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `enum_token`, `colon_token`, `arrow_token`, and `brace_token` are never read [INFO] [stdout] --> src/ast/enum_repr.rs:147:9 [INFO] [stdout] | [INFO] [stdout] 144 | pub struct EnumMacro { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 147 | pub enum_token: token::Enum, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 148 | pub ident: Ident, [INFO] [stdout] 149 | pub colon_token: token::Colon, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 150 | pub repr: Ident, [INFO] [stdout] 151 | pub arrow_token: token::RArrow, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 152 | pub default: Ident, [INFO] [stdout] 153 | pub brace_token: token::Brace, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `EnumMacro` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `enum_token`, `colon_token`, `arrow_token`, and `brace_token` are never read [INFO] [stdout] --> src/ast/enum_repr.rs:147:9 [INFO] [stdout] | [INFO] [stdout] 144 | pub struct EnumMacro { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 147 | pub enum_token: token::Enum, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 148 | pub ident: Ident, [INFO] [stdout] 149 | pub colon_token: token::Colon, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 150 | pub repr: Ident, [INFO] [stdout] 151 | pub arrow_token: token::RArrow, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 152 | pub default: Ident, [INFO] [stdout] 153 | pub brace_token: token::Brace, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `EnumMacro` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `paren_token` is never read [INFO] [stdout] --> src/ast/enum_repr.rs:167:9 [INFO] [stdout] | [INFO] [stdout] 165 | pub struct FieldsMacro { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 166 | /// wrapping ident and discriminant [INFO] [stdout] 167 | pub paren_token: token::Paren, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FieldsMacro` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `paren_token` is never read [INFO] [stdout] --> src/ast/enum_repr.rs:167:9 [INFO] [stdout] | [INFO] [stdout] 165 | pub struct FieldsMacro { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 166 | /// wrapping ident and discriminant [INFO] [stdout] 167 | pub paren_token: token::Paren, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FieldsMacro` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `attrs` is never read [INFO] [stdout] --> src/attr.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 6 | struct Args { [INFO] [stdout] | ---- field in this struct [INFO] [stdout] 7 | attrs: Vec [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Args` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `attrs` is never read [INFO] [stdout] --> src/attr.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 6 | struct Args { [INFO] [stdout] | ---- field in this struct [INFO] [stdout] 7 | attrs: Vec [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Args` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 19 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 19 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Error` [INFO] [stdout] --> src/util.rs:4:15 [INFO] [stdout] | [INFO] [stdout] 4 | pub use syn::{Error, Ident}; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `get_meta_items2`, `get_meta_items` [INFO] [stdout] --> src/ast/attr.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | get_meta_items, get_meta_items2, token_from_lit, RenameRule, ATTR, [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Literal`, `TokenStream`, `TokenTree` [INFO] [stdout] --> src/ast/attr.rs:5:19 [INFO] [stdout] | [INFO] [stdout] 5 | use proc_macro2::{Literal, TokenStream, TokenTree}; [INFO] [stdout] | ^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `collections::HashSet` [INFO] [stdout] --> src/ast/attr.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | collections::HashSet, convert::TryFrom, marker::PhantomData, str::FromStr, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Attribute`, `Meta`, `NestedMeta`, `ParseStream`, `Parse` [INFO] [stdout] --> src/ast/attr.rs:12:13 [INFO] [stdout] | [INFO] [stdout] 12 | parse::{Parse, ParseStream}, [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^ [INFO] [stdout] 13 | spanned::Spanned, [INFO] [stdout] 14 | Attribute, Error, Ident, Lit, LitStr, Meta, MetaList, MetaNameValue, [INFO] [stdout] | ^^^^^^^^^ ^^^^ [INFO] [stdout] 15 | NestedMeta, Result, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `File`, `write` [INFO] [stdout] --> src/ast/enum_repr.rs:80:18 [INFO] [stdout] | [INFO] [stdout] 80 | fs::{write, File, OpenOptions}, [INFO] [stdout] | ^^^^^ ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `ContainerAttr`, `VariantAttr` [INFO] [stdout] --> src/ast/parser.rs:3:29 [INFO] [stdout] | [INFO] [stdout] 3 | use ast::{AttributesBucket, ContainerAttr, VariantAttr, ID}; [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `hash::Hash` [INFO] [stdout] --> src/ast/parser.rs:6:51 [INFO] [stdout] | [INFO] [stdout] 6 | use std::{collections::HashSet, convert::TryFrom, hash::Hash}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `MetaList`, `MetaNameValue` [INFO] [stdout] --> src/ast/parser.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | MetaList, MetaNameValue, NestedMeta, Path, Result, Type, [INFO] [stdout] | ^^^^^^^^ ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the item `TokenStream` is imported redundantly [INFO] [stdout] --> src/derive.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 1 | use super::{ast::Enum, util::*}; [INFO] [stdout] | ------- the item `TokenStream` is already imported here [INFO] [stdout] 2 | use proc_macro2::TokenStream; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `convert::TryFrom` [INFO] [stdout] --> src/ast/parser.rs:6:33 [INFO] [stdout] | [INFO] [stdout] 6 | use std::{collections::HashSet, convert::TryFrom, hash::Hash}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `list` [INFO] [stdout] --> src/ast/attr.rs:85:18 [INFO] [stdout] | [INFO] [stdout] 85 | (id, list) if id == ATTR || id == ATTR_NEST || id == OTHER => { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_list` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `list` [INFO] [stdout] --> src/ast/attr.rs:172:18 [INFO] [stdout] | [INFO] [stdout] 172 | (id, list) if id == OTHER => Ok(VariantAttr::Trans(PhantomData)), [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_list` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `VarAttr` is never constructed [INFO] [stdout] --> src/ast/attr.rs:136:12 [INFO] [stdout] | [INFO] [stdout] 136 | pub struct VarAttr<'a> { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `attrs`, `generics`, and `variants` are never read [INFO] [stdout] --> src/ast/enum_repr.rs:29:9 [INFO] [stdout] | [INFO] [stdout] 28 | pub struct Enum { [INFO] [stdout] | ---- fields in this struct [INFO] [stdout] 29 | pub attrs: HashSet, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 30 | pub ident: Ident, [INFO] [stdout] 31 | pub generics: Generics, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 32 | pub variants: Vec, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Enum` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `attrs`, `ident`, and `fields` are never read [INFO] [stdout] --> src/ast/enum_repr.rs:37:9 [INFO] [stdout] | [INFO] [stdout] 36 | pub struct Variant { [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] 37 | pub attrs: HashSet, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 38 | pub ident: Ident, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 39 | pub fields: Fields, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Variant` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `enum_token`, `colon_token`, `arrow_token`, and `brace_token` are never read [INFO] [stdout] --> src/ast/enum_repr.rs:147:9 [INFO] [stdout] | [INFO] [stdout] 144 | pub struct EnumMacro { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 147 | pub enum_token: token::Enum, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 148 | pub ident: Ident, [INFO] [stdout] 149 | pub colon_token: token::Colon, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 150 | pub repr: Ident, [INFO] [stdout] 151 | pub arrow_token: token::RArrow, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] 152 | pub default: Ident, [INFO] [stdout] 153 | pub brace_token: token::Brace, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `EnumMacro` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `paren_token` is never read [INFO] [stdout] --> src/ast/enum_repr.rs:167:9 [INFO] [stdout] | [INFO] [stdout] 165 | pub struct FieldsMacro { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 166 | /// wrapping ident and discriminant [INFO] [stdout] 167 | pub paren_token: token::Paren, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `FieldsMacro` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `attrs` is never read [INFO] [stdout] --> src/attr.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 6 | struct Args { [INFO] [stdout] | ---- field in this struct [INFO] [stdout] 7 | attrs: Vec [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Args` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 19 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: derive helper attribute is used before it is introduced [INFO] [stdout] --> examples/derive.rs:7:3 [INFO] [stdout] | [INFO] [stdout] 7 | #[enum_repr(rename_all = "UPPERCASE", other(Meta1, Meta2))] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] 8 | #[repr(C)] [INFO] [stdout] 9 | #[derive(Debug, EnumRepr)] [INFO] [stdout] | -------- the attribute is introduced here [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #79202 [INFO] [stdout] = note: `#[warn(legacy_derive_helpers)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::convert::identity` [INFO] [stdout] --> examples/derive.rs:156:5 [INFO] [stdout] | [INFO] [stdout] 156 | use std::convert::identity; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> examples/derive.rs:173:6 [INFO] [stdout] | [INFO] [stdout] 173 | }; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> examples/derive.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 52 | let e = MyEnum::Variant1; [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `a` [INFO] [stdout] --> examples/derive.rs:162:9 [INFO] [stdout] | [INFO] [stdout] 162 | let a = FullOpt::new(); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `a` [INFO] [stdout] --> examples/derive.rs:167:9 [INFO] [stdout] | [INFO] [stdout] 167 | let a = Red::new(); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_a` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b` [INFO] [stdout] --> examples/derive.rs:168:9 [INFO] [stdout] | [INFO] [stdout] 168 | let b = Blue::new(); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `r` [INFO] [stdout] --> examples/derive.rs:213:9 [INFO] [stdout] | [INFO] [stdout] 213 | let r = c.r(); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_r` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `b` [INFO] [stdout] --> examples/derive.rs:214:9 [INFO] [stdout] | [INFO] [stdout] 214 | let b = c.b(); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_b` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `g` [INFO] [stdout] --> examples/derive.rs:215:9 [INFO] [stdout] | [INFO] [stdout] 215 | let g = c.g(); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_g` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `y` [INFO] [stdout] --> examples/derive.rs:216:9 [INFO] [stdout] | [INFO] [stdout] 216 | let y = c.c(); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_y` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0382]: use of moved value: `c` [INFO] [stdout] --> examples/derive.rs:214:13 [INFO] [stdout] | [INFO] [stdout] 212 | let c = Color::new(); [INFO] [stdout] | - move occurs because `c` has type `te::Color`, which does not implement the `Copy` trait [INFO] [stdout] 213 | let r = c.r(); [INFO] [stdout] | --- `c` moved due to this method call [INFO] [stdout] 214 | let b = c.b(); [INFO] [stdout] | ^ value used here after move [INFO] [stdout] | [INFO] [stdout] note: `te::Color::::r` takes ownership of the receiver `self`, which moves `c` [INFO] [stdout] --> examples/derive.rs:184:14 [INFO] [stdout] | [INFO] [stdout] 184 | fn r(self) -> Color { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0382]: use of moved value: `c` [INFO] [stdout] --> examples/derive.rs:215:13 [INFO] [stdout] | [INFO] [stdout] 212 | let c = Color::new(); [INFO] [stdout] | - move occurs because `c` has type `te::Color`, which does not implement the `Copy` trait [INFO] [stdout] 213 | let r = c.r(); [INFO] [stdout] 214 | let b = c.b(); [INFO] [stdout] | --- `c` moved due to this method call [INFO] [stdout] 215 | let g = c.g(); [INFO] [stdout] | ^ value used here after move [INFO] [stdout] | [INFO] [stdout] note: `te::Color::::b` takes ownership of the receiver `self`, which moves `c` [INFO] [stdout] --> examples/derive.rs:190:14 [INFO] [stdout] | [INFO] [stdout] 190 | fn b(self) -> Color { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0382]: use of moved value: `c` [INFO] [stdout] --> examples/derive.rs:216:13 [INFO] [stdout] | [INFO] [stdout] 212 | let c = Color::new(); [INFO] [stdout] | - move occurs because `c` has type `te::Color`, which does not implement the `Copy` trait [INFO] [stdout] ... [INFO] [stdout] 215 | let g = c.g(); [INFO] [stdout] | --- `c` moved due to this method call [INFO] [stdout] 216 | let y = c.c(); [INFO] [stdout] | ^ value used here after move [INFO] [stdout] | [INFO] [stdout] note: `te::Color::::g` takes ownership of the receiver `self`, which moves `c` [INFO] [stdout] --> examples/derive.rs:197:14 [INFO] [stdout] | [INFO] [stdout] 197 | fn g(self) -> Color { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 3 previous errors; 11 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0382`. [INFO] [stdout] [INFO] [stderr] error: could not compile `mac_derive` (example "derive") due to 4 previous errors; 11 warnings emitted [INFO] running `Command { std: "docker" "inspect" "4df595d06333c0060db477752a8f4b21fad5629f9202bb18a099384c9493901d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4df595d06333c0060db477752a8f4b21fad5629f9202bb18a099384c9493901d", kill_on_drop: false }` [INFO] [stdout] 4df595d06333c0060db477752a8f4b21fad5629f9202bb18a099384c9493901d