[dmd 2.066-b1] DList. Cannot remove from an un-initialized List

NCrashed via Digitalmars-d-learn digitalmars-d-learn at puremagic.com
Tue Jul 8 06:06:33 PDT 2014


This was working under 2.065:
```
import std.container;

void main()
{
	DList!int list;
	list.clear();
}
```

Run-time assertion:
```
core.exception.AssertError@/usr/include/dmd/phobos/std/container/dlist.d(480): 
Cannot remove from an un-initialized List
----------------
/home/ncrashed/dev/d/dmd-test/dmd-test(pure nothrow @nogc @safe 
std.container.dlist.DList!(int).DList.Range 
std.container.dlist.DList!(int).DList.remove(std.container.dlist.DList!(int).DList.Range)+0x90) 
[0x441830]
/home/ncrashed/dev/d/dmd-test/dmd-test(pure nothrow @nogc @safe 
void std.container.dlist.DList!(int).DList.clear()+0x65) 
[0x4410dd]
/home/ncrashed/dev/d/dmd-test/dmd-test(_Dmain+0x1a) [0x43df3a]
/home/ncrashed/dev/d/dmd-test/dmd-test(_D2rt6dmain211_d_run_mainUiPPaPUAAaZiZ6runAllMFZ9__lambda1MFZv+0x28) 
[0x44aeac]
/home/ncrashed/dev/d/dmd-test/dmd-test(void 
rt.dmain2._d_run_main(int, char**, extern (C) int 
function(char[][])*).tryExec(scope void delegate())+0x2d) 
[0x44adf1]
/home/ncrashed/dev/d/dmd-test/dmd-test(void 
rt.dmain2._d_run_main(int, char**, extern (C) int 
function(char[][])*).runAll()+0x2d) [0x44ae51]
/home/ncrashed/dev/d/dmd-test/dmd-test(void 
rt.dmain2._d_run_main(int, char**, extern (C) int 
function(char[][])*).tryExec(scope void delegate())+0x2d) 
[0x44adf1]
/home/ncrashed/dev/d/dmd-test/dmd-test(_d_run_main+0x192) 
[0x44ad66]
/home/ncrashed/dev/d/dmd-test/dmd-test(main+0x25) [0x448355]
/lib64/libc.so.6(__libc_start_main+0xf5) [0x39e9021d65]

```

Does DList requires any explicit initialization now or it is a 
regression?


More information about the Digitalmars-d-learn mailing list