Anyone up for a puzzle?
I've thrown out everything that isn't needed to show the problem and narrowed it down to a few lines (enough to get the program to compile properly in debug mode, but fail in release mode).
SuperStrict
Local temparray:Int[512 * 512]
Local mycolour:Int
Local mya:Int
Local myr:Int
Local myg:Int
Local myb:Int
Local f:Int
Local g:Int
temparray = New Int[512 * 512]
Local newtemparray:Int[512 * 512]
mya = (mycolour & $ff000000) Shr 24
myr = (mycolour & $ff000000) Shr 16
myg = (mycolour & $ff000000) Shr 8
myb = (mycolour & $ff000000)
mya = (mya & $000000ff) Shl 24
myr = (myr & $000000ff) Shl 16
myg = (myg & $000000ff) Shl 8
myb = (myb & $000000ff)
newtemparray[(f * 512) + g] = mya + myr + myg + myb
temparray[(f * 512) + g] = mya + myr + myg + myb
As I say, very little of the above code makes any sense without the rest of it, it's just to show the problem, if I try to compile the above lines in release mode the compiler will hang.
If I comment out either one of these two lines, it will compile in debug and release...
newtemparray[(f * 512) + g] = mya + myr + myg + myb
temparray[(f * 512) + g] = mya + myr + myg + myb
Also, if I rem out these lines...
[QOUTE]
mya = (mycolour & $ff000000) Shr 24
myr = (mycolour & $ff000000) Shr 16
myg = (mycolour & $ff000000) Shr 8
myb = (mycolour & $ff000000)
mya = (mya & $000000ff) Shl 24
myr = (myr & $000000ff) Shl 16
myg = (myg & $000000ff) Shl 8
myb = (myb & $000000ff)
[/QOUTE]
It will also compile in debug and release, which is really strange.
None of this code is neccessary to my main routines anymore so this isn't an important issue, but does anyone have any ideas?
I've thrown out everything that isn't needed to show the problem and narrowed it down to a few lines (enough to get the program to compile properly in debug mode, but fail in release mode).
SuperStrict
Local temparray:Int[512 * 512]
Local mycolour:Int
Local mya:Int
Local myr:Int
Local myg:Int
Local myb:Int
Local f:Int
Local g:Int
temparray = New Int[512 * 512]
Local newtemparray:Int[512 * 512]
mya = (mycolour & $ff000000) Shr 24
myr = (mycolour & $ff000000) Shr 16
myg = (mycolour & $ff000000) Shr 8
myb = (mycolour & $ff000000)
mya = (mya & $000000ff) Shl 24
myr = (myr & $000000ff) Shl 16
myg = (myg & $000000ff) Shl 8
myb = (myb & $000000ff)
newtemparray[(f * 512) + g] = mya + myr + myg + myb
temparray[(f * 512) + g] = mya + myr + myg + myb
As I say, very little of the above code makes any sense without the rest of it, it's just to show the problem, if I try to compile the above lines in release mode the compiler will hang.
If I comment out either one of these two lines, it will compile in debug and release...
newtemparray[(f * 512) + g] = mya + myr + myg + myb
temparray[(f * 512) + g] = mya + myr + myg + myb
Also, if I rem out these lines...
[QOUTE]
mya = (mycolour & $ff000000) Shr 24
myr = (mycolour & $ff000000) Shr 16
myg = (mycolour & $ff000000) Shr 8
myb = (mycolour & $ff000000)
mya = (mya & $000000ff) Shl 24
myr = (myr & $000000ff) Shl 16
myg = (myg & $000000ff) Shl 8
myb = (myb & $000000ff)
[/QOUTE]
It will also compile in debug and release, which is really strange.
None of this code is neccessary to my main routines anymore so this isn't an important issue, but does anyone have any ideas?