diff options
Diffstat (limited to '')
-rw-r--r-- | tests/ui/async-await/argument-patterns.rs (renamed from src/test/ui/async-await/argument-patterns.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/async-assoc-fn-anon-lifetimes.rs (renamed from src/test/ui/async-await/async-assoc-fn-anon-lifetimes.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/async-await-let-else.drop-tracking.stderr (renamed from src/test/ui/async-await/async-await-let-else.drop-tracking.stderr) | 10 | ||||
-rw-r--r-- | tests/ui/async-await/async-await-let-else.no-drop-tracking.stderr (renamed from src/test/ui/async-await/async-await-let-else.no-drop-tracking.stderr) | 10 | ||||
-rw-r--r-- | tests/ui/async-await/async-await-let-else.rs (renamed from src/test/ui/async-await/async-await-let-else.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/async-await.rs (renamed from src/test/ui/async-await/async-await.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/async-block-control-flow-static-semantics.rs (renamed from src/test/ui/async-await/async-block-control-flow-static-semantics.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/async-block-control-flow-static-semantics.stderr (renamed from src/test/ui/async-await/async-block-control-flow-static-semantics.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/async-borrowck-escaping-block-error.fixed (renamed from src/test/ui/async-await/async-borrowck-escaping-block-error.fixed) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/async-borrowck-escaping-block-error.rs (renamed from src/test/ui/async-await/async-borrowck-escaping-block-error.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/async-borrowck-escaping-block-error.stderr (renamed from src/test/ui/async-await/async-borrowck-escaping-block-error.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/async-borrowck-escaping-closure-error.rs (renamed from src/test/ui/async-await/async-borrowck-escaping-closure-error.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/async-borrowck-escaping-closure-error.stderr (renamed from src/test/ui/async-await/async-borrowck-escaping-closure-error.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/async-closure-matches-expr.rs (renamed from src/test/ui/async-await/async-closure-matches-expr.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/async-closure.rs (renamed from src/test/ui/async-await/async-closure.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/async-error-span.rs (renamed from src/test/ui/async-await/async-error-span.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/async-error-span.stderr (renamed from src/test/ui/async-await/async-error-span.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/async-fn-elided-impl-lifetime-parameter.rs (renamed from src/test/ui/async-await/async-fn-elided-impl-lifetime-parameter.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/async-fn-nonsend.rs (renamed from src/test/ui/async-await/async-fn-nonsend.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/async-fn-nonsend.stderr (renamed from src/test/ui/async-await/async-fn-nonsend.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/async-fn-path-elision.rs (renamed from src/test/ui/async-await/async-fn-path-elision.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/async-fn-path-elision.stderr (renamed from src/test/ui/async-await/async-fn-path-elision.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/async-fn-send-uses-nonsend.rs (renamed from src/test/ui/async-await/async-fn-send-uses-nonsend.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/async-fn-size-moved-locals.rs (renamed from src/test/ui/async-await/async-fn-size-moved-locals.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/async-fn-size-uninit-locals.rs (renamed from src/test/ui/async-await/async-fn-size-uninit-locals.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/async-fn-size.rs (renamed from src/test/ui/async-await/async-fn-size.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/async-is-unwindsafe.rs | 30 | ||||
-rw-r--r-- | tests/ui/async-await/async-is-unwindsafe.stderr | 38 | ||||
-rw-r--r-- | tests/ui/async-await/async-matches-expr.rs (renamed from src/test/ui/async-await/async-matches-expr.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/async-trait-fn.rs (renamed from src/test/ui/async-await/async-trait-fn.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/async-trait-fn.stderr (renamed from src/test/ui/async-await/async-trait-fn.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/async-unsafe-fn-call-in-safe.mir.stderr (renamed from src/test/ui/async-await/async-unsafe-fn-call-in-safe.mir.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/async-unsafe-fn-call-in-safe.rs (renamed from src/test/ui/async-await/async-unsafe-fn-call-in-safe.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/async-unsafe-fn-call-in-safe.thir.stderr (renamed from src/test/ui/async-await/async-unsafe-fn-call-in-safe.thir.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/async-with-closure.rs (renamed from src/test/ui/async-await/async-with-closure.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/auxiliary/arc_wake.rs (renamed from src/test/ui/async-await/auxiliary/arc_wake.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/auxiliary/issue-107036.rs (renamed from src/test/ui/async-await/auxiliary/issue-107036.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/auxiliary/issue-72470-lib.rs (renamed from src/test/ui/async-await/auxiliary/issue-72470-lib.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/await-into-future.rs (renamed from src/test/ui/async-await/await-into-future.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/await-keyword/2015-edition-error-various-positions.rs (renamed from src/test/ui/async-await/await-keyword/2015-edition-error-various-positions.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/await-keyword/2015-edition-error-various-positions.stderr (renamed from src/test/ui/async-await/await-keyword/2015-edition-error-various-positions.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/await-keyword/2015-edition-warning.fixed (renamed from src/test/ui/async-await/await-keyword/2015-edition-warning.fixed) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/await-keyword/2015-edition-warning.rs (renamed from src/test/ui/async-await/await-keyword/2015-edition-warning.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/await-keyword/2015-edition-warning.stderr (renamed from src/test/ui/async-await/await-keyword/2015-edition-warning.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/await-keyword/2018-edition-error-in-non-macro-position.rs (renamed from src/test/ui/async-await/await-keyword/2018-edition-error-in-non-macro-position.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/await-keyword/2018-edition-error-in-non-macro-position.stderr (renamed from src/test/ui/async-await/await-keyword/2018-edition-error-in-non-macro-position.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/await-keyword/2018-edition-error.rs (renamed from src/test/ui/async-await/await-keyword/2018-edition-error.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/await-keyword/2018-edition-error.stderr (renamed from src/test/ui/async-await/await-keyword/2018-edition-error.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/await-keyword/incorrect-syntax-suggestions.rs (renamed from src/test/ui/async-await/await-keyword/incorrect-syntax-suggestions.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/await-keyword/incorrect-syntax-suggestions.stderr (renamed from src/test/ui/async-await/await-keyword/incorrect-syntax-suggestions.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/await-keyword/post_expansion_error.rs (renamed from src/test/ui/async-await/await-keyword/post_expansion_error.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/await-keyword/post_expansion_error.stderr (renamed from src/test/ui/async-await/await-keyword/post_expansion_error.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/await-sequence.rs | 21 | ||||
-rw-r--r-- | tests/ui/async-await/await-unsize.rs (renamed from src/test/ui/async-await/await-unsize.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/bound-normalization.rs (renamed from src/test/ui/async-await/bound-normalization.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/conditional-and-guaranteed-initialization.rs (renamed from src/test/ui/async-await/conditional-and-guaranteed-initialization.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/default-struct-update.rs (renamed from src/test/ui/async-await/default-struct-update.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/dont-print-desugared-async.rs (renamed from src/test/ui/async-await/dont-print-desugared-async.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/dont-print-desugared-async.stderr (renamed from src/test/ui/async-await/dont-print-desugared-async.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/dont-suggest-await-on-method-return-mismatch.rs | 24 | ||||
-rw-r--r-- | tests/ui/async-await/dont-suggest-await-on-method-return-mismatch.stderr | 9 | ||||
-rw-r--r-- | tests/ui/async-await/dont-suggest-missing-await.rs (renamed from src/test/ui/async-await/dont-suggest-missing-await.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/dont-suggest-missing-await.stderr (renamed from src/test/ui/async-await/dont-suggest-missing-await.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/drop-and-assign.rs (renamed from src/test/ui/async-await/drop-and-assign.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/drop-order/auxiliary/arc_wake.rs (renamed from src/test/ui/async-await/drop-order/auxiliary/arc_wake.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/drop-order/drop-order-for-async-fn-parameters-by-ref-binding.rs (renamed from src/test/ui/async-await/drop-order/drop-order-for-async-fn-parameters-by-ref-binding.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/drop-order/drop-order-for-async-fn-parameters.rs (renamed from src/test/ui/async-await/drop-order/drop-order-for-async-fn-parameters.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/drop-order/drop-order-for-locals-when-cancelled.rs (renamed from src/test/ui/async-await/drop-order/drop-order-for-locals-when-cancelled.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/drop-order/drop-order-for-temporary-in-tail-return-expr.rs (renamed from src/test/ui/async-await/drop-order/drop-order-for-temporary-in-tail-return-expr.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/drop-order/drop-order-locals-are-hidden.rs (renamed from src/test/ui/async-await/drop-order/drop-order-locals-are-hidden.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/drop-order/drop-order-locals-are-hidden.stderr (renamed from src/test/ui/async-await/drop-order/drop-order-locals-are-hidden.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/drop-order/drop-order-when-cancelled.rs (renamed from src/test/ui/async-await/drop-order/drop-order-when-cancelled.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/drop-track-bad-field-in-fru.rs (renamed from src/test/ui/async-await/drop-track-bad-field-in-fru.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/drop-track-bad-field-in-fru.stderr (renamed from src/test/ui/async-await/drop-track-bad-field-in-fru.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/drop-track-field-assign-nonsend.rs (renamed from src/test/ui/async-await/drop-track-field-assign-nonsend.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/drop-track-field-assign-nonsend.stderr (renamed from src/test/ui/async-await/drop-track-field-assign-nonsend.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/drop-track-field-assign.rs (renamed from src/test/ui/async-await/drop-track-field-assign.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/drop-tracking-unresolved-typeck-results.rs (renamed from src/test/ui/async-await/drop-tracking-unresolved-typeck-results.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/drop-tracking-unresolved-typeck-results.stderr (renamed from src/test/ui/async-await/drop-tracking-unresolved-typeck-results.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/edition-deny-async-fns-2015.rs (renamed from src/test/ui/async-await/edition-deny-async-fns-2015.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/edition-deny-async-fns-2015.stderr (renamed from src/test/ui/async-await/edition-deny-async-fns-2015.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/expansion-in-attrs.rs (renamed from src/test/ui/async-await/expansion-in-attrs.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/feature-async-closure.rs (renamed from src/test/ui/async-await/feature-async-closure.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/feature-async-closure.stderr (renamed from src/test/ui/async-await/feature-async-closure.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/feature-gate-async_fn_in_trait.rs (renamed from src/test/ui/async-await/feature-gate-async_fn_in_trait.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/feature-gate-async_fn_in_trait.stderr (renamed from src/test/ui/async-await/feature-gate-async_fn_in_trait.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/feature-self-return-type.rs (renamed from src/test/ui/async-await/feature-self-return-type.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/feature-self-return-type.stderr (renamed from src/test/ui/async-await/feature-self-return-type.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/futures-api.rs (renamed from src/test/ui/async-await/futures-api.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/generator-desc.rs (renamed from src/test/ui/async-await/generator-desc.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/generator-desc.stderr (renamed from src/test/ui/async-await/generator-desc.stderr) | 3 | ||||
-rw-r--r-- | tests/ui/async-await/generator-not-future.rs (renamed from src/test/ui/async-await/generator-not-future.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/generator-not-future.stderr (renamed from src/test/ui/async-await/generator-not-future.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/generics-and-bounds.rs (renamed from src/test/ui/async-await/generics-and-bounds.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/async-associated-types.rs (renamed from src/test/ui/async-await/in-trait/async-associated-types.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/async-associated-types2.rs (renamed from src/test/ui/async-await/in-trait/async-associated-types2.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/async-example-desugared-boxed-in-trait.rs (renamed from src/test/ui/async-await/in-trait/async-example-desugared-boxed-in-trait.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/async-example-desugared-boxed-in-trait.stderr (renamed from src/test/ui/async-await/in-trait/async-example-desugared-boxed-in-trait.stderr) | 4 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/async-example-desugared-boxed.rs | 21 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/async-example-desugared-boxed.stderr | 11 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/async-example-desugared-extra.rs | 37 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/async-example-desugared-in-trait.rs (renamed from src/test/ui/async-await/in-trait/async-example-desugared-in-trait.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/async-example-desugared-manual.rs | 29 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/async-example-desugared-manual.stderr | 11 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/async-example-desugared.rs | 20 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/async-example.rs (renamed from src/test/ui/async-await/in-trait/async-example.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/async-generics-and-bounds.rs (renamed from src/test/ui/async-await/in-trait/async-generics-and-bounds.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/async-generics-and-bounds.stderr (renamed from src/test/ui/async-await/in-trait/async-generics-and-bounds.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/async-generics.rs (renamed from src/test/ui/async-await/in-trait/async-generics.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/async-generics.stderr (renamed from src/test/ui/async-await/in-trait/async-generics.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/async-lifetimes-and-bounds.rs (renamed from src/test/ui/async-await/in-trait/async-lifetimes-and-bounds.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/async-lifetimes.rs (renamed from src/test/ui/async-await/in-trait/async-lifetimes.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/async-recursive-generic.rs (renamed from src/test/ui/async-await/in-trait/async-recursive-generic.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/async-recursive-generic.stderr (renamed from src/test/ui/async-await/in-trait/async-recursive-generic.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/async-recursive.rs (renamed from src/test/ui/async-await/in-trait/async-recursive.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/async-recursive.stderr (renamed from src/test/ui/async-await/in-trait/async-recursive.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/bad-signatures.rs | 16 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/bad-signatures.stderr | 26 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/early-bound-1.rs (renamed from src/test/ui/async-await/in-trait/early-bound-1.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/early-bound-2.rs (renamed from src/test/ui/async-await/in-trait/early-bound-2.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/fn-not-async-err.rs (renamed from src/test/ui/async-await/in-trait/fn-not-async-err.rs) | 2 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/fn-not-async-err.stderr | 11 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/fn-not-async-err2.rs (renamed from src/test/ui/async-await/in-trait/fn-not-async-err2.rs) | 4 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/fn-not-async-err2.stderr (renamed from src/test/ui/async-await/in-trait/fn-not-async-err2.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/implied-bounds.rs (renamed from src/test/ui/async-await/in-trait/implied-bounds.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/issue-102138.rs (renamed from src/test/ui/async-await/in-trait/issue-102138.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/issue-102219.rs (renamed from src/test/ui/async-await/in-trait/issue-102219.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/issue-102310.rs (renamed from src/test/ui/async-await/in-trait/issue-102310.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/issue-104678.rs | 31 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/lifetime-mismatch.rs (renamed from src/test/ui/async-await/in-trait/lifetime-mismatch.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/lifetime-mismatch.stderr (renamed from src/test/ui/async-await/in-trait/lifetime-mismatch.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/missing-send-bound.rs | 21 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/missing-send-bound.stderr | 29 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/nested-rpit.rs (renamed from src/test/ui/async-await/in-trait/nested-rpit.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/object-safety.rs (renamed from src/test/ui/async-await/in-trait/object-safety.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/object-safety.stderr (renamed from src/test/ui/async-await/in-trait/object-safety.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/return-type-suggestion.rs (renamed from src/test/ui/async-await/in-trait/return-type-suggestion.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/in-trait/return-type-suggestion.stderr (renamed from src/test/ui/async-await/in-trait/return-type-suggestion.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/incorrect-move-async-order-issue-79694.fixed (renamed from src/test/ui/async-await/incorrect-move-async-order-issue-79694.fixed) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/incorrect-move-async-order-issue-79694.rs (renamed from src/test/ui/async-await/incorrect-move-async-order-issue-79694.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/incorrect-move-async-order-issue-79694.stderr (renamed from src/test/ui/async-await/incorrect-move-async-order-issue-79694.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/interior-with-const-generic-expr.rs (renamed from src/test/ui/async-await/interior-with-const-generic-expr.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-101715.rs (renamed from src/test/ui/async-await/issue-101715.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-101715.stderr (renamed from src/test/ui/async-await/issue-101715.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-105501.rs | 165 | ||||
-rw-r--r-- | tests/ui/async-await/issue-107036.rs (renamed from src/test/ui/async-await/issue-107036.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-54239-private-type-triggers-lint.rs (renamed from src/test/ui/async-await/issue-54239-private-type-triggers-lint.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-60709.rs (renamed from src/test/ui/async-await/issue-60709.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-61076.rs (renamed from src/test/ui/async-await/issue-61076.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-61076.stderr (renamed from src/test/ui/async-await/issue-61076.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-61452.rs (renamed from src/test/ui/async-await/issue-61452.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-61452.stderr (renamed from src/test/ui/async-await/issue-61452.stderr) | 7 | ||||
-rw-r--r-- | tests/ui/async-await/issue-61793.rs (renamed from src/test/ui/async-await/issue-61793.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-61949-self-return-type.rs (renamed from src/test/ui/async-await/issue-61949-self-return-type.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-61949-self-return-type.stderr (renamed from src/test/ui/async-await/issue-61949-self-return-type.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-62658.rs (renamed from src/test/ui/async-await/issue-62658.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-63832-await-short-temporary-lifetime-1.rs (renamed from src/test/ui/async-await/issue-63832-await-short-temporary-lifetime-1.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-63832-await-short-temporary-lifetime.rs (renamed from src/test/ui/async-await/issue-63832-await-short-temporary-lifetime.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-64130-1-sync.rs (renamed from src/test/ui/async-await/issue-64130-1-sync.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-64130-1-sync.stderr (renamed from src/test/ui/async-await/issue-64130-1-sync.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-64130-2-send.rs (renamed from src/test/ui/async-await/issue-64130-2-send.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-64130-2-send.stderr (renamed from src/test/ui/async-await/issue-64130-2-send.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-64130-3-other.rs (renamed from src/test/ui/async-await/issue-64130-3-other.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-64130-3-other.stderr (renamed from src/test/ui/async-await/issue-64130-3-other.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-64130-4-async-move.drop-tracking.stderr (renamed from src/test/ui/async-await/issue-64130-4-async-move.drop-tracking.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-64130-4-async-move.no_drop_tracking.stderr (renamed from src/test/ui/async-await/issue-64130-4-async-move.no_drop_tracking.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-64130-4-async-move.rs (renamed from src/test/ui/async-await/issue-64130-4-async-move.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-64130-non-send-future-diags.rs (renamed from src/test/ui/async-await/issue-64130-non-send-future-diags.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-64130-non-send-future-diags.stderr (renamed from src/test/ui/async-await/issue-64130-non-send-future-diags.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-64391.rs (renamed from src/test/ui/async-await/issue-64391.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-66312.rs (renamed from src/test/ui/async-await/issue-66312.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-66312.stderr (renamed from src/test/ui/async-await/issue-66312.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-66387-if-without-else.rs (renamed from src/test/ui/async-await/issue-66387-if-without-else.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-66387-if-without-else.stderr (renamed from src/test/ui/async-await/issue-66387-if-without-else.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-67252-unnamed-future.rs (renamed from src/test/ui/async-await/issue-67252-unnamed-future.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-67252-unnamed-future.stderr (renamed from src/test/ui/async-await/issue-67252-unnamed-future.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-67651.rs (renamed from src/test/ui/async-await/issue-67651.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-67651.stderr (renamed from src/test/ui/async-await/issue-67651.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-67765-async-diagnostic.rs (renamed from src/test/ui/async-await/issue-67765-async-diagnostic.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-67765-async-diagnostic.stderr (renamed from src/test/ui/async-await/issue-67765-async-diagnostic.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-68112.drop_tracking.stderr (renamed from src/test/ui/async-await/issue-68112.drop_tracking.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-68112.no_drop_tracking.stderr (renamed from src/test/ui/async-await/issue-68112.no_drop_tracking.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-68112.rs (renamed from src/test/ui/async-await/issue-68112.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-68523-start.rs (renamed from src/test/ui/async-await/issue-68523-start.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-68523-start.stderr (renamed from src/test/ui/async-await/issue-68523-start.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-68523.rs (renamed from src/test/ui/async-await/issue-68523.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-68523.stderr (renamed from src/test/ui/async-await/issue-68523.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-69446-fnmut-capture.rs (renamed from src/test/ui/async-await/issue-69446-fnmut-capture.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-69446-fnmut-capture.stderr (renamed from src/test/ui/async-await/issue-69446-fnmut-capture.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-70594.rs (renamed from src/test/ui/async-await/issue-70594.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-70594.stderr (renamed from src/test/ui/async-await/issue-70594.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-70818.rs (renamed from src/test/ui/async-await/issue-70818.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-70818.stderr (renamed from src/test/ui/async-await/issue-70818.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-70935-complex-spans.drop_tracking.stderr (renamed from src/test/ui/async-await/issue-70935-complex-spans.drop_tracking.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-70935-complex-spans.no_drop_tracking.stderr (renamed from src/test/ui/async-await/issue-70935-complex-spans.no_drop_tracking.stderr) | 10 | ||||
-rw-r--r-- | tests/ui/async-await/issue-70935-complex-spans.rs (renamed from src/test/ui/async-await/issue-70935-complex-spans.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-71137.rs (renamed from src/test/ui/async-await/issue-71137.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-71137.stderr (renamed from src/test/ui/async-await/issue-71137.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-72442.rs (renamed from src/test/ui/async-await/issue-72442.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-72442.stderr (renamed from src/test/ui/async-await/issue-72442.stderr) | 3 | ||||
-rw-r--r-- | tests/ui/async-await/issue-72470-llvm-dominate.rs (renamed from src/test/ui/async-await/issue-72470-llvm-dominate.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-72590-type-error-sized.rs (renamed from src/test/ui/async-await/issue-72590-type-error-sized.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-72590-type-error-sized.stderr (renamed from src/test/ui/async-await/issue-72590-type-error-sized.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-73050.rs (renamed from src/test/ui/async-await/issue-73050.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-73137.rs (renamed from src/test/ui/async-await/issue-73137.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-73541-1.rs (renamed from src/test/ui/async-await/issue-73541-1.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-73541-1.stderr (renamed from src/test/ui/async-await/issue-73541-1.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-73541-2.rs (renamed from src/test/ui/async-await/issue-73541-2.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-73541-2.stderr (renamed from src/test/ui/async-await/issue-73541-2.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-73541-3.rs (renamed from src/test/ui/async-await/issue-73541-3.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-73541-3.stderr (renamed from src/test/ui/async-await/issue-73541-3.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-73541.rs (renamed from src/test/ui/async-await/issue-73541.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-73541.stderr (renamed from src/test/ui/async-await/issue-73541.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-73741-type-err-drop-tracking.rs (renamed from src/test/ui/async-await/issue-73741-type-err-drop-tracking.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-73741-type-err-drop-tracking.stderr (renamed from src/test/ui/async-await/issue-73741-type-err-drop-tracking.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-73741-type-err.rs (renamed from src/test/ui/async-await/issue-73741-type-err.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-73741-type-err.stderr (renamed from src/test/ui/async-await/issue-73741-type-err.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-74047.rs (renamed from src/test/ui/async-await/issue-74047.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-74047.stderr (renamed from src/test/ui/async-await/issue-74047.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-74072-lifetime-name-annotations.rs (renamed from src/test/ui/async-await/issue-74072-lifetime-name-annotations.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-74072-lifetime-name-annotations.stderr (renamed from src/test/ui/async-await/issue-74072-lifetime-name-annotations.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-74497-lifetime-in-opaque.rs (renamed from src/test/ui/async-await/issue-74497-lifetime-in-opaque.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-74497-lifetime-in-opaque.stderr (renamed from src/test/ui/async-await/issue-74497-lifetime-in-opaque.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-75785-confusing-named-region.rs (renamed from src/test/ui/async-await/issue-75785-confusing-named-region.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-75785-confusing-named-region.stderr (renamed from src/test/ui/async-await/issue-75785-confusing-named-region.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-76547.rs (renamed from src/test/ui/async-await/issue-76547.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-76547.stderr (renamed from src/test/ui/async-await/issue-76547.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-77993-2.rs (renamed from src/test/ui/async-await/issue-77993-2.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-77993-2.stderr (renamed from src/test/ui/async-await/issue-77993-2.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-84841.rs (renamed from src/test/ui/async-await/issue-84841.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-84841.stderr (renamed from src/test/ui/async-await/issue-84841.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-86507.rs (renamed from src/test/ui/async-await/issue-86507.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-86507.stderr (renamed from src/test/ui/async-await/issue-86507.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-93197.rs (renamed from src/test/ui/async-await/issue-93197.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-93648.rs (renamed from src/test/ui/async-await/issue-93648.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-98634.rs (renamed from src/test/ui/async-await/issue-98634.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issue-98634.stderr (renamed from src/test/ui/async-await/issue-98634.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/auxiliary/issue-60674.rs (renamed from src/test/ui/async-await/issues/auxiliary/issue-60674.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/auxiliary/issue_67893.rs (renamed from src/test/ui/async-await/issues/auxiliary/issue_67893.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-102206.rs | 8 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-102206.stderr | 23 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-51719.rs (renamed from src/test/ui/async-await/issues/issue-51719.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-51719.stderr (renamed from src/test/ui/async-await/issues/issue-51719.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-51751.rs (renamed from src/test/ui/async-await/issues/issue-51751.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-51751.stderr (renamed from src/test/ui/async-await/issues/issue-51751.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-53249.rs (renamed from src/test/ui/async-await/issues/issue-53249.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-54752-async-block.rs (renamed from src/test/ui/async-await/issues/issue-54752-async-block.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-54752-async-block.stderr (renamed from src/test/ui/async-await/issues/issue-54752-async-block.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-54974.rs (renamed from src/test/ui/async-await/issues/issue-54974.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-55324.rs (renamed from src/test/ui/async-await/issues/issue-55324.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-55809.rs (renamed from src/test/ui/async-await/issues/issue-55809.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-58885.rs (renamed from src/test/ui/async-await/issues/issue-58885.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-59001.rs (renamed from src/test/ui/async-await/issues/issue-59001.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-59972.rs (renamed from src/test/ui/async-await/issues/issue-59972.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-60518.rs (renamed from src/test/ui/async-await/issues/issue-60518.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-60655-latebound-regions.rs (renamed from src/test/ui/async-await/issues/issue-60655-latebound-regions.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-60674.rs (renamed from src/test/ui/async-await/issues/issue-60674.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-60674.stdout (renamed from src/test/ui/async-await/issues/issue-60674.stdout) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-61187.rs (renamed from src/test/ui/async-await/issues/issue-61187.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-61187.stderr | 14 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-61986.rs (renamed from src/test/ui/async-await/issues/issue-61986.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-62009-1.rs (renamed from src/test/ui/async-await/issues/issue-62009-1.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-62009-1.stderr (renamed from src/test/ui/async-await/issues/issue-62009-1.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-62009-2.rs (renamed from src/test/ui/async-await/issues/issue-62009-2.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-62009-2.stderr (renamed from src/test/ui/async-await/issues/issue-62009-2.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-62097.rs (renamed from src/test/ui/async-await/issues/issue-62097.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-62097.stderr (renamed from src/test/ui/async-await/issues/issue-62097.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-62517-1.rs (renamed from src/test/ui/async-await/issues/issue-62517-1.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-62517-2.rs (renamed from src/test/ui/async-await/issues/issue-62517-2.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-63388-1.rs (renamed from src/test/ui/async-await/issues/issue-63388-1.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-63388-1.stderr (renamed from src/test/ui/async-await/issues/issue-63388-1.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-63388-2.rs (renamed from src/test/ui/async-await/issues/issue-63388-2.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-63388-2.stderr (renamed from src/test/ui/async-await/issues/issue-63388-2.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-63388-3.rs (renamed from src/test/ui/async-await/issues/issue-63388-3.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-63388-4.rs (renamed from src/test/ui/async-await/issues/issue-63388-4.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-64391-2.rs (renamed from src/test/ui/async-await/issues/issue-64391-2.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-64433.rs (renamed from src/test/ui/async-await/issues/issue-64433.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-64477-2.rs (renamed from src/test/ui/async-await/issues/issue-64477-2.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-64477.rs (renamed from src/test/ui/async-await/issues/issue-64477.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-64964.rs (renamed from src/test/ui/async-await/issues/issue-64964.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-65159.rs (renamed from src/test/ui/async-await/issues/issue-65159.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-65159.stderr (renamed from src/test/ui/async-await/issues/issue-65159.stderr) | 5 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-65419/issue-65419-async-fn-resume-after-completion.rs (renamed from src/test/ui/async-await/issues/issue-65419/issue-65419-async-fn-resume-after-completion.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-65419/issue-65419-async-fn-resume-after-panic.rs (renamed from src/test/ui/async-await/issues/issue-65419/issue-65419-async-fn-resume-after-panic.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-65419/issue-65419-generator-resume-after-completion.rs (renamed from src/test/ui/async-await/issues/issue-65419/issue-65419-generator-resume-after-completion.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-65436-raw-ptr-not-send.no_drop_tracking.stderr (renamed from src/test/ui/async-await/issues/issue-65436-raw-ptr-not-send.no_drop_tracking.stderr) | 10 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-65436-raw-ptr-not-send.rs (renamed from src/test/ui/async-await/issues/issue-65436-raw-ptr-not-send.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-66695-static-refs.rs (renamed from src/test/ui/async-await/issues/issue-66695-static-refs.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-66958-non-copy-infered-type-arg.rs (renamed from src/test/ui/async-await/issues/issue-66958-non-copy-infered-type-arg.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-66958-non-copy-infered-type-arg.stderr (renamed from src/test/ui/async-await/issues/issue-66958-non-copy-infered-type-arg.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-67611-static-mut-refs.rs (renamed from src/test/ui/async-await/issues/issue-67611-static-mut-refs.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-67893.rs (renamed from src/test/ui/async-await/issues/issue-67893.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-67893.stderr | 23 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-69307-nested.rs (renamed from src/test/ui/async-await/issues/issue-69307-nested.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-69307.rs (renamed from src/test/ui/async-await/issues/issue-69307.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-72312.rs (renamed from src/test/ui/async-await/issues/issue-72312.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-72312.stderr (renamed from src/test/ui/async-await/issues/issue-72312.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-78600.rs (renamed from src/test/ui/async-await/issues/issue-78600.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-78600.stderr (renamed from src/test/ui/async-await/issues/issue-78600.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-78654.full.stderr (renamed from src/test/ui/async-await/issues/issue-78654.full.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-78654.min.stderr (renamed from src/test/ui/async-await/issues/issue-78654.min.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-78654.rs (renamed from src/test/ui/async-await/issues/issue-78654.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-78938-async-block.rs (renamed from src/test/ui/async-await/issues/issue-78938-async-block.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-78938-async-block.stderr (renamed from src/test/ui/async-await/issues/issue-78938-async-block.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-95307.rs (renamed from src/test/ui/async-await/issues/issue-95307.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/issue-95307.stderr (renamed from src/test/ui/async-await/issues/issue-95307.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/non-async-enclosing-span.rs (renamed from src/test/ui/async-await/issues/non-async-enclosing-span.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/issues/non-async-enclosing-span.stderr (renamed from src/test/ui/async-await/issues/non-async-enclosing-span.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/large_moves.attribute.stderr (renamed from src/test/ui/async-await/large_moves.attribute.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/large_moves.option.stderr (renamed from src/test/ui/async-await/large_moves.option.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/large_moves.rs (renamed from src/test/ui/async-await/large_moves.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/move-part-await-return-rest-struct.rs (renamed from src/test/ui/async-await/move-part-await-return-rest-struct.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/move-part-await-return-rest-tuple.rs (renamed from src/test/ui/async-await/move-part-await-return-rest-tuple.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/multiple-lifetimes/elided.rs (renamed from src/test/ui/async-await/multiple-lifetimes/elided.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/multiple-lifetimes/fn-ptr.rs (renamed from src/test/ui/async-await/multiple-lifetimes/fn-ptr.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/multiple-lifetimes/hrtb.rs (renamed from src/test/ui/async-await/multiple-lifetimes/hrtb.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/multiple-lifetimes/named.rs (renamed from src/test/ui/async-await/multiple-lifetimes/named.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/multiple-lifetimes/partial-relation.rs (renamed from src/test/ui/async-await/multiple-lifetimes/partial-relation.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/multiple-lifetimes/ret-impl-trait-fg.rs (renamed from src/test/ui/async-await/multiple-lifetimes/ret-impl-trait-fg.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/multiple-lifetimes/ret-impl-trait-one.rs (renamed from src/test/ui/async-await/multiple-lifetimes/ret-impl-trait-one.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/multiple-lifetimes/ret-impl-trait-one.stderr (renamed from src/test/ui/async-await/multiple-lifetimes/ret-impl-trait-one.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/multiple-lifetimes/ret-ref.rs (renamed from src/test/ui/async-await/multiple-lifetimes/ret-ref.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/multiple-lifetimes/ret-ref.stderr (renamed from src/test/ui/async-await/multiple-lifetimes/ret-ref.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/multiple-lifetimes/variance.rs (renamed from src/test/ui/async-await/multiple-lifetimes/variance.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/mutually-recursive-async-impl-trait-type.rs (renamed from src/test/ui/async-await/mutually-recursive-async-impl-trait-type.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/mutually-recursive-async-impl-trait-type.stderr (renamed from src/test/ui/async-await/mutually-recursive-async-impl-trait-type.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/nested-in-impl.rs (renamed from src/test/ui/async-await/nested-in-impl.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/no-async-const.rs (renamed from src/test/ui/async-await/no-async-const.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/no-async-const.stderr (renamed from src/test/ui/async-await/no-async-const.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/no-const-async.rs (renamed from src/test/ui/async-await/no-const-async.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/no-const-async.stderr (renamed from src/test/ui/async-await/no-const-async.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/no-move-across-await-struct.rs (renamed from src/test/ui/async-await/no-move-across-await-struct.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/no-move-across-await-struct.stderr (renamed from src/test/ui/async-await/no-move-across-await-struct.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/no-move-across-await-tuple.rs (renamed from src/test/ui/async-await/no-move-across-await-tuple.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/no-move-across-await-tuple.stderr (renamed from src/test/ui/async-await/no-move-across-await-tuple.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/no-non-guaranteed-initialization.rs (renamed from src/test/ui/async-await/no-non-guaranteed-initialization.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/no-non-guaranteed-initialization.stderr (renamed from src/test/ui/async-await/no-non-guaranteed-initialization.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/no-params-non-move-async-closure.rs (renamed from src/test/ui/async-await/no-params-non-move-async-closure.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/no-params-non-move-async-closure.stderr (renamed from src/test/ui/async-await/no-params-non-move-async-closure.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/no-std.rs (renamed from src/test/ui/async-await/no-std.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/no-unsafe-async.rs (renamed from src/test/ui/async-await/no-unsafe-async.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/no-unsafe-async.stderr (renamed from src/test/ui/async-await/no-unsafe-async.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/non-trivial-drop.rs (renamed from src/test/ui/async-await/non-trivial-drop.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/partial-drop-partial-reinit.drop_tracking.stderr (renamed from src/test/ui/async-await/partial-drop-partial-reinit.drop_tracking.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/partial-drop-partial-reinit.no_drop_tracking.stderr (renamed from src/test/ui/async-await/partial-drop-partial-reinit.no_drop_tracking.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/partial-drop-partial-reinit.rs (renamed from src/test/ui/async-await/partial-drop-partial-reinit.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/partial-initialization-across-await.rs (renamed from src/test/ui/async-await/partial-initialization-across-await.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/partial-initialization-across-await.stderr (renamed from src/test/ui/async-await/partial-initialization-across-await.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/pin-needed-to-poll-2.rs (renamed from src/test/ui/async-await/pin-needed-to-poll-2.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/pin-needed-to-poll-2.stderr (renamed from src/test/ui/async-await/pin-needed-to-poll-2.stderr) | 3 | ||||
-rw-r--r-- | tests/ui/async-await/pin-needed-to-poll.rs (renamed from src/test/ui/async-await/pin-needed-to-poll.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/pin-needed-to-poll.stderr | 20 | ||||
-rw-r--r-- | tests/ui/async-await/proper-span-for-type-error.fixed (renamed from src/test/ui/async-await/proper-span-for-type-error.fixed) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/proper-span-for-type-error.rs (renamed from src/test/ui/async-await/proper-span-for-type-error.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/proper-span-for-type-error.stderr (renamed from src/test/ui/async-await/proper-span-for-type-error.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/recursive-async-impl-trait-type.rs (renamed from src/test/ui/async-await/recursive-async-impl-trait-type.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/recursive-async-impl-trait-type.stderr (renamed from src/test/ui/async-await/recursive-async-impl-trait-type.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/repeat_count_const_in_async_fn.rs (renamed from src/test/ui/async-await/repeat_count_const_in_async_fn.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/return-ty-raw-ptr-coercion.rs (renamed from src/test/ui/async-await/return-ty-raw-ptr-coercion.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/return-ty-unsize-coercion.rs (renamed from src/test/ui/async-await/return-ty-unsize-coercion.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/suggest-missing-await-closure.fixed (renamed from src/test/ui/async-await/suggest-missing-await-closure.fixed) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/suggest-missing-await-closure.rs (renamed from src/test/ui/async-await/suggest-missing-await-closure.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/suggest-missing-await-closure.stderr (renamed from src/test/ui/async-await/suggest-missing-await-closure.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/suggest-missing-await.rs (renamed from src/test/ui/async-await/suggest-missing-await.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/suggest-missing-await.stderr (renamed from src/test/ui/async-await/suggest-missing-await.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/suggest-switching-edition-on-await-cargo.rs (renamed from src/test/ui/async-await/suggest-switching-edition-on-await-cargo.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/suggest-switching-edition-on-await-cargo.stderr (renamed from src/test/ui/async-await/suggest-switching-edition-on-await-cargo.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/suggest-switching-edition-on-await.rs (renamed from src/test/ui/async-await/suggest-switching-edition-on-await.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/suggest-switching-edition-on-await.stderr (renamed from src/test/ui/async-await/suggest-switching-edition-on-await.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/track-caller/async-block.rs | 9 | ||||
-rw-r--r-- | tests/ui/async-await/track-caller/async-block.stderr | 12 | ||||
-rw-r--r-- | tests/ui/async-await/track-caller/async-closure-gate.rs (renamed from src/test/ui/async-await/track-caller/async-closure-gate.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/track-caller/async-closure-gate.stderr (renamed from src/test/ui/async-await/track-caller/async-closure-gate.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/track-caller/issue-105134.rs (renamed from src/test/ui/async-await/track-caller/issue-105134.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/track-caller/panic-track-caller.nofeat.stderr (renamed from src/test/ui/async-await/track-caller/panic-track-caller.nofeat.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/track-caller/panic-track-caller.rs (renamed from src/test/ui/async-await/track-caller/panic-track-caller.rs) | 13 | ||||
-rw-r--r-- | tests/ui/async-await/try-on-option-in-async.rs (renamed from src/test/ui/async-await/try-on-option-in-async.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/try-on-option-in-async.stderr (renamed from src/test/ui/async-await/try-on-option-in-async.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/type-parameter-send.rs (renamed from src/test/ui/async-await/type-parameter-send.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/unnecessary-await.rs (renamed from src/test/ui/async-await/unnecessary-await.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/unnecessary-await.stderr (renamed from src/test/ui/async-await/unnecessary-await.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/unreachable-lint-1.rs (renamed from src/test/ui/async-await/unreachable-lint-1.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/unreachable-lint-1.stderr (renamed from src/test/ui/async-await/unreachable-lint-1.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/unreachable-lint.rs (renamed from src/test/ui/async-await/unreachable-lint.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/unresolved_type_param.rs (renamed from src/test/ui/async-await/unresolved_type_param.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/unresolved_type_param.stderr (renamed from src/test/ui/async-await/unresolved_type_param.stderr) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/unused-lifetime.rs (renamed from src/test/ui/async-await/unused-lifetime.rs) | 0 | ||||
-rw-r--r-- | tests/ui/async-await/unused-lifetime.stderr (renamed from src/test/ui/async-await/unused-lifetime.stderr) | 0 |
388 files changed, 693 insertions, 50 deletions
diff --git a/src/test/ui/async-await/argument-patterns.rs b/tests/ui/async-await/argument-patterns.rs index b9fc1a88c..b9fc1a88c 100644 --- a/src/test/ui/async-await/argument-patterns.rs +++ b/tests/ui/async-await/argument-patterns.rs diff --git a/src/test/ui/async-await/async-assoc-fn-anon-lifetimes.rs b/tests/ui/async-await/async-assoc-fn-anon-lifetimes.rs index 8e08b82b9..8e08b82b9 100644 --- a/src/test/ui/async-await/async-assoc-fn-anon-lifetimes.rs +++ b/tests/ui/async-await/async-assoc-fn-anon-lifetimes.rs diff --git a/src/test/ui/async-await/async-await-let-else.drop-tracking.stderr b/tests/ui/async-await/async-await-let-else.drop-tracking.stderr index 3be7f370d..fb83ca90a 100644 --- a/src/test/ui/async-await/async-await-let-else.drop-tracking.stderr +++ b/tests/ui/async-await/async-await-let-else.drop-tracking.stderr @@ -68,14 +68,10 @@ note: future is not `Send` as this value is used across an await --> $DIR/async-await-let-else.rs:33:28 | LL | (Rc::new(()), bar().await); - | ----------- ^^^^^^ await occurs here, with `Rc::new(())` maybe used later - | | + | ----------- ^^^^^^ - `Rc::new(())` is later dropped here + | | | + | | await occurs here, with `Rc::new(())` maybe used later | has type `Rc<()>` which is not `Send` -note: `Rc::new(())` is later dropped here - --> $DIR/async-await-let-else.rs:33:35 - | -LL | (Rc::new(()), bar().await); - | ^ note: required by a bound in `is_send` --> $DIR/async-await-let-else.rs:19:15 | diff --git a/src/test/ui/async-await/async-await-let-else.no-drop-tracking.stderr b/tests/ui/async-await/async-await-let-else.no-drop-tracking.stderr index 7f93563e2..d3c5e80a3 100644 --- a/src/test/ui/async-await/async-await-let-else.no-drop-tracking.stderr +++ b/tests/ui/async-await/async-await-let-else.no-drop-tracking.stderr @@ -53,14 +53,10 @@ note: future is not `Send` as this value is used across an await --> $DIR/async-await-let-else.rs:33:28 | LL | (Rc::new(()), bar().await); - | ----------- ^^^^^^ await occurs here, with `Rc::new(())` maybe used later - | | + | ----------- ^^^^^^ - `Rc::new(())` is later dropped here + | | | + | | await occurs here, with `Rc::new(())` maybe used later | has type `Rc<()>` which is not `Send` -note: `Rc::new(())` is later dropped here - --> $DIR/async-await-let-else.rs:33:35 - | -LL | (Rc::new(()), bar().await); - | ^ note: required by a bound in `is_send` --> $DIR/async-await-let-else.rs:19:15 | diff --git a/src/test/ui/async-await/async-await-let-else.rs b/tests/ui/async-await/async-await-let-else.rs index 3fb2142b9..3fb2142b9 100644 --- a/src/test/ui/async-await/async-await-let-else.rs +++ b/tests/ui/async-await/async-await-let-else.rs diff --git a/src/test/ui/async-await/async-await.rs b/tests/ui/async-await/async-await.rs index 9cabf16f8..9cabf16f8 100644 --- a/src/test/ui/async-await/async-await.rs +++ b/tests/ui/async-await/async-await.rs diff --git a/src/test/ui/async-await/async-block-control-flow-static-semantics.rs b/tests/ui/async-await/async-block-control-flow-static-semantics.rs index bc9d12793..bc9d12793 100644 --- a/src/test/ui/async-await/async-block-control-flow-static-semantics.rs +++ b/tests/ui/async-await/async-block-control-flow-static-semantics.rs diff --git a/src/test/ui/async-await/async-block-control-flow-static-semantics.stderr b/tests/ui/async-await/async-block-control-flow-static-semantics.stderr index c4487eb84..c4487eb84 100644 --- a/src/test/ui/async-await/async-block-control-flow-static-semantics.stderr +++ b/tests/ui/async-await/async-block-control-flow-static-semantics.stderr diff --git a/src/test/ui/async-await/async-borrowck-escaping-block-error.fixed b/tests/ui/async-await/async-borrowck-escaping-block-error.fixed index 605cfdfe7..605cfdfe7 100644 --- a/src/test/ui/async-await/async-borrowck-escaping-block-error.fixed +++ b/tests/ui/async-await/async-borrowck-escaping-block-error.fixed diff --git a/src/test/ui/async-await/async-borrowck-escaping-block-error.rs b/tests/ui/async-await/async-borrowck-escaping-block-error.rs index ec752c15f..ec752c15f 100644 --- a/src/test/ui/async-await/async-borrowck-escaping-block-error.rs +++ b/tests/ui/async-await/async-borrowck-escaping-block-error.rs diff --git a/src/test/ui/async-await/async-borrowck-escaping-block-error.stderr b/tests/ui/async-await/async-borrowck-escaping-block-error.stderr index 190c59e32..190c59e32 100644 --- a/src/test/ui/async-await/async-borrowck-escaping-block-error.stderr +++ b/tests/ui/async-await/async-borrowck-escaping-block-error.stderr diff --git a/src/test/ui/async-await/async-borrowck-escaping-closure-error.rs b/tests/ui/async-await/async-borrowck-escaping-closure-error.rs index e667b72ae..e667b72ae 100644 --- a/src/test/ui/async-await/async-borrowck-escaping-closure-error.rs +++ b/tests/ui/async-await/async-borrowck-escaping-closure-error.rs diff --git a/src/test/ui/async-await/async-borrowck-escaping-closure-error.stderr b/tests/ui/async-await/async-borrowck-escaping-closure-error.stderr index 10691aad0..10691aad0 100644 --- a/src/test/ui/async-await/async-borrowck-escaping-closure-error.stderr +++ b/tests/ui/async-await/async-borrowck-escaping-closure-error.stderr diff --git a/src/test/ui/async-await/async-closure-matches-expr.rs b/tests/ui/async-await/async-closure-matches-expr.rs index d82fbcdc5..d82fbcdc5 100644 --- a/src/test/ui/async-await/async-closure-matches-expr.rs +++ b/tests/ui/async-await/async-closure-matches-expr.rs diff --git a/src/test/ui/async-await/async-closure.rs b/tests/ui/async-await/async-closure.rs index 12d66b19e..12d66b19e 100644 --- a/src/test/ui/async-await/async-closure.rs +++ b/tests/ui/async-await/async-closure.rs diff --git a/src/test/ui/async-await/async-error-span.rs b/tests/ui/async-await/async-error-span.rs index 86d459bf0..86d459bf0 100644 --- a/src/test/ui/async-await/async-error-span.rs +++ b/tests/ui/async-await/async-error-span.rs diff --git a/src/test/ui/async-await/async-error-span.stderr b/tests/ui/async-await/async-error-span.stderr index 7d4447b6d..7d4447b6d 100644 --- a/src/test/ui/async-await/async-error-span.stderr +++ b/tests/ui/async-await/async-error-span.stderr diff --git a/src/test/ui/async-await/async-fn-elided-impl-lifetime-parameter.rs b/tests/ui/async-await/async-fn-elided-impl-lifetime-parameter.rs index 1c369fd74..1c369fd74 100644 --- a/src/test/ui/async-await/async-fn-elided-impl-lifetime-parameter.rs +++ b/tests/ui/async-await/async-fn-elided-impl-lifetime-parameter.rs diff --git a/src/test/ui/async-await/async-fn-nonsend.rs b/tests/ui/async-await/async-fn-nonsend.rs index d7f8d7ac5..d7f8d7ac5 100644 --- a/src/test/ui/async-await/async-fn-nonsend.rs +++ b/tests/ui/async-await/async-fn-nonsend.rs diff --git a/src/test/ui/async-await/async-fn-nonsend.stderr b/tests/ui/async-await/async-fn-nonsend.stderr index a7b872fe4..a7b872fe4 100644 --- a/src/test/ui/async-await/async-fn-nonsend.stderr +++ b/tests/ui/async-await/async-fn-nonsend.stderr diff --git a/src/test/ui/async-await/async-fn-path-elision.rs b/tests/ui/async-await/async-fn-path-elision.rs index 3f1f51c20..3f1f51c20 100644 --- a/src/test/ui/async-await/async-fn-path-elision.rs +++ b/tests/ui/async-await/async-fn-path-elision.rs diff --git a/src/test/ui/async-await/async-fn-path-elision.stderr b/tests/ui/async-await/async-fn-path-elision.stderr index 5e0c8c299..5e0c8c299 100644 --- a/src/test/ui/async-await/async-fn-path-elision.stderr +++ b/tests/ui/async-await/async-fn-path-elision.stderr diff --git a/src/test/ui/async-await/async-fn-send-uses-nonsend.rs b/tests/ui/async-await/async-fn-send-uses-nonsend.rs index 35d9cb155..35d9cb155 100644 --- a/src/test/ui/async-await/async-fn-send-uses-nonsend.rs +++ b/tests/ui/async-await/async-fn-send-uses-nonsend.rs diff --git a/src/test/ui/async-await/async-fn-size-moved-locals.rs b/tests/ui/async-await/async-fn-size-moved-locals.rs index 79b7239f3..79b7239f3 100644 --- a/src/test/ui/async-await/async-fn-size-moved-locals.rs +++ b/tests/ui/async-await/async-fn-size-moved-locals.rs diff --git a/src/test/ui/async-await/async-fn-size-uninit-locals.rs b/tests/ui/async-await/async-fn-size-uninit-locals.rs index 546172693..546172693 100644 --- a/src/test/ui/async-await/async-fn-size-uninit-locals.rs +++ b/tests/ui/async-await/async-fn-size-uninit-locals.rs diff --git a/src/test/ui/async-await/async-fn-size.rs b/tests/ui/async-await/async-fn-size.rs index 0c1f36364..0c1f36364 100644 --- a/src/test/ui/async-await/async-fn-size.rs +++ b/tests/ui/async-await/async-fn-size.rs diff --git a/tests/ui/async-await/async-is-unwindsafe.rs b/tests/ui/async-await/async-is-unwindsafe.rs new file mode 100644 index 000000000..56ed28472 --- /dev/null +++ b/tests/ui/async-await/async-is-unwindsafe.rs @@ -0,0 +1,30 @@ +// edition:2018 + +fn is_unwindsafe(_: impl std::panic::UnwindSafe) {} + +fn main() { + // A normal future created by an async block takes a `&mut Context<'_>` argument. + // That should not leak through to the whole async block. + is_unwindsafe(async { + async {}.await; // this needs an inner await point + }); + + is_unwindsafe(async { + //~^ ERROR the type `&mut Context<'_>` may not be safely transferred across an unwind boundary + use std::ptr::null; + use std::task::{Context, RawWaker, RawWakerVTable, Waker}; + let waker = unsafe { + Waker::from_raw(RawWaker::new( + null(), + &RawWakerVTable::new(|_| todo!(), |_| todo!(), |_| todo!(), |_| todo!()), + )) + }; + let mut cx = Context::from_waker(&waker); + let cx_ref = &mut cx; + + async {}.await; // this needs an inner await point + + // in this case, `&mut Context<'_>` is *truly* alive across an await point + drop(cx_ref); + }); +} diff --git a/tests/ui/async-await/async-is-unwindsafe.stderr b/tests/ui/async-await/async-is-unwindsafe.stderr new file mode 100644 index 000000000..d6404b30e --- /dev/null +++ b/tests/ui/async-await/async-is-unwindsafe.stderr @@ -0,0 +1,38 @@ +error[E0277]: the type `&mut Context<'_>` may not be safely transferred across an unwind boundary + --> $DIR/async-is-unwindsafe.rs:12:19 + | +LL | is_unwindsafe(async { + | ___________________^ +LL | | +LL | | use std::ptr::null; +LL | | use std::task::{Context, RawWaker, RawWakerVTable, Waker}; +... | +LL | | drop(cx_ref); +LL | | }); + | | ^ + | | | + | |_____`&mut Context<'_>` may not be safely transferred across an unwind boundary + | within this `[async block@$DIR/async-is-unwindsafe.rs:12:19: 29:6]` + | + = help: within `[async block@$DIR/async-is-unwindsafe.rs:12:19: 29:6]`, the trait `UnwindSafe` is not implemented for `&mut Context<'_>` + = note: `UnwindSafe` is implemented for `&std::task::Context<'_>`, but not for `&mut std::task::Context<'_>` +note: future does not implement `UnwindSafe` as this value is used across an await + --> $DIR/async-is-unwindsafe.rs:25:17 + | +LL | let cx_ref = &mut cx; + | ------ has type `&mut Context<'_>` which does not implement `UnwindSafe` +LL | +LL | async {}.await; // this needs an inner await point + | ^^^^^^ await occurs here, with `cx_ref` maybe used later +... +LL | }); + | - `cx_ref` is later dropped here +note: required by a bound in `is_unwindsafe` + --> $DIR/async-is-unwindsafe.rs:3:26 + | +LL | fn is_unwindsafe(_: impl std::panic::UnwindSafe) {} + | ^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `is_unwindsafe` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0277`. diff --git a/src/test/ui/async-await/async-matches-expr.rs b/tests/ui/async-await/async-matches-expr.rs index 299faa058..299faa058 100644 --- a/src/test/ui/async-await/async-matches-expr.rs +++ b/tests/ui/async-await/async-matches-expr.rs diff --git a/src/test/ui/async-await/async-trait-fn.rs b/tests/ui/async-await/async-trait-fn.rs index e2062e827..e2062e827 100644 --- a/src/test/ui/async-await/async-trait-fn.rs +++ b/tests/ui/async-await/async-trait-fn.rs diff --git a/src/test/ui/async-await/async-trait-fn.stderr b/tests/ui/async-await/async-trait-fn.stderr index afbe25cf7..afbe25cf7 100644 --- a/src/test/ui/async-await/async-trait-fn.stderr +++ b/tests/ui/async-await/async-trait-fn.stderr diff --git a/src/test/ui/async-await/async-unsafe-fn-call-in-safe.mir.stderr b/tests/ui/async-await/async-unsafe-fn-call-in-safe.mir.stderr index 2114fb59b..2114fb59b 100644 --- a/src/test/ui/async-await/async-unsafe-fn-call-in-safe.mir.stderr +++ b/tests/ui/async-await/async-unsafe-fn-call-in-safe.mir.stderr diff --git a/src/test/ui/async-await/async-unsafe-fn-call-in-safe.rs b/tests/ui/async-await/async-unsafe-fn-call-in-safe.rs index c941dc27a..c941dc27a 100644 --- a/src/test/ui/async-await/async-unsafe-fn-call-in-safe.rs +++ b/tests/ui/async-await/async-unsafe-fn-call-in-safe.rs diff --git a/src/test/ui/async-await/async-unsafe-fn-call-in-safe.thir.stderr b/tests/ui/async-await/async-unsafe-fn-call-in-safe.thir.stderr index 68d97d3fd..68d97d3fd 100644 --- a/src/test/ui/async-await/async-unsafe-fn-call-in-safe.thir.stderr +++ b/tests/ui/async-await/async-unsafe-fn-call-in-safe.thir.stderr diff --git a/src/test/ui/async-await/async-with-closure.rs b/tests/ui/async-await/async-with-closure.rs index 0b2255266..0b2255266 100644 --- a/src/test/ui/async-await/async-with-closure.rs +++ b/tests/ui/async-await/async-with-closure.rs diff --git a/src/test/ui/async-await/auxiliary/arc_wake.rs b/tests/ui/async-await/auxiliary/arc_wake.rs index c21886f26..c21886f26 100644 --- a/src/test/ui/async-await/auxiliary/arc_wake.rs +++ b/tests/ui/async-await/auxiliary/arc_wake.rs diff --git a/src/test/ui/async-await/auxiliary/issue-107036.rs b/tests/ui/async-await/auxiliary/issue-107036.rs index c3f6141b2..c3f6141b2 100644 --- a/src/test/ui/async-await/auxiliary/issue-107036.rs +++ b/tests/ui/async-await/auxiliary/issue-107036.rs diff --git a/src/test/ui/async-await/auxiliary/issue-72470-lib.rs b/tests/ui/async-await/auxiliary/issue-72470-lib.rs index 8383eba89..8383eba89 100644 --- a/src/test/ui/async-await/auxiliary/issue-72470-lib.rs +++ b/tests/ui/async-await/auxiliary/issue-72470-lib.rs diff --git a/src/test/ui/async-await/await-into-future.rs b/tests/ui/async-await/await-into-future.rs index 8bf1385b3..8bf1385b3 100644 --- a/src/test/ui/async-await/await-into-future.rs +++ b/tests/ui/async-await/await-into-future.rs diff --git a/src/test/ui/async-await/await-keyword/2015-edition-error-various-positions.rs b/tests/ui/async-await/await-keyword/2015-edition-error-various-positions.rs index 50c163999..50c163999 100644 --- a/src/test/ui/async-await/await-keyword/2015-edition-error-various-positions.rs +++ b/tests/ui/async-await/await-keyword/2015-edition-error-various-positions.rs diff --git a/src/test/ui/async-await/await-keyword/2015-edition-error-various-positions.stderr b/tests/ui/async-await/await-keyword/2015-edition-error-various-positions.stderr index d99967eb2..d99967eb2 100644 --- a/src/test/ui/async-await/await-keyword/2015-edition-error-various-positions.stderr +++ b/tests/ui/async-await/await-keyword/2015-edition-error-various-positions.stderr diff --git a/src/test/ui/async-await/await-keyword/2015-edition-warning.fixed b/tests/ui/async-await/await-keyword/2015-edition-warning.fixed index 117495e13..117495e13 100644 --- a/src/test/ui/async-await/await-keyword/2015-edition-warning.fixed +++ b/tests/ui/async-await/await-keyword/2015-edition-warning.fixed diff --git a/src/test/ui/async-await/await-keyword/2015-edition-warning.rs b/tests/ui/async-await/await-keyword/2015-edition-warning.rs index b3c64895c..b3c64895c 100644 --- a/src/test/ui/async-await/await-keyword/2015-edition-warning.rs +++ b/tests/ui/async-await/await-keyword/2015-edition-warning.rs diff --git a/src/test/ui/async-await/await-keyword/2015-edition-warning.stderr b/tests/ui/async-await/await-keyword/2015-edition-warning.stderr index bf5c4d8d6..bf5c4d8d6 100644 --- a/src/test/ui/async-await/await-keyword/2015-edition-warning.stderr +++ b/tests/ui/async-await/await-keyword/2015-edition-warning.stderr diff --git a/src/test/ui/async-await/await-keyword/2018-edition-error-in-non-macro-position.rs b/tests/ui/async-await/await-keyword/2018-edition-error-in-non-macro-position.rs index 9e78f7c51..9e78f7c51 100644 --- a/src/test/ui/async-await/await-keyword/2018-edition-error-in-non-macro-position.rs +++ b/tests/ui/async-await/await-keyword/2018-edition-error-in-non-macro-position.rs diff --git a/src/test/ui/async-await/await-keyword/2018-edition-error-in-non-macro-position.stderr b/tests/ui/async-await/await-keyword/2018-edition-error-in-non-macro-position.stderr index 6bd8f671d..6bd8f671d 100644 --- a/src/test/ui/async-await/await-keyword/2018-edition-error-in-non-macro-position.stderr +++ b/tests/ui/async-await/await-keyword/2018-edition-error-in-non-macro-position.stderr diff --git a/src/test/ui/async-await/await-keyword/2018-edition-error.rs b/tests/ui/async-await/await-keyword/2018-edition-error.rs index 7ce52259a..7ce52259a 100644 --- a/src/test/ui/async-await/await-keyword/2018-edition-error.rs +++ b/tests/ui/async-await/await-keyword/2018-edition-error.rs diff --git a/src/test/ui/async-await/await-keyword/2018-edition-error.stderr b/tests/ui/async-await/await-keyword/2018-edition-error.stderr index 34bfdfc71..34bfdfc71 100644 --- a/src/test/ui/async-await/await-keyword/2018-edition-error.stderr +++ b/tests/ui/async-await/await-keyword/2018-edition-error.stderr diff --git a/src/test/ui/async-await/await-keyword/incorrect-syntax-suggestions.rs b/tests/ui/async-await/await-keyword/incorrect-syntax-suggestions.rs index 554ac673d..554ac673d 100644 --- a/src/test/ui/async-await/await-keyword/incorrect-syntax-suggestions.rs +++ b/tests/ui/async-await/await-keyword/incorrect-syntax-suggestions.rs diff --git a/src/test/ui/async-await/await-keyword/incorrect-syntax-suggestions.stderr b/tests/ui/async-await/await-keyword/incorrect-syntax-suggestions.stderr index b30f28837..b30f28837 100644 --- a/src/test/ui/async-await/await-keyword/incorrect-syntax-suggestions.stderr +++ b/tests/ui/async-await/await-keyword/incorrect-syntax-suggestions.stderr diff --git a/src/test/ui/async-await/await-keyword/post_expansion_error.rs b/tests/ui/async-await/await-keyword/post_expansion_error.rs index b4c899b0d..b4c899b0d 100644 --- a/src/test/ui/async-await/await-keyword/post_expansion_error.rs +++ b/tests/ui/async-await/await-keyword/post_expansion_error.rs diff --git a/src/test/ui/async-await/await-keyword/post_expansion_error.stderr b/tests/ui/async-await/await-keyword/post_expansion_error.stderr index 0996c38b3..0996c38b3 100644 --- a/src/test/ui/async-await/await-keyword/post_expansion_error.stderr +++ b/tests/ui/async-await/await-keyword/post_expansion_error.stderr diff --git a/tests/ui/async-await/await-sequence.rs b/tests/ui/async-await/await-sequence.rs new file mode 100644 index 000000000..726c4284e --- /dev/null +++ b/tests/ui/async-await/await-sequence.rs @@ -0,0 +1,21 @@ +// edition:2021 +// compile-flags: -Z drop-tracking +// build-pass + +use std::collections::HashMap; + +fn main() { + let _ = real_main(); +} + +async fn nop() {} + +async fn real_main() { + nop().await; + nop().await; + nop().await; + nop().await; + + let mut map: HashMap<(), ()> = HashMap::new(); + map.insert((), nop().await); +} diff --git a/src/test/ui/async-await/await-unsize.rs b/tests/ui/async-await/await-unsize.rs index aa09d4bdf..aa09d4bdf 100644 --- a/src/test/ui/async-await/await-unsize.rs +++ b/tests/ui/async-await/await-unsize.rs diff --git a/src/test/ui/async-await/bound-normalization.rs b/tests/ui/async-await/bound-normalization.rs index 5d260682f..5d260682f 100644 --- a/src/test/ui/async-await/bound-normalization.rs +++ b/tests/ui/async-await/bound-normalization.rs diff --git a/src/test/ui/async-await/conditional-and-guaranteed-initialization.rs b/tests/ui/async-await/conditional-and-guaranteed-initialization.rs index 56f4cbbd1..56f4cbbd1 100644 --- a/src/test/ui/async-await/conditional-and-guaranteed-initialization.rs +++ b/tests/ui/async-await/conditional-and-guaranteed-initialization.rs diff --git a/src/test/ui/async-await/default-struct-update.rs b/tests/ui/async-await/default-struct-update.rs index 64fb6280d..64fb6280d 100644 --- a/src/test/ui/async-await/default-struct-update.rs +++ b/tests/ui/async-await/default-struct-update.rs diff --git a/src/test/ui/async-await/dont-print-desugared-async.rs b/tests/ui/async-await/dont-print-desugared-async.rs index 68341a24c..68341a24c 100644 --- a/src/test/ui/async-await/dont-print-desugared-async.rs +++ b/tests/ui/async-await/dont-print-desugared-async.rs diff --git a/src/test/ui/async-await/dont-print-desugared-async.stderr b/tests/ui/async-await/dont-print-desugared-async.stderr index d80467c7f..d80467c7f 100644 --- a/src/test/ui/async-await/dont-print-desugared-async.stderr +++ b/tests/ui/async-await/dont-print-desugared-async.stderr diff --git a/tests/ui/async-await/dont-suggest-await-on-method-return-mismatch.rs b/tests/ui/async-await/dont-suggest-await-on-method-return-mismatch.rs new file mode 100644 index 000000000..f2f87a908 --- /dev/null +++ b/tests/ui/async-await/dont-suggest-await-on-method-return-mismatch.rs @@ -0,0 +1,24 @@ +// edition:2021 + +// Test that we do not suggest `.await` when it doesn't make sense. + +struct A; + +impl A { + fn test(&self) -> i32 { + 1 + } +} + +async fn foo() -> A { + A +} + +async fn async_main() { + let x: u32 = foo().test(); + //~^ ERROR no method named `test` found for opaque type `impl Future<Output = A>` in the current scope +} + +fn main() { + let _ = async_main(); +} diff --git a/tests/ui/async-await/dont-suggest-await-on-method-return-mismatch.stderr b/tests/ui/async-await/dont-suggest-await-on-method-return-mismatch.stderr new file mode 100644 index 000000000..e65d9d0e5 --- /dev/null +++ b/tests/ui/async-await/dont-suggest-await-on-method-return-mismatch.stderr @@ -0,0 +1,9 @@ +error[E0599]: no method named `test` found for opaque type `impl Future<Output = A>` in the current scope + --> $DIR/dont-suggest-await-on-method-return-mismatch.rs:18:24 + | +LL | let x: u32 = foo().test(); + | ^^^^ method not found in `impl Future<Output = A>` + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0599`. diff --git a/src/test/ui/async-await/dont-suggest-missing-await.rs b/tests/ui/async-await/dont-suggest-missing-await.rs index a8e5b38ec..a8e5b38ec 100644 --- a/src/test/ui/async-await/dont-suggest-missing-await.rs +++ b/tests/ui/async-await/dont-suggest-missing-await.rs diff --git a/src/test/ui/async-await/dont-suggest-missing-await.stderr b/tests/ui/async-await/dont-suggest-missing-await.stderr index 627bf05bb..627bf05bb 100644 --- a/src/test/ui/async-await/dont-suggest-missing-await.stderr +++ b/tests/ui/async-await/dont-suggest-missing-await.stderr diff --git a/src/test/ui/async-await/drop-and-assign.rs b/tests/ui/async-await/drop-and-assign.rs index fa3f33036..fa3f33036 100644 --- a/src/test/ui/async-await/drop-and-assign.rs +++ b/tests/ui/async-await/drop-and-assign.rs diff --git a/src/test/ui/async-await/drop-order/auxiliary/arc_wake.rs b/tests/ui/async-await/drop-order/auxiliary/arc_wake.rs index c21886f26..c21886f26 100644 --- a/src/test/ui/async-await/drop-order/auxiliary/arc_wake.rs +++ b/tests/ui/async-await/drop-order/auxiliary/arc_wake.rs diff --git a/src/test/ui/async-await/drop-order/drop-order-for-async-fn-parameters-by-ref-binding.rs b/tests/ui/async-await/drop-order/drop-order-for-async-fn-parameters-by-ref-binding.rs index 9817d377a..9817d377a 100644 --- a/src/test/ui/async-await/drop-order/drop-order-for-async-fn-parameters-by-ref-binding.rs +++ b/tests/ui/async-await/drop-order/drop-order-for-async-fn-parameters-by-ref-binding.rs diff --git a/src/test/ui/async-await/drop-order/drop-order-for-async-fn-parameters.rs b/tests/ui/async-await/drop-order/drop-order-for-async-fn-parameters.rs index 6c10ead36..6c10ead36 100644 --- a/src/test/ui/async-await/drop-order/drop-order-for-async-fn-parameters.rs +++ b/tests/ui/async-await/drop-order/drop-order-for-async-fn-parameters.rs diff --git a/src/test/ui/async-await/drop-order/drop-order-for-locals-when-cancelled.rs b/tests/ui/async-await/drop-order/drop-order-for-locals-when-cancelled.rs index 15cc9fbc8..15cc9fbc8 100644 --- a/src/test/ui/async-await/drop-order/drop-order-for-locals-when-cancelled.rs +++ b/tests/ui/async-await/drop-order/drop-order-for-locals-when-cancelled.rs diff --git a/src/test/ui/async-await/drop-order/drop-order-for-temporary-in-tail-return-expr.rs b/tests/ui/async-await/drop-order/drop-order-for-temporary-in-tail-return-expr.rs index edfecb910..edfecb910 100644 --- a/src/test/ui/async-await/drop-order/drop-order-for-temporary-in-tail-return-expr.rs +++ b/tests/ui/async-await/drop-order/drop-order-for-temporary-in-tail-return-expr.rs diff --git a/src/test/ui/async-await/drop-order/drop-order-locals-are-hidden.rs b/tests/ui/async-await/drop-order/drop-order-locals-are-hidden.rs index 79dedb1ba..79dedb1ba 100644 --- a/src/test/ui/async-await/drop-order/drop-order-locals-are-hidden.rs +++ b/tests/ui/async-await/drop-order/drop-order-locals-are-hidden.rs diff --git a/src/test/ui/async-await/drop-order/drop-order-locals-are-hidden.stderr b/tests/ui/async-await/drop-order/drop-order-locals-are-hidden.stderr index aa04a613f..aa04a613f 100644 --- a/src/test/ui/async-await/drop-order/drop-order-locals-are-hidden.stderr +++ b/tests/ui/async-await/drop-order/drop-order-locals-are-hidden.stderr diff --git a/src/test/ui/async-await/drop-order/drop-order-when-cancelled.rs b/tests/ui/async-await/drop-order/drop-order-when-cancelled.rs index cfd68bc0d..cfd68bc0d 100644 --- a/src/test/ui/async-await/drop-order/drop-order-when-cancelled.rs +++ b/tests/ui/async-await/drop-order/drop-order-when-cancelled.rs diff --git a/src/test/ui/async-await/drop-track-bad-field-in-fru.rs b/tests/ui/async-await/drop-track-bad-field-in-fru.rs index 28ad77675..28ad77675 100644 --- a/src/test/ui/async-await/drop-track-bad-field-in-fru.rs +++ b/tests/ui/async-await/drop-track-bad-field-in-fru.rs diff --git a/src/test/ui/async-await/drop-track-bad-field-in-fru.stderr b/tests/ui/async-await/drop-track-bad-field-in-fru.stderr index 819b64ad7..819b64ad7 100644 --- a/src/test/ui/async-await/drop-track-bad-field-in-fru.stderr +++ b/tests/ui/async-await/drop-track-bad-field-in-fru.stderr diff --git a/src/test/ui/async-await/drop-track-field-assign-nonsend.rs b/tests/ui/async-await/drop-track-field-assign-nonsend.rs index b6c0fda15..b6c0fda15 100644 --- a/src/test/ui/async-await/drop-track-field-assign-nonsend.rs +++ b/tests/ui/async-await/drop-track-field-assign-nonsend.rs diff --git a/src/test/ui/async-await/drop-track-field-assign-nonsend.stderr b/tests/ui/async-await/drop-track-field-assign-nonsend.stderr index d95483c81..d95483c81 100644 --- a/src/test/ui/async-await/drop-track-field-assign-nonsend.stderr +++ b/tests/ui/async-await/drop-track-field-assign-nonsend.stderr diff --git a/src/test/ui/async-await/drop-track-field-assign.rs b/tests/ui/async-await/drop-track-field-assign.rs index 3a393cd16..3a393cd16 100644 --- a/src/test/ui/async-await/drop-track-field-assign.rs +++ b/tests/ui/async-await/drop-track-field-assign.rs diff --git a/src/test/ui/async-await/drop-tracking-unresolved-typeck-results.rs b/tests/ui/async-await/drop-tracking-unresolved-typeck-results.rs index 7f7294295..7f7294295 100644 --- a/src/test/ui/async-await/drop-tracking-unresolved-typeck-results.rs +++ b/tests/ui/async-await/drop-tracking-unresolved-typeck-results.rs diff --git a/src/test/ui/async-await/drop-tracking-unresolved-typeck-results.stderr b/tests/ui/async-await/drop-tracking-unresolved-typeck-results.stderr index aa9a22e9e..aa9a22e9e 100644 --- a/src/test/ui/async-await/drop-tracking-unresolved-typeck-results.stderr +++ b/tests/ui/async-await/drop-tracking-unresolved-typeck-results.stderr diff --git a/src/test/ui/async-await/edition-deny-async-fns-2015.rs b/tests/ui/async-await/edition-deny-async-fns-2015.rs index 6bd6d879a..6bd6d879a 100644 --- a/src/test/ui/async-await/edition-deny-async-fns-2015.rs +++ b/tests/ui/async-await/edition-deny-async-fns-2015.rs diff --git a/src/test/ui/async-await/edition-deny-async-fns-2015.stderr b/tests/ui/async-await/edition-deny-async-fns-2015.stderr index ba918eb28..ba918eb28 100644 --- a/src/test/ui/async-await/edition-deny-async-fns-2015.stderr +++ b/tests/ui/async-await/edition-deny-async-fns-2015.stderr diff --git a/src/test/ui/async-await/expansion-in-attrs.rs b/tests/ui/async-await/expansion-in-attrs.rs index af77c3463..af77c3463 100644 --- a/src/test/ui/async-await/expansion-in-attrs.rs +++ b/tests/ui/async-await/expansion-in-attrs.rs diff --git a/src/test/ui/async-await/feature-async-closure.rs b/tests/ui/async-await/feature-async-closure.rs index d07116b13..d07116b13 100644 --- a/src/test/ui/async-await/feature-async-closure.rs +++ b/tests/ui/async-await/feature-async-closure.rs diff --git a/src/test/ui/async-await/feature-async-closure.stderr b/tests/ui/async-await/feature-async-closure.stderr index 485a838b6..485a838b6 100644 --- a/src/test/ui/async-await/feature-async-closure.stderr +++ b/tests/ui/async-await/feature-async-closure.stderr diff --git a/src/test/ui/async-await/feature-gate-async_fn_in_trait.rs b/tests/ui/async-await/feature-gate-async_fn_in_trait.rs index 792f378cb..792f378cb 100644 --- a/src/test/ui/async-await/feature-gate-async_fn_in_trait.rs +++ b/tests/ui/async-await/feature-gate-async_fn_in_trait.rs diff --git a/src/test/ui/async-await/feature-gate-async_fn_in_trait.stderr b/tests/ui/async-await/feature-gate-async_fn_in_trait.stderr index 2a5fbd1ec..2a5fbd1ec 100644 --- a/src/test/ui/async-await/feature-gate-async_fn_in_trait.stderr +++ b/tests/ui/async-await/feature-gate-async_fn_in_trait.stderr diff --git a/src/test/ui/async-await/feature-self-return-type.rs b/tests/ui/async-await/feature-self-return-type.rs index 41f887430..41f887430 100644 --- a/src/test/ui/async-await/feature-self-return-type.rs +++ b/tests/ui/async-await/feature-self-return-type.rs diff --git a/src/test/ui/async-await/feature-self-return-type.stderr b/tests/ui/async-await/feature-self-return-type.stderr index 892468368..892468368 100644 --- a/src/test/ui/async-await/feature-self-return-type.stderr +++ b/tests/ui/async-await/feature-self-return-type.stderr diff --git a/src/test/ui/async-await/futures-api.rs b/tests/ui/async-await/futures-api.rs index a7da058de..a7da058de 100644 --- a/src/test/ui/async-await/futures-api.rs +++ b/tests/ui/async-await/futures-api.rs diff --git a/src/test/ui/async-await/generator-desc.rs b/tests/ui/async-await/generator-desc.rs index 500812016..500812016 100644 --- a/src/test/ui/async-await/generator-desc.rs +++ b/tests/ui/async-await/generator-desc.rs diff --git a/src/test/ui/async-await/generator-desc.stderr b/tests/ui/async-await/generator-desc.stderr index 1686153ac..963c6ba57 100644 --- a/src/test/ui/async-await/generator-desc.stderr +++ b/tests/ui/async-await/generator-desc.stderr @@ -12,9 +12,6 @@ LL | fun(async {}, async {}); found `async` block `[async block@$DIR/generator-desc.rs:10:19: 10:27]` note: function defined here --> $SRC_DIR/core/src/future/mod.rs:LL:COL - | -LL | pub const fn identity_future<O, Fut: Future<Output = O>>(f: Fut) -> Fut { - | ^^^^^^^^^^^^^^^ error[E0308]: mismatched types --> $DIR/generator-desc.rs:12:16 diff --git a/src/test/ui/async-await/generator-not-future.rs b/tests/ui/async-await/generator-not-future.rs index 37d7cfa6f..37d7cfa6f 100644 --- a/src/test/ui/async-await/generator-not-future.rs +++ b/tests/ui/async-await/generator-not-future.rs diff --git a/src/test/ui/async-await/generator-not-future.stderr b/tests/ui/async-await/generator-not-future.stderr index 1b81b461f..1b81b461f 100644 --- a/src/test/ui/async-await/generator-not-future.stderr +++ b/tests/ui/async-await/generator-not-future.stderr diff --git a/src/test/ui/async-await/generics-and-bounds.rs b/tests/ui/async-await/generics-and-bounds.rs index 963b19b34..963b19b34 100644 --- a/src/test/ui/async-await/generics-and-bounds.rs +++ b/tests/ui/async-await/generics-and-bounds.rs diff --git a/src/test/ui/async-await/in-trait/async-associated-types.rs b/tests/ui/async-await/in-trait/async-associated-types.rs index 974f5aaff..974f5aaff 100644 --- a/src/test/ui/async-await/in-trait/async-associated-types.rs +++ b/tests/ui/async-await/in-trait/async-associated-types.rs diff --git a/src/test/ui/async-await/in-trait/async-associated-types2.rs b/tests/ui/async-await/in-trait/async-associated-types2.rs index e546a0579..e546a0579 100644 --- a/src/test/ui/async-await/in-trait/async-associated-types2.rs +++ b/tests/ui/async-await/in-trait/async-associated-types2.rs diff --git a/src/test/ui/async-await/in-trait/async-example-desugared-boxed-in-trait.rs b/tests/ui/async-await/in-trait/async-example-desugared-boxed-in-trait.rs index 38ba29718..38ba29718 100644 --- a/src/test/ui/async-await/in-trait/async-example-desugared-boxed-in-trait.rs +++ b/tests/ui/async-await/in-trait/async-example-desugared-boxed-in-trait.rs diff --git a/src/test/ui/async-await/in-trait/async-example-desugared-boxed-in-trait.stderr b/tests/ui/async-await/in-trait/async-example-desugared-boxed-in-trait.stderr index 22d2928f2..13e722255 100644 --- a/src/test/ui/async-await/in-trait/async-example-desugared-boxed-in-trait.stderr +++ b/tests/ui/async-await/in-trait/async-example-desugared-boxed-in-trait.stderr @@ -9,8 +9,8 @@ note: type in trait | LL | fn foo(&self) -> Pin<Box<dyn Future<Output = i32> + '_>>; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - = note: expected fn pointer `fn(&i32) -> Pin<Box<dyn Future<Output = i32>>>` - found fn pointer `fn(&i32) -> impl Future<Output = i32>` + = note: expected signature `fn(&i32) -> Pin<Box<dyn Future<Output = i32>>>` + found signature `fn(&i32) -> impl Future<Output = i32>` error: aborting due to previous error diff --git a/tests/ui/async-await/in-trait/async-example-desugared-boxed.rs b/tests/ui/async-await/in-trait/async-example-desugared-boxed.rs new file mode 100644 index 000000000..1b1b3cffd --- /dev/null +++ b/tests/ui/async-await/in-trait/async-example-desugared-boxed.rs @@ -0,0 +1,21 @@ +// edition: 2021 + +#![feature(async_fn_in_trait)] +#![feature(return_position_impl_trait_in_trait)] +#![allow(incomplete_features)] + +use std::future::Future; +use std::pin::Pin; + +trait MyTrait { + async fn foo(&self) -> i32; +} + +impl MyTrait for i32 { + fn foo(&self) -> Pin<Box<dyn Future<Output = i32> + '_>> { + //~^ ERROR method `foo` should be async + Box::pin(async { *self }) + } +} + +fn main() {} diff --git a/tests/ui/async-await/in-trait/async-example-desugared-boxed.stderr b/tests/ui/async-await/in-trait/async-example-desugared-boxed.stderr new file mode 100644 index 000000000..60fa534a6 --- /dev/null +++ b/tests/ui/async-await/in-trait/async-example-desugared-boxed.stderr @@ -0,0 +1,11 @@ +error: method `foo` should be async because the method from the trait is async + --> $DIR/async-example-desugared-boxed.rs:15:5 + | +LL | async fn foo(&self) -> i32; + | --------------------------- required because the trait method is async +... +LL | fn foo(&self) -> Pin<Box<dyn Future<Output = i32> + '_>> { + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/tests/ui/async-await/in-trait/async-example-desugared-extra.rs b/tests/ui/async-await/in-trait/async-example-desugared-extra.rs new file mode 100644 index 000000000..81e1e59a3 --- /dev/null +++ b/tests/ui/async-await/in-trait/async-example-desugared-extra.rs @@ -0,0 +1,37 @@ +// check-pass +// edition: 2021 + +#![feature(async_fn_in_trait)] +#![feature(return_position_impl_trait_in_trait)] +#![allow(incomplete_features)] + +use std::future::Future; +use std::pin::Pin; +use std::task::Poll; + +trait MyTrait { + async fn foo(&self) -> i32; +} + +#[derive(Clone)] +struct MyFuture(i32); + +impl Future for MyFuture { + type Output = i32; + fn poll( + self: Pin<&mut Self>, + _: &mut std::task::Context<'_>, + ) -> Poll<<Self as Future>::Output> { + Poll::Ready(self.0) + } +} + +impl MyTrait for i32 { + // FIXME: this should eventually require `#[refine]` to compile, because it also provides + // `Clone`. + fn foo(&self) -> impl Future<Output = i32> + Clone { + MyFuture(*self) + } +} + +fn main() {} diff --git a/src/test/ui/async-await/in-trait/async-example-desugared-in-trait.rs b/tests/ui/async-await/in-trait/async-example-desugared-in-trait.rs index feeda719e..feeda719e 100644 --- a/src/test/ui/async-await/in-trait/async-example-desugared-in-trait.rs +++ b/tests/ui/async-await/in-trait/async-example-desugared-in-trait.rs diff --git a/tests/ui/async-await/in-trait/async-example-desugared-manual.rs b/tests/ui/async-await/in-trait/async-example-desugared-manual.rs new file mode 100644 index 000000000..71473e745 --- /dev/null +++ b/tests/ui/async-await/in-trait/async-example-desugared-manual.rs @@ -0,0 +1,29 @@ +// edition: 2021 + +#![feature(async_fn_in_trait)] +#![feature(return_position_impl_trait_in_trait)] +#![allow(incomplete_features)] + +use std::future::Future; +use std::task::Poll; + +trait MyTrait { + async fn foo(&self) -> i32; +} + +struct MyFuture; +impl Future for MyFuture { + type Output = i32; + fn poll(self: std::pin::Pin<&mut Self>, _: &mut std::task::Context<'_>) -> Poll<Self::Output> { + Poll::Ready(0) + } +} + +impl MyTrait for u32 { + fn foo(&self) -> MyFuture { + //~^ ERROR method `foo` should be async + MyFuture + } +} + +fn main() {} diff --git a/tests/ui/async-await/in-trait/async-example-desugared-manual.stderr b/tests/ui/async-await/in-trait/async-example-desugared-manual.stderr new file mode 100644 index 000000000..567a36a86 --- /dev/null +++ b/tests/ui/async-await/in-trait/async-example-desugared-manual.stderr @@ -0,0 +1,11 @@ +error: method `foo` should be async because the method from the trait is async + --> $DIR/async-example-desugared-manual.rs:23:5 + | +LL | async fn foo(&self) -> i32; + | --------------------------- required because the trait method is async +... +LL | fn foo(&self) -> MyFuture { + | ^^^^^^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/tests/ui/async-await/in-trait/async-example-desugared.rs b/tests/ui/async-await/in-trait/async-example-desugared.rs new file mode 100644 index 000000000..fb92ec786 --- /dev/null +++ b/tests/ui/async-await/in-trait/async-example-desugared.rs @@ -0,0 +1,20 @@ +// check-pass +// edition: 2021 + +#![feature(async_fn_in_trait)] +#![feature(return_position_impl_trait_in_trait)] +#![allow(incomplete_features)] + +use std::future::Future; + +trait MyTrait { + async fn foo(&self) -> i32; +} + +impl MyTrait for i32 { + fn foo(&self) -> impl Future<Output = i32> + '_ { + async { *self } + } +} + +fn main() {} diff --git a/src/test/ui/async-await/in-trait/async-example.rs b/tests/ui/async-await/in-trait/async-example.rs index abf94ef74..abf94ef74 100644 --- a/src/test/ui/async-await/in-trait/async-example.rs +++ b/tests/ui/async-await/in-trait/async-example.rs diff --git a/src/test/ui/async-await/in-trait/async-generics-and-bounds.rs b/tests/ui/async-await/in-trait/async-generics-and-bounds.rs index a73d55adf..a73d55adf 100644 --- a/src/test/ui/async-await/in-trait/async-generics-and-bounds.rs +++ b/tests/ui/async-await/in-trait/async-generics-and-bounds.rs diff --git a/src/test/ui/async-await/in-trait/async-generics-and-bounds.stderr b/tests/ui/async-await/in-trait/async-generics-and-bounds.stderr index f1f0d7e59..f1f0d7e59 100644 --- a/src/test/ui/async-await/in-trait/async-generics-and-bounds.stderr +++ b/tests/ui/async-await/in-trait/async-generics-and-bounds.stderr diff --git a/src/test/ui/async-await/in-trait/async-generics.rs b/tests/ui/async-await/in-trait/async-generics.rs index 67000e577..67000e577 100644 --- a/src/test/ui/async-await/in-trait/async-generics.rs +++ b/tests/ui/async-await/in-trait/async-generics.rs diff --git a/src/test/ui/async-await/in-trait/async-generics.stderr b/tests/ui/async-await/in-trait/async-generics.stderr index 2f0556456..2f0556456 100644 --- a/src/test/ui/async-await/in-trait/async-generics.stderr +++ b/tests/ui/async-await/in-trait/async-generics.stderr diff --git a/src/test/ui/async-await/in-trait/async-lifetimes-and-bounds.rs b/tests/ui/async-await/in-trait/async-lifetimes-and-bounds.rs index d5481d277..d5481d277 100644 --- a/src/test/ui/async-await/in-trait/async-lifetimes-and-bounds.rs +++ b/tests/ui/async-await/in-trait/async-lifetimes-and-bounds.rs diff --git a/src/test/ui/async-await/in-trait/async-lifetimes.rs b/tests/ui/async-await/in-trait/async-lifetimes.rs index f298e45d2..f298e45d2 100644 --- a/src/test/ui/async-await/in-trait/async-lifetimes.rs +++ b/tests/ui/async-await/in-trait/async-lifetimes.rs diff --git a/src/test/ui/async-await/in-trait/async-recursive-generic.rs b/tests/ui/async-await/in-trait/async-recursive-generic.rs index 6839abd38..6839abd38 100644 --- a/src/test/ui/async-await/in-trait/async-recursive-generic.rs +++ b/tests/ui/async-await/in-trait/async-recursive-generic.rs diff --git a/src/test/ui/async-await/in-trait/async-recursive-generic.stderr b/tests/ui/async-await/in-trait/async-recursive-generic.stderr index cab173bdd..cab173bdd 100644 --- a/src/test/ui/async-await/in-trait/async-recursive-generic.stderr +++ b/tests/ui/async-await/in-trait/async-recursive-generic.stderr diff --git a/src/test/ui/async-await/in-trait/async-recursive.rs b/tests/ui/async-await/in-trait/async-recursive.rs index 61119f809..61119f809 100644 --- a/src/test/ui/async-await/in-trait/async-recursive.rs +++ b/tests/ui/async-await/in-trait/async-recursive.rs diff --git a/src/test/ui/async-await/in-trait/async-recursive.stderr b/tests/ui/async-await/in-trait/async-recursive.stderr index 9feff37b3..9feff37b3 100644 --- a/src/test/ui/async-await/in-trait/async-recursive.stderr +++ b/tests/ui/async-await/in-trait/async-recursive.stderr diff --git a/tests/ui/async-await/in-trait/bad-signatures.rs b/tests/ui/async-await/in-trait/bad-signatures.rs new file mode 100644 index 000000000..b86f1d1c1 --- /dev/null +++ b/tests/ui/async-await/in-trait/bad-signatures.rs @@ -0,0 +1,16 @@ +// edition:2021 + +#![feature(async_fn_in_trait)] +//~^ WARN the feature `async_fn_in_trait` is incomplete + +trait MyTrait { + async fn bar(&abc self); + //~^ ERROR expected identifier, found keyword `self` + //~| ERROR expected one of `:`, `@`, or `|`, found keyword `self` +} + +impl MyTrait for () { + async fn bar(&self) {} +} + +fn main() {} diff --git a/tests/ui/async-await/in-trait/bad-signatures.stderr b/tests/ui/async-await/in-trait/bad-signatures.stderr new file mode 100644 index 000000000..e0ba7b53e --- /dev/null +++ b/tests/ui/async-await/in-trait/bad-signatures.stderr @@ -0,0 +1,26 @@ +error: expected identifier, found keyword `self` + --> $DIR/bad-signatures.rs:7:23 + | +LL | async fn bar(&abc self); + | ^^^^ expected identifier, found keyword + +error: expected one of `:`, `@`, or `|`, found keyword `self` + --> $DIR/bad-signatures.rs:7:23 + | +LL | async fn bar(&abc self); + | -----^^^^ + | | | + | | expected one of `:`, `@`, or `|` + | help: declare the type after the parameter binding: `<identifier>: <type>` + +warning: the feature `async_fn_in_trait` is incomplete and may not be safe to use and/or cause compiler crashes + --> $DIR/bad-signatures.rs:3:12 + | +LL | #![feature(async_fn_in_trait)] + | ^^^^^^^^^^^^^^^^^ + | + = note: see issue #91611 <https://github.com/rust-lang/rust/issues/91611> for more information + = note: `#[warn(incomplete_features)]` on by default + +error: aborting due to 2 previous errors; 1 warning emitted + diff --git a/src/test/ui/async-await/in-trait/early-bound-1.rs b/tests/ui/async-await/in-trait/early-bound-1.rs index 6b3b14201..6b3b14201 100644 --- a/src/test/ui/async-await/in-trait/early-bound-1.rs +++ b/tests/ui/async-await/in-trait/early-bound-1.rs diff --git a/src/test/ui/async-await/in-trait/early-bound-2.rs b/tests/ui/async-await/in-trait/early-bound-2.rs index 270443229..270443229 100644 --- a/src/test/ui/async-await/in-trait/early-bound-2.rs +++ b/tests/ui/async-await/in-trait/early-bound-2.rs diff --git a/src/test/ui/async-await/in-trait/fn-not-async-err.rs b/tests/ui/async-await/in-trait/fn-not-async-err.rs index f94d32145..9598d53bc 100644 --- a/src/test/ui/async-await/in-trait/fn-not-async-err.rs +++ b/tests/ui/async-await/in-trait/fn-not-async-err.rs @@ -9,7 +9,7 @@ trait MyTrait { impl MyTrait for i32 { fn foo(&self) -> i32 { - //~^ ERROR: `i32` is not a future [E0277] + //~^ ERROR: method `foo` should be async *self } } diff --git a/tests/ui/async-await/in-trait/fn-not-async-err.stderr b/tests/ui/async-await/in-trait/fn-not-async-err.stderr new file mode 100644 index 000000000..579801d0f --- /dev/null +++ b/tests/ui/async-await/in-trait/fn-not-async-err.stderr @@ -0,0 +1,11 @@ +error: method `foo` should be async because the method from the trait is async + --> $DIR/fn-not-async-err.rs:11:5 + | +LL | async fn foo(&self) -> i32; + | --------------------------- required because the trait method is async +... +LL | fn foo(&self) -> i32 { + | ^^^^^^^^^^^^^^^^^^^^ + +error: aborting due to previous error + diff --git a/src/test/ui/async-await/in-trait/fn-not-async-err2.rs b/tests/ui/async-await/in-trait/fn-not-async-err2.rs index 594baa91a..2c4ed5535 100644 --- a/src/test/ui/async-await/in-trait/fn-not-async-err2.rs +++ b/tests/ui/async-await/in-trait/fn-not-async-err2.rs @@ -12,9 +12,7 @@ trait MyTrait { impl MyTrait for i32 { fn foo(&self) -> impl Future<Output = i32> { //~^ ERROR `impl Trait` only allowed in function and inherent method return types, not in `impl` method return [E0562] - async { - *self - } + async { *self } } } diff --git a/src/test/ui/async-await/in-trait/fn-not-async-err2.stderr b/tests/ui/async-await/in-trait/fn-not-async-err2.stderr index f591f1847..f591f1847 100644 --- a/src/test/ui/async-await/in-trait/fn-not-async-err2.stderr +++ b/tests/ui/async-await/in-trait/fn-not-async-err2.stderr diff --git a/src/test/ui/async-await/in-trait/implied-bounds.rs b/tests/ui/async-await/in-trait/implied-bounds.rs index 52bceb3cc..52bceb3cc 100644 --- a/src/test/ui/async-await/in-trait/implied-bounds.rs +++ b/tests/ui/async-await/in-trait/implied-bounds.rs diff --git a/src/test/ui/async-await/in-trait/issue-102138.rs b/tests/ui/async-await/in-trait/issue-102138.rs index f61b34ed9..f61b34ed9 100644 --- a/src/test/ui/async-await/in-trait/issue-102138.rs +++ b/tests/ui/async-await/in-trait/issue-102138.rs diff --git a/src/test/ui/async-await/in-trait/issue-102219.rs b/tests/ui/async-await/in-trait/issue-102219.rs index 9a35f6515..9a35f6515 100644 --- a/src/test/ui/async-await/in-trait/issue-102219.rs +++ b/tests/ui/async-await/in-trait/issue-102219.rs diff --git a/src/test/ui/async-await/in-trait/issue-102310.rs b/tests/ui/async-await/in-trait/issue-102310.rs index 49c3e9fee..49c3e9fee 100644 --- a/src/test/ui/async-await/in-trait/issue-102310.rs +++ b/tests/ui/async-await/in-trait/issue-102310.rs diff --git a/tests/ui/async-await/in-trait/issue-104678.rs b/tests/ui/async-await/in-trait/issue-104678.rs new file mode 100644 index 000000000..e396df4e5 --- /dev/null +++ b/tests/ui/async-await/in-trait/issue-104678.rs @@ -0,0 +1,31 @@ +// edition:2021 +// check-pass + +#![feature(async_fn_in_trait)] +#![allow(incomplete_features)] + +use std::future::Future; +pub trait Pool { + type Conn; + + async fn async_callback<'a, F: FnOnce(&'a Self::Conn) -> Fut, Fut: Future<Output = ()>>( + &'a self, + callback: F, + ) -> (); +} + +pub struct PoolImpl; +pub struct ConnImpl; + +impl Pool for PoolImpl { + type Conn = ConnImpl; + + async fn async_callback<'a, F: FnOnce(&'a Self::Conn) -> Fut, Fut: Future<Output = ()>>( + &'a self, + _callback: F, + ) -> () { + todo!() + } +} + +fn main() {} diff --git a/src/test/ui/async-await/in-trait/lifetime-mismatch.rs b/tests/ui/async-await/in-trait/lifetime-mismatch.rs index 45ede193c..45ede193c 100644 --- a/src/test/ui/async-await/in-trait/lifetime-mismatch.rs +++ b/tests/ui/async-await/in-trait/lifetime-mismatch.rs diff --git a/src/test/ui/async-await/in-trait/lifetime-mismatch.stderr b/tests/ui/async-await/in-trait/lifetime-mismatch.stderr index d87adcc78..d87adcc78 100644 --- a/src/test/ui/async-await/in-trait/lifetime-mismatch.stderr +++ b/tests/ui/async-await/in-trait/lifetime-mismatch.stderr diff --git a/tests/ui/async-await/in-trait/missing-send-bound.rs b/tests/ui/async-await/in-trait/missing-send-bound.rs new file mode 100644 index 000000000..78922b59b --- /dev/null +++ b/tests/ui/async-await/in-trait/missing-send-bound.rs @@ -0,0 +1,21 @@ +// edition:2021 + +#![feature(async_fn_in_trait)] +//~^ WARN the feature `async_fn_in_trait` is incomplete and may not be safe to use and/or cause compiler crashes + +trait Foo { + async fn bar(); +} + +async fn test<T: Foo>() { + T::bar().await; +} + +fn test2<T: Foo>() { + assert_is_send(test::<T>()); + //~^ ERROR future cannot be sent between threads safely +} + +fn assert_is_send(_: impl Send) {} + +fn main() {} diff --git a/tests/ui/async-await/in-trait/missing-send-bound.stderr b/tests/ui/async-await/in-trait/missing-send-bound.stderr new file mode 100644 index 000000000..5cedf3ddb --- /dev/null +++ b/tests/ui/async-await/in-trait/missing-send-bound.stderr @@ -0,0 +1,29 @@ +warning: the feature `async_fn_in_trait` is incomplete and may not be safe to use and/or cause compiler crashes + --> $DIR/missing-send-bound.rs:3:12 + | +LL | #![feature(async_fn_in_trait)] + | ^^^^^^^^^^^^^^^^^ + | + = note: see issue #91611 <https://github.com/rust-lang/rust/issues/91611> for more information + = note: `#[warn(incomplete_features)]` on by default + +error: future cannot be sent between threads safely + --> $DIR/missing-send-bound.rs:15:20 + | +LL | assert_is_send(test::<T>()); + | ^^^^^^^^^^^ future returned by `test` is not `Send` + | + = help: within `impl Future<Output = ()>`, the trait `Send` is not implemented for `impl Future<Output = ()>` +note: future is not `Send` as it awaits another future which is not `Send` + --> $DIR/missing-send-bound.rs:11:5 + | +LL | T::bar().await; + | ^^^^^^^^ await occurs here on type `impl Future<Output = ()>`, which is not `Send` +note: required by a bound in `assert_is_send` + --> $DIR/missing-send-bound.rs:19:27 + | +LL | fn assert_is_send(_: impl Send) {} + | ^^^^ required by this bound in `assert_is_send` + +error: aborting due to previous error; 1 warning emitted + diff --git a/src/test/ui/async-await/in-trait/nested-rpit.rs b/tests/ui/async-await/in-trait/nested-rpit.rs index 41d72ebb4..41d72ebb4 100644 --- a/src/test/ui/async-await/in-trait/nested-rpit.rs +++ b/tests/ui/async-await/in-trait/nested-rpit.rs diff --git a/src/test/ui/async-await/in-trait/object-safety.rs b/tests/ui/async-await/in-trait/object-safety.rs index a8bc35f7e..a8bc35f7e 100644 --- a/src/test/ui/async-await/in-trait/object-safety.rs +++ b/tests/ui/async-await/in-trait/object-safety.rs diff --git a/src/test/ui/async-await/in-trait/object-safety.stderr b/tests/ui/async-await/in-trait/object-safety.stderr index 0b318f71f..0b318f71f 100644 --- a/src/test/ui/async-await/in-trait/object-safety.stderr +++ b/tests/ui/async-await/in-trait/object-safety.stderr diff --git a/src/test/ui/async-await/in-trait/return-type-suggestion.rs b/tests/ui/async-await/in-trait/return-type-suggestion.rs index 3446761d1..3446761d1 100644 --- a/src/test/ui/async-await/in-trait/return-type-suggestion.rs +++ b/tests/ui/async-await/in-trait/return-type-suggestion.rs diff --git a/src/test/ui/async-await/in-trait/return-type-suggestion.stderr b/tests/ui/async-await/in-trait/return-type-suggestion.stderr index 5a9b15e54..5a9b15e54 100644 --- a/src/test/ui/async-await/in-trait/return-type-suggestion.stderr +++ b/tests/ui/async-await/in-trait/return-type-suggestion.stderr diff --git a/src/test/ui/async-await/incorrect-move-async-order-issue-79694.fixed b/tests/ui/async-await/incorrect-move-async-order-issue-79694.fixed index 055800d23..055800d23 100644 --- a/src/test/ui/async-await/incorrect-move-async-order-issue-79694.fixed +++ b/tests/ui/async-await/incorrect-move-async-order-issue-79694.fixed diff --git a/src/test/ui/async-await/incorrect-move-async-order-issue-79694.rs b/tests/ui/async-await/incorrect-move-async-order-issue-79694.rs index e8be16516..e8be16516 100644 --- a/src/test/ui/async-await/incorrect-move-async-order-issue-79694.rs +++ b/tests/ui/async-await/incorrect-move-async-order-issue-79694.rs diff --git a/src/test/ui/async-await/incorrect-move-async-order-issue-79694.stderr b/tests/ui/async-await/incorrect-move-async-order-issue-79694.stderr index 5367b986d..5367b986d 100644 --- a/src/test/ui/async-await/incorrect-move-async-order-issue-79694.stderr +++ b/tests/ui/async-await/incorrect-move-async-order-issue-79694.stderr diff --git a/src/test/ui/async-await/interior-with-const-generic-expr.rs b/tests/ui/async-await/interior-with-const-generic-expr.rs index 86ba7582d..86ba7582d 100644 --- a/src/test/ui/async-await/interior-with-const-generic-expr.rs +++ b/tests/ui/async-await/interior-with-const-generic-expr.rs diff --git a/src/test/ui/async-await/issue-101715.rs b/tests/ui/async-await/issue-101715.rs index 1be5d0248..1be5d0248 100644 --- a/src/test/ui/async-await/issue-101715.rs +++ b/tests/ui/async-await/issue-101715.rs diff --git a/src/test/ui/async-await/issue-101715.stderr b/tests/ui/async-await/issue-101715.stderr index a0e8d2a89..a0e8d2a89 100644 --- a/src/test/ui/async-await/issue-101715.stderr +++ b/tests/ui/async-await/issue-101715.stderr diff --git a/tests/ui/async-await/issue-105501.rs b/tests/ui/async-await/issue-105501.rs new file mode 100644 index 000000000..f30d2a9d8 --- /dev/null +++ b/tests/ui/async-await/issue-105501.rs @@ -0,0 +1,165 @@ +// check-pass +// edition:2018 + +// This is a regression test for https://github.com/rust-lang/rust/issues/105501. +// It was minified from the published `msf-ice:0.2.1` crate which failed in a crater run. +// A faulty compiler was triggering a `higher-ranked lifetime error`: +// +// > could not prove `[async block@...]: Send` + +use mini_futures::Stream; + +fn is_send(_: impl Send) {} + +pub fn main() { + let fut = async { + let mut stream = mini_futures::iter([()]) + .then(|_| async {}) + .map(|_| async { None }) + .buffered() + .filter_map(std::future::ready); + + stream.next().await + }; + + is_send(async move { + let _: Option<()> = fut.await; + }); +} + +// this is a simplified subset of `futures::StreamExt` and related types +mod mini_futures { + use std::future::Future; + use std::pin::Pin; + use std::task::{Context, Poll}; + + pub fn iter<I>(_: I) -> Iter<I::IntoIter> + where + I: IntoIterator, + { + todo!() + } + + pub trait Stream { + type Item; + + fn then<Fut, F>(self, _: F) -> Then<Self, Fut, F> + where + F: FnMut(Self::Item) -> Fut, + Fut: Future, + Self: Sized, + { + todo!() + } + + fn map<T, F>(self, _: F) -> Map<Self, F> + where + F: FnMut(Self::Item) -> T, + Self: Sized, + { + todo!() + } + + fn buffered(self) -> Buffered<Self> + where + Self::Item: Future, + Self: Sized, + { + todo!() + } + + fn filter_map<Fut, T, F>(self, _: F) -> FilterMap<Self, Fut, F> + where + F: FnMut(Self::Item) -> Fut, + Fut: Future<Output = Option<T>>, + Self: Sized, + { + todo!() + } + + fn next(&mut self) -> Next<'_, Self> { + todo!() + } + } + + pub struct Iter<I> { + __: I, + } + impl<I> Stream for Iter<I> + where + I: Iterator, + { + type Item = I::Item; + } + + pub struct Then<St, Fut, F> { + __: (St, Fut, F), + } + impl<St, Fut, F> Stream for Then<St, Fut, F> + where + St: Stream, + F: FnMut(St::Item) -> Fut, + Fut: Future, + { + type Item = Fut::Output; + } + + pub struct Map<St, F> { + __: (St, F), + } + impl<St, F> Stream for Map<St, F> + where + St: Stream, + F: FnMut1<St::Item>, + { + type Item = F::Output; + } + + pub trait FnMut1<A> { + type Output; + } + impl<T, A, R> FnMut1<A> for T + where + T: FnMut(A) -> R, + { + type Output = R; + } + + pub struct Buffered<St> + where + St: Stream, + St::Item: Future, + { + __: (St, St::Item), + } + impl<St> Stream for Buffered<St> + where + St: Stream, + St::Item: Future, + { + type Item = <St::Item as Future>::Output; + } + + pub struct FilterMap<St, Fut, F> { + __: (St, Fut, F), + } + impl<St, Fut, F, T> Stream for FilterMap<St, Fut, F> + where + St: Stream, + F: FnMut1<St::Item, Output = Fut>, + Fut: Future<Output = Option<T>>, + { + type Item = T; + } + + pub struct Next<'a, St: ?Sized> { + __: &'a mut St, + } + impl<St: ?Sized + Stream> Future for Next<'_, St> { + type Output = Option<St::Item>; + + fn poll(self: Pin<&mut Self>, _: &mut Context<'_>) -> Poll<Self::Output> { + todo!() + } + } +} diff --git a/src/test/ui/async-await/issue-107036.rs b/tests/ui/async-await/issue-107036.rs index 6a22de2c9..6a22de2c9 100644 --- a/src/test/ui/async-await/issue-107036.rs +++ b/tests/ui/async-await/issue-107036.rs diff --git a/src/test/ui/async-await/issue-54239-private-type-triggers-lint.rs b/tests/ui/async-await/issue-54239-private-type-triggers-lint.rs index 16cf7ad52..16cf7ad52 100644 --- a/src/test/ui/async-await/issue-54239-private-type-triggers-lint.rs +++ b/tests/ui/async-await/issue-54239-private-type-triggers-lint.rs diff --git a/src/test/ui/async-await/issue-60709.rs b/tests/ui/async-await/issue-60709.rs index 61f6ed1b7..61f6ed1b7 100644 --- a/src/test/ui/async-await/issue-60709.rs +++ b/tests/ui/async-await/issue-60709.rs diff --git a/src/test/ui/async-await/issue-61076.rs b/tests/ui/async-await/issue-61076.rs index 750fad839..750fad839 100644 --- a/src/test/ui/async-await/issue-61076.rs +++ b/tests/ui/async-await/issue-61076.rs diff --git a/src/test/ui/async-await/issue-61076.stderr b/tests/ui/async-await/issue-61076.stderr index 33839ea59..33839ea59 100644 --- a/src/test/ui/async-await/issue-61076.stderr +++ b/tests/ui/async-await/issue-61076.stderr diff --git a/src/test/ui/async-await/issue-61452.rs b/tests/ui/async-await/issue-61452.rs index 9381251ad..9381251ad 100644 --- a/src/test/ui/async-await/issue-61452.rs +++ b/tests/ui/async-await/issue-61452.rs diff --git a/src/test/ui/async-await/issue-61452.stderr b/tests/ui/async-await/issue-61452.stderr index 2d3bb48e0..bf5044328 100644 --- a/src/test/ui/async-await/issue-61452.stderr +++ b/tests/ui/async-await/issue-61452.stderr @@ -1,10 +1,13 @@ error[E0596]: cannot borrow `x` as mutable, as it is not declared as mutable --> $DIR/issue-61452.rs:4:5 | -LL | pub async fn f(x: Option<usize>) { - | - help: consider changing this to be mutable: `mut x` LL | x.take(); | ^^^^^^^^ cannot borrow as mutable + | +help: consider changing this to be mutable + | +LL | pub async fn f(mut x: Option<usize>) { + | +++ error[E0384]: cannot assign twice to immutable variable `x` --> $DIR/issue-61452.rs:9:5 diff --git a/src/test/ui/async-await/issue-61793.rs b/tests/ui/async-await/issue-61793.rs index 9180e1d81..9180e1d81 100644 --- a/src/test/ui/async-await/issue-61793.rs +++ b/tests/ui/async-await/issue-61793.rs diff --git a/src/test/ui/async-await/issue-61949-self-return-type.rs b/tests/ui/async-await/issue-61949-self-return-type.rs index d73dbc6e8..d73dbc6e8 100644 --- a/src/test/ui/async-await/issue-61949-self-return-type.rs +++ b/tests/ui/async-await/issue-61949-self-return-type.rs diff --git a/src/test/ui/async-await/issue-61949-self-return-type.stderr b/tests/ui/async-await/issue-61949-self-return-type.stderr index 638b197bc..638b197bc 100644 --- a/src/test/ui/async-await/issue-61949-self-return-type.stderr +++ b/tests/ui/async-await/issue-61949-self-return-type.stderr diff --git a/src/test/ui/async-await/issue-62658.rs b/tests/ui/async-await/issue-62658.rs index d0af01e0c..d0af01e0c 100644 --- a/src/test/ui/async-await/issue-62658.rs +++ b/tests/ui/async-await/issue-62658.rs diff --git a/src/test/ui/async-await/issue-63832-await-short-temporary-lifetime-1.rs b/tests/ui/async-await/issue-63832-await-short-temporary-lifetime-1.rs index 54059b29f..54059b29f 100644 --- a/src/test/ui/async-await/issue-63832-await-short-temporary-lifetime-1.rs +++ b/tests/ui/async-await/issue-63832-await-short-temporary-lifetime-1.rs diff --git a/src/test/ui/async-await/issue-63832-await-short-temporary-lifetime.rs b/tests/ui/async-await/issue-63832-await-short-temporary-lifetime.rs index c5ea2b821..c5ea2b821 100644 --- a/src/test/ui/async-await/issue-63832-await-short-temporary-lifetime.rs +++ b/tests/ui/async-await/issue-63832-await-short-temporary-lifetime.rs diff --git a/src/test/ui/async-await/issue-64130-1-sync.rs b/tests/ui/async-await/issue-64130-1-sync.rs index 1714cec52..1714cec52 100644 --- a/src/test/ui/async-await/issue-64130-1-sync.rs +++ b/tests/ui/async-await/issue-64130-1-sync.rs diff --git a/src/test/ui/async-await/issue-64130-1-sync.stderr b/tests/ui/async-await/issue-64130-1-sync.stderr index e205de473..e205de473 100644 --- a/src/test/ui/async-await/issue-64130-1-sync.stderr +++ b/tests/ui/async-await/issue-64130-1-sync.stderr diff --git a/src/test/ui/async-await/issue-64130-2-send.rs b/tests/ui/async-await/issue-64130-2-send.rs index 7a6e5952c..7a6e5952c 100644 --- a/src/test/ui/async-await/issue-64130-2-send.rs +++ b/tests/ui/async-await/issue-64130-2-send.rs diff --git a/src/test/ui/async-await/issue-64130-2-send.stderr b/tests/ui/async-await/issue-64130-2-send.stderr index 2225000e2..2225000e2 100644 --- a/src/test/ui/async-await/issue-64130-2-send.stderr +++ b/tests/ui/async-await/issue-64130-2-send.stderr diff --git a/src/test/ui/async-await/issue-64130-3-other.rs b/tests/ui/async-await/issue-64130-3-other.rs index 630fb2c41..630fb2c41 100644 --- a/src/test/ui/async-await/issue-64130-3-other.rs +++ b/tests/ui/async-await/issue-64130-3-other.rs diff --git a/src/test/ui/async-await/issue-64130-3-other.stderr b/tests/ui/async-await/issue-64130-3-other.stderr index 17867a6a3..17867a6a3 100644 --- a/src/test/ui/async-await/issue-64130-3-other.stderr +++ b/tests/ui/async-await/issue-64130-3-other.stderr diff --git a/src/test/ui/async-await/issue-64130-4-async-move.drop-tracking.stderr b/tests/ui/async-await/issue-64130-4-async-move.drop-tracking.stderr index f609e3636..f609e3636 100644 --- a/src/test/ui/async-await/issue-64130-4-async-move.drop-tracking.stderr +++ b/tests/ui/async-await/issue-64130-4-async-move.drop-tracking.stderr diff --git a/src/test/ui/async-await/issue-64130-4-async-move.no_drop_tracking.stderr b/tests/ui/async-await/issue-64130-4-async-move.no_drop_tracking.stderr index f609e3636..f609e3636 100644 --- a/src/test/ui/async-await/issue-64130-4-async-move.no_drop_tracking.stderr +++ b/tests/ui/async-await/issue-64130-4-async-move.no_drop_tracking.stderr diff --git a/src/test/ui/async-await/issue-64130-4-async-move.rs b/tests/ui/async-await/issue-64130-4-async-move.rs index a38428fc0..a38428fc0 100644 --- a/src/test/ui/async-await/issue-64130-4-async-move.rs +++ b/tests/ui/async-await/issue-64130-4-async-move.rs diff --git a/src/test/ui/async-await/issue-64130-non-send-future-diags.rs b/tests/ui/async-await/issue-64130-non-send-future-diags.rs index b652d2391..b652d2391 100644 --- a/src/test/ui/async-await/issue-64130-non-send-future-diags.rs +++ b/tests/ui/async-await/issue-64130-non-send-future-diags.rs diff --git a/src/test/ui/async-await/issue-64130-non-send-future-diags.stderr b/tests/ui/async-await/issue-64130-non-send-future-diags.stderr index 1da80d98b..1da80d98b 100644 --- a/src/test/ui/async-await/issue-64130-non-send-future-diags.stderr +++ b/tests/ui/async-await/issue-64130-non-send-future-diags.stderr diff --git a/src/test/ui/async-await/issue-64391.rs b/tests/ui/async-await/issue-64391.rs index c6faad3aa..c6faad3aa 100644 --- a/src/test/ui/async-await/issue-64391.rs +++ b/tests/ui/async-await/issue-64391.rs diff --git a/src/test/ui/async-await/issue-66312.rs b/tests/ui/async-await/issue-66312.rs index 9224971ec..9224971ec 100644 --- a/src/test/ui/async-await/issue-66312.rs +++ b/tests/ui/async-await/issue-66312.rs diff --git a/src/test/ui/async-await/issue-66312.stderr b/tests/ui/async-await/issue-66312.stderr index 80d294a10..80d294a10 100644 --- a/src/test/ui/async-await/issue-66312.stderr +++ b/tests/ui/async-await/issue-66312.stderr diff --git a/src/test/ui/async-await/issue-66387-if-without-else.rs b/tests/ui/async-await/issue-66387-if-without-else.rs index 3ab8220b4..3ab8220b4 100644 --- a/src/test/ui/async-await/issue-66387-if-without-else.rs +++ b/tests/ui/async-await/issue-66387-if-without-else.rs diff --git a/src/test/ui/async-await/issue-66387-if-without-else.stderr b/tests/ui/async-await/issue-66387-if-without-else.stderr index 8155fcb56..8155fcb56 100644 --- a/src/test/ui/async-await/issue-66387-if-without-else.stderr +++ b/tests/ui/async-await/issue-66387-if-without-else.stderr diff --git a/src/test/ui/async-await/issue-67252-unnamed-future.rs b/tests/ui/async-await/issue-67252-unnamed-future.rs index 1a7ff6133..1a7ff6133 100644 --- a/src/test/ui/async-await/issue-67252-unnamed-future.rs +++ b/tests/ui/async-await/issue-67252-unnamed-future.rs diff --git a/src/test/ui/async-await/issue-67252-unnamed-future.stderr b/tests/ui/async-await/issue-67252-unnamed-future.stderr index fcba4410b..fcba4410b 100644 --- a/src/test/ui/async-await/issue-67252-unnamed-future.stderr +++ b/tests/ui/async-await/issue-67252-unnamed-future.stderr diff --git a/src/test/ui/async-await/issue-67651.rs b/tests/ui/async-await/issue-67651.rs index bd96a3b70..bd96a3b70 100644 --- a/src/test/ui/async-await/issue-67651.rs +++ b/tests/ui/async-await/issue-67651.rs diff --git a/src/test/ui/async-await/issue-67651.stderr b/tests/ui/async-await/issue-67651.stderr index 89017f6cc..89017f6cc 100644 --- a/src/test/ui/async-await/issue-67651.stderr +++ b/tests/ui/async-await/issue-67651.stderr diff --git a/src/test/ui/async-await/issue-67765-async-diagnostic.rs b/tests/ui/async-await/issue-67765-async-diagnostic.rs index 5093916e7..5093916e7 100644 --- a/src/test/ui/async-await/issue-67765-async-diagnostic.rs +++ b/tests/ui/async-await/issue-67765-async-diagnostic.rs diff --git a/src/test/ui/async-await/issue-67765-async-diagnostic.stderr b/tests/ui/async-await/issue-67765-async-diagnostic.stderr index 492e06fbb..492e06fbb 100644 --- a/src/test/ui/async-await/issue-67765-async-diagnostic.stderr +++ b/tests/ui/async-await/issue-67765-async-diagnostic.stderr diff --git a/src/test/ui/async-await/issue-68112.drop_tracking.stderr b/tests/ui/async-await/issue-68112.drop_tracking.stderr index f2802698f..f2802698f 100644 --- a/src/test/ui/async-await/issue-68112.drop_tracking.stderr +++ b/tests/ui/async-await/issue-68112.drop_tracking.stderr diff --git a/src/test/ui/async-await/issue-68112.no_drop_tracking.stderr b/tests/ui/async-await/issue-68112.no_drop_tracking.stderr index 38eb85b30..38eb85b30 100644 --- a/src/test/ui/async-await/issue-68112.no_drop_tracking.stderr +++ b/tests/ui/async-await/issue-68112.no_drop_tracking.stderr diff --git a/src/test/ui/async-await/issue-68112.rs b/tests/ui/async-await/issue-68112.rs index 9c705137a..9c705137a 100644 --- a/src/test/ui/async-await/issue-68112.rs +++ b/tests/ui/async-await/issue-68112.rs diff --git a/src/test/ui/async-await/issue-68523-start.rs b/tests/ui/async-await/issue-68523-start.rs index 2ced88a16..2ced88a16 100644 --- a/src/test/ui/async-await/issue-68523-start.rs +++ b/tests/ui/async-await/issue-68523-start.rs diff --git a/src/test/ui/async-await/issue-68523-start.stderr b/tests/ui/async-await/issue-68523-start.stderr index 3a0a3b5de..3a0a3b5de 100644 --- a/src/test/ui/async-await/issue-68523-start.stderr +++ b/tests/ui/async-await/issue-68523-start.stderr diff --git a/src/test/ui/async-await/issue-68523.rs b/tests/ui/async-await/issue-68523.rs index 7a67661a0..7a67661a0 100644 --- a/src/test/ui/async-await/issue-68523.rs +++ b/tests/ui/async-await/issue-68523.rs diff --git a/src/test/ui/async-await/issue-68523.stderr b/tests/ui/async-await/issue-68523.stderr index dfdf078e3..dfdf078e3 100644 --- a/src/test/ui/async-await/issue-68523.stderr +++ b/tests/ui/async-await/issue-68523.stderr diff --git a/src/test/ui/async-await/issue-69446-fnmut-capture.rs b/tests/ui/async-await/issue-69446-fnmut-capture.rs index 842115538..842115538 100644 --- a/src/test/ui/async-await/issue-69446-fnmut-capture.rs +++ b/tests/ui/async-await/issue-69446-fnmut-capture.rs diff --git a/src/test/ui/async-await/issue-69446-fnmut-capture.stderr b/tests/ui/async-await/issue-69446-fnmut-capture.stderr index 3d2b0402b..3d2b0402b 100644 --- a/src/test/ui/async-await/issue-69446-fnmut-capture.stderr +++ b/tests/ui/async-await/issue-69446-fnmut-capture.stderr diff --git a/src/test/ui/async-await/issue-70594.rs b/tests/ui/async-await/issue-70594.rs index 9e7c5847b..9e7c5847b 100644 --- a/src/test/ui/async-await/issue-70594.rs +++ b/tests/ui/async-await/issue-70594.rs diff --git a/src/test/ui/async-await/issue-70594.stderr b/tests/ui/async-await/issue-70594.stderr index d3cf57d3b..d3cf57d3b 100644 --- a/src/test/ui/async-await/issue-70594.stderr +++ b/tests/ui/async-await/issue-70594.stderr diff --git a/src/test/ui/async-await/issue-70818.rs b/tests/ui/async-await/issue-70818.rs index 019c56eb2..019c56eb2 100644 --- a/src/test/ui/async-await/issue-70818.rs +++ b/tests/ui/async-await/issue-70818.rs diff --git a/src/test/ui/async-await/issue-70818.stderr b/tests/ui/async-await/issue-70818.stderr index 20109d4d1..20109d4d1 100644 --- a/src/test/ui/async-await/issue-70818.stderr +++ b/tests/ui/async-await/issue-70818.stderr diff --git a/src/test/ui/async-await/issue-70935-complex-spans.drop_tracking.stderr b/tests/ui/async-await/issue-70935-complex-spans.drop_tracking.stderr index 721234aa4..721234aa4 100644 --- a/src/test/ui/async-await/issue-70935-complex-spans.drop_tracking.stderr +++ b/tests/ui/async-await/issue-70935-complex-spans.drop_tracking.stderr diff --git a/src/test/ui/async-await/issue-70935-complex-spans.no_drop_tracking.stderr b/tests/ui/async-await/issue-70935-complex-spans.no_drop_tracking.stderr index 34b31198e..8036d82da 100644 --- a/src/test/ui/async-await/issue-70935-complex-spans.no_drop_tracking.stderr +++ b/tests/ui/async-await/issue-70935-complex-spans.no_drop_tracking.stderr @@ -12,14 +12,10 @@ LL | baz(|| async{ | _____________- LL | | foo(tx.clone()); LL | | }).await; - | | - ^^^^^^ await occurs here, with the value maybe used later - | |_________| + | | - ^^^^^^- the value is later dropped here + | | | | + | |_________| await occurs here, with the value maybe used later | has type `[closure@$DIR/issue-70935-complex-spans.rs:17:13: 17:15]` which is not `Send` -note: the value is later dropped here - --> $DIR/issue-70935-complex-spans.rs:19:17 - | -LL | }).await; - | ^ error: aborting due to previous error diff --git a/src/test/ui/async-await/issue-70935-complex-spans.rs b/tests/ui/async-await/issue-70935-complex-spans.rs index b6d17f93a..b6d17f93a 100644 --- a/src/test/ui/async-await/issue-70935-complex-spans.rs +++ b/tests/ui/async-await/issue-70935-complex-spans.rs diff --git a/src/test/ui/async-await/issue-71137.rs b/tests/ui/async-await/issue-71137.rs index 7695e0325..7695e0325 100644 --- a/src/test/ui/async-await/issue-71137.rs +++ b/tests/ui/async-await/issue-71137.rs diff --git a/src/test/ui/async-await/issue-71137.stderr b/tests/ui/async-await/issue-71137.stderr index eade6aa2d..eade6aa2d 100644 --- a/src/test/ui/async-await/issue-71137.stderr +++ b/tests/ui/async-await/issue-71137.stderr diff --git a/src/test/ui/async-await/issue-72442.rs b/tests/ui/async-await/issue-72442.rs index 2280154c7..2280154c7 100644 --- a/src/test/ui/async-await/issue-72442.rs +++ b/tests/ui/async-await/issue-72442.rs diff --git a/src/test/ui/async-await/issue-72442.stderr b/tests/ui/async-await/issue-72442.stderr index 919abf646..4a1705715 100644 --- a/src/test/ui/async-await/issue-72442.stderr +++ b/tests/ui/async-await/issue-72442.stderr @@ -8,9 +8,6 @@ LL | let mut f = File::open(path.to_str())?; | note: required by a bound in `File::open` --> $SRC_DIR/std/src/fs.rs:LL:COL - | -LL | pub fn open<P: AsRef<Path>>(path: P) -> io::Result<File> { - | ^^^^^^^^^^^ required by this bound in `File::open` error: aborting due to previous error diff --git a/src/test/ui/async-await/issue-72470-llvm-dominate.rs b/tests/ui/async-await/issue-72470-llvm-dominate.rs index 5bb69a073..5bb69a073 100644 --- a/src/test/ui/async-await/issue-72470-llvm-dominate.rs +++ b/tests/ui/async-await/issue-72470-llvm-dominate.rs diff --git a/src/test/ui/async-await/issue-72590-type-error-sized.rs b/tests/ui/async-await/issue-72590-type-error-sized.rs index 00e098d43..00e098d43 100644 --- a/src/test/ui/async-await/issue-72590-type-error-sized.rs +++ b/tests/ui/async-await/issue-72590-type-error-sized.rs diff --git a/src/test/ui/async-await/issue-72590-type-error-sized.stderr b/tests/ui/async-await/issue-72590-type-error-sized.stderr index 778423578..778423578 100644 --- a/src/test/ui/async-await/issue-72590-type-error-sized.stderr +++ b/tests/ui/async-await/issue-72590-type-error-sized.stderr diff --git a/src/test/ui/async-await/issue-73050.rs b/tests/ui/async-await/issue-73050.rs index 790f24a23..790f24a23 100644 --- a/src/test/ui/async-await/issue-73050.rs +++ b/tests/ui/async-await/issue-73050.rs diff --git a/src/test/ui/async-await/issue-73137.rs b/tests/ui/async-await/issue-73137.rs index dcbe7765a..dcbe7765a 100644 --- a/src/test/ui/async-await/issue-73137.rs +++ b/tests/ui/async-await/issue-73137.rs diff --git a/src/test/ui/async-await/issue-73541-1.rs b/tests/ui/async-await/issue-73541-1.rs index 7fb0d6c39..7fb0d6c39 100644 --- a/src/test/ui/async-await/issue-73541-1.rs +++ b/tests/ui/async-await/issue-73541-1.rs diff --git a/src/test/ui/async-await/issue-73541-1.stderr b/tests/ui/async-await/issue-73541-1.stderr index 80c1fdf00..80c1fdf00 100644 --- a/src/test/ui/async-await/issue-73541-1.stderr +++ b/tests/ui/async-await/issue-73541-1.stderr diff --git a/src/test/ui/async-await/issue-73541-2.rs b/tests/ui/async-await/issue-73541-2.rs index 70b4ab253..70b4ab253 100644 --- a/src/test/ui/async-await/issue-73541-2.rs +++ b/tests/ui/async-await/issue-73541-2.rs diff --git a/src/test/ui/async-await/issue-73541-2.stderr b/tests/ui/async-await/issue-73541-2.stderr index 4c9741f6f..4c9741f6f 100644 --- a/src/test/ui/async-await/issue-73541-2.stderr +++ b/tests/ui/async-await/issue-73541-2.stderr diff --git a/src/test/ui/async-await/issue-73541-3.rs b/tests/ui/async-await/issue-73541-3.rs index 02ca02da8..02ca02da8 100644 --- a/src/test/ui/async-await/issue-73541-3.rs +++ b/tests/ui/async-await/issue-73541-3.rs diff --git a/src/test/ui/async-await/issue-73541-3.stderr b/tests/ui/async-await/issue-73541-3.stderr index 53487aaca..53487aaca 100644 --- a/src/test/ui/async-await/issue-73541-3.stderr +++ b/tests/ui/async-await/issue-73541-3.stderr diff --git a/src/test/ui/async-await/issue-73541.rs b/tests/ui/async-await/issue-73541.rs index 399a07cd3..399a07cd3 100644 --- a/src/test/ui/async-await/issue-73541.rs +++ b/tests/ui/async-await/issue-73541.rs diff --git a/src/test/ui/async-await/issue-73541.stderr b/tests/ui/async-await/issue-73541.stderr index 4bb466ff1..4bb466ff1 100644 --- a/src/test/ui/async-await/issue-73541.stderr +++ b/tests/ui/async-await/issue-73541.stderr diff --git a/src/test/ui/async-await/issue-73741-type-err-drop-tracking.rs b/tests/ui/async-await/issue-73741-type-err-drop-tracking.rs index c3423ad62..c3423ad62 100644 --- a/src/test/ui/async-await/issue-73741-type-err-drop-tracking.rs +++ b/tests/ui/async-await/issue-73741-type-err-drop-tracking.rs diff --git a/src/test/ui/async-await/issue-73741-type-err-drop-tracking.stderr b/tests/ui/async-await/issue-73741-type-err-drop-tracking.stderr index d4e3b6c3b..d4e3b6c3b 100644 --- a/src/test/ui/async-await/issue-73741-type-err-drop-tracking.stderr +++ b/tests/ui/async-await/issue-73741-type-err-drop-tracking.stderr diff --git a/src/test/ui/async-await/issue-73741-type-err.rs b/tests/ui/async-await/issue-73741-type-err.rs index c5b9e34ed..c5b9e34ed 100644 --- a/src/test/ui/async-await/issue-73741-type-err.rs +++ b/tests/ui/async-await/issue-73741-type-err.rs diff --git a/src/test/ui/async-await/issue-73741-type-err.stderr b/tests/ui/async-await/issue-73741-type-err.stderr index 0b5343a98..0b5343a98 100644 --- a/src/test/ui/async-await/issue-73741-type-err.stderr +++ b/tests/ui/async-await/issue-73741-type-err.stderr diff --git a/src/test/ui/async-await/issue-74047.rs b/tests/ui/async-await/issue-74047.rs index 2e4f3e675..2e4f3e675 100644 --- a/src/test/ui/async-await/issue-74047.rs +++ b/tests/ui/async-await/issue-74047.rs diff --git a/src/test/ui/async-await/issue-74047.stderr b/tests/ui/async-await/issue-74047.stderr index 28174825d..28174825d 100644 --- a/src/test/ui/async-await/issue-74047.stderr +++ b/tests/ui/async-await/issue-74047.stderr diff --git a/src/test/ui/async-await/issue-74072-lifetime-name-annotations.rs b/tests/ui/async-await/issue-74072-lifetime-name-annotations.rs index 95683241a..95683241a 100644 --- a/src/test/ui/async-await/issue-74072-lifetime-name-annotations.rs +++ b/tests/ui/async-await/issue-74072-lifetime-name-annotations.rs diff --git a/src/test/ui/async-await/issue-74072-lifetime-name-annotations.stderr b/tests/ui/async-await/issue-74072-lifetime-name-annotations.stderr index b96cab9f0..b96cab9f0 100644 --- a/src/test/ui/async-await/issue-74072-lifetime-name-annotations.stderr +++ b/tests/ui/async-await/issue-74072-lifetime-name-annotations.stderr diff --git a/src/test/ui/async-await/issue-74497-lifetime-in-opaque.rs b/tests/ui/async-await/issue-74497-lifetime-in-opaque.rs index 2d765eb41..2d765eb41 100644 --- a/src/test/ui/async-await/issue-74497-lifetime-in-opaque.rs +++ b/tests/ui/async-await/issue-74497-lifetime-in-opaque.rs diff --git a/src/test/ui/async-await/issue-74497-lifetime-in-opaque.stderr b/tests/ui/async-await/issue-74497-lifetime-in-opaque.stderr index 4427014ae..4427014ae 100644 --- a/src/test/ui/async-await/issue-74497-lifetime-in-opaque.stderr +++ b/tests/ui/async-await/issue-74497-lifetime-in-opaque.stderr diff --git a/src/test/ui/async-await/issue-75785-confusing-named-region.rs b/tests/ui/async-await/issue-75785-confusing-named-region.rs index 452614087..452614087 100644 --- a/src/test/ui/async-await/issue-75785-confusing-named-region.rs +++ b/tests/ui/async-await/issue-75785-confusing-named-region.rs diff --git a/src/test/ui/async-await/issue-75785-confusing-named-region.stderr b/tests/ui/async-await/issue-75785-confusing-named-region.stderr index 3b731d9c6..3b731d9c6 100644 --- a/src/test/ui/async-await/issue-75785-confusing-named-region.stderr +++ b/tests/ui/async-await/issue-75785-confusing-named-region.stderr diff --git a/src/test/ui/async-await/issue-76547.rs b/tests/ui/async-await/issue-76547.rs index 587feb624..587feb624 100644 --- a/src/test/ui/async-await/issue-76547.rs +++ b/tests/ui/async-await/issue-76547.rs diff --git a/src/test/ui/async-await/issue-76547.stderr b/tests/ui/async-await/issue-76547.stderr index 4d96cce82..4d96cce82 100644 --- a/src/test/ui/async-await/issue-76547.stderr +++ b/tests/ui/async-await/issue-76547.stderr diff --git a/src/test/ui/async-await/issue-77993-2.rs b/tests/ui/async-await/issue-77993-2.rs index 4d554a0a1..4d554a0a1 100644 --- a/src/test/ui/async-await/issue-77993-2.rs +++ b/tests/ui/async-await/issue-77993-2.rs diff --git a/src/test/ui/async-await/issue-77993-2.stderr b/tests/ui/async-await/issue-77993-2.stderr index 64b378f83..64b378f83 100644 --- a/src/test/ui/async-await/issue-77993-2.stderr +++ b/tests/ui/async-await/issue-77993-2.stderr diff --git a/src/test/ui/async-await/issue-84841.rs b/tests/ui/async-await/issue-84841.rs index ba3a1617b..ba3a1617b 100644 --- a/src/test/ui/async-await/issue-84841.rs +++ b/tests/ui/async-await/issue-84841.rs diff --git a/src/test/ui/async-await/issue-84841.stderr b/tests/ui/async-await/issue-84841.stderr index 1e22373ba..1e22373ba 100644 --- a/src/test/ui/async-await/issue-84841.stderr +++ b/tests/ui/async-await/issue-84841.stderr diff --git a/src/test/ui/async-await/issue-86507.rs b/tests/ui/async-await/issue-86507.rs index 317f03176..317f03176 100644 --- a/src/test/ui/async-await/issue-86507.rs +++ b/tests/ui/async-await/issue-86507.rs diff --git a/src/test/ui/async-await/issue-86507.stderr b/tests/ui/async-await/issue-86507.stderr index 8c2c06da2..8c2c06da2 100644 --- a/src/test/ui/async-await/issue-86507.stderr +++ b/tests/ui/async-await/issue-86507.stderr diff --git a/src/test/ui/async-await/issue-93197.rs b/tests/ui/async-await/issue-93197.rs index c627fe17a..c627fe17a 100644 --- a/src/test/ui/async-await/issue-93197.rs +++ b/tests/ui/async-await/issue-93197.rs diff --git a/src/test/ui/async-await/issue-93648.rs b/tests/ui/async-await/issue-93648.rs index 4ce3ac1e8..4ce3ac1e8 100644 --- a/src/test/ui/async-await/issue-93648.rs +++ b/tests/ui/async-await/issue-93648.rs diff --git a/src/test/ui/async-await/issue-98634.rs b/tests/ui/async-await/issue-98634.rs index b0d38687f..b0d38687f 100644 --- a/src/test/ui/async-await/issue-98634.rs +++ b/tests/ui/async-await/issue-98634.rs diff --git a/src/test/ui/async-await/issue-98634.stderr b/tests/ui/async-await/issue-98634.stderr index 5160e48d8..5160e48d8 100644 --- a/src/test/ui/async-await/issue-98634.stderr +++ b/tests/ui/async-await/issue-98634.stderr diff --git a/src/test/ui/async-await/issues/auxiliary/issue-60674.rs b/tests/ui/async-await/issues/auxiliary/issue-60674.rs index 680c6e55e..680c6e55e 100644 --- a/src/test/ui/async-await/issues/auxiliary/issue-60674.rs +++ b/tests/ui/async-await/issues/auxiliary/issue-60674.rs diff --git a/src/test/ui/async-await/issues/auxiliary/issue_67893.rs b/tests/ui/async-await/issues/auxiliary/issue_67893.rs index 387966a50..387966a50 100644 --- a/src/test/ui/async-await/issues/auxiliary/issue_67893.rs +++ b/tests/ui/async-await/issues/auxiliary/issue_67893.rs diff --git a/tests/ui/async-await/issues/issue-102206.rs b/tests/ui/async-await/issues/issue-102206.rs new file mode 100644 index 000000000..a3a2ebc58 --- /dev/null +++ b/tests/ui/async-await/issues/issue-102206.rs @@ -0,0 +1,8 @@ +// edition:2021 + +async fn foo() {} + +fn main() { + std::mem::size_of_val(foo()); + //~^ ERROR: mismatched types +} diff --git a/tests/ui/async-await/issues/issue-102206.stderr b/tests/ui/async-await/issues/issue-102206.stderr new file mode 100644 index 000000000..2ab790ac7 --- /dev/null +++ b/tests/ui/async-await/issues/issue-102206.stderr @@ -0,0 +1,23 @@ +error[E0308]: mismatched types + --> $DIR/issue-102206.rs:6:27 + | +LL | std::mem::size_of_val(foo()); + | --------------------- ^^^^^ + | | | + | | expected reference, found opaque type + | | help: consider borrowing here: `&foo()` + | arguments to this function are incorrect + | +note: while checking the return type of the `async fn` + --> $DIR/issue-102206.rs:3:16 + | +LL | async fn foo() {} + | ^ checked the `Output` of this `async fn`, found opaque type + = note: expected reference `&_` + found opaque type `impl Future<Output = ()>` +note: function defined here + --> $SRC_DIR/core/src/mem/mod.rs:LL:COL + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0308`. diff --git a/src/test/ui/async-await/issues/issue-51719.rs b/tests/ui/async-await/issues/issue-51719.rs index 09241f982..09241f982 100644 --- a/src/test/ui/async-await/issues/issue-51719.rs +++ b/tests/ui/async-await/issues/issue-51719.rs diff --git a/src/test/ui/async-await/issues/issue-51719.stderr b/tests/ui/async-await/issues/issue-51719.stderr index f3ce5d1c8..f3ce5d1c8 100644 --- a/src/test/ui/async-await/issues/issue-51719.stderr +++ b/tests/ui/async-await/issues/issue-51719.stderr diff --git a/src/test/ui/async-await/issues/issue-51751.rs b/tests/ui/async-await/issues/issue-51751.rs index bc85a96ce..bc85a96ce 100644 --- a/src/test/ui/async-await/issues/issue-51751.rs +++ b/tests/ui/async-await/issues/issue-51751.rs diff --git a/src/test/ui/async-await/issues/issue-51751.stderr b/tests/ui/async-await/issues/issue-51751.stderr index 8696a5b79..8696a5b79 100644 --- a/src/test/ui/async-await/issues/issue-51751.stderr +++ b/tests/ui/async-await/issues/issue-51751.stderr diff --git a/src/test/ui/async-await/issues/issue-53249.rs b/tests/ui/async-await/issues/issue-53249.rs index 3a33af2d2..3a33af2d2 100644 --- a/src/test/ui/async-await/issues/issue-53249.rs +++ b/tests/ui/async-await/issues/issue-53249.rs diff --git a/src/test/ui/async-await/issues/issue-54752-async-block.rs b/tests/ui/async-await/issues/issue-54752-async-block.rs index a8165ae6c..a8165ae6c 100644 --- a/src/test/ui/async-await/issues/issue-54752-async-block.rs +++ b/tests/ui/async-await/issues/issue-54752-async-block.rs diff --git a/src/test/ui/async-await/issues/issue-54752-async-block.stderr b/tests/ui/async-await/issues/issue-54752-async-block.stderr index 8cc849dd9..8cc849dd9 100644 --- a/src/test/ui/async-await/issues/issue-54752-async-block.stderr +++ b/tests/ui/async-await/issues/issue-54752-async-block.stderr diff --git a/src/test/ui/async-await/issues/issue-54974.rs b/tests/ui/async-await/issues/issue-54974.rs index b602ef153..b602ef153 100644 --- a/src/test/ui/async-await/issues/issue-54974.rs +++ b/tests/ui/async-await/issues/issue-54974.rs diff --git a/src/test/ui/async-await/issues/issue-55324.rs b/tests/ui/async-await/issues/issue-55324.rs index 9ecb3b129..9ecb3b129 100644 --- a/src/test/ui/async-await/issues/issue-55324.rs +++ b/tests/ui/async-await/issues/issue-55324.rs diff --git a/src/test/ui/async-await/issues/issue-55809.rs b/tests/ui/async-await/issues/issue-55809.rs index 3b271775a..3b271775a 100644 --- a/src/test/ui/async-await/issues/issue-55809.rs +++ b/tests/ui/async-await/issues/issue-55809.rs diff --git a/src/test/ui/async-await/issues/issue-58885.rs b/tests/ui/async-await/issues/issue-58885.rs index 11920b072..11920b072 100644 --- a/src/test/ui/async-await/issues/issue-58885.rs +++ b/tests/ui/async-await/issues/issue-58885.rs diff --git a/src/test/ui/async-await/issues/issue-59001.rs b/tests/ui/async-await/issues/issue-59001.rs index 4ddebcf20..4ddebcf20 100644 --- a/src/test/ui/async-await/issues/issue-59001.rs +++ b/tests/ui/async-await/issues/issue-59001.rs diff --git a/src/test/ui/async-await/issues/issue-59972.rs b/tests/ui/async-await/issues/issue-59972.rs index c2e24a96b..c2e24a96b 100644 --- a/src/test/ui/async-await/issues/issue-59972.rs +++ b/tests/ui/async-await/issues/issue-59972.rs diff --git a/src/test/ui/async-await/issues/issue-60518.rs b/tests/ui/async-await/issues/issue-60518.rs index 69bbdd0e8..69bbdd0e8 100644 --- a/src/test/ui/async-await/issues/issue-60518.rs +++ b/tests/ui/async-await/issues/issue-60518.rs diff --git a/src/test/ui/async-await/issues/issue-60655-latebound-regions.rs b/tests/ui/async-await/issues/issue-60655-latebound-regions.rs index 66a3b07c3..66a3b07c3 100644 --- a/src/test/ui/async-await/issues/issue-60655-latebound-regions.rs +++ b/tests/ui/async-await/issues/issue-60655-latebound-regions.rs diff --git a/src/test/ui/async-await/issues/issue-60674.rs b/tests/ui/async-await/issues/issue-60674.rs index c0e34a8df..c0e34a8df 100644 --- a/src/test/ui/async-await/issues/issue-60674.rs +++ b/tests/ui/async-await/issues/issue-60674.rs diff --git a/src/test/ui/async-await/issues/issue-60674.stdout b/tests/ui/async-await/issues/issue-60674.stdout index 6f980e606..6f980e606 100644 --- a/src/test/ui/async-await/issues/issue-60674.stdout +++ b/tests/ui/async-await/issues/issue-60674.stdout diff --git a/src/test/ui/async-await/issues/issue-61187.rs b/tests/ui/async-await/issues/issue-61187.rs index 8585a4251..8585a4251 100644 --- a/src/test/ui/async-await/issues/issue-61187.rs +++ b/tests/ui/async-await/issues/issue-61187.rs diff --git a/tests/ui/async-await/issues/issue-61187.stderr b/tests/ui/async-await/issues/issue-61187.stderr new file mode 100644 index 000000000..e58f74546 --- /dev/null +++ b/tests/ui/async-await/issues/issue-61187.stderr @@ -0,0 +1,14 @@ +error[E0596]: cannot borrow `data` as mutable, as it is not declared as mutable + --> $DIR/issue-61187.rs:6:5 + | +LL | data.reverse(); + | ^^^^^^^^^^^^^^ cannot borrow as mutable + | +help: consider changing this to be mutable + | +LL | async fn response(mut data: Vec<u8>) { + | +++ + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0596`. diff --git a/src/test/ui/async-await/issues/issue-61986.rs b/tests/ui/async-await/issues/issue-61986.rs index 879bc6912..879bc6912 100644 --- a/src/test/ui/async-await/issues/issue-61986.rs +++ b/tests/ui/async-await/issues/issue-61986.rs diff --git a/src/test/ui/async-await/issues/issue-62009-1.rs b/tests/ui/async-await/issues/issue-62009-1.rs index 40ccf2571..40ccf2571 100644 --- a/src/test/ui/async-await/issues/issue-62009-1.rs +++ b/tests/ui/async-await/issues/issue-62009-1.rs diff --git a/src/test/ui/async-await/issues/issue-62009-1.stderr b/tests/ui/async-await/issues/issue-62009-1.stderr index 222afb2c7..222afb2c7 100644 --- a/src/test/ui/async-await/issues/issue-62009-1.stderr +++ b/tests/ui/async-await/issues/issue-62009-1.stderr diff --git a/src/test/ui/async-await/issues/issue-62009-2.rs b/tests/ui/async-await/issues/issue-62009-2.rs index cb7336e61..cb7336e61 100644 --- a/src/test/ui/async-await/issues/issue-62009-2.rs +++ b/tests/ui/async-await/issues/issue-62009-2.rs diff --git a/src/test/ui/async-await/issues/issue-62009-2.stderr b/tests/ui/async-await/issues/issue-62009-2.stderr index 92e9a8a69..92e9a8a69 100644 --- a/src/test/ui/async-await/issues/issue-62009-2.stderr +++ b/tests/ui/async-await/issues/issue-62009-2.stderr diff --git a/src/test/ui/async-await/issues/issue-62097.rs b/tests/ui/async-await/issues/issue-62097.rs index a24c84cff..a24c84cff 100644 --- a/src/test/ui/async-await/issues/issue-62097.rs +++ b/tests/ui/async-await/issues/issue-62097.rs diff --git a/src/test/ui/async-await/issues/issue-62097.stderr b/tests/ui/async-await/issues/issue-62097.stderr index 786f62132..786f62132 100644 --- a/src/test/ui/async-await/issues/issue-62097.stderr +++ b/tests/ui/async-await/issues/issue-62097.stderr diff --git a/src/test/ui/async-await/issues/issue-62517-1.rs b/tests/ui/async-await/issues/issue-62517-1.rs index 4689ce36a..4689ce36a 100644 --- a/src/test/ui/async-await/issues/issue-62517-1.rs +++ b/tests/ui/async-await/issues/issue-62517-1.rs diff --git a/src/test/ui/async-await/issues/issue-62517-2.rs b/tests/ui/async-await/issues/issue-62517-2.rs index aaf28d6c1..aaf28d6c1 100644 --- a/src/test/ui/async-await/issues/issue-62517-2.rs +++ b/tests/ui/async-await/issues/issue-62517-2.rs diff --git a/src/test/ui/async-await/issues/issue-63388-1.rs b/tests/ui/async-await/issues/issue-63388-1.rs index 32bcbb111..32bcbb111 100644 --- a/src/test/ui/async-await/issues/issue-63388-1.rs +++ b/tests/ui/async-await/issues/issue-63388-1.rs diff --git a/src/test/ui/async-await/issues/issue-63388-1.stderr b/tests/ui/async-await/issues/issue-63388-1.stderr index 88542315e..88542315e 100644 --- a/src/test/ui/async-await/issues/issue-63388-1.stderr +++ b/tests/ui/async-await/issues/issue-63388-1.stderr diff --git a/src/test/ui/async-await/issues/issue-63388-2.rs b/tests/ui/async-await/issues/issue-63388-2.rs index 90b59f96e..90b59f96e 100644 --- a/src/test/ui/async-await/issues/issue-63388-2.rs +++ b/tests/ui/async-await/issues/issue-63388-2.rs diff --git a/src/test/ui/async-await/issues/issue-63388-2.stderr b/tests/ui/async-await/issues/issue-63388-2.stderr index e515f227c..e515f227c 100644 --- a/src/test/ui/async-await/issues/issue-63388-2.stderr +++ b/tests/ui/async-await/issues/issue-63388-2.stderr diff --git a/src/test/ui/async-await/issues/issue-63388-3.rs b/tests/ui/async-await/issues/issue-63388-3.rs index 1a9822e02..1a9822e02 100644 --- a/src/test/ui/async-await/issues/issue-63388-3.rs +++ b/tests/ui/async-await/issues/issue-63388-3.rs diff --git a/src/test/ui/async-await/issues/issue-63388-4.rs b/tests/ui/async-await/issues/issue-63388-4.rs index 58f9dacb3..58f9dacb3 100644 --- a/src/test/ui/async-await/issues/issue-63388-4.rs +++ b/tests/ui/async-await/issues/issue-63388-4.rs diff --git a/src/test/ui/async-await/issues/issue-64391-2.rs b/tests/ui/async-await/issues/issue-64391-2.rs index eef2c1fb2..eef2c1fb2 100644 --- a/src/test/ui/async-await/issues/issue-64391-2.rs +++ b/tests/ui/async-await/issues/issue-64391-2.rs diff --git a/src/test/ui/async-await/issues/issue-64433.rs b/tests/ui/async-await/issues/issue-64433.rs index d900f8ed9..d900f8ed9 100644 --- a/src/test/ui/async-await/issues/issue-64433.rs +++ b/tests/ui/async-await/issues/issue-64433.rs diff --git a/src/test/ui/async-await/issues/issue-64477-2.rs b/tests/ui/async-await/issues/issue-64477-2.rs index 2360b57cc..2360b57cc 100644 --- a/src/test/ui/async-await/issues/issue-64477-2.rs +++ b/tests/ui/async-await/issues/issue-64477-2.rs diff --git a/src/test/ui/async-await/issues/issue-64477.rs b/tests/ui/async-await/issues/issue-64477.rs index 5bd52d44a..5bd52d44a 100644 --- a/src/test/ui/async-await/issues/issue-64477.rs +++ b/tests/ui/async-await/issues/issue-64477.rs diff --git a/src/test/ui/async-await/issues/issue-64964.rs b/tests/ui/async-await/issues/issue-64964.rs index 6d6eff486..6d6eff486 100644 --- a/src/test/ui/async-await/issues/issue-64964.rs +++ b/tests/ui/async-await/issues/issue-64964.rs diff --git a/src/test/ui/async-await/issues/issue-65159.rs b/tests/ui/async-await/issues/issue-65159.rs index df2ca0257..df2ca0257 100644 --- a/src/test/ui/async-await/issues/issue-65159.rs +++ b/tests/ui/async-await/issues/issue-65159.rs diff --git a/src/test/ui/async-await/issues/issue-65159.stderr b/tests/ui/async-await/issues/issue-65159.stderr index 45f5ec40c..40c0e72b2 100644 --- a/src/test/ui/async-await/issues/issue-65159.stderr +++ b/tests/ui/async-await/issues/issue-65159.stderr @@ -6,11 +6,6 @@ LL | async fn copy() -> Result<()> | | | expected 2 generic arguments | -note: enum defined here, with 2 generic parameters: `T`, `E` - --> $SRC_DIR/core/src/result.rs:LL:COL - | -LL | pub enum Result<T, E> { - | ^^^^^^ - - help: add missing generic argument | LL | async fn copy() -> Result<(), E> diff --git a/src/test/ui/async-await/issues/issue-65419/issue-65419-async-fn-resume-after-completion.rs b/tests/ui/async-await/issues/issue-65419/issue-65419-async-fn-resume-after-completion.rs index ade386a60..ade386a60 100644 --- a/src/test/ui/async-await/issues/issue-65419/issue-65419-async-fn-resume-after-completion.rs +++ b/tests/ui/async-await/issues/issue-65419/issue-65419-async-fn-resume-after-completion.rs diff --git a/src/test/ui/async-await/issues/issue-65419/issue-65419-async-fn-resume-after-panic.rs b/tests/ui/async-await/issues/issue-65419/issue-65419-async-fn-resume-after-panic.rs index b4ea4c9f6..b4ea4c9f6 100644 --- a/src/test/ui/async-await/issues/issue-65419/issue-65419-async-fn-resume-after-panic.rs +++ b/tests/ui/async-await/issues/issue-65419/issue-65419-async-fn-resume-after-panic.rs diff --git a/src/test/ui/async-await/issues/issue-65419/issue-65419-generator-resume-after-completion.rs b/tests/ui/async-await/issues/issue-65419/issue-65419-generator-resume-after-completion.rs index 9fc5667d6..9fc5667d6 100644 --- a/src/test/ui/async-await/issues/issue-65419/issue-65419-generator-resume-after-completion.rs +++ b/tests/ui/async-await/issues/issue-65419/issue-65419-generator-resume-after-completion.rs diff --git a/src/test/ui/async-await/issues/issue-65436-raw-ptr-not-send.no_drop_tracking.stderr b/tests/ui/async-await/issues/issue-65436-raw-ptr-not-send.no_drop_tracking.stderr index ab196dca2..1033fa6cc 100644 --- a/src/test/ui/async-await/issues/issue-65436-raw-ptr-not-send.no_drop_tracking.stderr +++ b/tests/ui/async-await/issues/issue-65436-raw-ptr-not-send.no_drop_tracking.stderr @@ -13,14 +13,10 @@ note: future is not `Send` as this value is used across an await --> $DIR/issue-65436-raw-ptr-not-send.rs:18:35 | LL | bar(Foo(std::ptr::null())).await; - | ---------------- ^^^^^^ await occurs here, with `std::ptr::null()` maybe used later - | | + | ---------------- ^^^^^^- `std::ptr::null()` is later dropped here + | | | + | | await occurs here, with `std::ptr::null()` maybe used later | has type `*const u8` which is not `Send` -note: `std::ptr::null()` is later dropped here - --> $DIR/issue-65436-raw-ptr-not-send.rs:18:41 - | -LL | bar(Foo(std::ptr::null())).await; - | ^ help: consider moving this into a `let` binding to create a shorter lived borrow --> $DIR/issue-65436-raw-ptr-not-send.rs:18:13 | diff --git a/src/test/ui/async-await/issues/issue-65436-raw-ptr-not-send.rs b/tests/ui/async-await/issues/issue-65436-raw-ptr-not-send.rs index 91edbc10d..91edbc10d 100644 --- a/src/test/ui/async-await/issues/issue-65436-raw-ptr-not-send.rs +++ b/tests/ui/async-await/issues/issue-65436-raw-ptr-not-send.rs diff --git a/src/test/ui/async-await/issues/issue-66695-static-refs.rs b/tests/ui/async-await/issues/issue-66695-static-refs.rs index f0609713b..f0609713b 100644 --- a/src/test/ui/async-await/issues/issue-66695-static-refs.rs +++ b/tests/ui/async-await/issues/issue-66695-static-refs.rs diff --git a/src/test/ui/async-await/issues/issue-66958-non-copy-infered-type-arg.rs b/tests/ui/async-await/issues/issue-66958-non-copy-infered-type-arg.rs index b7a976a0a..b7a976a0a 100644 --- a/src/test/ui/async-await/issues/issue-66958-non-copy-infered-type-arg.rs +++ b/tests/ui/async-await/issues/issue-66958-non-copy-infered-type-arg.rs diff --git a/src/test/ui/async-await/issues/issue-66958-non-copy-infered-type-arg.stderr b/tests/ui/async-await/issues/issue-66958-non-copy-infered-type-arg.stderr index e2a735398..e2a735398 100644 --- a/src/test/ui/async-await/issues/issue-66958-non-copy-infered-type-arg.stderr +++ b/tests/ui/async-await/issues/issue-66958-non-copy-infered-type-arg.stderr diff --git a/src/test/ui/async-await/issues/issue-67611-static-mut-refs.rs b/tests/ui/async-await/issues/issue-67611-static-mut-refs.rs index dda4a151d..dda4a151d 100644 --- a/src/test/ui/async-await/issues/issue-67611-static-mut-refs.rs +++ b/tests/ui/async-await/issues/issue-67611-static-mut-refs.rs diff --git a/src/test/ui/async-await/issues/issue-67893.rs b/tests/ui/async-await/issues/issue-67893.rs index d73772e5f..d73772e5f 100644 --- a/src/test/ui/async-await/issues/issue-67893.rs +++ b/tests/ui/async-await/issues/issue-67893.rs diff --git a/tests/ui/async-await/issues/issue-67893.stderr b/tests/ui/async-await/issues/issue-67893.stderr new file mode 100644 index 000000000..2ce68a782 --- /dev/null +++ b/tests/ui/async-await/issues/issue-67893.stderr @@ -0,0 +1,23 @@ +error: future cannot be sent between threads safely + --> $DIR/issue-67893.rs:9:7 + | +LL | g(issue_67893::run()) + | ^^^^^^^^^^^^^^^^^^ future is not `Send` + | + = help: within `impl Future<Output = ()>`, the trait `Send` is not implemented for `MutexGuard<'_, ()>` +note: future is not `Send` as this value is used across an await + --> $DIR/auxiliary/issue_67893.rs:9:26 + | +LL | f(*x.lock().unwrap()).await; + | ----------------- ^^^^^^- `x.lock().unwrap()` is later dropped here + | | | + | | await occurs here, with `x.lock().unwrap()` maybe used later + | has type `MutexGuard<'_, ()>` which is not `Send` +note: required by a bound in `g` + --> $DIR/issue-67893.rs:6:14 + | +LL | fn g(_: impl Send) {} + | ^^^^ required by this bound in `g` + +error: aborting due to previous error + diff --git a/src/test/ui/async-await/issues/issue-69307-nested.rs b/tests/ui/async-await/issues/issue-69307-nested.rs index b7cdf3987..b7cdf3987 100644 --- a/src/test/ui/async-await/issues/issue-69307-nested.rs +++ b/tests/ui/async-await/issues/issue-69307-nested.rs diff --git a/src/test/ui/async-await/issues/issue-69307.rs b/tests/ui/async-await/issues/issue-69307.rs index 59309a7f2..59309a7f2 100644 --- a/src/test/ui/async-await/issues/issue-69307.rs +++ b/tests/ui/async-await/issues/issue-69307.rs diff --git a/src/test/ui/async-await/issues/issue-72312.rs b/tests/ui/async-await/issues/issue-72312.rs index 74122cf00..74122cf00 100644 --- a/src/test/ui/async-await/issues/issue-72312.rs +++ b/tests/ui/async-await/issues/issue-72312.rs diff --git a/src/test/ui/async-await/issues/issue-72312.stderr b/tests/ui/async-await/issues/issue-72312.stderr index aa947b690..aa947b690 100644 --- a/src/test/ui/async-await/issues/issue-72312.stderr +++ b/tests/ui/async-await/issues/issue-72312.stderr diff --git a/src/test/ui/async-await/issues/issue-78600.rs b/tests/ui/async-await/issues/issue-78600.rs index 8aaeaecf3..8aaeaecf3 100644 --- a/src/test/ui/async-await/issues/issue-78600.rs +++ b/tests/ui/async-await/issues/issue-78600.rs diff --git a/src/test/ui/async-await/issues/issue-78600.stderr b/tests/ui/async-await/issues/issue-78600.stderr index 37eafa996..37eafa996 100644 --- a/src/test/ui/async-await/issues/issue-78600.stderr +++ b/tests/ui/async-await/issues/issue-78600.stderr diff --git a/src/test/ui/async-await/issues/issue-78654.full.stderr b/tests/ui/async-await/issues/issue-78654.full.stderr index 0d12a948c..0d12a948c 100644 --- a/src/test/ui/async-await/issues/issue-78654.full.stderr +++ b/tests/ui/async-await/issues/issue-78654.full.stderr diff --git a/src/test/ui/async-await/issues/issue-78654.min.stderr b/tests/ui/async-await/issues/issue-78654.min.stderr index 0d12a948c..0d12a948c 100644 --- a/src/test/ui/async-await/issues/issue-78654.min.stderr +++ b/tests/ui/async-await/issues/issue-78654.min.stderr diff --git a/src/test/ui/async-await/issues/issue-78654.rs b/tests/ui/async-await/issues/issue-78654.rs index cc6dc3834..cc6dc3834 100644 --- a/src/test/ui/async-await/issues/issue-78654.rs +++ b/tests/ui/async-await/issues/issue-78654.rs diff --git a/src/test/ui/async-await/issues/issue-78938-async-block.rs b/tests/ui/async-await/issues/issue-78938-async-block.rs index 36f716019..36f716019 100644 --- a/src/test/ui/async-await/issues/issue-78938-async-block.rs +++ b/tests/ui/async-await/issues/issue-78938-async-block.rs diff --git a/src/test/ui/async-await/issues/issue-78938-async-block.stderr b/tests/ui/async-await/issues/issue-78938-async-block.stderr index c1a4b467f..c1a4b467f 100644 --- a/src/test/ui/async-await/issues/issue-78938-async-block.stderr +++ b/tests/ui/async-await/issues/issue-78938-async-block.stderr diff --git a/src/test/ui/async-await/issues/issue-95307.rs b/tests/ui/async-await/issues/issue-95307.rs index f7e48070c..f7e48070c 100644 --- a/src/test/ui/async-await/issues/issue-95307.rs +++ b/tests/ui/async-await/issues/issue-95307.rs diff --git a/src/test/ui/async-await/issues/issue-95307.stderr b/tests/ui/async-await/issues/issue-95307.stderr index a497cebe3..a497cebe3 100644 --- a/src/test/ui/async-await/issues/issue-95307.stderr +++ b/tests/ui/async-await/issues/issue-95307.stderr diff --git a/src/test/ui/async-await/issues/non-async-enclosing-span.rs b/tests/ui/async-await/issues/non-async-enclosing-span.rs index d47c21377..d47c21377 100644 --- a/src/test/ui/async-await/issues/non-async-enclosing-span.rs +++ b/tests/ui/async-await/issues/non-async-enclosing-span.rs diff --git a/src/test/ui/async-await/issues/non-async-enclosing-span.stderr b/tests/ui/async-await/issues/non-async-enclosing-span.stderr index 20b827479..20b827479 100644 --- a/src/test/ui/async-await/issues/non-async-enclosing-span.stderr +++ b/tests/ui/async-await/issues/non-async-enclosing-span.stderr diff --git a/src/test/ui/async-await/large_moves.attribute.stderr b/tests/ui/async-await/large_moves.attribute.stderr index 0c5452475..0c5452475 100644 --- a/src/test/ui/async-await/large_moves.attribute.stderr +++ b/tests/ui/async-await/large_moves.attribute.stderr diff --git a/src/test/ui/async-await/large_moves.option.stderr b/tests/ui/async-await/large_moves.option.stderr index 0c5452475..0c5452475 100644 --- a/src/test/ui/async-await/large_moves.option.stderr +++ b/tests/ui/async-await/large_moves.option.stderr diff --git a/src/test/ui/async-await/large_moves.rs b/tests/ui/async-await/large_moves.rs index d43d0eec0..d43d0eec0 100644 --- a/src/test/ui/async-await/large_moves.rs +++ b/tests/ui/async-await/large_moves.rs diff --git a/src/test/ui/async-await/move-part-await-return-rest-struct.rs b/tests/ui/async-await/move-part-await-return-rest-struct.rs index 39ea2aae5..39ea2aae5 100644 --- a/src/test/ui/async-await/move-part-await-return-rest-struct.rs +++ b/tests/ui/async-await/move-part-await-return-rest-struct.rs diff --git a/src/test/ui/async-await/move-part-await-return-rest-tuple.rs b/tests/ui/async-await/move-part-await-return-rest-tuple.rs index 7b958b98b..7b958b98b 100644 --- a/src/test/ui/async-await/move-part-await-return-rest-tuple.rs +++ b/tests/ui/async-await/move-part-await-return-rest-tuple.rs diff --git a/src/test/ui/async-await/multiple-lifetimes/elided.rs b/tests/ui/async-await/multiple-lifetimes/elided.rs index 8258e2eff..8258e2eff 100644 --- a/src/test/ui/async-await/multiple-lifetimes/elided.rs +++ b/tests/ui/async-await/multiple-lifetimes/elided.rs diff --git a/src/test/ui/async-await/multiple-lifetimes/fn-ptr.rs b/tests/ui/async-await/multiple-lifetimes/fn-ptr.rs index 3912b8547..3912b8547 100644 --- a/src/test/ui/async-await/multiple-lifetimes/fn-ptr.rs +++ b/tests/ui/async-await/multiple-lifetimes/fn-ptr.rs diff --git a/src/test/ui/async-await/multiple-lifetimes/hrtb.rs b/tests/ui/async-await/multiple-lifetimes/hrtb.rs index e788ca5ff..e788ca5ff 100644 --- a/src/test/ui/async-await/multiple-lifetimes/hrtb.rs +++ b/tests/ui/async-await/multiple-lifetimes/hrtb.rs diff --git a/src/test/ui/async-await/multiple-lifetimes/named.rs b/tests/ui/async-await/multiple-lifetimes/named.rs index e8eb98102..e8eb98102 100644 --- a/src/test/ui/async-await/multiple-lifetimes/named.rs +++ b/tests/ui/async-await/multiple-lifetimes/named.rs diff --git a/src/test/ui/async-await/multiple-lifetimes/partial-relation.rs b/tests/ui/async-await/multiple-lifetimes/partial-relation.rs index 02b105999..02b105999 100644 --- a/src/test/ui/async-await/multiple-lifetimes/partial-relation.rs +++ b/tests/ui/async-await/multiple-lifetimes/partial-relation.rs diff --git a/src/test/ui/async-await/multiple-lifetimes/ret-impl-trait-fg.rs b/tests/ui/async-await/multiple-lifetimes/ret-impl-trait-fg.rs index f1002947f..f1002947f 100644 --- a/src/test/ui/async-await/multiple-lifetimes/ret-impl-trait-fg.rs +++ b/tests/ui/async-await/multiple-lifetimes/ret-impl-trait-fg.rs diff --git a/src/test/ui/async-await/multiple-lifetimes/ret-impl-trait-one.rs b/tests/ui/async-await/multiple-lifetimes/ret-impl-trait-one.rs index aebc77d26..aebc77d26 100644 --- a/src/test/ui/async-await/multiple-lifetimes/ret-impl-trait-one.rs +++ b/tests/ui/async-await/multiple-lifetimes/ret-impl-trait-one.rs diff --git a/src/test/ui/async-await/multiple-lifetimes/ret-impl-trait-one.stderr b/tests/ui/async-await/multiple-lifetimes/ret-impl-trait-one.stderr index ae4d0d585..ae4d0d585 100644 --- a/src/test/ui/async-await/multiple-lifetimes/ret-impl-trait-one.stderr +++ b/tests/ui/async-await/multiple-lifetimes/ret-impl-trait-one.stderr diff --git a/src/test/ui/async-await/multiple-lifetimes/ret-ref.rs b/tests/ui/async-await/multiple-lifetimes/ret-ref.rs index 149c020f9..149c020f9 100644 --- a/src/test/ui/async-await/multiple-lifetimes/ret-ref.rs +++ b/tests/ui/async-await/multiple-lifetimes/ret-ref.rs diff --git a/src/test/ui/async-await/multiple-lifetimes/ret-ref.stderr b/tests/ui/async-await/multiple-lifetimes/ret-ref.stderr index d86e84033..d86e84033 100644 --- a/src/test/ui/async-await/multiple-lifetimes/ret-ref.stderr +++ b/tests/ui/async-await/multiple-lifetimes/ret-ref.stderr diff --git a/src/test/ui/async-await/multiple-lifetimes/variance.rs b/tests/ui/async-await/multiple-lifetimes/variance.rs index 6ed8bef95..6ed8bef95 100644 --- a/src/test/ui/async-await/multiple-lifetimes/variance.rs +++ b/tests/ui/async-await/multiple-lifetimes/variance.rs diff --git a/src/test/ui/async-await/mutually-recursive-async-impl-trait-type.rs b/tests/ui/async-await/mutually-recursive-async-impl-trait-type.rs index bb2a61f03..bb2a61f03 100644 --- a/src/test/ui/async-await/mutually-recursive-async-impl-trait-type.rs +++ b/tests/ui/async-await/mutually-recursive-async-impl-trait-type.rs diff --git a/src/test/ui/async-await/mutually-recursive-async-impl-trait-type.stderr b/tests/ui/async-await/mutually-recursive-async-impl-trait-type.stderr index f789ad2a0..f789ad2a0 100644 --- a/src/test/ui/async-await/mutually-recursive-async-impl-trait-type.stderr +++ b/tests/ui/async-await/mutually-recursive-async-impl-trait-type.stderr diff --git a/src/test/ui/async-await/nested-in-impl.rs b/tests/ui/async-await/nested-in-impl.rs index 76ed827d5..76ed827d5 100644 --- a/src/test/ui/async-await/nested-in-impl.rs +++ b/tests/ui/async-await/nested-in-impl.rs diff --git a/src/test/ui/async-await/no-async-const.rs b/tests/ui/async-await/no-async-const.rs index 963460c11..963460c11 100644 --- a/src/test/ui/async-await/no-async-const.rs +++ b/tests/ui/async-await/no-async-const.rs diff --git a/src/test/ui/async-await/no-async-const.stderr b/tests/ui/async-await/no-async-const.stderr index a51dc88a4..a51dc88a4 100644 --- a/src/test/ui/async-await/no-async-const.stderr +++ b/tests/ui/async-await/no-async-const.stderr diff --git a/src/test/ui/async-await/no-const-async.rs b/tests/ui/async-await/no-const-async.rs index cfb0ef1b3..cfb0ef1b3 100644 --- a/src/test/ui/async-await/no-const-async.rs +++ b/tests/ui/async-await/no-const-async.rs diff --git a/src/test/ui/async-await/no-const-async.stderr b/tests/ui/async-await/no-const-async.stderr index c5bd520aa..c5bd520aa 100644 --- a/src/test/ui/async-await/no-const-async.stderr +++ b/tests/ui/async-await/no-const-async.stderr diff --git a/src/test/ui/async-await/no-move-across-await-struct.rs b/tests/ui/async-await/no-move-across-await-struct.rs index 51c9a42b3..51c9a42b3 100644 --- a/src/test/ui/async-await/no-move-across-await-struct.rs +++ b/tests/ui/async-await/no-move-across-await-struct.rs diff --git a/src/test/ui/async-await/no-move-across-await-struct.stderr b/tests/ui/async-await/no-move-across-await-struct.stderr index 4eaed1cf1..4eaed1cf1 100644 --- a/src/test/ui/async-await/no-move-across-await-struct.stderr +++ b/tests/ui/async-await/no-move-across-await-struct.stderr diff --git a/src/test/ui/async-await/no-move-across-await-tuple.rs b/tests/ui/async-await/no-move-across-await-tuple.rs index a65633269..a65633269 100644 --- a/src/test/ui/async-await/no-move-across-await-tuple.rs +++ b/tests/ui/async-await/no-move-across-await-tuple.rs diff --git a/src/test/ui/async-await/no-move-across-await-tuple.stderr b/tests/ui/async-await/no-move-across-await-tuple.stderr index d750df991..d750df991 100644 --- a/src/test/ui/async-await/no-move-across-await-tuple.stderr +++ b/tests/ui/async-await/no-move-across-await-tuple.stderr diff --git a/src/test/ui/async-await/no-non-guaranteed-initialization.rs b/tests/ui/async-await/no-non-guaranteed-initialization.rs index c4d81bf83..c4d81bf83 100644 --- a/src/test/ui/async-await/no-non-guaranteed-initialization.rs +++ b/tests/ui/async-await/no-non-guaranteed-initialization.rs diff --git a/src/test/ui/async-await/no-non-guaranteed-initialization.stderr b/tests/ui/async-await/no-non-guaranteed-initialization.stderr index 12c15bf56..12c15bf56 100644 --- a/src/test/ui/async-await/no-non-guaranteed-initialization.stderr +++ b/tests/ui/async-await/no-non-guaranteed-initialization.stderr diff --git a/src/test/ui/async-await/no-params-non-move-async-closure.rs b/tests/ui/async-await/no-params-non-move-async-closure.rs index 3b15f35c2..3b15f35c2 100644 --- a/src/test/ui/async-await/no-params-non-move-async-closure.rs +++ b/tests/ui/async-await/no-params-non-move-async-closure.rs diff --git a/src/test/ui/async-await/no-params-non-move-async-closure.stderr b/tests/ui/async-await/no-params-non-move-async-closure.stderr index 1f589c516..1f589c516 100644 --- a/src/test/ui/async-await/no-params-non-move-async-closure.stderr +++ b/tests/ui/async-await/no-params-non-move-async-closure.stderr diff --git a/src/test/ui/async-await/no-std.rs b/tests/ui/async-await/no-std.rs index 63e93cdff..63e93cdff 100644 --- a/src/test/ui/async-await/no-std.rs +++ b/tests/ui/async-await/no-std.rs diff --git a/src/test/ui/async-await/no-unsafe-async.rs b/tests/ui/async-await/no-unsafe-async.rs index f40154e16..f40154e16 100644 --- a/src/test/ui/async-await/no-unsafe-async.rs +++ b/tests/ui/async-await/no-unsafe-async.rs diff --git a/src/test/ui/async-await/no-unsafe-async.stderr b/tests/ui/async-await/no-unsafe-async.stderr index f23d17d6b..f23d17d6b 100644 --- a/src/test/ui/async-await/no-unsafe-async.stderr +++ b/tests/ui/async-await/no-unsafe-async.stderr diff --git a/src/test/ui/async-await/non-trivial-drop.rs b/tests/ui/async-await/non-trivial-drop.rs index a3167215d..a3167215d 100644 --- a/src/test/ui/async-await/non-trivial-drop.rs +++ b/tests/ui/async-await/non-trivial-drop.rs diff --git a/src/test/ui/async-await/partial-drop-partial-reinit.drop_tracking.stderr b/tests/ui/async-await/partial-drop-partial-reinit.drop_tracking.stderr index 17b4ef7bd..17b4ef7bd 100644 --- a/src/test/ui/async-await/partial-drop-partial-reinit.drop_tracking.stderr +++ b/tests/ui/async-await/partial-drop-partial-reinit.drop_tracking.stderr diff --git a/src/test/ui/async-await/partial-drop-partial-reinit.no_drop_tracking.stderr b/tests/ui/async-await/partial-drop-partial-reinit.no_drop_tracking.stderr index 34d8a159f..34d8a159f 100644 --- a/src/test/ui/async-await/partial-drop-partial-reinit.no_drop_tracking.stderr +++ b/tests/ui/async-await/partial-drop-partial-reinit.no_drop_tracking.stderr diff --git a/src/test/ui/async-await/partial-drop-partial-reinit.rs b/tests/ui/async-await/partial-drop-partial-reinit.rs index 7d097e72f..7d097e72f 100644 --- a/src/test/ui/async-await/partial-drop-partial-reinit.rs +++ b/tests/ui/async-await/partial-drop-partial-reinit.rs diff --git a/src/test/ui/async-await/partial-initialization-across-await.rs b/tests/ui/async-await/partial-initialization-across-await.rs index 7577aee3f..7577aee3f 100644 --- a/src/test/ui/async-await/partial-initialization-across-await.rs +++ b/tests/ui/async-await/partial-initialization-across-await.rs diff --git a/src/test/ui/async-await/partial-initialization-across-await.stderr b/tests/ui/async-await/partial-initialization-across-await.stderr index 6a0eeffb9..6a0eeffb9 100644 --- a/src/test/ui/async-await/partial-initialization-across-await.stderr +++ b/tests/ui/async-await/partial-initialization-across-await.stderr diff --git a/src/test/ui/async-await/pin-needed-to-poll-2.rs b/tests/ui/async-await/pin-needed-to-poll-2.rs index 6ce70336d..6ce70336d 100644 --- a/src/test/ui/async-await/pin-needed-to-poll-2.rs +++ b/tests/ui/async-await/pin-needed-to-poll-2.rs diff --git a/src/test/ui/async-await/pin-needed-to-poll-2.stderr b/tests/ui/async-await/pin-needed-to-poll-2.stderr index 83d1a02c8..0a6f705e2 100644 --- a/src/test/ui/async-await/pin-needed-to-poll-2.stderr +++ b/tests/ui/async-await/pin-needed-to-poll-2.stderr @@ -14,9 +14,6 @@ LL | struct Sleep(std::marker::PhantomPinned); | ^^^^^ note: required by a bound in `Pin::<P>::new` --> $SRC_DIR/core/src/pin.rs:LL:COL - | -LL | impl<P: Deref<Target: Unpin>> Pin<P> { - | ^^^^^ required by this bound in `Pin::<P>::new` error: aborting due to previous error diff --git a/src/test/ui/async-await/pin-needed-to-poll.rs b/tests/ui/async-await/pin-needed-to-poll.rs index 0d1fe684f..0d1fe684f 100644 --- a/src/test/ui/async-await/pin-needed-to-poll.rs +++ b/tests/ui/async-await/pin-needed-to-poll.rs diff --git a/tests/ui/async-await/pin-needed-to-poll.stderr b/tests/ui/async-await/pin-needed-to-poll.stderr new file mode 100644 index 000000000..b1f4a73aa --- /dev/null +++ b/tests/ui/async-await/pin-needed-to-poll.stderr @@ -0,0 +1,20 @@ +error[E0599]: no method named `poll` found for struct `Sleep` in the current scope + --> $DIR/pin-needed-to-poll.rs:42:20 + | +LL | struct Sleep; + | ------------ method `poll` not found for this struct +... +LL | self.sleep.poll(cx) + | ^^^^ method not found in `Sleep` + --> $SRC_DIR/core/src/future/future.rs:LL:COL + | + = note: the method is available for `Pin<&mut Sleep>` here + | +help: consider wrapping the receiver expression with the appropriate type + | +LL | Pin::new(&mut self.sleep).poll(cx) + | +++++++++++++ + + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0599`. diff --git a/src/test/ui/async-await/proper-span-for-type-error.fixed b/tests/ui/async-await/proper-span-for-type-error.fixed index 7d43b575d..7d43b575d 100644 --- a/src/test/ui/async-await/proper-span-for-type-error.fixed +++ b/tests/ui/async-await/proper-span-for-type-error.fixed diff --git a/src/test/ui/async-await/proper-span-for-type-error.rs b/tests/ui/async-await/proper-span-for-type-error.rs index 00ccde1bf..00ccde1bf 100644 --- a/src/test/ui/async-await/proper-span-for-type-error.rs +++ b/tests/ui/async-await/proper-span-for-type-error.rs diff --git a/src/test/ui/async-await/proper-span-for-type-error.stderr b/tests/ui/async-await/proper-span-for-type-error.stderr index 25f05156c..25f05156c 100644 --- a/src/test/ui/async-await/proper-span-for-type-error.stderr +++ b/tests/ui/async-await/proper-span-for-type-error.stderr diff --git a/src/test/ui/async-await/recursive-async-impl-trait-type.rs b/tests/ui/async-await/recursive-async-impl-trait-type.rs index edc4cb8ac..edc4cb8ac 100644 --- a/src/test/ui/async-await/recursive-async-impl-trait-type.rs +++ b/tests/ui/async-await/recursive-async-impl-trait-type.rs diff --git a/src/test/ui/async-await/recursive-async-impl-trait-type.stderr b/tests/ui/async-await/recursive-async-impl-trait-type.stderr index 63f64f445..63f64f445 100644 --- a/src/test/ui/async-await/recursive-async-impl-trait-type.stderr +++ b/tests/ui/async-await/recursive-async-impl-trait-type.stderr diff --git a/src/test/ui/async-await/repeat_count_const_in_async_fn.rs b/tests/ui/async-await/repeat_count_const_in_async_fn.rs index ebabc3fbf..ebabc3fbf 100644 --- a/src/test/ui/async-await/repeat_count_const_in_async_fn.rs +++ b/tests/ui/async-await/repeat_count_const_in_async_fn.rs diff --git a/src/test/ui/async-await/return-ty-raw-ptr-coercion.rs b/tests/ui/async-await/return-ty-raw-ptr-coercion.rs index 9fe0869ca..9fe0869ca 100644 --- a/src/test/ui/async-await/return-ty-raw-ptr-coercion.rs +++ b/tests/ui/async-await/return-ty-raw-ptr-coercion.rs diff --git a/src/test/ui/async-await/return-ty-unsize-coercion.rs b/tests/ui/async-await/return-ty-unsize-coercion.rs index 93832ef7e..93832ef7e 100644 --- a/src/test/ui/async-await/return-ty-unsize-coercion.rs +++ b/tests/ui/async-await/return-ty-unsize-coercion.rs diff --git a/src/test/ui/async-await/suggest-missing-await-closure.fixed b/tests/ui/async-await/suggest-missing-await-closure.fixed index febcd0218..febcd0218 100644 --- a/src/test/ui/async-await/suggest-missing-await-closure.fixed +++ b/tests/ui/async-await/suggest-missing-await-closure.fixed diff --git a/src/test/ui/async-await/suggest-missing-await-closure.rs b/tests/ui/async-await/suggest-missing-await-closure.rs index faabf6ee3..faabf6ee3 100644 --- a/src/test/ui/async-await/suggest-missing-await-closure.rs +++ b/tests/ui/async-await/suggest-missing-await-closure.rs diff --git a/src/test/ui/async-await/suggest-missing-await-closure.stderr b/tests/ui/async-await/suggest-missing-await-closure.stderr index a5958baff..a5958baff 100644 --- a/src/test/ui/async-await/suggest-missing-await-closure.stderr +++ b/tests/ui/async-await/suggest-missing-await-closure.stderr diff --git a/src/test/ui/async-await/suggest-missing-await.rs b/tests/ui/async-await/suggest-missing-await.rs index 796f82e77..796f82e77 100644 --- a/src/test/ui/async-await/suggest-missing-await.rs +++ b/tests/ui/async-await/suggest-missing-await.rs diff --git a/src/test/ui/async-await/suggest-missing-await.stderr b/tests/ui/async-await/suggest-missing-await.stderr index 1196601ac..1196601ac 100644 --- a/src/test/ui/async-await/suggest-missing-await.stderr +++ b/tests/ui/async-await/suggest-missing-await.stderr diff --git a/src/test/ui/async-await/suggest-switching-edition-on-await-cargo.rs b/tests/ui/async-await/suggest-switching-edition-on-await-cargo.rs index 4919e0a05..4919e0a05 100644 --- a/src/test/ui/async-await/suggest-switching-edition-on-await-cargo.rs +++ b/tests/ui/async-await/suggest-switching-edition-on-await-cargo.rs diff --git a/src/test/ui/async-await/suggest-switching-edition-on-await-cargo.stderr b/tests/ui/async-await/suggest-switching-edition-on-await-cargo.stderr index 409eb179e..409eb179e 100644 --- a/src/test/ui/async-await/suggest-switching-edition-on-await-cargo.stderr +++ b/tests/ui/async-await/suggest-switching-edition-on-await-cargo.stderr diff --git a/src/test/ui/async-await/suggest-switching-edition-on-await.rs b/tests/ui/async-await/suggest-switching-edition-on-await.rs index 9852e8fc9..9852e8fc9 100644 --- a/src/test/ui/async-await/suggest-switching-edition-on-await.rs +++ b/tests/ui/async-await/suggest-switching-edition-on-await.rs diff --git a/src/test/ui/async-await/suggest-switching-edition-on-await.stderr b/tests/ui/async-await/suggest-switching-edition-on-await.stderr index ef3334381..ef3334381 100644 --- a/src/test/ui/async-await/suggest-switching-edition-on-await.stderr +++ b/tests/ui/async-await/suggest-switching-edition-on-await.stderr diff --git a/tests/ui/async-await/track-caller/async-block.rs b/tests/ui/async-await/track-caller/async-block.rs new file mode 100644 index 000000000..8e81387c3 --- /dev/null +++ b/tests/ui/async-await/track-caller/async-block.rs @@ -0,0 +1,9 @@ +// edition:2021 + +#![feature(closure_track_caller, stmt_expr_attributes)] + +fn main() { + let _ = #[track_caller] async { + //~^ ERROR attribute should be applied to a function definition [E0739] + }; +} diff --git a/tests/ui/async-await/track-caller/async-block.stderr b/tests/ui/async-await/track-caller/async-block.stderr new file mode 100644 index 000000000..407439921 --- /dev/null +++ b/tests/ui/async-await/track-caller/async-block.stderr @@ -0,0 +1,12 @@ +error[E0739]: attribute should be applied to a function definition + --> $DIR/async-block.rs:6:13 + | +LL | let _ = #[track_caller] async { + | _____________^^^^^^^^^^^^^^^_- +LL | | +LL | | }; + | |_____- not a function definition + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0739`. diff --git a/src/test/ui/async-await/track-caller/async-closure-gate.rs b/tests/ui/async-await/track-caller/async-closure-gate.rs index d9d556855..d9d556855 100644 --- a/src/test/ui/async-await/track-caller/async-closure-gate.rs +++ b/tests/ui/async-await/track-caller/async-closure-gate.rs diff --git a/src/test/ui/async-await/track-caller/async-closure-gate.stderr b/tests/ui/async-await/track-caller/async-closure-gate.stderr index 498f1b43b..498f1b43b 100644 --- a/src/test/ui/async-await/track-caller/async-closure-gate.stderr +++ b/tests/ui/async-await/track-caller/async-closure-gate.stderr diff --git a/src/test/ui/async-await/track-caller/issue-105134.rs b/tests/ui/async-await/track-caller/issue-105134.rs index 4e52b8e25..4e52b8e25 100644 --- a/src/test/ui/async-await/track-caller/issue-105134.rs +++ b/tests/ui/async-await/track-caller/issue-105134.rs diff --git a/src/test/ui/async-await/track-caller/panic-track-caller.nofeat.stderr b/tests/ui/async-await/track-caller/panic-track-caller.nofeat.stderr index 51ea225f4..51ea225f4 100644 --- a/src/test/ui/async-await/track-caller/panic-track-caller.nofeat.stderr +++ b/tests/ui/async-await/track-caller/panic-track-caller.nofeat.stderr diff --git a/src/test/ui/async-await/track-caller/panic-track-caller.rs b/tests/ui/async-await/track-caller/panic-track-caller.rs index 118361d6c..f45243b0e 100644 --- a/src/test/ui/async-await/track-caller/panic-track-caller.rs +++ b/tests/ui/async-await/track-caller/panic-track-caller.rs @@ -69,6 +69,16 @@ async fn foo_assoc() { Foo::bar_assoc().await } +// Since compilation is expected to fail for this fn when using +// `nofeat`, we test that separately in `async-closure-gate.rs` +#[cfg(feat)] +async fn foo_closure() { + let c = #[track_caller] async || { + panic!(); + }; + c().await +} + fn panicked_at(f: impl FnOnce() + panic::UnwindSafe) -> u32 { let loc = Arc::new(Mutex::new(None)); @@ -97,4 +107,7 @@ fn main() { assert_eq!(panicked_at(|| block_on(foo_assoc())), 69); #[cfg(nofeat)] assert_eq!(panicked_at(|| block_on(foo_assoc())), 64); + + #[cfg(feat)] + assert_eq!(panicked_at(|| block_on(foo_closure())), 79); } diff --git a/src/test/ui/async-await/try-on-option-in-async.rs b/tests/ui/async-await/try-on-option-in-async.rs index afaaed2ef..afaaed2ef 100644 --- a/src/test/ui/async-await/try-on-option-in-async.rs +++ b/tests/ui/async-await/try-on-option-in-async.rs diff --git a/src/test/ui/async-await/try-on-option-in-async.stderr b/tests/ui/async-await/try-on-option-in-async.stderr index 4c7b4fa41..4c7b4fa41 100644 --- a/src/test/ui/async-await/try-on-option-in-async.stderr +++ b/tests/ui/async-await/try-on-option-in-async.stderr diff --git a/src/test/ui/async-await/type-parameter-send.rs b/tests/ui/async-await/type-parameter-send.rs index ab2b62aa5..ab2b62aa5 100644 --- a/src/test/ui/async-await/type-parameter-send.rs +++ b/tests/ui/async-await/type-parameter-send.rs diff --git a/src/test/ui/async-await/unnecessary-await.rs b/tests/ui/async-await/unnecessary-await.rs index 24673777b..24673777b 100644 --- a/src/test/ui/async-await/unnecessary-await.rs +++ b/tests/ui/async-await/unnecessary-await.rs diff --git a/src/test/ui/async-await/unnecessary-await.stderr b/tests/ui/async-await/unnecessary-await.stderr index dc3089336..dc3089336 100644 --- a/src/test/ui/async-await/unnecessary-await.stderr +++ b/tests/ui/async-await/unnecessary-await.stderr diff --git a/src/test/ui/async-await/unreachable-lint-1.rs b/tests/ui/async-await/unreachable-lint-1.rs index d63d643c4..d63d643c4 100644 --- a/src/test/ui/async-await/unreachable-lint-1.rs +++ b/tests/ui/async-await/unreachable-lint-1.rs diff --git a/src/test/ui/async-await/unreachable-lint-1.stderr b/tests/ui/async-await/unreachable-lint-1.stderr index e93257889..e93257889 100644 --- a/src/test/ui/async-await/unreachable-lint-1.stderr +++ b/tests/ui/async-await/unreachable-lint-1.stderr diff --git a/src/test/ui/async-await/unreachable-lint.rs b/tests/ui/async-await/unreachable-lint.rs index ca18cfde4..ca18cfde4 100644 --- a/src/test/ui/async-await/unreachable-lint.rs +++ b/tests/ui/async-await/unreachable-lint.rs diff --git a/src/test/ui/async-await/unresolved_type_param.rs b/tests/ui/async-await/unresolved_type_param.rs index 6d6d80614..6d6d80614 100644 --- a/src/test/ui/async-await/unresolved_type_param.rs +++ b/tests/ui/async-await/unresolved_type_param.rs diff --git a/src/test/ui/async-await/unresolved_type_param.stderr b/tests/ui/async-await/unresolved_type_param.stderr index 7236c681f..7236c681f 100644 --- a/src/test/ui/async-await/unresolved_type_param.stderr +++ b/tests/ui/async-await/unresolved_type_param.stderr diff --git a/src/test/ui/async-await/unused-lifetime.rs b/tests/ui/async-await/unused-lifetime.rs index 6cfd36ba9..6cfd36ba9 100644 --- a/src/test/ui/async-await/unused-lifetime.rs +++ b/tests/ui/async-await/unused-lifetime.rs diff --git a/src/test/ui/async-await/unused-lifetime.stderr b/tests/ui/async-await/unused-lifetime.stderr index 5c00501a6..5c00501a6 100644 --- a/src/test/ui/async-await/unused-lifetime.stderr +++ b/tests/ui/async-await/unused-lifetime.stderr |