[Issue 3133] New: Compiler does not check that static array casts are legal
d-bugmail at puremagic.com
d-bugmail at puremagic.com
Fri Jul 3 18:48:29 PDT 2009
http://d.puremagic.com/issues/show_bug.cgi?id=3133
Summary: Compiler does not check that static array casts are
legal
Product: D
Version: 1.039
Platform: All
OS/Version: All
Status: NEW
Keywords: accepts-invalid
Severity: minor
Priority: P2
Component: DMD
AssignedTo: nobody at puremagic.com
ReportedBy: jarrett.billingsley at gmail.com
When doing casts on dynamic arrays, invalid casts (i.e. where the sizes of the
source and destination arrays do not have a 0 remainder) are correctly
diagnosed as an error:
short[] x = [1];
int[] y = cast(int[])x; // error, array cast misalignment
The equivalent operation performed on static arrays should be diagnosable at
compile-time, but isn't:
short[1] x = [1];
int[1] y = cast(int[1])x; // accepted, even though illegal
writefln("%s", y[0]); // prints garbage
--
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