Auto merge of #23676 - servo:check, r=Manishearth

Share more `./mach build` logic with mach check, doc, test-unit

Fixes #23659

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/23676)
<!-- Reviewable:end -->
This commit is contained in:
bors-servo 2019-07-02 23:55:44 -04:00 committed by GitHub
commit 50033878a6
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
32 changed files with 268 additions and 302 deletions

View file

@ -15,7 +15,6 @@ path = "lib.rs"
[features]
debugmozjs = ['js/debugmozjs']
profilemozjs = ['js/profilemozjs']
unstable = []
unrooted_must_root_lint = ["script_plugins/unrooted_must_root_lint"]
webidl_lint = ["script_plugins/webidl_lint"]
default = ["unrooted_must_root_lint", "webidl_lint"]

View file

@ -69,10 +69,7 @@ pub trait IDLInterface {
}
/// A trait to mark an IDL interface as deriving from another one.
#[cfg_attr(
feature = "unstable",
rustc_on_unimplemented(message = "The IDL interface `{Self}` is not derived from `{T}`.")
)]
#[rustc_on_unimplemented(message = "The IDL interface `{Self}` is not derived from `{T}`.")]
pub trait DerivedFrom<T: Castable>: Castable {}
impl<T: Float + ToJSValConvertible> ToJSValConvertible for Finite<T> {

View file

@ -330,13 +330,13 @@ impl<T: DomObject> Deref for Dom<T> {
unsafe impl<T: DomObject> JSTraceable for Dom<T> {
unsafe fn trace(&self, trc: *mut JSTracer) {
#[cfg(all(feature = "unstable", debug_assertions))]
let trace_str = format!("for {} on heap", ::std::intrinsics::type_name::<T>());
#[cfg(all(feature = "unstable", debug_assertions))]
let trace_info = &trace_str[..];
#[cfg(not(all(feature = "unstable", debug_assertions)))]
let trace_info = "for DOM object on heap";
let trace_string;
let trace_info = if cfg!(debug_assertions) {
trace_string = format!("for {} on heap", ::std::intrinsics::type_name::<T>());
&trace_string[..]
} else {
"for DOM object on heap"
};
trace_reflector(trc, trace_info, (*self.ptr.as_ptr()).reflector());
}
}

View file

@ -938,10 +938,7 @@ impl WindowMethods for Window {
#[allow(unsafe_code)]
fn Trap(&self) {
#[cfg(feature = "unstable")]
unsafe {
::std::intrinsics::breakpoint()
}
unsafe { ::std::intrinsics::breakpoint() }
}
#[allow(unsafe_code)]

View file

@ -2,11 +2,11 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at https://mozilla.org/MPL/2.0/. */
#![cfg_attr(feature = "unstable", feature(core_intrinsics))]
#![cfg_attr(feature = "unstable", feature(on_unimplemented))]
#![feature(const_fn)]
#![feature(core_intrinsics)]
#![feature(drain_filter)]
#![feature(inner_deref)]
#![feature(on_unimplemented)]
#![feature(plugin)]
#![feature(type_alias_enum_variants)]
#![deny(unsafe_code)]

View file

@ -32,14 +32,7 @@ macro_rules! task {
pub trait TaskOnce: Send {
#[allow(unsafe_code)]
fn name(&self) -> &'static str {
#[cfg(feature = "unstable")]
unsafe {
::std::intrinsics::type_name::<Self>()
}
#[cfg(not(feature = "unstable"))]
{
"(task name unknown)"
}
unsafe { ::std::intrinsics::type_name::<Self>() }
}
fn run_once(self);