Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add more context to async fn trait error. Suggest async-trait. #65937

Closed

Conversation

jafern14
Copy link

@jafern14 jafern14 commented Oct 29, 2019

Addresses #65899

I decided to keep the information a bit more generic and not provide a link to the technical blog post following @estebank suggestion.

I can put the link to the blog post if you feel like it's worth it. I definitely learned quite a bit from it and it forced me to dig a bit further into other concepts that I wasn't entirely familiar with either.

The error output now looks like this for example:

error[E0706]: trait fns cannot be declared `async`
 --> src/main.rs:2:5
  |
2 |     async fn foo() {}
  |     ^^^^^^^^^^^^^^^^^
  |
  = note: Due to technical restrictions rust does not currently support `async` trait fns.
  = note: Consider using the `async-trait` crate in the meantime until further notice.

@rust-highfive
Copy link
Collaborator

Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @zackmdavis (or someone else) soon.

If any changes to this PR are deemed necessary, please add them as extra commits. This ensures that the reviewer can see what has changed since they last reviewed the code. Due to the way GitHub handles out-of-date commits, this should also make it reasonably obvious what issues have or haven't been addressed. Large or tricky changes may require several passes of review and changes.

Please see the contribution instructions for more information.

@rust-highfive rust-highfive added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Oct 29, 2019
@jafern14 jafern14 force-pushed the async-fn-trait-information branch from 8b8f010 to c4cfda9 Compare October 29, 2019 15:49
@rust-highfive
Copy link
Collaborator

The job x86_64-gnu-llvm-6.0 of your PR failed (pretty log, raw log). Through arcane magic we have determined that the following fragments from the build log may contain information about the problem.

Click to expand the log.
2019-10-29T15:50:24.9490345Z ##[command]git remote add origin https://github.com/rust-lang/rust
2019-10-29T15:50:24.9698264Z ##[command]git config gc.auto 0
2019-10-29T15:50:24.9751685Z ##[command]git config --get-all http.https://github.com/rust-lang/rust.extraheader
2019-10-29T15:50:24.9835349Z ##[command]git config --get-all http.proxy
2019-10-29T15:50:24.9991074Z ##[command]git -c http.extraheader="AUTHORIZATION: basic ***" fetch --force --tags --prune --progress --no-recurse-submodules --depth=2 origin +refs/heads/*:refs/remotes/origin/* +refs/pull/65937/merge:refs/remotes/pull/65937/merge
---
2019-10-29T15:56:54.1762398Z    Compiling serde_json v1.0.40
2019-10-29T15:56:55.8805370Z    Compiling tidy v0.1.0 (/checkout/src/tools/tidy)
2019-10-29T15:57:06.8761518Z     Finished release [optimized] target(s) in 1m 25s
2019-10-29T15:57:06.8839343Z tidy check
2019-10-29T15:57:07.3076244Z tidy error: /checkout/src/librustc_passes/ast_validation.rs:248: line longer than 100 chars
2019-10-29T15:57:07.3076748Z tidy error: /checkout/src/librustc_passes/ast_validation.rs:249: line longer than 100 chars
2019-10-29T15:57:09.2128482Z some tidy checks failed
2019-10-29T15:57:09.2129014Z Found 484 error codes
2019-10-29T15:57:09.2129081Z Found 0 error codes with no tests
2019-10-29T15:57:09.2130335Z Done!
2019-10-29T15:57:09.2130335Z Done!
2019-10-29T15:57:09.2134382Z 
2019-10-29T15:57:09.2134723Z 
2019-10-29T15:57:09.2138694Z command did not execute successfully: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage0-tools-bin/tidy" "/checkout/src" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage0/bin/cargo" "--no-vendor"
2019-10-29T15:57:09.2138895Z 
2019-10-29T15:57:09.2138921Z 
2019-10-29T15:57:09.2147120Z failed to run: /checkout/obj/build/bootstrap/debug/bootstrap test src/tools/tidy
2019-10-29T15:57:09.2147204Z Build completed unsuccessfully in 0:01:28
2019-10-29T15:57:09.2147204Z Build completed unsuccessfully in 0:01:28
2019-10-29T15:57:09.2197196Z == clock drift check ==
2019-10-29T15:57:09.2208627Z   local time: Tue Oct 29 15:57:09 UTC 2019
2019-10-29T15:57:09.2923513Z   network time: Tue, 29 Oct 2019 15:57:09 GMT
2019-10-29T15:57:09.2928289Z == end clock drift check ==
2019-10-29T15:57:10.5693048Z 
2019-10-29T15:57:10.5797472Z ##[error]Bash exited with code '1'.
2019-10-29T15:57:10.5828743Z ##[section]Starting: Checkout
2019-10-29T15:57:10.5830453Z ==============================================================================
2019-10-29T15:57:10.5830504Z Task         : Get sources
2019-10-29T15:57:10.5830548Z Description  : Get sources from a repository. Supports Git, TfsVC, and SVN repositories.

I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact @TimNN. (Feature Requests)

@jafern14 jafern14 force-pushed the async-fn-trait-information branch from c4cfda9 to 99c18c4 Compare October 29, 2019 16:23
Copy link
Contributor

@estebank estebank left a comment

Choose a reason for hiding this comment

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

@jafern14 for future reference, the style of messages in the output is to not have leading capitalization nor a closing period, except for exceptionally long text. The change itself looks fine, I have some comments about the wording. Finally, I'd like the information from @nikomatsakis' blogpost to be linked, but have qualms about linking to a domain not maintained by the whole team. Mainly concerned about it not looking official enough, link-rot and bus-factor.

.note("Due to technical restrictions rust does not currently support `async` \
trait fns.")
.note("Consider using the `async-trait` crate in the meantime until further \
notice.")
Copy link
Contributor

Choose a reason for hiding this comment

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

                .help("consider using the `async-trait` crate")

Copy link
Author

Choose a reason for hiding this comment

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

👍 I need to dig into the struct_span_err macro a bit more to figure out what else can be used with it.

Copy link
Author

Choose a reason for hiding this comment

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

"trait fns cannot be declared `async`").emit()
"trait fns cannot be declared `async`")
.note("Due to technical restrictions rust does not currently support `async` \
trait fns.")
Copy link
Contributor

Choose a reason for hiding this comment

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

                .note("due to technical restrictions Rust does not currently support `async` \
                       trait functions")

@nikomatsakis @rust-lang/docs how would we feel about adding a link to https://smallcultfollowing.com/babysteps/blog/2019/10/26/async-fn-in-traits-are-hard/ here? Alternatively, @nikomatsakis, would you feel up to adding that blogpost (or a summarized version of it) to the book or some other stable documentation location?

Copy link
Member

Choose a reason for hiding this comment

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

I think we should publish it on the inside Rust blog, perhaps, though I'm not sure if it's quite a "perfect fit." I don't think we should link to random-ish (obviously in this case it's Niko, but the point stands, I think) blogs from inside the compiler. We might also be able to uplift the content into a extended diagnostic perhaps?

Copy link
Contributor

Choose a reason for hiding this comment

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

Extending the error code description sounds like the best course of action.

Copy link
Contributor

Choose a reason for hiding this comment

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

Rather than link to blog posts, we could link to the async await book - https://rust-lang.github.io/async-book/07_workarounds/06_async_in_traits.html
(I'd be more than happy for the async book to be referencing useful blog posts)

@jafern14
Copy link
Author

jafern14 commented Oct 29, 2019

@estebank Thanks for the feedback. I was looking around at other logging output to see what standards were. Appreciate you outlining that for me.

As soon as we figure out if we want to put a summary into the docs or not I can push up the changes outlined above. FWIW I totally agree that putting in a non-rust owned link into the logging output and/or docs would look a little off. If we want to put a summary into the book then I can take a crack at it however I'm no Rust pro so it'd probably require revising/editing from others. I'm totally open to go at it though since it'd be a good challenge for me to learn something new in more depth.

@rust-highfive
Copy link
Collaborator

The job x86_64-gnu-llvm-6.0 of your PR failed (pretty log, raw log). Through arcane magic we have determined that the following fragments from the build log may contain information about the problem.

Click to expand the log.
2019-10-29T16:23:48.2704877Z ##[command]git remote add origin https://github.com/rust-lang/rust
2019-10-29T16:23:48.2901021Z ##[command]git config gc.auto 0
2019-10-29T16:23:48.2981064Z ##[command]git config --get-all http.https://github.com/rust-lang/rust.extraheader
2019-10-29T16:23:48.3052160Z ##[command]git config --get-all http.proxy
2019-10-29T16:23:49.0716978Z ##[command]git -c http.extraheader="AUTHORIZATION: basic ***" fetch --force --tags --prune --progress --no-recurse-submodules --depth=2 origin +refs/heads/*:refs/remotes/origin/* +refs/pull/65937/merge:refs/remotes/pull/65937/merge
---
2019-10-29T17:23:26.1095970Z .................................................................................................... 1600/9261
2019-10-29T17:23:31.8928525Z .................................................................................................... 1700/9261
2019-10-29T17:23:44.1822376Z ..........................................................i...............i......................... 1800/9261
2019-10-29T17:23:51.6662892Z .................................................................................................... 1900/9261
2019-10-29T17:24:06.1948099Z ................................................iiiii............................................... 2000/9261
2019-10-29T17:24:16.7663128Z .................................................................................................... 2200/9261
2019-10-29T17:24:19.2919257Z .................................................................................................... 2300/9261
2019-10-29T17:24:23.0000723Z .................................................................................................... 2400/9261
2019-10-29T17:24:46.1145038Z .................................................................................................... 2500/9261
---
2019-10-29T17:27:35.4910937Z .................................................i...............i.................................. 4800/9261
2019-10-29T17:27:44.2761776Z .................................................................................................... 4900/9261
2019-10-29T17:27:52.6230187Z .................................................................................................... 5000/9261
2019-10-29T17:27:58.8344463Z .................................................................................................... 5100/9261
2019-10-29T17:28:09.0704065Z ..................................................ii.ii...........i................................. 5200/9261
2019-10-29T17:28:18.5986327Z .................................................................................................... 5400/9261
2019-10-29T17:28:27.7674418Z .................................................................................................... 5500/9261
2019-10-29T17:28:35.2267698Z ......................i............................................................................. 5600/9261
2019-10-29T17:28:41.2342135Z .................................................................................................... 5700/9261
2019-10-29T17:28:41.2342135Z .................................................................................................... 5700/9261
2019-10-29T17:28:52.8291886Z .................................................................................................... 5800/9261
2019-10-29T17:29:04.7620263Z .......ii...i..ii...........i....................................................................... 5900/9261
2019-10-29T17:29:26.2281476Z .................................................................................................... 6100/9261
2019-10-29T17:29:32.6752596Z .................................................................................................... 6200/9261
2019-10-29T17:29:32.6752596Z .................................................................................................... 6200/9261
2019-10-29T17:29:46.6542867Z ..........................i..ii..................................................................... 6300/9261
2019-10-29T17:30:06.6757950Z ............................................................................................i....... 6500/9261
2019-10-29T17:30:08.9299880Z .................................................................................................... 6600/9261
2019-10-29T17:30:11.1955985Z ...................................................................i................................ 6700/9261
2019-10-29T17:30:14.1383330Z .................................................................................................... 6800/9261
---
2019-10-29T17:34:16.0604397Z 57    |
2019-10-29T17:34:16.0604463Z 58 LL |     async fn foo() {}
2019-10-29T17:34:16.0604513Z 59    |     ^^^^^^^^^^^^^^^^^
2019-10-29T17:34:16.0604559Z +    |
2019-10-29T17:34:16.0604632Z +    = note: Due to technical restrictions rust does not currently support `async` trait fns.
2019-10-29T17:34:16.0605162Z +    = note: Consider using the `async-trait` crate in the meantime until further notice.
2019-10-29T17:34:16.0605311Z 61 error: aborting due to 10 previous errors
2019-10-29T17:34:16.0605360Z 62 
2019-10-29T17:34:16.0605391Z 
2019-10-29T17:34:16.0605419Z 
2019-10-29T17:34:16.0605419Z 
2019-10-29T17:34:16.0605484Z The actual stderr differed from the expected stderr.
2019-10-29T17:34:16.0605904Z Actual stderr saved to /checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/async-await/edition-deny-async-fns-2015/edition-deny-async-fns-2015.stderr
2019-10-29T17:34:16.0606185Z To update references, rerun the tests and pass the `--bless` flag
2019-10-29T17:34:16.0606539Z To only update this specific test, also pass `--test-args async-await/edition-deny-async-fns-2015.rs`
2019-10-29T17:34:16.0606630Z error: 1 errors occurred comparing output.
2019-10-29T17:34:16.0606680Z status: exit code: 1
2019-10-29T17:34:16.0606680Z status: exit code: 1
2019-10-29T17:34:16.0607578Z command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/src/test/ui/async-await/edition-deny-async-fns-2015.rs" "-Zthreads=1" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-Zui-testing" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/async-await/edition-deny-async-fns-2015" "-Crpath" "-O" "-Cdebuginfo=0" "-Zunstable-options" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "--edition=2015" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/async-await/edition-deny-async-fns-2015/auxiliary" "-A" "unused"
2019-10-29T17:34:16.0607949Z ------------------------------------------
2019-10-29T17:34:16.0608108Z 
2019-10-29T17:34:16.0608381Z ------------------------------------------
2019-10-29T17:34:16.0608455Z stderr:
2019-10-29T17:34:16.0608455Z stderr:
2019-10-29T17:34:16.0608696Z ------------------------------------------
2019-10-29T17:34:16.0608754Z error[E0670]: `async fn` is not permitted in the 2015 edition
2019-10-29T17:34:16.0609067Z   --> /checkout/src/test/ui/async-await/edition-deny-async-fns-2015.rs:3:1
2019-10-29T17:34:16.0609126Z    |
2019-10-29T17:34:16.0609180Z LL | async fn foo() {} //~ ERROR `async fn` is not permitted in the 2015 edition
2019-10-29T17:34:16.0609285Z 
2019-10-29T17:34:16.0609335Z error[E0670]: `async fn` is not permitted in the 2015 edition
2019-10-29T17:34:16.0609645Z   --> /checkout/src/test/ui/async-await/edition-deny-async-fns-2015.rs:5:12
2019-10-29T17:34:16.0609700Z    |
2019-10-29T17:34:16.0609700Z    |
2019-10-29T17:34:16.0609757Z LL | fn baz() { async fn foo() {} } //~ ERROR `async fn` is not permitted in the 2015 edition
2019-10-29T17:34:16.0609868Z 
2019-10-29T17:34:16.0609918Z error[E0670]: `async fn` is not permitted in the 2015 edition
2019-10-29T17:34:16.0610203Z   --> /checkout/src/test/ui/async-await/edition-deny-async-fns-2015.rs:7:1
2019-10-29T17:34:16.0610274Z    |
2019-10-29T17:34:16.0610274Z    |
2019-10-29T17:34:16.0610328Z LL | async fn async_baz() { //~ ERROR `async fn` is not permitted in the 2015 edition
2019-10-29T17:34:16.0610419Z 
2019-10-29T17:34:16.0610490Z error[E0670]: `async fn` is not permitted in the 2015 edition
2019-10-29T17:34:16.0610777Z   --> /checkout/src/test/ui/async-await/edition-deny-async-fns-2015.rs:8:5
2019-10-29T17:34:16.0610829Z    |
2019-10-29T17:34:16.0610829Z    |
2019-10-29T17:34:16.0610901Z LL |     async fn bar() {} //~ ERROR `async fn` is not permitted in the 2015 edition
2019-10-29T17:34:16.0610983Z 
2019-10-29T17:34:16.0611049Z error[E0670]: `async fn` is not permitted in the 2015 edition
2019-10-29T17:34:16.0611335Z   --> /checkout/src/test/ui/async-await/edition-deny-async-fns-2015.rs:14:5
2019-10-29T17:34:16.0611398Z    |
2019-10-29T17:34:16.0611398Z    |
2019-10-29T17:34:16.0611452Z LL |     async fn foo() {} //~ ERROR `async fn` is not permitted in the 2015 edition
2019-10-29T17:34:16.0611552Z 
2019-10-29T17:34:16.0611600Z error[E0670]: `async fn` is not permitted in the 2015 edition
2019-10-29T17:34:16.0611988Z   --> /checkout/src/test/ui/async-await/edition-deny-async-fns-2015.rs:18:5
2019-10-29T17:34:16.0612049Z    |
2019-10-29T17:34:16.0612049Z    |
2019-10-29T17:34:16.0612102Z LL |     async fn foo() {} //~ ERROR `async fn` is not permitted in the 2015 edition
2019-10-29T17:34:16.0612202Z 
2019-10-29T17:34:16.0612252Z error[E0670]: `async fn` is not permitted in the 2015 edition
2019-10-29T17:34:16.0612562Z   --> /checkout/src/test/ui/async-await/edition-deny-async-fns-2015.rs:36:9
2019-10-29T17:34:16.0612632Z    |
2019-10-29T17:34:16.0612632Z    |
2019-10-29T17:34:16.0612686Z LL |         async fn bar() {} //~ ERROR `async fn` is not permitted in the 2015 edition
2019-10-29T17:34:16.0612780Z 
2019-10-29T17:34:16.0612847Z error[E0670]: `async fn` is not permitted in the 2015 edition
2019-10-29T17:34:16.0613575Z   --> /checkout/src/test/ui/async-await/edition-deny-async-fns-2015.rs:26:9
2019-10-29T17:34:16.0613643Z    |
2019-10-29T17:34:16.0613643Z    |
2019-10-29T17:34:16.0613732Z LL |         async fn foo() {} //~ ERROR `async fn` is not permitted in the 2015 edition
2019-10-29T17:34:16.0613817Z 
2019-10-29T17:34:16.0613883Z error[E0670]: `async fn` is not permitted in the 2015 edition
2019-10-29T17:34:16.0614184Z   --> /checkout/src/test/ui/async-await/edition-deny-async-fns-2015.rs:31:13
2019-10-29T17:34:16.0614237Z    |
2019-10-29T17:34:16.0614237Z    |
2019-10-29T17:34:16.0614292Z LL |             async fn bar() {} //~ ERROR `async fn` is not permitted in the 2015 edition
2019-10-29T17:34:16.0614397Z 
2019-10-29T17:34:16.0614397Z 
2019-10-29T17:34:16.0614446Z error[E0706]: trait fns cannot be declared `async`
2019-10-29T17:34:16.0614913Z   --> /checkout/src/test/ui/async-await/edition-deny-async-fns-2015.rs:18:5
2019-10-29T17:34:16.0614969Z    |
2019-10-29T17:34:16.0615021Z LL |     async fn foo() {} //~ ERROR `async fn` is not permitted in the 2015 edition
2019-10-29T17:34:16.0615136Z    |
2019-10-29T17:34:16.0615136Z    |
2019-10-29T17:34:16.0615200Z    = note: Due to technical restrictions rust does not currently support `async` trait fns.
2019-10-29T17:34:16.0615501Z    = note: Consider using the `async-trait` crate in the meantime until further notice.
2019-10-29T17:34:16.0615608Z error: aborting due to 10 previous errors
2019-10-29T17:34:16.0615641Z 
2019-10-29T17:34:16.0615912Z For more information about this error, try `rustc --explain E0670`.
2019-10-29T17:34:16.0615968Z 
---
2019-10-29T17:34:16.0655362Z thread 'main' panicked at 'Some tests failed', src/tools/compiletest/src/main.rs:537:22
2019-10-29T17:34:16.0655546Z note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace.
2019-10-29T17:34:16.0674252Z 
2019-10-29T17:34:16.0674737Z 
2019-10-29T17:34:16.0676697Z command did not execute successfully: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage0-tools-bin/compiletest" "--compile-lib-path" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib" "--run-lib-path" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/x86_64-unknown-linux-gnu/lib" "--rustc-path" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "--src-base" "/checkout/src/test/ui" "--build-base" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui" "--stage-id" "stage2-x86_64-unknown-linux-gnu" "--mode" "ui" "--target" "x86_64-unknown-linux-gnu" "--host" "x86_64-unknown-linux-gnu" "--llvm-filecheck" "/usr/lib/llvm-6.0/bin/FileCheck" "--host-rustcflags" "-Crpath -O -Cdebuginfo=0 -Zunstable-options  -Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "--target-rustcflags" "-Crpath -O -Cdebuginfo=0 -Zunstable-options  -Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "--docck-python" "/usr/bin/python2.7" "--lldb-python" "/usr/bin/python2.7" "--gdb" "/usr/bin/gdb" "--quiet" "--llvm-version" "6.0.0\n" "--system-llvm" "--cc" "" "--cxx" "" "--cflags" "" "--llvm-components" "" "--llvm-cxxflags" "" "--adb-path" "adb" "--adb-test-dir" "/data/tmp/work" "--android-cross-path" "" "--color" "always"
2019-10-29T17:34:16.0677179Z 
2019-10-29T17:34:16.0677305Z 
2019-10-29T17:34:16.0690270Z failed to run: /checkout/obj/build/bootstrap/debug/bootstrap test
2019-10-29T17:34:16.0690340Z Build completed unsuccessfully in 1:03:46
2019-10-29T17:34:16.0690340Z Build completed unsuccessfully in 1:03:46
2019-10-29T17:34:16.0748728Z == clock drift check ==
2019-10-29T17:34:16.0762367Z   local time: Tue Oct 29 17:34:16 UTC 2019
2019-10-29T17:34:16.3600745Z   network time: Tue, 29 Oct 2019 17:34:16 GMT
2019-10-29T17:34:16.3603855Z == end clock drift check ==
2019-10-29T17:34:17.5731587Z 
2019-10-29T17:34:17.5836007Z ##[error]Bash exited with code '1'.
2019-10-29T17:34:17.5935462Z ##[section]Starting: Checkout
2019-10-29T17:34:17.5937283Z ==============================================================================
2019-10-29T17:34:17.5937346Z Task         : Get sources
2019-10-29T17:34:17.5937398Z Description  : Get sources from a repository. Supports Git, TfsVC, and SVN repositories.

I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact @TimNN. (Feature Requests)

@jafern14
Copy link
Author

I'm patching up these expected results with the finalized output I have locally and will include them in the next commit.

@joelpalmer joelpalmer added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Nov 4, 2019
@joelpalmer
Copy link

Ping from Triage: Any updates @jafern14?

@JohnCSimon
Copy link
Member

Pinging again from Triage:
Any updates @jafern14?
cc: @estebank @zackmdavis

Thank you!

@JohnCSimon
Copy link
Member

JohnCSimon commented Nov 16, 2019

Pinging again from Triage:
Any updates @jafern14?
I'm going to close this due to inactivity - please feel free to re-open when you have time.

cc: @estebank @zackmdavis

Thanks for contributing!

@JohnCSimon JohnCSimon added the S-inactive Status: Inactive and waiting on the author. This is often applied to closed PRs. label Nov 16, 2019
@JohnCSimon JohnCSimon closed this Nov 16, 2019
@gilescope
Copy link
Contributor

gilescope commented Nov 17, 2019 via email

@estebank
Copy link
Contributor

Reopened with addressed nits and error code documentation at #66526.

@jafern14 thank you for your contribution! Your commit is included as is, with appropriate attribution, only rebased on a more recent master.

Centril added a commit to Centril/rust that referenced this pull request Nov 20, 2019
…, r=Centril

Add more context to `async fn` trait error

Follow up to rust-lang#65937. Fix rust-lang#65899.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
S-inactive Status: Inactive and waiting on the author. This is often applied to closed PRs. S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants