use %R format code; fixes invalid dereferencing #10391

This commit is contained in:
Benjamin Peterson 2010-11-20 01:38:49 +00:00
parent c8c60c2284
commit 5b066817e2
4 changed files with 43 additions and 58 deletions

View file

@ -3375,6 +3375,7 @@ int
obj2ast_mod(PyObject* obj, mod_ty* out, PyArena* arena)
{
PyObject* tmp = NULL;
tmp = tmp;
int isinstance;
@ -3514,11 +3515,8 @@ obj2ast_mod(PyObject* obj, mod_ty* out, PyArena* arena)
return 0;
}
tmp = PyObject_Repr(obj);
if (tmp == NULL) goto failed;
PyErr_Format(PyExc_TypeError, "expected some sort of mod, but got %.400s", PyBytes_AS_STRING(tmp));
failed:
Py_XDECREF(tmp);
PyErr_Format(PyExc_TypeError, "expected some sort of mod, but got %R", obj);
failed:
return 1;
}
@ -3526,6 +3524,7 @@ int
obj2ast_stmt(PyObject* obj, stmt_ty* out, PyArena* arena)
{
PyObject* tmp = NULL;
tmp = tmp;
int isinstance;
int lineno;
@ -4712,11 +4711,8 @@ obj2ast_stmt(PyObject* obj, stmt_ty* out, PyArena* arena)
return 0;
}
tmp = PyObject_Repr(obj);
if (tmp == NULL) goto failed;
PyErr_Format(PyExc_TypeError, "expected some sort of stmt, but got %.400s", PyBytes_AS_STRING(tmp));
failed:
Py_XDECREF(tmp);
PyErr_Format(PyExc_TypeError, "expected some sort of stmt, but got %R", obj);
failed:
return 1;
}
@ -4724,6 +4720,7 @@ int
obj2ast_expr(PyObject* obj, expr_ty* out, PyArena* arena)
{
PyObject* tmp = NULL;
tmp = tmp;
int isinstance;
int lineno;
@ -5830,11 +5827,8 @@ obj2ast_expr(PyObject* obj, expr_ty* out, PyArena* arena)
return 0;
}
tmp = PyObject_Repr(obj);
if (tmp == NULL) goto failed;
PyErr_Format(PyExc_TypeError, "expected some sort of expr, but got %.400s", PyBytes_AS_STRING(tmp));
failed:
Py_XDECREF(tmp);
PyErr_Format(PyExc_TypeError, "expected some sort of expr, but got %R", obj);
failed:
return 1;
}
@ -5842,6 +5836,7 @@ int
obj2ast_expr_context(PyObject* obj, expr_context_ty* out, PyArena* arena)
{
PyObject* tmp = NULL;
tmp = tmp;
int isinstance;
isinstance = PyObject_IsInstance(obj, (PyObject *)Load_type);
@ -5893,11 +5888,7 @@ obj2ast_expr_context(PyObject* obj, expr_context_ty* out, PyArena* arena)
return 0;
}
tmp = PyObject_Repr(obj);
if (tmp == NULL) goto failed;
PyErr_Format(PyExc_TypeError, "expected some sort of expr_context, but got %.400s", PyBytes_AS_STRING(tmp));
failed:
Py_XDECREF(tmp);
PyErr_Format(PyExc_TypeError, "expected some sort of expr_context, but got %R", obj);
return 1;
}
@ -5905,6 +5896,7 @@ int
obj2ast_slice(PyObject* obj, slice_ty* out, PyArena* arena)
{
PyObject* tmp = NULL;
tmp = tmp;
int isinstance;
@ -6018,11 +6010,8 @@ obj2ast_slice(PyObject* obj, slice_ty* out, PyArena* arena)
return 0;
}
tmp = PyObject_Repr(obj);
if (tmp == NULL) goto failed;
PyErr_Format(PyExc_TypeError, "expected some sort of slice, but got %.400s", PyBytes_AS_STRING(tmp));
failed:
Py_XDECREF(tmp);
PyErr_Format(PyExc_TypeError, "expected some sort of slice, but got %R", obj);
failed:
return 1;
}
@ -6030,6 +6019,7 @@ int
obj2ast_boolop(PyObject* obj, boolop_ty* out, PyArena* arena)
{
PyObject* tmp = NULL;
tmp = tmp;
int isinstance;
isinstance = PyObject_IsInstance(obj, (PyObject *)And_type);
@ -6049,11 +6039,7 @@ obj2ast_boolop(PyObject* obj, boolop_ty* out, PyArena* arena)
return 0;
}
tmp = PyObject_Repr(obj);
if (tmp == NULL) goto failed;
PyErr_Format(PyExc_TypeError, "expected some sort of boolop, but got %.400s", PyBytes_AS_STRING(tmp));
failed:
Py_XDECREF(tmp);
PyErr_Format(PyExc_TypeError, "expected some sort of boolop, but got %R", obj);
return 1;
}
@ -6061,6 +6047,7 @@ int
obj2ast_operator(PyObject* obj, operator_ty* out, PyArena* arena)
{
PyObject* tmp = NULL;
tmp = tmp;
int isinstance;
isinstance = PyObject_IsInstance(obj, (PyObject *)Add_type);
@ -6160,11 +6147,7 @@ obj2ast_operator(PyObject* obj, operator_ty* out, PyArena* arena)
return 0;
}
tmp = PyObject_Repr(obj);
if (tmp == NULL) goto failed;
PyErr_Format(PyExc_TypeError, "expected some sort of operator, but got %.400s", PyBytes_AS_STRING(tmp));
failed:
Py_XDECREF(tmp);
PyErr_Format(PyExc_TypeError, "expected some sort of operator, but got %R", obj);
return 1;
}
@ -6172,6 +6155,7 @@ int
obj2ast_unaryop(PyObject* obj, unaryop_ty* out, PyArena* arena)
{
PyObject* tmp = NULL;
tmp = tmp;
int isinstance;
isinstance = PyObject_IsInstance(obj, (PyObject *)Invert_type);
@ -6207,11 +6191,7 @@ obj2ast_unaryop(PyObject* obj, unaryop_ty* out, PyArena* arena)
return 0;
}
tmp = PyObject_Repr(obj);
if (tmp == NULL) goto failed;
PyErr_Format(PyExc_TypeError, "expected some sort of unaryop, but got %.400s", PyBytes_AS_STRING(tmp));
failed:
Py_XDECREF(tmp);
PyErr_Format(PyExc_TypeError, "expected some sort of unaryop, but got %R", obj);
return 1;
}
@ -6219,6 +6199,7 @@ int
obj2ast_cmpop(PyObject* obj, cmpop_ty* out, PyArena* arena)
{
PyObject* tmp = NULL;
tmp = tmp;
int isinstance;
isinstance = PyObject_IsInstance(obj, (PyObject *)Eq_type);
@ -6302,11 +6283,7 @@ obj2ast_cmpop(PyObject* obj, cmpop_ty* out, PyArena* arena)
return 0;
}
tmp = PyObject_Repr(obj);
if (tmp == NULL) goto failed;
PyErr_Format(PyExc_TypeError, "expected some sort of cmpop, but got %.400s", PyBytes_AS_STRING(tmp));
failed:
Py_XDECREF(tmp);
PyErr_Format(PyExc_TypeError, "expected some sort of cmpop, but got %R", obj);
return 1;
}
@ -6378,6 +6355,7 @@ int
obj2ast_excepthandler(PyObject* obj, excepthandler_ty* out, PyArena* arena)
{
PyObject* tmp = NULL;
tmp = tmp;
int isinstance;
int lineno;
@ -6473,11 +6451,8 @@ obj2ast_excepthandler(PyObject* obj, excepthandler_ty* out, PyArena* arena)
return 0;
}
tmp = PyObject_Repr(obj);
if (tmp == NULL) goto failed;
PyErr_Format(PyExc_TypeError, "expected some sort of excepthandler, but got %.400s", PyBytes_AS_STRING(tmp));
failed:
Py_XDECREF(tmp);
PyErr_Format(PyExc_TypeError, "expected some sort of excepthandler, but got %R", obj);
failed:
return 1;
}