Commit Graph

104936 Commits

Author SHA1 Message Date
Mazdak Farrokhzad
2091062bf6 parser: call .struct_span_err directly 2019-12-31 04:33:34 +01:00
bors
bf2d145c62 Auto merge of #67032 - cjgillot:hirene, r=Zoxc
Allocate HIR on an arena 4/4

This is the fourth and last PR in the series started by #66931, #66936 and #66942.

The last commits should compile on their own.
The difference with the previous PR is given by https://github.com/cjgillot/rust/compare/hirene-ty...hirene

A few more cleanups may be necessary, please tell me.

r? @eddyb like the other
cc @Zoxc
2019-12-31 03:27:36 +00:00
Charles Lew
8f84d9e1de Inline and remove nfc_symbol_from method. 2019-12-31 09:37:45 +08:00
Charles Lew
7f9cc88f4a Add symbol normalization for proc_macro_server. 2019-12-31 09:37:45 +08:00
Wesley Wiser
001cea4ac4 [const-prop] Expand comment about casting ZST enums 2019-12-30 20:08:39 -05:00
Wesley Wiser
1886985380 [const-prop] Clean up check_cast() a bit 2019-12-30 20:08:38 -05:00
Wesley Wiser
397a2fd744 [const-prop] Extract some functions out of _const_prop 2019-12-30 20:08:36 -05:00
Wesley Wiser
e083273ec7 Lint overflowing integer casts in const prop
This extends the invalid cases we catch in const prop to include
overflowing integer casts using the same machinery as the overflowing
binary and unary operation logic.
2019-12-30 20:06:31 -05:00
Camille GILLOT
ac8c0f4008 Enlarge smallvec. 2019-12-30 23:25:47 +01:00
Camille GILLOT
be6cb63fcc Reduce allocations. 2019-12-30 23:09:35 +01:00
JP Sugarbroad
d935a26d9d
Less-than is asymmetric, not antisymmetric
This has bothered me for a while. It's such a small nit, but...
2019-12-30 12:17:23 -08:00
Esteban Küber
261b606ddc review comments and fix rebase 2019-12-30 11:47:41 -08:00
bors
a9dd56ff9a Auto merge of #67707 - petrochenkov:crateren, r=Centril
Rename some crates and modules in the frontend

Migrate from `syntax_*` naming scheme to `rustc_*`.
See https://github.com/rust-lang/rust/pull/65324#issuecomment-551103396 and several comments below.

Renamed crates:
`syntax_expand` -> `rustc_expand`
`syntax_pos` -> `rustc_span` ([motivation](https://github.com/rust-lang/rust/pull/65324#issuecomment-552173320))
`syntax_ext` -> `rustc_builtin_macros`

Also one module in resolve is renamed for consistency and to avoid tautology.

r? @Centril
2019-12-30 18:06:54 +00:00
Ohad Ravid
d4fbb55c9c Suggest adding a lifetime constraint when opaque type is responsible for "does not live long enough" error 2019-12-30 18:10:46 +01:00
Vadim Petrochenkov
208c1bff0a Support -Z ui-testing=yes/no 2019-12-30 20:01:34 +03:00
Vadim Petrochenkov
7608f21b27 Rename rustc_resolve/resolve_imports.rs -> rustc_resolve/imports.rs 2019-12-30 19:18:18 +03:00
Vadim Petrochenkov
a2823e3af6 Rename libsyntax_ext and libsyntax_expand in code 2019-12-30 19:18:17 +03:00
Vadim Petrochenkov
b9a9c5b4fd Make things build again 2019-12-30 19:18:16 +03:00
Vadim Petrochenkov
b683de4ad7 Rename directories for some crates from syntax_x to rustc_x
`syntax_expand` -> `rustc_expand`
`syntax_pos` -> `rustc_span`
`syntax_ext` -> `rustc_builtin_macros`
2019-12-30 19:18:16 +03:00
bors
9d6f87184e Auto merge of #67474 - mark-i-m:simplify-borrow_check-4, r=matthewjasper
Get rid of ErrorReportingCtx [5/N]

We can now use `MirBorrowckCtxt` instead :)

```
6 files changed, 122 insertions(+), 243 deletions(-)
```

This is a followup to (and thus blocked on) #67241.

r? @matthewjasper

cc @eddyb

I while try to do one more to get rid of the weird usage of `RegionInferenceCtx` in `borrow_check::diagnostics::{region_errors, region_naming}`. I think those uses can possibly also be refactored to use `MirBorrowckCtxt`...
2019-12-30 14:47:26 +00:00
Mazdak Farrokhzad
63dc0e41db discriminant -> scrutinee 2019-12-30 14:28:40 +01:00
Mazdak Farrokhzad
f8d2cce0ce Blame user type in pat type error. 2019-12-30 14:28:40 +01:00
Mazdak Farrokhzad
f2c6a19c0d check_fn: simplify 2019-12-30 14:05:17 +01:00
Mazdak Farrokhzad
d7e2f3aee5 refactor and fix this-expression-has-type note 2019-12-30 14:05:17 +01:00
Mateusz Mikuła
d452f89206 Bump smallvec 2019-12-30 13:50:23 +01:00
Mazdak Farrokhzad
f35840f77c Pass the span of <init> in let <pat> = <init>;
when type checking `<pat>`.
2019-12-30 13:50:20 +01:00
Mazdak Farrokhzad
6137ad49e4 move demand_eqtype_pat* to pat.rs 2019-12-30 13:50:20 +01:00
Mazdak Farrokhzad
e952377ddc MatchExpressionArmPattern -> Pattern
Current name is too specific for incoming changes.
2019-12-30 13:50:20 +01:00
Mazdak Farrokhzad
960acb044b Show scrutinee expr type for struct fields.
TODO: The type is wrong and will be fixed in later commits.
2019-12-30 13:50:20 +01:00
Mazdak Farrokhzad
ab050d6a83 MatchExpressionArmPattern: Use more generic wording.
The existing wording was inappropriate for e.g.
`if let Ok(_) = expr { .. }`. The diagnostic would
leak the fact that we desugar to a `match`.
2019-12-30 13:50:20 +01:00
Mazdak Farrokhzad
73db83aa70 cleanup check_pat 2019-12-30 13:50:20 +01:00
bors
0fb4380136 Auto merge of #67667 - wesleywiser:speed_up_trivially_valid_constants, r=oli-obk
Resolve long compile times when evaluating always valid constants

This extends the existing logic which skips validating every integer or
floating point number type to also skip validating empty structs because
they are also trivially valid.

Fixes #67539

r? @oli-obk
cc @RalfJung @spastorino
2019-12-30 11:31:04 +00:00
Camille GILLOT
5ed625a86e Outdated comment. 2019-12-30 11:45:59 +01:00
Camille GILLOT
176efc4323 Inert doc comments. 2019-12-30 11:45:59 +01:00
Camille GILLOT
afcd5c16b7 Move region_scope_tree query to librustc_passes. 2019-12-30 11:45:57 +01:00
Camille GILLOT
ca5a10f53e Move region.rs to librustc_passes. 2019-12-30 11:39:14 +01:00
Camille GILLOT
8f05d12c67 Duplicate allocations in lowering. 2019-12-30 11:29:49 +01:00
Camille GILLOT
4d773829c5 Avoid a few allocations. 2019-12-30 11:29:30 +01:00
Camille GILLOT
2d74e9ba13 Allocate inside lower_path_extra. 2019-12-30 11:29:30 +01:00
Camille GILLOT
e569ada528 Retire hir::ptr. 2019-12-30 11:29:30 +01:00
Camille GILLOT
e2c9dd7a10 Retire HirVec. 2019-12-30 11:29:30 +01:00
Camille GILLOT
aa3678d4f4 Remove HirVec from Generics. 2019-12-30 11:29:29 +01:00
Donough Liu
b4e1fbcf81 Gammer fix 2019-12-30 17:14:08 +08:00
bors
580ac0b4f1 Auto merge of #67658 - spastorino:do-not-copy-zsts, r=oli-obk
Avoid memory copy logic for zsts

r? @oli-obk

One of the included commits is work done by @HeroicKatora in #62655
2019-12-30 08:24:22 +00:00
Donough Liu
751fe7c43d Add error code explanation for E0477 2019-12-30 14:41:46 +08:00
bors
d297b19663 Auto merge of #67721 - JohnTitor:rollup-o8zm4r9, r=JohnTitor
Rollup of 10 pull requests

Successful merges:

 - #64273 (Stabilize attribute macros on inline modules)
 - #67287 (typeck: note other end-point when checking range pats)
 - #67564 (docs: Iterator adapters have unspecified results after a panic)
 - #67622 (Some keyword documentation.)
 - #67657 (Clean up const-hack PRs now that const if / match exist.)
 - #67677 (resolve: Minor cleanup of duplicate macro reexports)
 - #67687 (Do not ICE on lifetime error involving closures)
 - #67698 (Move reachable_set and diagnostic_items to librustc_passes.)
 - #67701 (tidy: Enforce formatting rather than just check it if `--bless` is specified)
 - #67715 (Typo fix)

Failed merges:

r? @ghost
2019-12-30 05:12:48 +00:00
Yuki Okushi
dcc30aced0
Rollup merge of #67715 - petertodd:2019-typo-manuallydrop, r=Centril
Typo fix
2019-12-30 14:07:57 +09:00
Yuki Okushi
b6244af566
Rollup merge of #67701 - petrochenkov:tidybless, r=Mark-Simulacrum
tidy: Enforce formatting rather than just check it if `--bless` is specified

Ensuring the "tidy"-ness currently requires running `rustfmt` twice:
```sh
./x.py fmt && ./x.py test tidy
```
, once to actually format code and the second time as a part of tidy to check that the code is formatted.

Running `rustfmt` is slow, so we don't want to run it twice.

With this PR tidy enforces the formatting rather than just checks it if `--bless` was passed to it:
```sh
./x.py test tidy --bless
```

r? @Mark-Simulacrum
2019-12-30 14:07:56 +09:00
Yuki Okushi
88e322c4f1
Rollup merge of #67698 - cjgillot:passes-first, r=Zoxc
Move reachable_set and diagnostic_items to librustc_passes.

Split out of #67688

r? @Zoxc
2019-12-30 14:07:55 +09:00
Yuki Okushi
3928aceb49
Rollup merge of #67687 - estebank:issue-67634, r=matthewjasper
Do not ICE on lifetime error involving closures

Fix #67634.
2019-12-30 14:07:53 +09:00