Kaydet (Commit) 64182fe0 authored tarafından Anthony Baxter's avatar Anthony Baxter

Some more changes to make code compile under a C++ compiler.

üst 7b782b61
...@@ -1281,7 +1281,8 @@ PyObject * ...@@ -1281,7 +1281,8 @@ PyObject *
_PyObject_GC_Malloc(size_t basicsize) _PyObject_GC_Malloc(size_t basicsize)
{ {
PyObject *op; PyObject *op;
PyGC_Head *g = PyObject_MALLOC(sizeof(PyGC_Head) + basicsize); PyGC_Head *g = (PyGC_Head *)PyObject_MALLOC(
sizeof(PyGC_Head) + basicsize);
if (g == NULL) if (g == NULL)
return PyErr_NoMemory(); return PyErr_NoMemory();
g->gc.gc_refs = GC_UNTRACKED; g->gc.gc_refs = GC_UNTRACKED;
...@@ -1323,7 +1324,7 @@ _PyObject_GC_Resize(PyVarObject *op, Py_ssize_t nitems) ...@@ -1323,7 +1324,7 @@ _PyObject_GC_Resize(PyVarObject *op, Py_ssize_t nitems)
{ {
const size_t basicsize = _PyObject_VAR_SIZE(op->ob_type, nitems); const size_t basicsize = _PyObject_VAR_SIZE(op->ob_type, nitems);
PyGC_Head *g = AS_GC(op); PyGC_Head *g = AS_GC(op);
g = PyObject_REALLOC(g, sizeof(PyGC_Head) + basicsize); g = (PyGC_Head *)PyObject_REALLOC(g, sizeof(PyGC_Head) + basicsize);
if (g == NULL) if (g == NULL)
return (PyVarObject *)PyErr_NoMemory(); return (PyVarObject *)PyErr_NoMemory();
op = (PyVarObject *) FROM_GC(g); op = (PyVarObject *) FROM_GC(g);
......
...@@ -566,7 +566,7 @@ calculate_path(void) ...@@ -566,7 +566,7 @@ calculate_path(void)
bufsz += strlen(exec_prefix) + 1; bufsz += strlen(exec_prefix) + 1;
/* This is the only malloc call in this file */ /* This is the only malloc call in this file */
buf = PyMem_Malloc(bufsz); buf = (char *)PyMem_Malloc(bufsz);
if (buf == NULL) { if (buf == NULL) {
/* We can't exit, so print a warning and limp along */ /* We can't exit, so print a warning and limp along */
......
...@@ -208,7 +208,7 @@ Py_Main(int argc, char **argv) ...@@ -208,7 +208,7 @@ Py_Main(int argc, char **argv)
/* -c is the last option; following arguments /* -c is the last option; following arguments
that look like options are left for the that look like options are left for the
command to interpret. */ command to interpret. */
command = malloc(strlen(_PyOS_optarg) + 2); command = (char *)malloc(strlen(_PyOS_optarg) + 2);
if (command == NULL) if (command == NULL)
Py_FatalError( Py_FatalError(
"not enough memory to copy -c argument"); "not enough memory to copy -c argument");
...@@ -221,7 +221,7 @@ Py_Main(int argc, char **argv) ...@@ -221,7 +221,7 @@ Py_Main(int argc, char **argv)
/* -m is the last option; following arguments /* -m is the last option; following arguments
that look like options are left for the that look like options are left for the
module to interpret. */ module to interpret. */
module = malloc(strlen(_PyOS_optarg) + 2); module = (char *)malloc(strlen(_PyOS_optarg) + 2);
if (module == NULL) if (module == NULL)
Py_FatalError( Py_FatalError(
"not enough memory to copy -m argument"); "not enough memory to copy -m argument");
......
...@@ -6009,7 +6009,7 @@ static PyObject * ...@@ -6009,7 +6009,7 @@ static PyObject *
posix_putenv(PyObject *self, PyObject *args) posix_putenv(PyObject *self, PyObject *args)
{ {
char *s1, *s2; char *s1, *s2;
char *new; char *newenv;
PyObject *newstr; PyObject *newstr;
size_t len; size_t len;
...@@ -6040,9 +6040,9 @@ posix_putenv(PyObject *self, PyObject *args) ...@@ -6040,9 +6040,9 @@ posix_putenv(PyObject *self, PyObject *args)
newstr = PyString_FromStringAndSize(NULL, (int)len - 1); newstr = PyString_FromStringAndSize(NULL, (int)len - 1);
if (newstr == NULL) if (newstr == NULL)
return PyErr_NoMemory(); return PyErr_NoMemory();
new = PyString_AS_STRING(newstr); newenv = PyString_AS_STRING(newstr);
PyOS_snprintf(new, len, "%s=%s", s1, s2); PyOS_snprintf(newenv, len, "%s=%s", s1, s2);
if (putenv(new)) { if (putenv(newenv)) {
Py_DECREF(newstr); Py_DECREF(newstr);
posix_error(); posix_error();
return NULL; return NULL;
......
...@@ -101,7 +101,7 @@ PyOS_ascii_strtod(const char *nptr, char **endptr) ...@@ -101,7 +101,7 @@ PyOS_ascii_strtod(const char *nptr, char **endptr)
char *copy, *c; char *copy, *c;
/* We need to convert the '.' to the locale specific decimal point */ /* We need to convert the '.' to the locale specific decimal point */
copy = malloc(end - nptr + 1 + decimal_point_len); copy = (char *)malloc(end - nptr + 1 + decimal_point_len);
c = copy; c = copy;
memcpy(c, nptr, decimal_point_pos - nptr); memcpy(c, nptr, decimal_point_pos - nptr);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment