diff options
author | Jason Merrill <jason@redhat.com> | 2022-09-30 10:04:22 -0400 |
---|---|---|
committer | Jason Merrill <jason@redhat.com> | 2022-10-06 17:43:14 -0400 |
commit | 0143b277c9b17215ab3d4b361e1aef431799e813 (patch) | |
tree | b8b1af7a80fd3c9ee61805b089de2bf6b118ae65 /libgomp | |
parent | 49b9a8c8cc498b1ed2f566bee858e651e14ba37b (diff) | |
download | gcc-0143b277c9b17215ab3d4b361e1aef431799e813.zip gcc-0143b277c9b17215ab3d4b361e1aef431799e813.tar.gz gcc-0143b277c9b17215ab3d4b361e1aef431799e813.tar.bz2 |
c++: fix broken conversion in coroutines
You can't use CONVERT_EXPR to convert between two class types.
VIEW_CONVERT_EXPR takes liberties with the C++ type system, but is probably
safe in this context. Let's also only use it when the type isn't already
what we want.
gcc/cp/ChangeLog:
* coroutines.cc (expand_one_await_expression): Change conversion
to VIEW_CONVERT_EXPR.
* cp-gimplify.cc (cp_genericize_r) [CONVERT_EXPR]: Add assert.
Diffstat (limited to 'libgomp')
0 files changed, 0 insertions, 0 deletions