about summary refs log tree commit diff
path: root/src
AgeCommit message (Collapse)AuthorLines
2019-01-27Remove rustdoc old style files generationGuillaume Gomez-50/+24
2019-01-26Replace deprecated ATOMIC_INIT constsMark Rousskov-59/+89
2019-01-26Remove lexical scope examples from std::mem::dropAlex Macleod-28/+1
The example no longer produces an error in the 2018 edition
2019-01-26Tiny improvement to docs for `core::convert`.Simon Heath-1/+4
This is not really significant, accept or reject as you wish. I just want to make sure I understand how the PR process works and I'm doing it right before doing a bigger one for #33417.
2019-01-26Enable RISC-V atomic compare and swapJonathan Behrens-1/+1
2019-01-26Auto merge of #57918 - Centril:rollup, r=Centrilbors-84/+156
Rollup of 7 pull requests Successful merges: - #57407 (Stabilize extern_crate_self) - #57703 (Make MutexGuard's Debug implementation more useful.) - #57764 (Fix some minor warnings) - #57825 (un-deprecate mem::zeroed) - #57827 (Ignore aarch64 in simd-intrinsic-generic-reduction) - #57908 (resolve: Fix span arithmetics in the import conflict error) - #57913 (Change crate-visibility-modifier issue number in The Unstable Book) Failed merges: r? @ghost
2019-01-26use `SOURCE_DATE_EPOCH` for man page time if setAndy Russell-2/+14
2019-01-26Rollup merge of #57913 - ↵Mazdak Farrokhzad-2/+2
h-michael:fix-crate-visibility-modifier-issue-number, r=Centril Change crate-visibility-modifier issue number in The Unstable Book #45388 is closed. Because, it's duplicate issue of #53120.
2019-01-26Rollup merge of #57908 - petrochenkov:errepice, r=estebankMazdak Farrokhzad-46/+98
resolve: Fix span arithmetics in the import conflict error https://github.com/rust-lang/rust/pull/56937 rebased and fixed Fixes https://github.com/rust-lang/rust/issues/56411 Fixes https://github.com/rust-lang/rust/issues/57071 Fixes https://github.com/rust-lang/rust/issues/57787 r? @estebank
2019-01-26Rollup merge of #57827 - parched:ignore, r=nikomatsakisMazdak Farrokhzad-0/+1
Ignore aarch64 in simd-intrinsic-generic-reduction This fails on AArch64 see https://github.com/rust-lang/rust/issues/54510 Disabling it for now until it's fixed/implemented in LLVM cc @gnzlbg
2019-01-26Rollup merge of #57825 - RalfJung:zeroed, r=nikomatsakisMazdak Farrokhzad-1/+0
un-deprecate mem::zeroed as per the discussion around <https://github.com/rust-lang/rust/issues/53491#issuecomment-451454793>
2019-01-26Rollup merge of #57764 - Xanewok:tiny-tweaks, r=nikomatsakisMazdak Farrokhzad-4/+5
Fix some minor warnings Since apparently RLS works when initialized in the root repository (:tada:) I decided to fix some of the issues it caught. There are a lot of unused attribute warnings left on `rustc_on_unimplemented` and `rustc_layout_scalar_valid_range_start` but I imagine we can't do much about it due to 2-stage compilation?
2019-01-26Rollup merge of #57703 - m-ou-se:mutexguard-debug, r=cramertjMazdak Farrokhzad-3/+1
Make MutexGuard's Debug implementation more useful. Fixes #57702.
2019-01-26Rollup merge of #57407 - mehcode:stabilize-extern-crate-self, r=CentrilMazdak Farrokhzad-28/+49
Stabilize extern_crate_self Fixes #56409
2019-01-26Auto merge of #57852 - davidtwco:issue-57819, r=estebankbors-8/+328
Suggest removing leading left angle brackets. Fixes #57819. This PR adds errors and accompanying suggestions as below: ``` bar::<<<<<T as Foo>::Output>(); ^^^ help: remove extra angle brackets ``` r? @estebank
2019-01-26Ignore LLVM-dependent run-make tests on WindowsMark Rousskov-1/+20
This should solve the PATH issue, and we don't need to test cross-lang LTO working on all OS-es.
2019-01-26Workaround presence of LLVM library in stage0/libMark Rousskov-13/+55
This commit works around the newly-introduced LLVM shared library. This is needed such that llvm-config run from librustc_llvm's build script can correctly locate it's own LLVM, not the one in stage0/lib. The LLVM build system uses the DT_RUNPATH/RUNPATH header within the llvm-config binary, which we want to use, but because Cargo always adds the host compiler's "libdir" (stage0/lib in our case) to the dynamic linker's search path, we weren't properly finding the freshly-built LLVM in llvm/lib. By restoring the environment variable setting the search path to what bootstrap sees, the problem is resolved and librustc_llvm correctly links and finds the appropriate LLVM. Several run-make-fulldeps tests are also updated with similar handling.
2019-01-26Bump bootstrap compiler to 1.33 betaMark Rousskov-168/+16
2019-01-26Pretty print `$crate` as `crate` or `crate_name` in more casesVadim Petrochenkov-27/+36
2019-01-26Auto merge of #57726 - Zoxc:combine-early-lints, r=estebankbors-216/+579
Combine all builtin early lints This also adds a -Z no-interleave-lints option to allow benchmarking lints. r? @estebank
2019-01-26Auto merge of #57425 - alexcrichton:stabilize-atomics, r=sfacklerbors-55/+96
std: Stabilize fixed-width integer atomics This commit stabilizes the `Atomic{I,U}{8,16,32,64}` APIs in the `std::sync::atomic` and `core::sync::atomic` modules. Proposed in #56753 and tracked in #32976 this feature has been unstable for quite some time and is hopefully ready to go over the finish line now! The API is being stabilized as-is. The API of `AtomicU8` and friends mirrors that of `AtomicUsize`. A list of changes made here are: * A portability documentation section has been added to describe the current state of affairs. * Emulation of smaller-size atomics with larger-size atomics has been documented. * As an added bonus, `ATOMIC_*_INIT` is now scheduled for deprecation across the board in 1.34.0 now that `const` functions can be invoked in statics. Note that the 128-bit atomic types are omitted from this stabilization explicitly. They have far less platform support than the other atomic types, and will likely require further discussion about their best location. Closes #32976 Closes #56753
2019-01-26Update SGX libunwindJethro Beekman-1/+1
2019-01-26Clean up build-x86_64-fortanix-unknown-sgx-toolchain.shJethro Beekman-23/+33
2019-01-26Auto merge of #55641 - nagisa:optimize-attr, r=pnkfelixbors-128/+448
Implement optimize(size) and optimize(speed) attributes This PR implements both `optimize(size)` and `optimize(speed)` attributes. While the functionality itself works fine now, this PR is not yet complete: the code might be messy in places and, most importantly, the compiletest must be improved with functionality to run tests with custom optimization levels. Otherwise the new attribute cannot be tested properly. Oh, and not all of the RFC is implemented – attribute propagation is not implemented for example. # TODO * [x] Improve compiletest so that tests can be written; * [x] Assign a proper error number (E9999 currently, no idea how to allocate a number properly); * [ ] Perhaps reduce the duplication in LLVM attribute assignment code…
2019-01-26Change crate-visibility-modifier issue number in The Unstable BookHirokazu Hata-2/+2
2019-01-26Auto merge of #57675 - cuviper:llvm-monorepo, r=alexcrichtonbors-47/+209
Rebase to the llvm-project monorepo The new git submodule src/llvm-project is a monorepo replacing src/llvm and src/tools/{clang,lld,lldb}. This also serves as a rebase for these projects to the new 8.x branch from trunk. The src/llvm-emscripten fork is unchanged for now. r? @alexcrichton
2019-01-25Set LLDB_NO_DEBUGSERVER=ONJosh Stone-0/+1
2019-01-25[rust-lldb] Adapt to changes in LLDB APIsJosh Stone-0/+0
2019-01-25librustc_llvm: default to libc++ for darwinJosh Stone-0/+2
2019-01-25Update LLVM for a CodeView fixJosh Stone-0/+0
2019-01-25Set the DICompileUnit emissionKindJosh Stone-6/+50
2019-01-25Add two more wasm-related LLVM commitsAlex Crichton-0/+0
2019-01-25Rebase to the llvm-project monorepoJosh Stone-42/+157
The new git submodule src/llvm-project is a monorepo replacing src/llvm and src/tools/{clang,lld,lldb}. This also serves as a rebase for these projects to the new 8.x branch from trunk. The src/llvm-emscripten fork is unchanged for now.
2019-01-25Auto merge of #57898 - Centril:rollup, r=Centrilbors-82/+870
Rollup of 5 pull requests Successful merges: - #56233 (Miri and miri-related code contains repetitions of `(n << amt) >> amt`) - #57645 (distinguish "no data" from "heterogeneous" in ABI) - #57734 (Fix evaluating trivial drop glue in constants) - #57886 (Add suggestion for moving type declaration before associated type bindings in generic arguments.) - #57890 (Fix wording in diagnostics page) Failed merges: r? @ghost
2019-01-26Address review comments and cleanup codeVadim Petrochenkov-62/+59
2019-01-25Correctly set filetime for copied LLVMMark Rousskov-24/+47
This also makes compiletest no longer always retest everything.
2019-01-25std: Stabilize fixed-width integer atomicsAlex Crichton-55/+96
This commit stabilizes the `Atomic{I,U}{8,16,32,64}` APIs in the `std::sync::atomic` and `core::sync::atomic` modules. Proposed in #56753 and tracked in #32976 this feature has been unstable for quite some time and is hopefully ready to go over the finish line now! The API is being stabilized as-is. The API of `AtomicU8` and friends mirrors that of `AtomicUsize`. A list of changes made here are: * A portability documentation section has been added to describe the current state of affairs. * Emulation of smaller-size atomics with larger-size atomics has been documented. * As an added bonus, `ATOMIC_*_INIT` is now scheduled for deprecation across the board in 1.34.0 now that `const` functions can be invoked in statics. Note that the 128-bit atomic types are omitted from this stabilization explicitly. They have far less platform support than the other atomic types, and will likely require further discussion about their best location. Closes #32976 Closes #56753
2019-01-25#56411 do not suggest a fix for a import conflict in a macroFrançois Mockers-1/+56
2019-01-25Resolve breakageSimonas Kazlauskas-61/+46
2019-01-25Rollup merge of #57890 - feinorgh:fix-diagnostics-typo, r=zackmdavisMazdak Farrokhzad-1/+1
Fix wording in diagnostics page Fix a tiny wording error in the diagnostics text for E0070.
2019-01-25Rollup merge of #57886 - davidtwco:issue-57385, r=estebankMazdak Farrokhzad-27/+303
Add suggestion for moving type declaration before associated type bindings in generic arguments. Fixes #57385. r? @estebank
2019-01-25Rollup merge of #57734 - oli-obk:fixes_and_cleanups, r=pnkfelixMazdak Farrokhzad-30/+68
Fix evaluating trivial drop glue in constants ```rust struct A; impl Drop for A { fn drop(&mut self) {} } const FOO: Option<A> = None; const BAR: () = (FOO, ()).1; ``` was erroring with ``` error: any use of this value will cause an error --> src/lib.rs:9:1 | 9 | const BAR: () = (FOO, ()).1; | ^^^^^^^^^^^^^^^^^^^^^^^^^^-^ | | | calling non-const function `std::ptr::real_drop_in_place::<(std::option::Option<A>, ())> - shim(Some((std::option::Option<A>, ())))` | = note: #[deny(const_err)] on by default error: aborting due to previous error ``` before this PR. According to godbolt this last compiled successfully in 1.27
2019-01-25Rollup merge of #57645 - nikomatsakis:issue-56877-abi-aggregates, r=eddybMazdak Farrokhzad-20/+492
distinguish "no data" from "heterogeneous" in ABI Ignore zero-sized types when computing whether something is a homogeneous aggregate, except be careful of VLA. cc #56877 r? @arielb1 cc @eddyb
2019-01-25Rollup merge of #56233 - kenta7777:kenta7777#49937, r=oli-obkMazdak Farrokhzad-4/+6
Miri and miri-related code contains repetitions of `(n << amt) >> amt` I reduced some code repetitions contains `(n << amt) >> amt`. This pull request is related to #49937.
2019-01-25distinguish "no data" from "heterogeneous" for ABI purposesNiko Matsakis-20/+492
Also, add a testing infrastructure and tests that lets us dump layout.
2019-01-25Auto merge of #57714 - matthewjasper:wellformed-unreachable, r=pnkfelixbors-291/+849
[NLL] Clean up handling of type annotations * Renames (Canonical)?UserTypeAnnotation -> (Canonical)?UserType so that the name CanonicalUserTypeAnnotation is free. * Keep the inferred type associated to user type annotations in the MIR, so that it can be compared against the annotated type, even when the annotated expression gets removed from the MIR. (#54943) * Use the inferred type to allow infallible handling of user type projections (#57531) * Uses revisions for the tests in #56993 * Check the types of `Unevaluated` constants with no annotations (#46702) * Some drive-by cleanup Closes #46702 Closes #54943 Closes #57531 Closes #57731 cc #56993 leaving this open to track the underlying issue: we are not running tests with full NLL enabled on CI at the moment r? @nikomatsakis
2019-01-25Unit test from #57866.Felix S. Klock II-0/+26
2019-01-25Auto merge of #57891 - michaelwoerister:no-default-incr-bootstrap, ↵bors-0/+3
r=pietroalbini bootstrap: Don't rely on any default settings regarding incr. comp. in Cargo https://github.com/rust-lang/cargo/pull/6564 (temporarily) makes incremental compilation the default for release builds. We don't want this default to apply to building the compiler itself, that is, `bootstrap`'s `incremental` flag should always be respected. Otherwise we'll get incrementally build releases, which we really don't want `:)`. r? @Mark-Simulacrum Anybody else from @rust-lang/release should feel free to r+ this too if they get around to it earlier.
2019-01-25Combining move lifetime and type suggestions.David Wood-35/+179
This commit combines the move lifetime and move type suggestions so that when rustfix applies them they don't conflict with each other.
2019-01-25bootstrap: Don't rely on any default settings regarding incr. comp. in Cargo.Michael Woerister-0/+3