summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Misc/NEWS3
-rw-r--r--Python/compile.c2
2 files changed, 4 insertions, 1 deletions
diff --git a/Misc/NEWS b/Misc/NEWS
index 0c2122f..4d1cf29 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -10,6 +10,9 @@ What's New in Python 3.7.0 alpha 1?
Core and Builtins
-----------------
+- bpo-29607: Fix stack_effect computation for CALL_FUNCTION_EX.
+ Patch by Matthieu Dartiailh.
+
- bpo-29602: Fix incorrect handling of signed zeros in complex constructor for
complex subclasses and for inputs having a __complex__ method. Patch
by Serhiy Storchaka.
diff --git a/Python/compile.c b/Python/compile.c
index 17fef31..8bf4ae1 100644
--- a/Python/compile.c
+++ b/Python/compile.c
@@ -1045,7 +1045,7 @@ PyCompile_OpcodeStackEffect(int opcode, int oparg)
case CALL_FUNCTION_KW:
return -oparg-1;
case CALL_FUNCTION_EX:
- return - ((oparg & 0x01) != 0) - ((oparg & 0x02) != 0);
+ return -1 - ((oparg & 0x01) != 0);
case MAKE_FUNCTION:
return -1 - ((oparg & 0x01) != 0) - ((oparg & 0x02) != 0) -
((oparg & 0x04) != 0) - ((oparg & 0x08) != 0);