[all-commits] [llvm/llvm-project] 30f589: [libc++] Constexpr-proof some machinery in not_fn....
Quuxplusone via All-commits
all-commits at lists.llvm.org
Mon Dec 28 10:25:49 PST 2020
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 30f589c912115b4653f596eb3fd5bf62412f8aa7
https://github.com/llvm/llvm-project/commit/30f589c912115b4653f596eb3fd5bf62412f8aa7
Author: Arthur O'Dwyer <arthur.j.odwyer at gmail.com>
Date: 2020-12-28 (Mon, 28 Dec 2020)
Changed paths:
M libcxx/test/std/utilities/function.objects/func.not_fn/not_fn.pass.cpp
Log Message:
-----------
[libc++] Constexpr-proof some machinery in not_fn.pass.cpp. NFCI.
We don't need to use global variables here; we can store the "State"
of this machinery on the stack, so that it's constexpr-friendly.
Commit: 7b00e9fae3853d4693e608cc52f6d6da5059f5ff
https://github.com/llvm/llvm-project/commit/7b00e9fae3853d4693e608cc52f6d6da5059f5ff
Author: Arthur O'Dwyer <arthur.j.odwyer at gmail.com>
Date: 2020-12-28 (Mon, 28 Dec 2020)
Changed paths:
M libcxx/docs/Cxx2aStatusPaperStatus.csv
M libcxx/docs/FeatureTestMacroTable.rst
M libcxx/include/__functional_base
M libcxx/include/functional
M libcxx/include/type_traits
M libcxx/include/version
M libcxx/test/std/language.support/support.limits/support.limits.general/array.version.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/functional.version.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/iterator.version.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/string_view.version.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/tuple.version.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/utility.version.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.pass.cpp
A libcxx/test/std/utilities/function.objects/func.invoke/invoke_constexpr.pass.cpp
M libcxx/test/std/utilities/function.objects/func.memfn/member_data.pass.cpp
M libcxx/test/std/utilities/function.objects/func.memfn/member_function.pass.cpp
M libcxx/test/std/utilities/function.objects/func.memfn/member_function_const.pass.cpp
M libcxx/test/std/utilities/function.objects/func.not_fn/not_fn.pass.cpp
M libcxx/test/std/utilities/function.objects/func.search/func.search.default/default.pass.cpp
M libcxx/test/std/utilities/function.objects/func.search/func.search.default/default.pred.pass.cpp
M libcxx/utils/generate_feature_test_macro_components.py
Log Message:
-----------
[libc++] [P1065] Constexpr invoke, reference_wrapper, mem_fn, not_fn, default_searcher.
This completes the implementation of P1065 "constexpr INVOKE":
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2019/p1065r2.html
This doesn't yet complete the implementation of P1032 "Misc constexpr bits,"
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p1032r1.html
but it does complete all of the <functional> bits, which means
that we can now set `__cpp_lib_constexpr_functional` for C++20.
This could use more constexpr tests for `std::reference_wrapper<T>`,
but the existing tests are extremely non-constexpr-friendly and
so I don't want to get into that rabbit-hole today.
Differential Revision: https://reviews.llvm.org/D93815
Compare: https://github.com/llvm/llvm-project/compare/4b33b2387787...7b00e9fae385
More information about the All-commits
mailing list