diff options
author | Dodji Seketeli <dodji@redhat.com> | 2008-10-05 21:29:32 +0000 |
---|---|---|
committer | Dodji Seketeli <dodji@gcc.gnu.org> | 2008-10-05 23:29:32 +0200 |
commit | d19c0f4b4cdf4bdffa313283207aab6d2518f34c (patch) | |
tree | d5227fd86e64dffe3a143d3c68ad3f1e06dab6a5 /gcc/print-tree.c | |
parent | ebb479cd4d397e829eed460bd7ac9040204f8b5a (diff) | |
download | gcc-d19c0f4b4cdf4bdffa313283207aab6d2518f34c.zip gcc-d19c0f4b4cdf4bdffa313283207aab6d2518f34c.tar.gz gcc-d19c0f4b4cdf4bdffa313283207aab6d2518f34c.tar.bz2 |
re PR debug/37410 (DW_TAG_imported_module is not in its DW_TAG_lexical_block)
2008-09-30 Dodji Seketeli <dodji@redhat.com>
gcc/ChangeLog:
PR c++/37410
* dwarf2out.c (dwarf2out_imported_module_or_decl): Split this
function in two, making it call a new and reusable
dwarf2out_imported_module_or_decl() that takes the containing
BLOCK of the declaration in argument.
(dwarf2out_imported_module_or_decl_real): New function.
(decls_for_scope, gen_decl_die, dwarf2out_decl): Take
IMPORTED_DECL in account.
* tree.def: Added IMPORTED_DECL node type.
* tree.h: Added accessors for IMPORTED_DECL nodes.
* tree.c (init_ttree): Initialise IMPORTED_DECL node type.
gcc/cp/ChangeLog:
PR c++/37410
* cp-gimplify.c (cp_gimplify_expr): For each USING_STMT
make sure an IMPORTED_DECL node is added to the BLOCK_VARS list
of the innermost containing BLOCK.
gcc/testsuite/ChangeLog:
PR c++/37410
* g++.dg/debug/dwarf2/imported-module.C: New test.
From-SVN: r140895
Diffstat (limited to 'gcc/print-tree.c')
-rw-r--r-- | gcc/print-tree.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/print-tree.c b/gcc/print-tree.c index 16ba392..fb9f126 100644 --- a/gcc/print-tree.c +++ b/gcc/print-tree.c @@ -926,6 +926,12 @@ print_node (FILE *file, const char *prefix, tree node, int indent) case TARGET_OPTION_NODE: cl_target_option_print (file, indent + 4, TREE_TARGET_OPTION (node)); break; + case IMPORTED_DECL: + fprintf (file, " imported declaration"); + print_node_brief (file, "associated declaration", + IMPORTED_DECL_ASSOCIATED_DECL (node), + indent + 4); + break; default: if (EXCEPTIONAL_CLASS_P (node)) |