Rollup merge of #125733 - compiler-errors:async-fn-assoc-item, r=fmease · model-checking/verify-rust-std@e935223 (original) (raw)

2 files changed

lines changed

Original file line number Diff line number Diff line change
@@ -35,7 +35,7 @@ use crate::task::{Context, Poll};
35 35 pub trait Future {
36 36 /// The type of value produced on completion.
37 37 #[stable(feature = "futures_api", since = "1.36.0")]
38 -#[rustc_diagnostic_item = "FutureOutput"]
38 +#[cfg_attr(not(bootstrap), lang = "future_output")]
39 39 type Output;
40 40
41 41 /// Attempt to resolve the future to a final value, registering
Original file line number Diff line number Diff line change
@@ -26,6 +26,7 @@ pub trait AsyncFn<Args: Tuple>: AsyncFnMut {
26 26 pub trait AsyncFnMut<Args: Tuple>: AsyncFnOnce<Args> {
27 27 /// Future returned by [`AsyncFnMut::async_call_mut`] and [`AsyncFn::async_call`].
28 28 #[unstable(feature = "async_fn_traits", issue = "none")]
29 +#[cfg_attr(not(bootstrap), lang = "call_ref_future")]
29 30 type CallRefFuture<'a>: Future<Output = Self::Output>
30 31 where
31 32 Self: 'a;
@@ -46,10 +47,12 @@ pub trait AsyncFnMut<Args: Tuple>: AsyncFnOnce {
46 47 pub trait AsyncFnOnce<Args: Tuple> {
47 48 /// Future returned by [`AsyncFnOnce::async_call_once`].
48 49 #[unstable(feature = "async_fn_traits", issue = "none")]
50 +#[cfg_attr(not(bootstrap), lang = "call_once_future")]
49 51 type CallOnceFuture: Future<Output = Self::Output>;
50 52
51 53 /// Output type of the called closure's future.
52 54 #[unstable(feature = "async_fn_traits", issue = "none")]
55 +#[cfg_attr(not(bootstrap), lang = "async_fn_once_output")]
53 56 type Output;
54 57
55 58 /// Call the [`AsyncFnOnce`], returning a future which may move out of the called closure.
@@ -143,6 +146,7 @@ mod internal_implementation_detail {
143 146 // `for<'env> fn() -> (&'env T, ...)`. This allows us to represent the binder
144 147 // of the closure's self-capture, and these upvar types will be instantiated with
145 148 // the `'closure_env` region provided to the associated type.
149 +#[cfg_attr(not(bootstrap), lang = "async_fn_kind_upvars")]
146 150 type Upvars<'closure_env, Inputs, Upvars, BorrowedUpvarsAsFnPtr>;
147 151 }
148 152 }