[Issue 23448] New: std.container.array does not work with move-only types
d-bugmail at puremagic.com
d-bugmail at puremagic.com
Mon Oct 31 13:27:34 UTC 2022
https://issues.dlang.org/show_bug.cgi?id=23448
Issue ID: 23448
Summary: std.container.array does not work with move-only types
Product: D
Version: D2
Hardware: x86
OS: Windows
Status: NEW
Severity: enhancement
Priority: P1
Component: phobos
Assignee: nobody at puremagic.com
Reporter: gekamig511 at hempyl.com
This does not compile :
import std;
import std.container.array;
struct NoCopy
{
@disable this(this);
}
void main()
{
Array!NoCopy arr;
}
With the error :
/dlang/dmd/linux/bin64/../../src/phobos/std/container/array.d(816): Error:
struct `onlineapp.NoCopy` is not copyable because it has a disabled postblit
/dlang/dmd/linux/bin64/../../src/phobos/std/container/array.d(825): Error:
struct `onlineapp.NoCopy` is not copyable because it has a disabled postblit
/dlang/dmd/linux/bin64/../../src/phobos/std/container/array.d(262): Error:
struct `onlineapp.NoCopy` is not copyable because it has a disabled postblit
/dlang/dmd/linux/bin64/../../src/phobos/std/container/array.d(269): Error:
struct `onlineapp.NoCopy` is not copyable because it has a disabled postblit
/dlang/dmd/linux/bin64/../../src/phobos/std/container/array.d(628): Error:
template instance `std.container.array.RangeT!(Array!(NoCopy))` error
instantiating
onlineapp.d(11): instantiated from here: `Array!(NoCopy)
--
More information about the Digitalmars-d-bugs
mailing list