Closed JohSand closed 2 days ago
Hi @JohSand, thanks for reporting this.
and is probably only present due to copy-paste.
~The 'TOverall
cannot be removed here (at least, I remember it wasn't removable, but I may be wrong, this part was done 2 years ago and I don't recall why it's there). Do you happen to have a small repo for this that I can add as test?~
EDIT: I was wrong. Looks like it works just fine after removing it. @JohSand If you can test the linked PR to verify it removes the warning, please do (and if you have a repo, even better!).
To be fair, when designing this, I didn't expect task-like types to be used very often and I don't think I have proper coverage in the tests, which ought to have uncovered this issue.
I'm glad there are use-cases "in the wild" :) and I hope there's a straightforward fix :).
Hi. For a repro, the easiest way is to bind Task.Yield(), which does in fact not return a Task, but a YieldAwatable.
So with
taskSeq {
do! Task.Yield()
yield 1
}
I can also confirm that remove 'TOverall removes the warning.
Awesome. I'll add a few tests tomorrow and merge the PR. Thank you very much for reporting this!
Binding task-likes in the taskSeq-builder will trigger the FS3559-warning. This seems to be due to the existence of the 'TOverall parameter here:
This parameter cannot be inferred, since it is not used in the method, and is probably only present due to copy-paste.