mirror of
git://gcc.gnu.org/git/gcc.git
synced 2024-12-19 16:40:04 +08:00
dwarf2out.c (add_abstract_origin_attribute): Don't call gen_abstract_function on our context if we're a nested function.
* dwarf2out.c (add_abstract_origin_attribute): Don't call gen_abstract_function on our context if we're a nested function. From-SVN: r31798
This commit is contained in:
parent
a5fa648417
commit
e40a1c6765
@ -1,3 +1,8 @@
|
||||
2000-02-04 Jason Merrill <jason@casey.cygnus.com>
|
||||
|
||||
* dwarf2out.c (add_abstract_origin_attribute): Don't call
|
||||
gen_abstract_function on our context if we're a nested function.
|
||||
|
||||
2000-02-05 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
|
||||
|
||||
* config/c4x/c4x.md (fixuns_truncqfqi2): Rewrite.
|
||||
|
@ -7374,12 +7374,18 @@ add_abstract_origin_attribute (die, origin)
|
||||
{
|
||||
dw_die_ref origin_die = NULL;
|
||||
|
||||
/* We may have gotten separated from the block for the inlined
|
||||
function, if we're in an exception handler or some such; make
|
||||
sure that the abstract function has been written out. */
|
||||
tree fn = decl_function_context (origin);
|
||||
if (fn)
|
||||
gen_abstract_function (fn);
|
||||
if (die->die_tag != DW_TAG_subprogram)
|
||||
{
|
||||
/* We may have gotten separated from the block for the inlined
|
||||
function, if we're in an exception handler or some such; make
|
||||
sure that the abstract function has been written out.
|
||||
|
||||
Doing this for nested functions is wrong, however; functions are
|
||||
distinct units, and our context might not even be inline. */
|
||||
tree fn = decl_function_context (origin);
|
||||
if (fn)
|
||||
gen_abstract_function (fn);
|
||||
}
|
||||
|
||||
if (TREE_CODE_CLASS (TREE_CODE (origin)) == 'd')
|
||||
origin_die = lookup_decl_die (origin);
|
||||
|
Loading…
Reference in New Issue
Block a user