diff options
author | jakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4> | 2009-09-16 13:35:23 +0000 |
---|---|---|
committer | jakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4> | 2009-09-16 13:35:23 +0000 |
commit | 3b0a08ea44006b4456cf1972c17c105426f07999 (patch) | |
tree | acd920f03875af25ce83628a925f24d939583130 /gcc/integrate.c | |
parent | fdf162c46e3bea390fdf292eb414a1e24e339f7e (diff) | |
download | gcc-3b0a08ea44006b4456cf1972c17c105426f07999.tar.gz |
* integrate.c (set_block_abstract_flags): Call
set_decl_abstract_flags also on BLOCK_NONLOCALIZED_VARs.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@151753 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/integrate.c')
-rw-r--r-- | gcc/integrate.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/gcc/integrate.c b/gcc/integrate.c index 30ef854ffff..d92cec5f67e 100644 --- a/gcc/integrate.c +++ b/gcc/integrate.c @@ -167,6 +167,7 @@ set_block_abstract_flags (tree stmt, int setting) { tree local_decl; tree subblock; + unsigned int i; BLOCK_ABSTRACT (stmt) = setting; @@ -175,6 +176,14 @@ set_block_abstract_flags (tree stmt, int setting) local_decl = TREE_CHAIN (local_decl)) set_decl_abstract_flags (local_decl, setting); + for (i = 0; i < BLOCK_NUM_NONLOCALIZED_VARS (stmt); i++) + { + local_decl = BLOCK_NONLOCALIZED_VAR (stmt, i); + if ((TREE_CODE (local_decl) == VAR_DECL && !TREE_STATIC (local_decl)) + || TREE_CODE (local_decl) == PARM_DECL) + set_decl_abstract_flags (local_decl, setting); + } + for (subblock = BLOCK_SUBBLOCKS (stmt); subblock != NULL_TREE; subblock = BLOCK_CHAIN (subblock)) |