patch: increase tcl86 regular expression depth limit to help dejagnu

Dimitry Andric dim at FreeBSD.org
Sat Jun 1 16:35:15 UTC 2013


Hi,

When running the libffi test suite using dejagnu, I ran into the
following tcl86 error:

...
Running target unix
Using /usr/local/share/dejagnu/baseboards/unix.exp as board description file for target.
Using /usr/local/share/dejagnu/config/unix.exp as generic interface file for target.
Using ../../testsuite/config/default.exp as tool-and-target-specific interface file.
Running ../../testsuite/libffi.call/call.exp ...
ERROR: tcl error sourcing ../../testsuite/libffi.call/call.exp.
ERROR: couldn't compile regular expression pattern: out of memory
    while executing
"regexp $texttmp ${output}"
    (procedure "saved-dg-test" line 247)
    invoked from within
"saved-dg-test ../../testsuite/libffi.call/huge_struct.c {-O0 -W -Wall} {}"
    ("eval" body line 1)
    invoked from within
"eval saved-dg-test $args "
    (procedure "dg-test" line 6)
    invoked from within
"dg-test $testcase $flags ${default-extra-flags}"
    (procedure "dg-runtest" line 10)
    invoked from within
"dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.\[cS\]]] "-O0 -W -Wall" """
    (file "../../testsuite/libffi.call/call.exp" line 24)
    invoked from within
"source ../../testsuite/libffi.call/call.exp"
    ("uplevel" body line 1)
    invoked from within
"uplevel #0 source ../../testsuite/libffi.call/call.exp"
    invoked from within
"catch "uplevel #0 source $test_file_name""
Running ../../testsuite/libffi.special/special.exp ...

After some searching, I found this similar bug on Tcl's tracker:
<http://sourceforge.net/tracker/?func=detail&aid=3603557&group_id=10894&atid=110894>

The change that introduced the limit is here:
<http://core.tcl.tk/tcl/info/1ab85d8c7d>

To make tcl86 work for the libffi tests, I simply doubled the limit from
500 to 1000, as in the attached diff.  Can you please consider adding
this to the tcl86 port?

-Dimitry
-------------- next part --------------
A non-text attachment was scrubbed...
Name: lang__tcl86-double-regex-depth-limit-1.diff
Type: application/octet-stream
Size: 2275 bytes
Desc: not available
URL: <http://lists.freebsd.org/pipermail/freebsd-tcltk/attachments/20130601/b1536326/attachment.obj>


More information about the freebsd-tcltk mailing list