-
-
Notifications
You must be signed in to change notification settings - Fork 14.8k
rustdoc HTML shouldn't rely on HIR pretty-printing for attributes #142835
Copy link
Copy link
Closed
Labels
A-attributesArea: Attributes (`#[…]`, `#![…]`)Area: Attributes (`#[…]`, `#![…]`)A-rustdoc-uiArea: Rustdoc UI (generated HTML)Area: Rustdoc UI (generated HTML)C-bugCategory: This is a bug.Category: This is a bug.T-rustdocRelevant to the rustdoc team, which will review and decide on the PR/issue.Relevant to the rustdoc team, which will review and decide on the PR/issue.T-rustdoc-frontendRelevant to the rustdoc-frontend team, which will review and decide on the web UI/UX output.Relevant to the rustdoc-frontend team, which will review and decide on the web UI/UX output.
Metadata
Metadata
Assignees
Labels
A-attributesArea: Attributes (`#[…]`, `#![…]`)Area: Attributes (`#[…]`, `#![…]`)A-rustdoc-uiArea: Rustdoc UI (generated HTML)Area: Rustdoc UI (generated HTML)C-bugCategory: This is a bug.Category: This is a bug.T-rustdocRelevant to the rustdoc team, which will review and decide on the PR/issue.Relevant to the rustdoc team, which will review and decide on the PR/issue.T-rustdoc-frontendRelevant to the rustdoc-frontend team, which will review and decide on the web UI/UX output.Relevant to the rustdoc-frontend team, which will review and decide on the web UI/UX output.
Type
Fields
Give feedbackNo fields configured for issues without a type.
Oh no :( The rustdoc HTML backend shouldn't use HIR pretty-printing at all. Fortunately, rustdoc only displays a fixed set of attrs:
export_name,link_section,no_mangle,non_exhaustiveandreprbut forreprwe don't rely on HIR pretty-printing.Using HIR pretty is busted anyway, since it doesn't escape HTML. E.g.,
#[unsafe(link_section = "<script>alert()</script>")]triggers an alert.Originally posted by @fmease in #142823 (comment)