[INFO] fetching crate zaplib 0.0.3... [INFO] checking zaplib-0.0.3 against try#ccf408f4326a858c00dd845a64a86b16f360a801 for pr-129466-2 [INFO] extracting crate zaplib 0.0.3 into /workspace/builds/worker-0-tc2/source [INFO] validating manifest of crates.io crate zaplib 0.0.3 on toolchain ccf408f4326a858c00dd845a64a86b16f360a801 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate zaplib 0.0.3 [INFO] finished tweaking crates.io crate zaplib 0.0.3 [INFO] tweaked toml for crates.io crate zaplib 0.0.3 written to /workspace/builds/worker-0-tc2/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Locking 108 packages to latest compatible versions [INFO] [stderr] Adding bindgen v0.59.2 (available: v0.70.1) [INFO] [stderr] Adding bitflags v1.3.2 (available: v2.6.0) [INFO] [stderr] Adding clap v2.34.0 (available: v4.5.18) [INFO] [stderr] Adding env_logger v0.9.3 (available: v0.11.5) [INFO] [stderr] Adding hermit-abi v0.1.19 (available: v0.4.0) [INFO] [stderr] Adding idna v0.5.0 (available: v1.0.2) [INFO] [stderr] Adding linux-raw-sys v0.4.14 (available: v0.6.5) [INFO] [stderr] Adding peeking_take_while v0.1.2 (available: v1.0.0) [INFO] [stderr] Adding rustc-hash v1.1.0 (available: v2.0.0) [INFO] [stderr] Adding strsim v0.8.0 (available: v0.11.1) [INFO] [stderr] Adding textwrap v0.11.0 (available: v0.16.1) [INFO] [stderr] Adding time v0.1.45 (available: v0.3.36) [INFO] [stderr] Adding unicode-width v0.1.14 (available: v0.2.0) [INFO] [stderr] Adding wasi v0.10.0+wasi-snapshot-preview1 (available: v0.10.2+wasi-snapshot-preview1) [INFO] [stderr] Adding wasi v0.11.0+wasi-snapshot-preview1 (available: v0.13.2+wasi-0.2.1) [INFO] [stderr] Adding which v4.4.2 (available: v6.0.3) [INFO] [stderr] Adding widestring v0.4.3 (available: v1.1.0) [INFO] [stderr] Adding windows-sys v0.52.0 (available: v0.59.0) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 652721e60cc5f2284a263e46cc0f434d1082bc51d3502890dd2d4c426ba4be39 [INFO] running `Command { std: "docker" "start" "-a" "652721e60cc5f2284a263e46cc0f434d1082bc51d3502890dd2d4c426ba4be39", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "652721e60cc5f2284a263e46cc0f434d1082bc51d3502890dd2d4c426ba4be39", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "652721e60cc5f2284a263e46cc0f434d1082bc51d3502890dd2d4c426ba4be39", kill_on_drop: false }` [INFO] [stdout] 652721e60cc5f2284a263e46cc0f434d1082bc51d3502890dd2d4c426ba4be39 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] a4fdbaccfcd60e48f83b9ed64ab86b032f9c2aaeb76d1800431d5df7d17c03b5 [INFO] running `Command { std: "docker" "start" "-a" "a4fdbaccfcd60e48f83b9ed64ab86b032f9c2aaeb76d1800431d5df7d17c03b5", kill_on_drop: false }` [INFO] [stderr] Copying to /tmp/fixit [INFO] [stderr] Running `cargo fix --edition` [INFO] [stderr] Migrating Cargo.toml from 2021 edition to 2024 [INFO] [stderr] Fixed Cargo.toml (2 fixes) [INFO] [stderr] Compiling proc-macro2 v1.0.86 [INFO] [stderr] Compiling unicode-ident v1.0.13 [INFO] [stderr] Compiling libc v0.2.159 [INFO] [stderr] Compiling khronos_api v3.1.0 [INFO] [stderr] Checking cfg-if v1.0.0 [INFO] [stderr] Checking tinyvec_macros v0.1.1 [INFO] [stderr] Checking byteorder v1.5.0 [INFO] [stderr] Compiling log v0.4.22 [INFO] [stderr] Compiling xml-rs v0.8.22 [INFO] [stderr] Checking percent-encoding v2.3.1 [INFO] [stderr] Checking unicode-bidi v0.3.15 [INFO] [stderr] Compiling zaplib_x11_sys v0.0.3 [INFO] [stderr] Checking adler2 v2.0.0 [INFO] [stderr] Compiling zaplib_glx_sys v0.0.3 [INFO] [stderr] Checking once_cell v1.19.0 [INFO] [stderr] Checking crc32fast v1.4.2 [INFO] [stderr] Checking tinyvec v1.8.0 [INFO] [stderr] Checking base64 v0.22.1 [INFO] [stderr] Checking form_urlencoded v1.2.1 [INFO] [stderr] Checking zaplib_shader_compiler v0.0.3 [INFO] [stderr] Checking miniz_oxide v0.8.0 [INFO] [stderr] Checking zaplib_vector v0.0.3 [INFO] [stderr] Checking flate2 v1.0.34 [INFO] [stderr] Compiling gl_generator v0.14.0 [INFO] [stderr] Compiling quote v1.0.37 [INFO] [stderr] Checking unicode-normalization v0.1.24 [INFO] [stderr] Compiling syn v2.0.77 [INFO] [stderr] Checking getrandom v0.2.15 [INFO] [stderr] Checking time v0.1.45 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Compiling gl v0.14.0 [INFO] [stderr] Checking idna v0.5.0 [INFO] [stderr] Checking url v2.5.2 [INFO] [stderr] Checking ureq v2.10.1 [INFO] [stderr] Compiling zerocopy-derive v0.7.35 [INFO] [stderr] Checking zerocopy v0.7.35 [INFO] [stderr] Checking ppv-lite86 v0.2.20 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking zaplib v0.0.3 (/tmp/fixit) [INFO] [stderr] Migrating src/lib.rs from 2021 edition to 2024 [INFO] [stderr] warning: failed to automatically apply fixes suggested by rustc to crate `zaplib` [INFO] [stderr] [INFO] [stderr] after fixes were automatically applied the compiler reported errors within these files: [INFO] [stderr] [INFO] [stderr] * src/macros.rs [INFO] [stderr] [INFO] [stderr] This likely indicates a bug in either rustc or cargo itself, [INFO] [stderr] and we would appreciate a bug report! You're likely to see [INFO] [stderr] a number of compiler warnings after this message which cargo [INFO] [stderr] attempted to fix but failed. If you could open an issue at [INFO] [stderr] https://github.com/rust-lang/rust/issues [INFO] [stderr] quoting the full output of this command we'd be very appreciative! [INFO] [stderr] Note that you may be able to make some more progress in the near-term [INFO] [stderr] fixing code with the `--broken-code` flag [INFO] [stderr] [INFO] [stderr] The following errors were reported: [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/macros.rs:167:7 [INFO] [stderr] | [INFO] [stderr] 167 | ( $ code: expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error: aborting due to 1 previous error [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0658`. [INFO] [stderr] Original diagnostics will follow. [INFO] [stderr] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/universal_rand.rs:18:31 [INFO] [stdout] | [INFO] [stdout] 18 | return rand::thread_rng().gen(); [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] = note: `--force-warn keyword-idents-2024` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/macros.rs:167:15 [INFO] [stdout] | [INFO] [stdout] 167 | ( $ code: expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] = note: `--force-warn edition-2024-expr-fragment-specifier` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 167 | ( $ code: expr_2021 ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std_shader::*` [INFO] [stdout] --> src/lib.rs:132:9 [INFO] [stdout] | [INFO] [stdout] 132 | pub use std_shader::*; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `layout_api::*` [INFO] [stdout] --> src/lib.rs:148:9 [INFO] [stdout] | [INFO] [stdout] 148 | pub use layout_api::*; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `macros::*` [INFO] [stdout] --> src/lib.rs:150:9 [INFO] [stdout] | [INFO] [stdout] 150 | pub use macros::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `cx_xlib::DndAtoms::new` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1667:22 [INFO] [stdout] | [INFO] [stdout] 1667 | Dnd { atoms: DndAtoms::new(display), display, type_list: None, selection: None } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/cx_xlib.rs:1666:5 [INFO] [stdout] | [INFO] [stdout] 1666 | unsafe fn new(display: *mut X11_sys::Display) -> Dnd { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `--force-warn unsafe-op-in-unsafe-fn` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XChangeProperty` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1679:9 [INFO] [stdout] | [INFO] [stdout] 1679 | / X11_sys::XChangeProperty( [INFO] [stdout] 1680 | | self.display, [INFO] [stdout] 1681 | | window, [INFO] [stdout] 1682 | | self.atoms.aware, [INFO] [stdout] ... | [INFO] [stdout] 1687 | | 1, [INFO] [stdout] 1688 | | ); [INFO] [stdout] | |_________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/cx_xlib.rs:1671:5 [INFO] [stdout] | [INFO] [stdout] 1671 | unsafe fn enable_for_window(&mut self, window: X11_sys::Window) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: access to union field is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1697:29 [INFO] [stdout] | [INFO] [stdout] 1697 | let source_window = event.data.l[0] as X11_sys::Window; [INFO] [stdout] | ^^^^^^^^^^^^ access to union field [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: the field may not be properly initialized: using uninitialized data will cause undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/cx_xlib.rs:1692:5 [INFO] [stdout] | [INFO] [stdout] 1692 | unsafe fn handle_enter_event(&mut self, event: &X11_sys::XClientMessageEvent) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: access to union field is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1698:30 [INFO] [stdout] | [INFO] [stdout] 1698 | let has_more_types = event.data.l[1] & (1 << 0) != 0; [INFO] [stdout] | ^^^^^^^^^^^^ access to union field [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: the field may not be properly initialized: using uninitialized data will cause undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `cx_xlib::Dnd::get_type_list_property` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1704:13 [INFO] [stdout] | [INFO] [stdout] 1704 | self.get_type_list_property(source_window) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: access to union field is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1706:13 [INFO] [stdout] | [INFO] [stdout] 1706 | event.data.l[2..4] [INFO] [stdout] | ^^^^^^^^^^^^ access to union field [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: the field may not be properly initialized: using uninitialized data will cause undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `cx_xlib::Dnd::convert_selection` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1724:9 [INFO] [stdout] | [INFO] [stdout] 1724 | self.convert_selection(target_window); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/cx_xlib.rs:1715:5 [INFO] [stdout] | [INFO] [stdout] 1715 | unsafe fn handle_drop_event(&mut self, event: &X11_sys::XClientMessageEvent) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: access to union field is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1744:29 [INFO] [stdout] | [INFO] [stdout] 1744 | let source_window = event.data.l[0] as X11_sys::Window; [INFO] [stdout] | ^^^^^^^^^^^^ access to union field [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: the field may not be properly initialized: using uninitialized data will cause undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/cx_xlib.rs:1738:5 [INFO] [stdout] | [INFO] [stdout] 1738 | unsafe fn handle_position_event(&mut self, event: &X11_sys::XClientMessageEvent) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `cx_xlib::Dnd::send_status_event` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1753:9 [INFO] [stdout] | [INFO] [stdout] 1753 | self.send_status_event(source_window, target_window, accepted); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XGetWindowProperty` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1789:13 [INFO] [stdout] | [INFO] [stdout] 1789 | / X11_sys::XGetWindowProperty( [INFO] [stdout] 1790 | | self.display, [INFO] [stdout] 1791 | | source_window, [INFO] [stdout] 1792 | | self.atoms.selection, [INFO] [stdout] ... | [INFO] [stdout] 1801 | | &mut prop, [INFO] [stdout] 1802 | | ); [INFO] [stdout] | |_____________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/cx_xlib.rs:1779:5 [INFO] [stdout] | [INFO] [stdout] 1779 | unsafe fn get_selection_property(&mut self, source_window: X11_sys::Window) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::slice::from_raw_parts` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1803:41 [INFO] [stdout] | [INFO] [stdout] 1803 | selection.extend_from_slice(slice::from_raw_parts(prop as *mut c_uchar, nitems as usize)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XFree` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1804:13 [INFO] [stdout] | [INFO] [stdout] 1804 | X11_sys::XFree(prop as *mut c_void); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XGetWindowProperty` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1824:13 [INFO] [stdout] | [INFO] [stdout] 1824 | / X11_sys::XGetWindowProperty( [INFO] [stdout] 1825 | | self.display, [INFO] [stdout] 1826 | | source_window, [INFO] [stdout] 1827 | | self.atoms.type_list, [INFO] [stdout] ... | [INFO] [stdout] 1836 | | &mut prop, [INFO] [stdout] 1837 | | ); [INFO] [stdout] | |_____________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/cx_xlib.rs:1814:5 [INFO] [stdout] | [INFO] [stdout] 1814 | unsafe fn get_type_list_property(&mut self, source_window: X11_sys::Window) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::slice::from_raw_parts` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1838:41 [INFO] [stdout] | [INFO] [stdout] 1838 | type_list.extend_from_slice(slice::from_raw_parts(prop as *mut X11_sys::Atom, nitems as usize)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XFree` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1839:13 [INFO] [stdout] | [INFO] [stdout] 1839 | X11_sys::XFree(prop as *mut c_void); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XSendEvent` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1850:9 [INFO] [stdout] | [INFO] [stdout] 1850 | / X11_sys::XSendEvent( [INFO] [stdout] 1851 | | self.display, [INFO] [stdout] 1852 | | source_window, [INFO] [stdout] 1853 | | X11_sys::False as c_int, [INFO] [stdout] ... | [INFO] [stdout] 1872 | | } as *mut X11_sys::XClientMessageEvent as *mut X11_sys::XEvent, [INFO] [stdout] 1873 | | ); [INFO] [stdout] | |_________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/cx_xlib.rs:1849:5 [INFO] [stdout] | [INFO] [stdout] 1849 | unsafe fn send_status_event(&mut self, source_window: X11_sys::Window, target_window: X11_sys::Window, accepted: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::mem::zeroed` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1864:36 [INFO] [stdout] | [INFO] [stdout] 1864 | let mut data = mem::zeroed::(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: access to union field is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1865:21 [INFO] [stdout] | [INFO] [stdout] 1865 | data.l[0] = target_window as c_long; [INFO] [stdout] | ^^^^^^ access to union field [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: the field may not be properly initialized: using uninitialized data will cause undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: access to union field is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1866:21 [INFO] [stdout] | [INFO] [stdout] 1866 | data.l[1] = if accepted { 1 << 0 } else { 0 }; [INFO] [stdout] | ^^^^^^ access to union field [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: the field may not be properly initialized: using uninitialized data will cause undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: access to union field is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1867:21 [INFO] [stdout] | [INFO] [stdout] 1867 | data.l[2] = 0; [INFO] [stdout] | ^^^^^^ access to union field [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: the field may not be properly initialized: using uninitialized data will cause undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: access to union field is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1868:21 [INFO] [stdout] | [INFO] [stdout] 1868 | data.l[3] = 0; [INFO] [stdout] | ^^^^^^ access to union field [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: the field may not be properly initialized: using uninitialized data will cause undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: access to union field is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1869:21 [INFO] [stdout] | [INFO] [stdout] 1869 | data.l[4] = if accepted { self.atoms.action_private } else { self.atoms.none } as c_long; [INFO] [stdout] | ^^^^^^ access to union field [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: the field may not be properly initialized: using uninitialized data will cause undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XFlush` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1874:9 [INFO] [stdout] | [INFO] [stdout] 1874 | X11_sys::XFlush(self.display); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XConvertSelection` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1880:9 [INFO] [stdout] | [INFO] [stdout] 1880 | / X11_sys::XConvertSelection( [INFO] [stdout] 1881 | | self.display, [INFO] [stdout] 1882 | | self.atoms.selection, [INFO] [stdout] 1883 | | self.atoms.uri_list, [INFO] [stdout] ... | [INFO] [stdout] 1886 | | X11_sys::CurrentTime as X11_sys::Time, [INFO] [stdout] 1887 | | ); [INFO] [stdout] | |_________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/cx_xlib.rs:1879:5 [INFO] [stdout] | [INFO] [stdout] 1879 | unsafe fn convert_selection(&self, target_window: X11_sys::Window) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1908:29 [INFO] [stdout] | [INFO] [stdout] 1908 | action_private: X11_sys::XInternAtom(display, CString::new("XdndActionPrivate").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/cx_xlib.rs:1906:5 [INFO] [stdout] | [INFO] [stdout] 1906 | unsafe fn new(display: *mut X11_sys::Display) -> DndAtoms { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1909:20 [INFO] [stdout] | [INFO] [stdout] 1909 | aware: X11_sys::XInternAtom(display, CString::new("XdndAware").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1910:19 [INFO] [stdout] | [INFO] [stdout] 1910 | drop: X11_sys::XInternAtom(display, CString::new("XdndDrop").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1911:20 [INFO] [stdout] | [INFO] [stdout] 1911 | enter: X11_sys::XInternAtom(display, CString::new("XdndEnter").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1912:20 [INFO] [stdout] | [INFO] [stdout] 1912 | leave: X11_sys::XInternAtom(display, CString::new("XdndLeave").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1913:19 [INFO] [stdout] | [INFO] [stdout] 1913 | none: X11_sys::XInternAtom(display, CString::new("None").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1914:23 [INFO] [stdout] | [INFO] [stdout] 1914 | position: X11_sys::XInternAtom(display, CString::new("XdndPosition").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1915:24 [INFO] [stdout] | [INFO] [stdout] 1915 | selection: X11_sys::XInternAtom(display, CString::new("XdndSelection").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1916:21 [INFO] [stdout] | [INFO] [stdout] 1916 | status: X11_sys::XInternAtom(display, CString::new("XdndStatus").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1917:24 [INFO] [stdout] | [INFO] [stdout] 1917 | type_list: X11_sys::XInternAtom(display, CString::new("XdndTypeList").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1918:23 [INFO] [stdout] | [INFO] [stdout] 1918 | uri_list: X11_sys::XInternAtom(display, CString::new("text/uri-list").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/fonts.rs:355:17 [INFO] [stdout] | [INFO] [stdout] 355 | let mut fonts_atlas = &mut cx.fonts_data.write().unwrap().fonts_atlas; [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: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/cx_xlib.rs:710:43 [INFO] [stdout] | [INFO] [stdout] 710 | let mut proc_signals = if let Ok(mut signals) = self.signals.lock() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/cx_xlib.rs:714:17 [INFO] [stdout] | [INFO] [stdout] 714 | } else { [INFO] [stdout] | ^ [INFO] [stdout] = note: `--force-warn if-let-rescope` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 710 ~ let mut proc_signals = match self.signals.lock() { Ok(mut signals) => { [INFO] [stdout] 711 | let sigs = signals.clone(); [INFO] [stdout] 712 | signals.truncate(0); [INFO] [stdout] 713 | sigs [INFO] [stdout] 714 ~ } _ => { [INFO] [stdout] 715 | Vec::new() [INFO] [stdout] 716 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/cx_xlib.rs:808:16 [INFO] [stdout] | [INFO] [stdout] 808 | if let Ok(mut signals_locked) = (*GLOBAL_XLIB_APP).signals.lock() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/cx_xlib.rs:817:13 [INFO] [stdout] | [INFO] [stdout] 817 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 808 ~ match (*GLOBAL_XLIB_APP).signals.lock() { Ok(mut signals_locked) => { [INFO] [stdout] 809 | let mut signals = HashMap::new(); [INFO] [stdout] ... [INFO] [stdout] 816 | // !TODO unblock the select! [INFO] [stdout] 817 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/cx_desktop.rs:22:12 [INFO] [stdout] | [INFO] [stdout] 22 | if let Ok(mut file) = File::create(path) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/cx_desktop.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 22 ~ match File::create(path) { Ok(mut file) => { [INFO] [stdout] 23 | if file.write_all(data).is_ok() { [INFO] [stdout] ... [INFO] [stdout] 26 | } [INFO] [stdout] 27 ~ } _ => { [INFO] [stdout] 28 | println!("ERROR WRITING FILE {}", path); [INFO] [stdout] 29 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/cx_desktop.rs:52:20 [INFO] [stdout] | [INFO] [stdout] 52 | if let Ok(bytes_written) = tcp_stream.write(buf) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^--------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/cx_desktop.rs:57:17 [INFO] [stdout] | [INFO] [stdout] 57 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 52 ~ match tcp_stream.write(buf) { Ok(bytes_written) => { [INFO] [stdout] 53 | if bytes_written == 0 { [INFO] [stdout] ... [INFO] [stdout] 56 | bytes_left -= bytes_written; [INFO] [stdout] 57 ~ } _ => { [INFO] [stdout] 58 | return true; [INFO] [stdout] 59 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/universal_file.rs:152:12 [INFO] [stdout] | [INFO] [stdout] 152 | if let Ok(resp) = ureq::get(url).call() { [INFO] [stdout] | ^^^^^^^^^^^^^^^--------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/universal_file.rs:159:9 [INFO] [stdout] | [INFO] [stdout] 159 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 152 ~ match ureq::get(url).call() { Ok(resp) => { [INFO] [stdout] 153 | let mut buffer: Vec = Vec::new(); [INFO] [stdout] ... [INFO] [stdout] 158 | } [INFO] [stdout] 159 ~ } _ => { [INFO] [stdout] 160 | Err(std::io::Error::new(std::io::ErrorKind::Other, format!("Error while loading {}", url))) [INFO] [stdout] 161 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/universal_http_stream.rs:23:20 [INFO] [stdout] | [INFO] [stdout] 23 | if let Some(encoding) = response.header("content-encoding") { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^--------^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/universal_http_stream.rs:32:17 [INFO] [stdout] | [INFO] [stdout] 32 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 23 ~ match response.header("content-encoding") { Some(encoding) => { [INFO] [stdout] 24 | if encoding == "gzip" { [INFO] [stdout] ... [INFO] [stdout] 31 | } [INFO] [stdout] 32 ~ } _ => { [INFO] [stdout] 33 | Ok(Box::new(response.into_reader())) [INFO] [stdout] 34 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/text_ins.rs:301:25 [INFO] [stdout] | [INFO] [stdout] 301 | let tc = if let Some(tc) = read_lock.fonts[font_id].atlas_pages[atlas_page_id].atlas_glyphs[glyph_id][subpixel_id] { [INFO] [stdout] | ^^^^^^^^^^^^^^^---------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/text_ins.rs:303:13 [INFO] [stdout] | [INFO] [stdout] 303 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 301 ~ let tc = match read_lock.fonts[font_id].atlas_pages[atlas_page_id].atlas_glyphs[glyph_id][subpixel_id] { Some(tc) => { [INFO] [stdout] 302 | tc [INFO] [stdout] 303 ~ } _ => { [INFO] [stdout] 304 | // Drop `read_lock` to do some writes, and then reacquire it. [INFO] [stdout] ... [INFO] [stdout] 323 | read_lock.fonts[font_id].atlas_pages[atlas_page_id].atlas_glyphs[glyph_id][subpixel_id].unwrap() [INFO] [stdout] 324 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 48 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0133`. [INFO] [stdout] [INFO] [stderr] warning: failed to automatically apply fixes suggested by rustc to crate `zaplib` [INFO] [stderr] [INFO] [stderr] after fixes were automatically applied the compiler reported errors within these files: [INFO] [stderr] [INFO] [stderr] * src/macros.rs [INFO] [stderr] [INFO] [stderr] This likely indicates a bug in either rustc or cargo itself, [INFO] [stderr] and we would appreciate a bug report! You're likely to see [INFO] [stderr] a number of compiler warnings after this message which cargo [INFO] [stderr] attempted to fix but failed. If you could open an issue at [INFO] [stderr] https://github.com/rust-lang/rust/issues [INFO] [stderr] quoting the full output of this command we'd be very appreciative! [INFO] [stderr] Note that you may be able to make some more progress in the near-term [INFO] [stderr] fixing code with the `--broken-code` flag [INFO] [stderr] [INFO] [stderr] The following errors were reported: [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/macros.rs:167:7 [INFO] [stderr] | [INFO] [stderr] 167 | ( $ code: expr_2021 ) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error: aborting due to 1 previous error [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0658`. [INFO] [stderr] Original diagnostics will follow. [INFO] [stderr] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/universal_rand.rs:18:31 [INFO] [stdout] | [INFO] [stdout] 18 | return rand::thread_rng().gen(); [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] = note: `--force-warn keyword-idents-2024` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/macros.rs:167:15 [INFO] [stdout] | [INFO] [stdout] 167 | ( $ code: expr ) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] = note: `--force-warn edition-2024-expr-fragment-specifier` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 167 | ( $ code: expr_2021 ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std_shader::*` [INFO] [stdout] --> src/lib.rs:132:9 [INFO] [stdout] | [INFO] [stdout] 132 | pub use std_shader::*; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `layout_api::*` [INFO] [stdout] --> src/lib.rs:148:9 [INFO] [stdout] | [INFO] [stdout] 148 | pub use layout_api::*; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `macros::*` [INFO] [stdout] --> src/lib.rs:150:9 [INFO] [stdout] | [INFO] [stdout] 150 | pub use macros::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `cx_xlib::DndAtoms::new` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1667:22 [INFO] [stdout] | [INFO] [stdout] 1667 | Dnd { atoms: DndAtoms::new(display), display, type_list: None, selection: None } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/cx_xlib.rs:1666:5 [INFO] [stdout] | [INFO] [stdout] 1666 | unsafe fn new(display: *mut X11_sys::Display) -> Dnd { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `--force-warn unsafe-op-in-unsafe-fn` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XChangeProperty` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1679:9 [INFO] [stdout] | [INFO] [stdout] 1679 | / X11_sys::XChangeProperty( [INFO] [stdout] 1680 | | self.display, [INFO] [stdout] 1681 | | window, [INFO] [stdout] 1682 | | self.atoms.aware, [INFO] [stdout] ... | [INFO] [stdout] 1687 | | 1, [INFO] [stdout] 1688 | | ); [INFO] [stdout] | |_________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/cx_xlib.rs:1671:5 [INFO] [stdout] | [INFO] [stdout] 1671 | unsafe fn enable_for_window(&mut self, window: X11_sys::Window) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: access to union field is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1697:29 [INFO] [stdout] | [INFO] [stdout] 1697 | let source_window = event.data.l[0] as X11_sys::Window; [INFO] [stdout] | ^^^^^^^^^^^^ access to union field [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: the field may not be properly initialized: using uninitialized data will cause undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/cx_xlib.rs:1692:5 [INFO] [stdout] | [INFO] [stdout] 1692 | unsafe fn handle_enter_event(&mut self, event: &X11_sys::XClientMessageEvent) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: access to union field is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1698:30 [INFO] [stdout] | [INFO] [stdout] 1698 | let has_more_types = event.data.l[1] & (1 << 0) != 0; [INFO] [stdout] | ^^^^^^^^^^^^ access to union field [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: the field may not be properly initialized: using uninitialized data will cause undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `cx_xlib::Dnd::get_type_list_property` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1704:13 [INFO] [stdout] | [INFO] [stdout] 1704 | self.get_type_list_property(source_window) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: access to union field is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1706:13 [INFO] [stdout] | [INFO] [stdout] 1706 | event.data.l[2..4] [INFO] [stdout] | ^^^^^^^^^^^^ access to union field [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: the field may not be properly initialized: using uninitialized data will cause undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `cx_xlib::Dnd::convert_selection` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1724:9 [INFO] [stdout] | [INFO] [stdout] 1724 | self.convert_selection(target_window); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/cx_xlib.rs:1715:5 [INFO] [stdout] | [INFO] [stdout] 1715 | unsafe fn handle_drop_event(&mut self, event: &X11_sys::XClientMessageEvent) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: access to union field is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1744:29 [INFO] [stdout] | [INFO] [stdout] 1744 | let source_window = event.data.l[0] as X11_sys::Window; [INFO] [stdout] | ^^^^^^^^^^^^ access to union field [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: the field may not be properly initialized: using uninitialized data will cause undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/cx_xlib.rs:1738:5 [INFO] [stdout] | [INFO] [stdout] 1738 | unsafe fn handle_position_event(&mut self, event: &X11_sys::XClientMessageEvent) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `cx_xlib::Dnd::send_status_event` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1753:9 [INFO] [stdout] | [INFO] [stdout] 1753 | self.send_status_event(source_window, target_window, accepted); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XGetWindowProperty` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1789:13 [INFO] [stdout] | [INFO] [stdout] 1789 | / X11_sys::XGetWindowProperty( [INFO] [stdout] 1790 | | self.display, [INFO] [stdout] 1791 | | source_window, [INFO] [stdout] 1792 | | self.atoms.selection, [INFO] [stdout] ... | [INFO] [stdout] 1801 | | &mut prop, [INFO] [stdout] 1802 | | ); [INFO] [stdout] | |_____________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/cx_xlib.rs:1779:5 [INFO] [stdout] | [INFO] [stdout] 1779 | unsafe fn get_selection_property(&mut self, source_window: X11_sys::Window) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::slice::from_raw_parts` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1803:41 [INFO] [stdout] | [INFO] [stdout] 1803 | selection.extend_from_slice(slice::from_raw_parts(prop as *mut c_uchar, nitems as usize)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XFree` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1804:13 [INFO] [stdout] | [INFO] [stdout] 1804 | X11_sys::XFree(prop as *mut c_void); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XGetWindowProperty` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1824:13 [INFO] [stdout] | [INFO] [stdout] 1824 | / X11_sys::XGetWindowProperty( [INFO] [stdout] 1825 | | self.display, [INFO] [stdout] 1826 | | source_window, [INFO] [stdout] 1827 | | self.atoms.type_list, [INFO] [stdout] ... | [INFO] [stdout] 1836 | | &mut prop, [INFO] [stdout] 1837 | | ); [INFO] [stdout] | |_____________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/cx_xlib.rs:1814:5 [INFO] [stdout] | [INFO] [stdout] 1814 | unsafe fn get_type_list_property(&mut self, source_window: X11_sys::Window) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::slice::from_raw_parts` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1838:41 [INFO] [stdout] | [INFO] [stdout] 1838 | type_list.extend_from_slice(slice::from_raw_parts(prop as *mut X11_sys::Atom, nitems as usize)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XFree` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1839:13 [INFO] [stdout] | [INFO] [stdout] 1839 | X11_sys::XFree(prop as *mut c_void); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XSendEvent` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1850:9 [INFO] [stdout] | [INFO] [stdout] 1850 | / X11_sys::XSendEvent( [INFO] [stdout] 1851 | | self.display, [INFO] [stdout] 1852 | | source_window, [INFO] [stdout] 1853 | | X11_sys::False as c_int, [INFO] [stdout] ... | [INFO] [stdout] 1872 | | } as *mut X11_sys::XClientMessageEvent as *mut X11_sys::XEvent, [INFO] [stdout] 1873 | | ); [INFO] [stdout] | |_________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/cx_xlib.rs:1849:5 [INFO] [stdout] | [INFO] [stdout] 1849 | unsafe fn send_status_event(&mut self, source_window: X11_sys::Window, target_window: X11_sys::Window, accepted: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::mem::zeroed` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1864:36 [INFO] [stdout] | [INFO] [stdout] 1864 | let mut data = mem::zeroed::(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: access to union field is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1865:21 [INFO] [stdout] | [INFO] [stdout] 1865 | data.l[0] = target_window as c_long; [INFO] [stdout] | ^^^^^^ access to union field [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: the field may not be properly initialized: using uninitialized data will cause undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: access to union field is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1866:21 [INFO] [stdout] | [INFO] [stdout] 1866 | data.l[1] = if accepted { 1 << 0 } else { 0 }; [INFO] [stdout] | ^^^^^^ access to union field [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: the field may not be properly initialized: using uninitialized data will cause undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: access to union field is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1867:21 [INFO] [stdout] | [INFO] [stdout] 1867 | data.l[2] = 0; [INFO] [stdout] | ^^^^^^ access to union field [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: the field may not be properly initialized: using uninitialized data will cause undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: access to union field is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1868:21 [INFO] [stdout] | [INFO] [stdout] 1868 | data.l[3] = 0; [INFO] [stdout] | ^^^^^^ access to union field [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: the field may not be properly initialized: using uninitialized data will cause undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: access to union field is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1869:21 [INFO] [stdout] | [INFO] [stdout] 1869 | data.l[4] = if accepted { self.atoms.action_private } else { self.atoms.none } as c_long; [INFO] [stdout] | ^^^^^^ access to union field [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: the field may not be properly initialized: using uninitialized data will cause undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XFlush` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1874:9 [INFO] [stdout] | [INFO] [stdout] 1874 | X11_sys::XFlush(self.display); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XConvertSelection` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1880:9 [INFO] [stdout] | [INFO] [stdout] 1880 | / X11_sys::XConvertSelection( [INFO] [stdout] 1881 | | self.display, [INFO] [stdout] 1882 | | self.atoms.selection, [INFO] [stdout] 1883 | | self.atoms.uri_list, [INFO] [stdout] ... | [INFO] [stdout] 1886 | | X11_sys::CurrentTime as X11_sys::Time, [INFO] [stdout] 1887 | | ); [INFO] [stdout] | |_________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/cx_xlib.rs:1879:5 [INFO] [stdout] | [INFO] [stdout] 1879 | unsafe fn convert_selection(&self, target_window: X11_sys::Window) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1908:29 [INFO] [stdout] | [INFO] [stdout] 1908 | action_private: X11_sys::XInternAtom(display, CString::new("XdndActionPrivate").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/cx_xlib.rs:1906:5 [INFO] [stdout] | [INFO] [stdout] 1906 | unsafe fn new(display: *mut X11_sys::Display) -> DndAtoms { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1909:20 [INFO] [stdout] | [INFO] [stdout] 1909 | aware: X11_sys::XInternAtom(display, CString::new("XdndAware").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1910:19 [INFO] [stdout] | [INFO] [stdout] 1910 | drop: X11_sys::XInternAtom(display, CString::new("XdndDrop").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1911:20 [INFO] [stdout] | [INFO] [stdout] 1911 | enter: X11_sys::XInternAtom(display, CString::new("XdndEnter").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1912:20 [INFO] [stdout] | [INFO] [stdout] 1912 | leave: X11_sys::XInternAtom(display, CString::new("XdndLeave").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1913:19 [INFO] [stdout] | [INFO] [stdout] 1913 | none: X11_sys::XInternAtom(display, CString::new("None").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1914:23 [INFO] [stdout] | [INFO] [stdout] 1914 | position: X11_sys::XInternAtom(display, CString::new("XdndPosition").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1915:24 [INFO] [stdout] | [INFO] [stdout] 1915 | selection: X11_sys::XInternAtom(display, CString::new("XdndSelection").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1916:21 [INFO] [stdout] | [INFO] [stdout] 1916 | status: X11_sys::XInternAtom(display, CString::new("XdndStatus").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1917:24 [INFO] [stdout] | [INFO] [stdout] 1917 | type_list: X11_sys::XInternAtom(display, CString::new("XdndTypeList").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1918:23 [INFO] [stdout] | [INFO] [stdout] 1918 | uri_list: X11_sys::XInternAtom(display, CString::new("text/uri-list").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/fonts.rs:355:17 [INFO] [stdout] | [INFO] [stdout] 355 | let mut fonts_atlas = &mut cx.fonts_data.write().unwrap().fonts_atlas; [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: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/cx_xlib.rs:710:43 [INFO] [stdout] | [INFO] [stdout] 710 | let mut proc_signals = if let Ok(mut signals) = self.signals.lock() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/cx_xlib.rs:714:17 [INFO] [stdout] | [INFO] [stdout] 714 | } else { [INFO] [stdout] | ^ [INFO] [stdout] = note: `--force-warn if-let-rescope` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 710 ~ let mut proc_signals = match self.signals.lock() { Ok(mut signals) => { [INFO] [stdout] 711 | let sigs = signals.clone(); [INFO] [stdout] 712 | signals.truncate(0); [INFO] [stdout] 713 | sigs [INFO] [stdout] 714 ~ } _ => { [INFO] [stdout] 715 | Vec::new() [INFO] [stdout] 716 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/cx_xlib.rs:808:16 [INFO] [stdout] | [INFO] [stdout] 808 | if let Ok(mut signals_locked) = (*GLOBAL_XLIB_APP).signals.lock() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/cx_xlib.rs:817:13 [INFO] [stdout] | [INFO] [stdout] 817 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 808 ~ match (*GLOBAL_XLIB_APP).signals.lock() { Ok(mut signals_locked) => { [INFO] [stdout] 809 | let mut signals = HashMap::new(); [INFO] [stdout] ... [INFO] [stdout] 816 | // !TODO unblock the select! [INFO] [stdout] 817 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/cx_desktop.rs:22:12 [INFO] [stdout] | [INFO] [stdout] 22 | if let Ok(mut file) = File::create(path) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^------------------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/cx_desktop.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 22 ~ match File::create(path) { Ok(mut file) => { [INFO] [stdout] 23 | if file.write_all(data).is_ok() { [INFO] [stdout] ... [INFO] [stdout] 26 | } [INFO] [stdout] 27 ~ } _ => { [INFO] [stdout] 28 | println!("ERROR WRITING FILE {}", path); [INFO] [stdout] 29 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/cx_desktop.rs:52:20 [INFO] [stdout] | [INFO] [stdout] 52 | if let Ok(bytes_written) = tcp_stream.write(buf) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^--------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/cx_desktop.rs:57:17 [INFO] [stdout] | [INFO] [stdout] 57 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 52 ~ match tcp_stream.write(buf) { Ok(bytes_written) => { [INFO] [stdout] 53 | if bytes_written == 0 { [INFO] [stdout] ... [INFO] [stdout] 56 | bytes_left -= bytes_written; [INFO] [stdout] 57 ~ } _ => { [INFO] [stdout] 58 | return true; [INFO] [stdout] 59 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/universal_file.rs:152:12 [INFO] [stdout] | [INFO] [stdout] 152 | if let Ok(resp) = ureq::get(url).call() { [INFO] [stdout] | ^^^^^^^^^^^^^^^--------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/universal_file.rs:159:9 [INFO] [stdout] | [INFO] [stdout] 159 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 152 ~ match ureq::get(url).call() { Ok(resp) => { [INFO] [stdout] 153 | let mut buffer: Vec = Vec::new(); [INFO] [stdout] ... [INFO] [stdout] 158 | } [INFO] [stdout] 159 ~ } _ => { [INFO] [stdout] 160 | Err(std::io::Error::new(std::io::ErrorKind::Other, format!("Error while loading {}", url))) [INFO] [stdout] 161 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/universal_http_stream.rs:23:20 [INFO] [stdout] | [INFO] [stdout] 23 | if let Some(encoding) = response.header("content-encoding") { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^--------^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/universal_http_stream.rs:32:17 [INFO] [stdout] | [INFO] [stdout] 32 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 23 ~ match response.header("content-encoding") { Some(encoding) => { [INFO] [stdout] 24 | if encoding == "gzip" { [INFO] [stdout] ... [INFO] [stdout] 31 | } [INFO] [stdout] 32 ~ } _ => { [INFO] [stdout] 33 | Ok(Box::new(response.into_reader())) [INFO] [stdout] 34 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/text_ins.rs:301:25 [INFO] [stdout] | [INFO] [stdout] 301 | let tc = if let Some(tc) = read_lock.fonts[font_id].atlas_pages[atlas_page_id].atlas_glyphs[glyph_id][subpixel_id] { [INFO] [stdout] | ^^^^^^^^^^^^^^^---------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/text_ins.rs:303:13 [INFO] [stdout] | [INFO] [stdout] 303 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 301 ~ let tc = match read_lock.fonts[font_id].atlas_pages[atlas_page_id].atlas_glyphs[glyph_id][subpixel_id] { Some(tc) => { [INFO] [stdout] 302 | tc [INFO] [stdout] 303 ~ } _ => { [INFO] [stdout] 304 | // Drop `read_lock` to do some writes, and then reacquire it. [INFO] [stdout] ... [INFO] [stdout] 323 | read_lock.fonts[font_id].atlas_pages[atlas_page_id].atlas_glyphs[glyph_id][subpixel_id].unwrap() [INFO] [stdout] 324 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 48 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0133`. [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 7.44s [INFO] [stderr] Running `cargo check` to verify 2024 [INFO] [stderr] Checking zaplib v0.0.3 (/tmp/fixit) [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/universal_rand.rs:18:31 [INFO] [stdout] | [INFO] [stdout] 18 | return rand::thread_rng().gen(); [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 18 | return rand::thread_rng().r#gen(); [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/universal_rand.rs:18:31 [INFO] [stdout] | [INFO] [stdout] 18 | return rand::thread_rng().gen(); [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 18 | return rand::thread_rng().r#gen(); [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std_shader::*` [INFO] [stdout] --> src/lib.rs:132:9 [INFO] [stdout] | [INFO] [stdout] 132 | pub use std_shader::*; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `layout_api::*` [INFO] [stdout] --> src/lib.rs:148:9 [INFO] [stdout] | [INFO] [stdout] 148 | pub use layout_api::*; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `macros::*` [INFO] [stdout] --> src/lib.rs:150:9 [INFO] [stdout] | [INFO] [stdout] 150 | pub use macros::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std_shader::*` [INFO] [stdout] --> src/lib.rs:132:9 [INFO] [stdout] | [INFO] [stdout] 132 | pub use std_shader::*; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `layout_api::*` [INFO] [stdout] --> src/lib.rs:148:9 [INFO] [stdout] | [INFO] [stdout] 148 | pub use layout_api::*; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `macros::*` [INFO] [stdout] --> src/lib.rs:150:9 [INFO] [stdout] | [INFO] [stdout] 150 | pub use macros::*; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `cx_xlib::DndAtoms::new` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1667:22 [INFO] [stdout] | [INFO] [stdout] 1667 | Dnd { atoms: DndAtoms::new(display), display, type_list: None, selection: None } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/cx_xlib.rs:1666:5 [INFO] [stdout] | [INFO] [stdout] 1666 | unsafe fn new(display: *mut X11_sys::Display) -> Dnd { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(unsafe_op_in_unsafe_fn)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XChangeProperty` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1679:9 [INFO] [stdout] | [INFO] [stdout] 1679 | / X11_sys::XChangeProperty( [INFO] [stdout] 1680 | | self.display, [INFO] [stdout] 1681 | | window, [INFO] [stdout] 1682 | | self.atoms.aware, [INFO] [stdout] ... | [INFO] [stdout] 1687 | | 1, [INFO] [stdout] 1688 | | ); [INFO] [stdout] | |_________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/cx_xlib.rs:1671:5 [INFO] [stdout] | [INFO] [stdout] 1671 | unsafe fn enable_for_window(&mut self, window: X11_sys::Window) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: access to union field is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1697:29 [INFO] [stdout] | [INFO] [stdout] 1697 | let source_window = event.data.l[0] as X11_sys::Window; [INFO] [stdout] | ^^^^^^^^^^^^ access to union field [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: the field may not be properly initialized: using uninitialized data will cause undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/cx_xlib.rs:1692:5 [INFO] [stdout] | [INFO] [stdout] 1692 | unsafe fn handle_enter_event(&mut self, event: &X11_sys::XClientMessageEvent) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: access to union field is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1698:30 [INFO] [stdout] | [INFO] [stdout] 1698 | let has_more_types = event.data.l[1] & (1 << 0) != 0; [INFO] [stdout] | ^^^^^^^^^^^^ access to union field [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: the field may not be properly initialized: using uninitialized data will cause undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `cx_xlib::Dnd::get_type_list_property` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1704:13 [INFO] [stdout] | [INFO] [stdout] 1704 | self.get_type_list_property(source_window) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: access to union field is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1706:13 [INFO] [stdout] | [INFO] [stdout] 1706 | event.data.l[2..4] [INFO] [stdout] | ^^^^^^^^^^^^ access to union field [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: the field may not be properly initialized: using uninitialized data will cause undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `cx_xlib::Dnd::convert_selection` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1724:9 [INFO] [stdout] | [INFO] [stdout] 1724 | self.convert_selection(target_window); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/cx_xlib.rs:1715:5 [INFO] [stdout] | [INFO] [stdout] 1715 | unsafe fn handle_drop_event(&mut self, event: &X11_sys::XClientMessageEvent) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: access to union field is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1744:29 [INFO] [stdout] | [INFO] [stdout] 1744 | let source_window = event.data.l[0] as X11_sys::Window; [INFO] [stdout] | ^^^^^^^^^^^^ access to union field [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: the field may not be properly initialized: using uninitialized data will cause undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/cx_xlib.rs:1738:5 [INFO] [stdout] | [INFO] [stdout] 1738 | unsafe fn handle_position_event(&mut self, event: &X11_sys::XClientMessageEvent) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `cx_xlib::Dnd::send_status_event` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1753:9 [INFO] [stdout] | [INFO] [stdout] 1753 | self.send_status_event(source_window, target_window, accepted); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XGetWindowProperty` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1789:13 [INFO] [stdout] | [INFO] [stdout] 1789 | / X11_sys::XGetWindowProperty( [INFO] [stdout] 1790 | | self.display, [INFO] [stdout] 1791 | | source_window, [INFO] [stdout] 1792 | | self.atoms.selection, [INFO] [stdout] ... | [INFO] [stdout] 1801 | | &mut prop, [INFO] [stdout] 1802 | | ); [INFO] [stdout] | |_____________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/cx_xlib.rs:1779:5 [INFO] [stdout] | [INFO] [stdout] 1779 | unsafe fn get_selection_property(&mut self, source_window: X11_sys::Window) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::slice::from_raw_parts` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1803:41 [INFO] [stdout] | [INFO] [stdout] 1803 | selection.extend_from_slice(slice::from_raw_parts(prop as *mut c_uchar, nitems as usize)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XFree` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1804:13 [INFO] [stdout] | [INFO] [stdout] 1804 | X11_sys::XFree(prop as *mut c_void); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XGetWindowProperty` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1824:13 [INFO] [stdout] | [INFO] [stdout] 1824 | / X11_sys::XGetWindowProperty( [INFO] [stdout] 1825 | | self.display, [INFO] [stdout] 1826 | | source_window, [INFO] [stdout] 1827 | | self.atoms.type_list, [INFO] [stdout] ... | [INFO] [stdout] 1836 | | &mut prop, [INFO] [stdout] 1837 | | ); [INFO] [stdout] | |_____________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/cx_xlib.rs:1814:5 [INFO] [stdout] | [INFO] [stdout] 1814 | unsafe fn get_type_list_property(&mut self, source_window: X11_sys::Window) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::slice::from_raw_parts` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1838:41 [INFO] [stdout] | [INFO] [stdout] 1838 | type_list.extend_from_slice(slice::from_raw_parts(prop as *mut X11_sys::Atom, nitems as usize)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XFree` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1839:13 [INFO] [stdout] | [INFO] [stdout] 1839 | X11_sys::XFree(prop as *mut c_void); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XSendEvent` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1850:9 [INFO] [stdout] | [INFO] [stdout] 1850 | / X11_sys::XSendEvent( [INFO] [stdout] 1851 | | self.display, [INFO] [stdout] 1852 | | source_window, [INFO] [stdout] 1853 | | X11_sys::False as c_int, [INFO] [stdout] ... | [INFO] [stdout] 1872 | | } as *mut X11_sys::XClientMessageEvent as *mut X11_sys::XEvent, [INFO] [stdout] 1873 | | ); [INFO] [stdout] | |_________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/cx_xlib.rs:1849:5 [INFO] [stdout] | [INFO] [stdout] 1849 | unsafe fn send_status_event(&mut self, source_window: X11_sys::Window, target_window: X11_sys::Window, accepted: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::mem::zeroed` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1864:36 [INFO] [stdout] | [INFO] [stdout] 1864 | let mut data = mem::zeroed::(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: access to union field is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1865:21 [INFO] [stdout] | [INFO] [stdout] 1865 | data.l[0] = target_window as c_long; [INFO] [stdout] | ^^^^^^ access to union field [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: the field may not be properly initialized: using uninitialized data will cause undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: access to union field is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1866:21 [INFO] [stdout] | [INFO] [stdout] 1866 | data.l[1] = if accepted { 1 << 0 } else { 0 }; [INFO] [stdout] | ^^^^^^ access to union field [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: the field may not be properly initialized: using uninitialized data will cause undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: access to union field is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1867:21 [INFO] [stdout] | [INFO] [stdout] 1867 | data.l[2] = 0; [INFO] [stdout] | ^^^^^^ access to union field [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: the field may not be properly initialized: using uninitialized data will cause undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: access to union field is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1868:21 [INFO] [stdout] | [INFO] [stdout] 1868 | data.l[3] = 0; [INFO] [stdout] | ^^^^^^ access to union field [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: the field may not be properly initialized: using uninitialized data will cause undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: access to union field is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1869:21 [INFO] [stdout] | [INFO] [stdout] 1869 | data.l[4] = if accepted { self.atoms.action_private } else { self.atoms.none } as c_long; [INFO] [stdout] | ^^^^^^ access to union field [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: the field may not be properly initialized: using uninitialized data will cause undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XFlush` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1874:9 [INFO] [stdout] | [INFO] [stdout] 1874 | X11_sys::XFlush(self.display); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XConvertSelection` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1880:9 [INFO] [stdout] | [INFO] [stdout] 1880 | / X11_sys::XConvertSelection( [INFO] [stdout] 1881 | | self.display, [INFO] [stdout] 1882 | | self.atoms.selection, [INFO] [stdout] 1883 | | self.atoms.uri_list, [INFO] [stdout] ... | [INFO] [stdout] 1886 | | X11_sys::CurrentTime as X11_sys::Time, [INFO] [stdout] 1887 | | ); [INFO] [stdout] | |_________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/cx_xlib.rs:1879:5 [INFO] [stdout] | [INFO] [stdout] 1879 | unsafe fn convert_selection(&self, target_window: X11_sys::Window) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1908:29 [INFO] [stdout] | [INFO] [stdout] 1908 | action_private: X11_sys::XInternAtom(display, CString::new("XdndActionPrivate").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/cx_xlib.rs:1906:5 [INFO] [stdout] | [INFO] [stdout] 1906 | unsafe fn new(display: *mut X11_sys::Display) -> DndAtoms { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1909:20 [INFO] [stdout] | [INFO] [stdout] 1909 | aware: X11_sys::XInternAtom(display, CString::new("XdndAware").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1910:19 [INFO] [stdout] | [INFO] [stdout] 1910 | drop: X11_sys::XInternAtom(display, CString::new("XdndDrop").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1911:20 [INFO] [stdout] | [INFO] [stdout] 1911 | enter: X11_sys::XInternAtom(display, CString::new("XdndEnter").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1912:20 [INFO] [stdout] | [INFO] [stdout] 1912 | leave: X11_sys::XInternAtom(display, CString::new("XdndLeave").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1913:19 [INFO] [stdout] | [INFO] [stdout] 1913 | none: X11_sys::XInternAtom(display, CString::new("None").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1914:23 [INFO] [stdout] | [INFO] [stdout] 1914 | position: X11_sys::XInternAtom(display, CString::new("XdndPosition").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1915:24 [INFO] [stdout] | [INFO] [stdout] 1915 | selection: X11_sys::XInternAtom(display, CString::new("XdndSelection").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1916:21 [INFO] [stdout] | [INFO] [stdout] 1916 | status: X11_sys::XInternAtom(display, CString::new("XdndStatus").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1917:24 [INFO] [stdout] | [INFO] [stdout] 1917 | type_list: X11_sys::XInternAtom(display, CString::new("XdndTypeList").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1918:23 [INFO] [stdout] | [INFO] [stdout] 1918 | uri_list: X11_sys::XInternAtom(display, CString::new("text/uri-list").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `cx_xlib::DndAtoms::new` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1667:22 [INFO] [stdout] | [INFO] [stdout] 1667 | Dnd { atoms: DndAtoms::new(display), display, type_list: None, selection: None } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/cx_xlib.rs:1666:5 [INFO] [stdout] | [INFO] [stdout] 1666 | unsafe fn new(display: *mut X11_sys::Display) -> Dnd { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(unsafe_op_in_unsafe_fn)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XChangeProperty` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1679:9 [INFO] [stdout] | [INFO] [stdout] 1679 | / X11_sys::XChangeProperty( [INFO] [stdout] 1680 | | self.display, [INFO] [stdout] 1681 | | window, [INFO] [stdout] 1682 | | self.atoms.aware, [INFO] [stdout] ... | [INFO] [stdout] 1687 | | 1, [INFO] [stdout] 1688 | | ); [INFO] [stdout] | |_________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/cx_xlib.rs:1671:5 [INFO] [stdout] | [INFO] [stdout] 1671 | unsafe fn enable_for_window(&mut self, window: X11_sys::Window) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: access to union field is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1697:29 [INFO] [stdout] | [INFO] [stdout] 1697 | let source_window = event.data.l[0] as X11_sys::Window; [INFO] [stdout] | ^^^^^^^^^^^^ access to union field [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: the field may not be properly initialized: using uninitialized data will cause undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/cx_xlib.rs:1692:5 [INFO] [stdout] | [INFO] [stdout] 1692 | unsafe fn handle_enter_event(&mut self, event: &X11_sys::XClientMessageEvent) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: access to union field is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1698:30 [INFO] [stdout] | [INFO] [stdout] 1698 | let has_more_types = event.data.l[1] & (1 << 0) != 0; [INFO] [stdout] | ^^^^^^^^^^^^ access to union field [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: the field may not be properly initialized: using uninitialized data will cause undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `cx_xlib::Dnd::get_type_list_property` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1704:13 [INFO] [stdout] | [INFO] [stdout] 1704 | self.get_type_list_property(source_window) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: access to union field is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1706:13 [INFO] [stdout] | [INFO] [stdout] 1706 | event.data.l[2..4] [INFO] [stdout] | ^^^^^^^^^^^^ access to union field [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: the field may not be properly initialized: using uninitialized data will cause undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `cx_xlib::Dnd::convert_selection` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1724:9 [INFO] [stdout] | [INFO] [stdout] 1724 | self.convert_selection(target_window); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/cx_xlib.rs:1715:5 [INFO] [stdout] | [INFO] [stdout] 1715 | unsafe fn handle_drop_event(&mut self, event: &X11_sys::XClientMessageEvent) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: access to union field is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1744:29 [INFO] [stdout] | [INFO] [stdout] 1744 | let source_window = event.data.l[0] as X11_sys::Window; [INFO] [stdout] | ^^^^^^^^^^^^ access to union field [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: the field may not be properly initialized: using uninitialized data will cause undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/cx_xlib.rs:1738:5 [INFO] [stdout] | [INFO] [stdout] 1738 | unsafe fn handle_position_event(&mut self, event: &X11_sys::XClientMessageEvent) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `cx_xlib::Dnd::send_status_event` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1753:9 [INFO] [stdout] | [INFO] [stdout] 1753 | self.send_status_event(source_window, target_window, accepted); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XGetWindowProperty` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1789:13 [INFO] [stdout] | [INFO] [stdout] 1789 | / X11_sys::XGetWindowProperty( [INFO] [stdout] 1790 | | self.display, [INFO] [stdout] 1791 | | source_window, [INFO] [stdout] 1792 | | self.atoms.selection, [INFO] [stdout] ... | [INFO] [stdout] 1801 | | &mut prop, [INFO] [stdout] 1802 | | ); [INFO] [stdout] | |_____________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/cx_xlib.rs:1779:5 [INFO] [stdout] | [INFO] [stdout] 1779 | unsafe fn get_selection_property(&mut self, source_window: X11_sys::Window) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::slice::from_raw_parts` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1803:41 [INFO] [stdout] | [INFO] [stdout] 1803 | selection.extend_from_slice(slice::from_raw_parts(prop as *mut c_uchar, nitems as usize)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XFree` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1804:13 [INFO] [stdout] | [INFO] [stdout] 1804 | X11_sys::XFree(prop as *mut c_void); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XGetWindowProperty` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1824:13 [INFO] [stdout] | [INFO] [stdout] 1824 | / X11_sys::XGetWindowProperty( [INFO] [stdout] 1825 | | self.display, [INFO] [stdout] 1826 | | source_window, [INFO] [stdout] 1827 | | self.atoms.type_list, [INFO] [stdout] ... | [INFO] [stdout] 1836 | | &mut prop, [INFO] [stdout] 1837 | | ); [INFO] [stdout] | |_____________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/cx_xlib.rs:1814:5 [INFO] [stdout] | [INFO] [stdout] 1814 | unsafe fn get_type_list_property(&mut self, source_window: X11_sys::Window) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::slice::from_raw_parts` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1838:41 [INFO] [stdout] | [INFO] [stdout] 1838 | type_list.extend_from_slice(slice::from_raw_parts(prop as *mut X11_sys::Atom, nitems as usize)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XFree` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1839:13 [INFO] [stdout] | [INFO] [stdout] 1839 | X11_sys::XFree(prop as *mut c_void); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XSendEvent` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1850:9 [INFO] [stdout] | [INFO] [stdout] 1850 | / X11_sys::XSendEvent( [INFO] [stdout] 1851 | | self.display, [INFO] [stdout] 1852 | | source_window, [INFO] [stdout] 1853 | | X11_sys::False as c_int, [INFO] [stdout] ... | [INFO] [stdout] 1872 | | } as *mut X11_sys::XClientMessageEvent as *mut X11_sys::XEvent, [INFO] [stdout] 1873 | | ); [INFO] [stdout] | |_________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/cx_xlib.rs:1849:5 [INFO] [stdout] | [INFO] [stdout] 1849 | unsafe fn send_status_event(&mut self, source_window: X11_sys::Window, target_window: X11_sys::Window, accepted: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `std::mem::zeroed` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1864:36 [INFO] [stdout] | [INFO] [stdout] 1864 | let mut data = mem::zeroed::(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: access to union field is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1865:21 [INFO] [stdout] | [INFO] [stdout] 1865 | data.l[0] = target_window as c_long; [INFO] [stdout] | ^^^^^^ access to union field [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: the field may not be properly initialized: using uninitialized data will cause undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: access to union field is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1866:21 [INFO] [stdout] | [INFO] [stdout] 1866 | data.l[1] = if accepted { 1 << 0 } else { 0 }; [INFO] [stdout] | ^^^^^^ access to union field [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: the field may not be properly initialized: using uninitialized data will cause undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: access to union field is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1867:21 [INFO] [stdout] | [INFO] [stdout] 1867 | data.l[2] = 0; [INFO] [stdout] | ^^^^^^ access to union field [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: the field may not be properly initialized: using uninitialized data will cause undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: access to union field is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1868:21 [INFO] [stdout] | [INFO] [stdout] 1868 | data.l[3] = 0; [INFO] [stdout] | ^^^^^^ access to union field [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: the field may not be properly initialized: using uninitialized data will cause undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: access to union field is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1869:21 [INFO] [stdout] | [INFO] [stdout] 1869 | data.l[4] = if accepted { self.atoms.action_private } else { self.atoms.none } as c_long; [INFO] [stdout] | ^^^^^^ access to union field [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: the field may not be properly initialized: using uninitialized data will cause undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XFlush` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1874:9 [INFO] [stdout] | [INFO] [stdout] 1874 | X11_sys::XFlush(self.display); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XConvertSelection` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1880:9 [INFO] [stdout] | [INFO] [stdout] 1880 | / X11_sys::XConvertSelection( [INFO] [stdout] 1881 | | self.display, [INFO] [stdout] 1882 | | self.atoms.selection, [INFO] [stdout] 1883 | | self.atoms.uri_list, [INFO] [stdout] ... | [INFO] [stdout] 1886 | | X11_sys::CurrentTime as X11_sys::Time, [INFO] [stdout] 1887 | | ); [INFO] [stdout] | |_________^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/cx_xlib.rs:1879:5 [INFO] [stdout] | [INFO] [stdout] 1879 | unsafe fn convert_selection(&self, target_window: X11_sys::Window) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1908:29 [INFO] [stdout] | [INFO] [stdout] 1908 | action_private: X11_sys::XInternAtom(display, CString::new("XdndActionPrivate").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/cx_xlib.rs:1906:5 [INFO] [stdout] | [INFO] [stdout] 1906 | unsafe fn new(display: *mut X11_sys::Display) -> DndAtoms { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1909:20 [INFO] [stdout] | [INFO] [stdout] 1909 | aware: X11_sys::XInternAtom(display, CString::new("XdndAware").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1910:19 [INFO] [stdout] | [INFO] [stdout] 1910 | drop: X11_sys::XInternAtom(display, CString::new("XdndDrop").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1911:20 [INFO] [stdout] | [INFO] [stdout] 1911 | enter: X11_sys::XInternAtom(display, CString::new("XdndEnter").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1912:20 [INFO] [stdout] | [INFO] [stdout] 1912 | leave: X11_sys::XInternAtom(display, CString::new("XdndLeave").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1913:19 [INFO] [stdout] | [INFO] [stdout] 1913 | none: X11_sys::XInternAtom(display, CString::new("None").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1914:23 [INFO] [stdout] | [INFO] [stdout] 1914 | position: X11_sys::XInternAtom(display, CString::new("XdndPosition").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1915:24 [INFO] [stdout] | [INFO] [stdout] 1915 | selection: X11_sys::XInternAtom(display, CString::new("XdndSelection").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1916:21 [INFO] [stdout] | [INFO] [stdout] 1916 | status: X11_sys::XInternAtom(display, CString::new("XdndStatus").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1917:24 [INFO] [stdout] | [INFO] [stdout] 1917 | type_list: X11_sys::XInternAtom(display, CString::new("XdndTypeList").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning[E0133]: call to unsafe function `zaplib_x11_sys::XInternAtom` is unsafe and requires unsafe block [INFO] [stdout] --> src/cx_xlib.rs:1918:23 [INFO] [stdout] | [INFO] [stdout] 1918 | uri_list: X11_sys::XInternAtom(display, CString::new("text/uri-list").unwrap().as_ptr(), 0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/fonts.rs:355:17 [INFO] [stdout] | [INFO] [stdout] 355 | let mut fonts_atlas = &mut cx.fonts_data.write().unwrap().fonts_atlas; [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/fonts.rs:355:17 [INFO] [stdout] | [INFO] [stdout] 355 | let mut fonts_atlas = &mut cx.fonts_data.write().unwrap().fonts_atlas; [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] error: aborting due to 1 previous error; 39 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0133`. [INFO] [stdout] [INFO] [stderr] error: could not compile `zaplib` (lib) due to 2 previous errors; 39 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error: aborting due to 1 previous error; 39 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0133`. [INFO] [stdout] [INFO] [stderr] error: could not compile `zaplib` (lib test) due to 2 previous errors; 39 warnings emitted [INFO] [stderr] error: failed to check after updating to 2024 [INFO] [stderr] [INFO] [stderr] Caused by: [INFO] [stderr] process didn't exit successfully: `cargo check --frozen --all --all-targets --message-format=json` (exit status: 101) [INFO] running `Command { std: "docker" "inspect" "a4fdbaccfcd60e48f83b9ed64ab86b032f9c2aaeb76d1800431d5df7d17c03b5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a4fdbaccfcd60e48f83b9ed64ab86b032f9c2aaeb76d1800431d5df7d17c03b5", kill_on_drop: false }` [INFO] [stdout] a4fdbaccfcd60e48f83b9ed64ab86b032f9c2aaeb76d1800431d5df7d17c03b5