[Python-bugs-list] [ python-Bugs-437472 ] MacPy21: sre "recursion limit" bug
noreply@sourceforge.net
noreply@sourceforge.net
Mon, 02 Jul 2001 01:58:59 -0700
Bugs item #437472, was opened at 2001-06-29 14:50
You can respond by visiting:
http://sourceforge.net/tracker/?func=detail&atid=105470&aid=437472&group_id=5470
Category: Regular Expressions
Group: Platform-specific
Status: Open
Resolution: None
Priority: 5
Submitted By: Nobody/Anonymous (nobody)
Assigned to: Nobody/Anonymous (nobody)
>Summary: MacPy21: sre "recursion limit" bug
Initial Comment:
As of Python 2.0, the sre module had bug wherein a
"RuntimeError: maximum recursion limit exceeded" would
be raised whenever an expression matched something on
the order of 16,000+ characters. The bug, nominally fixed
in time for Python 2.1, is still present in MacPython 2.1, as
evidenced by the following transcript copied from an
interactive session with the interpreter. Note success with
pre module, however.
It makes me curious, since the bug appears to be fixed in
WinPython 2.1, whether the correct source was used
when compiling MacPython 2.1....
==========
Python 2.1 (#92, Apr 24 2001, 23:59:23) [CW PPC GUSI2
THREADS] on mac
>>> import sre, pre, string
>>> l = ["XXX", "%"*20000, "XXX"]
>>> sre_regex = sre.compile(r"XXX.*?XXX")
>>> match_object = sre_regex.search(string.join(l))
Traceback (most recent call last):
File "<stdin>", line 1, in ?
RuntimeError: maximum recursion limit exceeded
>>> ### Above error first reported upon release of sre
with Python 2.0 ###
>>> ### Bug supposedly fixed in Python 2.0.1 release (no
Mac version, I know) ###
>>> pre_regex = pre.compile(r"XXX.*XXX")
>>> match_object = pre_regex.search(string.join(l))
>>> match_object
<pre.MatchObject instance at 0x04619c90>
>>> ### Note above success with pre module instead of sre
###
>>> ### Wrong sre module source used when compiling
MacPython 2.1? ###
----------------------------------------------------------------------
>Comment By: Jack Jansen (jackjansen)
Date: 2001-07-02 01:58
Message:
Logged In: YES
user_id=45365
When I try this in a MacPython build from the CVS repository
the sre example does not crash, but match_object ends up as
None. Also not the behaviour I expect...
----------------------------------------------------------------------
You can respond by visiting:
http://sourceforge.net/tracker/?func=detail&atid=105470&aid=437472&group_id=5470