Skip to content

Commit

Permalink
Auto merge of #35766 - brson:bump, r=alexcrichton
Browse files Browse the repository at this point in the history
Upgrade bootstrap compiler to 1.12

r? @alexcrichton
  • Loading branch information
bors authored Aug 23, 2016
2 parents d0da7f6 + 144cc72 commit 599f1b9
Show file tree
Hide file tree
Showing 11 changed files with 71 additions and 93 deletions.
21 changes: 21 additions & 0 deletions src/bootstrap/Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 4 additions & 0 deletions src/bootstrap/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -543,6 +543,10 @@ impl Build {
.arg("-j").arg(self.jobs().to_string())
.arg("--target").arg(target);

// FIXME: Temporary fix for https://github.com/rust-lang/cargo/issues/3005
// Force cargo to output binaries with disambiguating hashes in the name
cargo.env("__CARGO_DEFAULT_LIB_METADATA", "1");

let stage;
if compiler.stage == 0 && self.local_rebuild {
// Assume the local-rebuild rustc already has stage1 features.
Expand Down
45 changes: 18 additions & 27 deletions src/libcore/cmp.rs
Original file line number Diff line number Diff line change
Expand Up @@ -699,38 +699,29 @@ mod impls {

ord_impl! { char usize u8 u16 u32 u64 isize i8 i16 i32 i64 }

// Note: This macro is a temporary hack that can be remove once we are building with a compiler
// that supports `!`
macro_rules! not_stage0 {
() => {
#[unstable(feature = "never_type", issue = "35121")]
impl PartialEq for ! {
fn eq(&self, _: &!) -> bool {
*self
}
}
#[unstable(feature = "never_type", issue = "35121")]
impl PartialEq for ! {
fn eq(&self, _: &!) -> bool {
*self
}
}

#[unstable(feature = "never_type", issue = "35121")]
impl Eq for ! {}
#[unstable(feature = "never_type", issue = "35121")]
impl Eq for ! {}

#[unstable(feature = "never_type", issue = "35121")]
impl PartialOrd for ! {
fn partial_cmp(&self, _: &!) -> Option<Ordering> {
*self
}
}

#[unstable(feature = "never_type", issue = "35121")]
impl Ord for ! {
fn cmp(&self, _: &!) -> Ordering {
*self
}
}
#[unstable(feature = "never_type", issue = "35121")]
impl PartialOrd for ! {
fn partial_cmp(&self, _: &!) -> Option<Ordering> {
*self
}
}

#[cfg(not(stage0))]
not_stage0!();
#[unstable(feature = "never_type", issue = "35121")]
impl Ord for ! {
fn cmp(&self, _: &!) -> Ordering {
*self
}
}

// & pointers

Expand Down
29 changes: 10 additions & 19 deletions src/libcore/fmt/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1363,28 +1363,19 @@ macro_rules! fmt_refs {

fmt_refs! { Debug, Display, Octal, Binary, LowerHex, UpperHex, LowerExp, UpperExp }

// Note: This macro is a temporary hack that can be remove once we are building with a compiler
// that supports `!`
macro_rules! not_stage0 {
() => {
#[unstable(feature = "never_type", issue = "35121")]
impl Debug for ! {
fn fmt(&self, _: &mut Formatter) -> Result {
*self
}
}

#[unstable(feature = "never_type", issue = "35121")]
impl Display for ! {
fn fmt(&self, _: &mut Formatter) -> Result {
*self
}
}
#[unstable(feature = "never_type", issue = "35121")]
impl Debug for ! {
fn fmt(&self, _: &mut Formatter) -> Result {
*self
}
}

#[cfg(not(stage0))]
not_stage0!();
#[unstable(feature = "never_type", issue = "35121")]
impl Display for ! {
fn fmt(&self, _: &mut Formatter) -> Result {
*self
}
}

#[stable(feature = "rust1", since = "1.0.0")]
impl Debug for bool {
Expand Down
6 changes: 1 addition & 5 deletions src/libcore/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -67,8 +67,6 @@
#![deny(missing_debug_implementations)]
#![cfg_attr(not(stage0), deny(warnings))]

#![cfg_attr(stage0, allow(unused_attributes))]

#![feature(allow_internal_unstable)]
#![feature(asm)]
#![feature(associated_type_defaults)]
Expand All @@ -92,9 +90,7 @@
#![feature(staged_api)]
#![feature(unboxed_closures)]
#![feature(question_mark)]

// NOTE: remove the cfg_attr next snapshot
#![cfg_attr(not(stage0), feature(never_type))]
#![feature(never_type)]

#[macro_use]
mod macros;
Expand Down
24 changes: 0 additions & 24 deletions src/libpanic_unwind/gcc.rs
Original file line number Diff line number Diff line change
Expand Up @@ -264,30 +264,6 @@ unsafe fn find_eh_action(context: *mut uw::_Unwind_Context) -> EHAction {
eh::find_eh_action(lsda, &eh_context)
}

// *** Delete after a new snapshot ***
#[cfg(all(stage0, any(target_os = "ios", not(target_arch = "arm"))))]
#[lang = "eh_personality_catch"]
#[no_mangle]
pub unsafe extern "C" fn rust_eh_personality_catch(version: c_int,
actions: uw::_Unwind_Action,
exception_class: uw::_Unwind_Exception_Class,
ue_header: *mut uw::_Unwind_Exception,
context: *mut uw::_Unwind_Context)
-> uw::_Unwind_Reason_Code {
rust_eh_personality(version, actions, exception_class, ue_header, context)
}

// *** Delete after a new snapshot ***
#[cfg(all(stage0, target_arch = "arm", not(target_os = "ios")))]
#[lang = "eh_personality_catch"]
#[no_mangle]
pub unsafe extern "C" fn rust_eh_personality_catch(state: uw::_Unwind_State,
ue_header: *mut uw::_Unwind_Exception,
context: *mut uw::_Unwind_Context)
-> uw::_Unwind_Reason_Code {
rust_eh_personality(state, ue_header, context)
}

// See docs in the `unwind` module.
#[cfg(all(target_os="windows", target_arch = "x86", target_env="gnu"))]
#[lang = "eh_unwind_resume"]
Expand Down
15 changes: 0 additions & 15 deletions src/libpanic_unwind/seh64_gnu.rs
Original file line number Diff line number Diff line change
Expand Up @@ -81,21 +81,6 @@ pub unsafe fn cleanup(ptr: *mut u8) -> Box<Any + Send> {
// This is considered acceptable, because the behavior of throwing exceptions
// through a C ABI boundary is undefined.

// *** Delete after a new snapshot ***
#[cfg(stage0)]
#[lang = "eh_personality_catch"]
#[cfg(not(test))]
unsafe extern "C" fn rust_eh_personality_catch(exceptionRecord: *mut c::EXCEPTION_RECORD,
establisherFrame: c::LPVOID,
contextRecord: *mut c::CONTEXT,
dispatcherContext: *mut c::DISPATCHER_CONTEXT)
-> c::EXCEPTION_DISPOSITION {
rust_eh_personality(exceptionRecord,
establisherFrame,
contextRecord,
dispatcherContext)
}

#[lang = "eh_personality"]
#[cfg(not(test))]
unsafe extern "C" fn rust_eh_personality(exceptionRecord: *mut c::EXCEPTION_RECORD,
Expand Down
2 changes: 2 additions & 0 deletions src/rustc/Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 2 additions & 0 deletions src/rustc/std_shim/Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 3 additions & 3 deletions src/stage0.txt
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,6 @@
# tarball for a stable release you'll likely see `1.x.0-$date` where `1.x.0` was
# released on `$date`

rustc: beta-2016-07-06
rustc_key: 411fd48b
cargo: nightly-2016-07-05
rustc: beta-2016-08-17
rustc_key: 195e6261
cargo: nightly-2016-08-21
10 changes: 10 additions & 0 deletions src/tools/compiletest/Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

0 comments on commit 599f1b9

Please sign in to comment.