[INFO] cloning repository https://github.com/zaneli/rust-protobuf-example [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/zaneli/rust-protobuf-example" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fzaneli%2Frust-protobuf-example", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fzaneli%2Frust-protobuf-example'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] efeda4e6e5526a7f9889b14ba77efe816b2a71aa [INFO] checking zaneli/rust-protobuf-example against try#c659ee110de67e82444e4b6c8407c1a9af9c2cf6 for pr-145608-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fzaneli%2Frust-protobuf-example" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/zaneli/rust-protobuf-example [INFO] finished tweaking git repo https://github.com/zaneli/rust-protobuf-example [INFO] tweaked toml for git repo https://github.com/zaneli/rust-protobuf-example written to /workspace/builds/worker-1-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/zaneli/rust-protobuf-example on toolchain c659ee110de67e82444e4b6c8407c1a9af9c2cf6 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c659ee110de67e82444e4b6c8407c1a9af9c2cf6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/zaneli/rust-protobuf-example 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" "+c659ee110de67e82444e4b6c8407c1a9af9c2cf6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+c659ee110de67e82444e4b6c8407c1a9af9c2cf6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] c1e4d856c16ba96e9c73ebe0832f048ed15a17e0a300855a5ad09d7fa8caef33 [INFO] running `Command { std: "docker" "start" "-a" "c1e4d856c16ba96e9c73ebe0832f048ed15a17e0a300855a5ad09d7fa8caef33", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "c1e4d856c16ba96e9c73ebe0832f048ed15a17e0a300855a5ad09d7fa8caef33", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c1e4d856c16ba96e9c73ebe0832f048ed15a17e0a300855a5ad09d7fa8caef33", kill_on_drop: false }` [INFO] [stdout] c1e4d856c16ba96e9c73ebe0832f048ed15a17e0a300855a5ad09d7fa8caef33 [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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+c659ee110de67e82444e4b6c8407c1a9af9c2cf6" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] c80522bf1627c7b8d403c7ffd8447b6267557b427791707d49bbfddc1925ee2e [INFO] running `Command { std: "docker" "start" "-a" "c80522bf1627c7b8d403c7ffd8447b6267557b427791707d49bbfddc1925ee2e", kill_on_drop: false }` [INFO] [stderr] Compiling protobuf v2.6.0 [INFO] [stderr] Checking rust-protobuf-example v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons [INFO] [stdout] --> src/addressbook.rs:10:10 [INFO] [stdout] | [INFO] [stdout] 10 | #![allow(box_pointers)] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(renamed_and_removed_lints)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lint `box_pointers` has been removed: it does not detect other kinds of allocations, and existed only for historical reasons [INFO] [stdout] --> src/addressbook.rs:10:10 [INFO] [stdout] | [INFO] [stdout] 10 | #![allow(box_pointers)] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(renamed_and_removed_lints)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/addressbook.rs:282:26 [INFO] [stdout] | [INFO] [stdout] 282 | fn as_any(&self) -> &::std::any::Any { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 282 | fn as_any(&self) -> &dyn (::std::any::Any) { [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/addressbook.rs:285:38 [INFO] [stdout] | [INFO] [stdout] 285 | fn as_any_mut(&mut self) -> &mut ::std::any::Any { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 285 | fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/addressbook.rs:288:55 [INFO] [stdout] | [INFO] [stdout] 288 | fn into_any(self: Box) -> ::std::boxed::Box<::std::any::Any> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 288 | fn into_any(self: Box) -> ::std::boxed::Box { [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/addressbook.rs:500:26 [INFO] [stdout] | [INFO] [stdout] 500 | fn as_any(&self) -> &::std::any::Any { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 500 | fn as_any(&self) -> &dyn (::std::any::Any) { [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/addressbook.rs:503:38 [INFO] [stdout] | [INFO] [stdout] 503 | fn as_any_mut(&mut self) -> &mut ::std::any::Any { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 503 | fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/addressbook.rs:506:55 [INFO] [stdout] | [INFO] [stdout] 506 | fn into_any(self: Box) -> ::std::boxed::Box<::std::any::Any> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 506 | fn into_any(self: Box) -> ::std::boxed::Box { [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/addressbook.rs:740:26 [INFO] [stdout] | [INFO] [stdout] 740 | fn as_any(&self) -> &::std::any::Any { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 740 | fn as_any(&self) -> &dyn (::std::any::Any) { [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/addressbook.rs:743:38 [INFO] [stdout] | [INFO] [stdout] 743 | fn as_any_mut(&mut self) -> &mut ::std::any::Any { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 743 | fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/addressbook.rs:746:55 [INFO] [stdout] | [INFO] [stdout] 746 | fn into_any(self: Box) -> ::std::boxed::Box<::std::any::Any> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 746 | fn into_any(self: Box) -> ::std::boxed::Box { [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/addressbook.rs:283:18 [INFO] [stdout] | [INFO] [stdout] 283 | self as &::std::any::Any [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 283 | self as &dyn (::std::any::Any) [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/addressbook.rs:286:22 [INFO] [stdout] | [INFO] [stdout] 286 | self as &mut ::std::any::Any [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 286 | self as &mut dyn (::std::any::Any) [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/addressbook.rs:501:18 [INFO] [stdout] | [INFO] [stdout] 501 | self as &::std::any::Any [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 501 | self as &dyn (::std::any::Any) [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/addressbook.rs:504:22 [INFO] [stdout] | [INFO] [stdout] 504 | self as &mut ::std::any::Any [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 504 | self as &mut dyn (::std::any::Any) [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/addressbook.rs:741:18 [INFO] [stdout] | [INFO] [stdout] 741 | self as &::std::any::Any [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 741 | self as &dyn (::std::any::Any) [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/addressbook.rs:744:22 [INFO] [stdout] | [INFO] [stdout] 744 | self as &mut ::std::any::Any [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 744 | self as &mut dyn (::std::any::Any) [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/addressbook.rs:306:13 [INFO] [stdout] | [INFO] [stdout] 306 | / descriptor.get(|| { [INFO] [stdout] 307 | | let mut fields = ::std::vec::Vec::new(); [INFO] [stdout] 308 | | fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( [INFO] [stdout] 309 | | "name", [INFO] [stdout] ... | [INFO] [stdout] 338 | | }) [INFO] [stdout] | |______________^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] = note: `#[warn(static_mut_refs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/addressbook.rs:348:13 [INFO] [stdout] | [INFO] [stdout] 348 | instance.get(Person::new) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/addressbook.rs:371:15 [INFO] [stdout] | [INFO] [stdout] 371 | fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { [INFO] [stdout] | ^^^^^ ------------------------------------- the same lifetime is hidden here [INFO] [stdout] | | [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] 371 | fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/addressbook.rs:282:26 [INFO] [stdout] | [INFO] [stdout] 282 | fn as_any(&self) -> &::std::any::Any { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 282 | fn as_any(&self) -> &dyn (::std::any::Any) { [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/addressbook.rs:285:38 [INFO] [stdout] | [INFO] [stdout] 285 | fn as_any_mut(&mut self) -> &mut ::std::any::Any { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 285 | fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/addressbook.rs:288:55 [INFO] [stdout] | [INFO] [stdout] 288 | fn into_any(self: Box) -> ::std::boxed::Box<::std::any::Any> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 288 | fn into_any(self: Box) -> ::std::boxed::Box { [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/addressbook.rs:524:13 [INFO] [stdout] | [INFO] [stdout] 524 | / descriptor.get(|| { [INFO] [stdout] 525 | | let mut fields = ::std::vec::Vec::new(); [INFO] [stdout] 526 | | fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( [INFO] [stdout] 527 | | "number", [INFO] [stdout] ... | [INFO] [stdout] 541 | | }) [INFO] [stdout] | |______________^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/addressbook.rs:551:13 [INFO] [stdout] | [INFO] [stdout] 551 | instance.get(Person_PhoneNumber::new) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/addressbook.rs:571:15 [INFO] [stdout] | [INFO] [stdout] 571 | fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { [INFO] [stdout] | ^^^^^ ------------------------------------- the same lifetime is hidden here [INFO] [stdout] | | [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] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 571 | fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/addressbook.rs:612:13 [INFO] [stdout] | [INFO] [stdout] 612 | / descriptor.get(|| { [INFO] [stdout] 613 | | ::protobuf::reflect::EnumDescriptor::new("Person_PhoneType", file_descriptor_proto()) [INFO] [stdout] 614 | | }) [INFO] [stdout] | |______________^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/addressbook.rs:629:15 [INFO] [stdout] | [INFO] [stdout] 629 | fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { [INFO] [stdout] | ^^^^^ ------------------------------------- the same lifetime is hidden here [INFO] [stdout] | | [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] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 629 | fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/addressbook.rs:764:13 [INFO] [stdout] | [INFO] [stdout] 764 | / ... descriptor.get(|| { [INFO] [stdout] 765 | | ... let mut fields = ::std::vec::Vec::new(); [INFO] [stdout] 766 | | ... fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( [INFO] [stdout] 767 | | ... "people", [INFO] [stdout] ... | [INFO] [stdout] 776 | | ... }) [INFO] [stdout] | |________^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/addressbook.rs:786:13 [INFO] [stdout] | [INFO] [stdout] 786 | instance.get(AddressBook::new) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/addressbook.rs:805:15 [INFO] [stdout] | [INFO] [stdout] 805 | fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { [INFO] [stdout] | ^^^^^ ------------------------------------- the same lifetime is hidden here [INFO] [stdout] | | [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] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 805 | fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/addressbook.rs:900:9 [INFO] [stdout] | [INFO] [stdout] 900 | / file_descriptor_proto_lazy.get(|| { [INFO] [stdout] 901 | | parse_descriptor_proto() [INFO] [stdout] 902 | | }) [INFO] [stdout] | |__________^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/addressbook.rs:500:26 [INFO] [stdout] | [INFO] [stdout] 500 | fn as_any(&self) -> &::std::any::Any { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 500 | fn as_any(&self) -> &dyn (::std::any::Any) { [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/addressbook.rs:503:38 [INFO] [stdout] | [INFO] [stdout] 503 | fn as_any_mut(&mut self) -> &mut ::std::any::Any { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 503 | fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/addressbook.rs:506:55 [INFO] [stdout] | [INFO] [stdout] 506 | fn into_any(self: Box) -> ::std::boxed::Box<::std::any::Any> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 506 | fn into_any(self: Box) -> ::std::boxed::Box { [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/addressbook.rs:740:26 [INFO] [stdout] | [INFO] [stdout] 740 | fn as_any(&self) -> &::std::any::Any { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 740 | fn as_any(&self) -> &dyn (::std::any::Any) { [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/addressbook.rs:743:38 [INFO] [stdout] | [INFO] [stdout] 743 | fn as_any_mut(&mut self) -> &mut ::std::any::Any { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 743 | fn as_any_mut(&mut self) -> &mut dyn (::std::any::Any) { [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/addressbook.rs:746:55 [INFO] [stdout] | [INFO] [stdout] 746 | fn into_any(self: Box) -> ::std::boxed::Box<::std::any::Any> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 746 | fn into_any(self: Box) -> ::std::boxed::Box { [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/addressbook.rs:283:18 [INFO] [stdout] | [INFO] [stdout] 283 | self as &::std::any::Any [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 283 | self as &dyn (::std::any::Any) [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/addressbook.rs:286:22 [INFO] [stdout] | [INFO] [stdout] 286 | self as &mut ::std::any::Any [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 286 | self as &mut dyn (::std::any::Any) [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/addressbook.rs:501:18 [INFO] [stdout] | [INFO] [stdout] 501 | self as &::std::any::Any [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 501 | self as &dyn (::std::any::Any) [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/addressbook.rs:504:22 [INFO] [stdout] | [INFO] [stdout] 504 | self as &mut ::std::any::Any [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 504 | self as &mut dyn (::std::any::Any) [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/addressbook.rs:741:18 [INFO] [stdout] | [INFO] [stdout] 741 | self as &::std::any::Any [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 741 | self as &dyn (::std::any::Any) [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/addressbook.rs:744:22 [INFO] [stdout] | [INFO] [stdout] 744 | self as &mut ::std::any::Any [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 744 | self as &mut dyn (::std::any::Any) [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/addressbook.rs:306:13 [INFO] [stdout] | [INFO] [stdout] 306 | / descriptor.get(|| { [INFO] [stdout] 307 | | let mut fields = ::std::vec::Vec::new(); [INFO] [stdout] 308 | | fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( [INFO] [stdout] 309 | | "name", [INFO] [stdout] ... | [INFO] [stdout] 338 | | }) [INFO] [stdout] | |______________^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] = note: `#[warn(static_mut_refs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/addressbook.rs:348:13 [INFO] [stdout] | [INFO] [stdout] 348 | instance.get(Person::new) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/addressbook.rs:371:15 [INFO] [stdout] | [INFO] [stdout] 371 | fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { [INFO] [stdout] | ^^^^^ ------------------------------------- the same lifetime is hidden here [INFO] [stdout] | | [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] 371 | fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/addressbook.rs:524:13 [INFO] [stdout] | [INFO] [stdout] 524 | / descriptor.get(|| { [INFO] [stdout] 525 | | let mut fields = ::std::vec::Vec::new(); [INFO] [stdout] 526 | | fields.push(::protobuf::reflect::accessor::make_simple_field_accessor::<_, ::protobuf::types::ProtobufTypeString>( [INFO] [stdout] 527 | | "number", [INFO] [stdout] ... | [INFO] [stdout] 541 | | }) [INFO] [stdout] | |______________^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/addressbook.rs:551:13 [INFO] [stdout] | [INFO] [stdout] 551 | instance.get(Person_PhoneNumber::new) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/addressbook.rs:571:15 [INFO] [stdout] | [INFO] [stdout] 571 | fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { [INFO] [stdout] | ^^^^^ ------------------------------------- the same lifetime is hidden here [INFO] [stdout] | | [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] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 571 | fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/addressbook.rs:612:13 [INFO] [stdout] | [INFO] [stdout] 612 | / descriptor.get(|| { [INFO] [stdout] 613 | | ::protobuf::reflect::EnumDescriptor::new("Person_PhoneType", file_descriptor_proto()) [INFO] [stdout] 614 | | }) [INFO] [stdout] | |______________^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/addressbook.rs:629:15 [INFO] [stdout] | [INFO] [stdout] 629 | fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { [INFO] [stdout] | ^^^^^ ------------------------------------- the same lifetime is hidden here [INFO] [stdout] | | [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] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 629 | fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/addressbook.rs:764:13 [INFO] [stdout] | [INFO] [stdout] 764 | / ... descriptor.get(|| { [INFO] [stdout] 765 | | ... let mut fields = ::std::vec::Vec::new(); [INFO] [stdout] 766 | | ... fields.push(::protobuf::reflect::accessor::make_repeated_field_accessor::<_, ::protobuf::types::ProtobufTypeMessage>( [INFO] [stdout] 767 | | ... "people", [INFO] [stdout] ... | [INFO] [stdout] 776 | | ... }) [INFO] [stdout] | |________^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/addressbook.rs:786:13 [INFO] [stdout] | [INFO] [stdout] 786 | instance.get(AddressBook::new) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/addressbook.rs:805:15 [INFO] [stdout] | [INFO] [stdout] 805 | fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef { [INFO] [stdout] | ^^^^^ ------------------------------------- the same lifetime is hidden here [INFO] [stdout] | | [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] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 805 | fn as_ref(&self) -> ::protobuf::reflect::ProtobufValueRef<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/addressbook.rs:900:9 [INFO] [stdout] | [INFO] [stdout] 900 | / file_descriptor_proto_lazy.get(|| { [INFO] [stdout] 901 | | parse_descriptor_proto() [INFO] [stdout] 902 | | }) [INFO] [stdout] | |__________^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 3.08s [INFO] running `Command { std: "docker" "inspect" "c80522bf1627c7b8d403c7ffd8447b6267557b427791707d49bbfddc1925ee2e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c80522bf1627c7b8d403c7ffd8447b6267557b427791707d49bbfddc1925ee2e", kill_on_drop: false }` [INFO] [stdout] c80522bf1627c7b8d403c7ffd8447b6267557b427791707d49bbfddc1925ee2e