<div dir="ltr">For those of you who were not able to attend the LLVM Developer Meeting (and as a recap for those who were), we had a productive BoF about enabling C++14 or C++17 in LLVM.  The outcome of this can be generally summarized as:<div><br></div><div>* There were no major objections to moving to C++14 / C++17 "as soon as possible"</div><div>* "As soon as possible" is not immediately, but we are currently targeting March of 2019 due to some downstream contributors' needing to resolve some blockages before it can be possible.</div><div>* There did not seem to be a strong sentiment that we should only move to C++14, so for the sake of this discussion we're assuming 17 unless someone presents a strong argument why 17 is *less* desirable than 14.</div><div><br></div><div>Minimum Compiler Versions for "Reasonable C++17 Support" (Mostly everything minus CTAD)</div><div>GCC - Version 7 [1]  (Version 8 for CTAD)</div><div>Clang - Version 4 [2]  (Version 5 for CTAD)</div><div>MSVC - 2017 Update 5 [3] (Update 7 for CTAD)</div><div><br></div><div>We plan to add a CMake warning if your compiler version is below these versions soon.  Around January, we will promote this to a CMake error which you must manually override by passing -DCMAKE_ALLLOW_DEPRECATED_COMPILER.</div><div><br></div><div>If I'm forgetting anything or misrepresenting anything that was said at the BoF please feel free to correct me.</div><div><br></div><div>[1] - <a href="https://www.gnu.org/software/gcc/projects/cxx-status.html">https://www.gnu.org/software/gcc/projects/cxx-status.html</a></div><div>[2] - <a href="https://clang.llvm.org/cxx_status.html">https://clang.llvm.org/cxx_status.html</a></div><div>[3] - <a href="https://docs.microsoft.com/en-us/cpp/visual-cpp-language-conformance?view=vs-2017">https://docs.microsoft.com/en-us/cpp/visual-cpp-language-conformance?view=vs-2017</a></div></div>