math operations incomplete for big integers
>>> 10 ** 9 / 10
1e+08
>>> 10 ** 10 / 10
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: unsupported types for __truediv__: 'int', 'int'
>>> 10 ** 10 - 10
9999999990
>>> 10 ** 10 - 10.0
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: unsupported types for __sub__: 'int', 'float'
lib/micropython/micropython/runtime.c checks whether left-hand-side operator is small int. If this is not the case no math is applied. One can hack around casting all operants to float, but from my naive point of view: math is broken!
experienced with v1.5-20-g51c6d605