-
Notifications
You must be signed in to change notification settings - Fork 10.5k
/
Copy pathasync_let_capture.swift
22 lines (17 loc) · 1.1 KB
/
async_let_capture.swift
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
// RUN: %target-swift-frontend -target %target-swift-5.1-abi-triple %s -emit-sil -o /dev/null -verify
// RUN: %target-swift-frontend -target %target-swift-5.1-abi-triple %s -emit-sil -o /dev/null -verify -strict-concurrency=targeted
// RUN: %target-swift-frontend -target %target-swift-5.1-abi-triple %s -emit-sil -o /dev/null -verify -strict-concurrency=complete
// RUN: %target-swift-frontend -target %target-swift-5.1-abi-triple %s -emit-sil -o /dev/null -verify -strict-concurrency=complete -enable-upcoming-feature RegionBasedIsolation
// REQUIRES: concurrency
// REQUIRES: swift_feature_RegionBasedIsolation
func autoclosureCapture(_: @autoclosure () async throws -> Int) async {}
func nonescapingCapture(_: () async throws -> Int) {}
func escapingCapture(_: @escaping () async throws -> Int) {}
func foo() async {
async let x = 32
async let y = x // expected-error{{not supported}}
_ = await y
await autoclosureCapture(await x)// expected-error{{not supported}}
nonescapingCapture { await x }// expected-error{{not supported}}
escapingCapture { await x }// expected-error{{not supported}}
}