diff options
author | Neal Norwitz <nnorwitz@gmail.com> | 2006-10-28 21:38:43 (GMT) |
---|---|---|
committer | Neal Norwitz <nnorwitz@gmail.com> | 2006-10-28 21:38:43 (GMT) |
commit | 2f0940b6cab766f039dc22d361f52e25b22e9fa8 (patch) | |
tree | d828db04d486d7d5da0470af601c3055d195e57f /Lib | |
parent | c975b9477b8181db2f9076be43f53ef32397319b (diff) | |
download | cpython-2f0940b6cab766f039dc22d361f52e25b22e9fa8.zip cpython-2f0940b6cab766f039dc22d361f52e25b22e9fa8.tar.gz cpython-2f0940b6cab766f039dc22d361f52e25b22e9fa8.tar.bz2 |
Backport 52504:
Fix bug #1565514, SystemError not raised on too many nested blocks.
It seems like this should be a different error than SystemError, but
I don't have any great ideas and SystemError was raised in 2.4 and earlier.
Diffstat (limited to 'Lib')
-rw-r--r-- | Lib/test/test_syntax.py | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/Lib/test/test_syntax.py b/Lib/test/test_syntax.py index 521789f..4099149 100644 --- a/Lib/test/test_syntax.py +++ b/Lib/test/test_syntax.py @@ -333,6 +333,37 @@ isn't, there should be a syntax error. Traceback (most recent call last): ... SyntaxError: 'break' outside loop (<doctest test.test_syntax[42]>, line 3) + +This should probably raise a better error than a SystemError (or none at all). +In 2.5 there was a missing exception and an assert was triggered in a debug +build. The number of blocks must be greater than CO_MAXBLOCKS. SF #1565514 + + >>> while 1: + ... while 2: + ... while 3: + ... while 4: + ... while 5: + ... while 6: + ... while 8: + ... while 9: + ... while 10: + ... while 11: + ... while 12: + ... while 13: + ... while 14: + ... while 15: + ... while 16: + ... while 17: + ... while 18: + ... while 19: + ... while 20: + ... while 21: + ... while 22: + ... break + Traceback (most recent call last): + ... + SystemError: too many statically nested blocks + """ import re |