[INFO] cloning repository https://github.com/lal-buturabi/rust-ffi
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/lal-buturabi/rust-ffi" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flal-buturabi%2Frust-ffi", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flal-buturabi%2Frust-ffi'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 1e1ffeadc432a2329cd8bed7ef4c4e510b8ac8d3
[INFO] checking lal-buturabi/rust-ffi against try#bac5816c5f3d02cebd0599070af62d1782530294 for pr-150408
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flal-buturabi%2Frust-ffi" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/lal-buturabi/rust-ffi
[INFO] finished tweaking git repo https://github.com/lal-buturabi/rust-ffi
[INFO] tweaked toml for git repo https://github.com/lal-buturabi/rust-ffi written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/lal-buturabi/rust-ffi on toolchain bac5816c5f3d02cebd0599070af62d1782530294
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+bac5816c5f3d02cebd0599070af62d1782530294" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/lal-buturabi/rust-ffi 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" "+bac5816c5f3d02cebd0599070af62d1782530294" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[ERROR] error running command: no output for 300 seconds
[INFO] checking lal-buturabi/rust-ffi against try#bac5816c5f3d02cebd0599070af62d1782530294 for pr-150408
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flal-buturabi%2Frust-ffi" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/lal-buturabi/rust-ffi
[INFO] finished tweaking git repo https://github.com/lal-buturabi/rust-ffi
[INFO] tweaked toml for git repo https://github.com/lal-buturabi/rust-ffi written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/lal-buturabi/rust-ffi on toolchain bac5816c5f3d02cebd0599070af62d1782530294
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+bac5816c5f3d02cebd0599070af62d1782530294" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/lal-buturabi/rust-ffi 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" "+bac5816c5f3d02cebd0599070af62d1782530294" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+bac5816c5f3d02cebd0599070af62d1782530294" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] c0d6384ff4c18ebfcc400bdefcf12dfb23e8f2f5bfe9e49c3368a5bced6db6ad
[INFO] running `Command { std: "docker" "start" "-a" "c0d6384ff4c18ebfcc400bdefcf12dfb23e8f2f5bfe9e49c3368a5bced6db6ad", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c0d6384ff4c18ebfcc400bdefcf12dfb23e8f2f5bfe9e49c3368a5bced6db6ad", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c0d6384ff4c18ebfcc400bdefcf12dfb23e8f2f5bfe9e49c3368a5bced6db6ad", kill_on_drop: false }`
[INFO] [stdout] c0d6384ff4c18ebfcc400bdefcf12dfb23e8f2f5bfe9e49c3368a5bced6db6ad
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+bac5816c5f3d02cebd0599070af62d1782530294" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a33125867d812ed973b55c039e3945c4a1f9fdd12c51e988aa40051f4d9801ed
[INFO] running `Command { std: "docker" "start" "-a" "a33125867d812ed973b55c039e3945c4a1f9fdd12c51e988aa40051f4d9801ed", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.144
[INFO] [stderr]     Checking FFI v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: `#[no_mangle]` attribute cannot be used on foreign modules
[INFO] [stdout]  --> src/ints/mod.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[no_mangle]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]   = help: `#[no_mangle]` can be applied to functions and statics
[INFO] [stdout]   = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[no_mangle]` attribute cannot be used on foreign modules
[INFO] [stdout]  --> src/floats/mod.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[no_mangle]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]   = help: `#[no_mangle]` can be applied to functions and statics
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[no_mangle]` attribute cannot be used on foreign modules
[INFO] [stdout]  --> src/strings/mod.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[no_mangle]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]   = help: `#[no_mangle]` can be applied to functions and statics
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `paths` is never used
[INFO] [stdout]  --> src/common.rs:3:11
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub const paths: [&str; 3] = [
[INFO] [stdout]   |           ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test` is never used
[INFO] [stdout]   --> src/common.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 12 |     pub fn test<T>(func: &str, x: T, y: T, i: usize) -> T {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add` is never used
[INFO] [stdout]  --> src/ints/mod.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 |     fn add(a: c_int, b: c_int) -> c_int;
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sub` is never used
[INFO] [stdout]  --> src/ints/mod.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 |     fn sub(a: c_int, b: c_int) -> c_int;
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mul` is never used
[INFO] [stdout]  --> src/ints/mod.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 |     fn mul(a: c_int, b: c_int) -> c_int;
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `div` is never used
[INFO] [stdout]  --> src/ints/mod.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 |     fn div(a: c_int, b: c_int) -> c_int;
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `modulo` is never used
[INFO] [stdout]  --> src/ints/mod.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 9 |     fn modulo(a: c_int, b: c_int) -> c_int;
[INFO] [stdout]   |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add` is never used
[INFO] [stdout]  --> src/floats/mod.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 |     fn add(a: c_float, b: c_float) -> c_float;
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sub` is never used
[INFO] [stdout]  --> src/floats/mod.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 |     fn sub(a: c_float, b: c_float) -> c_float;
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mul` is never used
[INFO] [stdout]  --> src/floats/mod.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 |     fn mul(a: c_float, b: c_float) -> c_float;
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `div` is never used
[INFO] [stdout]  --> src/floats/mod.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 |     fn div(a: c_float, b: c_float) -> c_float;
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `str_rev` is never used
[INFO] [stdout]  --> src/strings/mod.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 |     fn str_rev(s: *const c_char) -> *mut c_char;
[INFO] [stdout]   |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `str_cmp` is never used
[INFO] [stdout]  --> src/strings/mod.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 |     fn str_cmp(s1: *const c_char, s2: *const c_char) -> c_short;
[INFO] [stdout]   |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: crate `FFI` should have a snake case name
[INFO] [stdout]   |
[INFO] [stdout]   = help: convert the identifier to snake case: `ffi`
[INFO] [stdout]   = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[no_mangle]` attribute cannot be used on foreign modules
[INFO] [stdout]  --> src/ints/mod.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[no_mangle]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]   = help: `#[no_mangle]` can be applied to functions and statics
[INFO] [stdout]   = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `paths` should have an upper case name
[INFO] [stdout]  --> src/common.rs:3:11
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub const paths: [&str; 3] = [
[INFO] [stdout]   |           ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_upper_case_globals)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]   |
[INFO] [stdout] 3 - pub const paths: [&str; 3] = [
[INFO] [stdout] 3 + pub const PATHS: [&str; 3] = [
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[no_mangle]` attribute cannot be used on foreign modules
[INFO] [stdout]  --> src/floats/mod.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[no_mangle]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]   = help: `#[no_mangle]` can be applied to functions and statics
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: module `Numerics` should have a snake case name
[INFO] [stdout]  --> src/common.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub mod Numerics {
[INFO] [stdout]   |         ^^^^^^^^ help: convert the identifier to snake case: `numerics`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[no_mangle]` attribute cannot be used on foreign modules
[INFO] [stdout]  --> src/strings/mod.rs:4:1
[INFO] [stdout]   |
[INFO] [stdout] 4 | #[no_mangle]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]   = help: `#[no_mangle]` can be applied to functions and statics
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `add` redeclared with a different signature
[INFO] [stdout]  --> src/floats/mod.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 |     fn add(a: c_float, b: c_float) -> c_float;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this signature doesn't match the previous declaration
[INFO] [stdout]   |
[INFO] [stdout]  ::: src/ints/mod.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 |     fn add(a: c_int, b: c_int) -> c_int;
[INFO] [stdout]   |     ------------------------------------ `add` previously declared here
[INFO] [stdout]   |
[INFO] [stdout]   = note: expected `unsafe extern "C" fn(i32, i32) -> i32`
[INFO] [stdout]              found `unsafe extern "C" fn(f32, f32) -> f32`
[INFO] [stdout]   = note: `#[warn(clashing_extern_declarations)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `sub` redeclared with a different signature
[INFO] [stdout]  --> src/floats/mod.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     fn sub(a: c_float, b: c_float) -> c_float;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this signature doesn't match the previous declaration
[INFO] [stdout]   |
[INFO] [stdout]  ::: src/ints/mod.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     fn sub(a: c_int, b: c_int) -> c_int;
[INFO] [stdout]   |     ------------------------------------ `sub` previously declared here
[INFO] [stdout]   |
[INFO] [stdout]   = note: expected `unsafe extern "C" fn(i32, i32) -> i32`
[INFO] [stdout]              found `unsafe extern "C" fn(f32, f32) -> f32`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `mul` redeclared with a different signature
[INFO] [stdout]  --> src/floats/mod.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     fn mul(a: c_float, b: c_float) -> c_float;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this signature doesn't match the previous declaration
[INFO] [stdout]   |
[INFO] [stdout]  ::: src/ints/mod.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     fn mul(a: c_int, b: c_int) -> c_int;
[INFO] [stdout]   |     ------------------------------------ `mul` previously declared here
[INFO] [stdout]   |
[INFO] [stdout]   = note: expected `unsafe extern "C" fn(i32, i32) -> i32`
[INFO] [stdout]              found `unsafe extern "C" fn(f32, f32) -> f32`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `div` redeclared with a different signature
[INFO] [stdout]  --> src/floats/mod.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     fn div(a: c_float, b: c_float) -> c_float;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this signature doesn't match the previous declaration
[INFO] [stdout]   |
[INFO] [stdout]  ::: src/ints/mod.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     fn div(a: c_int, b: c_int) -> c_int;
[INFO] [stdout]   |     ------------------------------------ `div` previously declared here
[INFO] [stdout]   |
[INFO] [stdout]   = note: expected `unsafe extern "C" fn(i32, i32) -> i32`
[INFO] [stdout]              found `unsafe extern "C" fn(f32, f32) -> f32`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]   --> src/ints/mod.rs:22:17
[INFO] [stdout]    |
[INFO] [stdout] 22 |         let r = unsafe { test::<c_int>("add", x, y, 0) };
[INFO] [stdout]    |                 ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]   --> src/ints/mod.rs:25:17
[INFO] [stdout]    |
[INFO] [stdout] 25 |         let r = unsafe { test::<c_int>("sub", x, y, 0) };
[INFO] [stdout]    |                 ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]   --> src/ints/mod.rs:28:17
[INFO] [stdout]    |
[INFO] [stdout] 28 |         let r = unsafe { test::<c_int>("mul", x, y, 0) };
[INFO] [stdout]    |                 ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]   --> src/ints/mod.rs:31:17
[INFO] [stdout]    |
[INFO] [stdout] 31 |         let r = unsafe { test::<c_int>("div", x, y, 0) };
[INFO] [stdout]    |                 ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]   --> src/ints/mod.rs:34:17
[INFO] [stdout]    |
[INFO] [stdout] 34 |         let r = unsafe { test::<c_int>("modulo", x, y, 0) };
[INFO] [stdout]    |                 ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]   --> src/floats/mod.rs:21:17
[INFO] [stdout]    |
[INFO] [stdout] 21 |         let r = unsafe { test::<c_float>("add", x, y, 1) };
[INFO] [stdout]    |                 ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]   --> src/floats/mod.rs:24:17
[INFO] [stdout]    |
[INFO] [stdout] 24 |         let r = unsafe { test::<c_float>("sub", x, y, 1) };
[INFO] [stdout]    |                 ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]   --> src/floats/mod.rs:27:17
[INFO] [stdout]    |
[INFO] [stdout] 27 |         let r = unsafe { test::<c_float>("mul", x, y, 1) };
[INFO] [stdout]    |                 ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]   --> src/floats/mod.rs:30:17
[INFO] [stdout]    |
[INFO] [stdout] 30 |         let r = unsafe { test::<c_float>("div", x, y, 1) };
[INFO] [stdout]    |                 ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add` is never used
[INFO] [stdout]  --> src/ints/mod.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 |     fn add(a: c_int, b: c_int) -> c_int;
[INFO] [stdout]   |        ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sub` is never used
[INFO] [stdout]  --> src/ints/mod.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 |     fn sub(a: c_int, b: c_int) -> c_int;
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mul` is never used
[INFO] [stdout]  --> src/ints/mod.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 |     fn mul(a: c_int, b: c_int) -> c_int;
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `div` is never used
[INFO] [stdout]  --> src/ints/mod.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 |     fn div(a: c_int, b: c_int) -> c_int;
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `modulo` is never used
[INFO] [stdout]  --> src/ints/mod.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 9 |     fn modulo(a: c_int, b: c_int) -> c_int;
[INFO] [stdout]   |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add` is never used
[INFO] [stdout]  --> src/floats/mod.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 |     fn add(a: c_float, b: c_float) -> c_float;
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sub` is never used
[INFO] [stdout]  --> src/floats/mod.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 |     fn sub(a: c_float, b: c_float) -> c_float;
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mul` is never used
[INFO] [stdout]  --> src/floats/mod.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 |     fn mul(a: c_float, b: c_float) -> c_float;
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `div` is never used
[INFO] [stdout]  --> src/floats/mod.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 |     fn div(a: c_float, b: c_float) -> c_float;
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `str_rev` is never used
[INFO] [stdout]  --> src/strings/mod.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 |     fn str_rev(s: *const c_char) -> *mut c_char;
[INFO] [stdout]   |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `str_cmp` is never used
[INFO] [stdout]  --> src/strings/mod.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 |     fn str_cmp(s1: *const c_char, s2: *const c_char) -> c_short;
[INFO] [stdout]   |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `paths` should have an upper case name
[INFO] [stdout]  --> src/common.rs:3:11
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub const paths: [&str; 3] = [
[INFO] [stdout]   |           ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_upper_case_globals)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] help: convert the identifier to upper case
[INFO] [stdout]   |
[INFO] [stdout] 3 - pub const paths: [&str; 3] = [
[INFO] [stdout] 3 + pub const PATHS: [&str; 3] = [
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: module `Numerics` should have a snake case name
[INFO] [stdout]  --> src/common.rs:9:9
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub mod Numerics {
[INFO] [stdout]   |         ^^^^^^^^ help: convert the identifier to snake case: `numerics`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `add` redeclared with a different signature
[INFO] [stdout]  --> src/floats/mod.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 |     fn add(a: c_float, b: c_float) -> c_float;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this signature doesn't match the previous declaration
[INFO] [stdout]   |
[INFO] [stdout]  ::: src/ints/mod.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 |     fn add(a: c_int, b: c_int) -> c_int;
[INFO] [stdout]   |     ------------------------------------ `add` previously declared here
[INFO] [stdout]   |
[INFO] [stdout]   = note: expected `unsafe extern "C" fn(i32, i32) -> i32`
[INFO] [stdout]              found `unsafe extern "C" fn(f32, f32) -> f32`
[INFO] [stdout]   = note: `#[warn(clashing_extern_declarations)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `sub` redeclared with a different signature
[INFO] [stdout]  --> src/floats/mod.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     fn sub(a: c_float, b: c_float) -> c_float;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this signature doesn't match the previous declaration
[INFO] [stdout]   |
[INFO] [stdout]  ::: src/ints/mod.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 |     fn sub(a: c_int, b: c_int) -> c_int;
[INFO] [stdout]   |     ------------------------------------ `sub` previously declared here
[INFO] [stdout]   |
[INFO] [stdout]   = note: expected `unsafe extern "C" fn(i32, i32) -> i32`
[INFO] [stdout]              found `unsafe extern "C" fn(f32, f32) -> f32`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `mul` redeclared with a different signature
[INFO] [stdout]  --> src/floats/mod.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     fn mul(a: c_float, b: c_float) -> c_float;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this signature doesn't match the previous declaration
[INFO] [stdout]   |
[INFO] [stdout]  ::: src/ints/mod.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 |     fn mul(a: c_int, b: c_int) -> c_int;
[INFO] [stdout]   |     ------------------------------------ `mul` previously declared here
[INFO] [stdout]   |
[INFO] [stdout]   = note: expected `unsafe extern "C" fn(i32, i32) -> i32`
[INFO] [stdout]              found `unsafe extern "C" fn(f32, f32) -> f32`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `div` redeclared with a different signature
[INFO] [stdout]  --> src/floats/mod.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     fn div(a: c_float, b: c_float) -> c_float;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ this signature doesn't match the previous declaration
[INFO] [stdout]   |
[INFO] [stdout]  ::: src/ints/mod.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     fn div(a: c_int, b: c_int) -> c_int;
[INFO] [stdout]   |     ------------------------------------ `div` previously declared here
[INFO] [stdout]   |
[INFO] [stdout]   = note: expected `unsafe extern "C" fn(i32, i32) -> i32`
[INFO] [stdout]              found `unsafe extern "C" fn(f32, f32) -> f32`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.57s
[INFO] running `Command { std: "docker" "inspect" "a33125867d812ed973b55c039e3945c4a1f9fdd12c51e988aa40051f4d9801ed", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a33125867d812ed973b55c039e3945c4a1f9fdd12c51e988aa40051f4d9801ed", kill_on_drop: false }`
[INFO] [stdout] a33125867d812ed973b55c039e3945c4a1f9fdd12c51e988aa40051f4d9801ed
