[INFO] cloning repository https://github.com/DDRBoxman/decklink-cxx [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/DDRBoxman/decklink-cxx" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDDRBoxman%2Fdecklink-cxx", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDDRBoxman%2Fdecklink-cxx'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] cfe47a415df287f637b0b1f4b0c1e265ed821045 [INFO] checking DDRBoxman/decklink-cxx/cfe47a415df287f637b0b1f4b0c1e265ed821045 against try#ccf408f4326a858c00dd845a64a86b16f360a801 for pr-129466-2 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDDRBoxman%2Fdecklink-cxx" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/DDRBoxman/decklink-cxx 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 git repo https://github.com/DDRBoxman/decklink-cxx [INFO] finished tweaking git repo https://github.com/DDRBoxman/decklink-cxx [INFO] tweaked toml for git repo https://github.com/DDRBoxman/decklink-cxx written to /workspace/builds/worker-0-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/DDRBoxman/decklink-cxx already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [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] e7ccce169f7852b354ac1f4aafd2c167aade43ef758f66e25c8aefb3a659a00b [INFO] running `Command { std: "docker" "start" "-a" "e7ccce169f7852b354ac1f4aafd2c167aade43ef758f66e25c8aefb3a659a00b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "e7ccce169f7852b354ac1f4aafd2c167aade43ef758f66e25c8aefb3a659a00b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e7ccce169f7852b354ac1f4aafd2c167aade43ef758f66e25c8aefb3a659a00b", kill_on_drop: false }` [INFO] [stdout] e7ccce169f7852b354ac1f4aafd2c167aade43ef758f66e25c8aefb3a659a00b [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] 018e5758a9a5fd8788c0e9f4097788896ca9568c3b6d92680d1023bb59207e77 [INFO] running `Command { std: "docker" "start" "-a" "018e5758a9a5fd8788c0e9f4097788896ca9568c3b6d92680d1023bb59207e77", 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] Compiling proc-macro2 v1.0.79 [INFO] [stderr] Compiling libc v0.2.153 [INFO] [stderr] Checking once_cell v1.19.0 [INFO] [stderr] Compiling num-traits v0.2.18 [INFO] [stderr] Compiling pkg-config v0.3.30 [INFO] [stderr] Checking smallvec v1.13.2 [INFO] [stderr] Compiling xml-rs v0.8.20 [INFO] [stderr] Checking log v0.4.21 [INFO] [stderr] Compiling memoffset v0.6.5 [INFO] [stderr] Checking simd-adler32 v0.3.7 [INFO] [stderr] Checking arrayvec v0.7.4 [INFO] [stderr] Checking libloading v0.8.3 [INFO] [stderr] Compiling ahash v0.8.11 [INFO] [stderr] Compiling lock_api v0.4.11 [INFO] [stderr] Compiling crossbeam-utils v0.8.19 [INFO] [stderr] Checking zerocopy v0.7.32 [INFO] [stderr] Checking adler v1.0.2 [INFO] [stderr] Compiling crc32fast v1.4.0 [INFO] [stderr] Checking bitflags v2.5.0 [INFO] [stderr] Checking scopeguard v1.2.0 [INFO] [stderr] Checking dlib v0.5.2 [INFO] [stderr] Checking memchr v2.7.2 [INFO] [stderr] Checking allocator-api2 v0.2.16 [INFO] [stderr] Checking bytemuck v1.15.0 [INFO] [stderr] Checking miniz_oxide v0.7.2 [INFO] [stderr] Compiling slotmap v1.0.7 [INFO] [stderr] Compiling indexmap v1.9.3 [INFO] [stderr] Compiling num-bigint v0.4.4 [INFO] [stderr] Checking equivalent v1.0.1 [INFO] [stderr] Checking scoped-tls v1.0.1 [INFO] [stderr] Compiling parking_lot_core v0.9.9 [INFO] [stderr] Checking downcast-rs v1.2.0 [INFO] [stderr] Compiling link-cplusplus v1.0.9 [INFO] [stderr] Checking fdeflate v0.3.4 [INFO] [stderr] Checking libloading v0.7.4 [INFO] [stderr] Compiling num-rational v0.4.1 [INFO] [stderr] Compiling slab v0.4.9 [INFO] [stderr] Checking hashbrown v0.14.3 [INFO] [stderr] Compiling ash v0.37.3+1.3.251 [INFO] [stderr] Compiling semver v1.0.22 [INFO] [stderr] Checking crossbeam-epoch v0.9.18 [INFO] [stderr] Compiling wayland-sys v0.29.5 [INFO] [stderr] Checking fixedbitset v0.4.2 [INFO] [stderr] Checking termcolor v1.4.1 [INFO] [stderr] Compiling scratch v1.0.7 [INFO] [stderr] Checking flate2 v1.0.28 [INFO] [stderr] Compiling anyhow v1.0.81 [INFO] [stderr] Compiling khronos-egl v4.1.0 [INFO] [stderr] Checking bit-vec v0.6.3 [INFO] [stderr] Compiling quote v1.0.35 [INFO] [stderr] Compiling smithay-client-toolkit v0.16.1 [INFO] [stderr] Checking codespan-reporting v0.11.1 [INFO] [stderr] Checking crossbeam-deque v0.8.5 [INFO] [stderr] Checking bit-set v0.5.3 [INFO] [stderr] Checking gpu-alloc-types v0.3.0 [INFO] [stderr] Checking gpu-descriptor-types v0.1.2 [INFO] [stderr] Compiling syn v2.0.57 [INFO] [stderr] Compiling wayland-scanner v0.29.5 [INFO] [stderr] Checking xcursor v0.3.5 [INFO] [stderr] Checking png v0.17.13 [INFO] [stderr] Checking rayon-core v1.12.1 [INFO] [stderr] Checking ttf-parser v0.20.0 [INFO] [stderr] Checking strict-num v0.1.1 [INFO] [stderr] Compiling cxxbridge-flags v1.0.120 [INFO] [stderr] Checking vec_map v0.8.2 [INFO] [stderr] Compiling built v0.7.1 [INFO] [stderr] Checking raw-window-handle v0.5.2 [INFO] [stderr] Checking indexmap v2.2.6 [INFO] [stderr] Checking minimal-lexical v0.2.1 [INFO] [stderr] Compiling unicode-width v0.1.11 [INFO] [stderr] Checking aligned-vec v0.5.0 [INFO] [stderr] Checking futures-sink v0.3.30 [INFO] [stderr] Checking rustc-hash v1.1.0 [INFO] [stderr] Checking hexf-parse v0.2.1 [INFO] [stderr] Checking unicode-xid v0.2.4 [INFO] [stderr] Checking futures-core v0.3.30 [INFO] [stderr] Checking num-integer v0.1.46 [INFO] [stderr] Checking spirv v0.2.0+1.5.4 [INFO] [stderr] Checking v_frame v0.3.8 [INFO] [stderr] Checking gpu-descriptor v0.2.4 [INFO] [stderr] Checking tiny-skia-path v0.8.4 [INFO] [stderr] Checking rayon v1.10.0 [INFO] [stderr] Checking futures-channel v0.3.30 [INFO] [stderr] Checking nom v7.1.3 [INFO] [stderr] Compiling rav1e v0.7.1 [INFO] [stderr] Compiling cxx v1.0.120 [INFO] [stderr] Checking gpu-alloc v0.6.0 [INFO] [stderr] Checking nix v0.24.3 [INFO] [stderr] Checking nix v0.25.1 [INFO] [stderr] Checking memmap2 v0.5.10 [INFO] [stderr] Checking petgraph v0.6.4 [INFO] [stderr] Checking parking_lot v0.12.1 [INFO] [stderr] Compiling x11-dl v2.21.0 [INFO] [stderr] Checking wgpu-types v0.17.0 [INFO] [stderr] Checking renderdoc-sys v1.1.0 [INFO] [stderr] Checking futures-io v0.3.30 [INFO] [stderr] Compiling cfg_aliases v0.1.1 [INFO] [stderr] Checking pin-utils v0.1.0 [INFO] [stderr] Checking ab_glyph_rasterizer v0.1.8 [INFO] [stderr] Compiling wayland-client v0.29.5 [INFO] [stderr] Compiling wayland-protocols v0.29.5 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Checking glow v0.12.3 [INFO] [stderr] Checking pin-project-lite v0.2.14 [INFO] [stderr] Checking futures-task v0.3.30 [INFO] [stderr] Compiling same-file v1.0.6 [INFO] [stderr] Checking futures-util v0.3.30 [INFO] [stderr] Compiling winit v0.28.7 [INFO] [stderr] Compiling walkdir v2.5.0 [INFO] [stderr] Checking owned_ttf_parser v0.20.0 [INFO] [stderr] Compiling rustc_version v0.4.0 [INFO] [stderr] Checking tiny-skia v0.8.4 [INFO] [stderr] Checking ab_glyph v0.2.23 [INFO] [stderr] Checking wayland-commons v0.29.5 [INFO] [stderr] Checking av1-grain v0.2.3 [INFO] [stderr] Compiling simd_helpers v0.1.0 [INFO] [stderr] Checking spin v0.9.8 [INFO] [stderr] Checking bitstream-io v2.2.0 [INFO] [stderr] Compiling noop_proc_macro v0.3.0 [INFO] [stderr] Checking new_debug_unreachable v1.0.6 [INFO] [stderr] Checking imgref v1.10.1 [INFO] [stderr] Checking weezl v0.1.8 [INFO] [stderr] Checking flume v0.11.0 [INFO] [stderr] Compiling show-image v0.14.0 [INFO] [stderr] Checking maybe-rayon v0.1.1 [INFO] [stderr] Checking loop9 v0.1.5 [INFO] [stderr] Checking mio v0.8.11 [INFO] [stderr] Checking rgb v0.8.37 [INFO] [stderr] Checking avif-serialize v0.8.1 [INFO] [stderr] Checking zune-inflate v0.2.54 [INFO] [stderr] Checking half v2.4.0 [INFO] [stderr] Checking instant v0.1.12 [INFO] [stderr] Checking zune-core v0.4.12 [INFO] [stderr] Checking color_quant v1.1.0 [INFO] [stderr] Checking byteorder v1.5.0 [INFO] [stderr] Checking static_assertions v1.1.0 [INFO] [stderr] Checking bit_field v0.10.2 [INFO] [stderr] Checking lebe v0.5.2 [INFO] [stderr] Checking jpeg-decoder v0.3.1 [INFO] [stderr] Checking quick-error v2.0.1 [INFO] [stderr] Checking percent-encoding v2.3.1 [INFO] [stderr] Checking zune-jpeg v0.4.11 [INFO] [stderr] Checking gif v0.13.1 [INFO] [stderr] Checking qoi v0.4.1 [INFO] [stderr] Checking glam v0.24.2 [INFO] [stderr] Checking exr v1.72.0 [INFO] [stderr] Compiling cxx-build v1.0.120 [INFO] [stderr] Checking tiff v0.9.1 [INFO] [stderr] Checking wayland-cursor v0.29.5 [INFO] [stderr] Compiling thiserror-impl v1.0.58 [INFO] [stderr] Compiling profiling-procmacros v1.0.15 [INFO] [stderr] Compiling arg_enum_proc_macro v0.3.4 [INFO] [stderr] Compiling num-derive v0.4.2 [INFO] [stderr] Compiling cxxbridge-macro v1.0.120 [INFO] [stderr] Checking futures-executor v0.3.30 [INFO] [stderr] Checking futures v0.3.30 [INFO] [stderr] Checking profiling v1.0.15 [INFO] [stderr] Checking thiserror v1.0.58 [INFO] [stderr] Checking naga v0.13.0 [INFO] [stderr] Checking calloop v0.10.6 [INFO] [stderr] Checking image-webp v0.1.1 [INFO] [stderr] Compiling decklink-cxx v0.1.0 (/tmp/fixit) [INFO] [stderr] Migrating build.rs from 2021 edition to 2024 [INFO] [stderr] Compiling show-image-macros v0.12.3 [INFO] [stderr] Fixed build.rs (1 fix) [INFO] [stdout] warning: function `invoke_vcvars_if_not_set` is never used [INFO] [stdout] --> build.rs:84:4 [INFO] [stdout] | [INFO] [stdout] 84 | fn invoke_vcvars_if_not_set() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `vcvars_set` is never used [INFO] [stdout] --> build.rs:132:4 [INFO] [stdout] | [INFO] [stdout] 132 | fn vcvars_set() -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `search_vcvars_all_bat` is never used [INFO] [stdout] --> build.rs:141:4 [INFO] [stdout] | [INFO] [stdout] 141 | fn search_vcvars_all_bat() -> PathBuf { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `guess_vcvars_all_bat` is never used [INFO] [stdout] --> build.rs:183:4 [INFO] [stdout] | [INFO] [stdout] 183 | fn guess_vcvars_all_bat() -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `determine_vcvarsall_bat_arch_arg` is never used [INFO] [stdout] --> build.rs:257:4 [INFO] [stdout] | [INFO] [stdout] 257 | fn determine_vcvarsall_bat_arch_arg() -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 5 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] warning: decklink-cxx@0.1.0: Compiler version doesn't include clang or GCC: "c++" "--version" [INFO] [stderr] warning: decklink-cxx@0.1.0: Compiler version doesn't include clang or GCC: "c++" "--version" [INFO] [stderr] warning: decklink-cxx@0.1.0: In file included from /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/include/decklink-cxx/src/bridge.rs.h:5, [INFO] [stderr] warning: decklink-cxx@0.1.0: from /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/crate/decklink-cxx/include/callback.h:2, [INFO] [stderr] warning: decklink-cxx@0.1.0: from /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/sources/decklink-cxx/src/bridge.rs.cc:3: [INFO] [stderr] warning: decklink-cxx@0.1.0: /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/crate/decklink-cxx/include/bridge.h: In constructor 'ConversionFrame::ConversionFrame(long int, long int, long int, BMDPixelFormat)': [INFO] [stderr] warning: decklink-cxx@0.1.0: /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/crate/decklink-cxx/include/bridge.h:47:33: warning: 'ConversionFrame::m_timeScale' will be initialized after [-Wreorder] [INFO] [stderr] warning: decklink-cxx@0.1.0: 47 | BMDTimeScale m_timeScale; [INFO] [stderr] warning: decklink-cxx@0.1.0: | ^~~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/crate/decklink-cxx/include/bridge.h:42:17: warning: 'int32_t ConversionFrame::m_refCount' [-Wreorder] [INFO] [stderr] warning: decklink-cxx@0.1.0: 42 | int32_t m_refCount; [INFO] [stderr] warning: decklink-cxx@0.1.0: | ^~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/crate/decklink-cxx/include/bridge.h:53:5: warning: when initialized here [-Wreorder] [INFO] [stderr] warning: decklink-cxx@0.1.0: 53 | ConversionFrame(long width, long height, long rowBytes, BMDPixelFormat pixelFormat) : [INFO] [stderr] warning: decklink-cxx@0.1.0: | ^~~~~~~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: In file included from /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/include/decklink-cxx/src/bridge.rs.h:5, [INFO] [stderr] warning: decklink-cxx@0.1.0: from /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/crate/decklink-cxx/include/callback.h:2, [INFO] [stderr] warning: decklink-cxx@0.1.0: from ./include/callback.cc:1: [INFO] [stderr] warning: decklink-cxx@0.1.0: /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/crate/decklink-cxx/include/bridge.h: In constructor 'ConversionFrame::ConversionFrame(long int, long int, long int, BMDPixelFormat)': [INFO] [stderr] warning: decklink-cxx@0.1.0: /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/crate/decklink-cxx/include/bridge.h:47:33: warning: 'ConversionFrame::m_timeScale' will be initialized after [-Wreorder] [INFO] [stderr] warning: decklink-cxx@0.1.0: 47 | BMDTimeScale m_timeScale; [INFO] [stderr] warning: decklink-cxx@0.1.0: | ^~~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/crate/decklink-cxx/include/bridge.h:42:17: warning: 'int32_t ConversionFrame::m_refCount' [-Wreorder] [INFO] [stderr] warning: decklink-cxx@0.1.0: 42 | int32_t m_refCount; [INFO] [stderr] warning: decklink-cxx@0.1.0: | ^~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/crate/decklink-cxx/include/bridge.h:53:5: warning: when initialized here [-Wreorder] [INFO] [stderr] warning: decklink-cxx@0.1.0: 53 | ConversionFrame(long width, long height, long rowBytes, BMDPixelFormat pixelFormat) : [INFO] [stderr] warning: decklink-cxx@0.1.0: | ^~~~~~~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc: In member function 'virtual HRESULT CXXInputCallback::VideoInputFormatChanged(BMDVideoInputFormatChangedEvents, IDeckLinkDisplayMode*, BMDDetectedVideoInputFormatFlags)': [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc:5:85: warning: unused parameter 'notificationEvents' [-Wunused-parameter] [INFO] [stderr] warning: decklink-cxx@0.1.0: 5 | HRESULT CXXInputCallback::VideoInputFormatChanged (BMDVideoInputFormatChangedEvents notificationEvents, IDeckLinkDisplayMode* newDisplayMode, BMDDetectedVideoInputFormatFlags detectedSignalFlags) { [INFO] [stderr] warning: decklink-cxx@0.1.0: | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc:5:127: warning: unused parameter 'newDisplayMode' [-Wunused-parameter] [INFO] [stderr] warning: decklink-cxx@0.1.0: 5 | HRESULT CXXInputCallback::VideoInputFormatChanged (BMDVideoInputFormatChangedEvents notificationEvents, IDeckLinkDisplayMode* newDisplayMode, BMDDetectedVideoInputFormatFlags detectedSignalFlags) { [INFO] [stderr] warning: decklink-cxx@0.1.0: | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc:5:176: warning: unused parameter 'detectedSignalFlags' [-Wunused-parameter] [INFO] [stderr] warning: decklink-cxx@0.1.0: 5 | HRESULT CXXInputCallback::VideoInputFormatChanged (BMDVideoInputFormatChangedEvents notificationEvents, IDeckLinkDisplayMode* newDisplayMode, BMDDetectedVideoInputFormatFlags detectedSignalFlags) { [INFO] [stderr] warning: decklink-cxx@0.1.0: | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc: In member function 'virtual HRESULT CXXInputCallback::VideoInputFrameArrived(IDeckLinkVideoInputFrame*, IDeckLinkAudioInputPacket*)': [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc:10:115: warning: unused parameter 'audioPacket' [-Wunused-parameter] [INFO] [stderr] warning: decklink-cxx@0.1.0: 10 | HRESULT CXXInputCallback::VideoInputFrameArrived(IDeckLinkVideoInputFrame* videoFrame, IDeckLinkAudioInputPacket* audioPacket) { [INFO] [stderr] warning: decklink-cxx@0.1.0: | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc: In member function 'virtual HRESULT CXXInputCallback::QueryInterface(REFIID, void**)': [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc:15:68: warning: unused parameter 'iid' [-Wunused-parameter] [INFO] [stderr] warning: decklink-cxx@0.1.0: 15 | HRESULT STDMETHODCALLTYPE CXXInputCallback::QueryInterface (REFIID iid, LPVOID *ppv) [INFO] [stderr] warning: decklink-cxx@0.1.0: | ~~~~~~~^~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc: In member function 'virtual HRESULT CXXOutputCallback::ScheduledFrameCompleted(IDeckLinkVideoFrame*, BMDOutputFrameCompletionResult)': [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc:39:120: warning: unused parameter 'result' [-Wunused-parameter] [INFO] [stderr] warning: decklink-cxx@0.1.0: 39 | HRESULT CXXOutputCallback::ScheduledFrameCompleted(IDeckLinkVideoFrame* completedFrame, BMDOutputFrameCompletionResult result) { [INFO] [stderr] warning: decklink-cxx@0.1.0: | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc: In member function 'virtual HRESULT CXXOutputCallback::QueryInterface(REFIID, void**)': [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc:49:69: warning: unused parameter 'iid' [-Wunused-parameter] [INFO] [stderr] warning: decklink-cxx@0.1.0: 49 | HRESULT STDMETHODCALLTYPE CXXOutputCallback::QueryInterface (REFIID iid, LPVOID *ppv) [INFO] [stderr] warning: decklink-cxx@0.1.0: | ~~~~~~~^~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: In file included from ./include/bridge.cc:1: [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/bridge.h: In constructor 'ConversionFrame::ConversionFrame(long int, long int, long int, BMDPixelFormat)': [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/bridge.h:47:33: warning: 'ConversionFrame::m_timeScale' will be initialized after [-Wreorder] [INFO] [stderr] warning: decklink-cxx@0.1.0: 47 | BMDTimeScale m_timeScale; [INFO] [stderr] warning: decklink-cxx@0.1.0: | ^~~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/bridge.h:42:17: warning: 'int32_t ConversionFrame::m_refCount' [-Wreorder] [INFO] [stderr] warning: decklink-cxx@0.1.0: 42 | int32_t m_refCount; [INFO] [stderr] warning: decklink-cxx@0.1.0: | ^~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/bridge.h:53:5: warning: when initialized here [-Wreorder] [INFO] [stderr] warning: decklink-cxx@0.1.0: 53 | ConversionFrame(long width, long height, long rowBytes, BMDPixelFormat pixelFormat) : [INFO] [stderr] warning: decklink-cxx@0.1.0: | ^~~~~~~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/bridge.cc: In member function 'virtual HRESULT ConversionFrame::QueryInterface(REFIID, void**)': [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/bridge.cc:101:67: warning: unused parameter 'iid' [-Wunused-parameter] [INFO] [stderr] warning: decklink-cxx@0.1.0: 101 | HRESULT STDMETHODCALLTYPE ConversionFrame::QueryInterface (REFIID iid, LPVOID *ppv) [INFO] [stderr] warning: decklink-cxx@0.1.0: | ~~~~~~~^~~ [INFO] [stderr] Migrating src/lib.rs from 2021 edition to 2024 [INFO] [stderr] warning: failed to automatically apply fixes suggested by rustc to crate `decklink_cxx` [INFO] [stderr] [INFO] [stderr] after fixes were automatically applied the compiler reported errors within these files: [INFO] [stderr] [INFO] [stderr] * src/bridge.rs [INFO] [stderr] * src/lib.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: expected one of `:`, `;`, `<`, `=`, or `where`, found `(` [INFO] [stderr] --> src/bridge.rs:66:22 [INFO] [stderr] | [INFO] [stderr] 65 | extern "Rust" { [INFO] [stderr] | - while parsing this item list starting here [INFO] [stderr] 66 | type Ruunsafe(stInputCallbac)k<'a>; [INFO] [stderr] | ^ expected one of `:`, `;`, `<`, `=`, or `where` [INFO] [stderr] ... [INFO] [stderr] 79 | } [INFO] [stderr] | - the item list ends here [INFO] [stderr] [INFO] [stderr] error: expected one of `->`, `;`, `where`, or `{`, found keyword `unsafe` [INFO] [stderr] --> src/bridge.rs:475:46 [INFO] [stderr] | [INFO] [stderr] 243 | unsafe extern "C++" { [INFO] [stderr] | - while parsing this item list starting here [INFO] [stderr] ... [INFO] [stderr] 475 | unsafe fn Release(obj: *mut IUnknown)unsafe ; [INFO] [stderr] | ^^^^^^ expected one of `->`, `;`, `where`, or `{` [INFO] [stderr] ... [INFO] [stderr] 489 | } [INFO] [stderr] | - the item list ends here [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/bridge.rs:3:16 [INFO] [stderr] | [INFO] [stderr] 3 | ($r:ident, $c: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[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/bridge.rs:18:16 [INFO] [stderr] | [INFO] [stderr] 18 | ($r:ident, $c:expr_2021, $t:ident) => { [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: expected `;` [INFO] [stderr] --> src/bridge.rs:66:22 [INFO] [stderr] | [INFO] [stderr] 66 | type Ruunsafe(stInputCallbac)k<'a>; [INFO] [stderr] | ^ [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved imports `bridge::decklink_ffi`, `bridge::decklink_ffi` [INFO] [stderr] --> src/lib.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | decklink_ffi::{self, IDeckLinkVideoFrame}, [INFO] [stderr] | ^^^^^^^^^^^^ ^^^^ no `decklink_ffi` in `bridge` [INFO] [stderr] | | [INFO] [stderr] | could not find `decklink_ffi` in `bridge` [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: use of undeclared crate or module `decklink_ffi` [INFO] [stderr] --> src/bridge.rs:493:48 [INFO] [stderr] | [INFO] [stderr] 493 | frame_arrived_callback: Box, [INFO] [stderr] | ^^^^^^^^^^^^ use of undeclared crate or module `decklink_ffi` [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: use of undeclared crate or module `decklink_ffi` [INFO] [stderr] --> src/bridge.rs:498:49 [INFO] [stderr] | [INFO] [stderr] 498 | frame_arrived_callback: impl FnMut(*mut decklink_ffi::IDeckLinkVideoInputFrame) + 'a, [INFO] [stderr] | ^^^^^^^^^^^^ use of undeclared crate or module `decklink_ffi` [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: use of undeclared crate or module `decklink_ffi` [INFO] [stderr] --> src/bridge.rs:511:27 [INFO] [stderr] | [INFO] [stderr] 511 | video_frame: *mut decklink_ffi::IDeckLinkVideoInputFrame, [INFO] [stderr] | ^^^^^^^^^^^^ use of undeclared crate or module `decklink_ffi` [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: use of undeclared crate or module `decklink_ffi` [INFO] [stderr] --> src/bridge.rs:518:50 [INFO] [stderr] | [INFO] [stderr] 518 | frame_completed_callback: Box, [INFO] [stderr] | ^^^^^^^^^^^^ use of undeclared crate or module `decklink_ffi` [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: use of undeclared crate or module `decklink_ffi` [INFO] [stderr] --> src/bridge.rs:523:51 [INFO] [stderr] | [INFO] [stderr] 523 | frame_completed_callback: impl FnMut(*mut decklink_ffi::IDeckLinkVideoFrame) + 'a, [INFO] [stderr] | ^^^^^^^^^^^^ use of undeclared crate or module `decklink_ffi` [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: use of undeclared crate or module `decklink_ffi` [INFO] [stderr] --> src/bridge.rs:532:27 [INFO] [stderr] | [INFO] [stderr] 532 | video_frame: *mut decklink_ffi::IDeckLinkVideoFrame, [INFO] [stderr] | ^^^^^^^^^^^^ use of undeclared crate or module `decklink_ffi` [INFO] [stderr] [INFO] [stderr] error: aborting due to 12 previous errors [INFO] [stderr] [INFO] [stderr] Some errors have detailed explanations: E0432, E0433, E0658. [INFO] [stderr] For more information about an error, try `rustc --explain E0432`. [INFO] [stderr] Original diagnostics will follow. [INFO] [stderr] [INFO] [stdout] warning: unsafe attribute used without unsafe [INFO] [stdout] --> src/bridge.rs:67:14 [INFO] [stdout] | [INFO] [stdout] 67 | type RustInputCallback<'a>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ usage of unsafe attribute [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 #123757 [INFO] [stdout] = note: `--force-warn unsafe-attr-outside-unsafe` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 67 | type Ruunsafe(stInputCallbac)k<'a>; [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unsafe attribute used without unsafe [INFO] [stdout] --> src/bridge.rs:68:64 [INFO] [stdout] | [INFO] [stdout] 68 | fn video_input_format_changed(self: &RustInputCallback); [INFO] [stdout] | ^ usage of unsafe attribute [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 #123757 [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 68 | fn video_input_format_changed(self: &RustInputCallback)unsafe(;) [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unsafe attribute used without unsafe [INFO] [stdout] --> src/bridge.rs:72:10 [INFO] [stdout] | [INFO] [stdout] 72 | ); [INFO] [stdout] | ^ usage of unsafe attribute [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 #123757 [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 72 | )unsafe(;) [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unsafe attribute used without unsafe [INFO] [stdout] --> src/bridge.rs:74:14 [INFO] [stdout] | [INFO] [stdout] 74 | type RustOutputCallback<'a>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ usage of unsafe attribute [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 #123757 [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 74 | type Ruunsafe(stOutputCallbac)k<'a>; [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unsafe attribute used without unsafe [INFO] [stdout] --> src/bridge.rs:78:10 [INFO] [stdout] | [INFO] [stdout] 78 | ); [INFO] [stdout] | ^ usage of unsafe attribute [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 #123757 [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 78 | )unsafe(;) [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unsafe attribute used without unsafe [INFO] [stdout] --> src/bridge.rs:79:69 [INFO] [stdout] | [INFO] [stdout] 79 | fn scheduled_playback_has_stopped(self: &RustOutputCallback); [INFO] [stdout] | ^ usage of unsafe attribute [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 #123757 [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 79 | fn scheduled_playback_has_stopped(self: &RustOutputCallback)unsafe(;) [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::pin::Pin` [INFO] [stdout] --> src/bridge.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::pin::Pin; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/bridge.rs:4:19 [INFO] [stdout] | [INFO] [stdout] 4 | ($r:ident, $c: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] 4 | ($r:ident, $c:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/bridge.rs:19:19 [INFO] [stdout] | [INFO] [stdout] 19 | ($r:ident, $c:expr, $t:ident) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 19 | ($r:ident, $c:expr_2021, $t:ident) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:258:82 [INFO] [stdout] | [INFO] [stdout] 258 | fn CreateDeckLinkAPIInformationInstance() -> *mut IDeckLinkAPIInformation; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] = note: `--force-warn missing-unsafe-on-extern` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:264:23 [INFO] [stdout] | [INFO] [stdout] 264 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:265:71 [INFO] [stdout] | [INFO] [stdout] 265 | fn Release(self: Pin<&mut IDeckLinkAPIInformation>) -> c_ulong; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:271:57 [INFO] [stdout] | [INFO] [stdout] 271 | fn Release(self: Pin<&mut IDeckLink>) -> c_ulong; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:273:70 [INFO] [stdout] | [INFO] [stdout] 273 | fn CreateDeckLinkIteratorInstance() -> *mut IDeckLinkIterator; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:278:23 [INFO] [stdout] | [INFO] [stdout] 278 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:280:65 [INFO] [stdout] | [INFO] [stdout] 280 | fn Release(self: Pin<&mut IDeckLinkIterator>) -> c_ulong; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:291:23 [INFO] [stdout] | [INFO] [stdout] 291 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:296:23 [INFO] [stdout] | [INFO] [stdout] 296 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:298:76 [INFO] [stdout] | [INFO] [stdout] 298 | fn Release(self: Pin<&mut IDeckLinkDisplayModeIterator>) -> c_ulong; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:300:84 [INFO] [stdout] | [INFO] [stdout] 300 | fn GetDisplayMode(self: Pin<&mut IDeckLinkDisplayMode>) -> c_BMDDisplayMode; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:301:68 [INFO] [stdout] | [INFO] [stdout] 301 | fn GetWidth(self: Pin<&mut IDeckLinkDisplayMode>) -> c_long; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:302:69 [INFO] [stdout] | [INFO] [stdout] 302 | fn GetHeight(self: Pin<&mut IDeckLinkDisplayMode>) -> c_long; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:307:23 [INFO] [stdout] | [INFO] [stdout] 307 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:308:68 [INFO] [stdout] | [INFO] [stdout] 308 | fn Release(self: Pin<&mut IDeckLinkDisplayMode>) -> c_ulong; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:325:23 [INFO] [stdout] | [INFO] [stdout] 325 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:326:69 [INFO] [stdout] | [INFO] [stdout] 326 | fn StartStreams(self: Pin<&mut IDeckLinkInput>) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:327:68 [INFO] [stdout] | [INFO] [stdout] 327 | fn StopStreams(self: Pin<&mut IDeckLinkInput>) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:328:62 [INFO] [stdout] | [INFO] [stdout] 328 | fn Release(self: Pin<&mut IDeckLinkInput>) -> c_ulong; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:333:23 [INFO] [stdout] | [INFO] [stdout] 333 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:346:23 [INFO] [stdout] | [INFO] [stdout] 346 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:350:23 [INFO] [stdout] | [INFO] [stdout] 350 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:354:23 [INFO] [stdout] | [INFO] [stdout] 354 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:355:94 [INFO] [stdout] | [INFO] [stdout] 355 | fn DetachAllPackets(self: Pin<&mut IDeckLinkVideoFrameAncillaryPackets>) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:357:66 [INFO] [stdout] | [INFO] [stdout] 357 | fn GetDID(self: Pin<&mut IDeckLinkAncillaryPacket>) -> u8; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:358:67 [INFO] [stdout] | [INFO] [stdout] 358 | fn GetSDID(self: Pin<&mut IDeckLinkAncillaryPacket>) -> u8; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:359:74 [INFO] [stdout] | [INFO] [stdout] 359 | fn GetLineNumber(self: Pin<&mut IDeckLinkAncillaryPacket>) -> u32; // On output, zero is auto [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:360:78 [INFO] [stdout] | [INFO] [stdout] 360 | ... fn GetDataStreamIndex(self: Pin<&mut IDeckLinkAncillaryPacket>) -> u8; // Usually zero. Can only be 1 if non-SD and the first data ... [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:362:67 [INFO] [stdout] | [INFO] [stdout] 362 | fn GetWidth(self: Pin<&mut IDeckLinkVideoFrame>) -> c_long; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:363:68 [INFO] [stdout] | [INFO] [stdout] 363 | fn GetHeight(self: Pin<&mut IDeckLinkVideoFrame>) -> c_long; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:364:70 [INFO] [stdout] | [INFO] [stdout] 364 | fn GetRowBytes(self: Pin<&mut IDeckLinkVideoFrame>) -> c_long; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:369:23 [INFO] [stdout] | [INFO] [stdout] 369 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:375:23 [INFO] [stdout] | [INFO] [stdout] 375 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:381:23 [INFO] [stdout] | [INFO] [stdout] 381 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:387:23 [INFO] [stdout] | [INFO] [stdout] 387 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:395:23 [INFO] [stdout] | [INFO] [stdout] 395 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:404:23 [INFO] [stdout] | [INFO] [stdout] 404 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:409:23 [INFO] [stdout] | [INFO] [stdout] 409 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:411:63 [INFO] [stdout] | [INFO] [stdout] 411 | fn Release(self: Pin<&mut IDeckLinkOutput>) -> c_ulong; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:415:76 [INFO] [stdout] | [INFO] [stdout] 415 | fn CreateVideoConversionInstance() -> *mut IDeckLinkVideoConversion; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:421:23 [INFO] [stdout] | [INFO] [stdout] 421 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:425:56 [INFO] [stdout] | [INFO] [stdout] 425 | fn Release(self: Pin<&mut IUnknown>) -> c_ulong; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:444:34 [INFO] [stdout] | [INFO] [stdout] 444 | ) -> *mut ConversionFrame; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:446:96 [INFO] [stdout] | [INFO] [stdout] 446 | unsafe fn new_input_callback(callback: *mut RustInputCallback) -> *mut CXXInputCallback; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:448:99 [INFO] [stdout] | [INFO] [stdout] 448 | unsafe fn new_output_callback(callback: *mut RustOutputCallback) -> *mut CXXOutputCallback; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:450:69 [INFO] [stdout] | [INFO] [stdout] 450 | unsafe fn GetDisplayName(decklink: *mut IDeckLink) -> String; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:452:87 [INFO] [stdout] | [INFO] [stdout] 452 | unsafe fn GetDisplayModeName(displayMode: *mut IDeckLinkDisplayMode) -> String; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:454:99 [INFO] [stdout] | [INFO] [stdout] 454 | unsafe fn GetInput(decklink: *mut IDeckLink, input: *mut *mut IDeckLinkInput) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:459:23 [INFO] [stdout] | [INFO] [stdout] 459 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:464:23 [INFO] [stdout] | [INFO] [stdout] 464 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:467:25 [INFO] [stdout] | [INFO] [stdout] 467 | -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:474:23 [INFO] [stdout] | [INFO] [stdout] 474 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:476:46 [INFO] [stdout] | [INFO] [stdout] 476 | unsafe fn Release(obj: *mut IUnknown); [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ConversionFrame` [INFO] [stdout] --> src/lib.rs:4:26 [INFO] [stdout] | [INFO] [stdout] 4 | decklink_ffi::{self, ConversionFrame, IDeckLinkVideoFrame}, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `marker::PhantomData` [INFO] [stdout] --> src/lib.rs:8:11 [INFO] [stdout] | [INFO] [stdout] 8 | use std::{marker::PhantomData, pin::Pin, ptr}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/lib.rs:89:13 [INFO] [stdout] | [INFO] [stdout] 89 | let result = unsafe { decklink_ffi::GetOutput(self.device, output_ptr) }; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/lib.rs:100:13 [INFO] [stdout] | [INFO] [stdout] 100 | let result = unsafe { decklink_ffi::GetInput(self.device, input_ptr) }; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/lib.rs:158:13 [INFO] [stdout] | [INFO] [stdout] 158 | let result = unsafe { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/lib.rs:181:13 [INFO] [stdout] | [INFO] [stdout] 181 | let result = unsafe { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `frame` [INFO] [stdout] --> src/lib.rs:222:47 [INFO] [stdout] | [INFO] [stdout] 222 | let frame_completion_callback = move |frame: *mut decklink_ffi::IDeckLinkVideoFrame| { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_frame` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:289:13 [INFO] [stdout] | [INFO] [stdout] 289 | let mut pin: Pin<&mut decklink_ffi::IDeckLinkVideoFrame> = [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: unused variable: `res` [INFO] [stdout] --> src/lib.rs:361:13 [INFO] [stdout] | [INFO] [stdout] 361 | let res = unsafe { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/lib.rs:392:13 [INFO] [stdout] | [INFO] [stdout] 392 | let result = unsafe { pin.GetPacketIterator(ancillary_packet_iterator_ptr) }; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/lib.rs:399:13 [INFO] [stdout] | [INFO] [stdout] 399 | let result = unsafe { pin.AttachPacket(packet.packet) }; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/lib.rs:406:13 [INFO] [stdout] | [INFO] [stdout] 406 | let result = unsafe { pin.DetachPacket(packet.packet) }; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/lib.rs:413:13 [INFO] [stdout] | [INFO] [stdout] 413 | let result = pin.DetachAllPackets(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> src/lib.rs:638:13 [INFO] [stdout] | [INFO] [stdout] 638 | let res = [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BMDDeckLinkAPIInformationID` is never constructed [INFO] [stdout] --> src/bridge.rs:250:14 [INFO] [stdout] | [INFO] [stdout] 250 | type BMDDeckLinkAPIInformationID; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BMDPixelFormat` is never constructed [INFO] [stdout] --> src/bridge.rs:252:14 [INFO] [stdout] | [INFO] [stdout] 252 | type BMDPixelFormat; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BMDDisplayMode` is never constructed [INFO] [stdout] --> src/bridge.rs:254:14 [INFO] [stdout] | [INFO] [stdout] 254 | type BMDDisplayMode; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BMDAncillaryPacketFormat` is never constructed [INFO] [stdout] --> src/bridge.rs:256:14 [INFO] [stdout] | [INFO] [stdout] 256 | type BMDAncillaryPacketFormat; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `Release` is never used [INFO] [stdout] --> src/bridge.rs:265:12 [INFO] [stdout] | [INFO] [stdout] 265 | fn Release(self: Pin<&mut IDeckLinkAPIInformation>) -> c_ulong; [INFO] [stdout] | ^^^^^^^ method in this implementation [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `Release` is never used [INFO] [stdout] --> src/bridge.rs:271:12 [INFO] [stdout] | [INFO] [stdout] 271 | fn Release(self: Pin<&mut IDeckLink>) -> c_ulong; [INFO] [stdout] | ^^^^^^^ method in this implementation [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `Release` is never used [INFO] [stdout] --> src/bridge.rs:280:12 [INFO] [stdout] | [INFO] [stdout] 280 | fn Release(self: Pin<&mut IDeckLinkIterator>) -> c_ulong; [INFO] [stdout] | ^^^^^^^ method in this implementation [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `Release` is never used [INFO] [stdout] --> src/bridge.rs:298:12 [INFO] [stdout] | [INFO] [stdout] 298 | fn Release(self: Pin<&mut IDeckLinkDisplayModeIterator>) -> c_ulong; [INFO] [stdout] | ^^^^^^^ method in this implementation [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `GetFrameRate` is never used [INFO] [stdout] --> src/bridge.rs:303:19 [INFO] [stdout] | [INFO] [stdout] 303 | unsafe fn GetFrameRate( [INFO] [stdout] | ^^^^^^^^^^^^ method in this implementation [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `Release` is never used [INFO] [stdout] --> src/bridge.rs:308:12 [INFO] [stdout] | [INFO] [stdout] 308 | fn Release(self: Pin<&mut IDeckLinkDisplayMode>) -> c_ulong; [INFO] [stdout] | ^^^^^^^ method in this implementation [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `Release` is never used [INFO] [stdout] --> src/bridge.rs:328:12 [INFO] [stdout] | [INFO] [stdout] 328 | fn Release(self: Pin<&mut IDeckLinkInput>) -> c_ulong; [INFO] [stdout] | ^^^^^^^ method in this implementation [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `Release` is never used [INFO] [stdout] --> src/bridge.rs:411:12 [INFO] [stdout] | [INFO] [stdout] 411 | fn Release(self: Pin<&mut IDeckLinkOutput>) -> c_ulong; [INFO] [stdout] | ^^^^^^^ method in this implementation [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `Release` is never used [INFO] [stdout] --> src/bridge.rs:425:12 [INFO] [stdout] | [INFO] [stdout] 425 | fn Release(self: Pin<&mut IUnknown>) -> c_ulong; [INFO] [stdout] | ^^^^^^^ method in this implementation [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `c_ulong` is never used [INFO] [stdout] --> src/bridge.rs:479:14 [INFO] [stdout] | [INFO] [stdout] 479 | type c_ulong = crate::bridge::decklink_type_wrappers::c_ulong; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 90 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking ravif v0.11.5 [INFO] [stderr] Checking image v0.25.1 [INFO] [stderr] Checking wgpu-hal v0.17.2 [INFO] [stderr] Checking wgpu-core v0.17.1 [INFO] [stderr] Checking sctk-adwaita v0.5.4 [INFO] [stderr] Checking wgpu v0.17.2 [INFO] [stderr] Migrating examples/apiinfo.rs from 2021 edition to 2024 [INFO] [stderr] Migrating examples/output.rs from 2021 edition to 2024 [INFO] [stderr] warning: failed to automatically apply fixes suggested by rustc to crate `decklink_cxx` [INFO] [stderr] [INFO] [stderr] after fixes were automatically applied the compiler reported errors within these files: [INFO] [stderr] [INFO] [stderr] * src/bridge.rs [INFO] [stderr] * src/lib.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: expected one of `:`, `;`, `<`, `=`, or `where`, found `(` [INFO] [stderr] --> src/bridge.rs:66:22 [INFO] [stderr] | [INFO] [stderr] 65 | extern "Rust" { [INFO] [stderr] | - while parsing this item list starting here [INFO] [stderr] 66 | type Ruunsafe(stInputCallbac)k<'a>; [INFO] [stderr] | ^ expected one of `:`, `;`, `<`, `=`, or `where` [INFO] [stderr] ... [INFO] [stderr] 79 | } [INFO] [stderr] | - the item list ends here [INFO] [stderr] [INFO] [stderr] error: expected one of `->`, `;`, `where`, or `{`, found keyword `unsafe` [INFO] [stderr] --> src/bridge.rs:475:46 [INFO] [stderr] | [INFO] [stderr] 243 | unsafe extern "C++" { [INFO] [stderr] | - while parsing this item list starting here [INFO] [stderr] ... [INFO] [stderr] 475 | unsafe fn Release(obj: *mut IUnknown)unsafe ; [INFO] [stderr] | ^^^^^^ expected one of `->`, `;`, `where`, or `{` [INFO] [stderr] ... [INFO] [stderr] 489 | } [INFO] [stderr] | - the item list ends here [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/bridge.rs:3:16 [INFO] [stderr] | [INFO] [stderr] 3 | ($r:ident, $c: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[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/bridge.rs:18:16 [INFO] [stderr] | [INFO] [stderr] 18 | ($r:ident, $c:expr_2021, $t:ident) => { [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: expected `;` [INFO] [stderr] --> src/bridge.rs:66:22 [INFO] [stderr] | [INFO] [stderr] 66 | type Ruunsafe(stInputCallbac)k<'a>; [INFO] [stderr] | ^ [INFO] [stderr] [INFO] [stderr] error[E0432]: unresolved imports `bridge::decklink_ffi`, `bridge::decklink_ffi` [INFO] [stderr] --> src/lib.rs:4:5 [INFO] [stderr] | [INFO] [stderr] 4 | decklink_ffi::{self, IDeckLinkVideoFrame}, [INFO] [stderr] | ^^^^^^^^^^^^ ^^^^ no `decklink_ffi` in `bridge` [INFO] [stderr] | | [INFO] [stderr] | could not find `decklink_ffi` in `bridge` [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: use of undeclared crate or module `decklink_ffi` [INFO] [stderr] --> src/bridge.rs:493:48 [INFO] [stderr] | [INFO] [stderr] 493 | frame_arrived_callback: Box, [INFO] [stderr] | ^^^^^^^^^^^^ use of undeclared crate or module `decklink_ffi` [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: use of undeclared crate or module `decklink_ffi` [INFO] [stderr] --> src/bridge.rs:498:49 [INFO] [stderr] | [INFO] [stderr] 498 | frame_arrived_callback: impl FnMut(*mut decklink_ffi::IDeckLinkVideoInputFrame) + 'a, [INFO] [stderr] | ^^^^^^^^^^^^ use of undeclared crate or module `decklink_ffi` [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: use of undeclared crate or module `decklink_ffi` [INFO] [stderr] --> src/bridge.rs:511:27 [INFO] [stderr] | [INFO] [stderr] 511 | video_frame: *mut decklink_ffi::IDeckLinkVideoInputFrame, [INFO] [stderr] | ^^^^^^^^^^^^ use of undeclared crate or module `decklink_ffi` [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: use of undeclared crate or module `decklink_ffi` [INFO] [stderr] --> src/bridge.rs:518:50 [INFO] [stderr] | [INFO] [stderr] 518 | frame_completed_callback: Box, [INFO] [stderr] | ^^^^^^^^^^^^ use of undeclared crate or module `decklink_ffi` [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: use of undeclared crate or module `decklink_ffi` [INFO] [stderr] --> src/bridge.rs:523:51 [INFO] [stderr] | [INFO] [stderr] 523 | frame_completed_callback: impl FnMut(*mut decklink_ffi::IDeckLinkVideoFrame) + 'a, [INFO] [stderr] | ^^^^^^^^^^^^ use of undeclared crate or module `decklink_ffi` [INFO] [stderr] [INFO] [stderr] error[E0433]: failed to resolve: use of undeclared crate or module `decklink_ffi` [INFO] [stderr] --> src/bridge.rs:532:27 [INFO] [stderr] | [INFO] [stderr] 532 | video_frame: *mut decklink_ffi::IDeckLinkVideoFrame, [INFO] [stderr] | ^^^^^^^^^^^^ use of undeclared crate or module `decklink_ffi` [INFO] [stderr] [INFO] [stderr] error: aborting due to 12 previous errors [INFO] [stderr] [INFO] [stderr] Some errors have detailed explanations: E0432, E0433, E0658. [INFO] [stderr] For more information about an error, try `rustc --explain E0432`. [INFO] [stderr] Original diagnostics will follow. [INFO] [stderr] [INFO] [stdout] warning: unsafe attribute used without unsafe [INFO] [stdout] --> src/bridge.rs:67:14 [INFO] [stdout] | [INFO] [stdout] 67 | type RustInputCallback<'a>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ usage of unsafe attribute [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 #123757 [INFO] [stdout] = note: `--force-warn unsafe-attr-outside-unsafe` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 67 | type Ruunsafe(stInputCallbac)k<'a>; [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unsafe attribute used without unsafe [INFO] [stdout] --> src/bridge.rs:68:64 [INFO] [stdout] | [INFO] [stdout] 68 | fn video_input_format_changed(self: &RustInputCallback); [INFO] [stdout] | ^ usage of unsafe attribute [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 #123757 [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 68 | fn video_input_format_changed(self: &RustInputCallback)unsafe(;) [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unsafe attribute used without unsafe [INFO] [stdout] --> src/bridge.rs:72:10 [INFO] [stdout] | [INFO] [stdout] 72 | ); [INFO] [stdout] | ^ usage of unsafe attribute [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 #123757 [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 72 | )unsafe(;) [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unsafe attribute used without unsafe [INFO] [stdout] --> src/bridge.rs:74:14 [INFO] [stdout] | [INFO] [stdout] 74 | type RustOutputCallback<'a>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ usage of unsafe attribute [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 #123757 [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 74 | type Ruunsafe(stOutputCallbac)k<'a>; [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unsafe attribute used without unsafe [INFO] [stdout] --> src/bridge.rs:78:10 [INFO] [stdout] | [INFO] [stdout] 78 | ); [INFO] [stdout] | ^ usage of unsafe attribute [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 #123757 [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 78 | )unsafe(;) [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unsafe attribute used without unsafe [INFO] [stdout] --> src/bridge.rs:79:69 [INFO] [stdout] | [INFO] [stdout] 79 | fn scheduled_playback_has_stopped(self: &RustOutputCallback); [INFO] [stdout] | ^ usage of unsafe attribute [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 #123757 [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 79 | fn scheduled_playback_has_stopped(self: &RustOutputCallback)unsafe(;) [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::pin::Pin` [INFO] [stdout] --> src/bridge.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::pin::Pin; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/bridge.rs:4:19 [INFO] [stdout] | [INFO] [stdout] 4 | ($r:ident, $c: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] 4 | ($r:ident, $c:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/bridge.rs:19:19 [INFO] [stdout] | [INFO] [stdout] 19 | ($r:ident, $c:expr, $t:ident) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 19 | ($r:ident, $c:expr_2021, $t:ident) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:258:82 [INFO] [stdout] | [INFO] [stdout] 258 | fn CreateDeckLinkAPIInformationInstance() -> *mut IDeckLinkAPIInformation; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] = note: `--force-warn missing-unsafe-on-extern` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:264:23 [INFO] [stdout] | [INFO] [stdout] 264 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:265:71 [INFO] [stdout] | [INFO] [stdout] 265 | fn Release(self: Pin<&mut IDeckLinkAPIInformation>) -> c_ulong; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:271:57 [INFO] [stdout] | [INFO] [stdout] 271 | fn Release(self: Pin<&mut IDeckLink>) -> c_ulong; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:273:70 [INFO] [stdout] | [INFO] [stdout] 273 | fn CreateDeckLinkIteratorInstance() -> *mut IDeckLinkIterator; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:278:23 [INFO] [stdout] | [INFO] [stdout] 278 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:280:65 [INFO] [stdout] | [INFO] [stdout] 280 | fn Release(self: Pin<&mut IDeckLinkIterator>) -> c_ulong; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:291:23 [INFO] [stdout] | [INFO] [stdout] 291 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:296:23 [INFO] [stdout] | [INFO] [stdout] 296 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:298:76 [INFO] [stdout] | [INFO] [stdout] 298 | fn Release(self: Pin<&mut IDeckLinkDisplayModeIterator>) -> c_ulong; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:300:84 [INFO] [stdout] | [INFO] [stdout] 300 | fn GetDisplayMode(self: Pin<&mut IDeckLinkDisplayMode>) -> c_BMDDisplayMode; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:301:68 [INFO] [stdout] | [INFO] [stdout] 301 | fn GetWidth(self: Pin<&mut IDeckLinkDisplayMode>) -> c_long; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:302:69 [INFO] [stdout] | [INFO] [stdout] 302 | fn GetHeight(self: Pin<&mut IDeckLinkDisplayMode>) -> c_long; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:307:23 [INFO] [stdout] | [INFO] [stdout] 307 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:308:68 [INFO] [stdout] | [INFO] [stdout] 308 | fn Release(self: Pin<&mut IDeckLinkDisplayMode>) -> c_ulong; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:325:23 [INFO] [stdout] | [INFO] [stdout] 325 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:326:69 [INFO] [stdout] | [INFO] [stdout] 326 | fn StartStreams(self: Pin<&mut IDeckLinkInput>) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:327:68 [INFO] [stdout] | [INFO] [stdout] 327 | fn StopStreams(self: Pin<&mut IDeckLinkInput>) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:328:62 [INFO] [stdout] | [INFO] [stdout] 328 | fn Release(self: Pin<&mut IDeckLinkInput>) -> c_ulong; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:333:23 [INFO] [stdout] | [INFO] [stdout] 333 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:346:23 [INFO] [stdout] | [INFO] [stdout] 346 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:350:23 [INFO] [stdout] | [INFO] [stdout] 350 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:354:23 [INFO] [stdout] | [INFO] [stdout] 354 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:355:94 [INFO] [stdout] | [INFO] [stdout] 355 | fn DetachAllPackets(self: Pin<&mut IDeckLinkVideoFrameAncillaryPackets>) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:357:66 [INFO] [stdout] | [INFO] [stdout] 357 | fn GetDID(self: Pin<&mut IDeckLinkAncillaryPacket>) -> u8; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:358:67 [INFO] [stdout] | [INFO] [stdout] 358 | fn GetSDID(self: Pin<&mut IDeckLinkAncillaryPacket>) -> u8; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:359:74 [INFO] [stdout] | [INFO] [stdout] 359 | fn GetLineNumber(self: Pin<&mut IDeckLinkAncillaryPacket>) -> u32; // On output, zero is auto [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:360:78 [INFO] [stdout] | [INFO] [stdout] 360 | ... fn GetDataStreamIndex(self: Pin<&mut IDeckLinkAncillaryPacket>) -> u8; // Usually zero. Can only be 1 if non-SD and the first data ... [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:362:67 [INFO] [stdout] | [INFO] [stdout] 362 | fn GetWidth(self: Pin<&mut IDeckLinkVideoFrame>) -> c_long; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:363:68 [INFO] [stdout] | [INFO] [stdout] 363 | fn GetHeight(self: Pin<&mut IDeckLinkVideoFrame>) -> c_long; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:364:70 [INFO] [stdout] | [INFO] [stdout] 364 | fn GetRowBytes(self: Pin<&mut IDeckLinkVideoFrame>) -> c_long; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:369:23 [INFO] [stdout] | [INFO] [stdout] 369 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:375:23 [INFO] [stdout] | [INFO] [stdout] 375 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:381:23 [INFO] [stdout] | [INFO] [stdout] 381 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:387:23 [INFO] [stdout] | [INFO] [stdout] 387 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:395:23 [INFO] [stdout] | [INFO] [stdout] 395 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:404:23 [INFO] [stdout] | [INFO] [stdout] 404 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:409:23 [INFO] [stdout] | [INFO] [stdout] 409 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:411:63 [INFO] [stdout] | [INFO] [stdout] 411 | fn Release(self: Pin<&mut IDeckLinkOutput>) -> c_ulong; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:415:76 [INFO] [stdout] | [INFO] [stdout] 415 | fn CreateVideoConversionInstance() -> *mut IDeckLinkVideoConversion; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:421:23 [INFO] [stdout] | [INFO] [stdout] 421 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:425:56 [INFO] [stdout] | [INFO] [stdout] 425 | fn Release(self: Pin<&mut IUnknown>) -> c_ulong; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:444:34 [INFO] [stdout] | [INFO] [stdout] 444 | ) -> *mut ConversionFrame; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:446:96 [INFO] [stdout] | [INFO] [stdout] 446 | unsafe fn new_input_callback(callback: *mut RustInputCallback) -> *mut CXXInputCallback; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:448:99 [INFO] [stdout] | [INFO] [stdout] 448 | unsafe fn new_output_callback(callback: *mut RustOutputCallback) -> *mut CXXOutputCallback; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:450:69 [INFO] [stdout] | [INFO] [stdout] 450 | unsafe fn GetDisplayName(decklink: *mut IDeckLink) -> String; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:452:87 [INFO] [stdout] | [INFO] [stdout] 452 | unsafe fn GetDisplayModeName(displayMode: *mut IDeckLinkDisplayMode) -> String; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:454:99 [INFO] [stdout] | [INFO] [stdout] 454 | unsafe fn GetInput(decklink: *mut IDeckLink, input: *mut *mut IDeckLinkInput) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:459:23 [INFO] [stdout] | [INFO] [stdout] 459 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:464:23 [INFO] [stdout] | [INFO] [stdout] 464 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:467:25 [INFO] [stdout] | [INFO] [stdout] 467 | -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:474:23 [INFO] [stdout] | [INFO] [stdout] 474 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: extern blocks should be unsafe [INFO] [stdout] --> src/bridge.rs:476:46 [INFO] [stdout] | [INFO] [stdout] 476 | unsafe fn Release(obj: *mut IUnknown); [INFO] [stdout] | ^ [INFO] [stdout] | | [INFO] [stdout] | help: needs `unsafe` before the extern keyword: `unsafe` [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 #123743 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ConversionFrame` [INFO] [stdout] --> src/lib.rs:4:26 [INFO] [stdout] | [INFO] [stdout] 4 | decklink_ffi::{self, ConversionFrame, IDeckLinkVideoFrame}, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `marker::PhantomData` [INFO] [stdout] --> src/lib.rs:8:11 [INFO] [stdout] | [INFO] [stdout] 8 | use std::{marker::PhantomData, pin::Pin, ptr}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/lib.rs:89:13 [INFO] [stdout] | [INFO] [stdout] 89 | let result = unsafe { decklink_ffi::GetOutput(self.device, output_ptr) }; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/lib.rs:100:13 [INFO] [stdout] | [INFO] [stdout] 100 | let result = unsafe { decklink_ffi::GetInput(self.device, input_ptr) }; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/lib.rs:158:13 [INFO] [stdout] | [INFO] [stdout] 158 | let result = unsafe { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/lib.rs:181:13 [INFO] [stdout] | [INFO] [stdout] 181 | let result = unsafe { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `frame` [INFO] [stdout] --> src/lib.rs:222:47 [INFO] [stdout] | [INFO] [stdout] 222 | let frame_completion_callback = move |frame: *mut decklink_ffi::IDeckLinkVideoFrame| { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_frame` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:289:13 [INFO] [stdout] | [INFO] [stdout] 289 | let mut pin: Pin<&mut decklink_ffi::IDeckLinkVideoFrame> = [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: unused variable: `res` [INFO] [stdout] --> src/lib.rs:361:13 [INFO] [stdout] | [INFO] [stdout] 361 | let res = unsafe { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/lib.rs:392:13 [INFO] [stdout] | [INFO] [stdout] 392 | let result = unsafe { pin.GetPacketIterator(ancillary_packet_iterator_ptr) }; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/lib.rs:399:13 [INFO] [stdout] | [INFO] [stdout] 399 | let result = unsafe { pin.AttachPacket(packet.packet) }; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/lib.rs:406:13 [INFO] [stdout] | [INFO] [stdout] 406 | let result = unsafe { pin.DetachPacket(packet.packet) }; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/lib.rs:413:13 [INFO] [stdout] | [INFO] [stdout] 413 | let result = pin.DetachAllPackets(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> src/lib.rs:638:13 [INFO] [stdout] | [INFO] [stdout] 638 | let res = [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BMDDeckLinkAPIInformationID` is never constructed [INFO] [stdout] --> src/bridge.rs:250:14 [INFO] [stdout] | [INFO] [stdout] 250 | type BMDDeckLinkAPIInformationID; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BMDPixelFormat` is never constructed [INFO] [stdout] --> src/bridge.rs:252:14 [INFO] [stdout] | [INFO] [stdout] 252 | type BMDPixelFormat; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BMDDisplayMode` is never constructed [INFO] [stdout] --> src/bridge.rs:254:14 [INFO] [stdout] | [INFO] [stdout] 254 | type BMDDisplayMode; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BMDAncillaryPacketFormat` is never constructed [INFO] [stdout] --> src/bridge.rs:256:14 [INFO] [stdout] | [INFO] [stdout] 256 | type BMDAncillaryPacketFormat; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `Release` is never used [INFO] [stdout] --> src/bridge.rs:265:12 [INFO] [stdout] | [INFO] [stdout] 265 | fn Release(self: Pin<&mut IDeckLinkAPIInformation>) -> c_ulong; [INFO] [stdout] | ^^^^^^^ method in this implementation [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `Release` is never used [INFO] [stdout] --> src/bridge.rs:271:12 [INFO] [stdout] | [INFO] [stdout] 271 | fn Release(self: Pin<&mut IDeckLink>) -> c_ulong; [INFO] [stdout] | ^^^^^^^ method in this implementation [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `Release` is never used [INFO] [stdout] --> src/bridge.rs:280:12 [INFO] [stdout] | [INFO] [stdout] 280 | fn Release(self: Pin<&mut IDeckLinkIterator>) -> c_ulong; [INFO] [stdout] | ^^^^^^^ method in this implementation [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `Release` is never used [INFO] [stdout] --> src/bridge.rs:298:12 [INFO] [stdout] | [INFO] [stdout] 298 | fn Release(self: Pin<&mut IDeckLinkDisplayModeIterator>) -> c_ulong; [INFO] [stdout] | ^^^^^^^ method in this implementation [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `GetFrameRate` is never used [INFO] [stdout] --> src/bridge.rs:303:19 [INFO] [stdout] | [INFO] [stdout] 303 | unsafe fn GetFrameRate( [INFO] [stdout] | ^^^^^^^^^^^^ method in this implementation [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `Release` is never used [INFO] [stdout] --> src/bridge.rs:308:12 [INFO] [stdout] | [INFO] [stdout] 308 | fn Release(self: Pin<&mut IDeckLinkDisplayMode>) -> c_ulong; [INFO] [stdout] | ^^^^^^^ method in this implementation [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `Release` is never used [INFO] [stdout] --> src/bridge.rs:328:12 [INFO] [stdout] | [INFO] [stdout] 328 | fn Release(self: Pin<&mut IDeckLinkInput>) -> c_ulong; [INFO] [stdout] | ^^^^^^^ method in this implementation [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `Release` is never used [INFO] [stdout] --> src/bridge.rs:411:12 [INFO] [stdout] | [INFO] [stdout] 411 | fn Release(self: Pin<&mut IDeckLinkOutput>) -> c_ulong; [INFO] [stdout] | ^^^^^^^ method in this implementation [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `Release` is never used [INFO] [stdout] --> src/bridge.rs:425:12 [INFO] [stdout] | [INFO] [stdout] 425 | fn Release(self: Pin<&mut IUnknown>) -> c_ulong; [INFO] [stdout] | ^^^^^^^ method in this implementation [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type alias `c_ulong` is never used [INFO] [stdout] --> src/bridge.rs:479:14 [INFO] [stdout] | [INFO] [stdout] 479 | type c_ulong = crate::bridge::decklink_type_wrappers::c_ulong; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 90 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Migrating examples/displaymode.rs from 2021 edition to 2024 [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> examples/output.rs:40:9 [INFO] [stdout] | [INFO] [stdout] 40 | for i in 0..num_frames { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> examples/output.rs:57:9 [INFO] [stdout] | [INFO] [stdout] 57 | for i in 0..3 { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 2 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Migrating examples/input.rs from 2021 edition to 2024 [INFO] [stderr] Fixed examples/input.rs (1 fix) [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> examples/input.rs:32:9 [INFO] [stdout] | [INFO] [stdout] 32 | window.set_image("image-001", image); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 32 | let _ = window.set_image("image-001", image); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 15.29s [INFO] [stderr] Running `cargo check` to verify 2024 [INFO] [stderr] Compiling decklink-cxx v0.1.0 (/tmp/fixit) [INFO] [stdout] warning: function `invoke_vcvars_if_not_set` is never used [INFO] [stdout] --> build.rs:84:4 [INFO] [stdout] | [INFO] [stdout] 84 | fn invoke_vcvars_if_not_set() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `vcvars_set` is never used [INFO] [stdout] --> build.rs:132:4 [INFO] [stdout] | [INFO] [stdout] 132 | fn vcvars_set() -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `search_vcvars_all_bat` is never used [INFO] [stdout] --> build.rs:141:4 [INFO] [stdout] | [INFO] [stdout] 141 | fn search_vcvars_all_bat() -> PathBuf { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `guess_vcvars_all_bat` is never used [INFO] [stdout] --> build.rs:183:4 [INFO] [stdout] | [INFO] [stdout] 183 | fn guess_vcvars_all_bat() -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `determine_vcvarsall_bat_arch_arg` is never used [INFO] [stdout] --> build.rs:257:4 [INFO] [stdout] | [INFO] [stdout] 257 | fn determine_vcvarsall_bat_arch_arg() -> String { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 5 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] warning: decklink-cxx@0.1.0: Compiler version doesn't include clang or GCC: "c++" "--version" [INFO] [stderr] warning: decklink-cxx@0.1.0: Compiler version doesn't include clang or GCC: "c++" "--version" [INFO] [stderr] warning: decklink-cxx@0.1.0: In file included from /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/include/decklink-cxx/src/bridge.rs.h:5, [INFO] [stderr] warning: decklink-cxx@0.1.0: from /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/crate/decklink-cxx/include/callback.h:2, [INFO] [stderr] warning: decklink-cxx@0.1.0: from /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/sources/decklink-cxx/src/bridge.rs.cc:3: [INFO] [stderr] warning: decklink-cxx@0.1.0: /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/crate/decklink-cxx/include/bridge.h: In constructor 'ConversionFrame::ConversionFrame(long int, long int, long int, BMDPixelFormat)': [INFO] [stderr] warning: decklink-cxx@0.1.0: /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/crate/decklink-cxx/include/bridge.h:47:33: warning: 'ConversionFrame::m_timeScale' will be initialized after [-Wreorder] [INFO] [stderr] warning: decklink-cxx@0.1.0: 47 | BMDTimeScale m_timeScale; [INFO] [stderr] warning: decklink-cxx@0.1.0: | ^~~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/crate/decklink-cxx/include/bridge.h:42:17: warning: 'int32_t ConversionFrame::m_refCount' [-Wreorder] [INFO] [stderr] warning: decklink-cxx@0.1.0: 42 | int32_t m_refCount; [INFO] [stderr] warning: decklink-cxx@0.1.0: | ^~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/crate/decklink-cxx/include/bridge.h:53:5: warning: when initialized here [-Wreorder] [INFO] [stderr] warning: decklink-cxx@0.1.0: 53 | ConversionFrame(long width, long height, long rowBytes, BMDPixelFormat pixelFormat) : [INFO] [stderr] warning: decklink-cxx@0.1.0: | ^~~~~~~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: In file included from /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/include/decklink-cxx/src/bridge.rs.h:5, [INFO] [stderr] warning: decklink-cxx@0.1.0: from /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/crate/decklink-cxx/include/callback.h:2, [INFO] [stderr] warning: decklink-cxx@0.1.0: from ./include/callback.cc:1: [INFO] [stderr] warning: decklink-cxx@0.1.0: /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/crate/decklink-cxx/include/bridge.h: In constructor 'ConversionFrame::ConversionFrame(long int, long int, long int, BMDPixelFormat)': [INFO] [stderr] warning: decklink-cxx@0.1.0: /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/crate/decklink-cxx/include/bridge.h:47:33: warning: 'ConversionFrame::m_timeScale' will be initialized after [-Wreorder] [INFO] [stderr] warning: decklink-cxx@0.1.0: 47 | BMDTimeScale m_timeScale; [INFO] [stderr] warning: decklink-cxx@0.1.0: | ^~~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/crate/decklink-cxx/include/bridge.h:42:17: warning: 'int32_t ConversionFrame::m_refCount' [-Wreorder] [INFO] [stderr] warning: decklink-cxx@0.1.0: 42 | int32_t m_refCount; [INFO] [stderr] warning: decklink-cxx@0.1.0: | ^~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/crate/decklink-cxx/include/bridge.h:53:5: warning: when initialized here [-Wreorder] [INFO] [stderr] warning: decklink-cxx@0.1.0: 53 | ConversionFrame(long width, long height, long rowBytes, BMDPixelFormat pixelFormat) : [INFO] [stderr] warning: decklink-cxx@0.1.0: | ^~~~~~~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc: In member function 'virtual HRESULT CXXInputCallback::VideoInputFormatChanged(BMDVideoInputFormatChangedEvents, IDeckLinkDisplayMode*, BMDDetectedVideoInputFormatFlags)': [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc:5:85: warning: unused parameter 'notificationEvents' [-Wunused-parameter] [INFO] [stderr] warning: decklink-cxx@0.1.0: 5 | HRESULT CXXInputCallback::VideoInputFormatChanged (BMDVideoInputFormatChangedEvents notificationEvents, IDeckLinkDisplayMode* newDisplayMode, BMDDetectedVideoInputFormatFlags detectedSignalFlags) { [INFO] [stderr] warning: decklink-cxx@0.1.0: | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc:5:127: warning: unused parameter 'newDisplayMode' [-Wunused-parameter] [INFO] [stderr] warning: decklink-cxx@0.1.0: 5 | HRESULT CXXInputCallback::VideoInputFormatChanged (BMDVideoInputFormatChangedEvents notificationEvents, IDeckLinkDisplayMode* newDisplayMode, BMDDetectedVideoInputFormatFlags detectedSignalFlags) { [INFO] [stderr] warning: decklink-cxx@0.1.0: | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc:5:176: warning: unused parameter 'detectedSignalFlags' [-Wunused-parameter] [INFO] [stderr] warning: decklink-cxx@0.1.0: 5 | HRESULT CXXInputCallback::VideoInputFormatChanged (BMDVideoInputFormatChangedEvents notificationEvents, IDeckLinkDisplayMode* newDisplayMode, BMDDetectedVideoInputFormatFlags detectedSignalFlags) { [INFO] [stderr] warning: decklink-cxx@0.1.0: | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc: In member function 'virtual HRESULT CXXInputCallback::VideoInputFrameArrived(IDeckLinkVideoInputFrame*, IDeckLinkAudioInputPacket*)': [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc:10:115: warning: unused parameter 'audioPacket' [-Wunused-parameter] [INFO] [stderr] warning: decklink-cxx@0.1.0: 10 | HRESULT CXXInputCallback::VideoInputFrameArrived(IDeckLinkVideoInputFrame* videoFrame, IDeckLinkAudioInputPacket* audioPacket) { [INFO] [stderr] warning: decklink-cxx@0.1.0: | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc: In member function 'virtual HRESULT CXXInputCallback::QueryInterface(REFIID, void**)': [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc:15:68: warning: unused parameter 'iid' [-Wunused-parameter] [INFO] [stderr] warning: decklink-cxx@0.1.0: 15 | HRESULT STDMETHODCALLTYPE CXXInputCallback::QueryInterface (REFIID iid, LPVOID *ppv) [INFO] [stderr] warning: decklink-cxx@0.1.0: | ~~~~~~~^~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc: In member function 'virtual HRESULT CXXOutputCallback::ScheduledFrameCompleted(IDeckLinkVideoFrame*, BMDOutputFrameCompletionResult)': [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc:39:120: warning: unused parameter 'result' [-Wunused-parameter] [INFO] [stderr] warning: decklink-cxx@0.1.0: 39 | HRESULT CXXOutputCallback::ScheduledFrameCompleted(IDeckLinkVideoFrame* completedFrame, BMDOutputFrameCompletionResult result) { [INFO] [stderr] warning: decklink-cxx@0.1.0: | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc: In member function 'virtual HRESULT CXXOutputCallback::QueryInterface(REFIID, void**)': [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc:49:69: warning: unused parameter 'iid' [-Wunused-parameter] [INFO] [stderr] warning: decklink-cxx@0.1.0: 49 | HRESULT STDMETHODCALLTYPE CXXOutputCallback::QueryInterface (REFIID iid, LPVOID *ppv) [INFO] [stderr] warning: decklink-cxx@0.1.0: | ~~~~~~~^~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: In file included from ./include/bridge.cc:1: [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/bridge.h: In constructor 'ConversionFrame::ConversionFrame(long int, long int, long int, BMDPixelFormat)': [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/bridge.h:47:33: warning: 'ConversionFrame::m_timeScale' will be initialized after [-Wreorder] [INFO] [stderr] warning: decklink-cxx@0.1.0: 47 | BMDTimeScale m_timeScale; [INFO] [stderr] warning: decklink-cxx@0.1.0: | ^~~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/bridge.h:42:17: warning: 'int32_t ConversionFrame::m_refCount' [-Wreorder] [INFO] [stderr] warning: decklink-cxx@0.1.0: 42 | int32_t m_refCount; [INFO] [stderr] warning: decklink-cxx@0.1.0: | ^~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/bridge.h:53:5: warning: when initialized here [-Wreorder] [INFO] [stderr] warning: decklink-cxx@0.1.0: 53 | ConversionFrame(long width, long height, long rowBytes, BMDPixelFormat pixelFormat) : [INFO] [stderr] warning: decklink-cxx@0.1.0: | ^~~~~~~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/bridge.cc: In member function 'virtual HRESULT ConversionFrame::QueryInterface(REFIID, void**)': [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/bridge.cc:101:67: warning: unused parameter 'iid' [-Wunused-parameter] [INFO] [stderr] warning: decklink-cxx@0.1.0: 101 | HRESULT STDMETHODCALLTYPE ConversionFrame::QueryInterface (REFIID iid, LPVOID *ppv) [INFO] [stderr] warning: decklink-cxx@0.1.0: | ~~~~~~~^~~ [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:258:82 [INFO] [stdout] | [INFO] [stdout] 258 | fn CreateDeckLinkAPIInformationInstance() -> *mut IDeckLinkAPIInformation; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:264:23 [INFO] [stdout] | [INFO] [stdout] 264 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:265:71 [INFO] [stdout] | [INFO] [stdout] 265 | fn Release(self: Pin<&mut IDeckLinkAPIInformation>) -> c_ulong; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:271:57 [INFO] [stdout] | [INFO] [stdout] 271 | fn Release(self: Pin<&mut IDeckLink>) -> c_ulong; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:273:70 [INFO] [stdout] | [INFO] [stdout] 273 | fn CreateDeckLinkIteratorInstance() -> *mut IDeckLinkIterator; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:278:23 [INFO] [stdout] | [INFO] [stdout] 278 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:280:65 [INFO] [stdout] | [INFO] [stdout] 280 | fn Release(self: Pin<&mut IDeckLinkIterator>) -> c_ulong; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:291:23 [INFO] [stdout] | [INFO] [stdout] 291 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:258:82 [INFO] [stdout] | [INFO] [stdout] 258 | fn CreateDeckLinkAPIInformationInstance() -> *mut IDeckLinkAPIInformation; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:296:23 [INFO] [stdout] | [INFO] [stdout] 296 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:298:76 [INFO] [stdout] | [INFO] [stdout] 298 | fn Release(self: Pin<&mut IDeckLinkDisplayModeIterator>) -> c_ulong; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:300:84 [INFO] [stdout] | [INFO] [stdout] 300 | fn GetDisplayMode(self: Pin<&mut IDeckLinkDisplayMode>) -> c_BMDDisplayMode; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:264:23 [INFO] [stdout] | [INFO] [stdout] 264 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:301:68 [INFO] [stdout] | [INFO] [stdout] 301 | fn GetWidth(self: Pin<&mut IDeckLinkDisplayMode>) -> c_long; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:302:69 [INFO] [stdout] | [INFO] [stdout] 302 | fn GetHeight(self: Pin<&mut IDeckLinkDisplayMode>) -> c_long; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:307:23 [INFO] [stdout] | [INFO] [stdout] 307 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:265:71 [INFO] [stdout] | [INFO] [stdout] 265 | fn Release(self: Pin<&mut IDeckLinkAPIInformation>) -> c_ulong; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:308:68 [INFO] [stdout] | [INFO] [stdout] 308 | fn Release(self: Pin<&mut IDeckLinkDisplayMode>) -> c_ulong; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:271:57 [INFO] [stdout] | [INFO] [stdout] 271 | fn Release(self: Pin<&mut IDeckLink>) -> c_ulong; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:325:23 [INFO] [stdout] | [INFO] [stdout] 325 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:273:70 [INFO] [stdout] | [INFO] [stdout] 273 | fn CreateDeckLinkIteratorInstance() -> *mut IDeckLinkIterator; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:326:69 [INFO] [stdout] | [INFO] [stdout] 326 | fn StartStreams(self: Pin<&mut IDeckLinkInput>) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:278:23 [INFO] [stdout] | [INFO] [stdout] 278 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:327:68 [INFO] [stdout] | [INFO] [stdout] 327 | fn StopStreams(self: Pin<&mut IDeckLinkInput>) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:280:65 [INFO] [stdout] | [INFO] [stdout] 280 | fn Release(self: Pin<&mut IDeckLinkIterator>) -> c_ulong; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:291:23 [INFO] [stdout] | [INFO] [stdout] 291 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:328:62 [INFO] [stdout] | [INFO] [stdout] 328 | fn Release(self: Pin<&mut IDeckLinkInput>) -> c_ulong; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:296:23 [INFO] [stdout] | [INFO] [stdout] 296 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:333:23 [INFO] [stdout] | [INFO] [stdout] 333 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:298:76 [INFO] [stdout] | [INFO] [stdout] 298 | fn Release(self: Pin<&mut IDeckLinkDisplayModeIterator>) -> c_ulong; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:346:23 [INFO] [stdout] | [INFO] [stdout] 346 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:300:84 [INFO] [stdout] | [INFO] [stdout] 300 | fn GetDisplayMode(self: Pin<&mut IDeckLinkDisplayMode>) -> c_BMDDisplayMode; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:350:23 [INFO] [stdout] | [INFO] [stdout] 350 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:301:68 [INFO] [stdout] | [INFO] [stdout] 301 | fn GetWidth(self: Pin<&mut IDeckLinkDisplayMode>) -> c_long; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:354:23 [INFO] [stdout] | [INFO] [stdout] 354 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:355:94 [INFO] [stdout] | [INFO] [stdout] 355 | fn DetachAllPackets(self: Pin<&mut IDeckLinkVideoFrameAncillaryPackets>) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:357:66 [INFO] [stdout] | [INFO] [stdout] 357 | fn GetDID(self: Pin<&mut IDeckLinkAncillaryPacket>) -> u8; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:302:69 [INFO] [stdout] | [INFO] [stdout] 302 | fn GetHeight(self: Pin<&mut IDeckLinkDisplayMode>) -> c_long; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:358:67 [INFO] [stdout] | [INFO] [stdout] 358 | fn GetSDID(self: Pin<&mut IDeckLinkAncillaryPacket>) -> u8; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:307:23 [INFO] [stdout] | [INFO] [stdout] 307 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:308:68 [INFO] [stdout] | [INFO] [stdout] 308 | fn Release(self: Pin<&mut IDeckLinkDisplayMode>) -> c_ulong; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:359:74 [INFO] [stdout] | [INFO] [stdout] 359 | fn GetLineNumber(self: Pin<&mut IDeckLinkAncillaryPacket>) -> u32; // On output, zero is auto [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:325:23 [INFO] [stdout] | [INFO] [stdout] 325 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:360:78 [INFO] [stdout] | [INFO] [stdout] 360 | ... fn GetDataStreamIndex(self: Pin<&mut IDeckLinkAncillaryPacket>) -> u8; // Usually zero. Can only be 1 if non-SD and the first data ... [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:326:69 [INFO] [stdout] | [INFO] [stdout] 326 | fn StartStreams(self: Pin<&mut IDeckLinkInput>) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:362:67 [INFO] [stdout] | [INFO] [stdout] 362 | fn GetWidth(self: Pin<&mut IDeckLinkVideoFrame>) -> c_long; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:327:68 [INFO] [stdout] | [INFO] [stdout] 327 | fn StopStreams(self: Pin<&mut IDeckLinkInput>) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:363:68 [INFO] [stdout] | [INFO] [stdout] 363 | fn GetHeight(self: Pin<&mut IDeckLinkVideoFrame>) -> c_long; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:328:62 [INFO] [stdout] | [INFO] [stdout] 328 | fn Release(self: Pin<&mut IDeckLinkInput>) -> c_ulong; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:364:70 [INFO] [stdout] | [INFO] [stdout] 364 | fn GetRowBytes(self: Pin<&mut IDeckLinkVideoFrame>) -> c_long; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:333:23 [INFO] [stdout] | [INFO] [stdout] 333 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:369:23 [INFO] [stdout] | [INFO] [stdout] 369 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:346:23 [INFO] [stdout] | [INFO] [stdout] 346 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:375:23 [INFO] [stdout] | [INFO] [stdout] 375 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:350:23 [INFO] [stdout] | [INFO] [stdout] 350 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:381:23 [INFO] [stdout] | [INFO] [stdout] 381 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:387:23 [INFO] [stdout] | [INFO] [stdout] 387 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:354:23 [INFO] [stdout] | [INFO] [stdout] 354 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:395:23 [INFO] [stdout] | [INFO] [stdout] 395 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:355:94 [INFO] [stdout] | [INFO] [stdout] 355 | fn DetachAllPackets(self: Pin<&mut IDeckLinkVideoFrameAncillaryPackets>) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:357:66 [INFO] [stdout] | [INFO] [stdout] 357 | fn GetDID(self: Pin<&mut IDeckLinkAncillaryPacket>) -> u8; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:404:23 [INFO] [stdout] | [INFO] [stdout] 404 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:358:67 [INFO] [stdout] | [INFO] [stdout] 358 | fn GetSDID(self: Pin<&mut IDeckLinkAncillaryPacket>) -> u8; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:409:23 [INFO] [stdout] | [INFO] [stdout] 409 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:359:74 [INFO] [stdout] | [INFO] [stdout] 359 | fn GetLineNumber(self: Pin<&mut IDeckLinkAncillaryPacket>) -> u32; // On output, zero is auto [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:411:63 [INFO] [stdout] | [INFO] [stdout] 411 | fn Release(self: Pin<&mut IDeckLinkOutput>) -> c_ulong; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:415:76 [INFO] [stdout] | [INFO] [stdout] 415 | fn CreateVideoConversionInstance() -> *mut IDeckLinkVideoConversion; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:360:78 [INFO] [stdout] | [INFO] [stdout] 360 | ... fn GetDataStreamIndex(self: Pin<&mut IDeckLinkAncillaryPacket>) -> u8; // Usually zero. Can only be 1 if non-SD and the first data ... [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:362:67 [INFO] [stdout] | [INFO] [stdout] 362 | fn GetWidth(self: Pin<&mut IDeckLinkVideoFrame>) -> c_long; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:421:23 [INFO] [stdout] | [INFO] [stdout] 421 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:425:56 [INFO] [stdout] | [INFO] [stdout] 425 | fn Release(self: Pin<&mut IUnknown>) -> c_ulong; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:363:68 [INFO] [stdout] | [INFO] [stdout] 363 | fn GetHeight(self: Pin<&mut IDeckLinkVideoFrame>) -> c_long; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:444:34 [INFO] [stdout] | [INFO] [stdout] 444 | ) -> *mut ConversionFrame; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:364:70 [INFO] [stdout] | [INFO] [stdout] 364 | fn GetRowBytes(self: Pin<&mut IDeckLinkVideoFrame>) -> c_long; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:369:23 [INFO] [stdout] | [INFO] [stdout] 369 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:446:96 [INFO] [stdout] | [INFO] [stdout] 446 | unsafe fn new_input_callback(callback: *mut RustInputCallback) -> *mut CXXInputCallback; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:375:23 [INFO] [stdout] | [INFO] [stdout] 375 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:448:99 [INFO] [stdout] | [INFO] [stdout] 448 | unsafe fn new_output_callback(callback: *mut RustOutputCallback) -> *mut CXXOutputCallback; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:381:23 [INFO] [stdout] | [INFO] [stdout] 381 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:450:69 [INFO] [stdout] | [INFO] [stdout] 450 | unsafe fn GetDisplayName(decklink: *mut IDeckLink) -> String; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:387:23 [INFO] [stdout] | [INFO] [stdout] 387 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:452:87 [INFO] [stdout] | [INFO] [stdout] 452 | unsafe fn GetDisplayModeName(displayMode: *mut IDeckLinkDisplayMode) -> String; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:395:23 [INFO] [stdout] | [INFO] [stdout] 395 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:454:99 [INFO] [stdout] | [INFO] [stdout] 454 | unsafe fn GetInput(decklink: *mut IDeckLink, input: *mut *mut IDeckLinkInput) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:404:23 [INFO] [stdout] | [INFO] [stdout] 404 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:459:23 [INFO] [stdout] | [INFO] [stdout] 459 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:464:23 [INFO] [stdout] | [INFO] [stdout] 464 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:409:23 [INFO] [stdout] | [INFO] [stdout] 409 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:411:63 [INFO] [stdout] | [INFO] [stdout] 411 | fn Release(self: Pin<&mut IDeckLinkOutput>) -> c_ulong; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:467:25 [INFO] [stdout] | [INFO] [stdout] 467 | -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:415:76 [INFO] [stdout] | [INFO] [stdout] 415 | fn CreateVideoConversionInstance() -> *mut IDeckLinkVideoConversion; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:474:23 [INFO] [stdout] | [INFO] [stdout] 474 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:421:23 [INFO] [stdout] | [INFO] [stdout] 421 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:476:46 [INFO] [stdout] | [INFO] [stdout] 476 | unsafe fn Release(obj: *mut IUnknown); [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:425:56 [INFO] [stdout] | [INFO] [stdout] 425 | fn Release(self: Pin<&mut IUnknown>) -> c_ulong; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:444:34 [INFO] [stdout] | [INFO] [stdout] 444 | ) -> *mut ConversionFrame; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:446:96 [INFO] [stdout] | [INFO] [stdout] 446 | unsafe fn new_input_callback(callback: *mut RustInputCallback) -> *mut CXXInputCallback; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:448:99 [INFO] [stdout] | [INFO] [stdout] 448 | unsafe fn new_output_callback(callback: *mut RustOutputCallback) -> *mut CXXOutputCallback; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:450:69 [INFO] [stdout] | [INFO] [stdout] 450 | unsafe fn GetDisplayName(decklink: *mut IDeckLink) -> String; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:452:87 [INFO] [stdout] | [INFO] [stdout] 452 | unsafe fn GetDisplayModeName(displayMode: *mut IDeckLinkDisplayMode) -> String; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:454:99 [INFO] [stdout] | [INFO] [stdout] 454 | unsafe fn GetInput(decklink: *mut IDeckLink, input: *mut *mut IDeckLinkInput) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:459:23 [INFO] [stdout] | [INFO] [stdout] 459 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:464:23 [INFO] [stdout] | [INFO] [stdout] 464 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:467:25 [INFO] [stdout] | [INFO] [stdout] 467 | -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:474:23 [INFO] [stdout] | [INFO] [stdout] 474 | ) -> c_hresult; [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: extern blocks must be unsafe [INFO] [stdout] --> src/bridge.rs:476:46 [INFO] [stdout] | [INFO] [stdout] 476 | unsafe fn Release(obj: *mut IUnknown); [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: unsafe attribute used without unsafe [INFO] [stdout] --> src/bridge.rs:67:14 [INFO] [stdout] | [INFO] [stdout] 67 | type RustInputCallback<'a>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ usage of unsafe attribute [INFO] [stdout] | [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 67 | type Ruunsafe(stInputCallbac)k<'a>; [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: unsafe attribute used without unsafe [INFO] [stdout] --> src/bridge.rs:67:14 [INFO] [stdout] | [INFO] [stdout] 67 | type RustInputCallback<'a>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ usage of unsafe attribute [INFO] [stdout] | [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 67 | type Ruunsafe(stInputCallbac)k<'a>; [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: unsafe attribute used without unsafe [INFO] [stdout] --> src/bridge.rs:68:64 [INFO] [stdout] | [INFO] [stdout] 68 | fn video_input_format_changed(self: &RustInputCallback); [INFO] [stdout] | ^ usage of unsafe attribute [INFO] [stdout] | [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 68 | fn video_input_format_changed(self: &RustInputCallback)unsafe(;) [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: unsafe attribute used without unsafe [INFO] [stdout] --> src/bridge.rs:68:64 [INFO] [stdout] | [INFO] [stdout] 68 | fn video_input_format_changed(self: &RustInputCallback); [INFO] [stdout] | ^ usage of unsafe attribute [INFO] [stdout] | [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 68 | fn video_input_format_changed(self: &RustInputCallback)unsafe(;) [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: unsafe attribute used without unsafe [INFO] [stdout] --> src/bridge.rs:72:10 [INFO] [stdout] | [INFO] [stdout] 72 | ); [INFO] [stdout] | ^ usage of unsafe attribute [INFO] [stdout] | [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 72 | )unsafe(;) [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: unsafe attribute used without unsafe [INFO] [stdout] --> src/bridge.rs:72:10 [INFO] [stdout] | [INFO] [stdout] 72 | ); [INFO] [stdout] | ^ usage of unsafe attribute [INFO] [stdout] | [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 72 | )unsafe(;) [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: unsafe attribute used without unsafe [INFO] [stdout] --> src/bridge.rs:74:14 [INFO] [stdout] | [INFO] [stdout] 74 | type RustOutputCallback<'a>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ usage of unsafe attribute [INFO] [stdout] | [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 74 | type Ruunsafe(stOutputCallbac)k<'a>; [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: unsafe attribute used without unsafe [INFO] [stdout] --> src/bridge.rs:74:14 [INFO] [stdout] | [INFO] [stdout] 74 | type RustOutputCallback<'a>; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ usage of unsafe attribute [INFO] [stdout] | [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 74 | type Ruunsafe(stOutputCallbac)k<'a>; [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: unsafe attribute used without unsafe [INFO] [stdout] --> src/bridge.rs:78:10 [INFO] [stdout] | [INFO] [stdout] 78 | ); [INFO] [stdout] | ^ usage of unsafe attribute [INFO] [stdout] | [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 78 | )unsafe(;) [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: unsafe attribute used without unsafe [INFO] [stdout] --> src/bridge.rs:78:10 [INFO] [stdout] | [INFO] [stdout] 78 | ); [INFO] [stdout] | ^ usage of unsafe attribute [INFO] [stdout] | [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 78 | )unsafe(;) [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: unsafe attribute used without unsafe [INFO] [stdout] --> src/bridge.rs:79:69 [INFO] [stdout] | [INFO] [stdout] 79 | fn scheduled_playback_has_stopped(self: &RustOutputCallback); [INFO] [stdout] | ^ usage of unsafe attribute [INFO] [stdout] | [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 79 | fn scheduled_playback_has_stopped(self: &RustOutputCallback)unsafe(;) [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: unsafe attribute used without unsafe [INFO] [stdout] --> src/bridge.rs:79:69 [INFO] [stdout] | [INFO] [stdout] 79 | fn scheduled_playback_has_stopped(self: &RustOutputCallback); [INFO] [stdout] | ^ usage of unsafe attribute [INFO] [stdout] | [INFO] [stdout] help: wrap the attribute in `unsafe(...)` [INFO] [stdout] | [INFO] [stdout] 79 | fn scheduled_playback_has_stopped(self: &RustOutputCallback)unsafe(;) [INFO] [stdout] | +++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::pin::Pin` [INFO] [stdout] --> src/bridge.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::pin::Pin; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::pin::Pin` [INFO] [stdout] --> src/bridge.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::pin::Pin; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ConversionFrame` [INFO] [stdout] --> src/lib.rs:4:26 [INFO] [stdout] | [INFO] [stdout] 4 | decklink_ffi::{self, ConversionFrame, IDeckLinkVideoFrame}, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ConversionFrame` [INFO] [stdout] --> src/lib.rs:4:26 [INFO] [stdout] | [INFO] [stdout] 4 | decklink_ffi::{self, ConversionFrame, IDeckLinkVideoFrame}, [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `marker::PhantomData` [INFO] [stdout] --> src/lib.rs:8:11 [INFO] [stdout] | [INFO] [stdout] 8 | use std::{marker::PhantomData, pin::Pin, ptr}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `marker::PhantomData` [INFO] [stdout] --> src/lib.rs:8:11 [INFO] [stdout] | [INFO] [stdout] 8 | use std::{marker::PhantomData, pin::Pin, ptr}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/lib.rs:89:13 [INFO] [stdout] | [INFO] [stdout] 89 | let result = unsafe { decklink_ffi::GetOutput(self.device, output_ptr) }; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/lib.rs:100:13 [INFO] [stdout] | [INFO] [stdout] 100 | let result = unsafe { decklink_ffi::GetInput(self.device, input_ptr) }; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/lib.rs:158:13 [INFO] [stdout] | [INFO] [stdout] 158 | let result = unsafe { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/lib.rs:181:13 [INFO] [stdout] | [INFO] [stdout] 181 | let result = unsafe { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `frame` [INFO] [stdout] --> src/lib.rs:222:47 [INFO] [stdout] | [INFO] [stdout] 222 | let frame_completion_callback = move |frame: *mut decklink_ffi::IDeckLinkVideoFrame| { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_frame` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/lib.rs:89:13 [INFO] [stdout] | [INFO] [stdout] 89 | let result = unsafe { decklink_ffi::GetOutput(self.device, output_ptr) }; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/lib.rs:100:13 [INFO] [stdout] | [INFO] [stdout] 100 | let result = unsafe { decklink_ffi::GetInput(self.device, input_ptr) }; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/lib.rs:158:13 [INFO] [stdout] | [INFO] [stdout] 158 | let result = unsafe { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:289:13 [INFO] [stdout] | [INFO] [stdout] 289 | let mut pin: Pin<&mut decklink_ffi::IDeckLinkVideoFrame> = [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: unused variable: `result` [INFO] [stdout] --> src/lib.rs:181:13 [INFO] [stdout] | [INFO] [stdout] 181 | let result = unsafe { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `frame` [INFO] [stdout] --> src/lib.rs:222:47 [INFO] [stdout] | [INFO] [stdout] 222 | let frame_completion_callback = move |frame: *mut decklink_ffi::IDeckLinkVideoFrame| { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_frame` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> src/lib.rs:361:13 [INFO] [stdout] | [INFO] [stdout] 361 | let res = unsafe { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/lib.rs:392:13 [INFO] [stdout] | [INFO] [stdout] 392 | let result = unsafe { pin.GetPacketIterator(ancillary_packet_iterator_ptr) }; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/lib.rs:399:13 [INFO] [stdout] | [INFO] [stdout] 399 | let result = unsafe { pin.AttachPacket(packet.packet) }; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/lib.rs:406:13 [INFO] [stdout] | [INFO] [stdout] 406 | let result = unsafe { pin.DetachPacket(packet.packet) }; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/lib.rs:413:13 [INFO] [stdout] | [INFO] [stdout] 413 | let result = pin.DetachAllPackets(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:289:13 [INFO] [stdout] | [INFO] [stdout] 289 | let mut pin: Pin<&mut decklink_ffi::IDeckLinkVideoFrame> = [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: unused variable: `res` [INFO] [stdout] --> src/lib.rs:361:13 [INFO] [stdout] | [INFO] [stdout] 361 | let res = unsafe { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/lib.rs:392:13 [INFO] [stdout] | [INFO] [stdout] 392 | let result = unsafe { pin.GetPacketIterator(ancillary_packet_iterator_ptr) }; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/lib.rs:399:13 [INFO] [stdout] | [INFO] [stdout] 399 | let result = unsafe { pin.AttachPacket(packet.packet) }; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/lib.rs:406:13 [INFO] [stdout] | [INFO] [stdout] 406 | let result = unsafe { pin.DetachPacket(packet.packet) }; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `result` [INFO] [stdout] --> src/lib.rs:413:13 [INFO] [stdout] | [INFO] [stdout] 413 | let result = pin.DetachAllPackets(); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> src/lib.rs:638:13 [INFO] [stdout] | [INFO] [stdout] 638 | let res = [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `res` [INFO] [stdout] --> src/lib.rs:638:13 [INFO] [stdout] | [INFO] [stdout] 638 | let res = [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 59 previous errors; 15 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 59 previous errors; 15 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] The following warnings were emitted during compilation: [INFO] [stderr] [INFO] [stderr] warning: decklink-cxx@0.1.0: Compiler version doesn't include clang or GCC: "c++" "--version" [INFO] [stderr] warning: decklink-cxx@0.1.0: Compiler version doesn't include clang or GCC: "c++" "--version" [INFO] [stderr] warning: decklink-cxx@0.1.0: In file included from /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/include/decklink-cxx/src/bridge.rs.h:5, [INFO] [stderr] warning: decklink-cxx@0.1.0: from /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/crate/decklink-cxx/include/callback.h:2, [INFO] [stderr] warning: decklink-cxx@0.1.0: from /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/sources/decklink-cxx/src/bridge.rs.cc:3: [INFO] [stderr] warning: decklink-cxx@0.1.0: /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/crate/decklink-cxx/include/bridge.h: In constructor 'ConversionFrame::ConversionFrame(long int, long int, long int, BMDPixelFormat)': [INFO] [stderr] warning: decklink-cxx@0.1.0: /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/crate/decklink-cxx/include/bridge.h:47:33: warning: 'ConversionFrame::m_timeScale' will be initialized after [-Wreorder] [INFO] [stderr] warning: decklink-cxx@0.1.0: 47 | BMDTimeScale m_timeScale; [INFO] [stderr] warning: decklink-cxx@0.1.0: | ^~~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/crate/decklink-cxx/include/bridge.h:42:17: warning: 'int32_t ConversionFrame::m_refCount' [-Wreorder] [INFO] [stderr] warning: decklink-cxx@0.1.0: 42 | int32_t m_refCount; [INFO] [stderr] warning: decklink-cxx@0.1.0: | ^~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/crate/decklink-cxx/include/bridge.h:53:5: warning: when initialized here [-Wreorder] [INFO] [stderr] warning: decklink-cxx@0.1.0: 53 | ConversionFrame(long width, long height, long rowBytes, BMDPixelFormat pixelFormat) : [INFO] [stderr] warning: decklink-cxx@0.1.0: | ^~~~~~~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: In file included from /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/include/decklink-cxx/src/bridge.rs.h:5, [INFO] [stderr] warning: decklink-cxx@0.1.0: from /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/crate/decklink-cxx/include/callback.h:2, [INFO] [stderr] warning: decklink-cxx@0.1.0: from ./include/callback.cc:1: [INFO] [stderr] warning: decklink-cxx@0.1.0: /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/crate/decklink-cxx/include/bridge.h: In constructor 'ConversionFrame::ConversionFrame(long int, long int, long int, BMDPixelFormat)': [INFO] [stderr] warning: decklink-cxx@0.1.0: /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/crate/decklink-cxx/include/bridge.h:47:33: warning: 'ConversionFrame::m_timeScale' will be initialized after [-Wreorder] [INFO] [stderr] warning: decklink-cxx@0.1.0: 47 | BMDTimeScale m_timeScale; [INFO] [stderr] warning: decklink-cxx@0.1.0: | ^~~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/crate/decklink-cxx/include/bridge.h:42:17: warning: 'int32_t ConversionFrame::m_refCount' [-Wreorder] [INFO] [stderr] warning: decklink-cxx@0.1.0: 42 | int32_t m_refCount; [INFO] [stderr] warning: decklink-cxx@0.1.0: | ^~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/crate/decklink-cxx/include/bridge.h:53:5: warning: when initialized here [-Wreorder] [INFO] [stderr] warning: decklink-cxx@0.1.0: 53 | ConversionFrame(long width, long height, long rowBytes, BMDPixelFormat pixelFormat) : [INFO] [stderr] warning: decklink-cxx@0.1.0: | ^~~~~~~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc: In member function 'virtual HRESULT CXXInputCallback::VideoInputFormatChanged(BMDVideoInputFormatChangedEvents, IDeckLinkDisplayMode*, BMDDetectedVideoInputFormatFlags)': [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc:5:85: warning: unused parameter 'notificationEvents' [-Wunused-parameter] [INFO] [stderr] warning: decklink-cxx@0.1.0: 5 | HRESULT CXXInputCallback::VideoInputFormatChanged (BMDVideoInputFormatChangedEvents notificationEvents, IDeckLinkDisplayMode* newDisplayMode, BMDDetectedVideoInputFormatFlags detectedSignalFlags) { [INFO] [stderr] warning: decklink-cxx@0.1.0: | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc:5:127: warning: unused parameter 'newDisplayMode' [-Wunused-parameter] [INFO] [stderr] warning: decklink-cxx@0.1.0: 5 | HRESULT CXXInputCallback::VideoInputFormatChanged (BMDVideoInputFormatChangedEvents notificationEvents, IDeckLinkDisplayMode* newDisplayMode, BMDDetectedVideoInputFormatFlags detectedSignalFlags) { [INFO] [stderr] warning: decklink-cxx@0.1.0: | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc:5:176: warning: unused parameter 'detectedSignalFlags' [-Wunused-parameter] [INFO] [stderr] warning: decklink-cxx@0.1.0: 5 | HRESULT CXXInputCallback::VideoInputFormatChanged (BMDVideoInputFormatChangedEvents notificationEvents, IDeckLinkDisplayMode* newDisplayMode, BMDDetectedVideoInputFormatFlags detectedSignalFlags) { [INFO] [stderr] warning: decklink-cxx@0.1.0: | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc: In member function 'virtual HRESULT CXXInputCallback::VideoInputFrameArrived(IDeckLinkVideoInputFrame*, IDeckLinkAudioInputPacket*)': [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc:10:115: warning: unused parameter 'audioPacket' [-Wunused-parameter] [INFO] [stderr] warning: decklink-cxx@0.1.0: 10 | HRESULT CXXInputCallback::VideoInputFrameArrived(IDeckLinkVideoInputFrame* videoFrame, IDeckLinkAudioInputPacket* audioPacket) { [INFO] [stderr] warning: decklink-cxx@0.1.0: | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc: In member function 'virtual HRESULT CXXInputCallback::QueryInterface(REFIID, void**)': [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc:15:68: warning: unused parameter 'iid' [-Wunused-parameter] [INFO] [stderr] warning: decklink-cxx@0.1.0: 15 | HRESULT STDMETHODCALLTYPE CXXInputCallback::QueryInterface (REFIID iid, LPVOID *ppv) [INFO] [stderr] warning: decklink-cxx@0.1.0: | ~~~~~~~^~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc: In member function 'virtual HRESULT CXXOutputCallback::ScheduledFrameCompleted(IDeckLinkVideoFrame*, BMDOutputFrameCompletionResult)': [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc:39:120: warning: unused parameter 'result' [-Wunused-parameter] [INFO] [stderr] warning: decklink-cxx@0.1.0: 39 | HRESULT CXXOutputCallback::ScheduledFrameCompleted(IDeckLinkVideoFrame* completedFrame, BMDOutputFrameCompletionResult result) { [INFO] [stderr] warning: decklink-cxx@0.1.0: | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc: In member function 'virtual HRESULT CXXOutputCallback::QueryInterface(REFIID, void**)': [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc:49:69: warning: unused parameter 'iid' [-Wunused-parameter] [INFO] [stderr] warning: decklink-cxx@0.1.0: 49 | HRESULT STDMETHODCALLTYPE CXXOutputCallback::QueryInterface (REFIID iid, LPVOID *ppv) [INFO] [stderr] warning: decklink-cxx@0.1.0: | ~~~~~~~^~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: In file included from ./include/bridge.cc:1: [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/bridge.h: In constructor 'ConversionFrame::ConversionFrame(long int, long int, long int, BMDPixelFormat)': [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/bridge.h:47:33: warning: 'ConversionFrame::m_timeScale' will be initialized after [-Wreorder] [INFO] [stderr] warning: decklink-cxx@0.1.0: 47 | BMDTimeScale m_timeScale; [INFO] [stderr] warning: decklink-cxx@0.1.0: | ^~~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/bridge.h:42:17: warning: 'int32_t ConversionFrame::m_refCount' [-Wreorder] [INFO] [stderr] warning: decklink-cxx@0.1.0: 42 | int32_t m_refCount; [INFO] [stderr] warning: decklink-cxx@0.1.0: | ^~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/bridge.h:53:5: warning: when initialized here [-Wreorder] [INFO] [stderr] warning: decklink-cxx@0.1.0: 53 | ConversionFrame(long width, long height, long rowBytes, BMDPixelFormat pixelFormat) : [INFO] [stderr] warning: decklink-cxx@0.1.0: | ^~~~~~~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/bridge.cc: In member function 'virtual HRESULT ConversionFrame::QueryInterface(REFIID, void**)': [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/bridge.cc:101:67: warning: unused parameter 'iid' [-Wunused-parameter] [INFO] [stderr] warning: decklink-cxx@0.1.0: 101 | HRESULT STDMETHODCALLTYPE ConversionFrame::QueryInterface (REFIID iid, LPVOID *ppv) [INFO] [stderr] warning: decklink-cxx@0.1.0: | ~~~~~~~^~~ [INFO] [stderr] [INFO] [stderr] error: could not compile `decklink-cxx` (lib test) due to 60 previous errors; 15 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] The following warnings were emitted during compilation: [INFO] [stderr] [INFO] [stderr] warning: decklink-cxx@0.1.0: Compiler version doesn't include clang or GCC: "c++" "--version" [INFO] [stderr] warning: decklink-cxx@0.1.0: Compiler version doesn't include clang or GCC: "c++" "--version" [INFO] [stderr] warning: decklink-cxx@0.1.0: In file included from /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/include/decklink-cxx/src/bridge.rs.h:5, [INFO] [stderr] warning: decklink-cxx@0.1.0: from /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/crate/decklink-cxx/include/callback.h:2, [INFO] [stderr] warning: decklink-cxx@0.1.0: from /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/sources/decklink-cxx/src/bridge.rs.cc:3: [INFO] [stderr] warning: decklink-cxx@0.1.0: /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/crate/decklink-cxx/include/bridge.h: In constructor 'ConversionFrame::ConversionFrame(long int, long int, long int, BMDPixelFormat)': [INFO] [stderr] warning: decklink-cxx@0.1.0: /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/crate/decklink-cxx/include/bridge.h:47:33: warning: 'ConversionFrame::m_timeScale' will be initialized after [-Wreorder] [INFO] [stderr] warning: decklink-cxx@0.1.0: 47 | BMDTimeScale m_timeScale; [INFO] [stderr] warning: decklink-cxx@0.1.0: | ^~~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/crate/decklink-cxx/include/bridge.h:42:17: warning: 'int32_t ConversionFrame::m_refCount' [-Wreorder] [INFO] [stderr] warning: decklink-cxx@0.1.0: 42 | int32_t m_refCount; [INFO] [stderr] warning: decklink-cxx@0.1.0: | ^~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/crate/decklink-cxx/include/bridge.h:53:5: warning: when initialized here [-Wreorder] [INFO] [stderr] warning: decklink-cxx@0.1.0: 53 | ConversionFrame(long width, long height, long rowBytes, BMDPixelFormat pixelFormat) : [INFO] [stderr] warning: decklink-cxx@0.1.0: | ^~~~~~~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: In file included from /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/include/decklink-cxx/src/bridge.rs.h:5, [INFO] [stderr] warning: decklink-cxx@0.1.0: from /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/crate/decklink-cxx/include/callback.h:2, [INFO] [stderr] warning: decklink-cxx@0.1.0: from ./include/callback.cc:1: [INFO] [stderr] warning: decklink-cxx@0.1.0: /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/crate/decklink-cxx/include/bridge.h: In constructor 'ConversionFrame::ConversionFrame(long int, long int, long int, BMDPixelFormat)': [INFO] [stderr] warning: decklink-cxx@0.1.0: /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/crate/decklink-cxx/include/bridge.h:47:33: warning: 'ConversionFrame::m_timeScale' will be initialized after [-Wreorder] [INFO] [stderr] warning: decklink-cxx@0.1.0: 47 | BMDTimeScale m_timeScale; [INFO] [stderr] warning: decklink-cxx@0.1.0: | ^~~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/crate/decklink-cxx/include/bridge.h:42:17: warning: 'int32_t ConversionFrame::m_refCount' [-Wreorder] [INFO] [stderr] warning: decklink-cxx@0.1.0: 42 | int32_t m_refCount; [INFO] [stderr] warning: decklink-cxx@0.1.0: | ^~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: /opt/rustwide/target/debug/build/decklink-cxx-1438908a1bb6e5ca/out/cxxbridge/crate/decklink-cxx/include/bridge.h:53:5: warning: when initialized here [-Wreorder] [INFO] [stderr] warning: decklink-cxx@0.1.0: 53 | ConversionFrame(long width, long height, long rowBytes, BMDPixelFormat pixelFormat) : [INFO] [stderr] warning: decklink-cxx@0.1.0: | ^~~~~~~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc: In member function 'virtual HRESULT CXXInputCallback::VideoInputFormatChanged(BMDVideoInputFormatChangedEvents, IDeckLinkDisplayMode*, BMDDetectedVideoInputFormatFlags)': [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc:5:85: warning: unused parameter 'notificationEvents' [-Wunused-parameter] [INFO] [stderr] warning: decklink-cxx@0.1.0: 5 | HRESULT CXXInputCallback::VideoInputFormatChanged (BMDVideoInputFormatChangedEvents notificationEvents, IDeckLinkDisplayMode* newDisplayMode, BMDDetectedVideoInputFormatFlags detectedSignalFlags) { [INFO] [stderr] warning: decklink-cxx@0.1.0: | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc:5:127: warning: unused parameter 'newDisplayMode' [-Wunused-parameter] [INFO] [stderr] warning: decklink-cxx@0.1.0: 5 | HRESULT CXXInputCallback::VideoInputFormatChanged (BMDVideoInputFormatChangedEvents notificationEvents, IDeckLinkDisplayMode* newDisplayMode, BMDDetectedVideoInputFormatFlags detectedSignalFlags) { [INFO] [stderr] warning: decklink-cxx@0.1.0: | ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc:5:176: warning: unused parameter 'detectedSignalFlags' [-Wunused-parameter] [INFO] [stderr] warning: decklink-cxx@0.1.0: 5 | HRESULT CXXInputCallback::VideoInputFormatChanged (BMDVideoInputFormatChangedEvents notificationEvents, IDeckLinkDisplayMode* newDisplayMode, BMDDetectedVideoInputFormatFlags detectedSignalFlags) { [INFO] [stderr] warning: decklink-cxx@0.1.0: | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc: In member function 'virtual HRESULT CXXInputCallback::VideoInputFrameArrived(IDeckLinkVideoInputFrame*, IDeckLinkAudioInputPacket*)': [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc:10:115: warning: unused parameter 'audioPacket' [-Wunused-parameter] [INFO] [stderr] warning: decklink-cxx@0.1.0: 10 | HRESULT CXXInputCallback::VideoInputFrameArrived(IDeckLinkVideoInputFrame* videoFrame, IDeckLinkAudioInputPacket* audioPacket) { [INFO] [stderr] warning: decklink-cxx@0.1.0: | ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc: In member function 'virtual HRESULT CXXInputCallback::QueryInterface(REFIID, void**)': [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc:15:68: warning: unused parameter 'iid' [-Wunused-parameter] [INFO] [stderr] warning: decklink-cxx@0.1.0: 15 | HRESULT STDMETHODCALLTYPE CXXInputCallback::QueryInterface (REFIID iid, LPVOID *ppv) [INFO] [stderr] warning: decklink-cxx@0.1.0: | ~~~~~~~^~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc: In member function 'virtual HRESULT CXXOutputCallback::ScheduledFrameCompleted(IDeckLinkVideoFrame*, BMDOutputFrameCompletionResult)': [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc:39:120: warning: unused parameter 'result' [-Wunused-parameter] [INFO] [stderr] warning: decklink-cxx@0.1.0: 39 | HRESULT CXXOutputCallback::ScheduledFrameCompleted(IDeckLinkVideoFrame* completedFrame, BMDOutputFrameCompletionResult result) { [INFO] [stderr] warning: decklink-cxx@0.1.0: | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc: In member function 'virtual HRESULT CXXOutputCallback::QueryInterface(REFIID, void**)': [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/callback.cc:49:69: warning: unused parameter 'iid' [-Wunused-parameter] [INFO] [stderr] warning: decklink-cxx@0.1.0: 49 | HRESULT STDMETHODCALLTYPE CXXOutputCallback::QueryInterface (REFIID iid, LPVOID *ppv) [INFO] [stderr] warning: decklink-cxx@0.1.0: | ~~~~~~~^~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: In file included from ./include/bridge.cc:1: [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/bridge.h: In constructor 'ConversionFrame::ConversionFrame(long int, long int, long int, BMDPixelFormat)': [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/bridge.h:47:33: warning: 'ConversionFrame::m_timeScale' will be initialized after [-Wreorder] [INFO] [stderr] warning: decklink-cxx@0.1.0: 47 | BMDTimeScale m_timeScale; [INFO] [stderr] warning: decklink-cxx@0.1.0: | ^~~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/bridge.h:42:17: warning: 'int32_t ConversionFrame::m_refCount' [-Wreorder] [INFO] [stderr] warning: decklink-cxx@0.1.0: 42 | int32_t m_refCount; [INFO] [stderr] warning: decklink-cxx@0.1.0: | ^~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/bridge.h:53:5: warning: when initialized here [-Wreorder] [INFO] [stderr] warning: decklink-cxx@0.1.0: 53 | ConversionFrame(long width, long height, long rowBytes, BMDPixelFormat pixelFormat) : [INFO] [stderr] warning: decklink-cxx@0.1.0: | ^~~~~~~~~~~~~~~ [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/bridge.cc: In member function 'virtual HRESULT ConversionFrame::QueryInterface(REFIID, void**)': [INFO] [stderr] warning: decklink-cxx@0.1.0: ./include/bridge.cc:101:67: warning: unused parameter 'iid' [-Wunused-parameter] [INFO] [stderr] warning: decklink-cxx@0.1.0: 101 | HRESULT STDMETHODCALLTYPE ConversionFrame::QueryInterface (REFIID iid, LPVOID *ppv) [INFO] [stderr] warning: decklink-cxx@0.1.0: | ~~~~~~~^~~ [INFO] [stderr] [INFO] [stderr] error: could not compile `decklink-cxx` (lib) due to 60 previous errors; 15 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" "018e5758a9a5fd8788c0e9f4097788896ca9568c3b6d92680d1023bb59207e77", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "018e5758a9a5fd8788c0e9f4097788896ca9568c3b6d92680d1023bb59207e77", kill_on_drop: false }` [INFO] [stdout] 018e5758a9a5fd8788c0e9f4097788896ca9568c3b6d92680d1023bb59207e77