char buf[NUMBUFLEN];
// For backwards compatibility numbers are stored as strings.
- sprintf(buf, "%ld", (long)our_tv->vval.v_number);
+ sprintf(buf, "%lld", (long long)our_tv->vval.v_number);
ret = PyString_FromString((char *)buf);
}
else if (our_tv->v_type == VAR_FLOAT)
" Test vim.eval() with various types.
func Test_python3_vim_eval()
- call assert_equal("\n8", execute('py3 print(vim.eval("3+5"))'))
+ call assert_equal("\n2061300532912", execute('py3 print(vim.eval("2061300532912"))'))
+ call assert_equal("\n9223372036854775807", execute('py3 print(vim.eval("9223372036854775807"))'))
+ call assert_equal("\n-9223372036854775807",execute('py3 print(vim.eval("-9223372036854775807"))'))
+ call assert_equal("\n2147483648", execute('py3 print(vim.eval("2147483648"))'))
+ call assert_equal("\n-2147483649", execute('py3 print(vim.eval("-2147483649"))'))
+ call assert_equal("\n8", execute('py3 print(vim.eval("3+5"))'))
call assert_equal("\n3.140000", execute('py3 print(vim.eval("1.01+2.13"))'))
call assert_equal("\n0.000000", execute('py3 print(vim.eval("0.0/(1.0/0.0)"))'))
call assert_equal("\n0.000000", execute('py3 print(vim.eval("0.0/(1.0/0.0)"))'))