]> git.lizzy.rs Git - rust.git/log
rust.git
4 years agofix error compiling stage2
Joshua Nelson [Fri, 31 Jan 2020 15:46:08 +0000 (10:46 -0500)]
fix error compiling stage2

Co-Authored-By: lzutao <taolzu@gmail.com>
4 years agoimpl From<[T; N]> for Vec<T>
Joshua Nelson [Fri, 31 Jan 2020 05:30:55 +0000 (00:30 -0500)]
impl From<[T; N]> for Vec<T>

4 years agoAuto merge of #66364 - Centril:cleanup-macro-def, r=petrochenkov,eddyb
bors [Tue, 10 Mar 2020 17:12:48 +0000 (17:12 +0000)]
Auto merge of #66364 - Centril:cleanup-macro-def, r=petrochenkov,eddyb

Cleanup `rmeta::MacroDef`

Avoid using rountrip parsing in the encoder and in `fn load_macro_untracked`.

The main reason I was interested in this was to remove `rustc_parse` as a dependency of `rustc_metadata` but it seems like this had other benefits as well.

Fixes #49511.

r? @eddyb
cc @matthewjasper @estebank @petrochenkov

4 years agomacros/unknown-builtin: use hack for musl problems
Mazdak Farrokhzad [Tue, 10 Mar 2020 07:30:07 +0000 (08:30 +0100)]
macros/unknown-builtin: use hack for musl problems

4 years agospan-api-tests: leave FIXME
Mazdak Farrokhzad [Fri, 6 Mar 2020 13:35:21 +0000 (14:35 +0100)]
span-api-tests: leave FIXME

4 years agorustc_errors: Use ensure_source_file_source_present where necessary.
Ana-Maria Mihalache [Thu, 5 Mar 2020 15:31:11 +0000 (15:31 +0000)]
rustc_errors: Use ensure_source_file_source_present where necessary.

4 years ago--bless some tests
Mazdak Farrokhzad [Mon, 10 Feb 2020 16:37:12 +0000 (17:37 +0100)]
--bless some tests

4 years agoadjust span-api-tests.rs
Mazdak Farrokhzad [Mon, 10 Feb 2020 16:38:51 +0000 (17:38 +0100)]
adjust span-api-tests.rs

4 years agopacify rustdoc by using better url
Mazdak Farrokhzad [Thu, 14 Nov 2019 10:40:01 +0000 (11:40 +0100)]
pacify rustdoc by using better url

4 years agoStore `TokenStream` in `rmeta::MacroDef`.
Mazdak Farrokhzad [Wed, 13 Nov 2019 12:01:43 +0000 (13:01 +0100)]
Store `TokenStream` in `rmeta::MacroDef`.
This removes a hack from `load_macro_untracked` in which parsing is used.

4 years agoAuto merge of #69879 - Centril:rollup-ryea91j, r=Centril
bors [Tue, 10 Mar 2020 05:48:27 +0000 (05:48 +0000)]
Auto merge of #69879 - Centril:rollup-ryea91j, r=Centril

Rollup of 10 pull requests

Successful merges:

 - #69475 (Remove the `no_force` query attribute)
 - #69514 (Remove spotlight)
 - #69677 (rustc_metadata: Give decoder access to whole crate store)
 - #69714 (Make PlaceRef take just one lifetime)
 - #69799 (Allow ZSTs in `AllocRef`)
 - #69817 (test(patterns): add patterns feature tests to borrowck test suite)
 - #69836 (Check if output is immediate value)
 - #69847 (clean up E0393 explanation)
 - #69861 (Add note about localization to std::fmt docs)
 - #69877 (Vec::new is const stable in 1.39 not 1.32)

Failed merges:

r? @ghost

4 years agoRollup merge of #69877 - CAD97:patch-1, r=dtolnay
Mazdak Farrokhzad [Tue, 10 Mar 2020 05:47:59 +0000 (06:47 +0100)]
Rollup merge of #69877 - CAD97:patch-1, r=dtolnay

Vec::new is const stable in 1.39 not 1.32

Changelog: https://github.com/rust-lang/rust/blob/master/RELEASES.md#version-1390-2019-11-07

This really surprised me when a MSRV check for 1.35 failed with `Vec::new is not yet stable as a const fn` and the docs said that it was const stabilized in 1.32.

4 years agoRollup merge of #69861 - Dylnuge:dylnuge/locale-doc, r=Mark-Simulacrum
Mazdak Farrokhzad [Tue, 10 Mar 2020 05:47:58 +0000 (06:47 +0100)]
Rollup merge of #69861 - Dylnuge:dylnuge/locale-doc, r=Mark-Simulacrum

Add note about localization to std::fmt docs

Closes #69681

4 years agoRollup merge of #69847 - GuillaumeGomez:cleanup-e0393, r=Dylan-DPC
Mazdak Farrokhzad [Tue, 10 Mar 2020 05:47:56 +0000 (06:47 +0100)]
Rollup merge of #69847 - GuillaumeGomez:cleanup-e0393, r=Dylan-DPC

clean up E0393 explanation

r? @Dylan-DPC

4 years agoRollup merge of #69836 - JohnTitor:immediate-outputs, r=nagisa
Mazdak Farrokhzad [Tue, 10 Mar 2020 05:47:55 +0000 (06:47 +0100)]
Rollup merge of #69836 - JohnTitor:immediate-outputs, r=nagisa

Check if output is immediate value

Fixes #62046

r? @nagisa

4 years agoRollup merge of #69817 - thekuom:test/borrow-checking-pattern-features, r=Centril
Mazdak Farrokhzad [Tue, 10 Mar 2020 05:47:53 +0000 (06:47 +0100)]
Rollup merge of #69817 - thekuom:test/borrow-checking-pattern-features, r=Centril

test(patterns): add patterns feature tests to borrowck test suite

Addresses request here: https://github.com/rust-lang/rust/pull/69690#issuecomment-595763571

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

r? @Centril

4 years agoRollup merge of #69799 - TimDiekmann:zst, r=Amanieu
Mazdak Farrokhzad [Tue, 10 Mar 2020 05:47:52 +0000 (06:47 +0100)]
Rollup merge of #69799 - TimDiekmann:zst, r=Amanieu

Allow ZSTs in `AllocRef`

Allows ZSTs in all `AllocRef` methods. The implementation of `AllocRef` for `Global` and `System` were adjusted to reflect those changes.

This is the second item on the roadmap to support ZSTs in `AllocRef`: https://github.com/rust-lang/wg-allocators/issues/38#issuecomment-595861542
After this has landed, I will adapt `RawVec`, but since this will be a pretty big overhaul, it makes sense to do a different PR for it.

~~Requires #69794 to land first~~

r? @Amanieu

4 years agoRollup merge of #69714 - spastorino:place-ref-lifetime, r=oli-obk
Mazdak Farrokhzad [Tue, 10 Mar 2020 05:47:50 +0000 (06:47 +0100)]
Rollup merge of #69714 - spastorino:place-ref-lifetime, r=oli-obk

Make PlaceRef take just one lifetime

r? @eddyb

4 years agoRollup merge of #69677 - petrochenkov:spancode, r=eddyb
Mazdak Farrokhzad [Tue, 10 Mar 2020 05:47:49 +0000 (06:47 +0100)]
Rollup merge of #69677 - petrochenkov:spancode, r=eddyb

rustc_metadata: Give decoder access to whole crate store

Pre-requisite for https://github.com/rust-lang/rust/pull/68941.
r? @eddyb

4 years agoRollup merge of #69514 - GuillaumeGomez:remove-spotlight, r=kinnison
Mazdak Farrokhzad [Tue, 10 Mar 2020 05:47:47 +0000 (06:47 +0100)]
Rollup merge of #69514 - GuillaumeGomez:remove-spotlight, r=kinnison

Remove spotlight

I had a few comments saying that this feature was at best misunderstood or not even used so I decided to organize a poll about on [twitter](https://twitter.com/imperioworld_/status/1232769353503956994). After 87 votes, the result is very clear: it's not useful. Considering the amount of code we have just to run it, I think it's definitely worth it to remove it.

r? @kinnison

cc @ollie27

4 years agoRollup merge of #69475 - Zoxc:no-no-force, r=michaelwoerister
Mazdak Farrokhzad [Tue, 10 Mar 2020 05:47:46 +0000 (06:47 +0100)]
Rollup merge of #69475 - Zoxc:no-no-force, r=michaelwoerister

Remove the `no_force` query attribute

This removes the `no_force` query attribute and instead uses the `DepNodeParams` trait to find out if a query can be forced.

Also the `analysis` query is moved to the query macro.

r? @eddyb

4 years agoVec::new is const tstable in 1.39 not 1.32
Christopher Durham [Tue, 10 Mar 2020 03:07:04 +0000 (23:07 -0400)]
Vec::new is const tstable in 1.39 not 1.32

4 years agoAdd note about localization to std::fmt docs
Dylan Nugent [Mon, 9 Mar 2020 16:31:33 +0000 (12:31 -0400)]
Add note about localization to std::fmt docs

4 years agoAdd a comment to `recover`.
John Kåre Alsaker [Mon, 9 Mar 2020 13:50:09 +0000 (14:50 +0100)]
Add a comment to `recover`.

4 years agoRemove the `no_force` query attribute
John Kåre Alsaker [Wed, 26 Feb 2020 01:39:18 +0000 (02:39 +0100)]
Remove the `no_force` query attribute

4 years agoRemove the need for `no_force`
John Kåre Alsaker [Wed, 26 Feb 2020 01:20:33 +0000 (02:20 +0100)]
Remove the need for `no_force`

4 years agoMove `analysis` to the query macro
John Kåre Alsaker [Tue, 25 Feb 2020 23:26:38 +0000 (00:26 +0100)]
Move `analysis` to the query macro

4 years agotest(patterns): add borrowck tests for combination of pattern features
Matthew Kuo [Sun, 8 Mar 2020 04:01:11 +0000 (22:01 -0600)]
test(patterns): add borrowck tests for combination of pattern features

Adds borrowck tests for the following features:
- bindings_after_at
- or_patterns
- slice_patterns
- box_patterns

4 years agoAuto merge of #69851 - Centril:rollup-iivxvah, r=Centril
bors [Mon, 9 Mar 2020 11:58:17 +0000 (11:58 +0000)]
Auto merge of #69851 - Centril:rollup-iivxvah, r=Centril

Rollup of 6 pull requests

Successful merges:

 - #69201 (Permit attributes on 'if' expressions)
 - #69685 (unix: Don't override existing SIGSEGV/BUS handlers)
 - #69762 (Ensure that validity only raises validity errors)
 - #69779 (librustc_codegen_llvm: Use slices in preference to 0-terminated strings)
 - #69801 (rustc_parse: Remove `Parser::normalized(_prev)_token`)
 - #69842 (Add more regression tests)

Failed merges:

r? @ghost

4 years agoRollup merge of #69842 - JohnTitor:more-tests, r=Centril
Mazdak Farrokhzad [Mon, 9 Mar 2020 11:57:54 +0000 (12:57 +0100)]
Rollup merge of #69842 - JohnTitor:more-tests, r=Centril

Add more regression tests

Closes #54239
Closes #57200
Closes #57201
Closes #60473
Closes #64620
Closes #67166

r? @Centril

4 years agoRollup merge of #69801 - petrochenkov:nonorm, r=Centril
Mazdak Farrokhzad [Mon, 9 Mar 2020 11:57:53 +0000 (12:57 +0100)]
Rollup merge of #69801 - petrochenkov:nonorm, r=Centril

rustc_parse: Remove `Parser::normalized(_prev)_token`

Perform the "normalization" (renamed to "uninterpolation") on the fly when necessary.

The final part of https://github.com/rust-lang/rust/pull/69579 https://github.com/rust-lang/rust/pull/69384 https://github.com/rust-lang/rust/pull/69376 https://github.com/rust-lang/rust/pull/69211 https://github.com/rust-lang/rust/pull/69034 https://github.com/rust-lang/rust/pull/69006.
r? @Centril

4 years agoRollup merge of #69779 - tmiasko:di-cstr, r=nagisa
Mazdak Farrokhzad [Mon, 9 Mar 2020 11:57:51 +0000 (12:57 +0100)]
Rollup merge of #69779 - tmiasko:di-cstr, r=nagisa

librustc_codegen_llvm: Use slices in preference to 0-terminated strings

Additionally whenever possible match C API provided by the LLVM.

4 years agoRollup merge of #69762 - RalfJung:validity-errors, r=oli-obk
Mazdak Farrokhzad [Mon, 9 Mar 2020 11:57:50 +0000 (12:57 +0100)]
Rollup merge of #69762 - RalfJung:validity-errors, r=oli-obk

Ensure that validity only raises validity errors

For now, only as a debug-assertion (similar to const-prop detecting errors that allocate).

Now includes https://github.com/rust-lang/rust/pull/69646.
[Relative diff](https://github.com/RalfJung/rust/compare/layout-visitor...RalfJung:validity-errors).

r? @oli-obk

4 years agoRollup merge of #69685 - cuviper:soft-segv, r=sfackler
Mazdak Farrokhzad [Mon, 9 Mar 2020 11:57:48 +0000 (12:57 +0100)]
Rollup merge of #69685 - cuviper:soft-segv, r=sfackler

unix: Don't override existing SIGSEGV/BUS handlers

Although `stack_overflow::init` runs very early in the process, even
before `main`, there may already be signal handlers installed for things
like the address sanitizer. In that case, just leave it alone, and don't
bother trying to allocate our own signal stacks either.

Fixes #69524.

4 years agoRollup merge of #69201 - Aaron1011:feature/permit-if-attr, r=Centril
Mazdak Farrokhzad [Mon, 9 Mar 2020 11:57:44 +0000 (12:57 +0100)]
Rollup merge of #69201 - Aaron1011:feature/permit-if-attr, r=Centril

Permit attributes on 'if' expressions

Previously, attributes on 'if' expressions (e.g. `#[attr] if true {}`)
were disallowed during parsing. This made it impossible for macros to
perform any custom handling of such attributes (e.g. stripping them
away), since a compilation error would be emitted before they ever had a
chance to run.

This PR permits attributes on 'if' expressions ('if-attrs' from here on).
Both built-in attributes (e.g. `#[allow]`, `#[cfg]`) and proc-macro attributes are supported.

We still do *not* accept attributes on 'other parts' of an if-else
chain. That is, the following code snippet still fails to parse:

```rust
if true {} #[attr] else if false {} else #[attr] if false {} #[attr]
else {}
```

Closes https://github.com/rust-lang/rust/issues/68618

4 years agoAddress review comments
Vadim Petrochenkov [Mon, 9 Mar 2020 09:42:33 +0000 (12:42 +0300)]
Address review comments

4 years agoUse `Token::uninterpolate` in couple more places matching on `(Nt)Ident`
Vadim Petrochenkov [Sat, 7 Mar 2020 12:58:27 +0000 (15:58 +0300)]
Use `Token::uninterpolate` in couple more places matching on `(Nt)Ident`

4 years agorustc_parse: Remove `Parser::normalized(_prev)_token`
Vadim Petrochenkov [Sat, 7 Mar 2020 13:34:29 +0000 (16:34 +0300)]
rustc_parse: Remove `Parser::normalized(_prev)_token`

4 years agorustc_ast: Introduce `Token::uninterpolate`
Vadim Petrochenkov [Sat, 7 Mar 2020 11:37:38 +0000 (14:37 +0300)]
rustc_ast: Introduce `Token::uninterpolate`

4 years agorustc_ast: Introduce `Token::uninterpolated_span`
Vadim Petrochenkov [Wed, 4 Mar 2020 21:34:57 +0000 (00:34 +0300)]
rustc_ast: Introduce `Token::uninterpolated_span`

4 years agorustc_parse: Use `Token::ident` where possible
Vadim Petrochenkov [Wed, 4 Mar 2020 20:37:52 +0000 (23:37 +0300)]
rustc_parse: Use `Token::ident` where possible

4 years agoclean up E0393 explanation
Guillaume Gomez [Mon, 9 Mar 2020 08:31:15 +0000 (09:31 +0100)]
clean up E0393 explanation

4 years agoAdd FIXMEs
Yuki Okushi [Mon, 9 Mar 2020 07:50:46 +0000 (16:50 +0900)]
Add FIXMEs

4 years agounix: Don't override existing SIGSEGV/BUS handlers
Josh Stone [Tue, 3 Mar 2020 23:04:57 +0000 (15:04 -0800)]
unix: Don't override existing SIGSEGV/BUS handlers

Although `stack_overflow::init` runs very early in the process, even
before `main`, there may already be signal handlers installed for things
like the address sanitizer. In that case, just leave it alone, and don't
bother trying to allocate our own signal stacks either.

4 years agoAvoid unnecessary interning of enum variant part id
Tomasz Miąsko [Fri, 6 Mar 2020 00:00:00 +0000 (00:00 +0000)]
Avoid unnecessary interning of enum variant part id

4 years agoUse slices in preference to 0-terminated strings
Tomasz Miąsko [Fri, 6 Mar 2020 00:00:00 +0000 (00:00 +0000)]
Use slices in preference to 0-terminated strings

Additionally whenever possible match C API provided by the LLVM.

4 years agoAdd test for issue-67166
Yuki Okushi [Mon, 9 Mar 2020 00:12:53 +0000 (09:12 +0900)]
Add test for issue-67166

4 years agoAdd test for issue-64620
Yuki Okushi [Mon, 9 Mar 2020 00:12:41 +0000 (09:12 +0900)]
Add test for issue-64620

4 years agoAdd test for issue-60473
Yuki Okushi [Mon, 9 Mar 2020 00:12:25 +0000 (09:12 +0900)]
Add test for issue-60473

4 years agoAdd test for issue-57201
Yuki Okushi [Mon, 9 Mar 2020 00:12:06 +0000 (09:12 +0900)]
Add test for issue-57201

4 years agoAdd test for issue-57200
Yuki Okushi [Mon, 9 Mar 2020 00:11:58 +0000 (09:11 +0900)]
Add test for issue-57200

4 years agoAdd test for issue-54239
Yuki Okushi [Mon, 9 Mar 2020 00:11:40 +0000 (09:11 +0900)]
Add test for issue-54239

4 years agoCheck if output is immediate value
Yuki Okushi [Sun, 8 Mar 2020 20:00:03 +0000 (05:00 +0900)]
Check if output is immediate value

4 years agouse static strings instead of tcx
Ralf Jung [Fri, 6 Mar 2020 17:14:41 +0000 (18:14 +0100)]
use static strings instead of tcx

4 years agoFix typo
Ralf Jung [Fri, 6 Mar 2020 10:30:57 +0000 (11:30 +0100)]
Fix typo

Co-Authored-By: bjorn3 <bjorn3@users.noreply.github.com>
4 years agofix some cases of unexpected exceptions leaving validation
Ralf Jung [Thu, 5 Mar 2020 22:31:39 +0000 (23:31 +0100)]
fix some cases of unexpected exceptions leaving validation

4 years agomiri validation: debug-complain about unexpected errors
Ralf Jung [Wed, 4 Mar 2020 07:43:03 +0000 (08:43 +0100)]
miri validation: debug-complain about unexpected errors

4 years agomove error allocation test to error.rs
Ralf Jung [Wed, 4 Mar 2020 07:40:13 +0000 (08:40 +0100)]
move error allocation test to error.rs

4 years agoAuto merge of #69833 - Centril:rollup-mh74yue, r=Centril
bors [Sun, 8 Mar 2020 19:54:57 +0000 (19:54 +0000)]
Auto merge of #69833 - Centril:rollup-mh74yue, r=Centril

Rollup of 7 pull requests

Successful merges:

 - #69120 (Don't give invalid suggestion on desugared span.)
 - #69326 (mir-interpret: add method to read wide strings from Memory)
 - #69608 (Expose target libdir information via print command)
 - #69734 (Change DIBuilderCreateEnumerator signature to match LLVM 9)
 - #69800 (Compile address sanitizer test with debuginfo)
 - #69807 (Cleanup E0391 explanation)
 - #69820 (clean up E0392 explanation)

Failed merges:

r? @ghost

4 years agoRollup merge of #69820 - GuillaumeGomez:cleanup-e0392, r=Dylan-DPC
Mazdak Farrokhzad [Sun, 8 Mar 2020 19:54:36 +0000 (20:54 +0100)]
Rollup merge of #69820 - GuillaumeGomez:cleanup-e0392, r=Dylan-DPC

clean up E0392 explanation

r? @Dylan-DPC

4 years agoRollup merge of #69807 - GuillaumeGomez:cleanup-e0391, r=Dylan-DPC
Mazdak Farrokhzad [Sun, 8 Mar 2020 19:54:35 +0000 (20:54 +0100)]
Rollup merge of #69807 - GuillaumeGomez:cleanup-e0391, r=Dylan-DPC

Cleanup E0391 explanation

r? @Dylan-DPC

4 years agoRollup merge of #69800 - tmiasko:address-g, r=nikic
Mazdak Farrokhzad [Sun, 8 Mar 2020 19:54:33 +0000 (20:54 +0100)]
Rollup merge of #69800 - tmiasko:address-g, r=nikic

Compile address sanitizer test with debuginfo

This makes error-pattern to match regardless of current
configuration of `rust.debuginfo-level-tests` in `config.toml`.

4 years agoRollup merge of #69734 - tmiasko:di-enumerator, r=ecstatic-morse
Mazdak Farrokhzad [Sun, 8 Mar 2020 19:54:31 +0000 (20:54 +0100)]
Rollup merge of #69734 - tmiasko:di-enumerator, r=ecstatic-morse

Change DIBuilderCreateEnumerator signature to match LLVM 9

* Change DIBuilderCreateEnumerator signature to match LLVM 9 C API.
* Use provided is unsigned flag when emitting enumerators.

4 years agoRollup merge of #69608 - o01eg:expose-target-libdir-print, r=ehuss
Mazdak Farrokhzad [Sun, 8 Mar 2020 19:54:30 +0000 (20:54 +0100)]
Rollup merge of #69608 - o01eg:expose-target-libdir-print, r=ehuss

Expose target libdir information via print command

With custom libdir it is required to have an access to library placement.

See https://github.com/RazrFalcon/cargo-bloat/issues/51

4 years agoRollup merge of #69326 - JOE1994:os_str_widestring, r=RalfJung
Mazdak Farrokhzad [Sun, 8 Mar 2020 19:54:28 +0000 (20:54 +0100)]
Rollup merge of #69326 - JOE1994:os_str_widestring, r=RalfJung

mir-interpret: add method to read wide strings from Memory

Implemented *step2* from [instructions](https://github.com/rust-lang/miri/issues/707#issuecomment-561564057) laid out in rust-lang/miri#707.

Added 2 new methods to struct `rustc_mir::interpret::InterpCx`.

* `read_os_str_from_wide_str` (src/librustc_mir/interpret/operand.rs)
* `write_os_str_to_wide_str` (src/librustc_mir/interpret/place.rs)
  - used existing logic implemented in [MIRI/src/eval.rs](https://github.com/rust-lang/miri/blob/94732aaf7bf79fd01a4a48d11155c6586b937514/src/eval.rs#L132-L141)

These methods are intended to be used for environment variable emulation in Windows.

4 years agoRollup merge of #69120 - spunit262:invalid-sugar-suggest, r=matthewjasper
Mazdak Farrokhzad [Sun, 8 Mar 2020 19:54:26 +0000 (20:54 +0100)]
Rollup merge of #69120 - spunit262:invalid-sugar-suggest, r=matthewjasper

Don't give invalid suggestion on desugared span.

4 years agoAuto merge of #69829 - Centril:rollup-lm5lzsq, r=Centril
bors [Sun, 8 Mar 2020 15:54:09 +0000 (15:54 +0000)]
Auto merge of #69829 - Centril:rollup-lm5lzsq, r=Centril

Rollup of 7 pull requests

Successful merges:

 - #69631 (remove non-sysroot sources from rust-src component)
 - #69646 (Miri visitor: detect primitive types based on type, not layout (also, more tests))
 - #69651 (Try to ensure usize marker does not get merged)
 - #69668 (More documentation and simplification of BTreeMap's internals)
 - #69771 (Cleanup E0390 explanation)
 - #69777 (Add missing ` in doc for File::with_options())
 - #69812 (Refactorings to method/probe.rs and CrateId)

Failed merges:

r? @ghost

4 years agoRollup merge of #69812 - Marwes:refactor, r=petrochenkov
Mazdak Farrokhzad [Sun, 8 Mar 2020 15:53:44 +0000 (16:53 +0100)]
Rollup merge of #69812 - Marwes:refactor, r=petrochenkov

Refactorings to method/probe.rs and CrateId

A couple of refactorings done while looking into performance improvements in method resolution.

4 years agoRollup merge of #69777 - lukas-code:patch-1, r=jonas-schievink
Mazdak Farrokhzad [Sun, 8 Mar 2020 15:53:43 +0000 (16:53 +0100)]
Rollup merge of #69777 - lukas-code:patch-1, r=jonas-schievink

Add missing ` in doc for File::with_options()

4 years agoRollup merge of #69771 - GuillaumeGomez:cleanup-e0390, r=Dylan-DPC
Mazdak Farrokhzad [Sun, 8 Mar 2020 15:53:41 +0000 (16:53 +0100)]
Rollup merge of #69771 - GuillaumeGomez:cleanup-e0390, r=Dylan-DPC

Cleanup E0390 explanation

r? @Dylan-DPC

4 years agoRollup merge of #69668 - ssomers:btreemap_even_more_comments, r=Mark-Simulacrum
Mazdak Farrokhzad [Sun, 8 Mar 2020 15:53:40 +0000 (16:53 +0100)]
Rollup merge of #69668 - ssomers:btreemap_even_more_comments, r=Mark-Simulacrum

More documentation and simplification of BTreeMap's internals

Salvage the documentation and simplification from #67980, without changing the type locked down by debuginfo.

r? @rkruppe

4 years agoRollup merge of #69651 - Mark-Simulacrum:black-box-marker, r=eddyb
Mazdak Farrokhzad [Sun, 8 Mar 2020 15:53:38 +0000 (16:53 +0100)]
Rollup merge of #69651 - Mark-Simulacrum:black-box-marker, r=eddyb

Try to ensure usize marker does not get merged

This follows up on [this conversation](https://github.com/rust-lang/rust/pull/69209#discussion_r379911282). However, I'm not confident this is quite correct, so feedback is appreciated, as always.

4 years agoRollup merge of #69646 - RalfJung:layout-visitor, r=eddyb
Mazdak Farrokhzad [Sun, 8 Mar 2020 15:53:36 +0000 (16:53 +0100)]
Rollup merge of #69646 - RalfJung:layout-visitor, r=eddyb

Miri visitor: detect primitive types based on type, not layout (also, more tests)

I also converted the union-based transmutes to use `mem::transmute` for increased readability.

r? @eddyb @oli-obk

4 years agoRollup merge of #69631 - RalfJung:rust-src, r=Mark-Simulacrum
Mazdak Farrokhzad [Sun, 8 Mar 2020 15:53:35 +0000 (16:53 +0100)]
Rollup merge of #69631 - RalfJung:rust-src, r=Mark-Simulacrum

remove non-sysroot sources from rust-src component

See https://github.com/rust-lang/rust/pull/69592#discussion_r386238725: these were likely added in https://github.com/rust-lang/rust/pull/58269 for the sake of compiler plugins, but those are being entirely phased out, so there is no good reason to ship these sources.

OTOH, @eddyb [wrote](https://github.com/rust-lang/rust/pull/58269#issuecomment-463408918)

> Yeah, my question is why librustc_plugin specifically? Everything else makes sense.

So maybe there is some good reason to keep these? Then we should have a comment explaining that reason.

Cc @eddyb @taeguk @Mark-Simulacrum

4 years agofix type size mismatch on 32bit
Ralf Jung [Sun, 8 Mar 2020 11:22:20 +0000 (12:22 +0100)]
fix type size mismatch on 32bit

4 years agoAuto merge of #69822 - Centril:rollup-360ca2j, r=Centril
bors [Sun, 8 Mar 2020 10:51:46 +0000 (10:51 +0000)]
Auto merge of #69822 - Centril:rollup-360ca2j, r=Centril

Rollup of 8 pull requests

Successful merges:

 - #69422 (Remove use of `unwrap()` from save-analysis)
 - #69548 (Turn trailing tokens in `assert!()` into hard errors)
 - #69561 (Clean up unstable book)
 - #69599 (check_binding_alt_eq_ty: improve precision wrt. `if let`)
 - #69641 (Update books)
 - #69776 (Fix & test leak of some BTreeMap nodes on panic during `into_iter`)
 - #69805 (resolve: Modernize some naming)
 - #69810 (test(bindings_after_at): add dynamic drop tests for bindings_after_at)

Failed merges:

r? @ghost

4 years agoRollup merge of #69810 - thekuom:test/67523-dynamic-semantics-bindings-after-at,...
Mazdak Farrokhzad [Sun, 8 Mar 2020 10:51:20 +0000 (11:51 +0100)]
Rollup merge of #69810 - thekuom:test/67523-dynamic-semantics-bindings-after-at, r=Centril

test(bindings_after_at): add dynamic drop tests for bindings_after_at

Fixes https://github.com/rust-lang/rust/issues/67523.
Working towards https://github.com/rust-lang/rust/issues/65490.

4 years agoRollup merge of #69805 - petrochenkov:importname, r=Centril
Mazdak Farrokhzad [Sun, 8 Mar 2020 10:51:18 +0000 (11:51 +0100)]
Rollup merge of #69805 - petrochenkov:importname, r=Centril

resolve: Modernize some naming

`ImportDirective` -> `Import`
`ImportDirectiveSubclass` -> `ImportKind`
`ImportKind::SingleImport` -> `ImportKind::Single`
`ImportKind::GlobImport` -> `ImportKind::Glob`

4 years agoRollup merge of #69776 - ssomers:fix69769, r=Mark-Simulacrum
Mazdak Farrokhzad [Sun, 8 Mar 2020 10:51:17 +0000 (11:51 +0100)]
Rollup merge of #69776 - ssomers:fix69769, r=Mark-Simulacrum

Fix & test leak of some BTreeMap nodes on panic during `into_iter`

Fixes #69769

4 years agoRollup merge of #69641 - ehuss:update-books, r=ehuss
Mazdak Farrokhzad [Sun, 8 Mar 2020 10:51:15 +0000 (11:51 +0100)]
Rollup merge of #69641 - ehuss:update-books, r=ehuss

Update books

## nomicon

8 commits in 3e6e1001dc6e095dbd5c88005e80969f60e384e1..9f797e65e6bcc79419975b17aff8e21c9adc039f
2019-12-14 22:08:52 +0000 to 2020-03-04 03:45:13 +0100
- Rustup to latest rustc (rust-lang-nursery/nomicon#203)
- (minor) Add backticks around type names (rust-lang-nursery/nomicon#197)
- Add book.toml (rust-lang-nursery/nomicon#185)
- Rename `Alloc` to `AllocRef` (rust-lang-nursery/nomicon#188)
- Lifetimes: explain how to fix destructor example (rust-lang-nursery/nomicon#195)
- mention soundness (rust-lang-nursery/nomicon#194)
- Fix example in FFI section Calling Rust from C (rust-lang-nursery/nomicon#193)
- Removed repeated word (rust-lang-nursery/nomicon#191)

## reference

8 commits in 64239df6d173562b9deb4f012e4c3e6e960c4754..559e09caa9661043744cf7af7bd88432d966f743
2020-02-10 19:05:13 +0100 to 2020-03-02 01:17:14 +0100
- Syntax error fix (rust-lang-nursery/reference#769)
- Fix incorrect pseudocode for #[repr(C)] struct alignment (rust-lang-nursery/reference#766)
- Replace "Field-Less" with "Fieldless" (rust-lang-nursery/reference#768)
- Removed repeated word (rust-lang-nursery/reference#767)
- Update for change in const lint name. (rust-lang-nursery/reference#764)
- semantic type -&gt; resolved type (rust-lang-nursery/reference#761)
- add behavior change of relative paths without `self` in 2018 edition (rust-lang-nursery/reference#757)
- assignment operator expressions -&gt; compound assignment expressions (rust-lang-nursery/reference#759)

## rust-by-example

3 commits in 32facd5522ddbbf37baf01e4e4b6562bc55c071a..db57f899ea2a56a544c8d280cbf033438666273d
2020-02-11 09:25:06 -0300 to 2020-02-18 17:46:46 -0300
- Minor typo fix in src/mod/visibility (rust-lang/rust-by-example#1309)
- Don't suggest Into implements a reverse conversion (rust-lang/rust-by-example#1307)
- Improve grammar in example of 'in let' section (rust-lang/rust-by-example#1308)

## embedded-book

2 commits in b2e1092bf67bd4d7686c4553f186edbb7f5f92db..b81ffb7a6f4c5aaed92786e770e99db116aa4ebd
2020-01-30 08:45:46 +0000 to 2020-02-27 08:06:04 +0000
- Setting output to `high` needs a `true` argument  (rust-embedded/book#227)
- Add licence notes to index.md  (rust-embedded/book#226)

4 years agoRollup merge of #69599 - Centril:typeck-tweak-wording, r=davidtwco
Mazdak Farrokhzad [Sun, 8 Mar 2020 10:51:14 +0000 (11:51 +0100)]
Rollup merge of #69599 - Centril:typeck-tweak-wording, r=davidtwco

check_binding_alt_eq_ty: improve precision wrt. `if let`

Follow up to https://github.com/rust-lang/rust/pull/69452 -- this tweaks the `check_binding_alt_eq_ty` logic wrt. wording so that `if let` doesn't include "in this arm" (because there can only ever be one arm).

r? @estebank

4 years agoRollup merge of #69561 - JohnTitor:clean-up-unstable-book, r=Mark-Simulacrum
Mazdak Farrokhzad [Sun, 8 Mar 2020 10:51:12 +0000 (11:51 +0100)]
Rollup merge of #69561 - JohnTitor:clean-up-unstable-book, r=Mark-Simulacrum

Clean up unstable book

- #58402's feature was renamed to `tidy_test_never_used_anywhere_else` and it is now used for tidy only
- `read_initializer` link is wrong and the doc should be auto-generated so removed
- Add dummy doc for `link_cfg`
- Stop generating `compiler_builtins_lib` doc in favor of b8ccc0f8a60ac16fdc00f4b2e36e1a5db8b78295
- Make `rustc_attrs` tracking issue "None"

4 years agoRollup merge of #69548 - LeSeulArtichaut:assert-errors, r=petrochenkov
Mazdak Farrokhzad [Sun, 8 Mar 2020 10:51:09 +0000 (11:51 +0100)]
Rollup merge of #69548 - LeSeulArtichaut:assert-errors, r=petrochenkov

Turn trailing tokens in `assert!()` into hard errors

I didn't have time to build the compiler and thus edited the tests manually, I hope it will still pass.

Closes #69531
r? @Centril do you want to queue the Crater experiment?

4 years agoRollup merge of #69422 - JohnTitor:remove-unwrap, r=Xanewok
Mazdak Farrokhzad [Sun, 8 Mar 2020 10:51:04 +0000 (11:51 +0100)]
Rollup merge of #69422 - JohnTitor:remove-unwrap, r=Xanewok

Remove use of `unwrap()` from save-analysis

Fix #69409, fix #69416

4 years agoAllow ZSTs in `AllocRef`
Tim Diekmann [Sat, 7 Mar 2020 11:04:40 +0000 (12:04 +0100)]
Allow ZSTs in `AllocRef`

4 years agoclean up E0392 explanation
Guillaume Gomez [Sun, 8 Mar 2020 09:44:23 +0000 (10:44 +0100)]
clean up E0392 explanation

4 years agoCleanup E0391 explanation
Guillaume Gomez [Sat, 7 Mar 2020 17:42:09 +0000 (18:42 +0100)]
Cleanup E0391 explanation

4 years agoAuto merge of #69804 - Centril:rollup-u86dc1g, r=Centril
bors [Sun, 8 Mar 2020 05:27:21 +0000 (05:27 +0000)]
Auto merge of #69804 - Centril:rollup-u86dc1g, r=Centril

Rollup of 8 pull requests

Successful merges:

 - #69667 (Remove the `no_debug` feature)
 - #69687 (resolve, inconsistent binding mode: tweak wording)
 - #69708 (On mismatched delimiters, only point at empty blocks that are in the same line)
 - #69765 (reduce test size for Miri)
 - #69773 (fix various typos)
 - #69787 (mir::Local is Copy we can pass it by value in these cases)
 - #69794 (Add `Layout::dangling()` to return a well-aligned `NonNull<u8>`)
 - #69797 (Correct version that relaxed orphan rules)

Failed merges:

r? @ghost

4 years agorefactor: Move a borrow_mut and unwrap out of a loop
Markus Westerlind [Sat, 7 Mar 2020 19:17:00 +0000 (20:17 +0100)]
refactor: Move a borrow_mut and unwrap out of a loop

4 years agorefactor: Exhaustive matching in method/probe.rs
Markus Westerlind [Sat, 7 Mar 2020 15:58:29 +0000 (16:58 +0100)]
refactor: Exhaustive matching in method/probe.rs

4 years agotest(bindings_after_at): add dynamic drop tests for bindings_after_at
Matthew Kuo [Sat, 7 Mar 2020 20:17:03 +0000 (14:17 -0600)]
test(bindings_after_at): add dynamic drop tests for bindings_after_at

4 years agoresolve: `directive` -> `import`
Vadim Petrochenkov [Sat, 7 Mar 2020 16:02:32 +0000 (19:02 +0300)]
resolve: `directive` -> `import`

4 years agoRollup merge of #69797 - jongiddy:convert-version, r=Mark-Simulacrum
Mazdak Farrokhzad [Sat, 7 Mar 2020 16:27:37 +0000 (17:27 +0100)]
Rollup merge of #69797 - jongiddy:convert-version, r=Mark-Simulacrum

Correct version that relaxed orphan rules

Docs say
> Prior to Rust 1.40, if the destination type was not part of the current crate then you couldn't implement From directly

Version 1.41 of Rust introduced the change to the orphan rules - https://blog.rust-lang.org/2020/01/30/Rust-1.41.0.html#relaxed-restrictions-when-implementing-traits - so this should say
> Prior to Rust 1.41...

4 years agoRollup merge of #69794 - TimDiekmann:dangling, r=Amanieu
Mazdak Farrokhzad [Sat, 7 Mar 2020 16:27:35 +0000 (17:27 +0100)]
Rollup merge of #69794 - TimDiekmann:dangling, r=Amanieu

Add `Layout::dangling()` to return a well-aligned `NonNull<u8>`

Adds a convenient function to `Layout` to create a `NonNull<u8>` out of a layout to be returned on ZST allocations.

This is the first item on the roadmap to support ZSTs in `AllocRef`: https://github.com/rust-lang/wg-allocators/issues/38#issuecomment-595861542

r? @Amanieu

4 years agoRollup merge of #69787 - spastorino:use-local-directly-its-copy, r=oli-obk
Mazdak Farrokhzad [Sat, 7 Mar 2020 16:27:34 +0000 (17:27 +0100)]
Rollup merge of #69787 - spastorino:use-local-directly-its-copy, r=oli-obk

mir::Local is Copy we can pass it by value in these cases

r? @oli-obk

4 years agoRollup merge of #69773 - matthiaskrgr:typos, r=petrochenkov
Mazdak Farrokhzad [Sat, 7 Mar 2020 16:27:32 +0000 (17:27 +0100)]
Rollup merge of #69773 - matthiaskrgr:typos, r=petrochenkov

fix various typos

4 years agoRollup merge of #69765 - RalfJung:miri-test, r=LukasKalbertodt
Mazdak Farrokhzad [Sat, 7 Mar 2020 16:27:30 +0000 (17:27 +0100)]
Rollup merge of #69765 - RalfJung:miri-test, r=LukasKalbertodt

reduce test size for Miri

The larger sizes take quite a while, and there is probably little point in repeating this quite so often.

4 years agoRollup merge of #69708 - estebank:tiny, r=petrochenkov
Mazdak Farrokhzad [Sat, 7 Mar 2020 16:27:29 +0000 (17:27 +0100)]
Rollup merge of #69708 - estebank:tiny, r=petrochenkov

On mismatched delimiters, only point at empty blocks that are in the same line

We point at empty blocks when we have mismatched braces to detect cases where editors auto insert `}` after writing `{`. Gate this to only the case where the entire span is in the same line so we never point at explicitly empty blocks.

4 years agoRollup merge of #69687 - Centril:bm-inconsistent-wording, r=estebank
Mazdak Farrokhzad [Sat, 7 Mar 2020 16:27:27 +0000 (17:27 +0100)]
Rollup merge of #69687 - Centril:bm-inconsistent-wording, r=estebank

resolve, inconsistent binding mode: tweak wording

Now that we can have e.g. `let Ok(x) | Err(x) = res;`, it's no longer appropriate to refer to "the same *match arm*", so let's tweak the wording.

r? @estebank

4 years agoRollup merge of #69667 - JohnTitor:no-debug, r=nikomatsakis
Mazdak Farrokhzad [Sat, 7 Mar 2020 16:27:26 +0000 (17:27 +0100)]
Rollup merge of #69667 - JohnTitor:no-debug, r=nikomatsakis

Remove the `no_debug` feature

Context: https://github.com/rust-lang/rust/issues/29721#issuecomment-367642779

r? @nikomatsakis