summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/micropython/viper_subscr_multi.py20
-rw-r--r--tests/micropython/viper_subscr_multi.py.exp2
2 files changed, 22 insertions, 0 deletions
diff --git a/tests/micropython/viper_subscr_multi.py b/tests/micropython/viper_subscr_multi.py
new file mode 100644
index 000000000..1561e5534
--- /dev/null
+++ b/tests/micropython/viper_subscr_multi.py
@@ -0,0 +1,20 @@
+# test viper with multiple subscripts in a single expression
+
+
+@micropython.viper
+def f1(b: ptr8):
+ b[0] += b[1]
+
+
+@micropython.viper
+def f2(b: ptr8, i: int):
+ b[0] += b[i]
+
+
+b = bytearray(b"\x01\x02")
+f1(b)
+print(b)
+
+b = bytearray(b"\x01\x02")
+f2(b, 1)
+print(b)
diff --git a/tests/micropython/viper_subscr_multi.py.exp b/tests/micropython/viper_subscr_multi.py.exp
new file mode 100644
index 000000000..a2c298bb1
--- /dev/null
+++ b/tests/micropython/viper_subscr_multi.py.exp
@@ -0,0 +1,2 @@
+bytearray(b'\x03\x02')
+bytearray(b'\x03\x02')