diff options
author | Damien George <damien.p.george@gmail.com> | 2015-06-03 22:41:06 +0100 |
---|---|---|
committer | Damien George <damien.p.george@gmail.com> | 2015-06-03 22:41:06 +0100 |
commit | 80f638fe19f6d40c53792eebda2dfdecc82ad75e (patch) | |
tree | f7d219a3c0e57044063a2623d136234b3f216f0c /tests/misc/recursive_iternext.py | |
parent | 953c23b1bcc732ccb3a6e4798add9b1f2fc0f444 (diff) |
tests: Add test for recursive iternext stack overflow.
Diffstat (limited to 'tests/misc/recursive_iternext.py')
-rw-r--r-- | tests/misc/recursive_iternext.py | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/tests/misc/recursive_iternext.py b/tests/misc/recursive_iternext.py new file mode 100644 index 000000000..ac3a17e93 --- /dev/null +++ b/tests/misc/recursive_iternext.py @@ -0,0 +1,33 @@ +# This tests that recursion with iternext doesn't lead to segfault. + +try: + x = (1, 2) + for i in range(1000): + x = enumerate(x) + tuple(x) +except RuntimeError: + print("RuntimeError") + +try: + x = (1, 2) + for i in range(1000): + x = filter(None, x) + tuple(x) +except RuntimeError: + print("RuntimeError") + +try: + x = (1, 2) + for i in range(1000): + x = map(max, x, ()) + tuple(x) +except RuntimeError: + print("RuntimeError") + +try: + x = (1, 2) + for i in range(1000): + x = zip(x) + tuple(x) +except RuntimeError: + print("RuntimeError") |