[INFO] fetching crate cult 0.0.3...
[INFO] testing cult-0.0.3 against 1.47.0 for beta-1.48-1
[INFO] extracting crate cult 0.0.3 into /workspace/builds/worker-4/source
[INFO] validating manifest of crates.io crate cult 0.0.3 on toolchain 1.47.0
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.47.0" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] started tweaking crates.io crate cult 0.0.3
[INFO] finished tweaking crates.io crate cult 0.0.3
[INFO] tweaked toml for crates.io crate cult 0.0.3 written to /workspace/builds/worker-4/source/Cargo.toml
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.47.0" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }`
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.47.0" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+1.47.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 50447158edd7acde8a1889c8497e2bccee85a53c565c233ff9d38cb0091b8d12
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "50447158edd7acde8a1889c8497e2bccee85a53c565c233ff9d38cb0091b8d12", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "50447158edd7acde8a1889c8497e2bccee85a53c565c233ff9d38cb0091b8d12", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "50447158edd7acde8a1889c8497e2bccee85a53c565c233ff9d38cb0091b8d12", kill_on_drop: false }`
[INFO] [stdout] 50447158edd7acde8a1889c8497e2bccee85a53c565c233ff9d38cb0091b8d12
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+1.47.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 65e0a69b9c6e0e84d0d3285020b90d40c2144992fcd1eadf9716b59b65a545e7
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "65e0a69b9c6e0e84d0d3285020b90d40c2144992fcd1eadf9716b59b65a545e7", kill_on_drop: false }`
[INFO] [stderr]    Compiling cult v0.0.3 (/opt/rustwide/workdir)
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:80:29
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub type DataCallback = Box<FnMut(&mut [f32]) -> i32>;
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut [f32]) -> i32`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `libc::uint32_t`: Use u32 instead.
[INFO] [stdout]   --> src/lib.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 46 |   rate: libc::uint32_t,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `libc::uint32_t`: Use u32 instead.
[INFO] [stdout]   --> src/lib.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 47 |   channels: libc::uint32_t,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `libc::uint32_t`: Use u32 instead.
[INFO] [stdout]   --> src/lib.rs:55:53
[INFO] [stdout]    |
[INFO] [stdout] 55 | ...                   max_channels: *mut libc::uint32_t) -> libc::c_int;
[INFO] [stdout]    |                                          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `libc::uint32_t`: Use u32 instead.
[INFO] [stdout]   --> src/lib.rs:58:45
[INFO] [stdout]    |
[INFO] [stdout] 58 | ...                   latency_ms: *mut libc::uint32_t) -> libc::c_int;
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `libc::uint32_t`: Use u32 instead.
[INFO] [stdout]   --> src/lib.rs:60:49
[INFO] [stdout]    |
[INFO] [stdout] 60 | ...                   rate: *mut libc::uint32_t) -> libc::c_int;
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `libc::uint64_t`: Use u64 instead.
[INFO] [stdout]   --> src/lib.rs:75:47
[INFO] [stdout]    |
[INFO] [stdout] 75 | ...                   position: *mut libc::uint64_t) -> libc::c_int;
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `libc::uint32_t`: Use u32 instead.
[INFO] [stdout]   --> src/lib.rs:77:45
[INFO] [stdout]    |
[INFO] [stdout] 77 | ...                   latency: *mut libc::uint32_t) -> libc::c_int;
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `libc::uint64_t`: Use u64 instead.
[INFO] [stdout]    --> src/lib.rs:154:18
[INFO] [stdout]     |
[INFO] [stdout] 154 |     let mut pos: libc::uint64_t = 0;
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `libc::uint32_t`: Use u32 instead.
[INFO] [stdout]    --> src/lib.rs:166:18
[INFO] [stdout]     |
[INFO] [stdout] 166 |     let mut lat: libc::uint32_t = 0;
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `stm`
[INFO] [stdout]    --> src/lib.rs:188:23
[INFO] [stdout]     |
[INFO] [stdout] 188 | extern fn refill_glue(stm: CubebStreamPtr,
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_stm`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `stm`
[INFO] [stdout]    --> src/lib.rs:204:17
[INFO] [stdout]     |
[INFO] [stdout] 204 | extern fn state(stm: CubebStreamPtr,
[INFO] [stdout]     |                 ^^^ help: if this is intentional, prefix it with an underscore: `_stm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `user`
[INFO] [stdout]    --> src/lib.rs:205:17
[INFO] [stdout]     |
[INFO] [stdout] 205 |                 user: *mut c_void,
[INFO] [stdout]     |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_user`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:115:9
[INFO] [stdout]     |
[INFO] [stdout] 115 |     let mut rv;
[INFO] [stdout]     |         ----^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:155:9
[INFO] [stdout]     |
[INFO] [stdout] 155 |     let mut rv;
[INFO] [stdout]     |         ----^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:167:9
[INFO] [stdout]     |
[INFO] [stdout] 167 |     let mut rv;
[INFO] [stdout]     |         ----^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:220:9
[INFO] [stdout]     |
[INFO] [stdout] 220 |     let mut rv;
[INFO] [stdout]     |         ----^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `noopcallback`
[INFO] [stdout]   --> src/lib.rs:82:4
[INFO] [stdout]    |
[INFO] [stdout] 82 | fn noopcallback(buffer: &mut [f32]) -> i32
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` block uses type `AudioStream`, which is not FFI-safe
[INFO] [stdout]   --> src/lib.rs:69:34
[INFO] [stdout]    |
[INFO] [stdout] 69 |                        user_ptr: *const AudioStream) -> libc::c_int;
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(improper_ctypes)]` on by default
[INFO] [stdout]    = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct
[INFO] [stdout]    = note: this struct has unspecified layout
[INFO] [stdout] note: the type is defined here
[INFO] [stdout]   --> src/lib.rs:87:1
[INFO] [stdout]    |
[INFO] [stdout] 87 | / pub struct AudioStream {
[INFO] [stdout] 88 | |   rate: u32,
[INFO] [stdout] 89 | |   format: CubebSampleFormat,
[INFO] [stdout] 90 | |   channels: u32,
[INFO] [stdout] ...  |
[INFO] [stdout] 93 | |   callback: DataCallback
[INFO] [stdout] 94 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 19 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 0.39s
[INFO] running `Command { std: "docker" "inspect" "65e0a69b9c6e0e84d0d3285020b90d40c2144992fcd1eadf9716b59b65a545e7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "65e0a69b9c6e0e84d0d3285020b90d40c2144992fcd1eadf9716b59b65a545e7", kill_on_drop: false }`
[INFO] [stdout] 65e0a69b9c6e0e84d0d3285020b90d40c2144992fcd1eadf9716b59b65a545e7
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+1.47.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e47951ba58446e759a9716547cf15a44eee201aa4cdf4bb9707105497cde2a88
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "e47951ba58446e759a9716547cf15a44eee201aa4cdf4bb9707105497cde2a88", kill_on_drop: false }`
[INFO] [stderr]    Compiling cult v0.0.3 (/opt/rustwide/workdir)
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:80:29
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub type DataCallback = Box<FnMut(&mut [f32]) -> i32>;
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut [f32]) -> i32`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `libc::uint32_t`: Use u32 instead.
[INFO] [stdout]   --> src/lib.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 46 |   rate: libc::uint32_t,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `libc::uint32_t`: Use u32 instead.
[INFO] [stdout]   --> src/lib.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 47 |   channels: libc::uint32_t,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `libc::uint32_t`: Use u32 instead.
[INFO] [stdout]   --> src/lib.rs:55:53
[INFO] [stdout]    |
[INFO] [stdout] 55 | ...                   max_channels: *mut libc::uint32_t) -> libc::c_int;
[INFO] [stdout]    |                                          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `libc::uint32_t`: Use u32 instead.
[INFO] [stdout]   --> src/lib.rs:58:45
[INFO] [stdout]    |
[INFO] [stdout] 58 | ...                   latency_ms: *mut libc::uint32_t) -> libc::c_int;
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `libc::uint32_t`: Use u32 instead.
[INFO] [stdout]   --> src/lib.rs:60:49
[INFO] [stdout]    |
[INFO] [stdout] 60 | ...                   rate: *mut libc::uint32_t) -> libc::c_int;
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `libc::uint64_t`: Use u64 instead.
[INFO] [stdout]   --> src/lib.rs:75:47
[INFO] [stdout]    |
[INFO] [stdout] 75 | ...                   position: *mut libc::uint64_t) -> libc::c_int;
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `libc::uint32_t`: Use u32 instead.
[INFO] [stdout]   --> src/lib.rs:77:45
[INFO] [stdout]    |
[INFO] [stdout] 77 | ...                   latency: *mut libc::uint32_t) -> libc::c_int;
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `libc::uint64_t`: Use u64 instead.
[INFO] [stdout]    --> src/lib.rs:154:18
[INFO] [stdout]     |
[INFO] [stdout] 154 |     let mut pos: libc::uint64_t = 0;
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `libc::uint32_t`: Use u32 instead.
[INFO] [stdout]    --> src/lib.rs:166:18
[INFO] [stdout]     |
[INFO] [stdout] 166 |     let mut lat: libc::uint32_t = 0;
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `stm`
[INFO] [stdout]    --> src/lib.rs:188:23
[INFO] [stdout]     |
[INFO] [stdout] 188 | extern fn refill_glue(stm: CubebStreamPtr,
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_stm`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `stm`
[INFO] [stdout]    --> src/lib.rs:204:17
[INFO] [stdout]     |
[INFO] [stdout] 204 | extern fn state(stm: CubebStreamPtr,
[INFO] [stdout]     |                 ^^^ help: if this is intentional, prefix it with an underscore: `_stm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `user`
[INFO] [stdout]    --> src/lib.rs:205:17
[INFO] [stdout]     |
[INFO] [stdout] 205 |                 user: *mut c_void,
[INFO] [stdout]     |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_user`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:115:9
[INFO] [stdout]     |
[INFO] [stdout] 115 |     let mut rv;
[INFO] [stdout]     |         ----^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:155:9
[INFO] [stdout]     |
[INFO] [stdout] 155 |     let mut rv;
[INFO] [stdout]     |         ----^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:167:9
[INFO] [stdout]     |
[INFO] [stdout] 167 |     let mut rv;
[INFO] [stdout]     |         ----^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:220:9
[INFO] [stdout]     |
[INFO] [stdout] 220 |     let mut rv;
[INFO] [stdout]     |         ----^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `noopcallback`
[INFO] [stdout]   --> src/lib.rs:82:4
[INFO] [stdout]    |
[INFO] [stdout] 82 | fn noopcallback(buffer: &mut [f32]) -> i32
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` block uses type `AudioStream`, which is not FFI-safe
[INFO] [stdout]   --> src/lib.rs:69:34
[INFO] [stdout]    |
[INFO] [stdout] 69 |                        user_ptr: *const AudioStream) -> libc::c_int;
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(improper_ctypes)]` on by default
[INFO] [stdout]    = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct
[INFO] [stdout]    = note: this struct has unspecified layout
[INFO] [stdout] note: the type is defined here
[INFO] [stdout]   --> src/lib.rs:87:1
[INFO] [stdout]    |
[INFO] [stdout] 87 | / pub struct AudioStream {
[INFO] [stdout] 88 | |   rate: u32,
[INFO] [stdout] 89 | |   format: CubebSampleFormat,
[INFO] [stdout] 90 | |   channels: u32,
[INFO] [stdout] ...  |
[INFO] [stdout] 93 | |   callback: DataCallback
[INFO] [stdout] 94 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 19 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `std::num::Float`
[INFO] [stdout]  --> tests/sine.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::num::Float;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^ no `Float` in `num`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved imports `std::sync::StaticMutex`, `std::sync::MUTEX_INIT`, `std::sync::StaticCondvar`, `std::sync::CONDVAR_INIT`
[INFO] [stdout]  --> tests/sine.rs:7:17
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::sync::{StaticMutex, MUTEX_INIT, StaticCondvar, CONDVAR_INIT};
[INFO] [stdout]   |                 ^^^^^^^^^^^  ^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^ no `CONDVAR_INIT` in `sync`
[INFO] [stdout]   |                 |            |           |
[INFO] [stdout]   |                 |            |           no `StaticCondvar` in `sync`
[INFO] [stdout]   |                 |            no `MUTEX_INIT` in `sync`
[INFO] [stdout]   |                 no `StaticMutex` in `sync`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find function `range` in this scope
[INFO] [stdout]   --> tests/sine.rs:22:16
[INFO] [stdout]    |
[INFO] [stdout] 22 |       for j in range(0, 1) {
[INFO] [stdout]    |                ^^^^^ not found in this scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0554]: `#![feature]` may not be used on the stable release channel
[INFO] [stdout]  --> tests/sine.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(core)]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0554]: `#![feature]` may not be used on the stable release channel
[INFO] [stdout]  --> tests/sine.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | #![feature(std_misc)]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 5 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0425, E0432, E0554.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0425`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `cult`.
[INFO] [stderr] 
[INFO] [stderr] To learn more, run the command again with --verbose.
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:80:29
[INFO] [stdout]    |
[INFO] [stdout] 80 | pub type DataCallback = Box<FnMut(&mut [f32]) -> i32>;
[INFO] [stdout]    |                             ^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut [f32]) -> i32`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `libc::uint32_t`: Use u32 instead.
[INFO] [stdout]   --> src/lib.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 46 |   rate: libc::uint32_t,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `libc::uint32_t`: Use u32 instead.
[INFO] [stdout]   --> src/lib.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 47 |   channels: libc::uint32_t,
[INFO] [stdout]    |             ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `libc::uint32_t`: Use u32 instead.
[INFO] [stdout]   --> src/lib.rs:55:53
[INFO] [stdout]    |
[INFO] [stdout] 55 | ...                   max_channels: *mut libc::uint32_t) -> libc::c_int;
[INFO] [stdout]    |                                          ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `libc::uint32_t`: Use u32 instead.
[INFO] [stdout]   --> src/lib.rs:58:45
[INFO] [stdout]    |
[INFO] [stdout] 58 | ...                   latency_ms: *mut libc::uint32_t) -> libc::c_int;
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `libc::uint32_t`: Use u32 instead.
[INFO] [stdout]   --> src/lib.rs:60:49
[INFO] [stdout]    |
[INFO] [stdout] 60 | ...                   rate: *mut libc::uint32_t) -> libc::c_int;
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `libc::uint64_t`: Use u64 instead.
[INFO] [stdout]   --> src/lib.rs:75:47
[INFO] [stdout]    |
[INFO] [stdout] 75 | ...                   position: *mut libc::uint64_t) -> libc::c_int;
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `libc::uint32_t`: Use u32 instead.
[INFO] [stdout]   --> src/lib.rs:77:45
[INFO] [stdout]    |
[INFO] [stdout] 77 | ...                   latency: *mut libc::uint32_t) -> libc::c_int;
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `libc::uint64_t`: Use u64 instead.
[INFO] [stdout]    --> src/lib.rs:154:18
[INFO] [stdout]     |
[INFO] [stdout] 154 |     let mut pos: libc::uint64_t = 0;
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `libc::uint32_t`: Use u32 instead.
[INFO] [stdout]    --> src/lib.rs:166:18
[INFO] [stdout]     |
[INFO] [stdout] 166 |     let mut lat: libc::uint32_t = 0;
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `stm`
[INFO] [stdout]    --> src/lib.rs:188:23
[INFO] [stdout]     |
[INFO] [stdout] 188 | extern fn refill_glue(stm: CubebStreamPtr,
[INFO] [stdout]     |                       ^^^ help: if this is intentional, prefix it with an underscore: `_stm`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `stm`
[INFO] [stdout]    --> src/lib.rs:204:17
[INFO] [stdout]     |
[INFO] [stdout] 204 | extern fn state(stm: CubebStreamPtr,
[INFO] [stdout]     |                 ^^^ help: if this is intentional, prefix it with an underscore: `_stm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `user`
[INFO] [stdout]    --> src/lib.rs:205:17
[INFO] [stdout]     |
[INFO] [stdout] 205 |                 user: *mut c_void,
[INFO] [stdout]     |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_user`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:115:9
[INFO] [stdout]     |
[INFO] [stdout] 115 |     let mut rv;
[INFO] [stdout]     |         ----^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:155:9
[INFO] [stdout]     |
[INFO] [stdout] 155 |     let mut rv;
[INFO] [stdout]     |         ----^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:167:9
[INFO] [stdout]     |
[INFO] [stdout] 167 |     let mut rv;
[INFO] [stdout]     |         ----^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/lib.rs:220:9
[INFO] [stdout]     |
[INFO] [stdout] 220 |     let mut rv;
[INFO] [stdout]     |         ----^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function is never used: `noopcallback`
[INFO] [stdout]   --> src/lib.rs:82:4
[INFO] [stdout]    |
[INFO] [stdout] 82 | fn noopcallback(buffer: &mut [f32]) -> i32
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `extern` block uses type `AudioStream`, which is not FFI-safe
[INFO] [stdout]   --> src/lib.rs:69:34
[INFO] [stdout]    |
[INFO] [stdout] 69 |                        user_ptr: *const AudioStream) -> libc::c_int;
[INFO] [stdout]    |                                  ^^^^^^^^^^^^^^^^^^ not FFI-safe
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(improper_ctypes)]` on by default
[INFO] [stdout]    = help: consider adding a `#[repr(C)]` or `#[repr(transparent)]` attribute to this struct
[INFO] [stdout]    = note: this struct has unspecified layout
[INFO] [stdout] note: the type is defined here
[INFO] [stdout]   --> src/lib.rs:87:1
[INFO] [stdout]    |
[INFO] [stdout] 87 | / pub struct AudioStream {
[INFO] [stdout] 88 | |   rate: u32,
[INFO] [stdout] 89 | |   format: CubebSampleFormat,
[INFO] [stdout] 90 | |   channels: u32,
[INFO] [stdout] ...  |
[INFO] [stdout] 93 | |   callback: DataCallback
[INFO] [stdout] 94 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: linking with `cc` failed: exit code: 1
[INFO] [stdout]   |
[INFO] [stdout]   = note: "cc" "-Wl,--as-needed" "-Wl,-z,noexecstack" "-m64" "-Wl,--eh-frame-hdr" "-L" "/opt/rustwide/rustup-home/toolchains/1.47.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "/opt/rustwide/target/debug/deps/cult-183edd1d25c3b1ac.cult.2lsheylw-cgu.0.rcgu.o" "/opt/rustwide/target/debug/deps/cult-183edd1d25c3b1ac.cult.2lsheylw-cgu.1.rcgu.o" "/opt/rustwide/target/debug/deps/cult-183edd1d25c3b1ac.cult.2lsheylw-cgu.2.rcgu.o" "/opt/rustwide/target/debug/deps/cult-183edd1d25c3b1ac.cult.2lsheylw-cgu.3.rcgu.o" "/opt/rustwide/target/debug/deps/cult-183edd1d25c3b1ac.cult.2lsheylw-cgu.4.rcgu.o" "/opt/rustwide/target/debug/deps/cult-183edd1d25c3b1ac.cult.2lsheylw-cgu.5.rcgu.o" "/opt/rustwide/target/debug/deps/cult-183edd1d25c3b1ac.cult.2lsheylw-cgu.6.rcgu.o" "-o" "/opt/rustwide/target/debug/deps/cult-183edd1d25c3b1ac" "/opt/rustwide/target/debug/deps/cult-183edd1d25c3b1ac.539nk3n9v4goo9y0.rcgu.o" "-Wl,--gc-sections" "-pie" "-Wl,-zrelro" "-Wl,-znow" "-nodefaultlibs" "-L" "/opt/rustwide/target/debug/deps" "-L" "/opt/rustwide/rustup-home/toolchains/1.47.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-lcubeb" "-Wl,-Bstatic" "/opt/rustwide/rustup-home/toolchains/1.47.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libtest-1a99bd050f5bcac9.rlib" "/opt/rustwide/rustup-home/toolchains/1.47.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libterm-c3c443d72de8b429.rlib" "/opt/rustwide/rustup-home/toolchains/1.47.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libgetopts-8b34c4c4a224fb59.rlib" "/opt/rustwide/rustup-home/toolchains/1.47.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libunicode_width-b247e4f3706e4767.rlib" "/opt/rustwide/rustup-home/toolchains/1.47.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_std-45a697d9a5a880a0.rlib" "/opt/rustwide/target/debug/deps/liblibc-0a43f320b0d2a047.rlib" "-Wl,--start-group" "/opt/rustwide/rustup-home/toolchains/1.47.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libstd-f14aca24435a5414.rlib" "/opt/rustwide/rustup-home/toolchains/1.47.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libpanic_unwind-48d342a8b48d1d01.rlib" "/opt/rustwide/rustup-home/toolchains/1.47.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libminiz_oxide-14bc0820888c8eb3.rlib" "/opt/rustwide/rustup-home/toolchains/1.47.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libadler-9cbd9e217bff06bc.rlib" "/opt/rustwide/rustup-home/toolchains/1.47.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libobject-31826136df98934e.rlib" "/opt/rustwide/rustup-home/toolchains/1.47.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libaddr2line-075976a117c8fd5d.rlib" "/opt/rustwide/rustup-home/toolchains/1.47.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libgimli-2d5cbedfbf17a011.rlib" "/opt/rustwide/rustup-home/toolchains/1.47.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_demangle-0474372ff08c5319.rlib" "/opt/rustwide/rustup-home/toolchains/1.47.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libhashbrown-d437c34460d2315a.rlib" "/opt/rustwide/rustup-home/toolchains/1.47.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_alloc-fb61ed1b8cc4de79.rlib" "/opt/rustwide/rustup-home/toolchains/1.47.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libunwind-bf76d1b643bfc9f0.rlib" "/opt/rustwide/rustup-home/toolchains/1.47.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcfg_if-a1b53aa7fddcf418.rlib" "/opt/rustwide/rustup-home/toolchains/1.47.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liblibc-28585e57fac45c73.rlib" "/opt/rustwide/rustup-home/toolchains/1.47.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/liballoc-64801769bc15ab28.rlib" "/opt/rustwide/rustup-home/toolchains/1.47.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/librustc_std_workspace_core-541997b56bb98660.rlib" "/opt/rustwide/rustup-home/toolchains/1.47.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcore-cdea3c81adab3d12.rlib" "-Wl,--end-group" "/opt/rustwide/rustup-home/toolchains/1.47.0-x86_64-unknown-linux-gnu/lib/rustlib/x86_64-unknown-linux-gnu/lib/libcompiler_builtins-cd9f15a39fb65cbc.rlib" "-Wl,-Bdynamic" "-ldl" "-lrt" "-lpthread" "-lgcc_s" "-lc" "-lm" "-lrt" "-lpthread" "-lutil" "-ldl" "-lutil"
[INFO] [stdout]   = note: /usr/bin/ld: cannot find -lcubeb
[INFO] [stdout]           collect2: error: ld returned 1 exit status
[INFO] [stdout]           
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to previous error; 19 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: build failed
[INFO] running `Command { std: "docker" "inspect" "e47951ba58446e759a9716547cf15a44eee201aa4cdf4bb9707105497cde2a88", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e47951ba58446e759a9716547cf15a44eee201aa4cdf4bb9707105497cde2a88", kill_on_drop: false }`
[INFO] [stdout] e47951ba58446e759a9716547cf15a44eee201aa4cdf4bb9707105497cde2a88
