summaryrefslogtreecommitdiff
path: root/test/control_flow.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'test/control_flow.cpp')
-rw-r--r--test/control_flow.cpp22
1 files changed, 22 insertions, 0 deletions
diff --git a/test/control_flow.cpp b/test/control_flow.cpp
index 9536d0504..871e21281 100644
--- a/test/control_flow.cpp
+++ b/test/control_flow.cpp
@@ -43,5 +43,27 @@ int EMSCRIPTEN_KEEPALIVE check_do_loop(int x) {
return x;
}
+int EMSCRIPTEN_KEEPALIVE check_do_once(int x) {
+ do {
+ x *= 2;
+ if (x > 1000) break;
+ x--;
+ if (x > 30) continue;
+ x++;
+ } while (0);
+ return x;
+}
+
+int EMSCRIPTEN_KEEPALIVE check_while_forever(int x) {
+ while (1) {
+ x *= 2;
+ if (x > 1000) break;
+ x--;
+ if (x > 30) continue;
+ x++;
+ }
+ return x;
+}
+
}