https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115232
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED Assignee|unassigned at gcc dot gnu.org |rguenth at gcc dot gnu.org --- Comment #3 from Richard Biener <rguenth at gcc dot gnu.org> --- (gdb) p newc $1 = (const demangle_component &) <error reading variable: Cannot access memory at address 0x0> (gdb) p delc $2 = (const demangle_component &) <error reading variable: Cannot access memory at address 0x0> 1763 demangle_component *ndc = cplus_demangle_v3_components (new_str, 0, &np); 1764 demangle_component *ddc = cplus_demangle_v3_components (del_str, 0, &dp); 1765 bool mismatch = new_delete_mismatch_p (*ndc, *ddc); (gdb) p new_str $3 = 0x7ffff7009ea8 "_ZZN5OuterIvE6methodIvEEvvQ3cstITL0__EEN5InnernwEm" (gdb) p del_str $4 = 0x7ffff7009e70 "_ZZN5OuterIvE6methodIvEEvvQ3cstITL0__EEN5InnerdlEPv" so we cannot demangle these? But we expect no failure. It should be trivial to build in safety here, mine for that. I'll keep the PR open for the failed demangle though.