about summary refs log tree commit diff
path: root/src/libcore/lib.rs
AgeCommit message (Collapse)AuthorLines
2019-09-09Auto merge of #63118 - Centril:stabilize-bind-by-move, r=matthewjasperbors-1/+1
Stabilize `bind_by_move_pattern_guards` in Rust 1.39.0 Closes https://github.com/rust-lang/rust/issues/15287. After stabilizing `#![feature(bind_by_move_pattern_guards)]`, you can now use bind-by-move bindings in patterns and take references to those bindings in `if` guards of `match` expressions. For example, the following now becomes legal: ```rust fn main() { let array: Box<[u8; 4]> = Box::new([1, 2, 3, 4]); match array { nums // ---- `nums` is bound by move. if nums.iter().sum::<u8>() == 10 // ^------ `.iter()` implicitly takes a reference to `nums`. => { drop(nums); // --------- Legal as `nums` was bound by move and so we have ownership. } _ => unreachable!(), } } ``` r? @matthewjasper
2019-09-08bootstrap -> boostrap_stdarch_ignore_thisMazdak Farrokhzad-1/+1
2019-09-08Dont use gate bind_by_move_pattern_guards internally.Mazdak Farrokhzad-1/+1
2019-09-07Move `libcore/bool/mod.rs` to `libcore/bool.rs`varkor-1/+1
2019-09-07Add "bool" lang itemvarkor-0/+1
2019-08-14Handle cfg(bootstrap) throughoutMark Rousskov-2/+2
2019-08-08Use associated_type_bounds where applicable - closes #61738Ilija Tovilo-0/+1
2019-07-30Allow 'incomplete_features' in libcore/alloc.Mazdak Farrokhzad-0/+1
2019-07-28Remove lint annotations in specific crates that are already enforced by ↵Vadim Petrochenkov-2/+0
rustbuild Remove some random unnecessary lint `allow`s
2019-07-25Rollup merge of #62978 - LukasKalbertodt:remove-array-impl-bootstrap-cfg, ↵Mazdak Farrokhzad-1/+1
r=Mark-Simulacrum Remove `cfg(bootstrap)` code for array implementations In https://github.com/rust-lang/rust/pull/62435 ("Use const generics for array impls [part 1]") the old macro-based implementations were not removed but still used with `cfg(bootstrap)` since the bootstrap compiler had some problems with const generics at the time. This does not seem to be the case anymore, so there is no reason to keep the old code. Unfortunately, the diff is pretty ugly because much of the code was indented by one level before. The change is pretty trivial, though. PS: I did not run the full test suite locally. There are 40°C outside and 31°C inside my room. I don't want my notebook to melt. I hope that CI is green. r? @scottmcm
2019-07-25Remove `cfg(bootstrap)` code for array implementationsLukas Kalbertodt-1/+1
In PR #62435 ("Use const generics for array impls [part 1]") the old macro-based implementations were not removed but still used with `cfg(bootstrap)` since the bootstrap compiler had some problems with const generics at the time. This does not seem to be the case anymore, so there is no reason to keep the old code.
2019-07-22add support for hexagon-unknown-linux-muslBrian Cain-0/+1
2019-07-15Add rtm and f16c features to libcoregnzlbg-0/+2
2019-07-15Update the stdarch submodulegnzlbg-2/+2
2019-07-07Auto merge of #62435 - scottmcm:constrained-array-impls, r=centrilbors-0/+1
Use const generics for array impls [part 1] Part 1 of #61415, following the plan in https://github.com/rust-lang/rust/issues/61415#issuecomment-497922482 Found a way that works 🙃
2019-07-07Use const generics for array impls, restricted to 0..=32Scott McMurray-0/+1
- uses a never-stable core::array::LengthAtMost32 to bound the impls - includes a custom error message to avoid mentioning LengthAtMost32 too often - doesn't use macros for the slice implementations to avoid #62433
2019-07-06Improve documentation for built-in macrosVadim Petrochenkov-0/+1
2019-07-05Rollup merge of #62133 - petrochenkov:norustc, r=eddybMazdak Farrokhzad-0/+1
Feature gate `rustc` attributes harder Fixes https://github.com/rust-lang/rust/issues/62116
2019-07-04Switch master to 1.38Mark Rousskov-1/+1
2019-07-01Enable mem_take feature in relevant cratesChris Gregory-0/+1
2019-06-30Make sure `#[rustc_doc_only_macro]` and other rustc attributes are registeredVadim Petrochenkov-0/+1
2019-06-22Auto merge of #61874 - jonas-schievink:remove-rem-output-default, r=Centrilbors-1/+0
Remove the default type of `Rem::Output` Associated type defaults are not yet stable, and `Rem` is the only trait that specifies a default. Let's see what breaks when it's removed. cc https://github.com/rust-lang/rust/pull/61812#issuecomment-502394566 cc @Centril @bors try
2019-06-18Make MaybeUninit #[repr(transparent)]Michael Bradshaw-0/+1
Tracking issue: #60405
2019-06-15Remove the default type of `Rem::Output`Jonas Schievink-1/+0
2019-06-08Remove unused `#![feature(custom_attribute)]`sVadim Petrochenkov-1/+0
2019-06-06Rollup merge of #61376 - czipperz:bound-cloned, r=sfacklerMazdak Farrokhzad-0/+1
Add Bound::cloned() Suggested by #61356
2019-05-31Enable feature bound_clonedChris Gregory-0/+1
2019-05-31Stabilize reverse_bits featureLzu Tao-1/+0
2019-05-20stabilize core parts of MaybeUninit and deprecate mem::uninitialized in the ↵Ralf Jung-1/+1
future Also expand the documentation a bit
2019-04-19libcore: deny more...Mazdak Farrokhzad-1/+0
2019-04-18libcore => 2018Taiki Endo-0/+4
2019-04-14bump stdsimd; make intra_doc_link_resolution_failure an error againRalf Jung-1/+1
2019-02-25Stabilize `unrestricted_attribute_tokens`Vadim Petrochenkov-1/+0
2019-02-18Auto merge of #58373 - RalfJung:maybe-uninit, r=gnzlbgbors-0/+1
update stdsimd and remove now-unused MaybeUninit::into_inner That's a huge diff for stdsimd... Cc @gnzlbg @alexcrichton
2019-02-14make Centril happyRalf Jung-1/+1
2019-02-14split MaybeUninit into several features, expand docs a bitRalf Jung-1/+1
2019-02-14add missing feature flagRalf Jung-0/+1
2019-02-13Rollup merge of #58405 - gnzlbg:remove_unused_macros, r=alexcrichtonMazdak Farrokhzad-14/+0
Remove some dead code from libcore These macros are not required to glue the `core_arch` crate anymore.
2019-02-12Remove some dead code from libcoregnzlbg-14/+0
These macros are not required to glue the `core_arch` crate anymore.
2019-02-12Add internal impl_fn_for_zst macro for "named closure types"Simon Sapin-0/+1
2019-02-10Rollup merge of #57259 - king6cong:master, r=alexcrichtonGuillaume Gomez-1/+1
Update reference of rlibc crate to compiler-builtins crate None
2019-02-07Remove images' url to make it work even without internet connectionGuillaume Gomez-3/+1
2019-01-30Add suggestions to deprecation lintsOliver Scherer-0/+1
2019-01-29Auto merge of #57808 - gnzlbg:ustdsimd, r=gnzlbgbors-8/+9
Update stdsimd This is the companion PR to https://github.com/rust-lang-nursery/stdsimd/pull/640 r? @alexcrichton
2019-01-29Update stdsimdgnzlbg-8/+9
2019-01-28Use warn() for extra diagnostics; with -D warnings this leads to errorsRalf Jung-3/+3
This is needed to properly respect "deny_warnings = false" in config.toml
2019-01-28add macro for creating uninitialized arrayRalf Jung-0/+1
2019-01-28avoid mem::uninitialized in BTreeMapRalf Jung-1/+1
2019-01-28libcore: avoid mem::uninitialized and raw ptr castsRalf Jung-0/+1
2019-01-27Auto merge of #56932 - clarcharr:iter_refactor, r=Centrilbors-1/+0
Refactor core::iter module A while back, I refactored `core::ops` in #42523 because the module had become a giant mess and was difficult to modify. Now, I'm doing the same with the `core::iter` module. Like the `core::ops` refactor, things have been split up into multiple commits to make rebasing easier, and so that you can follow changes. Although the diffs are hard to decipher, the only actual code changes I've made in the first few commits are to modify exports and imports. I save all of the actual code refactoring, e.g. modifying what methods are called, for the end.