Bug 10220 – `array` doesn't work with disabled default construction

Status
RESOLVED
Resolution
FIXED
Severity
regression
Priority
P2
Component
dmd
Product
D
Version
D2
Platform
All
OS
All
Creation time
2013-05-31T11:06:00Z
Last change time
2013-06-08T09:47:24Z
Keywords
pull, rejects-valid
Assigned to
nobody
Creator
verylonglogin.reg

Comments

Comment #0 by verylonglogin.reg — 2013-05-31T11:06:03Z
Bacause of phobos pull 1305 [1] there is now `new E[]` code in `arrayAllocImpl` which fails to compile if `E` disabled default construction. [1] https://github.com/D-Programming-Language/phobos/pull/1305
Comment #1 by k.hara.pg — 2013-06-01T09:58:14Z
Test case: import std.algorithm : equal; import std.range : repeat; import std.array; static struct S { int val; @disable this(); this(int v) { val = v; } } void main() { auto r = S(1).repeat(2).array(); assert(equal(r, [S(1), S(1)])); }
Comment #2 by k.hara.pg — 2013-06-01T10:36:54Z
Comment #3 by github-bugzilla — 2013-06-04T22:30:11Z
Commits pushed to master at https://github.com/D-Programming-Language/phobos https://github.com/D-Programming-Language/phobos/commit/924232603ac6cd0f48d46a8b5e8227ada62808c5 fix Issue 10220 - `array` doesn't work with disabled default construction https://github.com/D-Programming-Language/phobos/commit/7b0a1219fd7ff945ecac360ac1572e93b88f4de1 Merge pull request #1329 from 9rnsr/fix10220 [REG2.064a] Issue 10220 - `array` doesn't work with disabled default construction
Comment #4 by github-bugzilla — 2013-06-05T08:32:46Z