]> git.lizzy.rs Git - rust.git/log
rust.git
5 years agoAdd some comments
John Kåre Alsaker [Wed, 6 Mar 2019 03:46:46 +0000 (04:46 +0100)]
Add some comments

5 years agoExecute all parallel blocks even if they panic in a single-threaded compiler
John Kåre Alsaker [Sun, 24 Feb 2019 21:37:55 +0000 (22:37 +0100)]
Execute all parallel blocks even if they panic in a single-threaded compiler

5 years agoUpdate tests
John Kåre Alsaker [Sat, 23 Feb 2019 22:25:30 +0000 (23:25 +0100)]
Update tests

5 years agoMake wf checking parallel
John Kåre Alsaker [Sat, 23 Feb 2019 18:18:14 +0000 (19:18 +0100)]
Make wf checking parallel

5 years agoMake misc checking 1 more parallel
John Kåre Alsaker [Sat, 23 Feb 2019 17:32:45 +0000 (18:32 +0100)]
Make misc checking 1 more parallel

5 years agoMake misc checking 2 more parallel
John Kåre Alsaker [Sat, 23 Feb 2019 17:12:38 +0000 (18:12 +0100)]
Make misc checking 2 more parallel

5 years agoRun the first block in a parallel! macro directly in the scope which guarantees that...
John Kåre Alsaker [Sat, 23 Feb 2019 15:47:13 +0000 (16:47 +0100)]
Run the first block in a parallel! macro directly in the scope which guarantees that it will run immediately

5 years agoSplit up privacy checking so privacy_access_levels only does computations required...
John Kåre Alsaker [Sat, 23 Feb 2019 15:40:15 +0000 (16:40 +0100)]
Split up privacy checking so privacy_access_levels only does computations required for AccessLevels

5 years agoOn incorrect cfg literal/identifier, point at the right span
Esteban Küber [Wed, 6 Mar 2019 03:05:03 +0000 (19:05 -0800)]
On incorrect cfg literal/identifier, point at the right span

5 years agoAdd a tracking issue for new as_slice methods
Josh Stone [Wed, 6 Mar 2019 00:28:32 +0000 (16:28 -0800)]
Add a tracking issue for new as_slice methods

5 years agoClean up the example on slice::IterMut::as_slice()
Josh Stone [Wed, 6 Mar 2019 00:20:50 +0000 (16:20 -0800)]
Clean up the example on slice::IterMut::as_slice()

5 years agoApply suggestions from code review
Mazdak Farrokhzad [Wed, 6 Mar 2019 00:17:50 +0000 (16:17 -0800)]
Apply suggestions from code review

Co-Authored-By: cuviper <cuviper@gmail.com>
5 years agoMake adjustments for comments
varkor [Tue, 5 Mar 2019 22:49:37 +0000 (22:49 +0000)]
Make adjustments for comments

5 years agoFix rebase fallout
varkor [Tue, 5 Mar 2019 22:31:06 +0000 (22:31 +0000)]
Fix rebase fallout

5 years agoClean up some generic substs handling
varkor [Wed, 20 Feb 2019 12:47:19 +0000 (12:47 +0000)]
Clean up some generic substs handling

5 years agoFix negative integer literal test
varkor [Wed, 20 Feb 2019 11:01:39 +0000 (11:01 +0000)]
Fix negative integer literal test

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoUpdate test fallout
varkor [Wed, 20 Feb 2019 01:20:35 +0000 (01:20 +0000)]
Update test fallout

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoUpdate const generics tests
varkor [Wed, 20 Feb 2019 01:20:22 +0000 (01:20 +0000)]
Update const generics tests

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoHandle const generics elsewhere
varkor [Wed, 20 Feb 2019 01:20:06 +0000 (01:20 +0000)]
Handle const generics elsewhere

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoHandle const generics in typeck
varkor [Wed, 20 Feb 2019 01:19:42 +0000 (01:19 +0000)]
Handle const generics in typeck

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoHandle new ConstValue variants in mir
varkor [Wed, 20 Feb 2019 01:19:13 +0000 (01:19 +0000)]
Handle new ConstValue variants in mir

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoImplement structural_impls for const generics
varkor [Wed, 20 Feb 2019 01:18:43 +0000 (01:18 +0000)]
Implement structural_impls for const generics

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoAdd HAS_CT_INFER
varkor [Wed, 20 Feb 2019 01:18:30 +0000 (01:18 +0000)]
Add HAS_CT_INFER

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoStub rustdoc const generics implementations
varkor [Wed, 20 Feb 2019 01:18:04 +0000 (01:18 +0000)]
Stub rustdoc const generics implementations

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoImplement collect for const parameters
varkor [Wed, 20 Feb 2019 01:17:35 +0000 (01:17 +0000)]
Implement collect for const parameters

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoImplement wfcheck for const parameters
varkor [Wed, 20 Feb 2019 01:17:15 +0000 (01:17 +0000)]
Implement wfcheck for const parameters

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoRefactor compare_method
varkor [Wed, 20 Feb 2019 01:16:52 +0000 (01:16 +0000)]
Refactor compare_method

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoAdd ast_const_to_const
varkor [Wed, 20 Feb 2019 01:16:42 +0000 (01:16 +0000)]
Add ast_const_to_const

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoMake a lazy const from a const param
varkor [Wed, 20 Feb 2019 01:16:12 +0000 (01:16 +0000)]
Make a lazy const from a const param

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoPretty printing for const generics
varkor [Wed, 20 Feb 2019 01:15:49 +0000 (01:15 +0000)]
Pretty printing for const generics

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoAdd const type flags
varkor [Wed, 20 Feb 2019 01:15:21 +0000 (01:15 +0000)]
Add const type flags

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoTake const into account in context
varkor [Wed, 20 Feb 2019 01:14:56 +0000 (01:14 +0000)]
Take const into account in context

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoStub methods in infer
varkor [Wed, 20 Feb 2019 01:14:18 +0000 (01:14 +0000)]
Stub methods in infer

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoImplement Hash for new types
varkor [Wed, 20 Feb 2019 01:13:49 +0000 (01:13 +0000)]
Implement Hash for new types

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoUpdate diagnostics to include const parameters
varkor [Wed, 20 Feb 2019 01:13:32 +0000 (01:13 +0000)]
Update diagnostics to include const parameters

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoAdd type constraints from const parameters
varkor [Wed, 20 Feb 2019 01:13:19 +0000 (01:13 +0000)]
Add type constraints from const parameters

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoAdd ConstValue::Param and ConstValue::Infer
varkor [Wed, 20 Feb 2019 01:12:46 +0000 (01:12 +0000)]
Add ConstValue::Param and ConstValue::Infer

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoAdd const kind and UnpackedKind::Const
varkor [Wed, 20 Feb 2019 01:12:15 +0000 (01:12 +0000)]
Add const kind and UnpackedKind::Const

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoTake const generics into account when monomorphising
varkor [Wed, 20 Feb 2019 01:11:37 +0000 (01:11 +0000)]
Take const generics into account when monomorphising

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoUse non_erasable_generics for codegen
varkor [Wed, 20 Feb 2019 01:11:10 +0000 (01:11 +0000)]
Use non_erasable_generics for codegen

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoAdd type_flags helper methods to consts
varkor [Wed, 20 Feb 2019 01:10:22 +0000 (01:10 +0000)]
Add type_flags helper methods to consts

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoAdd InferConst
varkor [Wed, 20 Feb 2019 01:10:11 +0000 (01:10 +0000)]
Add InferConst

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoAdd ConstVid
varkor [Wed, 20 Feb 2019 01:10:03 +0000 (01:10 +0000)]
Add ConstVid

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoAdd ParamConst
varkor [Wed, 20 Feb 2019 01:09:52 +0000 (01:09 +0000)]
Add ParamConst

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoAdd Const generic param to ty
varkor [Wed, 20 Feb 2019 01:09:29 +0000 (01:09 +0000)]
Add Const generic param to ty

Co-Authored-By: Gabriel Smith <yodaldevoid@users.noreply.github.com>
5 years agoAdd self to mailmap
Nathan West [Tue, 5 Mar 2019 21:51:18 +0000 (13:51 -0800)]
Add self to mailmap

5 years agoonly print coverage pass lists if running on nightly
QuietMisdreavus [Tue, 5 Mar 2019 20:23:37 +0000 (14:23 -0600)]
only print coverage pass lists if running on nightly

5 years agoremove unused Display impl
QuietMisdreavus [Tue, 5 Mar 2019 20:18:26 +0000 (14:18 -0600)]
remove unused Display impl

5 years agoAdd a test for HashStable stability
John Kåre Alsaker [Tue, 5 Mar 2019 18:28:20 +0000 (19:28 +0100)]
Add a test for HashStable stability

5 years agoMake rustc_macro a Rust 2018 crate
John Kåre Alsaker [Tue, 5 Mar 2019 18:27:50 +0000 (19:27 +0100)]
Make rustc_macro a Rust 2018 crate

5 years agoMove locate_ctxt back
John Kåre Alsaker [Tue, 5 Mar 2019 17:53:23 +0000 (18:53 +0100)]
Move locate_ctxt back

5 years agoRemoved whitespace
Giles Cope [Tue, 5 Mar 2019 17:47:23 +0000 (17:47 +0000)]
Removed whitespace

5 years agoRemove JSBackend from config.toml
Hadley Canine [Tue, 5 Mar 2019 14:52:38 +0000 (14:52 +0000)]
Remove JSBackend from config.toml

JSBackend is implied when building the emscripten backend, and not available for the standard llvm backend.  This commit also puts the example config in sync with the defaults in src/bootstrap/native.rs

5 years agofixes rust-lang#52482
Saleem Jaffer [Sat, 23 Feb 2019 10:41:34 +0000 (16:11 +0530)]
fixes rust-lang#52482

5 years agoUnrolled await macro.
Giles Cope [Tue, 5 Mar 2019 09:06:24 +0000 (09:06 +0000)]
Unrolled await macro.

Was then able to the minimise the reproduction a little further.

5 years agoAuto merge of #58423 - nox:relax-bounds-buf-reader, r=dtolnay
bors [Tue, 5 Mar 2019 05:40:16 +0000 (05:40 +0000)]
Auto merge of #58423 - nox:relax-bounds-buf-reader, r=dtolnay

Relax Read bounds on a bunch of BufReader<R> methods

5 years agoElide invalid method receiver error when it contains TyErr
Esteban Küber [Tue, 5 Mar 2019 05:30:07 +0000 (21:30 -0800)]
Elide invalid method receiver error when it contains TyErr

Fix #58712.

5 years agoUse Ident for project
John Kåre Alsaker [Tue, 5 Mar 2019 04:53:16 +0000 (05:53 +0100)]
Use Ident for project

5 years agoAdd librustc, libsyntax to rust-src distribution.
Taeguk Kwon [Thu, 7 Feb 2019 14:06:41 +0000 (23:06 +0900)]
Add librustc, libsyntax to rust-src distribution.

5 years agoMake the lifetime parameters of tcx consistent.
Gabriela Alexandra Moldovan [Mon, 4 Mar 2019 16:56:57 +0000 (16:56 +0000)]
Make the lifetime parameters of tcx consistent.

5 years agoUpdate Cargo.lock
John Kåre Alsaker [Fri, 1 Mar 2019 00:22:10 +0000 (01:22 +0100)]
Update Cargo.lock

5 years agoAdd ignore and project attributes
John Kåre Alsaker [Sun, 16 Dec 2018 03:44:12 +0000 (04:44 +0100)]
Add ignore and project attributes

5 years agoEncode proc macro stability
John Kåre Alsaker [Mon, 28 Jan 2019 22:40:14 +0000 (23:40 +0100)]
Encode proc macro stability

5 years agoBootstrap changes
John Kåre Alsaker [Sun, 2 Dec 2018 20:47:41 +0000 (21:47 +0100)]
Bootstrap changes

5 years agoAllow linking to a proc macro on the target in metadata and still use a host proc...
John Kåre Alsaker [Sun, 13 Jan 2019 08:18:37 +0000 (09:18 +0100)]
Allow linking to a proc macro on the target in metadata and still use a host proc macro to execute them

5 years agoCreate a derive macro for HashStable
John Kåre Alsaker [Mon, 3 Dec 2018 00:14:35 +0000 (01:14 +0100)]
Create a derive macro for HashStable

5 years agoAdd as_slice() to slice::IterMut and vec::Drain
Josh Stone [Mon, 4 Mar 2019 23:12:45 +0000 (15:12 -0800)]
Add as_slice() to slice::IterMut and vec::Drain

In bluss/indexmap#88, we found that there was no easy way to implement
`Debug` for our `IterMut` and `Drain` iterators. Those are built on
`slice::IterMut` and `vec::Drain`, which implement `Debug` themselves,
but have no other way to access their data. With a new `as_slice()`
method, we can read the data and customize its presentation.

5 years agoFix rebase and move suggestion to its own method
Esteban Küber [Mon, 4 Mar 2019 21:39:52 +0000 (13:39 -0800)]
Fix rebase and move suggestion to its own method

5 years agoAdd an explicit test for issue #50582
Josh Stone [Mon, 4 Mar 2019 21:28:31 +0000 (13:28 -0800)]
Add an explicit test for issue #50582

This code no longer ICEs, and @yodaldevoid found that it was fixed by
commit fe5710a. While that added a similar test, we can explicitly test
this reproducer too.

Closes #50582.

5 years agoAdd fixme
Esteban Küber [Thu, 7 Feb 2019 14:02:17 +0000 (06:02 -0800)]
Add fixme

5 years agoOn return type `impl Trait` for block with no expr point at last semi
Esteban Küber [Tue, 5 Feb 2019 23:17:08 +0000 (15:17 -0800)]
On return type `impl Trait` for block with no expr point at last semi

5 years agoRegression test added for an async ICE.
Giles Cope [Mon, 4 Mar 2019 18:53:12 +0000 (18:53 +0000)]
Regression test added for an async ICE.

5 years agoFix release note problems noticed after merging.
Mark Rousskov [Thu, 28 Feb 2019 00:09:32 +0000 (17:09 -0700)]
Fix release note problems noticed after merging.

5 years agoUse early unwraps instead of bubbling up errors just to unwrap in the end
Oliver Scherer [Sat, 16 Feb 2019 19:51:43 +0000 (20:51 +0100)]
Use early unwraps instead of bubbling up errors just to unwrap in the end

5 years agoRegression test for #58435.
Felix S. Klock II [Mon, 4 Mar 2019 12:16:49 +0000 (13:16 +0100)]
Regression test for #58435.

5 years agoMake the Entry API of HashMap<K, V> Sync and Send (fixes #45219)
Anthony Ramine [Sun, 10 Feb 2019 16:54:56 +0000 (17:54 +0100)]
Make the Entry API of HashMap<K, V> Sync and Send (fixes #45219)

5 years agoAuto merge of #58380 - estebank:missing-match-pats, r=zackmdavis
bors [Mon, 4 Mar 2019 04:46:38 +0000 (04:46 +0000)]
Auto merge of #58380 - estebank:missing-match-pats, r=zackmdavis

Point at enum definition when match patterns are not exhaustive

```
error[E0004]: non-exhaustive patterns: type `X` is non-empty
 --> file.rs:9:11
  |
1 | / enum X {
2 | |     A,
  | |     - variant not covered
3 | |     B,
  | |     - variant not covered
4 | |     C,
  | |     - variant not covered
5 | | }
  | |_- `X` defined here
...
9 |       match x {
  |             ^
  |
  = help: ensure that all possible cases are being handled, possibly by adding wildcards or more match arms

error[E0004]: non-exhaustive patterns: `B` and `C` not covered
  --> file.rs:11:11
   |
1  | / enum X {
2  | |     A,
3  | |     B,
4  | |     C,
   | |     - not covered
5  | | }
   | |_- `X` defined here
...
11 |       match x {
   |             ^ patterns `C` not covered
```

When a match expression doesn't have patterns covering every variant,
point at the enum's definition span. On a best effort basis, point at the
variant(s) that are missing. This does not handle the case when the missing
pattern is due to a field's enum variants:

```
enum E1 {
    A,
    B,
    C,
}
enum E2 {
    A(E1),
    B,
}
fn foo() {
    match E2::A(E1::A) {
        E2::A(E1::B) => {}
        E2::B => {}
    }
    //~^ ERROR `E2::A(E1::A)` and `E2::A(E1::C)` not handled
}
```

Unify look between match with no arms and match with some missing patterns.

Fix #37518.

5 years agoAuto merge of #58807 - Xanewok:update-clippy, r=Xanewok
bors [Mon, 4 Mar 2019 01:46:37 +0000 (01:46 +0000)]
Auto merge of #58807 - Xanewok:update-clippy, r=Xanewok

Update Clippy

Should fix the fallout caused by https://github.com/rust-lang/rust/pull/58321 (still testing it locally).

r? @oli-obk

5 years agoUpdate Clippy
Igor Matuszewski [Sun, 3 Mar 2019 13:48:03 +0000 (14:48 +0100)]
Update Clippy

5 years agoAuto merge of #58505 - schomatis:fix/nll/remove-live-var, r=matthewjasper
bors [Sun, 3 Mar 2019 22:49:16 +0000 (22:49 +0000)]
Auto merge of #58505 - schomatis:fix/nll/remove-live-var, r=matthewjasper

[NLL] Remove `LiveVar`

The `LiveVar` type (and related) made it harder to reason about the code. It seemed as an abstraction that didn't bring any useful concept to the reader (when transitioning from the RFC theory to the actual implementation code).

It achieved a compactness in the vectors storing the def/use/drop information that was related only to the `LocalUseMap`. This PR went in the other direction and favored time over memory (but this decision can be easily reverted to the other side without reintroducing `LiveVar`).

What this PR aims at is to clarify that there's no significant transformation between the MIR `Local` and the `LiveVar` (now refactored as `live_locals: Vec<Local>`): we're just filtering (not mapping) the entire group of `Local`s into a meaningful subset that we should perform the liveness analysis on.

As a side note, there is no guarantee that the liveness analysis is performed only on (what the code calls) "live" variables, if the NLL facts are requested it will be performed on *any* variable so there can't be any assumptions on that regard. (Still, this PR didn't change the general naming convention to reduce the number of changes here and streamline the review process).

**Acceptance criteria:** This PR attempts to do only a minor refactoring and not to change the logic so it can't have any performance impact, particularly, it can't lose any of the significant performance improvement achieved in the great work done in https://github.com/rust-lang/rust/pull/52115.

r? @nikomatsakis

5 years agoAdd .nll.stderr output
Tim [Sun, 3 Mar 2019 22:43:46 +0000 (23:43 +0100)]
Add .nll.stderr output

5 years agoMonomorphize generator field types for debuginfo
Wim Looman [Sun, 3 Mar 2019 22:23:38 +0000 (11:23 +1300)]
Monomorphize generator field types for debuginfo

5 years agorace condition in thread local storage example
benaryorg [Sun, 3 Mar 2019 14:21:52 +0000 (15:21 +0100)]
race condition in thread local storage example

The example had a potential race condition that would still pass the test.
If the thread which was supposed to modify it's own thread local was slower than the instruction to
modify in the main thread, then the test would pass even in case of a failure.
This is would be minor if the child thread was waited for since it check using an `assert_eq` for
the same thing, but vice versa.
However, if the `assert_eq` failed this would trigger a panic, which is not at all caught by the
example since the thread is not waited on.

Signed-off-by: benaryorg <binary@benary.org>
5 years agoAuto merge of #58425 - wesleywiser:more_profiler_changes, r=michaelwoerister
bors [Sun, 3 Mar 2019 19:48:12 +0000 (19:48 +0000)]
Auto merge of #58425 - wesleywiser:more_profiler_changes, r=michaelwoerister

[self-profiler] Make the profiler faster/more efficient

Related to #58372

r? @michaelwoerister

5 years agoAuto merge of #58673 - matthewjasper:typeck-ptr-coercions, r=pnkfelix
bors [Sun, 3 Mar 2019 16:46:12 +0000 (16:46 +0000)]
Auto merge of #58673 - matthewjasper:typeck-ptr-coercions, r=pnkfelix

[NLL] Type check operations with pointer types

It seems these were forgotten about. Moving to `Rvalue::AddressOf` simplifies the coercions from references, but I want this to be fixed as soon as possible.

r? @pnkfelix

5 years agoUse FxHashMap
Wesley Wiser [Mon, 25 Feb 2019 23:46:53 +0000 (18:46 -0500)]
Use FxHashMap

5 years agoReduce the size of events by using a u64 instead of Instant
Wesley Wiser [Wed, 13 Feb 2019 10:33:51 +0000 (05:33 -0500)]
Reduce the size of events by using a u64 instead of Instant

Part of #58372

5 years agoRemove profiler output and replace with a raw event dump
Wesley Wiser [Mon, 11 Feb 2019 23:11:43 +0000 (18:11 -0500)]
Remove profiler output and replace with a raw event dump

Related to #58372

5 years agoWrap the self-profiler in an `Arc<Mutex<>>`
Wesley Wiser [Sun, 10 Feb 2019 22:23:00 +0000 (17:23 -0500)]
Wrap the self-profiler in an `Arc<Mutex<>>`

This will allow us to send it across threads and measure things like
LLVM time.

5 years agoRemove stray ` in the documentation for the FromIterator implementation for Option
Alexandra V [Sun, 3 Mar 2019 12:25:55 +0000 (13:25 +0100)]
Remove stray ` in the documentation for the FromIterator implementation for Option

5 years agoAuto merge of #58879 - spastorino:update_miri, r=oli-obk
bors [Sun, 3 Mar 2019 11:42:39 +0000 (11:42 +0000)]
Auto merge of #58879 - spastorino:update_miri, r=oli-obk

Update miri

Related to #58841

r? @RalfJung

5 years agoAuto merge of #58866 - kennytm:rollup, r=kennytm
bors [Sun, 3 Mar 2019 08:47:51 +0000 (08:47 +0000)]
Auto merge of #58866 - kennytm:rollup, r=kennytm

Rollup of 14 pull requests

Successful merges:

 - #58730 (Have all methods of Filter and FilterMap use internal iteration)
 - #58780 (ManuallyDrop != MaybeUninit)
 - #58782 (Replace `s` with `self` in docs for str methods taking self.)
 - #58785 (allow specifying attributes for tool lints)
 - #58802 (Ensure `record_layout_for_printing()` is inlined.)
 - #58821 (Fixed a syntax error in the pin docs)
 - #58830 (tidy: deny(rust_2018_idioms))
 - #58832 (Revert switching to GCP on AppVeyor)
 - #58833 (tools/rustbook: deny(rust_2018_idioms))
 - #58835 (tools/remote-test-{client,server}: deny(rust_2018_idioms))
 - #58838 (Fix typo in Vec#resize_with documentation)
 - #58842 (Forbid duplicating Cargo as a dependency)
 - #58852 (Update toolchain to build NetBSD release)
 - #58865 (Fix C-variadic function printing)

5 years agoRollup merge of #58865 - dlrobertson:fix-varargs, r=alexreg
kennytm [Sun, 3 Mar 2019 05:56:57 +0000 (13:56 +0800)]
Rollup merge of #58865 - dlrobertson:fix-varargs, r=alexreg

Fix C-variadic function printing

There is no longer a need to append the string `", ..."` to a functions
args as `...` is parsed as an argument and will appear in the functions
arguments.

Fixes: #58853
5 years agoAuto merge of #58793 - Mark-Simulacrum:master-next, r=alexcrichton
bors [Sun, 3 Mar 2019 05:51:44 +0000 (05:51 +0000)]
Auto merge of #58793 - Mark-Simulacrum:master-next, r=alexcrichton

Bootstrap compiler update for 1.35 release

r? @alexcrichton

5 years agoCall clang and llvm-objdump with correct library path
Mark Rousskov [Sun, 3 Mar 2019 05:27:26 +0000 (22:27 -0700)]
Call clang and llvm-objdump with correct library path

5 years agoAuto merge of #58464 - jethrogb:jb/std-test-panic-output, r=alexcrichton
bors [Sun, 3 Mar 2019 03:00:16 +0000 (03:00 +0000)]
Auto merge of #58464 - jethrogb:jb/std-test-panic-output, r=alexcrichton

Use the correct stderr when testing libstd

When compiling the unit tests for libstd, there are two copies of `std` in existence, see [lib.rs](https://github.com/rust-lang/rust/blob/919cf42/src/libstd/lib.rs#L335-L341). This means there are two copies of everything, including thread local variable definitions. Before this PR, it's possible that libtest would configure a stderr sink in one of those copies, whereas the panic logic would inspect the sink in the other copy, resulting in libtest missing the relevant panic message. This PR makes sure that when testing, the panic logic always accesses the stderr sink from “realstd”, using the same logic that libtest uses.

5 years agoNit
Alexander Regueiro [Sat, 2 Mar 2019 15:16:36 +0000 (15:16 +0000)]
Nit

5 years agoReword error message
Esteban Küber [Sun, 3 Mar 2019 00:44:00 +0000 (16:44 -0800)]
Reword error message

5 years agoUse anonymous explicit lifetimes
Esteban Küber [Mon, 11 Feb 2019 19:22:46 +0000 (11:22 -0800)]
Use anonymous explicit lifetimes

5 years agoPoint at enum definition when match patterns are not exhaustive
Esteban Küber [Sun, 10 Feb 2019 13:12:00 +0000 (05:12 -0800)]
Point at enum definition when match patterns are not exhaustive

```
error[E0004]: non-exhaustive patterns: type `X` is non-empty
 --> file.rs:9:11
  |
1 | / enum X {
2 | |     A,
  | |     - variant not covered
3 | |     B,
  | |     - variant not covered
4 | |     C,
  | |     - variant not covered
5 | | }
  | |_- `X` defined here
...
9 |       match x {
  |             ^
  |
  = help: ensure that all possible cases are being handled, possibly by adding wildcards or more match arms

error[E0004]: non-exhaustive patterns: `B` and `C` not covered
  --> file.rs:11:11
   |
1  | / enum X {
2  | |     A,
3  | |     B,
4  | |     C,
   | |     - not covered
5  | | }
   | |_- `X` defined here
...
11 |       match x {
   |             ^ patterns `C` not covered
```

When a match expression doesn't have patterns covering every variant,
point at the enum's definition span. On a best effort basis, point at the
variant(s) that are missing. This does not handle the case when the missing
pattern is due to a field's enum variants:

```
enum E1 {
    A,
    B,
    C,
}
enum E2 {
    A(E1),
    B,
}
fn foo() {
    match E2::A(E1::A) {
        E2::A(E1::B) => {}
        E2::B => {}
    }
    //~^ ERROR `E2::A(E1::A)` and `E2::A(E1::C)` not handled
}
```

Unify look between match with no arms and match with some missing patterns.

Fix #37518.