mirror of
https://github.com/vim/vim.git
synced 2025-09-25 03:54:15 -04:00
updated for version 7.3.951
Problem: Python exceptions have problems. Solution: Change some IndexErrors to TypeErrors. Make “line number out of range” an IndexError. Make “unable to get option value” a RuntimeError. Make all PyErr_SetString messages start with lowercase letter and use _(). (ZyX)
This commit is contained in:
@@ -71,7 +71,8 @@ OutputSetattr(PyObject *self, char *name, PyObject *val)
|
|||||||
{
|
{
|
||||||
if (val == NULL)
|
if (val == NULL)
|
||||||
{
|
{
|
||||||
PyErr_SetString(PyExc_AttributeError, _("can't delete OutputObject attributes"));
|
PyErr_SetString(PyExc_AttributeError,
|
||||||
|
_("can't delete OutputObject attributes"));
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -919,7 +920,7 @@ ListItem(PyObject *self, Py_ssize_t index)
|
|||||||
|
|
||||||
if (index>=ListLength(self))
|
if (index>=ListLength(self))
|
||||||
{
|
{
|
||||||
PyErr_SetString(PyExc_IndexError, "list index out of range");
|
PyErr_SetString(PyExc_IndexError, _("list index out of range"));
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
li = list_find(((ListObject *) (self))->list, (long) index);
|
li = list_find(((ListObject *) (self))->list, (long) index);
|
||||||
@@ -1047,7 +1048,7 @@ ListAssItem(PyObject *self, Py_ssize_t index, PyObject *obj)
|
|||||||
}
|
}
|
||||||
if (index>length || (index==length && obj==NULL))
|
if (index>length || (index==length && obj==NULL))
|
||||||
{
|
{
|
||||||
PyErr_SetString(PyExc_IndexError, "list index out of range");
|
PyErr_SetString(PyExc_IndexError, _("list index out of range"));
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1186,7 +1187,8 @@ ListSetattr(PyObject *self, char *name, PyObject *val)
|
|||||||
|
|
||||||
if (val == NULL)
|
if (val == NULL)
|
||||||
{
|
{
|
||||||
PyErr_SetString(PyExc_AttributeError, _("Cannot delete DictionaryObject attributes"));
|
PyErr_SetString(PyExc_AttributeError,
|
||||||
|
_("cannot delete vim.dictionary attributes"));
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1194,7 +1196,7 @@ ListSetattr(PyObject *self, char *name, PyObject *val)
|
|||||||
{
|
{
|
||||||
if (this->list->lv_lock == VAR_FIXED)
|
if (this->list->lv_lock == VAR_FIXED)
|
||||||
{
|
{
|
||||||
PyErr_SetString(PyExc_TypeError, _("Cannot modify fixed list"));
|
PyErr_SetString(PyExc_TypeError, _("cannot modify fixed list"));
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@@ -1208,7 +1210,7 @@ ListSetattr(PyObject *self, char *name, PyObject *val)
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
PyErr_SetString(PyExc_AttributeError, _("Cannot set this attribute"));
|
PyErr_SetString(PyExc_AttributeError, _("cannot set this attribute"));
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1377,7 +1379,8 @@ OptionsItem(OptionsObject *this, PyObject *keyObject)
|
|||||||
return PyBytes_FromString((char *) stringval);
|
return PyBytes_FromString((char *) stringval);
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
PyErr_SetString(PyExc_ValueError, "Unable to get option value");
|
PyErr_SetString(PyExc_RuntimeError,
|
||||||
|
_("unable to get option value"));
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1455,13 +1458,14 @@ OptionsAssItem(OptionsObject *this, PyObject *keyObject, PyObject *valObject)
|
|||||||
{
|
{
|
||||||
if (this->opt_type == SREQ_GLOBAL)
|
if (this->opt_type == SREQ_GLOBAL)
|
||||||
{
|
{
|
||||||
PyErr_SetString(PyExc_ValueError, "Unable to unset global option");
|
PyErr_SetString(PyExc_ValueError,
|
||||||
|
_("unable to unset global option"));
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
else if (!(flags & SOPT_GLOBAL))
|
else if (!(flags & SOPT_GLOBAL))
|
||||||
{
|
{
|
||||||
PyErr_SetString(PyExc_ValueError, "Unable to unset option without "
|
PyErr_SetString(PyExc_ValueError, _("unable to unset option "
|
||||||
"global value");
|
"without global value"));
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@@ -1491,7 +1495,7 @@ OptionsAssItem(OptionsObject *this, PyObject *keyObject, PyObject *valObject)
|
|||||||
val = PyLong_AsLong(valObject);
|
val = PyLong_AsLong(valObject);
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
PyErr_SetString(PyExc_ValueError, "Object must be integer");
|
PyErr_SetString(PyExc_TypeError, _("object must be integer"));
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1529,7 +1533,7 @@ OptionsAssItem(OptionsObject *this, PyObject *keyObject, PyObject *valObject)
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
PyErr_SetString(PyExc_ValueError, "Object must be string");
|
PyErr_SetString(PyExc_TypeError, _("object must be string"));
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -2766,7 +2770,7 @@ RBAppend(BufferObject *self, PyObject *args, PyInt start, PyInt end, PyInt *new_
|
|||||||
|
|
||||||
if (n < 0 || n > max)
|
if (n < 0 || n > max)
|
||||||
{
|
{
|
||||||
PyErr_SetString(PyExc_ValueError, _("line number out of range"));
|
PyErr_SetString(PyExc_IndexError, _("line number out of range"));
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -3135,7 +3139,7 @@ BufMapItem(PyObject *self UNUSED, PyObject *keyObject)
|
|||||||
bnr = PyLong_AsLong(keyObject);
|
bnr = PyLong_AsLong(keyObject);
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
PyErr_SetString(PyExc_ValueError, _("key must be integer"));
|
PyErr_SetString(PyExc_TypeError, _("key must be integer"));
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -3654,7 +3658,8 @@ _ConvertFromPyObject(PyObject *obj, typval_T *tv, PyObject *lookupDict)
|
|||||||
return convert_dl(obj, tv, pymap_to_tv, lookupDict);
|
return convert_dl(obj, tv, pymap_to_tv, lookupDict);
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
PyErr_SetString(PyExc_TypeError, _("unable to convert to vim structure"));
|
PyErr_SetString(PyExc_TypeError,
|
||||||
|
_("unable to convert to vim structure"));
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
|
@@ -358,6 +358,7 @@ static PyObject *imp_PyExc_KeyError;
|
|||||||
static PyObject *imp_PyExc_KeyboardInterrupt;
|
static PyObject *imp_PyExc_KeyboardInterrupt;
|
||||||
static PyObject *imp_PyExc_TypeError;
|
static PyObject *imp_PyExc_TypeError;
|
||||||
static PyObject *imp_PyExc_ValueError;
|
static PyObject *imp_PyExc_ValueError;
|
||||||
|
static PyObject *imp_PyExc_RuntimeError;
|
||||||
|
|
||||||
# define PyExc_AttributeError imp_PyExc_AttributeError
|
# define PyExc_AttributeError imp_PyExc_AttributeError
|
||||||
# define PyExc_IndexError imp_PyExc_IndexError
|
# define PyExc_IndexError imp_PyExc_IndexError
|
||||||
@@ -365,6 +366,7 @@ static PyObject *imp_PyExc_ValueError;
|
|||||||
# define PyExc_KeyboardInterrupt imp_PyExc_KeyboardInterrupt
|
# define PyExc_KeyboardInterrupt imp_PyExc_KeyboardInterrupt
|
||||||
# define PyExc_TypeError imp_PyExc_TypeError
|
# define PyExc_TypeError imp_PyExc_TypeError
|
||||||
# define PyExc_ValueError imp_PyExc_ValueError
|
# define PyExc_ValueError imp_PyExc_ValueError
|
||||||
|
# define PyExc_RuntimeError imp_PyExc_RuntimeError
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Table of name to function pointer of python.
|
* Table of name to function pointer of python.
|
||||||
@@ -593,12 +595,14 @@ get_exceptions(void)
|
|||||||
imp_PyExc_KeyboardInterrupt = PyDict_GetItemString(exdict, "KeyboardInterrupt");
|
imp_PyExc_KeyboardInterrupt = PyDict_GetItemString(exdict, "KeyboardInterrupt");
|
||||||
imp_PyExc_TypeError = PyDict_GetItemString(exdict, "TypeError");
|
imp_PyExc_TypeError = PyDict_GetItemString(exdict, "TypeError");
|
||||||
imp_PyExc_ValueError = PyDict_GetItemString(exdict, "ValueError");
|
imp_PyExc_ValueError = PyDict_GetItemString(exdict, "ValueError");
|
||||||
|
imp_PyExc_RuntimeError = PyDict_GetItemString(exdict, "RuntimeError");
|
||||||
Py_XINCREF(imp_PyExc_AttributeError);
|
Py_XINCREF(imp_PyExc_AttributeError);
|
||||||
Py_XINCREF(imp_PyExc_IndexError);
|
Py_XINCREF(imp_PyExc_IndexError);
|
||||||
Py_XINCREF(imp_PyExc_KeyError);
|
Py_XINCREF(imp_PyExc_KeyError);
|
||||||
Py_XINCREF(imp_PyExc_KeyboardInterrupt);
|
Py_XINCREF(imp_PyExc_KeyboardInterrupt);
|
||||||
Py_XINCREF(imp_PyExc_TypeError);
|
Py_XINCREF(imp_PyExc_TypeError);
|
||||||
Py_XINCREF(imp_PyExc_ValueError);
|
Py_XINCREF(imp_PyExc_ValueError);
|
||||||
|
Py_XINCREF(imp_PyExc_RuntimeError);
|
||||||
Py_XDECREF(exmod);
|
Py_XDECREF(exmod);
|
||||||
}
|
}
|
||||||
#endif /* DYNAMIC_PYTHON */
|
#endif /* DYNAMIC_PYTHON */
|
||||||
|
@@ -336,6 +336,7 @@ static PyObject *p3imp_PyExc_KeyError;
|
|||||||
static PyObject *p3imp_PyExc_KeyboardInterrupt;
|
static PyObject *p3imp_PyExc_KeyboardInterrupt;
|
||||||
static PyObject *p3imp_PyExc_TypeError;
|
static PyObject *p3imp_PyExc_TypeError;
|
||||||
static PyObject *p3imp_PyExc_ValueError;
|
static PyObject *p3imp_PyExc_ValueError;
|
||||||
|
static PyObject *p3imp_PyExc_RuntimeError;
|
||||||
|
|
||||||
# define PyExc_AttributeError p3imp_PyExc_AttributeError
|
# define PyExc_AttributeError p3imp_PyExc_AttributeError
|
||||||
# define PyExc_IndexError p3imp_PyExc_IndexError
|
# define PyExc_IndexError p3imp_PyExc_IndexError
|
||||||
@@ -343,6 +344,7 @@ static PyObject *p3imp_PyExc_ValueError;
|
|||||||
# define PyExc_KeyboardInterrupt p3imp_PyExc_KeyboardInterrupt
|
# define PyExc_KeyboardInterrupt p3imp_PyExc_KeyboardInterrupt
|
||||||
# define PyExc_TypeError p3imp_PyExc_TypeError
|
# define PyExc_TypeError p3imp_PyExc_TypeError
|
||||||
# define PyExc_ValueError p3imp_PyExc_ValueError
|
# define PyExc_ValueError p3imp_PyExc_ValueError
|
||||||
|
# define PyExc_RuntimeError p3imp_PyExc_RuntimeError
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Table of name to function pointer of python.
|
* Table of name to function pointer of python.
|
||||||
@@ -580,12 +582,14 @@ get_py3_exceptions()
|
|||||||
p3imp_PyExc_KeyboardInterrupt = PyDict_GetItemString(exdict, "KeyboardInterrupt");
|
p3imp_PyExc_KeyboardInterrupt = PyDict_GetItemString(exdict, "KeyboardInterrupt");
|
||||||
p3imp_PyExc_TypeError = PyDict_GetItemString(exdict, "TypeError");
|
p3imp_PyExc_TypeError = PyDict_GetItemString(exdict, "TypeError");
|
||||||
p3imp_PyExc_ValueError = PyDict_GetItemString(exdict, "ValueError");
|
p3imp_PyExc_ValueError = PyDict_GetItemString(exdict, "ValueError");
|
||||||
|
p3imp_PyExc_RuntimeError = PyDict_GetItemString(exdict, "RuntimeError");
|
||||||
Py_XINCREF(p3imp_PyExc_AttributeError);
|
Py_XINCREF(p3imp_PyExc_AttributeError);
|
||||||
Py_XINCREF(p3imp_PyExc_IndexError);
|
Py_XINCREF(p3imp_PyExc_IndexError);
|
||||||
Py_XINCREF(p3imp_PyExc_KeyError);
|
Py_XINCREF(p3imp_PyExc_KeyError);
|
||||||
Py_XINCREF(p3imp_PyExc_KeyboardInterrupt);
|
Py_XINCREF(p3imp_PyExc_KeyboardInterrupt);
|
||||||
Py_XINCREF(p3imp_PyExc_TypeError);
|
Py_XINCREF(p3imp_PyExc_TypeError);
|
||||||
Py_XINCREF(p3imp_PyExc_ValueError);
|
Py_XINCREF(p3imp_PyExc_ValueError);
|
||||||
|
Py_XINCREF(p3imp_PyExc_RuntimeError);
|
||||||
Py_XDECREF(exmod);
|
Py_XDECREF(exmod);
|
||||||
}
|
}
|
||||||
#endif /* DYNAMIC_PYTHON3 */
|
#endif /* DYNAMIC_PYTHON3 */
|
||||||
@@ -1132,7 +1136,7 @@ BufferSubscript(PyObject *self, PyObject* idx)
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
PyErr_SetString(PyExc_IndexError, "Index must be int or slice");
|
PyErr_SetString(PyExc_TypeError, _("index must be int or slice"));
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1166,7 +1170,7 @@ BufferAsSubscript(PyObject *self, PyObject* idx, PyObject* val)
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
PyErr_SetString(PyExc_IndexError, "Index must be int or slice");
|
PyErr_SetString(PyExc_TypeError, _("index must be int or slice"));
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1248,7 +1252,7 @@ RangeSubscript(PyObject *self, PyObject* idx)
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
PyErr_SetString(PyExc_IndexError, "Index must be int or slice");
|
PyErr_SetString(PyExc_TypeError, _("index must be int or slice"));
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1275,7 +1279,7 @@ RangeAsSubscript(PyObject *self, PyObject *idx, PyObject *val)
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
PyErr_SetString(PyExc_IndexError, "Index must be int or slice");
|
PyErr_SetString(PyExc_TypeError, _("index must be int or slice"));
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1450,7 +1454,7 @@ ListSubscript(PyObject *self, PyObject* idxObject)
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
PyErr_SetString(PyExc_IndexError, "Index must be int or slice");
|
PyErr_SetString(PyExc_TypeError, _("index must be int or slice"));
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1474,7 +1478,7 @@ ListAsSubscript(PyObject *self, PyObject *idxObject, PyObject *obj)
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
PyErr_SetString(PyExc_IndexError, "Index must be int or slice");
|
PyErr_SetString(PyExc_TypeError, _("index must be int or slice"));
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -102,7 +102,7 @@ bar
|
|||||||
B: 1:1 2:1 3:1 4:1
|
B: 1:1 2:1 3:1 4:1
|
||||||
>>> previewheight
|
>>> previewheight
|
||||||
p/gopts1: 12
|
p/gopts1: 12
|
||||||
inv: 'a'! ValueError
|
inv: 'a'! TypeError
|
||||||
p/wopts1! KeyError
|
p/wopts1! KeyError
|
||||||
inv: 'a'! KeyError
|
inv: 'a'! KeyError
|
||||||
wopts1! KeyError
|
wopts1! KeyError
|
||||||
@@ -123,7 +123,7 @@ bar
|
|||||||
B: 1:5 2:5 3:5 4:5
|
B: 1:5 2:5 3:5 4:5
|
||||||
>>> operatorfunc
|
>>> operatorfunc
|
||||||
p/gopts1: ''
|
p/gopts1: ''
|
||||||
inv: 2! ValueError
|
inv: 2! TypeError
|
||||||
p/wopts1! KeyError
|
p/wopts1! KeyError
|
||||||
inv: 2! KeyError
|
inv: 2! KeyError
|
||||||
wopts1! KeyError
|
wopts1! KeyError
|
||||||
@@ -198,9 +198,9 @@ bar
|
|||||||
B: 1:'+2' 2:'+3' 3:'+1' 4:''
|
B: 1:'+2' 2:'+3' 3:'+1' 4:''
|
||||||
>>> statusline
|
>>> statusline
|
||||||
p/gopts1: ''
|
p/gopts1: ''
|
||||||
inv: 0! ValueError
|
inv: 0! TypeError
|
||||||
p/wopts1: None
|
p/wopts1: None
|
||||||
inv: 0! ValueError
|
inv: 0! TypeError
|
||||||
p/bopts1! KeyError
|
p/bopts1! KeyError
|
||||||
inv: 0! KeyError
|
inv: 0! KeyError
|
||||||
bopts1! KeyError
|
bopts1! KeyError
|
||||||
@@ -259,7 +259,7 @@ bar
|
|||||||
wopts2! KeyError
|
wopts2! KeyError
|
||||||
wopts3! KeyError
|
wopts3! KeyError
|
||||||
p/bopts1: ''
|
p/bopts1: ''
|
||||||
inv: 1! ValueError
|
inv: 1! TypeError
|
||||||
G: ''
|
G: ''
|
||||||
W: 1:'A' 2:'B' 3:'' 4:'C'
|
W: 1:'A' 2:'B' 3:'' 4:'C'
|
||||||
B: 1:'A' 2:'B' 3:'' 4:'C'
|
B: 1:'A' 2:'B' 3:'' 4:'C'
|
||||||
@@ -288,14 +288,14 @@ bar
|
|||||||
B: 1:0 2:1 3:0 4:1
|
B: 1:0 2:1 3:0 4:1
|
||||||
>>> path
|
>>> path
|
||||||
p/gopts1: '.,/usr/include,,'
|
p/gopts1: '.,/usr/include,,'
|
||||||
inv: 0! ValueError
|
inv: 0! TypeError
|
||||||
p/wopts1! KeyError
|
p/wopts1! KeyError
|
||||||
inv: 0! KeyError
|
inv: 0! KeyError
|
||||||
wopts1! KeyError
|
wopts1! KeyError
|
||||||
wopts2! KeyError
|
wopts2! KeyError
|
||||||
wopts3! KeyError
|
wopts3! KeyError
|
||||||
p/bopts1: None
|
p/bopts1: None
|
||||||
inv: 0! ValueError
|
inv: 0! TypeError
|
||||||
G: '.,,'
|
G: '.,,'
|
||||||
W: 1:'.,,' 2:',,' 3:'.,,' 4:'.'
|
W: 1:'.,,' 2:',,' 3:'.,,' 4:'.'
|
||||||
B: 1:'.,,' 2:',,' 3:'.,,' 4:'.'
|
B: 1:'.,,' 2:',,' 3:'.,,' 4:'.'
|
||||||
|
@@ -91,7 +91,7 @@ bar
|
|||||||
B: 1:1 2:1 3:1 4:1
|
B: 1:1 2:1 3:1 4:1
|
||||||
>>> previewheight
|
>>> previewheight
|
||||||
p/gopts1: 12
|
p/gopts1: 12
|
||||||
inv: 'a'! ValueError
|
inv: 'a'! TypeError
|
||||||
p/wopts1! KeyError
|
p/wopts1! KeyError
|
||||||
inv: 'a'! KeyError
|
inv: 'a'! KeyError
|
||||||
wopts1! KeyError
|
wopts1! KeyError
|
||||||
@@ -112,7 +112,7 @@ bar
|
|||||||
B: 1:5 2:5 3:5 4:5
|
B: 1:5 2:5 3:5 4:5
|
||||||
>>> operatorfunc
|
>>> operatorfunc
|
||||||
p/gopts1: b''
|
p/gopts1: b''
|
||||||
inv: 2! ValueError
|
inv: 2! TypeError
|
||||||
p/wopts1! KeyError
|
p/wopts1! KeyError
|
||||||
inv: 2! KeyError
|
inv: 2! KeyError
|
||||||
wopts1! KeyError
|
wopts1! KeyError
|
||||||
@@ -187,9 +187,9 @@ bar
|
|||||||
B: 1:'+2' 2:'+3' 3:'+1' 4:''
|
B: 1:'+2' 2:'+3' 3:'+1' 4:''
|
||||||
>>> statusline
|
>>> statusline
|
||||||
p/gopts1: b''
|
p/gopts1: b''
|
||||||
inv: 0! ValueError
|
inv: 0! TypeError
|
||||||
p/wopts1: None
|
p/wopts1: None
|
||||||
inv: 0! ValueError
|
inv: 0! TypeError
|
||||||
p/bopts1! KeyError
|
p/bopts1! KeyError
|
||||||
inv: 0! KeyError
|
inv: 0! KeyError
|
||||||
bopts1! KeyError
|
bopts1! KeyError
|
||||||
@@ -248,7 +248,7 @@ bar
|
|||||||
wopts2! KeyError
|
wopts2! KeyError
|
||||||
wopts3! KeyError
|
wopts3! KeyError
|
||||||
p/bopts1: b''
|
p/bopts1: b''
|
||||||
inv: 1! ValueError
|
inv: 1! TypeError
|
||||||
G: ''
|
G: ''
|
||||||
W: 1:'A' 2:'B' 3:'' 4:'C'
|
W: 1:'A' 2:'B' 3:'' 4:'C'
|
||||||
B: 1:'A' 2:'B' 3:'' 4:'C'
|
B: 1:'A' 2:'B' 3:'' 4:'C'
|
||||||
@@ -277,14 +277,14 @@ bar
|
|||||||
B: 1:0 2:1 3:0 4:1
|
B: 1:0 2:1 3:0 4:1
|
||||||
>>> path
|
>>> path
|
||||||
p/gopts1: b'.,/usr/include,,'
|
p/gopts1: b'.,/usr/include,,'
|
||||||
inv: 0! ValueError
|
inv: 0! TypeError
|
||||||
p/wopts1! KeyError
|
p/wopts1! KeyError
|
||||||
inv: 0! KeyError
|
inv: 0! KeyError
|
||||||
wopts1! KeyError
|
wopts1! KeyError
|
||||||
wopts2! KeyError
|
wopts2! KeyError
|
||||||
wopts3! KeyError
|
wopts3! KeyError
|
||||||
p/bopts1: None
|
p/bopts1: None
|
||||||
inv: 0! ValueError
|
inv: 0! TypeError
|
||||||
G: '.,,'
|
G: '.,,'
|
||||||
W: 1:'.,,' 2:',,' 3:'.,,' 4:'.'
|
W: 1:'.,,' 2:',,' 3:'.,,' 4:'.'
|
||||||
B: 1:'.,,' 2:',,' 3:'.,,' 4:'.'
|
B: 1:'.,,' 2:',,' 3:'.,,' 4:'.'
|
||||||
|
@@ -728,6 +728,8 @@ static char *(features[]) =
|
|||||||
|
|
||||||
static int included_patches[] =
|
static int included_patches[] =
|
||||||
{ /* Add new patch number below this line */
|
{ /* Add new patch number below this line */
|
||||||
|
/**/
|
||||||
|
951,
|
||||||
/**/
|
/**/
|
||||||
950,
|
950,
|
||||||
/**/
|
/**/
|
||||||
|
Reference in New Issue
Block a user