[Issue 2960] New: CTFE rejects static array to dynamic array casts
d-bugmail at puremagic.com
d-bugmail at puremagic.com
Sun May 10 06:52:17 PDT 2009
http://d.puremagic.com/issues/show_bug.cgi?id=2960
Summary: CTFE rejects static array to dynamic array casts
Product: D
Version: 1.043
Platform: PC
OS/Version: Linux
Status: NEW
Keywords: patch, rejects-valid
Severity: normal
Priority: P2
Component: DMD
AssignedTo: bugzilla at digitalmars.com
ReportedBy: kamm-removethis at incasoftware.de
Test case:
char[] foo(char[] source) { return ""; }
const v = "bar";
const r = foo(v);
Result:
Error: cannot evaluate foo(cast(char[])v) at compile time
This works in D2 because of changes to Cast in constfold.c. LDC backported the
changes by adding this code from the D2 frontend:
if (e1->op == TOKstring)
{
if (tb->ty == Tarray && typeb->ty == Tarray &&
tb->nextOf()->size() == typeb->nextOf()->size())
{
return expType(to, e1);
}
}
--
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