[Issue 5455] Optimization (register allocation?) regression in DMD 1.065
d-bugmail at puremagic.com
d-bugmail at puremagic.com
Mon Jan 17 00:24:24 PST 2011
http://d.puremagic.com/issues/show_bug.cgi?id=5455
Don <clugdbug at yahoo.com.au> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |clugdbug at yahoo.com.au
Version|D1 |D1 & D2
--- Comment #1 from Don <clugdbug at yahoo.com.au> 2011-01-17 00:22:27 PST ---
This doesn't fail in the D1 version in svn.
This doesn't ICE on svn 852 "reduce reliance on varargs" but did ICE on svn 851
and earlier.
Here's a slightly reduced test case which ICEs on the version of D2 in svn.
Still requires -O -inline -release.
----
final class DataWrapper
{
void* dat;
void[] contents()
{
return dat[0..1];
}
}
class Data
{
private:
DataWrapper wrapper;
size_t start, end;
public:
this(void[] data) {}
size_t length()
{
return end - start;
}
}
Data daz(Data srcbuf)
{
throw new Exception("xxx");
}
uint crc32(void[] data)
{
int w;
foreach(v;cast(ubyte[])data)
{
++w;
}
return 0;
}
class HttpResponse
{
Data zug;
void setContent(Data data, string[] supported)
{
foreach(method;supported)
switch(method)
{
default:
uint[] footer = [crc32(data.wrapper ?
data.wrapper.contents[data.start..data.end] : null ), data.end - data.start];
zug = daz(data);
return;
}
}
}
----
--
Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
More information about the Digitalmars-d-bugs
mailing list