[INFO] cloning repository https://github.com/LPTimey/struct-tools-derive [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/LPTimey/struct-tools-derive" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLPTimey%2Fstruct-tools-derive", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLPTimey%2Fstruct-tools-derive'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 3336b0252fdac5183dd6773a543862acad12dd2c [INFO] checking LPTimey/struct-tools-derive against try#7424ce9ff9baac3e9d9f5dd3c85828cddea0134d for pr-136776-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FLPTimey%2Fstruct-tools-derive" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/LPTimey/struct-tools-derive [INFO] finished tweaking git repo https://github.com/LPTimey/struct-tools-derive [INFO] tweaked toml for git repo https://github.com/LPTimey/struct-tools-derive written to /workspace/builds/worker-6-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/LPTimey/struct-tools-derive on toolchain 7424ce9ff9baac3e9d9f5dd3c85828cddea0134d [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+7424ce9ff9baac3e9d9f5dd3c85828cddea0134d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/LPTimey/struct-tools-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" "+7424ce9ff9baac3e9d9f5dd3c85828cddea0134d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:94a0c148923f5b2b52a63ef0eeb1882ad339ab61bce784c8077cbe41c61feb6c" "/opt/rustwide/cargo-home/bin/cargo" "+7424ce9ff9baac3e9d9f5dd3c85828cddea0134d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 605ea151b316d3b30ebe886a3b46f19cc34a4a23a0061f3915f7ca1ab7f9bca9 [INFO] running `Command { std: "docker" "start" "-a" "605ea151b316d3b30ebe886a3b46f19cc34a4a23a0061f3915f7ca1ab7f9bca9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "605ea151b316d3b30ebe886a3b46f19cc34a4a23a0061f3915f7ca1ab7f9bca9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "605ea151b316d3b30ebe886a3b46f19cc34a4a23a0061f3915f7ca1ab7f9bca9", kill_on_drop: false }` [INFO] [stdout] 605ea151b316d3b30ebe886a3b46f19cc34a4a23a0061f3915f7ca1ab7f9bca9 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:94a0c148923f5b2b52a63ef0eeb1882ad339ab61bce784c8077cbe41c61feb6c" "/opt/rustwide/cargo-home/bin/cargo" "+7424ce9ff9baac3e9d9f5dd3c85828cddea0134d" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 1d059a71077c4630f99b9acca631c4d95783b4797bb363d415c265e20dc2854e [INFO] running `Command { std: "docker" "start" "-a" "1d059a71077c4630f99b9acca631c4d95783b4797bb363d415c265e20dc2854e", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.63 [INFO] [stderr] Checking unicode-ident v1.0.9 [INFO] [stderr] Checking either v1.8.1 [INFO] [stderr] Compiling quote v1.0.29 [INFO] [stderr] Checking itertools v0.11.0 [INFO] [stderr] Checking syn v2.0.23 [INFO] [stderr] Checking struct-tools-derive v0.5.3 (/opt/rustwide/workdir) [INFO] [stdout] pub trait Some { type Output; fn get(self) -> Self :: Output; } [INFO] [stdout] #[allow(non_camel_case_types)] pub trait ID {} #[allow(non_camel_case_types)] [INFO] [stdout] pub trait TITLE {} #[allow(non_camel_case_types)] pub trait PAGES {} [INFO] [stdout] #[allow(non_camel_case_types)] pub trait AUTHOR {} [INFO] [stdout] #[allow(non_camel_case_types)] pub trait INSPIRATIONS {} [INFO] [stdout] #[allow(non_camel_case_types)] pub trait DATE_TIME_ {} [INFO] [stdout] #[allow(non_camel_case_types)] pub trait TUPLE {} [INFO] [stdout] #[allow(non_camel_case_types)] pub struct SomeID(u64); impl From < u64 > for [INFO] [stdout] SomeID { fn from(value : u64) -> Self { SomeID(value) } } impl ID for SomeID [INFO] [stdout] {} impl Some for SomeID [INFO] [stdout] { type Output = u64; fn get(self) -> Self :: Output { self.0 } } [INFO] [stdout] #[allow(non_camel_case_types)] pub struct NoID; impl ID for NoID {} [INFO] [stdout] #[allow(non_camel_case_types)] pub struct SomeTITLE(String); impl From < [INFO] [stdout] String > for SomeTITLE [INFO] [stdout] { fn from(value : String) -> Self { SomeTITLE(value) } } impl TITLE for [INFO] [stdout] SomeTITLE {} impl Some for SomeTITLE [INFO] [stdout] { type Output = String; fn get(self) -> Self :: Output { self.0 } } [INFO] [stdout] #[allow(non_camel_case_types)] pub struct NoTITLE; impl TITLE for NoTITLE {} [INFO] [stdout] #[allow(non_camel_case_types)] pub struct SomePAGES(u64); impl From < u64 > [INFO] [stdout] for SomePAGES { fn from(value : u64) -> Self { SomePAGES(value) } } impl PAGES [INFO] [stdout] for SomePAGES {} impl Some for SomePAGES [INFO] [stdout] { type Output = u64; fn get(self) -> Self :: Output { self.0 } } [INFO] [stdout] #[allow(non_camel_case_types)] pub struct NoPAGES; impl PAGES for NoPAGES {} [INFO] [stdout] #[allow(non_camel_case_types)] pub struct SomeAUTHOR(String); impl From < [INFO] [stdout] String > for SomeAUTHOR [INFO] [stdout] { fn from(value : String) -> Self { SomeAUTHOR(value) } } impl AUTHOR for [INFO] [stdout] SomeAUTHOR {} impl Some for SomeAUTHOR [INFO] [stdout] { type Output = String; fn get(self) -> Self :: Output { self.0 } } [INFO] [stdout] #[allow(non_camel_case_types)] pub struct NoAUTHOR; impl AUTHOR for NoAUTHOR [INFO] [stdout] {} #[allow(non_camel_case_types)] pub struct [INFO] [stdout] SomeINSPIRATIONS(Option < Vec < String > >); impl From < Option < Vec < String [INFO] [stdout] > > > for SomeINSPIRATIONS [INFO] [stdout] { [INFO] [stdout] fn from(value : Option < Vec < String > >) -> Self [INFO] [stdout] { SomeINSPIRATIONS(value) } [INFO] [stdout] } impl INSPIRATIONS for SomeINSPIRATIONS {} impl Some for SomeINSPIRATIONS [INFO] [stdout] { [INFO] [stdout] type Output = Option < Vec < String > > ; fn get(self) -> Self :: Output [INFO] [stdout] { self.0 } [INFO] [stdout] } #[allow(non_camel_case_types)] pub struct NoINSPIRATIONS; impl INSPIRATIONS [INFO] [stdout] for NoINSPIRATIONS {} #[allow(non_camel_case_types)] pub struct [INFO] [stdout] SomeDATE_TIME_(u64); impl From < u64 > for SomeDATE_TIME_ [INFO] [stdout] { fn from(value : u64) -> Self { SomeDATE_TIME_(value) } } impl DATE_TIME_ for [INFO] [stdout] SomeDATE_TIME_ {} impl Some for SomeDATE_TIME_ [INFO] [stdout] { type Output = u64; fn get(self) -> Self :: Output { self.0 } } [INFO] [stdout] #[allow(non_camel_case_types)] pub struct NoDATE_TIME_; impl DATE_TIME_ for [INFO] [stdout] NoDATE_TIME_ {} #[allow(non_camel_case_types)] pub struct SomeTUPLE((u8, u8)); [INFO] [stdout] impl From < (u8, u8) > for SomeTUPLE [INFO] [stdout] { fn from(value : (u8, u8)) -> Self { SomeTUPLE(value) } } impl TUPLE for [INFO] [stdout] SomeTUPLE {} impl Some for SomeTUPLE [INFO] [stdout] { type Output = (u8, u8); fn get(self) -> Self :: Output { self.0 } } [INFO] [stdout] #[allow(non_camel_case_types)] pub struct NoTUPLE; impl TUPLE for NoTUPLE {} [INFO] [stdout] pub struct BookBuilder < A : ID, B : TITLE, C : PAGES, D : AUTHOR, E : [INFO] [stdout] INSPIRATIONS, F : DATE_TIME_, G : TUPLE > [INFO] [stdout] { [INFO] [stdout] id : A, title : B, pages : C, author : D, inspirations : E, date_time_ : [INFO] [stdout] F, tuple : G [INFO] [stdout] } impl Default for BookBuilder < NoID, NoTITLE, SomePAGES, NoAUTHOR, [INFO] [stdout] SomeINSPIRATIONS, NoDATE_TIME_, NoTUPLE > [INFO] [stdout] { [INFO] [stdout] fn default() -> Self [INFO] [stdout] { [INFO] [stdout] Self [INFO] [stdout] { [INFO] [stdout] id : NoID, title : NoTITLE, pages : SomePAGES(0), author : [INFO] [stdout] NoAUTHOR, inspirations : SomeINSPIRATIONS(None), date_time_ : [INFO] [stdout] NoDATE_TIME_, tuple : NoTUPLE [INFO] [stdout] } [INFO] [stdout] } [INFO] [stdout] } impl < A : ID, B : TITLE, C : PAGES, D : AUTHOR, E : INSPIRATIONS, F : [INFO] [stdout] DATE_TIME_, G : TUPLE > BookBuilder < A, B, C, D, E, F, G > [INFO] [stdout] { [INFO] [stdout] pub fn custom_set_id < T > (self, value : T) -> BookBuilder < T, B, C, D, [INFO] [stdout] E, F, G > where T : ID + Some [INFO] [stdout] { [INFO] [stdout] let id = self.id; let title = self.title; let pages = self.pages; let [INFO] [stdout] author = self.author; let inspirations = self.inspirations; let [INFO] [stdout] date_time_ = self.date_time_; let tuple = self.tuple; let id = value; [INFO] [stdout] BookBuilder [INFO] [stdout] { id, title, pages, author, inspirations, date_time_, tuple } [INFO] [stdout] } pub fn custom_set_title < T > (self, value : T) -> BookBuilder < A, T, [INFO] [stdout] C, D, E, F, G > where T : TITLE + Some [INFO] [stdout] { [INFO] [stdout] let id = self.id; let title = self.title; let pages = self.pages; let [INFO] [stdout] author = self.author; let inspirations = self.inspirations; let [INFO] [stdout] date_time_ = self.date_time_; let tuple = self.tuple; let title = [INFO] [stdout] value; BookBuilder [INFO] [stdout] { id, title, pages, author, inspirations, date_time_, tuple } [INFO] [stdout] } pub fn custom_set_pages < T > (self, value : T) -> BookBuilder < A, B, [INFO] [stdout] T, D, E, F, G > where T : PAGES + Some [INFO] [stdout] { [INFO] [stdout] let id = self.id; let title = self.title; let pages = self.pages; let [INFO] [stdout] author = self.author; let inspirations = self.inspirations; let [INFO] [stdout] date_time_ = self.date_time_; let tuple = self.tuple; let pages = [INFO] [stdout] value; BookBuilder [INFO] [stdout] { id, title, pages, author, inspirations, date_time_, tuple } [INFO] [stdout] } pub fn custom_set_author < T > (self, value : T) -> BookBuilder < A, B, [INFO] [stdout] C, T, E, F, G > where T : AUTHOR + Some [INFO] [stdout] { [INFO] [stdout] let id = self.id; let title = self.title; let pages = self.pages; let [INFO] [stdout] author = self.author; let inspirations = self.inspirations; let [INFO] [stdout] date_time_ = self.date_time_; let tuple = self.tuple; let author = [INFO] [stdout] value; BookBuilder [INFO] [stdout] { id, title, pages, author, inspirations, date_time_, tuple } [INFO] [stdout] } pub fn custom_set_inspirations < T > (self, value : T) -> BookBuilder < [INFO] [stdout] A, B, C, D, T, F, G > where T : INSPIRATIONS + Some [INFO] [stdout] { [INFO] [stdout] let id = self.id; let title = self.title; let pages = self.pages; let [INFO] [stdout] author = self.author; let inspirations = self.inspirations; let [INFO] [stdout] date_time_ = self.date_time_; let tuple = self.tuple; let inspirations [INFO] [stdout] = value; BookBuilder [INFO] [stdout] { id, title, pages, author, inspirations, date_time_, tuple } [INFO] [stdout] } pub fn custom_set_date_time_ < T > (self, value : T) -> BookBuilder < A, [INFO] [stdout] B, C, D, E, T, G > where T : DATE_TIME_ + Some [INFO] [stdout] { [INFO] [stdout] let id = self.id; let title = self.title; let pages = self.pages; let [INFO] [stdout] author = self.author; let inspirations = self.inspirations; let [INFO] [stdout] date_time_ = self.date_time_; let tuple = self.tuple; let date_time_ = [INFO] [stdout] value; BookBuilder [INFO] [stdout] { id, title, pages, author, inspirations, date_time_, tuple } [INFO] [stdout] } pub fn custom_set_tuple < T > (self, value : T) -> BookBuilder < A, B, [INFO] [stdout] C, D, E, F, T > where T : TUPLE + Some [INFO] [stdout] { [INFO] [stdout] let id = self.id; let title = self.title; let pages = self.pages; let [INFO] [stdout] author = self.author; let inspirations = self.inspirations; let [INFO] [stdout] date_time_ = self.date_time_; let tuple = self.tuple; let tuple = [INFO] [stdout] value; BookBuilder [INFO] [stdout] { id, title, pages, author, inspirations, date_time_, tuple } [INFO] [stdout] } pub fn set_id(self, value : impl Into < SomeID >) -> BookBuilder < [INFO] [stdout] SomeID, B, C, D, E, F, G > [INFO] [stdout] { [INFO] [stdout] let id = self.id; let title = self.title; let pages = self.pages; let [INFO] [stdout] author = self.author; let inspirations = self.inspirations; let [INFO] [stdout] date_time_ = self.date_time_; let tuple = self.tuple; let id = [INFO] [stdout] value.into(); BookBuilder [INFO] [stdout] { id, title, pages, author, inspirations, date_time_, tuple } [INFO] [stdout] } pub fn set_title(self, value : impl Into < SomeTITLE >) -> BookBuilder < [INFO] [stdout] A, SomeTITLE, C, D, E, F, G > [INFO] [stdout] { [INFO] [stdout] let id = self.id; let title = self.title; let pages = self.pages; let [INFO] [stdout] author = self.author; let inspirations = self.inspirations; let [INFO] [stdout] date_time_ = self.date_time_; let tuple = self.tuple; let title = [INFO] [stdout] value.into(); BookBuilder [INFO] [stdout] { id, title, pages, author, inspirations, date_time_, tuple } [INFO] [stdout] } pub fn set_pages(self, value : impl Into < SomePAGES >) -> BookBuilder < [INFO] [stdout] A, B, SomePAGES, D, E, F, G > [INFO] [stdout] { [INFO] [stdout] let id = self.id; let title = self.title; let pages = self.pages; let [INFO] [stdout] author = self.author; let inspirations = self.inspirations; let [INFO] [stdout] date_time_ = self.date_time_; let tuple = self.tuple; let pages = [INFO] [stdout] value.into(); BookBuilder [INFO] [stdout] { id, title, pages, author, inspirations, date_time_, tuple } [INFO] [stdout] } pub fn set_author(self, value : impl Into < SomeAUTHOR >) -> BookBuilder [INFO] [stdout] < A, B, C, SomeAUTHOR, E, F, G > [INFO] [stdout] { [INFO] [stdout] let id = self.id; let title = self.title; let pages = self.pages; let [INFO] [stdout] author = self.author; let inspirations = self.inspirations; let [INFO] [stdout] date_time_ = self.date_time_; let tuple = self.tuple; let author = [INFO] [stdout] value.into(); BookBuilder [INFO] [stdout] { id, title, pages, author, inspirations, date_time_, tuple } [INFO] [stdout] } pub fn set_inspirations(self, value : impl Into < SomeINSPIRATIONS >) -> [INFO] [stdout] BookBuilder < A, B, C, D, SomeINSPIRATIONS, F, G > [INFO] [stdout] { [INFO] [stdout] let id = self.id; let title = self.title; let pages = self.pages; let [INFO] [stdout] author = self.author; let inspirations = self.inspirations; let [INFO] [stdout] date_time_ = self.date_time_; let tuple = self.tuple; let inspirations [INFO] [stdout] = value.into(); BookBuilder [INFO] [stdout] { id, title, pages, author, inspirations, date_time_, tuple } [INFO] [stdout] } pub fn set_date_time_(self, value : impl Into < SomeDATE_TIME_ >) -> [INFO] [stdout] BookBuilder < A, B, C, D, E, SomeDATE_TIME_, G > [INFO] [stdout] { [INFO] [stdout] let id = self.id; let title = self.title; let pages = self.pages; let [INFO] [stdout] author = self.author; let inspirations = self.inspirations; let [INFO] [stdout] date_time_ = self.date_time_; let tuple = self.tuple; let date_time_ = [INFO] [stdout] value.into(); BookBuilder [INFO] [stdout] { id, title, pages, author, inspirations, date_time_, tuple } [INFO] [stdout] } pub fn set_tuple(self, value : impl Into < SomeTUPLE >) -> BookBuilder < [INFO] [stdout] A, B, C, D, E, F, SomeTUPLE > [INFO] [stdout] { [INFO] [stdout] let id = self.id; let title = self.title; let pages = self.pages; let [INFO] [stdout] author = self.author; let inspirations = self.inspirations; let [INFO] [stdout] date_time_ = self.date_time_; let tuple = self.tuple; let tuple = [INFO] [stdout] value.into(); BookBuilder [INFO] [stdout] { id, title, pages, author, inspirations, date_time_, tuple } [INFO] [stdout] } [INFO] [stdout] } impl < A : ID + Some < Output = u64 > , B : TITLE + Some < Output = String > [INFO] [stdout] , C : PAGES + Some < Output = u64 > , D : AUTHOR + Some < Output = String > , [INFO] [stdout] E : INSPIRATIONS + Some < Output = Option < Vec < String > > > , F : [INFO] [stdout] DATE_TIME_ + Some < Output = u64 > , G : TUPLE + Some < Output = (u8, u8) > > [INFO] [stdout] BookBuilder < A, B, C, D, E, F, G > [INFO] [stdout] { [INFO] [stdout] pub fn build(self) -> Book [INFO] [stdout] { [INFO] [stdout] Book [INFO] [stdout] { [INFO] [stdout] id : self.id.get(), title : self.title.get(), pages : [INFO] [stdout] self.pages.get(), author : self.author.get(), inspirations : [INFO] [stdout] self.inspirations.get(), date_time_ : self.date_time_.get(), tuple [INFO] [stdout] : self.tuple.get() [INFO] [stdout] } [INFO] [stdout] } [INFO] [stdout] } [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.17s [INFO] running `Command { std: "docker" "inspect" "1d059a71077c4630f99b9acca631c4d95783b4797bb363d415c265e20dc2854e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1d059a71077c4630f99b9acca631c4d95783b4797bb363d415c265e20dc2854e", kill_on_drop: false }` [INFO] [stdout] 1d059a71077c4630f99b9acca631c4d95783b4797bb363d415c265e20dc2854e