Simon Sapin
e2aef92c19
Stabilize #[repr(transparent)]
...
Tracking issue FCP: https://github.com/rust-lang/rust/issues/43036#issuecomment-394094318
Reference PR: https://github.com/rust-lang-nursery/reference/pull/353
2018-06-12 06:49:07 +02:00
bors
4367e41ea2
Auto merge of #51241 - glandium:globalalloc, r=sfackler,SimonSapin
...
Stabilize GlobalAlloc and #[global_allocator]
This PR implements the changes discussed in https://github.com/rust-lang/rust/issues/49668#issuecomment-393263510
Fixes #49668
Fixes #27389
This does not change the default global allocator: #36963
2018-06-12 00:36:21 +00:00
Simon Sapin
8c30c51686
Remove deprecated heap modules
...
The heap.rs file was already unused.
2018-06-11 13:47:27 -07:00
tinaun
6e5c18e8dc
add a few blanket future impls to std
2018-06-08 17:56:59 -04:00
bors
19d0b539aa
Auto merge of #51263 - cramertj:futures-in-core, r=aturon
...
Add Future and task system to the standard library
This adds preliminary versions of the `std::future` and `std::task` modules in order to unblock development of async/await (https://github.com/rust-lang/rust/issues/50547 ). These shouldn't be considered as final forms of these libraries-- design questions about the libraries should be left on https://github.com/rust-lang/rfcs/pull/2418 . Once that RFC (or a successor) is merged, these APIs will be adjusted as necessary.
r? @aturon
2018-06-06 19:42:19 +00:00
Taylor Cramer
a6055c8859
Add Future and task system to the standard library
2018-06-06 10:41:52 -07:00
Thayne McCombs
9d770e9959
Stabilize SliceIndex trait.
...
Fixes #35729
According to recommendations in
https://github.com/rust-lang/rust/issues/35729#issuecomment-377784884
2018-06-01 00:04:26 -06:00
Mark Simulacrum
9e3432447a
Switch to 1.26 bootstrap compiler
2018-05-17 08:47:25 -06:00
Simon Sapin
89d9ca9b50
Stabilize num::NonZeroU*
...
Tracking issue: https://github.com/rust-lang/rust/issues/49137
2018-05-16 19:11:31 +02:00
F001
160063aad2
make String::new()
const
2018-05-05 16:38:27 +08:00
bors
a4a7947259
Auto merge of #49724 - kennytm:range-inc-start-end-methods, r=Kimundi
...
Introduce RangeInclusive::{new, start, end} methods and make the fields private.
cc #49022
2018-05-01 10:10:46 +00:00
bors
357bf00f1c
Auto merge of #48925 - zackmdavis:fn_must_stabilize, r=nikomatsakis
...
stabilize `#[must_use]` for functions and must-use comparison operators (RFC 1940)
r? @nikomatsakis
2018-04-30 22:02:33 +00:00
kennytm
b88c152784
Rollup merge of #50233 - mark-i-m:const_vec, r=kennytm
...
Make `Vec::new` a `const fn`
`RawVec::empty/_in` are a hack. They're there because `if size_of::<T> == 0 { !0 } else { 0 }` is not allowed in `const` yet. However, because `RawVec` is unstable, the `empty/empty_in` constructors can be removed when #49146 is done...
2018-05-01 01:18:36 +08:00
kennytm
fba903a435
Make the fields of RangeInclusive private.
...
Added new()/start()/end() methods to RangeInclusive.
Changed the lowering of `..=` to use RangeInclusive::new().
2018-04-30 21:01:13 +08:00
Zack M. Davis
3dbdccc6a9
stabilize #[must_use]
for functions and must-use operators
...
This is in the matter of RFC 1940 and tracking issue #43302 .
2018-04-28 20:32:49 -07:00
Mark Mansi
c122b3a42c
not insta-stable
2018-04-26 22:38:39 -05:00
Matthias Krüger
5d37ba1990
mark std::str::replacen and std::str::replace as #[must_use].
2018-04-23 21:44:44 +02:00
Simon Sapin
70fdd1b5c0
Make the unstable StrExt and SliceExt traits private to libcore in not(stage0)
...
`Float` still needs to be public for libcore unit tests.
2018-04-21 09:47:38 +02:00
Simon Sapin
f0705bf033
Replace StrExt with inherent str methods in libcore
2018-04-21 09:47:37 +02:00
Simon Sapin
90f29fbdb1
Replace SliceExt with inherent [T] methods in libcore
2018-04-21 09:45:18 +02:00
tinaun
b84baf2378
stabilize nonnull_cast
feature
2018-04-17 01:22:28 -04:00
tinaun
78a8c25703
stabilize swap_with_slice
feature
2018-04-17 00:49:24 -04:00
tinaun
edc412c5a9
stabilize slice_rsplit
feature
2018-04-17 00:48:23 -04:00
Mike Hommey
fddf51ee0b
Use NonNull<Void> instead of *mut u8 in the Alloc trait
...
Fixes #49608
2018-04-12 22:53:22 +02:00
Simon Sapin
eae0d46893
Restore Global.oom() functionality
...
… now that #[global_allocator] does not define a symbol for it
2018-04-12 22:53:21 +02:00
Simon Sapin
5e5a0c21fc
Separate alloc::heap::Alloc trait for stage0 #[global_allocator]
2018-04-12 22:52:54 +02:00
Simon Sapin
743c29bdc5
Actually deprecate heap modules.
2018-04-12 22:52:47 +02:00
Simon Sapin
09e8db1e4f
Rename heap
modules in the core, alloc, and std crates to alloc
2018-04-12 22:52:47 +02:00
bors
9afed64645
Auto merge of #49551 - scottmcm:deprecate-offset_to, r=KodrAus
...
Deprecate offset_to; switch core&alloc to using offset_from instead
Bonus: might make code than uses `.len()` on slice iterators faster
cc https://github.com/rust-lang/rust/issues/41079
2018-04-12 08:29:10 +00:00
Simon Sapin
ef41788cf3
Mark the rest of the unicode
feature flag as perma-unstable.
2018-04-12 00:13:53 +02:00
Simon Sapin
b2027ef17c
Deprecate the std_unicode crate
2018-04-12 00:13:51 +02:00
Mark Simulacrum
c115cc655c
Move deny(warnings) into rustbuild
...
This permits easier iteration without having to worry about warnings
being denied.
Fixes #49517
2018-04-08 16:59:14 -06:00
Alex Crichton
8958815916
Bump the bootstrap compiler to 1.26.0 beta
...
Holy cow that's a lot of `cfg(stage0)` removed and a lot of new stable language
features!
2018-04-05 07:13:45 -07:00
bors
01d0be9925
Auto merge of #48851 - petrochenkov:genparattr, r=nikomatsakis
...
Stabilize attributes on generic parameters
Closes https://github.com/rust-lang/rust/issues/48848
2018-04-05 07:31:56 +00:00
Vadim Petrochenkov
1a2a23447e
Stabilize attributes on generic parameters
2018-04-05 02:19:56 +03:00
kennytm
dd2ec6a099
Rollup merge of #49607 - cuviper:stable-iter-1.27, r=alexcrichton
...
Stabilize iterator methods in 1.27
- Closes #39480 , feature `iter_rfind`
- `DoubleEndedIterator::rfind`
- Closes #44705 , feature `iter_rfold`
- `DoubleEndedIterator::rfold`
- Closes #45594 , feature `iterator_try_fold`
- `Iterator::try_fold`
- `Iterator::try_for_each`
- `DoubleEndedIterator::try_rfold`
2018-04-04 11:07:24 +02:00
Aidan Hobson Sayers
9b5859aea1
Remove all unstable placement features
...
Closes #22181 , #27779
2018-04-03 11:02:34 +02:00
Josh Stone
1c8d10bce5
Stabilize iter_rfold in 1.27.0
2018-04-02 16:33:09 -07:00
Scott McMurray
b394165538
Deprecate offset_to; switch core&alloc to using offset_from instead
...
Bonus: might make code than uses `.len()` on slice iterators faster
2018-03-31 22:35:37 -07:00
bors
8dd24c8ed4
Auto merge of #49481 - SimonSapin:core-heap, r=alexcrichton
...
Move the alloc::allocator module to core::heap
This is the `Alloc` trait and its dependencies.
2018-03-31 09:11:21 +00:00
Simon Sapin
94d1970bba
Move the alloc::allocator module to core::heap
...
This is the `Alloc` trait and its dependencies.
2018-03-29 14:58:07 +02:00
Simon Sapin
16d3ba1b23
Move RangeArguments to {core::std}::ops and rename to RangeBounds
...
These unstable items are deprecated:
* The `std::collections::range::RangeArgument` reexport
* The `std::collections::range` module.
2018-03-29 13:12:49 +02:00
Simon Sapin
c3a63970de
Move alloc::Bound to {core,std}::ops
...
The stable reexport `std::collections::Bound` is now deprecated.
Another deprecated reexport could be added in `alloc`,
but that crate is unstable.
2018-03-29 13:12:49 +02:00
Mark Mansi
7ce8191775
Stabilize i128_type
2018-03-26 08:36:50 -05:00
bors
b99172311c
Auto merge of #48516 - petrochenkov:stabsl, r=nikomatsakis
...
Stabilize slice patterns without `..`
And merge `feature(advanced_slice_patterns)` into `feature(slice_patterns)`.
The detailed description can be found in https://github.com/rust-lang/rust/issues/48836 .
Slice patterns were unstable for long time since before 1.0 due to many bugs in the implementation, now this stabilization is possible primarily due to work of @arielb1 who [wrote the new MIR-based implementation of slice patterns](https://github.com/rust-lang/rust/pull/32202 ) and @mikhail-m1 who [fixed one remaining class of codegen issues](https://github.com/rust-lang/rust/pull/47926 ).
Reference PR https://github.com/rust-lang-nursery/reference/pull/259
cc https://github.com/rust-lang/rust/issues/23121
fixes #48836
2018-03-20 07:42:19 +00:00
Vadim Petrochenkov
7c90189e13
Stabilize slice patterns without ..
...
Merge `feature(advanced_slice_patterns)` into `feature(slice_patterns)`
2018-03-20 02:27:40 +03:00
bors
6bfa7d02d6
Auto merge of #49058 - withoutboats:pin, r=cramertj
...
Pin, Unpin, PinBox
Implementing rust-lang/rfcs#2349 (do not merge until RFC is merged)
@bors r? @cramertj
2018-03-19 23:01:37 +00:00
boats
e3c5f6958f
Add liballoc APIs.
2018-03-15 13:01:28 -07:00
bors
3926453944
Auto merge of #47813 - kennytm:stable-incl-range, r=nrc
...
Stabilize inclusive range (`..=`)
Stabilize the followings:
* `inclusive_range` — The `std::ops::RangeInclusive` and `std::ops::RangeInclusiveTo` types, except its fields (tracked by #49022 separately).
* `inclusive_range_syntax` — The `a..=b` and `..=b` expression syntax
* `dotdoteq_in_patterns` — Using `a..=b` in a pattern
cc #28237
r? @rust-lang/lang
2018-03-15 16:00:40 +00:00
kennytm
939cfa251a
Keep the fields of RangeInclusive unstable.
2018-03-15 17:01:30 +08:00