[PATCH] D108697: [libc++] Remove <experimental/coroutine>

Chuanqi Xu via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jan 11 06:41:29 PST 2023


ChuanqiXu added a comment.

In D108697#4043125 <https://reviews.llvm.org/D108697#4043125>, @aaron.ballman wrote:

> In D108697#4042119 <https://reviews.llvm.org/D108697#4042119>, @ChuanqiXu wrote:
>
>>> To me, that should apply to command line flags as well as header files because removing either one causes a stop-the-world problem.
>>
>> It looks not bad to me to remove the header files first and  keep `-fcoroutines-ts` flag a little bit longer. Do I misunderstand anything?
>
> If the user's source code was looking for that header file, they now get a *fatal* error instead of a regular error (so all further compilation stops for that TU): https://godbolt.org/z/zzYEc46fW -- I don't see what value the command line flag adds without the header file, so maybe I'm missing something?

Yeah, it is not meaningless to have the command line option without the header file. Since many users would use clang + libstdc++. And there is no such file in libstdc++. So users would use a hacked local "standard" header file which implements something similar to `<experimental/coroutine>`. Here is an example: https://github.com/scylladb/seastar/blob/master/include/seastar/core/std-coroutine.hh. I know other such uses. I understand that such uses are not encouraged and it is out of the ecosystem of the big LLVM project. I just want to say that there are users who use `-fcoroutines-ts` without the <experimental/coroutine> in libcxx. I feel they will feel better to receive a warning for deprecating `-fcoroutines-ts` at first.

>>> (Speaking of the command line flag deprecation warning, is that something you're working on @ChuanqiXu? If not, I can put something together pretty quickly before the Clang 16 branch.)
>>
>> I haven't started to work on it. I just saw no one else is assigned and it is going to be branched. So that I assign myself to offer some labor help. Feel free to take it you would love to : )
>
> I'd appreciate it if you can tackle it if you have the chance in the next week or so. I'm still trying to get caught up on reviews (just in time for the C standards meetings in a a few weeks, lol).

Got it. I'll try to make it and I'll try to note you to take it if I can't make it due to I'll take a vacation in 20th.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D108697



More information about the llvm-commits mailing list