Mercurial > projects > ldc
view tests/mini/classes3.d @ 1223:5f340a6dc749
Fix nested functions.
My last patch was a little over-zealous in passing `undef`, it always passed
`undef` to inner functions expecting a single context frame.
author | Frits van Bommel <fvbommel wxs.nl> |
---|---|
date | Fri, 17 Apr 2009 13:50: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); }