Skip to content

Commit 362ace9

Browse files
committed
Auto merge of #149645 - GuillaumeGomez:doc-attr-based, r=jdonszelmann,jonathanbrouwer
Port `doc` attributes to new attribute API Part of rust-lang/rust#131229. This PR ports the `doc` attributes to the new attribute API. However, there are things that will need to be fixed in a follow-up: * Some part of `cfg_old.rs` are likely unused now, so they should be removed. * Not all error/lints are emitted at the same time anymore, making them kinda less useful considering that you need to run and fix rustc/rustdoc multiple times to get through all of them. * For coherency with the other attribute errors, I didn't modify the default output too much, meaning that we have some new messages now. I'll likely come back to that to check if the previous ones were better in a case-by-case approach. * `doc(test(attr(...)))` is handled in a horrifying manner currently. Until we can handle it correctly with the `Attribute` system, it'll remain that thing we're all very ashamed of. 😈 * A type in rustdoc got its size increased, I'll check the impact on performance. But in any case, I plan to improve it in a follow-up so should be "ok". * Because of error reporting, some fields of `Doc` are suboptimal, like `inline` which instead of being an `Option` is a `ThinVec` because we report the error later on. Part of the things I'm not super happy about but can be postponed to future me. * In `src/librustdoc/clean/cfg.rs`, the `pub(crate) fn parse(cfg: &MetaItemInner) -> Result<Cfg, InvalidCfgError> {` function should be removed once `cfg_trace` has been ported to new `cfg` API. * Size of type `DocFragment` went from 32 to 48. Would be nice to get it back to 32. * ``malformed `doc` attribute input`` wasn't meant for so many candidates, should be improved. * See how many of the checks in `check_attr` we can move to attribute parsing * Port target checking to be in the attribute parser completely * Fix target checking for `doc(alias)` on fields & patterns And finally, once this PR is merged, I plan to finally stabilize `doc_cfg` feature. :) cc `@jdonszelmann` r? `@JonathanBrouwer`
2 parents 7d63be3 + c729bbe commit 362ace9

File tree

0 file changed

+0
-0
lines changed

    0 file changed

    +0
    -0
    lines changed

    0 commit comments

    Comments
     (0)