mirror of
https://github.com/servo/servo.git
synced 2025-07-23 07:13:52 +01:00
Make usage of core_intrinsics optional
This commit is contained in:
parent
bffec1c1a1
commit
27239e1123
5 changed files with 14 additions and 13 deletions
|
@ -39,8 +39,6 @@ use script_layout_interface::TrustedNodeAddress;
|
|||
use std::cell::{Cell, UnsafeCell};
|
||||
use std::default::Default;
|
||||
use std::hash::{Hash, Hasher};
|
||||
#[cfg(debug_assertions)]
|
||||
use std::intrinsics::type_name;
|
||||
use std::marker::PhantomData;
|
||||
use std::mem;
|
||||
use std::ops::Deref;
|
||||
|
@ -359,11 +357,11 @@ impl<T: DomObject> Deref for Dom<T> {
|
|||
|
||||
unsafe impl<T: DomObject> JSTraceable for Dom<T> {
|
||||
unsafe fn trace(&self, trc: *mut JSTracer) {
|
||||
#[cfg(debug_assertions)]
|
||||
let trace_str = format!("for {} on heap", type_name::<T>());
|
||||
#[cfg(debug_assertions)]
|
||||
#[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(debug_assertions))]
|
||||
#[cfg(not(all(feature = "unstable", debug_assertions)))]
|
||||
let trace_info = "for DOM object on heap";
|
||||
|
||||
trace_reflector(trc,
|
||||
|
|
|
@ -805,6 +805,7 @@ impl WindowMethods for Window {
|
|||
|
||||
#[allow(unsafe_code)]
|
||||
fn Trap(&self) {
|
||||
#[cfg(feature = "unstable")]
|
||||
unsafe { ::std::intrinsics::breakpoint() }
|
||||
}
|
||||
|
||||
|
|
|
@ -2,10 +2,10 @@
|
|||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||
|
||||
#![cfg_attr(feature = "unstable", feature(core_intrinsics))]
|
||||
#![cfg_attr(feature = "unstable", feature(on_unimplemented))]
|
||||
#![feature(conservative_impl_trait)]
|
||||
#![feature(const_fn)]
|
||||
#![feature(core_intrinsics)]
|
||||
#![feature(mpsc_select)]
|
||||
#![feature(plugin)]
|
||||
#![feature(proc_macro)]
|
||||
|
|
|
@ -5,7 +5,6 @@
|
|||
//! Machinery for [tasks](https://html.spec.whatwg.org/multipage/#concept-task).
|
||||
|
||||
use std::fmt;
|
||||
use std::intrinsics;
|
||||
use std::sync::Arc;
|
||||
use std::sync::atomic::{AtomicBool, Ordering};
|
||||
|
||||
|
@ -33,7 +32,10 @@ macro_rules! task {
|
|||
pub trait TaskOnce: Send {
|
||||
#[allow(unsafe_code)]
|
||||
fn name(&self) -> &'static str {
|
||||
unsafe { intrinsics::type_name::<Self>() }
|
||||
#[cfg(feature = "unstable")]
|
||||
unsafe { ::std::intrinsics::type_name::<Self>() }
|
||||
#[cfg(not(feature = "unstable"))]
|
||||
{ "(task name unknown)" }
|
||||
}
|
||||
|
||||
fn run_once(self);
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
//!
|
||||
//! [glutin]: https://github.com/tomaka/glutin
|
||||
|
||||
#![feature(core_intrinsics)]
|
||||
#![cfg_attr(feature = "unstable", feature(core_intrinsics))]
|
||||
|
||||
#[cfg(target_os = "android")]
|
||||
extern crate android_injected_glue;
|
||||
|
@ -26,7 +26,7 @@ extern crate glutin_app as app;
|
|||
extern crate log;
|
||||
// The Servo engine
|
||||
extern crate servo;
|
||||
#[cfg(not(target_os = "android"))]
|
||||
#[cfg(all(feature = "unstable", not(target_os = "android")))]
|
||||
#[macro_use]
|
||||
extern crate sig;
|
||||
|
||||
|
@ -57,7 +57,7 @@ pub mod platform {
|
|||
pub fn deinit() {}
|
||||
}
|
||||
|
||||
#[cfg(not(target_os = "android"))]
|
||||
#[cfg(all(feature = "unstable", not(target_os = "android")))]
|
||||
fn install_crash_handler() {
|
||||
use backtrace::Backtrace;
|
||||
use sig::ffi::Sig;
|
||||
|
@ -83,7 +83,7 @@ fn install_crash_handler() {
|
|||
signal!(Sig::BUS, handler); // handle invalid memory access
|
||||
}
|
||||
|
||||
#[cfg(target_os = "android")]
|
||||
#[cfg(any(not(feature = "unstable"), target_os = "android"))]
|
||||
fn install_crash_handler() {}
|
||||
|
||||
fn main() {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue