diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 90d37de683d33bf9b2ece42e8512c3c37baa27f9..b818536ad29ae1cdf808261be59a55ea40c40105 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2005-01-04 Jeff Law <law@redhat.com> + + PR ada/24994 + * tree-cfg.c (bsi_replace): Remove the original statement + from the EH throw statement table. + 2006-01-04 Jakub Jelinek <jakub@redhat.com> * config/i386/pmm_malloc.h (posix_memalign): If __cplusplus, diff --git a/gcc/tree-cfg.c b/gcc/tree-cfg.c index 31bfc39dbce5424e9408321103c6e9431557ef9c..2f4583600f799c3a3ab773e42db6fbb0f665de95 100644 --- a/gcc/tree-cfg.c +++ b/gcc/tree-cfg.c @@ -2869,7 +2869,10 @@ bsi_replace (const block_stmt_iterator *bsi, tree stmt, bool preserve_eh_info) { eh_region = lookup_stmt_eh_region (orig_stmt); if (eh_region >= 0) - add_stmt_to_eh_region (stmt, eh_region); + { + remove_stmt_from_eh_region (stmt); + add_stmt_to_eh_region (stmt, eh_region); + } } delink_stmt_imm_use (orig_stmt);