[swift-corelibs-dev] libdispatch prep for integration to the rest of swift-corelibs
David P Grove
groved at us.ibm.com
Thu Jan 14 16:49:27 CST 2016
phausler at apple.com wrote on 01/13/2016 06:04:23 PM:
> Tony brought up an important point about the prep for integration
> this morning: the blocks runtime from libblocksruntime-dev will be
> incompatible with the layout of blocks referenced from swift since
> the object size there is 2 uint32’s bigger to handle the RR (we
> don’t have objc). Without modifying clang and the runtime we won’t
> have a way to properly handoff blocks back and forth w/o objc.
I'm guessing RR expands to Retain Release?
I've started exploring the source in
swift-corelibs-foundation/closure. Any chance there is a design doc laying
out the object model used by the Swift implementation? I'm sure I could
figure it out from the source code, but it would be nice to be able to
cheat and start with a an overview.
> I am currently taking a look at this to see what we can do to add an
> option to the clang code-gen to properly emit this structural
> difference. This isn’t a big issue for Foundation to CF since we
> don’t have many block APIs but dispatch is mostly blocks and that
> might pose an issue.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the swift-corelibs-dev