Skip to content

Commit 26603d7

Browse files
committed
GR-10385: pzip iterator stop when no iterable args are supplied
1 parent 026f4a5 commit 26603d7

File tree

1 file changed

+6
-0
lines changed
  • graalpython/com.oracle.graal.python/src/com/oracle/graal/python/builtins/objects/iterator

1 file changed

+6
-0
lines changed

graalpython/com.oracle.graal.python/src/com/oracle/graal/python/builtins/objects/iterator/PZipBuiltins.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@
3636
import com.oracle.graal.python.nodes.control.GetNextNode;
3737
import com.oracle.graal.python.nodes.function.PythonBuiltinNode;
3838
import com.oracle.graal.python.nodes.function.builtins.PythonUnaryBuiltinNode;
39+
import com.oracle.graal.python.runtime.exception.PythonErrorType;
3940
import com.oracle.truffle.api.dsl.Cached;
4041
import com.oracle.truffle.api.dsl.GenerateNodeFactory;
4142
import com.oracle.truffle.api.dsl.NodeFactory;
@@ -53,6 +54,11 @@ protected List<? extends NodeFactory<? extends PythonBuiltinNode>> getNodeFactor
5354
@GenerateNodeFactory
5455
public abstract static class NextNode extends PythonUnaryBuiltinNode {
5556

57+
@Specialization(guards = "isEmpty(self.getIterators())")
58+
public Object __next__(@SuppressWarnings("unused") PZip self) {
59+
throw raise(PythonErrorType.StopIteration);
60+
}
61+
5662
@Specialization
5763
public Object __next__(PZip self,
5864
@Cached("create()") GetNextNode next) {

0 commit comments

Comments
 (0)