summaryrefslogtreecommitdiffstatshomepage
path: root/tests/basics/try_finally_loops.py
diff options
context:
space:
mode:
Diffstat (limited to 'tests/basics/try_finally_loops.py')
-rw-r--r--tests/basics/try_finally_loops.py35
1 files changed, 35 insertions, 0 deletions
diff --git a/tests/basics/try_finally_loops.py b/tests/basics/try_finally_loops.py
new file mode 100644
index 0000000000..28a8373dc0
--- /dev/null
+++ b/tests/basics/try_finally_loops.py
@@ -0,0 +1,35 @@
+# Test various loop types, some may be implemented/optimized differently
+while True:
+ try:
+ break
+ finally:
+ print('finally 1')
+
+
+for i in [1, 5, 10]:
+ try:
+ continue
+ finally:
+ print('finally 2')
+
+for i in range(3):
+ try:
+ continue
+ finally:
+ print('finally 3')
+
+# Multi-level
+for i in range(4):
+ print(i)
+ try:
+ while True:
+ try:
+ try:
+ break
+ finally:
+ print('finally 1')
+ finally:
+ print('finally 2')
+ print('here')
+ finally:
+ print('finnaly 3')