GDB SIGSEGV opening a Fortran program compiled with ifort

This patch fixes a SIGSEGV when trying to open a Fortran program
compiled with ifort (reproduced using version using version 16.0.1.150).
The error can be reproduce with most, if not any program. For instance,
a single file only containing "end", compiled with no additional flag,
suffices.

gdb/ChangeLog:

       PR gdb/19208
       * dwarf2read.c (read_partial_die): Do not call set_objfile_main_name
       if the function has no name.
This commit is contained in:
Jonas Hahnfeld 2016-01-06 10:10:39 +04:00 committed by Joel Brobecker
parent b677098d4e
commit dc36518224
2 changed files with 9 additions and 1 deletions

View File

@ -1,3 +1,10 @@
2016-01-17 Jonas Hahnfeld <Hahnfeld@itc.rwth-aachen.de> (tiny change)
Pushed by Joel Brobecker <brobecker@adacore.com>.
PR gdb/19208
* dwarf2read.c (read_partial_die): Do not call set_objfile_main_name
if the function has no name.
2016-01-15 Sandra Loosemore <sandra@codesourcery.com>
* charset.c [PHONY_ICONV] (GDB_DEFAULT_HOST_CHARSET):

View File

@ -15936,7 +15936,8 @@ read_partial_die (const struct die_reader_specs *reader,
compilers pick up the new representation, we'll support this
practice. */
if (DW_UNSND (&attr) == DW_CC_program
&& cu->language == language_fortran)
&& cu->language == language_fortran
&& part_die->name != NULL)
set_objfile_main_name (objfile, part_die->name, language_fortran);
break;
case DW_AT_inline: