Bug 8233 – std.array.array fails to compile with ranges of immutable elements which have a length property
Status
RESOLVED
Resolution
FIXED
Severity
normal
Priority
P2
Component
phobos
Product
D
Version
D2
Platform
All
OS
All
Creation time
2012-06-13T01:25:00Z
Last change time
2015-06-09T01:31:23Z
Assigned to
nobody
Creator
issues.dlang
Comments
Comment #0 by issues.dlang — 2012-06-13T01:25:48Z
This fails to compile
import std.array;
void main()
{
dstring d = "hello world";
auto e = array(d);
}
giving
/home/jmdavis/dmd2/linux/bin/../../src/phobos/std/array.d(55): Error: result[i] isn't mutable
q.d(6): Error: template instance std.array.array!(immutable(dchar)[]) error instantiating
If you use string rather than dstring, it works just fine. The line that fails to compile in std.array.array is in the hasLength!Range portion, so clearly it's an issue specifically with ranges which have a length property.