diff options
author | dberlin <dberlin@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-03-04 03:08:10 +0000 |
---|---|---|
committer | dberlin <dberlin@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-03-04 03:08:10 +0000 |
commit | 156660d7b49908d2990e04b2bc6a5d04915cfd2c (patch) | |
tree | 8b30afa78d4a038ac01a473a3fda126b6bbd2757 /gcc/dwarf2out.c | |
parent | 6ce29c48b801ec4621dbd473fc5d2e876c9ad45a (diff) | |
download | gcc-156660d7b49908d2990e04b2bc6a5d04915cfd2c.tar.gz |
2005-03-03 Daniel Berlin <dberlin@dbrelin.org>
Fix PR debug/20253
* c-opts.c (c_common_parse_file): Call start_source_file
and end_source_file at the approriate times.
* dwarf2out.c (dwarf2out_finish): Don't auto-end
the main file, it will be done for us now.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@95872 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/dwarf2out.c')
-rw-r--r-- | gcc/dwarf2out.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c index 76661ba6d8b..5157ae358bc 100644 --- a/gcc/dwarf2out.c +++ b/gcc/dwarf2out.c @@ -10497,8 +10497,12 @@ add_abstract_origin_attribute (dw_die_ref die, tree origin) if (TYPE_P (fn)) fn = TYPE_STUB_DECL (fn); + + /* TYPE_STUB_DECL may have given us a NULL, which decl_function_context + won't like. */ + if (fn) + fn = decl_function_context (fn); - fn = decl_function_context (fn); if (fn) dwarf2out_abstract_function (fn); } @@ -13795,11 +13799,10 @@ dwarf2out_finish (const char *filename) output_ranges (); } - /* Have to end the primary source file. */ + /* Have to end the macro section. */ if (debug_info_level >= DINFO_LEVEL_VERBOSE) { named_section_flags (DEBUG_MACINFO_SECTION, SECTION_DEBUG); - dw2_asm_output_data (1, DW_MACINFO_end_file, "End file"); dw2_asm_output_data (1, 0, "End compilation unit"); } |