chiark / gitweb /
macro: introduce nice macro for disabling -Wmissing-prototypes warnigs
[elogind.git] / src / python-systemd / _journal.c
index 669c22c..cbc661d 100644 (file)
@@ -41,8 +41,7 @@ static PyObject *journal_sendv(PyObject *self, PyObject *args) {
 
         /* Allocate an array for the argument strings */
         argc = PyTuple_Size(args);
-        encoded = alloca(argc * sizeof(PyObject*));
-        memzero(encoded, argc * sizeof(PyObject*));
+        encoded = alloca0(argc * sizeof(PyObject*));
 
         /* Allocate sufficient iovector space for the arguments. */
         iov = alloca(argc * sizeof(struct iovec));
@@ -114,11 +113,9 @@ static PyMethodDef methods[] = {
         { NULL, NULL, 0, NULL }        /* Sentinel */
 };
 
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wmissing-prototypes"
-
 #if PY_MAJOR_VERSION < 3
 
+DISABLE_WARNING_MISSING_PROTOTYPES;
 PyMODINIT_FUNC init_journal(void) {
         PyObject *m;
 
@@ -128,6 +125,7 @@ PyMODINIT_FUNC init_journal(void) {
 
         PyModule_AddStringConstant(m, "__version__", PACKAGE_VERSION);
 }
+REENABLE_WARNING;
 
 #else
 
@@ -139,6 +137,7 @@ static struct PyModuleDef module = {
         methods
 };
 
+DISABLE_WARNING_MISSING_PROTOTYPES;
 PyMODINIT_FUNC PyInit__journal(void) {
         PyObject *m;
 
@@ -153,7 +152,6 @@ PyMODINIT_FUNC PyInit__journal(void) {
 
         return m;
 }
+REENABLE_WARNING;
 
 #endif
-
-#pragma GCC diagnostic pop