[Python-checkins] python/dist/src/Objects classobject.c,2.158,2.159 object.c,2.179,2.180

tim_one@users.sourceforge.net tim_one@users.sourceforge.net
2002年7月06日 20:59:36 -0700


Update of /cvsroot/python/python/dist/src/Objects
In directory usw-pr-cvs1:/tmp/cvs-serv12674/python/Objects
Modified Files:
	classobject.c object.c 
Log Message:
Removed WITH_CYCLE_GC #ifdef-ery. Holes:
+ I'm not sure what to do about configure.in. Left it alone.
+ Ditto pyexpat.c. Fred or Martin will know what to do.
Index: classobject.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Objects/classobject.c,v
retrieving revision 2.158
retrieving revision 2.159
diff -C2 -d -r2.158 -r2.159
*** classobject.c	18 Jun 2002 12:38:06 -0000	2.158
--- classobject.c	7 Jul 2002 03:59:34 -0000	2.159
***************
*** 679,685 ****
 	inst->ob_type->tp_frees--;
 #endif
- #ifndef WITH_CYCLE_GC
- 	inst->ob_type = NULL;
- #endif
 #endif
 	Py_DECREF(inst->in_class);
--- 679,682 ----
Index: object.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Objects/object.c,v
retrieving revision 2.179
retrieving revision 2.180
diff -C2 -d -r2.179 -r2.180
*** object.c	13 Jun 2002 21:42:51 -0000	2.179
--- object.c	7 Jul 2002 03:59:34 -0000	2.180
***************
*** 2081,2107 ****
 _PyTrash_deposit_object(PyObject *op)
 {
- #ifndef WITH_CYCLE_GC
- 	int typecode;
- 
- 	if (PyTuple_Check(op))
- 		typecode = Py_TRASHCAN_TUPLE;
- 	else if (PyList_Check(op))
- 		typecode = Py_TRASHCAN_LIST;
- 	else if (PyDict_Check(op))
- 		typecode = Py_TRASHCAN_DICT;
- 	else if (PyFrame_Check(op))
- 		typecode = Py_TRASHCAN_FRAME;
- 	else if (PyTraceBack_Check(op))
- 		typecode = Py_TRASHCAN_TRACEBACK;
- 	else /* We have a bug here -- those are the only types in GC */ {
- 		Py_FatalError("Type not supported in GC -- internal bug");
- 		return; /* pacify compiler -- execution never here */
- 	}
- 	op->ob_refcnt = typecode;
- 	op->ob_type = (PyTypeObject*)_PyTrash_delete_later;
- #else
 	assert (_Py_AS_GC(op)->gc.gc_next == NULL);
 	_Py_AS_GC(op)->gc.gc_prev = (PyGC_Head *)_PyTrash_delete_later;
- #endif
 	_PyTrash_delete_later = op;
 }
--- 2081,2086 ----
***************
*** 2113,2140 ****
 		PyObject *shredder = _PyTrash_delete_later;
 
- #ifndef WITH_CYCLE_GC
- 		_PyTrash_delete_later = (PyObject*) shredder->ob_type;
- 
- 		switch (shredder->ob_refcnt) {
- 		case Py_TRASHCAN_TUPLE:
- 			shredder->ob_type = &PyTuple_Type;
- 			break;
- 		case Py_TRASHCAN_LIST:
- 			shredder->ob_type = &PyList_Type;
- 			break;
- 		case Py_TRASHCAN_DICT:
- 			shredder->ob_type = &PyDict_Type;
- 			break;
- 		case Py_TRASHCAN_FRAME:
- 			shredder->ob_type = &PyFrame_Type;
- 			break;
- 		case Py_TRASHCAN_TRACEBACK:
- 			shredder->ob_type = &PyTraceBack_Type;
- 			break;
- 		}
- #else
 		_PyTrash_delete_later =
 			(PyObject*) _Py_AS_GC(shredder)->gc.gc_prev;
- #endif
 
 		_Py_NewReference(shredder);
--- 2092,2097 ----

AltStyle によって変換されたページ (->オリジナル) /