updated for version 7.3.1231
Problem: Python: use of numbers not consistent.
Solution: Add support for Number protocol. (ZyX)
diff --git a/src/testdir/test86.ok b/src/testdir/test86.ok
index d94e0ea..ab6017b 100644
--- a/src/testdir/test86.ok
+++ b/src/testdir/test86.ok
@@ -438,7 +438,7 @@
> Output
>> OutputSetattr
del sys.stdout.softspace:AttributeError:("can't delete OutputObject attributes",)
-sys.stdout.softspace = []:TypeError:('softspace must be an integer',)
+sys.stdout.softspace = []:TypeError:('expected int(), long() or something supporting coercing to long(), but got list',)
sys.stdout.attr = None:AttributeError:('invalid attribute: attr',)
>> OutputWrite
sys.stdout.write(None):TypeError:('coercing to Unicode: need string or buffer, NoneType found',)
@@ -1037,8 +1037,8 @@
vim.current.window.buffer = 0:TypeError:('readonly attribute: buffer',)
vim.current.window.cursor = (100000000, 100000000):error:('cursor position outside buffer',)
vim.current.window.cursor = True:TypeError:('argument must be 2-item sequence, not bool',)
-vim.current.window.height = "abc":TypeError:('an integer is required',)
-vim.current.window.width = "abc":TypeError:('an integer is required',)
+vim.current.window.height = "abc":TypeError:('expected int(), long() or something supporting coercing to long(), but got str',)
+vim.current.window.width = "abc":TypeError:('expected int(), long() or something supporting coercing to long(), but got str',)
vim.current.window.xxxxxx = True:AttributeError:('xxxxxx',)
> WinList
>> WinListItem
@@ -1072,7 +1072,7 @@
vim.current.buffer.range(1, 2, 3):TypeError:('function takes exactly 2 arguments (3 given)',)
> BufMap
>> BufMapItem
-vim.buffers[None]:TypeError:('key must be integer',)
+vim.buffers[None]:TypeError:('expected int(), long() or something supporting coercing to long(), but got NoneType',)
vim.buffers[100000000]:KeyError:(100000000,)
> Current
>> CurrentGetattr
diff --git a/src/testdir/test87.ok b/src/testdir/test87.ok
index 4b73034..b975ecc 100644
--- a/src/testdir/test87.ok
+++ b/src/testdir/test87.ok
@@ -427,7 +427,7 @@
> Output
>> OutputSetattr
del sys.stdout.softspace:(<class 'AttributeError'>, AttributeError("can't delete OutputObject attributes",))
-sys.stdout.softspace = []:(<class 'TypeError'>, TypeError('softspace must be an integer',))
+sys.stdout.softspace = []:(<class 'TypeError'>, TypeError('expected int() or something supporting coercing to int(), but got list',))
sys.stdout.attr = None:(<class 'AttributeError'>, AttributeError('invalid attribute: attr',))
>> OutputWrite
sys.stdout.write(None):(<class 'TypeError'>, TypeError("Can't convert 'NoneType' object to str implicitly",))
@@ -1046,8 +1046,8 @@
vim.current.window.buffer = 0:(<class 'TypeError'>, TypeError('readonly attribute: buffer',))
vim.current.window.cursor = (100000000, 100000000):(<class 'vim.error'>, error('cursor position outside buffer',))
vim.current.window.cursor = True:(<class 'TypeError'>, TypeError('argument must be 2-item sequence, not bool',))
-vim.current.window.height = "abc":(<class 'TypeError'>, TypeError('an integer is required',))
-vim.current.window.width = "abc":(<class 'TypeError'>, TypeError('an integer is required',))
+vim.current.window.height = "abc":(<class 'TypeError'>, TypeError('expected int() or something supporting coercing to int(), but got str',))
+vim.current.window.width = "abc":(<class 'TypeError'>, TypeError('expected int() or something supporting coercing to int(), but got str',))
vim.current.window.xxxxxx = True:(<class 'AttributeError'>, AttributeError('xxxxxx',))
> WinList
>> WinListItem
@@ -1081,7 +1081,7 @@
vim.current.buffer.range(1, 2, 3):(<class 'TypeError'>, TypeError('function takes exactly 2 arguments (3 given)',))
> BufMap
>> BufMapItem
-vim.buffers[None]:(<class 'TypeError'>, TypeError('key must be integer',))
+vim.buffers[None]:(<class 'TypeError'>, TypeError('expected int() or something supporting coercing to int(), but got NoneType',))
vim.buffers[100000000]:(<class 'KeyError'>, KeyError(100000000,))
> Current
>> CurrentGetattr