[Python-checkins] python/dist/src/Objects codeobject.c, 1.1.2.3, 1.1.2.4

bcannon@users.sourceforge.net bcannon at users.sourceforge.net
Mon Jul 11 06:03:14 CEST 2005


Update of /cvsroot/python/python/dist/src/Objects
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14339/Objects

Modified Files:
      Tag: ast-branch
	codeobject.c 
Log Message:
Make sure that code_compare() returns -1, 0, or 1 only.  Prevents a warning
that pops up when you run regrtest.


Index: codeobject.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Objects/Attic/codeobject.c,v
retrieving revision 1.1.2.3
retrieving revision 1.1.2.4
diff -u -d -r1.1.2.3 -r1.1.2.4
--- codeobject.c	11 Jul 2005 03:37:11 -0000	1.1.2.3
+++ codeobject.c	11 Jul 2005 04:03:11 -0000	1.1.2.4
@@ -234,13 +234,13 @@
 	cmp = PyObject_Compare(co->co_name, cp->co_name);
 	if (cmp) return cmp;
 	cmp = co->co_argcount - cp->co_argcount;
-	if (cmp) return cmp;
+	if (cmp) goto normalize;
 	cmp = co->co_nlocals - cp->co_nlocals;
-	if (cmp) return cmp;
+	if (cmp) goto normalize;
 	cmp = co->co_flags - cp->co_flags;
-	if (cmp) return cmp;
+	if (cmp) goto normalize;
 	cmp = co->co_firstlineno - cp->co_firstlineno;
-	if (cmp) return cmp;
+	if (cmp) goto normalize;
 	cmp = PyObject_Compare(co->co_code, cp->co_code);
 	if (cmp) return cmp;
 	cmp = PyObject_Compare(co->co_consts, cp->co_consts);
@@ -253,6 +253,14 @@
 	if (cmp) return cmp;
 	cmp = PyObject_Compare(co->co_cellvars, cp->co_cellvars);
 	return cmp;
+
+ normalize:
+	if (cmp > 0)
+		return 1;
+	else if (cmp < 0)
+		return -1;
+	else
+		return 0;
 }
 
 static long



More information about the Python-checkins mailing list