diff Python/ceval.c @ 29337:f9495815c18f legacy-trunk

Don't use fast_next_opcode for JUMP_* opcodes. This fixes the problem reported by Kurt B. Kaiser.
author Neil Schemenauer <nascheme@enme.ucalgary.ca>
date Fri, 30 May 2003 23:59:44 +0000
parents af53729d3cdd
children fc286e28556f
line wrap: on
line diff
--- a/Python/ceval.c	Fri May 30 15:23:21 2003 +0000
+++ b/Python/ceval.c	Fri May 30 23:59:44 2003 +0000
@@ -2001,18 +2001,18 @@
 
 		case JUMP_FORWARD:
 			JUMPBY(oparg);
-			goto fast_next_opcode;
+			continue;
 
 		PREDICTED_WITH_ARG(JUMP_IF_FALSE);
 		case JUMP_IF_FALSE:
 			w = TOP();
 			if (w == Py_True) {
 				PREDICT(POP_TOP);
-				goto fast_next_opcode;
+				continue;
 			}
 			if (w == Py_False) {
 				JUMPBY(oparg);
-				goto fast_next_opcode;
+				continue;
 			}
 			err = PyObject_IsTrue(w);
 			if (err > 0)
@@ -2028,11 +2028,11 @@
 			w = TOP();
 			if (w == Py_False) {
 				PREDICT(POP_TOP);
-				goto fast_next_opcode;
+				continue;
 			}
 			if (w == Py_True) {
 				JUMPBY(oparg);
-				goto fast_next_opcode;
+				continue;
 			}
 			err = PyObject_IsTrue(w);
 			if (err > 0) {
@@ -2047,7 +2047,7 @@
 
 		case JUMP_ABSOLUTE:
 			JUMPTO(oparg);
-			goto fast_next_opcode;
+			continue;
 
 		case GET_ITER:
 			/* before: [obj]; after [getiter(obj)] */