File tree 2 files changed +23
-1
lines changed
compiler/rustc_middle/src/ty
tests/ui/async-await/async-closures
2 files changed +23
-1
lines changed Original file line number Diff line number Diff line change @@ -571,7 +571,10 @@ impl<'tcx> TyCtxt<'tcx> {
571
571
/// Returns `true` if `def_id` refers to a definition that does not have its own
572
572
/// type-checking context, i.e. closure, coroutine or inline const.
573
573
pub fn is_typeck_child ( self , def_id : DefId ) -> bool {
574
- matches ! ( self . def_kind( def_id) , DefKind :: Closure | DefKind :: InlineConst )
574
+ matches ! (
575
+ self . def_kind( def_id) ,
576
+ DefKind :: Closure | DefKind :: InlineConst | DefKind :: SyntheticCoroutineBody
577
+ )
575
578
}
576
579
577
580
/// Returns `true` if `def_id` refers to a trait (i.e., `trait Foo { ... }`).
Original file line number Diff line number Diff line change
1
+ //@ aux-build:block-on.rs
2
+ //@ edition: 2021
3
+ //@ build-pass
4
+ //@ compile-flags: -Cdebuginfo=2
5
+
6
+ #![ feature( async_closure) ]
7
+
8
+ extern crate block_on;
9
+
10
+ async fn call_once ( f : impl async FnOnce ( ) ) {
11
+ f ( ) . await ;
12
+ }
13
+
14
+ pub fn main ( ) {
15
+ block_on:: block_on ( async {
16
+ let async_closure = async move || { } ;
17
+ call_once ( async_closure) . await ;
18
+ } ) ;
19
+ }
You can’t perform that action at this time.
0 commit comments