diff --git a/Lib/test/output/test_longexp b/Lib/test/output/test_longexp new file mode 100644 index 00000000000..73a101d6bea --- /dev/null +++ b/Lib/test/output/test_longexp @@ -0,0 +1,2 @@ +test_longexp +Caught SyntaxError for long expression: expression too long diff --git a/Lib/test/test_longexp.py b/Lib/test/test_longexp.py new file mode 100644 index 00000000000..38eb79b1c8c --- /dev/null +++ b/Lib/test/test_longexp.py @@ -0,0 +1,18 @@ +REPS = 8192 + +try: + eval("2+2+" * REPS + "+3.14159265") +except SyntaxError, msg: + print "Caught SyntaxError for long expression:", msg +else: + print "Long expression did not raise SyntaxError" + +## This test prints "s_push: parser stack overflow" on stderr, + ## which seems to confuse the test harness +##try: +## eval("(2+" * REPS + "0" + ")" * REPS) +##except SyntaxError: +## pass +##else: +## print "Deeply nested expression did not raised SyntaxError" +