JF Bastien via llvm-dev
2019-Aug-14 22:55 UTC
[llvm-dev] Clang and LLVM are now using C++14 🥳
Hi C++ lovers, 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. I’ve already committed a few modernizations (and have one more pending review <https://reviews.llvm.org/D66244>), but would appreciate it if others jumped in. I see Jonas is already removing llvm::make_unique! There’s some FIXMEs too if anyone wants to FIXTHEM: lldb/source/Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.cpp: // FIXME: Use C++14 std::equal(it, it, it, it) variant once it's available. lldb/source/Symbol/ClangASTContext.cpp: // FIXME: In C++14 and later, we can just pass m2Type->param_type_end() llvm/include/llvm/ADT/PointerUnion.h: // FIXME: In C++14, replace this with llvm/include/llvm/ExecutionEngine/Orc/LazyEmittingLayer.h: // FIXME: Use capture-init when we move to C++14. llvm/include/llvm/ExecutionEngine/Orc/RPCSerialization.h: // FIXME: Move capture Serialize once we have C++14. llvm/include/llvm/ExecutionEngine/Orc/RPCUtils.h: // FIXME: Move handler into wrapped handler once we have C++14. compiler-rt/include/fuzzer/FuzzedDataProvider.h: // TODO(Dor1s): switch to static_assert once C++14 is allowed. llvm/include/llvm/Object/ObjectFile.h: // TODO: constructors could be removed when C++14 would be adopted. Thanks and happy 14’ing, JF -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20190814/15d3f349/attachment-0001.html>
Finkel, Hal J. via llvm-dev
2019-Aug-14 23:12 UTC
[llvm-dev] Clang and LLVM are now using C++14 🥳
Thanks, JF, and everyone else who contributed to this! -Hal On 8/14/19 5:55 PM, JF Bastien via llvm-dev wrote: Hi C++ lovers, 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. I’ve already committed a few modernizations (and have one more pending review<https://reviews.llvm.org/D66244>), but would appreciate it if others jumped in. I see Jonas is already removing llvm::make_unique! There’s some FIXMEs too if anyone wants to FIXTHEM: lldb/source/Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.cpp: // FIXME: Use C++14 std::equal(it, it, it, it) variant once it's available. lldb/source/Symbol/ClangASTContext.cpp: // FIXME: In C++14 and later, we can just pass m2Type->param_type_end() llvm/include/llvm/ADT/PointerUnion.h: // FIXME: In C++14, replace this with llvm/include/llvm/ExecutionEngine/Orc/LazyEmittingLayer.h: // FIXME: Use capture-init when we move to C++14. llvm/include/llvm/ExecutionEngine/Orc/RPCSerialization.h: // FIXME: Move capture Serialize once we have C++14. llvm/include/llvm/ExecutionEngine/Orc/RPCUtils.h: // FIXME: Move handler into wrapped handler once we have C++14. compiler-rt/include/fuzzer/FuzzedDataProvider.h: // TODO(Dor1s): switch to static_assert once C++14 is allowed. llvm/include/llvm/Object/ObjectFile.h: // TODO: constructors could be removed when C++14 would be adopted. Thanks and happy 14’ing, JF _______________________________________________ LLVM Developers mailing list llvm-dev at lists.llvm.org<mailto:llvm-dev at lists.llvm.org> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev -- Hal Finkel Lead, Compiler Technology and Programming Languages Leadership Computing Facility Argonne National Laboratory -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20190814/64f80141/attachment.html>
Chris Lattner via llvm-dev
2019-Aug-15 00:12 UTC
[llvm-dev] Clang and LLVM are now using C++14 🥳
This is great! Congratulations! -Chris> On Aug 14, 2019, at 3:55 PM, JF Bastien via llvm-dev <llvm-dev at lists.llvm.org> wrote: > > Hi C++ lovers, > > 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. > > I’ve already committed a few modernizations (and have one more pending review <https://reviews.llvm.org/D66244>), but would appreciate it if others jumped in. I see Jonas is already removing llvm::make_unique! There’s some FIXMEs too if anyone wants to FIXTHEM: > > lldb/source/Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.cpp: // FIXME: Use C++14 std::equal(it, it, it, it) variant once it's available. > lldb/source/Symbol/ClangASTContext.cpp: // FIXME: In C++14 and later, we can just pass m2Type->param_type_end() > llvm/include/llvm/ADT/PointerUnion.h: // FIXME: In C++14, replace this with > llvm/include/llvm/ExecutionEngine/Orc/LazyEmittingLayer.h: // FIXME: Use capture-init when we move to C++14. > llvm/include/llvm/ExecutionEngine/Orc/RPCSerialization.h: // FIXME: Move capture Serialize once we have C++14. > llvm/include/llvm/ExecutionEngine/Orc/RPCUtils.h: // FIXME: Move handler into wrapped handler once we have C++14. > compiler-rt/include/fuzzer/FuzzedDataProvider.h: // TODO(Dor1s): switch to static_assert once C++14 is allowed. > llvm/include/llvm/Object/ObjectFile.h: // TODO: constructors could be removed when C++14 would be adopted. > > Thanks and happy 14’ing, > > JF > _______________________________________________ > LLVM Developers mailing list > llvm-dev at lists.llvm.org > https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20190814/78a36196/attachment.html>