Commit graph

159 commits

Author SHA1 Message Date
Alexander Regueiro
ee890331f6 Reblessed tests with NLL compare mode on. 2019-06-06 03:29:02 +01:00
Mazdak Farrokhzad
5baa58ea5f
Rollup merge of #61499 - varkor:issue-53457, r=oli-obk
Add regression test for existential type ICE #53457

Closes #53457.
2019-06-04 04:48:31 +02:00
varkor
1c6dce8b6d Add ui/impl-trait/issues folder 2019-06-03 19:57:13 +01:00
varkor
41dd21a9bc Add a regression test for #53457 2019-06-03 19:54:28 +01:00
Esteban Küber
860dce794c Remove unecessary -Z continue-parse-after-error from tests 2019-05-30 18:57:17 -07:00
Mazdak Farrokhzad
e19a229c88
Rollup merge of #60756 - matthewjasper:extra-impl-trait-tests, r=nikomatsakis
Add better tests for hidden lifetimes in impl trait

cc #60670
2019-05-29 00:19:53 +02:00
varkor
59762baf8a Move async/await tests to test/ui/async-await 2019-05-24 21:49:34 +01:00
Matthew Jasper
53e0474254 Add better tests for hidden lifetimes in impl trait 2019-05-18 13:16:45 +01:00
bors
b982867a73 Auto merge of #60171 - matthewjasper:full-nll-compare-mode, r=pnkfelix
Use -Zborrowck=mir for NLL compare mode

closes #56993

r? @pnkfelix
2019-05-17 13:01:23 +00:00
Pulkit Goyal
ea956e3ae9 add impl_trait_in_bindings to INCOMPLETE_FEATURES
impl_trait_in_bindings is not yet complete and can lead to compiler crashes.

Fixes #60764.
2019-05-13 18:45:20 +03:00
Matthew Jasper
be5fe051a8 Remove feature(nll) when compare mode is sufficient 2019-05-12 18:46:43 +01:00
Matthew Jasper
ff71b80a85 Change compare mode to use -Zborrowck=mir 2019-05-12 18:46:43 +01:00
Matthew Jasper
664c8ed301 Always use the stronger outlives version for opaque types 2019-05-12 17:12:49 +01:00
Matthew Jasper
d72f4de659 Constrain all regions in the concrete type for an opaque type 2019-05-02 18:56:56 +01:00
Taylor Cramer
3f966dcd53 Stabilize futures_api 2019-04-23 16:13:53 -07:00
varkor
497dcfa221 Update ui tests 2019-04-23 11:42:14 +01:00
varkor
62838975d0 Remove unnecessary ignore-tidy-linelength 2019-04-23 11:42:14 +01:00
varkor
7f0f0e31ec Remove double trailing newlines 2019-04-22 16:57:01 +01:00
Andy Russell
b6f148c8bd
hide --explain hint if error has no extended info 2019-04-18 13:29:28 -04:00
Esteban Küber
30c247f881 Suggest using anonymous lifetime in impl Trait return without hacks
Fallback to `static_impl_trait` for nice error message by peeking at the
return type and the lifetime type. Point at the return type instead of
the return expr/stmt in NLL mode.
2019-03-31 09:11:47 -07:00
Esteban Küber
ee2a9d93e9 Suggest using anonymous lifetime in impl Trait return 2019-03-29 13:24:29 -07:00
Eduard-Mihai Burtescu
a54a41ce47 rustc: provide DisambiguatedDefPathData in ty::print. 2019-03-15 13:25:10 +02:00
bors
8f4c226fc5 Auto merge of #58608 - pnkfelix:warning-period-for-detecting-nested-impl-trait, r=zoxc
Warning period for detecting nested impl trait

Here is some proposed code for making a warning period for the new checking of nested impl trait.

It undoes some of the corrective effects of PR #57730, by using boolean flags to track parts of the analysis that were previously skipped prior to PRs #57730 and #57981 landing.

Cc #57979
2019-03-12 12:09:47 +00:00
Vadim Petrochenkov
fa72a81bea Update tests 2019-03-11 23:10:26 +03:00
Felix S. Klock II
837856d120 Test illustrating that the nested_impl_trait lint should only catch shallow cases. 2019-03-11 16:30:40 +01:00
Felix S. Klock II
d6cee67c27 Unit (and regression) tests for warning cycle code. 2019-03-08 16:36:37 +01: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
varkor
f2fe71c02a Resolve incorrect diagnostic for using a non-const value in a constant 2019-02-07 16:03:12 +01:00
Mazdak Farrokhzad
8ef8d57029
Rollup merge of #57793 - estebank:impl-trait-resolve, r=oli-obk
Explain type mismatch cause pointing to return type when it is `impl Trait`

Fix #57743.
2019-01-24 00:19:54 +01:00
Esteban Küber
e33f7f7de1 Explain type mismatch cause pointing to return type when it is impl Trait 2019-01-20 18:42:10 -08:00
Esteban Küber
c4b8df5df2 Remove unnecessary dummy span checks
The emitter already verifies wether a given span note or span label
can be emitted to the output. If it can't, because it is a dummy
span, it will be either elided for labels or emitted as an unspanned
note/help when applicable.
2019-01-20 13:29:03 -08:00
John Kåre Alsaker
468254b38f Update tests 2019-01-11 03:53:30 +01:00
Matthew Jasper
65c1f54a06 Forbid impl Trait from referring to unnamable recursive types
There is no type T, such that `T = [T; 2]`, we should not allow this
to be circumvented by impl Trait.
2019-01-03 22:15:02 +00:00
Vadim Petrochenkov
8b1c424b6d privacy: Use common DefId visiting infra for all privacy visitors 2019-01-01 01:39:55 +03:00
Mark Rousskov
2a663555dd Remove licenses 2018-12-25 21:08:33 -07:00
Esteban Küber
cdbccf50a7 Point at coercion source on type errors for fn returning impl Trait 2018-12-20 16:52:52 -08:00
Oliver Scherer
61efc3b71b Update tests 2018-12-04 10:06:05 +01:00
Felix S. Klock II
cc33aecb68 Regression test for issue 55608. 2018-11-03 02:32:43 +01:00
kennytm
8988403d69
Rollup merge of #55102 - petrochenkov:trextra, r=nikomatsakis
resolve: Do not skip extern prelude during speculative resolution

Fixes https://github.com/rust-lang/rust/issues/54665
2018-10-18 12:55:02 +08:00
Vadim Petrochenkov
350f9a2be5 resolve: Do not skip extern prelude during speculative resolution 2018-10-17 10:31:37 +03:00
David Wood
539404b77d
Update output for borrowck=migrate compare mode.
This commit updates the test output for the updated NLL compare mode
that uses `-Z borrowck=migrate` rather than `-Z borrowck=mir`. The
previous commit changes `compiletest` and this commit only updates
`.nll.stderr` files.
2018-10-17 00:57:32 +02:00
Zack M. Davis
a5de379b55 structured suggestion for E0223 ambiguous associated type
It looks like we tend to use angle-brackets around the placeholder in
the few other places we use `Applicability::HasPlaceholders`, but that
would be confusing here, so ...
2018-10-11 21:10:35 -07:00
bors
b2d6ea98b0 Auto merge of #54810 - 1aim:unused-impl-trait, r=oli-obk
Fix dead code lint for functions using impl Trait

Fixes https://github.com/rust-lang/rust/issues/54754

This is a minimal fix that doesn't add any new queries or touches unnecessary code. Please nominate for beta backport if wanted.
2018-10-07 19:30:24 +00:00
bors
2155f27b64 Auto merge of #54741 - oli-obk:impl_trait_hierarchy, r=cramertj
Nest the `impl Trait` existential item inside the return type

fixes #54045

r? @cramertj
2018-10-05 15:32:19 +00:00
Jonas Schievink
7e5a13163e Convert issue-49376.rs to compile-pass 2018-10-04 14:53:16 +02:00
Jonas Schievink
12cabc824b Convert existential-minimal.rs to compile-pass 2018-10-04 14:51:26 +02:00
Jonas Schievink
62e9a09cfb Convert impl-trait/issue-42479.rs to compile-pass 2018-10-04 14:47:46 +02:00
Oliver Schneider
2a1ea44bdc Nest the impl Trait existential item inside the return type 2018-10-02 10:54:34 +02:00
Alexander Regueiro
3e142b92bc Added help message for impl_trait_in_bindings feature gate. 2018-09-30 22:12:34 +01:00
Niko Matsakis
bcfdfe4e50 use the closure def-id in returns, but closure-base def-id in locals
Using the `closure_base_def_id` indiscriminantely, as we were doing
before, winds up "going wrong" if the closure type includes the `impl
Trait` from the parent. The problem arises because the return value
for closures is inferred and meant to treat the return
type *opaquely*, so we don't want to be "desugaring" it into the
underlying type.
2018-09-26 17:07:25 -04:00