]> git.lizzy.rs Git - rust.git/log
rust.git
5 years agoSGX target: fix std unit tests
Jethro Beekman [Tue, 12 Mar 2019 17:58:30 +0000 (10:58 -0700)]
SGX target: fix std unit tests

5 years agoAuto merge of #59226 - kennytm:rollup, r=kennytm
bors [Sat, 16 Mar 2019 14:46:43 +0000 (14:46 +0000)]
Auto merge of #59226 - kennytm:rollup, r=kennytm

Rollup of 37 pull requests

Successful merges:

 - #58854 (appveyor: Use VS2017 for all our images)
 - #58855 (std: Spin for a global malloc lock on wasm32)
 - #58873 (Fix "Auto-hide item methods documentation" setting)
 - #58901 (Change `std::fs::copy` to use `copyfile` on MacOS and iOS)
 - #58933 (Move alloc::prelude::* to alloc::prelude::v1, make alloc a subset of std)
 - #58938 (core: ensure VaList passes improper_ctypes lint)
 - #58941 (MIPS: add r6 support)
 - #58949 (SGX target: Expose thread id function in os module)
 - #58959 (Add release notes for PR #56243)
 - #58976 (Default to integrated `rust-lld` linker for UEFI targets)
 - #59009 (Fix SGX implementations of read/write_vectored.)
 - #59025 (Fix generic argument lookup for Self)
 - #59036 (Fix ICE in MIR pretty printing)
 - #59037 (Avoid some common false positives in intra doc link checking)
 - #59072 (we can now skip should_panic tests with the libtest harness)
 - #59079 (add suggestions to invalid macro item error)
 - #59082 (A few improvements to comments in user-facing crates)
 - #59102 (Consistent naming for duration_float methods and additional f32 methods)
 - #59118 (rustc: fix ICE when trait alias has bare Self)
 - #59139 (Unregress using scalar unions in constants.)
 - #59146 (Suggest return lifetime when there's only one named lifetime)
 - #59147 (Make std time tests more robust for platform differences)
 - #59152 (Stabilize Range*::contains.)
 - #59156 ([wg-async-await] Add regression test for #55809.)
 - #59158 (Revert "Don't generate minification variable if minification disabled")
 - #59169 (Add `-Z allow_features=...` flag)
 - #59173 (bootstrap: Default to a sensible llvm-suffix.)
 - #59175 (Don't run test launching `echo` since that doesn't exist on Windows)
 - #59180 (Use try blocks in rustc_codegen_ssa)
 - #59185 (No old chestnuts in iter::repeat docs)
 - #59201 (Remove restriction on isize/usize in repr(simd))
 - #59204 (Output diagnostic information for rustdoc)
 - #59206 (Improved test output)
 - #59208 (Reduce a Code Repetition Related to Bit Operation)
 - #59212 (Add x86_64 musl host to the manifest)
 - #59221 (Option and Result: Add references to documentation of as_ref and as_mut)
 - #59231 (Stabilize Option::copied)

5 years agoRollup merge of #59231 - matklad:copied, r=Centril
kennytm [Sat, 16 Mar 2019 14:42:00 +0000 (22:42 +0800)]
Rollup merge of #59231 - matklad:copied, r=Centril

Stabilize Option::copied

closes https://github.com/rust-lang/rust/issues/57126

5 years agoRollup merge of #58959 - asomers:issue_58907, r=Mark-Simulacrum
kennytm [Sat, 16 Mar 2019 14:41:27 +0000 (22:41 +0800)]
Rollup merge of #58959 - asomers:issue_58907, r=Mark-Simulacrum

Add release notes for PR #56243

Fixes #58907

5 years agoRollup merge of #59221 - czipperz:as_ref_documentation, r=Centril
kennytm [Sat, 16 Mar 2019 06:57:07 +0000 (14:57 +0800)]
Rollup merge of #59221 - czipperz:as_ref_documentation, r=Centril

Option and Result: Add references to documentation of as_ref and as_mut

This makes the documentation more consistent with that of `Pin::as_ref` which converts "from `&Pin<Pointer<T>>` to `Pin<&t>`".

This generally makes it clearer that the reference is going inside the option.

5 years agoRollup merge of #59212 - mati865:musl_toolchain, r=alexcrichton
kennytm [Sat, 16 Mar 2019 06:57:06 +0000 (14:57 +0800)]
Rollup merge of #59212 - mati865:musl_toolchain, r=alexcrichton

Add x86_64 musl host to the manifest

@alexcrichton r?

Probably too late for https://github.com/rust-lang/rust/pull/59207

5 years agoRollup merge of #59208 - kenta7777:reduce-code-repetition, r=oli-obk
kennytm [Sat, 16 Mar 2019 06:57:05 +0000 (14:57 +0800)]
Rollup merge of #59208 - kenta7777:reduce-code-repetition, r=oli-obk

Reduce a Code Repetition Related to Bit Operation

This PR is related to [#49937](https://github.com/rust-lang/rust/issues/49937).
Should I do more commits about [`FIXME(49937)`](https://github.com/rust-lang/rust/search?q=FIXME%2849937%29&unscoped_q=FIXME%2849937%29) in this PR?

5 years agoRollup merge of #59206 - sntdevco:master, r=dtolnay
kennytm [Sat, 16 Mar 2019 06:57:03 +0000 (14:57 +0800)]
Rollup merge of #59206 - sntdevco:master, r=dtolnay

Improved test output

5 years agoRollup merge of #59204 - o01eg:diag-rustdoc, r=alexcrichton
kennytm [Sat, 16 Mar 2019 06:57:02 +0000 (14:57 +0800)]
Rollup merge of #59204 - o01eg:diag-rustdoc, r=alexcrichton

Output diagnostic information for rustdoc

Use the information same as rustc.

5 years agoRollup merge of #59201 - lambda:remove-repr-simd-isize-usize-restriction, r=alexcrichton
kennytm [Sat, 16 Mar 2019 06:57:01 +0000 (14:57 +0800)]
Rollup merge of #59201 - lambda:remove-repr-simd-isize-usize-restriction, r=alexcrichton

Remove restriction on isize/usize in repr(simd)

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.

5 years agoRollup merge of #59185 - lukaslueg:patch-2, r=cramertj
kennytm [Sat, 16 Mar 2019 06:56:59 +0000 (14:56 +0800)]
Rollup merge of #59185 - lukaslueg:patch-2, r=cramertj

No old chestnuts in iter::repeat docs

The current language may be amusing, yet is just imprecise and most especially difficult to understand for someone who speaks English as a foreign language.

5 years agoRollup merge of #59180 - taiki-e:try_blocks, r=scottmcm
kennytm [Sat, 16 Mar 2019 06:56:58 +0000 (14:56 +0800)]
Rollup merge of #59180 - taiki-e:try_blocks, r=scottmcm

Use try blocks in rustc_codegen_ssa

r? @scottmcm

5 years agoRollup merge of #59175 - Zoxc:fix-process-test, r=alexcrichton
kennytm [Sat, 16 Mar 2019 06:56:57 +0000 (14:56 +0800)]
Rollup merge of #59175 - Zoxc:fix-process-test, r=alexcrichton

Don't run test launching `echo` since that doesn't exist on Windows

5 years agoRollup merge of #59173 - emilio:llvm-suffix, r=Mark-Simulacrum
kennytm [Sat, 16 Mar 2019 06:56:55 +0000 (14:56 +0800)]
Rollup merge of #59173 - emilio:llvm-suffix, r=Mark-Simulacrum

bootstrap: Default to a sensible llvm-suffix.

I used version-channel-sha, hopefully that should work.

I checked that bootstrap builds, but I cannot check anything else since the llvm
build process is started from cargo, and thus calls clang, and thus I hit the
same bug I hope to fix with this change.

Hopefully fixes #59034.

5 years agoRollup merge of #59169 - tmandry:allow-features-flag, r=cramertj
kennytm [Sat, 16 Mar 2019 06:56:54 +0000 (14:56 +0800)]
Rollup merge of #59169 - tmandry:allow-features-flag, r=cramertj

Add `-Z allow_features=...` flag

Adds a compiler option to allow only whitelisted features.

For projects on nightly that want to prevent feature-creep (and maybe, someday, move off of nightly). Not being able to enforce this has been a problem on Fuchsia and at other big companies.

This doesn't support filtering edition feature flags, but someone is welcome to add that if they need it.

5 years agoRollup merge of #59158 - Manishearth:fix-minification, r=GuillaumeGomez
kennytm [Sat, 16 Mar 2019 06:56:53 +0000 (14:56 +0800)]
Rollup merge of #59158 - Manishearth:fix-minification, r=GuillaumeGomez

Revert "Don't generate minification variable if minification disabled"

Reverts #58643

Fixes #59157

https://github.com/rust-lang/rust/pull/58643 made us stop generating minification variables when minification is disabled, however they may still be needed for parent crates that were generated with minification (this will always be the case for libstd and libcore)

r? @QuietMisdreavus @GuillaumeGomez

5 years agoRollup merge of #59156 - davidtwco:issue-55809, r=nikomatsakis
kennytm [Sat, 16 Mar 2019 06:56:51 +0000 (14:56 +0800)]
Rollup merge of #59156 - davidtwco:issue-55809, r=nikomatsakis

[wg-async-await] Add regression test for #55809.

Fixes #55809.

This PR adds a regression test for #55809 which checks that a
overflow does not occur when evaluating a requirement for async
functions and `&mut` arguments in some specific circumstances.

5 years agoRollup merge of #59152 - smmalis37:range_contains, r=SimonSapin
kennytm [Sat, 16 Mar 2019 06:56:50 +0000 (14:56 +0800)]
Rollup merge of #59152 - smmalis37:range_contains, r=SimonSapin

Stabilize Range*::contains.

Closes https://github.com/rust-lang/rust/issues/32311. There's also a bit of rustfmt on range.rs thrown in for good measure (I forgot to turn off format-on-save in VSCode).

5 years agoRollup merge of #59147 - jethrogb:jb/time-tests, r=sfackler
kennytm [Sat, 16 Mar 2019 06:56:48 +0000 (14:56 +0800)]
Rollup merge of #59147 - jethrogb:jb/time-tests, r=sfackler

Make std time tests more robust for platform differences

Previously, `time::tests::since_epoch` and `time::tests::system_time_math` would fail if the platform represents a SystemTime as unix epoch + `u64` nanoseconds.

r? @sfackler

5 years agoRollup merge of #59146 - estebank:suggest-return-lt, r=varkor
kennytm [Sat, 16 Mar 2019 06:56:47 +0000 (14:56 +0800)]
Rollup merge of #59146 - estebank:suggest-return-lt, r=varkor

Suggest return lifetime when there's only one named lifetime

Fix #29094.

5 years agoRollup merge of #59139 - oli-obk:unions_are_a_good_thing, r=RalfJung
kennytm [Sat, 16 Mar 2019 06:56:46 +0000 (14:56 +0800)]
Rollup merge of #59139 - oli-obk:unions_are_a_good_thing, r=RalfJung

Unregress using scalar unions in constants.

fixes https://github.com/rust-lang/rust/issues/59126

r? @RalfJung

I also made a bunch of these invariants panic instead of report an error.

5 years agoRollup merge of #59118 - seanmonstar:alias-where-self-ice, r=alexreg
kennytm [Sat, 16 Mar 2019 06:56:44 +0000 (14:56 +0800)]
Rollup merge of #59118 - seanmonstar:alias-where-self-ice, r=alexreg

rustc: fix ICE when trait alias has bare Self

Fixes https://github.com/rust-lang/rust/issues/59029

5 years agoRollup merge of #59102 - newpavlov:duration_float, r=alexcrichton
kennytm [Sat, 16 Mar 2019 06:56:42 +0000 (14:56 +0800)]
Rollup merge of #59102 - newpavlov:duration_float, r=alexcrichton

Consistent naming for duration_float methods and additional f32 methods

`duration_float` tracking issue: #54361

New list of methods:
- `as_secs_f64(&self) -> f64`
- `as_secs_f32(&self) -> f32`
- `from_secs_f64(secs: f64) -> Duration`
- `from_secs_f32(secs: f32) -> Duration`
- `mul_f64(self, rhs: f64) -> Duration`
- `mul_f32(self, rhs: f32) -> Duration`
- `div_f64(self, rhs: f64) -> Duration`
- `div_f32(self, rhs: f64) -> Duration`
- `div_duration_f64(self, rhs: Duration) -> f64`
- `div_duration_f32(self, rhs: Duration) -> f32`

With [`num_traits::Float`](https://docs.rs/num-traits/0.2.6/num_traits/float/trait.Float.html) we could've reduced number of methods by factor of two, but unfortunately it's not part of `std`.

5 years agoRollup merge of #59082 - alexreg:cosmetic-2-doc-comments, r=Centril
kennytm [Sat, 16 Mar 2019 06:56:41 +0000 (14:56 +0800)]
Rollup merge of #59082 - alexreg:cosmetic-2-doc-comments, r=Centril

A few improvements to comments in user-facing crates

Not too many this time, and all concern comments (almost all doc comments) in user-facing crates (libstd, libcore, liballoc).

r? @steveklabnik

5 years agoRollup merge of #59079 - euclio:macro-semi, r=estebank
kennytm [Sat, 16 Mar 2019 06:56:39 +0000 (14:56 +0800)]
Rollup merge of #59079 - euclio:macro-semi, r=estebank

add suggestions to invalid macro item error

r? @estebank

5 years agoRollup merge of #59072 - RalfJung:miri-alloc-tests, r=kennytm
kennytm [Sat, 16 Mar 2019 06:56:38 +0000 (14:56 +0800)]
Rollup merge of #59072 - RalfJung:miri-alloc-tests, r=kennytm

we can now skip should_panic tests with the libtest harness

5 years agoRollup merge of #59037 - Manishearth:intra-doc-false, r=QuietMisdreavus
kennytm [Sat, 16 Mar 2019 06:56:33 +0000 (14:56 +0800)]
Rollup merge of #59037 - Manishearth:intra-doc-false, r=QuietMisdreavus

Avoid some common false positives in intra doc link checking

The empty string case is never going to be a link. The numeric case may be a link, but if it were it would have resolved locally. It's more likely the makeshift markdown footnote notation (`[0]`, etc)

r? @QuietMisdreavus

5 years agoRollup merge of #59036 - dlrobertson:fix_59021, r=estebank
kennytm [Sat, 16 Mar 2019 06:56:32 +0000 (14:56 +0800)]
Rollup merge of #59036 - dlrobertson:fix_59021, r=estebank

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
5 years agoRollup merge of #59025 - aoikonomopoulos:issue-57924, r=varkor
kennytm [Sat, 16 Mar 2019 06:56:30 +0000 (14:56 +0800)]
Rollup merge of #59025 - aoikonomopoulos:issue-57924, r=varkor

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

5 years agoRollup merge of #59009 - sfackler:fix-sgx-vectors, r=alexcrichton
kennytm [Sat, 16 Mar 2019 06:56:28 +0000 (14:56 +0800)]
Rollup merge of #59009 - sfackler:fix-sgx-vectors, r=alexcrichton

Fix SGX implementations of read/write_vectored.

5 years agoStabilize Option::copied
Aleksey Kladov [Sat, 16 Mar 2019 11:11:23 +0000 (14:11 +0300)]
Stabilize Option::copied

closes https://github.com/rust-lang/rust/issues/57126

5 years agoRollup merge of #58976 - phil-opp:patch-2, r=alexcrichton
kennytm [Sat, 16 Mar 2019 06:56:25 +0000 (14:56 +0800)]
Rollup merge of #58976 - phil-opp:patch-2, r=alexcrichton

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).

5 years agoRollup merge of #58949 - jethrogb:jb/sgx-thread-id, r=joshtriplett
kennytm [Sat, 16 Mar 2019 06:56:23 +0000 (14:56 +0800)]
Rollup merge of #58949 - jethrogb:jb/sgx-thread-id, r=joshtriplett

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

5 years agoRollup merge of #58941 - wzssyqa:master, r=alexcrichton
kennytm [Sat, 16 Mar 2019 06:56:21 +0000 (14:56 +0800)]
Rollup merge of #58941 - wzssyqa:master, r=alexcrichton

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

5 years agoRollup merge of #58938 - dlrobertson:fix_58280, r=joshtriplett
kennytm [Sat, 16 Mar 2019 06:56:19 +0000 (14:56 +0800)]
Rollup merge of #58938 - dlrobertson:fix_58280, r=joshtriplett

core: ensure VaList passes improper_ctypes lint

Ensure the `core::ffi::VaList` structure passes the `improper_ctypes` lint.

Fixes: #58280
5 years agoRollup merge of #58933 - SimonSapin:alloc-prelude-v1, r=Amanieu
kennytm [Sat, 16 Mar 2019 06:56:18 +0000 (14:56 +0800)]
Rollup merge of #58933 - SimonSapin:alloc-prelude-v1, r=Amanieu

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

5 years agoRollup merge of #58901 - ebarnard:just-copying, r=sfackler
kennytm [Sat, 16 Mar 2019 06:56:16 +0000 (14:56 +0800)]
Rollup merge of #58901 - ebarnard:just-copying, r=sfackler

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.

5 years agoRollup merge of #58873 - GuillaumeGomez:fix-auto-hide-method-doc, r=QuietMisdreavus
kennytm [Sat, 16 Mar 2019 06:56:14 +0000 (14:56 +0800)]
Rollup merge of #58873 - GuillaumeGomez:fix-auto-hide-method-doc, r=QuietMisdreavus

Fix "Auto-hide item methods documentation" setting

Fixes #58825.

r? @QuietMisdreavus

5 years agoRollup merge of #58855 - alexcrichton:wasm-multithreaded-alloc, r=fitzgen
kennytm [Sat, 16 Mar 2019 06:56:13 +0000 (14:56 +0800)]
Rollup merge of #58855 - alexcrichton:wasm-multithreaded-alloc, r=fitzgen

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.

5 years agoRollup merge of #58854 - alexcrichton:update-windows, r=Mark-Simulacrum
kennytm [Sat, 16 Mar 2019 06:56:11 +0000 (14:56 +0800)]
Rollup merge of #58854 - alexcrichton:update-windows, r=Mark-Simulacrum

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.

5 years agoOption and Result: Add references to documentation of as_ref and as_mut
Chris Gregory [Fri, 15 Mar 2019 20:42:10 +0000 (16:42 -0400)]
Option and Result: Add references to documentation of as_ref and as_mut

5 years agoAuto merge of #58556 - oli-obk:imperative_recursion, r=pnkfelix
bors [Fri, 15 Mar 2019 19:24:15 +0000 (19:24 +0000)]
Auto merge of #58556 - oli-obk:imperative_recursion, r=pnkfelix

Optimize copying large ranges of undefmask blocks

Hopefully fixes #58523

5 years agoa simple refactoring and removing comment.
kenta7777 [Fri, 15 Mar 2019 16:58:48 +0000 (01:58 +0900)]
a simple refactoring and removing comment.

5 years agoremoved some unnecessary comments.
kenta7777 [Fri, 15 Mar 2019 16:14:46 +0000 (01:14 +0900)]
removed some unnecessary comments.

5 years agoAdd x86_64 musl host to the manifest
Mateusz Mikuła [Fri, 15 Mar 2019 14:43:56 +0000 (15:43 +0100)]
Add x86_64 musl host to the manifest

5 years agoAuto merge of #58140 - eddyb:advent-of-print, r=nikomatsakis
bors [Fri, 15 Mar 2019 13:58:03 +0000 (13:58 +0000)]
Auto merge of #58140 - eddyb:advent-of-print, r=nikomatsakis

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

5 years agoRemove restriction on isize/usize in repr(simd)
Brian Campbell [Fri, 15 Mar 2019 05:51:26 +0000 (01:51 -0400)]
Remove restriction on isize/usize in repr(simd)

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.

5 years agoreduced a code repetition related to bit operation.
kenta7777 [Fri, 15 Mar 2019 12:48:05 +0000 (21:48 +0900)]
reduced a code repetition related to bit operation.

5 years agorustbuild: remove obsolete fulldeps behavior from src/test/pretty tests, and enable...
Eduard-Mihai Burtescu [Fri, 15 Mar 2019 11:24:34 +0000 (13:24 +0200)]
rustbuild: remove obsolete fulldeps behavior from src/test/pretty tests, and enable them by default.

5 years agoFix rebase fallout and address some review comments.
Eduard-Mihai Burtescu [Thu, 14 Mar 2019 17:47:24 +0000 (19:47 +0200)]
Fix rebase fallout and address some review comments.

5 years agowe can now print on entering/leaving the topmost frame, and make sure it stays that way
Ralf Jung [Thu, 7 Feb 2019 14:02:14 +0000 (15:02 +0100)]
we can now print on entering/leaving the topmost frame, and make sure it stays that way

5 years agorustc: print ExistentialProjection with spaces around `=`, e.g. `dyn Foo<A = X>`.
Eduard-Mihai Burtescu [Sun, 3 Feb 2019 22:48:16 +0000 (00:48 +0200)]
rustc: print ExistentialProjection with spaces around `=`, e.g. `dyn Foo<A = X>`.

5 years agorustc: provide DisambiguatedDefPathData in ty::print.
Eduard-Mihai Burtescu [Sun, 3 Feb 2019 10:59:37 +0000 (12:59 +0200)]
rustc: provide DisambiguatedDefPathData in ty::print.

5 years agorustc: slice substs in ty::print instead of passing the full ones.
Eduard-Mihai Burtescu [Tue, 29 Jan 2019 05:21:11 +0000 (07:21 +0200)]
rustc: slice substs in ty::print instead of passing the full ones.

5 years agorustc: let ty::print::pretty's p! macro call arbitrary methods.
Eduard-Mihai Burtescu [Fri, 25 Jan 2019 10:28:43 +0000 (12:28 +0200)]
rustc: let ty::print::pretty's p! macro call arbitrary methods.

5 years agorustc: remove PrintCx from ty::Print and rely on printers carrying TyCtxt.
Eduard-Mihai Burtescu [Fri, 25 Jan 2019 10:11:50 +0000 (12:11 +0200)]
rustc: remove PrintCx from ty::Print and rely on printers carrying TyCtxt.

5 years agorustc: remove the ability for pretty-printers to override nesting.
Eduard-Mihai Burtescu [Fri, 25 Jan 2019 00:34:19 +0000 (02:34 +0200)]
rustc: remove the ability for pretty-printers to override nesting.

5 years agorustc: don't thread existential projections through path_generic_args.
Eduard-Mihai Burtescu [Thu, 24 Jan 2019 18:47:02 +0000 (20:47 +0200)]
rustc: don't thread existential projections through path_generic_args.

5 years agorustc: make `pretty_path_generic_args`' task as simple as possible.
Eduard-Mihai Burtescu [Thu, 24 Jan 2019 17:52:43 +0000 (19:52 +0200)]
rustc: make `pretty_path_generic_args`' task as simple as possible.

5 years agorustc: print elided regions as '_ instead of nothing, and use a separate check when...
Eduard-Mihai Burtescu [Wed, 23 Jan 2019 17:36:39 +0000 (19:36 +0200)]
rustc: print elided regions as '_ instead of nothing, and use a separate check when optional.

5 years agorustc: always hide defaulted generic args, even in verbose mode.
Eduard-Mihai Burtescu [Wed, 23 Jan 2019 16:39:05 +0000 (18:39 +0200)]
rustc: always hide defaulted generic args, even in verbose mode.

5 years agorustc: move ty::print::PrintConfig's fields to FmtPrinter.
Eduard-Mihai Burtescu [Sun, 20 Jan 2019 17:46:47 +0000 (19:46 +0200)]
rustc: move ty::print::PrintConfig's fields to FmtPrinter.

5 years agorustc: streamline the Print/fmt::Display impls in ppaux and move them to ty::print...
Eduard-Mihai Burtescu [Sun, 20 Jan 2019 12:00:39 +0000 (14:00 +0200)]
rustc: streamline the Print/fmt::Display impls in ppaux and move them to ty::print::pretty.

5 years agorustc: remove obsolete hacks from ppaux, relating to normalization under HRTB.
Eduard-Mihai Burtescu [Sun, 20 Jan 2019 02:56:48 +0000 (04:56 +0200)]
rustc: remove obsolete hacks from ppaux, relating to normalization under HRTB.

5 years agorustc: move Debug impls from ppaux to ty::structural_impls.
Eduard-Mihai Burtescu [Sat, 19 Jan 2019 04:33:44 +0000 (06:33 +0200)]
rustc: move Debug impls from ppaux to ty::structural_impls.

5 years agorustc: disconnect all the Debug functionality from ty::print.
Eduard-Mihai Burtescu [Sat, 19 Jan 2019 01:25:51 +0000 (03:25 +0200)]
rustc: disconnect all the Debug functionality from ty::print.

5 years agorustc: make util::ppaux private.
Eduard-Mihai Burtescu [Fri, 18 Jan 2019 20:14:01 +0000 (22:14 +0200)]
rustc: make util::ppaux private.

5 years agorustc: remove fields from ty::print::PrintConfig available from tcx.
Eduard-Mihai Burtescu [Fri, 18 Jan 2019 19:45:13 +0000 (21:45 +0200)]
rustc: remove fields from ty::print::PrintConfig available from tcx.

5 years agorustc: split out the pretty-printing parts of ty::print into a separate module.
Eduard-Mihai Burtescu [Fri, 18 Jan 2019 19:33:31 +0000 (21:33 +0200)]
rustc: split out the pretty-printing parts of ty::print into a separate module.

5 years agorustc: move ty/print.rs to ty/print/mod.rs.
Eduard-Mihai Burtescu [Fri, 18 Jan 2019 17:18:47 +0000 (19:18 +0200)]
rustc: move ty/print.rs to ty/print/mod.rs.

5 years agorustc_codegen_utils: print all nominal types as paths, in symbol names.
Eduard-Mihai Burtescu [Mon, 14 Jan 2019 22:41:14 +0000 (00:41 +0200)]
rustc_codegen_utils: print all nominal types as paths, in symbol names.

5 years agorustc: don't pass Namespace explicitly, but rather track it in FmtPrinter.
Eduard-Mihai Burtescu [Mon, 14 Jan 2019 21:40:53 +0000 (23:40 +0200)]
rustc: don't pass Namespace explicitly, but rather track it in FmtPrinter.

5 years agorustc: introduce a ty::print::PrettyPrinter helper for printing "<...>".
Eduard-Mihai Burtescu [Mon, 14 Jan 2019 20:07:38 +0000 (22:07 +0200)]
rustc: introduce a ty::print::PrettyPrinter helper for printing "<...>".

5 years agorustc: support overriding type printing in ty::print::Printer.
Eduard-Mihai Burtescu [Mon, 14 Jan 2019 17:56:46 +0000 (19:56 +0200)]
rustc: support overriding type printing in ty::print::Printer.

5 years agorustc: support overriding region printing in ty::print::Printer.
Eduard-Mihai Burtescu [Mon, 14 Jan 2019 15:55:57 +0000 (17:55 +0200)]
rustc: support overriding region printing in ty::print::Printer.

5 years agorustc: centralize region printing in ty::RegionKind's Print impl.
Eduard-Mihai Burtescu [Mon, 14 Jan 2019 14:26:03 +0000 (16:26 +0200)]
rustc: centralize region printing in ty::RegionKind's Print impl.

5 years agorustc: don't keep RegionHighlightMode in a thread-local.
Eduard-Mihai Burtescu [Fri, 11 Jan 2019 11:07:01 +0000 (13:07 +0200)]
rustc: don't keep RegionHighlightMode in a thread-local.

5 years agorustc: pass ty::print::PrintCx by value.
Eduard-Mihai Burtescu [Thu, 10 Jan 2019 11:27:11 +0000 (13:27 +0200)]
rustc: pass ty::print::PrintCx by value.

5 years agorustc: remove the closure from ppaux's p! macro (by making ? implicit).
Eduard-Mihai Burtescu [Thu, 10 Jan 2019 12:50:36 +0000 (14:50 +0200)]
rustc: remove the closure from ppaux's p! macro (by making ? implicit).

5 years agorustc: split off most of ty::print::PrintCx's fields into a separate struct.
Eduard-Mihai Burtescu [Thu, 10 Jan 2019 11:26:35 +0000 (13:26 +0200)]
rustc: split off most of ty::print::PrintCx's fields into a separate struct.

5 years agorustc: uniformize ty::print's error handling by requiring Result.
Eduard-Mihai Burtescu [Wed, 9 Jan 2019 14:30:10 +0000 (16:30 +0200)]
rustc: uniformize ty::print's error handling by requiring Result.

5 years agorustc: rename ppaux' print macro to just p and make its cx input implicit.
Eduard-Mihai Burtescu [Wed, 9 Jan 2019 11:05:05 +0000 (13:05 +0200)]
rustc: rename ppaux' print macro to just p and make its cx input implicit.

5 years agorustc: make ppaux' print macro use only one closure.
Eduard-Mihai Burtescu [Wed, 9 Jan 2019 10:13:39 +0000 (12:13 +0200)]
rustc: make ppaux' print macro use only one closure.

5 years agorustc: replace node_path_str with uses of def_path_str.
Eduard-Mihai Burtescu [Fri, 28 Dec 2018 08:08:30 +0000 (10:08 +0200)]
rustc: replace node_path_str with uses of def_path_str.

5 years agorustc: remove `ty::print::FORCE_ABSOLUTE` altogether.
Eduard-Mihai Burtescu [Fri, 28 Dec 2018 05:27:44 +0000 (07:27 +0200)]
rustc: remove `ty::print::FORCE_ABSOLUTE` altogether.

5 years agorustc: assert `ty::print::FORCE_ABSOLUTE` isn't needed anymore.
Eduard-Mihai Burtescu [Fri, 28 Dec 2018 05:00:30 +0000 (07:00 +0200)]
rustc: assert `ty::print::FORCE_ABSOLUTE` isn't needed anymore.

5 years agorustc: move `...::<impl ...>` printing into `pretty_path_qualified`.
Eduard-Mihai Burtescu [Fri, 28 Dec 2018 04:09:22 +0000 (06:09 +0200)]
rustc: move `...::<impl ...>` printing into `pretty_path_qualified`.

5 years agorustc: move the `FORCE_IMPL_FILENAME_LINE` hack into `print_def_path`.
Eduard-Mihai Burtescu [Fri, 21 Dec 2018 18:08:01 +0000 (20:08 +0200)]
rustc: move the `FORCE_IMPL_FILENAME_LINE` hack into `print_def_path`.

5 years agorustc: move <...>-less impl path special-case to pretty_path_qualified.
Eduard-Mihai Burtescu [Fri, 21 Dec 2018 15:31:33 +0000 (17:31 +0200)]
rustc: move <...>-less impl path special-case to pretty_path_qualified.

5 years agorustc: merge PrintCx::parameterized and def_path printing.
Eduard-Mihai Burtescu [Fri, 21 Dec 2018 15:10:21 +0000 (17:10 +0200)]
rustc: merge PrintCx::parameterized and def_path printing.

5 years agorustc: integrate LocalPathPrinter's behavior into FmtPrinter.
Eduard-Mihai Burtescu [Wed, 19 Dec 2018 12:49:32 +0000 (14:49 +0200)]
rustc: integrate LocalPathPrinter's behavior into FmtPrinter.

5 years agorustc: move the contents of ty::item_path to ty::print.
Eduard-Mihai Burtescu [Wed, 19 Dec 2018 11:25:31 +0000 (13:25 +0200)]
rustc: move the contents of ty::item_path to ty::print.

5 years agorustc: rename item_path to def_path (except the module in ty).
Eduard-Mihai Burtescu [Wed, 19 Dec 2018 10:31:35 +0000 (12:31 +0200)]
rustc: rename item_path to def_path (except the module in ty).

5 years agorustc: remove TyCtxt::parent_def_id in favor of TyCtxt::parent.
Eduard-Mihai Burtescu [Wed, 19 Dec 2018 10:20:59 +0000 (12:20 +0200)]
rustc: remove TyCtxt::parent_def_id in favor of TyCtxt::parent.

5 years agorustc_mir: adjust the type_length_limit diagnostic to be more useful.
Eduard-Mihai Burtescu [Wed, 19 Dec 2018 04:39:33 +0000 (06:39 +0200)]
rustc_mir: adjust the type_length_limit diagnostic to be more useful.

5 years agorustc: pass Option<&Substs> and Namespace around in ty::item_path.
Eduard-Mihai Burtescu [Wed, 19 Dec 2018 03:01:06 +0000 (05:01 +0200)]
rustc: pass Option<&Substs> and Namespace around in ty::item_path.

5 years agoImproved test output for estr-slice
sntdevco [Fri, 15 Mar 2019 11:08:51 +0000 (16:38 +0530)]
Improved test output for estr-slice

5 years agoImproved test output for libcore/num/int_macros
sntdevco [Fri, 15 Mar 2019 11:08:37 +0000 (16:38 +0530)]
Improved test output for libcore/num/int_macros

5 years agoImproved test output for libcore/ops
sntdevco [Fri, 15 Mar 2019 11:08:23 +0000 (16:38 +0530)]
Improved test output for libcore/ops

5 years agoImproved test output for libcore/cell
sntdevco [Fri, 15 Mar 2019 11:08:07 +0000 (16:38 +0530)]
Improved test output for libcore/cell