Made the core toolbox modules carbon-compatible using the new greylist feature of bgen: non-carbon methods are still included in non-carbon MacPython. The issue of backward compatibility of Python code is still open.
Macmodule and macosmodule have also been carbonified. Some functionality is still missing there.
diff --git a/Mac/Modules/Nav.c b/Mac/Modules/Nav.c
index a7bc45c..85fae41 100644
--- a/Mac/Modules/Nav.c
+++ b/Mac/Modules/Nav.c
@@ -323,6 +323,8 @@
 	navrrobject *self;
 	char *name;
 {
+	FSSpec fss;
+	
 	if( strcmp(name, "__members__") == 0 )
 		return Py_BuildValue("sssssss", "version", "validRecord", "replacing",
 			"isStationery", "translationNeeded", "selection", "fileTranslation");
@@ -355,7 +357,16 @@
 				PyErr_Mac(ErrorObject, err);
 				return NULL;
 			}
-			rvitem = PyMac_BuildFSSpec((FSSpec *)*desc.dataHandle);
+#ifdef TARGET_API_MAC_CARBON
+			if (err=AEGetDescData(&desc, &fss, sizeof(FSSpec))) {
+				Py_DECREF(rv);
+				PyErr_Mac(ErrorObject, err);
+				return NULL;
+			}
+#else
+			memcpy((void *)&fss, (void *)*desc.dataHandle, sizeof(FSSpec));
+#endif
+			rvitem = PyMac_BuildFSSpec(&fss);
 			PyList_SetItem(rv, i, rvitem);
 			AEDisposeDesc(&desc);
 		}