January 20, 2015 [Issue 13919] typeof(T.init[].front.init) crashes compiler for T = std.container.Array!int | ||||
---|---|---|---|---|
| ||||
https://issues.dlang.org/show_bug.cgi?id=13919 Kenji Hara <k.hara.pg@gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |ice Hardware|x86_64 |All OS|Linux |All Severity|enhancement |major --- Comment #1 from Kenji Hara <k.hara.pg@gmail.com> --- Reduced test case: alias T = Array!int; pragma(msg, typeof(T.init[].front.init)); struct RefCounted(T) { //struct RefCountedStore //{ struct Impl { T _payload; size_t _count; } Impl* _store; //} //RefCountedStore _refCounted; ~this() {} // necessary @property ref inout(T) refCountedPayload() inout { return /*_refCounted.*/_store._payload; } alias refCountedPayload this; } struct Array(T) { struct Payload { size_t _capacity; T[] _payload; } RefCounted!Payload _data; static struct Range { Array _outer; this(ref Array data) // necessary { //_outer = data; } @property ref T front() { return _outer._data._payload[_a]; } } Range opSlice() { return Range(this); } } -- |
October 10, 2018 [Issue 13919] typeof(T.init[].front.init) crashes compiler for T = std.container.Array!int | ||||
---|---|---|---|---|
| ||||
https://issues.dlang.org/show_bug.cgi?id=13919 Nathan S. <n8sh.secondary@hotmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED CC| |n8sh.secondary@hotmail.com Resolution|--- |WORKSFORME --- Comment #2 from Nathan S. <n8sh.secondary@hotmail.com> --- Verified working with DMD v2.082.0. -- |
Copyright © 1999-2021 by the D Language Foundation