https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85222
Jakub Jelinek <jakub at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |jakub at gcc dot gnu.org --- Comment #14 from Jakub Jelinek <jakub at gcc dot gnu.org> --- For the in-place transformation in libsupc++ if something catches the old failure and a new failure is thrown, is it possible? The other way around, if we would be throwing the new failure and catching the old one, doesn't seem to be possible, the cxx11 failure is bigger (32 bytes compared to 16 bytes for the old one). Could we just move it to a temporary, in-place construct the old one and destruct the temporary? What if the code then rethrows it and is caught again in code that expects the new failure?