digitalmars.D.learn - Error: array dimension overflow
- Brian Hay (6/6) Mar 20 2008 Newbie Q:
- Bill Baxter (6/14) Mar 21 2008 I think there's a limit of 16K for the size of static arrays.
- Brian Hay (4/18) Mar 21 2008 That's what I figured. It's kind of hard to track down the issue without...
- jcc7 (6/14) Mar 24 2008 I agree.
- Spacen Jasset (3/20) Apr 03 2008 16k Seems shockingly low. Is there documentation on this. Even old Dos
- Jarrett Billingsley (2/22) Apr 03 2008
- Jarrett Billingsley (8/30) Apr 03 2008 Son of a.
- Spacen Jasset (4/38) Apr 04 2008 16Mb is more like it. Doubtless this limit will go away one day when the...
- Jarrett Billingsley (15/21) Mar 21 2008 Hee hee hee.
- Christopher Wright (3/17) Mar 21 2008 Why do you hate the compiler? Meanie.
- Brian Hay (2/19) Mar 21 2008 Thanks Jarrett, that was it.
Newbie Q: During compilation I'm getting the error: "array dimension overflow" but it doesn't provide any information as to where (module and line number) the error might be, so I'm at a loss. Other errors seem to provide such information. Any ideas?
Mar 20 2008
Brian Hay wrote:Newbie Q: During compilation I'm getting the error: "array dimension overflow" but it doesn't provide any information as to where (module and line number) the error might be, so I'm at a loss. Other errors seem to provide such information. Any ideas?I think there's a limit of 16K for the size of static arrays. Do you have any really big static arrays? Anyway, the compiler should generate a line number for that. Not providing one is a bug. --bb
Mar 21 2008
Bill Baxter wrote:Brian Hay wrote:No. Nothing like that.Newbie Q: During compilation I'm getting the error: "array dimension overflow" but it doesn't provide any information as to where (module and line number) the error might be, so I'm at a loss. Other errors seem to provide such information. Any ideas?I think there's a limit of 16K for the size of static arrays. Do you have any really big static arrays?Anyway, the compiler should generate a line number for that. Not providing one is a bug.That's what I figured. It's kind of hard to track down the issue without such details.
Mar 21 2008
== Quote from Brian Hay (bhay construct3d.com)'s articleBill Baxter wrote:...Brian Hay wrote:Newbie Q:I agree. I filed a bug report so that perhaps a future version of DMD would include a line number when it runs into this error: http://d.puremagic.com/issues/show_bug.cgi?id=1936Anyway, the compiler should generate a line number for that. Not providing one is a bug.That's what I figured. It's kind of hard to track down the issue without such details.
Mar 24 2008
Bill Baxter wrote:Brian Hay wrote:16k Seems shockingly low. Is there documentation on this. Even old Dos compilers for C support close to 64k indexes.Newbie Q: During compilation I'm getting the error: "array dimension overflow" but it doesn't provide any information as to where (module and line number) the error might be, so I'm at a loss. Other errors seem to provide such information. Any ideas?I think there's a limit of 16K for the size of static arrays. Do you have any really big static arrays? Anyway, the compiler should generate a line number for that. Not providing one is a bug. --bb
Apr 03 2008
"Spacen Jasset" <spacen yahoo.co.uk> wrote in message news:ft35ik$q7g$1 digitalmars.com...Bill Baxter wrote:Brian Hay wrote:16k Seems shockingly low. Is there documentation on this. Even old Dos compilers for C support close to 64k indexes.Newbie Q: During compilation I'm getting the error: "array dimension overflow" but it doesn't provide any information as to where (module and line number) the error might be, so I'm at a loss. Other errors seem to provide such information. Any ideas?I think there's a limit of 16K for the size of static arrays. Do you have any really big static arrays? Anyway, the compiler should generate a line number for that. Not providing one is a bug. --bb
Apr 03 2008
"Jarrett Billingsley" <kb3ctd2 yahoo.com> wrote in message news:ft3757$11cb$1 digitalmars.com..."Spacen Jasset" <spacen yahoo.co.uk> wrote in message news:ft35ik$q7g$1 digitalmars.com...Son of a. Bill made a typo, the max is 16MB. While Walter says that this is because "any larger array should really be allocated at runtime and not in the static data segment", I think it's really because OPTLINK crashes if you have something larger than 16MB in the static data segment. 9_9Bill Baxter wrote:Brian Hay wrote:16k Seems shockingly low. Is there documentation on this. Even old Dos compilers for C support close to 64k indexes.Newbie Q: During compilation I'm getting the error: "array dimension overflow" but it doesn't provide any information as to where (module and line number) the error might be, so I'm at a loss. Other errors seem to provide such information. Any ideas?I think there's a limit of 16K for the size of static arrays. Do you have any really big static arrays? Anyway, the compiler should generate a line number for that. Not providing one is a bug. --bb
Apr 03 2008
Jarrett Billingsley wrote:"Jarrett Billingsley" <kb3ctd2 yahoo.com> wrote in message news:ft3757$11cb$1 digitalmars.com...16Mb is more like it. Doubtless this limit will go away one day when the need becomes more pressing. Nothing to worry about too much... moving on. :-)"Spacen Jasset" <spacen yahoo.co.uk> wrote in message news:ft35ik$q7g$1 digitalmars.com...Son of a. Bill made a typo, the max is 16MB. While Walter says that this is because "any larger array should really be allocated at runtime and not in the static data segment", I think it's really because OPTLINK crashes if you have something larger than 16MB in the static data segment. 9_9Bill Baxter wrote:Brian Hay wrote:16k Seems shockingly low. Is there documentation on this. Even old Dos compilers for C support close to 64k indexes.Newbie Q: During compilation I'm getting the error: "array dimension overflow" but it doesn't provide any information as to where (module and line number) the error might be, so I'm at a loss. Other errors seem to provide such information. Any ideas?I think there's a limit of 16K for the size of static arrays. Do you have any really big static arrays? Anyway, the compiler should generate a line number for that. Not providing one is a bug. --bb
Apr 04 2008
"Brian Hay" <bhay construct3d.com> wrote in message news:frviab$126$1 digitalmars.com...Newbie Q: During compilation I'm getting the error: "array dimension overflow" but it doesn't provide any information as to where (module and line number) the error might be, so I'm at a loss. Other errors seem to provide such information. Any ideas?Hee hee hee. static int[] x = [-1: 1]; There's some kind of funky logic in the compiler which for some reason does not detect negative initialization indices, but rather does something like currentLength = index.toInt(); currentLength++; if(currentLength == 0) error("array dimension overflow"); It's to detect index overflow, but it's easily fooled by using a negative index, which it should really detect anyway. Are you using, maybe, 0xFFFF_FFFF anywhere as an array initializer index? Also, are you getting an "array initializers as expressions are not allowed" error at the same time by any chance?
Mar 21 2008
Jarrett Billingsley wrote:"Brian Hay" <bhay construct3d.com> wrote in message news:frviab$126$1 digitalmars.com...Why do you hate the compiler? Meanie. /me sniffles.Newbie Q: During compilation I'm getting the error: "array dimension overflow" but it doesn't provide any information as to where (module and line number) the error might be, so I'm at a loss. Other errors seem to provide such information. Any ideas?Hee hee hee. static int[] x = [-1: 1];
Mar 21 2008
Jarrett Billingsley wrote:"Brian Hay" <bhay construct3d.com> wrote in message news:frviab$126$1 digitalmars.com...Thanks Jarrett, that was it.Newbie Q: During compilation I'm getting the error: "array dimension overflow" but it doesn't provide any information as to where (module and line number) the error might be, so I'm at a loss. Other errors seem to provide such information. Any ideas?Hee hee hee. static int[] x = [-1: 1]; There's some kind of funky logic in the compiler which for some reason does not detect negative initialization indices
Mar 21 2008