summaryrefslogtreecommitdiff
path: root/gcc/except.c
diff options
context:
space:
mode:
authorhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2009-03-30 16:49:52 +0000
committerhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2009-03-30 16:49:52 +0000
commitdfcd8d23d02d2ff438d11869ad1c9de9f039ee74 (patch)
treee84b07e7d9650ea3ae2ccfbcb7b1239465fbe41f /gcc/except.c
parenta7bc91811a4d6371c5c06dbd886307ba0388ebef (diff)
downloadgcc-dfcd8d23d02d2ff438d11869ad1c9de9f039ee74.tar.gz
* except.c (label_to_region_map): Fix thinko.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@145304 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/except.c')
-rw-r--r--gcc/except.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/gcc/except.c b/gcc/except.c
index 41f799af07e..c654aba1f4e 100644
--- a/gcc/except.c
+++ b/gcc/except.c
@@ -798,12 +798,9 @@ label_to_region_map (void)
for (i = cfun->eh->last_region_number; i > 0; --i)
{
struct eh_region *r = VEC_index (eh_region, cfun->eh->region_array, i);
- if (r && r->tree_label && LABEL_DECL_UID (r->tree_label) >= 0)
+ if (r && r->region_number == i
+ && r->tree_label && LABEL_DECL_UID (r->tree_label) >= 0)
{
- if ((unsigned) LABEL_DECL_UID (r->tree_label) >
- VEC_length (int, label_to_region))
- VEC_safe_grow_cleared (int, heap, label_to_region,
- LABEL_DECL_UID (r->tree_label));
VEC_replace (int, label_to_region, LABEL_DECL_UID (r->tree_label),
i);
}