ref: 1770b6f83b89855a47d3457c2a1c24127d033d43
parent: 537e20492045bd44e48e57d5c664c9eccf0a5a06
author: Roberto E. Vargas Caballero <[email protected]>
date: Thu Apr 24 05:11:44 EDT 2014
Emit end label in while and for loops This label marks the end of a loop (it is used for break statements), but in For() and While() was not emited.
--- a/stmt.c
+++ b/stmt.c
@@ -57,6 +57,7 @@
emitlabel(cond);
emitjump(begin, np);
emiteloop();
+ emitlabel(end);
}
static void
@@ -85,6 +86,7 @@
emitlabel(cond);
emitjump(begin, econd);
emiteloop();
+ emitlabel(end);
}
static void