Mercurial > projects > ldc
view tests/mini/nested16.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 | a34078905d01 |
children |
line wrap: on
line source
module mini.nested16; void main() { int idx = 123; int func(int* idp) { void foo() { void bar(int* idp) { auto c = new class { void mem() { scope(exit) ++*idp; } }; auto dg = () { c.mem(); }; dg(); } bar(idp); ++*idp; } foo(); return ++*idp; } assert(func(&idx) == 126); }