[INFO] crate iui 0.3.0 is already in cache [INFO] testing iui-0.3.0 against master#28742a1146f10a4f09369baad027a464acb7a766 for pr-71274 [INFO] extracting crate iui 0.3.0 into /workspace/builds/worker-3/source [INFO] validating manifest of crates.io crate iui 0.3.0 on toolchain 28742a1146f10a4f09369baad027a464acb7a766 [INFO] running `"/workspace/cargo-home/bin/cargo" "+28742a1146f10a4f09369baad027a464acb7a766" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking crates.io crate iui 0.3.0 [INFO] finished tweaking crates.io crate iui 0.3.0 [INFO] tweaked toml for crates.io crate iui 0.3.0 written to /workspace/builds/worker-3/source/Cargo.toml [INFO] running `"/workspace/cargo-home/bin/cargo" "+28742a1146f10a4f09369baad027a464acb7a766" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/workspace/cargo-home/bin/cargo" "+28742a1146f10a4f09369baad027a464acb7a766" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+28742a1146f10a4f09369baad027a464acb7a766" "build" "--frozen"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 64b68ecdfff21e67288656a9059073b6fde314c55127c30857b16d0ef4e9bd84 [INFO] running `"docker" "start" "-a" "64b68ecdfff21e67288656a9059073b6fde314c55127c30857b16d0ef4e9bd84"` [INFO] [stderr] Compiling failure_derive v0.1.7 [INFO] [stderr] Compiling rustc-demangle v0.1.16 [INFO] [stderr] Compiling backtrace-sys v0.1.35 [INFO] [stderr] Compiling cmake v0.1.42 [INFO] [stderr] Compiling syn v1.0.17 [INFO] [stderr] Compiling ui-sys v0.1.3 [INFO] [stderr] Compiling backtrace v0.3.46 [INFO] [stderr] Compiling synstructure v0.12.3 [INFO] [stderr] Compiling failure v0.1.7 [INFO] [stderr] Compiling iui v0.3.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/basic.rs:54:35 [INFO] [stderr] | [INFO] [stderr] 54 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Button)` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/basic.rs:58:40 [INFO] [stderr] | [INFO] [stderr] 58 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Button)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/basic.rs:66:56 [INFO] [stderr] | [INFO] [stderr] 66 | mem::transmute::<*mut c_void, &mut Box>(data)(&mut button) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Button)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/window.rs:92:35 [INFO] [stderr] | [INFO] [stderr] 92 | let mut data: Box bool>> = Box::new(Box::new(|window| { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Window) -> bool` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/window.rs:99:40 [INFO] [stderr] | [INFO] [stderr] 99 | &mut *data as *mut Box bool> as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Window) -> bool` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/window.rs:107:55 [INFO] [stderr] | [INFO] [stderr] 107 | mem::transmute::<*mut c_void, Box bool>>>(data)( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Window) -> bool` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:67:35 [INFO] [stderr] | [INFO] [stderr] 67 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:71:40 [INFO] [stderr] | [INFO] [stderr] 71 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:79:56 [INFO] [stderr] | [INFO] [stderr] 79 | mem::transmute::<*mut c_void, &mut Box>(data)(val); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:96:35 [INFO] [stderr] | [INFO] [stderr] 96 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:100:40 [INFO] [stderr] | [INFO] [stderr] 100 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:108:56 [INFO] [stderr] | [INFO] [stderr] 108 | mem::transmute::<*mut c_void, &mut Box>(data)(val); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:153:35 [INFO] [stderr] | [INFO] [stderr] 153 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(String)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:157:40 [INFO] [stderr] | [INFO] [stderr] 157 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(String)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:167:56 [INFO] [stderr] | [INFO] [stderr] 167 | mem::transmute::<*mut c_void, &mut Box>(data)(string); [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(String)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:189:35 [INFO] [stderr] | [INFO] [stderr] 189 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(String)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:193:40 [INFO] [stderr] | [INFO] [stderr] 193 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(String)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:203:56 [INFO] [stderr] | [INFO] [stderr] 203 | mem::transmute::<*mut c_void, &mut Box>(data)(string); [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(String)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:236:35 [INFO] [stderr] | [INFO] [stderr] 236 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:240:40 [INFO] [stderr] | [INFO] [stderr] 240 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:249:56 [INFO] [stderr] | [INFO] [stderr] 249 | mem::transmute::<*mut c_void, &mut Box>(data)(val); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:279:35 [INFO] [stderr] | [INFO] [stderr] 279 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(bool)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:283:40 [INFO] [stderr] | [INFO] [stderr] 283 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(bool)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:291:56 [INFO] [stderr] | [INFO] [stderr] 291 | mem::transmute::<*mut c_void, &mut Box>(data)(val); [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(bool)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ffi_tools.rs:38:52 [INFO] [stderr] | [INFO] [stderr] 38 | unsafe { mem::transmute::<*mut c_void, Box>>(data)() } [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn FnMut()` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/menus.rs:51:35 [INFO] [stderr] | [INFO] [stderr] 51 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&MenuItem, &Window)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/menus.rs:55:40 [INFO] [stderr] | [INFO] [stderr] 55 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&MenuItem, &Window)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/menus.rs:70:56 [INFO] [stderr] | [INFO] [stderr] 70 | mem::transmute::<*mut c_void, &mut Box>(data)( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&MenuItem, &Window)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ui.rs:138:35 [INFO] [stderr] | [INFO] [stderr] 138 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn FnMut()` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ui.rs:141:40 [INFO] [stderr] | [INFO] [stderr] 141 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn FnMut()` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ui.rs:150:35 [INFO] [stderr] | [INFO] [stderr] 150 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn FnMut()` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ui.rs:153:40 [INFO] [stderr] | [INFO] [stderr] 153 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn FnMut()` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ui.rs:170:26 [INFO] [stderr] | [INFO] [stderr] 170 | callback: Option>, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn FnMut()` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::mem::uninitialized': use `mem::MaybeUninit` instead [INFO] [stderr] --> src/draw/transform.rs:22:30 [INFO] [stderr] | [INFO] [stderr] 22 | let mut matrix = mem::uninitialized(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::sync::atomic::ATOMIC_BOOL_INIT': the `new` function is now preferred [INFO] [stderr] --> src/ffi_tools.rs:4:47 [INFO] [stderr] | [INFO] [stderr] 4 | use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::sync::atomic::ATOMIC_BOOL_INIT': the `new` function is now preferred [INFO] [stderr] --> src/ffi_tools.rs:6:34 [INFO] [stderr] | [INFO] [stderr] 6 | static INITIALIZED: AtomicBool = ATOMIC_BOOL_INIT; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated item: `AtomicBool::new(false)` [INFO] [stderr] [INFO] [stderr] warning: 36 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 28.09s [INFO] running `"docker" "inspect" "64b68ecdfff21e67288656a9059073b6fde314c55127c30857b16d0ef4e9bd84"` [INFO] running `"docker" "rm" "-f" "64b68ecdfff21e67288656a9059073b6fde314c55127c30857b16d0ef4e9bd84"` [INFO] [stdout] 64b68ecdfff21e67288656a9059073b6fde314c55127c30857b16d0ef4e9bd84 [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+28742a1146f10a4f09369baad027a464acb7a766" "test" "--frozen" "--no-run"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 920fb561522fc2e82b504b2b75f9d95043206610355d1d75b8118d02bff86d86 [INFO] running `"docker" "start" "-a" "920fb561522fc2e82b504b2b75f9d95043206610355d1d75b8118d02bff86d86"` [INFO] [stderr] Compiling iui v0.3.0 (/opt/rustwide/workdir) [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/basic.rs:54:35 [INFO] [stderr] | [INFO] [stderr] 54 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Button)` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/basic.rs:58:40 [INFO] [stderr] | [INFO] [stderr] 58 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Button)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/basic.rs:66:56 [INFO] [stderr] | [INFO] [stderr] 66 | mem::transmute::<*mut c_void, &mut Box>(data)(&mut button) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Button)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/window.rs:92:35 [INFO] [stderr] | [INFO] [stderr] 92 | let mut data: Box bool>> = Box::new(Box::new(|window| { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Window) -> bool` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/window.rs:99:40 [INFO] [stderr] | [INFO] [stderr] 99 | &mut *data as *mut Box bool> as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Window) -> bool` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/window.rs:107:55 [INFO] [stderr] | [INFO] [stderr] 107 | mem::transmute::<*mut c_void, Box bool>>>(data)( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Window) -> bool` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:67:35 [INFO] [stderr] | [INFO] [stderr] 67 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:71:40 [INFO] [stderr] | [INFO] [stderr] 71 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:79:56 [INFO] [stderr] | [INFO] [stderr] 79 | mem::transmute::<*mut c_void, &mut Box>(data)(val); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:96:35 [INFO] [stderr] | [INFO] [stderr] 96 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:100:40 [INFO] [stderr] | [INFO] [stderr] 100 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:108:56 [INFO] [stderr] | [INFO] [stderr] 108 | mem::transmute::<*mut c_void, &mut Box>(data)(val); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:153:35 [INFO] [stderr] | [INFO] [stderr] 153 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(String)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:157:40 [INFO] [stderr] | [INFO] [stderr] 157 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(String)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:167:56 [INFO] [stderr] | [INFO] [stderr] 167 | mem::transmute::<*mut c_void, &mut Box>(data)(string); [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(String)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:189:35 [INFO] [stderr] | [INFO] [stderr] 189 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(String)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:193:40 [INFO] [stderr] | [INFO] [stderr] 193 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(String)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:203:56 [INFO] [stderr] | [INFO] [stderr] 203 | mem::transmute::<*mut c_void, &mut Box>(data)(string); [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(String)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:236:35 [INFO] [stderr] | [INFO] [stderr] 236 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:240:40 [INFO] [stderr] | [INFO] [stderr] 240 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:249:56 [INFO] [stderr] | [INFO] [stderr] 249 | mem::transmute::<*mut c_void, &mut Box>(data)(val); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:279:35 [INFO] [stderr] | [INFO] [stderr] 279 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(bool)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:283:40 [INFO] [stderr] | [INFO] [stderr] 283 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(bool)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:291:56 [INFO] [stderr] | [INFO] [stderr] 291 | mem::transmute::<*mut c_void, &mut Box>(data)(val); [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(bool)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ffi_tools.rs:38:52 [INFO] [stderr] | [INFO] [stderr] 38 | unsafe { mem::transmute::<*mut c_void, Box>>(data)() } [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn FnMut()` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/menus.rs:51:35 [INFO] [stderr] | [INFO] [stderr] 51 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&MenuItem, &Window)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/menus.rs:55:40 [INFO] [stderr] | [INFO] [stderr] 55 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&MenuItem, &Window)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/menus.rs:70:56 [INFO] [stderr] | [INFO] [stderr] 70 | mem::transmute::<*mut c_void, &mut Box>(data)( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&MenuItem, &Window)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ui.rs:138:35 [INFO] [stderr] | [INFO] [stderr] 138 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn FnMut()` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ui.rs:141:40 [INFO] [stderr] | [INFO] [stderr] 141 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn FnMut()` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ui.rs:150:35 [INFO] [stderr] | [INFO] [stderr] 150 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn FnMut()` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ui.rs:153:40 [INFO] [stderr] | [INFO] [stderr] 153 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn FnMut()` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ui.rs:170:26 [INFO] [stderr] | [INFO] [stderr] 170 | callback: Option>, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn FnMut()` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::mem::uninitialized': use `mem::MaybeUninit` instead [INFO] [stderr] --> src/draw/transform.rs:22:30 [INFO] [stderr] | [INFO] [stderr] 22 | let mut matrix = mem::uninitialized(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::sync::atomic::ATOMIC_BOOL_INIT': the `new` function is now preferred [INFO] [stderr] --> src/ffi_tools.rs:4:47 [INFO] [stderr] | [INFO] [stderr] 4 | use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::sync::atomic::ATOMIC_BOOL_INIT': the `new` function is now preferred [INFO] [stderr] --> src/ffi_tools.rs:6:34 [INFO] [stderr] | [INFO] [stderr] 6 | static INITIALIZED: AtomicBool = ATOMIC_BOOL_INIT; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated item: `AtomicBool::new(false)` [INFO] [stderr] [INFO] [stderr] warning: 36 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/basic.rs:54:35 [INFO] [stderr] | [INFO] [stderr] 54 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Button)` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/basic.rs:58:40 [INFO] [stderr] | [INFO] [stderr] 58 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Button)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/basic.rs:66:56 [INFO] [stderr] | [INFO] [stderr] 66 | mem::transmute::<*mut c_void, &mut Box>(data)(&mut button) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Button)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/window.rs:92:35 [INFO] [stderr] | [INFO] [stderr] 92 | let mut data: Box bool>> = Box::new(Box::new(|window| { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Window) -> bool` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/window.rs:99:40 [INFO] [stderr] | [INFO] [stderr] 99 | &mut *data as *mut Box bool> as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Window) -> bool` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/window.rs:107:55 [INFO] [stderr] | [INFO] [stderr] 107 | mem::transmute::<*mut c_void, Box bool>>>(data)( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Window) -> bool` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:67:35 [INFO] [stderr] | [INFO] [stderr] 67 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:71:40 [INFO] [stderr] | [INFO] [stderr] 71 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:79:56 [INFO] [stderr] | [INFO] [stderr] 79 | mem::transmute::<*mut c_void, &mut Box>(data)(val); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:96:35 [INFO] [stderr] | [INFO] [stderr] 96 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:100:40 [INFO] [stderr] | [INFO] [stderr] 100 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:108:56 [INFO] [stderr] | [INFO] [stderr] 108 | mem::transmute::<*mut c_void, &mut Box>(data)(val); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:153:35 [INFO] [stderr] | [INFO] [stderr] 153 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(String)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:157:40 [INFO] [stderr] | [INFO] [stderr] 157 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(String)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:167:56 [INFO] [stderr] | [INFO] [stderr] 167 | mem::transmute::<*mut c_void, &mut Box>(data)(string); [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(String)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:189:35 [INFO] [stderr] | [INFO] [stderr] 189 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(String)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:193:40 [INFO] [stderr] | [INFO] [stderr] 193 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(String)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:203:56 [INFO] [stderr] | [INFO] [stderr] 203 | mem::transmute::<*mut c_void, &mut Box>(data)(string); [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(String)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:236:35 [INFO] [stderr] | [INFO] [stderr] 236 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:240:40 [INFO] [stderr] | [INFO] [stderr] 240 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:249:56 [INFO] [stderr] | [INFO] [stderr] 249 | mem::transmute::<*mut c_void, &mut Box>(data)(val); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:279:35 [INFO] [stderr] | [INFO] [stderr] 279 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(bool)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:283:40 [INFO] [stderr] | [INFO] [stderr] 283 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(bool)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:291:56 [INFO] [stderr] | [INFO] [stderr] 291 | mem::transmute::<*mut c_void, &mut Box>(data)(val); [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(bool)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ffi_tools.rs:38:52 [INFO] [stderr] | [INFO] [stderr] 38 | unsafe { mem::transmute::<*mut c_void, Box>>(data)() } [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn FnMut()` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/menus.rs:51:35 [INFO] [stderr] | [INFO] [stderr] 51 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&MenuItem, &Window)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/menus.rs:55:40 [INFO] [stderr] | [INFO] [stderr] 55 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&MenuItem, &Window)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/menus.rs:70:56 [INFO] [stderr] | [INFO] [stderr] 70 | mem::transmute::<*mut c_void, &mut Box>(data)( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&MenuItem, &Window)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ui.rs:138:35 [INFO] [stderr] | [INFO] [stderr] 138 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn FnMut()` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ui.rs:141:40 [INFO] [stderr] | [INFO] [stderr] 141 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn FnMut()` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ui.rs:150:35 [INFO] [stderr] | [INFO] [stderr] 150 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn FnMut()` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ui.rs:153:40 [INFO] [stderr] | [INFO] [stderr] 153 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn FnMut()` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ui.rs:170:26 [INFO] [stderr] | [INFO] [stderr] 170 | callback: Option>, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn FnMut()` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> examples/files.rs:35:129 [INFO] [stderr] | [INFO] [stderr] 35 | Err(why) => { window.modal_err(&ui, "I/O Error", &format!("Could not open file {}: {}", path.display(), why.description())); return; } [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> examples/files.rs:39:133 [INFO] [stderr] | [INFO] [stderr] 39 | Err(why) => { window.modal_err(&ui, "I/O Error", &format!("Could not write to file {}: {}", path.display(), why.description())); return; } [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::mem::uninitialized': use `mem::MaybeUninit` instead [INFO] [stderr] --> src/draw/transform.rs:22:30 [INFO] [stderr] | [INFO] [stderr] 22 | let mut matrix = mem::uninitialized(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::sync::atomic::ATOMIC_BOOL_INIT': the `new` function is now preferred [INFO] [stderr] --> src/ffi_tools.rs:4:47 [INFO] [stderr] | [INFO] [stderr] 4 | use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::sync::atomic::ATOMIC_BOOL_INIT': the `new` function is now preferred [INFO] [stderr] --> src/ffi_tools.rs:6:34 [INFO] [stderr] | [INFO] [stderr] 6 | static INITIALIZED: AtomicBool = ATOMIC_BOOL_INIT; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated item: `AtomicBool::new(false)` [INFO] [stderr] [INFO] [stderr] warning: 2 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: 36 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 3.95s [INFO] running `"docker" "inspect" "920fb561522fc2e82b504b2b75f9d95043206610355d1d75b8118d02bff86d86"` [INFO] running `"docker" "rm" "-f" "920fb561522fc2e82b504b2b75f9d95043206610355d1d75b8118d02bff86d86"` [INFO] [stdout] 920fb561522fc2e82b504b2b75f9d95043206610355d1d75b8118d02bff86d86 [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+28742a1146f10a4f09369baad027a464acb7a766" "test" "--frozen"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 36342927029c683a6b757ecc36fcc9ae1cc810d2de1d5e76bece13e4a79f1406 [INFO] running `"docker" "start" "-a" "36342927029c683a6b757ecc36fcc9ae1cc810d2de1d5e76bece13e4a79f1406"` [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/basic.rs:54:35 [INFO] [stderr] | [INFO] [stderr] 54 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Button)` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/basic.rs:54:35 [INFO] [stderr] | [INFO] [stderr] 54 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Button)` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/basic.rs:58:40 [INFO] [stderr] | [INFO] [stderr] 58 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Button)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/basic.rs:66:56 [INFO] [stderr] | [INFO] [stderr] 66 | mem::transmute::<*mut c_void, &mut Box>(data)(&mut button) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Button)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/window.rs:92:35 [INFO] [stderr] | [INFO] [stderr] 92 | let mut data: Box bool>> = Box::new(Box::new(|window| { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Window) -> bool` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/window.rs:99:40 [INFO] [stderr] | [INFO] [stderr] 99 | &mut *data as *mut Box bool> as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Window) -> bool` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/window.rs:107:55 [INFO] [stderr] | [INFO] [stderr] 107 | mem::transmute::<*mut c_void, Box bool>>>(data)( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Window) -> bool` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:67:35 [INFO] [stderr] | [INFO] [stderr] 67 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:71:40 [INFO] [stderr] | [INFO] [stderr] 71 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:79:56 [INFO] [stderr] | [INFO] [stderr] 79 | mem::transmute::<*mut c_void, &mut Box>(data)(val); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:96:35 [INFO] [stderr] | [INFO] [stderr] 96 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:100:40 [INFO] [stderr] | [INFO] [stderr] 100 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:108:56 [INFO] [stderr] | [INFO] [stderr] 108 | mem::transmute::<*mut c_void, &mut Box>(data)(val); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:153:35 [INFO] [stderr] | [INFO] [stderr] 153 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(String)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:157:40 [INFO] [stderr] | [INFO] [stderr] 157 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(String)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:167:56 [INFO] [stderr] | [INFO] [stderr] 167 | mem::transmute::<*mut c_void, &mut Box>(data)(string); [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(String)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:189:35 [INFO] [stderr] | [INFO] [stderr] 189 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(String)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:193:40 [INFO] [stderr] | [INFO] [stderr] 193 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(String)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:203:56 [INFO] [stderr] | [INFO] [stderr] 203 | mem::transmute::<*mut c_void, &mut Box>(data)(string); [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(String)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:236:35 [INFO] [stderr] | [INFO] [stderr] 236 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:240:40 [INFO] [stderr] | [INFO] [stderr] 240 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:249:56 [INFO] [stderr] | [INFO] [stderr] 249 | mem::transmute::<*mut c_void, &mut Box>(data)(val); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:279:35 [INFO] [stderr] | [INFO] [stderr] 279 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(bool)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:283:40 [INFO] [stderr] | [INFO] [stderr] 283 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(bool)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:291:56 [INFO] [stderr] | [INFO] [stderr] 291 | mem::transmute::<*mut c_void, &mut Box>(data)(val); [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(bool)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ffi_tools.rs:38:52 [INFO] [stderr] | [INFO] [stderr] 38 | unsafe { mem::transmute::<*mut c_void, Box>>(data)() } [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn FnMut()` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/menus.rs:51:35 [INFO] [stderr] | [INFO] [stderr] 51 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&MenuItem, &Window)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/menus.rs:55:40 [INFO] [stderr] | [INFO] [stderr] 55 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&MenuItem, &Window)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/menus.rs:70:56 [INFO] [stderr] | [INFO] [stderr] 70 | mem::transmute::<*mut c_void, &mut Box>(data)( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&MenuItem, &Window)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ui.rs:138:35 [INFO] [stderr] | [INFO] [stderr] 138 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn FnMut()` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ui.rs:141:40 [INFO] [stderr] | [INFO] [stderr] 141 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn FnMut()` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ui.rs:150:35 [INFO] [stderr] | [INFO] [stderr] 150 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn FnMut()` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ui.rs:153:40 [INFO] [stderr] | [INFO] [stderr] 153 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn FnMut()` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ui.rs:170:26 [INFO] [stderr] | [INFO] [stderr] 170 | callback: Option>, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn FnMut()` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::mem::uninitialized': use `mem::MaybeUninit` instead [INFO] [stderr] --> src/draw/transform.rs:22:30 [INFO] [stderr] | [INFO] [stderr] 22 | let mut matrix = mem::uninitialized(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::sync::atomic::ATOMIC_BOOL_INIT': the `new` function is now preferred [INFO] [stderr] --> src/ffi_tools.rs:4:47 [INFO] [stderr] | [INFO] [stderr] 4 | use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::sync::atomic::ATOMIC_BOOL_INIT': the `new` function is now preferred [INFO] [stderr] --> src/ffi_tools.rs:6:34 [INFO] [stderr] | [INFO] [stderr] 6 | static INITIALIZED: AtomicBool = ATOMIC_BOOL_INIT; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated item: `AtomicBool::new(false)` [INFO] [stderr] [INFO] [stderr] warning: 36 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/basic.rs:58:40 [INFO] [stderr] | [INFO] [stderr] 58 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Button)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/basic.rs:66:56 [INFO] [stderr] | [INFO] [stderr] 66 | mem::transmute::<*mut c_void, &mut Box>(data)(&mut button) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Button)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/window.rs:92:35 [INFO] [stderr] | [INFO] [stderr] 92 | let mut data: Box bool>> = Box::new(Box::new(|window| { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Window) -> bool` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/window.rs:99:40 [INFO] [stderr] | [INFO] [stderr] 99 | &mut *data as *mut Box bool> as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Window) -> bool` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/window.rs:107:55 [INFO] [stderr] | [INFO] [stderr] 107 | mem::transmute::<*mut c_void, Box bool>>>(data)( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&mut Window) -> bool` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:67:35 [INFO] [stderr] | [INFO] [stderr] 67 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:71:40 [INFO] [stderr] | [INFO] [stderr] 71 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:79:56 [INFO] [stderr] | [INFO] [stderr] 79 | mem::transmute::<*mut c_void, &mut Box>(data)(val); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:96:35 [INFO] [stderr] | [INFO] [stderr] 96 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:100:40 [INFO] [stderr] | [INFO] [stderr] 100 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:108:56 [INFO] [stderr] | [INFO] [stderr] 108 | mem::transmute::<*mut c_void, &mut Box>(data)(val); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:153:35 [INFO] [stderr] | [INFO] [stderr] 153 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(String)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:157:40 [INFO] [stderr] | [INFO] [stderr] 157 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(String)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:167:56 [INFO] [stderr] | [INFO] [stderr] 167 | mem::transmute::<*mut c_void, &mut Box>(data)(string); [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(String)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:189:35 [INFO] [stderr] | [INFO] [stderr] 189 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(String)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:193:40 [INFO] [stderr] | [INFO] [stderr] 193 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(String)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:203:56 [INFO] [stderr] | [INFO] [stderr] 203 | mem::transmute::<*mut c_void, &mut Box>(data)(string); [INFO] [stderr] | ^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(String)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:236:35 [INFO] [stderr] | [INFO] [stderr] 236 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:240:40 [INFO] [stderr] | [INFO] [stderr] 240 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:249:56 [INFO] [stderr] | [INFO] [stderr] 249 | mem::transmute::<*mut c_void, &mut Box>(data)(val); [INFO] [stderr] | ^^^^^^^^^^ help: use `dyn`: `dyn FnMut(i64)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:279:35 [INFO] [stderr] | [INFO] [stderr] 279 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(bool)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:283:40 [INFO] [stderr] | [INFO] [stderr] 283 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(bool)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/controls/entry.rs:291:56 [INFO] [stderr] | [INFO] [stderr] 291 | mem::transmute::<*mut c_void, &mut Box>(data)(val); [INFO] [stderr] | ^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(bool)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ffi_tools.rs:38:52 [INFO] [stderr] | [INFO] [stderr] 38 | unsafe { mem::transmute::<*mut c_void, Box>>(data)() } [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn FnMut()` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/menus.rs:51:35 [INFO] [stderr] | [INFO] [stderr] 51 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&MenuItem, &Window)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/menus.rs:55:40 [INFO] [stderr] | [INFO] [stderr] 55 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&MenuItem, &Window)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/menus.rs:70:56 [INFO] [stderr] | [INFO] [stderr] 70 | mem::transmute::<*mut c_void, &mut Box>(data)( [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn FnMut(&MenuItem, &Window)` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ui.rs:138:35 [INFO] [stderr] | [INFO] [stderr] 138 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn FnMut()` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ui.rs:141:40 [INFO] [stderr] | [INFO] [stderr] 141 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn FnMut()` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ui.rs:150:35 [INFO] [stderr] | [INFO] [stderr] 150 | let mut data: Box> = Box::new(Box::new(callback)); [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn FnMut()` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ui.rs:153:40 [INFO] [stderr] | [INFO] [stderr] 153 | &mut *data as *mut Box as *mut c_void, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn FnMut()` [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/ui.rs:170:26 [INFO] [stderr] | [INFO] [stderr] 170 | callback: Option>, [INFO] [stderr] | ^^^^^^^ help: use `dyn`: `dyn FnMut()` [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::mem::uninitialized': use `mem::MaybeUninit` instead [INFO] [stderr] --> src/draw/transform.rs:22:30 [INFO] [stderr] | [INFO] [stderr] 22 | let mut matrix = mem::uninitialized(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::sync::atomic::ATOMIC_BOOL_INIT': the `new` function is now preferred [INFO] [stderr] --> src/ffi_tools.rs:4:47 [INFO] [stderr] | [INFO] [stderr] 4 | use std::sync::atomic::{AtomicBool, Ordering, ATOMIC_BOOL_INIT}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::sync::atomic::ATOMIC_BOOL_INIT': the `new` function is now preferred [INFO] [stderr] --> src/ffi_tools.rs:6:34 [INFO] [stderr] | [INFO] [stderr] 6 | static INITIALIZED: AtomicBool = ATOMIC_BOOL_INIT; [INFO] [stderr] | ^^^^^^^^^^^^^^^^ help: replace the use of the deprecated item: `AtomicBool::new(false)` [INFO] [stderr] [INFO] [stderr] warning: 36 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> examples/files.rs:35:129 [INFO] [stderr] | [INFO] [stderr] 35 | Err(why) => { window.modal_err(&ui, "I/O Error", &format!("Could not open file {}: {}", path.display(), why.description())); return; } [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated item 'std::error::Error::description': use the Display impl or to_string() [INFO] [stderr] --> examples/files.rs:39:133 [INFO] [stderr] | [INFO] [stderr] 39 | Err(why) => { window.modal_err(&ui, "I/O Error", &format!("Could not write to file {}: {}", path.display(), why.description())); return; } [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: 2 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.30s [INFO] [stderr] Running /opt/rustwide/target/debug/deps/iui-94d96170072374cb [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] [stderr] Doc-tests iui [INFO] [stdout] [INFO] [stdout] running 2 tests [INFO] [stdout] test src/ui.rs - ui::UI::init (line 52) ... FAILED [INFO] [stdout] test src/ui.rs - ui::UI::queue_main (line 127) ... FAILED [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- src/ui.rs - ui::UI::init (line 52) stdout ---- [INFO] [stdout] Test executable failed (exit code 101). [INFO] [stdout] [INFO] [stdout] stderr: [INFO] [stdout] Unable to init server: Could not connect: Connection refused [INFO] [stdout] thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: FailedInitError { error: "Cannot open display: " }', src/ui.rs:6:15 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x561d92c3d0f4 - backtrace::backtrace::libunwind::trace::hbb4ce8c04526962e [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] 1: 0x561d92c3d0f4 - backtrace::backtrace::trace_unsynchronized::h79251c088e7be038 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] 2: 0x561d92c3d0f4 - std::sys_common::backtrace::_print_fmt::h6b0ea30a9223acae [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] 3: 0x561d92c3d0f4 - ::fmt::h4d51ef07ce58e54b [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] 4: 0x561d92c5af6c - core::fmt::write::he16b9c1345d8565e [INFO] [stdout] at src/libcore/fmt/mod.rs:1069 [INFO] [stdout] 5: 0x561d92c3b923 - std::io::Write::write_fmt::h35d873b9ce1f02a8 [INFO] [stdout] at src/libstd/io/mod.rs:1504 [INFO] [stdout] 6: 0x561d92c3f695 - std::sys_common::backtrace::_print::h9288fa7d9f6629cb [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stdout] 7: 0x561d92c3f695 - std::sys_common::backtrace::print::h82e606e62781d8af [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stdout] 8: 0x561d92c3f695 - std::panicking::default_hook::{{closure}}::h1fe350ecbf7604e4 [INFO] [stdout] at src/libstd/panicking.rs:198 [INFO] [stdout] 9: 0x561d92c3f3d2 - std::panicking::default_hook::h1b8b42953fdc841d [INFO] [stdout] at src/libstd/panicking.rs:218 [INFO] [stdout] 10: 0x561d92c3fca2 - std::panicking::rust_panic_with_hook::he73826f4bb75a21e [INFO] [stdout] at src/libstd/panicking.rs:511 [INFO] [stdout] 11: 0x561d92c3f88b - rust_begin_unwind [INFO] [stdout] at src/libstd/panicking.rs:419 [INFO] [stdout] 12: 0x561d92c5a351 - core::panicking::panic_fmt::hc8f9a0b2af5fb585 [INFO] [stdout] at src/libcore/panicking.rs:111 [INFO] [stdout] 13: 0x561d92c5a173 - core::option::expect_none_failed::ha34d57526cca3063 [INFO] [stdout] at src/libcore/option.rs:1268 [INFO] [stdout] 14: 0x561d92c2e273 - core::result::Result::unwrap::hcad9fe4ab52ab85d [INFO] [stdout] 15: 0x561d92c2e327 - rust_out::main::hce5147e828914a17 [INFO] [stdout] 16: 0x561d92c2e0a3 - std::rt::lang_start::{{closure}}::hf139de0a36e0b662 [INFO] [stdout] 17: 0x561d92c400e8 - std::rt::lang_start_internal::{{closure}}::h985f9ad0467016f1 [INFO] [stdout] at src/libstd/rt.rs:52 [INFO] [stdout] 18: 0x561d92c400e8 - std::panicking::try::do_call::hbcbbc645883681bb [INFO] [stdout] at src/libstd/panicking.rs:331 [INFO] [stdout] 19: 0x561d92c400e8 - std::panicking::try::h250f86dc8ee6d054 [INFO] [stdout] at src/libstd/panicking.rs:274 [INFO] [stdout] 20: 0x561d92c400e8 - std::panic::catch_unwind::h58d26ced09bde6c3 [INFO] [stdout] at src/libstd/panic.rs:394 [INFO] [stdout] 21: 0x561d92c400e8 - std::rt::lang_start_internal::h7de51dd9f16af454 [INFO] [stdout] at src/libstd/rt.rs:51 [INFO] [stdout] 22: 0x561d92c2e088 - std::rt::lang_start::hf4fc85a2e0dfc965 [INFO] [stdout] 23: 0x561d92c2e42b - main [INFO] [stdout] 24: 0x7f60aa962b97 - __libc_start_main [INFO] [stdout] 25: 0x561d92c2df6a - _start [INFO] [stdout] 26: 0x0 - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] ---- src/ui.rs - ui::UI::queue_main (line 127) stdout ---- [INFO] [stdout] Test executable failed (exit code 101). [INFO] [stdout] [INFO] [stdout] stderr: [INFO] [stdout] Unable to init server: Could not connect: Connection refused [INFO] [stdout] thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: FailedInitError { error: "Cannot open display: " }', src/ui.rs:6:10 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x563fdf3849f4 - backtrace::backtrace::libunwind::trace::hbb4ce8c04526962e [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 [INFO] [stdout] 1: 0x563fdf3849f4 - backtrace::backtrace::trace_unsynchronized::h79251c088e7be038 [INFO] [stdout] at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 [INFO] [stdout] 2: 0x563fdf3849f4 - std::sys_common::backtrace::_print_fmt::h6b0ea30a9223acae [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:78 [INFO] [stdout] 3: 0x563fdf3849f4 - ::fmt::h4d51ef07ce58e54b [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:59 [INFO] [stdout] 4: 0x563fdf3a286c - core::fmt::write::he16b9c1345d8565e [INFO] [stdout] at src/libcore/fmt/mod.rs:1069 [INFO] [stdout] 5: 0x563fdf382f43 - std::io::Write::write_fmt::h35d873b9ce1f02a8 [INFO] [stdout] at src/libstd/io/mod.rs:1504 [INFO] [stdout] 6: 0x563fdf386f95 - std::sys_common::backtrace::_print::h9288fa7d9f6629cb [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:62 [INFO] [stdout] 7: 0x563fdf386f95 - std::sys_common::backtrace::print::h82e606e62781d8af [INFO] [stdout] at src/libstd/sys_common/backtrace.rs:49 [INFO] [stdout] 8: 0x563fdf386f95 - std::panicking::default_hook::{{closure}}::h1fe350ecbf7604e4 [INFO] [stdout] at src/libstd/panicking.rs:198 [INFO] [stdout] 9: 0x563fdf386cd2 - std::panicking::default_hook::h1b8b42953fdc841d [INFO] [stdout] at src/libstd/panicking.rs:218 [INFO] [stdout] 10: 0x563fdf3875a2 - std::panicking::rust_panic_with_hook::he73826f4bb75a21e [INFO] [stdout] at src/libstd/panicking.rs:511 [INFO] [stdout] 11: 0x563fdf38718b - rust_begin_unwind [INFO] [stdout] at src/libstd/panicking.rs:419 [INFO] [stdout] 12: 0x563fdf3a1c51 - core::panicking::panic_fmt::hc8f9a0b2af5fb585 [INFO] [stdout] at src/libcore/panicking.rs:111 [INFO] [stdout] 13: 0x563fdf3a1a73 - core::option::expect_none_failed::ha34d57526cca3063 [INFO] [stdout] at src/libcore/option.rs:1268 [INFO] [stdout] 14: 0x563fdf3739f3 - core::result::Result::unwrap::hcad9fe4ab52ab85d [INFO] [stdout] 15: 0x563fdf373d11 - rust_out::main::hce5147e828914a17 [INFO] [stdout] 16: 0x563fdf3736e3 - std::rt::lang_start::{{closure}}::hf139de0a36e0b662 [INFO] [stdout] 17: 0x563fdf3879e8 - std::rt::lang_start_internal::{{closure}}::h985f9ad0467016f1 [INFO] [stdout] at src/libstd/rt.rs:52 [INFO] [stdout] 18: 0x563fdf3879e8 - std::panicking::try::do_call::hbcbbc645883681bb [INFO] [stdout] at src/libstd/panicking.rs:331 [INFO] [stdout] 19: 0x563fdf3879e8 - std::panicking::try::h250f86dc8ee6d054 [INFO] [stdout] at src/libstd/panicking.rs:274 [INFO] [stdout] 20: 0x563fdf3879e8 - std::panic::catch_unwind::h58d26ced09bde6c3 [INFO] [stdout] at src/libstd/panic.rs:394 [INFO] [stdout] 21: 0x563fdf3879e8 - std::rt::lang_start_internal::h7de51dd9f16af454 [INFO] [stdout] at src/libstd/rt.rs:51 [INFO] [stdout] 22: 0x563fdf3736c8 - std::rt::lang_start::hf4fc85a2e0dfc965 [INFO] [stdout] 23: 0x563fdf373e2b - main [INFO] [stdout] 24: 0x7f0d42e59b97 - __libc_start_main [INFO] [stdout] 25: 0x563fdf37340a - _start [INFO] [stdout] 26: 0x0 - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] src/ui.rs - ui::UI::init (line 52) [INFO] [stdout] src/ui.rs - ui::UI::queue_main (line 127) [INFO] [stdout] [INFO] [stdout] test result: FAILED. 0 passed; 2 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] [stderr] error: test failed, to rerun pass '--doc' [INFO] running `"docker" "inspect" "36342927029c683a6b757ecc36fcc9ae1cc810d2de1d5e76bece13e4a79f1406"` [INFO] running `"docker" "rm" "-f" "36342927029c683a6b757ecc36fcc9ae1cc810d2de1d5e76bece13e4a79f1406"` [INFO] [stdout] 36342927029c683a6b757ecc36fcc9ae1cc810d2de1d5e76bece13e4a79f1406