https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107819
Mikael Morin <mikael at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |mikael at gcc dot gnu.org --- Comment #4 from Mikael Morin <mikael at gcc dot gnu.org> --- (In reply to anlauf from comment #3) > But then no temporary is generated for a(n), which means we miss a > corresponding check elsewhere. > But is it required to generate a temporary? As I understand it, the code is invalid, and (correctly) diagnosed, so there is nothing else to do. It's invalid because of 15.5.2.13 Restrictions on entities associated with dummy arguments: (4) If the value of the entity or any subobject of it is affected through the dummy argument, then at any time during the invocation and execution of the procedure, either before or after the definition, it shall be referenced only through that dummy argument unless (...)