bors
00aae71f50
Auto merge of #58302 - SimonSapin:tryfrom, r=alexcrichton
...
Stabilize TryFrom and TryInto with a convert::Infallible empty enum
This is the plan proposed in https://github.com/rust-lang/rust/issues/33417#issuecomment-423073898
2019-02-25 20:24:10 +00:00
Vadim Petrochenkov
eccc19996b
Stabilize unrestricted_attribute_tokens
2019-02-25 23:21:54 +03:00
Vadim Petrochenkov
8e1b5d897a
Restrict value in key-value attributes to literals
2019-02-25 22:40:38 +03:00
Jake Goulding
f1b88abffb
Fix copy-pasted typo for read_string return value
2019-02-25 12:14:02 -05:00
Tim Vermeulen
1fd2f1687c
Have all methods of Filter and FilterMap use internal iteration
2019-02-25 16:44:04 +01:00
bors
b57fe74a27
Auto merge of #58649 - pnkfelix:issue-57464-avoid-ice-when-region-sneaks-into-impl-trait, r=pnkfelix
...
avoid ICE when region sneaks into impl trait
Addresses non-NLL instances of #57464
2019-02-25 14:48:29 +00:00
Kornel
19c302c89a
Update book submodule
2019-02-25 13:30:51 +00:00
bors
da573206f8
Auto merge of #58728 - Centril:rollup, r=Centril
...
Rollup of 10 pull requests
Successful merges:
- #55632 (Deny the `overflowing_literals` lint for all editions)
- #58687 (Reduce Miri Code Repetition like `(n << amt) >> amt`)
- #58690 (Reduce a Code Repetition like `(n << amt) >> amt`)
- #58718 (Apply docs convention: Replace # Unsafety with # Safety in docs)
- #58719 (librustc_codegen_llvm: #![deny(elided_lifetimes_in_paths)])
- #58720 (librustc_codegen_ssa: #![deny(elided_lifetimes_in_paths)])
- #58722 (librustc_typeck: deny(elided_lifetimes_in_paths))
- #58723 (librustc: deny(elided_lifetimes_in_paths))
- #58725 (Test that binop subtyping in rustc_typeck fixes #27949 )
- #58727 (bootstrap: deny(rust_2018_idioms))
Failed merges:
r? @ghost
2019-02-25 11:57:00 +00:00
Mazdak Farrokhzad
d6de1e9714
Rollup merge of #58727 - taiki-e:deny-rust_2018_idioms-bootstrap, r=Centril
...
bootstrap: deny(rust_2018_idioms)
As part of the Rust 2018 transition, apply `#![deny(rust_2018_idioms)]` to `bootstrap`.
r? @Centril
2019-02-25 11:42:31 +01:00
Mazdak Farrokhzad
e53fbf8bf2
Rollup merge of #58725 - jamwt:fix-27949, r=Centril
...
Test that binop subtyping in rustc_typeck fixes #27949
2019-02-25 11:42:30 +01:00
Mazdak Farrokhzad
3f6d65ac7a
Rollup merge of #58723 - Centril:deny-elided_lifetimes_in_paths-librustc, r=oli-obk
...
librustc: deny(elided_lifetimes_in_paths)
As part of the Rust 2018 transition, remove `#![allow(elided_lifetimes_in_paths)]` from `librustc`.
r? @oli-obk
2019-02-25 11:42:28 +01:00
Mazdak Farrokhzad
d4a62a7fde
Rollup merge of #58722 - Centril:deny-elided_lifetimes_in_paths-librustc_typeck, r=oli-obk
...
librustc_typeck: deny(elided_lifetimes_in_paths)
As part of the Rust 2018 transition, remove `#![allow(elided_lifetimes_in_paths)]` from `librustc_typeck`.
r? @oli-obk
2019-02-25 11:42:27 +01:00
Mazdak Farrokhzad
2a69aec947
Rollup merge of #58720 - Centril:deny-elided_lifetimes_in_paths-librustc_codegen_ssa, r=oli-obk
...
librustc_codegen_ssa: #![deny(elided_lifetimes_in_paths)]
As part of the Rust 2018 transition, remove `#![allow(elided_lifetimes_in_paths)]` from `librustc_codegen_ssa`.
r? @oli-obk
2019-02-25 11:42:25 +01:00
Mazdak Farrokhzad
77e2e84191
Rollup merge of #58719 - Centril:deny-elided_lifetimes_in_paths, r=oli-obk
...
librustc_codegen_llvm: #![deny(elided_lifetimes_in_paths)]
As part of the Rust 2018 transition, remove `#![allow(elided_lifetimes_in_paths)]` from `librustc_codegen_llvm`.
r? @oli-obk
2019-02-25 11:42:24 +01:00
Mazdak Farrokhzad
2019d965c3
Rollup merge of #58718 - Centril:doc-convention-safety, r=RalfJung
...
Apply docs convention: Replace # Unsafety with # Safety in docs
As used in RFC 1574: https://github.com/rust-lang/rfcs/blob/master/text/1574-more-api-documentation-conventions.md#using-markdown
"Safety" is used many times more than "Unsafety" is within existing docs.
@bors rollup
r? @RalfJung
2019-02-25 11:42:23 +01:00
Mazdak Farrokhzad
53f15f24a8
Rollup merge of #58690 - kenta7777:reduce-code-repetition-miri-related, r=oli-obk
...
Reduce a Code Repetition like `(n << amt) >> amt`
Fixes a part of [#49937 ](https://github.com/rust-lang/rust/issues/49937 ).
2019-02-25 11:42:22 +01:00
Mazdak Farrokhzad
5f910fa99c
Rollup merge of #58687 - kenta7777:reduce-miri-code-repetition, r=oli-obk
...
Reduce Miri Code Repetition like `(n << amt) >> amt`
This Pull Request fixes a part of [#49937 ](https://github.com/rust-lang/rust/issues/49937 ).
2019-02-25 11:42:20 +01:00
Mazdak Farrokhzad
554aed6c7d
Rollup merge of #55632 - ollie27:deny_overflowing_literals, r=Centril
...
Deny the `overflowing_literals` lint for all editions
The `overflowing_literals` was made deny by default for the 2018 edition by #54507 , however I'm not aware of any reason it can't be made deny by default for the 2015 edition as well.
2019-02-25 11:42:18 +01:00
Taiki Endo
6343d6bc0d
bootstrap: deny(rust_2018_idioms)
2019-02-25 19:30:32 +09:00
ljedrz
77a30ec593
update clippy
2019-02-25 11:25:23 +01:00
Jamie Turner
7029094735
Test that binop subtyping in rustc_typeck fixes #27949
2019-02-25 00:41:58 -08:00
Mazdak Farrokhzad
235d3ed083
librustc: deny(elided_lifetimes_in_paths)
2019-02-25 09:19:20 +01:00
Mazdak Farrokhzad
e8ce56f126
librustc_typeck: deny(elided_lifetimes_in_paths)
2019-02-25 09:13:22 +01:00
Mazdak Farrokhzad
1d34f2c228
librustc_codegen_ssa: deny(elided_lifetimes_in_paths)
2019-02-25 08:52:46 +01:00
Mazdak Farrokhzad
9661a81968
librustc_codegen_llvm: deny(elided_lifetimes_in_paths)
2019-02-25 08:40:18 +01:00
Mazdak Farrokhzad
4ca865e929
heading # Unsafety => # Safety in stdlib docs.
2019-02-25 08:01:35 +01:00
bors
31eb0e2d3c
Auto merge of #57609 - matthewjasper:more-restrictive-match, r=pnkfelix
...
Use normal mutable borrows in matches
`ref mut` borrows are currently two-phase with NLL enabled. This changes them to be proper mutable borrows. To accommodate this, first the position of fake borrows is changed:
```text
[ 1. Pre-match ]
|
[ (old create fake borrows) ]
[ 2. Discriminant testing -- check discriminants ] <-+
| |
| (once a specific arm is chosen) |
| |
[ (old read fake borrows) ] |
[ 3. Create "guard bindings" for arm ] |
[ (create fake borrows) ] |
| |
[ 4. Execute guard code ] |
[ (read fake borrows) ] --(guard is false)-----------+
|
| (guard results in true)
|
[ 5. Create real bindings and execute arm ]
|
[ Exit match ]
```
The following additional changes are made to accommodate `ref mut` bindings:
* We no longer create fake `Shared` borrows. These borrows are no longer needed for soundness, just to avoid some arguably strange cases.
* `Shallow` borrows no longer conflict with existing borrows, avoiding conflicting access between the guard borrow access and the `ref mut` borrow.
There is some further clean up done in this PR:
* Avoid the "later used here" note for Shallow borrows (since it's not relevant with the message provided)
* Make any use of a two-phase borrow activate it.
* Simplify the cleanup_post_borrowck passes into a single pass.
cc #56254
r? @nikomatsakis
2019-02-25 06:27:35 +00:00
bors
c1911babed
Auto merge of #58714 - Centril:rollup, r=Centril
...
Rollup of 5 pull requests
Successful merges:
- #58370 (Relax some Hash bounds on HashMap<K, V, S> and HashSet<T, S>)
- #58421 (Relax some Ord bounds on BinaryHeap<T>)
- #58686 (replace deprecated rustfmt_skip with rustfmt::skip)
- #58697 (Use ? in some macros)
- #58704 (Remove some unnecessary 'extern crate')
Failed merges:
r? @ghost
2019-02-25 03:48:12 +00:00
Steven Fackler
4785c748f2
Fix redox
2019-02-24 18:48:44 -08:00
Mazdak Farrokhzad
6806d0cf69
Rollup merge of #58704 - taiki-e:extern-crate, r=Centril
...
Remove some unnecessary 'extern crate'
cc #58099
r? @Centril
2019-02-25 03:18:06 +01:00
Mazdak Farrokhzad
b5cf4ea07f
Rollup merge of #58697 - taiki-e:question-in-macros, r=Centril
...
Use ? in some macros
2019-02-25 03:18:04 +01:00
Mazdak Farrokhzad
ed73ec0e4c
Rollup merge of #58686 - hellow554:rustfmt_depr, r=cramertj
...
replace deprecated rustfmt_skip with rustfmt::skip
2019-02-25 03:18:03 +01:00
Mazdak Farrokhzad
4f8ae0abdb
Rollup merge of #58421 - nox:relax-bounds-binary-heap, r=dtolnay
...
Relax some Ord bounds on BinaryHeap<T>
Notably, iterators don't require any trait bounds to be iterated.
2019-02-25 03:18:01 +01:00
Mazdak Farrokhzad
03acebe2ca
Rollup merge of #58370 - nox:relax-bounds, r=dtolnay
...
Relax some Hash bounds on HashMap<K, V, S> and HashSet<T, S>
Notably, hash iterators don't require any trait bounds to be iterated.
2019-02-25 03:17:58 +01:00
Steven Fackler
c5b87a29dd
Fix sgx
2019-02-24 13:45:41 -08:00
bors
eb1df8c8a7
Auto merge of #58706 - matthewjasper:update-miri, r=RalfJung
...
update miri
cc #57609
r? @RalfJung
2019-02-24 21:40:10 +00:00
memoryruins
43e7434120
Simplify exclude_should_panic flag.
2019-02-24 11:58:08 -05:00
Matthew Jasper
09db1789d4
update miri
2019-02-24 16:45:14 +00:00
Nathan Corbyn
8300f51936
Deny async fn
in 2015 edition
...
Fix style issues and update diagnostic messages
Update src/librustc_passes/diagnostics.rs
Co-Authored-By: doctorn <me@nathancorbyn.com>
Deny nested `async fn` in Rust 2015 edition
Deny nested `async fn` in Rust 2015 edition
Deny nested `async fn` in Rust 2015 edition
2019-02-24 16:33:12 +00:00
ljedrz
d7ced1dd5a
hir: remove NodeId from Expr
2019-02-24 17:09:37 +01:00
ljedrz
021a140dcd
hir: remove NodeId from Block
2019-02-24 17:09:26 +01:00
Steven Fackler
4c13791537
Fix cloudabi
2019-02-24 07:42:59 -08:00
Taiki Endo
9a0b4b6705
Remove some unnecessary 'extern crate'
2019-02-25 00:40:34 +09:00
bors
097c04cf43
Auto merge of #58315 - gnzlbg:returns_twice, r=alexcrichton
...
Implement unstable ffi_return_twice attribute
This PR implements [RFC2633](https://github.com/rust-lang/rfcs/pull/2633 )
r? @eddyb
2019-02-24 14:15:55 +00:00
Matthew Jasper
19a54e8093
Type check pointer comparisons
2019-02-24 13:02:37 +00:00
Taiki Endo
871910a2c6
Use ? in some macros
2019-02-24 21:59:44 +09:00
gnzlbg
2cf6e914aa
Update stdsimd
2019-02-24 11:31:49 +01:00
bors
e17c48e2f2
Auto merge of #58691 - Centril:rollup, r=Centril
...
Rollup of 6 pull requests
Successful merges:
- #57364 (Improve parsing diagnostic for negative supertrait bounds)
- #58183 (Clarify guarantees for `Box` allocation)
- #58442 (Simplify the unix `Weak` functionality)
- #58454 (Refactor Windows stdio and remove stdin double buffering )
- #58511 (Const to op simplification)
- #58642 (rustdoc: support methods on primitives in intra-doc links)
Failed merges:
r? @ghost
2019-02-24 06:59:13 +00:00
ljedrz
63b4dd91be
hir: remove NodeId from MacroDef
2019-02-24 07:50:46 +01:00
ljedrz
c886d47b82
doc: partially HirIdify visit_ast
2019-02-24 07:50:46 +01:00