annotate tests/mini/classes8.d @ 1608:679d101395e8

Merge DMD r262: bugzilla 3381 ([tdpl] Incorrect assessment of ...) The full bug title is: [tdpl] Incorrect assessment of overriding in triangular-shaped hierarchy. --- dmd/class.c | 2 +- dmd/func.c | 2 ++ 2 files changed, 3 insertions(+), 1 deletions(-)
author Leandro Lucarella <llucax@gmail.com>
date Wed, 06 Jan 2010 15:18:20 -0300
parents 1bb99290e03a
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
15
37a4fdab33fc [svn r19] * Added support for reassigning 'this' inside class constructors.
lindquist
parents:
diff changeset
1 class A {
37a4fdab33fc [svn r19] * Added support for reassigning 'this' inside class constructors.
lindquist
parents:
diff changeset
2 int i;
37a4fdab33fc [svn r19] * Added support for reassigning 'this' inside class constructors.
lindquist
parents:
diff changeset
3 int l;
37a4fdab33fc [svn r19] * Added support for reassigning 'this' inside class constructors.
lindquist
parents:
diff changeset
4 this(bool b,bool b2=false) {
37a4fdab33fc [svn r19] * Added support for reassigning 'this' inside class constructors.
lindquist
parents:
diff changeset
5 if (b) this = new B;
37a4fdab33fc [svn r19] * Added support for reassigning 'this' inside class constructors.
lindquist
parents:
diff changeset
6 i = 4;
37a4fdab33fc [svn r19] * Added support for reassigning 'this' inside class constructors.
lindquist
parents:
diff changeset
7 if (b2) this = new C;
37a4fdab33fc [svn r19] * Added support for reassigning 'this' inside class constructors.
lindquist
parents:
diff changeset
8 l = 64;
37a4fdab33fc [svn r19] * Added support for reassigning 'this' inside class constructors.
lindquist
parents:
diff changeset
9 }
37a4fdab33fc [svn r19] * Added support for reassigning 'this' inside class constructors.
lindquist
parents:
diff changeset
10 }
37a4fdab33fc [svn r19] * Added support for reassigning 'this' inside class constructors.
lindquist
parents:
diff changeset
11 class B : A{
37a4fdab33fc [svn r19] * Added support for reassigning 'this' inside class constructors.
lindquist
parents:
diff changeset
12 this() {
37a4fdab33fc [svn r19] * Added support for reassigning 'this' inside class constructors.
lindquist
parents:
diff changeset
13 super(false);
37a4fdab33fc [svn r19] * Added support for reassigning 'this' inside class constructors.
lindquist
parents:
diff changeset
14 }
37a4fdab33fc [svn r19] * Added support for reassigning 'this' inside class constructors.
lindquist
parents:
diff changeset
15 }
37a4fdab33fc [svn r19] * Added support for reassigning 'this' inside class constructors.
lindquist
parents:
diff changeset
16 class C : A{
37a4fdab33fc [svn r19] * Added support for reassigning 'this' inside class constructors.
lindquist
parents:
diff changeset
17 this() {
37a4fdab33fc [svn r19] * Added support for reassigning 'this' inside class constructors.
lindquist
parents:
diff changeset
18 super(false);
37a4fdab33fc [svn r19] * Added support for reassigning 'this' inside class constructors.
lindquist
parents:
diff changeset
19 }
37a4fdab33fc [svn r19] * Added support for reassigning 'this' inside class constructors.
lindquist
parents:
diff changeset
20 }
37a4fdab33fc [svn r19] * Added support for reassigning 'this' inside class constructors.
lindquist
parents:
diff changeset
21 void main() {
37a4fdab33fc [svn r19] * Added support for reassigning 'this' inside class constructors.
lindquist
parents:
diff changeset
22 }