Clippy lints / Suspicious
Clippy lint · Suspicious · checked with Clippy 0.1.99
clippy::doc_nested_refdefs: link reference defined in list item
What it meansWarns if a link reference definition appears at the start of a list item or quote. It is in the suspicious group and warns by default.
What you see
warning: link reference defined in list item --> main.rs:3:7 | 3 | //! - [link]: description | ^^^^^^ | = help: link definitions are not shown in rendered documentation = help: for further information visit https://rust-lang.github.io/rust-clippy/stable/index.html#doc_nested_refdefs = note: `#[warn(clippy::doc_nested_refdefs)]` on by default help: for an intra-doc link, add `[]` between the label and the colon | 3 | //! - [link][]: description | ++
Real output of Clippy 0.1.99 (Rust 1.99) on the example below. Names and line numbers in yours will differ.
Does it matter?
This is probably intended as an intra-doc link. If it is really supposed to be a reference definition, it can be written outside of the list item or quote.
Code that is most likely wrong or useless. Warns by default.
How to fix it
Clippy does not fix this one automatically (its suggestion may change behaviour, so it only shows it). Change the code by hand:
Flagged
//! - [link]: description
Write this instead
//! - [link][]: description (for intra-doc link)
//!
//! [link]: destination (for link reference definition)
Turn it off, or on
Allow it where it does not fit your code, as narrowly as you can:
On one item
#[allow(clippy::doc_nested_refdefs)]
fn my_function() { /* ... */ }Whole crate (Cargo.toml)
[lints.clippy]
doc_nested_refdefs = "allow"One run
cargo clippy -- -A clippy::doc-nested-refdefsThe [lints] table needs Rust 1.74 or newer. In a workspace, put it under [workspace.lints.clippy] and add [lints] workspace = true to each member.
Clippy's own documentation
What it does
Warns if a link reference definition appears at the start of a list item or quote.
Why is this bad?
This is probably intended as an intra-doc link. If it is really supposed to be a reference definition, it can be written outside of the list item or quote.
Example
//! - [link]: description
Use instead:
//! - [link][]: description (for intra-doc link)
//!
//! [link]: destination (for link reference definition)
From the Clippy lint list (0.1.99), part of the Rust project, MIT or Apache-2.0. Official entry.
Related lints
- crosspointer_transmuteChecks for transmutes between a type T and *T
- declare_interior_mutable_constnamed constant with interior mutability
- deprecated_clippy_cfg_attr`feature = "cargo-clippy"` was replaced by `clippy`
- doc_suspicious_footnoteslooks like a footnote ref, but has no matching footnote
- drop_non_dropcall to `std::mem::drop` with a value that does not implement `Drop`. Dropping such a type only extends its contained lifetimes
- duplicate_modfile is loaded as a module multiple times: `main.rs`
All 847 Clippy lints · Rust compiler errors · Cargo.toml checker
Up next
Related lintclippy::crosspointer_transmuteChecks for transmutes between a type T and *TRead it next →Did this answer your question?