-
-
Notifications
You must be signed in to change notification settings - Fork 14.8k
Regression in async generator and fmt internals: loss of Send #93274
Copy link
Copy link
Closed
Labels
A-async-awaitArea: Async & AwaitArea: Async & AwaitC-bugCategory: This is a bug.Category: This is a bug.P-highHigh priorityHigh priorityT-compilerRelevant to the compiler team, which will review and decide on the PR/issue.Relevant to the compiler team, which will review and decide on the PR/issue.regression-from-stable-to-nightlyPerformance or correctness regression from stable to nightly.Performance or correctness regression from stable to nightly.
Milestone
Metadata
Metadata
Assignees
Labels
A-async-awaitArea: Async & AwaitArea: Async & AwaitC-bugCategory: This is a bug.Category: This is a bug.P-highHigh priorityHigh priorityT-compilerRelevant to the compiler team, which will review and decide on the PR/issue.Relevant to the compiler team, which will review and decide on the PR/issue.regression-from-stable-to-nightlyPerformance or correctness regression from stable to nightly.Performance or correctness regression from stable to nightly.
Type
Fields
Give feedbackNo fields configured for issues without a type.
Context
This has already tripped up some people which seem to get quite confused with this error message, so I'd rather we not regress here:
Code
I tried this code:
I expected to see this happen: Code compiles fine: the type of
foo()isSend.Instead, this happened: The type of
foo()is not send, since the backing state-machine generator produced for it now captures part of thefmtinternals involving a&reference to theextern { type Opaque; }, which is notSync.Version it worked on
It most recently worked on: beta
Version with regression
rustc --version --verbose:@rustbot modify labels: +regression-from-stable-to-nightly -regression-untriaged