Rollup merge of #62213 - QuietMisdreavus:cfg-doctest, r=GuillaumeGomez
rustdoc: set cfg(doctest) when collecting doctests Note: This PR builds on top of https://github.com/rust-lang/rust/pull/61199; only the last commit is specific to this PR. As discussed in https://github.com/rust-lang/rust/pull/61199, we want the ability to isolate items to only when rustdoc is collecting doctests, but we can't use `cfg(test)` because of libcore's `#![cfg(not(test))]`. This PR proposes a new cfg flag, `cfg(doctest)`, specific to this situation, rather than reusing an existing flag. I've isolated it behind a feature gate so that we can contain the effects to nightly only. (A stable workaround that can be used in lieu of `#[cfg(doctest)]` is `#[cfg(rustdoc)] #[doc(hidden)]`, at least once https://github.com/rust-lang/rust/pull/61351 lands.) Tracking issue: https://github.com/rust-lang/rust/issues/62210
This commit is contained in:
commit
fe807fcf3e
9 changed files with 78 additions and 4 deletions
4
src/test/ui/feature-gate/feature-gate-cfg_doctest.rs
Normal file
4
src/test/ui/feature-gate/feature-gate-cfg_doctest.rs
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
#[cfg(doctest)] //~ ERROR
|
||||
pub struct SomeStruct;
|
||||
|
||||
fn main() {}
|
||||
12
src/test/ui/feature-gate/feature-gate-cfg_doctest.stderr
Normal file
12
src/test/ui/feature-gate/feature-gate-cfg_doctest.stderr
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
error[E0658]: `cfg(doctest)` is experimental and subject to change
|
||||
--> $DIR/feature-gate-cfg_doctest.rs:1:7
|
||||
|
|
||||
LL | #[cfg(doctest)]
|
||||
| ^^^^^^^
|
||||
|
|
||||
= note: for more information, see https://github.com/rust-lang/rust/issues/62210
|
||||
= help: add #![feature(cfg_doctest)] to the crate attributes to enable
|
||||
|
||||
error: aborting due to previous error
|
||||
|
||||
For more information about this error, try `rustc --explain E0658`.
|
||||
Loading…
Add table
Add a link
Reference in a new issue