Mercurial > projects > ldc
view tests/mini/j.d @ 1603:eae495e6ae8d
Merge DMD r248: implement Denis Koroskin's macro suggestion
---
dmd/lexer.c | 2 +-
dmd/lexer.h | 8 ++++----
dmd/mars.c | 2 +-
dmd/parse.c | 12 ++++++------
4 files changed, 12 insertions(+), 12 deletions(-)
author | Leandro Lucarella <llucax@gmail.com> |
---|---|
date | Wed, 06 Jan 2010 15:18:19 -0300 |
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*,...);