> On Dec 30, 2015, at 17:49, Luke Howard via swift-dev <[email protected]> 
> wrote:
> 
> 
>> On 31 Dec 2015, at 12:33 PM, Joe Groff <[email protected] 
>> <mailto:[email protected]>> wrote:
>> 
>> 
>>> On Dec 30, 2015, at 1:24 AM, Luke Howard via swift-dev <[email protected] 
>>> <mailto:[email protected]>> 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
[email protected]
https://lists.swift.org/mailman/listinfo/swift-dev

Reply via email to