Aleksandar Kuktin wrote:
>> On Sat, 30 Mar 2013 16:23:43 -0500
>> Bruce Dubbs <bruce.du...@gmail.com> wrote:
>>
>> I've finally figured out what is making the mangle33.C program fail.
>> It is an arbitrary limitation in tcl.   This particular gcc test
>> creates a c++ namespace *name* of 4044 characters in length.   It
>> turns out that there is a value buried deep in tcl code
>> (generic/regc_nfa.c):
>>
>> /*
>>    * Arbitrary depth limit. Needs tuning, but this value is sufficient
>> to
>>    * make all normal tests (not reg-33.14) pass.
>>    */
>> #define DUPTRAVERSE_MAX_DEPTH 500
>>
>> Changing this to 5000 makes the gcc test pass.  Is it worthwhile to
>> make this change in the Chapter 5 build of tcl?  How about BLFS?

> It is worthwhile to hack tcl to not use an arbitrary value, as per the
> zero-one-infinity rule.

I think tcl is trying to prevent infinite recursion.  Actually I'm not 
convinced a 4044 regex pattern is reasonable, even if it doesn't have 
any meta characters.  For this test, a regex is not required, but a 
simple strstr.  Trying to put that into the gcc test harness is actually 
quite a bit more difficult than changing tcl.

Changing tcl to be able to accept a configuration value for this might 
be possible, but a lot of work for what looks like only minimal value.

> However, as that is a lot of work and also something the developer
> should have done, changing DUPTRAVERSE_MAX_DEPTH to 5000 (or whatever)
> is, IMHO, worthwhile.

Yes, I'm leaning that way.  I'd like to figure out he libmudflap 
failures too.

   -- Bruce




-- 
http://linuxfromscratch.org/mailman/listinfo/lfs-dev
FAQ: http://www.linuxfromscratch.org/faq/
Unsubscribe: See the above information page

Reply via email to