[swift-dev] Requiring blocks (universally)

Joe Groff jgroff at apple.com
Fri Jun 24 13:23:00 CDT 2016


> On Jun 24, 2016, at 11:05 AM, Saleem Abdulrasool via swift-dev <swift-dev at swift.org> wrote:
> 
> Hi,
> 
> The blocks runtime itself is pretty tiny, and works across various targets already, so including it is not too onerous.  As such, Id like to propose enabling blocks across all the targets.
> 
> This make it easier to then import code on targets which have optional blocks support.  For most users, this would be a transparent change, but would mean that the clang importer goes through a more similar path across the various targets.

It's a little trickier than that. We only support Swift refcounting object headers on non-Darwin platforms, since there's no universal objc_retain implementation to fall back to. Blocks don't use Swift-compatible refcounting with the current runtime.

-Joe


More information about the swift-dev mailing list