3016626c3a
Although the set of APIs being stabilized this release is relatively small, the trains keep going! Listed below are the APIs in the standard library which have either transitioned from unstable to stable or those from unstable to deprecated. Stable * `BTreeMap::{append, split_off}` * `BTreeSet::{append, split_off}` * `Cell::get_mut` * `RefCell::get_mut` * `BinaryHeap::append` * `{f32, f64}::{to_degrees, to_radians}` - libcore stabilizations mirroring past libstd stabilizations * `Iterator::sum` * `Iterator::product` Deprecated * `{f32, f64}::next_after` * `{f32, f64}::integer_decode` * `{f32, f64}::ldexp` * `{f32, f64}::frexp` * `num::One` * `num::Zero` Added APIs (all unstable) * `iter::Sum` * `iter::Product` * `iter::Step` - a few methods were added to accomodate deprecation of One/Zero Removed APIs * `From<Range<T>> for RangeInclusive<T>` - everything about `RangeInclusive` is unstable Closes #27739 Closes #27752 Closes #32526 Closes #33444 Closes #34152 cc #34529 (new tracking issue)
28 lines
931 B
Rust
28 lines
931 B
Rust
// Copyright 2014 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.
|
|
|
|
// Test range syntax - type errors.
|
|
|
|
pub fn main() {
|
|
// Mixed types.
|
|
let _ = 0u32..10i32;
|
|
//~^ ERROR mismatched types
|
|
|
|
// Bool => does not implement iterator.
|
|
for i in false..true {}
|
|
//~^ ERROR `bool: std::iter::Step` is not satisfied
|
|
//~^^ ERROR `for<'a> &'a bool: std::ops::Add` is not satisfied
|
|
|
|
// Unsized type.
|
|
let arr: &[_] = &[1, 2, 3];
|
|
let range = *arr..;
|
|
//~^ ERROR `[_]: std::marker::Sized` is not satisfied
|
|
}
|