> On Dec 30, 2015, at 17:49, Luke Howard via swift-dev <swift-dev@swift.org> 
> wrote:
> 
> 
>> On 31 Dec 2015, at 12:33 PM, Joe Groff <jgr...@apple.com 
>> <mailto:jgr...@apple.com>> wrote:
>> 
>> 
>>> On Dec 30, 2015, at 1:24 AM, Luke Howard via swift-dev <swift-dev@swift.org 
>>> <mailto:swift-dev@swift.org>> wrote:
>>> 
>>> Per [SR-404], anything that consumed libFoundation could not dynamically 
>>> cast to a Foundation protocol because the build script was missing the 
>>> magic swift.ld linker script to advertise the start of the protocol 
>>> conformances table.
>> 
>> Is it possible that the library is getting linked by clang instead of 
>> swiftc? I would expect the swiftc driver to pass the linker script down to 
>> ld (but maybe it's not).
> 
> You’re right, clang is being called to link. Changing to swiftc will be a bit 
> more intrusive to the Foundation build scripts (at given my mediocre 
> knowledge of Python) but is probably the right answer.

I have a longstanding desire to do this, but then we have the opposite problem: 
clang++ knows what extra libraries need to be added in order to link C++ code 
correctly, and swiftc knows what flags to use to link Swift code correctly. Of 
course, the libraries with Swift source have little-to-no C++ in them, so maybe 
it's okay.

Jordan

_______________________________________________
swift-dev mailing list
swift-dev@swift.org
https://lists.swift.org/mailman/listinfo/swift-dev

Reply via email to