about summary refs log tree commit diff
path: root/src
AgeCommit message (Collapse)AuthorLines
2019-02-13Rollup merge of #57815 - dotdash:asserts, r=sfacklerMazdak Farrokhzad-4/+16
Speed up the fast path for assert_eq! and assert_ne! Currently, the panic!() calls directly borrow the value bindings. This causes those bindings to always be initialized, i.e. they're initialized even before the values are even compared. This causes noticeable overhead in what should be a really cheap operation. By performing a reborrow of the value in the call to panic!(), we allow LLVM to optimize that code, so that the extra borrow only happens in the error case. We could achieve the same result by dereferencing the values passed to panic!(), as the format machinery borrows them anyway, but this causes assertions to fail to compile if one of the values is unsized, i.e. it would be a breaking change.
2019-02-13Rollup merge of #57693 - king6cong:word, r=CentrilMazdak Farrokhzad-1/+1
Doc rewording None
2019-02-12compute is_partial_move outside of the move_site loop for clarityClint Frederickson-2/+9
2019-02-12Auto merge of #58051 - SimonSapin:str_escape, r=alexcrichtonbors-199/+326
Stabilize str::escape_* methods with new return types… … that implement `Display` and `Iterator<Item=char>`, as proposed in FCP: https://github.com/rust-lang/rust/issues/27791#issuecomment-376864727
2019-02-12[CI] Update dist-x86_64-linux to GCC 5.5Josh Stone-22/+12
This also updates dist-i686-linux, since it borrows the same scripts. While we're at it, update llvm+clang+lld to llvm-project 8.0.0-rc2.
2019-02-13Add Instant::checked_duration_since, address #58402.Vitaly _Vi Shukela-0/+31
2019-02-12Auto merge of #58341 - alexreg:cosmetic-2-doc-comments, r=steveklabnikbors-2822/+2850
Cosmetic improvements to doc comments This has been factored out from https://github.com/rust-lang/rust/pull/58036 to only include changes to documentation comments (throughout the rustc codebase). r? @steveklabnik Once you're happy with this, maybe we could get it through with r=1, so it doesn't constantly get invalidated? (I'm not sure this will be an issue, but just in case...) Anyway, thanks for your advice so far!
2019-02-12respect alternate flag when formatting impl traitAndy Russell-30/+43
2019-02-12Check user type annotations for range patterns.David Wood-85/+176
This commit builds on the fix from #58161 (which fixed miscompilation caused by the introduction of `AscribeUserType` patterns for associated constants) to start checking these patterns are well-formed for ranges (previous fix just ignored them so that miscompilation wouldn't occur).
2019-02-12[CI] Update crosstool-ng builders to GCC 5.2Josh Stone-89/+300
2019-02-12Fix some rebasing fallout regarding xLTO.Michael Woerister-1/+1
2019-02-12Add riscv64gc-unknown-none-elf targetVadim Kaushan-0/+34
2019-02-12Add riscv64imac-unknown-none-elf targetVadim Kaushan-0/+34
2019-02-12Update LLVM: apply patches for RISC-V 64-bit supportVadim Kaushan-0/+0
2019-02-13Fix rebase failTaiki Endo-1/+1
2019-02-13Cleanup importsTaiki Endo-69/+72
2019-02-13Rename rustc_errors dependency in rust 2018 cratesTaiki Endo-82/+72
2019-02-12Fix rustc_driver swallowing errors when compilation is stoppedgnzlbg-0/+5
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 documentation about -Clinker-plugin-lto to rustc book.Michael Woerister-1/+110
2019-02-12use Ubuntu keyserver for CloudABI portsAndy Russell-5/+4
The Ubuntu keyserver is more reliable than the MIT PGP server, which is prone to going down. This commit also explicitly uses port 80 on the keyserver for reasons outlined in #57844.
2019-02-12Added tests.Alexander Regueiro-0/+21
2019-02-12Stabilize linker-plugin based LTO.Michael Woerister-59/+61
2019-02-12Permit issue posting to have network failuresOliver Scherer-4/+12
2019-02-12rustc: Implement incremental "fat" LTOAlex Crichton-83/+246
Currently the compiler will produce an error if both incremental compilation and full fat LTO is requested. With recent changes and the advent of incremental ThinLTO, however, all the hard work is already done for us and it's actually not too bad to remove this error! This commit updates the codegen backend to allow incremental full fat LTO. The semantics are that the input modules to LTO are all produce incrementally, but the final LTO step is always done unconditionally regardless of whether the inputs changed or not. The only real incremental win we could have here is if zero of the input modules changed, but that's so rare it's unlikely to be worthwhile to implement such a code path. cc #57968 cc rust-lang/cargo#6643
2019-02-12Auto merge of #58098 - oli-obk:maybe_allow_internal_unstable, r=petrochenkovbors-512/+622
Require a list of features in `#[allow_internal_unstable]` The blanket-permission slip is not great and will likely give us trouble some point down the road.
2019-02-12Add doctests for str::escape_*Simon Sapin-3/+93
2019-02-12Make the prema-unstable char::escape_debug_ext method crate-privateSimon Sapin-3/+1
2019-02-12Move str::escape_* to libcoreSimon Sapin-165/+169
2019-02-12Stabilize str::escape_* methodsSimon Sapin-20/+7
FCP: https://github.com/rust-lang/rust/issues/27791#issuecomment-376864727
2019-02-12New return types for str::escape_* that impl Display and Iterator<char>Simon Sapin-46/+132
As FCP’ed in the tracking issue: https://github.com/rust-lang/rust/issues/27791#issuecomment-376864727
2019-02-12Add internal impl_fn_for_zst macro for "named closure types"Simon Sapin-113/+75
2019-02-12Doc rewordingking6cong-1/+1
2019-02-12Auto merge of #57388 - euclio:runmake-explicit-ignore, r=kennytmbors-297/+127
use ignore directives for run-make tests This makes the tests easier to read, and makes it possible to tell which tests aren't being run on the host platform. Fixes #56704.
2019-02-11Use less explicit shifting in std::net::ipScott McMurray-25/+58
Now that we have {to|from}_be_bytes the code can be simpler. (Inspired by PR #57740)
2019-02-12Auto merge of #58389 - Centril:rollup, r=Centrilbors-2145/+2104
Rollup of 11 pull requests Successful merges: - #58105 (libarena => 2018) - #58111 (libterm => 2018) - #58287 (rustc-std-workspace-core => 2018) - #58288 (rustc-workspace-hack => 2018) - #58300 (librustc_typeck => 2018) - #58313 (Use `?` in librustc macros) - #58318 (libserialize => 2018) - #58322 (librustc_codegen_ssa => 2018) - #58342 (Revert removed #![feature(nll)]) - #58367 (Remove two dead functions.) - #58382 (docs: remove "experimental" wording from std::os::unix) Failed merges: r? @ghost
2019-02-12Set the query in the ImplicitCtxt before trying to mark it greenJohn Kåre Alsaker-58/+73
2019-02-12Rollup merge of #58382 - euclio:unix-ext, r=dtolnayMazdak Farrokhzad-1/+1
docs: remove "experimental" wording from std::os::unix
2019-02-12Rollup merge of #58367 - nnethercote:rm-two-dead-funcs, r=alexcrichtonMazdak Farrokhzad-33/+0
Remove two dead functions.
2019-02-12Rollup merge of #58342 - taiki-e:nll, r=matthewjasperMazdak Farrokhzad-0/+21
Revert removed #![feature(nll)] In PRs related to #58099, `#![feature(nll)]` was removed from several crates. This PR reverts it. Related: https://github.com/rust-lang/rust/pull/58265#discussion_r255021244 cc @Centril r? @matthewjasper
2019-02-12Rollup merge of #58322 - taiki-e:librustc_codegen_ssa-2018, r=petrochenkovMazdak Farrokhzad-91/+75
librustc_codegen_ssa => 2018 Transitions `librustc_codegen_ssa` to Rust 2018; cc #58099 r? @petrochenkov
2019-02-12Rollup merge of #58318 - taiki-e:libserialize-2018, r=CentrilMazdak Farrokhzad-1609/+1607
libserialize => 2018 Transitions `libserialize` to Rust 2018; cc #58099 This includes a commit from #58252 (thanks @h-michael!) r? @Centril
2019-02-12Rollup merge of #58313 - matthewjasper:use-question-in-macros, r=oli-obkMazdak Farrokhzad-260/+246
Use `?` in librustc macros
2019-02-12Rollup merge of #58300 - taiki-e:librustc_typeck-2018, r=petrochenkovMazdak Farrokhzad-100/+98
librustc_typeck => 2018 Transitions `librustc_typeck` to Rust 2018; cc #58099 TODO: elided_lifetimes_in_paths r? @Centril
2019-02-12Rollup merge of #58288 - taiki-e:rustc-workspace-hack-2018, r=alexcrichtonMazdak Farrokhzad-0/+1
rustc-workspace-hack => 2018 Transitions `rustc-workspace-hack` to Rust 2018; cc #58099 r? @alexcrichton
2019-02-12Rollup merge of #58287 - taiki-e:rustc-std-workspace-core-2018, r=alexcrichtonMazdak Farrokhzad-2/+2
rustc-std-workspace-core => 2018 Transitions `rustc-std-workspace-core` to Rust 2018; cc #58099 r? @alexcrichton
2019-02-12Rollup merge of #58111 - Centril:libterm-2018, r=oli-obkMazdak Farrokhzad-39/+42
libterm => 2018 Transitions `libterm` to Rust 2018; cc #58099 r? @oli-obk
2019-02-12Rollup merge of #58105 - Centril:libarena-trans-2018, r=oli-obkMazdak Farrokhzad-10/+11
libarena => 2018 Transitions `libarena` to Rust 2018; cc https://github.com/rust-lang/rust/issues/58099 r? @oli-obk
2019-02-12Auto merge of #58246 - pmccarter:master, r=oli-obkbors-21/+177
Make `saturating_add` and `saturating_sub` `const` functions Fixes #58030
2019-02-12Disallow `auto` trait alias syntax.Alexander Regueiro-1/+7