Mercurial > projects > ldc
view tests/minicomplex/mem4.d @ 1506:76936858d1c6
Return `void*` from _d_allocclass so LLVM doesn't do weird things with it...
This allows `-instcombine` followed by `-gvn` to do devirtualization, so add
`-gvn` in strategic places in the default pass order.
author | Frits van Bommel <fvbommel wxs.nl> |
---|---|
date | Sat, 20 Jun 2009 11:39:13 +0200 |
parents | 1bb99290e03a |
children |
line wrap: on
line source
module tangotests.mem4; import tango.stdc.stdio; class C { int* ptr; this() { printf("this()\n"); ptr = new int; } ~this() { printf("~this()\n"); delete ptr; assert(ptr is null); } final void check() { printf("check()\n"); assert(ptr !is null); } } void main() { C c = new C(); c.check(); delete c; assert(c is null); }