gnulib: define the path to gnulib's parent dir
[binutils-gdb.git] / gdb / buildsym.c
index 9525962d9668436f76eb870ed118d6ea91b8f42e..0f7449fed97f077c3432a824f6659550adb8e069 100644 (file)
@@ -1,5 +1,5 @@
 /* Support routines for building symbol tables in GDB's internal format.
-   Copyright (C) 1986-2020 Free Software Foundation, Inc.
+   Copyright (C) 1986-2021 Free Software Foundation, Inc.
 
    This file is part of GDB.
 
@@ -707,13 +707,18 @@ buildsym_compunit::record_line (struct subfile *subfile, int line,
      anyway.  */
   if (line == 0)
     {
+      struct linetable_entry *last = nullptr;
       while (subfile->line_vector->nitems > 0)
        {
-         e = subfile->line_vector->item + subfile->line_vector->nitems - 1;
-         if (e->pc != pc)
+         last = subfile->line_vector->item + subfile->line_vector->nitems - 1;
+         if (last->pc != pc)
            break;
          subfile->line_vector->nitems--;
        }
+
+      /* Ignore an end-of-sequence marker marking an empty sequence.  */
+      if (last == nullptr || last->line == 0)
+       return;
     }
 
   e = subfile->line_vector->item + subfile->line_vector->nitems++;