90351 Commits

Author SHA1 Message Date
kennytm
1180df2a3b
Rollup merge of #58832 - pietroalbini:appveyor-hyperv, r=kennytm
Revert switching to GCP on AppVeyor

r? @alexcrichton
2019-03-02 22:58:37 +08:00
kennytm
2c1a7c132b
Rollup merge of #58830 - Centril:rust_2018_idioms-tidy, r=oli-obk
tidy: deny(rust_2018_idioms)

r? @oli-obk
2019-03-02 22:58:35 +08:00
kennytm
c4f693cbf2
Rollup merge of #58821 - alex:patch-1, r=Centril
Fixed a syntax error in the pin docs
2019-03-02 22:58:32 +08:00
kennytm
8bdd948b31
Rollup merge of #58802 - nnethercote:inline-record_layout, r=oli-obk
Ensure `record_layout_for_printing()` is inlined.

This reduces instruction counts for the `ctfe-stress-2` benchmark by
about 1%.

r? @oli-obk
2019-03-02 22:58:29 +08:00
kennytm
4aebce5758
Rollup merge of #58785 - euclio:tool-lint-attrs, r=estebank
allow specifying attributes for tool lints

Needed for clippy to fix `unused_doc_comments` warnings that will be exposed by #57882 (and thus unblock it).
2019-03-02 22:58:26 +08:00
kennytm
f67736ad04
Rollup merge of #58782 - tspiteri:str-escape-self, r=kennytm
Replace `s` with `self` in docs for str methods taking self.

Cherry picked from PR #58596 which is blocked on some intra-doc link bugs.
2019-03-02 22:58:22 +08:00
kennytm
df2b6bcf5a
Rollup merge of #58780 - RalfJung:manually-drop, r=nagisa
ManuallyDrop != MaybeUninit

Cc @Centril
2019-03-02 22:58:19 +08:00
kennytm
2e82d11de1
Rollup merge of #58730 - timvermeulen:internal_iteration, r=scottmcm
Have all methods of Filter and FilterMap use internal iteration

This PR changes `Filter::{next, next_back, count}` and `FilterMap::{next, next_back}` to all use internal iteration. The `next` and `next_back` methods are changed to directly forward to `try_for_each` and `try_rfold` respectively, using `Result` as the `Try` type. I think that's okay? Alternatively, I could change their implementations to use `LoopState` instead if there's any benefit in doing so.

r? @scottmcm
2019-03-02 22:58:11 +08:00
bors
d987b46bd7 Auto merge of #56946 - Zoxc:jobserver, r=nikomatsakis
Add support for using a jobserver with Rayon

The Rayon changes are here: https://github.com/Zoxc/rayon/pull/2

cc @alexcrichton
r? @nikomatsakis
2019-03-02 01:44:55 +00:00
bors
f3730f9b87 Auto merge of #58800 - ehuss:update-books, r=Centril
Update edition-guide

15 commits in 419edb885ec1a98c0747b3907003d79e3e6b93a9..5f3cc2a5618700efcde3bc00799744f21fa9ad2e
2018-12-04 16:43:38 -0500 to 2019-02-27 20:11:50 -0800
- Migrate to mdbook 0.2. (rust-lang-nursery/edition-guide#152)
- Remove automatic deployment. (rust-lang-nursery/edition-guide#151)
- Fix issue with rust's linkchecker and mdbook. (rust-lang-nursery/edition-guide#147)
- Fix test now that overflowing_literals is rejected in all editions. (rust-lang-nursery/edition-guide#148)
- overflowing_literals is deny on all editions (rust-lang-nursery/edition-guide#146)
- Update for uniform_path stabilization. (rust-lang-nursery/edition-guide#141)
- Add example to rustup to show overriding to specific version (rust-lang-nursery/edition-guide#144)
- Update for anonymous-lifetime stabilization. (rust-lang-nursery/edition-guide#142)
- Add minimum Rust version for Kleene operator (rust-lang-nursery/edition-guide#137)
- Add 2018-specific changes. (rust-lang-nursery/edition-guide#130)
- aborting-on-panic.md: Typo in example config (rust-lang-nursery/edition-guide#125)
- Clarify uniform paths are not yet in Rust 2018 (rust-lang-nursery/edition-guide#124)
- update several version numbers
- Fixes outdated link (rust-lang-nursery/edition-guide#131)
- Fixed typo in transitioning page. (rust-lang-nursery/edition-guide#127)
2019-03-01 22:12:27 +00:00
bors
c1d2d83ca3 Auto merge of #58754 - ljedrz:I_hate_NodeIds, r=Zoxc
Remove NodeId from more HIR nodes

The next iteration of HirIdification (#57578).

Removes `NodeId` from:

- [x] `Stmt`
- [x] `Local`
- [x] `Field`
- [x] `AnonConst`
- [x] `TraitItem`
- [x] `ImplItem`
- [x] `TypeBinding`
- [x] `Arg`
- [x] `TraitRef`
- [x] `VisibilityKind`

It will most probably break clippy again; I'd appreciate a **delegate** again if/when it is good to go so I can attach a clippy fix later.

r? @Zoxc
2019-03-01 15:36:13 +00:00
ljedrz
9cd1845908 hir: remove NodeId from VisibilityKind 2019-03-01 11:18:50 +01:00
ljedrz
01cf66bb30 hir: remove NodeId from TraitRef 2019-03-01 11:18:50 +01:00
ljedrz
aa6a9c3f41 hir: remove NodeId from Arg 2019-03-01 11:18:49 +01:00
ljedrz
2827f8d4fe hir: remove NodeId from TypeBinding 2019-03-01 11:18:49 +01:00
ljedrz
a29ceb9f51 hir: remove NodeId from ImplItem 2019-03-01 11:18:49 +01:00
ljedrz
c2e517e0c4 ty: HirIdify some lints 2019-03-01 11:18:49 +01:00
ljedrz
e72584c3a1 hir: remove NodeId from TraitItem 2019-03-01 11:18:49 +01:00
ljedrz
43294c6c8c middle: HirIdify dead 2019-03-01 11:18:48 +01:00
ljedrz
4543fc243e hir: remove NodeId from AnonConst 2019-03-01 11:18:48 +01:00
ljedrz
d959f443fb hir: remove NodeId from Field 2019-03-01 11:18:48 +01:00
ljedrz
70d3b290e2 hir: remove NodeId from Local 2019-03-01 11:18:48 +01:00
ljedrz
341b023986 hir: remove NodeId from Stmt 2019-03-01 11:18:47 +01:00
bors
17add2498f Auto merge of #58631 - spastorino:place2_1, r=oli-obk
Put Local, Static and Promoted as one Base variant of Place

Related to #52708

The `Place` 2.0 representation use a `Base` variant for `Local`, `Static` and `Promoted` so we start making this change in the current `Place` to make the following steps simpler.

r? @oli-obk
2019-03-01 10:00:17 +00:00
Pietro Albini
805145f2f9
Revert "Auto merge of #58597 - pietroalbini:appveyor-gce, r=alexcrichton"
This reverts commit fd42f24b0129b32d66f174510518c083cdcec3eb, reversing
changes made to 0e25a6829c66302dc06c351bb494774e3d075f77.
2019-03-01 10:41:25 +01:00
Mazdak Farrokhzad
3391f6ce80 tidy: deny(rust_2018_idioms) 2019-03-01 10:16:01 +01:00
bors
7b4f8f969c Auto merge of #58689 - memoryruins:exclude_should_panic, r=oli-obk
Add unstable option to ignore should_panic tests

Add an unstable option `--exclude-should-panic` to libtest to workaround https://github.com/rust-lang/miri/issues/636

?r @oli-obk
cc @RalfJung
2019-03-01 05:17:14 +00:00
Santiago Pastorino
0f993d5a7a Put Local, Static and Promoted as one Base variant of Place 2019-03-01 05:02:00 +01:00
bors
20cfc9deb5 Auto merge of #58408 - alexcrichton:update-llvm, r=michaelwoerister
rustc: Update LLVM, remove dead wasm code

This commit updates the LLVM branch to the rebased version of the
upstream release/8.x branch. This includes a wasm patch which means that
the `rewrite_imports` pass in rustc is no longer needed (yay!) and we
can instead rely on `wasm-import-module`, an attribute we're already
emitting, to take care of all the work.
2019-03-01 01:22:15 +00:00
John Kåre Alsaker
5c78fa836d Update Cargo.lock 2019-03-01 01:30:52 +01:00
John Kåre Alsaker
42d817f3e7 Fix import 2019-03-01 01:15:39 +01:00
John Kåre Alsaker
35a1b91c4b Address comments 2019-03-01 01:15:38 +01:00
John Kåre Alsaker
892fed9d08 Add support for using a jobserver with Rayon 2019-03-01 01:15:37 +01:00
Alex Gaynor
96be181c7e
Fixed a syntax error in the pin docs 2019-02-28 16:34:03 -05:00
bors
350674b718 Auto merge of #58250 - Zoxc:rustc-interface-1, r=oli-obk
Introduce rustc_interface and move some methods there

Split out from https://github.com/rust-lang/rust/pull/56732

r? @oli-obk
2019-02-28 21:02:12 +00:00
John Kåre Alsaker
23a51f91c9 Introduce rustc_interface and move some methods there 2019-02-28 19:30:31 +01:00
bors
1999a22881 Auto merge of #57760 - dlrobertson:varargs1, r=alexreg
Support defining C compatible variadic functions

## Summary

Add support for defining C compatible variadic functions in unsafe rust with
`extern "C"` according to [RFC 2137].

## Details

### Parsing
When parsing a user defined function that is `unsafe` and `extern "C"` allow
variadic signatures and inject a "spoofed" `VaList` in the new functions
signature. This allows the user to interact with the variadic arguments via a
`VaList` instead of manually using `va_start` and `va_end` (See [RFC 2137] for
details).

### Codegen

When running codegen for a variadic function, remove the "spoofed" `VaList`
from the function signature and inject `va_start` when the arg local
references are created for the function and `va_end` on return.

## TODO

 - [x] Get feedback on injecting `va_start/va_end` in MIR vs codegen
 - [x] Properly inject `va_end` - It seems like it should be possible to inject
       `va_end` on the `TerminatorKind::Return`. I just need to figure out how
       to get the `LocalRef` here.
 - [x] Properly call Rust defined C variadic functions in Rust - The spoofed
       `VaList` causes problems here.

Related to: #44930

r? @ghost

[RFC 2137]: https://github.com/rust-lang/rfcs/blob/master/text/2137-variadic.md
2019-02-28 15:00:25 +00:00
bors
190feb6529 Auto merge of #58208 - taiki-e:libstd-2018, r=Centril
libstd => 2018

Transitions `libstd` to Rust 2018; cc #58099

r? @Centril
2019-02-28 11:38:40 +00:00
Mazdak Farrokhzad
0c1a38ce3b
Update src/libcore/mem.rs
Co-Authored-By: RalfJung <post@ralfj.de>
2019-02-28 09:24:35 +01:00
Nicholas Nethercote
fbdece47c8 Ensure record_layout_for_printing() is inlined.
This reduces instruction counts for the `ctfe-stress-2` benchmark by
about 1%.
2019-02-28 19:10:43 +11:00
Eric Huss
3aca176fb2 Update edition-guide 2019-02-27 21:09:10 -08:00
Andy Russell
a998b1f425
allow specifying attributes for tool lints 2019-02-27 16:50:47 -05:00
Taiki Endo
aad9e29f52 Fix rebase fail 2019-02-28 04:06:17 +09:00
Taiki Endo
90dbf59b92 Fix some imports and paths 2019-02-28 04:06:17 +09:00
Taiki Endo
9d691bd9ce Fix error in tag-that-dare-not-speak-its-name 2019-02-28 04:06:16 +09:00
Taiki Endo
2af18a2b38 Fix errors in test/ui 2019-02-28 04:06:16 +09:00
Taiki Endo
2c783c3543 Revert removed #![feature(nll)] 2019-02-28 04:06:16 +09:00
Taiki Endo
0749a04fb6 Fix #[macro_use] extern crate in sys/cloudabi 2019-02-28 04:06:15 +09:00
Taiki Endo
93b6d9e086 libstd => 2018 2019-02-28 04:06:15 +09:00
Ralf Jung
f92c20426e improve readability 2019-02-27 18:58:19 +01:00