[swift-corelibs-dev] [libdispatch] DISPATCH_QUEUE_SERIAL & DISPATCH_QUEUE_CONCURRENT

Daniel Eggert danieleggert at me.com
Tue Jan 19 13:37:29 CST 2016

> On 19 Jan 2016, at 18:56, Tony Parker <anthony.parker at apple.com> wrote:
> Hi Dave, Daniel,
> I responded in the bug but I will also respond here:
> On Linux, I expect there to be no overlay. Instead we will just have a module map and swift files created by the dispatch project itself. This is what we do for Foundation, and it does require that stuff in the Darwin overlay is duplicated as part of the swift-corelibs-foundation project for Linux.
> The purpose of the overlay on Darwin is that we cannot yet ship Swift code as part of dispatch itself (since the standard library is shipped with each app as a static library). We don’t have that limitation on Linux.
> - Tony

Hi Tony,

That sounds like a good approach.

And having swift files created by the dispatch project itself would also solve the blocks issue -- those swift files could do native wrapping of the _f functions to re-create their block based counterparts. I added a comment to SR-577 that shows this. It would be a clean approach and allow for a a different blocks ABI on Linux -- something that’s apparently desired.


More information about the swift-corelibs-dev mailing list