Commit Graph

93305 Commits

Author SHA1 Message Date
Mazdak Farrokhzad
17cb922b8b
Rollup merge of #60354 - Centril:cleanup-declare-features-accepted, r=oli-obk
Cleanup declare_features! for 'accepted' with a uniform style + sort them

r? @oli-obk

cc https://github.com/rust-lang/rust/pull/60362
cc https://github.com/rust-lang/rust/issues/60361
2019-04-30 16:10:26 +02:00
Mazdak Farrokhzad
6547de2bdd
Rollup merge of #60344 - Aaron1011:fix/tower-hyper, r=eddyb
Don't try to render auto-trait bounds with any inference variables

Previously, we checked if the target of a projection type was itself an
inference variable. However, for Rustdoc rendering purposes, there's no
distinction between an inference variable ('_') and a type containing
one (e.g. (MyStruct<u8, _>)) - we don't want to render either of them.

Fixes #60269

Due to the complexity of the original bug, which spans three different
crates (hyper, tower-hyper, and tower), I have been unable to create a
minimized reproduction for the issue.
2019-04-30 16:10:25 +02:00
Tim Diekmann
1b679e74f0
Only allow ZSTs with 1 byte alignment 2019-04-30 14:38:17 +02:00
Yuki OKUSHI
db7f265660 Fix spans 2019-04-30 21:28:34 +09:00
Yuki OKUSHI
f56d285443 Use multispan 2019-04-30 21:28:13 +09:00
bors
862a8784ab Auto merge of #60159 - estebank:type-mismatch-cast, r=oli-obk
Suggest `try_into` when possible

CC #47168
2019-04-30 12:28:11 +00:00
Yuki OKUSHI
bb3549fce2 Fix tests 2019-04-30 20:43:10 +09:00
Yuki OKUSHI
da46eeac88 Add error for existential types 2019-04-30 20:43:03 +09:00
gnzlbg
076241e774 Add missing f16c_target_feature check to typeck collect 2019-04-30 12:32:34 +02:00
Eduard-Mihai Burtescu
be9f43e0d4 rustdoc: refactor(?) synthetic impl building. 2019-04-30 13:10:48 +03:00
Eduard-Mihai Burtescu
c835607907 rustdoc: remove def_ctor hack. 2019-04-30 12:55:38 +03:00
YOSHIOKA Takuma
a0e112ba52
Implement BorrowMut<str> for String
Closes rust-lang/rfcs#1282.
2019-04-30 17:50:38 +09:00
Yuki OKUSHI
bf4d0adf23 Rename to RUSTC_LOG 2019-04-30 17:27:53 +09:00
Michael Woerister
7acead5e0a Add local LLD to the PATH for run-make-fulldeps tests. 2019-04-30 10:01:54 +02:00
Yuki OKUSHI
4945594c24 Remove functions to simplify 2019-04-30 17:00:36 +09:00
Manish Goregaokar
382e350f50 Update clippy 2019-04-29 22:37:00 -07:00
Nicholas Nethercote
faf5eac854 Move metadata encoding earlier.
This commit separates metadata encoding (`tcx.encode_metadata`) from the
creation of the metadata module (which is now handled by
`write_compressed_metadata`, formerly `write_metadata`).

The metadata encoding now occurs slightly earlier in the pipeline, at
the very start of code generation within `start_codegen`.

Metadata *writing* still occurs near the end of compilation; that will
be moved forward in subsequent commits.
2019-04-30 14:55:10 +10:00
Esteban Küber
6068478d56 Add if let test 2019-04-29 20:58:29 -07:00
Esteban Küber
14ca950665 Fix style 2019-04-29 20:50:04 -07:00
Esteban Küber
693eea5784 review comments 2019-04-29 19:56:50 -07:00
bors
f843ad60ef Auto merge of #60389 - Centril:rollup-nefreyr, r=Centril
Rollup of 4 pull requests

Successful merges:

 - #59869 (SGX target: implemented vectored I/O)
 - #60238 (Update rustfmt to 1.2.2)
 - #60276 (Cleanup the MIR visitor)
 - #60380 (Fix line number display in source view)

Failed merges:

r? @ghost
2019-04-30 02:27:07 +00:00
Esteban Küber
ff68673387 add tests 2019-04-29 19:16:35 -07:00
Esteban Küber
742b48dc39 Be more specific in the suggestion filtering 2019-04-29 19:02:54 -07:00
Josh Stone
9b3583375d Document the order of {Vec,VecDeque,String}::retain
It's natural for `retain` to work in order from beginning to end, but
this wasn't actually documented to be the case. If we actually promise
this, then the caller can do useful things like track the index of each
element being tested, as [discussed in the forum][1]. This is now
documented for `Vec`, `VecDeque`, and `String`.

[1]: https://users.rust-lang.org/t/vec-retain-by-index/27697

`HashMap` and `HashSet` also have `retain`, and the `hashbrown`
implementation does happen to use a plain `iter()` order too, but it's
not certain that this should always be the case for these types.
2019-04-29 18:32:05 -07:00
Mazdak Farrokhzad
116dcff2c3
Rollup merge of #60380 - GuillaumeGomez:fix-line-number-display, r=Manishearth
Fix line number display in source view

Fixes #60310.

r? rust-lang/rustdoc

cc @Manishearth

screenshot of the fix:

<img width="798" alt="Screenshot 2019-04-29 at 23 12 20" src="https://user-images.githubusercontent.com/3050060/56927541-b7286680-6ad4-11e9-9215-42dc4ef42691.png">
2019-04-30 03:28:39 +02:00
Mazdak Farrokhzad
ada68c9d19
Rollup merge of #60276 - matthewjasper:cleanup-mir-visitor, r=estebank
Cleanup the MIR visitor

* Remove useless `BasicBlock` parameters on methods with `Location`s.
* Prefer `visit_terminator_kind` to `visit_terminator`.
* Remove `Region` from PlaceContexts. `visit_rvalue` should be used when the region is important.
* Remove unused visitor methods.
2019-04-30 03:28:38 +02:00
Mazdak Farrokhzad
1ec56d8550
Rollup merge of #60238 - topecongiro:rustfmt-1.2.2, r=alexcrichton
Update rustfmt to 1.2.2
2019-04-30 03:28:37 +02:00
Mazdak Farrokhzad
c54b77ca2d
Rollup merge of #59869 - jethrogb:jb/sgx-iovec, r=sfackler
SGX target: implemented vectored I/O

r? @sfackler

Includes #59857
2019-04-30 03:28:35 +02:00
Mazdak Farrokhzad
3c00dfdf81 Cleanup 'active' declare_features! with uniform style + sorting. 2019-04-30 03:23:23 +02:00
Esteban Küber
0e7e9382fa Do not suggest incorrect syntax on pattern borrow error 2019-04-29 18:12:57 -07:00
Esteban Küber
31eb5cc730 Account for const fns to avoid incorrect suggestions 2019-04-29 17:14:31 -07:00
Jethro Beekman
09f4008da5 SGX target: implemented vectored I/O 2019-04-29 16:48:22 -07:00
Jethro Beekman
7e624ce2c2 SGX target: don't unwind on usercall index out of bounds 2019-04-29 16:46:29 -07:00
bors
03122e1bac Auto merge of #60006 - nnethercote:json-for-pipelining, r=alexcrichton
In JSON output, emit a directive after metadata is generated.

To implement pipelining, Cargo needs to know when metadata generation is
finished. This is done via a new JSON "directive".

Unfortunately, metadata file writing currently occurs very late during
compilation, so pipelining won't produce a speed-up. Moving metadata
file writing earlier will be a follow-up.

r? @alexcrichton
2019-04-29 23:35:01 +00:00
Nicholas Nethercote
7bcb0cffb6 In JSON output, emit a directive after metadata is generated.
To implement pipelining, Cargo needs to know when metadata generation is
finished. This commit adds code to do that. Unfortunately, metadata file
writing currently occurs very late during compilation, so pipelining
won't produce a speed-up. Moving metadata file writing earlier will be a
follow-up.

The change involves splitting the existing `Emitter::emit` method in
two: `Emitter::emit_diagnostic` and `Emitter::emit_directive`.

The JSON directives look like this:
```
{"directive":"metadata file written: liba.rmeta"}
```
The functionality is behind the `-Z emit-directives` option, and also
requires `--error-format=json`.
2019-04-30 08:51:57 +10:00
Esteban Küber
4e84b619f4 Add test 2019-04-29 14:38:26 -07:00
Esteban Küber
4b1297baf7 Suggest try_into when possible 2019-04-29 14:38:26 -07:00
Esteban Küber
bff0be3784 Add test case for #47287 2019-04-29 14:35:09 -07:00
Manish Goregaokar
7aab005341 Revert "Update Source Code Pro fonts to version 2.030"
This reverts commit 6bafc58ced.
2019-04-29 14:15:28 -07:00
Guillaume Gomez
10b9370286 Fix line number display in source view 2019-04-29 23:13:30 +02:00
Esteban Küber
f007e6f442 Identify when a stmt could have been parsed as an expr
There are some expressions that can be parsed as a statement without
a trailing semicolon depending on the context, which can lead to
confusing errors due to the same looking code being accepted in some
places and not others. Identify these cases and suggest enclosing in
parenthesis making the parse non-ambiguous without changing the
accepted grammar.
2019-04-29 14:07:02 -07:00
Nathan Froyd
a0d63354f2 intelligently handle older version of git in bootstrap
If we fail to run with `--progress`, try running without instead.

Fixes #57080.
2019-04-29 17:01:42 -04:00
bors
00859e3e65 Auto merge of #60377 - Centril:rollup-42fxe9u, r=Centril
Rollup of 9 pull requests

Successful merges:

 - #59946 (Fix equivalent string in escape_default docs)
 - #60256 (Option::flatten)
 - #60305 (hir: remove LoweredNodeId)
 - #60334 (Stabilized vectored IO)
 - #60353 (Add test not to forget resolved ICE)
 - #60356 (Stabilize str::as_mut_ptr)
 - #60358 (Clarify the short explanation of E0207)
 - #60359 (resolve: Consider erroneous imports used to avoid duplicate diagnostics)
 - #60360 (Add test case for labeled break in const assignment)

Failed merges:

r? @ghost
2019-04-29 20:40:49 +00:00
Mazdak Farrokhzad
04942105ef
Rollup merge of #60360 - rasendubi:const-labeled-break, r=Centril
Add test case for labeled break in const assignment

Fixes #51350.
2019-04-29 22:22:46 +02:00
Mazdak Farrokhzad
4369f03620
Rollup merge of #60359 - petrochenkov:imperruse, r=estebank
resolve: Consider erroneous imports used to avoid duplicate diagnostics

Supersedes https://github.com/rust-lang/rust/pull/60295
Fixes https://github.com/rust-lang/rust/issues/48244
r? @estebank
2019-04-29 22:22:45 +02:00
Mazdak Farrokhzad
49946dd1b6
Rollup merge of #60358 - nickolay:patch-1, r=GuillaumeGomez
Clarify the short explanation of E0207

After being greatly improved in #33692, https://doc.rust-lang.org/error-index.html#E0207 uses terminology from the related RFC, which is different from the [reference](https://doc.rust-lang.org/reference/items/implementations.html), e.g. "self type" instead of "implementing type" and "trait reference" instead of "implemented trait".

It probably makes no difference to an experienced reader, but for a newbie like me it added to the confusion as you can't look up the definition of the terms being used and can't be sure you've guessed correctly...

I would also move the link to RFC to the top, as it seems to be the only doc that attempts to explain what the third criteria entails), but it seems to go against the accepted style.
2019-04-29 22:22:44 +02:00
Mazdak Farrokhzad
c9b70144a3
Rollup merge of #60356 - JohnTitor:stabilize-as-mut-ptr, r=Centril
Stabilize str::as_mut_ptr

Closes #58215
2019-04-29 22:22:42 +02:00
Mazdak Farrokhzad
3091961621
Rollup merge of #60353 - JohnTitor:add-test, r=Centril
Add test not to forget resolved ICE

closes #55499

I added the example as a test.

r? @pnkfelix
2019-04-29 22:22:41 +02:00
Mazdak Farrokhzad
ead8d81301
Rollup merge of #60334 - sfackler:stable-iovec, r=alexcrichton
Stabilized vectored IO

This renames `std::io::IoVec` to `std::io::IoSlice` and
`std::io::IoVecMut` to `std::io::IoSliceMut`, and stabilizes
`std::io::IoSlice`, `std::io::IoSliceMut`,
`std::io::Read::read_vectored`, and `std::io::Write::write_vectored`.

Closes #58452

r? @alexcrichton
2019-04-29 22:22:40 +02:00
Mazdak Farrokhzad
67b7f5779d
Rollup merge of #60305 - ljedrz:remove_LoweredNodeId, r=Zoxc
hir: remove LoweredNodeId

It seems that we no longer need it, because nowadays we just want the `HirId` most of the time.
2019-04-29 22:22:38 +02:00