105170 Commits

Author SHA1 Message Date
Oliver Scherer
a076464c4a
Rollup merge of #67576 - king6cong:slice_repeat, r=Dylan-DPC
reuse `capacity` variable in slice::repeat

None
2019-12-28 00:35:59 +01:00
Oliver Scherer
b1b005b8f0
Rollup merge of #65244 - seanmonstar:into-future, r=seanmonstar
add IntoFuture trait and support for await

The [async-await RFC](https://rust-lang.github.io/rfcs/2394-async_await.html#the-await-compiler-built-in) mentions being able to `await` anything implementing `IntoFuture`. Somewhere along the way, it was left out.
2019-12-28 00:35:58 +01:00
Oliver Scherer
b3abebd78d Prevent polymorphic const prop on assignments 2019-12-28 00:22:16 +01:00
Oliver Scherer
3eb0585173 Work around a resolve bug in const prop 2019-12-28 00:22:16 +01:00
Sean McArthur
f35517ee86 core: add IntoFuture trait and support for await 2019-12-27 11:56:11 -08:00
bors
74c4e6a981 Auto merge of #67035 - Goirad:implement-ipadd-padding, r=dtolnay
Implement padding for IpAddr without heap alloc

Implements padding for `IpAddr`s without heap allocations.
This fixes issue #66810 .

cc @jethrogb @mzohreva
2019-12-27 18:40:50 +00:00
Camille GILLOT
71f745852a Address review. 2019-12-27 19:20:29 +01:00
Camille GILLOT
36f95ab3fa Fallout in other crates. 2019-12-27 19:20:28 +01:00
Camille GILLOT
c737c07021 Lowering for hir::Ty. 2019-12-27 19:20:28 +01:00
Camille GILLOT
5865d563ea Visit for hir::Ty. 2019-12-27 19:20:28 +01:00
Camille GILLOT
6b87d5cdf1 Syntax for hir::Ty. 2019-12-27 19:20:28 +01:00
Camille GILLOT
66f9198047 Use Arena inside hir::TraitMethod. 2019-12-27 19:20:28 +01:00
Camille GILLOT
deac631d7f Use Arena inside hir::FnSig. 2019-12-27 19:20:27 +01:00
Wesley Wiser
25a8b5d58e Fix Instance::resolve() incorrectly returning specialized instances
We only want to return specializations when `Reveal::All` is passed, not
when `Reveal::UserFacing` is. Resolving this fixes several issues with
the `ConstProp`, `SimplifyBranches`, and `Inline` MIR optimization
passes.

Fixes #66901
2019-12-27 13:04:32 -05:00
Manish Goregaokar
e518e38564 Fix whitequark's entry in the mailmap 2019-12-27 09:52:59 -08:00
Manish Goregaokar
1ec81abad6 Fix Nika's entry in the mailmap 2019-12-27 09:52:59 -08:00
Manish Goregaokar
aa5983d560 Fix my entry in the mailmap 2019-12-27 09:43:36 -08:00
jumbatm
91c2f78b50 Clean up const-hack from #58044 2019-12-27 23:21:32 +10:00
jumbatm
282635f2db Clean up const-hack from #61635 2019-12-27 23:21:32 +10:00
jumbatm
8c494866be Clean up const-hack from #63786 2019-12-27 23:21:32 +10:00
jumbatm
f6faf0b2e7 Clean up const-hack from #63810 2019-12-27 23:21:27 +10:00
Simon Sapin
1c572a2d6e Stabilize the matches! macro
Fixes https://github.com/rust-lang/rust/issues/65721

FCP: https://github.com/rust-lang/rust/issues/65721#issuecomment-569118119
2019-12-27 14:07:16 +01:00
Santiago Pastorino
bd93b7718e
Avoid memory copy logic for zsts
Closes #67539
2019-12-27 09:33:22 -03:00
Ross MacArthur
749295cfbf
Add regression test for old NLL ICE 2019-12-27 13:36:41 +02:00
bors
41501a6b03 Auto merge of #67437 - matthew-healy:skip-llvm-rebuild, r=Mark-Simulacrum
Add LLVM `skip-rebuild` option to `x.py`

This PR reimplements parts of @Walther's work from #65848, and closes #65612.

I decided not to implement the [arguments to override this setting](https://github.com/rust-lang/rust/issues/65612#issuecomment-544247546) in this PR. If there's strong feeling that this change shouldn't be merged without the overrides then I'm happy to close this until I've had a chance to add them in. Otherwise I'll aim to submit a second PR with those this weekend.

I'd have liked to have tested the change in `native.rs`, but there didn't seem to be any existing test infrastructure. I ran this a few times manually and it _worked on my machine_ though... 😬
2019-12-27 10:58:57 +00:00
bors
8f5f8f916f Auto merge of #67192 - oli-obk:const_zst_addr, r=RalfJung,varkor
Various const eval and pattern matching ICE fixes

r? @RalfJung
cc @spastorino

This PR does not change existing behaviour anymore and just fixes a bunch of ICEs reachable from user code (sometimes even on stable via obscure union transmutes).
2019-12-27 07:38:52 +00:00
Sebastien Marie
98d8326cfc add comment for rustfmt in config.toml.example 2019-12-27 05:32:12 +00:00
Sebastien Marie
b817a68391 allow rustfmt key in [build] section 2019-12-27 05:32:11 +00:00
bors
a04c789f69 Auto merge of #66936 - cjgillot:hirene-expr, r=Zoxc
Allocate HIR on an arena 2/4 -- Expr & Pat

This is the second PR in the series started by #66931

This time, 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-preamble...hirene-expr
2019-12-27 01:40:41 +00:00
Camille GILLOT
fb100e5ddc Move arena_vec inside lowering. 2019-12-26 23:40:50 +01:00
Camille GILLOT
75632c5ffe Remove some type information. 2019-12-26 23:40:13 +01:00
Camille GILLOT
1984ec5d20 Fewer calls to arena.alloc. 2019-12-26 23:39:14 +01:00
Camille GILLOT
8284035372 Fallout in other crates. 2019-12-26 23:38:46 +01:00
Camille GILLOT
58b908d09c Lowering for hir::Expr. 2019-12-26 23:36:12 +01:00
Camille GILLOT
52e9825ba8 Visit for hir::Expr. 2019-12-26 23:36:12 +01:00
Camille GILLOT
2b1cfe5b5b Syntax for hir::Expr. 2019-12-26 23:36:12 +01:00
Matthew Healy
e44fc4577f Skip LLVM rebuild when skip-rebuild is true 2019-12-26 22:19:18 +00:00
Matthew Healy
2297a8b199 Parse llvm_skip_rebuild into Config 2019-12-26 22:16:42 +00:00
Matthew Healy
1a01f97785 Document LLVM skip-rebuild config.toml option 2019-12-26 22:16:41 +00:00
Oliver Scherer
f65a91eb47 Make ui test bitwidth independent 2019-12-26 22:50:18 +01:00
Oliver Scherer
12a4c2ca18 Fix rebase fallout 2019-12-26 22:50:18 +01:00
Oliver Scherer
aaffe12453 Use the targetted const eval functions 2019-12-26 22:50:18 +01:00
Oliver Scherer
b476344ccc Reintroduce the recursion comment 2019-12-26 22:50:18 +01:00
Oliver Scherer
1531c3937b Documentation nit 2019-12-26 22:50:18 +01:00
Oliver Scherer
20c1b3fb49 Add a const_eval helper to InterpCx 2019-12-26 22:50:18 +01:00
Oliver Scherer
1acbf4b802 Early abort instead of building up zero sized values 2019-12-26 22:50:18 +01:00
Oliver Scherer
95205518dd Explain why const_eval is ok here 2019-12-26 22:50:17 +01:00
Oliver Scherer
0e3fafaea7 Typo 2019-12-26 22:50:17 +01:00
Oliver Scherer
72ebce0e1b Remove unintended noisy log statement 2019-12-26 22:50:17 +01:00
Oliver Scherer
6937ca2c90 Explain the currently necessary existance of TransmuteSizeDiff 2019-12-26 22:50:17 +01:00