aboutsummaryrefslogtreecommitdiff
path: root/libgomp/task.c
diff options
context:
space:
mode:
authorIain Sandoe <iain@sandoe.co.uk>2021-02-15 16:13:36 +0000
committerIain Sandoe <iain@sandoe.co.uk>2021-02-25 19:24:52 +0000
commitb8ff3f8efeda02a6bedebfaf20b93645ae3bb5b8 (patch)
tree87d97f7bc9458a6334c8431af597e447d591de48 /libgomp/task.c
parent7005a50d0121954031a223ea5a6c57aaa7e3efd3 (diff)
downloadgcc-b8ff3f8efeda02a6bedebfaf20b93645ae3bb5b8.zip
gcc-b8ff3f8efeda02a6bedebfaf20b93645ae3bb5b8.tar.gz
gcc-b8ff3f8efeda02a6bedebfaf20b93645ae3bb5b8.tar.bz2
coroutines : Call promise CTOR with parm copies [PR97587].
As the PR notes, we were calling the promise CTOR with the original function parameters, not the copy (as pointed, a previous wording of the section was unambiguous). Fixed thus. gcc/cp/ChangeLog: PR c++/97587 * coroutines.cc (struct param_info): Track rvalue refs. (morph_fn_to_coro): Track rvalue refs, and call the promise CTOR with the frame copy of passed parms. gcc/testsuite/ChangeLog: PR c++/97587 * g++.dg/coroutines/coro1-refs-and-ctors.h: Add a CTOR with two reference parms, to distinguish the rvalue ref. variant. * g++.dg/coroutines/pr97587.C: New test.
Diffstat (limited to 'libgomp/task.c')
0 files changed, 0 insertions, 0 deletions