diff options
author | Damien George <damien@micropython.org> | 2020-06-26 18:26:39 +1000 |
---|---|---|
committer | Damien George <damien@micropython.org> | 2020-06-27 00:24:04 +1000 |
commit | 41fa8b5482089bdd7fa5478fe24f32913b23967c (patch) | |
tree | 25efbc78d3b14a448882d4a7a503ddd4d7efcf47 /tests/micropython/viper_error.py | |
parent | b3b8706d27cffbfc4cdd447b204ae7083283d13c (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.py | 3 |
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 |