Commit Graph

106135 Commits

Author SHA1 Message Date
Santiago Pastorino
b5b6be0ab7
Local field on PlaceRef and RootPlace is not a reference anymore 2020-01-28 10:12:53 -03:00
Santiago Pastorino
39d93b1ef8
codegen_place and related functions can take PlaceRef by value 2020-01-28 10:12:53 -03:00
Santiago Pastorino
10b19f6dee
make_integrate_local takes Local by value 2020-01-28 10:12:53 -03:00
Santiago Pastorino
4a86c55f56
record_killed_borrows_for_local takes Local by value 2020-01-28 10:12:53 -03:00
Santiago Pastorino
a71cc4ca11
Place conflict functions take Local by value 2020-01-28 10:12:52 -03:00
bors
b181835a6b Auto merge of #68529 - TimDiekmann:rename-alloc, r=Amanieu
Rename `Alloc` to `AllocRef`

The allocator-wg has decided to merge this change upstream in https://github.com/rust-lang/wg-allocators/issues/8#issuecomment-577122958.

This renames `Alloc` to `AllocRef` because types that implement `Alloc` are a reference, smart pointer, or ZSTs. It is not possible to have an allocator like `MyAlloc([u8; N])`, that owns the memory and also implements `Alloc`, since that would mean, that moving a `Vec<T, MyAlloc>` would need to correct the internal pointer, which is not possible as we don't have move constructors.

For further explanation please see https://github.com/rust-lang/wg-allocators/issues/8#issuecomment-489464843 and the comments after that one.

Additionally it clarifies the semantics of `Clone` on an allocator. In the case of `AllocRef`, it is clear that the cloned handle still points to the same allocator instance, and that you can free data allocated from one handle with another handle.

The initial proposal was to rename `Alloc` to `AllocHandle`, but `Ref` expresses the semantics better than `Handle`. Also, the only appearance of `Handle` in `std` are for windows specific resources, which might be confusing.

Blocked on https://github.com/rust-lang/miri/pull/1160
2020-01-28 08:44:20 +00:00
Pedro de Brito
074cfcbf2d fix: typo in vec.rs 2020-01-28 07:59:07 +01:00
Billy Rieger
5654305a7b Add BTreeMap::remove_entry
Mainly for API parity with HashMap.

- Add BTreeMap::remove_entry
- Rewrite BTreeMap::remove to use remove_entry
- Use btreemap_remove_entry feature in doc comment
2020-01-28 00:43:18 -05:00
bors
82018665a5 Auto merge of #68234 - CAD97:slice-from-raw-parts, r=KodrAus
Stabilize ptr::slice_from_raw_parts[_mut]

Closes #36925, the tracking issue.
Initial impl: #60667

r? @rust-lang/libs

In addition to stabilizing, I've adjusted the example of `ptr::slice_from_raw_parts` to use `slice_from_raw_parts` instead of `slice_from_raw_parts_mut`, which was unnecessary for the example as written.
2020-01-28 05:31:34 +00:00
bors
67fae2241b Auto merge of #68587 - JohnTitor:rollup-fz45xwc, r=JohnTitor
Rollup of 11 pull requests

Successful merges:

 - #68200 (Stabilize the debug_map_key_value feature)
 - #68383 (Clean up E0205 explanation)
 - #68412 (Clean up E0207 explanation)
 - #68454 (clean up E0214 explanation)
 - #68482 (clean up error codes explanation)
 - #68563 (Don't call `tcx.fn_sig` on closures)
 - #68570 (Bump LLVM submodule to fix LLVM assertion failure in MSP430 interrupt generation.)
 - #68571 (check_match: extract common logic)
 - #68573 (Clean up E0262 explanation)
 - #68575 (Disable the testcase for Vxworks.)
 - #68581 (Add support for icebreakers-cleanup-crew commands)

Failed merges:

r? @ghost
2020-01-28 02:17:10 +00:00
Yuki Okushi
aac5788a61
Rollup merge of #68581 - spastorino:support-ice-breaker-cleanup-crew, r=Dylan-DPC
Add support for icebreakers-cleanup-crew commands

r? @nikomatsakis
2020-01-28 10:48:23 +09:00
Yuki Okushi
41110edeeb
Rollup merge of #68575 - Wind-River:master_2020, r=alexcrichton
Disable the testcase for Vxworks.

r? @alexcrichton
2020-01-28 10:48:21 +09:00
Yuki Okushi
ee79cf28db
Rollup merge of #68573 - GuillaumeGomez:clean-up-e0262, r=Dylan-DPC
Clean up E0262 explanation

r? @Dylan-DPC
2020-01-28 10:48:20 +09:00
Yuki Okushi
8bc0e48540
Rollup merge of #68571 - Centril:check_in_cx, r=oli-obk
check_match: extract common logic

This is part of work on `hir::ExprKind::Let` which I thought made sense on its own (though makes even more sense with `::Let`).

r? @oli-obk
2020-01-28 10:48:19 +09:00
Yuki Okushi
1e47ca518f
Rollup merge of #68570 - cr1901:msp430-fix-1-2020, r=alexcrichton
Bump LLVM submodule to fix LLVM assertion failure in MSP430 interrupt generation.

This PR brings in changes introduced by [this cherry-pick](https://github.com/rust-lang/llvm-project/pull/37) to the Rust repository.

Nightlies downloaded from `rustup` do not appear to have llvm assertions enabled; the assertion failure [sometimes](https://github.com/YuhanLiin/msp430fr2355-quickstart/issues/3) causes link errors that shouldn't occur. I couldn't find any indication of other bugs; however, it should still be fixed.
2020-01-28 10:48:17 +09:00
Yuki Okushi
c38e97cc61
Rollup merge of #68563 - Aaron1011:fix/fn-sig-closure, r=varkor
Don't call `tcx.fn_sig` on closures

Fixes #68542
2020-01-28 10:48:16 +09:00
Yuki Okushi
8ed586581d
Rollup merge of #68482 - GuillaumeGomez:clean-up-err-codes, r=Dylan-DPC
clean up error codes explanation

r? @Dylan-DPC
2020-01-28 10:48:14 +09:00
Yuki Okushi
39407c9ab7
Rollup merge of #68454 - GuillaumeGomez:clean-up-e0214, r=Dylan-DPC
clean up E0214 explanation

r? @Dylan-DPC
2020-01-28 10:48:12 +09:00
Yuki Okushi
dc33cd3500
Rollup merge of #68412 - GuillaumeGomez:clean-up-e0207, r=Dylan-DPC
Clean up E0207 explanation

r? @Dylan-DPC
2020-01-28 10:48:10 +09:00
Yuki Okushi
2bfa058074
Rollup merge of #68383 - GuillaumeGomez:clean-up-e0205, r=Dylan-DPC
Clean up E0205 explanation

r? @Dylan-DPC
2020-01-28 10:48:05 +09:00
Yuki Okushi
5c42ffe150
Rollup merge of #68200 - KodrAus:stabilize/debug_map_key_value, r=alexcrichton
Stabilize the debug_map_key_value feature

RFC: https://github.com/rust-lang/rfcs/pull/2696
Tracking issue: #62482

Stabilizes the `debug_map_key_value` feature, which covers:

```rust
impl<'a, 'b> DebugMap<'a, 'b> {
    pub fn key(&mut self, key: &dyn fmt::Debug) -> &mut DebugMap<'a, 'b> {}
    pub fn value(&mut self, value: &dyn fmt::Debug) -> &mut DebugMap<'a, 'b> {}
}
```

These methods are small and self-contained, and are used as the basis for the existing `DebugMap::entry` method, so have been used in the wild for the last 6 months or so.
2020-01-28 10:48:04 +09:00
Mazdak Farrokhzad
dc17f38e04 check_unsafety: more code reuse 2020-01-28 02:30:47 +01:00
Ashley Mannix
2c07a621ef stabilize the debug_map_key_value feature 2020-01-28 11:15:22 +10:00
Mazdak Farrokhzad
979f5b4b1c lintify conflicting_repr_hints 2020-01-28 01:24:59 +01:00
bors
0859451592 Auto merge of #68580 - Mark-Simulacrum:rollup-r80xhus, r=Mark-Simulacrum
Rollup of 3 pull requests

Successful merges:

 - #68459 (don't clone types that are copy, round two.)
 - #68576 (update miri)
 - #68579 (Update cargo)

Failed merges:

r? @ghost
2020-01-27 22:59:38 +00:00
Tim Diekmann
7ca25db816
Rename Alloc to AllocRef 2020-01-27 21:39:51 +01:00
Santiago Pastorino
3124603f09
Add support for icebreakers-cleanup-crew commands 2020-01-27 15:58:27 -03:00
Mark Rousskov
b0f5f670b3
Rollup merge of #68579 - ehuss:update-cargo, r=Mark-Simulacrum
Update cargo

2 commits in b68b0978ab8012f871c80736fb910d14b89c4498..9d32b7b01409024b165545c568b1525d86e2b7cb
2020-01-24 18:26:23 +0000 to 2020-01-26 18:27:29 +0000
- Polish code to clarify meaning (rust-lang/cargo#7836)
- Store maximum queue length (rust-lang/cargo#7829)
2020-01-27 13:42:03 -05:00
Mark Rousskov
69362b9c9e
Rollup merge of #68576 - jonhoo:bump-miri, r=oli-obk
update miri

Bump miri for rust-lang/miri#1150

r? @oli-obk
2020-01-27 13:42:02 -05:00
Mark Rousskov
aa6e58b352
Rollup merge of #68459 - matthiaskrgr:clone_on_copy2, r=eddyb
don't clone types that are copy, round two.

Apparently fixing some of these issues makes clippy find even more so I did a couple of rounds now.

r? @eddyb
2020-01-27 13:42:00 -05:00
Eric Huss
e1a837c08f Update cargo 2020-01-27 10:30:44 -08:00
Jon Gjengset
98724074d7
Bump miri for rust-lang/miri#1150 2020-01-27 12:47:51 -05:00
Umesh Kalappa
2a38eb3a86 Disable the testcase for Vxworks. 2020-01-27 09:37:57 -08:00
Guillaume Gomez
4b0fe2ac63 Clean up E0262 explanation 2020-01-27 17:43:02 +01:00
Felix S. Klock II
6f4b904aa9 Collisions in the dep-graph due to path-reuse are rare but can occur.
So, instead of ICE'ing, just fail to mark green in such cases
(for `DepKind::{Hir, HirBody, CrateMetadata}`).

Fix #62649.
2020-01-27 17:06:06 +01:00
Mazdak Farrokhzad
de7f16d431 check_match: extract common logic 2020-01-27 16:53:45 +01:00
William D. Jones
b0174ecf34 Fix LLVM assertion failure in MSP430 interrupt generation. 2020-01-27 10:42:48 -05:00
Guillaume Gomez
833ffd7b83
Update src/librustc_error_codes/error_codes/E0220.md
Co-Authored-By: Dylan DPC <dylan.dpc@gmail.com>
2020-01-27 16:06:38 +01:00
bors
8a79d08fa5 Auto merge of #68566 - pietroalbini:rollup-22hbo3e, r=pietroalbini
Rollup of 4 pull requests

Successful merges:

 - #67928 (Update RELEASES.md for 1.41.0)
 - #68370 (Ensure that we error when calling "const extern fn" with wrong convention)
 - #68531 ([self-profiler] Two small cleanups)
 - #68562 (Fix spelling errors)

Failed merges:

r? @ghost
2020-01-27 11:59:57 +00:00
Pietro Albini
5f9284c95f
Rollup merge of #68562 - hjung4:spell, r=jonas-schievink
Fix spelling errors
2020-01-27 12:50:52 +01:00
Pietro Albini
9188bab4db
Rollup merge of #68531 - wesleywiser:cleanup_self_profiler, r=michaelwoerister
[self-profiler] Two small cleanups

r? @michaelwoerister
2020-01-27 12:50:50 +01:00
Pietro Albini
7e824343d3
Rollup merge of #68370 - Aaron1011:const-extern-test, r=RalfJung
Ensure that we error when calling "const extern fn" with wrong convention

See #64926
2020-01-27 12:50:49 +01:00
Pietro Albini
c8d5f4dcd1
Rollup merge of #67928 - XAMPPRocky:relnotes-1.41.0, r=pietroalbini
Update RELEASES.md for 1.41.0

### [Rendered](https://github.com/XAMPPRocky/rust/blob/relnotes-1.41.0/RELEASES.md)

cc @rust-lang/release
2020-01-27 12:50:47 +01:00
bors
1d5f6d41e1 Auto merge of #68165 - thomcc:lt_ones, r=sfackler
Add leading_ones and trailing_ones methods to the primitive integer types

I was surprised these were missing (given that `leading_zeros` and `trailing_zeros` exist), and they seem trivial and hopefully not controversial.

Note that there's some precedent in that `count_ones` and `count_zeros` are both supported even though only one of these has an intrinsic.

I'm not sure if these need a `rustc_const_unstable` flag (the tests don't seem to mind that it's missing). I just made them const, since there's not really any reason for these to be non-const when the `_zeros` variants are const.

Note: My understanding is trivial stuff like (hopefully) this can land without an RFC, but I'm not fully sure about the process though. Questions like "when does the tracking issue get filed?", are a total mystery to me. So, any guidance is appreciated, and sorry in advance if I should have gone through some more involved process for this.
2020-01-27 08:42:56 +00:00
Aaron Hill
9ad1a8c97f
Don't call tcx.fn_sig on closures
Fixes #68542
2020-01-27 00:49:56 -05:00
comet
9a78c2b11d
update 2020-01-26 22:52:13 -06:00
Aaron Hill
4a650324f8
Ensure that we error when calling "const extern fn" with wrong convention
See #64926
2020-01-26 23:05:36 -05:00
bors
320ada6479 Auto merge of #68447 - estebank:sugg-type-param, r=petrochenkov
Suggest defining type parameter when appropriate

```
error[E0412]: cannot find type `T` in this scope
 --> file.rs:3:12
  |
3 | impl Trait<T> for Struct {}
  |     -      ^ not found in this scope
  |     |
  |     help: you might be missing a type parameter: `<T>`
```

Fix #64298.
2020-01-27 03:01:59 +00:00
Matthias Krüger
f7dcdcc0b9 make matches exhaustive 2020-01-27 01:18:18 +01:00
Matthias Krüger
ec61761e46 don't clone types that are copy, round two. 2020-01-27 01:18:18 +01:00