dwarf2out.c (output_line_info): Put the marker for the end of the line number info at the actual end.

* dwarf2out.c (output_line_info): Put the marker for the end of
        the line number info at the actual end.
        (gen_struct_or_union_type_die): Use decl_function_context
        to check for local classes.
        * dwarfout.c (output_type): Likewise.

From-SVN: r32105
This commit is contained in:
Jason Merrill 2000-02-22 22:04:35 +00:00 committed by Jason Merrill
parent 99803cd4cc
commit f19f17e080
3 changed files with 16 additions and 7 deletions

View File

@ -1,3 +1,11 @@
2000-02-21 Jason Merrill <jason@casey.cygnus.com>
* dwarf2out.c (output_line_info): Put the marker for the end of
the line number info at the actual end.
(gen_struct_or_union_type_die): Use decl_function_context
to check for local classes.
* dwarfout.c (output_type): Likewise.
Tue Feb 22 01:38:57 2000 Jeffrey A Law (law@cygnus.com)
* pa.h (FUNCTION_ARG_PASS_BY_REFERENCE): Handle pass-by-reference

View File

@ -2398,6 +2398,8 @@ static int get_AT_flag PARAMS ((dw_die_ref,
enum dwarf_attribute));
static unsigned get_AT_unsigned PARAMS ((dw_die_ref,
enum dwarf_attribute));
static inline dw_die_ref get_AT_ref PARAMS ((dw_die_ref,
enum dwarf_attribute));
static int is_c_family PARAMS ((void));
static int is_fortran PARAMS ((void));
static void remove_AT PARAMS ((dw_die_ref,
@ -3876,7 +3878,6 @@ get_AT_unsigned (die, attr_kind)
return AT_unsigned (a);
}
static inline dw_die_ref get_AT_ref PARAMS ((dw_die_ref, enum dwarf_attribute));
static inline dw_die_ref
get_AT_ref (die, attr_kind)
dw_die_ref die;
@ -5730,8 +5731,6 @@ output_line_info ()
fputc ('\n', asm_out_file);
}
/* Output the marker for the end of the line number info. */
ASM_OUTPUT_LABEL (asm_out_file, ".LTEND");
ASM_OUTPUT_DWARF_DATA1 (asm_out_file, 0);
if (flag_debug_asm)
fprintf (asm_out_file, "\t%s DW_LNE_end_sequence", ASM_COMMENT_START);
@ -5926,6 +5925,9 @@ output_line_info ()
fputc ('\n', asm_out_file);
}
}
/* Output the marker for the end of the line number info. */
ASM_OUTPUT_LABEL (asm_out_file, ".LTEND");
}
/* Given a pointer to a BLOCK node return non-zero if (and only if) the node
@ -8881,7 +8883,7 @@ gen_struct_or_union_type_die (type, context_die)
add_AT_flag (type_die, DW_AT_declaration, 1);
/* We don't need to do this for function-local types. */
if (context_die)
if (! decl_function_context (TYPE_STUB_DECL (type)))
add_incomplete_type (type);
}
}

View File

@ -4456,9 +4456,8 @@ output_type (type, containing_scope)
|| TREE_CODE (TYPE_CONTEXT (type)) == NAMESPACE_DECL)
&& !finalizing)
{
/* We can't do this for function-local types, and we don't need
to. */
if (TREE_PERMANENT (type))
/* We don't need to do this for function-local types. */
if (! decl_function_context (TYPE_STUB_DECL (type)))
add_incomplete_type (type);
return; /* EARLY EXIT! Avoid setting TREE_ASM_WRITTEN. */
}