mirror of
https://github.com/xomboverlord/ldc.git
synced 2026-01-12 02:43:14 +01:00
* Fixed a minor linking order mishap * * Added an command line option -annotate * * Fixed some problems with running optimizations * * Added std.stdio and dependencies to lphobos (still not 100% working, but compiles and links) * * Fixed problems with passing aggregate types to variadic functions * * Added initial code towards full GC support, currently based on malloc and friends, not all the runtime calls the GC yet for memory * * Fixed problems with resolving nested function context pointers for some heavily nested cases * * Redid function argument passing + other minor code cleanups, still lots to do on this end... *
43 lines
437 B
D
43 lines
437 B
D
module nested11;
|
|
|
|
void main()
|
|
{
|
|
int i;
|
|
|
|
void f()
|
|
{
|
|
i++;
|
|
|
|
void g()
|
|
{
|
|
i++;
|
|
|
|
void h()
|
|
{
|
|
printf("i = %d\n", i);
|
|
}
|
|
|
|
h();
|
|
}
|
|
|
|
g();
|
|
}
|
|
|
|
f();
|
|
assert(i == 2);
|
|
|
|
void foo()
|
|
{
|
|
i = 42;
|
|
}
|
|
|
|
void bar()
|
|
{
|
|
foo();
|
|
}
|
|
|
|
bar();
|
|
printf("i = %d\n", i);
|
|
assert(i == 42);
|
|
}
|