[INFO] fetching crate re_rav1d 0.1.3...
[INFO] checking re_rav1d-0.1.3 against master#6eda7419e71fdbc1185ed5be7e6bff1a474ab5cd for pr-153721
[INFO] extracting crate re_rav1d 0.1.3 into /workspace/builds/worker-0-tc1/source
[INFO] removed /workspace/builds/worker-0-tc1/source/rust-toolchain.toml
[INFO] started tweaking crates.io crate re_rav1d 0.1.3
[INFO] finished tweaking crates.io crate re_rav1d 0.1.3
[INFO] tweaked toml for crates.io crate re_rav1d 0.1.3 written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate re_rav1d 0.1.3 on toolchain 6eda7419e71fdbc1185ed5be7e6bff1a474ab5cd
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+6eda7419e71fdbc1185ed5be7e6bff1a474ab5cd" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+6eda7419e71fdbc1185ed5be7e6bff1a474ab5cd" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 47 packages to latest compatible versions
[INFO] [stderr]       Adding strum v0.26.3 (available: v0.28.0)
[INFO] [stderr]       Adding zerocopy v0.7.35 (available: v0.8.52)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+6eda7419e71fdbc1185ed5be7e6bff1a474ab5cd" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded atomig v0.4.3
[INFO] [stderr]   Downloaded atomig-macro v0.4.0
[INFO] [stderr]   Downloaded nasm-rs v0.3.2
[INFO] [stderr]   Downloaded to_method v1.1.0
[INFO] [stderr]   Downloaded av-data v0.4.4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3e793bdf10248eb2ddbd6b0faebed8155c11b4589982e2893733958d93e8d540" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 8c2582ce7577158bfcbbcc5edeb13273edcc9d9258dae76a86ff446fc16b15b8
[INFO] running `Command { std: "docker" "start" "8c2582ce7577158bfcbbcc5edeb13273edcc9d9258dae76a86ff446fc16b15b8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "8c2582ce7577158bfcbbcc5edeb13273edcc9d9258dae76a86ff446fc16b15b8" "/opt/rustwide/cargo-home/bin/cargo" "+6eda7419e71fdbc1185ed5be7e6bff1a474ab5cd" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8c2582ce7577158bfcbbcc5edeb13273edcc9d9258dae76a86ff446fc16b15b8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "8c2582ce7577158bfcbbcc5edeb13273edcc9d9258dae76a86ff446fc16b15b8" "/opt/rustwide/cargo-home/bin/cargo" "+6eda7419e71fdbc1185ed5be7e6bff1a474ab5cd" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling shlex v2.0.1
[INFO] [stderr]    Compiling log v0.4.32
[INFO] [stderr]     Checking cfg-if v1.0.4
[INFO] [stderr]     Checking scopeguard v1.2.0
[INFO] [stderr]     Checking smallvec v1.15.2
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking byte-slice-cast v1.2.3
[INFO] [stderr]     Checking bytes v1.12.0
[INFO] [stderr]    Compiling libc v0.2.186
[INFO] [stderr]    Compiling syn v2.0.118
[INFO] [stderr]     Checking bitflags v2.13.0
[INFO] [stderr]     Checking byteorder v1.5.0
[INFO] [stderr]    Compiling cc v1.2.64
[INFO] [stderr]     Checking lock_api v0.4.14
[INFO] [stderr]     Checking raw-cpuid v11.6.0
[INFO] [stderr]     Checking to_method v1.1.0
[INFO] [stderr]     Checking static_assertions v1.1.0
[INFO] [stderr]     Checking assert_matches v1.5.0
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]     Checking num-bigint v0.4.6
[INFO] [stderr]    Compiling nasm-rs v0.3.2
[INFO] [stderr]    Compiling re_rav1d v0.1.3 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking num-rational v0.4.2
[INFO] [stderr]    Compiling zerocopy-derive v0.7.35
[INFO] [stderr]    Compiling atomig-macro v0.4.0
[INFO] [stderr]    Compiling strum_macros v0.26.4
[INFO] [stderr]    Compiling num-derive v0.4.2
[INFO] [stderr]     Checking zerocopy v0.7.35
[INFO] [stderr]     Checking atomig v0.4.3
[INFO] [stderr]     Checking av-data v0.4.4
[INFO] [stderr]     Checking strum v0.26.3
[INFO] [stdout] warning: struct `Rav1dFrameContextTaskThreadPendingTasks` is never constructed
[INFO] [stdout]    --> src/internal.rs:719:12
[INFO] [stdout]     |
[INFO] [stdout] 719 | pub struct Rav1dFrameContextTaskThreadPendingTasks {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> include/dav1d/picture.rs:262:38
[INFO] [stdout]     |
[INFO] [stdout] 262 |     pub fn with_offset<BD: BitDepth>(&self) -> Rav1dPictureDataComponentOffset {
[INFO] [stdout]     |                                      ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                      |
[INFO] [stdout]     |                                      the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 262 |     pub fn with_offset<BD: BitDepth>(&self) -> Rav1dPictureDataComponentOffset<'_> {
[INFO] [stdout]     |                                                                               ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> include/dav1d/picture.rs:533:37
[INFO] [stdout]     |
[INFO] [stdout] 533 |     pub fn lf_offsets<BD: BitDepth>(&self, y: c_int) -> [Rav1dPictureDataComponentOffset; 3] {
[INFO] [stdout]     |                                     ^^^^^                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                     |
[INFO] [stdout]     |                                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 533 |     pub fn lf_offsets<BD: BitDepth>(&self, y: c_int) -> [Rav1dPictureDataComponentOffset<'_>; 3] {
[INFO] [stdout]     |                                                                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]   --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]    |
[INFO] [stdout] 58 |               pub struct Fn(FnPtr);
[INFO] [stdout]    |                             ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/cdef.rs:46:1
[INFO] [stdout]    |
[INFO] [stdout] 46 | / wrap_fn_ptr!(pub unsafe extern "C" fn cdef(
[INFO] [stdout] 47 | |     dst_ptr: *mut DynPixel,
[INFO] [stdout] 48 | |     stride: ptrdiff_t,
[INFO] [stdout] 49 | |     left: *const [LeftPixelRow2px<DynPixel>; 8],
[INFO] [stdout] ...  |
[INFO] [stdout] 60 | |     _bottom: *const FFISafe<CdefBottom>,
[INFO] [stdout] 61 | | ) -> ());
[INFO] [stdout]    | |________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: the address of the same function can vary between different codegen units
[INFO] [stdout]    = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]    = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]    = note: `#[warn(unpredictable_function_pointer_comparisons)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]     |
[INFO] [stdout]  58 |               pub struct Fn(FnPtr);
[INFO] [stdout]     |                             ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/cdef.rs:118:1
[INFO] [stdout]     |
[INFO] [stdout] 118 | / wrap_fn_ptr!(pub unsafe extern "C" fn cdef_dir(
[INFO] [stdout] 119 | |     dst_ptr: *const DynPixel,
[INFO] [stdout] 120 | |     dst_stride: ptrdiff_t,
[INFO] [stdout] 121 | |     variance: &mut c_uint,
[INFO] [stdout] 122 | |     bitdepth_max: c_int,
[INFO] [stdout] 123 | |     _dst: *const FFISafe<Rav1dPictureDataComponentOffset>,
[INFO] [stdout] 124 | | ) -> c_int);
[INFO] [stdout]     | |___________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]     = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/cdf.rs:183:22
[INFO] [stdout]     |
[INFO] [stdout] 183 |     pub fn cdf_write(&self) -> RwLockWriteGuard<CdfContext> {
[INFO] [stdout]     |                      ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 183 |     pub fn cdf_write(&self) -> RwLockWriteGuard<'_, CdfContext> {
[INFO] [stdout]     |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]   --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]    |
[INFO] [stdout] 58 |               pub struct Fn(FnPtr);
[INFO] [stdout]    |                             ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/filmgrain.rs:50:1
[INFO] [stdout]    |
[INFO] [stdout] 50 | / wrap_fn_ptr!(pub unsafe extern "C" fn generate_grain_y(
[INFO] [stdout] 51 | |     buf: *mut GrainLut<DynEntry>,
[INFO] [stdout] 52 | |     data: &Dav1dFilmGrainData,
[INFO] [stdout] 53 | |     bitdepth_max: c_int,
[INFO] [stdout] 54 | | ) -> ());
[INFO] [stdout]    | |________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: the address of the same function can vary between different codegen units
[INFO] [stdout]    = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]    = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]    = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]   --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]    |
[INFO] [stdout] 58 |               pub struct Fn(FnPtr);
[INFO] [stdout]    |                             ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/filmgrain.rs:71:1
[INFO] [stdout]    |
[INFO] [stdout] 71 | / wrap_fn_ptr!(pub unsafe extern "C" fn generate_grain_uv(
[INFO] [stdout] 72 | |     buf: *mut GrainLut<DynEntry>,
[INFO] [stdout] 73 | |     buf_y: *const GrainLut<DynEntry>,
[INFO] [stdout] 74 | |     data: &Dav1dFilmGrainData,
[INFO] [stdout] 75 | |     uv: intptr_t,
[INFO] [stdout] 76 | |     bitdepth_max: c_int,
[INFO] [stdout] 77 | | ) -> ());
[INFO] [stdout]    | |________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: the address of the same function can vary between different codegen units
[INFO] [stdout]    = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]    = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]    = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]     |
[INFO] [stdout]  58 |               pub struct Fn(FnPtr);
[INFO] [stdout]     |                             ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/filmgrain.rs:98:1
[INFO] [stdout]     |
[INFO] [stdout]  98 | / wrap_fn_ptr!(pub unsafe extern "C" fn fgy_32x32xn(
[INFO] [stdout]  99 | |     dst_row_ptr: *mut DynPixel,
[INFO] [stdout] 100 | |     src_row_ptr: *const DynPixel,
[INFO] [stdout] 101 | |     stride: ptrdiff_t,
[INFO] [stdout] ...   |
[INFO] [stdout] 110 | |     _src_src: *const FFISafe<Rav1dPictureDataComponentOffset>,
[INFO] [stdout] 111 | | ) -> ());
[INFO] [stdout]     | |________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]     = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]     |
[INFO] [stdout]  58 |               pub struct Fn(FnPtr);
[INFO] [stdout]     |                             ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/filmgrain.rs:160:1
[INFO] [stdout]     |
[INFO] [stdout] 160 | / wrap_fn_ptr!(pub unsafe extern "C" fn fguv_32x32xn(
[INFO] [stdout] 161 | |     dst_row_ptr: *mut DynPixel,
[INFO] [stdout] 162 | |     src_row_ptr: *const DynPixel,
[INFO] [stdout] 163 | |     stride: ptrdiff_t,
[INFO] [stdout] ...   |
[INFO] [stdout] 177 | |     _luma_row: *const FFISafe<Rav1dPictureDataComponentOffset>,
[INFO] [stdout] 178 | | ) -> ());
[INFO] [stdout]     | |________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]     = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]   --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]    |
[INFO] [stdout] 58 |               pub struct Fn(FnPtr);
[INFO] [stdout]    |                             ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/ipred.rs:58:1
[INFO] [stdout]    |
[INFO] [stdout] 58 | / wrap_fn_ptr!(pub unsafe extern "C" fn angular_ipred(
[INFO] [stdout] 59 | |     dst_ptr: *mut DynPixel,
[INFO] [stdout] 60 | |     stride: ptrdiff_t,
[INFO] [stdout] 61 | |     topleft: *const DynPixel,
[INFO] [stdout] ...  |
[INFO] [stdout] 69 | |     _dst: *const FFISafe<Rav1dPictureDataComponentOffset>,
[INFO] [stdout] 70 | | ) -> ());
[INFO] [stdout]    | |________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: the address of the same function can vary between different codegen units
[INFO] [stdout]    = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]    = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]    = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]     |
[INFO] [stdout]  58 |               pub struct Fn(FnPtr);
[INFO] [stdout]     |                             ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ipred.rs:116:1
[INFO] [stdout]     |
[INFO] [stdout] 116 | / wrap_fn_ptr!(pub unsafe extern "C" fn cfl_ac(
[INFO] [stdout] 117 | |     ac: &mut [i16; SCRATCH_AC_TXTP_LEN],
[INFO] [stdout] 118 | |     y_ptr: *const DynPixel,
[INFO] [stdout] 119 | |     stride: ptrdiff_t,
[INFO] [stdout] ...   |
[INFO] [stdout] 124 | |     _y: *const FFISafe<Rav1dPictureDataComponentOffset>,
[INFO] [stdout] 125 | | ) -> ());
[INFO] [stdout]     | |________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]     = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]     |
[INFO] [stdout]  58 |               pub struct Fn(FnPtr);
[INFO] [stdout]     |                             ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ipred.rs:145:1
[INFO] [stdout]     |
[INFO] [stdout] 145 | / wrap_fn_ptr!(pub unsafe extern "C" fn cfl_pred(
[INFO] [stdout] 146 | |     dst_ptr: *mut DynPixel,
[INFO] [stdout] 147 | |     stride: ptrdiff_t,
[INFO] [stdout] 148 | |     topleft: *const DynPixel,
[INFO] [stdout] ...   |
[INFO] [stdout] 155 | |     _dst: *const FFISafe<Rav1dPictureDataComponentOffset>,
[INFO] [stdout] 156 | | ) -> ());
[INFO] [stdout]     | |________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]     = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]     |
[INFO] [stdout]  58 |               pub struct Fn(FnPtr);
[INFO] [stdout]     |                             ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ipred.rs:193:1
[INFO] [stdout]     |
[INFO] [stdout] 193 | / wrap_fn_ptr!(pub unsafe extern "C" fn pal_pred(
[INFO] [stdout] 194 | |     dst_ptr: *mut DynPixel,
[INFO] [stdout] 195 | |     stride: ptrdiff_t,
[INFO] [stdout] 196 | |     pal: *const [DynPixel; 8],
[INFO] [stdout] ...   |
[INFO] [stdout] 200 | |     _dst: *const FFISafe<Rav1dPictureDataComponentOffset>,
[INFO] [stdout] 201 | | ) -> ());
[INFO] [stdout]     | |________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]     = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]     |
[INFO] [stdout]  58 |               pub struct Fn(FnPtr);
[INFO] [stdout]     |                             ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/itx.rs:285:1
[INFO] [stdout]     |
[INFO] [stdout] 285 | / wrap_fn_ptr!(unsafe extern "C" fn itxfm(
[INFO] [stdout] 286 | |     dst_ptr: *mut DynPixel,
[INFO] [stdout] 287 | |     dst_stride: isize,
[INFO] [stdout] 288 | |     coeff: *mut DynCoef,
[INFO] [stdout] ...   |
[INFO] [stdout] 292 | |     _dst: *const FFISafe<Rav1dPictureDataComponentOffset>,
[INFO] [stdout] 293 | | ) -> ());
[INFO] [stdout]     | |________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]     = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/log.rs:170:25
[INFO] [stdout]     |
[INFO] [stdout] 170 |             Some(cb) if cb == marker::STDOUT => Rav1dLogger::Stdout,
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout] help: refactor your code, or use `std::ptr::fn_addr_eq` to suppress the lint
[INFO] [stdout]     |
[INFO] [stdout] 170 -             Some(cb) if cb == marker::STDOUT => Rav1dLogger::Stdout,
[INFO] [stdout] 170 +             Some(cb) if std::ptr::fn_addr_eq(cb, marker::STDOUT) => Rav1dLogger::Stdout,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/log.rs:171:25
[INFO] [stdout]     |
[INFO] [stdout] 171 |             Some(cb) if cb == marker::STDERR => Rav1dLogger::Stderr,
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout] help: refactor your code, or use `std::ptr::fn_addr_eq` to suppress the lint
[INFO] [stdout]     |
[INFO] [stdout] 171 -             Some(cb) if cb == marker::STDERR => Rav1dLogger::Stderr,
[INFO] [stdout] 171 +             Some(cb) if std::ptr::fn_addr_eq(cb, marker::STDERR) => Rav1dLogger::Stderr,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]   --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]    |
[INFO] [stdout] 58 |               pub struct Fn(FnPtr);
[INFO] [stdout]    |                             ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/loopfilter.rs:28:1
[INFO] [stdout]    |
[INFO] [stdout] 28 | / wrap_fn_ptr!(pub unsafe extern "C" fn loopfilter_sb(
[INFO] [stdout] 29 | |     dst_ptr: *mut DynPixel,
[INFO] [stdout] 30 | |     stride: ptrdiff_t,
[INFO] [stdout] 31 | |     mask: &[u32; 3],
[INFO] [stdout] ...  |
[INFO] [stdout] 38 | |     _lvl: *const FFISafe<WithOffset<&DisjointMut<Vec<u8>>>>,
[INFO] [stdout] 39 | | ) -> ());
[INFO] [stdout]    | |________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: the address of the same function can vary between different codegen units
[INFO] [stdout]    = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]    = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]    = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]     |
[INFO] [stdout]  58 |               pub struct Fn(FnPtr);
[INFO] [stdout]     |                             ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/looprestoration.rs:111:1
[INFO] [stdout]     |
[INFO] [stdout] 111 | / wrap_fn_ptr!(pub unsafe extern "C" fn loop_restoration_filter(
[INFO] [stdout] 112 | |     dst_ptr: *mut DynPixel,
[INFO] [stdout] 113 | |     dst_stride: ptrdiff_t,
[INFO] [stdout] 114 | |     left: *const LeftPixelRow<DynPixel>,
[INFO] [stdout] ...   |
[INFO] [stdout] 122 | |     _lpf: *const FFISafe<DisjointMut<AlignedVec64<u8>>>,
[INFO] [stdout] 123 | | ) -> ());
[INFO] [stdout]     | |________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]     = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]     --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]      |
[INFO] [stdout]   58 |               pub struct Fn(FnPtr);
[INFO] [stdout]      |                             ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/mc.rs:1038:1
[INFO] [stdout]      |
[INFO] [stdout] 1038 | / wrap_fn_ptr!(pub unsafe extern "C" fn mc(
[INFO] [stdout] 1039 | |     dst_ptr: *mut DynPixel,
[INFO] [stdout] 1040 | |     dst_stride: isize,
[INFO] [stdout] 1041 | |     src_ptr: *const DynPixel,
[INFO] [stdout] ...    |
[INFO] [stdout] 1049 | |     _src: *const FFISafe<Rav1dPictureDataComponentOffset>,
[INFO] [stdout] 1050 | | ) -> ());
[INFO] [stdout]      | |________- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the address of the same function can vary between different codegen units
[INFO] [stdout]      = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]      = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]      = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]     --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]      |
[INFO] [stdout]   58 |               pub struct Fn(FnPtr);
[INFO] [stdout]      |                             ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/mc.rs:1079:1
[INFO] [stdout]      |
[INFO] [stdout] 1079 | / wrap_fn_ptr!(pub unsafe extern "C" fn mc_scaled(
[INFO] [stdout] 1080 | |     dst_ptr: *mut DynPixel,
[INFO] [stdout] 1081 | |     dst_stride: isize,
[INFO] [stdout] 1082 | |     src_ptr: *const DynPixel,
[INFO] [stdout] ...    |
[INFO] [stdout] 1092 | |     _src: *const FFISafe<Rav1dPictureDataComponentOffset>,
[INFO] [stdout] 1093 | | ) -> ());
[INFO] [stdout]      | |________- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the address of the same function can vary between different codegen units
[INFO] [stdout]      = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]      = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]      = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]     --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]      |
[INFO] [stdout]   58 |               pub struct Fn(FnPtr);
[INFO] [stdout]      |                             ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/mc.rs:1124:1
[INFO] [stdout]      |
[INFO] [stdout] 1124 | / wrap_fn_ptr!(pub unsafe extern "C" fn warp8x8(
[INFO] [stdout] 1125 | |     dst_ptr: *mut DynPixel,
[INFO] [stdout] 1126 | |     dst_stride: isize,
[INFO] [stdout] 1127 | |     src_ptr: *const DynPixel,
[INFO] [stdout] ...    |
[INFO] [stdout] 1134 | |     _src: *const FFISafe<Rav1dPictureDataComponentOffset>,
[INFO] [stdout] 1135 | | ) -> ());
[INFO] [stdout]      | |________- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the address of the same function can vary between different codegen units
[INFO] [stdout]      = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]      = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]      = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]     --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]      |
[INFO] [stdout]   58 |               pub struct Fn(FnPtr);
[INFO] [stdout]      |                             ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/mc.rs:1163:1
[INFO] [stdout]      |
[INFO] [stdout] 1163 | / wrap_fn_ptr!(pub unsafe extern "C" fn mct(
[INFO] [stdout] 1164 | |     tmp: *mut i16,
[INFO] [stdout] 1165 | |     src_ptr: *const DynPixel,
[INFO] [stdout] 1166 | |     src_stride: isize,
[INFO] [stdout] ...    |
[INFO] [stdout] 1172 | |     _src: *const FFISafe<Rav1dPictureDataComponentOffset>,
[INFO] [stdout] 1173 | | ) -> ());
[INFO] [stdout]      | |________- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the address of the same function can vary between different codegen units
[INFO] [stdout]      = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]      = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]      = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]     --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]      |
[INFO] [stdout]   58 |               pub struct Fn(FnPtr);
[INFO] [stdout]      |                             ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/mc.rs:1196:1
[INFO] [stdout]      |
[INFO] [stdout] 1196 | / wrap_fn_ptr!(pub unsafe extern "C" fn mct_scaled(
[INFO] [stdout] 1197 | |     tmp: *mut i16,
[INFO] [stdout] 1198 | |     src_ptr: *const DynPixel,
[INFO] [stdout] 1199 | |     src_stride: isize,
[INFO] [stdout] ...    |
[INFO] [stdout] 1207 | |     _src: *const FFISafe<Rav1dPictureDataComponentOffset>,
[INFO] [stdout] 1208 | | ) -> ());
[INFO] [stdout]      | |________- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the address of the same function can vary between different codegen units
[INFO] [stdout]      = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]      = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]      = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]     --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]      |
[INFO] [stdout]   58 |               pub struct Fn(FnPtr);
[INFO] [stdout]      |                             ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/mc.rs:1233:1
[INFO] [stdout]      |
[INFO] [stdout] 1233 | / wrap_fn_ptr!(pub unsafe extern "C" fn warp8x8t(
[INFO] [stdout] 1234 | |     tmp: *mut i16,
[INFO] [stdout] 1235 | |     tmp_stride: usize,
[INFO] [stdout] 1236 | |     src_ptr: *const DynPixel,
[INFO] [stdout] ...    |
[INFO] [stdout] 1243 | |     _src: *const FFISafe<Rav1dPictureDataComponentOffset>,
[INFO] [stdout] 1244 | | ) -> ());
[INFO] [stdout]      | |________- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the address of the same function can vary between different codegen units
[INFO] [stdout]      = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]      = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]      = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]     --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]      |
[INFO] [stdout]   58 |               pub struct Fn(FnPtr);
[INFO] [stdout]      |                             ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/mc.rs:1272:1
[INFO] [stdout]      |
[INFO] [stdout] 1272 | / wrap_fn_ptr!(pub unsafe extern "C" fn avg(
[INFO] [stdout] 1273 | |     dst_ptr: *mut DynPixel,
[INFO] [stdout] 1274 | |     dst_stride: isize,
[INFO] [stdout] 1275 | |     tmp1: &[i16; COMPINTER_LEN],
[INFO] [stdout] ...    |
[INFO] [stdout] 1280 | |     _dst: *const FFISafe<Rav1dPictureDataComponentOffset>,
[INFO] [stdout] 1281 | | ) -> ());
[INFO] [stdout]      | |________- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the address of the same function can vary between different codegen units
[INFO] [stdout]      = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]      = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]      = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]     --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]      |
[INFO] [stdout]   58 |               pub struct Fn(FnPtr);
[INFO] [stdout]      |                             ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/mc.rs:1302:1
[INFO] [stdout]      |
[INFO] [stdout] 1302 | / wrap_fn_ptr!(pub unsafe extern "C" fn w_avg(
[INFO] [stdout] 1303 | |     dst_ptr: *mut DynPixel,
[INFO] [stdout] 1304 | |     dst_stride: isize,
[INFO] [stdout] 1305 | |     tmp1: &[i16; COMPINTER_LEN],
[INFO] [stdout] ...    |
[INFO] [stdout] 1311 | |     _dst: *const FFISafe<Rav1dPictureDataComponentOffset>,
[INFO] [stdout] 1312 | | ) -> ());
[INFO] [stdout]      | |________- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the address of the same function can vary between different codegen units
[INFO] [stdout]      = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]      = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]      = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]     --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]      |
[INFO] [stdout]   58 |               pub struct Fn(FnPtr);
[INFO] [stdout]      |                             ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/mc.rs:1334:1
[INFO] [stdout]      |
[INFO] [stdout] 1334 | / wrap_fn_ptr!(pub unsafe extern "C" fn mask(
[INFO] [stdout] 1335 | |     dst_ptr: *mut DynPixel,
[INFO] [stdout] 1336 | |     dst_stride: isize,
[INFO] [stdout] 1337 | |     tmp1: &[i16; COMPINTER_LEN],
[INFO] [stdout] ...    |
[INFO] [stdout] 1343 | |     _dst: *const FFISafe<Rav1dPictureDataComponentOffset>,
[INFO] [stdout] 1344 | | ) -> ());
[INFO] [stdout]      | |________- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the address of the same function can vary between different codegen units
[INFO] [stdout]      = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]      = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]      = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]     --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]      |
[INFO] [stdout]   58 |               pub struct Fn(FnPtr);
[INFO] [stdout]      |                             ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/mc.rs:1367:1
[INFO] [stdout]      |
[INFO] [stdout] 1367 | / wrap_fn_ptr!(pub unsafe extern "C" fn w_mask(
[INFO] [stdout] 1368 | |     dst_ptr: *mut DynPixel,
[INFO] [stdout] 1369 | |     dst_stride: isize,
[INFO] [stdout] 1370 | |     tmp1: &[i16; COMPINTER_LEN],
[INFO] [stdout] ...    |
[INFO] [stdout] 1377 | |     _dst: *const FFISafe<Rav1dPictureDataComponentOffset>,
[INFO] [stdout] 1378 | | ) -> ());
[INFO] [stdout]      | |________- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the address of the same function can vary between different codegen units
[INFO] [stdout]      = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]      = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]      = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]     --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]      |
[INFO] [stdout]   58 |               pub struct Fn(FnPtr);
[INFO] [stdout]      |                             ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/mc.rs:1401:1
[INFO] [stdout]      |
[INFO] [stdout] 1401 | / wrap_fn_ptr!(pub unsafe extern "C" fn blend(
[INFO] [stdout] 1402 | |     dst_ptr: *mut DynPixel,
[INFO] [stdout] 1403 | |     dst_stride: isize,
[INFO] [stdout] 1404 | |     tmp: *const [DynPixel; SCRATCH_INTER_INTRA_BUF_LEN],
[INFO] [stdout] ...    |
[INFO] [stdout] 1408 | |     _dst: *const FFISafe<Rav1dPictureDataComponentOffset>,
[INFO] [stdout] 1409 | | ) -> ());
[INFO] [stdout]      | |________- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the address of the same function can vary between different codegen units
[INFO] [stdout]      = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]      = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]      = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]     --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]      |
[INFO] [stdout]   58 |               pub struct Fn(FnPtr);
[INFO] [stdout]      |                             ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/mc.rs:1430:1
[INFO] [stdout]      |
[INFO] [stdout] 1430 | / wrap_fn_ptr!(pub unsafe extern "C" fn blend_dir(
[INFO] [stdout] 1431 | |     dst_ptr: *mut DynPixel,
[INFO] [stdout] 1432 | |     dst_stride: isize,
[INFO] [stdout] 1433 | |     tmp: *const [DynPixel; SCRATCH_LAP_LEN],
[INFO] [stdout] ...    |
[INFO] [stdout] 1436 | |     _dst: *const FFISafe<Rav1dPictureDataComponentOffset>,
[INFO] [stdout] 1437 | | ) -> ());
[INFO] [stdout]      | |________- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the address of the same function can vary between different codegen units
[INFO] [stdout]      = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]      = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]      = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]     --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]      |
[INFO] [stdout]   58 |               pub struct Fn(FnPtr);
[INFO] [stdout]      |                             ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/mc.rs:1456:1
[INFO] [stdout]      |
[INFO] [stdout] 1456 | / wrap_fn_ptr!(pub unsafe extern "C" fn emu_edge(
[INFO] [stdout] 1457 | |     bw: isize,
[INFO] [stdout] 1458 | |     bh: isize,
[INFO] [stdout] 1459 | |     iw: isize,
[INFO] [stdout] ...    |
[INFO] [stdout] 1467 | |     _src: *const FFISafe<Rav1dPictureDataComponent>,
[INFO] [stdout] 1468 | | ) -> ());
[INFO] [stdout]      | |________- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the address of the same function can vary between different codegen units
[INFO] [stdout]      = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]      = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]      = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]     --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]      |
[INFO] [stdout]   58 |               pub struct Fn(FnPtr);
[INFO] [stdout]      |                             ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/mc.rs:1497:1
[INFO] [stdout]      |
[INFO] [stdout] 1497 | / wrap_fn_ptr!(pub unsafe extern "C" fn resize(
[INFO] [stdout] 1498 | |     dst: *mut DynPixel,
[INFO] [stdout] 1499 | |     dst_stride: isize,
[INFO] [stdout] 1500 | |     src_ptr: *const DynPixel,
[INFO] [stdout] ...    |
[INFO] [stdout] 1509 | |     _dst: *const FFISafe<WithOffset<PicOrBuf<AlignedVec64<u8>>>>,
[INFO] [stdout] 1510 | | ) -> ());
[INFO] [stdout]      | |________- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the address of the same function can vary between different codegen units
[INFO] [stdout]      = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]      = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]      = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]   --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]    |
[INFO] [stdout] 58 |               pub struct Fn(FnPtr);
[INFO] [stdout]    |                             ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/pal.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout]  8 | / wrap_fn_ptr!(pub unsafe extern "C" fn pal_idx_finish(
[INFO] [stdout]  9 | |     dst: *mut u8,
[INFO] [stdout] 10 | |     src: *const u8,
[INFO] [stdout] 11 | |     bw: c_int,
[INFO] [stdout] ...  |
[INFO] [stdout] 14 | |     h: c_int,
[INFO] [stdout] 15 | | ) -> ());
[INFO] [stdout]    | |________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: the address of the same function can vary between different codegen units
[INFO] [stdout]    = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]    = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]    = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/picture.rs:199:21
[INFO] [stdout]     |
[INFO] [stdout] 199 |         let alloc = self.alloc_picture_callback == dav1d_default_picture_alloc;
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout] help: refactor your code, or use `std::ptr::fn_addr_eq` to suppress the lint
[INFO] [stdout]     |
[INFO] [stdout] 199 -         let alloc = self.alloc_picture_callback == dav1d_default_picture_alloc;
[INFO] [stdout] 199 +         let alloc = std::ptr::fn_addr_eq(self.alloc_picture_callback, dav1d_default_picture_alloc as unsafe extern "C" fn(*mut include::dav1d::picture::Dav1dPicture, Option<SendSyncNonNull<libc::c_void>>) -> Dav1dResult);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/picture.rs:200:23
[INFO] [stdout]     |
[INFO] [stdout] 200 |         let release = self.release_picture_callback == dav1d_default_picture_release;
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout] help: refactor your code, or use `std::ptr::fn_addr_eq` to suppress the lint
[INFO] [stdout]     |
[INFO] [stdout] 200 -         let release = self.release_picture_callback == dav1d_default_picture_release;
[INFO] [stdout] 200 +         let release = std::ptr::fn_addr_eq(self.release_picture_callback, dav1d_default_picture_release as unsafe extern "C" fn(*mut include::dav1d::picture::Dav1dPicture, Option<SendSyncNonNull<libc::c_void>>));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]     |
[INFO] [stdout]  58 |               pub struct Fn(FnPtr);
[INFO] [stdout]     |                             ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/refmvs.rs:173:1
[INFO] [stdout]     |
[INFO] [stdout] 173 | / wrap_fn_ptr!(pub(crate) unsafe extern "C" fn load_tmvs(
[INFO] [stdout] 174 | |     rf: &AsmRefMvsFrame,
[INFO] [stdout] 175 | |     tile_row_idx: i32,
[INFO] [stdout] 176 | |     col_start8: i32,
[INFO] [stdout] ...   |
[INFO] [stdout] 181 | |     _rp_ref: *const FFISafe<[Option<DisjointMutArcSlice<RefMvsTemporalBlock>>; 7]>,
[INFO] [stdout] 182 | | ) -> ());
[INFO] [stdout]     | |________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]     = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]     |
[INFO] [stdout]  58 |               pub struct Fn(FnPtr);
[INFO] [stdout]     |                             ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/refmvs.rs:274:1
[INFO] [stdout]     |
[INFO] [stdout] 274 | / wrap_fn_ptr!(pub unsafe extern "C" fn save_tmvs(
[INFO] [stdout] 275 | |     rp_ptr: *mut RefMvsTemporalBlock,
[INFO] [stdout] 276 | |     stride: isize,
[INFO] [stdout] 277 | |     rr: &[*const RefMvsBlock; 31],
[INFO] [stdout] ...   |
[INFO] [stdout] 285 | |     _rp: *const FFISafe<DisjointMutArcSlice<RefMvsTemporalBlock>>,
[INFO] [stdout] 286 | | ) -> ());
[INFO] [stdout]     | |________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]     = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]     |
[INFO] [stdout]  58 |               pub struct Fn(FnPtr);
[INFO] [stdout]     |                             ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/refmvs.rs:356:1
[INFO] [stdout]     |
[INFO] [stdout] 356 | / wrap_fn_ptr!(pub unsafe extern "C" fn splat_mv(
[INFO] [stdout] 357 | |     rr: *mut *mut RefMvsBlock,
[INFO] [stdout] 358 | |     rmv: &Align16<RefMvsBlock>,
[INFO] [stdout] 359 | |     bx4: i32,
[INFO] [stdout] 360 | |     bw4: i32,
[INFO] [stdout] 361 | |     bh4: i32,
[INFO] [stdout] 362 | | ) -> ());
[INFO] [stdout]     | |________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]     = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Rav1dFrameContextTaskThreadPendingTasks` is never constructed
[INFO] [stdout]    --> src/internal.rs:719:12
[INFO] [stdout]     |
[INFO] [stdout] 719 | pub struct Rav1dFrameContextTaskThreadPendingTasks {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> include/dav1d/picture.rs:262:38
[INFO] [stdout]     |
[INFO] [stdout] 262 |     pub fn with_offset<BD: BitDepth>(&self) -> Rav1dPictureDataComponentOffset {
[INFO] [stdout]     |                                      ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                      |
[INFO] [stdout]     |                                      the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 262 |     pub fn with_offset<BD: BitDepth>(&self) -> Rav1dPictureDataComponentOffset<'_> {
[INFO] [stdout]     |                                                                               ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> include/dav1d/picture.rs:533:37
[INFO] [stdout]     |
[INFO] [stdout] 533 |     pub fn lf_offsets<BD: BitDepth>(&self, y: c_int) -> [Rav1dPictureDataComponentOffset; 3] {
[INFO] [stdout]     |                                     ^^^^^                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                                     |
[INFO] [stdout]     |                                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 533 |     pub fn lf_offsets<BD: BitDepth>(&self, y: c_int) -> [Rav1dPictureDataComponentOffset<'_>; 3] {
[INFO] [stdout]     |                                                                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]   --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]    |
[INFO] [stdout] 58 |               pub struct Fn(FnPtr);
[INFO] [stdout]    |                             ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/cdef.rs:46:1
[INFO] [stdout]    |
[INFO] [stdout] 46 | / wrap_fn_ptr!(pub unsafe extern "C" fn cdef(
[INFO] [stdout] 47 | |     dst_ptr: *mut DynPixel,
[INFO] [stdout] 48 | |     stride: ptrdiff_t,
[INFO] [stdout] 49 | |     left: *const [LeftPixelRow2px<DynPixel>; 8],
[INFO] [stdout] ...  |
[INFO] [stdout] 60 | |     _bottom: *const FFISafe<CdefBottom>,
[INFO] [stdout] 61 | | ) -> ());
[INFO] [stdout]    | |________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: the address of the same function can vary between different codegen units
[INFO] [stdout]    = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]    = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]    = note: `#[warn(unpredictable_function_pointer_comparisons)]` on by default
[INFO] [stdout]    = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]     |
[INFO] [stdout]  58 |               pub struct Fn(FnPtr);
[INFO] [stdout]     |                             ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/cdef.rs:118:1
[INFO] [stdout]     |
[INFO] [stdout] 118 | / wrap_fn_ptr!(pub unsafe extern "C" fn cdef_dir(
[INFO] [stdout] 119 | |     dst_ptr: *const DynPixel,
[INFO] [stdout] 120 | |     dst_stride: ptrdiff_t,
[INFO] [stdout] 121 | |     variance: &mut c_uint,
[INFO] [stdout] 122 | |     bitdepth_max: c_int,
[INFO] [stdout] 123 | |     _dst: *const FFISafe<Rav1dPictureDataComponentOffset>,
[INFO] [stdout] 124 | | ) -> c_int);
[INFO] [stdout]     | |___________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]     = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/cdf.rs:183:22
[INFO] [stdout]     |
[INFO] [stdout] 183 |     pub fn cdf_write(&self) -> RwLockWriteGuard<CdfContext> {
[INFO] [stdout]     |                      ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                      |
[INFO] [stdout]     |                      the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 183 |     pub fn cdf_write(&self) -> RwLockWriteGuard<'_, CdfContext> {
[INFO] [stdout]     |                                                 +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]   --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]    |
[INFO] [stdout] 58 |               pub struct Fn(FnPtr);
[INFO] [stdout]    |                             ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/filmgrain.rs:50:1
[INFO] [stdout]    |
[INFO] [stdout] 50 | / wrap_fn_ptr!(pub unsafe extern "C" fn generate_grain_y(
[INFO] [stdout] 51 | |     buf: *mut GrainLut<DynEntry>,
[INFO] [stdout] 52 | |     data: &Dav1dFilmGrainData,
[INFO] [stdout] 53 | |     bitdepth_max: c_int,
[INFO] [stdout] 54 | | ) -> ());
[INFO] [stdout]    | |________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: the address of the same function can vary between different codegen units
[INFO] [stdout]    = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]    = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]    = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]   --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]    |
[INFO] [stdout] 58 |               pub struct Fn(FnPtr);
[INFO] [stdout]    |                             ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/filmgrain.rs:71:1
[INFO] [stdout]    |
[INFO] [stdout] 71 | / wrap_fn_ptr!(pub unsafe extern "C" fn generate_grain_uv(
[INFO] [stdout] 72 | |     buf: *mut GrainLut<DynEntry>,
[INFO] [stdout] 73 | |     buf_y: *const GrainLut<DynEntry>,
[INFO] [stdout] 74 | |     data: &Dav1dFilmGrainData,
[INFO] [stdout] 75 | |     uv: intptr_t,
[INFO] [stdout] 76 | |     bitdepth_max: c_int,
[INFO] [stdout] 77 | | ) -> ());
[INFO] [stdout]    | |________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: the address of the same function can vary between different codegen units
[INFO] [stdout]    = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]    = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]    = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]     |
[INFO] [stdout]  58 |               pub struct Fn(FnPtr);
[INFO] [stdout]     |                             ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/filmgrain.rs:98:1
[INFO] [stdout]     |
[INFO] [stdout]  98 | / wrap_fn_ptr!(pub unsafe extern "C" fn fgy_32x32xn(
[INFO] [stdout]  99 | |     dst_row_ptr: *mut DynPixel,
[INFO] [stdout] 100 | |     src_row_ptr: *const DynPixel,
[INFO] [stdout] 101 | |     stride: ptrdiff_t,
[INFO] [stdout] ...   |
[INFO] [stdout] 110 | |     _src_src: *const FFISafe<Rav1dPictureDataComponentOffset>,
[INFO] [stdout] 111 | | ) -> ());
[INFO] [stdout]     | |________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]     = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]     |
[INFO] [stdout]  58 |               pub struct Fn(FnPtr);
[INFO] [stdout]     |                             ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/filmgrain.rs:160:1
[INFO] [stdout]     |
[INFO] [stdout] 160 | / wrap_fn_ptr!(pub unsafe extern "C" fn fguv_32x32xn(
[INFO] [stdout] 161 | |     dst_row_ptr: *mut DynPixel,
[INFO] [stdout] 162 | |     src_row_ptr: *const DynPixel,
[INFO] [stdout] 163 | |     stride: ptrdiff_t,
[INFO] [stdout] ...   |
[INFO] [stdout] 177 | |     _luma_row: *const FFISafe<Rav1dPictureDataComponentOffset>,
[INFO] [stdout] 178 | | ) -> ());
[INFO] [stdout]     | |________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]     = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]   --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]    |
[INFO] [stdout] 58 |               pub struct Fn(FnPtr);
[INFO] [stdout]    |                             ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/ipred.rs:58:1
[INFO] [stdout]    |
[INFO] [stdout] 58 | / wrap_fn_ptr!(pub unsafe extern "C" fn angular_ipred(
[INFO] [stdout] 59 | |     dst_ptr: *mut DynPixel,
[INFO] [stdout] 60 | |     stride: ptrdiff_t,
[INFO] [stdout] 61 | |     topleft: *const DynPixel,
[INFO] [stdout] ...  |
[INFO] [stdout] 69 | |     _dst: *const FFISafe<Rav1dPictureDataComponentOffset>,
[INFO] [stdout] 70 | | ) -> ());
[INFO] [stdout]    | |________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: the address of the same function can vary between different codegen units
[INFO] [stdout]    = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]    = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]    = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]     |
[INFO] [stdout]  58 |               pub struct Fn(FnPtr);
[INFO] [stdout]     |                             ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ipred.rs:116:1
[INFO] [stdout]     |
[INFO] [stdout] 116 | / wrap_fn_ptr!(pub unsafe extern "C" fn cfl_ac(
[INFO] [stdout] 117 | |     ac: &mut [i16; SCRATCH_AC_TXTP_LEN],
[INFO] [stdout] 118 | |     y_ptr: *const DynPixel,
[INFO] [stdout] 119 | |     stride: ptrdiff_t,
[INFO] [stdout] ...   |
[INFO] [stdout] 124 | |     _y: *const FFISafe<Rav1dPictureDataComponentOffset>,
[INFO] [stdout] 125 | | ) -> ());
[INFO] [stdout]     | |________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]     = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]     |
[INFO] [stdout]  58 |               pub struct Fn(FnPtr);
[INFO] [stdout]     |                             ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ipred.rs:145:1
[INFO] [stdout]     |
[INFO] [stdout] 145 | / wrap_fn_ptr!(pub unsafe extern "C" fn cfl_pred(
[INFO] [stdout] 146 | |     dst_ptr: *mut DynPixel,
[INFO] [stdout] 147 | |     stride: ptrdiff_t,
[INFO] [stdout] 148 | |     topleft: *const DynPixel,
[INFO] [stdout] ...   |
[INFO] [stdout] 155 | |     _dst: *const FFISafe<Rav1dPictureDataComponentOffset>,
[INFO] [stdout] 156 | | ) -> ());
[INFO] [stdout]     | |________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]     = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]     |
[INFO] [stdout]  58 |               pub struct Fn(FnPtr);
[INFO] [stdout]     |                             ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/ipred.rs:193:1
[INFO] [stdout]     |
[INFO] [stdout] 193 | / wrap_fn_ptr!(pub unsafe extern "C" fn pal_pred(
[INFO] [stdout] 194 | |     dst_ptr: *mut DynPixel,
[INFO] [stdout] 195 | |     stride: ptrdiff_t,
[INFO] [stdout] 196 | |     pal: *const [DynPixel; 8],
[INFO] [stdout] ...   |
[INFO] [stdout] 200 | |     _dst: *const FFISafe<Rav1dPictureDataComponentOffset>,
[INFO] [stdout] 201 | | ) -> ());
[INFO] [stdout]     | |________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]     = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]     |
[INFO] [stdout]  58 |               pub struct Fn(FnPtr);
[INFO] [stdout]     |                             ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/itx.rs:285:1
[INFO] [stdout]     |
[INFO] [stdout] 285 | / wrap_fn_ptr!(unsafe extern "C" fn itxfm(
[INFO] [stdout] 286 | |     dst_ptr: *mut DynPixel,
[INFO] [stdout] 287 | |     dst_stride: isize,
[INFO] [stdout] 288 | |     coeff: *mut DynCoef,
[INFO] [stdout] ...   |
[INFO] [stdout] 292 | |     _dst: *const FFISafe<Rav1dPictureDataComponentOffset>,
[INFO] [stdout] 293 | | ) -> ());
[INFO] [stdout]     | |________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]     = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/log.rs:170:25
[INFO] [stdout]     |
[INFO] [stdout] 170 |             Some(cb) if cb == marker::STDOUT => Rav1dLogger::Stdout,
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout] help: refactor your code, or use `std::ptr::fn_addr_eq` to suppress the lint
[INFO] [stdout]     |
[INFO] [stdout] 170 -             Some(cb) if cb == marker::STDOUT => Rav1dLogger::Stdout,
[INFO] [stdout] 170 +             Some(cb) if std::ptr::fn_addr_eq(cb, marker::STDOUT) => Rav1dLogger::Stdout,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/log.rs:171:25
[INFO] [stdout]     |
[INFO] [stdout] 171 |             Some(cb) if cb == marker::STDERR => Rav1dLogger::Stderr,
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout] help: refactor your code, or use `std::ptr::fn_addr_eq` to suppress the lint
[INFO] [stdout]     |
[INFO] [stdout] 171 -             Some(cb) if cb == marker::STDERR => Rav1dLogger::Stderr,
[INFO] [stdout] 171 +             Some(cb) if std::ptr::fn_addr_eq(cb, marker::STDERR) => Rav1dLogger::Stderr,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]   --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]    |
[INFO] [stdout] 58 |               pub struct Fn(FnPtr);
[INFO] [stdout]    |                             ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/loopfilter.rs:28:1
[INFO] [stdout]    |
[INFO] [stdout] 28 | / wrap_fn_ptr!(pub unsafe extern "C" fn loopfilter_sb(
[INFO] [stdout] 29 | |     dst_ptr: *mut DynPixel,
[INFO] [stdout] 30 | |     stride: ptrdiff_t,
[INFO] [stdout] 31 | |     mask: &[u32; 3],
[INFO] [stdout] ...  |
[INFO] [stdout] 38 | |     _lvl: *const FFISafe<WithOffset<&DisjointMut<Vec<u8>>>>,
[INFO] [stdout] 39 | | ) -> ());
[INFO] [stdout]    | |________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: the address of the same function can vary between different codegen units
[INFO] [stdout]    = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]    = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]    = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]     |
[INFO] [stdout]  58 |               pub struct Fn(FnPtr);
[INFO] [stdout]     |                             ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/looprestoration.rs:111:1
[INFO] [stdout]     |
[INFO] [stdout] 111 | / wrap_fn_ptr!(pub unsafe extern "C" fn loop_restoration_filter(
[INFO] [stdout] 112 | |     dst_ptr: *mut DynPixel,
[INFO] [stdout] 113 | |     dst_stride: ptrdiff_t,
[INFO] [stdout] 114 | |     left: *const LeftPixelRow<DynPixel>,
[INFO] [stdout] ...   |
[INFO] [stdout] 122 | |     _lpf: *const FFISafe<DisjointMut<AlignedVec64<u8>>>,
[INFO] [stdout] 123 | | ) -> ());
[INFO] [stdout]     | |________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]     = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]     --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]      |
[INFO] [stdout]   58 |               pub struct Fn(FnPtr);
[INFO] [stdout]      |                             ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/mc.rs:1038:1
[INFO] [stdout]      |
[INFO] [stdout] 1038 | / wrap_fn_ptr!(pub unsafe extern "C" fn mc(
[INFO] [stdout] 1039 | |     dst_ptr: *mut DynPixel,
[INFO] [stdout] 1040 | |     dst_stride: isize,
[INFO] [stdout] 1041 | |     src_ptr: *const DynPixel,
[INFO] [stdout] ...    |
[INFO] [stdout] 1049 | |     _src: *const FFISafe<Rav1dPictureDataComponentOffset>,
[INFO] [stdout] 1050 | | ) -> ());
[INFO] [stdout]      | |________- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the address of the same function can vary between different codegen units
[INFO] [stdout]      = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]      = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]      = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]     --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]      |
[INFO] [stdout]   58 |               pub struct Fn(FnPtr);
[INFO] [stdout]      |                             ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/mc.rs:1079:1
[INFO] [stdout]      |
[INFO] [stdout] 1079 | / wrap_fn_ptr!(pub unsafe extern "C" fn mc_scaled(
[INFO] [stdout] 1080 | |     dst_ptr: *mut DynPixel,
[INFO] [stdout] 1081 | |     dst_stride: isize,
[INFO] [stdout] 1082 | |     src_ptr: *const DynPixel,
[INFO] [stdout] ...    |
[INFO] [stdout] 1092 | |     _src: *const FFISafe<Rav1dPictureDataComponentOffset>,
[INFO] [stdout] 1093 | | ) -> ());
[INFO] [stdout]      | |________- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the address of the same function can vary between different codegen units
[INFO] [stdout]      = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]      = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]      = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]     --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]      |
[INFO] [stdout]   58 |               pub struct Fn(FnPtr);
[INFO] [stdout]      |                             ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/mc.rs:1124:1
[INFO] [stdout]      |
[INFO] [stdout] 1124 | / wrap_fn_ptr!(pub unsafe extern "C" fn warp8x8(
[INFO] [stdout] 1125 | |     dst_ptr: *mut DynPixel,
[INFO] [stdout] 1126 | |     dst_stride: isize,
[INFO] [stdout] 1127 | |     src_ptr: *const DynPixel,
[INFO] [stdout] ...    |
[INFO] [stdout] 1134 | |     _src: *const FFISafe<Rav1dPictureDataComponentOffset>,
[INFO] [stdout] 1135 | | ) -> ());
[INFO] [stdout]      | |________- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the address of the same function can vary between different codegen units
[INFO] [stdout]      = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]      = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]      = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]     --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]      |
[INFO] [stdout]   58 |               pub struct Fn(FnPtr);
[INFO] [stdout]      |                             ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/mc.rs:1163:1
[INFO] [stdout]      |
[INFO] [stdout] 1163 | / wrap_fn_ptr!(pub unsafe extern "C" fn mct(
[INFO] [stdout] 1164 | |     tmp: *mut i16,
[INFO] [stdout] 1165 | |     src_ptr: *const DynPixel,
[INFO] [stdout] 1166 | |     src_stride: isize,
[INFO] [stdout] ...    |
[INFO] [stdout] 1172 | |     _src: *const FFISafe<Rav1dPictureDataComponentOffset>,
[INFO] [stdout] 1173 | | ) -> ());
[INFO] [stdout]      | |________- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the address of the same function can vary between different codegen units
[INFO] [stdout]      = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]      = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]      = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]     --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]      |
[INFO] [stdout]   58 |               pub struct Fn(FnPtr);
[INFO] [stdout]      |                             ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/mc.rs:1196:1
[INFO] [stdout]      |
[INFO] [stdout] 1196 | / wrap_fn_ptr!(pub unsafe extern "C" fn mct_scaled(
[INFO] [stdout] 1197 | |     tmp: *mut i16,
[INFO] [stdout] 1198 | |     src_ptr: *const DynPixel,
[INFO] [stdout] 1199 | |     src_stride: isize,
[INFO] [stdout] ...    |
[INFO] [stdout] 1207 | |     _src: *const FFISafe<Rav1dPictureDataComponentOffset>,
[INFO] [stdout] 1208 | | ) -> ());
[INFO] [stdout]      | |________- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the address of the same function can vary between different codegen units
[INFO] [stdout]      = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]      = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]      = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]     --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]      |
[INFO] [stdout]   58 |               pub struct Fn(FnPtr);
[INFO] [stdout]      |                             ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/mc.rs:1233:1
[INFO] [stdout]      |
[INFO] [stdout] 1233 | / wrap_fn_ptr!(pub unsafe extern "C" fn warp8x8t(
[INFO] [stdout] 1234 | |     tmp: *mut i16,
[INFO] [stdout] 1235 | |     tmp_stride: usize,
[INFO] [stdout] 1236 | |     src_ptr: *const DynPixel,
[INFO] [stdout] ...    |
[INFO] [stdout] 1243 | |     _src: *const FFISafe<Rav1dPictureDataComponentOffset>,
[INFO] [stdout] 1244 | | ) -> ());
[INFO] [stdout]      | |________- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the address of the same function can vary between different codegen units
[INFO] [stdout]      = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]      = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]      = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]     --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]      |
[INFO] [stdout]   58 |               pub struct Fn(FnPtr);
[INFO] [stdout]      |                             ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/mc.rs:1272:1
[INFO] [stdout]      |
[INFO] [stdout] 1272 | / wrap_fn_ptr!(pub unsafe extern "C" fn avg(
[INFO] [stdout] 1273 | |     dst_ptr: *mut DynPixel,
[INFO] [stdout] 1274 | |     dst_stride: isize,
[INFO] [stdout] 1275 | |     tmp1: &[i16; COMPINTER_LEN],
[INFO] [stdout] ...    |
[INFO] [stdout] 1280 | |     _dst: *const FFISafe<Rav1dPictureDataComponentOffset>,
[INFO] [stdout] 1281 | | ) -> ());
[INFO] [stdout]      | |________- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the address of the same function can vary between different codegen units
[INFO] [stdout]      = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]      = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]      = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]     --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]      |
[INFO] [stdout]   58 |               pub struct Fn(FnPtr);
[INFO] [stdout]      |                             ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/mc.rs:1302:1
[INFO] [stdout]      |
[INFO] [stdout] 1302 | / wrap_fn_ptr!(pub unsafe extern "C" fn w_avg(
[INFO] [stdout] 1303 | |     dst_ptr: *mut DynPixel,
[INFO] [stdout] 1304 | |     dst_stride: isize,
[INFO] [stdout] 1305 | |     tmp1: &[i16; COMPINTER_LEN],
[INFO] [stdout] ...    |
[INFO] [stdout] 1311 | |     _dst: *const FFISafe<Rav1dPictureDataComponentOffset>,
[INFO] [stdout] 1312 | | ) -> ());
[INFO] [stdout]      | |________- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the address of the same function can vary between different codegen units
[INFO] [stdout]      = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]      = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]      = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]     --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]      |
[INFO] [stdout]   58 |               pub struct Fn(FnPtr);
[INFO] [stdout]      |                             ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/mc.rs:1334:1
[INFO] [stdout]      |
[INFO] [stdout] 1334 | / wrap_fn_ptr!(pub unsafe extern "C" fn mask(
[INFO] [stdout] 1335 | |     dst_ptr: *mut DynPixel,
[INFO] [stdout] 1336 | |     dst_stride: isize,
[INFO] [stdout] 1337 | |     tmp1: &[i16; COMPINTER_LEN],
[INFO] [stdout] ...    |
[INFO] [stdout] 1343 | |     _dst: *const FFISafe<Rav1dPictureDataComponentOffset>,
[INFO] [stdout] 1344 | | ) -> ());
[INFO] [stdout]      | |________- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the address of the same function can vary between different codegen units
[INFO] [stdout]      = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]      = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]      = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]     --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]      |
[INFO] [stdout]   58 |               pub struct Fn(FnPtr);
[INFO] [stdout]      |                             ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/mc.rs:1367:1
[INFO] [stdout]      |
[INFO] [stdout] 1367 | / wrap_fn_ptr!(pub unsafe extern "C" fn w_mask(
[INFO] [stdout] 1368 | |     dst_ptr: *mut DynPixel,
[INFO] [stdout] 1369 | |     dst_stride: isize,
[INFO] [stdout] 1370 | |     tmp1: &[i16; COMPINTER_LEN],
[INFO] [stdout] ...    |
[INFO] [stdout] 1377 | |     _dst: *const FFISafe<Rav1dPictureDataComponentOffset>,
[INFO] [stdout] 1378 | | ) -> ());
[INFO] [stdout]      | |________- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the address of the same function can vary between different codegen units
[INFO] [stdout]      = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]      = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]      = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]     --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]      |
[INFO] [stdout]   58 |               pub struct Fn(FnPtr);
[INFO] [stdout]      |                             ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/mc.rs:1401:1
[INFO] [stdout]      |
[INFO] [stdout] 1401 | / wrap_fn_ptr!(pub unsafe extern "C" fn blend(
[INFO] [stdout] 1402 | |     dst_ptr: *mut DynPixel,
[INFO] [stdout] 1403 | |     dst_stride: isize,
[INFO] [stdout] 1404 | |     tmp: *const [DynPixel; SCRATCH_INTER_INTRA_BUF_LEN],
[INFO] [stdout] ...    |
[INFO] [stdout] 1408 | |     _dst: *const FFISafe<Rav1dPictureDataComponentOffset>,
[INFO] [stdout] 1409 | | ) -> ());
[INFO] [stdout]      | |________- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the address of the same function can vary between different codegen units
[INFO] [stdout]      = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]      = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]      = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]     --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]      |
[INFO] [stdout]   58 |               pub struct Fn(FnPtr);
[INFO] [stdout]      |                             ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/mc.rs:1430:1
[INFO] [stdout]      |
[INFO] [stdout] 1430 | / wrap_fn_ptr!(pub unsafe extern "C" fn blend_dir(
[INFO] [stdout] 1431 | |     dst_ptr: *mut DynPixel,
[INFO] [stdout] 1432 | |     dst_stride: isize,
[INFO] [stdout] 1433 | |     tmp: *const [DynPixel; SCRATCH_LAP_LEN],
[INFO] [stdout] ...    |
[INFO] [stdout] 1436 | |     _dst: *const FFISafe<Rav1dPictureDataComponentOffset>,
[INFO] [stdout] 1437 | | ) -> ());
[INFO] [stdout]      | |________- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the address of the same function can vary between different codegen units
[INFO] [stdout]      = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]      = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]      = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]     --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]      |
[INFO] [stdout]   58 |               pub struct Fn(FnPtr);
[INFO] [stdout]      |                             ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/mc.rs:1456:1
[INFO] [stdout]      |
[INFO] [stdout] 1456 | / wrap_fn_ptr!(pub unsafe extern "C" fn emu_edge(
[INFO] [stdout] 1457 | |     bw: isize,
[INFO] [stdout] 1458 | |     bh: isize,
[INFO] [stdout] 1459 | |     iw: isize,
[INFO] [stdout] ...    |
[INFO] [stdout] 1467 | |     _src: *const FFISafe<Rav1dPictureDataComponent>,
[INFO] [stdout] 1468 | | ) -> ());
[INFO] [stdout]      | |________- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the address of the same function can vary between different codegen units
[INFO] [stdout]      = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]      = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]      = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]     --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]      |
[INFO] [stdout]   58 |               pub struct Fn(FnPtr);
[INFO] [stdout]      |                             ^^^^^
[INFO] [stdout]      |
[INFO] [stdout]     ::: src/mc.rs:1497:1
[INFO] [stdout]      |
[INFO] [stdout] 1497 | / wrap_fn_ptr!(pub unsafe extern "C" fn resize(
[INFO] [stdout] 1498 | |     dst: *mut DynPixel,
[INFO] [stdout] 1499 | |     dst_stride: isize,
[INFO] [stdout] 1500 | |     src_ptr: *const DynPixel,
[INFO] [stdout] ...    |
[INFO] [stdout] 1509 | |     _dst: *const FFISafe<WithOffset<PicOrBuf<AlignedVec64<u8>>>>,
[INFO] [stdout] 1510 | | ) -> ());
[INFO] [stdout]      | |________- in this macro invocation
[INFO] [stdout]      |
[INFO] [stdout]      = note: the address of the same function can vary between different codegen units
[INFO] [stdout]      = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]      = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]      = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]   --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]    |
[INFO] [stdout] 58 |               pub struct Fn(FnPtr);
[INFO] [stdout]    |                             ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/pal.rs:8:1
[INFO] [stdout]    |
[INFO] [stdout]  8 | / wrap_fn_ptr!(pub unsafe extern "C" fn pal_idx_finish(
[INFO] [stdout]  9 | |     dst: *mut u8,
[INFO] [stdout] 10 | |     src: *const u8,
[INFO] [stdout] 11 | |     bw: c_int,
[INFO] [stdout] ...  |
[INFO] [stdout] 14 | |     h: c_int,
[INFO] [stdout] 15 | | ) -> ());
[INFO] [stdout]    | |________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = note: the address of the same function can vary between different codegen units
[INFO] [stdout]    = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]    = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]    = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/picture.rs:199:21
[INFO] [stdout]     |
[INFO] [stdout] 199 |         let alloc = self.alloc_picture_callback == dav1d_default_picture_alloc;
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout] help: refactor your code, or use `std::ptr::fn_addr_eq` to suppress the lint
[INFO] [stdout]     |
[INFO] [stdout] 199 -         let alloc = self.alloc_picture_callback == dav1d_default_picture_alloc;
[INFO] [stdout] 199 +         let alloc = std::ptr::fn_addr_eq(self.alloc_picture_callback, dav1d_default_picture_alloc as unsafe extern "C" fn(*mut include::dav1d::picture::Dav1dPicture, Option<SendSyncNonNull<libc::c_void>>) -> Dav1dResult);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/picture.rs:200:23
[INFO] [stdout]     |
[INFO] [stdout] 200 |         let release = self.release_picture_callback == dav1d_default_picture_release;
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout] help: refactor your code, or use `std::ptr::fn_addr_eq` to suppress the lint
[INFO] [stdout]     |
[INFO] [stdout] 200 -         let release = self.release_picture_callback == dav1d_default_picture_release;
[INFO] [stdout] 200 +         let release = std::ptr::fn_addr_eq(self.release_picture_callback, dav1d_default_picture_release as unsafe extern "C" fn(*mut include::dav1d::picture::Dav1dPicture, Option<SendSyncNonNull<libc::c_void>>));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]     |
[INFO] [stdout]  58 |               pub struct Fn(FnPtr);
[INFO] [stdout]     |                             ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/refmvs.rs:173:1
[INFO] [stdout]     |
[INFO] [stdout] 173 | / wrap_fn_ptr!(pub(crate) unsafe extern "C" fn load_tmvs(
[INFO] [stdout] 174 | |     rf: &AsmRefMvsFrame,
[INFO] [stdout] 175 | |     tile_row_idx: i32,
[INFO] [stdout] 176 | |     col_start8: i32,
[INFO] [stdout] ...   |
[INFO] [stdout] 181 | |     _rp_ref: *const FFISafe<[Option<DisjointMutArcSlice<RefMvsTemporalBlock>>; 7]>,
[INFO] [stdout] 182 | | ) -> ());
[INFO] [stdout]     | |________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]     = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]     |
[INFO] [stdout]  58 |               pub struct Fn(FnPtr);
[INFO] [stdout]     |                             ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/refmvs.rs:274:1
[INFO] [stdout]     |
[INFO] [stdout] 274 | / wrap_fn_ptr!(pub unsafe extern "C" fn save_tmvs(
[INFO] [stdout] 275 | |     rp_ptr: *mut RefMvsTemporalBlock,
[INFO] [stdout] 276 | |     stride: isize,
[INFO] [stdout] 277 | |     rr: &[*const RefMvsBlock; 31],
[INFO] [stdout] ...   |
[INFO] [stdout] 285 | |     _rp: *const FFISafe<DisjointMutArcSlice<RefMvsTemporalBlock>>,
[INFO] [stdout] 286 | | ) -> ());
[INFO] [stdout]     | |________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]     = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointer comparisons do not produce meaningful results since their addresses are not guaranteed to be unique
[INFO] [stdout]    --> src/wrap_fn_ptr.rs:58:27
[INFO] [stdout]     |
[INFO] [stdout]  58 |               pub struct Fn(FnPtr);
[INFO] [stdout]     |                             ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/refmvs.rs:356:1
[INFO] [stdout]     |
[INFO] [stdout] 356 | / wrap_fn_ptr!(pub unsafe extern "C" fn splat_mv(
[INFO] [stdout] 357 | |     rr: *mut *mut RefMvsBlock,
[INFO] [stdout] 358 | |     rmv: &Align16<RefMvsBlock>,
[INFO] [stdout] 359 | |     bx4: i32,
[INFO] [stdout] 360 | |     bw4: i32,
[INFO] [stdout] 361 | |     bh4: i32,
[INFO] [stdout] 362 | | ) -> ());
[INFO] [stdout]     | |________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: the address of the same function can vary between different codegen units
[INFO] [stdout]     = note: furthermore, different functions could have the same address after being merged together
[INFO] [stdout]     = note: for more information visit <https://doc.rust-lang.org/nightly/core/ptr/fn.fn_addr_eq.html>
[INFO] [stdout]     = note: this warning originates in the derive macro `PartialEq` which comes from the expansion of the macro `wrap_fn_ptr` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 50s
[INFO] running `Command { std: "docker" "inspect" "8c2582ce7577158bfcbbcc5edeb13273edcc9d9258dae76a86ff446fc16b15b8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8c2582ce7577158bfcbbcc5edeb13273edcc9d9258dae76a86ff446fc16b15b8", kill_on_drop: false }`
[INFO] [stdout] 8c2582ce7577158bfcbbcc5edeb13273edcc9d9258dae76a86ff446fc16b15b8
