Re: [PATCH RFC] c++: fix broken conversion in coroutines

2022-10-06 Thread Iain Sandoe
> On 6 Oct 2022, at 22:44, Jason Merrill wrote: > > On 10/3/22 23:53, Jason Merrill wrote: >> On 9/30/22 18:50, Iain Sandoe wrote: >>> Hi Jason, >>> On 30 Sep 2022, at 23:06, Jason Merrill wrote: You can't use CONVERT_EXPR to convert between two class types, and it was b

Re: [PATCH RFC] c++: fix broken conversion in coroutines

2022-10-06 Thread Jason Merrill via Gcc-patches
On 10/3/22 23:53, Jason Merrill wrote: On 9/30/22 18:50, Iain Sandoe wrote: Hi Jason, On 30 Sep 2022, at 23:06, Jason Merrill wrote: You can't use CONVERT_EXPR to convert between two class types, and it was breaking copy elision. Unfortunately, this patch breaks symmetric-transfer-00-basi

Re: [PATCH RFC] c++: fix broken conversion in coroutines

2022-10-03 Thread Jason Merrill via Gcc-patches
On 9/30/22 18:50, Iain Sandoe wrote: Hi Jason, On 30 Sep 2022, at 23:06, Jason Merrill wrote: You can't use CONVERT_EXPR to convert between two class types, and it was breaking copy elision. Unfortunately, this patch breaks symmetric-transfer-00-basic.C, where susp_type is Loopy::handle_type

Re: [PATCH RFC] c++: fix broken conversion in coroutines

2022-09-30 Thread Iain Sandoe
Hi Jason, > On 30 Sep 2022, at 23:06, Jason Merrill wrote: > > You can't use CONVERT_EXPR to convert between two class types, and it was > breaking copy elision. > > Unfortunately, this patch breaks symmetric-transfer-00-basic.C, where > susp_type is Loopy::handle_type. How is this supposed to

[PATCH RFC] c++: fix broken conversion in coroutines

2022-09-30 Thread Jason Merrill via Gcc-patches
You can't use CONVERT_EXPR to convert between two class types, and it was breaking copy elision. Unfortunately, this patch breaks symmetric-transfer-00-basic.C, where susp_type is Loopy::handle_type. How is this supposed to work? gcc/cp/ChangeLog: * coroutines.cc (expand_one_await_expre