aboutsummaryrefslogtreecommitdiff
path: root/gcc/java/decl.c
diff options
context:
space:
mode:
authorAndrew Haley <aph@redhat.com>2006-05-26 13:52:18 +0000
committerAndrew Haley <aph@gcc.gnu.org>2006-05-26 13:52:18 +0000
commitb713aa3a5263cfc9df8688e4d76186331d5d8dde (patch)
treee3d22fc0fb8e4e0bce6de9f4a7dde3404417efd2 /gcc/java/decl.c
parent807bdfb6b55b89950d23ea2e33d50fb4a6b92d47 (diff)
downloadgcc-b713aa3a5263cfc9df8688e4d76186331d5d8dde.zip
gcc-b713aa3a5263cfc9df8688e4d76186331d5d8dde.tar.gz
gcc-b713aa3a5263cfc9df8688e4d76186331d5d8dde.tar.bz2
re PR java/27756 (ICE in update_aliases, at java/decl.c:192)
2006-05-25 Andrew Haley <aph@redhat.com> PR java/27756 * decl.c (maybe_pushlevels): When variable ranges are non-nested update all lifetimes, not just the first one. From-SVN: r114131
Diffstat (limited to 'gcc/java/decl.c')
-rw-r--r--gcc/java/decl.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/java/decl.c b/gcc/java/decl.c
index 302df65..d4bd01c 100644
--- a/gcc/java/decl.c
+++ b/gcc/java/decl.c
@@ -1785,8 +1785,10 @@ maybe_pushlevels (int pc)
truncating variable lifetimes. */
if (end_pc > current_binding_level->end_pc)
{
+ tree t;
end_pc = current_binding_level->end_pc;
- DECL_LOCAL_END_PC (decl) = end_pc;
+ for (t = decl; t != NULL_TREE; t = TREE_CHAIN (t))
+ DECL_LOCAL_END_PC (t) = end_pc;
}
maybe_start_try (pc, end_pc);