mirror of
git://gcc.gnu.org/git/gcc.git
synced 2024-12-24 04:38:58 +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>
|
2000-02-05 Michael Hayes <m.hayes@elec.canterbury.ac.nz>
|
||||||
|
|
||||||
* config/c4x/c4x.md (fixuns_truncqfqi2): Rewrite.
|
* config/c4x/c4x.md (fixuns_truncqfqi2): Rewrite.
|
||||||
|
@ -7374,12 +7374,18 @@ add_abstract_origin_attribute (die, origin)
|
|||||||
{
|
{
|
||||||
dw_die_ref origin_die = NULL;
|
dw_die_ref origin_die = NULL;
|
||||||
|
|
||||||
|
if (die->die_tag != DW_TAG_subprogram)
|
||||||
|
{
|
||||||
/* We may have gotten separated from the block for the inlined
|
/* We may have gotten separated from the block for the inlined
|
||||||
function, if we're in an exception handler or some such; make
|
function, if we're in an exception handler or some such; make
|
||||||
sure that the abstract function has been written out. */
|
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);
|
tree fn = decl_function_context (origin);
|
||||||
if (fn)
|
if (fn)
|
||||||
gen_abstract_function (fn);
|
gen_abstract_function (fn);
|
||||||
|
}
|
||||||
|
|
||||||
if (TREE_CODE_CLASS (TREE_CODE (origin)) == 'd')
|
if (TREE_CODE_CLASS (TREE_CODE (origin)) == 'd')
|
||||||
origin_die = lookup_decl_die (origin);
|
origin_die = lookup_decl_die (origin);
|
||||||
|
Loading…
Reference in New Issue
Block a user