Commit Graph

104621 Commits

Author SHA1 Message Date
bors
580ac0b4f1 Auto merge of #67658 - spastorino:do-not-copy-zsts, r=oli-obk
Avoid memory copy logic for zsts

r? @oli-obk

One of the included commits is work done by @HeroicKatora in #62655
2019-12-30 08:24:22 +00:00
bors
d297b19663 Auto merge of #67721 - JohnTitor:rollup-o8zm4r9, r=JohnTitor
Rollup of 10 pull requests

Successful merges:

 - #64273 (Stabilize attribute macros on inline modules)
 - #67287 (typeck: note other end-point when checking range pats)
 - #67564 (docs: Iterator adapters have unspecified results after a panic)
 - #67622 (Some keyword documentation.)
 - #67657 (Clean up const-hack PRs now that const if / match exist.)
 - #67677 (resolve: Minor cleanup of duplicate macro reexports)
 - #67687 (Do not ICE on lifetime error involving closures)
 - #67698 (Move reachable_set and diagnostic_items to librustc_passes.)
 - #67701 (tidy: Enforce formatting rather than just check it if `--bless` is specified)
 - #67715 (Typo fix)

Failed merges:

r? @ghost
2019-12-30 05:12:48 +00:00
Yuki Okushi
dcc30aced0
Rollup merge of #67715 - petertodd:2019-typo-manuallydrop, r=Centril
Typo fix
2019-12-30 14:07:57 +09:00
Yuki Okushi
b6244af566
Rollup merge of #67701 - petrochenkov:tidybless, r=Mark-Simulacrum
tidy: Enforce formatting rather than just check it if `--bless` is specified

Ensuring the "tidy"-ness currently requires running `rustfmt` twice:
```sh
./x.py fmt && ./x.py test tidy
```
, once to actually format code and the second time as a part of tidy to check that the code is formatted.

Running `rustfmt` is slow, so we don't want to run it twice.

With this PR tidy enforces the formatting rather than just checks it if `--bless` was passed to it:
```sh
./x.py test tidy --bless
```

r? @Mark-Simulacrum
2019-12-30 14:07:56 +09:00
Yuki Okushi
88e322c4f1
Rollup merge of #67698 - cjgillot:passes-first, r=Zoxc
Move reachable_set and diagnostic_items to librustc_passes.

Split out of #67688

r? @Zoxc
2019-12-30 14:07:55 +09:00
Yuki Okushi
3928aceb49
Rollup merge of #67687 - estebank:issue-67634, r=matthewjasper
Do not ICE on lifetime error involving closures

Fix #67634.
2019-12-30 14:07:53 +09:00
Yuki Okushi
f70847a863
Rollup merge of #67677 - petrochenkov:dupexp, r=Centril
resolve: Minor cleanup of duplicate macro reexports

Enabled by https://github.com/rust-lang/rust/pull/65785 which changed `duplicate_macro_exports` from a lint to a hard error.
2019-12-30 14:07:52 +09:00
Yuki Okushi
047a4bb432
Rollup merge of #67657 - jumbatm:cleanup-const-hack, r=oli-obk
Clean up const-hack PRs now that const if / match exist.

Closes #67627.

Cleans up these merged PRs tagged with `const-hack`:

- #63810
- #63786
- #61635
- #58044

reverting their contents to have the match or if expressions they originally contained.

r? @oli-obk

There's one more PR in those tagged with `const-hack` that originally wasn't merged (#65107). Reading the thread, it looks like it was originally closed because the `const-hack` for the checked arithmetic non-negligibly hurt performance, and because there was no way to manipulate the returned Option at compile time anyway (with neither const if nor const match). Would you like me to add these changes to the changes from this PR here too, now that we have the necessary features?
2019-12-30 14:07:50 +09:00
Yuki Okushi
0eb19dcf8b
Rollup merge of #67622 - gilescope:async-keyword-doc, r=Centril
Some keyword documentation.

I thought about going into detail, but I'd much rather route them to the async book asap.
2019-12-30 14:07:49 +09:00
Yuki Okushi
97a7b03298
Rollup merge of #67564 - Mark-Simulacrum:iter-adapter-panic, r=LukasKalbertodt
docs: Iterator adapters have unspecified results after a panic

Fixes #58170.

That issue also has rough consensus from 3 members of the library team for this being the behavior we would like to specify.
2019-12-30 14:07:47 +09:00
Yuki Okushi
2c46dd16a5
Rollup merge of #67287 - Centril:mismatch-range-improve-diag, r=estebank
typeck: note other end-point when checking range pats

Fixes #57389, alternative to #67214 that should be less invasive to type checking logic.

r? @estebank
2019-12-30 14:07:46 +09:00
Yuki Okushi
f0309f5a72
Rollup merge of #64273 - petrochenkov:stabattrmod, r=Centril
Stabilize attribute macros on inline modules

While still gating non-inline modules in proc macro input.

Split from https://github.com/rust-lang/rust/pull/63931
cc https://github.com/rust-lang/rust/issues/54727
2019-12-30 14:07:44 +09:00
bors
214548b8af Auto merge of #67631 - oli-obk:polymorphic_promotion, r=wesleywiser
Work around a resolve bug in const prop

r? @wesleywiser @anp

This isn't exposed right now, but further changes to rustc may start causing bugs without this.
2019-12-30 02:05:24 +00:00
Peter Todd
e4c0eddbdb
Typo fix 2019-12-29 20:50:01 -05:00
Mazdak Farrokhzad
c4b6de2d6a note other end-point when typeck range pats 2019-12-30 02:48:35 +01:00
bors
2ba0d2acbd Auto merge of #66942 - cjgillot:hirene-ty, r=Zoxc
Allocate HIR on an arena 3/4 -- Ty

This is the third PR in the series started by #66931 and #66936

Once again, commits don't really make sense on their own.
They are mostly split by type of compile error.

The additional diff is here: https://github.com/cjgillot/rust/compare/hirene-expr...hirene-ty
2019-12-29 22:51:02 +00:00
bors
da3629b05f Auto merge of #67112 - Centril:expr-polish, r=estebank
Refactor expression parsing thoroughly

Based on https://github.com/rust-lang/rust/pull/66994 together with which this has refactored basically the entirety of `expr.rs`.

r? @estebank
2019-12-29 19:30:53 +00:00
bors
25434f898b Auto merge of #67661 - JohnTitor:clippy-cargo, r=oli-obk
Update Clippy and cargo

includes latest rustup and resolves dependency conflicts with cargo
Closes #67541

r? @oli-obk @Manishearth
2019-12-29 16:12:57 +00:00
Camille GILLOT
f5c63e7b27 Introduce librustc/middle/mod.rs 2019-12-29 16:21:55 +01:00
Camille GILLOT
57681628f9 Move get_lib_features query in librustc_passes. 2019-12-29 16:18:05 +01:00
Camille GILLOT
ec3a9f64f1 Move lib_features.rs in librustc_passes. 2019-12-29 16:17:35 +01:00
Vadim Petrochenkov
5b80a99a9f tidy: Enforce formatting rather than just check it if --bless is specified 2019-12-29 14:31:54 +03:00
Camille GILLOT
fd4d50d442 Move diagnostic_items queries to librustc_passes. 2019-12-29 10:45:20 +01:00
Camille GILLOT
2a14d16583 Move diagnostic_items.rs to librustc_passes. 2019-12-29 10:45:08 +01:00
Camille GILLOT
4922310a3b Move reachable_set query in librustc_passes. 2019-12-29 10:45:00 +01:00
Camille GILLOT
2e7dbb42c7 Move reachable.rs to librustc_passes. 2019-12-29 10:44:52 +01:00
bors
e0239b4bd0 Auto merge of #67694 - Dylan-DPC:rollup-wxxm9yu, r=Dylan-DPC
Rollup of 3 pull requests

Successful merges:

 - #67482 (Fix outdated comment)
 - #67673 (Update .mailmap)
 - #67679 (Change "be returning" to "return")

Failed merges:

r? @ghost
2019-12-29 09:33:04 +00:00
Giles Cope
bc1b2d5017 Some keyword documentation. 2019-12-29 08:19:33 +00:00
Yuki Okushi
f541e91a7a Update Cargo.lock 2019-12-29 17:03:07 +09:00
Yuki Okushi
6f1ebf8ec2 Update cargo 2019-12-29 17:03:07 +09:00
Yuki Okushi
a102e9bc69 Update Clippy 2019-12-29 17:03:07 +09:00
Dylan DPC
71b6ae92a1
Rollup merge of #67679 - kraai:change-be-returning-to-return, r=Dylan-DPC
Change "be returning" to "return"
2019-12-29 13:09:59 +05:30
Dylan DPC
e619b6cda0
Rollup merge of #67673 - JohnTitor:mailmap, r=Dylan-DPC
Update .mailmap

r? @Mark-Simulacrum
2019-12-29 13:09:58 +05:30
Dylan DPC
115e3c80df
Rollup merge of #67482 - ldm0:master, r=petrochenkov
Fix outdated comment

Logics in `libsyntax/ext/expand.rs:MacroExpander::expand()` have been moved to `libsyntax_expand/expand.rs:MacroExpander::fully_expand_fragment()`
This pull request fixs the dangling file path.

#### Old

35176867f6/src/libsyntax/ext/expand.rs (L285-L301)

#### New

9ff30a7810/src/libsyntax_expand/expand.rs (L421-L439)

9ff30a7810/src/libsyntax_expand/base.rs (L224-L234)
2019-12-29 13:09:56 +05:30
bors
774a4bd4f4 Auto merge of #67614 - Mark-Simulacrum:global-callbacks, r=Zoxc
Set callbacks globally

This sets the callbacks from syntax and rustc_errors just once, utilizing static (rather than thread-local) storage.
2019-12-29 04:30:56 +00:00
Oliver Scherer
5fd8abd227 Ensure that we don't cause *new* hard errors if we suddenly can evaluate more constants during const prop 2019-12-29 00:26:25 +01:00
bors
00fc203b65 Auto merge of #67334 - estebank:ignore-triple, r=nikomatsakis
Teach `compiletest` to ignore platform triples

The UI tests are written assuming `--remap-path-prefix` is *not used* (`remap-debuginfo` in `config.toml`). The consequence is that the error messages may include paths and snippets into the standard library. When `remap-debuginfo` is enabled, these messages change in format and structure because `rustc` will not show paths and snippets into the standard library.

This normally isn't a problem for the "main" platforms (linux/macos/windows), because the CI infrastructure is set up so that the tests run without `remap-debuginfo`, but the `dist` artifacts are built separately with `remap-debuginfo` enabled. However, some of the lower-tier platforms perform both tests and distribution in a single step with `remap-debuginfo` enabled. This also affects developers and distributors who use `remap-debuginfo`.

To sidestep this problem, we add a way to ignore tests in specific platform triples, and update the overly broad `ignore-x86` rule in affected tests.

Address #46948, #54546, #53081.
2019-12-28 23:02:09 +00:00
Esteban Küber
5e1b366fb6 Do not ICE on lifetime error involving closures 2019-12-28 13:51:29 -08:00
Esteban Küber
90bf0d2e33 Ignore i586-unknown-linux-gnu and i586-unknown-musl in tests 2019-12-28 12:26:48 -08:00
bors
3a3f4a7cba Auto merge of #67151 - petrochenkov:docomm, r=estebank
doc comments: Less attribute mimicking

Make sure doc comments are not converted into intermediate meta-items, or not mixed with `doc(inline)` or something like that.

Follow-up to https://github.com/rust-lang/rust/pull/65750.
2019-12-28 19:23:36 +00:00
Santiago Pastorino
250a636217
Avoid copying some undef memory in MIR
During MIR interpretation it may happen that a place containing
uninitialized bytes is copied. This would read the current
representation of these bytes and write it to the destination even
though they must, by definition, not matter to the execution.

This elides that representation change when no bytes are defined in such
a copy, saving some cpu cycles. In such a case, the memory of the target
allocation is not touched at all which also means that sometimes no
physical page backing the memory allocation of the representation needs
to be provided by the OS at all, reducing memory pressure on the system.
2019-12-28 14:13:44 -03:00
bors
e39ae6f883 Auto merge of #67459 - ssomers:#67438, r=RalfJung
prune ill-conceived BTreeMap iter_mut assertion and test its mutability

Proposal to deal with #67438 (and I'm more sure now that this is the right thing to do).
Passes testing with miri.
2019-12-28 16:04:40 +00:00
Matthew Kraai
9ec924c97d Change "be returning" to "return" 2019-12-28 07:05:44 -08:00
Vadim Petrochenkov
a0d8b794d6 resolve: Minor cleanup of duplicate macro reexports 2019-12-28 17:37:22 +03:00
bors
2ee25dae12 Auto merge of #67675 - RalfJung:miri, r=RalfJung
update miri
2019-12-28 12:37:30 +00:00
Ralf Jung
b0b040efc1 update miri 2019-12-28 11:20:25 +01:00
Vadim Petrochenkov
3d57b8bcc0 doc comments: Less attribute mimicking 2019-12-28 12:33:18 +03:00
bors
f564c4db0d Auto merge of #67605 - lzutao:msdn-links, r=Mark-Simulacrum
tidy: change msdn links to newer locations

see accouncement at https://docs.microsoft.com/welcome-to-docs
The script that I used: https://gist.github.com/lzutao/1449c9210ad91899841d62e0058d2caa
2019-12-28 09:19:26 +00:00
Vadim Petrochenkov
e3155abd2e Stabilize attribute macros on inline modules 2019-12-28 11:42:26 +03:00
Yuki Okushi
e850cfc6bb Update .mailmap 2019-12-28 16:51:35 +09:00