> On Dec 19, 2017, at 5:08 PM, Saleem Abdulrasool <compn...@compnerd.org> wrote:
> 
> 
> 
>>> On Dec 19, 2017, at 3:59 PM, Ted Kremenek <kreme...@apple.com> wrote:
>>> 
>>> 
>>> 
>>>> On Dec 19, 2017, at 2:31 PM, Daniel Dunbar <daniel_dun...@apple.com> wrote:
>>>> 
>>>> 
>>>> 
>>>> On Dec 19, 2017, at 2:27 PM, Ted Kremenek <kreme...@apple.com> wrote:
>>>> 
>>>> Fair enough.
>>>> 
>>>> We care about swiftc and llbuild building a variety of platforms today — 
>>>> FreeBSD, Rasberry Pi, etc.  My impression is that C++14 is generally 
>>>> supported by both (a) the mininum versions of the distributions we support 
>>>> today and (b) the current versions of the platforms we’d like to expand 
>>>> Swift to in the future.  Does that sound right?  I suspect you went 
>>>> through the same kind of reasoning with llbuild.
>>> 
>>> It sounds reasonable, but to be honest I never did an audit of what 
>>> platforms supported C++14.
>> 
>> Interesting.  Was that not a concern when that choice was made for llbuild, 
>> or was the context different?
>> 
>>> 
>>> I do think that we could always use the Clang++ we build as part of Swift 
>>> to build Swift itself. By that logic, it seems reasonable to expect we 
>>> could always have C++14 support, although it does mean that porters would 
>>> need modern Clang to support their platform. However, that is likely 
>>> largely a prerequisite for Swift to work as well.
>> 
>> That’s a significant change to make just to get C++14 support guaranteed, 
>> and (I believe) would have a non-trivial impact on those using development 
>> environments that expect to use the Clang bundled with them to build 
>> projects.
> 
> Agreed.  However, the current supported platforms already support this 
> minimum.  I think that future platforms will need to provide that anyways.  
> If the system doesn’t have a modern toolchain available, I suspect that it 
> already would not have C++11 available either.  In such a scenario, they need 
> to provide a newer toolchain, and so the difference there is minimal as we 
> already require C++11.

OK, I’m convinced.

I want to hold off for a tiny bit just to see if anyone else has any commentary 
on this thread before we make a change.


> 
>>> 
>>>  - Daniel
>>> 
>>>> 
>>>>> On Dec 19, 2017, 2:23 PM -0800, Daniel Dunbar <daniel_dun...@apple.com>, 
>>>>> wrote:
>>>>> It wasn’t changed, it has *always* been C++14 since the day we open 
>>>>> sourced it. I only investigated the platforms we officially support 
>>>>> (Ubuntu 14.04/15.10 at the time, and macOS 10.10+ IIRC).
>>>>> 
>>>>> - Daniel
>>>>> 
>>>>>> On Dec 19, 2017, at 2:21 PM, Ted Kremenek <kreme...@apple.com> wrote:
>>>>>> 
>>>>>> Daniel,
>>>>>> 
>>>>>> When you changed llbuild to require C++14, what platforms did you take 
>>>>>> into account with that change? If you have already done the assessment 
>>>>>> here it could speed a resolution of a decision.
>>>>>> 
>>>>>> Thanks,
>>>>>> Ted
>>>>>> 
>>>>>>> On Dec 13, 2017, at 3:19 PM, Daniel Dunbar via swift-lldb-dev 
>>>>>>> <swift-lldb-...@swift.org> wrote:
>>>>>>> 
>>>>>>> FWIW, llbuild requires C++14.
>>>>>>> 
>>>>>>> We have to do some minor shenanigans to workaround bugs in libstdc++ on 
>>>>>>> 14.04, and our use is probably minimal, but just throwing that out 
>>>>>>> there.
>>>>>>> 
>>>>>>> - Daniel
>>>>>>> 
>>>>>>>> On Dec 13, 2017, at 1:45 PM, Jordan Rose via swift-lldb-dev 
>>>>>>>> <swift-lldb-...@swift.org> wrote:
>>>>>>>> 
>>>>>>>> No one else has commented on this yet today, so I'll put in that I 
>>>>>>>> don't have any objections to this and don't foresee any major 
>>>>>>>> problems. The one place where we'd need to be careful is with LLDB, 
>>>>>>>> which imports Swift headers; if Swift is going to move to C++14, then 
>>>>>>>> Swift-LLDB probably has to as well. LLDB folks, what do you think?
>>>>>>>> 
>>>>>>>> The other thing to check is if our minimum Clang or libstdc++ 
>>>>>>>> requirements on Linux didn't support C++14. It looks like our README 
>>>>>>>> is vague on that, but LLDB already suggests a minimum requirement of 
>>>>>>>> Clang 3.5, which is new enough. I suspect we're okay here.
>>>>>>>> 
>>>>>>>> Jordan
>>>>>>>> 
>>>>>>>> 
>>>>>>>>> On Dec 13, 2017, at 10:36, Saleem Abdulrasool via swift-dev 
>>>>>>>>> <swift-dev@swift.org> wrote:
>>>>>>>>> 
>>>>>>>>> Hi,
>>>>>>>>> 
>>>>>>>>> The newer Windows SDK requires the use of C++14 (the SDK headers use 
>>>>>>>>> `auto` return types without trailing type information). Joe mentioned 
>>>>>>>>> that there was some interest in switching the rest of swift to C++14 
>>>>>>>>> as well. I figured that I would just start a thread here to determine 
>>>>>>>>> if this is okay to do globally rather than just specifically for the 
>>>>>>>>> Windows builds to ensure that we can build the Windows components.
>>>>>>>>> 
>>>>>>>>> Thanks.
>>>>>>>>> 
>>>>>>>>> --
>>>>>>>>> Saleem Abdulrasool
>>>>>>>>> compnerd (at) compnerd (dot) org
>>>>>>>>> _______________________________________________
>>>>>>>>> swift-dev mailing list
>>>>>>>>> swift-dev@swift.org
>>>>>>>>> https://lists.swift.org/mailman/listinfo/swift-dev
>>>>>>>> 
>>>>>>>> _______________________________________________
>>>>>>>> swift-lldb-dev mailing list
>>>>>>>> swift-lldb-...@swift.org
>>>>>>>> https://lists.swift.org/mailman/listinfo/swift-lldb-dev
>>>>>>> 
>>>>>>> _______________________________________________
>>>>>>> swift-lldb-dev mailing list
>>>>>>> swift-lldb-...@swift.org
>>>>>>> https://lists.swift.org/mailman/listinfo/swift-lldb-dev
> 
_______________________________________________
swift-dev mailing list
swift-dev@swift.org
https://lists.swift.org/mailman/listinfo/swift-dev

Reply via email to