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

Arthur O'Dwyer via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Tue Nov 16 07:51:41 PST 2021


Quuxplusone requested changes to this revision.
Quuxplusone added inline comments.
This revision now requires changes to proceed.


================
Comment at: clang/include/clang/Basic/DiagnosticSemaKinds.td:11015-11017
+  "Found deprecated std::experimental::%0. Consider to update your libc++ "
+  "or move coroutine components into std namespace in case you are using "
+  "self-defined coroutine components">,
----------------
ldionne wrote:
> I would simply reword as "Please move from std::experimental::%0 to std::%0. Support for std::experimental::%0 will be removed in LLVM 15."
> 
> IMO the set of users defining their own coroutines header is small and it's not worth making the warning more obtuse for that corner case.
+1; people who write their own "coroutine.h" header are also operating outside of standard C++ //and// outside of the Clang/libc++ ecosystem, so they should be quite used to figuring things out for themselves. If they want friendly help from the toolchain, they should use the toolchain's headers.


================
Comment at: clang/test/SemaCXX/co_await-range-for-exp-namespace.cpp:54
   for
-    co_await(auto i : arr) {}
+    co_await(auto i : arr) {} // expected-warning {{Found deprecated std::experimental}}
   // expected-error at -1 {{call to deleted member function 'await_transform'}}
----------------
I'd like to see the next word in this diagnostic. (Ditto throughout. I'd also like to make sure that the diagnostic is not being printed with single-quotes in the wrong place, e.g. `Found deprecated std::experimental::'coroutine_handle'`; if it is, please fix that.)

This code is also misindented; please fix it up, as long as you're touching it. Should be
```
for co_await (auto i : arr) {}
```


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D113977/new/

https://reviews.llvm.org/D113977



More information about the libcxx-commits mailing list