Mercurial > projects > ldc
view tests/mini/funcs.d @ 1364:46f6365a50d7
Added IrTypeFunction and IrTypeDelegate and eliminated IrDType. This means the Type::ir field can be removed. It's the final part needed for the move to a slightly more sane type system. Now the whole thing just needs to be cleaned up :P
Added -v-cg switch, which right now just prints "codegen: module.name (module/name.d)" to stdout, this can really help figuring out where, in some complex build command, things go wrong.
author | Tomas Lindquist Olsen <tomas.l.olsen gmail com> |
---|---|
date | Sat, 16 May 2009 18:19:52 +0200 |
parents | 1bb99290e03a |
children |
line wrap: on
line source
extern(C) int printf(char*, ...); 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++; }