Mercurial > projects > ldc
view tests/mini/classes13_bug239.d @ 1151:3cf0066e6faf
- Versioned Expresssion::toElem with #if IN_DMD/IN_LLVM.
- Eliminated the DLRValue DValue.
- Implemented proactive handling of l-value CastExpS.
- Minor tweak in runtime memory.d .
author | Tomas Lindquist Olsen <tomas.l.olsen gmail.com> |
---|---|
date | Sat, 28 Mar 2009 05:00:43 +0100 |
parents | 9d308feaec27 |
children |
line wrap: on
line source
extern(C) int printf(char*, ...); class A { bool Afoo = false; void foo() { Afoo = true; } } class B : A {} class C : B { bool Cfoo = false; void foo() { Cfoo = true; } } void main() { scope c1 = new C(); c1.foo(); assert(c1.Cfoo && !c1.Afoo); scope c2 = new C(); c2.B.foo(); assert(!c2.Cfoo && c2.Afoo); scope c3 = new C(); c3.A.foo(); assert(!c3.Cfoo && c3.Afoo); }