]> git.lizzy.rs Git - rust.git/log
rust.git
4 years agoRollup merge of #64799 - Aaron1011:fix/double-panic, r=Mark-Simulacrum
Mazdak Farrokhzad [Sun, 29 Sep 2019 02:36:01 +0000 (04:36 +0200)]
Rollup merge of #64799 - Aaron1011:fix/double-panic, r=Mark-Simulacrum

Fix double panic when printing query stack during an ICE

On the latest nightly, any call to `bug` or `span_bug` will result in two panics - the first one as a normal result of calling `bug` / `span_bug`, and the second as a result of trying to print the query stack from the panic handler. This is caused by the query-printing code attempting to acquire a lock on `HandlerInnder`, which is still being held by `bug`.

This PR moves the actual panic out of `HandlerInner`, into `Handler`. This allows us to release the lock on `HandlerInner` before triggering the panic, ensuring that the panic handler will be able to acquire the lock if necessary.

4 years agoRollup merge of #64589 - andre-richter:aarch64_bare_metal, r=Amanieu
Mazdak Farrokhzad [Sun, 29 Sep 2019 02:35:59 +0000 (04:35 +0200)]
Rollup merge of #64589 - andre-richter:aarch64_bare_metal, r=Amanieu

Differentiate AArch64 bare-metal targets between hf and non-hf.

CC @parched, kindly request you to review.

~~Note: This change breaks code that uses the target `aarch64-unknown-none` for the sake of clearer naming as discussed in the links posted below. A search on github reveals that code using `aarch64-unknown-none` is almost exclusively forked from our embedded WG's OS tutorials repo at https://github.com/rust-embedded/rust-raspi3-OS-tutorials, for which the target was originally created.~~

~~I will adapt this repo to the new target name asap once this PR would go upstream. The minor annoyance for the forks to break temporarily should be acceptable for the sake of introducing a better differentiation now before it is too late.
Also, the break would only happen upon updating the toolchain, giving the user a good hint at what has happened.~~

---------- Patch commit message:
Following up on [1] and [2], this PR adds differntiation for aarch64 bare-metal
targets between versions with and without floating point enabled.

This streamlines the target naming with other existing ARM targets and provides
the user clear indication if he is getting float or non-float for his bare-metal
target.

[1] https://github.com/rust-lang/rust/pull/60135#issuecomment-485851356
[2] https://github.com/rust-embedded/wg/issues/230

Closes: rust-embedded/wg#230
4 years agoRollup merge of #63492 - eddyb:cvarargs, r=nagisa,matthewjasper
Mazdak Farrokhzad [Sun, 29 Sep 2019 02:35:58 +0000 (04:35 +0200)]
Rollup merge of #63492 - eddyb:cvarargs, r=nagisa,matthewjasper

Remove redundancy from the implementation of C variadics.

This cleanup was first described in https://github.com/rust-lang/rust/issues/44930#issuecomment-497163539:

* AST doesn't track `c_variadic: bool` anymore, relying solely on a trailing `CVarArgs` type in fn signatures
* HIR doesn't have a `CVarArgs` anymore, relying solely on `c_variadic: bool`
  * same for `ty::FnSig` (see tests for diagnostics improvements from that)
  * `{hir,mir}::Body` have one extra argument than the signature when `c_variadic == true`
  * `rustc_typeck` and `rustc_mir::{build,borrowck}` need to give that argument the right type (which no longer uses a lifetime parameter, but a function-internal scope)
* `rustc_target::abi::call` doesn't need special hacks anymore (since it never sees the `VaListImpl` now, it's all inside the body)

r? @nagisa / @rkruppe cc @dlrobertson @oli-obk

4 years agoAuto merge of #64883 - Centril:rollup-uehjt63, r=Centril
bors [Sat, 28 Sep 2019 22:42:58 +0000 (22:42 +0000)]
Auto merge of #64883 - Centril:rollup-uehjt63, r=Centril

Rollup of 10 pull requests

Successful merges:

 - #64131 (data_structures: Add deterministic FxHashMap and FxHashSet wrappers)
 - #64387 (Fix redundant semicolon lint interaction with proc macro attributes)
 - #64678 (added more context for duplicate lang item errors (fixes #60561))
 - #64763 (Add E0734 and its long explanation)
 - #64793 (Fix format macro expansions spans to be macro-generated)
 - #64837 (Improve wording in documentation of MaybeUninit)
 - #64852 (Print ParamTy span when accessing a field (#52082))
 - #64875 (Upgrade async/await to "used" keywords.)
 - #64876 (Fix typo in intrinsics op safety)
 - #64880 (Slice docs: fix typo)

Failed merges:

r? @ghost

4 years agoRollup merge of #64880 - llogiq:slice-docs, r=Centril
Mazdak Farrokhzad [Sat, 28 Sep 2019 20:12:11 +0000 (22:12 +0200)]
Rollup merge of #64880 - llogiq:slice-docs, r=Centril

Slice docs: fix typo

With #64703, I introduced a typo. Here is the fix. Sorry for the inconvenience.

4 years agoRollup merge of #64876 - vertexclique:vcq/fix-fn-name-intrinsic-op-unsafety, r=varkor
Mazdak Farrokhzad [Sat, 28 Sep 2019 20:12:10 +0000 (22:12 +0200)]
Rollup merge of #64876 - vertexclique:vcq/fix-fn-name-intrinsic-op-unsafety, r=varkor

Fix typo in intrinsics op safety

Title pretty much sums up.

4 years agoRollup merge of #64875 - ehuss:async-await-reserved, r=estebank
Mazdak Farrokhzad [Sat, 28 Sep 2019 20:12:08 +0000 (22:12 +0200)]
Rollup merge of #64875 - ehuss:async-await-reserved, r=estebank

Upgrade async/await to "used" keywords.

AFAIK, this only affects error messages, removing the word "reserved".

Closes #64853

4 years agoRollup merge of #64852 - Baranowski:param_note_52082, r=estebank
Mazdak Farrokhzad [Sat, 28 Sep 2019 20:12:07 +0000 (22:12 +0200)]
Rollup merge of #64852 - Baranowski:param_note_52082, r=estebank

Print ParamTy span when accessing a field (#52082)

4 years agoRollup merge of #64837 - nliberg:patch-2, r=Centril
Mazdak Farrokhzad [Sat, 28 Sep 2019 20:12:06 +0000 (22:12 +0200)]
Rollup merge of #64837 - nliberg:patch-2, r=Centril

Improve wording in documentation of MaybeUninit

Changes

> variables are properly initialized **at** their respective type

into

> variables are properly initialized **as** their respective type

4 years agoRollup merge of #64793 - immunant:format_spans, r=matthewjasper
Mazdak Farrokhzad [Sat, 28 Sep 2019 20:12:04 +0000 (22:12 +0200)]
Rollup merge of #64793 - immunant:format_spans, r=matthewjasper

Fix format macro expansions spans to be macro-generated

New Exprs generated as part of the format macro expansion should get the macro
expansion span with an expansion context, rather than the span of the format string
which does not.

4 years agoRollup merge of #64763 - GuillaumeGomez:long-err-explanation-E0734, r=estebank
Mazdak Farrokhzad [Sat, 28 Sep 2019 20:12:02 +0000 (22:12 +0200)]
Rollup merge of #64763 - GuillaumeGomez:long-err-explanation-E0734, r=estebank

Add E0734 and its long explanation

Part of https://github.com/rust-lang/rust/issues/61137

4 years agoRollup merge of #64678 - tomtau:fix/no-std-error, r=matthewjasper
Mazdak Farrokhzad [Sat, 28 Sep 2019 20:12:01 +0000 (22:12 +0200)]
Rollup merge of #64678 - tomtau:fix/no-std-error, r=matthewjasper

added more context for duplicate lang item errors (fixes #60561)

Some more information about #60561 -- these errors are pretty common when one works in restrictive environments with `no_std` or customized `std`, but they don't provide much context for debugging, as any transitive dependency could have brought in `std` crate. With that, currently, one needs to use something like `cargo tree` and investigate transitive dependencies one by one.

It'll be more helpful to know at least the crate that uses `std` (which `cargo tree` doesn't show) to pin down this investigation when debugging.

I'm not sure what the best way to get this context is inside rustc internals (I'm new to them). I found that `all_crate_nums` query returns the crates in some dependency order, so printing out the name of the preceding crate seems to do the trick. But I welcome suggestions if this can be done in a better way.

4 years agoRollup merge of #64387 - nathanwhit:redundant-semi-fix, r=varkor
Mazdak Farrokhzad [Sat, 28 Sep 2019 20:11:59 +0000 (22:11 +0200)]
Rollup merge of #64387 - nathanwhit:redundant-semi-fix, r=varkor

Fix redundant semicolon lint interaction with proc macro attributes

Fixes #63967 and fixes #63947, both of which were caused by the lint's changes to the parser interacting poorly with proc macro attributes and causing span information to be lost

r? @varkor

4 years agoRollup merge of #64131 - shivan1b:deterministic-fxhashmap, r=Mark-Simulacrum
Mazdak Farrokhzad [Sat, 28 Sep 2019 20:11:58 +0000 (22:11 +0200)]
Rollup merge of #64131 - shivan1b:deterministic-fxhashmap, r=Mark-Simulacrum

data_structures: Add deterministic FxHashMap and FxHashSet wrappers

StableMap
A wrapper for FxHashMap that allows to `insert`, `remove`, `get`, `get_mut` and convert a hashmap into a sorted vector using the method `into_sorted_vector` but no iteration support.

StableSet
A wrapper for FxHashSet that allows to `insert`, `remove`, `get` and convert a hashset into a sorted vector using the method `into_sorted_vector` but no iteration support.

Addresses issue #63713

4 years agoSlice docs: fix typo
Andre Bogus [Sat, 28 Sep 2019 19:02:51 +0000 (21:02 +0200)]
Slice docs: fix typo

4 years agoFix typo in intrinsics op safety
Mahmut Bulut [Sat, 28 Sep 2019 16:24:05 +0000 (18:24 +0200)]
Fix typo in intrinsics op safety

4 years agoUpgrade async/await to "used" keywords.
Eric Huss [Sat, 28 Sep 2019 16:15:06 +0000 (09:15 -0700)]
Upgrade async/await to "used" keywords.

4 years agoAuto merge of #64419 - wesleywiser:const_prop_use_ecx, r=oli-obk
bors [Sat, 28 Sep 2019 15:54:12 +0000 (15:54 +0000)]
Auto merge of #64419 - wesleywiser:const_prop_use_ecx, r=oli-obk

Deduplicate some code between miri and const prop

r? @oli-obk

4 years agorustc_codegen_ssa: remove redundant `va_list_ref` field from `FunctionCx`.
Eduard-Mihai Burtescu [Mon, 12 Aug 2019 12:27:31 +0000 (15:27 +0300)]
rustc_codegen_ssa: remove redundant `va_list_ref` field from `FunctionCx`.

4 years agorustc: rely on c_variadic == true instead of CVarArgs in HIR/Ty fn signatures.
Eduard-Mihai Burtescu [Sat, 10 Aug 2019 11:38:17 +0000 (14:38 +0300)]
rustc: rely on c_variadic == true instead of CVarArgs in HIR/Ty fn signatures.

4 years agorustc: don't store a lifetime in hir::TyKind::CVarArgs.
Eduard-Mihai Burtescu [Sun, 11 Aug 2019 15:34:31 +0000 (18:34 +0300)]
rustc: don't store a lifetime in hir::TyKind::CVarArgs.

4 years agosyntax: don't keep a redundant c_variadic flag in the AST.
Eduard-Mihai Burtescu [Sat, 10 Aug 2019 10:29:39 +0000 (13:29 +0300)]
syntax: don't keep a redundant c_variadic flag in the AST.

4 years agoRefactor into ban_nonexisting_field method
Wojciech Baranowski [Sat, 28 Sep 2019 12:26:00 +0000 (15:26 +0300)]
Refactor into ban_nonexisting_field method

4 years agoAuto merge of #64455 - GuillaumeGomez:long-error-explanation-E0531, r=Centril
bors [Sat, 28 Sep 2019 12:06:44 +0000 (12:06 +0000)]
Auto merge of #64455 - GuillaumeGomez:long-error-explanation-E0531, r=Centril

Add Long error explanation for E0531

Part of #61137.

4 years agoFix lint-exceeding-bitshifts ui tests
Wesley Wiser [Sat, 28 Sep 2019 00:09:52 +0000 (20:09 -0400)]
Fix lint-exceeding-bitshifts ui tests

4 years agoAllow reading non-mutable statics in const prop
Wesley Wiser [Wed, 25 Sep 2019 02:08:22 +0000 (22:08 -0400)]
Allow reading non-mutable statics in const prop

4 years agoImplement CRs
Wojciech Baranowski [Sat, 28 Sep 2019 11:39:19 +0000 (14:39 +0300)]
Implement CRs

4 years agoImprove wording in documentation of MaybeUninit
Nils Liberg [Fri, 27 Sep 2019 11:54:05 +0000 (13:54 +0200)]
Improve wording in documentation of MaybeUninit

4 years agodata_structures: Add deterministic FxHashMap and FxHashSet wrappers
Shivani Bhardwaj [Tue, 3 Sep 2019 10:12:54 +0000 (15:42 +0530)]
data_structures: Add deterministic FxHashMap and FxHashSet wrappers

StableMap
A wrapper for FxHashMap that allows to insert, remove, get and get_mut
but no iteration support.

StableSet
A wrapper for FxHashSet that allows to insert, remove, get and create a
sorted vector from a hashset but no iteration support.

4 years agoAuto merge of #64864 - Centril:rollup-pxz6tw3, r=Centril
bors [Sat, 28 Sep 2019 03:38:48 +0000 (03:38 +0000)]
Auto merge of #64864 - Centril:rollup-pxz6tw3, r=Centril

Rollup of 14 pull requests

Successful merges:

 - #64703 (Docs: slice elements are equidistant)
 - #64745 (Include message on tests that should panic but do not)
 - #64781 (Remove stray references to the old global tcx)
 - #64794 (Remove unused DepTrackingMap)
 - #64802 (Account for tail expressions when pointing at return type)
 - #64809 (hir: Disallow `target_feature` on constants)
 - #64815 (Fix div_duration() marked as stable by mistake)
 - #64818 (update rtpSpawn's parameters type(It's prototype has been updated in libc))
 - #64830 (Thou shallt not `.abort_if_errors()`)
 - #64836 (Stabilize map_get_key_value feature)
 - #64845 (pin.rs: fix links to primitives in documentation)
 - #64847 (Upgrade env_logger to 0.7)
 - #64851 (Add mailmap entry for Dustin Bensing by request)
 - #64859 (check_match: improve diagnostics for `let A = 2;` with `const A: i32 = 3`)

Failed merges:

r? @ghost

4 years agoRollup merge of #64859 - Centril:const-def-here-new-var, r=estebank
Mazdak Farrokhzad [Sat, 28 Sep 2019 03:38:00 +0000 (05:38 +0200)]
Rollup merge of #64859 - Centril:const-def-here-new-var, r=estebank

check_match: improve diagnostics for `let A = 2;` with `const A: i32 = 3`

For example:

```
error[E0005]: refutable pattern in local binding: `std::i32::MIN..=1i32` and `3i32..=std::i32::MAX` not covered
  --> $DIR/const-pat-non-exaustive-let-new-var.rs:2:9
   |
LL |     let A = 3;
   |         ^
   |         |
   |         interpreted as a constant pattern, not a new variable
   |         help: introduce a variable instead: `a_var`
...
LL |     const A: i32 = 2;
   |     ----------------- constant defined here
```

r? @estebank
cc @matthiaskrgr @rpjohnst

4 years agoRollup merge of #64851 - Mark-Simulacrum:mailmap-update, r=varkor
Mazdak Farrokhzad [Sat, 28 Sep 2019 03:37:58 +0000 (05:37 +0200)]
Rollup merge of #64851 - Mark-Simulacrum:mailmap-update, r=varkor

Add mailmap entry for Dustin Bensing by request

This should deduplicate entries from @pythoneer between the stdarch submodule and this repo itself on thanks.rust-lang.org.

4 years agoRollup merge of #64847 - mati865:env_logger, r=alexcrichton
Mazdak Farrokhzad [Sat, 28 Sep 2019 03:37:57 +0000 (05:37 +0200)]
Rollup merge of #64847 - mati865:env_logger, r=alexcrichton

Upgrade env_logger to 0.7

`./x.py test` passed locally.

4 years agoRollup merge of #64845 - rusty-snake:patch-1, r=jonas-schievink
Mazdak Farrokhzad [Sat, 28 Sep 2019 03:37:56 +0000 (05:37 +0200)]
Rollup merge of #64845 - rusty-snake:patch-1, r=jonas-schievink

pin.rs: fix links to primitives in documentation

4 years agoRollup merge of #64836 - lzutao:stabilize-map_get_key_value, r=SimonSapin
Mazdak Farrokhzad [Sat, 28 Sep 2019 03:37:54 +0000 (05:37 +0200)]
Rollup merge of #64836 - lzutao:stabilize-map_get_key_value, r=SimonSapin

Stabilize map_get_key_value feature

FCP done in https://github.com/rust-lang/rust/issues/49347#issuecomment-521728031
r? @SimonSapin
Closes #49347

4 years agoRollup merge of #64830 - Centril:thou-shallt-not-abort, r=estebank
Mazdak Farrokhzad [Sat, 28 Sep 2019 03:37:52 +0000 (05:37 +0200)]
Rollup merge of #64830 - Centril:thou-shallt-not-abort, r=estebank

Thou shallt not `.abort_if_errors()`

r? @estebank

4 years agoRollup merge of #64818 - Wind-River:master, r=alexcrichton
Mazdak Farrokhzad [Sat, 28 Sep 2019 03:37:51 +0000 (05:37 +0200)]
Rollup merge of #64818 - Wind-River:master, r=alexcrichton

update rtpSpawn's parameters type(It's prototype has been updated in libc)

r? @alexcrichton

4 years agoRollup merge of #64815 - JMS55:patch-1, r=jonas-schievink
Mazdak Farrokhzad [Sat, 28 Sep 2019 03:37:49 +0000 (05:37 +0200)]
Rollup merge of #64815 - JMS55:patch-1, r=jonas-schievink

Fix div_duration() marked as stable by mistake

4 years agoRollup merge of #64809 - davidtwco:issue-64768-target-feature-const, r=varkor
Mazdak Farrokhzad [Sat, 28 Sep 2019 03:37:47 +0000 (05:37 +0200)]
Rollup merge of #64809 - davidtwco:issue-64768-target-feature-const, r=varkor

hir: Disallow `target_feature` on constants

Fixes #64768.

This PR fixes an ICE when `#[target_feature]` is applied to constants by disallowing this with the same error as when `#[target_feature]` is applied to other places it shouldn't be.

I couldn't see anything in the [RFC](https://github.com/rust-lang/rfcs/blob/master/text/2045-target-feature.md) that suggested that `#[target_feature]` should be applicable to constants or any tests that suggested it should, though I might have missed something - if this is desirable in future, it remains possible to remove this error (but for the time being, I think this error is better than an ICE).

I also added some extra cases to the test for other places where `#[target_feature]` should not be permitted.

cc @gnzlbg

4 years agoRollup merge of #64802 - estebank:walk-parents-iterator, r=matthewjasper
Mazdak Farrokhzad [Sat, 28 Sep 2019 03:37:46 +0000 (05:37 +0200)]
Rollup merge of #64802 - estebank:walk-parents-iterator, r=matthewjasper

Account for tail expressions when pointing at return type

When there's a type mismatch we make an effort to check if it was
caused by a function's return type. This logic now makes sure to
only point at the return type if the error happens in a tail
expression.

Turn `walk_parent_nodes` method into an iterator.

CC #39968, CC #40799.

4 years agoRollup merge of #64794 - Mark-Simulacrum:rm-dep-track-map, r=estebank
Mazdak Farrokhzad [Sat, 28 Sep 2019 03:37:44 +0000 (05:37 +0200)]
Rollup merge of #64794 - Mark-Simulacrum:rm-dep-track-map, r=estebank

Remove unused DepTrackingMap

Deletes some related code (MemoizationMap trait, etc.)

I believe this became unused with red/green incremental introduction, but am uncertain.

4 years agoRollup merge of #64781 - Mark-Simulacrum:no-global-tcx, r=eddyb
Mazdak Farrokhzad [Sat, 28 Sep 2019 03:37:43 +0000 (05:37 +0200)]
Rollup merge of #64781 - Mark-Simulacrum:no-global-tcx, r=eddyb

Remove stray references to the old global tcx

4 years agoRollup merge of #64745 - kennethbgoodin:should-panic-msg, r=varkor
Mazdak Farrokhzad [Sat, 28 Sep 2019 03:37:42 +0000 (05:37 +0200)]
Rollup merge of #64745 - kennethbgoodin:should-panic-msg, r=varkor

Include message on tests that should panic but do not

As per issue #60790 includes a message for tests marked `#[should_panic]` that do not panic as expected.

Fixes #60790.

4 years agoRollup merge of #64703 - llogiq:slices-elems-are-equidistant, r=rkruppe
Mazdak Farrokhzad [Sat, 28 Sep 2019 03:37:40 +0000 (05:37 +0200)]
Rollup merge of #64703 - llogiq:slices-elems-are-equidistant, r=rkruppe

Docs: slice elements are equidistant

Recently, someone asked why `[char]` and `str` are not interchangeable, and I explained that in a slice, the elements must be laid out equidistantly, whereas the chars in a `str` are stored compactly regardless their size. However I couldn't find this documented anywhere, so here's a small addition of this fact.

4 years agoAdd test for redundant_semicolon lint interaction with proc macro attrs
Nathan [Sat, 28 Sep 2019 02:51:25 +0000 (22:51 -0400)]
Add test for redundant_semicolon lint interaction with proc macro attrs

4 years agoImprove diagnostic for `let A = 0;`
Mazdak Farrokhzad [Sat, 28 Sep 2019 00:30:48 +0000 (02:30 +0200)]
Improve diagnostic for `let A = 0;`
where `A` is a constant, not a new variable.

4 years agoFilter out stmts made for the redundant_semicolon lint when pretty-printing
nathanwhit [Thu, 12 Sep 2019 02:05:26 +0000 (22:05 -0400)]
Filter out stmts made for the redundant_semicolon lint when pretty-printing

4 years agoIntroduce a `ConstPropMachine`
Wesley Wiser [Wed, 25 Sep 2019 01:12:59 +0000 (21:12 -0400)]
Introduce a `ConstPropMachine`

This allows us to avoid changing things directly in the miri engine just
for const prop.

4 years agoWork around for #64506
Wesley Wiser [Tue, 17 Sep 2019 09:48:38 +0000 (05:48 -0400)]
Work around for #64506

4 years agoMove Ref-from-arg checking from `step.rs` to `const_prop.rs`
Wesley Wiser [Sat, 14 Sep 2019 11:00:16 +0000 (07:00 -0400)]
Move Ref-from-arg checking from `step.rs` to `const_prop.rs`

4 years agoRespond to code review feedback and fix tidy
Wesley Wiser [Fri, 13 Sep 2019 12:40:43 +0000 (08:40 -0400)]
Respond to code review feedback and fix tidy

4 years agoDon't run the ConstProp MIR pass on generators
Wesley Wiser [Fri, 13 Sep 2019 02:03:20 +0000 (22:03 -0400)]
Don't run the ConstProp MIR pass on generators

This can cause cycles as `ConstProp` uses `layout_of` which, for
generators, uses `optimized_mir` which runs `ConstProp`.

4 years ago[const-prop] Replace `Ref` handling with use of `InterpCx`
Wesley Wiser [Wed, 11 Sep 2019 11:46:17 +0000 (07:46 -0400)]
[const-prop] Replace `Ref` handling with use of `InterpCx`

4 years ago[const-prop] Replace some `Binaryp` handling with use of `InterpCx`
Wesley Wiser [Tue, 10 Sep 2019 02:28:02 +0000 (22:28 -0400)]
[const-prop] Replace some `Binaryp` handling with use of `InterpCx`

4 years ago[const-prop] Replace `CheckedBinaryOp` handling with use of `InterpCx`
Wesley Wiser [Mon, 9 Sep 2019 01:02:54 +0000 (21:02 -0400)]
[const-prop] Replace `CheckedBinaryOp` handling with use of `InterpCx`

4 years ago[const-prop] Replace most `UnaryOp` handling with use of `InterpCx`
Wesley Wiser [Fri, 6 Sep 2019 11:48:52 +0000 (07:48 -0400)]
[const-prop] Replace most `UnaryOp` handling with use of `InterpCx`

4 years ago[const-prop] Replace `NullaryOp` handling with use of `InterpCx`
Wesley Wiser [Fri, 6 Sep 2019 09:49:18 +0000 (05:49 -0400)]
[const-prop] Replace `NullaryOp` handling with use of `InterpCx`

4 years ago[const-prop] Replace `Cast` handling with use of `InterpCx`
Wesley Wiser [Fri, 6 Sep 2019 01:42:30 +0000 (21:42 -0400)]
[const-prop] Replace `Cast` handling with use of `InterpCx`

4 years ago[const-prop] Replace `Use` handling with use of `InterpCx`
Wesley Wiser [Fri, 6 Sep 2019 01:06:57 +0000 (21:06 -0400)]
[const-prop] Replace `Use` handling with use of `InterpCx`

4 years ago[const-prop] Replace `eval_place()` with use of `InterpCx`
Wesley Wiser [Wed, 4 Sep 2019 01:56:15 +0000 (21:56 -0400)]
[const-prop] Replace `eval_place()` with use of `InterpCx`

4 years agoAuto merge of #64790 - Centril:rip-ast-borrowck, r=matthewjasper
bors [Fri, 27 Sep 2019 21:17:09 +0000 (21:17 +0000)]
Auto merge of #64790 - Centril:rip-ast-borrowck, r=matthewjasper

Rest In Peace, AST borrowck (2012-2019)

After having served us for 7 years, the AST borrow-checker is no more.

This PR starts from the commit `rm -rf librustc_ast_borrowck`, building on https://github.com/rust-lang/rust/pull/64221, and is probably best read commit by commit.

Migrate mode is not removed yet as it may be useful for NLL => polonius and it is also used for the `mutable_borrow_reservation_conflict` issue (https://github.com/rust-lang/rust/issues/59159).

r? @matthewjasper

------------------------

![ast-borrowck-rip](https://user-images.githubusercontent.com/855702/65646791-91a87600-dffc-11e9-9814-deed6b821c80.png)

4 years ago--bless --compare-mode=nll
Mazdak Farrokhzad [Fri, 27 Sep 2019 18:14:47 +0000 (20:14 +0200)]
--bless --compare-mode=nll

4 years agoPrint ParamTy span when accessing a field (#52082)
Wojciech Baranowski [Thu, 26 Sep 2019 15:14:27 +0000 (18:14 +0300)]
Print ParamTy span when accessing a field (#52082)

4 years ago-Z unpretty message: include expanded,hygiene
Mazdak Farrokhzad [Fri, 27 Sep 2019 07:02:18 +0000 (09:02 +0200)]
-Z unpretty message: include expanded,hygiene

4 years agoInline the remaining hir::Arm::top_pats_hack
Mazdak Farrokhzad [Thu, 26 Sep 2019 00:51:30 +0000 (02:51 +0200)]
Inline the remaining hir::Arm::top_pats_hack

4 years agoRemove AccessKind::Move.
Mazdak Farrokhzad [Thu, 26 Sep 2019 00:32:50 +0000 (02:32 +0200)]
Remove AccessKind::Move.

4 years agocleanup dead ast-borrowck / migrate-mode code.
Mazdak Farrokhzad [Wed, 25 Sep 2019 23:22:16 +0000 (01:22 +0200)]
cleanup dead ast-borrowck / migrate-mode code.

4 years agocleanup check_match wrt. SignalledError.
Mazdak Farrokhzad [Wed, 25 Sep 2019 22:36:41 +0000 (00:36 +0200)]
cleanup check_match wrt. SignalledError.

4 years agoRemove unpretty=flowgraph.
Mazdak Farrokhzad [Wed, 25 Sep 2019 21:18:47 +0000 (23:18 +0200)]
Remove unpretty=flowgraph.

4 years agodon't borrowck::check_crate(tcx) anymore.
Mazdak Farrokhzad [Wed, 25 Sep 2019 21:17:58 +0000 (23:17 +0200)]
don't borrowck::check_crate(tcx) anymore.

4 years agoRemove librustc_ast_borrowck from driver & interface.
Mazdak Farrokhzad [Wed, 25 Sep 2019 21:17:01 +0000 (23:17 +0200)]
Remove librustc_ast_borrowck from driver & interface.

4 years agorm -rf librustc_ast_borrowck
Mazdak Farrokhzad [Wed, 25 Sep 2019 20:41:08 +0000 (22:41 +0200)]
rm -rf librustc_ast_borrowck

4 years agoDocs: slice elements are equidistant
Andre Bogus [Mon, 23 Sep 2019 07:28:31 +0000 (09:28 +0200)]
Docs: slice elements are equidistant

4 years agoRemove shrink_to_tcx_lifetime
Mark Rousskov [Wed, 25 Sep 2019 20:40:24 +0000 (16:40 -0400)]
Remove shrink_to_tcx_lifetime

There's no longer two distinct gcx and tcx lifetimes which made this
necessary (or, at least, the code compiles -- it's possible we got
better at normalizing, but that seems unlikely).

4 years agoRemove stray uses of gcx name
Mark Rousskov [Wed, 25 Sep 2019 20:35:19 +0000 (16:35 -0400)]
Remove stray uses of gcx name

4 years agoRemove lift_to_global
Mark Rousskov [Wed, 25 Sep 2019 19:40:21 +0000 (15:40 -0400)]
Remove lift_to_global

4 years agoRemove global_tcx from TyCtxt
Mark Rousskov [Wed, 25 Sep 2019 19:36:14 +0000 (15:36 -0400)]
Remove global_tcx from TyCtxt

The non-global context was removed; there's only one context now. This
is a noop method that only serves to confuse readers -- remove it.

4 years agoAdd mailmap entry for Dustin Bensing by request
Mark Rousskov [Fri, 27 Sep 2019 17:29:22 +0000 (13:29 -0400)]
Add mailmap entry for Dustin Bensing by request

4 years agoAuto merge of #64849 - matthiaskrgr:submodule_upd, r=Manishearth
bors [Fri, 27 Sep 2019 17:28:00 +0000 (17:28 +0000)]
Auto merge of #64849 - matthiaskrgr:submodule_upd, r=Manishearth

submodules: update clippy from 68ff8b19 to edd90473

Changes:
````
Remove clippy::author attribute from trailing_zeroes test
Move author issue test to author subdir
Fix author lint
Rustup to rust-lang/rust#64813
Refactor `booleans`
Detect assignment ops in integer_arithmetic
````

Fixes #64843

r? @oli-obk  @Manishearth

4 years agosubmodules: update clippy from 68ff8b19 to edd90473
Matthias Krüger [Fri, 27 Sep 2019 17:08:47 +0000 (19:08 +0200)]
submodules: update clippy from 68ff8b19 to edd90473

Changes:
````
Remove clippy::author attribute from trailing_zeroes test
Move author issue test to author subdir
Fix author lint
Rustup to rust-lang/rust#64813
Refactor `booleans`
Detect assignment ops in integer_arithmetic
````

4 years agofix rebase
Esteban Küber [Fri, 27 Sep 2019 16:47:37 +0000 (09:47 -0700)]
fix rebase

4 years agoreview comments
Esteban Küber [Thu, 26 Sep 2019 21:38:01 +0000 (14:38 -0700)]
review comments

4 years agoAccount for tail expressions when pointing at return type
Esteban Küber [Thu, 26 Sep 2019 06:01:01 +0000 (23:01 -0700)]
Account for tail expressions when pointing at return type

When there's a type mismatch we make an effort to check if it was
caused by a function's return type. This logic now makes sure to
only point at the return type if the error happens in a tail
expression.

4 years agoTurn `walk_parent_nodes` method into an iterator
Esteban Küber [Thu, 26 Sep 2019 00:05:30 +0000 (17:05 -0700)]
Turn `walk_parent_nodes` method into an iterator

4 years agogetting more context for duplicate lang items (fixes #60561)
Tomas Tauber [Fri, 27 Sep 2019 13:32:04 +0000 (21:32 +0800)]
getting more context for duplicate lang items (fixes #60561)

Where possible, the error message includes the name of the crate
that brought in the crate with duplicate lang items (which
helps with debugging). This information is passed on from cstore
using the `extern_crate` query.

4 years agopin.rs: fix links to primitives in documentation
rusty-snake [Fri, 27 Sep 2019 14:33:08 +0000 (14:33 +0000)]
pin.rs: fix links to primitives in documentation

4 years agoAuto merge of #63937 - Nashenas88:rustdoc_57180, r=GuillaumeGomez
bors [Fri, 27 Sep 2019 13:51:25 +0000 (13:51 +0000)]
Auto merge of #63937 - Nashenas88:rustdoc_57180, r=GuillaumeGomez

 Fix ICE in rustdoc when merging generic and where bounds of an Fn with an output

Fixes #57180

4 years agoDon't check error_codes files for lints
Guillaume Gomez [Fri, 27 Sep 2019 11:24:59 +0000 (13:24 +0200)]
Don't check error_codes files for lints

4 years agoUpdate ui tests
Guillaume Gomez [Wed, 25 Sep 2019 11:58:52 +0000 (13:58 +0200)]
Update ui tests

4 years agoAdd long error explanation for E0734
Guillaume Gomez [Wed, 25 Sep 2019 11:58:42 +0000 (13:58 +0200)]
Add long error explanation for E0734

4 years agoStabilize map_get_key_value feature
Lzu Tao [Fri, 27 Sep 2019 11:21:57 +0000 (11:21 +0000)]
Stabilize map_get_key_value feature

4 years agoAuto merge of #64813 - varkor:node-to-kind, r=Centril
bors [Fri, 27 Sep 2019 10:05:38 +0000 (10:05 +0000)]
Auto merge of #64813 - varkor:node-to-kind, r=Centril

Rename `*.node` to `*.kind`, and `hair::Pattern*` to `hair::Pat*`

In both `ast::Expr` and `hir::Expr`:

- Rename `Expr.node` to `Expr.kind`.
- Rename `Pat.node` to `Pat.kind`.
- Rename `ImplItem.node` to `ImplItem.kind`.
- Rename `Lit.node` to `Lit.kind`.
- Rename `TraitItem.node` to `TraitItem.kind`.
- Rename `Ty.node` to `Ty.kind`.
- Rename `Stmt.node` to `Stmt.kind`.
- Rename `Item.node` to `Item.kind`.
- Rename `ForeignItem.node` to `ForeignItem.kind`.
- Rename `MetaItem.node` to `MetaItem.kind`.

Also:
- Rename `hair::FieldPattern` to `hair::FieldPat`.
- Rename `hair::PatternKind` to `hair::PatKind`.
- Rename `hair::PatternRange` to `hair::PatRange`.
- Rename `PatternContext` to `PatCtxt`.
- Rename `PatternTypeProjection` to `PatTyProj`.
- Rename `hair::Pattern` to `hair::Pat`.

These two sets of changes are grouped together to aid with merging. The only changes are renamings.

r? @petrochenkov

4 years agolowering: don't .abort_if_errors()
Mazdak Farrokhzad [Fri, 27 Sep 2019 04:09:32 +0000 (06:09 +0200)]
lowering: don't .abort_if_errors()

4 years agoFix librustcdoc test
varkor [Fri, 27 Sep 2019 00:37:14 +0000 (01:37 +0100)]
Fix librustcdoc test

4 years agoAuto merge of #64819 - Manishearth:clippyup, r=Manishearth
bors [Fri, 27 Sep 2019 00:15:40 +0000 (00:15 +0000)]
Auto merge of #64819 - Manishearth:clippyup, r=Manishearth

Update clippy

r? @ghost

4 years agoInclude message on tests that should panic
Kenny Goodin [Tue, 24 Sep 2019 18:20:52 +0000 (14:20 -0400)]
Include message on tests that should panic

4 years agoFix ui-fulldeps tests
varkor [Thu, 26 Sep 2019 22:17:53 +0000 (23:17 +0100)]
Fix ui-fulldeps tests

4 years agoAdd note about global state in try_print_query_stack
Aaron Hill [Thu, 26 Sep 2019 20:55:07 +0000 (16:55 -0400)]
Add note about global state in try_print_query_stack

4 years agoFix AST JSON output test
varkor [Thu, 26 Sep 2019 20:39:56 +0000 (21:39 +0100)]
Fix AST JSON output test

4 years agoAuto merge of #64816 - Centril:rollup-gbeqot4, r=Centril
bors [Thu, 26 Sep 2019 20:29:40 +0000 (20:29 +0000)]
Auto merge of #64816 - Centril:rollup-gbeqot4, r=Centril

Rollup of 5 pull requests

Successful merges:

 - #64221 ( Rust 2015: No longer downgrade NLL errors)
 - #64772 (Remove tx_to_llvm_workers from TyCtxt)
 - #64783 (Fix issue #64732)
 - #64787 (Fix ExitStatus on Fuchsia)
 - #64812 (Add test for E0543)

Failed merges:

r? @ghost