]> git.lizzy.rs Git - rust.git/blob - patches/0002-Disable-u128-and-i128-in-libcore.patch
Rustup to rustc 1.33.0-nightly (bf669d1e3 2019-01-25)
[rust.git] / patches / 0002-Disable-u128-and-i128-in-libcore.patch
1 From 76c92b0dcd7919dab3a48d707d615f260390b839 Mon Sep 17 00:00:00 2001
2 From: bjorn3 <bjorn3@users.noreply.github.com>
3 Date: Sat, 26 Jan 2019 11:50:08 +0100
4 Subject: [PATCH] Disable u128 and i128 in libcore
5
6 ---
7  src/libcore/clone.rs         |   4 +-
8  src/libcore/cmp.rs           |   6 +-
9  src/libcore/default.rs       |   2 -
10  src/libcore/fmt/num.rs       |   6 +-
11  src/libcore/hash/mod.rs      |  20 ------
12  src/libcore/iter/range.rs    |   1 -
13  src/libcore/iter/traits.rs   |   2 +-
14  src/libcore/lib.rs           |   2 -
15  src/libcore/marker.rs        |   4 +-
16  src/libcore/mem.rs           |   2 -
17  src/libcore/num/mod.rs       | 100 ++++++++--------------------
18  src/libcore/num/wrapping.rs  |  14 ++--
19  src/libcore/ops/arith.rs     |  22 +++----
20  src/libcore/ops/bit.rs       |  30 ++++-----
21  src/libcore/sync/atomic.rs   |  28 --------
22  src/libcore/tests/iter.rs    |  15 -----
23  src/libcore/tests/num/mod.rs |  18 -----
24  src/libcore/time.rs          | 123 -----------------------------------
25  src/libstd/lib.rs            |   4 --
26  src/libstd/net/ip.rs         |  20 ------
27  src/libstd/num.rs            |   2 +-
28  src/libstd/panic.rs          |   6 --
29  22 files changed, 63 insertions(+), 368 deletions(-)
30
31 diff --git a/src/libcore/clone.rs b/src/libcore/clone.rs
32 index ed90b7d..1739f91 100644
33 --- a/src/libcore/clone.rs
34 +++ b/src/libcore/clone.rs
35 @@ -173,8 +173,8 @@ mod impls {
36      }
37  
38      impl_clone! {
39 -        usize u8 u16 u32 u64 u128
40 -        isize i8 i16 i32 i64 i128
41 +        usize u8 u16 u32 u64
42 +        isize i8 i16 i32 i64
43          f32 f64
44          bool char
45      }
46 diff --git a/src/libcore/cmp.rs b/src/libcore/cmp.rs
47 index d43a5c1..268e5f1 100644
48 --- a/src/libcore/cmp.rs
49 +++ b/src/libcore/cmp.rs
50 @@ -876,7 +876,7 @@ mod impls {
51      }
52  
53      partial_eq_impl! {
54 -        bool char usize u8 u16 u32 u64 u128 isize i8 i16 i32 i64 i128 f32 f64
55 +        bool char usize u8 u16 u32 u64 isize i8 i16 i32 i64 f32 f64
56      }
57  
58      macro_rules! eq_impl {
59 @@ -886,7 +886,7 @@ mod impls {
60          )*)
61      }
62  
63 -    eq_impl! { () bool char usize u8 u16 u32 u64 u128 isize i8 i16 i32 i64 i128 }
64 +    eq_impl! { () bool char usize u8 u16 u32 u64 isize i8 i16 i32 i64 }
65  
66      macro_rules! partial_ord_impl {
67          ($($t:ty)*) => ($(
68 @@ -975,7 +975,7 @@ mod impls {
69          }
70      }
71  
72 -    ord_impl! { char usize u8 u16 u32 u64 u128 isize i8 i16 i32 i64 i128 }
73 +    ord_impl! { char usize u8 u16 u32 u64 isize i8 i16 i32 i64 }
74  
75      #[unstable(feature = "never_type", issue = "35121")]
76      impl PartialEq for ! {
77 diff --git a/src/libcore/default.rs b/src/libcore/default.rs
78 index 0e47c2f..570b949 100644
79 --- a/src/libcore/default.rs
80 +++ b/src/libcore/default.rs
81 @@ -135,14 +135,12 @@ default_impl! { u8, 0, "Returns the default value of `0`" }
82  default_impl! { u16, 0, "Returns the default value of `0`" }
83  default_impl! { u32, 0, "Returns the default value of `0`" }
84  default_impl! { u64, 0, "Returns the default value of `0`" }
85 -default_impl! { u128, 0, "Returns the default value of `0`" }
86  
87  default_impl! { isize, 0, "Returns the default value of `0`" }
88  default_impl! { i8, 0, "Returns the default value of `0`" }
89  default_impl! { i16, 0, "Returns the default value of `0`" }
90  default_impl! { i32, 0, "Returns the default value of `0`" }
91  default_impl! { i64, 0, "Returns the default value of `0`" }
92 -default_impl! { i128, 0, "Returns the default value of `0`" }
93  
94  default_impl! { f32, 0.0f32, "Returns the default value of `0.0`" }
95  default_impl! { f64, 0.0f64, "Returns the default value of `0.0`" }
96 diff --git a/src/libcore/fmt/num.rs b/src/libcore/fmt/num.rs
97 index c7c8fc5..689d611 100644
98 --- a/src/libcore/fmt/num.rs
99 +++ b/src/libcore/fmt/num.rs
100 @@ -19,7 +19,6 @@ trait Int: PartialEq + PartialOrd + Div<Output=Self> + Rem<Output=Self> +
101      fn to_u16(&self) -> u16;
102      fn to_u32(&self) -> u32;
103      fn to_u64(&self) -> u64;
104 -    fn to_u128(&self) -> u128;
105  }
106  
107  macro_rules! doit {
108 @@ -30,10 +29,9 @@ macro_rules! doit {
109          fn to_u16(&self) -> u16 { *self as u16 }
110          fn to_u32(&self) -> u32 { *self as u32 }
111          fn to_u64(&self) -> u64 { *self as u64 }
112 -        fn to_u128(&self) -> u128 { *self as u128 }
113      })*)
114  }
115 -doit! { i8 i16 i32 i64 i128 isize u8 u16 u32 u64 u128 usize }
116 +doit! { i8 i16 i32 i64 isize u8 u16 u32 u64 usize }
117  
118  /// A type that represents a specific radix
119  #[doc(hidden)]
120 @@ -174,7 +172,6 @@ integer! { i8, u8 }
121  integer! { i16, u16 }
122  integer! { i32, u32 }
123  integer! { i64, u64 }
124 -integer! { i128, u128 }
125  
126  const DEC_DIGITS_LUT: &'static[u8] =
127      b"0001020304050607080910111213141516171819\
128 @@ -250,7 +247,6 @@ macro_rules! impl_Display {
129  
130  impl_Display!(i8, u8, i16, u16, i32, u32: to_u32);
131  impl_Display!(i64, u64: to_u64);
132 -impl_Display!(i128, u128: to_u128);
133  #[cfg(target_pointer_width = "16")]
134  impl_Display!(isize, usize: to_u16);
135  #[cfg(target_pointer_width = "32")]
136 diff --git a/src/libcore/hash/mod.rs b/src/libcore/hash/mod.rs
137 index d5d29c9..f98f382 100644
138 --- a/src/libcore/hash/mod.rs
139 +++ b/src/libcore/hash/mod.rs
140 @@ -296,12 +296,6 @@ pub trait Hasher {
141      fn write_u64(&mut self, i: u64) {
142          self.write(&unsafe { mem::transmute::<_, [u8; 8]>(i) })
143      }
144 -    /// Writes a single `u128` into this hasher.
145 -    #[inline]
146 -    #[stable(feature = "i128", since = "1.26.0")]
147 -    fn write_u128(&mut self, i: u128) {
148 -        self.write(&unsafe { mem::transmute::<_, [u8; 16]>(i) })
149 -    }
150      /// Writes a single `usize` into this hasher.
151      #[inline]
152      #[stable(feature = "hasher_write", since = "1.3.0")]
153 @@ -336,12 +330,6 @@ pub trait Hasher {
154      fn write_i64(&mut self, i: i64) {
155          self.write_u64(i as u64)
156      }
157 -    /// Writes a single `i128` into this hasher.
158 -    #[inline]
159 -    #[stable(feature = "i128", since = "1.26.0")]
160 -    fn write_i128(&mut self, i: i128) {
161 -        self.write_u128(i as u128)
162 -    }
163      /// Writes a single `isize` into this hasher.
164      #[inline]
165      #[stable(feature = "hasher_write", since = "1.3.0")]
166 @@ -370,9 +358,6 @@ impl<H: Hasher + ?Sized> Hasher for &mut H {
167      fn write_u64(&mut self, i: u64) {
168          (**self).write_u64(i)
169      }
170 -    fn write_u128(&mut self, i: u128) {
171 -        (**self).write_u128(i)
172 -    }
173      fn write_usize(&mut self, i: usize) {
174          (**self).write_usize(i)
175      }
176 @@ -388,9 +373,6 @@ impl<H: Hasher + ?Sized> Hasher for &mut H {
177      fn write_i64(&mut self, i: i64) {
178          (**self).write_i64(i)
179      }
180 -    fn write_i128(&mut self, i: i128) {
181 -        (**self).write_i128(i)
182 -    }
183      fn write_isize(&mut self, i: isize) {
184          (**self).write_isize(i)
185      }
186 @@ -577,8 +559,6 @@ mod impls {
187          (i32, write_i32),
188          (i64, write_i64),
189          (isize, write_isize),
190 -        (u128, write_u128),
191 -        (i128, write_i128),
192      }
193  
194      #[stable(feature = "rust1", since = "1.0.0")]
195 diff --git a/src/libcore/iter/range.rs b/src/libcore/iter/range.rs
196 index 66c09a0..1b8c5c9 100644
197 --- a/src/libcore/iter/range.rs
198 +++ b/src/libcore/iter/range.rs
199 @@ -173,7 +173,6 @@ step_impl_signed!([i64: u64]);
200  // assume here that it is less than 64-bits.
201  #[cfg(not(target_pointer_width = "64"))]
202  step_impl_no_between!(u64 i64);
203 -step_impl_no_between!(u128 i128);
204  
205  macro_rules! range_exact_iter_impl {
206      ($($t:ty)*) => ($(
207 diff --git a/src/libcore/iter/traits.rs b/src/libcore/iter/traits.rs
208 index e8c6cd8..f58b446 100644
209 --- a/src/libcore/iter/traits.rs
210 +++ b/src/libcore/iter/traits.rs
211 @@ -901,7 +901,7 @@ macro_rules! float_sum_product {
212      )*)
213  }
214  
215 -integer_sum_product! { i8 i16 i32 i64 i128 isize u8 u16 u32 u64 u128 usize }
216 +integer_sum_product! { i8 i16 i32 i64 isize u8 u16 u32 u64 usize }
217  float_sum_product! { f32 f64 }
218  
219  /// An iterator adapter that produces output as long as the underlying
220 diff --git a/src/libcore/lib.rs b/src/libcore/lib.rs
221 index 74a7115..634df60 100644
222 --- a/src/libcore/lib.rs
223 +++ b/src/libcore/lib.rs
224 @@ -149,14 +149,12 @@ mod uint_macros;
225  #[path = "num/i16.rs"]   pub mod i16;
226  #[path = "num/i32.rs"]   pub mod i32;
227  #[path = "num/i64.rs"]   pub mod i64;
228 -#[path = "num/i128.rs"]  pub mod i128;
229  
230  #[path = "num/usize.rs"] pub mod usize;
231  #[path = "num/u8.rs"]    pub mod u8;
232  #[path = "num/u16.rs"]   pub mod u16;
233  #[path = "num/u32.rs"]   pub mod u32;
234  #[path = "num/u64.rs"]   pub mod u64;
235 -#[path = "num/u128.rs"]  pub mod u128;
236  
237  #[path = "num/f32.rs"]   pub mod f32;
238  #[path = "num/f64.rs"]   pub mod f64;
239 diff --git a/src/libcore/marker.rs b/src/libcore/marker.rs
240 index 65752ba..d3b797a 100644
241 --- a/src/libcore/marker.rs
242 +++ b/src/libcore/marker.rs
243 @@ -663,8 +663,8 @@ mod copy_impls {
244      }
245  
246      impl_copy! {
247 -        usize u8 u16 u32 u64 u128
248 -        isize i8 i16 i32 i64 i128
249 +        usize u8 u16 u32 u64
250 +        isize i8 i16 i32 i64
251          f32 f64
252          bool char
253      }
254 diff --git a/src/libcore/mem.rs b/src/libcore/mem.rs
255 index 8fcbb73..0e20b88 100644
256 --- a/src/libcore/mem.rs
257 +++ b/src/libcore/mem.rs
258 @@ -163,12 +163,10 @@ pub fn forget_unsized<T: ?Sized>(t: T) {
259  /// u16 | 2
260  /// u32 | 4
261  /// u64 | 8
262 -/// u128 | 16
263  /// i8 | 1
264  /// i16 | 2
265  /// i32 | 4
266  /// i64 | 8
267 -/// i128 | 16
268  /// f32 | 4
269  /// f64 | 8
270  /// char | 4
271 diff --git a/src/libcore/num/mod.rs b/src/libcore/num/mod.rs
272 index 423b800..b2b3f90 100644
273 --- a/src/libcore/num/mod.rs
274 +++ b/src/libcore/num/mod.rs
275 @@ -102,13 +102,11 @@ nonzero_integers! {
276      #[stable(feature = "nonzero", since = "1.28.0")] NonZeroU16(u16);
277      #[stable(feature = "nonzero", since = "1.28.0")] NonZeroU32(u32);
278      #[stable(feature = "nonzero", since = "1.28.0")] NonZeroU64(u64);
279 -    #[stable(feature = "nonzero", since = "1.28.0")] NonZeroU128(u128);
280      #[stable(feature = "nonzero", since = "1.28.0")] NonZeroUsize(usize);
281      #[stable(feature = "signed_nonzero", since = "1.34.0")] NonZeroI8(i8);
282      #[stable(feature = "signed_nonzero", since = "1.34.0")] NonZeroI16(i16);
283      #[stable(feature = "signed_nonzero", since = "1.34.0")] NonZeroI32(i32);
284      #[stable(feature = "signed_nonzero", since = "1.34.0")] NonZeroI64(i64);
285 -    #[stable(feature = "signed_nonzero", since = "1.34.0")] NonZeroI128(i128);
286      #[stable(feature = "signed_nonzero", since = "1.34.0")] NonZeroIsize(isize);
287  }
288  
289 @@ -2125,18 +2123,6 @@ impl i64 {
290           "[0x12, 0x34, 0x56, 0x78, 0x90, 0x12, 0x34, 0x56]" }
291  }
292  
293 -#[lang = "i128"]
294 -impl i128 {
295 -    int_impl! { i128, i128, u128, 128, -170141183460469231731687303715884105728,
296 -        170141183460469231731687303715884105727, "", "", 16,
297 -        "0x13f40000000000000000000000004f76", "0x4f7613f4", "0x12345678901234567890123456789012",
298 -        "0x12907856341290785634129078563412", "0x48091e6a2c48091e6a2c48091e6a2c48",
299 -        "[0x12, 0x90, 0x78, 0x56, 0x34, 0x12, 0x90, 0x78, \
300 -          0x56, 0x34, 0x12, 0x90, 0x78, 0x56, 0x34, 0x12]",
301 -        "[0x12, 0x34, 0x56, 0x78, 0x90, 0x12, 0x34, 0x56, \
302 -          0x78, 0x90, 0x12, 0x34, 0x56, 0x78, 0x90, 0x12]" }
303 -}
304 -
305  #[cfg(target_pointer_width = "16")]
306  #[lang = "isize"]
307  impl isize {
308 @@ -4440,17 +4426,6 @@ impl u64 {
309          "[0x12, 0x34, 0x56, 0x78, 0x90, 0x12, 0x34, 0x56]" }
310  }
311  
312 -#[lang = "u128"]
313 -impl u128 {
314 -    uint_impl! { u128, u128, 128, 340282366920938463463374607431768211455, "", "", 16,
315 -        "0x13f40000000000000000000000004f76", "0x4f7613f4", "0x12345678901234567890123456789012",
316 -        "0x12907856341290785634129078563412", "0x48091e6a2c48091e6a2c48091e6a2c48",
317 -        "[0x12, 0x90, 0x78, 0x56, 0x34, 0x12, 0x90, 0x78, \
318 -          0x56, 0x34, 0x12, 0x90, 0x78, 0x56, 0x34, 0x12]",
319 -        "[0x12, 0x34, 0x56, 0x78, 0x90, 0x12, 0x34, 0x56, \
320 -          0x78, 0x90, 0x12, 0x34, 0x56, 0x78, 0x90, 0x12]" }
321 -}
322 -
323  #[cfg(target_pointer_width = "16")]
324  #[lang = "usize"]
325  impl usize {
326 @@ -4534,7 +4509,7 @@ macro_rules! from_str_radix_int_impl {
327          }
328      )*}
329  }
330 -from_str_radix_int_impl! { isize i8 i16 i32 i64 i128 usize u8 u16 u32 u64 u128 }
331 +from_str_radix_int_impl! { isize i8 i16 i32 i64 usize u8 u16 u32 u64 }
332  
333  /// The error type returned when a checked integral type conversion fails.
334  #[unstable(feature = "try_from", issue = "33417")]
335 @@ -4650,30 +4625,25 @@ macro_rules! rev {
336  try_from_upper_bounded!(u16, u8);
337  try_from_upper_bounded!(u32, u16, u8);
338  try_from_upper_bounded!(u64, u32, u16, u8);
339 -try_from_upper_bounded!(u128, u64, u32, u16, u8);
340  
341  try_from_both_bounded!(i16, i8);
342  try_from_both_bounded!(i32, i16, i8);
343  try_from_both_bounded!(i64, i32, i16, i8);
344 -try_from_both_bounded!(i128, i64, i32, i16, i8);
345  
346  // unsigned-to-signed
347  try_from_upper_bounded!(u8, i8);
348  try_from_upper_bounded!(u16, i8, i16);
349  try_from_upper_bounded!(u32, i8, i16, i32);
350  try_from_upper_bounded!(u64, i8, i16, i32, i64);
351 -try_from_upper_bounded!(u128, i8, i16, i32, i64, i128);
352  
353  // signed-to-unsigned
354 -try_from_lower_bounded!(i8, u8, u16, u32, u64, u128);
355 -try_from_lower_bounded!(i16, u16, u32, u64, u128);
356 -try_from_lower_bounded!(i32, u32, u64, u128);
357 -try_from_lower_bounded!(i64, u64, u128);
358 -try_from_lower_bounded!(i128, u128);
359 +try_from_lower_bounded!(i8, u8, u16, u32, u64);
360 +try_from_lower_bounded!(i16, u16, u32, u64);
361 +try_from_lower_bounded!(i32, u32, u64);
362 +try_from_lower_bounded!(i64, u64);
363  try_from_both_bounded!(i16, u8);
364  try_from_both_bounded!(i32, u16, u8);
365  try_from_both_bounded!(i64, u32, u16, u8);
366 -try_from_both_bounded!(i128, u64, u32, u16, u8);
367  
368  // usize/isize
369  try_from_upper_bounded!(usize, isize);
370 @@ -4685,21 +4655,21 @@ mod ptr_try_from_impls {
371      use convert::TryFrom;
372  
373      try_from_upper_bounded!(usize, u8);
374 -    try_from_unbounded!(usize, u16, u32, u64, u128);
375 +    try_from_unbounded!(usize, u16, u32, u64);
376      try_from_upper_bounded!(usize, i8, i16);
377 -    try_from_unbounded!(usize, i32, i64, i128);
378 +    try_from_unbounded!(usize, i32, i64);
379  
380      try_from_both_bounded!(isize, u8);
381 -    try_from_lower_bounded!(isize, u16, u32, u64, u128);
382 +    try_from_lower_bounded!(isize, u16, u32, u64);
383      try_from_both_bounded!(isize, i8);
384 -    try_from_unbounded!(isize, i16, i32, i64, i128);
385 +    try_from_unbounded!(isize, i16, i32, i64);
386  
387 -    rev!(try_from_upper_bounded, usize, u32, u64, u128);
388 +    rev!(try_from_upper_bounded, usize, u32, u64);
389      rev!(try_from_lower_bounded, usize, i8, i16);
390 -    rev!(try_from_both_bounded, usize, i32, i64, i128);
391 +    rev!(try_from_both_bounded, usize, i32, i64);
392  
393 -    rev!(try_from_upper_bounded, isize, u16, u32, u64, u128);
394 -    rev!(try_from_both_bounded, isize, i32, i64, i128);
395 +    rev!(try_from_upper_bounded, isize, u16, u32, u64);
396 +    rev!(try_from_both_bounded, isize, i32, i64);
397  }
398  
399  #[cfg(target_pointer_width = "32")]
400 @@ -4708,24 +4678,24 @@ mod ptr_try_from_impls {
401      use convert::TryFrom;
402  
403      try_from_upper_bounded!(usize, u8, u16);
404 -    try_from_unbounded!(usize, u32, u64, u128);
405 +    try_from_unbounded!(usize, u32, u64);
406      try_from_upper_bounded!(usize, i8, i16, i32);
407 -    try_from_unbounded!(usize, i64, i128);
408 +    try_from_unbounded!(usize, i64);
409  
410      try_from_both_bounded!(isize, u8, u16);
411 -    try_from_lower_bounded!(isize, u32, u64, u128);
412 +    try_from_lower_bounded!(isize, u32, u64);
413      try_from_both_bounded!(isize, i8, i16);
414 -    try_from_unbounded!(isize, i32, i64, i128);
415 +    try_from_unbounded!(isize, i32, i64);
416  
417      rev!(try_from_unbounded, usize, u32);
418 -    rev!(try_from_upper_bounded, usize, u64, u128);
419 +    rev!(try_from_upper_bounded, usize, u64);
420      rev!(try_from_lower_bounded, usize, i8, i16, i32);
421 -    rev!(try_from_both_bounded, usize, i64, i128);
422 +    rev!(try_from_both_bounded, usize, i64);
423  
424      rev!(try_from_unbounded, isize, u16);
425 -    rev!(try_from_upper_bounded, isize, u32, u64, u128);
426 +    rev!(try_from_upper_bounded, isize, u32, u64);
427      rev!(try_from_unbounded, isize, i32);
428 -    rev!(try_from_both_bounded, isize, i64, i128);
429 +    rev!(try_from_both_bounded, isize, i64);
430  }
431  
432  #[cfg(target_pointer_width = "64")]
433 @@ -4734,24 +4704,20 @@ mod ptr_try_from_impls {
434      use convert::TryFrom;
435  
436      try_from_upper_bounded!(usize, u8, u16, u32);
437 -    try_from_unbounded!(usize, u64, u128);
438 +    try_from_unbounded!(usize, u64);
439      try_from_upper_bounded!(usize, i8, i16, i32, i64);
440 -    try_from_unbounded!(usize, i128);
441  
442      try_from_both_bounded!(isize, u8, u16, u32);
443 -    try_from_lower_bounded!(isize, u64, u128);
444 +    try_from_lower_bounded!(isize, u64);
445      try_from_both_bounded!(isize, i8, i16, i32);
446 -    try_from_unbounded!(isize, i64, i128);
447 +    try_from_unbounded!(isize, i64);
448  
449      rev!(try_from_unbounded, usize, u32, u64);
450 -    rev!(try_from_upper_bounded, usize, u128);
451      rev!(try_from_lower_bounded, usize, i8, i16, i32, i64);
452 -    rev!(try_from_both_bounded, usize, i128);
453  
454      rev!(try_from_unbounded, isize, u16, u32);
455 -    rev!(try_from_upper_bounded, isize, u64, u128);
456 +    rev!(try_from_upper_bounded, isize, u64);
457      rev!(try_from_unbounded, isize, i32, i64);
458 -    rev!(try_from_both_bounded, isize, i128);
459  }
460  
461  #[doc(hidden)]
462 @@ -4786,7 +4752,7 @@ macro_rules! doit {
463          }
464      })*)
465  }
466 -doit! { i8 i16 i32 i64 i128 isize u8 u16 u32 u64 u128 usize }
467 +doit! { i8 i16 i32 i64 isize u8 u16 u32 u64 usize }
468  
469  fn from_str_radix<T: FromStrRadixHelper>(src: &str, radix: u32) -> Result<T, ParseIntError> {
470      use self::IntErrorKind::*;
471 @@ -4977,52 +4943,38 @@ impl_from_bool! { u8, #[stable(feature = "from_bool", since = "1.28.0")] }
472  impl_from_bool! { u16, #[stable(feature = "from_bool", since = "1.28.0")] }
473  impl_from_bool! { u32, #[stable(feature = "from_bool", since = "1.28.0")] }
474  impl_from_bool! { u64, #[stable(feature = "from_bool", since = "1.28.0")] }
475 -impl_from_bool! { u128, #[stable(feature = "from_bool", since = "1.28.0")] }
476  impl_from_bool! { usize, #[stable(feature = "from_bool", since = "1.28.0")] }
477  impl_from_bool! { i8, #[stable(feature = "from_bool", since = "1.28.0")] }
478  impl_from_bool! { i16, #[stable(feature = "from_bool", since = "1.28.0")] }
479  impl_from_bool! { i32, #[stable(feature = "from_bool", since = "1.28.0")] }
480  impl_from_bool! { i64, #[stable(feature = "from_bool", since = "1.28.0")] }
481 -impl_from_bool! { i128, #[stable(feature = "from_bool", since = "1.28.0")] }
482  impl_from_bool! { isize, #[stable(feature = "from_bool", since = "1.28.0")] }
483  
484  // Unsigned -> Unsigned
485  impl_from! { u8, u16, #[stable(feature = "lossless_int_conv", since = "1.5.0")] }
486  impl_from! { u8, u32, #[stable(feature = "lossless_int_conv", since = "1.5.0")] }
487  impl_from! { u8, u64, #[stable(feature = "lossless_int_conv", since = "1.5.0")] }
488 -impl_from! { u8, u128, #[stable(feature = "i128", since = "1.26.0")] }
489  impl_from! { u8, usize, #[stable(feature = "lossless_int_conv", since = "1.5.0")] }
490  impl_from! { u16, u32, #[stable(feature = "lossless_int_conv", since = "1.5.0")] }
491  impl_from! { u16, u64, #[stable(feature = "lossless_int_conv", since = "1.5.0")] }
492 -impl_from! { u16, u128, #[stable(feature = "i128", since = "1.26.0")] }
493  impl_from! { u32, u64, #[stable(feature = "lossless_int_conv", since = "1.5.0")] }
494 -impl_from! { u32, u128, #[stable(feature = "i128", since = "1.26.0")] }
495 -impl_from! { u64, u128, #[stable(feature = "i128", since = "1.26.0")] }
496  
497  // Signed -> Signed
498  impl_from! { i8, i16, #[stable(feature = "lossless_int_conv", since = "1.5.0")] }
499  impl_from! { i8, i32, #[stable(feature = "lossless_int_conv", since = "1.5.0")] }
500  impl_from! { i8, i64, #[stable(feature = "lossless_int_conv", since = "1.5.0")] }
501 -impl_from! { i8, i128, #[stable(feature = "i128", since = "1.26.0")] }
502  impl_from! { i8, isize, #[stable(feature = "lossless_int_conv", since = "1.5.0")] }
503  impl_from! { i16, i32, #[stable(feature = "lossless_int_conv", since = "1.5.0")] }
504  impl_from! { i16, i64, #[stable(feature = "lossless_int_conv", since = "1.5.0")] }
505 -impl_from! { i16, i128, #[stable(feature = "i128", since = "1.26.0")] }
506  impl_from! { i32, i64, #[stable(feature = "lossless_int_conv", since = "1.5.0")] }
507 -impl_from! { i32, i128, #[stable(feature = "i128", since = "1.26.0")] }
508 -impl_from! { i64, i128, #[stable(feature = "i128", since = "1.26.0")] }
509  
510  // Unsigned -> Signed
511  impl_from! { u8, i16, #[stable(feature = "lossless_int_conv", since = "1.5.0")] }
512  impl_from! { u8, i32, #[stable(feature = "lossless_int_conv", since = "1.5.0")] }
513  impl_from! { u8, i64, #[stable(feature = "lossless_int_conv", since = "1.5.0")] }
514 -impl_from! { u8, i128, #[stable(feature = "i128", since = "1.26.0")] }
515  impl_from! { u16, i32, #[stable(feature = "lossless_int_conv", since = "1.5.0")] }
516  impl_from! { u16, i64, #[stable(feature = "lossless_int_conv", since = "1.5.0")] }
517 -impl_from! { u16, i128, #[stable(feature = "i128", since = "1.26.0")] }
518  impl_from! { u32, i64, #[stable(feature = "lossless_int_conv", since = "1.5.0")] }
519 -impl_from! { u32, i128, #[stable(feature = "i128", since = "1.26.0")] }
520 -impl_from! { u64, i128, #[stable(feature = "i128", since = "1.26.0")] }
521  
522  // The C99 standard defines bounds on INTPTR_MIN, INTPTR_MAX, and UINTPTR_MAX
523  // which imply that pointer-sized integers must be at least 16 bits:
524 diff --git a/src/libcore/num/wrapping.rs b/src/libcore/num/wrapping.rs
525 index 50e189c..2da3b35 100644
526 --- a/src/libcore/num/wrapping.rs
527 +++ b/src/libcore/num/wrapping.rs
528 @@ -102,19 +102,17 @@ macro_rules! sh_impl_all {
529          //sh_impl_unsigned! { $t, u16 }
530          //sh_impl_unsigned! { $t, u32 }
531          //sh_impl_unsigned! { $t, u64 }
532 -        //sh_impl_unsigned! { $t, u128 }
533          sh_impl_unsigned! { $t, usize }
534  
535          //sh_impl_signed! { $t, i8 }
536          //sh_impl_signed! { $t, i16 }
537          //sh_impl_signed! { $t, i32 }
538          //sh_impl_signed! { $t, i64 }
539 -        //sh_impl_signed! { $t, i128 }
540          //sh_impl_signed! { $t, isize }
541      )*)
542  }
543  
544 -sh_impl_all! { u8 u16 u32 u64 u128 usize i8 i16 i32 i64 i128 isize }
545 +sh_impl_all! { u8 u16 u32 u64 usize i8 i16 i32 i64 isize }
546  
547  // FIXME(30524): impl Op<T> for Wrapping<T>, impl OpAssign<T> for Wrapping<T>
548  macro_rules! wrapping_impl {
549 @@ -313,7 +311,7 @@ macro_rules! wrapping_impl {
550      )*)
551  }
552  
553 -wrapping_impl! { usize u8 u16 u32 u64 u128 isize i8 i16 i32 i64 i128 }
554 +wrapping_impl! { usize u8 u16 u32 u64 isize i8 i16 i32 i64 }
555  
556  macro_rules! wrapping_int_impl {
557      ($($t:ty)*) => ($(
558 @@ -675,7 +673,7 @@ assert_eq!(Wrapping(3i8).pow(6), Wrapping(-39));
559      )*)
560  }
561  
562 -wrapping_int_impl! { usize u8 u16 u32 u64 u128 isize i8 i16 i32 i64 i128 }
563 +wrapping_int_impl! { usize u8 u16 u32 u64 isize i8 i16 i32 i64 }
564  
565  macro_rules! wrapping_int_impl_signed {
566      ($($t:ty)*) => ($(
567 @@ -804,7 +802,7 @@ assert!(!Wrapping(10", stringify!($t), ").is_negative());
568      )*)
569  }
570  
571 -wrapping_int_impl_signed! { isize i8 i16 i32 i64 i128 }
572 +wrapping_int_impl_signed! { isize i8 i16 i32 i64 }
573  
574  macro_rules! wrapping_int_impl_unsigned {
575      ($($t:ty)*) => ($(
576 @@ -881,7 +879,7 @@ assert_eq!(Wrapping(200_u8).next_power_of_two(), Wrapping(0));
577      )*)
578  }
579  
580 -wrapping_int_impl_unsigned! { usize u8 u16 u32 u64 u128 }
581 +wrapping_int_impl_unsigned! { usize u8 u16 u32 u64 }
582  
583  mod shift_max {
584      #![allow(non_upper_case_globals)]
585 @@ -908,13 +906,11 @@ mod shift_max {
586      pub const i16: u32 = (1 << 4) - 1;
587      pub const i32: u32 = (1 << 5) - 1;
588      pub const i64: u32 = (1 << 6) - 1;
589 -    pub const i128: u32 = (1 << 7) - 1;
590      pub use self::platform::isize;
591  
592      pub const u8: u32 = i8;
593      pub const u16: u32 = i16;
594      pub const u32: u32 = i32;
595      pub const u64: u32 = i64;
596 -    pub const u128: u32 = i128;
597      pub use self::platform::usize;
598  }
599 diff --git a/src/libcore/ops/arith.rs b/src/libcore/ops/arith.rs
600 index 7d8bf18..91fd879 100644
601 --- a/src/libcore/ops/arith.rs
602 +++ b/src/libcore/ops/arith.rs
603 @@ -104,7 +104,7 @@ macro_rules! add_impl {
604      )*)
605  }
606  
607 -add_impl! { usize u8 u16 u32 u64 u128 isize i8 i16 i32 i64 i128 f32 f64 }
608 +add_impl! { usize u8 u16 u32 u64 isize i8 i16 i32 i64 f32 f64 }
609  
610  /// The subtraction operator `-`.
611  ///
612 @@ -202,7 +202,7 @@ macro_rules! sub_impl {
613      )*)
614  }
615  
616 -sub_impl! { usize u8 u16 u32 u64 u128 isize i8 i16 i32 i64 i128 f32 f64 }
617 +sub_impl! { usize u8 u16 u32 u64 isize i8 i16 i32 i64 f32 f64 }
618  
619  /// The multiplication operator `*`.
620  ///
621 @@ -322,7 +322,7 @@ macro_rules! mul_impl {
622      )*)
623  }
624  
625 -mul_impl! { usize u8 u16 u32 u64 u128 isize i8 i16 i32 i64 i128 f32 f64 }
626 +mul_impl! { usize u8 u16 u32 u64 isize i8 i16 i32 i64 f32 f64 }
627  
628  /// The division operator `/`.
629  ///
630 @@ -447,7 +447,7 @@ macro_rules! div_impl_integer {
631      )*)
632  }
633  
634 -div_impl_integer! { usize u8 u16 u32 u64 u128 isize i8 i16 i32 i64 i128 }
635 +div_impl_integer! { usize u8 u16 u32 u64 isize i8 i16 i32 i64 }
636  
637  macro_rules! div_impl_float {
638      ($($t:ty)*) => ($(
639 @@ -532,7 +532,7 @@ macro_rules! rem_impl_integer {
640      )*)
641  }
642  
643 -rem_impl_integer! { usize u8 u16 u32 u64 u128 isize i8 i16 i32 i64 i128 }
644 +rem_impl_integer! { usize u8 u16 u32 u64 isize i8 i16 i32 i64 }
645  
646  
647  macro_rules! rem_impl_float {
648 @@ -631,7 +631,7 @@ macro_rules! neg_impl_unsigned {
649  }
650  
651  // neg_impl_unsigned! { usize u8 u16 u32 u64 }
652 -neg_impl_numeric! { isize i8 i16 i32 i64 i128 f32 f64 }
653 +neg_impl_numeric! { isize i8 i16 i32 i64 f32 f64 }
654  
655  /// The addition assignment operator `+=`.
656  ///
657 @@ -687,7 +687,7 @@ macro_rules! add_assign_impl {
658      )+)
659  }
660  
661 -add_assign_impl! { usize u8 u16 u32 u64 u128 isize i8 i16 i32 i64 i128 f32 f64 }
662 +add_assign_impl! { usize u8 u16 u32 u64 isize i8 i16 i32 i64 f32 f64 }
663  
664  /// The subtraction assignment operator `-=`.
665  ///
666 @@ -743,7 +743,7 @@ macro_rules! sub_assign_impl {
667      )+)
668  }
669  
670 -sub_assign_impl! { usize u8 u16 u32 u64 u128 isize i8 i16 i32 i64 i128 f32 f64 }
671 +sub_assign_impl! { usize u8 u16 u32 u64 isize i8 i16 i32 i64 f32 f64 }
672  
673  /// The multiplication assignment operator `*=`.
674  ///
675 @@ -790,7 +790,7 @@ macro_rules! mul_assign_impl {
676      )+)
677  }
678  
679 -mul_assign_impl! { usize u8 u16 u32 u64 u128 isize i8 i16 i32 i64 i128 f32 f64 }
680 +mul_assign_impl! { usize u8 u16 u32 u64 isize i8 i16 i32 i64 f32 f64 }
681  
682  /// The division assignment operator `/=`.
683  ///
684 @@ -836,7 +836,7 @@ macro_rules! div_assign_impl {
685      )+)
686  }
687  
688 -div_assign_impl! { usize u8 u16 u32 u64 u128 isize i8 i16 i32 i64 i128 f32 f64 }
689 +div_assign_impl! { usize u8 u16 u32 u64 isize i8 i16 i32 i64 f32 f64 }
690  
691  /// The remainder assignment operator `%=`.
692  ///
693 @@ -886,4 +886,4 @@ macro_rules! rem_assign_impl {
694      )+)
695  }
696  
697 -rem_assign_impl! { usize u8 u16 u32 u64 u128 isize i8 i16 i32 i64 i128 f32 f64 }
698 +rem_assign_impl! { usize u8 u16 u32 u64 isize i8 i16 i32 i64 f32 f64 }
699 diff --git a/src/libcore/ops/bit.rs b/src/libcore/ops/bit.rs
700 index 2c9bf24..af2ab6f 100644
701 --- a/src/libcore/ops/bit.rs
702 +++ b/src/libcore/ops/bit.rs
703 @@ -55,7 +55,7 @@ macro_rules! not_impl {
704      )*)
705  }
706  
707 -not_impl! { bool usize u8 u16 u32 u64 u128 isize i8 i16 i32 i64 i128 }
708 +not_impl! { bool usize u8 u16 u32 u64 isize i8 i16 i32 i64 }
709  
710  /// The bitwise AND operator `&`.
711  ///
712 @@ -139,7 +139,7 @@ macro_rules! bitand_impl {
713      )*)
714  }
715  
716 -bitand_impl! { bool usize u8 u16 u32 u64 u128 isize i8 i16 i32 i64 i128 }
717 +bitand_impl! { bool usize u8 u16 u32 u64 isize i8 i16 i32 i64 }
718  
719  /// The bitwise OR operator `|`.
720  ///
721 @@ -223,7 +223,7 @@ macro_rules! bitor_impl {
722      )*)
723  }
724  
725 -bitor_impl! { bool usize u8 u16 u32 u64 u128 isize i8 i16 i32 i64 i128 }
726 +bitor_impl! { bool usize u8 u16 u32 u64 isize i8 i16 i32 i64 }
727  
728  /// The bitwise XOR operator `^`.
729  ///
730 @@ -310,7 +310,7 @@ macro_rules! bitxor_impl {
731      )*)
732  }
733  
734 -bitxor_impl! { bool usize u8 u16 u32 u64 u128 isize i8 i16 i32 i64 i128 }
735 +bitxor_impl! { bool usize u8 u16 u32 u64 isize i8 i16 i32 i64 }
736  
737  /// The left shift operator `<<`. Note that because this trait is implemented
738  /// for all integer types with multiple right-hand-side types, Rust's type
739 @@ -407,19 +407,17 @@ macro_rules! shl_impl_all {
740          shl_impl! { $t, u16 }
741          shl_impl! { $t, u32 }
742          shl_impl! { $t, u64 }
743 -        shl_impl! { $t, u128 }
744          shl_impl! { $t, usize }
745  
746          shl_impl! { $t, i8 }
747          shl_impl! { $t, i16 }
748          shl_impl! { $t, i32 }
749          shl_impl! { $t, i64 }
750 -        shl_impl! { $t, i128 }
751          shl_impl! { $t, isize }
752      )*)
753  }
754  
755 -shl_impl_all! { u8 u16 u32 u64 u128 usize i8 i16 i32 i64 isize i128 }
756 +shl_impl_all! { u8 u16 u32 u64 usize i8 i16 i32 i64 isize }
757  
758  /// The right shift operator `>>`. Note that because this trait is implemented
759  /// for all integer types with multiple right-hand-side types, Rust's type
760 @@ -516,19 +514,17 @@ macro_rules! shr_impl_all {
761          shr_impl! { $t, u16 }
762          shr_impl! { $t, u32 }
763          shr_impl! { $t, u64 }
764 -        shr_impl! { $t, u128 }
765          shr_impl! { $t, usize }
766  
767          shr_impl! { $t, i8 }
768          shr_impl! { $t, i16 }
769          shr_impl! { $t, i32 }
770          shr_impl! { $t, i64 }
771 -        shr_impl! { $t, i128 }
772          shr_impl! { $t, isize }
773      )*)
774  }
775  
776 -shr_impl_all! { u8 u16 u32 u64 u128 usize i8 i16 i32 i64 i128 isize }
777 +shr_impl_all! { u8 u16 u32 u64 usize i8 i16 i32 i64 isize }
778  
779  /// The bitwise AND assignment operator `&=`.
780  ///
781 @@ -616,7 +612,7 @@ macro_rules! bitand_assign_impl {
782      )+)
783  }
784  
785 -bitand_assign_impl! { bool usize u8 u16 u32 u64 u128 isize i8 i16 i32 i64 i128 }
786 +bitand_assign_impl! { bool usize u8 u16 u32 u64 isize i8 i16 i32 i64 }
787  
788  /// The bitwise OR assignment operator `|=`.
789  ///
790 @@ -665,7 +661,7 @@ macro_rules! bitor_assign_impl {
791      )+)
792  }
793  
794 -bitor_assign_impl! { bool usize u8 u16 u32 u64 u128 isize i8 i16 i32 i64 i128 }
795 +bitor_assign_impl! { bool usize u8 u16 u32 u64 isize i8 i16 i32 i64 }
796  
797  /// The bitwise XOR assignment operator `^=`.
798  ///
799 @@ -714,7 +710,7 @@ macro_rules! bitxor_assign_impl {
800      )+)
801  }
802  
803 -bitxor_assign_impl! { bool usize u8 u16 u32 u64 u128 isize i8 i16 i32 i64 i128 }
804 +bitxor_assign_impl! { bool usize u8 u16 u32 u64 isize i8 i16 i32 i64 }
805  
806  /// The left shift assignment operator `<<=`.
807  ///
808 @@ -770,19 +766,17 @@ macro_rules! shl_assign_impl_all {
809          shl_assign_impl! { $t, u16 }
810          shl_assign_impl! { $t, u32 }
811          shl_assign_impl! { $t, u64 }
812 -        shl_assign_impl! { $t, u128 }
813          shl_assign_impl! { $t, usize }
814  
815          shl_assign_impl! { $t, i8 }
816          shl_assign_impl! { $t, i16 }
817          shl_assign_impl! { $t, i32 }
818          shl_assign_impl! { $t, i64 }
819 -        shl_assign_impl! { $t, i128 }
820          shl_assign_impl! { $t, isize }
821      )*)
822  }
823  
824 -shl_assign_impl_all! { u8 u16 u32 u64 u128 usize i8 i16 i32 i64 i128 isize }
825 +shl_assign_impl_all! { u8 u16 u32 u64 usize i8 i16 i32 i64 isize }
826  
827  /// The right shift assignment operator `>>=`.
828  ///
829 @@ -838,16 +832,14 @@ macro_rules! shr_assign_impl_all {
830          shr_assign_impl! { $t, u16 }
831          shr_assign_impl! { $t, u32 }
832          shr_assign_impl! { $t, u64 }
833 -        shr_assign_impl! { $t, u128 }
834          shr_assign_impl! { $t, usize }
835  
836          shr_assign_impl! { $t, i8 }
837          shr_assign_impl! { $t, i16 }
838          shr_assign_impl! { $t, i32 }
839          shr_assign_impl! { $t, i64 }
840 -        shr_assign_impl! { $t, i128 }
841          shr_assign_impl! { $t, isize }
842      )*)
843  }
844  
845 -shr_assign_impl_all! { u8 u16 u32 u64 u128 usize i8 i16 i32 i64 i128 isize }
846 +shr_assign_impl_all! { u8 u16 u32 u64 usize i8 i16 i32 i64 isize }
847 diff --git a/src/libcore/sync/atomic.rs b/src/libcore/sync/atomic.rs
848 index 8992e51..c1babcd 100644
849 --- a/src/libcore/sync/atomic.rs
850 +++ b/src/libcore/sync/atomic.rs
851 @@ -1937,34 +1937,6 @@ atomic_int! {
852      8,
853      u64 AtomicU64 ATOMIC_U64_INIT
854  }
855 -#[cfg(target_has_atomic = "128")]
856 -atomic_int! {
857 -    unstable(feature = "integer_atomics", issue = "32976"),
858 -    unstable(feature = "integer_atomics", issue = "32976"),
859 -    unstable(feature = "integer_atomics", issue = "32976"),
860 -    unstable(feature = "integer_atomics", issue = "32976"),
861 -    unstable(feature = "integer_atomics", issue = "32976"),
862 -    unstable(feature = "integer_atomics", issue = "32976"),
863 -    "i128", "../../../std/primitive.i128.html",
864 -    "#![feature(integer_atomics)]\n\n",
865 -    atomic_min, atomic_max,
866 -    16,
867 -    i128 AtomicI128 ATOMIC_I128_INIT
868 -}
869 -#[cfg(target_has_atomic = "128")]
870 -atomic_int! {
871 -    unstable(feature = "integer_atomics", issue = "32976"),
872 -    unstable(feature = "integer_atomics", issue = "32976"),
873 -    unstable(feature = "integer_atomics", issue = "32976"),
874 -    unstable(feature = "integer_atomics", issue = "32976"),
875 -    unstable(feature = "integer_atomics", issue = "32976"),
876 -    unstable(feature = "integer_atomics", issue = "32976"),
877 -    "u128", "../../../std/primitive.u128.html",
878 -    "#![feature(integer_atomics)]\n\n",
879 -    atomic_umin, atomic_umax,
880 -    16,
881 -    u128 AtomicU128 ATOMIC_U128_INIT
882 -}
883  #[cfg(target_pointer_width = "16")]
884  macro_rules! ptr_width {
885      () => { 2 }
886 diff --git a/src/libcore/tests/iter.rs b/src/libcore/tests/iter.rs
887 index 0fa9974..75b44b1 100644
888 --- a/src/libcore/tests/iter.rs
889 +++ b/src/libcore/tests/iter.rs
890 @@ -215,8 +215,6 @@ fn test_iterator_step_by_nth_overflow() {
891      type Bigger = u32;
892      #[cfg(target_pointer_width = "32")]
893      type Bigger = u64;
894 -    #[cfg(target_pointer_width = "64")]
895 -    type Bigger = u128;
896  
897      #[derive(Clone)]
898      struct Test(Bigger);
899 @@ -1968,19 +1966,6 @@ fn test_step_replace_signed() {
900      assert_eq!(y, 5);
901  }
902  
903 -#[test]
904 -fn test_step_replace_no_between() {
905 -    let mut x = 4u128;
906 -    let y = x.replace_zero();
907 -    assert_eq!(x, 0);
908 -    assert_eq!(y, 4);
909 -
910 -    x = 5;
911 -    let y = x.replace_one();
912 -    assert_eq!(x, 1);
913 -    assert_eq!(y, 5);
914 -}
915 -
916  #[test]
917  fn test_rev_try_folds() {
918      let f = &|acc, x| i32::checked_add(2*acc, x);
919 diff --git a/src/libcore/tests/num/mod.rs b/src/libcore/tests/num/mod.rs
920 index a17c094..3c36d10 100644
921 --- a/src/libcore/tests/num/mod.rs
922 +++ b/src/libcore/tests/num/mod.rs
923 @@ -178,12 +178,10 @@ test_impl_from! { test_boolu8, bool, u8 }
924  test_impl_from! { test_boolu16, bool, u16 }
925  test_impl_from! { test_boolu32, bool, u32 }
926  test_impl_from! { test_boolu64, bool, u64 }
927 -test_impl_from! { test_boolu128, bool, u128 }
928  test_impl_from! { test_booli8, bool, i8 }
929  test_impl_from! { test_booli16, bool, i16 }
930  test_impl_from! { test_booli32, bool, i32 }
931  test_impl_from! { test_booli64, bool, i64 }
932 -test_impl_from! { test_booli128, bool, i128 }
933  
934  // Signed -> Float
935  test_impl_from! { test_i8f32, i8, f32 }
936 @@ -265,51 +263,35 @@ test_impl_try_from_always_ok! { test_try_u8u8, u8, u8 }
937  test_impl_try_from_always_ok! { test_try_u8u16, u8, u16 }
938  test_impl_try_from_always_ok! { test_try_u8u32, u8, u32 }
939  test_impl_try_from_always_ok! { test_try_u8u64, u8, u64 }
940 -test_impl_try_from_always_ok! { test_try_u8u128, u8, u128 }
941  test_impl_try_from_always_ok! { test_try_u8i16, u8, i16 }
942  test_impl_try_from_always_ok! { test_try_u8i32, u8, i32 }
943  test_impl_try_from_always_ok! { test_try_u8i64, u8, i64 }
944 -test_impl_try_from_always_ok! { test_try_u8i128, u8, i128 }
945  
946  test_impl_try_from_always_ok! { test_try_u16u16, u16, u16 }
947  test_impl_try_from_always_ok! { test_try_u16u32, u16, u32 }
948  test_impl_try_from_always_ok! { test_try_u16u64, u16, u64 }
949 -test_impl_try_from_always_ok! { test_try_u16u128, u16, u128 }
950  test_impl_try_from_always_ok! { test_try_u16i32, u16, i32 }
951  test_impl_try_from_always_ok! { test_try_u16i64, u16, i64 }
952 -test_impl_try_from_always_ok! { test_try_u16i128, u16, i128 }
953  
954  test_impl_try_from_always_ok! { test_try_u32u32, u32, u32 }
955  test_impl_try_from_always_ok! { test_try_u32u64, u32, u64 }
956 -test_impl_try_from_always_ok! { test_try_u32u128, u32, u128 }
957  test_impl_try_from_always_ok! { test_try_u32i64, u32, i64 }
958 -test_impl_try_from_always_ok! { test_try_u32i128, u32, i128 }
959  
960  test_impl_try_from_always_ok! { test_try_u64u64, u64, u64 }
961 -test_impl_try_from_always_ok! { test_try_u64u128, u64, u128 }
962 -test_impl_try_from_always_ok! { test_try_u64i128, u64, i128 }
963 -
964 -test_impl_try_from_always_ok! { test_try_u128u128, u128, u128 }
965  
966  test_impl_try_from_always_ok! { test_try_i8i8, i8, i8 }
967  test_impl_try_from_always_ok! { test_try_i8i16, i8, i16 }
968  test_impl_try_from_always_ok! { test_try_i8i32, i8, i32 }
969  test_impl_try_from_always_ok! { test_try_i8i64, i8, i64 }
970 -test_impl_try_from_always_ok! { test_try_i8i128, i8, i128 }
971  
972  test_impl_try_from_always_ok! { test_try_i16i16, i16, i16 }
973  test_impl_try_from_always_ok! { test_try_i16i32, i16, i32 }
974  test_impl_try_from_always_ok! { test_try_i16i64, i16, i64 }
975 -test_impl_try_from_always_ok! { test_try_i16i128, i16, i128 }
976  
977  test_impl_try_from_always_ok! { test_try_i32i32, i32, i32 }
978  test_impl_try_from_always_ok! { test_try_i32i64, i32, i64 }
979 -test_impl_try_from_always_ok! { test_try_i32i128, i32, i128 }
980  
981  test_impl_try_from_always_ok! { test_try_i64i64, i64, i64 }
982 -test_impl_try_from_always_ok! { test_try_i64i128, i64, i128 }
983 -
984 -test_impl_try_from_always_ok! { test_try_i128i128, i128, i128 }
985  
986  test_impl_try_from_always_ok! { test_try_usizeusize, usize, usize }
987  test_impl_try_from_always_ok! { test_try_isizeisize, isize, isize }
988 diff --git a/src/libcore/time.rs b/src/libcore/time.rs
989 index a751965..5d162cb 100644
990 --- a/src/libcore/time.rs
991 +++ b/src/libcore/time.rs
992 @@ -21,7 +21,6 @@ const NANOS_PER_MILLI: u32 = 1_000_000;
993  const NANOS_PER_MICRO: u32 = 1_000;
994  const MILLIS_PER_SEC: u64 = 1_000;
995  const MICROS_PER_SEC: u64 = 1_000_000;
996 -const MAX_NANOS_F64: f64 = ((u64::MAX as u128 + 1)*(NANOS_PER_SEC as u128)) as f64;
997  
998  /// The duration of one second.
999  #[unstable(feature = "duration_constants", issue = "57391")]
1000 @@ -276,54 +275,6 @@ impl Duration {
1001      #[inline]
1002      pub const fn subsec_nanos(&self) -> u32 { self.nanos }
1003  
1004 -    /// Returns the total number of whole milliseconds contained by this `Duration`.
1005 -    ///
1006 -    /// # Examples
1007 -    ///
1008 -    /// ```
1009 -    /// use std::time::Duration;
1010 -    ///
1011 -    /// let duration = Duration::new(5, 730023852);
1012 -    /// assert_eq!(duration.as_millis(), 5730);
1013 -    /// ```
1014 -    #[stable(feature = "duration_as_u128", since = "1.33.0")]
1015 -    #[inline]
1016 -    pub const fn as_millis(&self) -> u128 {
1017 -        self.secs as u128 * MILLIS_PER_SEC as u128 + (self.nanos / NANOS_PER_MILLI) as u128
1018 -    }
1019 -
1020 -    /// Returns the total number of whole microseconds contained by this `Duration`.
1021 -    ///
1022 -    /// # Examples
1023 -    ///
1024 -    /// ```
1025 -    /// use std::time::Duration;
1026 -    ///
1027 -    /// let duration = Duration::new(5, 730023852);
1028 -    /// assert_eq!(duration.as_micros(), 5730023);
1029 -    /// ```
1030 -    #[stable(feature = "duration_as_u128", since = "1.33.0")]
1031 -    #[inline]
1032 -    pub const fn as_micros(&self) -> u128 {
1033 -        self.secs as u128 * MICROS_PER_SEC as u128 + (self.nanos / NANOS_PER_MICRO) as u128
1034 -    }
1035 -
1036 -    /// Returns the total number of nanoseconds contained by this `Duration`.
1037 -    ///
1038 -    /// # Examples
1039 -    ///
1040 -    /// ```
1041 -    /// use std::time::Duration;
1042 -    ///
1043 -    /// let duration = Duration::new(5, 730023852);
1044 -    /// assert_eq!(duration.as_nanos(), 5730023852);
1045 -    /// ```
1046 -    #[stable(feature = "duration_as_u128", since = "1.33.0")]
1047 -    #[inline]
1048 -    pub const fn as_nanos(&self) -> u128 {
1049 -        self.secs as u128 * NANOS_PER_SEC as u128 + self.nanos as u128
1050 -    }
1051 -
1052      /// Checked `Duration` addition. Computes `self + other`, returning [`None`]
1053      /// if overflow occurred.
1054      ///
1055 @@ -482,80 +433,6 @@ impl Duration {
1056          (self.secs as f64) + (self.nanos as f64) / (NANOS_PER_SEC as f64)
1057      }
1058  
1059 -    /// Creates a new `Duration` from the specified number of seconds.
1060 -    ///
1061 -    /// # Panics
1062 -    /// This constructor will panic if `secs` is not finite, negative or overflows `Duration`.
1063 -    ///
1064 -    /// # Examples
1065 -    /// ```
1066 -    /// #![feature(duration_float)]
1067 -    /// use std::time::Duration;
1068 -    ///
1069 -    /// let dur = Duration::from_float_secs(2.7);
1070 -    /// assert_eq!(dur, Duration::new(2, 700_000_000));
1071 -    /// ```
1072 -    #[unstable(feature = "duration_float", issue = "54361")]
1073 -    #[inline]
1074 -    pub fn from_float_secs(secs: f64) -> Duration {
1075 -        let nanos =  secs * (NANOS_PER_SEC as f64);
1076 -        if !nanos.is_finite() {
1077 -            panic!("got non-finite value when converting float to duration");
1078 -        }
1079 -        if nanos >= MAX_NANOS_F64 {
1080 -            panic!("overflow when converting float to duration");
1081 -        }
1082 -        if nanos < 0.0 {
1083 -            panic!("underflow when converting float to duration");
1084 -        }
1085 -        let nanos =  nanos as u128;
1086 -        Duration {
1087 -            secs: (nanos / (NANOS_PER_SEC as u128)) as u64,
1088 -            nanos: (nanos % (NANOS_PER_SEC as u128)) as u32,
1089 -        }
1090 -    }
1091 -
1092 -    /// Multiply `Duration` by `f64`.
1093 -    ///
1094 -    /// # Panics
1095 -    /// This method will panic if result is not finite, negative or overflows `Duration`.
1096 -    ///
1097 -    /// # Examples
1098 -    /// ```
1099 -    /// #![feature(duration_float)]
1100 -    /// use std::time::Duration;
1101 -    ///
1102 -    /// let dur = Duration::new(2, 700_000_000);
1103 -    /// assert_eq!(dur.mul_f64(3.14), Duration::new(8, 478_000_000));
1104 -    /// assert_eq!(dur.mul_f64(3.14e5), Duration::new(847_800, 0));
1105 -    /// ```
1106 -    #[unstable(feature = "duration_float", issue = "54361")]
1107 -    #[inline]
1108 -    pub fn mul_f64(self, rhs: f64) -> Duration {
1109 -        Duration::from_float_secs(rhs * self.as_float_secs())
1110 -    }
1111 -
1112 -    /// Divide `Duration` by `f64`.
1113 -    ///
1114 -    /// # Panics
1115 -    /// This method will panic if result is not finite, negative or overflows `Duration`.
1116 -    ///
1117 -    /// # Examples
1118 -    /// ```
1119 -    /// #![feature(duration_float)]
1120 -    /// use std::time::Duration;
1121 -    ///
1122 -    /// let dur = Duration::new(2, 700_000_000);
1123 -    /// assert_eq!(dur.div_f64(3.14), Duration::new(0, 859_872_611));
1124 -    /// // note that truncation is used, not rounding
1125 -    /// assert_eq!(dur.div_f64(3.14e5), Duration::new(0, 8_598));
1126 -    /// ```
1127 -    #[unstable(feature = "duration_float", issue = "54361")]
1128 -    #[inline]
1129 -    pub fn div_f64(self, rhs: f64) -> Duration {
1130 -        Duration::from_float_secs(self.as_float_secs() / rhs)
1131 -    }
1132 -
1133      /// Divide `Duration` by `Duration` and return `f64`.
1134      ///
1135      /// # Examples
1136 diff --git a/src/libstd/lib.rs b/src/libstd/lib.rs
1137 index f395813..d81f80b 100644
1138 --- a/src/libstd/lib.rs
1139 +++ b/src/libstd/lib.rs
1140 @@ -401,8 +401,6 @@ pub use core::i16;
1141  pub use core::i32;
1142  #[stable(feature = "rust1", since = "1.0.0")]
1143  pub use core::i64;
1144 -#[stable(feature = "i128", since = "1.26.0")]
1145 -pub use core::i128;
1146  #[stable(feature = "rust1", since = "1.0.0")]
1147  pub use core::usize;
1148  #[stable(feature = "rust1", since = "1.0.0")]
1149 @@ -435,8 +433,6 @@ pub use alloc_crate::string;
1150  pub use alloc_crate::vec;
1151  #[stable(feature = "rust1", since = "1.0.0")]
1152  pub use core::char;
1153 -#[stable(feature = "i128", since = "1.26.0")]
1154 -pub use core::u128;
1155  #[stable(feature = "core_hint", since = "1.27.0")]
1156  pub use core::hint;
1157  
1158 diff --git a/src/libstd/net/ip.rs b/src/libstd/net/ip.rs
1159 index f98113e..6c41e4e 100644
1160 --- a/src/libstd/net/ip.rs
1161 +++ b/src/libstd/net/ip.rs
1162 @@ -1382,26 +1382,6 @@ impl FromInner<c::in6_addr> for Ipv6Addr {
1163      }
1164  }
1165  
1166 -#[stable(feature = "i128", since = "1.26.0")]
1167 -impl From<Ipv6Addr> for u128 {
1168 -    fn from(ip: Ipv6Addr) -> u128 {
1169 -        let ip = ip.segments();
1170 -        ((ip[0] as u128) << 112) + ((ip[1] as u128) << 96) + ((ip[2] as u128) << 80) +
1171 -            ((ip[3] as u128) << 64) + ((ip[4] as u128) << 48) + ((ip[5] as u128) << 32) +
1172 -            ((ip[6] as u128) << 16) + (ip[7] as u128)
1173 -    }
1174 -}
1175 -#[stable(feature = "i128", since = "1.26.0")]
1176 -impl From<u128> for Ipv6Addr {
1177 -    fn from(ip: u128) -> Ipv6Addr {
1178 -        Ipv6Addr::new(
1179 -            (ip >> 112) as u16, (ip >> 96) as u16, (ip >> 80) as u16,
1180 -            (ip >> 64) as u16, (ip >> 48) as u16, (ip >> 32) as u16,
1181 -            (ip >> 16) as u16, ip as u16,
1182 -        )
1183 -    }
1184 -}
1185 -
1186  #[stable(feature = "ipv6_from_octets", since = "1.9.0")]
1187  impl From<[u8; 16]> for Ipv6Addr {
1188      fn from(octets: [u8; 16]) -> Ipv6Addr {
1189 diff --git a/src/libstd/num.rs b/src/libstd/num.rs
1190 index c80b9a5..e32a6b3 100644
1191 --- a/src/libstd/num.rs
1192 +++ b/src/libstd/num.rs
1193 @@ -12,7 +12,7 @@ pub use core::num::{FpCategory, ParseIntError, ParseFloatError, TryFromIntError}
1194  pub use core::num::Wrapping;
1195  
1196  #[stable(feature = "nonzero", since = "1.28.0")]
1197 -pub use core::num::{NonZeroU8, NonZeroU16, NonZeroU32, NonZeroU64, NonZeroU128, NonZeroUsize};
1198 +pub use core::num::{NonZeroU8, NonZeroU16, NonZeroU32, NonZeroU64, NonZeroUsize};
1199  
1200  #[cfg(test)] use fmt;
1201  #[cfg(test)] use ops::{Add, Sub, Mul, Div, Rem};
1202 diff --git a/src/libstd/panic.rs b/src/libstd/panic.rs
1203 index d27f6ca..8ac2a44 100644
1204 --- a/src/libstd/panic.rs
1205 +++ b/src/libstd/panic.rs
1206 @@ -254,9 +254,6 @@ impl RefUnwindSafe for atomic::AtomicI32 {}
1207  #[cfg(target_has_atomic = "64")]
1208  #[unstable(feature = "integer_atomics", issue = "32976")]
1209  impl RefUnwindSafe for atomic::AtomicI64 {}
1210 -#[cfg(target_has_atomic = "128")]
1211 -#[unstable(feature = "integer_atomics", issue = "32976")]
1212 -impl RefUnwindSafe for atomic::AtomicI128 {}
1213  
1214  #[cfg(target_has_atomic = "ptr")]
1215  #[stable(feature = "unwind_safe_atomic_refs", since = "1.14.0")]
1216 @@ -273,9 +270,6 @@ impl RefUnwindSafe for atomic::AtomicU32 {}
1217  #[cfg(target_has_atomic = "64")]
1218  #[unstable(feature = "integer_atomics", issue = "32976")]
1219  impl RefUnwindSafe for atomic::AtomicU64 {}
1220 -#[cfg(target_has_atomic = "128")]
1221 -#[unstable(feature = "integer_atomics", issue = "32976")]
1222 -impl RefUnwindSafe for atomic::AtomicU128 {}
1223  
1224  #[cfg(target_has_atomic = "8")]
1225  #[stable(feature = "unwind_safe_atomic_refs", since = "1.14.0")]
1226 -- 
1227 2.17.2 (Apple Git-113)
1228