[INFO] cloning repository https://github.com/yuan-yuan-jia/03macro
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/yuan-yuan-jia/03macro" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyuan-yuan-jia%2F03macro", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyuan-yuan-jia%2F03macro'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 6b434570d3a99567a7f99e6731f30cc11e05af31
[INFO] checking yuan-yuan-jia/03macro against 52995a223f2919dd3e2e427231db90a257350ded for pr-129249-4
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fyuan-yuan-jia%2F03macro" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/yuan-yuan-jia/03macro
[INFO] finished tweaking git repo https://github.com/yuan-yuan-jia/03macro
[INFO] tweaked toml for git repo https://github.com/yuan-yuan-jia/03macro written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/yuan-yuan-jia/03macro on toolchain 52995a223f2919dd3e2e427231db90a257350ded
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+52995a223f2919dd3e2e427231db90a257350ded" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/yuan-yuan-jia/03macro 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" "+52995a223f2919dd3e2e427231db90a257350ded" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:c0af3998e971868164375a7dfb646c9933ddd1a3bdb00fa2041266763dc1eeab" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] fcfb0995b60606a0e8896062fdd4188ed56133b8349b5362f9bb880580bb0dbd
[INFO] running `Command { std: "docker" "start" "fcfb0995b60606a0e8896062fdd4188ed56133b8349b5362f9bb880580bb0dbd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "fcfb0995b60606a0e8896062fdd4188ed56133b8349b5362f9bb880580bb0dbd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "fcfb0995b60606a0e8896062fdd4188ed56133b8349b5362f9bb880580bb0dbd" "/opt/rustwide/cargo-home/bin/cargo" "+52995a223f2919dd3e2e427231db90a257350ded" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "fcfb0995b60606a0e8896062fdd4188ed56133b8349b5362f9bb880580bb0dbd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "fcfb0995b60606a0e8896062fdd4188ed56133b8349b5362f9bb880580bb0dbd" "/opt/rustwide/cargo-home/bin/cargo" "+52995a223f2919dd3e2e427231db90a257350ded" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.101
[INFO] [stderr]     Checking unicode-ident v1.0.18
[INFO] [stderr]     Checking ident_case v1.0.1
[INFO] [stderr]     Checking futures-sink v0.3.31
[INFO] [stderr]     Checking futures-core v0.3.31
[INFO] [stderr]    Compiling anyhow v1.0.99
[INFO] [stderr]     Checking futures-channel v0.3.31
[INFO] [stderr]     Checking quote v1.0.40
[INFO] [stderr]     Checking syn v2.0.106
[INFO] [stderr]     Checking darling_core v0.20.11
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]     Checking tokio v1.47.1
[INFO] [stderr]    Compiling darling_macro v0.20.11
[INFO] [stderr]     Checking darling v0.20.11
[INFO] [stderr]    Compiling macros v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking futures-executor v0.3.31
[INFO] [stderr]     Checking futures v0.3.31
[INFO] [stdout] DeriveInput {
[INFO] [stdout]     attrs: [
[INFO] [stdout]         Attribute {
[INFO] [stdout]             pound_token: Pound,
[INFO] [stdout]             style: AttrStyle::Outer,
[INFO] [stdout]             bracket_token: Bracket,
[INFO] [stdout]             meta: Meta::List {
[INFO] [stdout]                 path: Path {
[INFO] [stdout]                     leading_colon: None,
[INFO] [stdout]                     segments: [
[INFO] [stdout]                         PathSegment {
[INFO] [stdout]                             ident: Ident {
[INFO] [stdout]                                 ident: "allow",
[INFO] [stdout]                                 span: #0 bytes(26..31),
[INFO] [stdout]                             },
[INFO] [stdout]                             arguments: PathArguments::None,
[INFO] [stdout]                         },
[INFO] [stdout]                     ],
[INFO] [stdout]                 },
[INFO] [stdout]                 delimiter: MacroDelimiter::Paren(
[INFO] [stdout]                     Paren,
[INFO] [stdout]                 ),
[INFO] [stdout]                 tokens: TokenStream [
[INFO] [stdout]                     Ident {
[INFO] [stdout]                         ident: "unused",
[INFO] [stdout]                         span: #0 bytes(32..38),
[INFO] [stdout]                     },
[INFO] [stdout]                 ],
[INFO] [stdout]             },
[INFO] [stdout]         },
[INFO] [stdout]     ],
[INFO] [stdout]     vis: Visibility::Public(
[INFO] [stdout]         Pub,
[INFO] [stdout]     ),
[INFO] [stdout]     ident: Ident {
[INFO] [stdout]         ident: "RespBulkString",
[INFO] [stdout]         span: #0 bytes(73..87),
[INFO] [stdout]     },
[INFO] [stdout]     generics: Generics {
[INFO] [stdout]         lt_token: None,
[INFO] [stdout]         params: [],
[INFO] [stdout]         gt_token: None,
[INFO] [stdout]         where_clause: None,
[INFO] [stdout]     },
[INFO] [stdout]     data: Data::Struct {
[INFO] [stdout]         struct_token: Struct,
[INFO] [stdout]         fields: Fields::Named {
[INFO] [stdout]             brace_token: Brace,
[INFO] [stdout]             named: [
[INFO] [stdout]                 Field {
[INFO] [stdout]                     attrs: [],
[INFO] [stdout]                     vis: Visibility::Inherited,
[INFO] [stdout]                     mutability: FieldMutability::None,
[INFO] [stdout]                     ident: Some(
[INFO] [stdout]                         Ident {
[INFO] [stdout]                             ident: "inner",
[INFO] [stdout]                             span: #0 bytes(94..99),
[INFO] [stdout]                         },
[INFO] [stdout]                     ),
[INFO] [stdout]                     colon_token: Some(
[INFO] [stdout]                         Colon,
[INFO] [stdout]                     ),
[INFO] [stdout]                     ty: Type::Path {
[INFO] [stdout]                         qself: None,
[INFO] [stdout]                         path: Path {
[INFO] [stdout]                             leading_colon: None,
[INFO] [stdout]                             segments: [
[INFO] [stdout]                                 PathSegment {
[INFO] [stdout]                                     ident: Ident {
[INFO] [stdout]                                         ident: "String",
[INFO] [stdout]                                         span: #0 bytes(101..107),
[INFO] [stdout]                                     },
[INFO] [stdout]                                     arguments: PathArguments::None,
[INFO] [stdout]                                 },
[INFO] [stdout]                             ],
[INFO] [stdout]                         },
[INFO] [stdout]                     },
[INFO] [stdout]                 },
[INFO] [stdout]                 Comma,
[INFO] [stdout]                 Field {
[INFO] [stdout]                     attrs: [
[INFO] [stdout]                         Attribute {
[INFO] [stdout]                             pound_token: Pound,
[INFO] [stdout]                             style: AttrStyle::Outer,
[INFO] [stdout]                             bracket_token: Bracket,
[INFO] [stdout]                             meta: Meta::List {
[INFO] [stdout]                                 path: Path {
[INFO] [stdout]                                     leading_colon: None,
[INFO] [stdout]                                     segments: [
[INFO] [stdout]                                         PathSegment {
[INFO] [stdout]                                             ident: Ident {
[INFO] [stdout]                                                 ident: "debug",
[INFO] [stdout]                                                 span: #0 bytes(115..120),
[INFO] [stdout]                                             },
[INFO] [stdout]                                             arguments: PathArguments::None,
[INFO] [stdout]                                         },
[INFO] [stdout]                                     ],
[INFO] [stdout]                                 },
[INFO] [stdout]                                 delimiter: MacroDelimiter::Paren(
[INFO] [stdout]                                     Paren,
[INFO] [stdout]                                 ),
[INFO] [stdout]                                 tokens: TokenStream [
[INFO] [stdout]                                     Ident {
[INFO] [stdout]                                         ident: "skip",
[INFO] [stdout]                                         span: #0 bytes(121..125),
[INFO] [stdout]                                     },
[INFO] [stdout]                                     Punct {
[INFO] [stdout]                                         ch: '=',
[INFO] [stdout]                                         spacing: Alone,
[INFO] [stdout]                                         span: #0 bytes(126..127),
[INFO] [stdout]                                     },
[INFO] [stdout]                                     Ident {
[INFO] [stdout]                                         ident: "false",
[INFO] [stdout]                                         span: #0 bytes(128..133),
[INFO] [stdout]                                     },
[INFO] [stdout]                                 ],
[INFO] [stdout]                             },
[INFO] [stdout]                         },
[INFO] [stdout]                     ],
[INFO] [stdout]                     vis: Visibility::Inherited,
[INFO] [stdout]                     mutability: FieldMutability::None,
[INFO] [stdout]                     ident: Some(
[INFO] [stdout]                         Ident {
[INFO] [stdout]                             ident: "nothing",
[INFO] [stdout]                             span: #0 bytes(140..147),
[INFO] [stdout]                         },
[INFO] [stdout]                     ),
[INFO] [stdout]                     colon_token: Some(
[INFO] [stdout]                         Colon,
[INFO] [stdout]                     ),
[INFO] [stdout]                     ty: Type::Tuple {
[INFO] [stdout]                         paren_token: Paren,
[INFO] [stdout]                         elems: [],
[INFO] [stdout]                     },
[INFO] [stdout]                 },
[INFO] [stdout]                 Comma,
[INFO] [stdout]                 Field {
[INFO] [stdout]                     attrs: [],
[INFO] [stdout]                     vis: Visibility::Inherited,
[INFO] [stdout]                     mutability: FieldMutability::None,
[INFO] [stdout]                     ident: Some(
[INFO] [stdout]                         Ident {
[INFO] [stdout]                             ident: "hello",
[INFO] [stdout]                             span: #0 bytes(157..162),
[INFO] [stdout]                         },
[INFO] [stdout]                     ),
[INFO] [stdout]                     colon_token: Some(
[INFO] [stdout]                         Colon,
[INFO] [stdout]                     ),
[INFO] [stdout]                     ty: Type::Path {
[INFO] [stdout]                         qself: None,
[INFO] [stdout]                         path: Path {
[INFO] [stdout]                             leading_colon: None,
[INFO] [stdout]                             segments: [
[INFO] [stdout]                                 PathSegment {
[INFO] [stdout]                                     ident: Ident {
[INFO] [stdout]                                         ident: "u32",
[INFO] [stdout]                                         span: #0 bytes(164..167),
[INFO] [stdout]                                     },
[INFO] [stdout]                                     arguments: PathArguments::None,
[INFO] [stdout]                                 },
[INFO] [stdout]                             ],
[INFO] [stdout]                         },
[INFO] [stdout]                     },
[INFO] [stdout]                 },
[INFO] [stdout]                 Comma,
[INFO] [stdout]             ],
[INFO] [stdout]         },
[INFO] [stdout]         semi_token: None,
[INFO] [stdout]     },
[INFO] [stdout] }
[INFO] [stdout] DeriveInput {
[INFO] [stdout]     attrs: [
[INFO] [stdout]         Attribute {
[INFO] [stdout]             pound_token: Pound,
[INFO] [stdout]             style: AttrStyle::Outer,
[INFO] [stdout]             bracket_token: Bracket,
[INFO] [stdout]             meta: Meta::List {
[INFO] [stdout]                 path: Path {
[INFO] [stdout]                     leading_colon: None,
[INFO] [stdout]                     segments: [
[INFO] [stdout]                         PathSegment {
[INFO] [stdout]                             ident: Ident {
[INFO] [stdout]                                 ident: "allow",
[INFO] [stdout]                                 span: #0 bytes(25..30),
[INFO] [stdout]                             },
[INFO] [stdout]                             arguments: PathArguments::None,
[INFO] [stdout]                         },
[INFO] [stdout]                     ],
[INFO] [stdout]                 },
[INFO] [stdout]                 delimiter: MacroDelimiter::Paren(
[INFO] [stdout]                     Paren,
[INFO] [stdout]                 ),
[INFO] [stdout]                 tokens: TokenStream [
[INFO] [stdout]                     Ident {
[INFO] [stdout]                         ident: "unused",
[INFO] [stdout]                         span: #0 bytes(31..37),
[INFO] [stdout]                     },
[INFO] [stdout]                 ],
[INFO] [stdout]             },
[INFO] [stdout]         },
[INFO] [stdout]     ],
[INFO] [stdout]     vis: Visibility::Inherited,
[INFO] [stdout]     ident: Ident {
[INFO] [stdout]         ident: "Direction",
[INFO] [stdout]         span: #0 bytes(72..81),
[INFO] [stdout]     },
[INFO] [stdout]     generics: Generics {
[INFO] [stdout]         lt_token: Some(
[INFO] [stdout]             Lt,
[INFO] [stdout]         ),
[INFO] [stdout]         params: [
[INFO] [stdout]             GenericParam::Type(
[INFO] [stdout]                 TypeParam {
[INFO] [stdout]                     attrs: [],
[INFO] [stdout]                     ident: Ident {
[INFO] [stdout]                         ident: "T",
[INFO] [stdout]                         span: #0 bytes(82..83),
[INFO] [stdout]                     },
[INFO] [stdout]                     colon_token: None,
[INFO] [stdout]                     bounds: [],
[INFO] [stdout]                     eq_token: None,
[INFO] [stdout]                     default: None,
[INFO] [stdout]                 },
[INFO] [stdout]             ),
[INFO] [stdout]         ],
[INFO] [stdout]         gt_token: Some(
[INFO] [stdout]             Gt,
[INFO] [stdout]         ),
[INFO] [stdout]         where_clause: None,
[INFO] [stdout]     },
[INFO] [stdout]     data: Data::Enum {
[INFO] [stdout]         enum_token: Enum,
[INFO] [stdout]         brace_token: Brace,
[INFO] [stdout]         variants: [
[INFO] [stdout]             Variant {
[INFO] [stdout]                 attrs: [],
[INFO] [stdout]                 ident: Ident {
[INFO] [stdout]                     ident: "Up",
[INFO] [stdout]                     span: #0 bytes(91..93),
[INFO] [stdout]                 },
[INFO] [stdout]                 fields: Fields::Unnamed {
[INFO] [stdout]                     paren_token: Paren,
[INFO] [stdout]                     unnamed: [
[INFO] [stdout]                         Field {
[INFO] [stdout]                             attrs: [],
[INFO] [stdout]                             vis: Visibility::Inherited,
[INFO] [stdout]                             mutability: FieldMutability::None,
[INFO] [stdout]                             ident: None,
[INFO] [stdout]                             colon_token: None,
[INFO] [stdout]                             ty: Type::Path {
[INFO] [stdout]                                 qself: None,
[INFO] [stdout]                                 path: Path {
[INFO] [stdout]                                     leading_colon: None,
[INFO] [stdout]                                     segments: [
[INFO] [stdout]                                         PathSegment {
[INFO] [stdout]                                             ident: Ident {
[INFO] [stdout]                                                 ident: "DirectionUp",
[INFO] [stdout]                                                 span: #0 bytes(94..105),
[INFO] [stdout]                                             },
[INFO] [stdout]                                             arguments: PathArguments::AngleBracketed {
[INFO] [stdout]                                                 colon2_token: None,
[INFO] [stdout]                                                 lt_token: Lt,
[INFO] [stdout]                                                 args: [
[INFO] [stdout]                                                     GenericArgument::Type(
[INFO] [stdout]                                                         Type::Path {
[INFO] [stdout]                                                             qself: None,
[INFO] [stdout]                                                             path: Path {
[INFO] [stdout]                                                                 leading_colon: None,
[INFO] [stdout]                                                                 segments: [
[INFO] [stdout]                                                                     PathSegment {
[INFO] [stdout]                                                                         ident: Ident {
[INFO] [stdout]                                                                             ident: "T",
[INFO] [stdout]                                                                             span: #0 bytes(106..107),
[INFO] [stdout]                                                                         },
[INFO] [stdout]                                                                         arguments: PathArguments::None,
[INFO] [stdout]                                                                     },
[INFO] [stdout]                                                                 ],
[INFO] [stdout]                                                             },
[INFO] [stdout]                                                         },
[INFO] [stdout]                                                     ),
[INFO] [stdout]                                                 ],
[INFO] [stdout]                                                 gt_token: Gt,
[INFO] [stdout]                                             },
[INFO] [stdout]                                         },
[INFO] [stdout]                                     ],
[INFO] [stdout]                                 },
[INFO] [stdout]                             },
[INFO] [stdout]                         },
[INFO] [stdout]                     ],
[INFO] [stdout]                 },
[INFO] [stdout]                 discriminant: None,
[INFO] [stdout]             },
[INFO] [stdout]             Comma,
[INFO] [stdout]             Variant {
[INFO] [stdout]                 attrs: [],
[INFO] [stdout]                 ident: Ident {
[INFO] [stdout]                     ident: "Down",
[INFO] [stdout]                     span: #0 bytes(115..119),
[INFO] [stdout]                 },
[INFO] [stdout]                 fields: Fields::Unit,
[INFO] [stdout]                 discriminant: None,
[INFO] [stdout]             },
[INFO] [stdout]             Comma,
[INFO] [stdout]             Variant {
[INFO] [stdout]                 attrs: [],
[INFO] [stdout]                 ident: Ident {
[INFO] [stdout]                     ident: "Left",
[INFO] [stdout]                     span: #0 bytes(125..129),
[INFO] [stdout]                 },
[INFO] [stdout]                 fields: Fields::Unnamed {
[INFO] [stdout]                     paren_token: Paren,
[INFO] [stdout]                     unnamed: [
[INFO] [stdout]                         Field {
[INFO] [stdout]                             attrs: [],
[INFO] [stdout]                             vis: Visibility::Inherited,
[INFO] [stdout]                             mutability: FieldMutability::None,
[INFO] [stdout]                             ident: None,
[INFO] [stdout]                             colon_token: None,
[INFO] [stdout]                             ty: Type::Path {
[INFO] [stdout]                                 qself: None,
[INFO] [stdout]                                 path: Path {
[INFO] [stdout]                                     leading_colon: None,
[INFO] [stdout]                                     segments: [
[INFO] [stdout]                                         PathSegment {
[INFO] [stdout]                                             ident: Ident {
[INFO] [stdout]                                                 ident: "u32",
[INFO] [stdout]                                                 span: #0 bytes(130..133),
[INFO] [stdout]                                             },
[INFO] [stdout]                                             arguments: PathArguments::None,
[INFO] [stdout]                                         },
[INFO] [stdout]                                     ],
[INFO] [stdout]                                 },
[INFO] [stdout]                             },
[INFO] [stdout]                         },
[INFO] [stdout]                     ],
[INFO] [stdout]                 },
[INFO] [stdout]                 discriminant: None,
[INFO] [stdout]             },
[INFO] [stdout]             Comma,
[INFO] [stdout]             Variant {
[INFO] [stdout]                 attrs: [],
[INFO] [stdout]                 ident: Ident {
[INFO] [stdout]                     ident: "Right",
[INFO] [stdout]                     span: #0 bytes(140..145),
[INFO] [stdout]                 },
[INFO] [stdout]                 fields: Fields::Named {
[INFO] [stdout]                     brace_token: Brace,
[INFO] [stdout]                     named: [
[INFO] [stdout]                         Field {
[INFO] [stdout]                             attrs: [],
[INFO] [stdout]                             vis: Visibility::Inherited,
[INFO] [stdout]                             mutability: FieldMutability::None,
[INFO] [stdout]                             ident: Some(
[INFO] [stdout]                                 Ident {
[INFO] [stdout]                                     ident: "a",
[INFO] [stdout]                                     span: #0 bytes(148..149),
[INFO] [stdout]                                 },
[INFO] [stdout]                             ),
[INFO] [stdout]                             colon_token: Some(
[INFO] [stdout]                                 Colon,
[INFO] [stdout]                             ),
[INFO] [stdout]                             ty: Type::Path {
[INFO] [stdout]                                 qself: None,
[INFO] [stdout]                                 path: Path {
[INFO] [stdout]                                     leading_colon: None,
[INFO] [stdout]                                     segments: [
[INFO] [stdout]                                         PathSegment {
[INFO] [stdout]                                             ident: Ident {
[INFO] [stdout]                                                 ident: "u32",
[INFO] [stdout]                                                 span: #0 bytes(151..154),
[INFO] [stdout]                                             },
[INFO] [stdout]                                             arguments: PathArguments::None,
[INFO] [stdout]                                         },
[INFO] [stdout]                                     ],
[INFO] [stdout]                                 },
[INFO] [stdout]                             },
[INFO] [stdout]                         },
[INFO] [stdout]                     ],
[INFO] [stdout]                 },
[INFO] [stdout]                 discriminant: None,
[INFO] [stdout]             },
[INFO] [stdout]             Comma,
[INFO] [stdout]         ],
[INFO] [stdout]     },
[INFO] [stdout] }
[INFO] [stdout] DeriveInput { attrs: [Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "allow", span: #0 bytes(26..31) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "unused", span: #0 bytes(32..38) }] } }, Attribute { pound_token: Pound, style: AttrStyle::Outer, bracket_token: Bracket, meta: Meta::List { path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "deref", span: #0 bytes(71..76) }, arguments: PathArguments::None }] }, delimiter: MacroDelimiter::Paren(Paren), tokens: TokenStream [Ident { ident: "field", span: #0 bytes(77..82) }, Punct { ch: '=', spacing: Alone, span: #0 bytes(83..84) }, Literal { kind: Str, symbol: "inner", suffix: None, span: #0 bytes(85..92) }] } }], vis: Visibility::Public(Pub), ident: Ident { ident: "RespBulkString", span: #0 bytes(106..120) }, generics: Generics { lt_token: None, params: [], gt_token: None, where_clause: None }, data: Data::Struct { struct_token: Struct, fields: Fields::Named { brace_token: Brace, named: [Field { attrs: [], vis: Visibility::Inherited, mutability: FieldMutability::None, ident: Some(Ident { ident: "inner", span: #0 bytes(127..132) }), colon_token: Some(Colon), ty: Type::Path { qself: None, path: Path { leading_colon: None, segments: [PathSegment { ident: Ident { ident: "String", span: #0 bytes(134..140) }, arguments: PathArguments::None }] } } }, Comma] }, semi_token: None } }
[INFO] [stdout] error: useless conversion to the same type: `anyhow::Error`
[INFO] [stdout]   --> examples/my_try.rs:24:36
[INFO] [stdout]    |
[INFO] [stdout]  2 |     let ret = my_try!(f3(my_try!(f2(my_try!(f1("hello"))))));
[INFO] [stdout]    |                                     -------------------- in this macro invocation
[INFO] [stdout] ...
[INFO] [stdout] 20 | macro_rules! my_try {
[INFO] [stdout] ...
[INFO] [stdout] 24 |             Err(err) => return Err(err.into()),
[INFO] [stdout]    |                                    ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: you can instead use the fully-qualified path `<anyhow::Error as Into<anyhow::Error>::into(val) to avoid triggering this lint
[INFO] [stdout]    = note: `#[deny(self_type_conversion)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `anyhow::Error`
[INFO] [stdout]   --> examples/my_try.rs:24:36
[INFO] [stdout]    |
[INFO] [stdout]  2 |     let ret = my_try!(f3(my_try!(f2(my_try!(f1("hello"))))));
[INFO] [stdout]    |                          --------------------------------- in this macro invocation
[INFO] [stdout] ...
[INFO] [stdout] 20 | macro_rules! my_try {
[INFO] [stdout] ...
[INFO] [stdout] 24 |             Err(err) => return Err(err.into()),
[INFO] [stdout]    |                                    ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: you can instead use the fully-qualified path `<anyhow::Error as Into<anyhow::Error>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `anyhow::Error`
[INFO] [stdout]   --> examples/my_try.rs:24:36
[INFO] [stdout]    |
[INFO] [stdout]  2 |     let ret = my_try!(f3(my_try!(f2(my_try!(f1("hello"))))));
[INFO] [stdout]    |               ---------------------------------------------- in this macro invocation
[INFO] [stdout] ...
[INFO] [stdout] 20 | macro_rules! my_try {
[INFO] [stdout] ...
[INFO] [stdout] 24 |             Err(err) => return Err(err.into()),
[INFO] [stdout]    |                                    ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]    = note: you can instead use the fully-qualified path `<anyhow::Error as Into<anyhow::Error>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `macros` (example "my_try") due to 3 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] running `Command { std: "docker" "inspect" "fcfb0995b60606a0e8896062fdd4188ed56133b8349b5362f9bb880580bb0dbd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fcfb0995b60606a0e8896062fdd4188ed56133b8349b5362f9bb880580bb0dbd", kill_on_drop: false }`
[INFO] [stdout] fcfb0995b60606a0e8896062fdd4188ed56133b8349b5362f9bb880580bb0dbd
