[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
Mon Oct 28 17:27:17 PDT 2013


On Mon, Oct 28, 2013 at 5:06 PM, "C. Bergström" <cbergstrom at pathscale.com>wrote:

> fuzzy://How much "heads up"


One full release cycle, so approximately 6 months before a release
incorporating this. In addition, probably several weeks to a month between
the initial branch for the 3.4 release and the commits that make this so.
Still more weeks between when we put it into the release notes for 3.4 and
blog about it.


> -1
> If we do it - we should do it properly.
>

We're not talking about doing it improperly, but about doing two
independent things independently.


> ---------
> I'm strongly against anything which forces this to rely on gnu runtime and
> libs.
>

You are not being forced to rely on anything. Many people have successfully
bootstrapped with libc++, and if you find issues with your setup doing such
a bootstrap, patches to fix that would be very welcome.

And moreover, a requirement to not use GNU runtimes or libraries in the
bootstrap would be totally novel for the project. LLVM and Clang require
xlC and MSVC to bootstrap on certain platforms, and you're OK with that?
There are plenty of platforms with no Clang port at all but where GCC works
fine, and we rely on a GCC host there. This is not new, and not something
we should burden the discussion about C++11 features with.



> ---------
> Further - While c++11 is the best thing ever - Is there actually a driving
> use case where using c++11 features will significantly improve the quality
> of the codebase?


Yes. See my first email for some of them. See numerous other discussions.
Have you tried writing any code with C++11?


> implementation perspective or performance?


We get most of this already today, but it would be cleaner if we just
admitted we rely on it.


> Are there coding style guidelines which should be updated - I've seen code
> (ab)using auto where it was mostly author preference and not really
> necessary.


Yes, and we have code review for this. If you would like to help review
patches for high quality usage of C++11 constructs, that would be welcome.


> You really push for this, but the underlying motivation still seems
> unclear. (Show me the c++11 code in the subproject which is the root cause
> please)
>

I don't know how it could be unclear. I spelled out reasons in my first
email. There was a more thorough discussion in past threads on this
subject. I'm not going to repeat myself here.

And it should be quite obvious that LLD is actively using C++11 code to
good effect? That was discussed extensively when the project was added.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20131028/8e2b8988/attachment.html>


More information about the llvm-dev mailing list