Commit Graph

88580 Commits

Author SHA1 Message Date
Esteban Küber
65a8d7b1d8 fix tests 2019-01-11 21:07:46 -08:00
Esteban Küber
57f17e91d0 Continue evaluating after type argument in where clause 2019-01-11 21:05:48 -08:00
Esteban Küber
5d2f31cddc Continue evaluating after missing for in impl Trait for Foo 2019-01-11 20:58:51 -08:00
Esteban Küber
d8610b31ec Continue evaluating after parsing incorrect binary literal 2019-01-11 19:56:41 -08:00
Esteban Küber
fc4b54157f Continue parsing after lifetime in incorrect location 2019-01-11 19:41:43 -08:00
Esteban Küber
5c67ba615c Continue parser after trailing type argument attribute 2019-01-11 19:31:45 -08:00
varkor
afcb938116 Stabilise irrefutable if-let and while-let patterns
This stabilises RFC 2086 (https://github.com/rust-lang/rust/issues/44495).

Co-Authored-By: Sebastian Malton <sebastian@malton.name>
2019-01-12 03:10:59 +00:00
bors
0c91f3d97f Auto merge of #57234 - Centril:const-stabilizations-2, r=oli-obk
Const-stabilize `const_int_ops` + `const_ip`

r? @oli-obk

## Note for relnotes: This PR includes https://github.com/rust-lang/rust/pull/57105.

I've added T-lang since this affects intrinsics and the operational semantics of Rust's `const fn` fragment.

## Stable APIs proposed for constification

+ `const_int_ops`:
    + `count_ones`
    + `count_zeros`
    + `leading_zeros`
    + `trailing_zeros`
    + `swap_bytes`
    + `from_be`
    + `from_le`
    + `to_be`
    + `to_le`
+ `const_ip`
    + `Ipv4Addr::new`

## Unstable APIs constified

+ `const_int_conversion`:
    + `reverse_bits`
2019-01-12 02:00:18 +00:00
Mazdak Farrokhzad
561483e4e8 stabilize top level or-pats in if/while let. 2019-01-11 23:57:04 +01:00
David Sanders
49e8318b0c
Fixing a typographical error. 2019-01-11 13:58:13 -08:00
Alexander Ronald Altman
fdd2f0d823
Fix new hyperlinks in RELEASES.md 2019-01-11 13:59:04 -06:00
Andy Russell
020e1f5b60
don't unwrap unexpected tokens in format!
Fixes #57512.
2019-01-11 13:00:44 -05:00
Alexander Ronald Altman
434fe4e356
Correct RELEASES.md for 1.32.0
The `into_to_from_bytes` feature was stabilized for `i128` and `u128` just like for the other integer types, but they seem to have been missed.
2019-01-11 11:06:56 -06:00
Steve Klabnik
186d5d7fd4 re-do docs for core::cmp
Fixes #32934
2019-01-11 12:00:09 -05:00
bors
b43986184b Auto merge of #57470 - RalfJung:miri, r=oli-obk
update miri

r? @oli-obk
2019-01-11 16:28:45 +00:00
bors
88f19a774f Auto merge of #57355 - arielb1:correct-subst, r=nikomatsakis
use the correct supertrait substitution in `object_ty_for_trait`

beta-nominating because regression.

Fixes #57156.
2019-01-11 12:04:24 +00:00
Oliver Scherer
16a4e477d8 Remove unneeded but benign change 2019-01-11 12:19:08 +01:00
Jethro Beekman
928efca151 Fix undefined behavior 2019-01-11 15:00:08 +05:30
Nick Cameron
4103e5b34b Add a profiles section to the manifest 2019-01-11 18:13:45 +13:00
John Kåre Alsaker
e69c2c75d6 Address comments 2019-01-11 04:58:46 +01:00
John Kåre Alsaker
468254b38f Update tests 2019-01-11 03:53:30 +01:00
John Kåre Alsaker
69d18a3986 Make more passes incremental 2019-01-11 03:53:29 +01:00
DebugSteven
ca47808479 add test for pub extern crate 2019-01-10 21:18:46 -05:00
DebugSteven
3f03297956 inline pub extern crate statements 2019-01-10 20:27:44 -05:00
Nick Cameron
27989ec30b
Remove submodule step from README
Since the bootstrap does it now
2019-01-11 14:27:12 +13:00
bors
729d3f07b4 Auto merge of #57471 - Aaronepower:master, r=Aaronepower
Updated RELEASES.md for 1.32.0

[Rendered](https://github.com/Aaronepower/rust/blob/master/RELEASES.md)

r? @Mark-Simulacrum
cc @rust-lang/release
2019-01-11 00:20:04 +00:00
Aaron Power
890a8a45c2
Update RELEASES.md 2019-01-10 23:28:18 +01:00
Mazdak Farrokhzad
e598ea83c8
Update src/libstd/path.rs
Co-Authored-By: steveklabnik <steve@steveklabnik.com>
2019-01-10 17:08:42 -05:00
Steve Klabnik
beb6495862 note that FromStr does not work for borrowed types
Fixes #47757
2019-01-10 17:08:27 -05:00
Aaron Power
359e6bf30b
Update RELEASES.md 2019-01-10 23:07:38 +01:00
bors
c2d381d39d Auto merge of #57484 - alexcrichton:fix-nightlies, r=Mark-Simulacru
Integrate miri into build-manifest

This fixes a mistake where miri was accidentally left out of the
build-manifest parsing, meaning that today's nightly generated a
manifest with invalid urls!

Fixes #57488.
2019-01-10 21:31:34 +00:00
Steve Klabnik
f282f6b1f7 make note of one more normalization that Paths do
Fixes #29008
2019-01-10 15:30:36 -05:00
Björn Steinbrink
5f402b8277 Add a fast path for identical regions in lub_concrete_regions
In functions with lots of region constraint, if the fixed point
iteration converges only slowly, a lot of the var/var constraints will
have equal regions most of the time. Yet, we still perform the LUB
calculation and try to intern the result. Especially the latter incurs
quite some overhead.

This reduces the take taken by the item bodies checking pass for the
unicode_normalization crate by about 75%.
2019-01-10 21:28:06 +01:00
Björn Steinbrink
07600c939b Drop "solved" constraints during region expansion
Once a region has been expanded to cover a fixed region, a corresponding
RegSubVar constraint won't have any effect on the expansion anymore, the
same is true for constraints where the variable on the RHS has already
reached static scope. By removing those constraints from the set that
we're iterating over, we remove a lot of needless overhead in case of
slow convergences (i.e. lots of iterations).

For the unicode_normalization crate, this about cuts the time required
for item_bodies checking in half.
2019-01-10 20:10:11 +01:00
Andy Russell
29a8386bb3
use structured suggestion when casting a reference 2019-01-10 13:43:47 -05:00
Alex Crichton
dd326f84fb Integrate miri into build-manifest
This fixes a mistake where miri was accidentally left out of the
build-manifest parsing, meaning that today's nightly generated a
manifest with invalid urls!
2019-01-10 07:53:19 -08:00
Alex Crichton
bbb5448de4 std: Render large exit codes as hex on Windows
On Windows process exit codes are never signals but rather always 32-bit
integers. Most faults like segfaults and such end up having large
integers used to represent them, like STATUS_ACCESS_VIOLATION being
0xC0000005. Currently, however, when an `ExitStatus` is printed this
ends up getting rendered as 3221225477 which is somewhat more difficult
to debug.

This commit adds a branch in `Display for ExitStatus` on Windows which
handles exit statuses where the high bit is set and prints those exit
statuses as hex instead of with decimals. This will hopefully preserve
the current display for small exit statuses (like `exit code: 22`), but
assist in quickly debugging segfaults/access violations/etc. I've
found at least that the hex codes are easier to search for than decimal.

I wasn't able to find any official documentation saying that all system
exit codes have the high bit set, but I figure it's a good enough
heuristic for now.
2019-01-10 07:52:33 -08:00
Hugues de Valon
65ac315efe Update Cargo.lock 2019-01-10 12:42:14 +00:00
Stein Somers
cef2e2f3d5 Merge remote-tracking branch 'upstream/master' 2019-01-10 12:30:09 +01:00
Aaron Power
521031f1b8
Apply suggestions from code review
Co-Authored-By: Aaronepower <Aaronepower@users.noreply.github.com>
2019-01-10 10:08:32 +01:00
Aaron Power
60677a86bf
Update RELEASES.md 2019-01-10 10:08:07 +01:00
Andy Russell
565c39de43
provide suggestion for invalid boolean cast
Also, don't suggest comparing to zero for non-numeric expressions.
2019-01-09 16:59:12 -05:00
Stein Somers
8823bf0b40 Fix poor worst case performance of is_disjoint 2019-01-09 22:19:54 +01:00
John Kåre Alsaker
60d1db6b54 Clean up and fix a bug in query plumbing 2019-01-09 21:11:23 +01:00
Steve Klabnik
4a454d629c actually take a slice in this example
Fixes #45678
2019-01-09 14:45:39 -05:00
Andy Russell
404ad50d14
clarify resolve typo suggestion
Include the kind of the binding that we're suggesting, and use a
structured suggestion.
2019-01-09 14:11:00 -05:00
Emilio Cobos Álvarez
c47ed149b2 save-analysis: Get path def from parent in case there's no def for the path itself.
This fixes #57462.

The relevant part from the hir type collector is:

```
DEBUG 2019-01-09T15:42:58Z: rustc::hir::map::collector: hir_map: NodeId(32) => Entry { parent: NodeId(33), dep_node: 4294967040, node: Expr(expr(32: <Foo>::new)) }
DEBUG 2019-01-09T15:42:58Z: rustc::hir::map::collector: hir_map: NodeId(48) => Entry { parent: NodeId(32), dep_node: 4294967040, node: Ty(type(Foo)) }
DEBUG 2019-01-09T15:42:58Z: rustc::hir::map::collector: hir_map: NodeId(30) => Entry { parent: NodeId(48), dep_node: 4294967040, node: PathSegment(PathSegment { ident: Foo#0, id: Some(NodeId(30)), def: Some(Err), args: None, infer_types: true }) }
DEBUG 2019-01-09T15:42:58Z: rustc::hir::map::collector: hir_map: NodeId(31) => Entry { parent: NodeId(32), dep_node: 4294967040, node: PathSegment(PathSegment { ident: new#0, id: Some(NodeId(31)), def: Some(Err), args: None, infer_types: true }) }
```

We have the right ID when looking for NodeId(31) and try with NodeId(32) (which
is the right thing to look for) from get_path_data, but not for the segments
that we write from `write_sub_paths_truncated`.

Basically `process_path` takes an id which is always the parent, and that we
fall back to in `get_path_data()`, so we get the right result for the last path
segment, but not for the other segments that get written to from
`write_sub_paths_truncated`.

I think we can stop passing the explicit id around to `get_path_data` now, will
consider sending that as a followup.
2019-01-09 19:59:54 +01:00
Oliver Scherer
dec79e4470 Not seeing the forest because there are too many trees in the way 2019-01-09 16:34:31 +01:00
Oliver Scherer
cd5a9e04da Explain the arguments of the mk_*_eval_cx functions 2019-01-09 16:27:33 +01:00
Aaron Power
f82ecff4d1 Updated RELEASES.md for 1.32.0 2019-01-09 16:20:51 +01:00