SuccessChanges

Summary

  1. [mlir] AsyncRuntime: disable mlir-runner init/disable for WIN32 (details)
  2. [libc++/abi] Re-remove unnecessary null pointer checks from operator delete (details)
  3. Re-enable __cpp_lib_constexpr_functional. (details)
  4. [libc++] Mark [P0475] "LWG2511: guaranteed copy elision for piecewise construction" as Complete. (details)
  5. [libc++] Mark [P0809] "LWG2831: Comparing Unordered Containers" as Nothing To Do. (details)
Commit 78b3bce23b113ab5dbd33d746ba48f2a3c20c5ff by ezhulenev
[mlir] AsyncRuntime: disable mlir-runner init/disable for WIN32

Differential Revision: https://reviews.llvm.org/D94339
The file was modifiedmlir/lib/ExecutionEngine/AsyncRuntime.cpp
Commit bc556e5685c0f97e79fb7b3c6f15cc5062db8e36 by Louis Dionne
[libc++/abi] Re-remove unnecessary null pointer checks from operator delete

In 7cd67904f776, we removed the unnecessary nullptr checks from the libc++abi
definition of operator delete, but we forgot to update the definition in
libc++ (damn code duplication!). Then, in d4a1e03c5fb5, I synced the
definitions across libc++ and libc++abi, but I did it the wrong way around.
I re-added the if() checks to libc++abi instead of removing them from libc++.

In ef74f0fdc339, we re-removed the if() check from operator delete, but
only in libc++abi. This patch corrects this mess and removes it
consistently in libc++ and libc++abi.

Differential Revision: https://reviews.llvm.org/D93473
The file was modifiedlibcxx/src/new.cpp
The file was modifiedlibcxxabi/src/stdlib_new_delete.cpp
Commit ca1694b9d07cf14dd15d804b37fa151f4e082c2f by arthur.j.odwyer
Re-enable __cpp_lib_constexpr_functional.

I accidentally disabled this feature-test macro in my D93830,
due to a rebasing conflict. It had been enabled by my D93815,
and should have remained enabled.
The file was modifiedlibcxx/include/version
The file was modifiedlibcxx/test/std/language.support/support.limits/support.limits.general/functional.version.pass.cpp
The file was modifiedlibcxx/utils/generate_feature_test_macro_components.py
The file was modifiedlibcxx/test/std/language.support/support.limits/support.limits.general/version.version.pass.cpp
The file was modifiedlibcxx/docs/FeatureTestMacroTable.rst
Commit 963b771e24caff502d6b5d9b2f72dd88dd56e97a by arthur.j.odwyer
[libc++] Mark [P0475] "LWG2511: guaranteed copy elision for piecewise construction" as Complete.

The point of LWG2511 is basically just to make sure that we use
`tuple<Args&&...>` instead of `tuple<Args...>` in a couple of places
inside `scoped_allocator_adaptor` and inside `pair`.
As far as I can tell, this has been true for libc++
since EricWF's D27612 (and maybe even earlier than that).
The file was modifiedlibcxx/docs/Cxx2aStatusPaperStatus.csv
Commit cdd7cbf7b56bf9e46914ee95c0658f543c7c14a9 by arthur.j.odwyer
[libc++] Mark [P0809] "LWG2831: Comparing Unordered Containers" as Nothing To Do.

http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p0809r0.pdf

This issue/paper simply removed some library UB because vendors were
already doing the right thing. libc++ has always done the right thing
(in this respect).

Differential Revision: https://reviews.llvm.org/D93816
The file was modifiedlibcxx/docs/Cxx2aStatusPaperStatus.csv