[INFO] fetching crate nncombinator 0.9.8...
[INFO] checking nncombinator-0.9.8 against 3154cc1a3e6424e44f438a95007d043ed5ceaaf6+rustflags=-Znext-solver=coherence for pr-133502-30
[INFO] extracting crate nncombinator 0.9.8 into /workspace/builds/worker-5-tc1/source
[INFO] started tweaking crates.io crate nncombinator 0.9.8
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate nncombinator 0.9.8
[INFO] tweaked toml for crates.io crate nncombinator 0.9.8 written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate nncombinator 0.9.8 on toolchain 3154cc1a3e6424e44f438a95007d043ed5ceaaf6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+3154cc1a3e6424e44f438a95007d043ed5ceaaf6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate nncombinator 0.9.8 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" "+3154cc1a3e6424e44f438a95007d043ed5ceaaf6" "fetch" "--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]  Downloading crates ...
[INFO] [stderr]   Downloaded autocfg v1.2.0
[INFO] [stderr]   Downloaded num-traits v0.2.18
[INFO] [stderr]   Downloaded try-from-primitive v0.1.0
[INFO] [stderr]   Downloaded rcublas v0.6.0
[INFO] [stderr]   Downloaded lebe v0.5.2
[INFO] [stderr]   Downloaded cuda-config v0.1.0
[INFO] [stderr]   Downloaded statrs v0.15.0
[INFO] [stderr]   Downloaded thiserror v1.0.59
[INFO] [stderr]   Downloaded rcudnn v1.8.0
[INFO] [stderr]   Downloaded rawpointer v0.2.1
[INFO] [stderr]   Downloaded thiserror-impl v1.0.59
[INFO] [stderr]   Downloaded bit_field v0.10.2
[INFO] [stderr]   Downloaded nalgebra-macros v0.1.0
[INFO] [stderr]   Downloaded adler v1.0.2
[INFO] [stderr]   Downloaded color_quant v1.1.0
[INFO] [stderr]   Downloaded itoa v1.0.11
[INFO] [stderr]   Downloaded rand_xorshift v0.3.0
[INFO] [stderr]   Downloaded cfg-if v1.0.0
[INFO] [stderr]   Downloaded approx v0.5.1
[INFO] [stderr]   Downloaded lazy_static v1.4.0
[INFO] [stderr]   Downloaded num v0.4.2
[INFO] [stderr]   Downloaded num-iter v0.1.44
[INFO] [stderr]   Downloaded mnist v0.5.0
[INFO] [stderr]   Downloaded crunchy v0.2.2
[INFO] [stderr]   Downloaded glob v0.3.1
[INFO] [stderr]   Downloaded num-complex v0.4.5
[INFO] [stderr]   Downloaded quote v1.0.36
[INFO] [stderr]   Downloaded num-rational v0.4.1
[INFO] [stderr]   Downloaded pkg-config v0.3.30
[INFO] [stderr]   Downloaded crossbeam-deque v0.8.5
[INFO] [stderr]   Downloaded cuda-runtime-sys v0.3.0-alpha.1
[INFO] [stderr]   Downloaded either v1.11.0
[INFO] [stderr]   Downloaded simd-adler32 v0.3.7
[INFO] [stderr]   Downloaded fdeflate v0.3.4
[INFO] [stderr]   Downloaded smallvec v1.13.2
[INFO] [stderr]   Downloaded lock_api v0.4.12
[INFO] [stderr]   Downloaded csv-core v0.1.11
[INFO] [stderr]   Downloaded getrandom v0.2.14
[INFO] [stderr]   Downloaded wasi v0.11.0+wasi-snapshot-preview1
[INFO] [stderr]   Downloaded ppv-lite86 v0.2.17
[INFO] [stderr]   Downloaded typenum v1.17.0
[INFO] [stderr]   Downloaded simba v0.5.1
[INFO] [stderr]   Downloaded paste v1.0.14
[INFO] [stderr]   Downloaded unicode-ident v1.0.12
[INFO] [stderr]   Downloaded rcublas-sys v0.5.0
[INFO] [stderr]   Downloaded log v0.4.21
[INFO] [stderr]   Downloaded weezl v0.1.8
[INFO] [stderr]   Downloaded gif v0.13.1
[INFO] [stderr]   Downloaded zune-inflate v0.2.54
[INFO] [stderr]   Downloaded half v2.4.1
[INFO] [stderr]   Downloaded ryu v1.0.17
[INFO] [stderr]   Downloaded libm v0.2.8
[INFO] [stderr]   Downloaded rand_distr v0.4.3
[INFO] [stderr]   Downloaded proc-macro2 v1.0.81
[INFO] [stderr]   Downloaded matrixmultiply v0.3.8
[INFO] [stderr]   Downloaded miniz_oxide v0.7.2
[INFO] [stderr]   Downloaded crc32fast v1.4.0
[INFO] [stderr]   Downloaded bytemuck v1.15.0
[INFO] [stderr]   Downloaded flume v0.11.0
[INFO] [stderr]   Downloaded serde_derive v1.0.199
[INFO] [stderr]   Downloaded cc v1.0.95
[INFO] [stderr]   Downloaded rayon-core v1.12.1
[INFO] [stderr]   Downloaded flate2 v1.0.29
[INFO] [stderr]   Downloaded serde v1.0.199
[INFO] [stderr]   Downloaded crossbeam-utils v0.8.19
[INFO] [stderr]   Downloaded qoi v0.4.1
[INFO] [stderr]   Downloaded memchr v2.7.2
[INFO] [stderr]   Downloaded num-bigint v0.4.4
[INFO] [stderr]   Downloaded png v0.17.13
[INFO] [stderr]   Downloaded rcudnn-sys v0.5.0
[INFO] [stderr]   Downloaded rayon v1.10.0
[INFO] [stderr]   Downloaded syn v2.0.60
[INFO] [stderr]   Downloaded exr v1.72.0
[INFO] [stderr]   Downloaded nalgebra v0.27.1
[INFO] [stderr]   Downloaded libc v0.2.153
[INFO] [stderr]   Downloaded jpeg-decoder v0.3.1
[INFO] [stderr]   Downloaded csv v1.3.0
[INFO] [stderr]   Downloaded tiff v0.9.1
[INFO] [stderr]   Downloaded image v0.24.9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] fe3145d5eab98339d7ba477d666516d009c114bdd9bfd7bb476d52ad5279d6e5
[INFO] running `Command { std: "docker" "start" "fe3145d5eab98339d7ba477d666516d009c114bdd9bfd7bb476d52ad5279d6e5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "fe3145d5eab98339d7ba477d666516d009c114bdd9bfd7bb476d52ad5279d6e5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "fe3145d5eab98339d7ba477d666516d009c114bdd9bfd7bb476d52ad5279d6e5" "/opt/rustwide/cargo-home/bin/cargo" "+3154cc1a3e6424e44f438a95007d043ed5ceaaf6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "fe3145d5eab98339d7ba477d666516d009c114bdd9bfd7bb476d52ad5279d6e5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Znext-solver=coherence" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "fe3145d5eab98339d7ba477d666516d009c114bdd9bfd7bb476d52ad5279d6e5" "/opt/rustwide/cargo-home/bin/cargo" "+3154cc1a3e6424e44f438a95007d043ed5ceaaf6" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling autocfg v1.2.0
[INFO] [stderr]    Compiling libm v0.2.8
[INFO] [stderr]     Checking cfg-if v1.0.0
[INFO] [stderr]    Compiling libc v0.2.153
[INFO] [stderr]    Compiling proc-macro2 v1.0.81
[INFO] [stderr]    Compiling unicode-ident v1.0.12
[INFO] [stderr]    Compiling crossbeam-utils v0.8.19
[INFO] [stderr]    Compiling pkg-config v0.3.30
[INFO] [stderr]    Compiling rayon-core v1.12.1
[INFO] [stderr]     Checking simd-adler32 v0.3.7
[INFO] [stderr]    Compiling glob v0.3.1
[INFO] [stderr]     Checking adler v1.0.2
[INFO] [stderr]    Compiling crc32fast v1.4.0
[INFO] [stderr]    Compiling cuda-config v0.1.0
[INFO] [stderr]    Compiling num-traits v0.2.18
[INFO] [stderr]    Compiling num-bigint v0.4.4
[INFO] [stderr]    Compiling quote v1.0.36
[INFO] [stderr]     Checking crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling num-rational v0.4.1
[INFO] [stderr]    Compiling lock_api v0.4.12
[INFO] [stderr]    Compiling rcublas-sys v0.5.0
[INFO] [stderr]     Checking getrandom v0.2.14
[INFO] [stderr]    Compiling syn v2.0.60
[INFO] [stderr]     Checking crossbeam-deque v0.8.5
[INFO] [stderr]    Compiling rcudnn-sys v0.5.0
[INFO] [stderr]     Checking miniz_oxide v0.7.2
[INFO] [stderr]    Compiling thiserror v1.0.59
[INFO] [stderr]     Checking ppv-lite86 v0.2.17
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking either v1.11.0
[INFO] [stderr]    Compiling paste v1.0.14
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]    Compiling cuda-runtime-sys v0.3.0-alpha.1
[INFO] [stderr]    Compiling matrixmultiply v0.3.8
[INFO] [stderr]     Checking rayon v1.10.0
[INFO] [stderr]    Compiling typenum v1.17.0
[INFO] [stderr]     Checking spin v0.9.8
[INFO] [stderr]     Checking flate2 v1.0.29
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking num-complex v0.4.5
[INFO] [stderr]     Checking num-iter v0.1.44
[INFO] [stderr]     Checking approx v0.5.1
[INFO] [stderr]     Checking weezl v0.1.8
[INFO] [stderr]     Checking lazy_static v1.4.0
[INFO] [stderr]     Checking rawpointer v0.2.1
[INFO] [stderr]    Compiling cc v1.0.95
[INFO] [stderr]    Compiling serde v1.0.199
[INFO] [stderr]     Checking simba v0.5.1
[INFO] [stderr]     Checking rand_distr v0.4.3
[INFO] [stderr]     Checking flume v0.11.0
[INFO] [stderr]     Checking zune-inflate v0.2.54
[INFO] [stderr]     Checking jpeg-decoder v0.3.1
[INFO] [stderr]     Checking fdeflate v0.3.4
[INFO] [stderr]     Checking num v0.4.2
[INFO] [stderr]    Compiling nncombinator v0.9.8 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking half v2.4.1
[INFO] [stderr]     Checking bitflags v1.3.2
[INFO] [stderr]     Checking byteorder v1.5.0
[INFO] [stderr]    Compiling thiserror-impl v1.0.59
[INFO] [stderr]     Checking smallvec v1.13.2
[INFO] [stderr]     Checking bytemuck v1.15.0
[INFO] [stderr]     Checking color_quant v1.1.0
[INFO] [stderr]     Checking log v0.4.21
[INFO] [stderr]     Checking bit_field v0.10.2
[INFO] [stderr]     Checking memchr v2.7.2
[INFO] [stderr]     Checking lebe v0.5.2
[INFO] [stderr]     Checking gif v0.13.1
[INFO] [stderr]     Checking qoi v0.4.1
[INFO] [stderr]     Checking tiff v0.9.1
[INFO] [stderr]     Checking exr v1.72.0
[INFO] [stderr]     Checking png v0.17.13
[INFO] [stderr]     Checking csv-core v0.1.11
[INFO] [stderr]     Checking try-from-primitive v0.1.0
[INFO] [stderr]     Checking itoa v1.0.11
[INFO] [stderr]     Checking ryu v1.0.17
[INFO] [stderr]     Checking mnist v0.5.0
[INFO] [stderr]     Checking rand_xorshift v0.3.0
[INFO] [stderr]     Checking rcublas v0.6.0
[INFO] [stderr]     Checking rcudnn v1.8.0
[INFO] [stderr]    Compiling nalgebra-macros v0.1.0
[INFO] [stderr]     Checking nalgebra v0.27.1
[INFO] [stderr]     Checking image v0.24.9
[INFO] [stderr]     Checking csv v1.3.0
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:13:102
[INFO] [stdout]    |
[INFO] [stdout] 13 |     fn sigmoid_forward_float(input: *const f32, output: *mut f32, len: size_t, units_len: size_t) -> c_void;
[INFO] [stdout]    |                                                                                                  ----^^^^^^
[INFO] [stdout]    |                                                                                                  |
[INFO] [stdout]    |                                                                                                  help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout]    = note: `#[warn(c_void_returns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:14:99
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn relu_forward_float(input: *const f32, output: *mut f32, len: size_t, units_len: size_t) -> c_void;
[INFO] [stdout]    |                                                                                               ----^^^^^^
[INFO] [stdout]    |                                                                                               |
[INFO] [stdout]    |                                                                                               help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:15:121
[INFO] [stdout]    |
[INFO] [stdout] 15 |     fn clipped_relu_forward_float(input: *const f32, ceiling: f32, output: *mut f32, len: size_t, units_len: size_t) -> c_void;
[INFO] [stdout]    |                                                                                                                     ----^^^^^^
[INFO] [stdout]    |                                                                                                                     |
[INFO] [stdout]    |                                                                                                                     help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:16:105
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn leaky_relu_forward_float(input: *const f32, output: *mut f32, len: size_t, units_len: size_t) -> c_void;
[INFO] [stdout]    |                                                                                                     ----^^^^^^
[INFO] [stdout]    |                                                                                                     |
[INFO] [stdout]    |                                                                                                     help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:17:100
[INFO] [stdout]    |
[INFO] [stdout] 17 |     fn swish_forward_float(input: *const f32, output: *mut f32, len: size_t, units_len: size_t) -> c_void;
[INFO] [stdout]    |                                                                                                ----^^^^^^
[INFO] [stdout]    |                                                                                                |
[INFO] [stdout]    |                                                                                                help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:18:99
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn tanh_forward_float(input: *const f32, output: *mut f32, len: size_t, units_len: size_t) -> c_void;
[INFO] [stdout]    |                                                                                               ----^^^^^^
[INFO] [stdout]    |                                                                                               |
[INFO] [stdout]    |                                                                                               help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:19:103
[INFO] [stdout]    |
[INFO] [stdout] 19 |     fn softmax_forward_float(input: *const f32, output: *mut f32, len: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                                                                                   ----^^^^^^
[INFO] [stdout]    |                                                                                                   |
[INFO] [stdout]    |                                                                                                   help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:20:139
[INFO] [stdout]    |
[INFO] [stdout] 20 | ...len: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:21:136
[INFO] [stdout]    |
[INFO] [stdout] 21 | ...len: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:22:158
[INFO] [stdout]    |
[INFO] [stdout] 22 | ...len: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:23:142
[INFO] [stdout]    |
[INFO] [stdout] 23 | ...len: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:24:137
[INFO] [stdout]    |
[INFO] [stdout] 24 | ...len: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:25:136
[INFO] [stdout]    |
[INFO] [stdout] 25 | ...len: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:26:139
[INFO] [stdout]    |
[INFO] [stdout] 26 | ...len: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:27:103
[INFO] [stdout]    |
[INFO] [stdout] 27 |     fn sigmoid_forward_double(input: *const f64, output: *mut f64, len: size_t, units_len: size_t) -> c_void;
[INFO] [stdout]    |                                                                                                   ----^^^^^^
[INFO] [stdout]    |                                                                                                   |
[INFO] [stdout]    |                                                                                                   help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:28:100
[INFO] [stdout]    |
[INFO] [stdout] 28 |     fn relu_forward_double(input: *const f64, output: *mut f64, len: size_t, units_len: size_t) -> c_void;
[INFO] [stdout]    |                                                                                                ----^^^^^^
[INFO] [stdout]    |                                                                                                |
[INFO] [stdout]    |                                                                                                help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:29:122
[INFO] [stdout]    |
[INFO] [stdout] 29 |     fn clipped_relu_forward_double(input: *const f64, ceiling: f64, output: *mut f64, len: size_t, units_len: size_t) -> c_void;
[INFO] [stdout]    |                                                                                                                      ----^^^^^^
[INFO] [stdout]    |                                                                                                                      |
[INFO] [stdout]    |                                                                                                                      help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:30:106
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn leaky_relu_forward_double(input: *const f64, output: *mut f64, len: size_t, units_len: size_t) -> c_void;
[INFO] [stdout]    |                                                                                                      ----^^^^^^
[INFO] [stdout]    |                                                                                                      |
[INFO] [stdout]    |                                                                                                      help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:31:101
[INFO] [stdout]    |
[INFO] [stdout] 31 |     fn swish_forward_double(input: *const f64, output: *mut f64, len: size_t, units_len: size_t) -> c_void;
[INFO] [stdout]    |                                                                                                 ----^^^^^^
[INFO] [stdout]    |                                                                                                 |
[INFO] [stdout]    |                                                                                                 help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:32:100
[INFO] [stdout]    |
[INFO] [stdout] 32 |     fn tanh_forward_double(input: *const f64, output: *mut f64, len: size_t, units_len: size_t) -> c_void;
[INFO] [stdout]    |                                                                                                ----^^^^^^
[INFO] [stdout]    |                                                                                                |
[INFO] [stdout]    |                                                                                                help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:33:104
[INFO] [stdout]    |
[INFO] [stdout] 33 |     fn softmax_forward_double(input: *const f64, output: *mut f64, len: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                                                                                    ----^^^^^^
[INFO] [stdout]    |                                                                                                    |
[INFO] [stdout]    |                                                                                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:34:140
[INFO] [stdout]    |
[INFO] [stdout] 34 | ...len: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:35:137
[INFO] [stdout]    |
[INFO] [stdout] 35 | ...len: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:36:159
[INFO] [stdout]    |
[INFO] [stdout] 36 | ...len: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:37:143
[INFO] [stdout]    |
[INFO] [stdout] 37 | ...len: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:38:138
[INFO] [stdout]    |
[INFO] [stdout] 38 | ...len: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:39:137
[INFO] [stdout]    |
[INFO] [stdout] 39 | ...len: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:40:140
[INFO] [stdout]    |
[INFO] [stdout] 40 | ...len: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/lossfunction.rs:12:126
[INFO] [stdout]    |
[INFO] [stdout] 12 |     fn loss_linear_batch_mse_derive_float(r: *const f32, t: *const f32, output: *mut f32, nlen: c_int, batch_size: c_int) -> c_void;
[INFO] [stdout]    |                                                                                                                          ----^^^^^^
[INFO] [stdout]    |                                                                                                                          |
[INFO] [stdout]    |                                                                                                                          help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/lossfunction.rs:13:127
[INFO] [stdout]    |
[INFO] [stdout] 13 |     fn loss_linear_batch_mse_derive_double(r: *const f64, t: *const f64, output: *mut f64, nlen: c_int, batch_size: c_int) -> c_void;
[INFO] [stdout]    |                                                                                                                           ----^^^^^^
[INFO] [stdout]    |                                                                                                                           |
[INFO] [stdout]    |                                                                                                                           help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/lossfunction.rs:14:136
[INFO] [stdout]    |
[INFO] [stdout] 14 | ... nlen: c_int, batch_size: c_int) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/lossfunction.rs:15:137
[INFO] [stdout]    |
[INFO] [stdout] 15 | ... nlen: c_int, batch_size: c_int) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/lossfunction.rs:16:147
[INFO] [stdout]    |
[INFO] [stdout] 16 | ... nlen: c_int, batch_size: c_int) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/lossfunction.rs:17:148
[INFO] [stdout]    |
[INFO] [stdout] 17 | ... nlen: c_int, batch_size: c_int) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/device.rs:14:106
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn reduce_linear_batch_float(input: *const f32, output: *mut f32, nlen: c_int, batch_size: c_int) -> c_void;
[INFO] [stdout]    |                                                                                                      ----^^^^^^
[INFO] [stdout]    |                                                                                                      |
[INFO] [stdout]    |                                                                                                      help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/device.rs:15:107
[INFO] [stdout]    |
[INFO] [stdout] 15 |     fn reduce_linear_batch_double(input: *const f64, output: *mut f64, nlen: c_int, batch_size: c_int) -> c_void;
[INFO] [stdout]    |                                                                                                       ----^^^^^^
[INFO] [stdout]    |                                                                                                       |
[INFO] [stdout]    |                                                                                                       help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/device.rs:16:171
[INFO] [stdout]    |
[INFO] [stdout] 16 | ...len: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/device.rs:17:172
[INFO] [stdout]    |
[INFO] [stdout] 17 | ...len: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/device.rs:18:153
[INFO] [stdout]    |
[INFO] [stdout] 18 | ...len: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/device.rs:19:154
[INFO] [stdout]    |
[INFO] [stdout] 19 | ...len: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/device.rs:20:173
[INFO] [stdout]    |
[INFO] [stdout] 20 | ...ize: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/device.rs:21:174
[INFO] [stdout]    |
[INFO] [stdout] 21 | ...ize: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/device.rs:22:145
[INFO] [stdout]    |
[INFO] [stdout] 22 | ... nlen: c_int, batch_size: c_int) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/device.rs:23:146
[INFO] [stdout]    |
[INFO] [stdout] 23 | ... nlen: c_int, batch_size: c_int) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/device.rs:24:174
[INFO] [stdout]    |
[INFO] [stdout] 24 | ..._size: size_t, diff_len: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/device.rs:25:175
[INFO] [stdout]    |
[INFO] [stdout] 25 | ..._size: size_t, diff_len: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/device.rs:26:110
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn addbias_batch_float(bias: *const f32, input_output: *mut f32, units_len: c_int, batch_size: c_int) -> c_void;
[INFO] [stdout]    |                                                                                                          ----^^^^^^
[INFO] [stdout]    |                                                                                                          |
[INFO] [stdout]    |                                                                                                          help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/device.rs:27:111
[INFO] [stdout]    |
[INFO] [stdout] 27 |     fn addbias_batch_double(bias: *const f64, input_output: *mut f64, units_len: c_int, batch_size: c_int) -> c_void;
[INFO] [stdout]    |                                                                                                           ----^^^^^^
[INFO] [stdout]    |                                                                                                           |
[INFO] [stdout]    |                                                                                                           help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking statrs v0.15.0
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:13:102
[INFO] [stdout]    |
[INFO] [stdout] 13 |     fn sigmoid_forward_float(input: *const f32, output: *mut f32, len: size_t, units_len: size_t) -> c_void;
[INFO] [stdout]    |                                                                                                  ----^^^^^^
[INFO] [stdout]    |                                                                                                  |
[INFO] [stdout]    |                                                                                                  help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout]    = note: `#[warn(c_void_returns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:14:99
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn relu_forward_float(input: *const f32, output: *mut f32, len: size_t, units_len: size_t) -> c_void;
[INFO] [stdout]    |                                                                                               ----^^^^^^
[INFO] [stdout]    |                                                                                               |
[INFO] [stdout]    |                                                                                               help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:15:121
[INFO] [stdout]    |
[INFO] [stdout] 15 |     fn clipped_relu_forward_float(input: *const f32, ceiling: f32, output: *mut f32, len: size_t, units_len: size_t) -> c_void;
[INFO] [stdout]    |                                                                                                                     ----^^^^^^
[INFO] [stdout]    |                                                                                                                     |
[INFO] [stdout]    |                                                                                                                     help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:16:105
[INFO] [stdout]    |
[INFO] [stdout] 16 |     fn leaky_relu_forward_float(input: *const f32, output: *mut f32, len: size_t, units_len: size_t) -> c_void;
[INFO] [stdout]    |                                                                                                     ----^^^^^^
[INFO] [stdout]    |                                                                                                     |
[INFO] [stdout]    |                                                                                                     help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:17:100
[INFO] [stdout]    |
[INFO] [stdout] 17 |     fn swish_forward_float(input: *const f32, output: *mut f32, len: size_t, units_len: size_t) -> c_void;
[INFO] [stdout]    |                                                                                                ----^^^^^^
[INFO] [stdout]    |                                                                                                |
[INFO] [stdout]    |                                                                                                help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:18:99
[INFO] [stdout]    |
[INFO] [stdout] 18 |     fn tanh_forward_float(input: *const f32, output: *mut f32, len: size_t, units_len: size_t) -> c_void;
[INFO] [stdout]    |                                                                                               ----^^^^^^
[INFO] [stdout]    |                                                                                               |
[INFO] [stdout]    |                                                                                               help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:19:103
[INFO] [stdout]    |
[INFO] [stdout] 19 |     fn softmax_forward_float(input: *const f32, output: *mut f32, len: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                                                                                   ----^^^^^^
[INFO] [stdout]    |                                                                                                   |
[INFO] [stdout]    |                                                                                                   help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:20:139
[INFO] [stdout]    |
[INFO] [stdout] 20 | ...len: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:21:136
[INFO] [stdout]    |
[INFO] [stdout] 21 | ...len: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:22:158
[INFO] [stdout]    |
[INFO] [stdout] 22 | ...len: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:23:142
[INFO] [stdout]    |
[INFO] [stdout] 23 | ...len: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:24:137
[INFO] [stdout]    |
[INFO] [stdout] 24 | ...len: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:25:136
[INFO] [stdout]    |
[INFO] [stdout] 25 | ...len: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:26:139
[INFO] [stdout]    |
[INFO] [stdout] 26 | ...len: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:27:103
[INFO] [stdout]    |
[INFO] [stdout] 27 |     fn sigmoid_forward_double(input: *const f64, output: *mut f64, len: size_t, units_len: size_t) -> c_void;
[INFO] [stdout]    |                                                                                                   ----^^^^^^
[INFO] [stdout]    |                                                                                                   |
[INFO] [stdout]    |                                                                                                   help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:28:100
[INFO] [stdout]    |
[INFO] [stdout] 28 |     fn relu_forward_double(input: *const f64, output: *mut f64, len: size_t, units_len: size_t) -> c_void;
[INFO] [stdout]    |                                                                                                ----^^^^^^
[INFO] [stdout]    |                                                                                                |
[INFO] [stdout]    |                                                                                                help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:29:122
[INFO] [stdout]    |
[INFO] [stdout] 29 |     fn clipped_relu_forward_double(input: *const f64, ceiling: f64, output: *mut f64, len: size_t, units_len: size_t) -> c_void;
[INFO] [stdout]    |                                                                                                                      ----^^^^^^
[INFO] [stdout]    |                                                                                                                      |
[INFO] [stdout]    |                                                                                                                      help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:30:106
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn leaky_relu_forward_double(input: *const f64, output: *mut f64, len: size_t, units_len: size_t) -> c_void;
[INFO] [stdout]    |                                                                                                      ----^^^^^^
[INFO] [stdout]    |                                                                                                      |
[INFO] [stdout]    |                                                                                                      help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:31:101
[INFO] [stdout]    |
[INFO] [stdout] 31 |     fn swish_forward_double(input: *const f64, output: *mut f64, len: size_t, units_len: size_t) -> c_void;
[INFO] [stdout]    |                                                                                                 ----^^^^^^
[INFO] [stdout]    |                                                                                                 |
[INFO] [stdout]    |                                                                                                 help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:32:100
[INFO] [stdout]    |
[INFO] [stdout] 32 |     fn tanh_forward_double(input: *const f64, output: *mut f64, len: size_t, units_len: size_t) -> c_void;
[INFO] [stdout]    |                                                                                                ----^^^^^^
[INFO] [stdout]    |                                                                                                |
[INFO] [stdout]    |                                                                                                help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:33:104
[INFO] [stdout]    |
[INFO] [stdout] 33 |     fn softmax_forward_double(input: *const f64, output: *mut f64, len: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                                                                                    ----^^^^^^
[INFO] [stdout]    |                                                                                                    |
[INFO] [stdout]    |                                                                                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:34:140
[INFO] [stdout]    |
[INFO] [stdout] 34 | ...len: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:35:137
[INFO] [stdout]    |
[INFO] [stdout] 35 | ...len: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:36:159
[INFO] [stdout]    |
[INFO] [stdout] 36 | ...len: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:37:143
[INFO] [stdout]    |
[INFO] [stdout] 37 | ...len: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:38:138
[INFO] [stdout]    |
[INFO] [stdout] 38 | ...len: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:39:137
[INFO] [stdout]    |
[INFO] [stdout] 39 | ...len: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/activation.rs:40:140
[INFO] [stdout]    |
[INFO] [stdout] 40 | ...len: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/lossfunction.rs:12:126
[INFO] [stdout]    |
[INFO] [stdout] 12 |     fn loss_linear_batch_mse_derive_float(r: *const f32, t: *const f32, output: *mut f32, nlen: c_int, batch_size: c_int) -> c_void;
[INFO] [stdout]    |                                                                                                                          ----^^^^^^
[INFO] [stdout]    |                                                                                                                          |
[INFO] [stdout]    |                                                                                                                          help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/lossfunction.rs:13:127
[INFO] [stdout]    |
[INFO] [stdout] 13 |     fn loss_linear_batch_mse_derive_double(r: *const f64, t: *const f64, output: *mut f64, nlen: c_int, batch_size: c_int) -> c_void;
[INFO] [stdout]    |                                                                                                                           ----^^^^^^
[INFO] [stdout]    |                                                                                                                           |
[INFO] [stdout]    |                                                                                                                           help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/lossfunction.rs:14:136
[INFO] [stdout]    |
[INFO] [stdout] 14 | ... nlen: c_int, batch_size: c_int) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/lossfunction.rs:15:137
[INFO] [stdout]    |
[INFO] [stdout] 15 | ... nlen: c_int, batch_size: c_int) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/lossfunction.rs:16:147
[INFO] [stdout]    |
[INFO] [stdout] 16 | ... nlen: c_int, batch_size: c_int) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/lossfunction.rs:17:148
[INFO] [stdout]    |
[INFO] [stdout] 17 | ... nlen: c_int, batch_size: c_int) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/device.rs:14:106
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn reduce_linear_batch_float(input: *const f32, output: *mut f32, nlen: c_int, batch_size: c_int) -> c_void;
[INFO] [stdout]    |                                                                                                      ----^^^^^^
[INFO] [stdout]    |                                                                                                      |
[INFO] [stdout]    |                                                                                                      help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/device.rs:15:107
[INFO] [stdout]    |
[INFO] [stdout] 15 |     fn reduce_linear_batch_double(input: *const f64, output: *mut f64, nlen: c_int, batch_size: c_int) -> c_void;
[INFO] [stdout]    |                                                                                                       ----^^^^^^
[INFO] [stdout]    |                                                                                                       |
[INFO] [stdout]    |                                                                                                       help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/device.rs:16:171
[INFO] [stdout]    |
[INFO] [stdout] 16 | ...len: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/device.rs:17:172
[INFO] [stdout]    |
[INFO] [stdout] 17 | ...len: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/device.rs:18:153
[INFO] [stdout]    |
[INFO] [stdout] 18 | ...len: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/device.rs:19:154
[INFO] [stdout]    |
[INFO] [stdout] 19 | ...len: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/device.rs:20:173
[INFO] [stdout]    |
[INFO] [stdout] 20 | ...ize: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/device.rs:21:174
[INFO] [stdout]    |
[INFO] [stdout] 21 | ...ize: size_t, batch_size: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/device.rs:22:145
[INFO] [stdout]    |
[INFO] [stdout] 22 | ... nlen: c_int, batch_size: c_int) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/device.rs:23:146
[INFO] [stdout]    |
[INFO] [stdout] 23 | ... nlen: c_int, batch_size: c_int) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/device.rs:24:174
[INFO] [stdout]    |
[INFO] [stdout] 24 | ..._size: size_t, diff_len: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/device.rs:25:175
[INFO] [stdout]    |
[INFO] [stdout] 25 | ..._size: size_t, diff_len: size_t) -> c_void;
[INFO] [stdout]    |                                    ----^^^^^^
[INFO] [stdout]    |                                    |
[INFO] [stdout]    |                                    help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/device.rs:26:110
[INFO] [stdout]    |
[INFO] [stdout] 26 |     fn addbias_batch_float(bias: *const f32, input_output: *mut f32, units_len: c_int, batch_size: c_int) -> c_void;
[INFO] [stdout]    |                                                                                                          ----^^^^^^
[INFO] [stdout]    |                                                                                                          |
[INFO] [stdout]    |                                                                                                          help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: declarations returning `c_void` are not compatible with C functions returning `void`
[INFO] [stdout]   --> src/cuda/kernel/device.rs:27:111
[INFO] [stdout]    |
[INFO] [stdout] 27 |     fn addbias_batch_double(bias: *const f64, input_output: *mut f64, units_len: c_int, batch_size: c_int) -> c_void;
[INFO] [stdout]    |                                                                                                           ----^^^^^^
[INFO] [stdout]    |                                                                                                           |
[INFO] [stdout]    |                                                                                                           help: remove the return type to implicitly return `()`
[INFO] [stdout]    |
[INFO] [stdout]    = help: returning `()` in Rust is equivalent to returning `void` in C
[INFO] [stdout]    = note: `c_void` is only used through raw pointers for compatibility with `void` pointers
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 37s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: nalgebra v0.27.1
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "fe3145d5eab98339d7ba477d666516d009c114bdd9bfd7bb476d52ad5279d6e5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fe3145d5eab98339d7ba477d666516d009c114bdd9bfd7bb476d52ad5279d6e5", kill_on_drop: false }`
[INFO] [stdout] fe3145d5eab98339d7ba477d666516d009c114bdd9bfd7bb476d52ad5279d6e5
