You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Apple Swift version 3.1 (swiftlang-802.0.53 clang-802.0.42)
Target: x86_64-apple-macosx10.9
Additional Detail from JIRA
Votes
0
Component/s
libdispatch
Labels
Improvement
Assignee
ktopley-apple (JIRA)
Priority
Medium
md5: 2bebab35e0011d92df8ef134f2df0ba5
Issue Description:
The diagnostics for the imported version of dispatch_apply(3) are contradictory:
1> import Dispatch
2> dispatch_apply
error: repl.swift:2:1: error: 'dispatch_apply' has been replaced by 'DispatchQueue.apply(attributes:iterations:execute:)'
dispatch_apply
^~~~~~~~~~~~~~
DispatchQueue.apply
2> DispatchQueue.main.apply
error: repl.swift:2:15: error: value of type 'DispatchQueue' has no member 'apply'
DispatchQueue.main.apply
~~~~~~~~~~~~~~^~~~ ~~~~~
2> DispatchQueue.apply
error: repl.swift:2:1: error: type 'DispatchQueue' has no member 'apply'
DispatchQueue.apply
^~~~~~~~~~~~~ ~~~~~
2> DispatchQueue(label: "").apply
error: repl.swift:2:1: error: value of type 'DispatchQueue' has no member 'apply'
DispatchQueue(label: "").apply
^~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~
The DispatchQueue.concurrentPerform() API provides an alternative, but doesn't allow controlling the queue that work will be executed on.
The text was updated successfully, but these errors were encountered:
Controlling the queue to execute work on is a misfeature of dispatch_apply(), there are almost no valid use for it, which is why it was never made available to swift, and there's no plan to change this at this time.
We should fix the diagnostics so that dispatch_apply() redirects to concurrentPErform.
Environment
Apple Swift version 3.1 (swiftlang-802.0.53 clang-802.0.42)
Target: x86_64-apple-macosx10.9
Additional Detail from JIRA
md5: 2bebab35e0011d92df8ef134f2df0ba5
Issue Description:
The diagnostics for the imported version of
dispatch_apply(3)
are contradictory:The
DispatchQueue.concurrentPerform()
API provides an alternative, but doesn't allow controlling the queue that work will be executed on.The text was updated successfully, but these errors were encountered: