https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98765

--- Comment #2 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
--- gcc/dwarf2out.c.jj  2021-01-20 08:32:09.612958930 +0100
+++ gcc/dwarf2out.c     2021-01-20 13:49:42.367772872 +0100
@@ -4733,7 +4733,9 @@ int
 reset_indirect_string (indirect_string_node **h, void *)
 {
   struct indirect_string_node *node = *h;
-  if (node->form == DW_FORM_strp || node->form == dwarf_FORM (DW_FORM_strx))
+  if (node->form == DW_FORM_strp
+      || node->form == DW_FORM_line_strp
+      || node->form == dwarf_FORM (DW_FORM_strx))
     {
       free (node->label);
       node->label = NULL;
fixes it but the string is then emitted into .debug_str rather than
.debug_line_str in the non-.gnu.debuglto_* case.

Reply via email to