summaryrefslogtreecommitdiff
path: root/tests/micropython/viper_error.py
diff options
context:
space:
mode:
authorDamien George <damien@micropython.org>2020-06-26 18:26:39 +1000
committerDamien George <damien@micropython.org>2020-06-27 00:24:04 +1000
commit41fa8b5482089bdd7fa5478fe24f32913b23967c (patch)
tree25efbc78d3b14a448882d4a7a503ddd4d7efcf47 /tests/micropython/viper_error.py
parentb3b8706d27cffbfc4cdd447b204ae7083283d13c (diff)
py/emitnative: Implement binary operations for viper uint operands.
uint types in viper mode can now be used for all binary operators except floor-divide and modulo. Fixes issue #1847 and issue #6177. Signed-off-by: Damien George <damien@micropython.org>
Diffstat (limited to 'tests/micropython/viper_error.py')
-rw-r--r--tests/micropython/viper_error.py3
1 files changed, 3 insertions, 0 deletions
diff --git a/tests/micropython/viper_error.py b/tests/micropython/viper_error.py
index 790f3d75c..80617af0c 100644
--- a/tests/micropython/viper_error.py
+++ b/tests/micropython/viper_error.py
@@ -52,6 +52,7 @@ test("@micropython.viper\ndef f() -> int: return []")
# can't do binary op between incompatible types
test("@micropython.viper\ndef f(): 1 + []")
+test("@micropython.viper\ndef f(x:int, y:uint): x < y")
# can't load
test("@micropython.viper\ndef f(): 1[0]")
@@ -73,6 +74,8 @@ test("@micropython.viper\ndef f(x:int): -x")
test("@micropython.viper\ndef f(x:int): ~x")
# binary op not implemented
+test("@micropython.viper\ndef f(x:uint, y:uint): res = x // y")
+test("@micropython.viper\ndef f(x:uint, y:uint): res = x % y")
test("@micropython.viper\ndef f(x:int): res = x in x")
# yield (from) not implemented