[Issue 13077] New: [dmd 2.066-b2] std.range.array with shared InputRangeObject
via Digitalmars-d-bugs
digitalmars-d-bugs at puremagic.com
Tue Jul 8 07:32:54 PDT 2014
https://issues.dlang.org/show_bug.cgi?id=13077
Issue ID: 13077
Summary: [dmd 2.066-b2] std.range.array with shared
InputRangeObject
Product: D
Version: D2
Hardware: x86_64
OS: Linux
Status: NEW
Severity: regression
Priority: P1
Component: DMD
Assignee: nobody at puremagic.com
Reporter: NCrashed at gmail.com
DMD: 2.066.0-b2
Platform: 3.14.9-200.fc20.x86_64
```
import std.range;
class A {}
InputRange!(shared A) foo()
{
return [new shared A].inputRangeObject;
}
void bar()
{
auto res = foo.array;
}
void main() {}
```
Compile-time error:
```
/usr/include/dmd/phobos/std/conv.d(3914): Error: cannot implicitly convert
expression (arg) of type shared(A) to app.A
/usr/include/dmd/phobos/std/array.d(2476): Error: template instance
std.conv.emplaceRef!(shared(A)).emplaceRef!(shared(A)) error instantiating
/usr/include/dmd/phobos/std/array.d(64): instantiated from here:
put!(shared(A))
source/app.d(12): instantiated from here: array!(InputRange!(shared(A)))
```
--
More information about the Digitalmars-d-bugs
mailing list