Skip to content

Commit

Permalink
Rollup merge of rust-lang#58591 - dwijnand:dedup-a-rustdoc-diag-const…
Browse files Browse the repository at this point in the history
…ruction, r=GuillaumeGomez

Dedup a rustdoc diagnostic construction

None
  • Loading branch information
Centril committed Feb 22, 2019
2 parents e8cf01b + ad096d1 commit 43e0268
Showing 1 changed file with 8 additions and 22 deletions.
30 changes: 8 additions & 22 deletions src/librustdoc/passes/collect_intra_doc_links.rs
Original file line number Diff line number Diff line change
Expand Up @@ -458,26 +458,18 @@ fn resolution_failure(
link_range: Option<Range<usize>>,
) {
let sp = span_of_attrs(attrs);
let msg = format!("`[{}]` cannot be resolved, ignoring it...", path_str);

let mut diag = if let Some(link_range) = link_range {
let mut diag = cx.tcx.struct_span_lint_node(
lint::builtin::INTRA_DOC_LINK_RESOLUTION_FAILURE,
NodeId::from_u32(0),
sp,
&format!("`[{}]` cannot be resolved, ignoring it...", path_str),
);
if let Some(link_range) = link_range {
if let Some(sp) = super::source_span_for_markdown_range(cx, dox, &link_range, attrs) {
let mut diag = cx.tcx.struct_span_lint_node(
lint::builtin::INTRA_DOC_LINK_RESOLUTION_FAILURE,
NodeId::from_u32(0),
sp,
&msg,
);
diag.set_span(sp);
diag.span_label(sp, "cannot be resolved, ignoring");
diag
} else {
let mut diag = cx.tcx.struct_span_lint_node(
lint::builtin::INTRA_DOC_LINK_RESOLUTION_FAILURE,
NodeId::from_u32(0),
sp,
&msg,
);

// blah blah blah\nblah\nblah [blah] blah blah\nblah blah
// ^ ~~~~
// | link_range
Expand All @@ -494,13 +486,7 @@ fn resolution_failure(
before=link_range.start - last_new_line_offset,
found=link_range.len(),
));
diag
}
} else {
cx.tcx.struct_span_lint_node(lint::builtin::INTRA_DOC_LINK_RESOLUTION_FAILURE,
NodeId::from_u32(0),
sp,
&msg)
};
diag.help("to escape `[` and `]` characters, just add '\\' before them like \
`\\[` or `\\]`");
Expand Down

0 comments on commit 43e0268

Please sign in to comment.