Chandler Carruth
2013-Nov-07 00:20 UTC
[LLVMdev] [cfe-dev] RFC: A proposal to move toward using C++11 features in LLVM & Clang / bounding support for old host compilers
On Tue, Nov 5, 2013 at 10:12 AM, <dag at cray.com> wrote:> Chandler Carruth <chandlerc at google.com> writes: > > So far, I'm not hearing any significant objections. > > > > I'm going to put the plan of record about this into the release notes, > > and I'll write up a blog post about it and do some other things which > > will likely make enough noise to ensure we aren't missing people's > > objections over the next few weeks. (Maybe at the dev meeting! ;]) By > > the time we go to branch the release, we should know if there are any > > latent concerns from folks. > > I'm fine with the general plan but I do want to see a longer notice > period for toolchain changes on trunk. 1-2 months is too short. >The overwhelming majority of contributors and users of trunk seem to be fine with this, so while I'm interested in anything we can do to make it easier for you, unless we see significantly more concerns about this plan, I think we should move forward. Fundamentally, we aren't going to be able to make everyone happy. Some people will be seriously inconvenienced by this, but thus far the benefit seems to significantly outweigh the cost. That said, while I'm about to commit the change to the release notes and send a summary email to the dev lists, we should continue discussing this. Nothing is going to be set in stone until the 3.4 release goes out, and maybe not even then. Especially if you or others want to discuss this with me in person (or others in person) at the dev meeting, I'm writing this email from the hacking session. =] Happy to chat. -Chandler PS: I've seen the other emails as well, and will be trying to reply to them as I get time over this week. -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20131106/bd1940ca/attachment.html>
dag at cray.com
2013-Nov-08 16:49 UTC
[LLVMdev] [cfe-dev] RFC: A proposal to move toward using C++11 features in LLVM & Clang / bounding support for old host compilers
Chandler Carruth <chandlerc at google.com> writes:> The overwhelming majority of contributors and users of trunk seem to > be fine with this, so while I'm interested in anything we can do to > make it easier for you, unless we see significantly more concerns > about this plan, I think we should move forward. > > Fundamentally, we aren't going to be able to make everyone happy. Some > people will be seriously inconvenienced by this, but thus far the > benefit seems to significantly outweigh the cost.But the benefit is still there even if it takes a month or two longer. This is a *serious* issue. It doesn't seem like people really comprehend the challenges of upgrading toolchains in large software projects. We're talking about millions and millions of lines of code spread out over many independent modules. These all have to fit together to create a usable tool. What is so hard about waiting an extra month to give people a chance to test the new toolchain?> That said, while I'm about to commit the change to the release notes > and send a summary email to the dev lists, we should continue > discussing this. Nothing is going to be set in stone until the 3.4 > release goes out, and maybe not even then. Especially if you or others > want to discuss this with me in person (or others in person) at the > dev meeting, I'm writing this email from the hacking session. =] Happy > to chat.I'm not going to be at the dev meeting. -David
Renato Golin
2013-Nov-08 18:40 UTC
[LLVMdev] [cfe-dev] RFC: A proposal to move toward using C++11 features in LLVM & Clang / bounding support for old host compilers
On 8 November 2013 08:49, <dag at cray.com> wrote:> This is a *serious* issue. It doesn't seem like people really > comprehend the challenges of upgrading toolchains in large software > projects. We're talking about millions and millions of lines of code > spread out over many independent modules. These all have to fit > together to create a usable tool. >I think we got into two modal states where people believe one side want to add all C++11 stuff tomorrow and the other never. This is not the case. Chandler adding it to the release notes will say that, very likely, the release 3.5 will have some C++11. It doesn't say that on the day after 3.4 is branched, we'll have a complete re-write of our algorithms. If you're following trunk, you're already used to API changes. The main difference is that the first C++11 new change will force you to change the compiler for your project. It could not happen, if we have enough pressure (I haven't moved my project yet!), but there will be back pressure (please move! do you need help?!). Or it could happen quite quickly, if we all find out that it wasn't that hard after all. I don't know. What is so hard about waiting an extra month to give people a chance to> test the new toolchain? >Nothing. And adding a note to the release won't make it come faster "just because". I think it's perfectly reasonable to wait a few month in 3.5 trunk for every one to accommodate. Whenever you're ready, announce on the list, and people can start sending patches. There will probably be corner cases (cross-compilation of small embedded devices), and we can all help with the migration, but chances are that Clang already supports it. cheers, --renato -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20131108/dc09632c/attachment.html>
Richard Smith
2013-Nov-08 19:29 UTC
[LLVMdev] [cfe-dev] RFC: A proposal to move toward using C++11 features in LLVM & Clang / bounding support for old host compilers
On Fri, Nov 8, 2013 at 8:49 AM, <dag at cray.com> wrote:> Chandler Carruth <chandlerc at google.com> writes: > > > The overwhelming majority of contributors and users of trunk seem to > > be fine with this, so while I'm interested in anything we can do to > > make it easier for you, unless we see significantly more concerns > > about this plan, I think we should move forward. > > > > Fundamentally, we aren't going to be able to make everyone happy. Some > > people will be seriously inconvenienced by this, but thus far the > > benefit seems to significantly outweigh the cost. > > But the benefit is still there even if it takes a month or two longer. > > This is a *serious* issue. It doesn't seem like people really > comprehend the challenges of upgrading toolchains in large software > projects. We're talking about millions and millions of lines of code > spread out over many independent modules. These all have to fit > together to create a usable tool. > > What is so hard about waiting an extra month to give people a chance to > test the new toolchain?The options we're discussing seem to be: 1) Switch trunk to C++11 at time T. People whose toolchains aren't ready stop integrating from LLVM trunk until they are ready. 2) Switch trunk to C++11 at time T + an extra month. Again, people whose toolchains aren't ready stop integrating from LLVM trunk until they are ready. For people who are paying attention to this thread, or to the release notes, or otherwise being engaged in the community, there seems to be very little difference. If they do (say) weekly integrates, that's *at most* three extra integrates they miss. That's unfortunate, but not huge. For people who are *not* paying attention, this makes no difference at all: they're not going to start switching their toolchain until they notice a problem. So I don't see that waiting is a significant win. Conversely, it gives us less time to get the C++11-enabled code tested across relevant toolchains (including perhaps rolling back the change if we find a fatal issue) before we release 3.5 next year. Setting T = 3.4 release has another advantage: people who stop integrating then are stopped at a stable, well-tested revision, not after the inevitable post-release churn.> That said, while I'm about to commit the change to the release notes > > and send a summary email to the dev lists, we should continue > > discussing this. Nothing is going to be set in stone until the 3.4 > > release goes out, and maybe not even then. Especially if you or others > > want to discuss this with me in person (or others in person) at the > > dev meeting, I'm writing this email from the hacking session. =] Happy > > to chat. > > I'm not going to be at the dev meeting. > > -David > _______________________________________________ > cfe-dev mailing list > cfe-dev at cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20131108/5559af28/attachment.html>
Eric Christopher
2013-Nov-09 08:22 UTC
[LLVMdev] [cfe-dev] RFC: A proposal to move toward using C++11 features in LLVM & Clang / bounding support for old host compilers
On Fri, Nov 8, 2013 at 8:49 AM, <dag at cray.com> wrote:> Chandler Carruth <chandlerc at google.com> writes: > > > The overwhelming majority of contributors and users of trunk seem to > > be fine with this, so while I'm interested in anything we can do to > > make it easier for you, unless we see significantly more concerns > > about this plan, I think we should move forward. > > > > Fundamentally, we aren't going to be able to make everyone happy. Some > > people will be seriously inconvenienced by this, but thus far the > > benefit seems to significantly outweigh the cost. > > But the benefit is still there even if it takes a month or two longer. > > This is a *serious* issue. It doesn't seem like people really > comprehend the challenges of upgrading toolchains in large software > projects. We're talking about millions and millions of lines of code > spread out over many independent modules. These all have to fit > together to create a usable tool. > > What is so hard about waiting an extra month to give people a chance to > test the new toolchain? >You could start now with compiling under C++11 mode. The autoconf and (I think) cmake ability is there now. That should get you your extra month - especially if you count when we started this discussion. -eric> > > That said, while I'm about to commit the change to the release notes > > and send a summary email to the dev lists, we should continue > > discussing this. Nothing is going to be set in stone until the 3.4 > > release goes out, and maybe not even then. Especially if you or others > > want to discuss this with me in person (or others in person) at the > > dev meeting, I'm writing this email from the hacking session. =] Happy > > to chat. > > I'm not going to be at the dev meeting. > > -David > _______________________________________________ > cfe-dev mailing list > cfe-dev at cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20131109/ee540072/attachment.html>
Possibly Parallel Threads
- [LLVMdev] [cfe-dev] RFC: A proposal to move toward using C++11 features in LLVM & Clang / bounding support for old host compilers
- [LLVMdev] [cfe-dev] RFC: A proposal to move toward using C++11 features in LLVM & Clang / bounding support for old host compilers
- [LLVMdev] [cfe-dev] RFC: A proposal to move toward using C++11 features in LLVM & Clang / bounding support for old host compilers
- [LLVMdev] [cfe-dev] RFC: A proposal to move toward using C++11 features in LLVM & Clang / bounding support for old host compilers
- [LLVMdev] [cfe-dev] RFC: A proposal to move toward using C++11 features in LLVM & Clang / bounding support for old host compilers