diff options
| author | est31 <MTest31@outlook.com> | 2017-01-06 02:49:28 +0100 |
|---|---|---|
| committer | est31 <MTest31@outlook.com> | 2017-01-06 03:53:55 +0100 |
| commit | 1779ffa98f89ba98a9c404f31d559fa7d6214caa (patch) | |
| tree | 5bbd602550a1523b63b6cfe7f6558002fbeaf58c | |
| parent | 28f6d4a63786a7e63bc5d3b66b1754a02b1b564d (diff) | |
| download | rust-1779ffa98f89ba98a9c404f31d559fa7d6214caa.tar.gz rust-1779ffa98f89ba98a9c404f31d559fa7d6214caa.zip | |
Make members of {std,core}::{i128,u128} unstable
Adding it in a stable form was an accident. It thankfully only leaked to nightly. Fixes #38860
| -rw-r--r-- | src/libcore/num/i128.rs | 2 | ||||
| -rw-r--r-- | src/libcore/num/int_macros.rs | 23 | ||||
| -rw-r--r-- | src/libcore/num/u128.rs | 2 | ||||
| -rw-r--r-- | src/libcore/num/uint_macros.rs | 23 | ||||
| -rw-r--r-- | src/librustc_const_math/lib.rs | 1 | ||||
| -rw-r--r-- | src/test/compile-fail/i128-feature-libs.rs | 17 |
6 files changed, 44 insertions, 24 deletions
diff --git a/src/libcore/num/i128.rs b/src/libcore/num/i128.rs index 6268271a1dc..04354e2e33f 100644 --- a/src/libcore/num/i128.rs +++ b/src/libcore/num/i128.rs @@ -14,4 +14,4 @@ #![unstable(feature = "i128", issue="35118")] -int_module! { i128 } +int_module! { i128, #[unstable(feature = "i128", issue="35118")] } diff --git a/src/libcore/num/int_macros.rs b/src/libcore/num/int_macros.rs index 630fac9d92f..04311d687ea 100644 --- a/src/libcore/num/int_macros.rs +++ b/src/libcore/num/int_macros.rs @@ -1,4 +1,4 @@ -// Copyright 2012-2014 The Rust Project Developers. See the COPYRIGHT +// Copyright 2012-2017 The Rust Project Developers. See the COPYRIGHT // file at the top-level directory of this distribution and at // http://rust-lang.org/COPYRIGHT. // @@ -10,13 +10,14 @@ #![doc(hidden)] -macro_rules! int_module { ($T:ident) => ( - -/// The smallest value that can be represented by this integer type. -#[stable(feature = "rust1", since = "1.0.0")] -pub const MIN: $T = $T::min_value(); -/// The largest value that can be represented by this integer type. -#[stable(feature = "rust1", since = "1.0.0")] -pub const MAX: $T = $T::max_value(); - -) } +macro_rules! int_module { + ($T:ident) => (int_module!($T, #[stable(feature = "rust1", since = "1.0.0")]);); + ($T:ident, $($attr: tt)*) => ( + /// The smallest value that can be represented by this integer type. + $($attr)* + pub const MIN: $T = $T::min_value(); + /// The largest value that can be represented by this integer type. + $($attr)* + pub const MAX: $T = $T::max_value(); + ) +} diff --git a/src/libcore/num/u128.rs b/src/libcore/num/u128.rs index 77291f68725..987ac3e0007 100644 --- a/src/libcore/num/u128.rs +++ b/src/libcore/num/u128.rs @@ -13,4 +13,4 @@ //! *[See also the `u128` primitive type](../../std/primitive.u128.html).* #![unstable(feature = "i128", issue="35118")] -uint_module! { u128 } +uint_module! { u128, #[unstable(feature = "i128", issue="35118")] } diff --git a/src/libcore/num/uint_macros.rs b/src/libcore/num/uint_macros.rs index a3a2dc73e9c..2e59b39278a 100644 --- a/src/libcore/num/uint_macros.rs +++ b/src/libcore/num/uint_macros.rs @@ -1,4 +1,4 @@ -// Copyright 2012-2014 The Rust Project Developers. See the COPYRIGHT +// Copyright 2012-2017 The Rust Project Developers. See the COPYRIGHT // file at the top-level directory of this distribution and at // http://rust-lang.org/COPYRIGHT. // @@ -10,13 +10,14 @@ #![doc(hidden)] -macro_rules! uint_module { ($T:ident) => ( - -/// The smallest value that can be represented by this integer type. -#[stable(feature = "rust1", since = "1.0.0")] -pub const MIN: $T = $T::min_value(); -/// The largest value that can be represented by this integer type. -#[stable(feature = "rust1", since = "1.0.0")] -pub const MAX: $T = $T::max_value(); - -) } +macro_rules! uint_module { + ($T:ident) => (uint_module!($T, #[stable(feature = "rust1", since = "1.0.0")]);); + ($T:ident, $($attr: tt)*) => ( + /// The smallest value that can be represented by this integer type. + $($attr)* + pub const MIN: $T = $T::min_value(); + /// The largest value that can be represented by this integer type. + $($attr)* + pub const MAX: $T = $T::max_value(); + ) +} diff --git a/src/librustc_const_math/lib.rs b/src/librustc_const_math/lib.rs index 597344a2c82..cd933c00599 100644 --- a/src/librustc_const_math/lib.rs +++ b/src/librustc_const_math/lib.rs @@ -26,6 +26,7 @@ #![feature(rustc_private)] #![feature(staged_api)] #![feature(const_fn)] +#![cfg_attr(not(stage0), feature(i128))] #[macro_use] extern crate log; #[macro_use] extern crate syntax; diff --git a/src/test/compile-fail/i128-feature-libs.rs b/src/test/compile-fail/i128-feature-libs.rs new file mode 100644 index 00000000000..b29ac50fd37 --- /dev/null +++ b/src/test/compile-fail/i128-feature-libs.rs @@ -0,0 +1,17 @@ +// Copyright 2017 The Rust Project Developers. See the COPYRIGHT +// file at the top-level directory of this distribution and at +// http://rust-lang.org/COPYRIGHT. +// +// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or +// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license +// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your +// option. This file may not be copied, modified, or distributed +// except according to those terms. + +fn testl() { + ::std::u128::MAX; //~ ERROR use of unstable library feature 'i128' +} + +fn testl2() { + ::std::i128::MAX; //~ ERROR use of unstable library feature 'i128' +} |
