about summary refs log tree commit diff stats
path: root/cpp/024brace
diff options
context:
space:
mode:
authorKartik K. Agaram <vc@akkartik.com>2015-03-17 00:06:48 -0700
committerKartik K. Agaram <vc@akkartik.com>2015-03-17 00:06:48 -0700
commit3d45bf386169bfdea5d8654cf1869cc6c2a719f6 (patch)
treed75201b3bcf5e0435a6c3667fb730b431d66fab2 /cpp/024brace
parent7ac221e43a94132f30d4ca6770efa47bd74f6566 (diff)
downloadmu-3d45bf386169bfdea5d8654cf1869cc6c2a719f6.tar.gz
943
Diffstat (limited to 'cpp/024brace')
-rw-r--r--cpp/024brace45
1 files changed, 45 insertions, 0 deletions
diff --git a/cpp/024brace b/cpp/024brace
index 72318faa..2402923b 100644
--- a/cpp/024brace
+++ b/cpp/024brace
@@ -112,3 +112,48 @@ recipe main [
 +after-brace: copy ...
 +after-brace: copy ...
 +after-brace: jump -2:offset
+
+:(scenario "break_empty_block")
+recipe main [
+  1:integer <- copy 0:literal
+  {
+    break
+  }
+]
++after-brace: recipe main
++after-brace: copy ...
++after-brace: jump 0:offset
+
+:(scenario "break_cascading")
+recipe main [
+  1:integer <- copy 0:literal
+  {
+    break
+  }
+  {
+    break
+  }
+]
++after-brace: recipe main
++after-brace: copy ...
++after-brace: jump 0:offset
++after-brace: jump 0:offset
+
+:(scenario "break_cascading2")
+recipe main [
+  1:integer <- copy 0:literal
+  2:integer <- copy 0:literal
+  {
+    break
+    3:integer <- copy 0:literal
+  }
+  {
+    break
+  }
+]
++after-brace: recipe main
++after-brace: copy ...
++after-brace: copy ...
++after-brace: jump 1:offset
++after-brace: copy ...
++after-brace: jump 0:offset