Mercurial > projects > ldc
view test/funcs.d @ 259:2e652b8ad1fd trunk
[svn r277] Fixed a nasty bug in delegate expressions. Context pointers to nested functions of the parent, from inside a nested function were
invalid.
author | lindquist |
---|---|
date | Fri, 13 Jun 2008 05:47:28 +0200 |
parents | c53b6e3fe49a |
children | d9d5d59873d8 |
line wrap: on
line source
void main() { printf("Testing functions\n"); int i = 5; assert(a(i) == 110); assert(i == 11); S s; s.i = 5; d(s); assert(s.i == 5); e(s); assert(s.i == 6); printf(" SUCCESS\n"); } int a(ref int i) { i*=2; return b(i); } int b(ref int i) { i++; return c(i); } int c(int i) { return i*10; } struct S { int i; } void d(S s) { s.i++; } void e(ref S s) { s.i++; }