digitalmars.D.bugs - [Issue 10840] New: [CTFE] *this._data.arr is not yet implemented at compile time
- d-bugmail puremagic.com (55/55) Aug 17 2013 http://d.puremagic.com/issues/show_bug.cgi?id=10840
- d-bugmail puremagic.com (10/10) Aug 21 2013 http://d.puremagic.com/issues/show_bug.cgi?id=10840
- d-bugmail puremagic.com (10/10) Aug 29 2013 http://d.puremagic.com/issues/show_bug.cgi?id=10840
http://d.puremagic.com/issues/show_bug.cgi?id=10840 Summary: [CTFE] *this._data.arr is not yet implemented at compile time Product: D Version: D2 Platform: All OS/Version: All Status: NEW Severity: normal Priority: P2 Component: DMD AssignedTo: nobody puremagic.com ReportedBy: dmitry.olsh gmail.com 14:54:39 PDT --- Found while working on std.regex. std.array.Append will sometimes fail with that message. Simpified test case: bool empty(int[] arr) { return arr.length == 0; } struct Appender { private struct Data { size_t capacity; int[] arr; } private Data* _data; property int[] data() trusted pure nothrow { return (_data ? _data.arr : null); } } struct Stack { Appender stack; property bool empty(){ return stack.data.empty; } } bool foo() { Stack app; return app.empty; } pragma(msg, foo()); Outputs (tested with git HEAD 2.064): ctfe_fail.d(18): Error: *this._data.arr is not yet implemented at compile time ctfe_fail.d(25): called from here: this.stack.data() ctfe_fail.d(25): called from here: empty(this.stack.data()) ctfe_fail.d(32): called from here: app.empty() ctfe_fail.d(36): called from here: foo() ctfe_fail.d(36): while evaluating pragma(msg, foo()) -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Aug 17 2013
http://d.puremagic.com/issues/show_bug.cgi?id=10840 Commit pushed to master at https://github.com/D-Programming-Language/dmd https://github.com/D-Programming-Language/dmd/commit/5bacc3c1a6c1e380bc3be96c0d3d706d9c2cd870 Fix issue 10840 CTFE *this._data.arr is not yet implemented This is a wrong-code bug in ?:, and a failure to detect null pointers in DotVar expressions. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Aug 21 2013
http://d.puremagic.com/issues/show_bug.cgi?id=10840 yebblies <yebblies gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED CC| |yebblies gmail.com Resolution| |FIXED -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: -------
Aug 29 2013