https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101118
--- Comment #16 from Iain Sandoe <iains at gcc dot gnu.org> --- (In reply to Jan Hubicka from comment #15) > > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101118 > > > > --- Comment #14 from Iain Sandoe <iains at gcc dot gnu.org> --- > > (In reply to Jan Hubicka from comment #13) > > > > So .. for promotion of target expression temporaries to frame vars, one > > > > of: > > > > - a) we need to find a different way to name them > > > I think we can just count number of fields within a given frame type? > > > > yeah I made a hack that did this (and resolves this PR) but I'd think we can > > find something neater, I'd like to c++-ify the sources some more, and > > create a > > class to manage the frame... ( maybe for GCC14 now ). > Thanks! > Since this is really part of the ABI, I wonder why it is not covered by > the IA-64 C++ ABI? Was it ever updated for coroutines? There is a coroutines ABI agreed between the "vendors" I have editorship of the draft - and I suppose it needs to be included in the Itanium (and MSVC) ABI docs. However, the only part of the ABI that is described by this is the type-erased interface (there is never a need for the body of the coroutine, and detailed frame layout) to be interpreted by a coroutine body from a second compiler. ** other than the portion of the frame that contains the pointers to resume and destroy **. The actual code is TU-local (and must remain that way even under LTO)