dwarf2out.c (loc_descriptor_from_tree): Add TRUTH_*_EXPR cases.

* dwarf2out.c (loc_descriptor_from_tree): Add TRUTH_*_EXPR cases.
	(gen_struct_or_union_type_die): Don't SIGSEGV if no TYPE_STUB_DECL
	in incomplete case.

From-SVN: r49022
This commit is contained in:
Richard Kenner 2002-01-20 23:46:30 +00:00 committed by Richard Kenner
parent 01dae62a3a
commit 9702143f27
2 changed files with 14 additions and 1 deletions

View file

@ -1,3 +1,9 @@
Sun Jan 20 18:40:14 2002 Richard Kenner <kenner@vlsi1.ultra.nyu.edu>
* dwarf2out.c (loc_descriptor_from_tree): Add TRUTH_*_EXPR cases.
(gen_struct_or_union_type_die): Don't SIGSEGV if no TYPE_STUB_DECL
in incomplete case.
2002-01-20 Graham Stott <grahams@redhat.com>
* cfgloop.c (flow_loop_preheader_scan): Fix typo.

View file

@ -8066,14 +8066,19 @@ loc_descriptor_from_tree (loc, addressp)
return 0;
break;
case TRUTH_AND_EXPR:
case TRUTH_ANDIF_EXPR:
case BIT_AND_EXPR:
op = DW_OP_and;
goto do_binop;
case TRUTH_XOR_EXPR:
case BIT_XOR_EXPR:
op = DW_OP_xor;
goto do_binop;
case TRUTH_OR_EXPR:
case TRUTH_ORIF_EXPR:
case BIT_IOR_EXPR:
op = DW_OP_or;
goto do_binop;
@ -8167,6 +8172,7 @@ loc_descriptor_from_tree (loc, addressp)
add_loc_descr (&ret, new_loc_descr (op, 0, 0));
break;
case TRUTH_NOT_EXPR:
case BIT_NOT_EXPR:
op = DW_OP_not;
goto do_unop;
@ -10829,7 +10835,8 @@ 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 (! decl_function_context (TYPE_STUB_DECL (type)))
if (TYPE_STUB_DECL (type)
&& ! decl_function_context (TYPE_STUB_DECL (type)))
VARRAY_PUSH_TREE (incomplete_types, type);
}
}