Mercurial > projects > ldc
view tests/mini/j.d @ 648:8d850fa25713
Fix VarDecls for tuples. Closes #99.
I've implemented it this way since it doesn't require any changes in the
frontend. However, I think having TypeTuple expressed as LLVM struct types
would make much more sense and open the door to tuple lvalues.
author | Christian Kamm <kamm incasoftware de> |
---|---|
date | Sun, 05 Oct 2008 11:47:47 +0200 |
parents | 1bb99290e03a |
children |
line wrap: on
line source
module j; interface Inter1 { int func1(); } interface Inter2 { int func2(); } class C12 : Inter1, Inter2 { int func1() { return 1; } int func2() { return 2; } } void func(Object c) { auto i1 = cast(Inter1)c; assert(i1.func1() == 1); auto i2 = cast(Inter2)c; assert(i2.func2() == 2); auto j1 = cast(Inter1)i2; assert(j1.func1() == 1); auto j2 = cast(Inter2)i1; assert(j2.func2() == 2); } void main() { scope c = new C12; func(c); printf("OK\n"); } extern(C) int printf(char*,...);