Mercurial > projects > ldc
view tests/mini/classes3.d @ 490:f8c979770af3
Fixed a critical bug in the runtime, where _d_allocmemoryT would mark
the memory block as having pointers (for scanning) opposite of what it
should. So pointers would not be seen and freed. Should fix a bunch of
regressions with AAs.
author | Tomas Lindquist Olsen <tomas.l.olsen@gmail.com> |
---|---|
date | Sun, 10 Aug 2008 17:28:01 +0200 |
parents | 1bb99290e03a |
children |
line wrap: on
line source
class C { int c; long f(long l) { return l; } } class D : C { int d; override long f(long l) { return l*2; } } void main() { scope c = new C; assert(c.f(25L) == 25); scope d = new D; assert(d.f(25L) == 50); C cd = d; assert(cd.f(25L) == 50); assert(func(d,25L) == 50); } long func(C c, long l) { return c.f(l); }