A few more gcc warnings bite the dust.
diff --git a/Mac/Modules/qd/_Qdmodule.c b/Mac/Modules/qd/_Qdmodule.c
index 3bbe2c3..d66fcf2 100644
--- a/Mac/Modules/qd/_Qdmodule.c
+++ b/Mac/Modules/qd/_Qdmodule.c
@@ -122,7 +122,7 @@
return Py_BuildValue("lll", (long)itself->red, (long)itself->green, (long)itself->blue);
}
-QdRGB_Convert(PyObject *v, RGBColorPtr p_itself)
+int QdRGB_Convert(PyObject *v, RGBColorPtr p_itself)
{
long red, green, blue;
diff --git a/Mac/Modules/qd/qdsupport.py b/Mac/Modules/qd/qdsupport.py
index 9c177b6..0c969d7 100644
--- a/Mac/Modules/qd/qdsupport.py
+++ b/Mac/Modules/qd/qdsupport.py
@@ -167,7 +167,7 @@
return Py_BuildValue("lll", (long)itself->red, (long)itself->green, (long)itself->blue);
}
-QdRGB_Convert(PyObject *v, RGBColorPtr p_itself)
+int QdRGB_Convert(PyObject *v, RGBColorPtr p_itself)
{
long red, green, blue;
diff --git a/Mac/Modules/res/_Resmodule.c b/Mac/Modules/res/_Resmodule.c
index 775e668..8640f5a 100644
--- a/Mac/Modules/res/_Resmodule.c
+++ b/Mac/Modules/res/_Resmodule.c
@@ -440,7 +440,8 @@
_self->ob_freeit = PyMac_AutoDisposeHandle;
else
_self->ob_freeit = NULL;
- return Py_BuildValue("i", old);
+ _res = Py_BuildValue("i", old);
+ return _res;
}
@@ -1378,7 +1379,8 @@
HLock(h);
memcpy(*h, buf, len);
HUnlock(h);
- return ResObj_New(h);
+ _res = ResObj_New(h);
+ return _res;
}
@@ -1403,7 +1405,8 @@
HUnlock(h);
rv = (ResourceObject *)ResObj_New(h);
rv->ob_freeit = PyMac_AutoDisposeHandle;
- return (PyObject *)rv;
+ _res = (PyObject *)rv;
+ return _res;
}
diff --git a/Mac/Modules/res/resedit.py b/Mac/Modules/res/resedit.py
index fce0bd1..c66c0c8 100644
--- a/Mac/Modules/res/resedit.py
+++ b/Mac/Modules/res/resedit.py
@@ -13,7 +13,8 @@
HLock(h);
memcpy(*h, buf, len);
HUnlock(h);
-return ResObj_New(h);
+_res = ResObj_New(h);
+return _res;
"""
f = ManualGenerator("Resource", resource_body)
@@ -43,7 +44,8 @@
HUnlock(h);
rv = (ResourceObject *)ResObj_New(h);
rv->ob_freeit = PyMac_AutoDisposeHandle;
-return (PyObject *)rv;
+_res = (PyObject *)rv;
+return _res;
"""
f = ManualGenerator("Handle", handle_body)
@@ -92,7 +94,8 @@
_self->ob_freeit = PyMac_AutoDisposeHandle;
else
_self->ob_freeit = NULL;
-return Py_BuildValue("i", old);
+_res = Py_BuildValue("i", old);
+return _res;
"""
f = ManualGenerator("AutoDispose", AutoDispose_body)
f.docstring = lambda: "(int)->int. Automatically DisposeHandle the object on Python object cleanup"
diff --git a/Mac/Modules/waste/wastemodule.c b/Mac/Modules/waste/wastemodule.c
index d09641f..2c28310 100644
--- a/Mac/Modules/waste/wastemodule.c
+++ b/Mac/Modules/waste/wastemodule.c
@@ -5,8 +5,20 @@
+#ifdef _WIN32
+#include "pywintoolbox.h"
+#else
#include "macglue.h"
#include "pymactoolbox.h"
+#endif
+
+/* Macro to test whether a weak-loaded CFM function exists */
+#define PyMac_PRECHECK(rtn) do { if ( &rtn == NULL ) {\
+ PyErr_SetString(PyExc_NotImplementedError, \
+ "Not available in this shared library/OS version"); \
+ return NULL; \
+ }} while(0)
+
#include <WASTE.h>
#include <WEObjectHandlers.h>
@@ -213,7 +225,7 @@
it->ob_itself = itself;
return (PyObject *)it;
}
-WEOObj_Convert(PyObject *v, WEObjectReference *p_itself)
+int WEOObj_Convert(PyObject *v, WEObjectReference *p_itself)
{
if (!WEOObj_Check(v))
{
@@ -381,7 +393,7 @@
WESetInfo(weRefCon, (void *)&it, itself);
return (PyObject *)it;
}
-wasteObj_Convert(PyObject *v, WEReference *p_itself)
+int wasteObj_Convert(PyObject *v, WEReference *p_itself)
{
if (!wasteObj_Check(v))
{
@@ -1061,7 +1073,6 @@
if (_err != noErr) return PyMac_Error(_err);
Py_INCREF(Py_None);
_res = Py_None;
- pText__error__: ;
return _res;
}