================
@@ -11591,6 +11591,10 @@ def err_conflicting_aligned_options : Error <
 def err_coro_invalid_addr_of_label : Error<
   "the GNU address of label extension is not allowed in coroutines."
 >;
+def err_coroutine_return_type : Error<
----------------
ChuanqiXu9 wrote:

The intention of `[[clang::coro_return_type]]`  (and ` 
[[clang::coro_wrapper]]`) is to allow analyzer to recognize coroutines from the 
function signature. And if the users are able to downgrade the erros to a 
silent warning, then result of analyzing is basically out of order. Then 
`[[clang::coro_return_type]]`  is basically meaningless.

On the other hand, from the perspective of library writers, if we announce a 
class as `[[clang::coro_return_type]]` , we will assume it is an error if the 
users don't use it for a coroutine.

https://github.com/llvm/llvm-project/pull/71945
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to