This reverts r63675 based on the discussion in this thread:
http://mail.python.org/pipermail/python-dev/2008-June/079988.html
Python 2.6 should stick with PyString_* in its codebase. The PyBytes_* names
in the spirit of 3.0 are available via a #define only. See the email thread.
diff --git a/Modules/parsermodule.c b/Modules/parsermodule.c
index 2ff67f2..6e52343 100644
--- a/Modules/parsermodule.c
+++ b/Modules/parsermodule.c
@@ -105,14 +105,14 @@
}
if (TYPE(n) == encoding_decl)
- (void) addelem(v, i+1, PyBytes_FromString(STR(n)));
+ (void) addelem(v, i+1, PyString_FromString(STR(n)));
return (v);
}
else if (ISTERMINAL(TYPE(n))) {
PyObject *result = mkseq(2 + lineno + col_offset);
if (result != NULL) {
(void) addelem(result, 0, PyInt_FromLong(TYPE(n)));
- (void) addelem(result, 1, PyBytes_FromString(STR(n)));
+ (void) addelem(result, 1, PyString_FromString(STR(n)));
if (lineno == 1)
(void) addelem(result, 2, PyInt_FromLong(n->n_lineno));
if (col_offset == 1)
@@ -689,7 +689,7 @@
temp = PySequence_GetItem(elem, 1);
if (temp == NULL)
return 0;
- if (!PyBytes_Check(temp)) {
+ if (!PyString_Check(temp)) {
PyErr_Format(parser_error,
"second item in terminal node must be a string,"
" found %s",
@@ -714,10 +714,10 @@
Py_DECREF(o);
}
}
- len = PyBytes_GET_SIZE(temp) + 1;
+ len = PyString_GET_SIZE(temp) + 1;
strn = (char *)PyObject_MALLOC(len);
if (strn != NULL)
- (void) memcpy(strn, PyBytes_AS_STRING(temp), len);
+ (void) memcpy(strn, PyString_AS_STRING(temp), len);
Py_DECREF(temp);
}
else if (!ISNONTERMINAL(type)) {
@@ -800,10 +800,10 @@
}
if (res && encoding) {
Py_ssize_t len;
- len = PyBytes_GET_SIZE(encoding) + 1;
+ len = PyString_GET_SIZE(encoding) + 1;
res->n_str = (char *)PyObject_MALLOC(len);
if (res->n_str != NULL)
- (void) memcpy(res->n_str, PyBytes_AS_STRING(encoding), len);
+ (void) memcpy(res->n_str, PyString_AS_STRING(encoding), len);
Py_DECREF(encoding);
Py_DECREF(tuple);
}