Mercurial > projects > ldc
view tests/mini/nested8.d @ 353:a7a26f538d6e trunk
[svn r374] Move label target basic block from AST to IRFunction. This is a first step to allowing labels to be emitted multiple times. (for instance within finally blocks)
author | ChristianK |
---|---|
date | Mon, 14 Jul 2008 11:07:15 +0200 |
parents | 1bb99290e03a |
children |
line wrap: on
line source
module nested8; extern(C) int printf(char*, ...); void main() { int i = 1; void func() { printf("func()\n"); i++; void func2() { printf(" func2()\n"); int j = i + 1; void func3() { printf(" func3()\n"); j++; printf(" done = %d\n", j); } func3(); i = j; printf(" done = %d\n", j); } func2(); printf("done\n"); } func(); printf("i == %d\n", i); assert(i == 4); }