This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug debug/37410] DW_TAG_imported_module is not in its DW_TAG_lexical_block
- From: "jakub at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 23 Sep 2008 18:48:12 -0000
- Subject: [Bug debug/37410] DW_TAG_imported_module is not in its DW_TAG_lexical_block
- References: <bug-37410-12292@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #4 from jakub at gcc dot gnu dot org 2008-09-23 18:48 -------
Just a few nits:
1) why do you need to call nreverse? I don't think the order of vars in
BLOCK_VARS matters, and when you call nreverse you reorder them all but the one
you added anyway
2) have you checked that gimple_current_bind_expr + gimple_bind_block is
sufficient? I believe during gimplification even artificial, block-less
GIMPLE_BINDs can be added. So I think more robust would be to call
gimple_bind_expr_stack (), and walk the vector from the last GIMPLE_BIND in it
up to the first, stopping when you find a GIMPLE_BIND with non-NULL
gimple_bind_block.
3) I think usually gcc uses _1 suffixed helper functions instead of _real
4) I think defining IMPORTED_DECL_NS_NAME is overkill, just use DECL_NAME
5) there are a few minor formatting issues, e.g. missing space in *expr_p,0
or
IMPORTED_DECL_NS_DECL (using_directive) =
TREE_OPERAND (*expr_p, 0)
(where
IMPORTED_DECL_NS_DECL (using_directive)
= TREE_OPERAND (*expr_p, 0);
should be written).
--
jakub at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |jason at gcc dot gnu dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37410