Commit dba5e06a by Masami Ichikawa Committed by Stéphane Graber

Fix build error(ISO C90 specs violation) in lxc.c

This patch fixes following build errors. running build_ext building '_lxc' extension creating build/temp.linux-x86_64-3.4 gcc -pthread -Wno-unused-result -Werror=declaration-after-statement -DDYNAMIC_ANNOTATIONS_ENABLED=1 -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong --param=ssp-buffer-size=4 -fPIC -I../../src -I../../src -I/usr/include/python3.4m -c lxc.c -o ./build/temp.linux-x86_64-3.4/lxc.o lxc.c: In function ‘convert_tuple_to_char_pointer_array’: lxc.c:49:5: error: ISO C90 forbids mixed declarations and code [-Werror=declaration-after-statement] char **result = (char**) calloc(argc + 1, sizeof(char*)); ^ lxc.c:60:9: error: ISO C90 forbids mixed declarations and code [-Werror=declaration-after-statement] char *str = NULL; ^ lxc.c: In function ‘Container_get_cgroup_item’: lxc.c:822:5: error: ISO C90 forbids mixed declarations and code [-Werror=declaration-after-statement] char* value = (char*) malloc(sizeof(char)*len + 1); ^ lxc.c: In function ‘Container_get_config_item’: lxc.c:861:5: error: ISO C90 forbids mixed declarations and code [-Werror=declaration-after-statement] char* value = (char*) malloc(sizeof(char)*len + 1); ^ lxc.c: In function ‘Container_get_keys’: lxc.c:903:5: error: ISO C90 forbids mixed declarations and code [-Werror=declaration-after-statement] char* value = (char*) malloc(sizeof(char)*len + 1); ^ cc1: some warnings being treated as errors error: command 'gcc' failed with exit status 1 Makefile:472: recipe for target 'all' failed make[3]: *** [all] Error 1 make[3]: Leaving directory '/home/masami/codes/lxc/src/python-lxc' Makefile:394: recipe for target 'all-recursive' failed make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory '/home/masami/codes/lxc/src' Makefile:338: recipe for target 'all' failed make[1]: *** [all] Error 2 make[1]: Leaving directory '/home/masami/codes/lxc/src' Makefile:484: recipe for target 'all-recursive' failed make: *** [all-recursive] Error 1 build env: distribution: Arch Linux gcc version 4.9.1 20140903 (prerelease) (GCC) Signed-off-by: 's avatarMasami Ichikawa <masami256@gmail.com> Acked-by: 's avatarStéphane Graber <stgraber@ubuntu.com>
parent 70d371fe
...@@ -37,6 +37,7 @@ char** ...@@ -37,6 +37,7 @@ char**
convert_tuple_to_char_pointer_array(PyObject *argv) { convert_tuple_to_char_pointer_array(PyObject *argv) {
int argc; int argc;
int i, j; int i, j;
char **result;
/* not a list or tuple */ /* not a list or tuple */
if (!PyList_Check(argv) && !PyTuple_Check(argv)) { if (!PyList_Check(argv) && !PyTuple_Check(argv)) {
...@@ -46,7 +47,7 @@ convert_tuple_to_char_pointer_array(PyObject *argv) { ...@@ -46,7 +47,7 @@ convert_tuple_to_char_pointer_array(PyObject *argv) {
argc = PySequence_Fast_GET_SIZE(argv); argc = PySequence_Fast_GET_SIZE(argv);
char **result = (char**) calloc(argc + 1, sizeof(char*)); result = (char**) calloc(argc + 1, sizeof(char*));
if (result == NULL) { if (result == NULL) {
PyErr_SetNone(PyExc_MemoryError); PyErr_SetNone(PyExc_MemoryError);
...@@ -54,11 +55,10 @@ convert_tuple_to_char_pointer_array(PyObject *argv) { ...@@ -54,11 +55,10 @@ convert_tuple_to_char_pointer_array(PyObject *argv) {
} }
for (i = 0; i < argc; i++) { for (i = 0; i < argc; i++) {
PyObject *pyobj = PySequence_Fast_GET_ITEM(argv, i);
assert(pyobj != NULL);
char *str = NULL; char *str = NULL;
PyObject *pystr = NULL; PyObject *pystr = NULL;
PyObject *pyobj = PySequence_Fast_GET_ITEM(argv, i);
assert(pyobj != NULL);
if (!PyUnicode_Check(pyobj)) { if (!PyUnicode_Check(pyobj)) {
PyErr_SetString(PyExc_ValueError, "Expected a string"); PyErr_SetString(PyExc_ValueError, "Expected a string");
...@@ -806,6 +806,7 @@ Container_get_cgroup_item(Container *self, PyObject *args, PyObject *kwds) ...@@ -806,6 +806,7 @@ Container_get_cgroup_item(Container *self, PyObject *args, PyObject *kwds)
static char *kwlist[] = {"key", NULL}; static char *kwlist[] = {"key", NULL};
char* key = NULL; char* key = NULL;
int len = 0; int len = 0;
char* value;
PyObject *ret = NULL; PyObject *ret = NULL;
if (! PyArg_ParseTupleAndKeywords(args, kwds, "s", kwlist, if (! PyArg_ParseTupleAndKeywords(args, kwds, "s", kwlist,
...@@ -819,7 +820,7 @@ Container_get_cgroup_item(Container *self, PyObject *args, PyObject *kwds) ...@@ -819,7 +820,7 @@ Container_get_cgroup_item(Container *self, PyObject *args, PyObject *kwds)
return NULL; return NULL;
} }
char* value = (char*) malloc(sizeof(char)*len + 1); value = (char*) malloc(sizeof(char)*len + 1);
if (value == NULL) if (value == NULL)
return PyErr_NoMemory(); return PyErr_NoMemory();
...@@ -841,6 +842,7 @@ Container_get_config_item(Container *self, PyObject *args, PyObject *kwds) ...@@ -841,6 +842,7 @@ Container_get_config_item(Container *self, PyObject *args, PyObject *kwds)
static char *kwlist[] = {"key", NULL}; static char *kwlist[] = {"key", NULL};
char* key = NULL; char* key = NULL;
int len = 0; int len = 0;
char* value;
PyObject *ret = NULL; PyObject *ret = NULL;
if (! PyArg_ParseTupleAndKeywords(args, kwds, "s|", kwlist, if (! PyArg_ParseTupleAndKeywords(args, kwds, "s|", kwlist,
...@@ -858,7 +860,7 @@ Container_get_config_item(Container *self, PyObject *args, PyObject *kwds) ...@@ -858,7 +860,7 @@ Container_get_config_item(Container *self, PyObject *args, PyObject *kwds)
return PyUnicode_FromString(""); return PyUnicode_FromString("");
} }
char* value = (char*) malloc(sizeof(char)*len + 1); value = (char*) malloc(sizeof(char)*len + 1);
if (value == NULL) if (value == NULL)
return PyErr_NoMemory(); return PyErr_NoMemory();
...@@ -887,6 +889,7 @@ Container_get_keys(Container *self, PyObject *args, PyObject *kwds) ...@@ -887,6 +889,7 @@ Container_get_keys(Container *self, PyObject *args, PyObject *kwds)
static char *kwlist[] = {"key", NULL}; static char *kwlist[] = {"key", NULL};
char* key = NULL; char* key = NULL;
int len = 0; int len = 0;
char* value;
PyObject *ret = NULL; PyObject *ret = NULL;
if (! PyArg_ParseTupleAndKeywords(args, kwds, "|s", kwlist, if (! PyArg_ParseTupleAndKeywords(args, kwds, "|s", kwlist,
...@@ -900,7 +903,7 @@ Container_get_keys(Container *self, PyObject *args, PyObject *kwds) ...@@ -900,7 +903,7 @@ Container_get_keys(Container *self, PyObject *args, PyObject *kwds)
return NULL; return NULL;
} }
char* value = (char*) malloc(sizeof(char)*len + 1); value = (char*) malloc(sizeof(char)*len + 1);
if (value == NULL) if (value == NULL)
return PyErr_NoMemory(); return PyErr_NoMemory();
......
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