Checkpoint. 218 tests are okay; 53 are failing. Done so far:
- all classes are new-style (but ripping out classobject.[ch] isn't done)
- int/int -> float
- all exceptions must derive from BaseException
- absolute import
- 'as' and 'with' are keywords
diff --git a/Include/pyerrors.h b/Include/pyerrors.h
index 1fe2e45..0e7718c 100644
--- a/Include/pyerrors.h
+++ b/Include/pyerrors.h
@@ -28,25 +28,18 @@
/* */
-#define PyExceptionClass_Check(x) \
- (PyClass_Check((x)) \
- || (PyType_Check((x)) && PyType_IsSubtype( \
- (PyTypeObject*)(x), (PyTypeObject*)PyExc_BaseException)))
+#define PyExceptionClass_Check(x) \
+ (PyType_Check((x)) && PyType_IsSubtype( \
+ (PyTypeObject*)(x), (PyTypeObject*)PyExc_BaseException))
-#define PyExceptionInstance_Check(x) \
- (PyInstance_Check((x)) || \
- (PyType_IsSubtype((x)->ob_type, (PyTypeObject*)PyExc_BaseException)))
+#define PyExceptionInstance_Check(x) \
+ (PyType_IsSubtype((x)->ob_type, (PyTypeObject*)PyExc_BaseException))
-#define PyExceptionClass_Name(x) \
- (PyClass_Check((x)) \
- ? PyString_AS_STRING(((PyClassObject*)(x))->cl_name) \
- : (char *)(((PyTypeObject*)(x))->tp_name))
+#define PyExceptionClass_Name(x) \
+ ((char *)(((PyTypeObject*)(x))->tp_name))
-#define PyExceptionInstance_Class(x) \
- ((PyInstance_Check((x)) \
- ? (PyObject*)((PyInstanceObject*)(x))->in_class \
- : (PyObject*)((x)->ob_type)))
+#define PyExceptionInstance_Class(x) ((PyObject*)((x)->ob_type))
/* Predefined exceptions */