Commit graph

24260 commits

Author SHA1 Message Date
Igor Matuszewski
2dccaa77f8 Use sysroot libserialize in newtype_index test 2019-04-21 15:58:06 +02:00
bors
4d9c6cd722 Auto merge of #60132 - davidtwco:issue-60075, r=estebank
Fix fn front matter parsing ICE from invalid code.

Fixes #60075.

This PR fixes an "unreachable code" ICE that results from parsing
invalid code where the compiler is expecting the next trait item
declaration in the middle of the previous trait item due to extra
closing braces.

r? @estebank (thanks for the minimized test case)
2019-04-21 07:20:14 +00:00
bors
c3a7194354 Auto merge of #60088 - varkor:async_await-method-feature-gate, r=cramertj
Feature gate async methods

Fixes https://github.com/rust-lang/rust/issues/60069.
2019-04-20 23:44:02 +00:00
varkor
ee496057a5 Update error message in test 2019-04-20 22:32:47 +01:00
varkor
98c71c36d6 Check async in trait methods 2019-04-20 22:03:39 +01:00
varkor
93c4b1f491 Fix additional variadic typos 2019-04-20 22:03:39 +01:00
varkor
c93c7e4e7c Add test for async fn methods feature gating 2019-04-20 22:03:39 +01:00
bors
33fe1131ca Auto merge of #59826 - llogiq:multi-dbg, r=SimonSapin
allow multiple args to `dbg!(..)`

This closes #59763
2019-04-20 20:55:29 +00:00
bors
72bc62047f Auto merge of #59987 - saleemjaffer:refactor_adjust_castkinds, r=oli-obk
Refactor Adjust and CastKind

fixes rust-lang#59588
2019-04-20 15:06:15 +00:00
David Wood
60c6ed9664
Fix fn front matter parsing ICE from invalid code.
This commit fixes an "unreachable code" ICE that results from parsing
invalid code where the compiler is expecting the next trait item
declaration in the middle of the previous trait item due to extra
closing braces.
2019-04-20 11:36:04 +01:00
Andre Bogus
b641fd374e extend ui test 2019-04-19 21:12:50 +02:00
Vadim Petrochenkov
aa393b0cde Some cleanup to maybe_parse_struct_expr 2019-04-19 10:32:44 -07:00
Esteban Küber
4c4ca60edd remove duplicated code and simplify logic 2019-04-19 10:13:45 -07:00
Esteban Küber
f1be8d16c5 Identify missing ambiguous case with best effort suggestion 2019-04-19 10:13:45 -07:00
Esteban Küber
2f36b54f0f Emit specific error for struct literal in conditions 2019-04-19 10:13:44 -07:00
bors
6c22051411 Auto merge of #60073 - rchaser53:issue-60049, r=estebank
avoid type-check body of DefId

fix: #60049
related: PR #59798
2019-04-19 07:03:12 +00:00
rchaser53
0ce131b192 avoid type-check body of DefId 2019-04-19 04:34:54 +00:00
Mazdak Farrokhzad
37f835cd18
Rollup merge of #60064 - estebank:issue-59980, r=varkor
Point at try `?` on errors affecting the err match arm of the desugared code

Fix #59980.
2019-04-19 06:03:23 +02:00
Mazdak Farrokhzad
aa58242b28
Rollup merge of #60061 - estebank:field-sugg, r=davidtwco
Change suggestion of field when not in self context

Fix #60057.
2019-04-19 06:03:21 +02:00
Mazdak Farrokhzad
dd9f9b4b9d
Rollup merge of #60060 - mtak-:rtm-x86-feature, r=petrochenkov
whitelist RTM x86 target cpu feature

This PR adds support for intels restricted transactional memory cpu feature. I mostly copied what was done for the [movbe](https://github.com/rust-lang/rust/pull/57999) feature.

https://github.com/rust-lang-nursery/stdsimd/issues/718
2019-04-19 06:03:20 +02:00
Mazdak Farrokhzad
2d6150a762
Rollup merge of #60052 - varkor:unused-parameter-diagnostic, r=estebank
Correct unused parameter diagnostic

The message was incorrect for unused lifetime parameters. There's no need to be specific.
2019-04-19 06:03:17 +02:00
Esteban Küber
6aa4c992bc Suggest appropriate path when calling associated item on bare types
When looking at the documentation for `std::f32` or `std::str`, for
example, it is easy to get confused and assume `std::f32` and `f32`
are the same thing. Because of this, it is not uncommon to attempt
writing `f32::consts::PI` instead of the correct
`std::f32::consts::PI`. When encountering the former, which results
in an access error due to it being an inexistent path, try to access
the same path under `std`. If this succeeds, this information is
stored for later tweaking of the final E0599 to provide an
appropriate suggestion.

This suggestion applies to both E0233 and E0599 and is only checked
when the first ident of a path corresponds to a primitive type.
2019-04-18 19:18:26 -07:00
Esteban Küber
2f4035d27e Fix rebase 2019-04-18 18:57:16 -07:00
Esteban Küber
7b050fe831 review comments: change wording 2019-04-18 18:39:56 -07:00
Esteban Küber
248fe949af Change suggestion of field when not in self context 2019-04-18 18:39:56 -07:00
varkor
048ba28ad1 Update tests 2019-04-18 18:35:18 +01:00
Andy Russell
b6f148c8bd
hide --explain hint if error has no extended info 2019-04-18 13:29:28 -04:00
bors
e577e49b9f Auto merge of #60058 - varkor:const-generics-ty-refactor, r=cramertj
Make const parameters enforce no variance constraints

Fixes https://github.com/rust-lang/rust/issues/60047. Also includes some minor const refactoring for convenience.
2019-04-18 08:58:45 +00:00
bors
be1dbaffed Auto merge of #60048 - estebank:issue-54954, r=sanxiyn
Fix ICE on const evaluation of const method

Fix #54954.
2019-04-18 06:00:06 +00:00
bors
fb1b222f04 Auto merge of #60051 - estebank:fn-sugg, r=davidtwco
Do not mention missing `PartialOrd` impl when involving uncalled fns
2019-04-18 03:06:17 +00:00
Esteban Küber
1e99b2ec9d Give custom error for E0277 on ? error case 2019-04-17 19:50:50 -07:00
Esteban Küber
007b40be01 Point at try ? on errors affecting the err match arm of the desugared code 2019-04-17 18:30:26 -07:00
tyler
365a48a8bf whitelist rtm x86 cpu feature 2019-04-17 17:10:24 -07:00
varkor
318a10e906 Add a test for unused const parameters 2019-04-18 00:30:50 +01:00
Mazdak Farrokhzad
42b3cf107d
Rollup merge of #60037 - eddyb:actually-its-param, r=estebank
Resolve inconsistency in error messages between "parameter" and "variable".

The inconsistency was introduced in 104fe1c4db (#33619), when a label saying `type variable` was added to an error with a message talking about `type parameters`.
Given that `parameter` is far more prevalent when referring to generics in the context of Rust, IMO it should be that in both the message and the label.

r? @nikomatsakis or @estebank
2019-04-18 00:23:40 +02:00
Esteban Küber
8f77a035a4 Do not mention missing PartialOrd impl when involving uncalled fns 2019-04-17 14:37:52 -07:00
bors
3c3d3c1777 Auto merge of #59527 - matklad:sized-index, r=Centril
Add test checking that Index<T: ?Sized> works

I've noticed that we have an `Idx: ?Sized` bound on the **index** in the `Index`, which seems strange given that we accept index by value. My guess is that it was meant to be removed in https://github.com/rust-lang/rust/pull/23601, but was overlooked.

If I remove this bound, `./x.py src/libstd/ src/libcore/` passes, which means at least that this is not covered by test.

I think there's three things we can do here:

* run crater with the bound removed to check if there are any regressions, and merge this, to be consistent with other operator traits
* run crater, get regressions, write a test for this with a note that "hey, we tried to fix it, its unfixable"
* decide, in the light of by-value DSTs, that this is a feature rather than a bug, and add a test

cc @rust-lang/libs

EDIT: the forth alternative is that there exist a genuine reason why this is the case, but I failed to see it :D
2019-04-17 19:18:51 +00:00
Esteban Küber
d56c82074b Fix ICE on const evaluation of const method 2019-04-17 12:00:35 -07:00
Aleksey Kladov
cc3abc4d27 add a test for unsized index 2019-04-17 15:31:52 +03:00
Eduard-Mihai Burtescu
5f7055988b Resolve inconsistency in error messages between "parameter" and "variable". 2019-04-17 13:25:07 +03:00
Mazdak Farrokhzad
0349b78e80
Rollup merge of #59646 - JohnTitor:improve-wording, r=oli-obk
const fn: Improve wording

fixes #59611

This might need discussion. Feel free to close this PR if we don't need to fix.
2019-04-17 10:31:33 +02:00
Mazdak Farrokhzad
c89bc54d4f
Rollup merge of #59128 - oli-obk:colorful_json, r=mark-i-m,eddyb
Emit ansi color codes in the `rendered` field of json diagnostics

cc @ljedrz

Implemented for https://github.com/rust-lang/rust/pull/56595#issuecomment-447645115 (x.py clippy)
2019-04-17 10:31:30 +02:00
Oliver Scherer
5c6a43a58b Don't test json with color codes on windows 2019-04-16 17:35:49 +02:00
Saleem Jaffer
d0c0815f01 fixing tests 2019-04-16 19:29:45 +05:30
bors
3b27b4f592 Auto merge of #59769 - RalfJung:compiletest-normalization, r=alexcrichton
compiletest normalization: preserve non-JSON lines such as ICEs

Currently, every non-JSON line from stderr gets normalized away when compiletest normalizes the output. In particular, ICEs get normalized to the empty output. That does not seem desirable, so this changes normalization to preserve non-JSON lines instead.

Also see https://github.com/laumann/compiletest-rs/issues/169: because of that bug, Miri currently *looks* green in the toolstate, but some tests ICE. That same bug is likely no longer present in latest compiletest because the error code gets checked separately, but it still seems like a good idea to also make sure that ICEs are considered stderr output:
This change found an accidental user-visible `error!` in CTFE validation (fixed), and a non-deterministic panic when there are two `main` symbols (not fixed, no idea where this comes from). Both got missed before because non-JSON output got ignored.
2019-04-16 10:18:17 +00:00
Ralf Jung
28c4397b28 this panic occurs not just on Windows, normalize it away everywhere 2019-04-16 10:55:46 +02:00
Mazdak Farrokhzad
a95ca298a6
Rollup merge of #59993 - euclio:unused-ref-field, r=estebank
include mode in unused binding suggestion span

Fixes #54180.
2019-04-16 05:14:25 +02:00
Mazdak Farrokhzad
426e747b7e
Rollup merge of #59992 - QuietMisdreavus:static-settings-path, r=GuillaumeGomez
rustdoc: use --static-root-path for settings.js

At the time i was writing https://github.com/rust-lang/docs.rs/pull/332, i noticed that the `settings.js` file that was being loaded was not being loaded from the `--static-root-path`. This PR fixes that so that users on docs.rs can effectively cache this file.
2019-04-16 05:14:24 +02:00
Mazdak Farrokhzad
bdf2473289
Rollup merge of #59903 - estebank:after-main, r=oli-obk
Continue evaluating after missing main
2019-04-16 05:14:21 +02:00
Yuki OKUSHI
407541552b Fix tests 2019-04-16 07:32:29 +09:00