summaryrefslogtreecommitdiff
path: root/gcc/c-decl.c
diff options
context:
space:
mode:
authorgdr <gdr@138bc75d-0d04-0410-961f-82ee72b054a4>2005-07-03 01:14:56 +0000
committergdr <gdr@138bc75d-0d04-0410-961f-82ee72b054a4>2005-07-03 01:14:56 +0000
commit9021d2daad4fca2545f9e0adc4024f609b9af29d (patch)
tree8a78cec45f0a8ab8c42a0303b9473ffe104c02fb /gcc/c-decl.c
parent7781aa773af59497f7c834da4807c3d079fa1919 (diff)
downloadgcc-9021d2daad4fca2545f9e0adc4024f609b9af29d.tar.gz
PR c++/18279
* c-decl.c (c_write_global_declarations): Dump contents of external scope to. * tree-dump.c (dequeue_and_dump): Dump abstract origin of a decl. <TRY_FINALLY_EXPR>, <RETURN_EXPR>, <CASE_LABEL_EXPR>, <LABEL_EXPR>, <GOTO_EXPR>, <SWITCH_EXPR>: Add. (dump_enabled_p): Return TRUE if PHASE is TDI_all and any dump is enabled. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101544 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/c-decl.c')
-rw-r--r--gcc/c-decl.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/gcc/c-decl.c b/gcc/c-decl.c
index 04d095c81c7..d516ffeb3bb 100644
--- a/gcc/c-decl.c
+++ b/gcc/c-decl.c
@@ -7541,6 +7541,17 @@ c_write_global_declarations (void)
through wrapup_global_declarations and check_global_declarations. */
for (t = all_translation_units; t; t = TREE_CHAIN (t))
c_write_global_declarations_1 (BLOCK_VARS (DECL_INITIAL (t)));
+ if (ext_block)
+ {
+ tree tmp = BLOCK_VARS (ext_block);
+ int flags;
+ FILE * stream = dump_begin (TDI_tu, &flags);
+ if (stream && tmp)
+ {
+ dump_node (tmp, flags & ~TDF_SLIM, stream);
+ dump_end (TDI_tu, stream);
+ }
+ }
c_write_global_declarations_1 (BLOCK_VARS (ext_block));
/* Generate functions to call static constructors and destructors