about summary refs log tree commit diff
path: root/src
AgeCommit message (Collapse)AuthorLines
2019-03-16Rollup merge of #59036 - dlrobertson:fix_59021, r=estebankkennytm-1/+21
Fix ICE in MIR pretty printing A `Def::Variant` should be considered as a function in mir pretty printing. Each variant has a constructor that we must print. Given the following enum definition: ```rust pub enum TestMe { X(usize), } ``` We will need to generate a constructor for the variant `X` with a signature that looks something like the following: ``` fn TestMe::X(_1: usize) -> TestMe; ``` Fixes: #59021
2019-03-16Rollup merge of #59025 - aoikonomopoulos:issue-57924, r=varkorkennytm-59/+69
Fix generic argument lookup for Self Rewrite the SelfCtor early and use the replacement Def when calculating the path_segs. Note that this also changes which def is seen by the code that computes user_self_ty and is_alias_variant_ctor; I don't see a immediate issue with that, but I'm not 100% clear on the implications. Fixes #57924 r? @eddyb
2019-03-16Rollup merge of #59009 - sfackler:fix-sgx-vectors, r=alexcrichtonkennytm-32/+34
Fix SGX implementations of read/write_vectored.
2019-03-16resolve: Account for new importable entitiesVadim Petrochenkov-11/+49
2019-03-16Add def getting methods to librustc/ty/contextTomas Koutsky-19/+24
2019-03-16Add UdpSocket peer_addr implementation for WasmLinus Unnebäck-0/+4
2019-03-16Add UdpSocket peer_addr implementation for L4ReLinus Unnebäck-1/+4
2019-03-16Tweak documentation of RefCell::borrow_stateAnthony Ramine-6/+10
2019-03-16Fix test names regarding ip versionLinus Unnebäck-2/+2
2019-03-16Add test for UdpSocket peer_addrLinus Unnebäck-0/+10
2019-03-16Document UdpSocket peer_addr NotConnected errorLinus Unnebäck-0/+13
2019-03-16Mark UdpSocket peer_addr unstable w/ tracking issueLinus Unnebäck-1/+2
2019-03-16Add peer_addr function to UdpSocketLinus Unnebäck-0/+36
2019-03-16Stabilize Option::copiedAleksey Kladov-7/+2
closes https://github.com/rust-lang/rust/issues/57126
2019-03-16Fix formattingbjorn3-1/+1
2019-03-16Fix testbjorn3-7/+34
2019-03-16Remove rustc_driver testsbjorn3-617/+0
2019-03-16[bootstrap] Remove llvm.enabled configbjorn3-17/+9
2019-03-16Remove MetadataOnlyCodegenBackendbjorn3-149/+2
2019-03-16Rollup merge of #58976 - phil-opp:patch-2, r=alexcrichtonkennytm-1/+1
Default to integrated `rust-lld` linker for UEFI targets The `x86_64-unknown-uefi` target was added in https://github.com/rust-lang/rust/pull/56769 with the linker defaulting to `lld-link`. This means that a system linker with that name is required for linking. I think defaulting to `rust-lld`, which is shipped with Rust, is a better default for the following reasons: - Most systems don't have `lld-link` installed, so it forces users to install it first. - The naming of LLD executables is not standarized, so users often need to create an additional symlink before things work. For example, on Ubuntu `apt install lld` leads to an executable named `lld-link-6.0`. - We already default to `rust-lld` for [many targets](https://github.com/rust-lang/rust/search?utf8=%E2%9C%93&q=rust-lld&type=), including embedded and WASM targets, so doing the same for UEFI crates seems consistent to me. (It even seems like `x86_64-unknown-uefi` is the [only target](https://github.com/rust-lang/rust/search?q=lld-link&unscoped_q=lld-link) that uses `lld-link`.) cc @dvdhrm who added the target and @kkk669 who [proposed to use `rust-lld`](https://github.com/rust-lang/rust/pull/56769#issuecomment-461119648).
2019-03-16Rollup merge of #58949 - jethrogb:jb/sgx-thread-id, r=joshtriplettkennytm-0/+6
SGX target: Expose thread id function in os module In order to call `std::os::fortanix_sgx::usercalls::send`, you need the thread id. This exposes it through another function in `std::os::fortanix_sgx`. I looked at how other platforms do this. On Windows and `cfg(unix)` you can get the OS handle from a `thread::JoinHandle`, but that's not sufficient, I need it for a `thread::Thread`. In the future, this functionality could be added to `thread::Thread` and this platform can follow suit. r? @joshtriplett
2019-03-16Rollup merge of #58941 - wzssyqa:master, r=alexcrichtonkennytm-0/+115
MIPS: add r6 support MIPS r6 is quite different with the previous version. It use some new target triples: mipsisa32r6-unknown-linux-gnu mipsisa32r6el-unknown-linux-gnu mipsisa64r6-unknown-linux-gnuabi64 mipsisa64r6el-unknown-linux-gnuabi64 This patch has been tested with Debian Port for mips64r6el, and the support of these triples also is included in llvm: https://reviews.llvm.org/rGe58c45a695f39004710b6ce940d489fee800dbd3
2019-03-16Rollup merge of #58938 - dlrobertson:fix_58280, r=joshtriplettkennytm-7/+7
core: ensure VaList passes improper_ctypes lint Ensure the `core::ffi::VaList` structure passes the `improper_ctypes` lint. Fixes: #58280
2019-03-16Rollup merge of #58933 - SimonSapin:alloc-prelude-v1, r=Amanieukennytm-19/+27
Move alloc::prelude::* to alloc::prelude::v1, make alloc a subset of std This was one of the unresolved questions of https://github.com/rust-lang/rfcs/pull/2480. As the RFC says this is maybe not useful in the sense that we are unlikely to ever have a second version, but making the crate a true subset makes one less issue to think about if we stabilize it and later want to merge standard library crates and have Cargo feature flags to enable or disable parts of the `std` crate. See also discussion in https://github.com/rust-lang/rust/pull/58175. Also rename the feature gate and point to a dedicated tracking issue: https://github.com/rust-lang/rust/issues/58935
2019-03-16Rollup merge of #58901 - ebarnard:just-copying, r=sfacklerkennytm-2/+108
Change `std::fs::copy` to use `copyfile` on MacOS and iOS `copyfile` on MacOS is similar to `CopyFileEx` on Windows. It supports copying resource forks, extended attributes, and file ACLs, none of which are copied by the current generic unix implementation. The API is available from MacOS 10.7 and iOS 4.3 (and possibly earlier but I haven't checked). Closes #58895.
2019-03-16Rollup merge of #58873 - GuillaumeGomez:fix-auto-hide-method-doc, ↵kennytm-32/+37
r=QuietMisdreavus Fix "Auto-hide item methods documentation" setting Fixes #58825. r? @QuietMisdreavus
2019-03-16Rollup merge of #58855 - alexcrichton:wasm-multithreaded-alloc, r=fitzgenkennytm-15/+80
std: Spin for a global malloc lock on wasm32 There's lots of comments in the code, but the main gist of this commit is that the acquisition of the global malloc lock on the `wasm32-unknown-unknown` target when threads are enabled will not spin on contention rather than block.
2019-03-16Rollup merge of #58854 - alexcrichton:update-windows, r=Mark-Simulacrumkennytm-0/+0
appveyor: Use VS2017 for all our images Originally added in #55935 to test build times, this was reverted in #56201 due to a belief that it caused the exit code 259 spurious errors. We've since learned, however, that the 259 exit code is likely not related to this image update as we're getting it in a number of locations now. VS2017 looks like it may be required to compile LLVm in the near future, notably discovered by #58408 where we attempted to update LLVM.
2019-03-16fix testsGrigorii Kargin-6/+6
2019-03-15Option and Result: Add references to documentation of as_ref and as_mutChris Gregory-4/+4
2019-03-15Elide object safety errors on non-existent trait functionEsteban Küber-21/+74
Fix #58734.
2019-03-15Auto merge of #58556 - oli-obk:imperative_recursion, r=pnkfelixbors-39/+165
Optimize copying large ranges of undefmask blocks Hopefully fixes #58523
2019-03-15use `!` in macro disambiguation suggestionAndy Russell-3/+6
2019-03-15replace ad-hoc namespace enumsAndy Russell-103/+72
2019-03-15overhaul intra-doc-link ambiguity warningAndy Russell-95/+266
- Makes the warning part of the `intra_doc_link_resolution_failure` lint. - Tightens the span to just the ambiguous link. - Reports ambiguities across all three namespaces. - Uses structured suggestions for disambiguation. - Adds a test for the warnings.
2019-03-16a simple refactoring and removing comment.kenta7777-2/+1
2019-03-16removed some unnecessary comments.kenta7777-2/+0
2019-03-15Track changes to robots.txtKornel-0/+19
2019-03-15Remove copyright noticesDouglas Creager-42/+1
2019-03-15Add x86_64 musl host to the manifestMateusz Mikuła-0/+1
2019-03-15Revert "Deprecate std::cell::RefCell::borrow_state"Anthony Ramine-4/+0
This reverts commit dc2d5058e999abb18ab2686b4e3e385ec6e36666.
2019-03-15Revert "Remove RefCell::borrow_state"Anthony Ramine-0/+56
This reverts commit 313aab8fbeb98730f8ffa741ccf54f843d5e3525.
2019-03-15Auto merge of #58140 - eddyb:advent-of-print, r=nikomatsakisbors-2933/+3407
Refactor ppaux out of existence. A long-time coming, this PR reorganizes and rewrites the pretty-printing architecture of rustc, specifically the parts that involve the typesystem (which used to be in `rustc::util::ppaux`). *Note: these commits used to be in #57967 before being split off.* The new API (i.e. the `Printer` and `PrettyPrint` traits) is in `rustc::ty::print`. Design points, roughly: * using associated types in `Printer` to allow building e.g. an AST, not just printing as a side-effect * several overloading points for implementers of `PrettyPrinter`, e.g. how `<...>` is printed * for `fmt::Display` impls, the value to print is lifted to the `ty::tls` `tcx`, and everything after that stays within the `ty::print` API, which requires `'tcx` to match between values and the printer's `tcx`, without going through `fmt::Display` again Most of the behavior is unchanged, except for a few details, which should be clear from the test changes. r? @nikomatsakis Fixes https://github.com/rust-lang/rust/issues/55464
2019-03-15Remove restriction on isize/usize in repr(simd)Brian Campbell-12/+34
As discussed in #55078, there's no known reason for this restriction. It's unlikely that repr(simd) will be stabilized in its current form, but might as well remove some restrictions on it. This removes the branch in `is_machine` which returns false for these types. `is_machine` is only used for the repr(simd) type validation check.
2019-03-15reduced a code repetition related to bit operation.kenta7777-4/+3
2019-03-15rustbuild: remove obsolete fulldeps behavior from src/test/pretty tests, and ↵Eduard-Mihai Burtescu-10/+3
enable them by default.
2019-03-15Fix rebase fallout and address some review comments.Eduard-Mihai Burtescu-1/+9
2019-03-15we can now print on entering/leaving the topmost frame, and make sure it ↵Ralf Jung-16/+13
stays that way
2019-03-15rustc: print ExistentialProjection with spaces around `=`, e.g. `dyn Foo<A = ↵Eduard-Mihai Burtescu-21/+21
X>`.
2019-03-15rustc: provide DisambiguatedDefPathData in ty::print.Eduard-Mihai Burtescu-71/+127