digitalmars.D.bugs - [Issue 1665] New: Internal error: ..\ztc\cod2.c 411
- d-bugmail puremagic.com (19/19) Nov 13 2007 http://d.puremagic.com/issues/show_bug.cgi?id=1665
- d-bugmail puremagic.com (30/30) Nov 13 2007 http://d.puremagic.com/issues/show_bug.cgi?id=1665
- d-bugmail puremagic.com (9/9) Dec 04 2007 http://d.puremagic.com/issues/show_bug.cgi?id=1665
http://d.puremagic.com/issues/show_bug.cgi?id=1665
Summary: Internal error: ..\ztc\cod2.c 411
Product: D
Version: 1.023
Platform: PC
OS/Version: Windows
Status: NEW
Severity: critical
Priority: P2
Component: DMD
AssignedTo: bugzilla digitalmars.com
ReportedBy: keystuffs netscape.net
Sorry, i have no sample code.
I get this error while compiling with the switch -O.
dmd test.d -release (OK)
dmd test.d -inline (OK)
dmd test.d -O
Internal error: ..\ztc\cod2.c 411
--
Nov 13 2007
http://d.puremagic.com/issues/show_bug.cgi?id=1665
Here is the code:
class Ap {
private uint value;
private ulong size;
public void update(ubyte[] input, int len) {
uint tmp = value;
for (int i = 0; i < len; i++) {
tmp ^= (((size + i) & 1) == 0) ?
((tmp << 7) ^ input[i] ^ (tmp >> 3)) :
(~((tmp << 11) ^ input[i] ^ (tmp >> 5)));
}
value = tmp;
}
}
int main(char[][] params) {
return 0;
}
If I replace my code:
tmp ^= (((size + i) & 1) == 0) ?
((tmp << 7) ^ input[i] ^ (tmp >> 3)) :
(~((tmp << 11) ^ input[i] ^ (tmp >> 5)));
by this code:
tmp ^= ((size & 1) == 0) ?
((tmp << 7) ^ input[i] ^ (tmp >> 3)) :
(~((tmp << 11) ^ input[i] ^ (tmp >> 5)));
size++;
dmd doesn't crash anymore.
--
Nov 13 2007
http://d.puremagic.com/issues/show_bug.cgi?id=1665
bugzilla digitalmars.com changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
Fixed dmd 1.024 and 2.008
--
Dec 04 2007









d-bugmail puremagic.com 