https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99281
--- Comment #3 from CVS Commits <cvs-commit at gcc dot gnu.org> --- The master branch has been updated by Richard Biener <rgue...@gcc.gnu.org>: https://gcc.gnu.org/g:c173346aac4a66ad3747f380f2f0c97d2dbf8973 commit r11-7420-gc173346aac4a66ad3747f380f2f0c97d2dbf8973 Author: Richard Biener <rguent...@suse.de> Date: Fri Feb 26 08:45:36 2021 +0100 middle-end/99281 - avoid bitfield stores into addressable types This avoids doing bitfield stores into the return object of calls when using return-slot optimization and the type is addressable. Instead we have to pass down the original target RTX to the call expansion which otherwise tries to create a new temporary. 2021-02-26 Richard Biener <rguent...@suse.de> PR middle-end/99281 * expr.c (store_field): For calls with return-slot optimization and addressable return type expand the store directly. * g++.dg/pr99218.C: New testcase.