Rollup merge of #61199 - ollie27:rustdoc_cfg_test, r=QuietMisdreavus
Revert "Set test flag when rustdoc is running with --test option" Reverts https://github.com/rust-lang/rust/pull/59940. It caused doctests in this repository to no longer be tested including all of the core crate.
This commit is contained in:
commit
6c0ab739fb
6 changed files with 15 additions and 12 deletions
|
|
@ -73,9 +73,9 @@ impl<T: ?Sized> !Send for *mut T { }
|
|||
/// impl Foo for Impl { }
|
||||
/// impl Bar for Impl { }
|
||||
///
|
||||
/// let x: &Foo = &Impl; // OK
|
||||
/// // let y: &Bar = &Impl; // error: the trait `Bar` cannot
|
||||
/// // be made into an object
|
||||
/// let x: &dyn Foo = &Impl; // OK
|
||||
/// // let y: &dyn Bar = &Impl; // error: the trait `Bar` cannot
|
||||
/// // be made into an object
|
||||
/// ```
|
||||
///
|
||||
/// [trait object]: ../../book/ch17-02-trait-objects.html
|
||||
|
|
|
|||
|
|
@ -510,6 +510,8 @@ pub fn swap<T>(x: &mut T, y: &mut T) {
|
|||
/// A simple example:
|
||||
///
|
||||
/// ```
|
||||
/// #![feature(mem_take)]
|
||||
///
|
||||
/// use std::mem;
|
||||
///
|
||||
/// let mut v: Vec<i32> = vec![1, 2];
|
||||
|
|
@ -540,7 +542,8 @@ pub fn swap<T>(x: &mut T, y: &mut T) {
|
|||
/// `self`, allowing it to be returned:
|
||||
///
|
||||
/// ```
|
||||
/// # #![allow(dead_code)]
|
||||
/// #![feature(mem_take)]
|
||||
///
|
||||
/// use std::mem;
|
||||
///
|
||||
/// # struct Buffer<T> { buf: Vec<T> }
|
||||
|
|
|
|||
|
|
@ -53,7 +53,7 @@
|
|||
/// let value: i32 = 123;
|
||||
///
|
||||
/// // let the compiler make a trait object
|
||||
/// let object: &Foo = &value;
|
||||
/// let object: &dyn Foo = &value;
|
||||
///
|
||||
/// // look at the raw representation
|
||||
/// let raw_object: raw::TraitObject = unsafe { mem::transmute(object) };
|
||||
|
|
@ -65,7 +65,7 @@
|
|||
///
|
||||
/// // construct a new object, pointing to a different `i32`, being
|
||||
/// // careful to use the `i32` vtable from `object`
|
||||
/// let synthesized: &Foo = unsafe {
|
||||
/// let synthesized: &dyn Foo = unsafe {
|
||||
/// mem::transmute(raw::TraitObject {
|
||||
/// data: &other_value as *const _ as *mut (),
|
||||
/// vtable: raw_object.vtable,
|
||||
|
|
|
|||
|
|
@ -351,9 +351,6 @@ impl Options {
|
|||
.unwrap_or_else(|| PathBuf::from("doc"));
|
||||
let mut cfgs = matches.opt_strs("cfg");
|
||||
cfgs.push("rustdoc".to_string());
|
||||
if should_test {
|
||||
cfgs.push("test".to_string());
|
||||
}
|
||||
|
||||
let extension_css = matches.opt_str("e").map(|s| PathBuf::from(&s));
|
||||
|
||||
|
|
|
|||
|
|
@ -2,12 +2,15 @@
|
|||
// compile-flags:--test
|
||||
// normalize-stdout-test: "src/test/rustdoc-ui" -> "$$DIR"
|
||||
|
||||
// Crates like core have doctests gated on `cfg(not(test))` so we need to make
|
||||
// sure `cfg(test)` is not active when running `rustdoc --test`.
|
||||
|
||||
/// this doctest will be ignored:
|
||||
///
|
||||
/// ```
|
||||
/// assert!(false);
|
||||
/// ```
|
||||
#[cfg(not(test))]
|
||||
#[cfg(test)]
|
||||
pub struct Foo;
|
||||
|
||||
/// this doctest will be tested:
|
||||
|
|
@ -15,5 +18,5 @@ pub struct Foo;
|
|||
/// ```
|
||||
/// assert!(true);
|
||||
/// ```
|
||||
#[cfg(test)]
|
||||
#[cfg(not(test))]
|
||||
pub struct Foo;
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
|
||||
running 1 test
|
||||
test $DIR/cfg-test.rs - Foo (line 15) ... ok
|
||||
test $DIR/cfg-test.rs - Foo (line 18) ... ok
|
||||
|
||||
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue