[libcxx-commits] [PATCH] D113977: [Coroutine] Warn deprecated 'std::experimental::coro' uses

Chuanqi Xu via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Tue Nov 16 03:25:00 PST 2021


ChuanqiXu created this revision.
ChuanqiXu added reviewers: Quuxplusone, ldionne.
ChuanqiXu added projects: clang, libc++.
Herald added a subscriber: lxfind.
ChuanqiXu requested review of this revision.
Herald added subscribers: libcxx-commits, cfe-commits.
Herald added a reviewer: libc++.

Since we've decided the to not support `std::experimental::coroutine*`, we should tell the user they need to update.
We could emit warning on the compiler side or in libc++'s side by `#warning` directives.
I choose to warn on the compiler side since some people might use `libstdc++ ` + self-defined `coroutine` header (Seastar is an example: https://github.com/scylladb/seastar/blob/master/include/seastar/core/std-coroutine.hh).
Since new warning might  break the libcxx's CI system, I add `-Wno-coroutine` for the legacy tests. I guess it would be OK since the legacy test would be removed.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D113977

Files:
  clang/include/clang/Basic/DiagnosticGroups.td
  clang/include/clang/Basic/DiagnosticSemaKinds.td
  clang/lib/Sema/SemaCoroutine.cpp
  clang/test/SemaCXX/co_await-range-for-exp-namespace.cpp
  clang/test/SemaCXX/coreturn-eh-exp-namespace.cpp
  clang/test/SemaCXX/coreturn-exp-namespace.cpp
  clang/test/SemaCXX/coroutine-final-suspend-noexcept-exp-namespace.cpp
  clang/test/SemaCXX/coroutine-rvo-exp-namespace.cpp
  clang/test/SemaCXX/coroutine-seh-exp-namespace.cpp
  clang/test/SemaCXX/coroutine-traits-undefined-template-exp-namespace.cpp
  clang/test/SemaCXX/coroutine-unhandled_exception-warning-exp-namespace.cpp
  clang/test/SemaCXX/coroutine_handle-address-return-type-exp-namespace.cpp
  clang/test/SemaCXX/coroutines-exp-namespace.cpp
  libcxx/test/libcxx/experimental/language.support/support.coroutines/dialect_support.pass.cpp
  libcxx/test/std/experimental/language.support/support.coroutines/lit.local.cfg

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D113977.387551.patch
Type: text/x-patch
Size: 9899 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/libcxx-commits/attachments/20211116/72ada4a2/attachment-0001.bin>


More information about the libcxx-commits mailing list