<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">Hi C++ lovers,<div class=""><br class=""></div><div class="">Clang and LLVM are now using C++14, and it looks like all the bots are as happy as they ever get. We can therefore start removing workarounds for older toolchains, using C++14 constructs which ADT / Support used to provide, and using new C++14 constructs such as generic lambdas.</div><div class=""><br class=""></div><div class="">I’ve already committed a few modernizations (and have <a href="https://reviews.llvm.org/D66244" class="">one more pending review</a>), but would appreciate it if others jumped in. I see Jonas is already removing <font face="Courier" class="">llvm::make_unique</font>! There’s some FIXMEs too if anyone wants to FIXTHEM:</div><div class=""><br class=""></div><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;" class=""><div class=""><font face="Courier" size="1" class="">lldb/source/Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.cpp:    // FIXME: Use C++14 std::equal(it, it, it, it) variant once it's available.</font></div><div class=""><font face="Courier" size="1" class="">lldb/source/Symbol/ClangASTContext.cpp:  // FIXME: In C++14 and later, we can just pass m2Type->param_type_end()</font></div><div class=""><font face="Courier" size="1" class="">llvm/include/llvm/ADT/PointerUnion.h:  // FIXME: In C++14, replace this with</font></div><div class=""><font face="Courier" size="1" class="">llvm/include/llvm/ExecutionEngine/Orc/LazyEmittingLayer.h:          // FIXME: Use capture-init when we move to C++14.</font></div><div class=""><font face="Courier" size="1" class="">llvm/include/llvm/ExecutionEngine/Orc/RPCSerialization.h:      // FIXME: Move capture Serialize once we have C++14.</font></div><div class=""><font face="Courier" size="1" class="">llvm/include/llvm/ExecutionEngine/Orc/RPCUtils.h:    // FIXME: Move handler into wrapped handler once we have C++14.</font></div><div class=""><font face="Courier" size="1" class="">compiler-rt/include/fuzzer/FuzzedDataProvider.h:    // TODO(Dor1s): switch to static_assert once C++14 is allowed.<br class="">llvm/include/llvm/Object/ObjectFile.h:  // TODO: constructors could be removed when C++14 would be adopted.</font></div></blockquote><div class=""><br class=""></div><div class="">Thanks and happy 14’ing,</div><div class=""><br class=""></div><div class="">JF</div></body></html>