dbxout.c (dbxout_function_decl): Always call dbxout_function_end.
* dbxout.c (dbxout_function_decl): Always call dbxout_function_end. (dbxout_function_end): Return after emitting the "Lscope" symbol under the same conditions that this function formerly wasn't called. Add explanatory comments. From-SVN: r85546
This commit is contained in:
parent
ca0433930a
commit
403f85032f
2 changed files with 18 additions and 6 deletions
|
@ -1,5 +1,10 @@
|
|||
2004-08-03 Zack Weinberg <zack@codesourcery.com>
|
||||
|
||||
* dbxout.c (dbxout_function_decl): Always call dbxout_function_end.
|
||||
(dbxout_function_end): Return after emitting the "Lscope" symbol
|
||||
under the same conditions that this function formerly wasn't called.
|
||||
Add explanatory comments.
|
||||
|
||||
PR 14680
|
||||
* c-decl.c (record_builtin_type): Call debug_hooks->type_decl
|
||||
on the new decl.
|
||||
|
|
19
gcc/dbxout.c
19
gcc/dbxout.c
|
@ -449,6 +449,8 @@ dbxout_function_end (void)
|
|||
{
|
||||
char lscope_label_name[100];
|
||||
|
||||
/* The Lscope label must be emitted even if we aren't doing anything
|
||||
else; dbxout_block needs it. */
|
||||
function_section (current_function_decl);
|
||||
|
||||
/* Convert Ltext into the appropriate format for local labels in case
|
||||
|
@ -458,6 +460,16 @@ dbxout_function_end (void)
|
|||
targetm.asm_out.internal_label (asmfile, "Lscope", scope_labelno);
|
||||
scope_labelno++;
|
||||
|
||||
/* The N_FUN tag at the end of the function is a GNU extension,
|
||||
which may be undesirable, and is unnecessary if we do not have
|
||||
named sections. */
|
||||
if (!use_gnu_debug_info_extensions
|
||||
#if defined(NO_DBX_FUNCTION_END)
|
||||
|| NO_DBX_FUNCTION_END
|
||||
#endif
|
||||
|| !targetm.have_named_sections)
|
||||
return;
|
||||
|
||||
/* By convention, GCC will mark the end of a function with an N_FUN
|
||||
symbol and an empty string. */
|
||||
#ifdef DBX_OUTPUT_NFUN
|
||||
|
@ -792,12 +804,7 @@ dbxout_function_decl (tree decl)
|
|||
#ifdef DBX_OUTPUT_FUNCTION_END
|
||||
DBX_OUTPUT_FUNCTION_END (asmfile, decl);
|
||||
#endif
|
||||
if (use_gnu_debug_info_extensions
|
||||
#if defined(NO_DBX_FUNCTION_END)
|
||||
&& ! NO_DBX_FUNCTION_END
|
||||
#endif
|
||||
&& targetm.have_named_sections)
|
||||
dbxout_function_end ();
|
||||
dbxout_function_end ();
|
||||
}
|
||||
|
||||
#endif /* DBX_DEBUGGING_INFO */
|
||||
|
|
Loading…
Add table
Reference in a new issue