[INFO] fetching crate lini 1.0.0-rc.3...
[INFO] documenting lini-1.0.0-rc.3 against da3f5c31e5535b3dc210067de660a45784ae1e9c for pr-162169
[INFO] extracting crate lini 1.0.0-rc.3 into /workspace/builds/worker-0-tc2/source
[INFO] removed /workspace/builds/worker-0-tc2/source/.cargo/config.toml
[INFO] removed /workspace/builds/worker-0-tc2/source/rust-toolchain.toml
[INFO] started tweaking crates.io crate lini 1.0.0-rc.3
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate lini 1.0.0-rc.3
[INFO] tweaked toml for crates.io crate lini 1.0.0-rc.3 written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate lini 1.0.0-rc.3 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 lini 1.0.0-rc.3 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-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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] 3186f376a5346237d095fb20b4267a294030da2e4af8a2b106f110710664d616
[INFO] running `Command { std: "docker" "start" "3186f376a5346237d095fb20b4267a294030da2e4af8a2b106f110710664d616", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "3186f376a5346237d095fb20b4267a294030da2e4af8a2b106f110710664d616", 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" "3186f376a5346237d095fb20b4267a294030da2e4af8a2b106f110710664d616" "/opt/rustwide/cargo-home/bin/cargo" "+da3f5c31e5535b3dc210067de660a45784ae1e9c" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "3186f376a5346237d095fb20b4267a294030da2e4af8a2b106f110710664d616", 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" "3186f376a5346237d095fb20b4267a294030da2e4af8a2b106f110710664d616" "/opt/rustwide/cargo-home/bin/cargo" "+da3f5c31e5535b3dc210067de660a45784ae1e9c" "doc" "--frozen" "--no-deps" "--document-private-items" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]     Checking anstyle v1.0.14
[INFO] [stderr]     Checking is_terminal_polyfill v1.70.2
[INFO] [stderr]     Checking colorchoice v1.0.5
[INFO] [stderr]     Checking anstyle-query v1.1.5
[INFO] [stderr]    Compiling libm v0.2.16
[INFO] [stderr]     Checking clap_lex v1.1.0
[INFO] [stderr]     Checking ttf-parser v0.25.1
[INFO] [stderr]     Checking anstyle-parse v1.0.0
[INFO] [stderr]    Compiling clap_derive v4.6.1
[INFO] [stderr]     Checking anstream v1.0.0
[INFO] [stderr]     Checking clap_builder v4.6.0
[INFO] [stderr]     Checking clap v4.6.1
[INFO] [stderr]  Documenting lini v1.0.0-rc.3 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unresolved link to `crate::layout::gates`
[INFO] [stdout]    --> src/desugar/classes.rs:148:21
[INFO] [stdout]     |
[INFO] [stdout] 148 | /// gate reports ([`crate::layout::gates`]): a `|gnd|` says `'|gnd|'`, a
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^ no item named `gates` in module `layout`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(rustdoc::broken_intra_doc_links)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::layout::floorplan::opening`
[INFO] [stdout]    --> src/desugar/drawing.rs:111:8
[INFO] [stdout]     |
[INFO] [stdout] 111 | /// ([`crate::layout::floorplan::opening`]).
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `opening` in module `floorplan`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::layout::floorplan::fixtures`
[INFO] [stdout]    --> src/desugar/drawing.rs:145:8
[INFO] [stdout]     |
[INFO] [stdout] 145 | /// ([`crate::layout::floorplan::fixtures`]).
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `fixtures` in module `floorplan`
[INFO] [stdout]     |
[INFO] [stdout] help: there's a similarly named item `FIXTURES`
[INFO] [stdout]     |
[INFO] [stdout] 145 - /// ([`crate::layout::floorplan::fixtures`]).
[INFO] [stdout] 145 + /// ([`crate::layout::floorplan::FIXTURES`]).
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::layout::drawing::chrome::indexed`
[INFO] [stdout]    --> src/desugar/drawing.rs:169:8
[INFO] [stdout]     |
[INFO] [stdout] 169 | /// ([`crate::layout::drawing::chrome::indexed`] reads it back).
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `indexed` in module `chrome`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::layout::schematic::check_types`
[INFO] [stdout]   --> src/desugar/nest.rs:34:25
[INFO] [stdout]    |
[INFO] [stdout] 34 | /// resolve-side twin [`crate::layout::schematic::check_types`] — which walks
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `check_types` in module `schematic`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::layout::floorplan::true_size`
[INFO] [stdout]    --> src/desugar/scale.rs:206:7
[INFO] [stdout]     |
[INFO] [stdout] 206 | /// [`crate::layout::floorplan::true_size`] converts with it.
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `true_size` in module `floorplan`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::resolve::links`
[INFO] [stdout]   --> src/desugar/schematic/arity.rs:30:11
[INFO] [stdout]    |
[INFO] [stdout] 30 | //! for [`crate::resolve::links`], chain and all: that pass applies **this** law
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^ no item named `links` in module `resolve`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::resolve::tables`
[INFO] [stdout]  --> src/desugar/tables.rs:7:7
[INFO] [stdout]   |
[INFO] [stdout] 7 | //! [`crate::resolve::tables`], which reads the count the cascade settled. This
[INFO] [stdout]   |       ^^^^^^^^^^^^^^^^^^^^^^ no item named `tables` in module `resolve`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::resolve::tables`
[INFO] [stdout]   --> src/desugar/tables.rs:55:7
[INFO] [stdout]    |
[INFO] [stdout] 55 | /// [`crate::resolve::tables`]'.**
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^ no item named `tables` in module `resolve`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `catalog`
[INFO] [stdout]  --> src/error/codes.rs:6:40
[INFO] [stdout]   |
[INFO] [stdout] 6 | //! The numbers live **only** in the [`catalog!`] table below — construction
[INFO] [stdout]   |                                        ^^^^^^^^ no item named `catalog` in scope
[INFO] [stdout]   |
[INFO] [stdout]   = note: `macro_rules` named `catalog` exists in this crate, but it is not in scope at this link's location
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `lex_expr`
[INFO] [stdout]   --> src/expr.rs:92:15
[INFO] [stdout]    |
[INFO] [stdout] 92 | /// lexes — [`lex_expr`] already produced the stream; `src` backs the one
[INFO] [stdout]    |               ^^^^^^^^ no item named `lex_expr` 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 `build_pie`
[INFO] [stdout]   --> src/layout/chart/model/paint.rs:39:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | /// ([`build_pie`]), so the default edge derives in one place.
[INFO] [stdout]    |        ^^^^^^^^^ no item named `build_pie` 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 `Markers`
[INFO] [stdout]    --> src/layout/chart/model/series.rs:342:16
[INFO] [stdout]     |
[INFO] [stdout] 342 | /// resolved [`Markers`] (and dropped from the attr map), so this reads the resolved kind
[INFO] [stdout]     |                ^^^^^^^ no item named `Markers` 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 `prim::live`
[INFO] [stdout]  --> src/layout/chart/tint.rs:3:18
[INFO] [stdout]   |
[INFO] [stdout] 3 | //! the shared [`prim::live`].
[INFO] [stdout]   |                  ^^^^^^^^^^ no item named `prim` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::layout::drawing::dims::Frame`
[INFO] [stdout]   --> src/layout/drawing/annotate/mod.rs:26:25
[INFO] [stdout]    |
[INFO] [stdout] 26 | /// own axes instead ([`crate::layout::drawing::dims::Frame`]).
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `Frame` in module `dims`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::desugar::drawing`
[INFO] [stdout]    --> src/layout/floorplan/fixtures/mod.rs:173:37
[INFO] [stdout]     |
[INFO] [stdout] 173 | /// last. The count is desugar's ([`crate::desugar::drawing`]); the geometry is
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^^^^ no item named `drawing` in module `desugar`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `parse_tracks`
[INFO] [stdout]    --> src/layout/grid.rs:333:23
[INFO] [stdout]     |
[INFO] [stdout] 333 | /// `columns` (like [`parse_tracks`]). `None` when unset or out of range.
[INFO] [stdout]     |                       ^^^^^^^^^^^^ no item named `parse_tracks` 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::desugar::autopose`
[INFO] [stdout]   --> src/layout/schematic/seat.rs:10:49
[INFO] [stdout]    |
[INFO] [stdout] 10 | //!   each satellite to face back at the pin ([`crate::desugar::autopose`]),
[INFO] [stdout]    |                                                 ^^^^^^^^^^^^^^^^^^^^^^^^ no item named `autopose` in module `desugar`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::desugar::autopose`
[INFO] [stdout]    --> src/layout/schematic/seat.rs:581:8
[INFO] [stdout]     |
[INFO] [stdout] 581 | /// ([`crate::desugar::autopose`]).
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^ no item named `autopose` in module `desugar`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::desugar::autopose`
[INFO] [stdout]    --> src/layout/schematic/seat.rs:609:15
[INFO] [stdout]     |
[INFO] [stdout] 609 | /// twin of [`crate::desugar::autopose`]'s reader on the resolved side, so the
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^^^^^ no item named `autopose` in module `desugar`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `NET_RUN_FACING`
[INFO] [stdout]   --> src/layout/schematic/terminal.rs:12:82
[INFO] [stdout]    |
[INFO] [stdout] 12 | //! | a **net run** | the run's **far** end — the edge *opposite* the facing | [`NET_RUN_FACING`], posed |
[INFO] [stdout]    |                                                                                  ^^^^^^^^^^^^^^ no item named `NET_RUN_FACING` 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 `bundle`
[INFO] [stdout]    --> src/layout/sequence/mod.rs:119:13
[INFO] [stdout]     |
[INFO] [stdout] 119 | /// them ([`bundle`] skips a scope whose owner consumes its links).
[INFO] [stdout]     |             ^^^^^^ no item named `bundle` 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 `ledger::defaults::is_card`
[INFO] [stdout]    --> src/layout/mod.rs:711:57
[INFO] [stdout]     |
[INFO] [stdout] 711 | /// `|topic|` stack their content by type ([SPEC 11], [`ledger::defaults::is_card`]),
[INFO] [stdout]     |                                                         ^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `ledger` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::layout::owns_layout`
[INFO] [stdout]    --> src/ledger/defaults.rs:117:8
[INFO] [stdout]     |
[INFO] [stdout] 117 | /// ([`crate::layout::owns_layout`]) — a card's stacking default is the type's,
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `owns_layout` in module `layout`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `crate::resolve::ir::Markers`
[INFO] [stdout]   --> src/ledger/properties/mod.rs:60:39
[INFO] [stdout]    |
[INFO] [stdout] 60 |     /// A marker glyph name — rides [`crate::resolve::ir::Markers`], not the attr map.
[INFO] [stdout]    |                                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^ no item named `ir` in module `resolve`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `approx_height`
[INFO] [stdout]   --> src/render/links.rs:24:46
[INFO] [stdout]    |
[INFO] [stdout] 24 | /// taller than the tight single-line box ([`approx_height`] is ~1 em, which
[INFO] [stdout]    |                                              ^^^^^^^^^^^^^ no item named `approx_height` 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 `lib.rs`
[INFO] [stdout]  --> src/resolve/program/mod.rs:6:7
[INFO] [stdout]   |
[INFO] [stdout] 6 | //! [`lib.rs`]'s compile pipeline enters resolution here (after `desugar`).
[INFO] [stdout]   |       ^^^^^^ no item named `lib.rs` 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 `LinkOwner`
[INFO] [stdout]    --> src/resolve/program/link_scope.rs:137:56
[INFO] [stdout]     |
[INFO] [stdout] 137 | /// cannot answer either for an anonymous container ([`LinkOwner`]).
[INFO] [stdout]     |                                                        ^^^^^^^^^ no item named `LinkOwner` 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 `soften`
[INFO] [stdout]    --> src/routing/ortho/graph.rs:217:50
[INFO] [stdout]     |
[INFO] [stdout] 217 |     /// abutting test is exact equality, as in [`soften`].
[INFO] [stdout]     |                                                  ^^^^^^ no item named `soften` 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 `ChannelGraph::corridor`
[INFO] [stdout]  --> src/routing/ortho/place.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | //! ([`ChannelGraph::corridor`]), or, across worlds, one landing side — form
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^^^^^^^^ no item named `ChannelGraph` in scope
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unresolved link to `ChannelGraph`
[INFO] [stdout]  --> src/routing/validate.rs:8:54
[INFO] [stdout]   |
[INFO] [stdout] 8 | //! port windows and the contract's channel model ([`ChannelGraph`] is pure
[INFO] [stdout]   |                                                      ^^^^^^^^^^^^ no item named `ChannelGraph` 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 `excused`
[INFO] [stdout]    --> src/routing/validate.rs:304:24
[INFO] [stdout]     |
[INFO] [stdout] 304 | /// scarcity excuse ([`excused`]); a gap below half the clearance never
[INFO] [stdout]     |                        ^^^^^^^ no item named `excused` in scope
[INFO] [stdout]     |
[INFO] [stdout]     = help: to escape `[` and `]` characters, add '\' before them like `\[` or `\]`
[INFO] [stdout] help: there's a similarly named item `excuse`
[INFO] [stdout]     |
[INFO] [stdout] 304 - /// scarcity excuse ([`excused`]); a gap below half the clearance never
[INFO] [stdout] 304 + /// scarcity excuse ([`excuse`]); a gap below half the clearance never
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/ledger/examples.rs:9:1
[INFO] [stdout]     |
[INFO] [stdout]   9 | / pub const EXAMPLES: &[(&str, &str)] = &[
[INFO] [stdout]  10 | |     // ── Paint & stroke ──
[INFO] [stdout]  11 | |     ("fill", "|box| \"leaf\" { fill: --sky-soft; }"),
[INFO] [stdout]  12 | |     ("opacity", "|box| \"faint\" { opacity: 0.5; }"),
[INFO] [stdout] ...   |
[INFO] [stdout] 394 | |     ),
[INFO] [stdout] 395 | | ];
[INFO] [stdout]     | |__^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `The generated, ledger-backed tooling contract [ROADMAP 3.8]: the`
[INFO] [stdout]     = help: ends near `compile; the coverage test also asserts one entry per property row.`
[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/ledger/examples.rs:9:1
[INFO] [stdout]     |
[INFO] [stdout]   9 | / pub const EXAMPLES: &[(&str, &str)] = &[
[INFO] [stdout]  10 | |     // ── Paint & stroke ──
[INFO] [stdout]  11 | |     ("fill", "|box| \"leaf\" { fill: --sky-soft; }"),
[INFO] [stdout]  12 | |     ("opacity", "|box| \"faint\" { opacity: 0.5; }"),
[INFO] [stdout] ...   |
[INFO] [stdout] 394 | |     ),
[INFO] [stdout] 395 | | ];
[INFO] [stdout]     | |__^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near ``(property name, a complete source that exercises it)`. Every string must`
[INFO] [stdout]     = help: ends near ``(property name, a complete source that exercises it)`. Every string must`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/grammar/playground.rs:61:1
[INFO] [stdout]    |
[INFO] [stdout] 61 | / pub fn splice_playground(src: &str) -> String {
[INFO] [stdout] 62 | |     let begin = src
[INFO] [stdout] 63 | |         .find(BEGIN)
[INFO] [stdout] 64 | |         .expect("playground.html must carry the `// <lini:generated>` marker");
[INFO] [stdout] ...  |
[INFO] [stdout] 69 | |     format!("{}{}{}", &src[..begin], word_lists(), &src[end..])
[INFO] [stdout] 70 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `The generated grammar homes [SPEC 22 / 23]: the VS Code TextMate bundle, the`
[INFO] [stdout]    = help: ends near ``tests/grammar.rs` asserts.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/grammar/playground.rs:61:1
[INFO] [stdout]    |
[INFO] [stdout] 61 | / pub fn splice_playground(src: &str) -> String {
[INFO] [stdout] 62 | |     let begin = src
[INFO] [stdout] 63 | |         .find(BEGIN)
[INFO] [stdout] 64 | |         .expect("playground.html must carry the `// <lini:generated>` marker");
[INFO] [stdout] ...  |
[INFO] [stdout] 69 | |     format!("{}{}{}", &src[..begin], word_lists(), &src[end..])
[INFO] [stdout] 70 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `Replace the marked region in `src` with a freshly generated one. Idempotent:`
[INFO] [stdout]    = help: ends near `Replace the marked region in `src` with a freshly generated one. Idempotent:`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/grammar/vscode.rs:12:1
[INFO] [stdout]     |
[INFO] [stdout]  12 | / pub fn vscode_grammar() -> String {
[INFO] [stdout]  13 | |     let type_names = types();
[INFO] [stdout]  14 | |
[INFO] [stdout]  15 | |     let root_patterns = J::Arr(
[INFO] [stdout] ...   |
[INFO] [stdout] 522 | |     json::to_string(&root)
[INFO] [stdout] 523 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `The generated grammar homes [SPEC 22 / 23]: the VS Code TextMate bundle, the`
[INFO] [stdout]     = help: ends near `The grammar as pretty JSON.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]    --> src/grammar/vscode.rs:12:1
[INFO] [stdout]     |
[INFO] [stdout]  12 | / pub fn vscode_grammar() -> String {
[INFO] [stdout]  13 | |     let type_names = types();
[INFO] [stdout]  14 | |
[INFO] [stdout]  15 | |     let root_patterns = J::Arr(
[INFO] [stdout] ...   |
[INFO] [stdout] 522 | |     json::to_string(&root)
[INFO] [stdout] 523 | | }
[INFO] [stdout]     | |_^
[INFO] [stdout]     |
[INFO] [stdout]     = help: the way this is parsed might change in the future
[INFO] [stdout]     = help: starts near `The grammar as pretty JSON.`
[INFO] [stdout]     = help: ends near `The grammar as pretty JSON.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/grammar/zed.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | / pub fn zed_highlights() -> String {
[INFO] [stdout] 11 | |     let mut out = String::new();
[INFO] [stdout] 12 | |     out.push_str(&format!(
[INFO] [stdout] 13 | |         ";; Generated by `{GENERATOR}` from the compiler's own tables — do not edit.\n\
[INFO] [stdout] ...  |
[INFO] [stdout] 76 | |     out
[INFO] [stdout] 77 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `The generated grammar homes [SPEC 22 / 23]: the VS Code TextMate bundle, the`
[INFO] [stdout]    = help: ends near `The highlight query as `.scm` source.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: markdown element starts on one item and ends on another
[INFO] [stdout]   --> src/grammar/zed.rs:10:1
[INFO] [stdout]    |
[INFO] [stdout] 10 | / pub fn zed_highlights() -> String {
[INFO] [stdout] 11 | |     let mut out = String::new();
[INFO] [stdout] 12 | |     out.push_str(&format!(
[INFO] [stdout] 13 | |         ";; Generated by `{GENERATOR}` from the compiler's own tables — do not edit.\n\
[INFO] [stdout] ...  |
[INFO] [stdout] 76 | |     out
[INFO] [stdout] 77 | | }
[INFO] [stdout]    | |_^
[INFO] [stdout]    |
[INFO] [stdout]    = help: the way this is parsed might change in the future
[INFO] [stdout]    = help: starts near `The highlight query as `.scm` source.`
[INFO] [stdout]    = help: ends near `The highlight query as `.scm` source.`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `join` is both a function and a module
[INFO] [stdout]   --> src/layout/floorplan/wall/mod.rs:13:39
[INFO] [stdout]    |
[INFO] [stdout] 13 | //! chains joined corner by corner ([`join`]) which the assembly closes into
[INFO] [stdout]    |                                       ^^^^ ambiguous link
[INFO] [stdout]    |
[INFO] [stdout] help: to link to the function, add parentheses
[INFO] [stdout]    |
[INFO] [stdout] 13 | //! chains joined corner by corner ([`join()`]) which the assembly closes into
[INFO] [stdout]    |                                           ++
[INFO] [stdout] help: to link to the module, prefix with `mod@`
[INFO] [stdout]    |
[INFO] [stdout] 13 | //! chains joined corner by corner ([`mod@join`]) which the assembly closes into
[INFO] [stdout]    |                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `join` is both a function and a module
[INFO] [stdout]    --> src/layout/floorplan/wall/mod.rs:293:46
[INFO] [stdout]     |
[INFO] [stdout] 293 | /// here, a bevel or a fallback connect in [`join`].
[INFO] [stdout]     |                                              ^^^^ ambiguous link
[INFO] [stdout]     |
[INFO] [stdout] help: to link to the function, add parentheses
[INFO] [stdout]     |
[INFO] [stdout] 293 | /// here, a bevel or a fallback connect in [`join()`].
[INFO] [stdout]     |                                                  ++
[INFO] [stdout] help: to link to the module, prefix with `mod@`
[INFO] [stdout]     |
[INFO] [stdout] 293 | /// here, a bevel or a fallback connect in [`mod@join`].
[INFO] [stdout]     |                                              ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `line` is both a function and a macro
[INFO] [stdout]    --> src/layout/prim.rs:199:81
[INFO] [stdout]     |
[INFO] [stdout] 199 | /// A filled shape through a raw SVG path `d` (absolute coords baked in, like [`line`] /
[INFO] [stdout]     |                                                                                 ^^^^ ambiguous link
[INFO] [stdout]     |
[INFO] [stdout] help: to link to the function, add parentheses
[INFO] [stdout]     |
[INFO] [stdout] 199 | /// A filled shape through a raw SVG path `d` (absolute coords baked in, like [`line()`] /
[INFO] [stdout]     |                                                                                     ++
[INFO] [stdout] help: to link to the macro, add an exclamation mark
[INFO] [stdout]     |
[INFO] [stdout] 199 | /// A filled shape through a raw SVG path `d` (absolute coords baked in, like [`line!`] /
[INFO] [stdout]     |                                                                                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `link_scope` is both a function and a module
[INFO] [stdout]   --> src/resolve/program/link_scope.rs:19:15
[INFO] [stdout]    |
[INFO] [stdout] 19 | /// link by [`link_scope`].
[INFO] [stdout]    |               ^^^^^^^^^^ ambiguous link
[INFO] [stdout]    |
[INFO] [stdout] help: to link to the function, add parentheses
[INFO] [stdout]    |
[INFO] [stdout] 19 | /// link by [`link_scope()`].
[INFO] [stdout]    |                         ++
[INFO] [stdout] help: to link to the module, prefix with `mod@`
[INFO] [stdout]    |
[INFO] [stdout] 19 | /// link by [`mod@link_scope`].
[INFO] [stdout]    |               ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `link_scope` is both a function and a module
[INFO] [stdout]    --> src/resolve/program/link_scope.rs:313:49
[INFO] [stdout]     |
[INFO] [stdout] 313 | /// then each container's identity. Shared by [`link_scope`] (the written scope)
[INFO] [stdout]     |                                                 ^^^^^^^^^^ ambiguous link
[INFO] [stdout]     |
[INFO] [stdout] help: to link to the function, add parentheses
[INFO] [stdout]     |
[INFO] [stdout] 313 | /// then each container's identity. Shared by [`link_scope()`] (the written scope)
[INFO] [stdout]     |                                                           ++
[INFO] [stdout] help: to link to the module, prefix with `mod@`
[INFO] [stdout]     |
[INFO] [stdout] 313 | /// then each container's identity. Shared by [`mod@link_scope`] (the written scope)
[INFO] [stdout]     |                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not document `lini`
[INFO] running `Command { std: "docker" "inspect" "3186f376a5346237d095fb20b4267a294030da2e4af8a2b106f110710664d616", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3186f376a5346237d095fb20b4267a294030da2e4af8a2b106f110710664d616", kill_on_drop: false }`
[INFO] [stdout] 3186f376a5346237d095fb20b4267a294030da2e4af8a2b106f110710664d616
