mirror of
https://github.com/apple/swift.git
synced 2025-12-21 12:14:44 +01:00
The Python build system always enables concurrency, but CMake has it disable by default. Collaborators that do not use the Python build system and use directly CMake will have it disable, unless they explicitely enable it. If the tests are not marked as requiring the concurrency features, the tests will fail to execute when concurrency is disabled. The changes add the `REQUIRES: concurrency` line to many tests that deal with concurrency, but wasn't marked as such.
68 lines
3.1 KiB
Swift
68 lines
3.1 KiB
Swift
// RUN: %target-swift-ide-test -batch-code-completion -source-filename %s -filecheck %raw-FileCheck -completion-output-dir %t -enable-experimental-concurrency
|
|
|
|
// REQUIRES: concurrency
|
|
|
|
func funcThrows() throws {
|
|
fatalError()
|
|
}
|
|
func asyncThrows() async throws {
|
|
fatalError()
|
|
}
|
|
func asyncRethrows(fn : () async throws -> Int) async rethrows -> Int {
|
|
fatalError()
|
|
}
|
|
func asyncRethrows(fn : () async throws -> String) async rethrows -> String {
|
|
fatalError()
|
|
}
|
|
func invoke<T>(fn : () async throws -> T) async rethrows -> T {
|
|
fatalError()
|
|
}
|
|
func invokeAuto<T>(_ val : @autoclosure () async throws -> T) async rethrows -> T {
|
|
fatalError()
|
|
}
|
|
func normalTask() async -> Int {
|
|
fatalError()
|
|
}
|
|
func throwingTask() async throws -> String {
|
|
fatalError()
|
|
}
|
|
|
|
// CHECK_syncContext: Begin completions
|
|
// CHECK_syncContext-DAG: Decl[FreeFunction]/CurrModule: funcThrows()[' throws'][#Void#];
|
|
// CHECK_syncContext-DAG: Decl[FreeFunction]/CurrModule/NotRecommended: asyncRethrows({#fn: () async throws -> Int##() async throws -> Int#})[' async'][' rethrows'][#Int#];
|
|
// CHECK_syncContext-DAG: Decl[FreeFunction]/CurrModule/NotRecommended: asyncRethrows({#fn: () async throws -> String##() async throws -> String#})[' async'][' rethrows'][#String#];
|
|
// CHECK_syncContext-DAG: Decl[FreeFunction]/CurrModule/NotRecommended: invokeAuto({#(val): T#})[' async'][' rethrows'][#T#];
|
|
// CHECK_syncContext-DAG: Decl[FreeFunction]/CurrModule/NotRecommended: throwingTask()[' async'][' throws'][#String#];
|
|
// CHECK_syncContext-DAG: Decl[FreeFunction]/CurrModule/NotRecommended: invoke({#fn: () async throws -> T##() async throws -> T#})[' async'][' rethrows'][#T#];
|
|
// CHECK_syncContext-DAG: Decl[FreeFunction]/CurrModule/NotRecommended: normalTask()[' async'][#Int#];
|
|
// CHECK_syncContext: End completions
|
|
|
|
// CHECK_asyncContext: Begin completions
|
|
// CHECK_asyncContext-DAG: Decl[FreeFunction]/CurrModule: funcThrows()[' throws'][#Void#];
|
|
// CHECK_asyncContext-DAG: Decl[FreeFunction]/CurrModule: asyncRethrows({#fn: () async throws -> Int##() async throws -> Int#})[' async'][' rethrows'][#Int#];
|
|
// CHECK_asyncContext-DAG: Decl[FreeFunction]/CurrModule: asyncRethrows({#fn: () async throws -> String##() async throws -> String#})[' async'][' rethrows'][#String#];
|
|
// CHECK_asyncContext-DAG: Decl[FreeFunction]/CurrModule: invokeAuto({#(val): T#})[' async'][' rethrows'][#T#];
|
|
// CHECK_asyncContext-DAG: Decl[FreeFunction]/CurrModule: throwingTask()[' async'][' throws'][#String#];
|
|
// CHECK_asyncContext-DAG: Decl[FreeFunction]/CurrModule: invoke({#fn: () async throws -> T##() async throws -> T#})[' async'][' rethrows'][#T#];
|
|
// CHECK_asyncContext-DAG: Decl[FreeFunction]/CurrModule: normalTask()[' async'][#Int#];
|
|
// CHECK_asyncContext: End completions
|
|
|
|
func syncFunc() {
|
|
#^CHECK_syncFunc?check=CHECK_syncContext^#
|
|
}
|
|
func syncClosure() async {
|
|
func handleSyncClosure<T>(_: () -> T) {}
|
|
handleSyncClosure {
|
|
#^CHECK_syncClosure?check=CHECK_syncContext^#
|
|
}
|
|
}
|
|
func syncClosure() {
|
|
func handleAsyncClosure<T>(_: () async -> T) async {}
|
|
handleAsyncClosure {
|
|
#^CHECK_asyncClosure?check=CHECK_asyncContext^#
|
|
}
|
|
}
|
|
func asyncFunc() async {
|
|
#^CHECK_asyncFunc?check=CHECK_asyncContext^#
|
|
}
|