This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug debug/19327] [4.0 Regression] FAIL: gcc.c-torture/execute/921215-1.c compilation, -O3 -g
- From: "ebotcazou at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 17 Jan 2005 12:54:46 -0000
- Subject: [Bug debug/19327] [4.0 Regression] FAIL: gcc.c-torture/execute/921215-1.c compilation, -O3 -g
- References: <20050108172153.19327.danglin@gcc.gnu.org>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Additional Comments From ebotcazou at gcc dot gnu dot org 2005-01-17 12:54 -------
It's
2005-01-03 Daniel Berlin <dberlin@dberlin.org>
Fix PR debug/17924
Fix PR debug/19191
* dwarf2out.c (block_ultimate_origin): Follow decl origin if origin
is a decl.
* gimple-low.c (mark_blocks_with_used_vars): New function.
(mark_blocks_with_used_subblocks): Ditto.
(mark_used_blocks): Ditto.
(pass_mark_used_blocks): New pass.
* tree-inline.c: Include debug.h.
(expand_call_inline): Call outlining_inline_function here.
* tree-optimize.c (init_tree_optimization_passes): Add
pass_mark_used_blocks.
* tree-pass.h (pass_mark_used_blocks): New.
* Makefile.in (tree-inline.o): Add debug.h dependency.
The DBX back-end is now asked to output debug info for the inlined instance of
the nested function r in
main()
{
#ifndef NO_TRAMPOLINES
void p(void ((*f) (void ())))
{
void r()
{
foo ();
}
f(r);
}
void q(void ((*f)()))
{
f();
}
p(q);
#endif
exit(0);
}
which is created when p is inlined. I think it doesn't support that.
--
What |Removed |Added
----------------------------------------------------------------------------
Component|middle-end |debug
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19327