http://d.puremagic.com/issues/show_bug.cgi?id=3271
Summary: Struct initializers silently fail Product: D Version: 2.031 Platform: x86 OS/Version: Linux Status: NEW Severity: major Priority: P2 Component: DMD AssignedTo: nob...@puremagic.com ReportedBy: nfx...@gmail.com The following example seems to show, that dmd 2.031 generates invalid code for struct initializers. Test.X contains an empty string instead of "4", and the assertion fails. Amusingly, when using opCall and CTFE instead, it seems to work (version BUG disabled). PS: the unreduced version of this code also failed under dmd 1.0xx (don't know which version exactly). But this reduced example seems to work under dmd 1.046. Code: version = BUG; struct Test { version (BUG) { static enum Test X = {value:"4"}; } else { static enum Test X = Test("4"); } string value = ""; } void main() { Test x; assert(x.X.value == "4"); } -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------