I’m ok with that, but the reason I’m pushing is because there is no clear plan of action.  Even if the plan of action is “When X happens, we can enable C++14”, that’s fine too.  I just want to know, concretely, what is X.<br><br>We should either be able to say never or give a reasonable set of conditions that would enable a switch.  All I’ve seen though is “it’s hard” which just means I’m going to ask again next year, and the year after, etc due to lack of clear guidance.<br><br>To address your point though , this isn’t really about building everything with clang.  You don’t need to bootstrap Clang to build a hypothetical C++17 enabled LLVM, you could also bootstrap a more modern version of GCC.<br><br>This is really more fundamentally about “Can we have a clearly defined policy about how often we can bump the minimum compiler version, like we have for MSVC?” <br><br><div class="gmail_quote"><div dir="ltr">On Tue, Oct 31, 2017 at 10:30 PM Chris Lattner <<a href="mailto:clattner@nondot.org">clattner@nondot.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
> On Oct 31, 2017, at 2:11 PM, Zachary Turner via llvm-dev <<a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a>> wrote:<br>
><br>
> Note that we could, in theory, provide a python script or something called `bootstrap.py` which<br>
><br>
> a) downloads a source tarball, or specific git revision for a particular clang release<br>
> b) compiles it using system compiler<br>
> c) installs it<br>
> d) cleans up<br>
><br>
> so that you wouldn't have to do anything manually.<br>
<br>
I love that you’re pushing hard on this, but I don’t think that this approach is practical.  While I love the future where everything is built with ToT clang, there are lots of reason why people either don’t want to do that (e.g. for “subjectively" bad reasons) or where they really can’t (e.g. clang doesn’t support their weird target).<br>
<br>
-Chris<br>
<br>
</blockquote></div>