* buildsym.c (end_symtab): Document that end_symtab can return

NULL under non-error conditions.
 	* dwarfread.c (read_file_scope):  Guard against dereferencing NULL
 	returned from end_symtab for empty compilation units.
This commit is contained in:
Fred Fish
1992-08-12 18:17:48 +00:00
parent a00721fc4a
commit 7b5d965008
3 changed files with 30 additions and 13 deletions

View File

@@ -1662,19 +1662,22 @@ read_file_scope (dip, thisdie, enddie, objfile)
decode_line_numbers (lnbase);
process_dies (thisdie + dip -> die_length, enddie, objfile);
symtab = end_symtab (dip -> at_high_pc, 0, 0, objfile);
/* FIXME: The following may need to be expanded for other languages */
switch (dip -> at_language)
if (symtab != NULL)
{
case LANG_C89:
case LANG_C:
symtab -> language = language_c;
break;
case LANG_C_PLUS_PLUS:
symtab -> language = language_cplus;
break;
default:
;
}
/* FIXME: The following may need to be expanded for other languages */
switch (dip -> at_language)
{
case LANG_C89:
case LANG_C:
symtab -> language = language_c;
break;
case LANG_C_PLUS_PLUS:
symtab -> language = language_cplus;
break;
default:
;
}
}
do_cleanups (back_to);
utypes = NULL;
numutypes = 0;