[INFO] fetching crate gphoto 0.1.2...
[INFO] testing gphoto-0.1.2 against master#c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 for pr-146098-7
[INFO] extracting crate gphoto 0.1.2 into /workspace/builds/worker-7-tc1/source
[INFO] started tweaking crates.io crate gphoto 0.1.2
[INFO] finished tweaking crates.io crate gphoto 0.1.2
[INFO] tweaked toml for crates.io crate gphoto 0.1.2 written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate gphoto 0.1.2 on toolchain c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 3 packages to latest compatible versions
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded gphoto2-sys v0.1.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] e2b988260228f786fd1f6ddacd78be304a5a39a68f905505533f9b09c5bef2d6
[INFO] running `Command { std: "docker" "start" "-a" "e2b988260228f786fd1f6ddacd78be304a5a39a68f905505533f9b09c5bef2d6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e2b988260228f786fd1f6ddacd78be304a5a39a68f905505533f9b09c5bef2d6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e2b988260228f786fd1f6ddacd78be304a5a39a68f905505533f9b09c5bef2d6", kill_on_drop: false }`
[INFO] [stdout] e2b988260228f786fd1f6ddacd78be304a5a39a68f905505533f9b09c5bef2d6
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 8ab8200a24ac9a5d10adeafad32d52c4b1f6ba7e146dc7c757cb99266ea50b13
[INFO] running `Command { std: "docker" "start" "-a" "8ab8200a24ac9a5d10adeafad32d52c4b1f6ba7e146dc7c757cb99266ea50b13", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]    Compiling gphoto2-sys v0.1.2
[INFO] [stderr]    Compiling gphoto v0.1.2 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/camera.rs:29:37
[INFO] [stdout]    |
[INFO] [stdout] 29 |         let mut ptr = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/camera.rs:42:43
[INFO] [stdout]    |
[INFO] [stdout] 42 |         let mut file_path = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/camera.rs:70:37
[INFO] [stdout]    |
[INFO] [stdout] 70 |         let mut ptr = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/camera.rs:81:43
[INFO] [stdout]    |
[INFO] [stdout] 81 |         let mut abilities = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/camera.rs:94:37
[INFO] [stdout]    |
[INFO] [stdout] 94 |         let mut ptr = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/camera.rs:95:37
[INFO] [stdout]    |
[INFO] [stdout] 95 |         let mut len = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/camera.rs:122:41
[INFO] [stdout]     |
[INFO] [stdout] 122 |         let mut summary = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/camera.rs:140:40
[INFO] [stdout]     |
[INFO] [stdout] 140 |         let mut manual = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/camera.rs:158:39
[INFO] [stdout]     |
[INFO] [stdout] 158 |         let mut about = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/media.rs:51:37
[INFO] [stdout]    |
[INFO] [stdout] 51 |         let mut ptr = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/port.rs:66:43
[INFO] [stdout]    |
[INFO] [stdout] 66 |         let mut port_type = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/port.rs:85:38
[INFO] [stdout]    |
[INFO] [stdout] 85 |         let mut name = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/port.rs:95:38
[INFO] [stdout]    |
[INFO] [stdout] 95 |         let mut path = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `as_ptr` is never used
[INFO] [stdout]   --> src/handle.rs:15:15
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub trait Handle<T> {
[INFO] [stdout]    |           ------ method in this trait
[INFO] [stdout] 15 |     unsafe fn as_ptr(&self) -> *const T;
[INFO] [stdout]    |               ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/abilities.rs:64:18
[INFO] [stdout]    |
[INFO] [stdout] 64 |     pub fn model(&self) -> Cow<str> {
[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] 64 |     pub fn model(&self) -> Cow<'_, str> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `*mut gphoto2::Camera` does not permit being left uninitialized
[INFO] [stdout]   --> src/camera.rs:29:32
[INFO] [stdout]    |
[INFO] [stdout] 29 |         let mut ptr = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                |
[INFO] [stdout]    |                                this code causes undefined behavior when executed
[INFO] [stdout]    |                                help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: raw pointers must be initialized
[INFO] [stdout]    = note: `#[warn(invalid_value)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `CameraFilePath` does not permit being left uninitialized
[INFO] [stdout]   --> src/camera.rs:42:38
[INFO] [stdout]    |
[INFO] [stdout] 42 |         let mut file_path = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                      |
[INFO] [stdout]    |                                      this code causes undefined behavior when executed
[INFO] [stdout]    |                                      help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `*mut _GPPortInfo` does not permit being left uninitialized
[INFO] [stdout]   --> src/camera.rs:70:32
[INFO] [stdout]    |
[INFO] [stdout] 70 |         let mut ptr = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                |
[INFO] [stdout]    |                                this code causes undefined behavior when executed
[INFO] [stdout]    |                                help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: raw pointers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `CameraAbilities` does not permit being left uninitialized
[INFO] [stdout]   --> src/camera.rs:81:38
[INFO] [stdout]    |
[INFO] [stdout] 81 |         let mut abilities = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                      |
[INFO] [stdout]    |                                      this code causes undefined behavior when executed
[INFO] [stdout]    |                                      help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `*mut CameraStorageInformation` does not permit being left uninitialized
[INFO] [stdout]   --> src/camera.rs:94:32
[INFO] [stdout]    |
[INFO] [stdout] 94 |         let mut ptr = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                |
[INFO] [stdout]    |                                this code causes undefined behavior when executed
[INFO] [stdout]    |                                help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: raw pointers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `i32` does not permit being left uninitialized
[INFO] [stdout]   --> src/camera.rs:95:32
[INFO] [stdout]    |
[INFO] [stdout] 95 |         let mut len = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                |
[INFO] [stdout]    |                                this code causes undefined behavior when executed
[INFO] [stdout]    |                                help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `CameraText` does not permit being left uninitialized
[INFO] [stdout]    --> src/camera.rs:122:36
[INFO] [stdout]     |
[INFO] [stdout] 122 |         let mut summary = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                    |
[INFO] [stdout]     |                                    this code causes undefined behavior when executed
[INFO] [stdout]     |                                    help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `CameraText` does not permit being left uninitialized
[INFO] [stdout]    --> src/camera.rs:140:35
[INFO] [stdout]     |
[INFO] [stdout] 140 |         let mut manual = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   this code causes undefined behavior when executed
[INFO] [stdout]     |                                   help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `CameraText` does not permit being left uninitialized
[INFO] [stdout]    --> src/camera.rs:158:34
[INFO] [stdout]     |
[INFO] [stdout] 158 |         let mut about = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                  |
[INFO] [stdout]     |                                  this code causes undefined behavior when executed
[INFO] [stdout]     |                                  help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/camera.rs:174:22
[INFO] [stdout]     |
[INFO] [stdout] 174 |     pub fn directory(&self) -> Cow<str> {
[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] 174 |     pub fn directory(&self) -> Cow<'_, str> {
[INFO] [stdout]     |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/camera.rs:181:21
[INFO] [stdout]     |
[INFO] [stdout] 181 |     pub fn basename(&self) -> Cow<str> {
[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] 181 |     pub fn basename(&self) -> Cow<'_, str> {
[INFO] [stdout]     |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `*mut gphoto2::CameraFile` does not permit being left uninitialized
[INFO] [stdout]   --> src/media.rs:51:32
[INFO] [stdout]    |
[INFO] [stdout] 51 |         let mut ptr = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                |
[INFO] [stdout]    |                                this code causes undefined behavior when executed
[INFO] [stdout]    |                                help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: raw pointers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `i32` does not permit being left uninitialized
[INFO] [stdout]   --> src/port.rs:66:38
[INFO] [stdout]    |
[INFO] [stdout] 66 |         let mut port_type = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                      |
[INFO] [stdout]    |                                      this code causes undefined behavior when executed
[INFO] [stdout]    |                                      help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/port.rs:84:17
[INFO] [stdout]    |
[INFO] [stdout] 84 |     pub fn name(&self) -> Cow<str> {
[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] 84 |     pub fn name(&self) -> Cow<'_, str> {
[INFO] [stdout]    |                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `*const i8` does not permit being left uninitialized
[INFO] [stdout]   --> src/port.rs:85:33
[INFO] [stdout]    |
[INFO] [stdout] 85 |         let mut name = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                 |
[INFO] [stdout]    |                                 this code causes undefined behavior when executed
[INFO] [stdout]    |                                 help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: raw pointers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/port.rs:94:17
[INFO] [stdout]    |
[INFO] [stdout] 94 |     pub fn path(&self) -> Cow<str> {
[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] 94 |     pub fn path(&self) -> Cow<'_, str> {
[INFO] [stdout]    |                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `*const i8` does not permit being left uninitialized
[INFO] [stdout]   --> src/port.rs:95:33
[INFO] [stdout]    |
[INFO] [stdout] 95 |         let mut path = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                 |
[INFO] [stdout]    |                                 this code causes undefined behavior when executed
[INFO] [stdout]    |                                 help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: raw pointers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/storage.rs:47:21
[INFO] [stdout]    |
[INFO] [stdout] 47 |     pub fn base_dir(&self) -> Option<Cow<str>> {
[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] 47 |     pub fn base_dir(&self) -> Option<Cow<'_, str>> {
[INFO] [stdout]    |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/storage.rs:59:18
[INFO] [stdout]    |
[INFO] [stdout] 59 |     pub fn label(&self) -> Option<Cow<str>> {
[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] 59 |     pub fn label(&self) -> Option<Cow<'_, str>> {
[INFO] [stdout]    |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/storage.rs:71:24
[INFO] [stdout]    |
[INFO] [stdout] 71 |     pub fn description(&self) -> Option<Cow<str>> {
[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] 71 |     pub fn description(&self) -> Option<Cow<'_, str>> {
[INFO] [stdout]    |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.08s
[INFO] running `Command { std: "docker" "inspect" "8ab8200a24ac9a5d10adeafad32d52c4b1f6ba7e146dc7c757cb99266ea50b13", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8ab8200a24ac9a5d10adeafad32d52c4b1f6ba7e146dc7c757cb99266ea50b13", kill_on_drop: false }`
[INFO] [stdout] 8ab8200a24ac9a5d10adeafad32d52c4b1f6ba7e146dc7c757cb99266ea50b13
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] d08c7016b0a6cc6dea40a4dad4601f5dc42f7aece304b2069b3681649d30646c
[INFO] running `Command { std: "docker" "start" "-a" "d08c7016b0a6cc6dea40a4dad4601f5dc42f7aece304b2069b3681649d30646c", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/camera.rs:29:37
[INFO] [stdout]    |
[INFO] [stdout] 29 |         let mut ptr = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/camera.rs:42:43
[INFO] [stdout]    |
[INFO] [stdout] 42 |         let mut file_path = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/camera.rs:70:37
[INFO] [stdout]    |
[INFO] [stdout] 70 |         let mut ptr = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/camera.rs:81:43
[INFO] [stdout]    |
[INFO] [stdout] 81 |         let mut abilities = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/camera.rs:94:37
[INFO] [stdout]    |
[INFO] [stdout] 94 |         let mut ptr = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/camera.rs:95:37
[INFO] [stdout]    |
[INFO] [stdout] 95 |         let mut len = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/camera.rs:122:41
[INFO] [stdout]     |
[INFO] [stdout] 122 |         let mut summary = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/camera.rs:140:40
[INFO] [stdout]     |
[INFO] [stdout] 140 |         let mut manual = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/camera.rs:158:39
[INFO] [stdout]     |
[INFO] [stdout] 158 |         let mut about = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/media.rs:51:37
[INFO] [stdout]    |
[INFO] [stdout] 51 |         let mut ptr = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/port.rs:66:43
[INFO] [stdout]    |
[INFO] [stdout] 66 |         let mut port_type = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/port.rs:85:38
[INFO] [stdout]    |
[INFO] [stdout] 85 |         let mut name = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/port.rs:95:38
[INFO] [stdout]    |
[INFO] [stdout] 95 |         let mut path = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `as_ptr` is never used
[INFO] [stdout]   --> src/handle.rs:15:15
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub trait Handle<T> {
[INFO] [stdout]    |           ------ method in this trait
[INFO] [stdout] 15 |     unsafe fn as_ptr(&self) -> *const T;
[INFO] [stdout]    |               ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/abilities.rs:64:18
[INFO] [stdout]    |
[INFO] [stdout] 64 |     pub fn model(&self) -> Cow<str> {
[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] 64 |     pub fn model(&self) -> Cow<'_, str> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `*mut gphoto2::Camera` does not permit being left uninitialized
[INFO] [stdout]   --> src/camera.rs:29:32
[INFO] [stdout]    |
[INFO] [stdout] 29 |         let mut ptr = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                |
[INFO] [stdout]    |                                this code causes undefined behavior when executed
[INFO] [stdout]    |                                help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: raw pointers must be initialized
[INFO] [stdout]    = note: `#[warn(invalid_value)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `CameraFilePath` does not permit being left uninitialized
[INFO] [stdout]   --> src/camera.rs:42:38
[INFO] [stdout]    |
[INFO] [stdout] 42 |         let mut file_path = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                      |
[INFO] [stdout]    |                                      this code causes undefined behavior when executed
[INFO] [stdout]    |                                      help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `*mut _GPPortInfo` does not permit being left uninitialized
[INFO] [stdout]   --> src/camera.rs:70:32
[INFO] [stdout]    |
[INFO] [stdout] 70 |         let mut ptr = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                |
[INFO] [stdout]    |                                this code causes undefined behavior when executed
[INFO] [stdout]    |                                help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: raw pointers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `CameraAbilities` does not permit being left uninitialized
[INFO] [stdout]   --> src/camera.rs:81:38
[INFO] [stdout]    |
[INFO] [stdout] 81 |         let mut abilities = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                      |
[INFO] [stdout]    |                                      this code causes undefined behavior when executed
[INFO] [stdout]    |                                      help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `*mut CameraStorageInformation` does not permit being left uninitialized
[INFO] [stdout]   --> src/camera.rs:94:32
[INFO] [stdout]    |
[INFO] [stdout] 94 |         let mut ptr = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                |
[INFO] [stdout]    |                                this code causes undefined behavior when executed
[INFO] [stdout]    |                                help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: raw pointers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `i32` does not permit being left uninitialized
[INFO] [stdout]   --> src/camera.rs:95:32
[INFO] [stdout]    |
[INFO] [stdout] 95 |         let mut len = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                |
[INFO] [stdout]    |                                this code causes undefined behavior when executed
[INFO] [stdout]    |                                help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `CameraText` does not permit being left uninitialized
[INFO] [stdout]    --> src/camera.rs:122:36
[INFO] [stdout]     |
[INFO] [stdout] 122 |         let mut summary = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                    |
[INFO] [stdout]     |                                    this code causes undefined behavior when executed
[INFO] [stdout]     |                                    help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `CameraText` does not permit being left uninitialized
[INFO] [stdout]    --> src/camera.rs:140:35
[INFO] [stdout]     |
[INFO] [stdout] 140 |         let mut manual = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   this code causes undefined behavior when executed
[INFO] [stdout]     |                                   help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `CameraText` does not permit being left uninitialized
[INFO] [stdout]    --> src/camera.rs:158:34
[INFO] [stdout]     |
[INFO] [stdout] 158 |         let mut about = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                  |
[INFO] [stdout]     |                                  this code causes undefined behavior when executed
[INFO] [stdout]     |                                  help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/camera.rs:174:22
[INFO] [stdout]     |
[INFO] [stdout] 174 |     pub fn directory(&self) -> Cow<str> {
[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] 174 |     pub fn directory(&self) -> Cow<'_, str> {
[INFO] [stdout]     |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/camera.rs:181:21
[INFO] [stdout]     |
[INFO] [stdout] 181 |     pub fn basename(&self) -> Cow<str> {
[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] 181 |     pub fn basename(&self) -> Cow<'_, str> {
[INFO] [stdout]     |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `*mut gphoto2::CameraFile` does not permit being left uninitialized
[INFO] [stdout]   --> src/media.rs:51:32
[INFO] [stdout]    |
[INFO] [stdout] 51 |         let mut ptr = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                |
[INFO] [stdout]    |                                this code causes undefined behavior when executed
[INFO] [stdout]    |                                help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: raw pointers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `i32` does not permit being left uninitialized
[INFO] [stdout]   --> src/port.rs:66:38
[INFO] [stdout]    |
[INFO] [stdout] 66 |         let mut port_type = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                      |
[INFO] [stdout]    |                                      this code causes undefined behavior when executed
[INFO] [stdout]    |                                      help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/port.rs:84:17
[INFO] [stdout]    |
[INFO] [stdout] 84 |     pub fn name(&self) -> Cow<str> {
[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] 84 |     pub fn name(&self) -> Cow<'_, str> {
[INFO] [stdout]    |                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `*const i8` does not permit being left uninitialized
[INFO] [stdout]   --> src/port.rs:85:33
[INFO] [stdout]    |
[INFO] [stdout] 85 |         let mut name = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                 |
[INFO] [stdout]    |                                 this code causes undefined behavior when executed
[INFO] [stdout]    |                                 help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: raw pointers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/port.rs:94:17
[INFO] [stdout]    |
[INFO] [stdout] 94 |     pub fn path(&self) -> Cow<str> {
[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] 94 |     pub fn path(&self) -> Cow<'_, str> {
[INFO] [stdout]    |                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `*const i8` does not permit being left uninitialized
[INFO] [stdout]   --> src/port.rs:95:33
[INFO] [stdout]    |
[INFO] [stdout] 95 |         let mut path = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                 |
[INFO] [stdout]    |                                 this code causes undefined behavior when executed
[INFO] [stdout]    |                                 help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: raw pointers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling gphoto v0.1.2 (/opt/rustwide/workdir)
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/storage.rs:47:21
[INFO] [stdout]    |
[INFO] [stdout] 47 |     pub fn base_dir(&self) -> Option<Cow<str>> {
[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] 47 |     pub fn base_dir(&self) -> Option<Cow<'_, str>> {
[INFO] [stdout]    |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/storage.rs:59:18
[INFO] [stdout]    |
[INFO] [stdout] 59 |     pub fn label(&self) -> Option<Cow<str>> {
[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] 59 |     pub fn label(&self) -> Option<Cow<'_, str>> {
[INFO] [stdout]    |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/storage.rs:71:24
[INFO] [stdout]    |
[INFO] [stdout] 71 |     pub fn description(&self) -> Option<Cow<str>> {
[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] 71 |     pub fn description(&self) -> Option<Cow<'_, str>> {
[INFO] [stdout]    |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/camera.rs:29:37
[INFO] [stdout]    |
[INFO] [stdout] 29 |         let mut ptr = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/camera.rs:42:43
[INFO] [stdout]    |
[INFO] [stdout] 42 |         let mut file_path = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/camera.rs:70:37
[INFO] [stdout]    |
[INFO] [stdout] 70 |         let mut ptr = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/camera.rs:81:43
[INFO] [stdout]    |
[INFO] [stdout] 81 |         let mut abilities = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/camera.rs:94:37
[INFO] [stdout]    |
[INFO] [stdout] 94 |         let mut ptr = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/camera.rs:95:37
[INFO] [stdout]    |
[INFO] [stdout] 95 |         let mut len = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/camera.rs:122:41
[INFO] [stdout]     |
[INFO] [stdout] 122 |         let mut summary = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/camera.rs:140:40
[INFO] [stdout]     |
[INFO] [stdout] 140 |         let mut manual = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]    --> src/camera.rs:158:39
[INFO] [stdout]     |
[INFO] [stdout] 158 |         let mut about = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/media.rs:51:37
[INFO] [stdout]    |
[INFO] [stdout] 51 |         let mut ptr = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/port.rs:66:43
[INFO] [stdout]    |
[INFO] [stdout] 66 |         let mut port_type = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/port.rs:85:38
[INFO] [stdout]    |
[INFO] [stdout] 85 |         let mut name = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stdout]   --> src/port.rs:95:38
[INFO] [stdout]    |
[INFO] [stdout] 95 |         let mut path = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `as_ptr` is never used
[INFO] [stdout]   --> src/handle.rs:15:15
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub trait Handle<T> {
[INFO] [stdout]    |           ------ method in this trait
[INFO] [stdout] 15 |     unsafe fn as_ptr(&self) -> *const T;
[INFO] [stdout]    |               ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/abilities.rs:64:18
[INFO] [stdout]    |
[INFO] [stdout] 64 |     pub fn model(&self) -> Cow<str> {
[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] 64 |     pub fn model(&self) -> Cow<'_, str> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `*mut gphoto2::Camera` does not permit being left uninitialized
[INFO] [stdout]   --> src/camera.rs:29:32
[INFO] [stdout]    |
[INFO] [stdout] 29 |         let mut ptr = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                |
[INFO] [stdout]    |                                this code causes undefined behavior when executed
[INFO] [stdout]    |                                help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: raw pointers must be initialized
[INFO] [stdout]    = note: `#[warn(invalid_value)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `CameraFilePath` does not permit being left uninitialized
[INFO] [stdout]   --> src/camera.rs:42:38
[INFO] [stdout]    |
[INFO] [stdout] 42 |         let mut file_path = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                      |
[INFO] [stdout]    |                                      this code causes undefined behavior when executed
[INFO] [stdout]    |                                      help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `*mut _GPPortInfo` does not permit being left uninitialized
[INFO] [stdout]   --> src/camera.rs:70:32
[INFO] [stdout]    |
[INFO] [stdout] 70 |         let mut ptr = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                |
[INFO] [stdout]    |                                this code causes undefined behavior when executed
[INFO] [stdout]    |                                help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: raw pointers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `CameraAbilities` does not permit being left uninitialized
[INFO] [stdout]   --> src/camera.rs:81:38
[INFO] [stdout]    |
[INFO] [stdout] 81 |         let mut abilities = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                      |
[INFO] [stdout]    |                                      this code causes undefined behavior when executed
[INFO] [stdout]    |                                      help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `*mut CameraStorageInformation` does not permit being left uninitialized
[INFO] [stdout]   --> src/camera.rs:94:32
[INFO] [stdout]    |
[INFO] [stdout] 94 |         let mut ptr = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                |
[INFO] [stdout]    |                                this code causes undefined behavior when executed
[INFO] [stdout]    |                                help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: raw pointers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `i32` does not permit being left uninitialized
[INFO] [stdout]   --> src/camera.rs:95:32
[INFO] [stdout]    |
[INFO] [stdout] 95 |         let mut len = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                |
[INFO] [stdout]    |                                this code causes undefined behavior when executed
[INFO] [stdout]    |                                help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `CameraText` does not permit being left uninitialized
[INFO] [stdout]    --> src/camera.rs:122:36
[INFO] [stdout]     |
[INFO] [stdout] 122 |         let mut summary = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                    |
[INFO] [stdout]     |                                    this code causes undefined behavior when executed
[INFO] [stdout]     |                                    help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `CameraText` does not permit being left uninitialized
[INFO] [stdout]    --> src/camera.rs:140:35
[INFO] [stdout]     |
[INFO] [stdout] 140 |         let mut manual = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                   |
[INFO] [stdout]     |                                   this code causes undefined behavior when executed
[INFO] [stdout]     |                                   help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `CameraText` does not permit being left uninitialized
[INFO] [stdout]    --> src/camera.rs:158:34
[INFO] [stdout]     |
[INFO] [stdout] 158 |         let mut about = unsafe { mem::uninitialized() };
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                                  |
[INFO] [stdout]     |                                  this code causes undefined behavior when executed
[INFO] [stdout]     |                                  help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]     |
[INFO] [stdout]     = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/camera.rs:174:22
[INFO] [stdout]     |
[INFO] [stdout] 174 |     pub fn directory(&self) -> Cow<str> {
[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] 174 |     pub fn directory(&self) -> Cow<'_, str> {
[INFO] [stdout]     |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/camera.rs:181:21
[INFO] [stdout]     |
[INFO] [stdout] 181 |     pub fn basename(&self) -> Cow<str> {
[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] 181 |     pub fn basename(&self) -> Cow<'_, str> {
[INFO] [stdout]     |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `*mut gphoto2::CameraFile` does not permit being left uninitialized
[INFO] [stdout]   --> src/media.rs:51:32
[INFO] [stdout]    |
[INFO] [stdout] 51 |         let mut ptr = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                |
[INFO] [stdout]    |                                this code causes undefined behavior when executed
[INFO] [stdout]    |                                help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: raw pointers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `i32` does not permit being left uninitialized
[INFO] [stdout]   --> src/port.rs:66:38
[INFO] [stdout]    |
[INFO] [stdout] 66 |         let mut port_type = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                      |
[INFO] [stdout]    |                                      this code causes undefined behavior when executed
[INFO] [stdout]    |                                      help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: integers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/port.rs:84:17
[INFO] [stdout]    |
[INFO] [stdout] 84 |     pub fn name(&self) -> Cow<str> {
[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] 84 |     pub fn name(&self) -> Cow<'_, str> {
[INFO] [stdout]    |                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `*const i8` does not permit being left uninitialized
[INFO] [stdout]   --> src/port.rs:85:33
[INFO] [stdout]    |
[INFO] [stdout] 85 |         let mut name = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                 |
[INFO] [stdout]    |                                 this code causes undefined behavior when executed
[INFO] [stdout]    |                                 help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: raw pointers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/port.rs:94:17
[INFO] [stdout]    |
[INFO] [stdout] 94 |     pub fn path(&self) -> Cow<str> {
[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] 94 |     pub fn path(&self) -> Cow<'_, str> {
[INFO] [stdout]    |                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the type `*const i8` does not permit being left uninitialized
[INFO] [stdout]   --> src/port.rs:95:33
[INFO] [stdout]    |
[INFO] [stdout] 95 |         let mut path = unsafe { mem::uninitialized() };
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                                 |
[INFO] [stdout]    |                                 this code causes undefined behavior when executed
[INFO] [stdout]    |                                 help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stdout]    |
[INFO] [stdout]    = note: raw pointers must be initialized
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/storage.rs:47:21
[INFO] [stdout]    |
[INFO] [stdout] 47 |     pub fn base_dir(&self) -> Option<Cow<str>> {
[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] 47 |     pub fn base_dir(&self) -> Option<Cow<'_, str>> {
[INFO] [stdout]    |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/storage.rs:59:18
[INFO] [stdout]    |
[INFO] [stdout] 59 |     pub fn label(&self) -> Option<Cow<str>> {
[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] 59 |     pub fn label(&self) -> Option<Cow<'_, str>> {
[INFO] [stdout]    |                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/storage.rs:71:24
[INFO] [stdout]    |
[INFO] [stdout] 71 |     pub fn description(&self) -> Option<Cow<str>> {
[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] 71 |     pub fn description(&self) -> Option<Cow<'_, str>> {
[INFO] [stdout]    |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.83s
[INFO] running `Command { std: "docker" "inspect" "d08c7016b0a6cc6dea40a4dad4601f5dc42f7aece304b2069b3681649d30646c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d08c7016b0a6cc6dea40a4dad4601f5dc42f7aece304b2069b3681649d30646c", kill_on_drop: false }`
[INFO] [stdout] d08c7016b0a6cc6dea40a4dad4601f5dc42f7aece304b2069b3681649d30646c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] b1129f8950f11080cbcce9a6e0f614c36baf7d85e21a917ad979b3464cbf7ed6
[INFO] running `Command { std: "docker" "start" "-a" "b1129f8950f11080cbcce9a6e0f614c36baf7d85e21a917ad979b3464cbf7ed6", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stderr]   --> src/camera.rs:29:37
[INFO] [stderr]    |
[INFO] [stderr] 29 |         let mut ptr = unsafe { mem::uninitialized() };
[INFO] [stderr]    |                                     ^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stderr]   --> src/camera.rs:42:43
[INFO] [stderr]    |
[INFO] [stderr] 42 |         let mut file_path = unsafe { mem::uninitialized() };
[INFO] [stderr]    |                                           ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stderr]   --> src/camera.rs:70:37
[INFO] [stderr]    |
[INFO] [stderr] 70 |         let mut ptr = unsafe { mem::uninitialized() };
[INFO] [stderr]    |                                     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stderr]   --> src/camera.rs:81:43
[INFO] [stderr]    |
[INFO] [stderr] 81 |         let mut abilities = unsafe { mem::uninitialized() };
[INFO] [stderr]    |                                           ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stderr]   --> src/camera.rs:94:37
[INFO] [stderr]    |
[INFO] [stderr] 94 |         let mut ptr = unsafe { mem::uninitialized() };
[INFO] [stderr]    |                                     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stderr]   --> src/camera.rs:95:37
[INFO] [stderr]    |
[INFO] [stderr] 95 |         let mut len = unsafe { mem::uninitialized() };
[INFO] [stderr]    |                                     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stderr]    --> src/camera.rs:122:41
[INFO] [stderr]     |
[INFO] [stderr] 122 |         let mut summary = unsafe { mem::uninitialized() };
[INFO] [stderr]     |                                         ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stderr]    --> src/camera.rs:140:40
[INFO] [stderr]     |
[INFO] [stderr] 140 |         let mut manual = unsafe { mem::uninitialized() };
[INFO] [stderr]     |                                        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stderr]    --> src/camera.rs:158:39
[INFO] [stderr]     |
[INFO] [stderr] 158 |         let mut about = unsafe { mem::uninitialized() };
[INFO] [stderr]     |                                       ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stderr]   --> src/media.rs:51:37
[INFO] [stderr]    |
[INFO] [stderr] 51 |         let mut ptr = unsafe { mem::uninitialized() };
[INFO] [stderr]    |                                     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stderr]   --> src/port.rs:66:43
[INFO] [stderr]    |
[INFO] [stderr] 66 |         let mut port_type = unsafe { mem::uninitialized() };
[INFO] [stderr]    |                                           ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stderr]   --> src/port.rs:85:38
[INFO] [stderr]    |
[INFO] [stderr] 85 |         let mut name = unsafe { mem::uninitialized() };
[INFO] [stderr]    |                                      ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead
[INFO] [stderr]   --> src/port.rs:95:38
[INFO] [stderr]    |
[INFO] [stderr] 95 |         let mut path = unsafe { mem::uninitialized() };
[INFO] [stderr]    |                                      ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `as_ptr` is never used
[INFO] [stderr]   --> src/handle.rs:15:15
[INFO] [stderr]    |
[INFO] [stderr] 14 | pub trait Handle<T> {
[INFO] [stderr]    |           ------ method in this trait
[INFO] [stderr] 15 |     unsafe fn as_ptr(&self) -> *const T;
[INFO] [stderr]    |               ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/abilities.rs:64:18
[INFO] [stderr]    |
[INFO] [stderr] 64 |     pub fn model(&self) -> Cow<str> {
[INFO] [stderr]    |                  ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                  |
[INFO] [stderr]    |                  the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 64 |     pub fn model(&self) -> Cow<'_, str> {
[INFO] [stderr]    |                                +++
[INFO] [stderr] 
[INFO] [stderr] warning: the type `*mut gphoto2::Camera` does not permit being left uninitialized
[INFO] [stderr]   --> src/camera.rs:29:32
[INFO] [stderr]    |
[INFO] [stderr] 29 |         let mut ptr = unsafe { mem::uninitialized() };
[INFO] [stderr]    |                                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |                                |
[INFO] [stderr]    |                                this code causes undefined behavior when executed
[INFO] [stderr]    |                                help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stderr]    |
[INFO] [stderr]    = note: raw pointers must be initialized
[INFO] [stderr]    = note: `#[warn(invalid_value)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: the type `CameraFilePath` does not permit being left uninitialized
[INFO] [stderr]   --> src/camera.rs:42:38
[INFO] [stderr]    |
[INFO] [stderr] 42 |         let mut file_path = unsafe { mem::uninitialized() };
[INFO] [stderr]    |                                      ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |                                      |
[INFO] [stderr]    |                                      this code causes undefined behavior when executed
[INFO] [stderr]    |                                      help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stderr]    |
[INFO] [stderr]    = note: integers must be initialized
[INFO] [stderr] 
[INFO] [stderr] warning: the type `*mut _GPPortInfo` does not permit being left uninitialized
[INFO] [stderr]   --> src/camera.rs:70:32
[INFO] [stderr]    |
[INFO] [stderr] 70 |         let mut ptr = unsafe { mem::uninitialized() };
[INFO] [stderr]    |                                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |                                |
[INFO] [stderr]    |                                this code causes undefined behavior when executed
[INFO] [stderr]    |                                help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stderr]    |
[INFO] [stderr]    = note: raw pointers must be initialized
[INFO] [stderr] 
[INFO] [stderr] warning: the type `CameraAbilities` does not permit being left uninitialized
[INFO] [stderr]   --> src/camera.rs:81:38
[INFO] [stderr]    |
[INFO] [stderr] 81 |         let mut abilities = unsafe { mem::uninitialized() };
[INFO] [stderr]    |                                      ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |                                      |
[INFO] [stderr]    |                                      this code causes undefined behavior when executed
[INFO] [stderr]    |                                      help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stderr]    |
[INFO] [stderr]    = note: integers must be initialized
[INFO] [stderr] 
[INFO] [stderr] warning: the type `*mut CameraStorageInformation` does not permit being left uninitialized
[INFO] [stderr]   --> src/camera.rs:94:32
[INFO] [stderr]    |
[INFO] [stderr] 94 |         let mut ptr = unsafe { mem::uninitialized() };
[INFO] [stderr]    |                                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |                                |
[INFO] [stderr]    |                                this code causes undefined behavior when executed
[INFO] [stderr]    |                                help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stderr]    |
[INFO] [stderr]    = note: raw pointers must be initialized
[INFO] [stderr] 
[INFO] [stderr] warning: the type `i32` does not permit being left uninitialized
[INFO] [stderr]   --> src/camera.rs:95:32
[INFO] [stderr]    |
[INFO] [stderr] 95 |         let mut len = unsafe { mem::uninitialized() };
[INFO] [stderr]    |                                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |                                |
[INFO] [stderr]    |                                this code causes undefined behavior when executed
[INFO] [stderr]    |                                help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stderr]    |
[INFO] [stderr]    = note: integers must be initialized
[INFO] [stderr] 
[INFO] [stderr] warning: the type `CameraText` does not permit being left uninitialized
[INFO] [stderr]    --> src/camera.rs:122:36
[INFO] [stderr]     |
[INFO] [stderr] 122 |         let mut summary = unsafe { mem::uninitialized() };
[INFO] [stderr]     |                                    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |                                    |
[INFO] [stderr]     |                                    this code causes undefined behavior when executed
[INFO] [stderr]     |                                    help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stderr]     |
[INFO] [stderr]     = note: integers must be initialized
[INFO] [stderr] 
[INFO] [stderr] warning: the type `CameraText` does not permit being left uninitialized
[INFO] [stderr]    --> src/camera.rs:140:35
[INFO] [stderr]     |
[INFO] [stderr] 140 |         let mut manual = unsafe { mem::uninitialized() };
[INFO] [stderr]     |                                   ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |                                   |
[INFO] [stderr]     |                                   this code causes undefined behavior when executed
[INFO] [stderr]     |                                   help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stderr]     |
[INFO] [stderr]     = note: integers must be initialized
[INFO] [stderr] 
[INFO] [stderr] warning: the type `CameraText` does not permit being left uninitialized
[INFO] [stderr]    --> src/camera.rs:158:34
[INFO] [stderr]     |
[INFO] [stderr] 158 |         let mut about = unsafe { mem::uninitialized() };
[INFO] [stderr]     |                                  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |                                  |
[INFO] [stderr]     |                                  this code causes undefined behavior when executed
[INFO] [stderr]     |                                  help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stderr]     |
[INFO] [stderr]     = note: integers must be initialized
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/camera.rs:174:22
[INFO] [stderr]     |
[INFO] [stderr] 174 |     pub fn directory(&self) -> Cow<str> {
[INFO] [stderr]     |                      ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                      |
[INFO] [stderr]     |                      the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 174 |     pub fn directory(&self) -> Cow<'_, str> {
[INFO] [stderr]     |                                    +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/camera.rs:181:21
[INFO] [stderr]     |
[INFO] [stderr] 181 |     pub fn basename(&self) -> Cow<str> {
[INFO] [stderr]     |                     ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                     |
[INFO] [stderr]     |                     the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 181 |     pub fn basename(&self) -> Cow<'_, str> {
[INFO] [stderr]     |                                   +++
[INFO] [stderr] 
[INFO] [stderr] warning: the type `*mut gphoto2::CameraFile` does not permit being left uninitialized
[INFO] [stderr]   --> src/media.rs:51:32
[INFO] [stderr]    |
[INFO] [stderr] 51 |         let mut ptr = unsafe { mem::uninitialized() };
[INFO] [stderr]    |                                ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |                                |
[INFO] [stderr]    |                                this code causes undefined behavior when executed
[INFO] [stderr]    |                                help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stderr]    |
[INFO] [stderr]    = note: raw pointers must be initialized
[INFO] [stderr] 
[INFO] [stderr] warning: the type `i32` does not permit being left uninitialized
[INFO] [stderr]   --> src/port.rs:66:38
[INFO] [stderr]    |
[INFO] [stderr] 66 |         let mut port_type = unsafe { mem::uninitialized() };
[INFO] [stderr]    |                                      ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |                                      |
[INFO] [stderr]    |                                      this code causes undefined behavior when executed
[INFO] [stderr]    |                                      help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stderr]    |
[INFO] [stderr]    = note: integers must be initialized
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/port.rs:84:17
[INFO] [stderr]    |
[INFO] [stderr] 84 |     pub fn name(&self) -> Cow<str> {
[INFO] [stderr]    |                 ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                 |
[INFO] [stderr]    |                 the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 84 |     pub fn name(&self) -> Cow<'_, str> {
[INFO] [stderr]    |                               +++
[INFO] [stderr] 
[INFO] [stderr] warning: the type `*const i8` does not permit being left uninitialized
[INFO] [stderr]   --> src/port.rs:85:33
[INFO] [stderr]    |
[INFO] [stderr] 85 |         let mut name = unsafe { mem::uninitialized() };
[INFO] [stderr]    |                                 ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |                                 |
[INFO] [stderr]    |                                 this code causes undefined behavior when executed
[INFO] [stderr]    |                                 help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stderr]    |
[INFO] [stderr]    = note: raw pointers must be initialized
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/port.rs:94:17
[INFO] [stderr]    |
[INFO] [stderr] 94 |     pub fn path(&self) -> Cow<str> {
[INFO] [stderr]    |                 ^^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                 |
[INFO] [stderr]    |                 the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 94 |     pub fn path(&self) -> Cow<'_, str> {
[INFO] [stderr]    |                               +++
[INFO] [stderr] 
[INFO] [stderr] warning: the type `*const i8` does not permit being left uninitialized
[INFO] [stderr]   --> src/port.rs:95:33
[INFO] [stderr]    |
[INFO] [stderr] 95 |         let mut path = unsafe { mem::uninitialized() };
[INFO] [stderr]    |                                 ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |                                 |
[INFO] [stderr]    |                                 this code causes undefined behavior when executed
[INFO] [stderr]    |                                 help: use `MaybeUninit<T>` instead, and only call `assume_init` after initialization is done
[INFO] [stderr]    |
[INFO] [stderr]    = note: raw pointers must be initialized
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/storage.rs:47:21
[INFO] [stderr]    |
[INFO] [stderr] 47 |     pub fn base_dir(&self) -> Option<Cow<str>> {
[INFO] [stderr]    |                     ^^^^^            ^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                     |
[INFO] [stderr]    |                     the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 47 |     pub fn base_dir(&self) -> Option<Cow<'_, str>> {
[INFO] [stderr]    |                                          +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/storage.rs:59:18
[INFO] [stderr]    |
[INFO] [stderr] 59 |     pub fn label(&self) -> Option<Cow<str>> {
[INFO] [stderr]    |                  ^^^^^            ^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                  |
[INFO] [stderr]    |                  the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 59 |     pub fn label(&self) -> Option<Cow<'_, str>> {
[INFO] [stderr]    |                                       +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/storage.rs:71:24
[INFO] [stderr]    |
[INFO] [stderr] 71 |     pub fn description(&self) -> Option<Cow<str>> {
[INFO] [stderr]    |                        ^^^^^            ^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                        |
[INFO] [stderr]    |                        the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 71 |     pub fn description(&self) -> Option<Cow<'_, str>> {
[INFO] [stderr]    |                                             +++
[INFO] [stderr] 
[INFO] [stderr] warning: `gphoto` (lib) generated 35 warnings (run `cargo fix --lib -p gphoto` to apply 8 suggestions)
[INFO] [stderr] warning: `gphoto` (lib test) generated 35 warnings (35 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.04s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/gphoto-521081cd035af3a3)
[INFO] [stderr]    Doc-tests gphoto
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test src/port.rs - port::Port (line 39) - compile ... ok
[INFO] [stdout] test src/storage.rs - storage::Storage (line 10) - compile ... ok
[INFO] [stdout] test src/abilities.rs - abilities::Abilities (line 13) - compile ... ok
[INFO] [stdout] test src/version.rs - version::LibraryVersion (line 12) - compile ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.11s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "b1129f8950f11080cbcce9a6e0f614c36baf7d85e21a917ad979b3464cbf7ed6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b1129f8950f11080cbcce9a6e0f614c36baf7d85e21a917ad979b3464cbf7ed6", kill_on_drop: false }`
[INFO] [stdout] b1129f8950f11080cbcce9a6e0f614c36baf7d85e21a917ad979b3464cbf7ed6
