From 8370bb952809f72b387f11e58aa7b0452e383915 Mon Sep 17 00:00:00 2001 From: Nick Coghlan Date: Thu, 3 Mar 2011 11:08:33 +0000 Subject: [PATCH] Update compiler recursion crasher to more reliably blow the stack and add a tracker issue for it --- Lib/test/crashers/compiler_recursion.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/Lib/test/crashers/compiler_recursion.py b/Lib/test/crashers/compiler_recursion.py index 4954bdd8f0f..8fd93fcdd49 100644 --- a/Lib/test/crashers/compiler_recursion.py +++ b/Lib/test/crashers/compiler_recursion.py @@ -1,5 +1,13 @@ """ -The compiler (>= 2.5) recurses happily. +The compiler (>= 2.5) recurses happily until it blows the stack. + +Recorded on the tracker as http://bugs.python.org/issue11383 """ -compile('()'*9**5, '?', 'exec') +# The variant below blows up in compiler_call, but there are assorted +# other variations that blow up in other functions +# e.g. '1*'*10**5+'1' will die in compiler_visit_expr + +# The exact limit to destroy the stack will vary by platform +# but 100k should do the trick most places +compile('()'*10**5, '?', 'exec')