Commit Graph

81044 Commits

Author SHA1 Message Date
varkor
90eee7dff2 Remove early error abort 2018-07-02 19:44:27 +01:00
varkor
0195714836 Fix ICEs with match/return expressions inside array lengths 2018-07-02 19:44:27 +01:00
varkor
30fde04780 Clean up error messages regarding break/continue inside consts 2018-07-02 19:44:27 +01:00
varkor
b00050f4cf Add more safeguards to "missing binding mode" errors 2018-07-02 19:44:27 +01:00
varkor
998141f8ef Fix another return-const ICE 2018-07-02 19:43:16 +01:00
varkor
7ad1c62d38 Fix an ICE using break and continue as array lengths 2018-07-02 19:43:16 +01:00
varkor
c6bbee802a Fix a bug with return in anonymous consts 2018-07-02 19:43:16 +01:00
bors
9363342be9 Auto merge of #51896 - nikomatsakis:nll-liveness-dirty-list, r=Zoxc
introduce dirty list to liveness, eliminate `ins` vector

At least in my measurements, this seems to knock much of the liveness computation off the profile.

r? @Zoxc
cc @nnethercote
2018-07-02 18:09:20 +00:00
Andy Russell
29851baf0c
add entry for cargo-metadata feature to RELEASES 2018-07-02 13:47:51 -04:00
Josef Reinhard Brandl
e666c2bd07 Implemented UnsafeFutureObj on Box 2018-07-02 19:21:32 +02:00
Josef Reinhard Brandl
ae408947de Implement UnsafeFutureObj for &mut Future 2018-07-02 19:07:59 +02:00
Oliver Schneider
239a0ffeee Update the clippy submodule 2018-07-02 19:07:35 +02:00
Josef Reinhard Brandl
5fde8b9237 Remove unnecessary PhantomData field 2018-07-02 18:57:58 +02:00
Josef Reinhard Brandl
cb2c7570db Add explanation for custom trait object 2018-07-02 18:55:42 +02:00
Nikolai Merinov
ddc1d29442 bootstrap: tests should use rustc from config.toml
Tests should always use "rustc" and "cargo" from config.toml instead
of assuming that stage0 binaries was downloaded to build directory.
2018-07-02 21:28:58 +05:00
est31
56e46255b3 Add some more additional functions to the shim
They are all needed now due to the stdsimd update.
2018-07-02 18:23:57 +02:00
Alexander Regueiro
6660c25045 Updated miri submodule. 2018-07-02 17:18:38 +01:00
Josef Reinhard Brandl
9eee0d2288 Fix naming convention issue 2018-07-02 18:16:36 +02:00
bors
b58b721921 Auto merge of #51321 - zackmdavis:hiridification_generations, r=eddyb
HirId-ification, continued

Another incremental step towards the vision of #50928 (previously: #50929).

r? @michaelwoerister
2018-07-02 16:04:54 +00:00
Niko Matsakis
59f2edbf1a add outlives annotations to BTreeMap
nll requires these annotations, I believe because of
https://github.com/rust-lang/rust/issues/29149
2018-07-02 11:49:33 -04:00
Niko Matsakis
78ea95258d improve comments 2018-07-02 11:40:49 -04:00
Niko Matsakis
90ea49b891 introduce predicates_defined_on for traits
This new query returns only the predicates *directly defined* on an
item (in contrast to the more common `predicates_of`, which returns
the predicates that must be proven to reference an item). These two
sets are almost always identical except for traits, where
`predicates_of` includes an artificial `Self: Trait<...>` predicate
(basically saying that you cannot use a trait item without proving
that the trait is implemented for the type parameters).

This new query is only used in chalk lowering, where this artificial
`Self: Trait` predicate is problematic. We encode it in metadata but
only where needed since it is kind of repetitive with existing
information.

Co-authored-by: Tyler Mandry <tmandry@gmail.com>
2018-07-02 11:33:24 -04:00
Niko Matsakis
327093007a add is_trait(DefId) helper to TyCtxt
Co-authored-by: Tyler Mandry <tmandry@gmail.com>
2018-07-02 10:38:37 -04:00
Niko Matsakis
7bbbed9046 drive-by nits and debug
Co-authored-by: Tyler Mandry <tmandry@gmail.com>
2018-07-02 10:38:35 -04:00
Niko Matsakis
c9d4f0615f use ty::TraitRef::identity where possible
Co-authored-by: Tyler Mandry <tmandry@gmail.com>
2018-07-02 10:38:33 -04:00
Niko Matsakis
5c15163cb9 prove defaults meet WF requirements, not that they are WF
If we have

```rust
struct Foo<T: Copy = String> { .. }
```

the old code would have proven that `String: Copy` was WF -- this,
incidentally, also proved that `String: Copy`. The new code just
proves `String: Copy` directly.

Co-authored-by: Tyler Mandry <tmandry@gmail.com>
2018-07-02 10:38:30 -04:00
Dror Levin
73166f751b Fill in tracking issue number for read_exact_at/write_all_at 2018-07-02 17:38:15 +03:00
Michael Woerister
79d8d087a3 incr.comp.: Take names of children into account when computing the ICH of a module's HIR. 2018-07-02 16:21:34 +02:00
Alexander Regueiro
ea806e7815 Removed uninitialized_statics field from Memory struct in miri.
Refactored code accordingly.
2018-07-02 15:18:36 +01:00
bors
4faaf7e335 Auto merge of #51122 - oli-obk:clippy, r=Mark-Simulacrum
Did you mean to block nightlies on clippy?

Discussion: https://gitter.im/rust-lang/WG-clippy?at=5b073b6597a0361fb760cdc2

r? @alexcrichton

did I forget anything?

cc @nrc @Manishearth
2018-07-02 14:04:26 +00:00
Josef Reinhard Brandl
4e617291c2 Make drop method for PinMut's UnsafeFutureObj impl empty 2018-07-02 13:59:40 +02:00
Josef Reinhard Brandl
dd3b0337ff Improve doc comments for FutureObj 2018-07-02 13:59:40 +02:00
Josef Reinhard Brandl
042928f0f5 UnsafeFutureObj impl for PinMut 2018-07-02 13:59:40 +02:00
Josef Reinhard Brandl
d8bf222367 Add lifetime to FutureObj 2018-07-02 13:59:40 +02:00
Josef Reinhard Brandl
9f70e7fe3c Use From impls for FutureObj<()> 2018-07-02 13:59:39 +02:00
Josef Reinhard Brandl
3d43f828f5 Make custom trait object for Future generic 2018-07-02 13:59:39 +02:00
bors
e75e78256f Auto merge of #51645 - marco-c:error_when_incremental_and_profile, r=michaelwoerister
Raise an error if gcov profiling and incremental compilation are both enabled

Fixes #50203.
2018-07-02 11:58:45 +00:00
Oliver Schneider
78adefd15d Clippy tool also has only a single LICENSE file 2018-07-02 13:57:29 +02:00
est31
563dacd648 Update stdsimd 2018-07-02 12:53:46 +02:00
est31
3779a4cb74 Emit column info in debuginfo for non msvc like targets 2018-07-02 12:16:05 +02:00
Oliver Schneider
75a6fde6a4 Update rustdoc 2018-07-02 10:37:49 +02:00
Oliver Schneider
6d114399f8 Make sure clippy does not duplicate depenencies 2018-07-02 10:36:07 +02:00
bors
a96c88e80f Auto merge of #51893 - nnethercote:BTreeMap-clone-noalloc, r=nnethercote
Make `BTreeMap::clone()` not allocate when cloning an empty tree.

r? @Gankro

CC @porglezomp
2018-07-02 08:28:12 +00:00
Oliver Schneider
6e5b9c1472 Get rid of TyImplTraitExistential 2018-07-02 09:17:38 +02:00
bors
a53bd20fae Auto merge of #51931 - cramertj:rm-libbacktrace, r=alexcrichton
Use in-tree libbacktrace on Fuchsia

cc @abarth

r? @alexcrichton
(welcome back! 😄 )
2018-07-02 06:32:16 +00:00
Zack M. Davis
f23d90a147 add FIXMEs pleading for post-@ edit of commentary on mem_categorization
(The present author fears not being knowledgeable enough to rewrite the
comments unilaterally; merely calling it out is a lazy half-measure, but
at least doesn't actively make things worse the way an ill-informed
rewrite would.)
2018-07-01 22:27:29 -07:00
Zack M. Davis
735d1bd5e6 use HirId in middle::mem_categorization::cmt_, and consequences of that
For the HirIdification initiative #50928.
2018-07-01 22:27:29 -07:00
bors
45935640f0 Auto merge of #51866 - zackmdavis:hir_making_each_day_of_the_year, r=petrochenkov
add modifier keyword spans to hir::Visibility; improve unreachable-pub, private-no-mangle lint suggestions

#50455 pointed out that the unreachable-pub suggestion for brace-grouped `use`s was bogus; #50476 partially ameliorated this by marking the suggestion as `Applicability::MaybeIncorrect`, but this is the actual fix.

Meanwhile, another application of having spans available in `hir::Visibility` is found in the private-no-mangle lints, where we can now issue a suggestion to use `pub` if the item has a more restricted visibility marker (this seems much less likely to come up in practice than not having any visibility keyword at all, but thoroughness is a virtue). While we're there, we can also add a helpful note if the item does have a `pub` (but triggered the lint presumably because enclosing modules were private).

![hir_vis](https://user-images.githubusercontent.com/1076988/42018064-ca830290-7a65-11e8-9c4c-48bc846f861f.png)

r? @nrc
cc @Manishearth
2018-07-02 03:18:49 +00:00
Esteban Küber
e89db3030d Do not suggest changes to str literal if it isn't one 2018-07-01 20:03:35 -07:00
Nicholas Nethercote
f46f05bae8 Make BTreeMap::clone() not allocate when cloning an empty tree. 2018-07-02 13:03:31 +10:00