[INFO] fetching crate zenjpeg 0.8.4...
[INFO] documenting zenjpeg-0.8.4 against da3f5c31e5535b3dc210067de660a45784ae1e9c for pr-162169
[INFO] extracting crate zenjpeg 0.8.4 into /workspace/builds/worker-2-tc2/source
[INFO] started tweaking crates.io crate zenjpeg 0.8.4
[INFO] finished tweaking crates.io crate zenjpeg 0.8.4
[INFO] tweaked toml for crates.io crate zenjpeg 0.8.4 written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate zenjpeg 0.8.4 on toolchain da3f5c31e5535b3dc210067de660a45784ae1e9c
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+da3f5c31e5535b3dc210067de660a45784ae1e9c" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate zenjpeg 0.8.4 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+da3f5c31e5535b3dc210067de660a45784ae1e9c" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/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:8683fc1fc2eb5c9ac98e0d076ab094b2ffac7f99da555d2b6a2e27f346de2ec7" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] d580e1f4ee22b29618b1e910a5c4892c1ac0b64216ea453b5c799c5fbcc280ae
[INFO] running `Command { std: "docker" "start" "d580e1f4ee22b29618b1e910a5c4892c1ac0b64216ea453b5c799c5fbcc280ae", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d580e1f4ee22b29618b1e910a5c4892c1ac0b64216ea453b5c799c5fbcc280ae", 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" "d580e1f4ee22b29618b1e910a5c4892c1ac0b64216ea453b5c799c5fbcc280ae" "/opt/rustwide/cargo-home/bin/cargo" "+da3f5c31e5535b3dc210067de660a45784ae1e9c" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d580e1f4ee22b29618b1e910a5c4892c1ac0b64216ea453b5c799c5fbcc280ae", 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" "d580e1f4ee22b29618b1e910a5c4892c1ac0b64216ea453b5c799c5fbcc280ae" "/opt/rustwide/cargo-home/bin/cargo" "+da3f5c31e5535b3dc210067de660a45784ae1e9c" "doc" "--frozen" "--no-deps" "--document-private-items" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling zerocopy v0.8.48
[INFO] [stderr]     Checking enough v0.4.4
[INFO] [stderr]     Checking safe_unaligned_simd v0.2.5
[INFO] [stderr]     Checking whereat v0.1.5
[INFO] [stderr]     Checking imgref v1.12.0
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling bytemuck_derive v1.10.2
[INFO] [stderr]    Compiling zerocopy-derive v0.8.48
[INFO] [stderr]    Compiling archmage-macros v0.9.24
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling equator-macro v0.4.2
[INFO] [stderr]     Checking almost-enough v0.4.4
[INFO] [stderr]     Checking equator v0.4.2
[INFO] [stderr]     Checking aligned-vec v0.6.4
[INFO] [stderr]     Checking yuv v0.8.12
[INFO] [stderr]     Checking bytemuck v1.25.0
[INFO] [stderr]     Checking safe_arch v1.0.0
[INFO] [stderr]     Checking rgb v0.8.53
[INFO] [stderr]     Checking thiserror v2.0.18
[INFO] [stderr]     Checking archmage v0.9.24
[INFO] [stderr]     Checking zenpixels v0.2.11
[INFO] [stderr]     Checking wide v1.2.0
[INFO] [stderr]     Checking magetypes v0.9.24
[INFO] [stderr]     Checking zencodec v0.1.20
[INFO] [stderr]     Checking linear-srgb v0.6.7
[INFO] [stderr]     Checking half v2.7.1
[INFO] [stderr]     Checking ultrahdr-core v0.4.0
[INFO] [stderr]  Documenting zenjpeg v0.8.4 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unresolved link to `Error::error`
[INFO] [stdout]    --> src/error.rs:368:26
[INFO] [stdout]     |
[INFO] [stdout] 368 | /// via `whereat`. Use [`Error::error()`] to inspect the [`ErrorKind`], or
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^ the struct `Error` has no function named `error`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(rustdoc::broken_intra_doc_links)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `Error` links to private item `ErrorKind`
[INFO] [stdout]    --> src/error.rs:368:60
[INFO] [stdout]     |
[INFO] [stdout] 368 | /// via `whereat`. Use [`Error::error()`] to inspect the [`ErrorKind`], or
[INFO] [stdout]     |                                                            ^^^^^^^^^ this item is private
[INFO] [stdout]     |
[INFO] [stdout]     = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout]     = note: `#[warn(rustdoc::private_intra_doc_links)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `Triangle` links to private item `IdctMethod::Jpegli`
[INFO] [stdout]   --> src/decode/config.rs:96:28
[INFO] [stdout]    |
[INFO] [stdout] 96 |     /// With the default [`IdctMethod::Jpegli`] IDCT, matches libjpeg-turbo/mozjpeg
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `Triangle` links to private item `IdctMethod::Libjpeg`
[INFO] [stdout]   --> src/decode/config.rs:97:38
[INFO] [stdout]    |
[INFO] [stdout] 97 |     /// within max_diff <= 3. With [`IdctMethod::Libjpeg`], matches within
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^^^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Decoder::decode`
[INFO] [stdout]    --> src/decode/config.rs:810:53
[INFO] [stdout]     |
[INFO] [stdout] 810 | /// it with builder methods, then call [`decode()`](Decoder::decode) or
[INFO] [stdout]     |                                                     ^^^^^^^^^^^^^^^ no item named `Decoder` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Decoder::scanline_reader`
[INFO] [stdout]    --> src/decode/config.rs:811:27
[INFO] [stdout]     |
[INFO] [stdout] 811 | /// [`scanline_reader()`](Decoder::scanline_reader).
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^ no item named `Decoder` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Decoder::decode_into_u8`
[INFO] [stdout]     --> src/decode/config.rs:1249:28
[INFO] [stdout]      |
[INFO] [stdout] 1249 | /// Metadata returned by [`Decoder::decode_into_u8`] and
[INFO] [stdout]      |                            ^^^^^^^^^^^^^^^^^^^^^^^ no item named `Decoder` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Decoder::decode_into_f32`
[INFO] [stdout]     --> src/decode/config.rs:1250:7
[INFO] [stdout]      |
[INFO] [stdout] 1250 | /// [`Decoder::decode_into_f32`].
[INFO] [stdout]      |       ^^^^^^^^^^^^^^^^^^^^^^^^ no item named `Decoder` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `0,1`
[INFO] [stdout]    --> src/decode/config.rs:540:42
[INFO] [stdout]     |
[INFO] [stdout] 540 |     /// f32 sRGB output (gamma-encoded, [0,1] nominal) with unclamped integer IDCT.
[INFO] [stdout]     |                                          ^^^ no item named `0,1` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `0,1`
[INFO] [stdout]    --> src/decode/config.rs:547:35
[INFO] [stdout]     |
[INFO] [stdout] 547 |     /// f32 linear light output ([0,1] nominal) with unclamped integer IDCT.
[INFO] [stdout]     |                                   ^^^ no item named `0,1` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `k`
[INFO] [stdout]   --> src/encode/dct.rs:63:19
[INFO] [stdout]    |
[INFO] [stdout] 63 |     /// aanscales[k] = cos(k * π/16) * √2 for k > 0, and 1.0 for k = 0
[INFO] [stdout]    |                   ^ no item named `k` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `i`
[INFO] [stdout]    --> src/encode/dct.rs:101:21
[INFO] [stdout]     |
[INFO] [stdout] 101 | /// AddReverse: out[i] = in1[i] + in2[N-1-i]
[INFO] [stdout]     |                     ^ no item named `i` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `i`
[INFO] [stdout]    --> src/encode/dct.rs:101:30
[INFO] [stdout]     |
[INFO] [stdout] 101 | /// AddReverse: out[i] = in1[i] + in2[N-1-i]
[INFO] [stdout]     |                              ^ no item named `i` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `i`
[INFO] [stdout]    --> src/encode/dct.rs:111:21
[INFO] [stdout]     |
[INFO] [stdout] 111 | /// SubReverse: out[i] = in1[i] - in2[N-1-i]
[INFO] [stdout]     |                     ^ no item named `i` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `i`
[INFO] [stdout]    --> src/encode/dct.rs:111:30
[INFO] [stdout]     |
[INFO] [stdout] 111 | /// SubReverse: out[i] = in1[i] - in2[N-1-i]
[INFO] [stdout]     |                              ^ no item named `i` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `0`
[INFO] [stdout]    --> src/encode/dct.rs:121:24
[INFO] [stdout]     |
[INFO] [stdout] 121 | /// B transform: coeff[0] = coeff[0] * sqrt2 + coeff[1]; then cumulative sum
[INFO] [stdout]     |                        ^ no item named `0` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `0`
[INFO] [stdout]    --> src/encode/dct.rs:121:35
[INFO] [stdout]     |
[INFO] [stdout] 121 | /// B transform: coeff[0] = coeff[0] * sqrt2 + coeff[1]; then cumulative sum
[INFO] [stdout]     |                                   ^ no item named `0` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `1`
[INFO] [stdout]    --> src/encode/dct.rs:121:54
[INFO] [stdout]     |
[INFO] [stdout] 121 | /// B transform: coeff[0] = coeff[0] * sqrt2 + coeff[1]; then cumulative sum
[INFO] [stdout]     |                                                      ^ no item named `1` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `2*i`
[INFO] [stdout]    --> src/encode/dct.rs:152:9
[INFO] [stdout]     |
[INFO] [stdout] 152 | /// out[2*i] = in[i] for i in 0..N/2
[INFO] [stdout]     |         ^^^ no item named `2*i` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `i`
[INFO] [stdout]    --> src/encode/dct.rs:152:19
[INFO] [stdout]     |
[INFO] [stdout] 152 | /// out[2*i] = in[i] for i in 0..N/2
[INFO] [stdout]     |                   ^ no item named `i` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `0,1`
[INFO] [stdout]   --> src/encode/linear_lut.rs:72:25
[INFO] [stdout]    |
[INFO] [stdout] 72 | /// Convert linear f32 [0,1] to sRGB f32 [0, 255] using fast computation.
[INFO] [stdout]    |                         ^^^ no item named `0,1` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `i`
[INFO] [stdout]    --> src/encode/mage_simd.rs:211:1
[INFO] [stdout]     |
[INFO] [stdout] 211 | / /// Full 8x8 forward DCT using AVX2+FMA intrinsics via archmage tokens.
[INFO] [stdout] 212 | | ///
[INFO] [stdout] 213 | | /// This is the archmage-based equivalent of `forward_dct_8x8_avx2`.
[INFO] [stdout] 214 | | /// The token can be cached outside hot loops for zero overhead.
[INFO] [stdout] ...   |
[INFO] [stdout] 234 | | /// }
[INFO] [stdout] 235 | | /// ```
[INFO] [stdout]     | |_______^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the link appears in this line:
[INFO] [stdout]             
[INFO] [stdout]             2. Transpose: reg[i] = column i (position i of all rows)
[INFO] [stdout]                               ^
[INFO] [stdout]     = note: no item named `i` in scope
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `i`
[INFO] [stdout]    --> src/encode/mage_simd.rs:370:1
[INFO] [stdout]     |
[INFO] [stdout] 370 | / /// In-place 8x8 transpose on 8 __m512 registers, operating on BOTH 256-bit halves.
[INFO] [stdout] 371 | | ///
[INFO] [stdout] 372 | | /// Each ZMM register holds two rows: [blockA_row[i], blockB_row[i]]
[INFO] [stdout] 373 | | /// After transpose: [blockA_col[i], blockB_col[i]]
[INFO] [stdout] 374 | | ///
[INFO] [stdout] 375 | | /// Uses extract/insert to process each 256-bit half with the AVX2 transpose pattern,
[INFO] [stdout] 376 | | /// then recombines. This is correct because it keeps block A and B data separate.
[INFO] [stdout]     | |__________________________________________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the link appears in this line:
[INFO] [stdout]             
[INFO] [stdout]             Each ZMM register holds two rows: [blockA_row[i], blockB_row[i]]
[INFO] [stdout]                                                           ^
[INFO] [stdout]     = note: no item named `i` in scope
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `i`
[INFO] [stdout]    --> src/encode/mage_simd.rs:370:1
[INFO] [stdout]     |
[INFO] [stdout] 370 | / /// In-place 8x8 transpose on 8 __m512 registers, operating on BOTH 256-bit halves.
[INFO] [stdout] 371 | | ///
[INFO] [stdout] 372 | | /// Each ZMM register holds two rows: [blockA_row[i], blockB_row[i]]
[INFO] [stdout] 373 | | /// After transpose: [blockA_col[i], blockB_col[i]]
[INFO] [stdout] 374 | | ///
[INFO] [stdout] 375 | | /// Uses extract/insert to process each 256-bit half with the AVX2 transpose pattern,
[INFO] [stdout] 376 | | /// then recombines. This is correct because it keeps block A and B data separate.
[INFO] [stdout]     | |__________________________________________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the link appears in this line:
[INFO] [stdout]             
[INFO] [stdout]             Each ZMM register holds two rows: [blockA_row[i], blockB_row[i]]
[INFO] [stdout]                                                                          ^
[INFO] [stdout]     = note: no item named `i` in scope
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `i`
[INFO] [stdout]    --> src/encode/mage_simd.rs:370:1
[INFO] [stdout]     |
[INFO] [stdout] 370 | / /// In-place 8x8 transpose on 8 __m512 registers, operating on BOTH 256-bit halves.
[INFO] [stdout] 371 | | ///
[INFO] [stdout] 372 | | /// Each ZMM register holds two rows: [blockA_row[i], blockB_row[i]]
[INFO] [stdout] 373 | | /// After transpose: [blockA_col[i], blockB_col[i]]
[INFO] [stdout] 374 | | ///
[INFO] [stdout] 375 | | /// Uses extract/insert to process each 256-bit half with the AVX2 transpose pattern,
[INFO] [stdout] 376 | | /// then recombines. This is correct because it keeps block A and B data separate.
[INFO] [stdout]     | |__________________________________________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the link appears in this line:
[INFO] [stdout]             
[INFO] [stdout]             After transpose: [blockA_col[i], blockB_col[i]]
[INFO] [stdout]                                          ^
[INFO] [stdout]     = note: no item named `i` in scope
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `i`
[INFO] [stdout]    --> src/encode/mage_simd.rs:370:1
[INFO] [stdout]     |
[INFO] [stdout] 370 | / /// In-place 8x8 transpose on 8 __m512 registers, operating on BOTH 256-bit halves.
[INFO] [stdout] 371 | | ///
[INFO] [stdout] 372 | | /// Each ZMM register holds two rows: [blockA_row[i], blockB_row[i]]
[INFO] [stdout] 373 | | /// After transpose: [blockA_col[i], blockB_col[i]]
[INFO] [stdout] 374 | | ///
[INFO] [stdout] 375 | | /// Uses extract/insert to process each 256-bit half with the AVX2 transpose pattern,
[INFO] [stdout] 376 | | /// then recombines. This is correct because it keeps block A and B data separate.
[INFO] [stdout]     | |__________________________________________________________________________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: the link appears in this line:
[INFO] [stdout]             
[INFO] [stdout]             After transpose: [blockA_col[i], blockB_col[i]]
[INFO] [stdout]                                                         ^
[INFO] [stdout]     = note: no item named `i` in scope
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `e0,e1,e2,e3,e4,e5,e6,e7`
[INFO] [stdout]    --> src/encode/mage_simd.rs:884:22
[INFO] [stdout]     |
[INFO] [stdout] 884 | /// Returns evens = [e0,e1,e2,e3,e4,e5,e6,e7], odds = [o0,o1,o2,o3,o4,o5,o6,o7]
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^ no item named `e0,e1,e2,e3,e4,e5,e6,e7` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `o0,o1,o2,o3,o4,o5,o6,o7`
[INFO] [stdout]    --> src/encode/mage_simd.rs:884:56
[INFO] [stdout]     |
[INFO] [stdout] 884 | /// Returns evens = [e0,e1,e2,e3,e4,e5,e6,e7], odds = [o0,o1,o2,o3,o4,o5,o6,o7]
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^ no item named `o0,o1,o2,o3,o4,o5,o6,o7` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `EncoderConfig::ycbcr_effort`
[INFO] [stdout]    --> src/encode/encoder_types.rs:900:21
[INFO] [stdout]     |
[INFO] [stdout] 900 | /// Use this with [`EncoderConfig::ycbcr_effort()`], [`EncoderConfig::xyb_effort()`],
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `EncoderConfig` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `EncoderConfig::xyb_effort`
[INFO] [stdout]    --> src/encode/encoder_types.rs:900:56
[INFO] [stdout]     |
[INFO] [stdout] 900 | /// Use this with [`EncoderConfig::ycbcr_effort()`], [`EncoderConfig::xyb_effort()`],
[INFO] [stdout]     |                                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `EncoderConfig` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `EncoderConfig::grayscale_effort`
[INFO] [stdout]    --> src/encode/encoder_types.rs:901:10
[INFO] [stdout]     |
[INFO] [stdout] 901 | /// or [`EncoderConfig::grayscale_effort()`].
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `EncoderConfig` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `super::encoder_config::EncoderConfig::quant_tables`
[INFO] [stdout]     --> src/encode/encoder_types.rs:1216:39
[INFO] [stdout]      |
[INFO] [stdout] 1216 | /// [`EncoderConfig::quant_tables()`](super::encoder_config::EncoderConfig::quant_tables).
[INFO] [stdout]      |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the struct `EncoderConfig` has no field or associated item named `quant_tables`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `i`
[INFO] [stdout]   --> src/encode/tables/robidoux.rs:43:21
[INFO] [stdout]    |
[INFO] [stdout] 43 | /// Formula: scaled[i] = (base[i] * scale + 50) / 100
[INFO] [stdout]    |                     ^ no item named `i` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `i`
[INFO] [stdout]   --> src/encode/tables/robidoux.rs:43:32
[INFO] [stdout]    |
[INFO] [stdout] 43 | /// Formula: scaled[i] = (base[i] * scale + 50) / 100
[INFO] [stdout]    |                                ^ no item named `i` in scope
[INFO] [stdout]    |
[INFO] [stdout]    = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `generate` links to private item `EncodingTables`
[INFO] [stdout]   --> src/encode/tables/presets.rs:88:14
[INFO] [stdout]    |
[INFO] [stdout] 88 |     /// An [`EncodingTables`] with the scaled luminance and chrominance tables,
[INFO] [stdout]    |              ^^^^^^^^^^^^^^ this item is private
[INFO] [stdout]    |
[INFO] [stdout]    = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `0,255`
[INFO] [stdout]     --> src/decode/idct_int.rs:1541:76
[INFO] [stdout]      |
[INFO] [stdout] 1541 | /// Uses i64 intermediates (Loeffler algorithm). Output is NOT clamped to [0,255].
[INFO] [stdout]      |                                                                            ^^^^^ no item named `0,255` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `pixels` links to private item `DecodedPixels`
[INFO] [stdout]     --> src/decode/config.rs:1128:47
[INFO] [stdout]      |
[INFO] [stdout] 1128 |     /// Returns the decoded pixel data as a [`DecodedPixels`] enum.
[INFO] [stdout]      |                                               ^^^^^^^^^^^^^ this item is private
[INFO] [stdout]      |
[INFO] [stdout]      = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `into_pixels` links to private item `OwnedDecodedPixels`
[INFO] [stdout]     --> src/decode/config.rs:1149:59
[INFO] [stdout]      |
[INFO] [stdout] 1149 |     /// Takes ownership of the decoded pixel data as an [`OwnedDecodedPixels`] enum.
[INFO] [stdout]      |                                                           ^^^^^^^^^^^^^^^^^^ this item is private
[INFO] [stdout]      |
[INFO] [stdout]      = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `PreserveConfig`
[INFO] [stdout]  --> src/decode/depth.rs:7:13
[INFO] [stdout]   |
[INFO] [stdout] 7 | //!   The [`PreserveConfig`] must have `mpf_depth` enabled for this to be extracted.
[INFO] [stdout]   |             ^^^^^^^^^^^^^^ no item named `PreserveConfig` in scope
[INFO] [stdout]   |
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Strictness::Strict`
[INFO] [stdout]    --> src/decode/image.rs:100:14
[INFO] [stdout]     |
[INFO] [stdout] 100 |     /// In [`Strictness::Strict`] mode, this is always empty because warnings
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^ no item named `Strictness` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Strictness::Balanced`
[INFO] [stdout]    --> src/decode/image.rs:101:29
[INFO] [stdout]     |
[INFO] [stdout] 101 |     /// become errors. In [`Strictness::Balanced`] and [`Strictness::Lenient`]
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^ no item named `Strictness` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Strictness::Lenient`
[INFO] [stdout]    --> src/decode/image.rs:101:58
[INFO] [stdout]     |
[INFO] [stdout] 101 |     /// become errors. In [`Strictness::Balanced`] and [`Strictness::Lenient`]
[INFO] [stdout]     |                                                          ^^^^^^^^^^^^^^^^^^^ no item named `Strictness` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Strictness::Strict`
[INFO] [stdout]    --> src/decode/image.rs:223:14
[INFO] [stdout]     |
[INFO] [stdout] 223 |     /// In [`Strictness::Strict`] mode, this is always empty because warnings
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^ no item named `Strictness` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Strictness::Balanced`
[INFO] [stdout]    --> src/decode/image.rs:224:29
[INFO] [stdout]     |
[INFO] [stdout] 224 |     /// become errors. In [`Strictness::Balanced`] and [`Strictness::Lenient`]
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^ no item named `Strictness` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Strictness::Lenient`
[INFO] [stdout]    --> src/decode/image.rs:224:58
[INFO] [stdout]     |
[INFO] [stdout] 224 |     /// become errors. In [`Strictness::Balanced`] and [`Strictness::Lenient`]
[INFO] [stdout]     |                                                          ^^^^^^^^^^^^^^^^^^^ no item named `Strictness` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `0`
[INFO] [stdout]     --> src/decode/scanline.rs:1585:73
[INFO] [stdout]      |
[INFO] [stdout] 1585 |     /// 3. Compute corrected bottom chroma using prev_cb_row + cb_strip[0]
[INFO] [stdout]      |                                                                         ^ no item named `0` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `0`
[INFO] [stdout]     --> src/decode/scanline.rs:3139:44
[INFO] [stdout]      |
[INFO] [stdout] 3139 | /// `curr_plane` is the current strip; row[0] at offset 0, row[1] at `curr_stride`.
[INFO] [stdout]      |                                            ^ no item named `0` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `1`
[INFO] [stdout]     --> src/decode/scanline.rs:3139:64
[INFO] [stdout]      |
[INFO] [stdout] 3139 | /// `curr_plane` is the current strip; row[0] at offset 0, row[1] at `curr_stride`.
[INFO] [stdout]      |                                                                ^ no item named `1` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `0`
[INFO] [stdout]     --> src/decode/scanline.rs:3141:77
[INFO] [stdout]      |
[INFO] [stdout] 3141 | /// The 4-tap filter straddles the boundary: p1=row[-2], p0=row[-1], q0=row[0], q1=row[1].
[INFO] [stdout]      |                                                                             ^ no item named `0` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `1`
[INFO] [stdout]     --> src/decode/scanline.rs:3141:88
[INFO] [stdout]      |
[INFO] [stdout] 3141 | /// The 4-tap filter straddles the boundary: p1=row[-2], p0=row[-1], q0=row[0], q1=row[1].
[INFO] [stdout]      |                                                                                        ^ no item named `1` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `0`
[INFO] [stdout]     --> src/decode/scanline.rs:3142:36
[INFO] [stdout]      |
[INFO] [stdout] 3142 | /// Only modifies `curr_plane` row[0] (q0 side); the previous MCU row's data has already
[INFO] [stdout]      |                                    ^ no item named `0` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `idct_method` links to private item `IdctMethod::Jpegli`
[INFO] [stdout]    --> src/decode/mod.rs:258:13
[INFO] [stdout]     |
[INFO] [stdout] 258 |     /// - [`IdctMethod::Jpegli`] (default): 12-bit fixed-point, matches jpegli
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^ this item is private
[INFO] [stdout]     |
[INFO] [stdout]     = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `idct_method` links to private item `IdctMethod::Libjpeg`
[INFO] [stdout]    --> src/decode/mod.rs:259:13
[INFO] [stdout]     |
[INFO] [stdout] 259 |     /// - [`IdctMethod::Libjpeg`]: 13-bit Loeffler, matches libjpeg-turbo/mozjpeg
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^ this item is private
[INFO] [stdout]     |
[INFO] [stdout]     = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Limits`
[INFO] [stdout]    --> src/decode/mod.rs:366:39
[INFO] [stdout]     |
[INFO] [stdout] 366 |     /// Sets resource limits from a [`Limits`] struct.
[INFO] [stdout]     |                                       ^^^^^^ no item named `Limits` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `orientation` links to private item `OrientationHint`
[INFO] [stdout]    --> src/decode/mod.rs:533:15
[INFO] [stdout]     |
[INFO] [stdout] 533 |     /// See [`OrientationHint`] for details.
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^ this item is private
[INFO] [stdout]     |
[INFO] [stdout]     = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: public documentation for `parallel_strategy` links to private item `config::ParallelStrategy`
[INFO] [stdout]    --> src/decode/mod.rs:629:34
[INFO] [stdout]     |
[INFO] [stdout] 629 |     /// See [`ParallelStrategy`](config::ParallelStrategy) for available options.
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^^^^^ this item is private
[INFO] [stdout]     |
[INFO] [stdout]     = note: this link resolves only because you passed `--document-private-items`, but will break without
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::decoder::error`
[INFO] [stdout]  --> src/error.rs:6:36
[INFO] [stdout]   |
[INFO] [stdout] 6 | //! - Decoder-specific errors in [`crate::decoder::error`]
[INFO] [stdout]   |                                    ^^^^^^^^^^^^^^^^^^^^^ no item named `error` in module `decoder`
[INFO] [stdout]   |
[INFO] [stdout] help: there's a similarly named item `Error`
[INFO] [stdout]   |
[INFO] [stdout] 6 - //! - Decoder-specific errors in [`crate::decoder::error`]
[INFO] [stdout] 6 + //! - Decoder-specific errors in [`crate::decoder::Error`]
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::encoder::error`
[INFO] [stdout]  --> src/error.rs:7:36
[INFO] [stdout]   |
[INFO] [stdout] 7 | //! - Encoder-specific errors in [`crate::encoder::error`]
[INFO] [stdout]   |                                    ^^^^^^^^^^^^^^^^^^^^^ no item named `error` in module `encoder`
[INFO] [stdout]   |
[INFO] [stdout] help: there's a similarly named item `Error`
[INFO] [stdout]   |
[INFO] [stdout] 7 - //! - Encoder-specific errors in [`crate::encoder::error`]
[INFO] [stdout] 7 + //! - Encoder-specific errors in [`crate::encoder::Error`]
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `4`
[INFO] [stdout]    --> src/color/ycbcr.rs:143:20
[INFO] [stdout]     |
[INFO] [stdout] 143 |     /// Returns (Y[4], Cb[4], Cr[4]) as u8 arrays.
[INFO] [stdout]     |                    ^ no item named `4` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `4`
[INFO] [stdout]    --> src/color/ycbcr.rs:143:27
[INFO] [stdout]     |
[INFO] [stdout] 143 |     /// Returns (Y[4], Cb[4], Cr[4]) as u8 arrays.
[INFO] [stdout]     |                           ^ no item named `4` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `4`
[INFO] [stdout]    --> src/color/ycbcr.rs:143:34
[INFO] [stdout]     |
[INFO] [stdout] 143 |     /// Returns (Y[4], Cb[4], Cr[4]) as u8 arrays.
[INFO] [stdout]     |                                  ^ no item named `4` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `Quality`
[INFO] [stdout]     --> src/huffman/builtin_tables.rs:2870:22
[INFO] [stdout]      |
[INFO] [stdout] 2870 | /// Works with all [`Quality`] variants (jpegli scale, mozjpeg, SSIM2, Butteraugli distance).
[INFO] [stdout]      |                      ^^^^^^^ no item named `Quality` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `0`
[INFO] [stdout]    --> src/quant/aq/simd.rs:302:24
[INFO] [stdout]     |
[INFO] [stdout] 302 | /// - left_edge = data[0] (replicated)
[INFO] [stdout]     |                        ^ no item named `0` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `lane`
[INFO] [stdout]     --> src/quant/aq/simd.rs:1042:37
[INFO] [stdout]      |
[INFO] [stdout] 1042 | /// Each lane gets the value at (cx[lane] + nx, cy + ny) with boundary clamping.
[INFO] [stdout]      |                                     ^^^^ no item named `lane` in scope
[INFO] [stdout]      |
[INFO] [stdout]      = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `0,1`
[INFO] [stdout]    --> src/quant/aq/streaming.rs:170:59
[INFO] [stdout]     |
[INFO] [stdout] 170 |     /// * `y_quant_01` - Y quant table value at position [0,1] (first AC coefficient)
[INFO] [stdout]     |                                                           ^^^ no item named `0,1` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `0`
[INFO] [stdout]    --> src/quant/aq/streaming.rs:701:32
[INFO] [stdout]     |
[INFO] [stdout] 701 |     /// where edge_left = data[0] and edge_right = data[width-1]
[INFO] [stdout]     |                                ^ no item named `0` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::encode::trellis::should_use_hybrid`
[INFO] [stdout]    --> src/quant/aq/mod.rs:157:39
[INFO] [stdout]     |
[INFO] [stdout] 157 |     /// This value can be used with [`crate::encode::trellis::should_use_hybrid`]
[INFO] [stdout]     |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `trellis` in module `encode`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `1,3,3,1`
[INFO] [stdout]  --> src/deblock/mod.rs:5:68
[INFO] [stdout]   |
[INFO] [stdout] 5 | //! - **Boundary 4-tap** ([`boundary`]): Pixel-domain H.264-style [1,3,3,1]/8 filter
[INFO] [stdout]   |                                                                    ^^^^^^^ no item named `1,3,3,1` in scope
[INFO] [stdout]   |
[INFO] [stdout]   = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/encode/tables/mod.rs:1:1
[INFO] [stdout]     |
[INFO] [stdout]   1 | / //! Default quantization and zero-bias tables.
[INFO] [stdout]   2 | | //!
[INFO] [stdout]   3 | | //! These tables are exposed for users who want to customize encoding by
[INFO] [stdout]   4 | | //! modifying the defaults rather than starting from scratch.
[INFO] [stdout] ...   |
[INFO] [stdout] 152 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `Use these as starting points when creating custom tables.`
[INFO] [stdout]     = help: ends near `Default quantization and zero-bias tables for customization.`
[INFO] [stdout]     = note: `#[deny(rustdoc::unportable_markdown)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/huffman/optimize/frequency.rs:63:1
[INFO] [stdout]    |
[INFO] [stdout] 63 | / pub struct HuffmanTableSet {
[INFO] [stdout] 64 | |     /// DC luminance table
[INFO] [stdout] 65 | |     pub dc_luma: OptimizedTable,
[INFO] [stdout] 66 | |     /// AC luminance table
[INFO] [stdout] ...  |
[INFO] [stdout] 71 | |     pub ac_chroma: OptimizedTable,
[INFO] [stdout] 72 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Use [`HuffmanTableSet::annex_k()`] for the original JPEG standard tables,`
[INFO] [stdout]    = help: ends near `A complete set of optimized Huffman tables for JPEG encoding.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: redundant explicit link target
[INFO] [stdout]    --> src/decode/mod.rs:629:34
[INFO] [stdout]     |
[INFO] [stdout] 629 |     /// See [`ParallelStrategy`](config::ParallelStrategy) for available options.
[INFO] [stdout]     |              ------------------  ^^^^^^^^^^^^^^^^^^^^^^^^ explicit target is redundant
[INFO] [stdout]     |              |
[INFO] [stdout]     |              because label contains path that resolves to same destination
[INFO] [stdout]     |
[INFO] [stdout]     = note: when a link's destination is not specified,
[INFO] [stdout]             the label is used to resolve intra-doc links
[INFO] [stdout]     = note: `#[warn(rustdoc::redundant_explicit_links)]` on by default
[INFO] [stdout] help: remove explicit link target
[INFO] [stdout]     |
[INFO] [stdout] 629 -     /// See [`ParallelStrategy`](config::ParallelStrategy) for available options.
[INFO] [stdout] 629 +     /// See [`ParallelStrategy`] for available options.
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this URL is not a hyperlink
[INFO] [stdout]    --> src/foundation/bitstream.rs:387:29
[INFO] [stdout]     |
[INFO] [stdout] 387 | /// From Stanford Bithacks: https://graphics.stanford.edu/~seander/bithacks.html
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: bare URLs are not automatically turned into clickable links
[INFO] [stdout]     = note: `#[warn(rustdoc::bare_urls)]` on by default
[INFO] [stdout] help: use an automatic link instead
[INFO] [stdout]     |
[INFO] [stdout] 387 | /// From Stanford Bithacks: <https://graphics.stanford.edu/>~seander/bithacks.html
[INFO] [stdout]     |                             +                              +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `Error` is both a struct and a derive macro
[INFO] [stdout]    --> src/error.rs:162:47
[INFO] [stdout]     |
[INFO] [stdout] 162 | /// This is the inner error type wrapped by [`Error`] (which is `At<ErrorKind>`).
[INFO] [stdout]     |                                               ^^^^^ ambiguous link
[INFO] [stdout]     |
[INFO] [stdout] help: to link to the struct, prefix with `struct@`
[INFO] [stdout]     |
[INFO] [stdout] 162 | /// This is the inner error type wrapped by [`struct@Error`] (which is `At<ErrorKind>`).
[INFO] [stdout]     |                                               +++++++
[INFO] [stdout] help: to link to the derive macro, prefix with `derive@`
[INFO] [stdout]     |
[INFO] [stdout] 162 | /// This is the inner error type wrapped by [`derive@Error`] (which is `At<ErrorKind>`).
[INFO] [stdout]     |                                               +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not document `zenjpeg`
[INFO] running `Command { std: "docker" "inspect" "d580e1f4ee22b29618b1e910a5c4892c1ac0b64216ea453b5c799c5fbcc280ae", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d580e1f4ee22b29618b1e910a5c4892c1ac0b64216ea453b5c799c5fbcc280ae", kill_on_drop: false }`
[INFO] [stdout] d580e1f4ee22b29618b1e910a5c4892c1ac0b64216ea453b5c799c5fbcc280ae
