diff options
Diffstat (limited to 'optimize.c')
-rw-r--r-- | optimize.c | 4 |
1 files changed, 3 insertions, 1 deletions
@@ -327,7 +327,9 @@ peephole (node_t *node, *changed = TRUE; } else if (node_is (node0, NODE_DYN_LABEL) && - node_is (node1, NODE_DYN_GOTO)) + node_is (node1, NODE_DYN_GOTO) && + node0->dyn_label.expression->common.level == + node0->dyn_label.definition->level) { node_new_goto ( node0->dyn_label.label, node0, NULL); |