]> git.lizzy.rs Git - rust.git/commitdiff
Make members of {std,core}::{i128,u128} unstable
authorest31 <MTest31@outlook.com>
Fri, 6 Jan 2017 01:49:28 +0000 (02:49 +0100)
committerest31 <MTest31@outlook.com>
Fri, 6 Jan 2017 02:53:55 +0000 (03:53 +0100)
Adding it in a stable form was an accident.
It thankfully only leaked to nightly.

Fixes #38860

src/libcore/num/i128.rs
src/libcore/num/int_macros.rs
src/libcore/num/u128.rs
src/libcore/num/uint_macros.rs
src/librustc_const_math/lib.rs
src/test/compile-fail/i128-feature-libs.rs [new file with mode: 0644]

index 6268271a1dcc57728d75864e94c06c3e1babf993..04354e2e33f960eda46172974b88606ea012fb74 100644 (file)
@@ -14,4 +14,4 @@
 
 #![unstable(feature = "i128", issue="35118")]
 
-int_module! { i128 }
+int_module! { i128, #[unstable(feature = "i128", issue="35118")] }
index 630fac9d92f0f1ec440978a1464ae1207ec98bc8..04311d687ea92ad94e5f1a4bd9dcaa1f977e4fd1 100644 (file)
@@ -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.
 //
 
 #![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();
+    )
+}
index 77291f687255e9fbd2961aa3911a27af4e509394..987ac3e000732827772db9fd76609cea2c12b389 100644 (file)
@@ -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")] }
index a3a2dc73e9c8e2ee70604b1e2c7ccdaae25901a5..2e59b39278ab6a9716b57b6bb21d3eba105ced19 100644 (file)
@@ -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.
 //
 
 #![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();
+    )
+}
index 597344a2c82d01b9f675bf668fdae0a6ae56ba13..cd933c0059945660771c224e4ee135442984b29f 100644 (file)
@@ -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 (file)
index 0000000..b29ac50
--- /dev/null
@@ -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'
+}