Mercurial > projects > ldc
diff test/funcs.d @ 1:c53b6e3fe49a trunk
[svn r5] Initial commit. Most things are very rough.
author | lindquist |
---|---|
date | Sat, 01 Sep 2007 21:43:27 +0200 |
parents | |
children | d9d5d59873d8 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test/funcs.d Sat Sep 01 21:43:27 2007 +0200 @@ -0,0 +1,48 @@ +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++; +}