view tests/mini/nested6a.d @ 704:43165a082535

Fixed issue with accessing a WithStatement context from inside a nested function. see mini/with2.d Renamed some LLVM uses of ::create statics to ::Create , lower case ones will be deprecated soon.
author Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
date Tue, 14 Oct 2008 13:21:14 +0200
parents 45a67b6f1310
children
line wrap: on
line source

module nested6a;
extern(C) int printf(char*, ...);

void main()
{
    int i = 42;

    printf("main() %d\n", i++);

    class C
    {
        int j;
        void func()
        {
            int k;
            printf("C.func() %d\n", i++);

            class C2
            {
                int l;
                void func2()
                {
                    printf("in C2.func2()\n");
                    printf("C2.func2() %d\n", i++);
                }
                int m;
            }

            {
                printf("new C2\n");
                auto c2 = new C2;
                printf("C2.func2()\n");
                c2.func2();
            }
        int n;
        }
    int o;
    }

    auto c = new C;
    c.func();
}