Updated to something that works on my system, and regenerated module.
diff --git a/Mac/Modules/ibcarbon/IBCarbonscan.py b/Mac/Modules/ibcarbon/IBCarbonscan.py
index 7c54fc9..9312629 100644
--- a/Mac/Modules/ibcarbon/IBCarbonscan.py
+++ b/Mac/Modules/ibcarbon/IBCarbonscan.py
@@ -5,7 +5,7 @@
 import string
 import MacOS
 
-BGENDIR= '/Users/dp/python/dist/src/Tools/bgen/bgen'
+BGENDIR= '/Users/jack/src/python/Tools/bgen/bgen'
 sys.path.append(BGENDIR)
 print sys.path, sys.prefix
 from bgenlocations import TOOLBOXDIR
@@ -25,6 +25,7 @@
 	print "done"
 
 class IBCarbon_Scanner(Scanner_OSX):
+
 	def destination(self, type, name, arglist):
 		classname = "IBCarbonFunction"
 		listname = "functions"
@@ -40,6 +41,10 @@
 			"DisposeNibReference",				# taken care of by destructor
 			"CreateNibReferenceWithCFBundle",  ## need to wrap CFBundle.h properly first
 			]
+			
+	def makerepairinstructions(self):
+		return []
+
 
 if __name__ == "__main__":
 	main()
diff --git a/Mac/Modules/ibcarbon/_IBCarbon.c b/Mac/Modules/ibcarbon/_IBCarbon.c
index 34e432f..e4cd041 100644
--- a/Mac/Modules/ibcarbon/_IBCarbon.c
+++ b/Mac/Modules/ibcarbon/_IBCarbon.c
@@ -55,7 +55,7 @@
 static void IBNibRefObj_dealloc(IBNibRefObject *self)
 {
 	DisposeNibReference(self->ob_itself);
-	PyMem_DEL(self);
+	PyObject_Del(self);
 }
 
 static PyObject *IBNibRefObj_CreateWindowFromNib(IBNibRefObject *_self, PyObject *_args)
@@ -67,11 +67,9 @@
 	if (!PyArg_ParseTuple(_args, "O&",
 	                      CFStringRefObj_Convert, &inName))
 		return NULL;
-	Py_BEGIN_ALLOW_THREADS
 	_err = CreateWindowFromNib(_self->ob_itself,
 	                           inName,
 	                           &outWindow);
-	Py_END_ALLOW_THREADS
 	if (_err != noErr) return PyMac_Error(_err);
 	_res = Py_BuildValue("O&",
 	                     WinObj_New, outWindow);
@@ -87,11 +85,9 @@
 	if (!PyArg_ParseTuple(_args, "O&",
 	                      CFStringRefObj_Convert, &inName))
 		return NULL;
-	Py_BEGIN_ALLOW_THREADS
 	_err = CreateMenuFromNib(_self->ob_itself,
 	                         inName,
 	                         &outMenuRef);
-	Py_END_ALLOW_THREADS
 	if (_err != noErr) return PyMac_Error(_err);
 	_res = Py_BuildValue("O&",
 	                     MenuObj_New, outMenuRef);
@@ -107,11 +103,9 @@
 	if (!PyArg_ParseTuple(_args, "O&",
 	                      CFStringRefObj_Convert, &inName))
 		return NULL;
-	Py_BEGIN_ALLOW_THREADS
 	_err = CreateMenuBarFromNib(_self->ob_itself,
 	                            inName,
 	                            &outMenuBar);
-	Py_END_ALLOW_THREADS
 	if (_err != noErr) return PyMac_Error(_err);
 	_res = Py_BuildValue("O&",
 	                     ResObj_New, outMenuBar);
@@ -126,10 +120,8 @@
 	if (!PyArg_ParseTuple(_args, "O&",
 	                      CFStringRefObj_Convert, &inName))
 		return NULL;
-	Py_BEGIN_ALLOW_THREADS
 	_err = SetMenuBarFromNib(_self->ob_itself,
 	                         inName);
-	Py_END_ALLOW_THREADS
 	if (_err != noErr) return PyMac_Error(_err);
 	Py_INCREF(Py_None);
 	_res = Py_None;
@@ -194,10 +186,8 @@
 	if (!PyArg_ParseTuple(_args, "O&",
 	                      CFStringRefObj_Convert, &inNibName))
 		return NULL;
-	Py_BEGIN_ALLOW_THREADS
 	_err = CreateNibReference(inNibName,
 	                          &outNibRef);
-	Py_END_ALLOW_THREADS
 	if (_err != noErr) return PyMac_Error(_err);
 	_res = Py_BuildValue("O&",
 	                     IBNibRefObj_New, outNibRef);