summaryrefslogtreecommitdiff
path: root/gcc/dwarfout.c
diff options
context:
space:
mode:
authorlaw <law@138bc75d-0d04-0410-961f-82ee72b054a4>1999-07-07 00:16:01 +0000
committerlaw <law@138bc75d-0d04-0410-961f-82ee72b054a4>1999-07-07 00:16:01 +0000
commita41e1595597e88521b536b246dd130aefd234ca1 (patch)
treec440af33572a93d438bd68e1fd7feb33cd15e92c /gcc/dwarfout.c
parent319e54156f661e6f65362b6dff3add7aeb86b127 (diff)
downloadgcc-a41e1595597e88521b536b246dd130aefd234ca1.tar.gz
p
* dwarf2out.c (gen_struct_or_union_type_die): Only remember types on the permanent_obstack. * dwarfout.c (output_type): Likewise. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@27969 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/dwarfout.c')
-rw-r--r--gcc/dwarfout.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/gcc/dwarfout.c b/gcc/dwarfout.c
index 9c419a8bca1..0a30a9775cf 100644
--- a/gcc/dwarfout.c
+++ b/gcc/dwarfout.c
@@ -4439,7 +4439,10 @@ output_type (type, containing_scope)
&& TREE_CODE (TYPE_CONTEXT (type)) != METHOD_TYPE))
&& !finalizing)
{
- add_incomplete_type (type);
+ /* We can't do this for function-local types, and we don't need
+ to. */
+ if (TREE_PERMANENT (type))
+ add_incomplete_type (type);
return; /* EARLY EXIT! Avoid setting TREE_ASM_WRITTEN. */
}