<div dir="ltr">I believe you can enable big array support with recompilation.<div><br></div><div>--enable-big-arrays --with-large-heap</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Tue, Jun 10, 2014 at 7:33 PM, Neale Ferguson <span dir="ltr"><<a href="mailto:NealeFerguson@verizon.net" target="_blank">NealeFerguson@verizon.net</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Building from head and using --trace=E<br>
<br>
[0x2000028a030:] EXCEPTION handling: System.IndexOutOfRangeException: Array index is out of range.<br>
[0x2000028a030:] EXCEPTION handling: System.TypeInitializationException: An exception was thrown by the type initializer for System.TermInfoDriver<br>
[0x2000028a030:] EXCEPTION handling: System.TypeInitializationException: An exception was thrown by the type initializer for System.ConsoleDriver<br>
[0x2000028a030:] EXCEPTION handling: System.TypeInitializationException: An exception was thrown by the type initializer for System.Console<br>
[0x2000028a030:] EXCEPTION handling: System.IndexOutOfRangeException: Array index is out of range.<br>
<br>
Unhandled Exception:<br>
Nested exception detected.<br>
Original Exception: at Mono.CSharp.Driver.Main (string[]) <0x0008a><br>
<br>
Nested exception:at (wrapper stelemref) object.virt_stelemref_object (intptr,object) <0x00044><br>
at string.Format (string,object,object) <0x00062><br>
at System.Exception.get_StackTrace () <0x0011c><br>
at System.Exception.ToString () <0x00230><br>
at System.Exception.ToString () <0x0018e><br>
at System.Exception.ToString () <0x0018e><br>
at System.Exception.ToString () <0x0018e><br>
<br>
<br>
[ERROR] FATAL UNHANDLED EXCEPTION: Nested exception detected.<br>
Original Exception: at Mono.CSharp.Driver.Main (string[]) <0x0008a><br>
<br>
Nested exception:at (wrapper stelemref) object.virt_stelemref_object (intptr,object) <0x00044><br>
at string.Format (string,object,object) <0x00062><br>
at System.Exception.get_StackTrace () <0x0011c><br>
at System.Exception.ToString () <0x00230><br>
at System.Exception.ToString () <0x0018e><br>
at System.Exception.ToString () <0x0018e><br>
at System.Exception.ToString () <0x0018e><br>
<br>
Using just --trace shows:<br>
<br>
0x2000028a030 [ 16] . . . . . . . . . . . . . . . . ENTER: string:ToCharArray () ip: 0x2000066cf80 sp: 0x3ffffd591d8 - this:[STRING:0x20000801ce0:],0x2000028a030 [ 17] . . . . . . . . . . . . . . . . . ENTER: string:ToCharArray (int,int) ip: 0x200007407c0 sp: 0x3ffffd590e8 - this:[STRING:0x20000801ce0:], [INT4:0], [INT4:1],<br>

0x2000028a030 [ 18] . . . . . . . . . . . . . . . . . . ENTER: (wrapper alloc) object:AllocVector (intptr,intptr) ip: 0x2000074095c sp: 0x3ffffd58fb8 - [INTPTR:0x804a9bf8], [INTPTR:0x1],<br>
0x2000028a030 [ 18] . . . . . . . . . . . . . . . . . . LEAVE: (wrapper alloc) object:AllocVector (intptr,intptr)[System.Char[]:0x20000801d00] ip: 0x20000665626<br>
0x2000028a030 [ 18] . . . . . . . . . . . . . . . . . . ENTER: string:CharCopy (char*,char*,int) ip: 0x20000740a0a sp: 0x3ffffd58fb8 - [PTR:(nil)], [PTR:0x20000801cf4], [INT4:1],<br>
0x2000028a030 [ 19] . . . . . . . . . . . . . . . . . . . ENTER: string:memcpy4 (byte*,byte*,int) ip: 0x20000740da0 sp: 0x3ffffd58eb8 - [PTR:(nil)], [PTR:0x20000801cf4], [INT4:2],<br>
<br>
With the relevant section being:<br>
<br>
                public unsafe char[] ToCharArray (int startIndex, int length)<br>
                {<br>
                        if (startIndex < 0)<br>
                                throw new ArgumentOutOfRangeException ("startIndex", "< 0");<br>
                        if (length < 0)<br>
                                throw new ArgumentOutOfRangeException ("length", "< 0");<br>
                        if (startIndex > this.length - length)<br>
                                throw new ArgumentOutOfRangeException ("startIndex", "Must be greater than the length of the string.");<br>
<br>
                        char[] tmp = new char [length];<br>
                        fixed (char* dest = tmp, src = this)<br>
                                CharCopy (dest, src + startIndex, length);<br>
                        return tmp;<br>
                }<br>
<br>
Which indicates new char [length] is returning NULL.<br>
<br>
Before I trace this any further, is this something that's been seen before with big arrays?<br>
<br>
Neale<br>
_______________________________________________<br>
Mono-devel-list mailing list<br>
<a href="mailto:Mono-devel-list@lists.ximian.com">Mono-devel-list@lists.ximian.com</a><br>
<a href="http://lists.ximian.com/mailman/listinfo/mono-devel-list" target="_blank">http://lists.ximian.com/mailman/listinfo/mono-devel-list</a><br>
</blockquote></div><br><br clear="all"><div><br></div>-- <br><a href="http://volatile-minds.blogspot.com">http://volatile-minds.blogspot.com</a> -- blog<br><a href="http://www.volatileminds.net">http://www.volatileminds.net</a> -- website
</div>