[Issue 2054] New: Const system broken on struct assignment.
d-bugmail at puremagic.com
d-bugmail at puremagic.com
Mon Apr 28 16:28:41 PDT 2008
http://d.puremagic.com/issues/show_bug.cgi?id=2054
Summary: Const system broken on struct assignment.
Product: D
Version: 2.012
Platform: PC
OS/Version: Windows
Status: NEW
Keywords: accepts-invalid
Severity: critical
Priority: P1
Component: DMD
AssignedTo: bugzilla at digitalmars.com
ReportedBy: brunodomedeiros+bugz at gmail.com
Const system broken on struct assignment:
---- ----
struct Struct {
char* chptr;
}
void main()
{
char ch = 'd';
invariant Struct iStruct = {&ch};
Struct y = iStruct; // BREAKAGE
*y.chptr = 'X'; // Because now we can do this
}
---- ----
Like Andrei mentioned in accu-functional.pdf , such struct assignment should
only be allowed if the struct refered to no mutable memory (which is not the
case).
--
More information about the Digitalmars-d-bugs
mailing list