Hi,

I am working on a project that is the property of a fellow Rb user that I am assisting. It has been written in Rb 5.5.5 and compiles and operates fine in that version.

When I attempted to run it in Rb 2007r1, it would not compile in the IDE and produced one error. This error concerned a very long method (2069 lines that uses a TextOutputStream, about 206 If...Then conditionals, and a fair amount of string concatenation in each of the WriteLine statements. Nothing really seems out of order in the coding other than the fact that it definitely could use a lot of refactoring, which I was intending to do.

The error reported was:

Location: Window1.WriteData, line 2069

Error: This method uses 44k of stack space, but the limit is 32k.
           End Sub

Line 2069 is off the scope of the 2007r1 code editor and is actually the hidden End Sub line. Line 2068 is the last visible line in the method.

In an attempt to discover where the problem might be I tried it in earlier versions of Rb. In both Rb 2005r4 and Rb 2006r1, the project compiled and operated correctly. In Rb 2006r2, it failed to compile but said that the method used 39k of stack space. In Rb 2006r3, 2006r4 and 2007r1, the stack space used was 44k.

After removing about 50% of the If..Then conditionals, it would then compile in 2007r1. ( I probably could have removed less code)

I understand that the later versions of Rb do a better job of error checking than 5.5.5, but why the discrepancy between Rb 2006r2 and 2006r4 when running the same method.

I tried saving the project in 2005r4 and 2007r1 but the same thing happens.

The actual 5.5.5 project, opened in 2005r4 and 2006r1, operates fine and shows no stack errors.

I will submit a bug report with the project as a private example if the owner permits.

In the meantime, does anyone have any similar experience or knowledge that they could pass on as this is a first for me.

Terry

Mac OS X 10.4.8, Rb 2007r1PPC



_______________________________________________
Unsubscribe or switch delivery mode:
<http://www.realsoftware.com/support/listmanager/>

Search the archives of this list here:
<http://support.realsoftware.com/listarchives/lists.html>

Reply via email to