merge 3.2

This commit is contained in:
Benjamin Peterson 2011-07-22 10:55:02 -05:00
commit 86f088e8e5
4 changed files with 55 additions and 4 deletions

View file

@ -592,8 +592,25 @@ static int obj2ast_object(PyObject* obj, PyObject** out, PyArena* arena)
return 0;
}
#define obj2ast_identifier obj2ast_object
#define obj2ast_string obj2ast_object
static int obj2ast_stringlike(PyObject* obj, PyObject** out, PyArena* arena,
const char *name)
{
if (!PyUnicode_CheckExact(name)) {
PyErr_Format(PyExc_TypeError, "AST %s must be of type str", name);
return 1;
}
return obj2ast_object(obj, out, arena);
}
static int obj2ast_identifier(PyObject* obj, PyObject** out, PyArena* arena)
{
return obj2ast_stringlike(obj, out, arena, "identifier");
}
static int obj2ast_string(PyObject* obj, PyObject** out, PyArena* arena)
{
return obj2ast_stringlike(obj, out, arena, "string");
}
static int obj2ast_int(PyObject* obj, int* out, PyArena* arena)
{