[INFO] fetching crate rustpak 0.1.0...
[INFO] checking rustpak-0.1.0 against try#31561a63598a0f21fc74c024747ef1310fdd2eb2 for pr-133536
[INFO] extracting crate rustpak 0.1.0 into /workspace/builds/worker-0-tc2/source
[INFO] validating manifest of crates.io crate rustpak 0.1.0 on toolchain 31561a63598a0f21fc74c024747ef1310fdd2eb2
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+31561a63598a0f21fc74c024747ef1310fdd2eb2" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate rustpak 0.1.0
[INFO] finished tweaking crates.io crate rustpak 0.1.0
[INFO] tweaked toml for crates.io crate rustpak 0.1.0 written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] crate crates.io crate rustpak 0.1.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+31561a63598a0f21fc74c024747ef1310fdd2eb2" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: only one of `license` or `license-file` is necessary
[INFO] [stderr] `license` should be used if the package license can be expressed with a standard SPDX expression.
[INFO] [stderr] `license-file` should be used if the package uses a non-standard license.
[INFO] [stderr] See https://doc.rust-lang.org/cargo/reference/manifest.html#the-license-and-license-file-fields for more information.
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+31561a63598a0f21fc74c024747ef1310fdd2eb2" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] d9bea3c46b3f6e75fb76aa0703ae314f431112e293b335d745ddaedc7c9b53f8
[INFO] running `Command { std: "docker" "start" "-a" "d9bea3c46b3f6e75fb76aa0703ae314f431112e293b335d745ddaedc7c9b53f8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d9bea3c46b3f6e75fb76aa0703ae314f431112e293b335d745ddaedc7c9b53f8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d9bea3c46b3f6e75fb76aa0703ae314f431112e293b335d745ddaedc7c9b53f8", kill_on_drop: false }`
[INFO] [stdout] d9bea3c46b3f6e75fb76aa0703ae314f431112e293b335d745ddaedc7c9b53f8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4a844ea9eb2546a2d2c7022eacef16ef2e8229c7fbb2c7d4d55a9ceca922f72d" "/opt/rustwide/cargo-home/bin/cargo" "+31561a63598a0f21fc74c024747ef1310fdd2eb2" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a49505654aa688e0aa48611b0cb2104b64f6e30232cc66c2853a3d241e16f935
[INFO] running `Command { std: "docker" "start" "-a" "a49505654aa688e0aa48611b0cb2104b64f6e30232cc66c2853a3d241e16f935", kill_on_drop: false }`
[INFO] [stderr] warning: only one of `license` or `license-file` is necessary
[INFO] [stderr] `license` should be used if the package license can be expressed with a standard SPDX expression.
[INFO] [stderr] `license-file` should be used if the package uses a non-standard license.
[INFO] [stderr] See https://doc.rust-lang.org/cargo/reference/manifest.html#the-license-and-license-file-fields for more information.
[INFO] [stderr]    Compiling libc v0.2.91
[INFO] [stderr]     Checking unicode-width v0.1.8
[INFO] [stderr]     Checking byteorder v1.4.3
[INFO] [stderr]     Checking textwrap v0.11.0
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking clap v2.33.3
[INFO] [stderr]     Checking rustpak v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0432]: unresolved import `rustpak`
[INFO] [stdout]  --> tests/pak_test.rs:3:9
[INFO] [stdout]   |
[INFO] [stdout] 3 |     use rustpak::{Pak, PakFileEntry, PakFileError};
[INFO] [stdout]   |         ^^^^^^^ use of undeclared crate or module `rustpak`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: found module declaration for lib.rs
[INFO] [stdout]  --> src/main.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | mod lib;
[INFO] [stdout]   | ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: lib.rs is the root of this crate's library target
[INFO] [stdout]   = help: to refer to it from other targets, use the library's name as the path
[INFO] [stdout]   = note: `#[warn(special_module_name)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: found module declaration for lib.rs
[INFO] [stdout]  --> src/main.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | mod lib;
[INFO] [stdout]   | ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: lib.rs is the root of this crate's library target
[INFO] [stdout]   = help: to refer to it from other targets, use the library's name as the path
[INFO] [stdout]   = note: `#[warn(special_module_name)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: elided lifetime has a name
[INFO] [stdout]    --> src/lib.rs:134:58
[INFO] [stdout]     |
[INFO] [stdout] 122 | impl<'a> Pak<'a> {
[INFO] [stdout]     |      -- lifetime `'a` declared here
[INFO] [stdout] ...
[INFO] [stdout] 134 |     pub extern "C" fn from_file(path: &'a str) -> Result<Pak, Box<dyn Error>> {
[INFO] [stdout]     |                                                          ^^^ this elided lifetime gets resolved as `'a`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(elided_named_lifetimes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: elided lifetime has a name
[INFO] [stdout]    --> src/lib.rs:134:58
[INFO] [stdout]     |
[INFO] [stdout] 122 | impl<'a> Pak<'a> {
[INFO] [stdout]     |      -- lifetime `'a` declared here
[INFO] [stdout] ...
[INFO] [stdout] 134 |     pub extern "C" fn from_file(path: &'a str) -> Result<Pak, Box<dyn Error>> {
[INFO] [stdout]     |                                                          ^^^ this elided lifetime gets resolved as `'a`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(elided_named_lifetimes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: elided lifetime has a name
[INFO] [stdout]    --> src/lib.rs:134:58
[INFO] [stdout]     |
[INFO] [stdout] 122 | impl<'a> Pak<'a> {
[INFO] [stdout]     |      -- lifetime `'a` declared here
[INFO] [stdout] ...
[INFO] [stdout] 134 |     pub extern "C" fn from_file(path: &'a str) -> Result<Pak, Box<dyn Error>> {
[INFO] [stdout]     |                                                          ^^^ this elided lifetime gets resolved as `'a`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(elided_named_lifetimes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: elided lifetime has a name
[INFO] [stdout]    --> src/lib.rs:134:58
[INFO] [stdout]     |
[INFO] [stdout] 122 | impl<'a> Pak<'a> {
[INFO] [stdout]     |      -- lifetime `'a` declared here
[INFO] [stdout] ...
[INFO] [stdout] 134 |     pub extern "C" fn from_file(path: &'a str) -> Result<Pak, Box<dyn Error>> {
[INFO] [stdout]     |                                                          ^^^ this elided lifetime gets resolved as `'a`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(elided_named_lifetimes)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0432`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `rustpak` (test "pak_test") due to 1 previous error
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:125:32
[INFO] [stdout]     |
[INFO] [stdout] 125 |     pub extern "C" fn new() -> Pak<'a> {
[INFO] [stdout]     |                                ^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using `*const u8` and a length instead
[INFO] [stdout]     = note: string slices have no C equivalent
[INFO] [stdout]     = note: `#[warn(improper_ctypes_definitions)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:134:39
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub extern "C" fn from_file(path: &'a str) -> Result<Pak, Box<dyn Error>> {
[INFO] [stdout]     |                                       ^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using `*const u8` and a length instead
[INFO] [stdout]     = note: string slices have no C equivalent
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:125:32
[INFO] [stdout]     |
[INFO] [stdout] 125 |     pub extern "C" fn new() -> Pak<'a> {
[INFO] [stdout]     |                                ^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using `*const u8` and a length instead
[INFO] [stdout]     = note: string slices have no C equivalent
[INFO] [stdout]     = note: `#[warn(improper_ctypes_definitions)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:134:39
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub extern "C" fn from_file(path: &'a str) -> Result<Pak, Box<dyn Error>> {
[INFO] [stdout]     |                                       ^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using `*const u8` and a length instead
[INFO] [stdout]     = note: string slices have no C equivalent
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:125:32
[INFO] [stdout]     |
[INFO] [stdout] 125 |     pub extern "C" fn new() -> Pak<'a> {
[INFO] [stdout]     |                                ^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using `*const u8` and a length instead
[INFO] [stdout]     = note: string slices have no C equivalent
[INFO] [stdout]     = note: `#[warn(improper_ctypes_definitions)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:125:32
[INFO] [stdout]     |
[INFO] [stdout] 125 |     pub extern "C" fn new() -> Pak<'a> {
[INFO] [stdout]     |                                ^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using `*const u8` and a length instead
[INFO] [stdout]     = note: string slices have no C equivalent
[INFO] [stdout]     = note: `#[warn(improper_ctypes_definitions)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:134:39
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub extern "C" fn from_file(path: &'a str) -> Result<Pak, Box<dyn Error>> {
[INFO] [stdout]     |                                       ^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using `*const u8` and a length instead
[INFO] [stdout]     = note: string slices have no C equivalent
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:134:39
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub extern "C" fn from_file(path: &'a str) -> Result<Pak, Box<dyn Error>> {
[INFO] [stdout]     |                                       ^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using `*const u8` and a length instead
[INFO] [stdout]     = note: string slices have no C equivalent
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `Result<Pak<'_>, Box<dyn std::error::Error>>`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:134:51
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub extern "C" fn from_file(path: &'a str) -> Result<Pak, Box<dyn Error>> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum
[INFO] [stdout]     = note: enum has no representation hint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `String`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:164:50
[INFO] [stdout]     |
[INFO] [stdout] 164 |     pub extern "C" fn  add_file(&mut self, file: PakFileEntry) -> Result<&mut Pak<'a>, Box<dyn Error>> {
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct
[INFO] [stdout]     = note: this struct has unspecified layout
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `Result<&mut Pak<'_>, Box<dyn std::error::Error>>`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:164:67
[INFO] [stdout]     |
[INFO] [stdout] 164 |     pub extern "C" fn  add_file(&mut self, file: PakFileEntry) -> Result<&mut Pak<'a>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum
[INFO] [stdout]     = note: enum has no representation hint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:178:57
[INFO] [stdout]     |
[INFO] [stdout] 178 |     pub extern "C" fn  remove_file(&mut self, filename: &str) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                         ^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using `*const u8` and a length instead
[INFO] [stdout]     = note: string slices have no C equivalent
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `Result<(), Box<dyn std::error::Error>>`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:178:66
[INFO] [stdout]     |
[INFO] [stdout] 178 |     pub extern "C" fn  remove_file(&mut self, filename: &str) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum
[INFO] [stdout]     = note: enum has no representation hint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:191:46
[INFO] [stdout]     |
[INFO] [stdout] 191 |     pub extern "C" fn  save(&self, filename: &str) ->  Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                              ^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using `*const u8` and a length instead
[INFO] [stdout]     = note: string slices have no C equivalent
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `Result<(), Box<dyn std::error::Error>>`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:191:56
[INFO] [stdout]     |
[INFO] [stdout] 191 |     pub extern "C" fn  save(&self, filename: &str) ->  Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum
[INFO] [stdout]     = note: enum has no representation hint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `Result<Pak<'_>, Box<dyn std::error::Error>>`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:134:51
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub extern "C" fn from_file(path: &'a str) -> Result<Pak, Box<dyn Error>> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum
[INFO] [stdout]     = note: enum has no representation hint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `String`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:164:50
[INFO] [stdout]     |
[INFO] [stdout] 164 |     pub extern "C" fn  add_file(&mut self, file: PakFileEntry) -> Result<&mut Pak<'a>, Box<dyn Error>> {
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct
[INFO] [stdout]     = note: this struct has unspecified layout
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `Result<&mut Pak<'_>, Box<dyn std::error::Error>>`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:164:67
[INFO] [stdout]     |
[INFO] [stdout] 164 |     pub extern "C" fn  add_file(&mut self, file: PakFileEntry) -> Result<&mut Pak<'a>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum
[INFO] [stdout]     = note: enum has no representation hint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:178:57
[INFO] [stdout]     |
[INFO] [stdout] 178 |     pub extern "C" fn  remove_file(&mut self, filename: &str) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                         ^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using `*const u8` and a length instead
[INFO] [stdout]     = note: string slices have no C equivalent
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `Result<(), Box<dyn std::error::Error>>`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:178:66
[INFO] [stdout]     |
[INFO] [stdout] 178 |     pub extern "C" fn  remove_file(&mut self, filename: &str) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum
[INFO] [stdout]     = note: enum has no representation hint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:191:46
[INFO] [stdout]     |
[INFO] [stdout] 191 |     pub extern "C" fn  save(&self, filename: &str) ->  Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                              ^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using `*const u8` and a length instead
[INFO] [stdout]     = note: string slices have no C equivalent
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `Result<(), Box<dyn std::error::Error>>`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:191:56
[INFO] [stdout]     |
[INFO] [stdout] 191 |     pub extern "C" fn  save(&self, filename: &str) ->  Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum
[INFO] [stdout]     = note: enum has no representation hint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `Result<Pak<'_>, Box<dyn std::error::Error>>`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:134:51
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub extern "C" fn from_file(path: &'a str) -> Result<Pak, Box<dyn Error>> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum
[INFO] [stdout]     = note: enum has no representation hint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `String`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:164:50
[INFO] [stdout]     |
[INFO] [stdout] 164 |     pub extern "C" fn  add_file(&mut self, file: PakFileEntry) -> Result<&mut Pak<'a>, Box<dyn Error>> {
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct
[INFO] [stdout]     = note: this struct has unspecified layout
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `Result<Pak<'_>, Box<dyn std::error::Error>>`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:134:51
[INFO] [stdout]     |
[INFO] [stdout] 134 |     pub extern "C" fn from_file(path: &'a str) -> Result<Pak, Box<dyn Error>> {
[INFO] [stdout]     |                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum
[INFO] [stdout]     = note: enum has no representation hint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `Result<&mut Pak<'_>, Box<dyn std::error::Error>>`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:164:67
[INFO] [stdout]     |
[INFO] [stdout] 164 |     pub extern "C" fn  add_file(&mut self, file: PakFileEntry) -> Result<&mut Pak<'a>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum
[INFO] [stdout]     = note: enum has no representation hint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:178:57
[INFO] [stdout]     |
[INFO] [stdout] 178 |     pub extern "C" fn  remove_file(&mut self, filename: &str) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                         ^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using `*const u8` and a length instead
[INFO] [stdout]     = note: string slices have no C equivalent
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `String`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:164:50
[INFO] [stdout]     |
[INFO] [stdout] 164 |     pub extern "C" fn  add_file(&mut self, file: PakFileEntry) -> Result<&mut Pak<'a>, Box<dyn Error>> {
[INFO] [stdout]     |                                                  ^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct
[INFO] [stdout]     = note: this struct has unspecified layout
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `Result<(), Box<dyn std::error::Error>>`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:178:66
[INFO] [stdout]     |
[INFO] [stdout] 178 |     pub extern "C" fn  remove_file(&mut self, filename: &str) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum
[INFO] [stdout]     = note: enum has no representation hint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `Result<&mut Pak<'_>, Box<dyn std::error::Error>>`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:164:67
[INFO] [stdout]     |
[INFO] [stdout] 164 |     pub extern "C" fn  add_file(&mut self, file: PakFileEntry) -> Result<&mut Pak<'a>, Box<dyn Error>> {
[INFO] [stdout]     |                                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum
[INFO] [stdout]     = note: enum has no representation hint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:191:46
[INFO] [stdout]     |
[INFO] [stdout] 191 |     pub extern "C" fn  save(&self, filename: &str) ->  Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                              ^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using `*const u8` and a length instead
[INFO] [stdout]     = note: string slices have no C equivalent
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:178:57
[INFO] [stdout]     |
[INFO] [stdout] 178 |     pub extern "C" fn  remove_file(&mut self, filename: &str) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                         ^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using `*const u8` and a length instead
[INFO] [stdout]     = note: string slices have no C equivalent
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `Result<(), Box<dyn std::error::Error>>`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:191:56
[INFO] [stdout]     |
[INFO] [stdout] 191 |     pub extern "C" fn  save(&self, filename: &str) ->  Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum
[INFO] [stdout]     = note: enum has no representation hint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `Result<(), Box<dyn std::error::Error>>`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:178:66
[INFO] [stdout]     |
[INFO] [stdout] 178 |     pub extern "C" fn  remove_file(&mut self, filename: &str) -> Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum
[INFO] [stdout]     = note: enum has no representation hint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `str`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:191:46
[INFO] [stdout]     |
[INFO] [stdout] 191 |     pub extern "C" fn  save(&self, filename: &str) ->  Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                              ^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using `*const u8` and a length instead
[INFO] [stdout]     = note: string slices have no C equivalent
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` fn uses type `Result<(), Box<dyn std::error::Error>>`, which is not FFI-safe
[INFO] [stdout]    --> src/lib.rs:191:56
[INFO] [stdout]     |
[INFO] [stdout] 191 |     pub extern "C" fn  save(&self, filename: &str) ->  Result<(), Box<dyn Error>> {
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider adding a `#[repr(C)]`, `#[repr(transparent)]`, or integer `#[repr(...)]` attribute to this enum
[INFO] [stdout]     = note: enum has no representation hint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "a49505654aa688e0aa48611b0cb2104b64f6e30232cc66c2853a3d241e16f935", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a49505654aa688e0aa48611b0cb2104b64f6e30232cc66c2853a3d241e16f935", kill_on_drop: false }`
[INFO] [stdout] a49505654aa688e0aa48611b0cb2104b64f6e30232cc66c2853a3d241e16f935
