Skip to content

Fix unresolved type span inside async object - #67392

Merged
bors merged 2 commits into
rust-lang:masterfrom
csmoe:async-typeinfo
Dec 21, 2019
Merged

Fix unresolved type span inside async object#67392
bors merged 2 commits into
rust-lang:masterfrom
csmoe:async-typeinfo

Conversation

@csmoe

Copy link
Copy Markdown
Contributor

Closes#65180
r? @estebank
It's hard to create a minimal repro for that issue, decided to give up finding mcve.
cc previous take

@rust-highfiverust-highfive added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Dec 18, 2019
= self.fcx.unresolved_type_vars(&ty) {
debug!("remained unresolved_type = {:?}, unresolved_type_span: {:?}",
unresolved_type, unresolved_type_span);
self.prev_unresolved_span = unresolved_type_span;

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What would happen in there where a chain of more than two unresolved type vars?

@estebank

Copy link
Copy Markdown
Contributor

It looks reasonable, could you post the output from the original report?

Is it still the following?

error[E0698]: type inside `async fn` body must be known in this context
--> src/lib.rs:15:13
|
15 | Ok(hyper::service::service_fn(move |req| {
| ^^ cannot infer type for `ME`
|
note: the type is part of the `async fn` body because of this `await`
--> src/lib.rs:24:5
|
24 | server.await
| ^^^^^^^^^^^^
error: aborting due to previous error

If so, we should have a follow up ticket to make the infered name being shown be the one from Ok, not from service_fn.

@csmoe

Copy link
Copy Markdown
ContributorAuthor

It looks reasonable, could you post the output from the original report?

Is it still the following?

error[E0698]: type inside `async fn` body must be known in this context
--> src/lib.rs:15:13
|
15 | Ok(hyper::service::service_fn(move |req| {
| ^^ cannot infer type for `ME`
|
note: the type is part of the `async fn` body because of this `await`
--> src/lib.rs:24:5
|
24 | server.await
| ^^^^^^^^^^^^
error: aborting due to previous error

If so, we should have a follow up ticket to make the infered name being shown be the one from Ok, not from service_fn.

yes, still holds
image

@estebank

Copy link
Copy Markdown
Contributor

@bors r+

@bors

bors commented Dec 19, 2019

Copy link
Copy Markdown
Collaborator

📌 Commit ff4f6a1 has been approved by estebank

@bors

bors commented Dec 19, 2019

Copy link
Copy Markdown
Collaborator

🌲 The tree is currently closed for pull requests below priority 100, this pull request will be tested once the tree is reopened

@borsbors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Dec 19, 2019
Centril added a commit to Centril/rust that referenced this pull request Dec 19, 2019
Fix unresolved type span inside async object
Closesrust-lang#65180
r? @estebank
It's hard to create a minimal repro for that issue, [decided](https://rust-lang.zulipchat.com/#narrow/stream/187312-wg-async-foundations/topic/meeting.202019.2E12.2E17/near/183675659) to give up finding mcve.
cc [previous take](rust-lang#65668)
@CentrilCentril mentioned this pull request Dec 19, 2019
Centril added a commit to Centril/rust that referenced this pull request Dec 19, 2019
Rollup of 7 pull requests
Successful merges:
- rust-lang#66670 (Normalize ident)
- rust-lang#66755 (Remove a const-if-hack in RawVec)
- rust-lang#67127 (Use structured suggestion for disambiguating method calls)
- rust-lang#67281 (add string.insert benchmarks)
- rust-lang#67328 (Remove now-redundant range check on u128 -> f32 casts)
- rust-lang#67392 (Fix unresolved type span inside async object)
- rust-lang#67421 (Fix internal documentation typo)
Failed merges:
r? @ghost
Centril added a commit to Centril/rust that referenced this pull request Dec 19, 2019
Rollup of 7 pull requests
Successful merges:
- rust-lang#66670 (Normalize ident)
- rust-lang#66755 (Remove a const-if-hack in RawVec)
- rust-lang#67127 (Use structured suggestion for disambiguating method calls)
- rust-lang#67281 (add string.insert benchmarks)
- rust-lang#67328 (Remove now-redundant range check on u128 -> f32 casts)
- rust-lang#67392 (Fix unresolved type span inside async object)
- rust-lang#67421 (Fix internal documentation typo)
Failed merges:
r? @ghost
Mark-Simulacrum added a commit to Mark-Simulacrum/rust that referenced this pull request Dec 19, 2019
Rollup of 7 pull requests
Successful merges:
- rust-lang#66670 (Normalize ident)
- rust-lang#66755 (Remove a const-if-hack in RawVec)
- rust-lang#67127 (Use structured suggestion for disambiguating method calls)
- rust-lang#67281 (add string.insert benchmarks)
- rust-lang#67328 (Remove now-redundant range check on u128 -> f32 casts)
- rust-lang#67392 (Fix unresolved type span inside async object)
- rust-lang#67421 (Fix internal documentation typo)
Failed merges:
r? @ghost
Centril added a commit to Centril/rust that referenced this pull request Dec 20, 2019
Fix unresolved type span inside async object
Closesrust-lang#65180
r? @estebank
It's hard to create a minimal repro for that issue, [decided](https://rust-lang.zulipchat.com/#narrow/stream/187312-wg-async-foundations/topic/meeting.202019.2E12.2E17/near/183675659) to give up finding mcve.
cc [previous take](rust-lang#65668)
@CentrilCentril mentioned this pull request Dec 20, 2019
Centril added a commit to Centril/rust that referenced this pull request Dec 20, 2019
Fix unresolved type span inside async object
Closesrust-lang#65180
r? @estebank
It's hard to create a minimal repro for that issue, [decided](https://rust-lang.zulipchat.com/#narrow/stream/187312-wg-async-foundations/topic/meeting.202019.2E12.2E17/near/183675659) to give up finding mcve.
cc [previous take](rust-lang#65668)
@CentrilCentril mentioned this pull request Dec 20, 2019
bors added a commit that referenced this pull request Dec 21, 2019
Rollup of 6 pull requests
Successful merges:
- #67130 (Const prop should finish propagation into user defined variables)
- #67163 (Split up ptr/mod.rs in libcore...)
- #67314 (Don't suppress move errors for union fields)
- #67392 (Fix unresolved type span inside async object)
- #67404 (Separate region inference logic from error handling better)
- #67428 (`is_binding_pat`: use explicit match & include or-pats in grammar)
Failed merges:
r? @ghost
@bors
bors merged commit ff4f6a1 into rust-lang:masterDec 21, 2019
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

S-waiting-on-borsStatus: Waiting on bors to run and complete tests. Bors will change the label on completion.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Async-related type error messages defy expectations (in span location)

4 participants

@csmoe@estebank@bors@rust-highfive