[all-commits] [llvm/llvm-project] 2e6ae1: [libcxx] [Coroutine] Conform Coroutine Implementation
Chuanqi Xu via All-commits
all-commits at lists.llvm.org
Mon Nov 15 22:15:39 PST 2021
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 2e6ae1d3f2de1aa96ace695ddd6dc58ef259e248
https://github.com/llvm/llvm-project/commit/2e6ae1d3f2de1aa96ace695ddd6dc58ef259e248
Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
Date: 2021-11-16 (Tue, 16 Nov 2021)
Changed paths:
M libcxx/docs/FeatureTestMacroTable.rst
M libcxx/docs/Status/Cxx20Issues.csv
M libcxx/docs/Status/SpaceshipProjects.csv
M libcxx/include/CMakeLists.txt
M libcxx/include/__config
A libcxx/include/__coroutine/coroutine_handle.h
A libcxx/include/__coroutine/coroutine_traits.h
A libcxx/include/__coroutine/noop_coroutine_handle.h
A libcxx/include/__coroutine/trivial_awaitables.h
A libcxx/include/coroutine
M libcxx/include/experimental/__config
M libcxx/include/experimental/coroutine
M libcxx/include/module.modulemap
M libcxx/include/version
A libcxx/test/libcxx/diagnostics/detail.headers/coroutine/coroutine_handle.module.verify.cpp
A libcxx/test/libcxx/diagnostics/detail.headers/coroutine/coroutine_traits.module.verify.cpp
A libcxx/test/libcxx/diagnostics/detail.headers/coroutine/noop_coroutine_handle.module.verify.cpp
A libcxx/test/libcxx/diagnostics/detail.headers/coroutine/trivial_awaitables.module.verify.cpp
M libcxx/test/libcxx/double_include.sh.cpp
A libcxx/test/libcxx/inclusions/coroutine.inclusions.compile.pass.cpp
M libcxx/test/libcxx/min_max_macros.compile.pass.cpp
M libcxx/test/libcxx/no_assert_include.compile.pass.cpp
M libcxx/test/std/experimental/language.support/support.coroutines/end.to.end/generator.pass.cpp
A libcxx/test/std/language.support/support.coroutines/coroutine.handle/coroutine.handle.capacity/operator_bool.pass.cpp
A libcxx/test/std/language.support/support.coroutines/coroutine.handle/coroutine.handle.compare/equal_comp.pass.cpp
A libcxx/test/std/language.support/support.coroutines/coroutine.handle/coroutine.handle.compare/less_comp.pass.cpp
A libcxx/test/std/language.support/support.coroutines/coroutine.handle/coroutine.handle.completion/done.pass.cpp
A libcxx/test/std/language.support/support.coroutines/coroutine.handle/coroutine.handle.con/assign.pass.cpp
A libcxx/test/std/language.support/support.coroutines/coroutine.handle/coroutine.handle.con/construct.pass.cpp
A libcxx/test/std/language.support/support.coroutines/coroutine.handle/coroutine.handle.export/address.pass.cpp
A libcxx/test/std/language.support/support.coroutines/coroutine.handle/coroutine.handle.export/from_address.pass.cpp
A libcxx/test/std/language.support/support.coroutines/coroutine.handle/coroutine.handle.hash/hash.pass.cpp
A libcxx/test/std/language.support/support.coroutines/coroutine.handle/coroutine.handle.noop/noop_coroutine.pass.cpp
A libcxx/test/std/language.support/support.coroutines/coroutine.handle/coroutine.handle.prom/promise.pass.cpp
A libcxx/test/std/language.support/support.coroutines/coroutine.handle/coroutine.handle.resumption/destroy.pass.cpp
A libcxx/test/std/language.support/support.coroutines/coroutine.handle/coroutine.handle.resumption/resume.pass.cpp
A libcxx/test/std/language.support/support.coroutines/coroutine.handle/void_handle.pass.cpp
A libcxx/test/std/language.support/support.coroutines/coroutine.traits/promise_type.pass.cpp
A libcxx/test/std/language.support/support.coroutines/coroutine.trivial.awaitables/suspend_always.pass.cpp
A libcxx/test/std/language.support/support.coroutines/coroutine.trivial.awaitables/suspend_never.pass.cpp
A libcxx/test/std/language.support/support.coroutines/end.to.end/await_result.pass.cpp
A libcxx/test/std/language.support/support.coroutines/end.to.end/bool_await_suspend.pass.cpp
A libcxx/test/std/language.support/support.coroutines/end.to.end/expected.pass.cpp
A libcxx/test/std/language.support/support.coroutines/end.to.end/fullexpr-dtor.pass.cpp
A libcxx/test/std/language.support/support.coroutines/end.to.end/generator.pass.cpp
A libcxx/test/std/language.support/support.coroutines/end.to.end/go.pass.cpp
A libcxx/test/std/language.support/support.coroutines/end.to.end/multishot_func.pass.cpp
A libcxx/test/std/language.support/support.coroutines/end.to.end/oneshot_func.pass.cpp
A libcxx/test/std/language.support/support.limits/support.limits.general/coroutine.version.pass.cpp
M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.pass.cpp
R libcxx/test/support/coroutine_types.h
M libcxx/utils/generate_feature_test_macro_components.py
M libcxx/utils/generate_header_inclusion_tests.py
M libcxx/utils/generate_header_tests.py
M libcxx/utils/libcxx/test/features.py
Log Message:
-----------
[libcxx] [Coroutine] Conform Coroutine Implementation
Since coroutine is merged in C++ standard and the support for coroutine
seems relatively stable. It's the time to move the implementation of
coroutine out of the experimental directory and the std::experimental
namespace. This patch creates header <coroutine> with conformed
implementation with C++ standard. To avoid breaking user's code too
fast, the <experimental/coroutine> header is remained. Note that
<experimental/coroutine> is deprecated and it would be removed in
LLVM15.
Reviewed By: Quuxplusone, ldionne
Differential Revision: https://reviews.llvm.org/D109433
More information about the All-commits
mailing list