Commit Graph

79559 Commits

Author SHA1 Message Date
Zack M. Davis
0b39a82cf4 in which the trivial-casts word to the wise is tucked into a help note
The top level message shouldn't be too long; the
replaced-by-coercion/temporary-variable advice can live in a note. Also,
don't mention type ascription when it's not actually available as a real
thing. (The current state of discussion on the type ascription tracking
issue #23416 makes one rather suspect it will never be a stable thing in
its current form, but that's not for us to adjudicate in this commit.)

While we're here, yank out the differentiating parts of the
numeric/other conditional and only have one codepath emitting the
diagnostic.
2018-06-23 22:57:37 -07:00
Zack M. Davis
a417518173 structured suggestion and rewording for ... expression syntax error
Now that `..=` inclusive ranges are stabilized, people probably
shouldn't be using `...` even in patterns, even if it's still legal
there (see #51043). To avoid drawing attention to `...` being a real
thing, let's reword this message to just say "unexpected token" rather
"cannot be used in expressions".
2018-06-23 22:57:37 -07:00
Zack M. Davis
4650361fb6 use structured suggestion for pattern-named-the-same-as-variant warning 2018-06-23 22:57:37 -07:00
bors
3874676dc6 Auto merge of #51726 - petrochenkov:hygclean, r=oli-obk
expansion/hygiene: Some renaming, refactoring and comments

Pure refactoring, no functional changes.
Commits are isolated and self-descriptive.
2018-06-24 01:06:21 +00:00
bors
8fb1180d27 Auto merge of #51739 - Amanieu:update_rustfmt, r=Mark-Simulacrum
Update rustfmt submodule

The version of rustfmt currently shipped with nightly breaks code that uses `break 'label`. This PR updates the submodule to include the fix (https://github.com/rust-lang-nursery/rustfmt/pull/2774).
2018-06-23 22:27:30 +00:00
bors
60efbdead6 Auto merge of #51653 - mglagla:option-unreachable, r=dtolnay
Option::get_or_insert(_with): Replace unreachable! with unreachable_unchecked

Optimize codegen for both functions as the None branch is trivially not reachable.
2018-06-23 20:10:35 +00:00
Vadim Petrochenkov
20ce91076a hygiene: Merge NameAndSpan into ExpnInfo 2018-06-23 21:53:24 +03:00
Amanieu d'Antras
c44be4c231 Update Cargo.lock 2018-06-23 19:15:34 +01:00
Amanieu d'Antras
794acd7047 Update rustfmt submodule 2018-06-23 18:54:42 +01:00
Vadim Petrochenkov
117cb040f1 hygiene: Make sure transparency of Mark::root() is an implementation detail and cannot be inspected outside of hygiene.rs 2018-06-23 20:42:25 +03:00
Vadim Petrochenkov
c00f5af4d6 hygiene: Do not reset expansion info for quote! 2018-06-23 20:40:25 +03:00
Vadim Petrochenkov
fffe9fbb51 hygiene: More descriptive names for things involved in late hygienic name resolution 2018-06-23 20:09:21 +03:00
Vadim Petrochenkov
296955a6e1 expansion: Add some comments 2018-06-23 20:09:21 +03:00
Vadim Petrochenkov
399da7bc35 expansion: Improve searchability for AstFragments methods 2018-06-23 20:09:21 +03:00
Vadim Petrochenkov
a12726460e expansion: Rename Expansion to AstFragment 2018-06-23 20:09:21 +03:00
Vadim Petrochenkov
869fa27d13 hygiene: Rename MarkKind to Transparency
Move `is_builtin` for `Mark` to a separate flag
2018-06-23 20:09:21 +03:00
Vadim Petrochenkov
b15785b671 hygiene: Make sure expansion info is set at most once for a given Mark 2018-06-23 20:09:21 +03:00
Vadim Petrochenkov
17f20bec22 expansion: Remove unnecessary override from impl Folder for Marker 2018-06-23 20:09:21 +03:00
Vadim Petrochenkov
9b2a89b7f1 hygiene: Give Debug impls to hygiene structures 2018-06-23 20:09:21 +03:00
bors
4fe88c05cd Auto merge of #51727 - varkor:expragain-to-exprcontinue, r=petrochenkov
Rename hir::ExprAgain to hir::ExprContinue

The current name is confusing and historical.

I also used this PR to clean up the annoying indentation in `check/mod.rs`. If that's viewed as too tangential a change, I'll split it up, but it seemed reasonable to slip it in to reduce @bors's work. It's easy to compare for the two commits individually.

r? @petrochenkov
2018-06-23 14:33:10 +00:00
bors
a51e807136 Auto merge of #51723 - estebank:abolish-ice, r=oli-obk
Accept `TyError` in `analyze_closure` to avoid ICE

Fix #51714.
2018-06-23 11:00:43 +00:00
varkor
621047b2b0 Reindent check/mod.rs 2018-06-23 11:00:02 +01:00
varkor
7ba2952af6 Rename ExprAgain to ExprContinue 2018-06-23 10:51:01 +01:00
bors
56e8f29dbe Auto merge of #51580 - cramertj:async-await, r=eddyb
async/await

This PR implements `async`/`await` syntax for `async fn` in Rust 2015 and `async` closures and `async` blocks in Rust 2018 (tracking issue: https://github.com/rust-lang/rust/issues/50547). Limitations: non-`move` async closures with arguments are currently not supported, nor are `async fn` with multiple different input lifetimes. These limitations are not fundamental and will be removed in the future, however I'd like to go ahead and get this PR merged so we can start experimenting with this in combination with futures 0.3.

Based on https://github.com/rust-lang/rust/pull/51414.
cc @petrochenkov for parsing changes.
r? @eddyb
2018-06-23 09:02:45 +00:00
bors
2ea922a96d Auto merge of #51696 - estebank:fuzzy-ice-ice, r=oli-obk
Accept `TyError` in patterns to avoid ICE on bad input

Fix #50585.
2018-06-23 06:56:12 +00:00
bors
2db44b62e7 Auto merge of #51724 - tikue:master, r=Mark-Simulacrum
Re-pub some items whose visibilities were recently reduced.

Reasons described in the most recent comments of https://github.com/rust-lang/rust/pull/51265.

tarpc can't move off of plugins until proc macros can be reexported from other crates.

Fixes https://github.com/google/tarpc/issues/191
2018-06-23 04:19:51 +00:00
Taylor Cramer
30c17ccbff Update libsyntax test 2018-06-22 20:40:52 -07:00
bors
6dc81dec44 Auto merge of #51712 - SLaabsDev:master, r=Mark-Simulacrum
Add support for current directory prefixes (#51071)

Fixes #51071
2018-06-23 02:21:04 +00:00
Taylor Cramer
a62c4aa03a Fix rustdoc and remove default impl for FnHeader 2018-06-22 17:27:58 -07:00
bors
f9686334ac Auto merge of #51697 - estebank:once-used-lifetime-label, r=oli-obk
Add label to lint for lifetimes used once

```
error: lifetime parameter `'a` only used once
  --> $DIR/fn-types.rs:19:10
   |
LL |   a: for<'a> fn(&'a u32), //~ ERROR `'a` only used once
   |          ^^      -- ...is used only here
   |          |
   |          this lifetime...
```
2018-06-23 00:06:54 +00:00
Tim Kuehn
0c33e0ae13 Re-reexport some items that were recently made crate-private. 2018-06-22 16:23:25 -07:00
Taylor Cramer
9a310abf79 Remove impl trait names and move bits of await into a function 2018-06-22 16:08:07 -07:00
Esteban Küber
8ddf9a3360 Accept TyError in analyze_closure to avoid ICE 2018-06-22 15:35:52 -07:00
bors
b0e41f1038 Auto merge of #51482 - GuillaumeGomez:table-display, r=QuietMisdreavus
Greatly improve tables display in docs

Fixes #51454.

r? @QuietMisdreavus

Before:

<img width="1440" alt="screen shot 2018-06-10 at 22 43 52" src="https://user-images.githubusercontent.com/3050060/41206138-cc61b2b4-6cff-11e8-9b6f-0b1e435d4b1b.png">

After:

<img width="1440" alt="screen shot 2018-06-10 at 23 33 16" src="https://user-images.githubusercontent.com/3050060/41207049-d455c03c-6d0e-11e8-968f-d4fccaeb4265.png">
2018-06-22 22:02:10 +00:00
bors
cbc4c8380f Auto merge of #51681 - varkor:rustc_deprecated-future-deprecation, r=petrochenkov
Support future deprecation for rustc_deprecated

Follow-up to #49179 to allow `since` parameters to be set to future versions of Rust and correspondingly to not be treated as deprecated until that version. This is required for #30459 to be completed (though we'll need to wait until this hits beta).
2018-06-22 19:55:30 +00:00
Taylor Cramer
0b2d2d1dc5 Remove unused map_slice 2018-06-22 12:12:53 -07:00
Taylor Cramer
ee51a3c10a Review nits and updates
Move future_from_generator out of raw
Update await to use $crate
Renumber errors
2018-06-22 11:36:01 -07:00
bors
8f024479d4 Auto merge of #51670 - estebank:issue-51634, r=oli-obk
Don't suggest incorrect syntax

Fix #51634.
2018-06-22 17:51:02 +00:00
bors
4dc2d745b9 Auto merge of #51704 - kennytm:rollup, r=kennytm
Rollup of 6 pull requests

Successful merges:

 - #51158 (Mention spec and indented blocks in doctest docs)
 - #51629 (Do not consume semicolon twice while parsing local statement)
 - #51637 (Update zx_cprng_draw_new on Fuchsia)
 - #51664 (make more libsyntax methods public)
 - #51666 (Disable probestack when GCOV profiling is being used)
 - #51703 (Recognize the extra "LLVM tools versions" argument to build-manifest.)

Failed merges:

r? @ghost
2018-06-22 15:26:52 +00:00
Steven Laabs
475405b6af Handle current directory prefix for parsing command arguments in bootstrap test command. 2018-06-22 09:09:31 -05:00
Steven Laabs
be3cd464fd Added stripping current directory prefixes when comparing suite path names 2018-06-22 09:09:31 -05:00
bors
01dbfdaf4f Auto merge of #51184 - lambtowolf:master, r=nikomatsakis
Issue #50974 : Suboptimal error in case of duplicate `,` in struct constructor

Fixes #50974
2018-06-22 11:10:20 +00:00
Niko Matsakis
a99767f64f
add an explanatory comment for recovery behavior 2018-06-22 11:38:38 +02:00
Lamb
815765dade
Issue #50974: Fix compilation error and test 2018-06-22 11:38:38 +02:00
Maerten
fadb86f25d
Fix when the help message is displayed
Only display the "remove this comma" suggestion when followed by an identifier
2018-06-22 11:38:38 +02:00
Lamb
6c962e3ec4
Issue #50974: Adding issue number in the test 2018-06-22 11:38:38 +02:00
Lamb
5c022af4a4
Issue #50974: Adding tests 2018-06-22 11:38:38 +02:00
Lamb
783815d219
Issue #50974: Change text of suggestion to be more direct 2018-06-22 11:38:38 +02:00
Lamb
7969b78222
Issue #50974: Suboptimal error in case of duplicate , in struct constructor 2018-06-22 11:38:38 +02:00
kennytm
d41cb9992f
Rollup merge of #51703 - kennytm:fix-51699, r=nrc
Recognize the extra "LLVM tools versions" argument to build-manifest.

Fix #51699.
2018-06-22 16:50:45 +08:00